From 5a77128a8bcf9b090d76b6dc09cf53f0ecd20815 Mon Sep 17 00:00:00 2001 From: Geoffrey White <40627776+geoffw0@users.noreply.github.com> Date: Mon, 23 Mar 2026 11:27:05 +0000 Subject: [PATCH 001/157] C++: Disable cpp/implicit-function-declaration on BMN databases. --- .../Underspecified Functions/ImplicitFunctionDeclaration.ql | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/cpp/ql/src/Likely Bugs/Underspecified Functions/ImplicitFunctionDeclaration.ql b/cpp/ql/src/Likely Bugs/Underspecified Functions/ImplicitFunctionDeclaration.ql index 6a55557cf70b..007ef71a1630 100644 --- a/cpp/ql/src/Likely Bugs/Underspecified Functions/ImplicitFunctionDeclaration.ql +++ b/cpp/ql/src/Likely Bugs/Underspecified Functions/ImplicitFunctionDeclaration.ql @@ -17,6 +17,11 @@ import TooFewArguments import TooManyArguments import semmle.code.cpp.commons.Exclusions +/* + * This query is not compatible with build mode: none databases, and has + * no results on those databases. + */ + predicate locInfo(Locatable e, File file, int line, int col) { e.getFile() = file and e.getLocation().getStartLine() = line and @@ -39,6 +44,7 @@ predicate isCompiledAsC(File f) { from FunctionDeclarationEntry fdeIm, FunctionCall fc where isCompiledAsC(fdeIm.getFile()) and + not any(Compilation c).buildModeNone() and not isFromMacroDefinition(fc) and fdeIm.isImplicit() and sameLocation(fdeIm, fc) and From 39056e44771373f23bcd8a561bbf60a6c0122e60 Mon Sep 17 00:00:00 2001 From: Geoffrey White <40627776+geoffw0@users.noreply.github.com> Date: Mon, 23 Mar 2026 12:28:12 +0000 Subject: [PATCH 002/157] C++: Change note. --- .../change-notes/2026-03-23-implicit-function-declaration.md | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 cpp/ql/src/change-notes/2026-03-23-implicit-function-declaration.md diff --git a/cpp/ql/src/change-notes/2026-03-23-implicit-function-declaration.md b/cpp/ql/src/change-notes/2026-03-23-implicit-function-declaration.md new file mode 100644 index 000000000000..8c2c431ec24c --- /dev/null +++ b/cpp/ql/src/change-notes/2026-03-23-implicit-function-declaration.md @@ -0,0 +1,4 @@ +--- +category: minorAnalysis +--- +* The "Implicit function declaration" (`cpp/implicit-function-declaration`) query no longer produces results on `build mode: none` databases. These results were found to be very noisy and fundamentally imprecise in this mode. From 55d16e8781602f1e6542e3b4bd6d38c7d2250975 Mon Sep 17 00:00:00 2001 From: Paolo Tranquilli Date: Wed, 25 Mar 2026 10:58:16 +0100 Subject: [PATCH 003/157] Remove false-positive `command-injection` sink model for `step-security/harden-runner` The `allowed-endpoints` input only flows to `execFileSync("echo", [content])` (no shell) and `fs.writeFileSync` (JSON config), neither of which is a command injection vector. Fixes https://github.com/github/codeql/issues/21568 --- .../ql/lib/ext/manual/step-security_harden-runner.model.yml | 6 ------ 1 file changed, 6 deletions(-) delete mode 100644 actions/ql/lib/ext/manual/step-security_harden-runner.model.yml diff --git a/actions/ql/lib/ext/manual/step-security_harden-runner.model.yml b/actions/ql/lib/ext/manual/step-security_harden-runner.model.yml deleted file mode 100644 index 129c8beb0202..000000000000 --- a/actions/ql/lib/ext/manual/step-security_harden-runner.model.yml +++ /dev/null @@ -1,6 +0,0 @@ -extensions: - - addsTo: - pack: codeql/actions-all - extensible: actionsSinkModel - data: - - ["step-security/harden-runner", "*", "input.allowed-endpoints", "command-injection", "manual"] From e8075455913cfcfc05dfb02d882396c08ed24c8d Mon Sep 17 00:00:00 2001 From: Paolo Tranquilli Date: Thu, 26 Mar 2026 09:08:34 +0100 Subject: [PATCH 004/157] Remove false positive `docker/build-push-action` `context` sink model The `context` input is passed as a single array element through `docker/actions-toolkit` and `@actions/exec` all the way to `child_process.spawn()`, which does not perform shell splitting. No code injection is possible. Fixes https://github.com/github/codeql/issues/21428 --- .../ql/lib/ext/manual/docker_build-push-action.model.yml | 6 ------ 1 file changed, 6 deletions(-) delete mode 100644 actions/ql/lib/ext/manual/docker_build-push-action.model.yml diff --git a/actions/ql/lib/ext/manual/docker_build-push-action.model.yml b/actions/ql/lib/ext/manual/docker_build-push-action.model.yml deleted file mode 100644 index 116c231c30a4..000000000000 --- a/actions/ql/lib/ext/manual/docker_build-push-action.model.yml +++ /dev/null @@ -1,6 +0,0 @@ -extensions: - - addsTo: - pack: codeql/actions-all - extensible: actionsSinkModel - data: - - ["docker/build-push-action", "*", "input.context", "code-injection", "manual"] \ No newline at end of file From e0bc18c22866b5808817754bd820d1da53478214 Mon Sep 17 00:00:00 2001 From: Paolo Tranquilli Date: Thu, 26 Mar 2026 09:11:25 +0100 Subject: [PATCH 005/157] Add changenote for false positive sink model removals --- .../change-notes/2026-03-26-remove-false-positive-sinks.md | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 actions/ql/lib/change-notes/2026-03-26-remove-false-positive-sinks.md diff --git a/actions/ql/lib/change-notes/2026-03-26-remove-false-positive-sinks.md b/actions/ql/lib/change-notes/2026-03-26-remove-false-positive-sinks.md new file mode 100644 index 000000000000..20ccc6d6c024 --- /dev/null +++ b/actions/ql/lib/change-notes/2026-03-26-remove-false-positive-sinks.md @@ -0,0 +1,4 @@ +--- +category: minorAnalysis +--- +* Removed false positive injection sink models for the `context` input of `docker/build-push-action` and the `allowed-endpoints` input of `step-security/harden-runner`. From 824d004a2700080b8fb4bb3d2e3a02f85fd8e30a Mon Sep 17 00:00:00 2001 From: Taus Date: Thu, 26 Mar 2026 14:40:54 +0000 Subject: [PATCH 006/157] Python: Convert BindToAllInterfaces test to inline expectations --- .../Security/CVE-2018-1281/BindToAllInterfaces.qlref | 3 ++- .../Security/CVE-2018-1281/BindToAllInterfaces_test.py | 10 +++++----- 2 files changed, 7 insertions(+), 6 deletions(-) diff --git a/python/ql/test/query-tests/Security/CVE-2018-1281/BindToAllInterfaces.qlref b/python/ql/test/query-tests/Security/CVE-2018-1281/BindToAllInterfaces.qlref index f06cc3d869dc..6396fd918634 100644 --- a/python/ql/test/query-tests/Security/CVE-2018-1281/BindToAllInterfaces.qlref +++ b/python/ql/test/query-tests/Security/CVE-2018-1281/BindToAllInterfaces.qlref @@ -1 +1,2 @@ -Security/CVE-2018-1281/BindToAllInterfaces.ql \ No newline at end of file +query: Security/CVE-2018-1281/BindToAllInterfaces.ql +postprocess: utils/test/InlineExpectationsTestQuery.ql \ No newline at end of file diff --git a/python/ql/test/query-tests/Security/CVE-2018-1281/BindToAllInterfaces_test.py b/python/ql/test/query-tests/Security/CVE-2018-1281/BindToAllInterfaces_test.py index bbab44d81033..93ed0364a295 100644 --- a/python/ql/test/query-tests/Security/CVE-2018-1281/BindToAllInterfaces_test.py +++ b/python/ql/test/query-tests/Security/CVE-2018-1281/BindToAllInterfaces_test.py @@ -2,11 +2,11 @@ # binds to all interfaces, insecure s = socket.socket(socket.AF_INET, socket.SOCK_STREAM) -s.bind(('0.0.0.0', 31137)) +s.bind(('0.0.0.0', 31137)) # $ Alert[py/bind-socket-all-network-interfaces] # binds to all interfaces, insecure s = socket.socket(socket.AF_INET, socket.SOCK_STREAM) -s.bind(('', 4040)) +s.bind(('', 4040)) # $ Alert[py/bind-socket-all-network-interfaces] # binds only to a dedicated interface, secure s = socket.socket(socket.AF_INET, socket.SOCK_STREAM) @@ -14,13 +14,13 @@ # binds to all interfaces, insecure ALL_LOCALS = "0.0.0.0" -s.bind((ALL_LOCALS, 9090)) +s.bind((ALL_LOCALS, 9090)) # $ Alert[py/bind-socket-all-network-interfaces] # binds to all interfaces, insecure tup = (ALL_LOCALS, 8080) -s.bind(tup) +s.bind(tup) # $ Alert[py/bind-socket-all-network-interfaces] # IPv6 s = socket.socket(socket.AF_INET6, socket.SOCK_STREAM) -s.bind(("::", 8080)) # NOT OK +s.bind(("::", 8080)) # $ Alert[py/bind-socket-all-network-interfaces] From 1ecd9e83b8566c9028cec3d33097f157a2b3bde1 Mon Sep 17 00:00:00 2001 From: Taus Date: Thu, 26 Mar 2026 14:51:59 +0000 Subject: [PATCH 007/157] Python: Add test cases for BindToAllInterfaces FNs Adds test cases from github/codeql#21582 demonstrating false negatives: - Address stored in class attribute (`self.bind_addr`) - `os.environ.get` with insecure default value - `gevent.socket` (alternative socket module) --- .../CVE-2018-1281/BindToAllInterfaces_test.py | 32 +++++++++++++++++++ 1 file changed, 32 insertions(+) diff --git a/python/ql/test/query-tests/Security/CVE-2018-1281/BindToAllInterfaces_test.py b/python/ql/test/query-tests/Security/CVE-2018-1281/BindToAllInterfaces_test.py index 93ed0364a295..5a13aa9c4e3a 100644 --- a/python/ql/test/query-tests/Security/CVE-2018-1281/BindToAllInterfaces_test.py +++ b/python/ql/test/query-tests/Security/CVE-2018-1281/BindToAllInterfaces_test.py @@ -24,3 +24,35 @@ # IPv6 s = socket.socket(socket.AF_INET6, socket.SOCK_STREAM) s.bind(("::", 8080)) # $ Alert[py/bind-socket-all-network-interfaces] + + +# FN cases from https://github.com/github/codeql/issues/21582 + +# Address stored in a class attribute +class Server: + def __init__(self): + self.bind_addr = '0.0.0.0' + self.port = 31137 + + def start(self): + s = socket.socket(socket.AF_INET, socket.SOCK_STREAM) + s.bind((self.bind_addr, self.port)) # $ MISSING: Alert[py/bind-socket-all-network-interfaces] + +server = Server() +server.start() + +# os.environ.get with insecure default +import os +host = os.environ.get('APP_HOST', '0.0.0.0') +s = socket.socket(socket.AF_INET, socket.SOCK_STREAM) +s.bind((host, 8080)) # $ MISSING: Alert[py/bind-socket-all-network-interfaces] + +# gevent.socket (alternative socket module) +from gevent import socket as gsocket +gs = gsocket.socket(gsocket.AF_INET, gsocket.SOCK_STREAM) +gs.bind(('0.0.0.0', 31137)) # $ MISSING: Alert[py/bind-socket-all-network-interfaces] + +# eventlet.green.socket (another alternative socket module) +from eventlet.green import socket as esocket +es = esocket.socket(esocket.AF_INET, esocket.SOCK_STREAM) +es.bind(('0.0.0.0', 31137)) # $ MISSING: Alert[py/bind-socket-all-network-interfaces] From c439fc5d4519e8688115bc297a818f3420279e3e Mon Sep 17 00:00:00 2001 From: Taus Date: Thu, 26 Mar 2026 14:53:18 +0000 Subject: [PATCH 008/157] Python: Replace type tracking with global data-flow This takes care of most of the false negatives from the preceding commit. Additionally, we add models for some known wrappers of `socket.socket` from the `gevent` and `eventlet` packages. --- .../python/frameworks/Eventlet.model.yml | 9 ++++ .../semmle/python/frameworks/Gevent.model.yml | 7 +++ .../semmle/python/frameworks/Stdlib.model.yml | 4 ++ .../CVE-2018-1281/BindToAllInterfaces.ql | 51 +++++-------------- .../BindToAllInterfaces.expected | 4 ++ .../CVE-2018-1281/BindToAllInterfaces_test.py | 8 +-- shared/mad/codeql/mad/ModelValidation.qll | 2 +- 7 files changed, 43 insertions(+), 42 deletions(-) create mode 100644 python/ql/lib/semmle/python/frameworks/Eventlet.model.yml create mode 100644 python/ql/lib/semmle/python/frameworks/Gevent.model.yml diff --git a/python/ql/lib/semmle/python/frameworks/Eventlet.model.yml b/python/ql/lib/semmle/python/frameworks/Eventlet.model.yml new file mode 100644 index 000000000000..f60b9218819d --- /dev/null +++ b/python/ql/lib/semmle/python/frameworks/Eventlet.model.yml @@ -0,0 +1,9 @@ +extensions: + - addsTo: + pack: codeql/python-all + extensible: typeModel + data: + # See https://eventlet.readthedocs.io/en/latest/patching.html + - ['socket.socket', 'eventlet', 'Member[green].Member[socket].Member[socket].ReturnValue'] + # eventlet also re-exports as eventlet.socket for convenience + - ['socket.socket', 'eventlet', 'Member[socket].Member[socket].ReturnValue'] diff --git a/python/ql/lib/semmle/python/frameworks/Gevent.model.yml b/python/ql/lib/semmle/python/frameworks/Gevent.model.yml new file mode 100644 index 000000000000..974ecedd0730 --- /dev/null +++ b/python/ql/lib/semmle/python/frameworks/Gevent.model.yml @@ -0,0 +1,7 @@ +extensions: + - addsTo: + pack: codeql/python-all + extensible: typeModel + data: + # See https://www.gevent.org/api/gevent.socket.html + - ['socket.socket', 'gevent', 'Member[socket].Member[socket].ReturnValue'] diff --git a/python/ql/lib/semmle/python/frameworks/Stdlib.model.yml b/python/ql/lib/semmle/python/frameworks/Stdlib.model.yml index a01bf1b40ba6..5b50dff313e7 100644 --- a/python/ql/lib/semmle/python/frameworks/Stdlib.model.yml +++ b/python/ql/lib/semmle/python/frameworks/Stdlib.model.yml @@ -27,6 +27,8 @@ extensions: extensible: sinkModel data: - ["zipfile.ZipFile","Member[extractall].Argument[0,path:]", "path-injection"] + # See https://docs.python.org/3/library/socket.html#socket.socket.bind + - ["socket.socket", "Member[bind].Argument[0,address:]", "bind-socket-all-interfaces"] - addsTo: pack: codeql/python-all @@ -184,6 +186,8 @@ extensions: pack: codeql/python-all extensible: typeModel data: + # See https://docs.python.org/3/library/socket.html#socket.socket + - ['socket.socket', 'socket', 'Member[socket].ReturnValue'] # See https://docs.python.org/3/library/urllib.parse.html#urllib.parse.urlparse - ["urllib.parse.ParseResult~Subclass", 'urllib', 'Member[parse].Member[urlparse]'] diff --git a/python/ql/src/Security/CVE-2018-1281/BindToAllInterfaces.ql b/python/ql/src/Security/CVE-2018-1281/BindToAllInterfaces.ql index 5e2e27b3bf40..39d0c6b6237d 100644 --- a/python/ql/src/Security/CVE-2018-1281/BindToAllInterfaces.ql +++ b/python/ql/src/Security/CVE-2018-1281/BindToAllInterfaces.ql @@ -14,7 +14,8 @@ import python import semmle.python.dataflow.new.DataFlow -import semmle.python.ApiGraphs +import semmle.python.dataflow.new.TaintTracking +private import semmle.python.frameworks.data.ModelsAsData /** Gets a hostname that can be used to bind to all interfaces. */ private string vulnerableHostname() { @@ -26,45 +27,21 @@ private string vulnerableHostname() { ] } -/** Gets a reference to a hostname that can be used to bind to all interfaces. */ -private DataFlow::TypeTrackingNode vulnerableHostnameRef(DataFlow::TypeTracker t, string hostname) { - t.start() and - exists(StringLiteral allInterfacesStringLiteral | hostname = vulnerableHostname() | - allInterfacesStringLiteral.getText() = hostname and - result.asExpr() = allInterfacesStringLiteral - ) - or - exists(DataFlow::TypeTracker t2 | result = vulnerableHostnameRef(t2, hostname).track(t2, t)) -} - -/** Gets a reference to a hostname that can be used to bind to all interfaces. */ -DataFlow::Node vulnerableHostnameRef(string hostname) { - vulnerableHostnameRef(DataFlow::TypeTracker::end(), hostname).flowsTo(result) -} +private module BindToAllInterfacesConfig implements DataFlow::ConfigSig { + predicate isSource(DataFlow::Node source) { + source.asExpr().(StringLiteral).getText() = vulnerableHostname() + } -/** Gets a reference to a tuple for which the first element is a hostname that can be used to bind to all interfaces. */ -private DataFlow::TypeTrackingNode vulnerableAddressTuple(DataFlow::TypeTracker t, string hostname) { - t.start() and - result.asExpr() = any(Tuple tup | tup.getElt(0) = vulnerableHostnameRef(hostname).asExpr()) - or - exists(DataFlow::TypeTracker t2 | result = vulnerableAddressTuple(t2, hostname).track(t2, t)) + predicate isSink(DataFlow::Node sink) { + ModelOutput::sinkNode(sink, "bind-socket-all-interfaces") + } } -/** Gets a reference to a tuple for which the first element is a hostname that can be used to bind to all interfaces. */ -DataFlow::Node vulnerableAddressTuple(string hostname) { - vulnerableAddressTuple(DataFlow::TypeTracker::end(), hostname).flowsTo(result) -} - -/** - * Gets an instance of `socket.socket` using _some_ address family. - * - * See https://docs.python.org/3/library/socket.html - */ -API::Node socketInstance() { result = API::moduleImport("socket").getMember("socket").getReturn() } +private module BindToAllInterfacesFlow = TaintTracking::Global; -from DataFlow::CallCfgNode bindCall, DataFlow::Node addressArg, string hostname +from DataFlow::Node source, DataFlow::Node sink, DataFlow::CallCfgNode bindCall, string hostname where - bindCall = socketInstance().getMember("bind").getACall() and - addressArg = bindCall.getArg(0) and - addressArg = vulnerableAddressTuple(hostname) + BindToAllInterfacesFlow::flow(source, sink) and + bindCall.getArg(0) = sink and + hostname = source.asExpr().(StringLiteral).getText() select bindCall.asExpr(), "'" + hostname + "' binds a socket to all interfaces." diff --git a/python/ql/test/query-tests/Security/CVE-2018-1281/BindToAllInterfaces.expected b/python/ql/test/query-tests/Security/CVE-2018-1281/BindToAllInterfaces.expected index 86c67af4eaef..d657c2f14db4 100644 --- a/python/ql/test/query-tests/Security/CVE-2018-1281/BindToAllInterfaces.expected +++ b/python/ql/test/query-tests/Security/CVE-2018-1281/BindToAllInterfaces.expected @@ -3,3 +3,7 @@ | BindToAllInterfaces_test.py:17:1:17:26 | Attribute() | '0.0.0.0' binds a socket to all interfaces. | | BindToAllInterfaces_test.py:21:1:21:11 | Attribute() | '0.0.0.0' binds a socket to all interfaces. | | BindToAllInterfaces_test.py:26:1:26:20 | Attribute() | '::' binds a socket to all interfaces. | +| BindToAllInterfaces_test.py:39:9:39:43 | Attribute() | '0.0.0.0' binds a socket to all interfaces. | +| BindToAllInterfaces_test.py:48:1:48:20 | Attribute() | '0.0.0.0' binds a socket to all interfaces. | +| BindToAllInterfaces_test.py:53:1:53:27 | Attribute() | '0.0.0.0' binds a socket to all interfaces. | +| BindToAllInterfaces_test.py:58:1:58:27 | Attribute() | '0.0.0.0' binds a socket to all interfaces. | diff --git a/python/ql/test/query-tests/Security/CVE-2018-1281/BindToAllInterfaces_test.py b/python/ql/test/query-tests/Security/CVE-2018-1281/BindToAllInterfaces_test.py index 5a13aa9c4e3a..8d5d7998101d 100644 --- a/python/ql/test/query-tests/Security/CVE-2018-1281/BindToAllInterfaces_test.py +++ b/python/ql/test/query-tests/Security/CVE-2018-1281/BindToAllInterfaces_test.py @@ -36,7 +36,7 @@ def __init__(self): def start(self): s = socket.socket(socket.AF_INET, socket.SOCK_STREAM) - s.bind((self.bind_addr, self.port)) # $ MISSING: Alert[py/bind-socket-all-network-interfaces] + s.bind((self.bind_addr, self.port)) # $ Alert[py/bind-socket-all-network-interfaces] server = Server() server.start() @@ -45,14 +45,14 @@ def start(self): import os host = os.environ.get('APP_HOST', '0.0.0.0') s = socket.socket(socket.AF_INET, socket.SOCK_STREAM) -s.bind((host, 8080)) # $ MISSING: Alert[py/bind-socket-all-network-interfaces] +s.bind((host, 8080)) # $ Alert[py/bind-socket-all-network-interfaces] # gevent.socket (alternative socket module) from gevent import socket as gsocket gs = gsocket.socket(gsocket.AF_INET, gsocket.SOCK_STREAM) -gs.bind(('0.0.0.0', 31137)) # $ MISSING: Alert[py/bind-socket-all-network-interfaces] +gs.bind(('0.0.0.0', 31137)) # $ Alert[py/bind-socket-all-network-interfaces] # eventlet.green.socket (another alternative socket module) from eventlet.green import socket as esocket es = esocket.socket(esocket.AF_INET, esocket.SOCK_STREAM) -es.bind(('0.0.0.0', 31137)) # $ MISSING: Alert[py/bind-socket-all-network-interfaces] +es.bind(('0.0.0.0', 31137)) # $ Alert[py/bind-socket-all-network-interfaces] diff --git a/shared/mad/codeql/mad/ModelValidation.qll b/shared/mad/codeql/mad/ModelValidation.qll index 042fb4200dd1..5eaa78626ab3 100644 --- a/shared/mad/codeql/mad/ModelValidation.qll +++ b/shared/mad/codeql/mad/ModelValidation.qll @@ -48,7 +48,7 @@ module KindValidation { // CPP-only currently "remote-sink", // Python-only currently, but may be shared in the future - "prompt-injection" + "bind-socket-all-interfaces", "prompt-injection" ] or this.matches([ From c0ce6699a535488181d122316c04609e8afd9735 Mon Sep 17 00:00:00 2001 From: Taus Date: Thu, 26 Mar 2026 15:10:59 +0000 Subject: [PATCH 009/157] Python: Add change note --- .../2026-03-26-improve-bind-all-interfaces-query.md | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 python/ql/src/change-notes/2026-03-26-improve-bind-all-interfaces-query.md diff --git a/python/ql/src/change-notes/2026-03-26-improve-bind-all-interfaces-query.md b/python/ql/src/change-notes/2026-03-26-improve-bind-all-interfaces-query.md new file mode 100644 index 000000000000..b4b5464b5037 --- /dev/null +++ b/python/ql/src/change-notes/2026-03-26-improve-bind-all-interfaces-query.md @@ -0,0 +1,5 @@ +--- +category: minorAnalysis +--- + +- The `py/bind-socket-all-network-interfaces` query now uses the global data-flow library, leading to better precision and more results. Also, wrappers of `socket.socket` in the `eventlet` and `gevent` libraries are now also recognised as socket binding operations. From b8a8a160c5e481b5bd52372515a4d942aecb0975 Mon Sep 17 00:00:00 2001 From: Tom Hvitved Date: Mon, 19 Jan 2026 14:53:10 +0100 Subject: [PATCH 010/157] Rust: More type inference tests --- .../PathResolutionConsistency.expected | 1 + .../library-tests/type-inference/closure.rs | 87 +++ .../test/library-tests/type-inference/main.rs | 24 + .../type-inference/regressions.rs | 49 ++ .../type-inference/type-inference.expected | 571 +++++++++++++++--- 5 files changed, 648 insertions(+), 84 deletions(-) diff --git a/rust/ql/test/library-tests/type-inference/CONSISTENCY/PathResolutionConsistency.expected b/rust/ql/test/library-tests/type-inference/CONSISTENCY/PathResolutionConsistency.expected index 2ac439e085bd..ffc2576a05eb 100644 --- a/rust/ql/test/library-tests/type-inference/CONSISTENCY/PathResolutionConsistency.expected +++ b/rust/ql/test/library-tests/type-inference/CONSISTENCY/PathResolutionConsistency.expected @@ -2,3 +2,4 @@ multipleResolvedTargets | main.rs:2223:9:2223:31 | ... .my_add(...) | | main.rs:2225:9:2225:29 | ... .my_add(...) | | main.rs:2740:13:2740:17 | x.f() | +| regressions.rs:179:17:179:27 | ... + ... | diff --git a/rust/ql/test/library-tests/type-inference/closure.rs b/rust/ql/test/library-tests/type-inference/closure.rs index cc756a6b2678..cbcf154563ad 100644 --- a/rust/ql/test/library-tests/type-inference/closure.rs +++ b/rust/ql/test/library-tests/type-inference/closure.rs @@ -152,3 +152,90 @@ mod dyn_fn_once { let _r2 = apply_boxed(Box::new(|_: i64| true), 3); // $ target=apply_boxed target=new type=_r2:bool } } + +mod closure_infer_param { + fn apply1 i64>(f: F, a: i64) -> i64 { + f(a) + } + + fn apply2(f: impl Fn(i64) -> i64, a: i64) -> i64 { + f(a) + } + + fn apply3(f: &dyn Fn(i64) -> i64, a: i64) -> i64 { + f(a) + } + + fn apply4 i64>(mut f: F, a: i64) -> i64 { + f(a) + } + + fn apply5(f: &mut dyn FnMut(i64) -> i64, a: i64) -> i64 { + f(a) + } + + fn apply6(f: impl Fn(T) -> i64, a: T) -> i64 { + f(a) + } + + fn apply7 i64>(mut f: F, a: T) -> i64 { + f(a) + } + + fn test() { + let f = |x| x; // $ MISSING: type=x:i64 + let _r = apply1(f, 1i64); // $ target=apply1 + + let f = |x| x; // $ MISSING: type=x:i64 + let _r = apply2(f, 2i64); // $ target=apply2 + + let f = |x| x; // $ MISSING: type=x:i64 + let _r = apply3(&f, 3i64); // $ target=apply3 + + let f = |x| x; // $ MISSING: type=x:i64 + let _r = apply4(f, 4i64); // $ target=apply4 + + let mut f = |x| x; // $ MISSING: type=x:i64 + let _r = apply5(&mut f, 5i64); // $ target=apply5 + + let f = |x| x; // $ MISSING: type=x:i64 + let _r = apply6(f, 6i64); // $ target=apply6 + + let f = |x| x; // $ MISSING: type=x:i64 + let _r = apply7(f, 7i64); // $ target=apply7 + } +} + +mod implicit_deref { + use std::ops::Deref; + + struct S(T); + + impl Deref for S { + type Target = dyn Fn(T) -> bool; + + fn deref(&self) -> &Self::Target { + &|_| false + } + } + + pub fn test() { + let x = 0i64; + let v = Default::default(); // $ MISSING: type=v:i64 target=default + let s = S(v); + let _ret = s(x); // $ MISSING: type=_ret:bool + + let x = 0i32; + let v = Default::default(); // $ MISSING: type=v:i32 target=default + let s = S(v); + let s_ref = &s; + let _ret = s_ref(x); // $ MISSING: type=_ret:bool + + // The call below is not an implicit deref, instead it will target + // `impl FnOnce for &F` from + // https://doc.rust-lang.org/std/ops/trait.FnOnce.html#impl-FnOnce%3CA%3E-for-%26F + // and we currently cannot handle inferring the output type + let c = |x| x; // $ MISSING: type=x:i64 + (&c)(x); // $ MISSING: type=_:i64 + } +} diff --git a/rust/ql/test/library-tests/type-inference/main.rs b/rust/ql/test/library-tests/type-inference/main.rs index 6c9f2c801d59..3e3d9f851080 100644 --- a/rust/ql/test/library-tests/type-inference/main.rs +++ b/rust/ql/test/library-tests/type-inference/main.rs @@ -2759,6 +2759,30 @@ mod dereference; mod dyn_type; mod regressions; +mod arg_trait_bounds { + struct Gen(T); + + trait Container { + fn get_input(&self) -> T; + } + + fn my_get>(c: &T) -> bool { + c.get_input() == 42 // $ target=get_input target=eq + } + + impl Container for Gen { + fn get_input(&self) -> GT { + self.0 // $ fieldof=Gen + } + } + + fn test() { + let v = Default::default(); // $ MISSING: type=v:i64 target=default + let g = Gen(v); + let _ = my_get(&g); // $ target=my_get + } +} + fn main() { field_access::f(); // $ target=f method_impl::f(); // $ target=f diff --git a/rust/ql/test/library-tests/type-inference/regressions.rs b/rust/ql/test/library-tests/type-inference/regressions.rs index e1b47479f5d0..21ab5fc24a04 100644 --- a/rust/ql/test/library-tests/type-inference/regressions.rs +++ b/rust/ql/test/library-tests/type-inference/regressions.rs @@ -130,3 +130,52 @@ mod regression4 { } } } + +mod regression5 { + struct S1; + struct S2(T2); + + impl From<&S1> for S2 { + fn from(_: &S1) -> Self { + S2(S1) + } + } + + impl From for S2 { + fn from(t: T) -> Self { + S2(t) + } + } + + fn foo() -> S2 { + let x = S1.into(); // $ target=into + x + } +} + +mod regression6 { + use std::ops::Add; + struct S(T); + + impl Add for S { + type Output = Self; + + // add1 + fn add(self, _rhs: Self) -> Self::Output { + self + } + } + + impl Add for S { + type Output = Self; + + // add2 + fn add(self, _rhs: T) -> Self::Output { + self + } + } + + fn foo() { + let x = S(0) + S(1); // $ target=add1 $ SPURIOUS: target=add2 type=x:T.T.i32 + } +} diff --git a/rust/ql/test/library-tests/type-inference/type-inference.expected b/rust/ql/test/library-tests/type-inference/type-inference.expected index 1e2c753b2421..0beb4a4ffb6b 100644 --- a/rust/ql/test/library-tests/type-inference/type-inference.expected +++ b/rust/ql/test/library-tests/type-inference/type-inference.expected @@ -661,6 +661,104 @@ inferCertainType | closure.rs:152:31:152:53 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | | closure.rs:152:41:152:41 | _ | | {EXTERNAL LOCATION} | i64 | | closure.rs:152:49:152:52 | true | | {EXTERNAL LOCATION} | bool | +| closure.rs:157:34:157:34 | f | | closure.rs:157:15:157:31 | F | +| closure.rs:157:40:157:40 | a | | {EXTERNAL LOCATION} | i64 | +| closure.rs:157:55:159:5 | { ... } | | {EXTERNAL LOCATION} | i64 | +| closure.rs:158:9:158:9 | f | | closure.rs:157:15:157:31 | F | +| closure.rs:158:11:158:11 | a | | {EXTERNAL LOCATION} | i64 | +| closure.rs:161:15:161:15 | f | | closure.rs:161:18:161:36 | impl ... | +| closure.rs:161:39:161:39 | a | | {EXTERNAL LOCATION} | i64 | +| closure.rs:161:54:163:5 | { ... } | | {EXTERNAL LOCATION} | i64 | +| closure.rs:162:9:162:9 | f | | closure.rs:161:18:161:36 | impl ... | +| closure.rs:162:11:162:11 | a | | {EXTERNAL LOCATION} | i64 | +| closure.rs:165:15:165:15 | f | | {EXTERNAL LOCATION} | & | +| closure.rs:165:15:165:15 | f | TRef | {EXTERNAL LOCATION} | dyn Fn | +| closure.rs:165:15:165:15 | f | TRef.dyn(Args) | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:165:15:165:15 | f | TRef.dyn(Args).T0 | {EXTERNAL LOCATION} | i64 | +| closure.rs:165:15:165:15 | f | TRef.dyn(Output) | {EXTERNAL LOCATION} | i64 | +| closure.rs:165:39:165:39 | a | | {EXTERNAL LOCATION} | i64 | +| closure.rs:165:54:167:5 | { ... } | | {EXTERNAL LOCATION} | i64 | +| closure.rs:166:9:166:9 | f | | {EXTERNAL LOCATION} | & | +| closure.rs:166:9:166:9 | f | TRef | {EXTERNAL LOCATION} | dyn Fn | +| closure.rs:166:9:166:9 | f | TRef.dyn(Args) | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:166:9:166:9 | f | TRef.dyn(Args).T0 | {EXTERNAL LOCATION} | i64 | +| closure.rs:166:9:166:9 | f | TRef.dyn(Output) | {EXTERNAL LOCATION} | i64 | +| closure.rs:166:11:166:11 | a | | {EXTERNAL LOCATION} | i64 | +| closure.rs:169:41:169:41 | f | | closure.rs:169:15:169:34 | F | +| closure.rs:169:47:169:47 | a | | {EXTERNAL LOCATION} | i64 | +| closure.rs:169:62:171:5 | { ... } | | {EXTERNAL LOCATION} | i64 | +| closure.rs:170:9:170:9 | f | | closure.rs:169:15:169:34 | F | +| closure.rs:170:11:170:11 | a | | {EXTERNAL LOCATION} | i64 | +| closure.rs:173:15:173:15 | f | | {EXTERNAL LOCATION} | &mut | +| closure.rs:173:15:173:15 | f | TRefMut | {EXTERNAL LOCATION} | dyn FnMut | +| closure.rs:173:15:173:15 | f | TRefMut.dyn(Args) | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:173:15:173:15 | f | TRefMut.dyn(Args).T0 | {EXTERNAL LOCATION} | i64 | +| closure.rs:173:15:173:15 | f | TRefMut.dyn(Output) | {EXTERNAL LOCATION} | i64 | +| closure.rs:173:46:173:46 | a | | {EXTERNAL LOCATION} | i64 | +| closure.rs:173:61:175:5 | { ... } | | {EXTERNAL LOCATION} | i64 | +| closure.rs:174:9:174:9 | f | | {EXTERNAL LOCATION} | &mut | +| closure.rs:174:9:174:9 | f | TRefMut | {EXTERNAL LOCATION} | dyn FnMut | +| closure.rs:174:9:174:9 | f | TRefMut.dyn(Args) | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:174:9:174:9 | f | TRefMut.dyn(Args).T0 | {EXTERNAL LOCATION} | i64 | +| closure.rs:174:9:174:9 | f | TRefMut.dyn(Output) | {EXTERNAL LOCATION} | i64 | +| closure.rs:174:11:174:11 | a | | {EXTERNAL LOCATION} | i64 | +| closure.rs:177:18:177:18 | f | | closure.rs:177:21:177:37 | impl ... | +| closure.rs:177:40:177:40 | a | | closure.rs:177:15:177:15 | T | +| closure.rs:177:53:179:5 | { ... } | | {EXTERNAL LOCATION} | i64 | +| closure.rs:178:9:178:9 | f | | closure.rs:177:21:177:37 | impl ... | +| closure.rs:178:11:178:11 | a | | closure.rs:177:15:177:15 | T | +| closure.rs:181:42:181:42 | f | | closure.rs:181:18:181:35 | F | +| closure.rs:181:48:181:48 | a | | closure.rs:181:15:181:15 | T | +| closure.rs:181:61:183:5 | { ... } | | {EXTERNAL LOCATION} | i64 | +| closure.rs:182:9:182:9 | f | | closure.rs:181:18:181:35 | F | +| closure.rs:182:11:182:11 | a | | closure.rs:181:15:181:15 | T | +| closure.rs:185:15:206:5 | { ... } | | {EXTERNAL LOCATION} | () | +| closure.rs:187:13:187:14 | _r | | {EXTERNAL LOCATION} | i64 | +| closure.rs:187:18:187:32 | apply1(...) | | {EXTERNAL LOCATION} | i64 | +| closure.rs:187:28:187:31 | 1i64 | | {EXTERNAL LOCATION} | i64 | +| closure.rs:190:13:190:14 | _r | | {EXTERNAL LOCATION} | i64 | +| closure.rs:190:18:190:32 | apply2(...) | | {EXTERNAL LOCATION} | i64 | +| closure.rs:190:28:190:31 | 2i64 | | {EXTERNAL LOCATION} | i64 | +| closure.rs:193:13:193:14 | _r | | {EXTERNAL LOCATION} | i64 | +| closure.rs:193:18:193:33 | apply3(...) | | {EXTERNAL LOCATION} | i64 | +| closure.rs:193:25:193:26 | &f | | {EXTERNAL LOCATION} | & | +| closure.rs:193:29:193:32 | 3i64 | | {EXTERNAL LOCATION} | i64 | +| closure.rs:196:13:196:14 | _r | | {EXTERNAL LOCATION} | i64 | +| closure.rs:196:18:196:32 | apply4(...) | | {EXTERNAL LOCATION} | i64 | +| closure.rs:196:28:196:31 | 4i64 | | {EXTERNAL LOCATION} | i64 | +| closure.rs:199:13:199:14 | _r | | {EXTERNAL LOCATION} | i64 | +| closure.rs:199:18:199:37 | apply5(...) | | {EXTERNAL LOCATION} | i64 | +| closure.rs:199:25:199:30 | &mut f | | {EXTERNAL LOCATION} | &mut | +| closure.rs:199:33:199:36 | 5i64 | | {EXTERNAL LOCATION} | i64 | +| closure.rs:202:13:202:14 | _r | | {EXTERNAL LOCATION} | i64 | +| closure.rs:202:18:202:32 | apply6(...) | | {EXTERNAL LOCATION} | i64 | +| closure.rs:202:28:202:31 | 6i64 | | {EXTERNAL LOCATION} | i64 | +| closure.rs:205:13:205:14 | _r | | {EXTERNAL LOCATION} | i64 | +| closure.rs:205:18:205:32 | apply7(...) | | {EXTERNAL LOCATION} | i64 | +| closure.rs:205:28:205:31 | 7i64 | | {EXTERNAL LOCATION} | i64 | +| closure.rs:217:18:217:22 | SelfParam | | {EXTERNAL LOCATION} | & | +| closure.rs:217:18:217:22 | SelfParam | TRef | closure.rs:212:5:212:19 | S | +| closure.rs:217:18:217:22 | SelfParam | TRef.T | closure.rs:214:10:214:10 | T | +| closure.rs:217:42:219:9 | { ... } | | {EXTERNAL LOCATION} | & | +| closure.rs:217:42:219:9 | { ... } | TRef | {EXTERNAL LOCATION} | dyn Fn | +| closure.rs:217:42:219:9 | { ... } | TRef.dyn(Args) | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:217:42:219:9 | { ... } | TRef.dyn(Args).T0 | closure.rs:214:10:214:10 | T | +| closure.rs:217:42:219:9 | { ... } | TRef.dyn(Output) | {EXTERNAL LOCATION} | bool | +| closure.rs:218:13:218:22 | &... | | {EXTERNAL LOCATION} | & | +| closure.rs:218:18:218:22 | false | | {EXTERNAL LOCATION} | bool | +| closure.rs:222:19:240:5 | { ... } | | {EXTERNAL LOCATION} | () | +| closure.rs:223:13:223:13 | x | | {EXTERNAL LOCATION} | i64 | +| closure.rs:223:17:223:20 | 0i64 | | {EXTERNAL LOCATION} | i64 | +| closure.rs:226:22:226:22 | x | | {EXTERNAL LOCATION} | i64 | +| closure.rs:228:13:228:13 | x | | {EXTERNAL LOCATION} | i32 | +| closure.rs:228:17:228:20 | 0i32 | | {EXTERNAL LOCATION} | i32 | +| closure.rs:231:13:231:17 | s_ref | | {EXTERNAL LOCATION} | & | +| closure.rs:231:21:231:22 | &s | | {EXTERNAL LOCATION} | & | +| closure.rs:232:20:232:24 | s_ref | | {EXTERNAL LOCATION} | & | +| closure.rs:232:26:232:26 | x | | {EXTERNAL LOCATION} | i32 | +| closure.rs:239:9:239:12 | (...) | | {EXTERNAL LOCATION} | & | +| closure.rs:239:10:239:11 | &c | | {EXTERNAL LOCATION} | & | +| closure.rs:239:14:239:14 | x | | {EXTERNAL LOCATION} | i32 | | dereference.rs:13:14:13:18 | SelfParam | | {EXTERNAL LOCATION} | & | | dereference.rs:13:14:13:18 | SelfParam | TRef | dereference.rs:5:1:7:1 | MyIntPointer | | dereference.rs:13:29:15:5 | { ... } | | {EXTERNAL LOCATION} | & | @@ -3715,48 +3813,65 @@ inferCertainType | main.rs:2747:21:2747:21 | y | | {EXTERNAL LOCATION} | & | | main.rs:2750:13:2750:13 | y | | {EXTERNAL LOCATION} | usize | | main.rs:2751:23:2751:23 | y | | {EXTERNAL LOCATION} | usize | -| main.rs:2762:11:2797:1 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2763:5:2763:21 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2764:5:2764:20 | ...::f(...) | | main.rs:72:5:72:21 | Foo | -| main.rs:2765:5:2765:60 | ...::g(...) | | main.rs:72:5:72:21 | Foo | -| main.rs:2765:20:2765:38 | ...::Foo {...} | | main.rs:72:5:72:21 | Foo | -| main.rs:2765:41:2765:59 | ...::Foo {...} | | main.rs:72:5:72:21 | Foo | -| main.rs:2766:5:2766:35 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2767:5:2767:41 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2768:5:2768:45 | ...::test(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2769:5:2769:30 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2770:5:2770:21 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2771:5:2771:27 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2772:5:2772:32 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2773:5:2773:23 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2774:5:2774:36 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2775:5:2775:35 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2776:5:2776:29 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2777:5:2777:23 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2778:5:2778:24 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2779:5:2779:17 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2780:5:2780:18 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2781:5:2781:15 | ...::f(...) | | {EXTERNAL LOCATION} | dyn Future | -| main.rs:2781:5:2781:15 | ...::f(...) | dyn(Output) | {EXTERNAL LOCATION} | () | -| main.rs:2782:5:2782:19 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2783:5:2783:17 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2784:5:2784:14 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2785:5:2785:27 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2786:5:2786:15 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2787:5:2787:43 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2788:5:2788:15 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2789:5:2789:17 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2790:5:2790:28 | ...::test(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2791:5:2791:23 | ...::test(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2792:5:2792:41 | ...::test_all_patterns(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2793:5:2793:49 | ...::box_patterns(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2794:5:2794:20 | ...::test(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2795:5:2795:20 | ...::f(...) | | {EXTERNAL LOCATION} | Box | -| main.rs:2795:5:2795:20 | ...::f(...) | A | {EXTERNAL LOCATION} | Global | -| main.rs:2795:5:2795:20 | ...::f(...) | T | main.rs:2547:5:2549:5 | dyn MyTrait | -| main.rs:2795:5:2795:20 | ...::f(...) | T.dyn(T) | {EXTERNAL LOCATION} | i32 | -| main.rs:2795:16:2795:19 | true | | {EXTERNAL LOCATION} | bool | -| main.rs:2796:5:2796:23 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2766:22:2766:26 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:2766:22:2766:26 | SelfParam | TRef | main.rs:2765:5:2767:5 | Self [trait Container] | +| main.rs:2769:34:2769:34 | c | | {EXTERNAL LOCATION} | & | +| main.rs:2769:34:2769:34 | c | TRef | main.rs:2769:15:2769:31 | T | +| main.rs:2769:49:2771:5 | { ... } | | {EXTERNAL LOCATION} | bool | +| main.rs:2770:9:2770:9 | c | | {EXTERNAL LOCATION} | & | +| main.rs:2770:9:2770:9 | c | TRef | main.rs:2769:15:2769:31 | T | +| main.rs:2774:22:2774:26 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:2774:22:2774:26 | SelfParam | TRef | main.rs:2763:5:2763:21 | Gen | +| main.rs:2774:22:2774:26 | SelfParam | TRef.T | main.rs:2773:10:2773:17 | GT | +| main.rs:2774:35:2776:9 | { ... } | | main.rs:2773:10:2773:17 | GT | +| main.rs:2775:13:2775:16 | self | | {EXTERNAL LOCATION} | & | +| main.rs:2775:13:2775:16 | self | TRef | main.rs:2763:5:2763:21 | Gen | +| main.rs:2775:13:2775:16 | self | TRef.T | main.rs:2773:10:2773:17 | GT | +| main.rs:2779:15:2783:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2782:17:2782:26 | my_get(...) | | {EXTERNAL LOCATION} | bool | +| main.rs:2782:24:2782:25 | &g | | {EXTERNAL LOCATION} | & | +| main.rs:2786:11:2821:1 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2787:5:2787:21 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2788:5:2788:20 | ...::f(...) | | main.rs:72:5:72:21 | Foo | +| main.rs:2789:5:2789:60 | ...::g(...) | | main.rs:72:5:72:21 | Foo | +| main.rs:2789:20:2789:38 | ...::Foo {...} | | main.rs:72:5:72:21 | Foo | +| main.rs:2789:41:2789:59 | ...::Foo {...} | | main.rs:72:5:72:21 | Foo | +| main.rs:2790:5:2790:35 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2791:5:2791:41 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2792:5:2792:45 | ...::test(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2793:5:2793:30 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2794:5:2794:21 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2795:5:2795:27 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2796:5:2796:32 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2797:5:2797:23 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2798:5:2798:36 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2799:5:2799:35 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2800:5:2800:29 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2801:5:2801:23 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2802:5:2802:24 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2803:5:2803:17 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2804:5:2804:18 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2805:5:2805:15 | ...::f(...) | | {EXTERNAL LOCATION} | dyn Future | +| main.rs:2805:5:2805:15 | ...::f(...) | dyn(Output) | {EXTERNAL LOCATION} | () | +| main.rs:2806:5:2806:19 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2807:5:2807:17 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2808:5:2808:14 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2809:5:2809:27 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2810:5:2810:15 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2811:5:2811:43 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2812:5:2812:15 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2813:5:2813:17 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2814:5:2814:28 | ...::test(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2815:5:2815:23 | ...::test(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2816:5:2816:41 | ...::test_all_patterns(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2817:5:2817:49 | ...::box_patterns(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2818:5:2818:20 | ...::test(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2819:5:2819:20 | ...::f(...) | | {EXTERNAL LOCATION} | Box | +| main.rs:2819:5:2819:20 | ...::f(...) | A | {EXTERNAL LOCATION} | Global | +| main.rs:2819:5:2819:20 | ...::f(...) | T | main.rs:2547:5:2549:5 | dyn MyTrait | +| main.rs:2819:5:2819:20 | ...::f(...) | T.dyn(T) | {EXTERNAL LOCATION} | i32 | +| main.rs:2819:16:2819:19 | true | | {EXTERNAL LOCATION} | bool | +| main.rs:2820:5:2820:23 | ...::f(...) | | {EXTERNAL LOCATION} | () | | overloading.rs:4:19:4:23 | SelfParam | | {EXTERNAL LOCATION} | & | | overloading.rs:4:19:4:23 | SelfParam | TRef | overloading.rs:2:5:11:5 | Self [trait FirstTrait] | | overloading.rs:4:34:6:9 | { ... } | | {EXTERNAL LOCATION} | bool | @@ -5092,6 +5207,32 @@ inferCertainType | regressions.rs:127:9:130:9 | { ... } | | {EXTERNAL LOCATION} | () | | regressions.rs:128:24:128:27 | self | | regressions.rs:121:5:121:19 | S | | regressions.rs:128:24:128:27 | self | T | regressions.rs:123:10:123:10 | T | +| regressions.rs:139:17:139:17 | _ | | {EXTERNAL LOCATION} | & | +| regressions.rs:139:17:139:17 | _ | TRef | regressions.rs:135:5:135:14 | S1 | +| regressions.rs:139:33:141:9 | { ... } | | regressions.rs:136:5:136:22 | S2 | +| regressions.rs:139:33:141:9 | { ... } | T2 | regressions.rs:135:5:135:14 | S1 | +| regressions.rs:145:17:145:17 | t | | regressions.rs:144:10:144:10 | T | +| regressions.rs:145:31:147:9 | { ... } | | regressions.rs:136:5:136:22 | S2 | +| regressions.rs:145:31:147:9 | { ... } | T2 | regressions.rs:144:10:144:10 | T | +| regressions.rs:146:16:146:16 | t | | regressions.rs:144:10:144:10 | T | +| regressions.rs:150:24:153:5 | { ... } | | regressions.rs:136:5:136:22 | S2 | +| regressions.rs:150:24:153:5 | { ... } | T2 | regressions.rs:135:5:135:14 | S1 | +| regressions.rs:164:16:164:19 | SelfParam | | regressions.rs:158:5:158:19 | S | +| regressions.rs:164:16:164:19 | SelfParam | T | regressions.rs:160:10:160:10 | T | +| regressions.rs:164:22:164:25 | _rhs | | regressions.rs:158:5:158:19 | S | +| regressions.rs:164:22:164:25 | _rhs | T | regressions.rs:160:10:160:10 | T | +| regressions.rs:164:50:166:9 | { ... } | | regressions.rs:158:5:158:19 | S | +| regressions.rs:164:50:166:9 | { ... } | T | regressions.rs:160:10:160:10 | T | +| regressions.rs:165:13:165:16 | self | | regressions.rs:158:5:158:19 | S | +| regressions.rs:165:13:165:16 | self | T | regressions.rs:160:10:160:10 | T | +| regressions.rs:173:16:173:19 | SelfParam | | regressions.rs:158:5:158:19 | S | +| regressions.rs:173:16:173:19 | SelfParam | T | regressions.rs:169:10:169:10 | T | +| regressions.rs:173:22:173:25 | _rhs | | regressions.rs:169:10:169:10 | T | +| regressions.rs:173:47:175:9 | { ... } | | regressions.rs:158:5:158:19 | S | +| regressions.rs:173:47:175:9 | { ... } | T | regressions.rs:169:10:169:10 | T | +| regressions.rs:174:13:174:16 | self | | regressions.rs:158:5:158:19 | S | +| regressions.rs:174:13:174:16 | self | T | regressions.rs:169:10:169:10 | T | +| regressions.rs:178:14:180:5 | { ... } | | {EXTERNAL LOCATION} | () | inferType | associated_types.rs:5:15:5:18 | SelfParam | | associated_types.rs:1:1:2:21 | Wrapper | | associated_types.rs:5:15:5:18 | SelfParam | A | associated_types.rs:4:6:4:6 | A | @@ -6385,6 +6526,190 @@ inferType | closure.rs:152:41:152:41 | _ | | {EXTERNAL LOCATION} | i64 | | closure.rs:152:49:152:52 | true | | {EXTERNAL LOCATION} | bool | | closure.rs:152:56:152:56 | 3 | | {EXTERNAL LOCATION} | i32 | +| closure.rs:157:34:157:34 | f | | closure.rs:157:15:157:31 | F | +| closure.rs:157:40:157:40 | a | | {EXTERNAL LOCATION} | i64 | +| closure.rs:157:55:159:5 | { ... } | | {EXTERNAL LOCATION} | i64 | +| closure.rs:158:9:158:9 | f | | closure.rs:157:15:157:31 | F | +| closure.rs:158:9:158:12 | f(...) | | {EXTERNAL LOCATION} | i64 | +| closure.rs:158:11:158:11 | a | | {EXTERNAL LOCATION} | i64 | +| closure.rs:161:15:161:15 | f | | closure.rs:161:18:161:36 | impl ... | +| closure.rs:161:39:161:39 | a | | {EXTERNAL LOCATION} | i64 | +| closure.rs:161:54:163:5 | { ... } | | {EXTERNAL LOCATION} | i64 | +| closure.rs:162:9:162:9 | f | | closure.rs:161:18:161:36 | impl ... | +| closure.rs:162:9:162:12 | f(...) | | {EXTERNAL LOCATION} | i64 | +| closure.rs:162:11:162:11 | a | | {EXTERNAL LOCATION} | i64 | +| closure.rs:165:15:165:15 | f | | {EXTERNAL LOCATION} | & | +| closure.rs:165:15:165:15 | f | TRef | {EXTERNAL LOCATION} | dyn Fn | +| closure.rs:165:15:165:15 | f | TRef.dyn(Args) | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:165:15:165:15 | f | TRef.dyn(Args).T0 | {EXTERNAL LOCATION} | i64 | +| closure.rs:165:15:165:15 | f | TRef.dyn(Output) | {EXTERNAL LOCATION} | i64 | +| closure.rs:165:39:165:39 | a | | {EXTERNAL LOCATION} | i64 | +| closure.rs:165:54:167:5 | { ... } | | {EXTERNAL LOCATION} | i64 | +| closure.rs:166:9:166:9 | f | | {EXTERNAL LOCATION} | & | +| closure.rs:166:9:166:9 | f | TRef | {EXTERNAL LOCATION} | dyn Fn | +| closure.rs:166:9:166:9 | f | TRef.dyn(Args) | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:166:9:166:9 | f | TRef.dyn(Args).T0 | {EXTERNAL LOCATION} | i64 | +| closure.rs:166:9:166:9 | f | TRef.dyn(Output) | {EXTERNAL LOCATION} | i64 | +| closure.rs:166:9:166:12 | f(...) | | {EXTERNAL LOCATION} | F::Output[FnOnce] | +| closure.rs:166:9:166:12 | f(...) | | {EXTERNAL LOCATION} | i64 | +| closure.rs:166:11:166:11 | a | | {EXTERNAL LOCATION} | i64 | +| closure.rs:169:41:169:41 | f | | closure.rs:169:15:169:34 | F | +| closure.rs:169:47:169:47 | a | | {EXTERNAL LOCATION} | i64 | +| closure.rs:169:62:171:5 | { ... } | | {EXTERNAL LOCATION} | i64 | +| closure.rs:170:9:170:9 | f | | closure.rs:169:15:169:34 | F | +| closure.rs:170:9:170:12 | f(...) | | {EXTERNAL LOCATION} | i64 | +| closure.rs:170:11:170:11 | a | | {EXTERNAL LOCATION} | i64 | +| closure.rs:173:15:173:15 | f | | {EXTERNAL LOCATION} | &mut | +| closure.rs:173:15:173:15 | f | TRefMut | {EXTERNAL LOCATION} | dyn FnMut | +| closure.rs:173:15:173:15 | f | TRefMut.dyn(Args) | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:173:15:173:15 | f | TRefMut.dyn(Args).T0 | {EXTERNAL LOCATION} | i64 | +| closure.rs:173:15:173:15 | f | TRefMut.dyn(Output) | {EXTERNAL LOCATION} | i64 | +| closure.rs:173:46:173:46 | a | | {EXTERNAL LOCATION} | i64 | +| closure.rs:173:61:175:5 | { ... } | | {EXTERNAL LOCATION} | i64 | +| closure.rs:174:9:174:9 | f | | {EXTERNAL LOCATION} | &mut | +| closure.rs:174:9:174:9 | f | TRefMut | {EXTERNAL LOCATION} | dyn FnMut | +| closure.rs:174:9:174:9 | f | TRefMut.dyn(Args) | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:174:9:174:9 | f | TRefMut.dyn(Args).T0 | {EXTERNAL LOCATION} | i64 | +| closure.rs:174:9:174:9 | f | TRefMut.dyn(Output) | {EXTERNAL LOCATION} | i64 | +| closure.rs:174:9:174:12 | f(...) | | {EXTERNAL LOCATION} | F::Output[FnOnce] | +| closure.rs:174:9:174:12 | f(...) | | {EXTERNAL LOCATION} | i64 | +| closure.rs:174:11:174:11 | a | | {EXTERNAL LOCATION} | i64 | +| closure.rs:177:18:177:18 | f | | closure.rs:177:21:177:37 | impl ... | +| closure.rs:177:40:177:40 | a | | closure.rs:177:15:177:15 | T | +| closure.rs:177:53:179:5 | { ... } | | {EXTERNAL LOCATION} | i64 | +| closure.rs:178:9:178:9 | f | | closure.rs:177:21:177:37 | impl ... | +| closure.rs:178:9:178:12 | f(...) | | {EXTERNAL LOCATION} | i64 | +| closure.rs:178:11:178:11 | a | | closure.rs:177:15:177:15 | T | +| closure.rs:181:42:181:42 | f | | closure.rs:181:18:181:35 | F | +| closure.rs:181:48:181:48 | a | | closure.rs:181:15:181:15 | T | +| closure.rs:181:61:183:5 | { ... } | | {EXTERNAL LOCATION} | i64 | +| closure.rs:182:9:182:9 | f | | closure.rs:181:18:181:35 | F | +| closure.rs:182:9:182:12 | f(...) | | {EXTERNAL LOCATION} | i64 | +| closure.rs:182:11:182:11 | a | | closure.rs:181:15:181:15 | T | +| closure.rs:185:15:206:5 | { ... } | | {EXTERNAL LOCATION} | () | +| closure.rs:186:13:186:13 | f | | {EXTERNAL LOCATION} | dyn Fn | +| closure.rs:186:13:186:13 | f | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:186:17:186:21 | \|...\| x | | {EXTERNAL LOCATION} | dyn Fn | +| closure.rs:186:17:186:21 | \|...\| x | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:187:13:187:14 | _r | | {EXTERNAL LOCATION} | i64 | +| closure.rs:187:18:187:32 | apply1(...) | | {EXTERNAL LOCATION} | i64 | +| closure.rs:187:25:187:25 | f | | {EXTERNAL LOCATION} | dyn Fn | +| closure.rs:187:25:187:25 | f | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:187:28:187:31 | 1i64 | | {EXTERNAL LOCATION} | i64 | +| closure.rs:189:13:189:13 | f | | {EXTERNAL LOCATION} | dyn Fn | +| closure.rs:189:13:189:13 | f | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:189:17:189:21 | \|...\| x | | {EXTERNAL LOCATION} | dyn Fn | +| closure.rs:189:17:189:21 | \|...\| x | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:190:13:190:14 | _r | | {EXTERNAL LOCATION} | i64 | +| closure.rs:190:18:190:32 | apply2(...) | | {EXTERNAL LOCATION} | i64 | +| closure.rs:190:25:190:25 | f | | {EXTERNAL LOCATION} | dyn Fn | +| closure.rs:190:25:190:25 | f | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:190:28:190:31 | 2i64 | | {EXTERNAL LOCATION} | i64 | +| closure.rs:192:13:192:13 | f | | {EXTERNAL LOCATION} | dyn Fn | +| closure.rs:192:13:192:13 | f | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:192:17:192:21 | \|...\| x | | {EXTERNAL LOCATION} | dyn Fn | +| closure.rs:192:17:192:21 | \|...\| x | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:193:13:193:14 | _r | | {EXTERNAL LOCATION} | i64 | +| closure.rs:193:18:193:33 | apply3(...) | | {EXTERNAL LOCATION} | i64 | +| closure.rs:193:25:193:26 | &f | | {EXTERNAL LOCATION} | & | +| closure.rs:193:25:193:26 | &f | TRef | {EXTERNAL LOCATION} | dyn Fn | +| closure.rs:193:25:193:26 | &f | TRef.dyn(Args) | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:193:26:193:26 | f | | {EXTERNAL LOCATION} | dyn Fn | +| closure.rs:193:26:193:26 | f | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:193:29:193:32 | 3i64 | | {EXTERNAL LOCATION} | i64 | +| closure.rs:195:13:195:13 | f | | {EXTERNAL LOCATION} | dyn Fn | +| closure.rs:195:13:195:13 | f | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:195:17:195:21 | \|...\| x | | {EXTERNAL LOCATION} | dyn Fn | +| closure.rs:195:17:195:21 | \|...\| x | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:196:13:196:14 | _r | | {EXTERNAL LOCATION} | i64 | +| closure.rs:196:18:196:32 | apply4(...) | | {EXTERNAL LOCATION} | i64 | +| closure.rs:196:25:196:25 | f | | {EXTERNAL LOCATION} | dyn Fn | +| closure.rs:196:25:196:25 | f | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:196:28:196:31 | 4i64 | | {EXTERNAL LOCATION} | i64 | +| closure.rs:198:17:198:17 | f | | {EXTERNAL LOCATION} | dyn Fn | +| closure.rs:198:17:198:17 | f | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:198:21:198:25 | \|...\| x | | {EXTERNAL LOCATION} | dyn Fn | +| closure.rs:198:21:198:25 | \|...\| x | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:199:13:199:14 | _r | | {EXTERNAL LOCATION} | i64 | +| closure.rs:199:18:199:37 | apply5(...) | | {EXTERNAL LOCATION} | i64 | +| closure.rs:199:25:199:30 | &mut f | | {EXTERNAL LOCATION} | &mut | +| closure.rs:199:25:199:30 | &mut f | TRefMut | {EXTERNAL LOCATION} | dyn Fn | +| closure.rs:199:25:199:30 | &mut f | TRefMut.dyn(Args) | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:199:30:199:30 | f | | {EXTERNAL LOCATION} | dyn Fn | +| closure.rs:199:30:199:30 | f | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:199:33:199:36 | 5i64 | | {EXTERNAL LOCATION} | i64 | +| closure.rs:201:13:201:13 | f | | {EXTERNAL LOCATION} | dyn Fn | +| closure.rs:201:13:201:13 | f | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:201:17:201:21 | \|...\| x | | {EXTERNAL LOCATION} | dyn Fn | +| closure.rs:201:17:201:21 | \|...\| x | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:202:13:202:14 | _r | | {EXTERNAL LOCATION} | i64 | +| closure.rs:202:18:202:32 | apply6(...) | | {EXTERNAL LOCATION} | i64 | +| closure.rs:202:25:202:25 | f | | {EXTERNAL LOCATION} | dyn Fn | +| closure.rs:202:25:202:25 | f | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:202:28:202:31 | 6i64 | | {EXTERNAL LOCATION} | i64 | +| closure.rs:204:13:204:13 | f | | {EXTERNAL LOCATION} | dyn Fn | +| closure.rs:204:13:204:13 | f | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:204:17:204:21 | \|...\| x | | {EXTERNAL LOCATION} | dyn Fn | +| closure.rs:204:17:204:21 | \|...\| x | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:205:13:205:14 | _r | | {EXTERNAL LOCATION} | i64 | +| closure.rs:205:18:205:32 | apply7(...) | | {EXTERNAL LOCATION} | i64 | +| closure.rs:205:25:205:25 | f | | {EXTERNAL LOCATION} | dyn Fn | +| closure.rs:205:25:205:25 | f | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:205:28:205:31 | 7i64 | | {EXTERNAL LOCATION} | i64 | +| closure.rs:217:18:217:22 | SelfParam | | {EXTERNAL LOCATION} | & | +| closure.rs:217:18:217:22 | SelfParam | TRef | closure.rs:212:5:212:19 | S | +| closure.rs:217:18:217:22 | SelfParam | TRef.T | closure.rs:214:10:214:10 | T | +| closure.rs:217:42:219:9 | { ... } | | {EXTERNAL LOCATION} | & | +| closure.rs:217:42:219:9 | { ... } | TRef | {EXTERNAL LOCATION} | dyn Fn | +| closure.rs:217:42:219:9 | { ... } | TRef.dyn(Args) | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:217:42:219:9 | { ... } | TRef.dyn(Args).T0 | closure.rs:214:10:214:10 | T | +| closure.rs:217:42:219:9 | { ... } | TRef.dyn(Output) | {EXTERNAL LOCATION} | bool | +| closure.rs:218:13:218:22 | &... | | {EXTERNAL LOCATION} | & | +| closure.rs:218:13:218:22 | &... | TRef | {EXTERNAL LOCATION} | dyn Fn | +| closure.rs:218:13:218:22 | &... | TRef.dyn(Args) | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:218:13:218:22 | &... | TRef.dyn(Args).T0 | closure.rs:214:10:214:10 | T | +| closure.rs:218:13:218:22 | &... | TRef.dyn(Output) | {EXTERNAL LOCATION} | bool | +| closure.rs:218:14:218:22 | \|...\| false | | {EXTERNAL LOCATION} | dyn Fn | +| closure.rs:218:14:218:22 | \|...\| false | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:218:14:218:22 | \|...\| false | dyn(Args).T0 | closure.rs:214:10:214:10 | T | +| closure.rs:218:14:218:22 | \|...\| false | dyn(Output) | {EXTERNAL LOCATION} | bool | +| closure.rs:218:15:218:15 | _ | | closure.rs:214:10:214:10 | T | +| closure.rs:218:18:218:22 | false | | {EXTERNAL LOCATION} | bool | +| closure.rs:222:19:240:5 | { ... } | | {EXTERNAL LOCATION} | () | +| closure.rs:223:13:223:13 | x | | {EXTERNAL LOCATION} | i64 | +| closure.rs:223:17:223:20 | 0i64 | | {EXTERNAL LOCATION} | i64 | +| closure.rs:225:13:225:13 | s | | closure.rs:212:5:212:19 | S | +| closure.rs:225:17:225:20 | S(...) | | closure.rs:212:5:212:19 | S | +| closure.rs:226:20:226:20 | s | | closure.rs:212:5:212:19 | S | +| closure.rs:226:22:226:22 | x | | {EXTERNAL LOCATION} | i64 | +| closure.rs:228:13:228:13 | x | | {EXTERNAL LOCATION} | i32 | +| closure.rs:228:17:228:20 | 0i32 | | {EXTERNAL LOCATION} | i32 | +| closure.rs:230:13:230:13 | s | | closure.rs:212:5:212:19 | S | +| closure.rs:230:17:230:20 | S(...) | | closure.rs:212:5:212:19 | S | +| closure.rs:231:13:231:17 | s_ref | | {EXTERNAL LOCATION} | & | +| closure.rs:231:13:231:17 | s_ref | TRef | closure.rs:212:5:212:19 | S | +| closure.rs:231:21:231:22 | &s | | {EXTERNAL LOCATION} | & | +| closure.rs:231:21:231:22 | &s | TRef | closure.rs:212:5:212:19 | S | +| closure.rs:231:22:231:22 | s | | closure.rs:212:5:212:19 | S | +| closure.rs:232:13:232:16 | _ret | | {EXTERNAL LOCATION} | F::Output[FnOnce] | +| closure.rs:232:20:232:24 | s_ref | | {EXTERNAL LOCATION} | & | +| closure.rs:232:20:232:24 | s_ref | TRef | closure.rs:212:5:212:19 | S | +| closure.rs:232:20:232:27 | s_ref(...) | | {EXTERNAL LOCATION} | F::Output[FnOnce] | +| closure.rs:232:26:232:26 | x | | {EXTERNAL LOCATION} | i32 | +| closure.rs:238:13:238:13 | c | | {EXTERNAL LOCATION} | dyn Fn | +| closure.rs:238:13:238:13 | c | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:238:17:238:21 | \|...\| x | | {EXTERNAL LOCATION} | dyn Fn | +| closure.rs:238:17:238:21 | \|...\| x | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:239:9:239:12 | (...) | | {EXTERNAL LOCATION} | & | +| closure.rs:239:9:239:12 | (...) | TRef | {EXTERNAL LOCATION} | dyn Fn | +| closure.rs:239:9:239:12 | (...) | TRef.dyn(Args) | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:239:9:239:15 | ...(...) | | {EXTERNAL LOCATION} | F::Output[FnOnce] | +| closure.rs:239:10:239:11 | &c | | {EXTERNAL LOCATION} | & | +| closure.rs:239:10:239:11 | &c | TRef | {EXTERNAL LOCATION} | dyn Fn | +| closure.rs:239:10:239:11 | &c | TRef.dyn(Args) | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:239:11:239:11 | c | | {EXTERNAL LOCATION} | dyn Fn | +| closure.rs:239:11:239:11 | c | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:239:14:239:14 | x | | {EXTERNAL LOCATION} | i32 | | dereference.rs:13:14:13:18 | SelfParam | | {EXTERNAL LOCATION} | & | | dereference.rs:13:14:13:18 | SelfParam | TRef | dereference.rs:5:1:7:1 | MyIntPointer | | dereference.rs:13:29:15:5 | { ... } | | {EXTERNAL LOCATION} | & | @@ -12316,48 +12641,74 @@ inferType | main.rs:2751:17:2751:17 | x | | {EXTERNAL LOCATION} | i32 | | main.rs:2751:17:2751:24 | x.max(...) | | {EXTERNAL LOCATION} | i32 | | main.rs:2751:23:2751:23 | y | | {EXTERNAL LOCATION} | usize | -| main.rs:2762:11:2797:1 | { ... } | | {EXTERNAL LOCATION} | () | -| main.rs:2763:5:2763:21 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2764:5:2764:20 | ...::f(...) | | main.rs:72:5:72:21 | Foo | -| main.rs:2765:5:2765:60 | ...::g(...) | | main.rs:72:5:72:21 | Foo | -| main.rs:2765:20:2765:38 | ...::Foo {...} | | main.rs:72:5:72:21 | Foo | -| main.rs:2765:41:2765:59 | ...::Foo {...} | | main.rs:72:5:72:21 | Foo | -| main.rs:2766:5:2766:35 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2767:5:2767:41 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2768:5:2768:45 | ...::test(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2769:5:2769:30 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2770:5:2770:21 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2771:5:2771:27 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2772:5:2772:32 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2773:5:2773:23 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2774:5:2774:36 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2775:5:2775:35 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2776:5:2776:29 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2777:5:2777:23 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2778:5:2778:24 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2779:5:2779:17 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2780:5:2780:18 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2781:5:2781:15 | ...::f(...) | | {EXTERNAL LOCATION} | dyn Future | -| main.rs:2781:5:2781:15 | ...::f(...) | dyn(Output) | {EXTERNAL LOCATION} | () | -| main.rs:2782:5:2782:19 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2783:5:2783:17 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2784:5:2784:14 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2785:5:2785:27 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2786:5:2786:15 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2787:5:2787:43 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2788:5:2788:15 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2789:5:2789:17 | ...::f(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2790:5:2790:28 | ...::test(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2791:5:2791:23 | ...::test(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2792:5:2792:41 | ...::test_all_patterns(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2793:5:2793:49 | ...::box_patterns(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2794:5:2794:20 | ...::test(...) | | {EXTERNAL LOCATION} | () | -| main.rs:2795:5:2795:20 | ...::f(...) | | {EXTERNAL LOCATION} | Box | -| main.rs:2795:5:2795:20 | ...::f(...) | A | {EXTERNAL LOCATION} | Global | -| main.rs:2795:5:2795:20 | ...::f(...) | T | main.rs:2547:5:2549:5 | dyn MyTrait | -| main.rs:2795:5:2795:20 | ...::f(...) | T.dyn(T) | {EXTERNAL LOCATION} | i32 | -| main.rs:2795:16:2795:19 | true | | {EXTERNAL LOCATION} | bool | -| main.rs:2796:5:2796:23 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2766:22:2766:26 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:2766:22:2766:26 | SelfParam | TRef | main.rs:2765:5:2767:5 | Self [trait Container] | +| main.rs:2769:34:2769:34 | c | | {EXTERNAL LOCATION} | & | +| main.rs:2769:34:2769:34 | c | TRef | main.rs:2769:15:2769:31 | T | +| main.rs:2769:49:2771:5 | { ... } | | {EXTERNAL LOCATION} | bool | +| main.rs:2770:9:2770:9 | c | | {EXTERNAL LOCATION} | & | +| main.rs:2770:9:2770:9 | c | TRef | main.rs:2769:15:2769:31 | T | +| main.rs:2770:9:2770:21 | c.get_input() | | {EXTERNAL LOCATION} | i64 | +| main.rs:2770:9:2770:27 | ... == ... | | {EXTERNAL LOCATION} | bool | +| main.rs:2770:26:2770:27 | 42 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2774:22:2774:26 | SelfParam | | {EXTERNAL LOCATION} | & | +| main.rs:2774:22:2774:26 | SelfParam | TRef | main.rs:2763:5:2763:21 | Gen | +| main.rs:2774:22:2774:26 | SelfParam | TRef.T | main.rs:2773:10:2773:17 | GT | +| main.rs:2774:35:2776:9 | { ... } | | main.rs:2773:10:2773:17 | GT | +| main.rs:2775:13:2775:16 | self | | {EXTERNAL LOCATION} | & | +| main.rs:2775:13:2775:16 | self | TRef | main.rs:2763:5:2763:21 | Gen | +| main.rs:2775:13:2775:16 | self | TRef.T | main.rs:2773:10:2773:17 | GT | +| main.rs:2775:13:2775:18 | self.0 | | main.rs:2773:10:2773:17 | GT | +| main.rs:2779:15:2783:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2781:13:2781:13 | g | | main.rs:2763:5:2763:21 | Gen | +| main.rs:2781:17:2781:22 | Gen(...) | | main.rs:2763:5:2763:21 | Gen | +| main.rs:2782:13:2782:13 | _ | | {EXTERNAL LOCATION} | bool | +| main.rs:2782:17:2782:26 | my_get(...) | | {EXTERNAL LOCATION} | bool | +| main.rs:2782:24:2782:25 | &g | | {EXTERNAL LOCATION} | & | +| main.rs:2782:24:2782:25 | &g | TRef | main.rs:2763:5:2763:21 | Gen | +| main.rs:2782:25:2782:25 | g | | main.rs:2763:5:2763:21 | Gen | +| main.rs:2786:11:2821:1 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2787:5:2787:21 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2788:5:2788:20 | ...::f(...) | | main.rs:72:5:72:21 | Foo | +| main.rs:2789:5:2789:60 | ...::g(...) | | main.rs:72:5:72:21 | Foo | +| main.rs:2789:20:2789:38 | ...::Foo {...} | | main.rs:72:5:72:21 | Foo | +| main.rs:2789:41:2789:59 | ...::Foo {...} | | main.rs:72:5:72:21 | Foo | +| main.rs:2790:5:2790:35 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2791:5:2791:41 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2792:5:2792:45 | ...::test(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2793:5:2793:30 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2794:5:2794:21 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2795:5:2795:27 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2796:5:2796:32 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2797:5:2797:23 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2798:5:2798:36 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2799:5:2799:35 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2800:5:2800:29 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2801:5:2801:23 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2802:5:2802:24 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2803:5:2803:17 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2804:5:2804:18 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2805:5:2805:15 | ...::f(...) | | {EXTERNAL LOCATION} | dyn Future | +| main.rs:2805:5:2805:15 | ...::f(...) | dyn(Output) | {EXTERNAL LOCATION} | () | +| main.rs:2806:5:2806:19 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2807:5:2807:17 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2808:5:2808:14 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2809:5:2809:27 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2810:5:2810:15 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2811:5:2811:43 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2812:5:2812:15 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2813:5:2813:17 | ...::f(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2814:5:2814:28 | ...::test(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2815:5:2815:23 | ...::test(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2816:5:2816:41 | ...::test_all_patterns(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2817:5:2817:49 | ...::box_patterns(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2818:5:2818:20 | ...::test(...) | | {EXTERNAL LOCATION} | () | +| main.rs:2819:5:2819:20 | ...::f(...) | | {EXTERNAL LOCATION} | Box | +| main.rs:2819:5:2819:20 | ...::f(...) | A | {EXTERNAL LOCATION} | Global | +| main.rs:2819:5:2819:20 | ...::f(...) | T | main.rs:2547:5:2549:5 | dyn MyTrait | +| main.rs:2819:5:2819:20 | ...::f(...) | T.dyn(T) | {EXTERNAL LOCATION} | i32 | +| main.rs:2819:16:2819:19 | true | | {EXTERNAL LOCATION} | bool | +| main.rs:2820:5:2820:23 | ...::f(...) | | {EXTERNAL LOCATION} | () | | overloading.rs:4:19:4:23 | SelfParam | | {EXTERNAL LOCATION} | & | | overloading.rs:4:19:4:23 | SelfParam | TRef | overloading.rs:2:5:11:5 | Self [trait FirstTrait] | | overloading.rs:4:34:6:9 | { ... } | | {EXTERNAL LOCATION} | bool | @@ -15158,4 +15509,56 @@ inferType | regressions.rs:128:24:128:27 | self | T | regressions.rs:123:10:123:10 | T | | regressions.rs:129:13:129:13 | s | | regressions.rs:123:10:123:10 | T | | regressions.rs:129:13:129:17 | s.m() | | {EXTERNAL LOCATION} | () | +| regressions.rs:139:17:139:17 | _ | | {EXTERNAL LOCATION} | & | +| regressions.rs:139:17:139:17 | _ | TRef | regressions.rs:135:5:135:14 | S1 | +| regressions.rs:139:33:141:9 | { ... } | | regressions.rs:136:5:136:22 | S2 | +| regressions.rs:139:33:141:9 | { ... } | T2 | regressions.rs:135:5:135:14 | S1 | +| regressions.rs:140:13:140:18 | S2(...) | | regressions.rs:136:5:136:22 | S2 | +| regressions.rs:140:13:140:18 | S2(...) | T2 | regressions.rs:135:5:135:14 | S1 | +| regressions.rs:140:16:140:17 | S1 | | regressions.rs:135:5:135:14 | S1 | +| regressions.rs:145:17:145:17 | t | | regressions.rs:144:10:144:10 | T | +| regressions.rs:145:31:147:9 | { ... } | | regressions.rs:136:5:136:22 | S2 | +| regressions.rs:145:31:147:9 | { ... } | T2 | regressions.rs:144:10:144:10 | T | +| regressions.rs:146:13:146:17 | S2(...) | | regressions.rs:136:5:136:22 | S2 | +| regressions.rs:146:13:146:17 | S2(...) | T2 | regressions.rs:144:10:144:10 | T | +| regressions.rs:146:16:146:16 | t | | regressions.rs:144:10:144:10 | T | +| regressions.rs:150:24:153:5 | { ... } | | regressions.rs:136:5:136:22 | S2 | +| regressions.rs:150:24:153:5 | { ... } | T2 | regressions.rs:135:5:135:14 | S1 | +| regressions.rs:151:13:151:13 | x | | regressions.rs:136:5:136:22 | S2 | +| regressions.rs:151:13:151:13 | x | T2 | regressions.rs:135:5:135:14 | S1 | +| regressions.rs:151:17:151:18 | S1 | | regressions.rs:135:5:135:14 | S1 | +| regressions.rs:151:17:151:25 | S1.into() | | regressions.rs:136:5:136:22 | S2 | +| regressions.rs:151:17:151:25 | S1.into() | T2 | regressions.rs:135:5:135:14 | S1 | +| regressions.rs:152:9:152:9 | x | | regressions.rs:136:5:136:22 | S2 | +| regressions.rs:152:9:152:9 | x | T2 | regressions.rs:135:5:135:14 | S1 | +| regressions.rs:164:16:164:19 | SelfParam | | regressions.rs:158:5:158:19 | S | +| regressions.rs:164:16:164:19 | SelfParam | T | regressions.rs:160:10:160:10 | T | +| regressions.rs:164:22:164:25 | _rhs | | regressions.rs:158:5:158:19 | S | +| regressions.rs:164:22:164:25 | _rhs | T | regressions.rs:160:10:160:10 | T | +| regressions.rs:164:50:166:9 | { ... } | | regressions.rs:158:5:158:19 | S | +| regressions.rs:164:50:166:9 | { ... } | T | regressions.rs:160:10:160:10 | T | +| regressions.rs:165:13:165:16 | self | | regressions.rs:158:5:158:19 | S | +| regressions.rs:165:13:165:16 | self | T | regressions.rs:160:10:160:10 | T | +| regressions.rs:173:16:173:19 | SelfParam | | regressions.rs:158:5:158:19 | S | +| regressions.rs:173:16:173:19 | SelfParam | T | regressions.rs:169:10:169:10 | T | +| regressions.rs:173:22:173:25 | _rhs | | regressions.rs:169:10:169:10 | T | +| regressions.rs:173:47:175:9 | { ... } | | regressions.rs:158:5:158:19 | S | +| regressions.rs:173:47:175:9 | { ... } | T | regressions.rs:169:10:169:10 | T | +| regressions.rs:174:13:174:16 | self | | regressions.rs:158:5:158:19 | S | +| regressions.rs:174:13:174:16 | self | T | regressions.rs:169:10:169:10 | T | +| regressions.rs:178:14:180:5 | { ... } | | {EXTERNAL LOCATION} | () | +| regressions.rs:179:13:179:13 | x | | regressions.rs:158:5:158:19 | S | +| regressions.rs:179:13:179:13 | x | T | {EXTERNAL LOCATION} | i32 | +| regressions.rs:179:13:179:13 | x | T | regressions.rs:158:5:158:19 | S | +| regressions.rs:179:13:179:13 | x | T.T | {EXTERNAL LOCATION} | i32 | +| regressions.rs:179:17:179:20 | S(...) | | regressions.rs:158:5:158:19 | S | +| regressions.rs:179:17:179:20 | S(...) | T | {EXTERNAL LOCATION} | i32 | +| regressions.rs:179:17:179:27 | ... + ... | | regressions.rs:158:5:158:19 | S | +| regressions.rs:179:17:179:27 | ... + ... | T | {EXTERNAL LOCATION} | i32 | +| regressions.rs:179:17:179:27 | ... + ... | T | regressions.rs:158:5:158:19 | S | +| regressions.rs:179:17:179:27 | ... + ... | T.T | {EXTERNAL LOCATION} | i32 | +| regressions.rs:179:19:179:19 | 0 | | {EXTERNAL LOCATION} | i32 | +| regressions.rs:179:24:179:27 | S(...) | | regressions.rs:158:5:158:19 | S | +| regressions.rs:179:24:179:27 | S(...) | T | {EXTERNAL LOCATION} | i32 | +| regressions.rs:179:26:179:26 | 1 | | {EXTERNAL LOCATION} | i32 | testFailures From c9832c330af360b4204971cb1c250b7633da0c1d Mon Sep 17 00:00:00 2001 From: Taus Date: Thu, 26 Mar 2026 20:13:55 +0000 Subject: [PATCH 011/157] Python: Convert BindToAllInterfaces to path-problem Now that we're using global data-flow, we might as well make use of the fact that we know where the source is. --- .../CVE-2018-1281/BindToAllInterfaces.ql | 16 +++-- .../BindToAllInterfaces.expected | 72 ++++++++++++++++--- .../CVE-2018-1281/BindToAllInterfaces_test.py | 6 +- 3 files changed, 75 insertions(+), 19 deletions(-) diff --git a/python/ql/src/Security/CVE-2018-1281/BindToAllInterfaces.ql b/python/ql/src/Security/CVE-2018-1281/BindToAllInterfaces.ql index 39d0c6b6237d..2b62b184fd4e 100644 --- a/python/ql/src/Security/CVE-2018-1281/BindToAllInterfaces.ql +++ b/python/ql/src/Security/CVE-2018-1281/BindToAllInterfaces.ql @@ -2,7 +2,7 @@ * @name Binding a socket to all network interfaces * @description Binding a socket to all interfaces opens it up to traffic from any IPv4 address * and is therefore associated with security risks. - * @kind problem + * @kind path-problem * @tags security * external/cwe/cwe-200 * @problem.severity error @@ -16,6 +16,7 @@ import python import semmle.python.dataflow.new.DataFlow import semmle.python.dataflow.new.TaintTracking private import semmle.python.frameworks.data.ModelsAsData +import BindToAllInterfacesFlow::PathGraph /** Gets a hostname that can be used to bind to all interfaces. */ private string vulnerableHostname() { @@ -39,9 +40,10 @@ private module BindToAllInterfacesConfig implements DataFlow::ConfigSig { private module BindToAllInterfacesFlow = TaintTracking::Global; -from DataFlow::Node source, DataFlow::Node sink, DataFlow::CallCfgNode bindCall, string hostname -where - BindToAllInterfacesFlow::flow(source, sink) and - bindCall.getArg(0) = sink and - hostname = source.asExpr().(StringLiteral).getText() -select bindCall.asExpr(), "'" + hostname + "' binds a socket to all interfaces." +private import BindToAllInterfacesFlow + +from PathNode source, PathNode sink +where flowPath(source, sink) +select sink.getNode(), source, sink, + "Binding a socket to all interfaces (using $@) is a security risk.", source.getNode(), + "'" + source.getNode().asExpr().(StringLiteral).getText() + "'" diff --git a/python/ql/test/query-tests/Security/CVE-2018-1281/BindToAllInterfaces.expected b/python/ql/test/query-tests/Security/CVE-2018-1281/BindToAllInterfaces.expected index d657c2f14db4..0b96b2df6508 100644 --- a/python/ql/test/query-tests/Security/CVE-2018-1281/BindToAllInterfaces.expected +++ b/python/ql/test/query-tests/Security/CVE-2018-1281/BindToAllInterfaces.expected @@ -1,9 +1,63 @@ -| BindToAllInterfaces_test.py:5:1:5:26 | Attribute() | '0.0.0.0' binds a socket to all interfaces. | -| BindToAllInterfaces_test.py:9:1:9:18 | Attribute() | '' binds a socket to all interfaces. | -| BindToAllInterfaces_test.py:17:1:17:26 | Attribute() | '0.0.0.0' binds a socket to all interfaces. | -| BindToAllInterfaces_test.py:21:1:21:11 | Attribute() | '0.0.0.0' binds a socket to all interfaces. | -| BindToAllInterfaces_test.py:26:1:26:20 | Attribute() | '::' binds a socket to all interfaces. | -| BindToAllInterfaces_test.py:39:9:39:43 | Attribute() | '0.0.0.0' binds a socket to all interfaces. | -| BindToAllInterfaces_test.py:48:1:48:20 | Attribute() | '0.0.0.0' binds a socket to all interfaces. | -| BindToAllInterfaces_test.py:53:1:53:27 | Attribute() | '0.0.0.0' binds a socket to all interfaces. | -| BindToAllInterfaces_test.py:58:1:58:27 | Attribute() | '0.0.0.0' binds a socket to all interfaces. | +#select +| BindToAllInterfaces_test.py:5:9:5:24 | ControlFlowNode for Tuple | BindToAllInterfaces_test.py:5:9:5:17 | ControlFlowNode for StringLiteral | BindToAllInterfaces_test.py:5:9:5:24 | ControlFlowNode for Tuple | Binding a socket to all interfaces (using $@) is a security risk. | BindToAllInterfaces_test.py:5:9:5:17 | ControlFlowNode for StringLiteral | '0.0.0.0' | +| BindToAllInterfaces_test.py:9:9:9:16 | ControlFlowNode for Tuple | BindToAllInterfaces_test.py:9:9:9:10 | ControlFlowNode for StringLiteral | BindToAllInterfaces_test.py:9:9:9:16 | ControlFlowNode for Tuple | Binding a socket to all interfaces (using $@) is a security risk. | BindToAllInterfaces_test.py:9:9:9:10 | ControlFlowNode for StringLiteral | '' | +| BindToAllInterfaces_test.py:17:9:17:24 | ControlFlowNode for Tuple | BindToAllInterfaces_test.py:16:14:16:22 | ControlFlowNode for StringLiteral | BindToAllInterfaces_test.py:17:9:17:24 | ControlFlowNode for Tuple | Binding a socket to all interfaces (using $@) is a security risk. | BindToAllInterfaces_test.py:16:14:16:22 | ControlFlowNode for StringLiteral | '0.0.0.0' | +| BindToAllInterfaces_test.py:21:8:21:10 | ControlFlowNode for tup | BindToAllInterfaces_test.py:16:14:16:22 | ControlFlowNode for StringLiteral | BindToAllInterfaces_test.py:21:8:21:10 | ControlFlowNode for tup | Binding a socket to all interfaces (using $@) is a security risk. | BindToAllInterfaces_test.py:16:14:16:22 | ControlFlowNode for StringLiteral | '0.0.0.0' | +| BindToAllInterfaces_test.py:26:9:26:18 | ControlFlowNode for Tuple | BindToAllInterfaces_test.py:26:9:26:12 | ControlFlowNode for StringLiteral | BindToAllInterfaces_test.py:26:9:26:18 | ControlFlowNode for Tuple | Binding a socket to all interfaces (using $@) is a security risk. | BindToAllInterfaces_test.py:26:9:26:12 | ControlFlowNode for StringLiteral | '::' | +| BindToAllInterfaces_test.py:39:17:39:41 | ControlFlowNode for Tuple | BindToAllInterfaces_test.py:34:26:34:34 | ControlFlowNode for StringLiteral | BindToAllInterfaces_test.py:39:17:39:41 | ControlFlowNode for Tuple | Binding a socket to all interfaces (using $@) is a security risk. | BindToAllInterfaces_test.py:34:26:34:34 | ControlFlowNode for StringLiteral | '0.0.0.0' | +| BindToAllInterfaces_test.py:48:9:48:18 | ControlFlowNode for Tuple | BindToAllInterfaces_test.py:46:35:46:43 | ControlFlowNode for StringLiteral | BindToAllInterfaces_test.py:48:9:48:18 | ControlFlowNode for Tuple | Binding a socket to all interfaces (using $@) is a security risk. | BindToAllInterfaces_test.py:46:35:46:43 | ControlFlowNode for StringLiteral | '0.0.0.0' | +| BindToAllInterfaces_test.py:53:10:53:25 | ControlFlowNode for Tuple | BindToAllInterfaces_test.py:53:10:53:18 | ControlFlowNode for StringLiteral | BindToAllInterfaces_test.py:53:10:53:25 | ControlFlowNode for Tuple | Binding a socket to all interfaces (using $@) is a security risk. | BindToAllInterfaces_test.py:53:10:53:18 | ControlFlowNode for StringLiteral | '0.0.0.0' | +| BindToAllInterfaces_test.py:58:10:58:25 | ControlFlowNode for Tuple | BindToAllInterfaces_test.py:58:10:58:18 | ControlFlowNode for StringLiteral | BindToAllInterfaces_test.py:58:10:58:25 | ControlFlowNode for Tuple | Binding a socket to all interfaces (using $@) is a security risk. | BindToAllInterfaces_test.py:58:10:58:18 | ControlFlowNode for StringLiteral | '0.0.0.0' | +edges +| BindToAllInterfaces_test.py:5:9:5:17 | ControlFlowNode for StringLiteral | BindToAllInterfaces_test.py:5:9:5:24 | ControlFlowNode for Tuple | provenance | Sink:MaD:63 | +| BindToAllInterfaces_test.py:9:9:9:10 | ControlFlowNode for StringLiteral | BindToAllInterfaces_test.py:9:9:9:16 | ControlFlowNode for Tuple | provenance | Sink:MaD:63 | +| BindToAllInterfaces_test.py:16:1:16:10 | ControlFlowNode for ALL_LOCALS | BindToAllInterfaces_test.py:17:9:17:24 | ControlFlowNode for Tuple | provenance | Sink:MaD:63 | +| BindToAllInterfaces_test.py:16:1:16:10 | ControlFlowNode for ALL_LOCALS | BindToAllInterfaces_test.py:20:1:20:3 | ControlFlowNode for tup | provenance | | +| BindToAllInterfaces_test.py:16:14:16:22 | ControlFlowNode for StringLiteral | BindToAllInterfaces_test.py:16:1:16:10 | ControlFlowNode for ALL_LOCALS | provenance | | +| BindToAllInterfaces_test.py:20:1:20:3 | ControlFlowNode for tup | BindToAllInterfaces_test.py:21:8:21:10 | ControlFlowNode for tup | provenance | Sink:MaD:63 | +| BindToAllInterfaces_test.py:26:9:26:12 | ControlFlowNode for StringLiteral | BindToAllInterfaces_test.py:26:9:26:18 | ControlFlowNode for Tuple | provenance | Sink:MaD:63 | +| BindToAllInterfaces_test.py:33:18:33:21 | ControlFlowNode for self [Return] [Attribute bind_addr] | BindToAllInterfaces_test.py:41:10:41:17 | ControlFlowNode for Server() [Attribute bind_addr] | provenance | | +| BindToAllInterfaces_test.py:34:9:34:12 | [post] ControlFlowNode for self [Attribute bind_addr] | BindToAllInterfaces_test.py:33:18:33:21 | ControlFlowNode for self [Return] [Attribute bind_addr] | provenance | | +| BindToAllInterfaces_test.py:34:26:34:34 | ControlFlowNode for StringLiteral | BindToAllInterfaces_test.py:34:9:34:12 | [post] ControlFlowNode for self [Attribute bind_addr] | provenance | | +| BindToAllInterfaces_test.py:37:15:37:18 | ControlFlowNode for self [Attribute bind_addr] | BindToAllInterfaces_test.py:39:17:39:20 | ControlFlowNode for self [Attribute bind_addr] | provenance | | +| BindToAllInterfaces_test.py:39:17:39:20 | ControlFlowNode for self [Attribute bind_addr] | BindToAllInterfaces_test.py:39:17:39:30 | ControlFlowNode for Attribute | provenance | | +| BindToAllInterfaces_test.py:39:17:39:30 | ControlFlowNode for Attribute | BindToAllInterfaces_test.py:39:17:39:41 | ControlFlowNode for Tuple | provenance | Sink:MaD:63 | +| BindToAllInterfaces_test.py:41:1:41:6 | ControlFlowNode for server [Attribute bind_addr] | BindToAllInterfaces_test.py:42:1:42:6 | ControlFlowNode for server [Attribute bind_addr] | provenance | | +| BindToAllInterfaces_test.py:41:10:41:17 | ControlFlowNode for Server() [Attribute bind_addr] | BindToAllInterfaces_test.py:41:1:41:6 | ControlFlowNode for server [Attribute bind_addr] | provenance | | +| BindToAllInterfaces_test.py:42:1:42:6 | ControlFlowNode for server [Attribute bind_addr] | BindToAllInterfaces_test.py:37:15:37:18 | ControlFlowNode for self [Attribute bind_addr] | provenance | | +| BindToAllInterfaces_test.py:46:1:46:4 | ControlFlowNode for host | BindToAllInterfaces_test.py:48:9:48:18 | ControlFlowNode for Tuple | provenance | Sink:MaD:63 | +| BindToAllInterfaces_test.py:46:8:46:44 | ControlFlowNode for Attribute() | BindToAllInterfaces_test.py:46:1:46:4 | ControlFlowNode for host | provenance | | +| BindToAllInterfaces_test.py:46:35:46:43 | ControlFlowNode for StringLiteral | BindToAllInterfaces_test.py:46:8:46:44 | ControlFlowNode for Attribute() | provenance | dict.get | +| BindToAllInterfaces_test.py:53:10:53:18 | ControlFlowNode for StringLiteral | BindToAllInterfaces_test.py:53:10:53:25 | ControlFlowNode for Tuple | provenance | Sink:MaD:63 | +| BindToAllInterfaces_test.py:58:10:58:18 | ControlFlowNode for StringLiteral | BindToAllInterfaces_test.py:58:10:58:25 | ControlFlowNode for Tuple | provenance | Sink:MaD:63 | +nodes +| BindToAllInterfaces_test.py:5:9:5:17 | ControlFlowNode for StringLiteral | semmle.label | ControlFlowNode for StringLiteral | +| BindToAllInterfaces_test.py:5:9:5:24 | ControlFlowNode for Tuple | semmle.label | ControlFlowNode for Tuple | +| BindToAllInterfaces_test.py:9:9:9:10 | ControlFlowNode for StringLiteral | semmle.label | ControlFlowNode for StringLiteral | +| BindToAllInterfaces_test.py:9:9:9:16 | ControlFlowNode for Tuple | semmle.label | ControlFlowNode for Tuple | +| BindToAllInterfaces_test.py:16:1:16:10 | ControlFlowNode for ALL_LOCALS | semmle.label | ControlFlowNode for ALL_LOCALS | +| BindToAllInterfaces_test.py:16:14:16:22 | ControlFlowNode for StringLiteral | semmle.label | ControlFlowNode for StringLiteral | +| BindToAllInterfaces_test.py:17:9:17:24 | ControlFlowNode for Tuple | semmle.label | ControlFlowNode for Tuple | +| BindToAllInterfaces_test.py:20:1:20:3 | ControlFlowNode for tup | semmle.label | ControlFlowNode for tup | +| BindToAllInterfaces_test.py:21:8:21:10 | ControlFlowNode for tup | semmle.label | ControlFlowNode for tup | +| BindToAllInterfaces_test.py:26:9:26:12 | ControlFlowNode for StringLiteral | semmle.label | ControlFlowNode for StringLiteral | +| BindToAllInterfaces_test.py:26:9:26:18 | ControlFlowNode for Tuple | semmle.label | ControlFlowNode for Tuple | +| BindToAllInterfaces_test.py:33:18:33:21 | ControlFlowNode for self [Return] [Attribute bind_addr] | semmle.label | ControlFlowNode for self [Return] [Attribute bind_addr] | +| BindToAllInterfaces_test.py:34:9:34:12 | [post] ControlFlowNode for self [Attribute bind_addr] | semmle.label | [post] ControlFlowNode for self [Attribute bind_addr] | +| BindToAllInterfaces_test.py:34:26:34:34 | ControlFlowNode for StringLiteral | semmle.label | ControlFlowNode for StringLiteral | +| BindToAllInterfaces_test.py:37:15:37:18 | ControlFlowNode for self [Attribute bind_addr] | semmle.label | ControlFlowNode for self [Attribute bind_addr] | +| BindToAllInterfaces_test.py:39:17:39:20 | ControlFlowNode for self [Attribute bind_addr] | semmle.label | ControlFlowNode for self [Attribute bind_addr] | +| BindToAllInterfaces_test.py:39:17:39:30 | ControlFlowNode for Attribute | semmle.label | ControlFlowNode for Attribute | +| BindToAllInterfaces_test.py:39:17:39:41 | ControlFlowNode for Tuple | semmle.label | ControlFlowNode for Tuple | +| BindToAllInterfaces_test.py:41:1:41:6 | ControlFlowNode for server [Attribute bind_addr] | semmle.label | ControlFlowNode for server [Attribute bind_addr] | +| BindToAllInterfaces_test.py:41:10:41:17 | ControlFlowNode for Server() [Attribute bind_addr] | semmle.label | ControlFlowNode for Server() [Attribute bind_addr] | +| BindToAllInterfaces_test.py:42:1:42:6 | ControlFlowNode for server [Attribute bind_addr] | semmle.label | ControlFlowNode for server [Attribute bind_addr] | +| BindToAllInterfaces_test.py:46:1:46:4 | ControlFlowNode for host | semmle.label | ControlFlowNode for host | +| BindToAllInterfaces_test.py:46:8:46:44 | ControlFlowNode for Attribute() | semmle.label | ControlFlowNode for Attribute() | +| BindToAllInterfaces_test.py:46:35:46:43 | ControlFlowNode for StringLiteral | semmle.label | ControlFlowNode for StringLiteral | +| BindToAllInterfaces_test.py:48:9:48:18 | ControlFlowNode for Tuple | semmle.label | ControlFlowNode for Tuple | +| BindToAllInterfaces_test.py:53:10:53:18 | ControlFlowNode for StringLiteral | semmle.label | ControlFlowNode for StringLiteral | +| BindToAllInterfaces_test.py:53:10:53:25 | ControlFlowNode for Tuple | semmle.label | ControlFlowNode for Tuple | +| BindToAllInterfaces_test.py:58:10:58:18 | ControlFlowNode for StringLiteral | semmle.label | ControlFlowNode for StringLiteral | +| BindToAllInterfaces_test.py:58:10:58:25 | ControlFlowNode for Tuple | semmle.label | ControlFlowNode for Tuple | +subpaths diff --git a/python/ql/test/query-tests/Security/CVE-2018-1281/BindToAllInterfaces_test.py b/python/ql/test/query-tests/Security/CVE-2018-1281/BindToAllInterfaces_test.py index 8d5d7998101d..3c267ff2f296 100644 --- a/python/ql/test/query-tests/Security/CVE-2018-1281/BindToAllInterfaces_test.py +++ b/python/ql/test/query-tests/Security/CVE-2018-1281/BindToAllInterfaces_test.py @@ -13,7 +13,7 @@ s.bind(('84.68.10.12', 8080)) # binds to all interfaces, insecure -ALL_LOCALS = "0.0.0.0" +ALL_LOCALS = "0.0.0.0" # $ Source s.bind((ALL_LOCALS, 9090)) # $ Alert[py/bind-socket-all-network-interfaces] # binds to all interfaces, insecure @@ -31,7 +31,7 @@ # Address stored in a class attribute class Server: def __init__(self): - self.bind_addr = '0.0.0.0' + self.bind_addr = '0.0.0.0' # $ Source self.port = 31137 def start(self): @@ -43,7 +43,7 @@ def start(self): # os.environ.get with insecure default import os -host = os.environ.get('APP_HOST', '0.0.0.0') +host = os.environ.get('APP_HOST', '0.0.0.0') # $ Source s = socket.socket(socket.AF_INET, socket.SOCK_STREAM) s.bind((host, 8080)) # $ Alert[py/bind-socket-all-network-interfaces] From 10fddc7b960879d188e58cdf02a9a532cd844cea Mon Sep 17 00:00:00 2001 From: Owen Mansel-Chan Date: Thu, 26 Mar 2026 11:40:11 +0000 Subject: [PATCH 012/157] Add barriers and barrier guards to MaD format explanations --- cpp/ql/lib/semmle/code/cpp/dataflow/ExternalFlow.qll | 10 +++++++++- .../code/csharp/dataflow/internal/ExternalFlow.qll | 11 +++++++++-- go/ql/lib/semmle/go/dataflow/ExternalFlow.qll | 10 +++++++++- .../ql/lib/semmle/code/java/dataflow/ExternalFlow.qll | 11 +++++++++-- .../frameworks/data/internal/ApiGraphModels.qll | 7 ++++++- .../frameworks/data/internal/ApiGraphModels.qll | 7 ++++++- .../ruby/frameworks/data/internal/ApiGraphModels.qll | 7 ++++++- .../codeql/rust/dataflow/internal/ModelsAsData.qll | 11 +++++++++-- 8 files changed, 63 insertions(+), 11 deletions(-) diff --git a/cpp/ql/lib/semmle/code/cpp/dataflow/ExternalFlow.qll b/cpp/ql/lib/semmle/code/cpp/dataflow/ExternalFlow.qll index 7cf3b937ac51..1ec501a85dd6 100644 --- a/cpp/ql/lib/semmle/code/cpp/dataflow/ExternalFlow.qll +++ b/cpp/ql/lib/semmle/code/cpp/dataflow/ExternalFlow.qll @@ -10,6 +10,10 @@ * `namespace; type; subtypes; name; signature; ext; input; kind` * - Summaries: * `namespace; type; subtypes; name; signature; ext; input; output; kind` + * - Barriers: + * `namespace; type; subtypes; name; signature; ext; output; kind; provenance` + * - BarrierGuards: + * `namespace; type; subtypes; name; signature; ext; input; acceptingvalue; kind; provenance` * * The interpretation of a row is similar to API-graphs with a left-to-right * reading. @@ -86,7 +90,11 @@ * value, and * - flow from the _second_ indirection of the 0th argument to the first * indirection of the return value, etc. - * 8. The `kind` column is a tag that can be referenced from QL to determine to + * 8. The `acceptingvalue` column of barrier guard models specifies the condition + * under which the guard accepts or blocks flow. It can be one of "true" or + * "false". In the future "no-exception", "not-zero", "null", "not-null" may be + * supported. + * 9. The `kind` column is a tag that can be referenced from QL to determine to * which classes the interpreted elements should be added. For example, for * sources "remote" indicates a default remote flow source, and for summaries * "taint" indicates a default additional taint step and "value" indicates a diff --git a/csharp/ql/lib/semmle/code/csharp/dataflow/internal/ExternalFlow.qll b/csharp/ql/lib/semmle/code/csharp/dataflow/internal/ExternalFlow.qll index 024e9cf119d5..2b4264fc4329 100644 --- a/csharp/ql/lib/semmle/code/csharp/dataflow/internal/ExternalFlow.qll +++ b/csharp/ql/lib/semmle/code/csharp/dataflow/internal/ExternalFlow.qll @@ -11,6 +11,10 @@ * `namespace; type; subtypes; name; signature; ext; input; kind; provenance` * - Summaries: * `namespace; type; subtypes; name; signature; ext; input; output; kind; provenance` + * - Barriers: + * `namespace; type; subtypes; name; signature; ext; output; kind; provenance` + * - BarrierGuards: + * `namespace; type; subtypes; name; signature; ext; input; acceptingvalue; kind; provenance` * - Neutrals: * `namespace; type; name; signature; kind; provenance` * A neutral is used to indicate that a callable is neutral with respect to flow (no summary), source (is not a source) or sink (is not a sink). @@ -69,14 +73,17 @@ * - "Field[f]": Selects the contents of field `f`. * - "Property[p]": Selects the contents of property `p`. * - * 8. The `kind` column is a tag that can be referenced from QL to determine to + * 8. The `acceptingvalue` column of barrier guard models specifies the condition + * under which the guard accepts or blocks flow. It can be one of "true" or + * "false", "no-exception", "not-zero", "null", "not-null". + * 9. The `kind` column is a tag that can be referenced from QL to determine to * which classes the interpreted elements should be added. For example, for * sources "remote" indicates a default remote flow source, and for summaries * "taint" indicates a default additional taint step and "value" indicates a * globally applicable value-preserving step. For neutrals the kind can be `summary`, * `source` or `sink` to indicate that the neutral is neutral with respect to * flow (no summary), source (is not a source) or sink (is not a sink). - * 9. The `provenance` column is a tag to indicate the origin and verification of a model. + * 10. The `provenance` column is a tag to indicate the origin and verification of a model. * The format is {origin}-{verification} or just "manual" where the origin describes * the origin of the model and verification describes how the model has been verified. * Some examples are: diff --git a/go/ql/lib/semmle/go/dataflow/ExternalFlow.qll b/go/ql/lib/semmle/go/dataflow/ExternalFlow.qll index e1170aeda244..3812b3df449f 100644 --- a/go/ql/lib/semmle/go/dataflow/ExternalFlow.qll +++ b/go/ql/lib/semmle/go/dataflow/ExternalFlow.qll @@ -11,6 +11,10 @@ * `package; type; subtypes; name; signature; ext; input; kind; provenance` * - Summaries: * `package; type; subtypes; name; signature; ext; input; output; kind; provenance` + * - Barriers: + * `package; type; subtypes; name; signature; ext; output; kind; provenance` + * - BarrierGuards: + * `package; type; subtypes; name; signature; ext; input; acceptingvalue; kind; provenance` * - Neutrals: * `package; type; name; signature; kind; provenance` * A neutral is used to indicate that a callable is neutral with respect to flow (no summary), source (is not a source) or sink (is not a sink). @@ -78,7 +82,11 @@ * - "MapValue": Selects a value in a map. * - "Dereference": Selects the value referenced by a pointer. * - * 8. The `kind` column is a tag that can be referenced from QL to determine to + * 8. The `acceptingvalue` column of barrier guard models specifies the condition + * under which the guard accepts or blocks flow. It can be one of "true" or + * "false". In the future "no-exception", "not-zero", "null", "not-null" may be + * supported. + * 9. The `kind` column is a tag that can be referenced from QL to determine to * which classes the interpreted elements should be added. For example, for * sources "remote" indicates a default remote flow source, and for summaries * "taint" indicates a default additional taint step and "value" indicates a diff --git a/java/ql/lib/semmle/code/java/dataflow/ExternalFlow.qll b/java/ql/lib/semmle/code/java/dataflow/ExternalFlow.qll index 1536c81aa083..45db15897f7c 100644 --- a/java/ql/lib/semmle/code/java/dataflow/ExternalFlow.qll +++ b/java/ql/lib/semmle/code/java/dataflow/ExternalFlow.qll @@ -11,6 +11,10 @@ * `package; type; subtypes; name; signature; ext; input; kind; provenance` * - Summaries: * `package; type; subtypes; name; signature; ext; input; output; kind; provenance` + * - Barriers: + * `package; type; subtypes; name; signature; ext; output; kind; provenance` + * - BarrierGuards: + * `package; type; subtypes; name; signature; ext; input; acceptingvalue; kind; provenance` * - Neutrals: * `package; type; name; signature; kind; provenance` * A neutral is used to indicate that a callable is neutral with respect to flow (no summary), source (is not a source) or sink (is not a sink). @@ -69,14 +73,17 @@ * in the given range. The range is inclusive at both ends. * - "ReturnValue": Selects the return value of a call to the selected element. * - "Element": Selects the collection elements of the selected element. - * 8. The `kind` column is a tag that can be referenced from QL to determine to + * 8. The `acceptingvalue` column of barrier guard models specifies the condition + * under which the guard accepts or blocks flow. It can be one of "true" or + * "false", "no-exception", "not-zero", "null", "not-null". + * 9. The `kind` column is a tag that can be referenced from QL to determine to * which classes the interpreted elements should be added. For example, for * sources "remote" indicates a default remote flow source, and for summaries * "taint" indicates a default additional taint step and "value" indicates a * globally applicable value-preserving step. For neutrals the kind can be `summary`, * `source` or `sink` to indicate that the neutral is neutral with respect to * flow (no summary), source (is not a source) or sink (is not a sink). - * 9. The `provenance` column is a tag to indicate the origin and verification of a model. + * 10. The `provenance` column is a tag to indicate the origin and verification of a model. * The format is {origin}-{verification} or just "manual" where the origin describes * the origin of the model and verification describes how the model has been verified. * Some examples are: diff --git a/javascript/ql/lib/semmle/javascript/frameworks/data/internal/ApiGraphModels.qll b/javascript/ql/lib/semmle/javascript/frameworks/data/internal/ApiGraphModels.qll index 60fe40e716d0..34bf32675221 100644 --- a/javascript/ql/lib/semmle/javascript/frameworks/data/internal/ApiGraphModels.qll +++ b/javascript/ql/lib/semmle/javascript/frameworks/data/internal/ApiGraphModels.qll @@ -10,6 +10,10 @@ * `type, path, kind` * - Summaries: * `type, path, input, output, kind` + * - Barriers: + * `type, path, kind` + * - BarrierGuards: + * `type, path, branch, kind` * - Types: * `type1, type2, path` * @@ -42,7 +46,8 @@ * 3. The `input` and `output` columns specify how data enters and leaves the element selected by the * first `(type, path)` tuple. Both strings are `.`-separated access paths * of the same syntax as the `path` column. - * 4. The `kind` column is a tag that can be referenced from QL to determine to + * 4. The `branch` column of barrier guard models specifies which branch of the guard is blocking flow. It can be "true" or "false". + * 5. The `kind` column is a tag that can be referenced from QL to determine to * which classes the interpreted elements should be added. For example, for * sources `"remote"` indicates a default remote flow source, and for summaries * `"taint"` indicates a default additional taint step and `"value"` indicates a diff --git a/python/ql/lib/semmle/python/frameworks/data/internal/ApiGraphModels.qll b/python/ql/lib/semmle/python/frameworks/data/internal/ApiGraphModels.qll index 60fe40e716d0..34bf32675221 100644 --- a/python/ql/lib/semmle/python/frameworks/data/internal/ApiGraphModels.qll +++ b/python/ql/lib/semmle/python/frameworks/data/internal/ApiGraphModels.qll @@ -10,6 +10,10 @@ * `type, path, kind` * - Summaries: * `type, path, input, output, kind` + * - Barriers: + * `type, path, kind` + * - BarrierGuards: + * `type, path, branch, kind` * - Types: * `type1, type2, path` * @@ -42,7 +46,8 @@ * 3. The `input` and `output` columns specify how data enters and leaves the element selected by the * first `(type, path)` tuple. Both strings are `.`-separated access paths * of the same syntax as the `path` column. - * 4. The `kind` column is a tag that can be referenced from QL to determine to + * 4. The `branch` column of barrier guard models specifies which branch of the guard is blocking flow. It can be "true" or "false". + * 5. The `kind` column is a tag that can be referenced from QL to determine to * which classes the interpreted elements should be added. For example, for * sources `"remote"` indicates a default remote flow source, and for summaries * `"taint"` indicates a default additional taint step and `"value"` indicates a diff --git a/ruby/ql/lib/codeql/ruby/frameworks/data/internal/ApiGraphModels.qll b/ruby/ql/lib/codeql/ruby/frameworks/data/internal/ApiGraphModels.qll index 60fe40e716d0..34bf32675221 100644 --- a/ruby/ql/lib/codeql/ruby/frameworks/data/internal/ApiGraphModels.qll +++ b/ruby/ql/lib/codeql/ruby/frameworks/data/internal/ApiGraphModels.qll @@ -10,6 +10,10 @@ * `type, path, kind` * - Summaries: * `type, path, input, output, kind` + * - Barriers: + * `type, path, kind` + * - BarrierGuards: + * `type, path, branch, kind` * - Types: * `type1, type2, path` * @@ -42,7 +46,8 @@ * 3. The `input` and `output` columns specify how data enters and leaves the element selected by the * first `(type, path)` tuple. Both strings are `.`-separated access paths * of the same syntax as the `path` column. - * 4. The `kind` column is a tag that can be referenced from QL to determine to + * 4. The `branch` column of barrier guard models specifies which branch of the guard is blocking flow. It can be "true" or "false". + * 5. The `kind` column is a tag that can be referenced from QL to determine to * which classes the interpreted elements should be added. For example, for * sources `"remote"` indicates a default remote flow source, and for summaries * `"taint"` indicates a default additional taint step and `"value"` indicates a diff --git a/rust/ql/lib/codeql/rust/dataflow/internal/ModelsAsData.qll b/rust/ql/lib/codeql/rust/dataflow/internal/ModelsAsData.qll index 4d28dd8de812..a21d50ed8ad0 100644 --- a/rust/ql/lib/codeql/rust/dataflow/internal/ModelsAsData.qll +++ b/rust/ql/lib/codeql/rust/dataflow/internal/ModelsAsData.qll @@ -9,6 +9,10 @@ * `path; input; kind; provenance` * - Summaries: * `path; input; output; kind; provenance` + * - Barriers: + * `path; output; kind; provenance` + * - BarrierGuards: + * `path; input; branch; kind; provenance` * * The interpretation of a row is similar to API-graphs with a left-to-right * reading. @@ -34,12 +38,15 @@ * - `Field[i]`: the `i`th element of a tuple. * - `Reference`: the referenced value. * - `Future`: the value being computed asynchronously. - * 3. The `kind` column is a tag that can be referenced from QL to determine to + * 3. The `branch` column of barrier guard models specifies which branch of the + * guard is blocking flow. It can be "true" or "false". In the future + * "no-exception", "not-zero", "null", "not-null" may be supported. + * 4. The `kind` column is a tag that can be referenced from QL to determine to * which classes the interpreted elements should be added. For example, for * sources `"remote"` indicates a default remote flow source, and for summaries * `"taint"` indicates a default additional taint step and `"value"` indicates a * globally applicable value-preserving step. - * 4. The `provenance` column is mainly used internally, and should be set to `"manual"` for + * 5. The `provenance` column is mainly used internally, and should be set to `"manual"` for * all custom models. */ From 61b13d570272fe63c193a1b6b2158cf20a959883 Mon Sep 17 00:00:00 2001 From: Owen Mansel-Chan Date: Thu, 26 Mar 2026 11:40:42 +0000 Subject: [PATCH 013/157] C++: Add provenance to MaD format explanation --- cpp/ql/lib/semmle/code/cpp/dataflow/ExternalFlow.qll | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/cpp/ql/lib/semmle/code/cpp/dataflow/ExternalFlow.qll b/cpp/ql/lib/semmle/code/cpp/dataflow/ExternalFlow.qll index 1ec501a85dd6..b36c37d81141 100644 --- a/cpp/ql/lib/semmle/code/cpp/dataflow/ExternalFlow.qll +++ b/cpp/ql/lib/semmle/code/cpp/dataflow/ExternalFlow.qll @@ -99,6 +99,15 @@ * sources "remote" indicates a default remote flow source, and for summaries * "taint" indicates a default additional taint step and "value" indicates a * globally applicable value-preserving step. + * 10. The `provenance` column is a tag to indicate the origin and verification of a model. + * The format is {origin}-{verification} or just "manual" where the origin describes + * the origin of the model and verification describes how the model has been verified. + * Some examples are: + * - "df-generated": The model has been generated by the model generator tool. + * - "df-manual": The model has been generated by the model generator and verified by a human. + * - "manual": The model has been written by hand. + * This information is used in a heuristic for dataflow analysis to determine, if a + * model or source code should be used for determining flow. */ import cpp From 805d2ec46cbe4c5aae54c817f59811f1595b250b Mon Sep 17 00:00:00 2001 From: Owen Mansel-Chan Date: Thu, 26 Mar 2026 11:41:59 +0000 Subject: [PATCH 014/157] Go: Add provenance to MaD format explanation --- go/ql/lib/semmle/go/dataflow/ExternalFlow.qll | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/go/ql/lib/semmle/go/dataflow/ExternalFlow.qll b/go/ql/lib/semmle/go/dataflow/ExternalFlow.qll index 3812b3df449f..23e08ce5cbf5 100644 --- a/go/ql/lib/semmle/go/dataflow/ExternalFlow.qll +++ b/go/ql/lib/semmle/go/dataflow/ExternalFlow.qll @@ -91,6 +91,15 @@ * sources "remote" indicates a default remote flow source, and for summaries * "taint" indicates a default additional taint step and "value" indicates a * globally applicable value-preserving step. + * 10. The `provenance` column is a tag to indicate the origin and verification of a model. + * The format is {origin}-{verification} or just "manual" where the origin describes + * the origin of the model and verification describes how the model has been verified. + * Some examples are: + * - "df-generated": The model has been generated by the model generator tool. + * - "df-manual": The model has been generated by the model generator and verified by a human. + * - "manual": The model has been written by hand. + * This information is used in a heuristic for dataflow analysis to determine, if a + * model or source code should be used for determining flow. */ overlay[local?] module; From df842665b7156aa20de94972d39698a74326462b Mon Sep 17 00:00:00 2001 From: Owen Mansel-Chan Date: Thu, 26 Mar 2026 11:42:13 +0000 Subject: [PATCH 015/157] Rust: Add neutrals to MaD format explanation --- rust/ql/lib/codeql/rust/dataflow/internal/ModelsAsData.qll | 3 +++ 1 file changed, 3 insertions(+) diff --git a/rust/ql/lib/codeql/rust/dataflow/internal/ModelsAsData.qll b/rust/ql/lib/codeql/rust/dataflow/internal/ModelsAsData.qll index a21d50ed8ad0..a43495ac7840 100644 --- a/rust/ql/lib/codeql/rust/dataflow/internal/ModelsAsData.qll +++ b/rust/ql/lib/codeql/rust/dataflow/internal/ModelsAsData.qll @@ -13,6 +13,9 @@ * `path; output; kind; provenance` * - BarrierGuards: * `path; input; branch; kind; provenance` + * - Neutrals: + * `package; type; name; signature; kind; provenance` + * A neutral is used to indicate that a callable is neutral with respect to flow (no summary), source (is not a source) or sink (is not a sink). * * The interpretation of a row is similar to API-graphs with a left-to-right * reading. From e680d49c93334f38134c1e7da000e0e18db42fc3 Mon Sep 17 00:00:00 2001 From: Owen Mansel-Chan Date: Thu, 26 Mar 2026 12:08:54 +0000 Subject: [PATCH 016/157] Shared: document extensible relations rather than CSV --- cpp/ql/lib/semmle/code/cpp/dataflow/ExternalFlow.qll | 2 +- .../lib/semmle/code/csharp/dataflow/internal/ExternalFlow.qll | 2 +- go/ql/lib/semmle/go/dataflow/ExternalFlow.qll | 2 +- java/ql/lib/semmle/code/java/dataflow/ExternalFlow.qll | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/cpp/ql/lib/semmle/code/cpp/dataflow/ExternalFlow.qll b/cpp/ql/lib/semmle/code/cpp/dataflow/ExternalFlow.qll index b36c37d81141..df1765ec07ca 100644 --- a/cpp/ql/lib/semmle/code/cpp/dataflow/ExternalFlow.qll +++ b/cpp/ql/lib/semmle/code/cpp/dataflow/ExternalFlow.qll @@ -3,7 +3,7 @@ * * Provides classes and predicates for dealing with flow models specified in CSV format. * - * The CSV specification has the following columns: + * The extensible relations have the following columns: * - Sources: * `namespace; type; subtypes; name; signature; ext; output; kind` * - Sinks: diff --git a/csharp/ql/lib/semmle/code/csharp/dataflow/internal/ExternalFlow.qll b/csharp/ql/lib/semmle/code/csharp/dataflow/internal/ExternalFlow.qll index 2b4264fc4329..95b9578e4f3b 100644 --- a/csharp/ql/lib/semmle/code/csharp/dataflow/internal/ExternalFlow.qll +++ b/csharp/ql/lib/semmle/code/csharp/dataflow/internal/ExternalFlow.qll @@ -4,7 +4,7 @@ * Provides classes and predicates for dealing with MaD flow models specified * in data extensions and CSV format. * - * The CSV specification has the following columns: + * The extensible relations have the following columns: * - Sources: * `namespace; type; subtypes; name; signature; ext; output; kind; provenance` * - Sinks: diff --git a/go/ql/lib/semmle/go/dataflow/ExternalFlow.qll b/go/ql/lib/semmle/go/dataflow/ExternalFlow.qll index 23e08ce5cbf5..05379c620fbb 100644 --- a/go/ql/lib/semmle/go/dataflow/ExternalFlow.qll +++ b/go/ql/lib/semmle/go/dataflow/ExternalFlow.qll @@ -4,7 +4,7 @@ * Provides classes and predicates for dealing with flow models specified * in data extensions and CSV format. * - * The CSV specification has the following columns: + * The extensible relations have the following columns: * - Sources: * `package; type; subtypes; name; signature; ext; output; kind; provenance` * - Sinks: diff --git a/java/ql/lib/semmle/code/java/dataflow/ExternalFlow.qll b/java/ql/lib/semmle/code/java/dataflow/ExternalFlow.qll index 45db15897f7c..8f6d1a7855a3 100644 --- a/java/ql/lib/semmle/code/java/dataflow/ExternalFlow.qll +++ b/java/ql/lib/semmle/code/java/dataflow/ExternalFlow.qll @@ -4,7 +4,7 @@ * Provides classes and predicates for dealing with flow models specified * in data extensions and CSV format. * - * The CSV specification has the following columns: + * The extensible relations have the following columns: * - Sources: * `package; type; subtypes; name; signature; ext; output; kind; provenance` * - Sinks: From 886a16bfad664c67da64f4136a3079009a38bd11 Mon Sep 17 00:00:00 2001 From: Owen Mansel-Chan Date: Thu, 26 Mar 2026 12:09:11 +0000 Subject: [PATCH 017/157] C++: Add provenance column --- cpp/ql/lib/semmle/code/cpp/dataflow/ExternalFlow.qll | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/cpp/ql/lib/semmle/code/cpp/dataflow/ExternalFlow.qll b/cpp/ql/lib/semmle/code/cpp/dataflow/ExternalFlow.qll index df1765ec07ca..ed40d3919173 100644 --- a/cpp/ql/lib/semmle/code/cpp/dataflow/ExternalFlow.qll +++ b/cpp/ql/lib/semmle/code/cpp/dataflow/ExternalFlow.qll @@ -5,11 +5,11 @@ * * The extensible relations have the following columns: * - Sources: - * `namespace; type; subtypes; name; signature; ext; output; kind` + * `namespace; type; subtypes; name; signature; ext; output; kind; provenance` * - Sinks: - * `namespace; type; subtypes; name; signature; ext; input; kind` + * `namespace; type; subtypes; name; signature; ext; input; kind; provenance` * - Summaries: - * `namespace; type; subtypes; name; signature; ext; input; output; kind` + * `namespace; type; subtypes; name; signature; ext; input; output; kind; provenance` * - Barriers: * `namespace; type; subtypes; name; signature; ext; output; kind; provenance` * - BarrierGuards: From 5451424e751d102f492d4f7298518afd20cdf6e6 Mon Sep 17 00:00:00 2001 From: Owen Mansel-Chan Date: Fri, 27 Mar 2026 09:46:20 +0000 Subject: [PATCH 018/157] Rust: Fix columns for neutrals --- rust/ql/lib/codeql/rust/dataflow/internal/ModelsAsData.qll | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/rust/ql/lib/codeql/rust/dataflow/internal/ModelsAsData.qll b/rust/ql/lib/codeql/rust/dataflow/internal/ModelsAsData.qll index a43495ac7840..cc7dd9963ea0 100644 --- a/rust/ql/lib/codeql/rust/dataflow/internal/ModelsAsData.qll +++ b/rust/ql/lib/codeql/rust/dataflow/internal/ModelsAsData.qll @@ -14,7 +14,7 @@ * - BarrierGuards: * `path; input; branch; kind; provenance` * - Neutrals: - * `package; type; name; signature; kind; provenance` + * `path; kind; provenance` * A neutral is used to indicate that a callable is neutral with respect to flow (no summary), source (is not a source) or sink (is not a sink). * * The interpretation of a row is similar to API-graphs with a left-to-right From 6dc98cfd01862aaab594d3d4d246036c3ea38689 Mon Sep 17 00:00:00 2001 From: Tom Hvitved Date: Mon, 19 Jan 2026 14:53:22 +0100 Subject: [PATCH 019/157] Rust: Infer argument types based on trait bounds on parameters --- .../typeinference/BlanketImplementation.qll | 2 +- .../internal/typeinference/TypeInference.qll | 283 +++++++------ .../internal/typeinference/TypeMention.qll | 2 +- .../library-tests/type-inference/closure.rs | 26 +- .../test/library-tests/type-inference/main.rs | 4 +- .../type-inference/regressions.rs | 2 +- .../type-inference/type-inference.expected | 375 ++++++++++++++++-- .../test/utils-tests/modelgenerator/option.rs | 4 +- .../typeinference/internal/TypeInference.qll | 197 +++++++-- 9 files changed, 653 insertions(+), 242 deletions(-) diff --git a/rust/ql/lib/codeql/rust/internal/typeinference/BlanketImplementation.qll b/rust/ql/lib/codeql/rust/internal/typeinference/BlanketImplementation.qll index 97dbf2d8f3a9..26e8bdea4e0e 100644 --- a/rust/ql/lib/codeql/rust/internal/typeinference/BlanketImplementation.qll +++ b/rust/ql/lib/codeql/rust/internal/typeinference/BlanketImplementation.qll @@ -134,7 +134,7 @@ module SatisfiesBlanketConstraint< exists(ArgumentTypeAndBlanketOffset ato, Trait traitBound | ato = MkArgumentTypeAndBlanketOffset(at, _) and SatisfiesBlanketConstraintInput::relevantConstraint(ato, impl, traitBound) and - SatisfiesBlanketConstraint::satisfiesConstraintType(ato, TTrait(traitBound), _, _) + SatisfiesBlanketConstraint::satisfiesConstraint(ato, TTrait(traitBound), _, _) ) or exists(TypeParam blanketTypeParam | diff --git a/rust/ql/lib/codeql/rust/internal/typeinference/TypeInference.qll b/rust/ql/lib/codeql/rust/internal/typeinference/TypeInference.qll index 0f9afcd06bbd..c6a268be126f 100644 --- a/rust/ql/lib/codeql/rust/internal/typeinference/TypeInference.qll +++ b/rust/ql/lib/codeql/rust/internal/typeinference/TypeInference.qll @@ -467,6 +467,41 @@ private predicate isPanicMacroCall(MacroExpr me) { me.getMacroCall().resolveMacro().(MacroRules).getName().getText() = "panic" } +// Due to "binding modes" the type of the pattern is not necessarily the +// same as the type of the initializer. However, when the pattern is an +// identifier pattern, its type is guaranteed to be the same as the type of the +// initializer. +private predicate identLetStmt(LetStmt let, IdentPat lhs, Expr rhs) { + let.getPat() = lhs and + let.getInitializer() = rhs +} + +/** + * Gets the root type of a closure. + * + * We model closures as `dyn Fn` trait object types. A closure might implement + * only `Fn`, `FnMut`, or `FnOnce`. But since `Fn` is a subtrait of the others, + * giving closures the type `dyn Fn` works well in practice -- even if not + * entirely accurate. + */ +private DynTraitType closureRootType() { + result = TDynTraitType(any(FnTrait t)) // always exists because of the mention in `builtins/mentions.rs` +} + +/** Gets the path to a closure's return type. */ +private TypePath closureReturnPath() { + result = + TypePath::singleton(TDynTraitTypeParameter(any(FnTrait t), any(FnOnceTrait t).getOutputType())) +} + +/** Gets the path to a closure's `index`th parameter type, where the arity is `arity`. */ +pragma[nomagic] +private TypePath closureParameterPath(int arity, int index) { + result = + TypePath::cons(TDynTraitTypeParameter(_, any(FnTrait t).getTypeParam()), + TypePath::singleton(getTupleTypeParameter(arity, index))) +} + /** Module for inferring certain type information. */ module CertainTypeInference { pragma[nomagic] @@ -544,11 +579,7 @@ module CertainTypeInference { // is not a certain type equality. exists(LetStmt let | not let.hasTypeRepr() and - // Due to "binding modes" the type of the pattern is not necessarily the - // same as the type of the initializer. The pattern being an identifier - // pattern is sufficient to ensure that this is not the case. - let.getPat().(IdentPat) = n1 and - let.getInitializer() = n2 + identLetStmt(let, n1, n2) ) or exists(LetExpr let | @@ -572,6 +603,21 @@ module CertainTypeInference { ) else prefix2.isEmpty() ) + or + exists(CallExprImpl::DynamicCallExpr dce, TupleType tt, int i | + n1 = dce.getArgList() and + tt.getArity() = dce.getNumberOfSyntacticArguments() and + n2 = dce.getSyntacticPositionalArgument(i) and + prefix1 = TypePath::singleton(tt.getPositionalTypeParameter(i)) and + prefix2.isEmpty() + ) + or + exists(ClosureExpr ce, int index | + n1 = ce and + n2 = ce.getParam(index).getPat() and + prefix1 = closureParameterPath(ce.getNumberOfParams(), index) and + prefix2.isEmpty() + ) } pragma[nomagic] @@ -636,6 +682,10 @@ module CertainTypeInference { path.isEmpty() and result instanceof NeverType or + n instanceof ClosureExpr and + path.isEmpty() and + result = closureRootType() + or infersCertainTypeAt(n, path, result.getATypeParameter()) } @@ -835,17 +885,6 @@ private predicate typeEquality(AstNode n1, TypePath prefix1, AstNode n2, TypePat n1.(ArrayRepeatExpr).getRepeatOperand() = n2 and prefix1 = TypePath::singleton(getArrayTypeParameter()) and prefix2.isEmpty() - or - exists(ClosureExpr ce, int index | - n1 = ce and - n2 = ce.getParam(index).getPat() and - prefix1 = closureParameterPath(ce.getNumberOfParams(), index) and - prefix2.isEmpty() - ) - or - n1.(ClosureExpr).getClosureBody() = n2 and - prefix1 = closureReturnPath() and - prefix2.isEmpty() } /** @@ -881,6 +920,9 @@ private predicate lubCoercion(AstNode parent, AstNode child, TypePath prefix) { strictcount(Expr e | bodyReturns(parent, e)) > 1 and prefix.isEmpty() or + parent = any(ClosureExpr ce | not ce.hasRetType() and ce.getClosureBody() = child) and + prefix = closureReturnPath() + or exists(Struct s | child = [parent.(RangeExpr).getStart(), parent.(RangeExpr).getEnd()] and prefix = TypePath::singleton(TTypeParamTypeParameter(s.getGenericParamList().getATypeParam())) and @@ -888,6 +930,19 @@ private predicate lubCoercion(AstNode parent, AstNode child, TypePath prefix) { ) } +private Type inferUnknownTypeFromAnnotation(AstNode n, TypePath path) { + inferType(n, path) = TUnknownType() and + // Normally, these are coercion sites, but in case a type is unknown we + // allow for type information to flow from the type annotation. + exists(TypeMention tm | result = tm.getTypeAt(path) | + tm = any(LetStmt let | identLetStmt(let, _, n)).getTypeRepr() + or + tm = any(ClosureExpr ce | n = ce.getBody()).getRetType().getTypeRepr() + or + tm = getReturnTypeMention(any(Function f | n = f.getBody())) + ) +} + /** * Holds if the type tree of `n1` at `prefix1` should be equal to the type tree * of `n2` at `prefix2`, but type information should only propagate from `n1` to @@ -1545,12 +1600,14 @@ private module AssocFunctionResolution { * * This is either: * - * 1. `AssocFunctionCallMethodCallExpr`: a method call, `x.m()`; - * 2. `AssocFunctionCallIndexExpr`: an index expression, `x[i]`, which is [syntactic sugar][1] + * 1. `MethodCallExprAssocFunctionCall`: a method call, `x.m()`; + * 2. `IndexExprAssocFunctionCall`: an index expression, `x[i]`, which is [syntactic sugar][1] * for `*x.index(i)`; - * 3. `AssocFunctionCallCallExpr`: a qualified function call, `Q::f(x)`; or - * 4. `AssocFunctionCallOperation`: an operation expression, `x + y`, which is syntactic sugar + * 3. `CallExprAssocFunctionCall`: a qualified function call, `Q::f(x)`; or + * 4. `OperationAssocFunctionCall`: an operation expression, `x + y`, which is syntactic sugar * for `Add::add(x, y)`. + * 5. `DynamicAssocFunctionCall`: a call to a closure, `c(x)`, which is syntactic sugar for + * `c.call_once(x)`, `c.call_mut(x)`, or `c.call(x)`. * * Note that only in case 1 and 2 is auto-dereferencing and borrowing allowed. * @@ -1567,7 +1624,7 @@ private module AssocFunctionResolution { pragma[nomagic] abstract predicate hasNameAndArity(string name, int arity); - abstract Expr getNonReturnNodeAt(FunctionPosition pos); + abstract AstNode getNonReturnNodeAt(FunctionPosition pos); AstNode getNodeAt(FunctionPosition pos) { result = this.getNonReturnNodeAt(pos) @@ -2101,7 +2158,7 @@ private module AssocFunctionResolution { } } - private class AssocFunctionCallMethodCallExpr extends AssocFunctionCall instanceof MethodCallExpr { + private class MethodCallExprAssocFunctionCall extends AssocFunctionCall instanceof MethodCallExpr { override predicate hasNameAndArity(string name, int arity) { name = super.getIdentifier().getText() and arity = super.getNumberOfSyntacticArguments() @@ -2121,7 +2178,7 @@ private module AssocFunctionResolution { override Trait getTrait() { none() } } - private class AssocFunctionCallIndexExpr extends AssocFunctionCall, IndexExpr { + private class IndexExprAssocFunctionCall extends AssocFunctionCall, IndexExpr { private predicate isInMutableContext() { // todo: does not handle all cases yet VariableImpl::assignmentOperationDescendant(_, this) @@ -2151,8 +2208,8 @@ private module AssocFunctionResolution { } } - private class AssocFunctionCallCallExpr extends AssocFunctionCall, CallExpr { - AssocFunctionCallCallExpr() { + private class CallExprAssocFunctionCall extends AssocFunctionCall, CallExpr { + CallExprAssocFunctionCall() { exists(getCallExprPathQualifier(this)) and // even if a target cannot be resolved by path resolution, it may still // be possible to resolve a blanket implementation (so not `forex`) @@ -2184,7 +2241,7 @@ private module AssocFunctionResolution { override Trait getTrait() { result = getCallExprTraitQualifier(this) } } - final class AssocFunctionCallOperation extends AssocFunctionCall, Operation { + final class OperationAssocFunctionCall extends AssocFunctionCall, Operation { override predicate hasNameAndArity(string name, int arity) { this.isOverloaded(_, name, _) and arity = this.getNumberOfOperands() @@ -2242,6 +2299,29 @@ private module AssocFunctionResolution { override Trait getTrait() { this.isOverloaded(result, _, _) } } + private class DynamicAssocFunctionCall extends AssocFunctionCall instanceof CallExprImpl::DynamicCallExpr + { + pragma[nomagic] + override predicate hasNameAndArity(string name, int arity) { + name = "call_once" and // todo: handle call_mut and call + arity = 2 // args are passed in a tuple + } + + override predicate hasReceiver() { any() } + + override AstNode getNonReturnNodeAt(FunctionPosition pos) { + pos.asPosition() = 0 and + result = super.getFunction() + or + pos.asPosition() = 1 and + result = super.getArgList() + } + + override predicate supportsAutoDerefAndBorrow() { any() } + + override Trait getTrait() { result instanceof AnyFnTrait } + } + pragma[nomagic] private AssocFunctionDeclaration getAssocFunctionSuccessor( ImplOrTraitItemNode i, string name, int arity @@ -2445,7 +2525,7 @@ private module AssocFunctionResolution { ) { exists(CallDerefCand cdc, TypePath exprPath | cdc = MkCallDerefCand(afc, selfPos, derefChain) and - CallSatisfiesDerefConstraint::satisfiesConstraintTypeThrough(cdc, impl, _, exprPath, result) and + CallSatisfiesDerefConstraint::satisfiesConstraintThrough(cdc, impl, _, exprPath, result) and exprPath.isCons(getDerefTargetTypeParameter(), path) ) } @@ -3198,7 +3278,7 @@ private module OperationMatchingInput implements MatchingInputSig { } } - class Access extends AssocFunctionResolution::AssocFunctionCallOperation { + class Access extends AssocFunctionResolution::OperationAssocFunctionCall { Type getTypeArgument(TypeArgumentPosition apos, TypePath path) { none() } pragma[nomagic] @@ -3566,7 +3646,7 @@ private module AwaitSatisfiesType = SatisfiesType type of pattern (loop variable) exists(ForExpr fe, TypePath exprPath, AssociatedTypeTypeParameter tp | n = fe.getPat() and - ForIterableSatisfiesType::satisfiesConstraintType(fe.getIterable(), _, exprPath, result) and + ForIterableSatisfiesType::satisfiesConstraint(fe.getIterable(), _, exprPath, result) and exprPath.isCons(tp, path) | tp = getIntoIteratorItemTypeParameter() @@ -3744,130 +3824,36 @@ private Type inferForLoopExprType(AstNode n, TypePath path) { ) } -/** - * An invoked expression, the target of a call that is either a local variable - * or a non-path expression. This means that the expression denotes a - * first-class function. - */ -final private class InvokedClosureExpr extends Expr { - private CallExprImpl::DynamicCallExpr call; - - InvokedClosureExpr() { call.getFunction() = this } - - Type getTypeAt(TypePath path) { result = inferType(this, path) } - - CallExpr getCall() { result = call } -} - -private module InvokedClosureSatisfiesTypeInput implements SatisfiesTypeInputSig -{ - predicate relevantConstraint(InvokedClosureExpr term, Type constraint) { - exists(term) and - constraint.(TraitType).getTrait() instanceof FnOnceTrait - } -} - -private module InvokedClosureSatisfiesType = - SatisfiesType; - -/** Gets the type of `ce` when viewed as an implementation of `FnOnce`. */ -private Type invokedClosureFnTypeAt(InvokedClosureExpr ce, TypePath path) { - InvokedClosureSatisfiesType::satisfiesConstraintType(ce, _, path, result) -} - -/** - * Gets the root type of a closure. - * - * We model closures as `dyn Fn` trait object types. A closure might implement - * only `Fn`, `FnMut`, or `FnOnce`. But since `Fn` is a subtrait of the others, - * giving closures the type `dyn Fn` works well in practice -- even if not - * entirely accurate. - */ -private DynTraitType closureRootType() { - result = TDynTraitType(any(FnTrait t)) // always exists because of the mention in `builtins/mentions.rs` -} - -/** Gets the path to a closure's return type. */ -private TypePath closureReturnPath() { - result = - TypePath::singleton(TDynTraitTypeParameter(any(FnTrait t), any(FnOnceTrait t).getOutputType())) -} - -/** Gets the path to a closure with arity `arity`'s `index`th parameter type. */ pragma[nomagic] -private TypePath closureParameterPath(int arity, int index) { - result = - TypePath::cons(TDynTraitTypeParameter(_, any(FnTrait t).getTypeParam()), - TypePath::singleton(getTupleTypeParameter(arity, index))) -} - -/** Gets the path to the return type of the `FnOnce` trait. */ -private TypePath fnReturnPath() { - result = TypePath::singleton(getAssociatedTypeTypeParameter(any(FnOnceTrait t).getOutputType())) -} - -/** - * Gets the path to the parameter type of the `FnOnce` trait with arity `arity` - * and index `index`. - */ -pragma[nomagic] -private TypePath fnParameterPath(int arity, int index) { - result = - TypePath::cons(TTypeParamTypeParameter(any(FnOnceTrait t).getTypeParam()), - TypePath::singleton(getTupleTypeParameter(arity, index))) -} - -pragma[nomagic] -private Type inferDynamicCallExprType(Expr n, TypePath path) { - exists(InvokedClosureExpr ce | - // Propagate the function's return type to the call expression - exists(TypePath path0 | result = invokedClosureFnTypeAt(ce, path0) | - n = ce.getCall() and - path = path0.stripPrefix(fnReturnPath()) +private Type inferClosureExprType(AstNode n, TypePath path) { + exists(ClosureExpr ce | + n = ce and + ( + path = TypePath::singleton(TDynTraitTypeParameter(_, any(FnTrait t).getTypeParam())) and + result.(TupleType).getArity() = ce.getNumberOfParams() or - // Propagate the function's parameter type to the arguments - exists(int index | - n = ce.getCall().getSyntacticPositionalArgument(index) and - path = - path0.stripPrefix(fnParameterPath(ce.getCall().getArgList().getNumberOfArgs(), index)) + exists(TypePath path0 | + result = ce.getRetType().getTypeRepr().(TypeMention).getTypeAt(path0) and + path = closureReturnPath().append(path0) ) ) or - // _If_ the invoked expression has the type of a closure, then we propagate - // the surrounding types into the closure. - exists(int arity, TypePath path0 | ce.getTypeAt(TypePath::nil()) = closureRootType() | - // Propagate the type of arguments to the parameter types of closure - exists(int index, ArgList args | - n = ce and - args = ce.getCall().getArgList() and - arity = args.getNumberOfArgs() and - result = inferType(args.getArg(index), path0) and - path = closureParameterPath(arity, index).append(path0) - ) - or - // Propagate the type of the call expression to the return type of the closure - n = ce and - arity = ce.getCall().getArgList().getNumberOfArgs() and - result = inferType(ce.getCall(), path0) and - path = closureReturnPath().append(path0) + exists(Param p | + p = ce.getAParam() and + not p.hasTypeRepr() and + n = p.getPat() and + result = TUnknownType() and + path.isEmpty() ) ) } pragma[nomagic] -private Type inferClosureExprType(AstNode n, TypePath path) { - exists(ClosureExpr ce | - n = ce and - path.isEmpty() and - result = closureRootType() - or - n = ce and - path = TypePath::singleton(TDynTraitTypeParameter(_, any(FnTrait t).getTypeParam())) and - result.(TupleType).getArity() = ce.getNumberOfParams() - or - // Propagate return type annotation to body - n = ce.getClosureBody() and - result = ce.getRetType().getTypeRepr().(TypeMention).getTypeAt(path) +private TupleType inferArgList(ArgList args, TypePath path) { + exists(CallExprImpl::DynamicCallExpr dce | + args = dce.getArgList() and + result.getArity() = dce.getNumberOfSyntacticArguments() and + path.isEmpty() ) } @@ -3915,7 +3901,8 @@ private module Cached { or i instanceof ImplItemNode and dispatch = false | - result = call.(AssocFunctionResolution::AssocFunctionCall).resolveCallTarget(i, _, _, _) + result = call.(AssocFunctionResolution::AssocFunctionCall).resolveCallTarget(i, _, _, _) and + not call instanceof CallExprImpl::DynamicCallExpr ) } @@ -4023,11 +4010,13 @@ private module Cached { or result = inferForLoopExprType(n, path) or - result = inferDynamicCallExprType(n, path) - or result = inferClosureExprType(n, path) or + result = inferArgList(n, path) + or result = inferDeconstructionPatType(n, path) + or + result = inferUnknownTypeFromAnnotation(n, path) ) } } diff --git a/rust/ql/lib/codeql/rust/internal/typeinference/TypeMention.qll b/rust/ql/lib/codeql/rust/internal/typeinference/TypeMention.qll index 70dfbeda848b..c4650f97c34b 100644 --- a/rust/ql/lib/codeql/rust/internal/typeinference/TypeMention.qll +++ b/rust/ql/lib/codeql/rust/internal/typeinference/TypeMention.qll @@ -769,7 +769,7 @@ private Type getPathConcreteAssocTypeAt(Path path, TypePath typePath) { TypeAlias alias, TypePath path0 | pathConcreteTypeAssocType(path, tm, trait, traitOrTmTrait, alias) and - PathSatisfiesConstraint::satisfiesConstraintTypeThrough(tm, impl, traitOrTmTrait, path0, result) and + PathSatisfiesConstraint::satisfiesConstraintThrough(tm, impl, traitOrTmTrait, path0, result) and path0.isCons(TAssociatedTypeTypeParameter(trait, alias), typePath) ) } diff --git a/rust/ql/test/library-tests/type-inference/closure.rs b/rust/ql/test/library-tests/type-inference/closure.rs index cbcf154563ad..fbef401bb083 100644 --- a/rust/ql/test/library-tests/type-inference/closure.rs +++ b/rust/ql/test/library-tests/type-inference/closure.rs @@ -63,7 +63,7 @@ mod fn_once_trait { }; let _r = apply(f, true); // $ target=apply type=_r:i64 - let f = |x| x + 1; // $ MISSING: type=x:i64 target=add + let f = |x| x + 1; // $ type=x:i64 $ MISSING: target=add let _r2 = apply_two(f); // $ target=apply_two certainType=_r2:i64 } } @@ -100,7 +100,7 @@ mod fn_mut_trait { }; let _r = apply(f, true); // $ target=apply type=_r:i64 - let f = |x| x + 1; // $ MISSING: type=x:i64 target=add + let f = |x| x + 1; // $ type=x:i64 $ MISSING: target=add let _r2 = apply_two(f); // $ target=apply_two certainType=_r2:i64 } } @@ -137,7 +137,7 @@ mod fn_trait { }; let _r = apply(f, true); // $ target=apply type=_r:i64 - let f = |x| x + 1; // $ MISSING: type=x:i64 target=add + let f = |x| x + 1; // $ type=x:i64 $ MISSING: target=add let _r2 = apply_two(f); // $ target=apply_two certainType=_r2:i64 } } @@ -183,25 +183,25 @@ mod closure_infer_param { } fn test() { - let f = |x| x; // $ MISSING: type=x:i64 + let f = |x| x; // $ type=x:i64 let _r = apply1(f, 1i64); // $ target=apply1 - let f = |x| x; // $ MISSING: type=x:i64 + let f = |x| x; // $ type=x:i64 let _r = apply2(f, 2i64); // $ target=apply2 - let f = |x| x; // $ MISSING: type=x:i64 + let f = |x| x; // $ type=x:i64 let _r = apply3(&f, 3i64); // $ target=apply3 - let f = |x| x; // $ MISSING: type=x:i64 + let f = |x| x; // $ type=x:i64 let _r = apply4(f, 4i64); // $ target=apply4 let mut f = |x| x; // $ MISSING: type=x:i64 let _r = apply5(&mut f, 5i64); // $ target=apply5 - let f = |x| x; // $ MISSING: type=x:i64 + let f = |x| x; // $ type=x:i64 let _r = apply6(f, 6i64); // $ target=apply6 - let f = |x| x; // $ MISSING: type=x:i64 + let f = |x| x; // $ type=x:i64 let _r = apply7(f, 7i64); // $ target=apply7 } } @@ -221,15 +221,15 @@ mod implicit_deref { pub fn test() { let x = 0i64; - let v = Default::default(); // $ MISSING: type=v:i64 target=default + let v = Default::default(); // $ type=v:i64 target=default let s = S(v); - let _ret = s(x); // $ MISSING: type=_ret:bool + let _ret = s(x); // $ type=_ret:bool let x = 0i32; - let v = Default::default(); // $ MISSING: type=v:i32 target=default + let v = Default::default(); // $ type=v:i32 target=default let s = S(v); let s_ref = &s; - let _ret = s_ref(x); // $ MISSING: type=_ret:bool + let _ret = s_ref(x); // $ type=_ret:bool // The call below is not an implicit deref, instead it will target // `impl FnOnce for &F` from diff --git a/rust/ql/test/library-tests/type-inference/main.rs b/rust/ql/test/library-tests/type-inference/main.rs index 3e3d9f851080..ecb4816ebb01 100644 --- a/rust/ql/test/library-tests/type-inference/main.rs +++ b/rust/ql/test/library-tests/type-inference/main.rs @@ -2259,7 +2259,7 @@ mod loops { // for loops with arrays for i in [1, 2, 3] {} // $ type=i:i32 - for i in [1, 2, 3].map(|x| x + 1) {} // $ target=map MISSING: type=i:i32 + for i in [1, 2, 3].map(|x| x + 1) {} // $ target=map target=add type=i:i32 for i in [1, 2, 3].into_iter() {} // $ target=into_iter type=i:i32 let vals1 = [1u8, 2, 3]; // $ type=vals1:TArray.u8 @@ -2777,7 +2777,7 @@ mod arg_trait_bounds { } fn test() { - let v = Default::default(); // $ MISSING: type=v:i64 target=default + let v = Default::default(); // $ type=v:i64 target=default let g = Gen(v); let _ = my_get(&g); // $ target=my_get } diff --git a/rust/ql/test/library-tests/type-inference/regressions.rs b/rust/ql/test/library-tests/type-inference/regressions.rs index 21ab5fc24a04..5c830bb3db2f 100644 --- a/rust/ql/test/library-tests/type-inference/regressions.rs +++ b/rust/ql/test/library-tests/type-inference/regressions.rs @@ -149,7 +149,7 @@ mod regression5 { fn foo() -> S2 { let x = S1.into(); // $ target=into - x + x // $ SPURIOUS: type=x:T2.TRef.S1 -- happens because we currently do not consider the two `impl` blocks to be siblings } } diff --git a/rust/ql/test/library-tests/type-inference/type-inference.expected b/rust/ql/test/library-tests/type-inference/type-inference.expected index 0beb4a4ffb6b..4be703598427 100644 --- a/rust/ql/test/library-tests/type-inference/type-inference.expected +++ b/rust/ql/test/library-tests/type-inference/type-inference.expected @@ -545,6 +545,14 @@ inferCertainType | blanket_impl.rs:299:47:299:67 | "SELECT * FROM users" | | {EXTERNAL LOCATION} | & | | blanket_impl.rs:299:47:299:67 | "SELECT * FROM users" | TRef | {EXTERNAL LOCATION} | str | | closure.rs:4:19:31:5 | { ... } | | {EXTERNAL LOCATION} | () | +| closure.rs:6:13:6:22 | my_closure | | {EXTERNAL LOCATION} | dyn Fn | +| closure.rs:6:13:6:22 | my_closure | dyn(Args) | {EXTERNAL LOCATION} | (T_2) | +| closure.rs:6:13:6:22 | my_closure | dyn(Args).T0 | {EXTERNAL LOCATION} | bool | +| closure.rs:6:13:6:22 | my_closure | dyn(Args).T1 | {EXTERNAL LOCATION} | bool | +| closure.rs:6:26:6:38 | \|...\| ... | | {EXTERNAL LOCATION} | dyn Fn | +| closure.rs:6:26:6:38 | \|...\| ... | dyn(Args) | {EXTERNAL LOCATION} | (T_2) | +| closure.rs:6:26:6:38 | \|...\| ... | dyn(Args).T0 | {EXTERNAL LOCATION} | bool | +| closure.rs:6:26:6:38 | \|...\| ... | dyn(Args).T1 | {EXTERNAL LOCATION} | bool | | closure.rs:6:27:6:27 | a | | {EXTERNAL LOCATION} | bool | | closure.rs:6:30:6:30 | b | | {EXTERNAL LOCATION} | bool | | closure.rs:6:33:6:33 | a | | {EXTERNAL LOCATION} | bool | @@ -552,19 +560,47 @@ inferCertainType | closure.rs:6:38:6:38 | b | | {EXTERNAL LOCATION} | bool | | closure.rs:8:13:8:13 | x | | {EXTERNAL LOCATION} | i64 | | closure.rs:8:22:8:25 | 1i64 | | {EXTERNAL LOCATION} | i64 | +| closure.rs:9:13:9:19 | add_one | | {EXTERNAL LOCATION} | dyn Fn | +| closure.rs:9:23:9:34 | \|...\| ... | | {EXTERNAL LOCATION} | dyn Fn | | closure.rs:9:31:9:34 | 1i64 | | {EXTERNAL LOCATION} | i64 | +| closure.rs:10:18:10:24 | add_one | | {EXTERNAL LOCATION} | dyn Fn | +| closure.rs:10:25:10:27 | ArgList | | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:10:25:10:27 | ArgList | T0 | {EXTERNAL LOCATION} | i64 | | closure.rs:10:26:10:26 | x | | {EXTERNAL LOCATION} | i64 | +| closure.rs:14:13:14:20 | add_zero | | {EXTERNAL LOCATION} | dyn Fn | +| closure.rs:14:13:14:20 | add_zero | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:14:13:14:20 | add_zero | dyn(Args).T0 | {EXTERNAL LOCATION} | i64 | +| closure.rs:14:24:14:33 | \|...\| n | | {EXTERNAL LOCATION} | dyn Fn | +| closure.rs:14:24:14:33 | \|...\| n | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:14:24:14:33 | \|...\| n | dyn(Args).T0 | {EXTERNAL LOCATION} | i64 | | closure.rs:14:25:14:25 | n | | {EXTERNAL LOCATION} | i64 | | closure.rs:14:33:14:33 | n | | {EXTERNAL LOCATION} | i64 | +| closure.rs:15:18:15:25 | add_zero | | {EXTERNAL LOCATION} | dyn Fn | +| closure.rs:15:18:15:25 | add_zero | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:15:18:15:25 | add_zero | dyn(Args).T0 | {EXTERNAL LOCATION} | i64 | +| closure.rs:17:13:17:21 | _get_bool | | {EXTERNAL LOCATION} | dyn Fn | +| closure.rs:17:25:21:9 | \|...\| ... | | {EXTERNAL LOCATION} | dyn Fn | +| closure.rs:24:13:24:14 | id | | {EXTERNAL LOCATION} | dyn Fn | +| closure.rs:24:18:24:22 | \|...\| b | | {EXTERNAL LOCATION} | dyn Fn | +| closure.rs:25:18:25:19 | id | | {EXTERNAL LOCATION} | dyn Fn | +| closure.rs:25:20:25:25 | ArgList | | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:25:20:25:25 | ArgList | T0 | {EXTERNAL LOCATION} | bool | | closure.rs:25:21:25:24 | true | | {EXTERNAL LOCATION} | bool | +| closure.rs:28:13:28:15 | id2 | | {EXTERNAL LOCATION} | dyn Fn | +| closure.rs:28:19:28:23 | \|...\| b | | {EXTERNAL LOCATION} | dyn Fn | | closure.rs:30:13:30:15 | _b2 | | {EXTERNAL LOCATION} | bool | +| closure.rs:30:25:30:27 | id2 | | {EXTERNAL LOCATION} | dyn Fn | | closure.rs:35:44:35:44 | f | | closure.rs:35:20:35:41 | F | | closure.rs:35:50:37:5 | { ... } | | {EXTERNAL LOCATION} | () | | closure.rs:36:23:36:23 | f | | closure.rs:35:20:35:41 | F | +| closure.rs:36:24:36:29 | ArgList | | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:36:24:36:29 | ArgList | T0 | {EXTERNAL LOCATION} | bool | | closure.rs:36:25:36:28 | true | | {EXTERNAL LOCATION} | bool | | closure.rs:39:45:39:45 | f | | closure.rs:39:28:39:42 | F | | closure.rs:39:51:41:5 | { ... } | | {EXTERNAL LOCATION} | () | | closure.rs:40:23:40:23 | f | | closure.rs:39:28:39:42 | F | +| closure.rs:40:24:40:29 | ArgList | | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:40:24:40:29 | ArgList | T0 | {EXTERNAL LOCATION} | bool | | closure.rs:40:25:40:28 | true | | {EXTERNAL LOCATION} | bool | | closure.rs:43:46:43:46 | f | | closure.rs:43:22:43:43 | F | | closure.rs:43:52:46:5 | { ... } | | {EXTERNAL LOCATION} | () | @@ -573,23 +609,41 @@ inferCertainType | closure.rs:48:45:48:45 | a | | closure.rs:48:14:48:14 | A | | closure.rs:48:56:50:5 | { ... } | | closure.rs:48:17:48:17 | B | | closure.rs:49:9:49:9 | f | | closure.rs:48:20:48:36 | F | +| closure.rs:49:10:49:12 | ArgList | | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:49:10:49:12 | ArgList | T0 | closure.rs:48:14:48:14 | A | | closure.rs:49:11:49:11 | a | | closure.rs:48:14:48:14 | A | | closure.rs:52:18:52:18 | f | | closure.rs:52:21:52:43 | impl ... | | closure.rs:52:53:54:5 | { ... } | | {EXTERNAL LOCATION} | i64 | | closure.rs:53:9:53:9 | f | | closure.rs:52:21:52:43 | impl ... | | closure.rs:56:15:68:5 | { ... } | | {EXTERNAL LOCATION} | () | +| closure.rs:57:13:57:13 | f | | {EXTERNAL LOCATION} | dyn Fn | +| closure.rs:57:13:57:13 | f | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:57:13:57:13 | f | dyn(Args).T0 | {EXTERNAL LOCATION} | bool | +| closure.rs:57:17:63:9 | \|...\| ... | | {EXTERNAL LOCATION} | dyn Fn | +| closure.rs:57:17:63:9 | \|...\| ... | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:57:17:63:9 | \|...\| ... | dyn(Args).T0 | {EXTERNAL LOCATION} | bool | | closure.rs:57:18:57:18 | x | | {EXTERNAL LOCATION} | bool | | closure.rs:58:16:58:16 | x | | {EXTERNAL LOCATION} | bool | +| closure.rs:64:24:64:24 | f | | {EXTERNAL LOCATION} | dyn Fn | +| closure.rs:64:24:64:24 | f | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:64:24:64:24 | f | dyn(Args).T0 | {EXTERNAL LOCATION} | bool | | closure.rs:64:27:64:30 | true | | {EXTERNAL LOCATION} | bool | +| closure.rs:66:13:66:13 | f | | {EXTERNAL LOCATION} | dyn Fn | +| closure.rs:66:17:66:25 | \|...\| ... | | {EXTERNAL LOCATION} | dyn Fn | | closure.rs:67:13:67:15 | _r2 | | {EXTERNAL LOCATION} | i64 | | closure.rs:67:19:67:30 | apply_two(...) | | {EXTERNAL LOCATION} | i64 | +| closure.rs:67:29:67:29 | f | | {EXTERNAL LOCATION} | dyn Fn | | closure.rs:72:47:72:47 | f | | closure.rs:72:20:72:40 | F | | closure.rs:72:53:74:5 | { ... } | | {EXTERNAL LOCATION} | () | | closure.rs:73:23:73:23 | f | | closure.rs:72:20:72:40 | F | +| closure.rs:73:24:73:29 | ArgList | | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:73:24:73:29 | ArgList | T0 | {EXTERNAL LOCATION} | bool | | closure.rs:73:25:73:28 | true | | {EXTERNAL LOCATION} | bool | | closure.rs:76:48:76:48 | f | | closure.rs:76:28:76:41 | F | | closure.rs:76:54:78:5 | { ... } | | {EXTERNAL LOCATION} | () | | closure.rs:77:23:77:23 | f | | closure.rs:76:28:76:41 | F | +| closure.rs:77:24:77:29 | ArgList | | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:77:24:77:29 | ArgList | T0 | {EXTERNAL LOCATION} | bool | | closure.rs:77:25:77:28 | true | | {EXTERNAL LOCATION} | bool | | closure.rs:80:49:80:49 | f | | closure.rs:80:22:80:42 | F | | closure.rs:80:55:83:5 | { ... } | | {EXTERNAL LOCATION} | () | @@ -598,23 +652,41 @@ inferCertainType | closure.rs:85:48:85:48 | a | | closure.rs:85:14:85:14 | A | | closure.rs:85:59:87:5 | { ... } | | closure.rs:85:17:85:17 | B | | closure.rs:86:9:86:9 | f | | closure.rs:85:20:85:35 | F | +| closure.rs:86:10:86:12 | ArgList | | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:86:10:86:12 | ArgList | T0 | closure.rs:85:14:85:14 | A | | closure.rs:86:11:86:11 | a | | closure.rs:85:14:85:14 | A | | closure.rs:89:22:89:22 | f | | closure.rs:89:25:89:46 | impl ... | | closure.rs:89:56:91:5 | { ... } | | {EXTERNAL LOCATION} | i64 | | closure.rs:90:9:90:9 | f | | closure.rs:89:25:89:46 | impl ... | | closure.rs:93:15:105:5 | { ... } | | {EXTERNAL LOCATION} | () | +| closure.rs:94:13:94:13 | f | | {EXTERNAL LOCATION} | dyn Fn | +| closure.rs:94:13:94:13 | f | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:94:13:94:13 | f | dyn(Args).T0 | {EXTERNAL LOCATION} | bool | +| closure.rs:94:17:100:9 | \|...\| ... | | {EXTERNAL LOCATION} | dyn Fn | +| closure.rs:94:17:100:9 | \|...\| ... | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:94:17:100:9 | \|...\| ... | dyn(Args).T0 | {EXTERNAL LOCATION} | bool | | closure.rs:94:18:94:18 | x | | {EXTERNAL LOCATION} | bool | | closure.rs:95:16:95:16 | x | | {EXTERNAL LOCATION} | bool | +| closure.rs:101:24:101:24 | f | | {EXTERNAL LOCATION} | dyn Fn | +| closure.rs:101:24:101:24 | f | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:101:24:101:24 | f | dyn(Args).T0 | {EXTERNAL LOCATION} | bool | | closure.rs:101:27:101:30 | true | | {EXTERNAL LOCATION} | bool | +| closure.rs:103:13:103:13 | f | | {EXTERNAL LOCATION} | dyn Fn | +| closure.rs:103:17:103:25 | \|...\| ... | | {EXTERNAL LOCATION} | dyn Fn | | closure.rs:104:13:104:15 | _r2 | | {EXTERNAL LOCATION} | i64 | | closure.rs:104:19:104:30 | apply_two(...) | | {EXTERNAL LOCATION} | i64 | +| closure.rs:104:29:104:29 | f | | {EXTERNAL LOCATION} | dyn Fn | | closure.rs:109:40:109:40 | f | | closure.rs:109:20:109:37 | F | | closure.rs:109:46:111:5 | { ... } | | {EXTERNAL LOCATION} | () | | closure.rs:110:23:110:23 | f | | closure.rs:109:20:109:37 | F | +| closure.rs:110:24:110:29 | ArgList | | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:110:24:110:29 | ArgList | T0 | {EXTERNAL LOCATION} | bool | | closure.rs:110:25:110:28 | true | | {EXTERNAL LOCATION} | bool | | closure.rs:113:41:113:41 | f | | closure.rs:113:28:113:38 | F | | closure.rs:113:47:115:5 | { ... } | | {EXTERNAL LOCATION} | () | | closure.rs:114:23:114:23 | f | | closure.rs:113:28:113:38 | F | +| closure.rs:114:24:114:29 | ArgList | | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:114:24:114:29 | ArgList | T0 | {EXTERNAL LOCATION} | bool | | closure.rs:114:25:114:28 | true | | {EXTERNAL LOCATION} | bool | | closure.rs:117:42:117:42 | f | | closure.rs:117:22:117:39 | F | | closure.rs:117:48:120:5 | { ... } | | {EXTERNAL LOCATION} | () | @@ -623,16 +695,30 @@ inferCertainType | closure.rs:122:41:122:41 | a | | closure.rs:122:14:122:14 | A | | closure.rs:122:52:124:5 | { ... } | | closure.rs:122:17:122:17 | B | | closure.rs:123:9:123:9 | f | | closure.rs:122:20:122:32 | F | +| closure.rs:123:10:123:12 | ArgList | | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:123:10:123:12 | ArgList | T0 | closure.rs:122:14:122:14 | A | | closure.rs:123:11:123:11 | a | | closure.rs:122:14:122:14 | A | | closure.rs:126:18:126:18 | f | | closure.rs:126:21:126:39 | impl ... | | closure.rs:126:49:128:5 | { ... } | | {EXTERNAL LOCATION} | i64 | | closure.rs:127:9:127:9 | f | | closure.rs:126:21:126:39 | impl ... | | closure.rs:130:15:142:5 | { ... } | | {EXTERNAL LOCATION} | () | +| closure.rs:131:13:131:13 | f | | {EXTERNAL LOCATION} | dyn Fn | +| closure.rs:131:13:131:13 | f | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:131:13:131:13 | f | dyn(Args).T0 | {EXTERNAL LOCATION} | bool | +| closure.rs:131:17:137:9 | \|...\| ... | | {EXTERNAL LOCATION} | dyn Fn | +| closure.rs:131:17:137:9 | \|...\| ... | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:131:17:137:9 | \|...\| ... | dyn(Args).T0 | {EXTERNAL LOCATION} | bool | | closure.rs:131:18:131:18 | x | | {EXTERNAL LOCATION} | bool | | closure.rs:132:16:132:16 | x | | {EXTERNAL LOCATION} | bool | +| closure.rs:138:24:138:24 | f | | {EXTERNAL LOCATION} | dyn Fn | +| closure.rs:138:24:138:24 | f | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:138:24:138:24 | f | dyn(Args).T0 | {EXTERNAL LOCATION} | bool | | closure.rs:138:27:138:30 | true | | {EXTERNAL LOCATION} | bool | +| closure.rs:140:13:140:13 | f | | {EXTERNAL LOCATION} | dyn Fn | +| closure.rs:140:17:140:25 | \|...\| ... | | {EXTERNAL LOCATION} | dyn Fn | | closure.rs:141:13:141:15 | _r2 | | {EXTERNAL LOCATION} | i64 | | closure.rs:141:19:141:30 | apply_two(...) | | {EXTERNAL LOCATION} | i64 | +| closure.rs:141:29:141:29 | f | | {EXTERNAL LOCATION} | dyn Fn | | closure.rs:146:54:146:54 | f | | {EXTERNAL LOCATION} | Box | | closure.rs:146:54:146:54 | f | A | {EXTERNAL LOCATION} | Global | | closure.rs:146:54:146:54 | f | T | closure.rs:146:26:146:51 | F | @@ -641,6 +727,8 @@ inferCertainType | closure.rs:147:9:147:9 | f | | {EXTERNAL LOCATION} | Box | | closure.rs:147:9:147:9 | f | A | {EXTERNAL LOCATION} | Global | | closure.rs:147:9:147:9 | f | T | closure.rs:146:26:146:51 | F | +| closure.rs:147:10:147:14 | ArgList | | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:147:10:147:14 | ArgList | T0 | closure.rs:146:20:146:20 | A | | closure.rs:147:11:147:13 | arg | | closure.rs:146:20:146:20 | A | | closure.rs:150:30:150:30 | f | | {EXTERNAL LOCATION} | Box | | closure.rs:150:30:150:30 | f | A | {EXTERNAL LOCATION} | Global | @@ -659,17 +747,24 @@ inferCertainType | closure.rs:151:34:151:36 | arg | | closure.rs:150:24:150:24 | A | | closure.rs:152:31:152:53 | ...::new(...) | | {EXTERNAL LOCATION} | Box | | closure.rs:152:31:152:53 | ...::new(...) | A | {EXTERNAL LOCATION} | Global | +| closure.rs:152:40:152:52 | \|...\| true | | {EXTERNAL LOCATION} | dyn Fn | +| closure.rs:152:40:152:52 | \|...\| true | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:152:40:152:52 | \|...\| true | dyn(Args).T0 | {EXTERNAL LOCATION} | i64 | | closure.rs:152:41:152:41 | _ | | {EXTERNAL LOCATION} | i64 | | closure.rs:152:49:152:52 | true | | {EXTERNAL LOCATION} | bool | | closure.rs:157:34:157:34 | f | | closure.rs:157:15:157:31 | F | | closure.rs:157:40:157:40 | a | | {EXTERNAL LOCATION} | i64 | | closure.rs:157:55:159:5 | { ... } | | {EXTERNAL LOCATION} | i64 | | closure.rs:158:9:158:9 | f | | closure.rs:157:15:157:31 | F | +| closure.rs:158:10:158:12 | ArgList | | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:158:10:158:12 | ArgList | T0 | {EXTERNAL LOCATION} | i64 | | closure.rs:158:11:158:11 | a | | {EXTERNAL LOCATION} | i64 | | closure.rs:161:15:161:15 | f | | closure.rs:161:18:161:36 | impl ... | | closure.rs:161:39:161:39 | a | | {EXTERNAL LOCATION} | i64 | | closure.rs:161:54:163:5 | { ... } | | {EXTERNAL LOCATION} | i64 | | closure.rs:162:9:162:9 | f | | closure.rs:161:18:161:36 | impl ... | +| closure.rs:162:10:162:12 | ArgList | | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:162:10:162:12 | ArgList | T0 | {EXTERNAL LOCATION} | i64 | | closure.rs:162:11:162:11 | a | | {EXTERNAL LOCATION} | i64 | | closure.rs:165:15:165:15 | f | | {EXTERNAL LOCATION} | & | | closure.rs:165:15:165:15 | f | TRef | {EXTERNAL LOCATION} | dyn Fn | @@ -683,11 +778,15 @@ inferCertainType | closure.rs:166:9:166:9 | f | TRef.dyn(Args) | {EXTERNAL LOCATION} | (T_1) | | closure.rs:166:9:166:9 | f | TRef.dyn(Args).T0 | {EXTERNAL LOCATION} | i64 | | closure.rs:166:9:166:9 | f | TRef.dyn(Output) | {EXTERNAL LOCATION} | i64 | +| closure.rs:166:10:166:12 | ArgList | | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:166:10:166:12 | ArgList | T0 | {EXTERNAL LOCATION} | i64 | | closure.rs:166:11:166:11 | a | | {EXTERNAL LOCATION} | i64 | | closure.rs:169:41:169:41 | f | | closure.rs:169:15:169:34 | F | | closure.rs:169:47:169:47 | a | | {EXTERNAL LOCATION} | i64 | | closure.rs:169:62:171:5 | { ... } | | {EXTERNAL LOCATION} | i64 | | closure.rs:170:9:170:9 | f | | closure.rs:169:15:169:34 | F | +| closure.rs:170:10:170:12 | ArgList | | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:170:10:170:12 | ArgList | T0 | {EXTERNAL LOCATION} | i64 | | closure.rs:170:11:170:11 | a | | {EXTERNAL LOCATION} | i64 | | closure.rs:173:15:173:15 | f | | {EXTERNAL LOCATION} | &mut | | closure.rs:173:15:173:15 | f | TRefMut | {EXTERNAL LOCATION} | dyn FnMut | @@ -701,40 +800,67 @@ inferCertainType | closure.rs:174:9:174:9 | f | TRefMut.dyn(Args) | {EXTERNAL LOCATION} | (T_1) | | closure.rs:174:9:174:9 | f | TRefMut.dyn(Args).T0 | {EXTERNAL LOCATION} | i64 | | closure.rs:174:9:174:9 | f | TRefMut.dyn(Output) | {EXTERNAL LOCATION} | i64 | +| closure.rs:174:10:174:12 | ArgList | | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:174:10:174:12 | ArgList | T0 | {EXTERNAL LOCATION} | i64 | | closure.rs:174:11:174:11 | a | | {EXTERNAL LOCATION} | i64 | | closure.rs:177:18:177:18 | f | | closure.rs:177:21:177:37 | impl ... | | closure.rs:177:40:177:40 | a | | closure.rs:177:15:177:15 | T | | closure.rs:177:53:179:5 | { ... } | | {EXTERNAL LOCATION} | i64 | | closure.rs:178:9:178:9 | f | | closure.rs:177:21:177:37 | impl ... | +| closure.rs:178:10:178:12 | ArgList | | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:178:10:178:12 | ArgList | T0 | closure.rs:177:15:177:15 | T | | closure.rs:178:11:178:11 | a | | closure.rs:177:15:177:15 | T | | closure.rs:181:42:181:42 | f | | closure.rs:181:18:181:35 | F | | closure.rs:181:48:181:48 | a | | closure.rs:181:15:181:15 | T | | closure.rs:181:61:183:5 | { ... } | | {EXTERNAL LOCATION} | i64 | | closure.rs:182:9:182:9 | f | | closure.rs:181:18:181:35 | F | +| closure.rs:182:10:182:12 | ArgList | | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:182:10:182:12 | ArgList | T0 | closure.rs:181:15:181:15 | T | | closure.rs:182:11:182:11 | a | | closure.rs:181:15:181:15 | T | | closure.rs:185:15:206:5 | { ... } | | {EXTERNAL LOCATION} | () | +| closure.rs:186:13:186:13 | f | | {EXTERNAL LOCATION} | dyn Fn | +| closure.rs:186:17:186:21 | \|...\| x | | {EXTERNAL LOCATION} | dyn Fn | | closure.rs:187:13:187:14 | _r | | {EXTERNAL LOCATION} | i64 | | closure.rs:187:18:187:32 | apply1(...) | | {EXTERNAL LOCATION} | i64 | +| closure.rs:187:25:187:25 | f | | {EXTERNAL LOCATION} | dyn Fn | | closure.rs:187:28:187:31 | 1i64 | | {EXTERNAL LOCATION} | i64 | +| closure.rs:189:13:189:13 | f | | {EXTERNAL LOCATION} | dyn Fn | +| closure.rs:189:17:189:21 | \|...\| x | | {EXTERNAL LOCATION} | dyn Fn | | closure.rs:190:13:190:14 | _r | | {EXTERNAL LOCATION} | i64 | | closure.rs:190:18:190:32 | apply2(...) | | {EXTERNAL LOCATION} | i64 | +| closure.rs:190:25:190:25 | f | | {EXTERNAL LOCATION} | dyn Fn | | closure.rs:190:28:190:31 | 2i64 | | {EXTERNAL LOCATION} | i64 | +| closure.rs:192:13:192:13 | f | | {EXTERNAL LOCATION} | dyn Fn | +| closure.rs:192:17:192:21 | \|...\| x | | {EXTERNAL LOCATION} | dyn Fn | | closure.rs:193:13:193:14 | _r | | {EXTERNAL LOCATION} | i64 | | closure.rs:193:18:193:33 | apply3(...) | | {EXTERNAL LOCATION} | i64 | | closure.rs:193:25:193:26 | &f | | {EXTERNAL LOCATION} | & | +| closure.rs:193:26:193:26 | f | | {EXTERNAL LOCATION} | dyn Fn | | closure.rs:193:29:193:32 | 3i64 | | {EXTERNAL LOCATION} | i64 | +| closure.rs:195:13:195:13 | f | | {EXTERNAL LOCATION} | dyn Fn | +| closure.rs:195:17:195:21 | \|...\| x | | {EXTERNAL LOCATION} | dyn Fn | | closure.rs:196:13:196:14 | _r | | {EXTERNAL LOCATION} | i64 | | closure.rs:196:18:196:32 | apply4(...) | | {EXTERNAL LOCATION} | i64 | +| closure.rs:196:25:196:25 | f | | {EXTERNAL LOCATION} | dyn Fn | | closure.rs:196:28:196:31 | 4i64 | | {EXTERNAL LOCATION} | i64 | +| closure.rs:198:17:198:17 | f | | {EXTERNAL LOCATION} | dyn Fn | +| closure.rs:198:21:198:25 | \|...\| x | | {EXTERNAL LOCATION} | dyn Fn | | closure.rs:199:13:199:14 | _r | | {EXTERNAL LOCATION} | i64 | | closure.rs:199:18:199:37 | apply5(...) | | {EXTERNAL LOCATION} | i64 | | closure.rs:199:25:199:30 | &mut f | | {EXTERNAL LOCATION} | &mut | +| closure.rs:199:30:199:30 | f | | {EXTERNAL LOCATION} | dyn Fn | | closure.rs:199:33:199:36 | 5i64 | | {EXTERNAL LOCATION} | i64 | +| closure.rs:201:13:201:13 | f | | {EXTERNAL LOCATION} | dyn Fn | +| closure.rs:201:17:201:21 | \|...\| x | | {EXTERNAL LOCATION} | dyn Fn | | closure.rs:202:13:202:14 | _r | | {EXTERNAL LOCATION} | i64 | | closure.rs:202:18:202:32 | apply6(...) | | {EXTERNAL LOCATION} | i64 | +| closure.rs:202:25:202:25 | f | | {EXTERNAL LOCATION} | dyn Fn | | closure.rs:202:28:202:31 | 6i64 | | {EXTERNAL LOCATION} | i64 | +| closure.rs:204:13:204:13 | f | | {EXTERNAL LOCATION} | dyn Fn | +| closure.rs:204:17:204:21 | \|...\| x | | {EXTERNAL LOCATION} | dyn Fn | | closure.rs:205:13:205:14 | _r | | {EXTERNAL LOCATION} | i64 | | closure.rs:205:18:205:32 | apply7(...) | | {EXTERNAL LOCATION} | i64 | +| closure.rs:205:25:205:25 | f | | {EXTERNAL LOCATION} | dyn Fn | | closure.rs:205:28:205:31 | 7i64 | | {EXTERNAL LOCATION} | i64 | | closure.rs:217:18:217:22 | SelfParam | | {EXTERNAL LOCATION} | & | | closure.rs:217:18:217:22 | SelfParam | TRef | closure.rs:212:5:212:19 | S | @@ -745,19 +871,29 @@ inferCertainType | closure.rs:217:42:219:9 | { ... } | TRef.dyn(Args).T0 | closure.rs:214:10:214:10 | T | | closure.rs:217:42:219:9 | { ... } | TRef.dyn(Output) | {EXTERNAL LOCATION} | bool | | closure.rs:218:13:218:22 | &... | | {EXTERNAL LOCATION} | & | +| closure.rs:218:14:218:22 | \|...\| false | | {EXTERNAL LOCATION} | dyn Fn | | closure.rs:218:18:218:22 | false | | {EXTERNAL LOCATION} | bool | | closure.rs:222:19:240:5 | { ... } | | {EXTERNAL LOCATION} | () | | closure.rs:223:13:223:13 | x | | {EXTERNAL LOCATION} | i64 | | closure.rs:223:17:223:20 | 0i64 | | {EXTERNAL LOCATION} | i64 | +| closure.rs:226:21:226:23 | ArgList | | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:226:21:226:23 | ArgList | T0 | {EXTERNAL LOCATION} | i64 | | closure.rs:226:22:226:22 | x | | {EXTERNAL LOCATION} | i64 | | closure.rs:228:13:228:13 | x | | {EXTERNAL LOCATION} | i32 | | closure.rs:228:17:228:20 | 0i32 | | {EXTERNAL LOCATION} | i32 | | closure.rs:231:13:231:17 | s_ref | | {EXTERNAL LOCATION} | & | | closure.rs:231:21:231:22 | &s | | {EXTERNAL LOCATION} | & | | closure.rs:232:20:232:24 | s_ref | | {EXTERNAL LOCATION} | & | +| closure.rs:232:25:232:27 | ArgList | | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:232:25:232:27 | ArgList | T0 | {EXTERNAL LOCATION} | i32 | | closure.rs:232:26:232:26 | x | | {EXTERNAL LOCATION} | i32 | +| closure.rs:238:13:238:13 | c | | {EXTERNAL LOCATION} | dyn Fn | +| closure.rs:238:17:238:21 | \|...\| x | | {EXTERNAL LOCATION} | dyn Fn | | closure.rs:239:9:239:12 | (...) | | {EXTERNAL LOCATION} | & | | closure.rs:239:10:239:11 | &c | | {EXTERNAL LOCATION} | & | +| closure.rs:239:11:239:11 | c | | {EXTERNAL LOCATION} | dyn Fn | +| closure.rs:239:13:239:15 | ArgList | | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:239:13:239:15 | ArgList | T0 | {EXTERNAL LOCATION} | i32 | | closure.rs:239:14:239:14 | x | | {EXTERNAL LOCATION} | i32 | | dereference.rs:13:14:13:18 | SelfParam | | {EXTERNAL LOCATION} | & | | dereference.rs:13:14:13:18 | SelfParam | TRef | dereference.rs:5:1:7:1 | MyIntPointer | @@ -2357,6 +2493,7 @@ inferCertainType | main.rs:1340:40:1345:5 | { ... } | | {EXTERNAL LOCATION} | Result | | main.rs:1340:40:1345:5 | { ... } | E | main.rs:1320:5:1321:14 | S2 | | main.rs:1340:40:1345:5 | { ... } | T | main.rs:1317:5:1318:14 | S1 | +| main.rs:1343:24:1343:28 | \|...\| s | | {EXTERNAL LOCATION} | dyn Fn | | main.rs:1349:30:1349:34 | input | | {EXTERNAL LOCATION} | Result | | main.rs:1349:30:1349:34 | input | E | main.rs:1317:5:1318:14 | S1 | | main.rs:1349:30:1349:34 | input | T | main.rs:1349:20:1349:27 | T | @@ -2366,6 +2503,7 @@ inferCertainType | main.rs:1350:21:1350:25 | input | | {EXTERNAL LOCATION} | Result | | main.rs:1350:21:1350:25 | input | E | main.rs:1317:5:1318:14 | S1 | | main.rs:1350:21:1350:25 | input | T | main.rs:1349:20:1349:27 | T | +| main.rs:1351:49:1354:9 | \|...\| ... | | {EXTERNAL LOCATION} | dyn Fn | | main.rs:1352:22:1352:27 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:1352:22:1352:27 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | | main.rs:1352:22:1352:30 | ...::_print(...) | | {EXTERNAL LOCATION} | () | @@ -3280,6 +3418,7 @@ inferCertainType | main.rs:2261:28:2261:29 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:2262:9:2262:44 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | | main.rs:2262:18:2262:26 | [...] | | {EXTERNAL LOCATION} | [;] | +| main.rs:2262:32:2262:40 | \|...\| ... | | {EXTERNAL LOCATION} | dyn Fn | | main.rs:2262:43:2262:44 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:2263:9:2263:41 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | | main.rs:2263:18:2263:26 | [...] | | {EXTERNAL LOCATION} | [;] | @@ -6192,6 +6331,8 @@ inferType | closure.rs:10:18:10:24 | add_one | dyn(Args).T0 | {EXTERNAL LOCATION} | i64 | | closure.rs:10:18:10:24 | add_one | dyn(Output) | {EXTERNAL LOCATION} | i64 | | closure.rs:10:18:10:27 | add_one(...) | | {EXTERNAL LOCATION} | i64 | +| closure.rs:10:25:10:27 | ArgList | | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:10:25:10:27 | ArgList | T0 | {EXTERNAL LOCATION} | i64 | | closure.rs:10:26:10:26 | x | | {EXTERNAL LOCATION} | i64 | | closure.rs:13:13:13:13 | x | | {EXTERNAL LOCATION} | i64 | | closure.rs:13:17:13:34 | ...::default(...) | | {EXTERNAL LOCATION} | i64 | @@ -6211,6 +6352,8 @@ inferType | closure.rs:15:18:15:25 | add_zero | dyn(Args).T0 | {EXTERNAL LOCATION} | i64 | | closure.rs:15:18:15:25 | add_zero | dyn(Output) | {EXTERNAL LOCATION} | i64 | | closure.rs:15:18:15:28 | add_zero(...) | | {EXTERNAL LOCATION} | i64 | +| closure.rs:15:26:15:28 | ArgList | | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:15:26:15:28 | ArgList | T0 | {EXTERNAL LOCATION} | i64 | | closure.rs:15:27:15:27 | x | | {EXTERNAL LOCATION} | i64 | | closure.rs:17:13:17:21 | _get_bool | | {EXTERNAL LOCATION} | dyn Fn | | closure.rs:17:13:17:21 | _get_bool | dyn(Args) | {EXTERNAL LOCATION} | () | @@ -6238,6 +6381,8 @@ inferType | closure.rs:25:18:25:19 | id | dyn(Args).T0 | {EXTERNAL LOCATION} | bool | | closure.rs:25:18:25:19 | id | dyn(Output) | {EXTERNAL LOCATION} | bool | | closure.rs:25:18:25:25 | id(...) | | {EXTERNAL LOCATION} | bool | +| closure.rs:25:20:25:25 | ArgList | | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:25:20:25:25 | ArgList | T0 | {EXTERNAL LOCATION} | bool | | closure.rs:25:21:25:24 | true | | {EXTERNAL LOCATION} | bool | | closure.rs:28:13:28:15 | id2 | | {EXTERNAL LOCATION} | dyn Fn | | closure.rs:28:13:28:15 | id2 | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | @@ -6257,18 +6402,24 @@ inferType | closure.rs:30:25:30:27 | id2 | dyn(Args).T0 | {EXTERNAL LOCATION} | bool | | closure.rs:30:25:30:27 | id2 | dyn(Output) | {EXTERNAL LOCATION} | bool | | closure.rs:30:25:30:32 | id2(...) | | {EXTERNAL LOCATION} | bool | +| closure.rs:30:28:30:32 | ArgList | | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:30:28:30:32 | ArgList | T0 | {EXTERNAL LOCATION} | bool | | closure.rs:30:29:30:31 | arg | | {EXTERNAL LOCATION} | bool | | closure.rs:35:44:35:44 | f | | closure.rs:35:20:35:41 | F | | closure.rs:35:50:37:5 | { ... } | | {EXTERNAL LOCATION} | () | | closure.rs:36:13:36:19 | _return | | {EXTERNAL LOCATION} | i64 | | closure.rs:36:23:36:23 | f | | closure.rs:35:20:35:41 | F | | closure.rs:36:23:36:29 | f(...) | | {EXTERNAL LOCATION} | i64 | +| closure.rs:36:24:36:29 | ArgList | | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:36:24:36:29 | ArgList | T0 | {EXTERNAL LOCATION} | bool | | closure.rs:36:25:36:28 | true | | {EXTERNAL LOCATION} | bool | | closure.rs:39:45:39:45 | f | | closure.rs:39:28:39:42 | F | | closure.rs:39:51:41:5 | { ... } | | {EXTERNAL LOCATION} | () | | closure.rs:40:13:40:19 | _return | | {EXTERNAL LOCATION} | () | | closure.rs:40:23:40:23 | f | | closure.rs:39:28:39:42 | F | | closure.rs:40:23:40:29 | f(...) | | {EXTERNAL LOCATION} | () | +| closure.rs:40:24:40:29 | ArgList | | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:40:24:40:29 | ArgList | T0 | {EXTERNAL LOCATION} | bool | | closure.rs:40:25:40:28 | true | | {EXTERNAL LOCATION} | bool | | closure.rs:43:46:43:46 | f | | closure.rs:43:22:43:43 | F | | closure.rs:43:52:46:5 | { ... } | | {EXTERNAL LOCATION} | () | @@ -6276,74 +6427,77 @@ inferType | closure.rs:44:19:44:36 | ...::default(...) | | {EXTERNAL LOCATION} | bool | | closure.rs:45:9:45:9 | f | | closure.rs:43:22:43:43 | F | | closure.rs:45:9:45:14 | f(...) | | {EXTERNAL LOCATION} | i64 | +| closure.rs:45:10:45:14 | ArgList | | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:45:10:45:14 | ArgList | T0 | {EXTERNAL LOCATION} | bool | | closure.rs:45:11:45:13 | arg | | {EXTERNAL LOCATION} | bool | | closure.rs:48:39:48:39 | f | | closure.rs:48:20:48:36 | F | | closure.rs:48:45:48:45 | a | | closure.rs:48:14:48:14 | A | | closure.rs:48:56:50:5 | { ... } | | closure.rs:48:17:48:17 | B | | closure.rs:49:9:49:9 | f | | closure.rs:48:20:48:36 | F | | closure.rs:49:9:49:12 | f(...) | | closure.rs:48:17:48:17 | B | +| closure.rs:49:10:49:12 | ArgList | | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:49:10:49:12 | ArgList | T0 | closure.rs:48:14:48:14 | A | | closure.rs:49:11:49:11 | a | | closure.rs:48:14:48:14 | A | | closure.rs:52:18:52:18 | f | | closure.rs:52:21:52:43 | impl ... | | closure.rs:52:53:54:5 | { ... } | | {EXTERNAL LOCATION} | i64 | | closure.rs:53:9:53:9 | f | | closure.rs:52:21:52:43 | impl ... | | closure.rs:53:9:53:12 | f(...) | | {EXTERNAL LOCATION} | i64 | +| closure.rs:53:10:53:12 | ArgList | | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:53:10:53:12 | ArgList | T0 | {EXTERNAL LOCATION} | i32 | | closure.rs:53:11:53:11 | 2 | | {EXTERNAL LOCATION} | i32 | -| closure.rs:53:11:53:11 | 2 | | {EXTERNAL LOCATION} | i64 | | closure.rs:56:15:68:5 | { ... } | | {EXTERNAL LOCATION} | () | | closure.rs:57:13:57:13 | f | | {EXTERNAL LOCATION} | dyn Fn | | closure.rs:57:13:57:13 | f | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | | closure.rs:57:13:57:13 | f | dyn(Args).T0 | {EXTERNAL LOCATION} | bool | -| closure.rs:57:13:57:13 | f | dyn(Output) | {EXTERNAL LOCATION} | i32 | | closure.rs:57:13:57:13 | f | dyn(Output) | {EXTERNAL LOCATION} | i64 | | closure.rs:57:17:63:9 | \|...\| ... | | {EXTERNAL LOCATION} | dyn Fn | | closure.rs:57:17:63:9 | \|...\| ... | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | | closure.rs:57:17:63:9 | \|...\| ... | dyn(Args).T0 | {EXTERNAL LOCATION} | bool | -| closure.rs:57:17:63:9 | \|...\| ... | dyn(Output) | {EXTERNAL LOCATION} | i32 | | closure.rs:57:17:63:9 | \|...\| ... | dyn(Output) | {EXTERNAL LOCATION} | i64 | | closure.rs:57:18:57:18 | x | | {EXTERNAL LOCATION} | bool | | closure.rs:57:34:63:9 | { ... } | | {EXTERNAL LOCATION} | i32 | -| closure.rs:57:34:63:9 | { ... } | | {EXTERNAL LOCATION} | i64 | | closure.rs:58:13:62:13 | if x {...} else {...} | | {EXTERNAL LOCATION} | i32 | -| closure.rs:58:13:62:13 | if x {...} else {...} | | {EXTERNAL LOCATION} | i64 | | closure.rs:58:16:58:16 | x | | {EXTERNAL LOCATION} | bool | | closure.rs:58:18:60:13 | { ... } | | {EXTERNAL LOCATION} | i32 | -| closure.rs:58:18:60:13 | { ... } | | {EXTERNAL LOCATION} | i64 | | closure.rs:59:17:59:17 | 1 | | {EXTERNAL LOCATION} | i32 | -| closure.rs:59:17:59:17 | 1 | | {EXTERNAL LOCATION} | i64 | | closure.rs:60:20:62:13 | { ... } | | {EXTERNAL LOCATION} | i32 | -| closure.rs:60:20:62:13 | { ... } | | {EXTERNAL LOCATION} | i64 | | closure.rs:61:17:61:17 | 0 | | {EXTERNAL LOCATION} | i32 | -| closure.rs:61:17:61:17 | 0 | | {EXTERNAL LOCATION} | i64 | -| closure.rs:64:13:64:14 | _r | | {EXTERNAL LOCATION} | i32 | | closure.rs:64:13:64:14 | _r | | {EXTERNAL LOCATION} | i64 | -| closure.rs:64:18:64:31 | apply(...) | | {EXTERNAL LOCATION} | i32 | | closure.rs:64:18:64:31 | apply(...) | | {EXTERNAL LOCATION} | i64 | | closure.rs:64:24:64:24 | f | | {EXTERNAL LOCATION} | dyn Fn | | closure.rs:64:24:64:24 | f | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | | closure.rs:64:24:64:24 | f | dyn(Args).T0 | {EXTERNAL LOCATION} | bool | -| closure.rs:64:24:64:24 | f | dyn(Output) | {EXTERNAL LOCATION} | i32 | | closure.rs:64:24:64:24 | f | dyn(Output) | {EXTERNAL LOCATION} | i64 | | closure.rs:64:27:64:30 | true | | {EXTERNAL LOCATION} | bool | | closure.rs:66:13:66:13 | f | | {EXTERNAL LOCATION} | dyn Fn | | closure.rs:66:13:66:13 | f | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:66:13:66:13 | f | dyn(Args).T0 | {EXTERNAL LOCATION} | i64 | | closure.rs:66:17:66:25 | \|...\| ... | | {EXTERNAL LOCATION} | dyn Fn | | closure.rs:66:17:66:25 | \|...\| ... | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:66:17:66:25 | \|...\| ... | dyn(Args).T0 | {EXTERNAL LOCATION} | i64 | +| closure.rs:66:18:66:18 | x | | {EXTERNAL LOCATION} | i64 | +| closure.rs:66:21:66:21 | x | | {EXTERNAL LOCATION} | i64 | | closure.rs:66:25:66:25 | 1 | | {EXTERNAL LOCATION} | i32 | | closure.rs:67:13:67:15 | _r2 | | {EXTERNAL LOCATION} | i64 | | closure.rs:67:19:67:30 | apply_two(...) | | {EXTERNAL LOCATION} | i64 | | closure.rs:67:29:67:29 | f | | {EXTERNAL LOCATION} | dyn Fn | | closure.rs:67:29:67:29 | f | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:67:29:67:29 | f | dyn(Args).T0 | {EXTERNAL LOCATION} | i64 | | closure.rs:72:47:72:47 | f | | closure.rs:72:20:72:40 | F | | closure.rs:72:53:74:5 | { ... } | | {EXTERNAL LOCATION} | () | | closure.rs:73:13:73:19 | _return | | {EXTERNAL LOCATION} | i64 | | closure.rs:73:23:73:23 | f | | closure.rs:72:20:72:40 | F | | closure.rs:73:23:73:29 | f(...) | | {EXTERNAL LOCATION} | i64 | +| closure.rs:73:24:73:29 | ArgList | | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:73:24:73:29 | ArgList | T0 | {EXTERNAL LOCATION} | bool | | closure.rs:73:25:73:28 | true | | {EXTERNAL LOCATION} | bool | | closure.rs:76:48:76:48 | f | | closure.rs:76:28:76:41 | F | | closure.rs:76:54:78:5 | { ... } | | {EXTERNAL LOCATION} | () | | closure.rs:77:13:77:19 | _return | | {EXTERNAL LOCATION} | () | | closure.rs:77:23:77:23 | f | | closure.rs:76:28:76:41 | F | | closure.rs:77:23:77:29 | f(...) | | {EXTERNAL LOCATION} | () | +| closure.rs:77:24:77:29 | ArgList | | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:77:24:77:29 | ArgList | T0 | {EXTERNAL LOCATION} | bool | | closure.rs:77:25:77:28 | true | | {EXTERNAL LOCATION} | bool | | closure.rs:80:49:80:49 | f | | closure.rs:80:22:80:42 | F | | closure.rs:80:55:83:5 | { ... } | | {EXTERNAL LOCATION} | () | @@ -6351,74 +6505,77 @@ inferType | closure.rs:81:19:81:36 | ...::default(...) | | {EXTERNAL LOCATION} | bool | | closure.rs:82:9:82:9 | f | | closure.rs:80:22:80:42 | F | | closure.rs:82:9:82:14 | f(...) | | {EXTERNAL LOCATION} | i64 | +| closure.rs:82:10:82:14 | ArgList | | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:82:10:82:14 | ArgList | T0 | {EXTERNAL LOCATION} | bool | | closure.rs:82:11:82:13 | arg | | {EXTERNAL LOCATION} | bool | | closure.rs:85:42:85:42 | f | | closure.rs:85:20:85:35 | F | | closure.rs:85:48:85:48 | a | | closure.rs:85:14:85:14 | A | | closure.rs:85:59:87:5 | { ... } | | closure.rs:85:17:85:17 | B | | closure.rs:86:9:86:9 | f | | closure.rs:85:20:85:35 | F | | closure.rs:86:9:86:12 | f(...) | | closure.rs:85:17:85:17 | B | +| closure.rs:86:10:86:12 | ArgList | | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:86:10:86:12 | ArgList | T0 | closure.rs:85:14:85:14 | A | | closure.rs:86:11:86:11 | a | | closure.rs:85:14:85:14 | A | | closure.rs:89:22:89:22 | f | | closure.rs:89:25:89:46 | impl ... | | closure.rs:89:56:91:5 | { ... } | | {EXTERNAL LOCATION} | i64 | | closure.rs:90:9:90:9 | f | | closure.rs:89:25:89:46 | impl ... | | closure.rs:90:9:90:12 | f(...) | | {EXTERNAL LOCATION} | i64 | +| closure.rs:90:10:90:12 | ArgList | | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:90:10:90:12 | ArgList | T0 | {EXTERNAL LOCATION} | i32 | | closure.rs:90:11:90:11 | 2 | | {EXTERNAL LOCATION} | i32 | -| closure.rs:90:11:90:11 | 2 | | {EXTERNAL LOCATION} | i64 | | closure.rs:93:15:105:5 | { ... } | | {EXTERNAL LOCATION} | () | | closure.rs:94:13:94:13 | f | | {EXTERNAL LOCATION} | dyn Fn | | closure.rs:94:13:94:13 | f | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | | closure.rs:94:13:94:13 | f | dyn(Args).T0 | {EXTERNAL LOCATION} | bool | -| closure.rs:94:13:94:13 | f | dyn(Output) | {EXTERNAL LOCATION} | i32 | | closure.rs:94:13:94:13 | f | dyn(Output) | {EXTERNAL LOCATION} | i64 | | closure.rs:94:17:100:9 | \|...\| ... | | {EXTERNAL LOCATION} | dyn Fn | | closure.rs:94:17:100:9 | \|...\| ... | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | | closure.rs:94:17:100:9 | \|...\| ... | dyn(Args).T0 | {EXTERNAL LOCATION} | bool | -| closure.rs:94:17:100:9 | \|...\| ... | dyn(Output) | {EXTERNAL LOCATION} | i32 | | closure.rs:94:17:100:9 | \|...\| ... | dyn(Output) | {EXTERNAL LOCATION} | i64 | | closure.rs:94:18:94:18 | x | | {EXTERNAL LOCATION} | bool | | closure.rs:94:34:100:9 | { ... } | | {EXTERNAL LOCATION} | i32 | -| closure.rs:94:34:100:9 | { ... } | | {EXTERNAL LOCATION} | i64 | | closure.rs:95:13:99:13 | if x {...} else {...} | | {EXTERNAL LOCATION} | i32 | -| closure.rs:95:13:99:13 | if x {...} else {...} | | {EXTERNAL LOCATION} | i64 | | closure.rs:95:16:95:16 | x | | {EXTERNAL LOCATION} | bool | | closure.rs:95:18:97:13 | { ... } | | {EXTERNAL LOCATION} | i32 | -| closure.rs:95:18:97:13 | { ... } | | {EXTERNAL LOCATION} | i64 | | closure.rs:96:17:96:17 | 1 | | {EXTERNAL LOCATION} | i32 | -| closure.rs:96:17:96:17 | 1 | | {EXTERNAL LOCATION} | i64 | | closure.rs:97:20:99:13 | { ... } | | {EXTERNAL LOCATION} | i32 | -| closure.rs:97:20:99:13 | { ... } | | {EXTERNAL LOCATION} | i64 | | closure.rs:98:17:98:17 | 0 | | {EXTERNAL LOCATION} | i32 | -| closure.rs:98:17:98:17 | 0 | | {EXTERNAL LOCATION} | i64 | -| closure.rs:101:13:101:14 | _r | | {EXTERNAL LOCATION} | i32 | | closure.rs:101:13:101:14 | _r | | {EXTERNAL LOCATION} | i64 | -| closure.rs:101:18:101:31 | apply(...) | | {EXTERNAL LOCATION} | i32 | | closure.rs:101:18:101:31 | apply(...) | | {EXTERNAL LOCATION} | i64 | | closure.rs:101:24:101:24 | f | | {EXTERNAL LOCATION} | dyn Fn | | closure.rs:101:24:101:24 | f | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | | closure.rs:101:24:101:24 | f | dyn(Args).T0 | {EXTERNAL LOCATION} | bool | -| closure.rs:101:24:101:24 | f | dyn(Output) | {EXTERNAL LOCATION} | i32 | | closure.rs:101:24:101:24 | f | dyn(Output) | {EXTERNAL LOCATION} | i64 | | closure.rs:101:27:101:30 | true | | {EXTERNAL LOCATION} | bool | | closure.rs:103:13:103:13 | f | | {EXTERNAL LOCATION} | dyn Fn | | closure.rs:103:13:103:13 | f | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:103:13:103:13 | f | dyn(Args).T0 | {EXTERNAL LOCATION} | i64 | | closure.rs:103:17:103:25 | \|...\| ... | | {EXTERNAL LOCATION} | dyn Fn | | closure.rs:103:17:103:25 | \|...\| ... | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:103:17:103:25 | \|...\| ... | dyn(Args).T0 | {EXTERNAL LOCATION} | i64 | +| closure.rs:103:18:103:18 | x | | {EXTERNAL LOCATION} | i64 | +| closure.rs:103:21:103:21 | x | | {EXTERNAL LOCATION} | i64 | | closure.rs:103:25:103:25 | 1 | | {EXTERNAL LOCATION} | i32 | | closure.rs:104:13:104:15 | _r2 | | {EXTERNAL LOCATION} | i64 | | closure.rs:104:19:104:30 | apply_two(...) | | {EXTERNAL LOCATION} | i64 | | closure.rs:104:29:104:29 | f | | {EXTERNAL LOCATION} | dyn Fn | | closure.rs:104:29:104:29 | f | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:104:29:104:29 | f | dyn(Args).T0 | {EXTERNAL LOCATION} | i64 | | closure.rs:109:40:109:40 | f | | closure.rs:109:20:109:37 | F | | closure.rs:109:46:111:5 | { ... } | | {EXTERNAL LOCATION} | () | | closure.rs:110:13:110:19 | _return | | {EXTERNAL LOCATION} | i64 | | closure.rs:110:23:110:23 | f | | closure.rs:109:20:109:37 | F | | closure.rs:110:23:110:29 | f(...) | | {EXTERNAL LOCATION} | i64 | +| closure.rs:110:24:110:29 | ArgList | | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:110:24:110:29 | ArgList | T0 | {EXTERNAL LOCATION} | bool | | closure.rs:110:25:110:28 | true | | {EXTERNAL LOCATION} | bool | | closure.rs:113:41:113:41 | f | | closure.rs:113:28:113:38 | F | | closure.rs:113:47:115:5 | { ... } | | {EXTERNAL LOCATION} | () | | closure.rs:114:13:114:19 | _return | | {EXTERNAL LOCATION} | () | | closure.rs:114:23:114:23 | f | | closure.rs:113:28:113:38 | F | | closure.rs:114:23:114:29 | f(...) | | {EXTERNAL LOCATION} | () | +| closure.rs:114:24:114:29 | ArgList | | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:114:24:114:29 | ArgList | T0 | {EXTERNAL LOCATION} | bool | | closure.rs:114:25:114:28 | true | | {EXTERNAL LOCATION} | bool | | closure.rs:117:42:117:42 | f | | closure.rs:117:22:117:39 | F | | closure.rs:117:48:120:5 | { ... } | | {EXTERNAL LOCATION} | () | @@ -6426,63 +6583,62 @@ inferType | closure.rs:118:19:118:36 | ...::default(...) | | {EXTERNAL LOCATION} | bool | | closure.rs:119:9:119:9 | f | | closure.rs:117:22:117:39 | F | | closure.rs:119:9:119:14 | f(...) | | {EXTERNAL LOCATION} | i64 | +| closure.rs:119:10:119:14 | ArgList | | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:119:10:119:14 | ArgList | T0 | {EXTERNAL LOCATION} | bool | | closure.rs:119:11:119:13 | arg | | {EXTERNAL LOCATION} | bool | | closure.rs:122:35:122:35 | f | | closure.rs:122:20:122:32 | F | | closure.rs:122:41:122:41 | a | | closure.rs:122:14:122:14 | A | | closure.rs:122:52:124:5 | { ... } | | closure.rs:122:17:122:17 | B | | closure.rs:123:9:123:9 | f | | closure.rs:122:20:122:32 | F | | closure.rs:123:9:123:12 | f(...) | | closure.rs:122:17:122:17 | B | +| closure.rs:123:10:123:12 | ArgList | | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:123:10:123:12 | ArgList | T0 | closure.rs:122:14:122:14 | A | | closure.rs:123:11:123:11 | a | | closure.rs:122:14:122:14 | A | | closure.rs:126:18:126:18 | f | | closure.rs:126:21:126:39 | impl ... | | closure.rs:126:49:128:5 | { ... } | | {EXTERNAL LOCATION} | i64 | | closure.rs:127:9:127:9 | f | | closure.rs:126:21:126:39 | impl ... | | closure.rs:127:9:127:12 | f(...) | | {EXTERNAL LOCATION} | i64 | +| closure.rs:127:10:127:12 | ArgList | | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:127:10:127:12 | ArgList | T0 | {EXTERNAL LOCATION} | i32 | | closure.rs:127:11:127:11 | 2 | | {EXTERNAL LOCATION} | i32 | -| closure.rs:127:11:127:11 | 2 | | {EXTERNAL LOCATION} | i64 | | closure.rs:130:15:142:5 | { ... } | | {EXTERNAL LOCATION} | () | | closure.rs:131:13:131:13 | f | | {EXTERNAL LOCATION} | dyn Fn | | closure.rs:131:13:131:13 | f | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | | closure.rs:131:13:131:13 | f | dyn(Args).T0 | {EXTERNAL LOCATION} | bool | -| closure.rs:131:13:131:13 | f | dyn(Output) | {EXTERNAL LOCATION} | i32 | | closure.rs:131:13:131:13 | f | dyn(Output) | {EXTERNAL LOCATION} | i64 | | closure.rs:131:17:137:9 | \|...\| ... | | {EXTERNAL LOCATION} | dyn Fn | | closure.rs:131:17:137:9 | \|...\| ... | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | | closure.rs:131:17:137:9 | \|...\| ... | dyn(Args).T0 | {EXTERNAL LOCATION} | bool | -| closure.rs:131:17:137:9 | \|...\| ... | dyn(Output) | {EXTERNAL LOCATION} | i32 | | closure.rs:131:17:137:9 | \|...\| ... | dyn(Output) | {EXTERNAL LOCATION} | i64 | | closure.rs:131:18:131:18 | x | | {EXTERNAL LOCATION} | bool | | closure.rs:131:34:137:9 | { ... } | | {EXTERNAL LOCATION} | i32 | -| closure.rs:131:34:137:9 | { ... } | | {EXTERNAL LOCATION} | i64 | | closure.rs:132:13:136:13 | if x {...} else {...} | | {EXTERNAL LOCATION} | i32 | -| closure.rs:132:13:136:13 | if x {...} else {...} | | {EXTERNAL LOCATION} | i64 | | closure.rs:132:16:132:16 | x | | {EXTERNAL LOCATION} | bool | | closure.rs:132:18:134:13 | { ... } | | {EXTERNAL LOCATION} | i32 | -| closure.rs:132:18:134:13 | { ... } | | {EXTERNAL LOCATION} | i64 | | closure.rs:133:17:133:17 | 1 | | {EXTERNAL LOCATION} | i32 | -| closure.rs:133:17:133:17 | 1 | | {EXTERNAL LOCATION} | i64 | | closure.rs:134:20:136:13 | { ... } | | {EXTERNAL LOCATION} | i32 | -| closure.rs:134:20:136:13 | { ... } | | {EXTERNAL LOCATION} | i64 | | closure.rs:135:17:135:17 | 0 | | {EXTERNAL LOCATION} | i32 | -| closure.rs:135:17:135:17 | 0 | | {EXTERNAL LOCATION} | i64 | -| closure.rs:138:13:138:14 | _r | | {EXTERNAL LOCATION} | i32 | | closure.rs:138:13:138:14 | _r | | {EXTERNAL LOCATION} | i64 | -| closure.rs:138:18:138:31 | apply(...) | | {EXTERNAL LOCATION} | i32 | | closure.rs:138:18:138:31 | apply(...) | | {EXTERNAL LOCATION} | i64 | | closure.rs:138:24:138:24 | f | | {EXTERNAL LOCATION} | dyn Fn | | closure.rs:138:24:138:24 | f | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | | closure.rs:138:24:138:24 | f | dyn(Args).T0 | {EXTERNAL LOCATION} | bool | -| closure.rs:138:24:138:24 | f | dyn(Output) | {EXTERNAL LOCATION} | i32 | | closure.rs:138:24:138:24 | f | dyn(Output) | {EXTERNAL LOCATION} | i64 | | closure.rs:138:27:138:30 | true | | {EXTERNAL LOCATION} | bool | | closure.rs:140:13:140:13 | f | | {EXTERNAL LOCATION} | dyn Fn | | closure.rs:140:13:140:13 | f | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:140:13:140:13 | f | dyn(Args).T0 | {EXTERNAL LOCATION} | i64 | | closure.rs:140:17:140:25 | \|...\| ... | | {EXTERNAL LOCATION} | dyn Fn | | closure.rs:140:17:140:25 | \|...\| ... | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:140:17:140:25 | \|...\| ... | dyn(Args).T0 | {EXTERNAL LOCATION} | i64 | +| closure.rs:140:18:140:18 | x | | {EXTERNAL LOCATION} | i64 | +| closure.rs:140:21:140:21 | x | | {EXTERNAL LOCATION} | i64 | | closure.rs:140:25:140:25 | 1 | | {EXTERNAL LOCATION} | i32 | | closure.rs:141:13:141:15 | _r2 | | {EXTERNAL LOCATION} | i64 | | closure.rs:141:19:141:30 | apply_two(...) | | {EXTERNAL LOCATION} | i64 | | closure.rs:141:29:141:29 | f | | {EXTERNAL LOCATION} | dyn Fn | | closure.rs:141:29:141:29 | f | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:141:29:141:29 | f | dyn(Args).T0 | {EXTERNAL LOCATION} | i64 | | closure.rs:146:54:146:54 | f | | {EXTERNAL LOCATION} | Box | | closure.rs:146:54:146:54 | f | A | {EXTERNAL LOCATION} | Global | | closure.rs:146:54:146:54 | f | T | closure.rs:146:26:146:51 | F | @@ -6492,7 +6648,8 @@ inferType | closure.rs:147:9:147:9 | f | A | {EXTERNAL LOCATION} | Global | | closure.rs:147:9:147:9 | f | T | closure.rs:146:26:146:51 | F | | closure.rs:147:9:147:14 | f(...) | | closure.rs:146:23:146:23 | B | -| closure.rs:147:9:147:14 | f(...) | | {EXTERNAL LOCATION} | F::Output[FnOnce] | +| closure.rs:147:10:147:14 | ArgList | | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:147:10:147:14 | ArgList | T0 | closure.rs:146:20:146:20 | A | | closure.rs:147:11:147:13 | arg | | closure.rs:146:20:146:20 | A | | closure.rs:150:30:150:30 | f | | {EXTERNAL LOCATION} | Box | | closure.rs:150:30:150:30 | f | A | {EXTERNAL LOCATION} | Global | @@ -6531,12 +6688,16 @@ inferType | closure.rs:157:55:159:5 | { ... } | | {EXTERNAL LOCATION} | i64 | | closure.rs:158:9:158:9 | f | | closure.rs:157:15:157:31 | F | | closure.rs:158:9:158:12 | f(...) | | {EXTERNAL LOCATION} | i64 | +| closure.rs:158:10:158:12 | ArgList | | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:158:10:158:12 | ArgList | T0 | {EXTERNAL LOCATION} | i64 | | closure.rs:158:11:158:11 | a | | {EXTERNAL LOCATION} | i64 | | closure.rs:161:15:161:15 | f | | closure.rs:161:18:161:36 | impl ... | | closure.rs:161:39:161:39 | a | | {EXTERNAL LOCATION} | i64 | | closure.rs:161:54:163:5 | { ... } | | {EXTERNAL LOCATION} | i64 | | closure.rs:162:9:162:9 | f | | closure.rs:161:18:161:36 | impl ... | | closure.rs:162:9:162:12 | f(...) | | {EXTERNAL LOCATION} | i64 | +| closure.rs:162:10:162:12 | ArgList | | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:162:10:162:12 | ArgList | T0 | {EXTERNAL LOCATION} | i64 | | closure.rs:162:11:162:11 | a | | {EXTERNAL LOCATION} | i64 | | closure.rs:165:15:165:15 | f | | {EXTERNAL LOCATION} | & | | closure.rs:165:15:165:15 | f | TRef | {EXTERNAL LOCATION} | dyn Fn | @@ -6550,14 +6711,17 @@ inferType | closure.rs:166:9:166:9 | f | TRef.dyn(Args) | {EXTERNAL LOCATION} | (T_1) | | closure.rs:166:9:166:9 | f | TRef.dyn(Args).T0 | {EXTERNAL LOCATION} | i64 | | closure.rs:166:9:166:9 | f | TRef.dyn(Output) | {EXTERNAL LOCATION} | i64 | -| closure.rs:166:9:166:12 | f(...) | | {EXTERNAL LOCATION} | F::Output[FnOnce] | | closure.rs:166:9:166:12 | f(...) | | {EXTERNAL LOCATION} | i64 | +| closure.rs:166:10:166:12 | ArgList | | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:166:10:166:12 | ArgList | T0 | {EXTERNAL LOCATION} | i64 | | closure.rs:166:11:166:11 | a | | {EXTERNAL LOCATION} | i64 | | closure.rs:169:41:169:41 | f | | closure.rs:169:15:169:34 | F | | closure.rs:169:47:169:47 | a | | {EXTERNAL LOCATION} | i64 | | closure.rs:169:62:171:5 | { ... } | | {EXTERNAL LOCATION} | i64 | | closure.rs:170:9:170:9 | f | | closure.rs:169:15:169:34 | F | | closure.rs:170:9:170:12 | f(...) | | {EXTERNAL LOCATION} | i64 | +| closure.rs:170:10:170:12 | ArgList | | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:170:10:170:12 | ArgList | T0 | {EXTERNAL LOCATION} | i64 | | closure.rs:170:11:170:11 | a | | {EXTERNAL LOCATION} | i64 | | closure.rs:173:15:173:15 | f | | {EXTERNAL LOCATION} | &mut | | closure.rs:173:15:173:15 | f | TRefMut | {EXTERNAL LOCATION} | dyn FnMut | @@ -6571,60 +6735,99 @@ inferType | closure.rs:174:9:174:9 | f | TRefMut.dyn(Args) | {EXTERNAL LOCATION} | (T_1) | | closure.rs:174:9:174:9 | f | TRefMut.dyn(Args).T0 | {EXTERNAL LOCATION} | i64 | | closure.rs:174:9:174:9 | f | TRefMut.dyn(Output) | {EXTERNAL LOCATION} | i64 | -| closure.rs:174:9:174:12 | f(...) | | {EXTERNAL LOCATION} | F::Output[FnOnce] | | closure.rs:174:9:174:12 | f(...) | | {EXTERNAL LOCATION} | i64 | +| closure.rs:174:10:174:12 | ArgList | | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:174:10:174:12 | ArgList | T0 | {EXTERNAL LOCATION} | i64 | | closure.rs:174:11:174:11 | a | | {EXTERNAL LOCATION} | i64 | | closure.rs:177:18:177:18 | f | | closure.rs:177:21:177:37 | impl ... | | closure.rs:177:40:177:40 | a | | closure.rs:177:15:177:15 | T | | closure.rs:177:53:179:5 | { ... } | | {EXTERNAL LOCATION} | i64 | | closure.rs:178:9:178:9 | f | | closure.rs:177:21:177:37 | impl ... | | closure.rs:178:9:178:12 | f(...) | | {EXTERNAL LOCATION} | i64 | +| closure.rs:178:10:178:12 | ArgList | | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:178:10:178:12 | ArgList | T0 | closure.rs:177:15:177:15 | T | | closure.rs:178:11:178:11 | a | | closure.rs:177:15:177:15 | T | | closure.rs:181:42:181:42 | f | | closure.rs:181:18:181:35 | F | | closure.rs:181:48:181:48 | a | | closure.rs:181:15:181:15 | T | | closure.rs:181:61:183:5 | { ... } | | {EXTERNAL LOCATION} | i64 | | closure.rs:182:9:182:9 | f | | closure.rs:181:18:181:35 | F | | closure.rs:182:9:182:12 | f(...) | | {EXTERNAL LOCATION} | i64 | +| closure.rs:182:10:182:12 | ArgList | | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:182:10:182:12 | ArgList | T0 | closure.rs:181:15:181:15 | T | | closure.rs:182:11:182:11 | a | | closure.rs:181:15:181:15 | T | | closure.rs:185:15:206:5 | { ... } | | {EXTERNAL LOCATION} | () | | closure.rs:186:13:186:13 | f | | {EXTERNAL LOCATION} | dyn Fn | | closure.rs:186:13:186:13 | f | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:186:13:186:13 | f | dyn(Args).T0 | {EXTERNAL LOCATION} | i64 | +| closure.rs:186:13:186:13 | f | dyn(Output) | {EXTERNAL LOCATION} | i64 | | closure.rs:186:17:186:21 | \|...\| x | | {EXTERNAL LOCATION} | dyn Fn | | closure.rs:186:17:186:21 | \|...\| x | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:186:17:186:21 | \|...\| x | dyn(Args).T0 | {EXTERNAL LOCATION} | i64 | +| closure.rs:186:17:186:21 | \|...\| x | dyn(Output) | {EXTERNAL LOCATION} | i64 | +| closure.rs:186:18:186:18 | x | | {EXTERNAL LOCATION} | i64 | +| closure.rs:186:21:186:21 | x | | {EXTERNAL LOCATION} | i64 | | closure.rs:187:13:187:14 | _r | | {EXTERNAL LOCATION} | i64 | | closure.rs:187:18:187:32 | apply1(...) | | {EXTERNAL LOCATION} | i64 | | closure.rs:187:25:187:25 | f | | {EXTERNAL LOCATION} | dyn Fn | | closure.rs:187:25:187:25 | f | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:187:25:187:25 | f | dyn(Args).T0 | {EXTERNAL LOCATION} | i64 | +| closure.rs:187:25:187:25 | f | dyn(Output) | {EXTERNAL LOCATION} | i64 | | closure.rs:187:28:187:31 | 1i64 | | {EXTERNAL LOCATION} | i64 | | closure.rs:189:13:189:13 | f | | {EXTERNAL LOCATION} | dyn Fn | | closure.rs:189:13:189:13 | f | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:189:13:189:13 | f | dyn(Args).T0 | {EXTERNAL LOCATION} | i64 | +| closure.rs:189:13:189:13 | f | dyn(Output) | {EXTERNAL LOCATION} | i64 | | closure.rs:189:17:189:21 | \|...\| x | | {EXTERNAL LOCATION} | dyn Fn | | closure.rs:189:17:189:21 | \|...\| x | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:189:17:189:21 | \|...\| x | dyn(Args).T0 | {EXTERNAL LOCATION} | i64 | +| closure.rs:189:17:189:21 | \|...\| x | dyn(Output) | {EXTERNAL LOCATION} | i64 | +| closure.rs:189:18:189:18 | x | | {EXTERNAL LOCATION} | i64 | +| closure.rs:189:21:189:21 | x | | {EXTERNAL LOCATION} | i64 | | closure.rs:190:13:190:14 | _r | | {EXTERNAL LOCATION} | i64 | | closure.rs:190:18:190:32 | apply2(...) | | {EXTERNAL LOCATION} | i64 | | closure.rs:190:25:190:25 | f | | {EXTERNAL LOCATION} | dyn Fn | | closure.rs:190:25:190:25 | f | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:190:25:190:25 | f | dyn(Args).T0 | {EXTERNAL LOCATION} | i64 | +| closure.rs:190:25:190:25 | f | dyn(Output) | {EXTERNAL LOCATION} | i64 | | closure.rs:190:28:190:31 | 2i64 | | {EXTERNAL LOCATION} | i64 | | closure.rs:192:13:192:13 | f | | {EXTERNAL LOCATION} | dyn Fn | | closure.rs:192:13:192:13 | f | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:192:13:192:13 | f | dyn(Args).T0 | {EXTERNAL LOCATION} | i64 | +| closure.rs:192:13:192:13 | f | dyn(Output) | {EXTERNAL LOCATION} | i64 | | closure.rs:192:17:192:21 | \|...\| x | | {EXTERNAL LOCATION} | dyn Fn | | closure.rs:192:17:192:21 | \|...\| x | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:192:17:192:21 | \|...\| x | dyn(Args).T0 | {EXTERNAL LOCATION} | i64 | +| closure.rs:192:17:192:21 | \|...\| x | dyn(Output) | {EXTERNAL LOCATION} | i64 | +| closure.rs:192:18:192:18 | x | | {EXTERNAL LOCATION} | i64 | +| closure.rs:192:21:192:21 | x | | {EXTERNAL LOCATION} | i64 | | closure.rs:193:13:193:14 | _r | | {EXTERNAL LOCATION} | i64 | | closure.rs:193:18:193:33 | apply3(...) | | {EXTERNAL LOCATION} | i64 | | closure.rs:193:25:193:26 | &f | | {EXTERNAL LOCATION} | & | | closure.rs:193:25:193:26 | &f | TRef | {EXTERNAL LOCATION} | dyn Fn | | closure.rs:193:25:193:26 | &f | TRef.dyn(Args) | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:193:25:193:26 | &f | TRef.dyn(Args).T0 | {EXTERNAL LOCATION} | i64 | +| closure.rs:193:25:193:26 | &f | TRef.dyn(Output) | {EXTERNAL LOCATION} | i64 | | closure.rs:193:26:193:26 | f | | {EXTERNAL LOCATION} | dyn Fn | | closure.rs:193:26:193:26 | f | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:193:26:193:26 | f | dyn(Args).T0 | {EXTERNAL LOCATION} | i64 | +| closure.rs:193:26:193:26 | f | dyn(Output) | {EXTERNAL LOCATION} | i64 | | closure.rs:193:29:193:32 | 3i64 | | {EXTERNAL LOCATION} | i64 | | closure.rs:195:13:195:13 | f | | {EXTERNAL LOCATION} | dyn Fn | | closure.rs:195:13:195:13 | f | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:195:13:195:13 | f | dyn(Args).T0 | {EXTERNAL LOCATION} | i64 | +| closure.rs:195:13:195:13 | f | dyn(Output) | {EXTERNAL LOCATION} | i64 | | closure.rs:195:17:195:21 | \|...\| x | | {EXTERNAL LOCATION} | dyn Fn | | closure.rs:195:17:195:21 | \|...\| x | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:195:17:195:21 | \|...\| x | dyn(Args).T0 | {EXTERNAL LOCATION} | i64 | +| closure.rs:195:17:195:21 | \|...\| x | dyn(Output) | {EXTERNAL LOCATION} | i64 | +| closure.rs:195:18:195:18 | x | | {EXTERNAL LOCATION} | i64 | +| closure.rs:195:21:195:21 | x | | {EXTERNAL LOCATION} | i64 | | closure.rs:196:13:196:14 | _r | | {EXTERNAL LOCATION} | i64 | | closure.rs:196:18:196:32 | apply4(...) | | {EXTERNAL LOCATION} | i64 | | closure.rs:196:25:196:25 | f | | {EXTERNAL LOCATION} | dyn Fn | | closure.rs:196:25:196:25 | f | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:196:25:196:25 | f | dyn(Args).T0 | {EXTERNAL LOCATION} | i64 | +| closure.rs:196:25:196:25 | f | dyn(Output) | {EXTERNAL LOCATION} | i64 | | closure.rs:196:28:196:31 | 4i64 | | {EXTERNAL LOCATION} | i64 | | closure.rs:198:17:198:17 | f | | {EXTERNAL LOCATION} | dyn Fn | | closure.rs:198:17:198:17 | f | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | @@ -6640,21 +6843,37 @@ inferType | closure.rs:199:33:199:36 | 5i64 | | {EXTERNAL LOCATION} | i64 | | closure.rs:201:13:201:13 | f | | {EXTERNAL LOCATION} | dyn Fn | | closure.rs:201:13:201:13 | f | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:201:13:201:13 | f | dyn(Args).T0 | {EXTERNAL LOCATION} | i64 | +| closure.rs:201:13:201:13 | f | dyn(Output) | {EXTERNAL LOCATION} | i64 | | closure.rs:201:17:201:21 | \|...\| x | | {EXTERNAL LOCATION} | dyn Fn | | closure.rs:201:17:201:21 | \|...\| x | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:201:17:201:21 | \|...\| x | dyn(Args).T0 | {EXTERNAL LOCATION} | i64 | +| closure.rs:201:17:201:21 | \|...\| x | dyn(Output) | {EXTERNAL LOCATION} | i64 | +| closure.rs:201:18:201:18 | x | | {EXTERNAL LOCATION} | i64 | +| closure.rs:201:21:201:21 | x | | {EXTERNAL LOCATION} | i64 | | closure.rs:202:13:202:14 | _r | | {EXTERNAL LOCATION} | i64 | | closure.rs:202:18:202:32 | apply6(...) | | {EXTERNAL LOCATION} | i64 | | closure.rs:202:25:202:25 | f | | {EXTERNAL LOCATION} | dyn Fn | | closure.rs:202:25:202:25 | f | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:202:25:202:25 | f | dyn(Args).T0 | {EXTERNAL LOCATION} | i64 | +| closure.rs:202:25:202:25 | f | dyn(Output) | {EXTERNAL LOCATION} | i64 | | closure.rs:202:28:202:31 | 6i64 | | {EXTERNAL LOCATION} | i64 | | closure.rs:204:13:204:13 | f | | {EXTERNAL LOCATION} | dyn Fn | | closure.rs:204:13:204:13 | f | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:204:13:204:13 | f | dyn(Args).T0 | {EXTERNAL LOCATION} | i64 | +| closure.rs:204:13:204:13 | f | dyn(Output) | {EXTERNAL LOCATION} | i64 | | closure.rs:204:17:204:21 | \|...\| x | | {EXTERNAL LOCATION} | dyn Fn | | closure.rs:204:17:204:21 | \|...\| x | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:204:17:204:21 | \|...\| x | dyn(Args).T0 | {EXTERNAL LOCATION} | i64 | +| closure.rs:204:17:204:21 | \|...\| x | dyn(Output) | {EXTERNAL LOCATION} | i64 | +| closure.rs:204:18:204:18 | x | | {EXTERNAL LOCATION} | i64 | +| closure.rs:204:21:204:21 | x | | {EXTERNAL LOCATION} | i64 | | closure.rs:205:13:205:14 | _r | | {EXTERNAL LOCATION} | i64 | | closure.rs:205:18:205:32 | apply7(...) | | {EXTERNAL LOCATION} | i64 | | closure.rs:205:25:205:25 | f | | {EXTERNAL LOCATION} | dyn Fn | | closure.rs:205:25:205:25 | f | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:205:25:205:25 | f | dyn(Args).T0 | {EXTERNAL LOCATION} | i64 | +| closure.rs:205:25:205:25 | f | dyn(Output) | {EXTERNAL LOCATION} | i64 | | closure.rs:205:28:205:31 | 7i64 | | {EXTERNAL LOCATION} | i64 | | closure.rs:217:18:217:22 | SelfParam | | {EXTERNAL LOCATION} | & | | closure.rs:217:18:217:22 | SelfParam | TRef | closure.rs:212:5:212:19 | S | @@ -6678,37 +6897,72 @@ inferType | closure.rs:222:19:240:5 | { ... } | | {EXTERNAL LOCATION} | () | | closure.rs:223:13:223:13 | x | | {EXTERNAL LOCATION} | i64 | | closure.rs:223:17:223:20 | 0i64 | | {EXTERNAL LOCATION} | i64 | +| closure.rs:224:13:224:13 | v | | {EXTERNAL LOCATION} | i64 | +| closure.rs:224:17:224:34 | ...::default(...) | | {EXTERNAL LOCATION} | i64 | | closure.rs:225:13:225:13 | s | | closure.rs:212:5:212:19 | S | +| closure.rs:225:13:225:13 | s | T | {EXTERNAL LOCATION} | i64 | | closure.rs:225:17:225:20 | S(...) | | closure.rs:212:5:212:19 | S | +| closure.rs:225:17:225:20 | S(...) | T | {EXTERNAL LOCATION} | i64 | +| closure.rs:225:19:225:19 | v | | {EXTERNAL LOCATION} | i64 | +| closure.rs:226:13:226:16 | _ret | | {EXTERNAL LOCATION} | bool | | closure.rs:226:20:226:20 | s | | closure.rs:212:5:212:19 | S | +| closure.rs:226:20:226:20 | s | T | {EXTERNAL LOCATION} | i64 | +| closure.rs:226:20:226:23 | s(...) | | {EXTERNAL LOCATION} | bool | +| closure.rs:226:21:226:23 | ArgList | | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:226:21:226:23 | ArgList | T0 | {EXTERNAL LOCATION} | i64 | | closure.rs:226:22:226:22 | x | | {EXTERNAL LOCATION} | i64 | | closure.rs:228:13:228:13 | x | | {EXTERNAL LOCATION} | i32 | | closure.rs:228:17:228:20 | 0i32 | | {EXTERNAL LOCATION} | i32 | +| closure.rs:229:13:229:13 | v | | {EXTERNAL LOCATION} | i32 | +| closure.rs:229:17:229:34 | ...::default(...) | | {EXTERNAL LOCATION} | i32 | | closure.rs:230:13:230:13 | s | | closure.rs:212:5:212:19 | S | +| closure.rs:230:13:230:13 | s | T | {EXTERNAL LOCATION} | i32 | | closure.rs:230:17:230:20 | S(...) | | closure.rs:212:5:212:19 | S | +| closure.rs:230:17:230:20 | S(...) | T | {EXTERNAL LOCATION} | i32 | +| closure.rs:230:19:230:19 | v | | {EXTERNAL LOCATION} | i32 | | closure.rs:231:13:231:17 | s_ref | | {EXTERNAL LOCATION} | & | | closure.rs:231:13:231:17 | s_ref | TRef | closure.rs:212:5:212:19 | S | +| closure.rs:231:13:231:17 | s_ref | TRef.T | {EXTERNAL LOCATION} | i32 | | closure.rs:231:21:231:22 | &s | | {EXTERNAL LOCATION} | & | | closure.rs:231:21:231:22 | &s | TRef | closure.rs:212:5:212:19 | S | +| closure.rs:231:21:231:22 | &s | TRef.T | {EXTERNAL LOCATION} | i32 | | closure.rs:231:22:231:22 | s | | closure.rs:212:5:212:19 | S | -| closure.rs:232:13:232:16 | _ret | | {EXTERNAL LOCATION} | F::Output[FnOnce] | +| closure.rs:231:22:231:22 | s | T | {EXTERNAL LOCATION} | i32 | +| closure.rs:232:13:232:16 | _ret | | {EXTERNAL LOCATION} | bool | | closure.rs:232:20:232:24 | s_ref | | {EXTERNAL LOCATION} | & | | closure.rs:232:20:232:24 | s_ref | TRef | closure.rs:212:5:212:19 | S | -| closure.rs:232:20:232:27 | s_ref(...) | | {EXTERNAL LOCATION} | F::Output[FnOnce] | +| closure.rs:232:20:232:24 | s_ref | TRef.T | {EXTERNAL LOCATION} | i32 | +| closure.rs:232:20:232:27 | s_ref(...) | | {EXTERNAL LOCATION} | bool | +| closure.rs:232:25:232:27 | ArgList | | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:232:25:232:27 | ArgList | T0 | {EXTERNAL LOCATION} | i32 | | closure.rs:232:26:232:26 | x | | {EXTERNAL LOCATION} | i32 | | closure.rs:238:13:238:13 | c | | {EXTERNAL LOCATION} | dyn Fn | | closure.rs:238:13:238:13 | c | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:238:13:238:13 | c | dyn(Args).T0 | {EXTERNAL LOCATION} | i32 | +| closure.rs:238:13:238:13 | c | dyn(Output) | {EXTERNAL LOCATION} | i32 | | closure.rs:238:17:238:21 | \|...\| x | | {EXTERNAL LOCATION} | dyn Fn | | closure.rs:238:17:238:21 | \|...\| x | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:238:17:238:21 | \|...\| x | dyn(Args).T0 | {EXTERNAL LOCATION} | i32 | +| closure.rs:238:17:238:21 | \|...\| x | dyn(Output) | {EXTERNAL LOCATION} | i32 | +| closure.rs:238:18:238:18 | x | | {EXTERNAL LOCATION} | i32 | +| closure.rs:238:21:238:21 | x | | {EXTERNAL LOCATION} | i32 | | closure.rs:239:9:239:12 | (...) | | {EXTERNAL LOCATION} | & | | closure.rs:239:9:239:12 | (...) | TRef | {EXTERNAL LOCATION} | dyn Fn | | closure.rs:239:9:239:12 | (...) | TRef.dyn(Args) | {EXTERNAL LOCATION} | (T_1) | -| closure.rs:239:9:239:15 | ...(...) | | {EXTERNAL LOCATION} | F::Output[FnOnce] | +| closure.rs:239:9:239:12 | (...) | TRef.dyn(Args).T0 | {EXTERNAL LOCATION} | i32 | +| closure.rs:239:9:239:12 | (...) | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | +| closure.rs:239:9:239:15 | ...(...) | | {EXTERNAL LOCATION} | i32 | | closure.rs:239:10:239:11 | &c | | {EXTERNAL LOCATION} | & | | closure.rs:239:10:239:11 | &c | TRef | {EXTERNAL LOCATION} | dyn Fn | | closure.rs:239:10:239:11 | &c | TRef.dyn(Args) | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:239:10:239:11 | &c | TRef.dyn(Args).T0 | {EXTERNAL LOCATION} | i32 | +| closure.rs:239:10:239:11 | &c | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | | closure.rs:239:11:239:11 | c | | {EXTERNAL LOCATION} | dyn Fn | | closure.rs:239:11:239:11 | c | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:239:11:239:11 | c | dyn(Args).T0 | {EXTERNAL LOCATION} | i32 | +| closure.rs:239:11:239:11 | c | dyn(Output) | {EXTERNAL LOCATION} | i32 | +| closure.rs:239:13:239:15 | ArgList | | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:239:13:239:15 | ArgList | T0 | {EXTERNAL LOCATION} | i32 | | closure.rs:239:14:239:14 | x | | {EXTERNAL LOCATION} | i32 | | dereference.rs:13:14:13:18 | SelfParam | | {EXTERNAL LOCATION} | & | | dereference.rs:13:14:13:18 | SelfParam | TRef | dereference.rs:5:1:7:1 | MyIntPointer | @@ -9783,14 +10037,21 @@ inferType | main.rs:1341:28:1341:41 | ...::Ok(...) | | {EXTERNAL LOCATION} | Result | | main.rs:1341:28:1341:41 | ...::Ok(...) | T | main.rs:1317:5:1318:14 | S1 | | main.rs:1341:39:1341:40 | S1 | | main.rs:1317:5:1318:14 | S1 | +| main.rs:1343:13:1343:13 | y | | main.rs:1317:5:1318:14 | S1 | | main.rs:1343:17:1343:17 | x | | {EXTERNAL LOCATION} | Result | | main.rs:1343:17:1343:17 | x | T | {EXTERNAL LOCATION} | Result | | main.rs:1343:17:1343:17 | x | T.T | main.rs:1317:5:1318:14 | S1 | | main.rs:1343:17:1343:18 | TryExpr | | {EXTERNAL LOCATION} | Result | | main.rs:1343:17:1343:18 | TryExpr | T | main.rs:1317:5:1318:14 | S1 | | main.rs:1343:17:1343:29 | ... .map(...) | | {EXTERNAL LOCATION} | Result | +| main.rs:1343:17:1343:29 | ... .map(...) | T | main.rs:1317:5:1318:14 | S1 | +| main.rs:1343:17:1343:30 | TryExpr | | main.rs:1317:5:1318:14 | S1 | | main.rs:1343:24:1343:28 | \|...\| s | | {EXTERNAL LOCATION} | dyn Fn | | main.rs:1343:24:1343:28 | \|...\| s | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | +| main.rs:1343:24:1343:28 | \|...\| s | dyn(Args).T0 | main.rs:1317:5:1318:14 | S1 | +| main.rs:1343:24:1343:28 | \|...\| s | dyn(Output) | main.rs:1317:5:1318:14 | S1 | +| main.rs:1343:25:1343:25 | s | | main.rs:1317:5:1318:14 | S1 | +| main.rs:1343:28:1343:28 | s | | main.rs:1317:5:1318:14 | S1 | | main.rs:1344:9:1344:22 | ...::Ok(...) | | {EXTERNAL LOCATION} | Result | | main.rs:1344:9:1344:22 | ...::Ok(...) | E | main.rs:1320:5:1321:14 | S2 | | main.rs:1344:9:1344:22 | ...::Ok(...) | T | main.rs:1317:5:1318:14 | S1 | @@ -9806,26 +10067,36 @@ inferType | main.rs:1350:21:1350:25 | input | E | main.rs:1317:5:1318:14 | S1 | | main.rs:1350:21:1350:25 | input | T | main.rs:1349:20:1349:27 | T | | main.rs:1350:21:1350:26 | TryExpr | | main.rs:1349:20:1349:27 | T | +| main.rs:1351:13:1351:18 | mapped | | main.rs:1349:20:1349:27 | T | | main.rs:1351:22:1351:38 | ...::Ok(...) | | {EXTERNAL LOCATION} | Result | | main.rs:1351:22:1351:38 | ...::Ok(...) | E | main.rs:1317:5:1318:14 | S1 | | main.rs:1351:22:1351:38 | ...::Ok(...) | T | main.rs:1349:20:1349:27 | T | | main.rs:1351:22:1354:10 | ... .and_then(...) | | {EXTERNAL LOCATION} | Result | | main.rs:1351:22:1354:10 | ... .and_then(...) | E | main.rs:1317:5:1318:14 | S1 | +| main.rs:1351:22:1354:10 | ... .and_then(...) | T | main.rs:1349:20:1349:27 | T | +| main.rs:1351:22:1354:11 | TryExpr | | main.rs:1349:20:1349:27 | T | | main.rs:1351:33:1351:37 | value | | main.rs:1349:20:1349:27 | T | | main.rs:1351:49:1354:9 | \|...\| ... | | {EXTERNAL LOCATION} | dyn Fn | | main.rs:1351:49:1354:9 | \|...\| ... | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | +| main.rs:1351:49:1354:9 | \|...\| ... | dyn(Args).T0 | main.rs:1349:20:1349:27 | T | | main.rs:1351:49:1354:9 | \|...\| ... | dyn(Output) | {EXTERNAL LOCATION} | Result | | main.rs:1351:49:1354:9 | \|...\| ... | dyn(Output).E | main.rs:1317:5:1318:14 | S1 | +| main.rs:1351:49:1354:9 | \|...\| ... | dyn(Output).T | main.rs:1349:20:1349:27 | T | +| main.rs:1351:50:1351:50 | v | | main.rs:1349:20:1349:27 | T | | main.rs:1351:53:1354:9 | { ... } | | {EXTERNAL LOCATION} | Result | | main.rs:1351:53:1354:9 | { ... } | E | main.rs:1317:5:1318:14 | S1 | +| main.rs:1351:53:1354:9 | { ... } | T | main.rs:1349:20:1349:27 | T | | main.rs:1352:13:1352:31 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:1352:22:1352:27 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:1352:22:1352:27 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | | main.rs:1352:22:1352:30 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | main.rs:1352:22:1352:30 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:1352:22:1352:30 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1352:30:1352:30 | v | | main.rs:1349:20:1349:27 | T | | main.rs:1353:13:1353:34 | ...::Ok::<...>(...) | | {EXTERNAL LOCATION} | Result | | main.rs:1353:13:1353:34 | ...::Ok::<...>(...) | E | main.rs:1317:5:1318:14 | S1 | +| main.rs:1353:13:1353:34 | ...::Ok::<...>(...) | T | main.rs:1349:20:1349:27 | T | +| main.rs:1353:33:1353:33 | v | | main.rs:1349:20:1349:27 | T | | main.rs:1355:9:1355:23 | ...::Err(...) | | {EXTERNAL LOCATION} | Result | | main.rs:1355:9:1355:23 | ...::Err(...) | E | main.rs:1317:5:1318:14 | S1 | | main.rs:1355:9:1355:23 | ...::Err(...) | T | main.rs:1349:20:1349:27 | T | @@ -11396,14 +11667,21 @@ inferType | main.rs:2261:25:2261:25 | 3 | | {EXTERNAL LOCATION} | i32 | | main.rs:2261:28:2261:29 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:2262:9:2262:44 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2262:13:2262:13 | i | | {EXTERNAL LOCATION} | i32 | | main.rs:2262:18:2262:26 | [...] | | {EXTERNAL LOCATION} | [;] | | main.rs:2262:18:2262:26 | [...] | TArray | {EXTERNAL LOCATION} | i32 | | main.rs:2262:18:2262:41 | ... .map(...) | | {EXTERNAL LOCATION} | [;] | +| main.rs:2262:18:2262:41 | ... .map(...) | TArray | {EXTERNAL LOCATION} | i32 | | main.rs:2262:19:2262:19 | 1 | | {EXTERNAL LOCATION} | i32 | | main.rs:2262:22:2262:22 | 2 | | {EXTERNAL LOCATION} | i32 | | main.rs:2262:25:2262:25 | 3 | | {EXTERNAL LOCATION} | i32 | | main.rs:2262:32:2262:40 | \|...\| ... | | {EXTERNAL LOCATION} | dyn Fn | | main.rs:2262:32:2262:40 | \|...\| ... | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | +| main.rs:2262:32:2262:40 | \|...\| ... | dyn(Args).T0 | {EXTERNAL LOCATION} | i32 | +| main.rs:2262:32:2262:40 | \|...\| ... | dyn(Output) | {EXTERNAL LOCATION} | i32 | +| main.rs:2262:33:2262:33 | x | | {EXTERNAL LOCATION} | i32 | +| main.rs:2262:36:2262:36 | x | | {EXTERNAL LOCATION} | i32 | +| main.rs:2262:36:2262:40 | ... + ... | | {EXTERNAL LOCATION} | i32 | | main.rs:2262:40:2262:40 | 1 | | {EXTERNAL LOCATION} | i32 | | main.rs:2262:43:2262:44 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:2263:9:2263:41 | for ... in ... { ... } | | {EXTERNAL LOCATION} | () | @@ -12660,13 +12938,20 @@ inferType | main.rs:2775:13:2775:16 | self | TRef.T | main.rs:2773:10:2773:17 | GT | | main.rs:2775:13:2775:18 | self.0 | | main.rs:2773:10:2773:17 | GT | | main.rs:2779:15:2783:5 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2780:13:2780:13 | v | | {EXTERNAL LOCATION} | i64 | +| main.rs:2780:17:2780:34 | ...::default(...) | | {EXTERNAL LOCATION} | i64 | | main.rs:2781:13:2781:13 | g | | main.rs:2763:5:2763:21 | Gen | +| main.rs:2781:13:2781:13 | g | T | {EXTERNAL LOCATION} | i64 | | main.rs:2781:17:2781:22 | Gen(...) | | main.rs:2763:5:2763:21 | Gen | +| main.rs:2781:17:2781:22 | Gen(...) | T | {EXTERNAL LOCATION} | i64 | +| main.rs:2781:21:2781:21 | v | | {EXTERNAL LOCATION} | i64 | | main.rs:2782:13:2782:13 | _ | | {EXTERNAL LOCATION} | bool | | main.rs:2782:17:2782:26 | my_get(...) | | {EXTERNAL LOCATION} | bool | | main.rs:2782:24:2782:25 | &g | | {EXTERNAL LOCATION} | & | | main.rs:2782:24:2782:25 | &g | TRef | main.rs:2763:5:2763:21 | Gen | +| main.rs:2782:24:2782:25 | &g | TRef.T | {EXTERNAL LOCATION} | i64 | | main.rs:2782:25:2782:25 | g | | main.rs:2763:5:2763:21 | Gen | +| main.rs:2782:25:2782:25 | g | T | {EXTERNAL LOCATION} | i64 | | main.rs:2786:11:2821:1 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:2787:5:2787:21 | ...::f(...) | | {EXTERNAL LOCATION} | () | | main.rs:2788:5:2788:20 | ...::f(...) | | main.rs:72:5:72:21 | Foo | @@ -15525,12 +15810,18 @@ inferType | regressions.rs:150:24:153:5 | { ... } | | regressions.rs:136:5:136:22 | S2 | | regressions.rs:150:24:153:5 | { ... } | T2 | regressions.rs:135:5:135:14 | S1 | | regressions.rs:151:13:151:13 | x | | regressions.rs:136:5:136:22 | S2 | +| regressions.rs:151:13:151:13 | x | T2 | {EXTERNAL LOCATION} | & | | regressions.rs:151:13:151:13 | x | T2 | regressions.rs:135:5:135:14 | S1 | +| regressions.rs:151:13:151:13 | x | T2.TRef | regressions.rs:135:5:135:14 | S1 | | regressions.rs:151:17:151:18 | S1 | | regressions.rs:135:5:135:14 | S1 | | regressions.rs:151:17:151:25 | S1.into() | | regressions.rs:136:5:136:22 | S2 | +| regressions.rs:151:17:151:25 | S1.into() | T2 | {EXTERNAL LOCATION} | & | | regressions.rs:151:17:151:25 | S1.into() | T2 | regressions.rs:135:5:135:14 | S1 | +| regressions.rs:151:17:151:25 | S1.into() | T2.TRef | regressions.rs:135:5:135:14 | S1 | | regressions.rs:152:9:152:9 | x | | regressions.rs:136:5:136:22 | S2 | +| regressions.rs:152:9:152:9 | x | T2 | {EXTERNAL LOCATION} | & | | regressions.rs:152:9:152:9 | x | T2 | regressions.rs:135:5:135:14 | S1 | +| regressions.rs:152:9:152:9 | x | T2.TRef | regressions.rs:135:5:135:14 | S1 | | regressions.rs:164:16:164:19 | SelfParam | | regressions.rs:158:5:158:19 | S | | regressions.rs:164:16:164:19 | SelfParam | T | regressions.rs:160:10:160:10 | T | | regressions.rs:164:22:164:25 | _rhs | | regressions.rs:158:5:158:19 | S | diff --git a/rust/ql/test/utils-tests/modelgenerator/option.rs b/rust/ql/test/utils-tests/modelgenerator/option.rs index 701073564b18..afe76e2088e5 100644 --- a/rust/ql/test/utils-tests/modelgenerator/option.rs +++ b/rust/ql/test/utils-tests/modelgenerator/option.rs @@ -149,6 +149,8 @@ impl MyOption { // summary=::map;Argument[0].ReturnValue;ReturnValue.Field[test::option::MyOption::MySome(0)];value;dfc-generated // summary=::map;Argument[self].Field[test::option::MyOption::MySome(0)];Argument[0].Parameter[0];value;dfc-generated + // The spurious model below happens because `f` incorrectly resolves to the closure passed in from `as_deref` + // SPURIOUS-summary=::map;Argument[self].Field[test::option::MyOption::MySome(0)].Reference;ReturnValue.Field[test::option::MyOption::MySome(0)].Reference;taint;dfc-generated pub fn map(self, f: F) -> MyOption where F: FnOnce(T) -> U, @@ -217,7 +219,7 @@ impl MyOption { } } - // MISSING: `Deref` trait + // summary=::as_deref;Argument[self].Reference.Field[test::option::MyOption::MySome(0)];ReturnValue.Field[test::option::MyOption::MySome(0)].Reference;taint;dfc-generated pub fn as_deref(&self) -> MyOption<&T::Target> where T: Deref, diff --git a/shared/typeinference/codeql/typeinference/internal/TypeInference.qll b/shared/typeinference/codeql/typeinference/internal/TypeInference.qll index 0b23b08aad67..888ca65fa98a 100644 --- a/shared/typeinference/codeql/typeinference/internal/TypeInference.qll +++ b/shared/typeinference/codeql/typeinference/internal/TypeInference.qll @@ -964,7 +964,7 @@ module Make1 Input1> { /** * Holds if `term` does not satisfy `constraint`. * - * This predicate is an approximation of `not hasConstraintMention(term, constraint)`. + * This predicate is an approximation of `not hasConstraintMention(term, _, _, constraint, _, _)`. */ pragma[nomagic] private predicate hasNotConstraintMention( @@ -1072,7 +1072,7 @@ module Make1 Input1> { } pragma[nomagic] - private predicate satisfiesConstraintTypeMention1( + private predicate satisfiesConstraint0( Term term, Constraint constraint, TypeAbstraction abs, TypeMention sub, TypePath path, Type t ) { @@ -1100,37 +1100,55 @@ module Make1 Input1> { } pragma[inline] - private predicate satisfiesConstraintTypeMentionInline( - Term term, Constraint constraint, TypeAbstraction abs, TypePath path, - TypePath pathToTypeParamInSub + private predicate satisfiesConstraintInline( + Term term, Constraint constraint, TypeAbstraction abs, TypePath pathToTypeParamInConstraint, + TypePath pathToTypeParamInSub, TypeParameter tp ) { - exists(TypeMention sub, TypeParameter tp | - satisfiesConstraintTypeMention1(term, constraint, abs, sub, path, tp) and + exists(TypeMention sub | + satisfiesConstraint0(term, constraint, abs, sub, pathToTypeParamInConstraint, tp) and tp = abs.getATypeParameter() and sub.getTypeAt(pathToTypeParamInSub) = tp ) } + /** + * Holds if `term` satisfies the constraint `constraint` with _some_ type + * parameter at `pathToTypeParamInConstraint`, and the type parameter occurs + * at `pathToTypeParamInSub` in a satisfying condition. + * + * Example: + * + * ```rust + * struct MyThing { ... } + * + * trait MyTrait { ... } + * + * impl MyTrait for MyThing { ... } + * + * fn foo>(x: T) { ... } + * + * let x = MyThing(Default::default()); + * foo(x); + * ``` + * + * At `term` = `foo(x)`, we have `constraint = MyTrait`, and because of the + * `impl` block, `pathToTypeParamInConstraint` = `"B"`, and + * `pathToTypeParamInSub` = `"A"`. + */ pragma[nomagic] - private predicate satisfiesConstraintTypeMention( - Term term, Constraint constraint, TypePath path, TypePath pathToTypeParamInSub - ) { - satisfiesConstraintTypeMentionInline(term, constraint, _, path, pathToTypeParamInSub) - } - - pragma[nomagic] - private predicate satisfiesConstraintTypeMentionThrough( - Term term, Constraint constraint, TypeAbstraction abs, TypePath path, + predicate satisfiesConstraintAtTypeParameter( + Term term, Constraint constraint, TypePath pathToTypeParamInConstraint, TypePath pathToTypeParamInSub ) { - satisfiesConstraintTypeMentionInline(term, constraint, abs, path, pathToTypeParamInSub) + satisfiesConstraintInline(term, constraint, _, pathToTypeParamInConstraint, + pathToTypeParamInSub, _) } pragma[inline] - private predicate satisfiesConstraintTypeNonTypeParamInline( + private predicate satisfiesConstraintNonTypeParamInline( Term term, TypeAbstraction abs, Constraint constraint, TypePath path, Type t ) { - satisfiesConstraintTypeMention1(term, constraint, abs, _, path, t) and + satisfiesConstraint0(term, constraint, abs, _, path, t) and not t = abs.getATypeParameter() } @@ -1142,15 +1160,14 @@ module Make1 Input1> { } /** - * Holds if the type tree at `term` satisfies the constraint `constraint` - * with the type `t` at `path`. + * Holds if `term` satisfies the constraint `constraint` with the type `t` at `path`. */ pragma[nomagic] - predicate satisfiesConstraintType(Term term, Constraint constraint, TypePath path, Type t) { - satisfiesConstraintTypeNonTypeParamInline(term, _, constraint, path, t) + predicate satisfiesConstraint(Term term, Constraint constraint, TypePath path, Type t) { + satisfiesConstraintNonTypeParamInline(term, _, constraint, path, t) or exists(TypePath prefix0, TypePath pathToTypeParamInSub, TypePath suffix | - satisfiesConstraintTypeMention(term, constraint, prefix0, pathToTypeParamInSub) and + satisfiesConstraintAtTypeParameter(term, constraint, prefix0, pathToTypeParamInSub) and getTypeAt(term, pathToTypeParamInSub.appendInverse(suffix)) = t and path = prefix0.append(suffix) ) @@ -1159,25 +1176,34 @@ module Make1 Input1> { t = getTypeAt(term, path) } + pragma[nomagic] + private predicate satisfiesConstraintThrough0( + Term term, Constraint constraint, TypeAbstraction abs, TypePath pathToTypeParamInConstraint, + TypePath pathToTypeParamInSub + ) { + satisfiesConstraintInline(term, constraint, abs, pathToTypeParamInConstraint, + pathToTypeParamInSub, _) + } + /** - * Holds if the type tree at `term` satisfies the constraint `constraint` - * through `abs` with the type `t` at `path`. + * Holds if `term` satisfies the constraint `constraint` through `abs` with + * the type `t` at `path`. */ pragma[nomagic] - predicate satisfiesConstraintTypeThrough( + predicate satisfiesConstraintThrough( Term term, TypeAbstraction abs, Constraint constraint, TypePath path, Type t ) { - satisfiesConstraintTypeNonTypeParamInline(term, abs, constraint, path, t) + satisfiesConstraintNonTypeParamInline(term, abs, constraint, path, t) or exists(TypePath prefix0, TypePath pathToTypeParamInSub, TypePath suffix | - satisfiesConstraintTypeMentionThrough(term, constraint, abs, prefix0, pathToTypeParamInSub) and + satisfiesConstraintThrough0(term, constraint, abs, prefix0, pathToTypeParamInSub) and getTypeAt(term, pathToTypeParamInSub.appendInverse(suffix)) = t and path = prefix0.append(suffix) ) } /** - * Holds if the type tree at `term` does _not_ satisfy the constraint `constraint`. + * Holds if `term` does _not_ satisfy the constraint `constraint`. * * This is an approximation of `not satisfiesConstraintType(term, constraint, _, _)`, * but defined without a negative occurrence of `satisfiesConstraintType`. @@ -1495,7 +1521,7 @@ module Make1 Input1> { TypeMention constraint ) { target = a.getTarget(e) and - typeParameterConstraintHasTypeParameter(target, apos, path, constraint, _, _) + typeParameterHasConstraint(target, apos, _, path, constraint) } private newtype TRelevantAccess = @@ -1556,13 +1582,40 @@ module Make1 Input1> { SatisfiesTypeParameterConstraintInput>; pragma[nomagic] - predicate satisfiesConstraintType( + predicate satisfiesConstraintAtTypeParameter( + Access a, AccessEnvironment e, Declaration target, AccessPosition apos, TypePath prefix, + TypeMention constraint, TypePath pathToTypeParamInConstraint, + TypePath pathToTypeParamInSub + ) { + exists(RelevantAccess ra | + ra = MkRelevantAccess(a, apos, e, prefix) and + SatisfiesTypeParameterConstraint::satisfiesConstraintAtTypeParameter(ra, constraint, + pathToTypeParamInConstraint, pathToTypeParamInSub) and + constraint = ra.getConstraint(target) + ) + } + + pragma[nomagic] + predicate satisfiesConstraint( Access a, AccessEnvironment e, Declaration target, AccessPosition apos, TypePath prefix, TypeMention constraint, TypePath path, Type t ) { exists(RelevantAccess ra | ra = MkRelevantAccess(a, apos, e, prefix) and - SatisfiesTypeParameterConstraint::satisfiesConstraintType(ra, constraint, path, t) and + SatisfiesTypeParameterConstraint::satisfiesConstraint(ra, constraint, path, t) and + constraint = ra.getConstraint(target) + ) + } + + pragma[nomagic] + predicate satisfiesConstraintThrough( + Access a, AccessEnvironment e, Declaration target, AccessPosition apos, TypePath prefix, + TypeAbstraction abs, TypeMention constraint, TypePath path, Type t + ) { + exists(RelevantAccess ra | + ra = MkRelevantAccess(a, apos, e, prefix) and + SatisfiesTypeParameterConstraint::satisfiesConstraintThrough(ra, abs, constraint, path, + t) and constraint = ra.getConstraint(target) ) } @@ -1707,7 +1760,7 @@ module Make1 Input1> { not exists(getTypeArgument(a, target, tp, _)) and exists(TypeMention constraint, AccessPosition apos, TypePath pathToTp, TypePath pathToTp2 | typeParameterConstraintHasTypeParameter(target, apos, pathToTp2, constraint, pathToTp, tp) and - AccessConstraint::satisfiesConstraintType(a, e, target, apos, pathToTp2, constraint, + AccessConstraint::satisfiesConstraint(a, e, target, apos, pathToTp2, constraint, pathToTp.appendInverse(path), t) ) } @@ -1785,6 +1838,82 @@ module Make1 Input1> { not result instanceof TypeParameter ) ) + or + exists( + Declaration target, TypePath prefix, TypeMention constraint, + TypePath pathToTypeParamInConstraint, TypePath pathToTypeParamInSub + | + AccessConstraint::satisfiesConstraintAtTypeParameter(a, e, target, apos, prefix, + constraint, pathToTypeParamInConstraint, pathToTypeParamInSub) + | + exists(TypePath suffix | + /* + * Example: + * + * ```rust + * struct MyThing { ... } + * + * trait MyTrait { ... } + * + * impl MyTrait for MyThing { ... } + * + * fn foo>(x: T) { ... } + * + * let x = MyThing(Default::default()); + * foo(x); + * ``` + * + * At `term` = `foo(x)`, we have + * - `constraint = MyTrait`, + * - `pathToTypeParamInConstraint` = `"B"`, + * - `pathToTypeParamInSub` = `"A"`, + * - `prefix` = `suffix` = `""`, and + * - `result` = `i32`. + * + * That is, it allows us to infer that the type of `x` is `MyThing`. + */ + + result = constraint.getTypeAt(pathToTypeParamInConstraint.appendInverse(suffix)) and + not result instanceof TypeParameter and + path = prefix.append(pathToTypeParamInSub.append(suffix)) + ) + or + exists(TypeParameter tp, TypePath suffix, TypePath mid, TypePath pathToTp | + /* + * Example: + * + * ```rust + * struct MyThing { ... } + * + * trait MyTrait { ... } + * + * impl MyTrait for MyThing { ... } + * + * fn bar>(x: T1, y: T2) {} + * + * let x : i32 = ...; + * let y = MyThing(Default::default()); + * bar(x, y); + * ``` + * + * At `term` = `bar(x, y)`, we have + * - `constraint = MyTrait`, + * - `pathToTypeParamInConstraint` = `"B"`, + * - `pathToTypeParamInSub` = `"A"`, + * - `prefix` = `suffix` = `mid` = `""`, + * - `tp = T1`, + * - `pathToTp` = `"B"`, and + * - `result` = `i32`. + * + * That is, it allows us to infer that the type of `y` is `MyThing`. + */ + + typeMatch(a, e, target, suffix, result, tp) and + typeParameterConstraintHasTypeParameter(target, apos, _, constraint, pathToTp, tp) and + pathToTp = pathToTypeParamInConstraint.appendInverse(mid) and + path = prefix.append(pathToTypeParamInSub.append(mid).append(suffix)) + ) + ) } } From b3285c6ae2274aaa456a2fe152945f38bd16f8af Mon Sep 17 00:00:00 2001 From: Owen Mansel-Chan Date: Fri, 27 Mar 2026 11:35:22 +0000 Subject: [PATCH 020/157] Make description of `acceptingvalue` column clearer --- cpp/ql/lib/semmle/code/cpp/dataflow/ExternalFlow.qll | 5 ++--- .../semmle/code/csharp/dataflow/internal/ExternalFlow.qll | 4 ++-- go/ql/lib/semmle/go/dataflow/ExternalFlow.qll | 5 ++--- java/ql/lib/semmle/code/java/dataflow/ExternalFlow.qll | 4 ++-- 4 files changed, 8 insertions(+), 10 deletions(-) diff --git a/cpp/ql/lib/semmle/code/cpp/dataflow/ExternalFlow.qll b/cpp/ql/lib/semmle/code/cpp/dataflow/ExternalFlow.qll index ed40d3919173..3fe9f6aaedfc 100644 --- a/cpp/ql/lib/semmle/code/cpp/dataflow/ExternalFlow.qll +++ b/cpp/ql/lib/semmle/code/cpp/dataflow/ExternalFlow.qll @@ -91,9 +91,8 @@ * - flow from the _second_ indirection of the 0th argument to the first * indirection of the return value, etc. * 8. The `acceptingvalue` column of barrier guard models specifies the condition - * under which the guard accepts or blocks flow. It can be one of "true" or - * "false". In the future "no-exception", "not-zero", "null", "not-null" may be - * supported. + * under which the guard blocks flow. It can be one of "true" or "false". In + * the future "no-exception", "not-zero", "null", "not-null" may be supported. * 9. The `kind` column is a tag that can be referenced from QL to determine to * which classes the interpreted elements should be added. For example, for * sources "remote" indicates a default remote flow source, and for summaries diff --git a/csharp/ql/lib/semmle/code/csharp/dataflow/internal/ExternalFlow.qll b/csharp/ql/lib/semmle/code/csharp/dataflow/internal/ExternalFlow.qll index 95b9578e4f3b..17cdcc1bf0b9 100644 --- a/csharp/ql/lib/semmle/code/csharp/dataflow/internal/ExternalFlow.qll +++ b/csharp/ql/lib/semmle/code/csharp/dataflow/internal/ExternalFlow.qll @@ -74,8 +74,8 @@ * - "Property[p]": Selects the contents of property `p`. * * 8. The `acceptingvalue` column of barrier guard models specifies the condition - * under which the guard accepts or blocks flow. It can be one of "true" or - * "false", "no-exception", "not-zero", "null", "not-null". + * under which the guard blocks flow. It can be one of "true" or "false". In + * the future "no-exception", "not-zero", "null", "not-null" may be supported. * 9. The `kind` column is a tag that can be referenced from QL to determine to * which classes the interpreted elements should be added. For example, for * sources "remote" indicates a default remote flow source, and for summaries diff --git a/go/ql/lib/semmle/go/dataflow/ExternalFlow.qll b/go/ql/lib/semmle/go/dataflow/ExternalFlow.qll index 05379c620fbb..0ad28bac5332 100644 --- a/go/ql/lib/semmle/go/dataflow/ExternalFlow.qll +++ b/go/ql/lib/semmle/go/dataflow/ExternalFlow.qll @@ -83,9 +83,8 @@ * - "Dereference": Selects the value referenced by a pointer. * * 8. The `acceptingvalue` column of barrier guard models specifies the condition - * under which the guard accepts or blocks flow. It can be one of "true" or - * "false". In the future "no-exception", "not-zero", "null", "not-null" may be - * supported. + * under which the guard blocks flow. It can be one of "true" or "false". In + * the future "no-exception", "not-zero", "null", "not-null" may be supported. * 9. The `kind` column is a tag that can be referenced from QL to determine to * which classes the interpreted elements should be added. For example, for * sources "remote" indicates a default remote flow source, and for summaries diff --git a/java/ql/lib/semmle/code/java/dataflow/ExternalFlow.qll b/java/ql/lib/semmle/code/java/dataflow/ExternalFlow.qll index 8f6d1a7855a3..6ad4a5938a3b 100644 --- a/java/ql/lib/semmle/code/java/dataflow/ExternalFlow.qll +++ b/java/ql/lib/semmle/code/java/dataflow/ExternalFlow.qll @@ -74,8 +74,8 @@ * - "ReturnValue": Selects the return value of a call to the selected element. * - "Element": Selects the collection elements of the selected element. * 8. The `acceptingvalue` column of barrier guard models specifies the condition - * under which the guard accepts or blocks flow. It can be one of "true" or - * "false", "no-exception", "not-zero", "null", "not-null". + * under which the guard blocks flow. It can be one of "true" or "false". In + * the future "no-exception", "not-zero", "null", "not-null" may be supported. * 9. The `kind` column is a tag that can be referenced from QL to determine to * which classes the interpreted elements should be added. For example, for * sources "remote" indicates a default remote flow source, and for summaries From 60f9ce4ce7485269027caefacd2fa5ee73099d90 Mon Sep 17 00:00:00 2001 From: Taus Date: Fri, 20 Mar 2026 13:55:58 +0000 Subject: [PATCH 021/157] Python: Port UnreachableCode.ql --- python/ql/src/Statements/UnreachableCode.ql | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) diff --git a/python/ql/src/Statements/UnreachableCode.ql b/python/ql/src/Statements/UnreachableCode.ql index 55582ed2f061..200e073cff6b 100644 --- a/python/ql/src/Statements/UnreachableCode.ql +++ b/python/ql/src/Statements/UnreachableCode.ql @@ -13,7 +13,7 @@ */ import python -private import LegacyPointsTo +private import semmle.python.ApiGraphs predicate typing_import(ImportingStmt is) { exists(Module m | @@ -34,11 +34,7 @@ predicate unique_yield(Stmt s) { /** Holds if `contextlib.suppress` may be used in the same scope as `s` */ predicate suppression_in_scope(Stmt s) { exists(With w | - w.getContextExpr() - .(Call) - .getFunc() - .(ExprWithPointsTo) - .pointsTo(Value::named("contextlib.suppress")) and + w.getContextExpr() = API::moduleImport("contextlib").getMember("suppress").getACall().asExpr() and w.getScope() = s.getScope() ) } From 0ea80ac184013820dbd2da2e5b4ba24c8ea92f3d Mon Sep 17 00:00:00 2001 From: Taus Date: Fri, 20 Feb 2026 15:03:15 +0000 Subject: [PATCH 022/157] Python: Port UnusedExceptionObject.ql Depending on whether other queries depend on this, we may end up moving the exception utility functions to a more central location. --- .../src/Statements/UnusedExceptionObject.ql | 46 +++++++++++++++++-- 1 file changed, 42 insertions(+), 4 deletions(-) diff --git a/python/ql/src/Statements/UnusedExceptionObject.ql b/python/ql/src/Statements/UnusedExceptionObject.ql index 9a6a3650b7e6..890cdc963aca 100644 --- a/python/ql/src/Statements/UnusedExceptionObject.ql +++ b/python/ql/src/Statements/UnusedExceptionObject.ql @@ -12,11 +12,49 @@ */ import python -private import LegacyPointsTo +private import semmle.python.dataflow.new.internal.DataFlowDispatch +private import semmle.python.dataflow.new.internal.Builtins +private import semmle.python.ApiGraphs -from Call call, ClassValue ex +/** + * Holds if `cls` is a user-defined exception class, i.e. it transitively + * extends one of the builtin exception base classes. + */ +predicate isUserDefinedExceptionClass(Class cls) { + cls.getABase() = + API::builtin(["BaseException", "Exception"]).getAValueReachableFromSource().asExpr() + or + isUserDefinedExceptionClass(getADirectSuperclass(cls)) +} + +/** + * Gets the name of a builtin exception class. + */ +string getBuiltinExceptionName() { + result = Builtins::getBuiltinName() and + ( + result.matches("%Error") or + result.matches("%Exception") or + result.matches("%Warning") or + result = + ["GeneratorExit", "KeyboardInterrupt", "StopIteration", "StopAsyncIteration", "SystemExit"] + ) +} + +/** + * Holds if `call` is an instantiation of an exception class. + */ +predicate isExceptionInstantiation(Call call) { + exists(Class cls | + classTracker(cls).asExpr() = call.getFunc() and + isUserDefinedExceptionClass(cls) + ) + or + call.getFunc() = API::builtin(getBuiltinExceptionName()).getAValueReachableFromSource().asExpr() +} + +from Call call where - call.getFunc().(ExprWithPointsTo).pointsTo(ex) and - ex.getASuperType() = ClassValue::exception() and + isExceptionInstantiation(call) and exists(ExprStmt s | s.getValue() = call) select call, "Instantiating an exception, but not raising it, has no effect." From 47d24632e64859e00eeeb043231604ebb8c58a3d Mon Sep 17 00:00:00 2001 From: Taus Date: Fri, 20 Feb 2026 14:54:19 +0000 Subject: [PATCH 023/157] Python: Port ShouldUseWithStatement.ql Only trivial test changes. --- python/ql/src/Statements/ShouldUseWithStatement.ql | 14 ++++---------- .../general/ShouldUseWithStatement.expected | 2 +- 2 files changed, 5 insertions(+), 11 deletions(-) diff --git a/python/ql/src/Statements/ShouldUseWithStatement.ql b/python/ql/src/Statements/ShouldUseWithStatement.ql index eb5cf9237d57..20bf053f6daa 100644 --- a/python/ql/src/Statements/ShouldUseWithStatement.ql +++ b/python/ql/src/Statements/ShouldUseWithStatement.ql @@ -13,7 +13,7 @@ */ import python -private import LegacyPointsTo +private import semmle.python.dataflow.new.internal.DataFlowDispatch predicate calls_close(Call c) { exists(Attribute a | c.getFunc() = a and a.getName() = "close") } @@ -23,18 +23,12 @@ predicate only_stmt_in_finally(Try t, Call c) { ) } -predicate points_to_context_manager(ControlFlowNodeWithPointsTo f, ClassValue cls) { - forex(Value v | f.pointsTo(v) | v.getClass() = cls) and - cls.isContextManager() -} - -from Call close, Try t, ClassValue cls +from Call close, Try t, Class cls where only_stmt_in_finally(t, close) and calls_close(close) and - exists(ControlFlowNode f | f = close.getFunc().getAFlowNode().(AttrNode).getObject() | - points_to_context_manager(f, cls) - ) + classInstanceTracker(cls).asExpr() = close.getFunc().(Attribute).getObject() and + DuckTyping::isContextManager(cls) select close, "Instance of context-manager class $@ is closed in a finally block. Consider using 'with' statement.", cls, cls.getName() diff --git a/python/ql/test/query-tests/Statements/general/ShouldUseWithStatement.expected b/python/ql/test/query-tests/Statements/general/ShouldUseWithStatement.expected index d062717bbf25..50ff6cc1f914 100644 --- a/python/ql/test/query-tests/Statements/general/ShouldUseWithStatement.expected +++ b/python/ql/test/query-tests/Statements/general/ShouldUseWithStatement.expected @@ -1 +1 @@ -| test.py:168:9:168:17 | Attribute() | Instance of context-manager class $@ is closed in a finally block. Consider using 'with' statement. | test.py:151:1:151:17 | class CM | CM | +| test.py:168:9:168:17 | Attribute() | Instance of context-manager class $@ is closed in a finally block. Consider using 'with' statement. | test.py:151:1:151:17 | Class CM | CM | From bb9873dc8fff136f5e119400ca9cc67f08d0cdb2 Mon Sep 17 00:00:00 2001 From: Geoffrey White <40627776+geoffw0@users.noreply.github.com> Date: Fri, 27 Mar 2026 16:40:45 +0000 Subject: [PATCH 024/157] C++: Increase the query precision to high. --- .../Underspecified Functions/ImplicitFunctionDeclaration.ql | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cpp/ql/src/Likely Bugs/Underspecified Functions/ImplicitFunctionDeclaration.ql b/cpp/ql/src/Likely Bugs/Underspecified Functions/ImplicitFunctionDeclaration.ql index 007ef71a1630..0cf6c8b3714e 100644 --- a/cpp/ql/src/Likely Bugs/Underspecified Functions/ImplicitFunctionDeclaration.ql +++ b/cpp/ql/src/Likely Bugs/Underspecified Functions/ImplicitFunctionDeclaration.ql @@ -5,7 +5,7 @@ * may lead to unpredictable behavior. * @kind problem * @problem.severity warning - * @precision medium + * @precision high * @id cpp/implicit-function-declaration * @tags correctness * maintainability From 50681a3c42fb901cd231e0988c1f3047acbff075 Mon Sep 17 00:00:00 2001 From: Geoffrey White <40627776+geoffw0@users.noreply.github.com> Date: Fri, 27 Mar 2026 16:47:31 +0000 Subject: [PATCH 025/157] C++: Add note to the .qhelp. --- .../ImplicitFunctionDeclaration.qhelp | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/cpp/ql/src/Likely Bugs/Underspecified Functions/ImplicitFunctionDeclaration.qhelp b/cpp/ql/src/Likely Bugs/Underspecified Functions/ImplicitFunctionDeclaration.qhelp index 6ff60d383419..d9b5a0220773 100644 --- a/cpp/ql/src/Likely Bugs/Underspecified Functions/ImplicitFunctionDeclaration.qhelp +++ b/cpp/ql/src/Likely Bugs/Underspecified Functions/ImplicitFunctionDeclaration.qhelp @@ -14,6 +14,9 @@ function may behave unpredictably.

This may indicate a misspelled function name, or that the required header containing the function declaration has not been included.

+

Note: This query is not compatible with build mode: none databases, and produces +no results on those databases.

+

Provide an explicit declaration of the function before invoking it.

@@ -26,4 +29,4 @@ the function declaration has not been included.

- \ No newline at end of file + From 4f74d421b9095e06a8642a5615c48f0a0094d7aa Mon Sep 17 00:00:00 2001 From: Taus Date: Fri, 27 Mar 2026 14:11:14 +0000 Subject: [PATCH 026/157] Python: Exclude `AF_UNIX` sockets from BindToAllInterfaces Looking at the results of the the previous DCA run, there was a bunch of false positives where `bind` was being used with a `AF_UNIX` socket (a filesystem path encoded as a string), not a `(host, port)` tuple. These results should be excluded from the query, as they are not vulnerable. Ideally, we would just add `.TupleElement[0]` to the MaD sink, except we don't actually support this in Python MaD... So, instead I opted for a more low-tech solution: check that the argument in question flows from a tuple in the local scope. This eliminates a bunch of false positives on `python/cpython` leaving behind four true positive results. --- .../Security/CVE-2018-1281/BindToAllInterfaces.ql | 14 +++++++++++++- .../CVE-2018-1281/BindToAllInterfaces.expected | 1 + .../CVE-2018-1281/BindToAllInterfaces_test.py | 4 ++++ 3 files changed, 18 insertions(+), 1 deletion(-) diff --git a/python/ql/src/Security/CVE-2018-1281/BindToAllInterfaces.ql b/python/ql/src/Security/CVE-2018-1281/BindToAllInterfaces.ql index 2b62b184fd4e..75c145ec0ace 100644 --- a/python/ql/src/Security/CVE-2018-1281/BindToAllInterfaces.ql +++ b/python/ql/src/Security/CVE-2018-1281/BindToAllInterfaces.ql @@ -42,8 +42,20 @@ private module BindToAllInterfacesFlow = TaintTracking::Global Date: Fri, 27 Mar 2026 17:04:05 +0000 Subject: [PATCH 027/157] C++: Update change note. --- .../src/change-notes/2026-03-23-implicit-function-declaration.md | 1 + 1 file changed, 1 insertion(+) diff --git a/cpp/ql/src/change-notes/2026-03-23-implicit-function-declaration.md b/cpp/ql/src/change-notes/2026-03-23-implicit-function-declaration.md index 8c2c431ec24c..4fc4808f40c2 100644 --- a/cpp/ql/src/change-notes/2026-03-23-implicit-function-declaration.md +++ b/cpp/ql/src/change-notes/2026-03-23-implicit-function-declaration.md @@ -1,4 +1,5 @@ --- category: minorAnalysis --- +* The "Implicit function declaration" (`cpp/implicit-function-declaration`) query has been promoted to `@precision high`. * The "Implicit function declaration" (`cpp/implicit-function-declaration`) query no longer produces results on `build mode: none` databases. These results were found to be very noisy and fundamentally imprecise in this mode. From a9cce1c0fa75b167c549b46ab350d7970929750a Mon Sep 17 00:00:00 2001 From: Geoffrey White <40627776+geoffw0@users.noreply.github.com> Date: Fri, 27 Mar 2026 17:32:03 +0000 Subject: [PATCH 028/157] C++: Undo increasing query precision. --- .../Underspecified Functions/ImplicitFunctionDeclaration.ql | 2 +- .../change-notes/2026-03-23-implicit-function-declaration.md | 1 - 2 files changed, 1 insertion(+), 2 deletions(-) diff --git a/cpp/ql/src/Likely Bugs/Underspecified Functions/ImplicitFunctionDeclaration.ql b/cpp/ql/src/Likely Bugs/Underspecified Functions/ImplicitFunctionDeclaration.ql index 0cf6c8b3714e..007ef71a1630 100644 --- a/cpp/ql/src/Likely Bugs/Underspecified Functions/ImplicitFunctionDeclaration.ql +++ b/cpp/ql/src/Likely Bugs/Underspecified Functions/ImplicitFunctionDeclaration.ql @@ -5,7 +5,7 @@ * may lead to unpredictable behavior. * @kind problem * @problem.severity warning - * @precision high + * @precision medium * @id cpp/implicit-function-declaration * @tags correctness * maintainability diff --git a/cpp/ql/src/change-notes/2026-03-23-implicit-function-declaration.md b/cpp/ql/src/change-notes/2026-03-23-implicit-function-declaration.md index 4fc4808f40c2..8c2c431ec24c 100644 --- a/cpp/ql/src/change-notes/2026-03-23-implicit-function-declaration.md +++ b/cpp/ql/src/change-notes/2026-03-23-implicit-function-declaration.md @@ -1,5 +1,4 @@ --- category: minorAnalysis --- -* The "Implicit function declaration" (`cpp/implicit-function-declaration`) query has been promoted to `@precision high`. * The "Implicit function declaration" (`cpp/implicit-function-declaration`) query no longer produces results on `build mode: none` databases. These results were found to be very noisy and fundamentally imprecise in this mode. From a7fdc4b5435e38cffb68fa425cbdec62939091bb Mon Sep 17 00:00:00 2001 From: Owen Mansel-Chan Date: Fri, 27 Mar 2026 22:15:45 +0000 Subject: [PATCH 029/157] Replace `acceptingvalue` with `acceptingValue` --- .../semmle/code/cpp/dataflow/ExternalFlow.qll | 16 +++++++-------- .../internal/ExternalFlowExtensions.qll | 2 +- .../cpp/dataflow/internal/FlowSummaryImpl.qll | 4 ++-- .../csharp/dataflow/internal/ExternalFlow.qll | 18 ++++++++--------- .../internal/ExternalFlowExtensions.qll | 2 +- .../dataflow/internal/FlowSummaryImpl.qll | 4 ++-- go/ql/lib/semmle/go/dataflow/ExternalFlow.qll | 18 ++++++++--------- .../internal/ExternalFlowExtensions.qll | 2 +- .../go/dataflow/internal/FlowSummaryImpl.qll | 4 ++-- .../code/java/dataflow/ExternalFlow.qll | 18 ++++++++--------- .../internal/ExternalFlowExtensions.qll | 2 +- .../dataflow/internal/FlowSummaryImpl.qll | 4 ++-- .../rust/dataflow/internal/DataFlowImpl.qll | 6 +++--- .../dataflow/internal/FlowSummaryImpl.qll | 20 +++++++++---------- shared/mad/codeql/mad/static/ModelsAsData.qll | 12 +++++------ .../dataflow/internal/FlowSummaryImpl.qll | 2 +- 16 files changed, 67 insertions(+), 67 deletions(-) diff --git a/cpp/ql/lib/semmle/code/cpp/dataflow/ExternalFlow.qll b/cpp/ql/lib/semmle/code/cpp/dataflow/ExternalFlow.qll index 3fe9f6aaedfc..e97b6d044d72 100644 --- a/cpp/ql/lib/semmle/code/cpp/dataflow/ExternalFlow.qll +++ b/cpp/ql/lib/semmle/code/cpp/dataflow/ExternalFlow.qll @@ -13,7 +13,7 @@ * - Barriers: * `namespace; type; subtypes; name; signature; ext; output; kind; provenance` * - BarrierGuards: - * `namespace; type; subtypes; name; signature; ext; input; acceptingvalue; kind; provenance` + * `namespace; type; subtypes; name; signature; ext; input; acceptingValue; kind; provenance` * * The interpretation of a row is similar to API-graphs with a left-to-right * reading. @@ -90,7 +90,7 @@ * value, and * - flow from the _second_ indirection of the 0th argument to the first * indirection of the return value, etc. - * 8. The `acceptingvalue` column of barrier guard models specifies the condition + * 8. The `acceptingValue` column of barrier guard models specifies the condition * under which the guard blocks flow. It can be one of "true" or "false". In * the future "no-exception", "not-zero", "null", "not-null" may be supported. * 9. The `kind` column is a tag that can be referenced from QL to determine to @@ -1089,13 +1089,13 @@ private module Cached { private predicate barrierGuardChecks(IRGuardCondition g, Expr e, boolean gv, TKindModelPair kmp) { exists( - SourceSinkInterpretationInput::InterpretNode n, Public::AcceptingValue acceptingvalue, + SourceSinkInterpretationInput::InterpretNode n, Public::AcceptingValue acceptingValue, string kind, string model | - isBarrierGuardNode(n, acceptingvalue, kind, model) and + isBarrierGuardNode(n, acceptingValue, kind, model) and n.asNode().asExpr() = e and kmp = TMkPair(kind, model) and - gv = convertAcceptingValue(acceptingvalue).asBooleanValue() and + gv = convertAcceptingValue(acceptingValue).asBooleanValue() and n.asNode().(Private::ArgumentNode).getCall().asCallInstruction() = g ) } @@ -1112,14 +1112,14 @@ private module Cached { ) { exists( SourceSinkInterpretationInput::InterpretNode interpretNode, - Public::AcceptingValue acceptingvalue, string kind, string model, int indirectionIndex, + Public::AcceptingValue acceptingValue, string kind, string model, int indirectionIndex, Private::ArgumentNode arg | - isBarrierGuardNode(interpretNode, acceptingvalue, kind, model) and + isBarrierGuardNode(interpretNode, acceptingValue, kind, model) and arg = interpretNode.asNode() and arg.asIndirectExpr(indirectionIndex) = e and kmp = MkKindModelPairIntPair(TMkPair(kind, model), indirectionIndex) and - gv = convertAcceptingValue(acceptingvalue).asBooleanValue() and + gv = convertAcceptingValue(acceptingValue).asBooleanValue() and arg.getCall().asCallInstruction() = g ) } diff --git a/cpp/ql/lib/semmle/code/cpp/dataflow/internal/ExternalFlowExtensions.qll b/cpp/ql/lib/semmle/code/cpp/dataflow/internal/ExternalFlowExtensions.qll index 1a572c221d9f..22c74c2aa714 100644 --- a/cpp/ql/lib/semmle/code/cpp/dataflow/internal/ExternalFlowExtensions.qll +++ b/cpp/ql/lib/semmle/code/cpp/dataflow/internal/ExternalFlowExtensions.qll @@ -33,7 +33,7 @@ extensible predicate barrierModel( */ extensible predicate barrierGuardModel( string namespace, string type, boolean subtypes, string name, string signature, string ext, - string input, string acceptingvalue, string kind, string provenance, QlBuiltins::ExtensionId madId + string input, string acceptingValue, string kind, string provenance, QlBuiltins::ExtensionId madId ); /** diff --git a/cpp/ql/lib/semmle/code/cpp/dataflow/internal/FlowSummaryImpl.qll b/cpp/ql/lib/semmle/code/cpp/dataflow/internal/FlowSummaryImpl.qll index cce1b80e7fcb..d91dc41febeb 100644 --- a/cpp/ql/lib/semmle/code/cpp/dataflow/internal/FlowSummaryImpl.qll +++ b/cpp/ql/lib/semmle/code/cpp/dataflow/internal/FlowSummaryImpl.qll @@ -162,13 +162,13 @@ module SourceSinkInterpretationInput implements } predicate barrierGuardElement( - Element e, string input, Public::AcceptingValue acceptingvalue, string kind, + Element e, string input, Public::AcceptingValue acceptingValue, string kind, Public::Provenance provenance, string model ) { exists( string package, string type, boolean subtypes, string name, string signature, string ext | - barrierGuardModel(package, type, subtypes, name, signature, ext, input, acceptingvalue, kind, + barrierGuardModel(package, type, subtypes, name, signature, ext, input, acceptingValue, kind, provenance, model) and e = interpretElement(package, type, subtypes, name, signature, ext) ) diff --git a/csharp/ql/lib/semmle/code/csharp/dataflow/internal/ExternalFlow.qll b/csharp/ql/lib/semmle/code/csharp/dataflow/internal/ExternalFlow.qll index 17cdcc1bf0b9..f8cec8c4d9f6 100644 --- a/csharp/ql/lib/semmle/code/csharp/dataflow/internal/ExternalFlow.qll +++ b/csharp/ql/lib/semmle/code/csharp/dataflow/internal/ExternalFlow.qll @@ -14,7 +14,7 @@ * - Barriers: * `namespace; type; subtypes; name; signature; ext; output; kind; provenance` * - BarrierGuards: - * `namespace; type; subtypes; name; signature; ext; input; acceptingvalue; kind; provenance` + * `namespace; type; subtypes; name; signature; ext; input; acceptingValue; kind; provenance` * - Neutrals: * `namespace; type; name; signature; kind; provenance` * A neutral is used to indicate that a callable is neutral with respect to flow (no summary), source (is not a source) or sink (is not a sink). @@ -73,7 +73,7 @@ * - "Field[f]": Selects the contents of field `f`. * - "Property[p]": Selects the contents of property `p`. * - * 8. The `acceptingvalue` column of barrier guard models specifies the condition + * 8. The `acceptingValue` column of barrier guard models specifies the condition * under which the guard blocks flow. It can be one of "true" or "false". In * the future "no-exception", "not-zero", "null", "not-null" may be supported. * 9. The `kind` column is a tag that can be referenced from QL to determine to @@ -237,11 +237,11 @@ module ModelValidation { result = "Unrecognized provenance description \"" + provenance + "\" in " + pred + " model." ) or - exists(string acceptingvalue | - barrierGuardModel(_, _, _, _, _, _, _, acceptingvalue, _, _, _) and - invalidAcceptingValue(acceptingvalue) and + exists(string acceptingValue | + barrierGuardModel(_, _, _, _, _, _, _, acceptingValue, _, _, _) and + invalidAcceptingValue(acceptingValue) and result = - "Unrecognized accepting value description \"" + acceptingvalue + + "Unrecognized accepting value description \"" + acceptingValue + "\" in barrier guard model." ) } @@ -489,13 +489,13 @@ private module Cached { private predicate barrierGuardChecks(Guard g, Expr e, GuardValue gv, TKindModelPair kmp) { exists( - SourceSinkInterpretationInput::InterpretNode n, AcceptingValue acceptingvalue, string kind, + SourceSinkInterpretationInput::InterpretNode n, AcceptingValue acceptingValue, string kind, string model | - isBarrierGuardNode(n, acceptingvalue, kind, model) and + isBarrierGuardNode(n, acceptingValue, kind, model) and n.asNode().asExpr() = e and kmp = TMkPair(kind, model) and - gv = convertAcceptingValue(acceptingvalue) + gv = convertAcceptingValue(acceptingValue) | g.(Call).getAnArgument() = e or g.(QualifiableExpr).getQualifier() = e ) diff --git a/csharp/ql/lib/semmle/code/csharp/dataflow/internal/ExternalFlowExtensions.qll b/csharp/ql/lib/semmle/code/csharp/dataflow/internal/ExternalFlowExtensions.qll index 3461f0a51863..cd438ece284d 100644 --- a/csharp/ql/lib/semmle/code/csharp/dataflow/internal/ExternalFlowExtensions.qll +++ b/csharp/ql/lib/semmle/code/csharp/dataflow/internal/ExternalFlowExtensions.qll @@ -33,7 +33,7 @@ extensible predicate barrierModel( */ extensible predicate barrierGuardModel( string namespace, string type, boolean subtypes, string name, string signature, string ext, - string input, string acceptingvalue, string kind, string provenance, QlBuiltins::ExtensionId madId + string input, string acceptingValue, string kind, string provenance, QlBuiltins::ExtensionId madId ); /** diff --git a/csharp/ql/lib/semmle/code/csharp/dataflow/internal/FlowSummaryImpl.qll b/csharp/ql/lib/semmle/code/csharp/dataflow/internal/FlowSummaryImpl.qll index 6f9b621ff404..4b79ed5feca6 100644 --- a/csharp/ql/lib/semmle/code/csharp/dataflow/internal/FlowSummaryImpl.qll +++ b/csharp/ql/lib/semmle/code/csharp/dataflow/internal/FlowSummaryImpl.qll @@ -253,13 +253,13 @@ module SourceSinkInterpretationInput implements } predicate barrierGuardElement( - Element e, string input, Public::AcceptingValue acceptingvalue, string kind, + Element e, string input, Public::AcceptingValue acceptingValue, string kind, Public::Provenance provenance, string model ) { exists( string namespace, string type, boolean subtypes, string name, string signature, string ext | - barrierGuardModel(namespace, type, subtypes, name, signature, ext, input, acceptingvalue, + barrierGuardModel(namespace, type, subtypes, name, signature, ext, input, acceptingValue, kind, provenance, model) and e = interpretElement(namespace, type, subtypes, name, signature, ext, _) ) diff --git a/go/ql/lib/semmle/go/dataflow/ExternalFlow.qll b/go/ql/lib/semmle/go/dataflow/ExternalFlow.qll index 0ad28bac5332..f0dc0cf0ca2b 100644 --- a/go/ql/lib/semmle/go/dataflow/ExternalFlow.qll +++ b/go/ql/lib/semmle/go/dataflow/ExternalFlow.qll @@ -14,7 +14,7 @@ * - Barriers: * `package; type; subtypes; name; signature; ext; output; kind; provenance` * - BarrierGuards: - * `package; type; subtypes; name; signature; ext; input; acceptingvalue; kind; provenance` + * `package; type; subtypes; name; signature; ext; input; acceptingValue; kind; provenance` * - Neutrals: * `package; type; name; signature; kind; provenance` * A neutral is used to indicate that a callable is neutral with respect to flow (no summary), source (is not a source) or sink (is not a sink). @@ -82,7 +82,7 @@ * - "MapValue": Selects a value in a map. * - "Dereference": Selects the value referenced by a pointer. * - * 8. The `acceptingvalue` column of barrier guard models specifies the condition + * 8. The `acceptingValue` column of barrier guard models specifies the condition * under which the guard blocks flow. It can be one of "true" or "false". In * the future "no-exception", "not-zero", "null", "not-null" may be supported. * 9. The `kind` column is a tag that can be referenced from QL to determine to @@ -266,11 +266,11 @@ module ModelValidation { result = "Unrecognized provenance description \"" + provenance + "\" in " + pred + " model." ) or - exists(string acceptingvalue | - barrierGuardModel(_, _, _, _, _, _, _, acceptingvalue, _, _, _) and - invalidAcceptingValue(acceptingvalue) and + exists(string acceptingValue | + barrierGuardModel(_, _, _, _, _, _, _, acceptingValue, _, _, _) and + invalidAcceptingValue(acceptingValue) and result = - "Unrecognized accepting value description \"" + acceptingvalue + + "Unrecognized accepting value description \"" + acceptingValue + "\" in barrier guard model." ) } @@ -478,13 +478,13 @@ private module Cached { private predicate barrierGuardChecks(DataFlow::Node g, Expr e, boolean gv, TKindModelPair kmp) { exists( - SourceSinkInterpretationInput::InterpretNode n, Public::AcceptingValue acceptingvalue, + SourceSinkInterpretationInput::InterpretNode n, Public::AcceptingValue acceptingValue, string kind, string model | - isBarrierGuardNode(n, acceptingvalue, kind, model) and + isBarrierGuardNode(n, acceptingValue, kind, model) and n.asNode().asExpr() = e and kmp = TMkPair(kind, model) and - gv = convertAcceptingValue(acceptingvalue) + gv = convertAcceptingValue(acceptingValue) | g.asExpr().(CallExpr).getAnArgument() = e // TODO: qualifier? ) diff --git a/go/ql/lib/semmle/go/dataflow/internal/ExternalFlowExtensions.qll b/go/ql/lib/semmle/go/dataflow/internal/ExternalFlowExtensions.qll index 5d43cf674c1c..ab2a241e14a6 100644 --- a/go/ql/lib/semmle/go/dataflow/internal/ExternalFlowExtensions.qll +++ b/go/ql/lib/semmle/go/dataflow/internal/ExternalFlowExtensions.qll @@ -35,7 +35,7 @@ extensible predicate barrierModel( */ extensible predicate barrierGuardModel( string package, string type, boolean subtypes, string name, string signature, string ext, - string input, string acceptingvalue, string kind, string provenance, QlBuiltins::ExtensionId madId + string input, string acceptingValue, string kind, string provenance, QlBuiltins::ExtensionId madId ); /** diff --git a/go/ql/lib/semmle/go/dataflow/internal/FlowSummaryImpl.qll b/go/ql/lib/semmle/go/dataflow/internal/FlowSummaryImpl.qll index 240665bd492d..ff727286c3b4 100644 --- a/go/ql/lib/semmle/go/dataflow/internal/FlowSummaryImpl.qll +++ b/go/ql/lib/semmle/go/dataflow/internal/FlowSummaryImpl.qll @@ -174,13 +174,13 @@ module SourceSinkInterpretationInput implements } predicate barrierGuardElement( - Element e, string input, Public::AcceptingValue acceptingvalue, string kind, + Element e, string input, Public::AcceptingValue acceptingValue, string kind, Public::Provenance provenance, string model ) { exists( string package, string type, boolean subtypes, string name, string signature, string ext | - barrierGuardModel(package, type, subtypes, name, signature, ext, input, acceptingvalue, kind, + barrierGuardModel(package, type, subtypes, name, signature, ext, input, acceptingValue, kind, provenance, model) and e = interpretElement(package, type, subtypes, name, signature, ext) ) diff --git a/java/ql/lib/semmle/code/java/dataflow/ExternalFlow.qll b/java/ql/lib/semmle/code/java/dataflow/ExternalFlow.qll index 6ad4a5938a3b..a6a9347ca03a 100644 --- a/java/ql/lib/semmle/code/java/dataflow/ExternalFlow.qll +++ b/java/ql/lib/semmle/code/java/dataflow/ExternalFlow.qll @@ -14,7 +14,7 @@ * - Barriers: * `package; type; subtypes; name; signature; ext; output; kind; provenance` * - BarrierGuards: - * `package; type; subtypes; name; signature; ext; input; acceptingvalue; kind; provenance` + * `package; type; subtypes; name; signature; ext; input; acceptingValue; kind; provenance` * - Neutrals: * `package; type; name; signature; kind; provenance` * A neutral is used to indicate that a callable is neutral with respect to flow (no summary), source (is not a source) or sink (is not a sink). @@ -73,7 +73,7 @@ * in the given range. The range is inclusive at both ends. * - "ReturnValue": Selects the return value of a call to the selected element. * - "Element": Selects the collection elements of the selected element. - * 8. The `acceptingvalue` column of barrier guard models specifies the condition + * 8. The `acceptingValue` column of barrier guard models specifies the condition * under which the guard blocks flow. It can be one of "true" or "false". In * the future "no-exception", "not-zero", "null", "not-null" may be supported. * 9. The `kind` column is a tag that can be referenced from QL to determine to @@ -365,11 +365,11 @@ module ModelValidation { result = "Unrecognized provenance description \"" + provenance + "\" in " + pred + " model." ) or - exists(string acceptingvalue | - barrierGuardModel(_, _, _, _, _, _, _, acceptingvalue, _, _, _) and - invalidAcceptingValue(acceptingvalue) and + exists(string acceptingValue | + barrierGuardModel(_, _, _, _, _, _, _, acceptingValue, _, _, _) and + invalidAcceptingValue(acceptingValue) and result = - "Unrecognized accepting value description \"" + acceptingvalue + + "Unrecognized accepting value description \"" + acceptingValue + "\" in barrier guard model." ) } @@ -590,13 +590,13 @@ private module Cached { private predicate barrierGuardChecks(Guard g, Expr e, GuardValue gv, TKindModelPair kmp) { exists( - SourceSinkInterpretationInput::InterpretNode n, AcceptingValue acceptingvalue, string kind, + SourceSinkInterpretationInput::InterpretNode n, AcceptingValue acceptingValue, string kind, string model | - isBarrierGuardNode(n, acceptingvalue, kind, model) and + isBarrierGuardNode(n, acceptingValue, kind, model) and n.asNode().asExpr() = e and kmp = TMkPair(kind, model) and - gv = convertAcceptingValue(acceptingvalue) + gv = convertAcceptingValue(acceptingValue) | g.(Call).getAnArgument() = e or g.(MethodCall).getQualifier() = e ) diff --git a/java/ql/lib/semmle/code/java/dataflow/internal/ExternalFlowExtensions.qll b/java/ql/lib/semmle/code/java/dataflow/internal/ExternalFlowExtensions.qll index be474ad45352..3c6b003876de 100644 --- a/java/ql/lib/semmle/code/java/dataflow/internal/ExternalFlowExtensions.qll +++ b/java/ql/lib/semmle/code/java/dataflow/internal/ExternalFlowExtensions.qll @@ -35,7 +35,7 @@ extensible predicate barrierModel( */ extensible predicate barrierGuardModel( string package, string type, boolean subtypes, string name, string signature, string ext, - string input, string acceptingvalue, string kind, string provenance, QlBuiltins::ExtensionId madId + string input, string acceptingValue, string kind, string provenance, QlBuiltins::ExtensionId madId ); /** diff --git a/java/ql/lib/semmle/code/java/dataflow/internal/FlowSummaryImpl.qll b/java/ql/lib/semmle/code/java/dataflow/internal/FlowSummaryImpl.qll index 64fa30c7d914..453b7ccae11c 100644 --- a/java/ql/lib/semmle/code/java/dataflow/internal/FlowSummaryImpl.qll +++ b/java/ql/lib/semmle/code/java/dataflow/internal/FlowSummaryImpl.qll @@ -282,7 +282,7 @@ module SourceSinkInterpretationInput implements } predicate barrierGuardElement( - Element e, string input, Public::AcceptingValue acceptingvalue, string kind, + Element e, string input, Public::AcceptingValue acceptingValue, string kind, Public::Provenance provenance, string model ) { exists( @@ -290,7 +290,7 @@ module SourceSinkInterpretationInput implements SourceOrSinkElement baseBarrier, string originalInput | barrierGuardModel(namespace, type, subtypes, name, signature, ext, originalInput, - acceptingvalue, kind, provenance, model) and + acceptingValue, kind, provenance, model) and baseBarrier = interpretElement(namespace, type, subtypes, name, signature, ext, _) and ( e = baseBarrier and input = originalInput diff --git a/rust/ql/lib/codeql/rust/dataflow/internal/DataFlowImpl.qll b/rust/ql/lib/codeql/rust/dataflow/internal/DataFlowImpl.qll index 27773758fc46..7c1fdd8cf781 100644 --- a/rust/ql/lib/codeql/rust/dataflow/internal/DataFlowImpl.qll +++ b/rust/ql/lib/codeql/rust/dataflow/internal/DataFlowImpl.qll @@ -1183,12 +1183,12 @@ private module Cached { exists( FlowSummaryImpl::Public::BarrierGuardElement b, FlowSummaryImpl::Private::SummaryComponentStack stack, - FlowSummaryImpl::Public::AcceptingValue acceptingvalue, string kind, string model + FlowSummaryImpl::Public::AcceptingValue acceptingValue, string kind, string model | - FlowSummaryImpl::Private::barrierGuardSpec(b, stack, acceptingvalue, kind, model) and + FlowSummaryImpl::Private::barrierGuardSpec(b, stack, acceptingValue, kind, model) and e = FlowSummaryImpl::StepsInput::getSinkNode(b, stack.headOfSingleton()).asExpr() and kmp = TMkPair(kind, model) and - gv = convertAcceptingValue(acceptingvalue) and + gv = convertAcceptingValue(acceptingValue) and g = b.getCall() ) } diff --git a/shared/dataflow/codeql/dataflow/internal/FlowSummaryImpl.qll b/shared/dataflow/codeql/dataflow/internal/FlowSummaryImpl.qll index 8b25c54bfa09..0c6e42d9066a 100644 --- a/shared/dataflow/codeql/dataflow/internal/FlowSummaryImpl.qll +++ b/shared/dataflow/codeql/dataflow/internal/FlowSummaryImpl.qll @@ -2189,10 +2189,10 @@ module Make< not exists(interpretComponent(c)) } - /** Holds if `acceptingvalue` is not a valid barrier guard accepting-value. */ - bindingset[acceptingvalue] - predicate invalidAcceptingValue(string acceptingvalue) { - not acceptingvalue instanceof AcceptingValue + /** Holds if `acceptingValue` is not a valid barrier guard accepting-value. */ + bindingset[acceptingValue] + predicate invalidAcceptingValue(string acceptingValue) { + not acceptingValue instanceof AcceptingValue } /** Holds if `provenance` is not a valid provenance value. */ @@ -2242,10 +2242,10 @@ module Make< /** * Holds if an external barrier guard specification exists for `n` with input - * specification `input`, accepting value `acceptingvalue`, and kind `kind`. + * specification `input`, accepting value `acceptingValue`, and kind `kind`. */ predicate barrierGuardElement( - Element n, string input, AcceptingValue acceptingvalue, string kind, + Element n, string input, AcceptingValue acceptingValue, string kind, Provenance provenance, string model ); @@ -2371,11 +2371,11 @@ module Make< } private predicate barrierGuardElementRef( - InterpretNode ref, SourceSinkAccessPath input, AcceptingValue acceptingvalue, string kind, + InterpretNode ref, SourceSinkAccessPath input, AcceptingValue acceptingValue, string kind, string model ) { exists(SourceOrSinkElement e | - barrierGuardElement(e, input, acceptingvalue, kind, _, model) and + barrierGuardElement(e, input, acceptingValue, kind, _, model) and if inputNeedsReferenceExt(input.getToken(0)) then e = ref.getCallTarget() else e = ref.asElement() @@ -2518,10 +2518,10 @@ module Make< * given kind in a MaD flow model. */ predicate isBarrierGuardNode( - InterpretNode node, AcceptingValue acceptingvalue, string kind, string model + InterpretNode node, AcceptingValue acceptingValue, string kind, string model ) { exists(InterpretNode ref, SourceSinkAccessPath input | - barrierGuardElementRef(ref, input, acceptingvalue, kind, model) and + barrierGuardElementRef(ref, input, acceptingValue, kind, model) and interpretInput(input, input.getNumToken(), ref, node) ) } diff --git a/shared/mad/codeql/mad/static/ModelsAsData.qll b/shared/mad/codeql/mad/static/ModelsAsData.qll index 84daaa9b6c86..4b58a23186ac 100644 --- a/shared/mad/codeql/mad/static/ModelsAsData.qll +++ b/shared/mad/codeql/mad/static/ModelsAsData.qll @@ -31,7 +31,7 @@ signature module ExtensionsSig { */ predicate barrierGuardModel( string namespace, string type, boolean subtypes, string name, string signature, string ext, - string input, string acceptingvalue, string kind, string provenance, + string input, string acceptingValue, string kind, string provenance, QlBuiltins::ExtensionId madId ); @@ -142,14 +142,14 @@ module ModelsAsData { or exists( string namespace, string type, boolean subtypes, string name, string signature, string ext, - string input, string acceptingvalue, string kind, string provenance + string input, string acceptingValue, string kind, string provenance | Extensions::barrierGuardModel(namespace, type, subtypes, name, signature, ext, input, - acceptingvalue, kind, provenance, madId) + acceptingValue, kind, provenance, madId) | model = "Barrier Guard: " + namespace + "; " + type + "; " + subtypes + "; " + name + "; " + - signature + "; " + ext + "; " + input + "; " + acceptingvalue + "; " + kind + "; " + + signature + "; " + ext + "; " + input + "; " + acceptingValue + "; " + kind + "; " + provenance ) or @@ -241,12 +241,12 @@ module ModelsAsData { /** Holds if a barrier guard model exists for the given parameters. */ predicate barrierGuardModel( string namespace, string type, boolean subtypes, string name, string signature, string ext, - string input, string acceptingvalue, string kind, string provenance, string model + string input, string acceptingValue, string kind, string provenance, string model ) { exists(string namespaceOrGroup, QlBuiltins::ExtensionId madId | namespace = getNamespace(namespaceOrGroup) and Extensions::barrierGuardModel(namespaceOrGroup, type, subtypes, name, signature, ext, input, - acceptingvalue, kind, provenance, madId) and + acceptingValue, kind, provenance, madId) and model = "MaD:" + madId.toString() ) } diff --git a/swift/ql/lib/codeql/swift/dataflow/internal/FlowSummaryImpl.qll b/swift/ql/lib/codeql/swift/dataflow/internal/FlowSummaryImpl.qll index c1ddb7f781f5..3a096fe3d576 100644 --- a/swift/ql/lib/codeql/swift/dataflow/internal/FlowSummaryImpl.qll +++ b/swift/ql/lib/codeql/swift/dataflow/internal/FlowSummaryImpl.qll @@ -168,7 +168,7 @@ module SourceSinkInterpretationInput implements } predicate barrierGuardElement( - Element n, string input, Public::AcceptingValue acceptingvalue, string kind, + Element n, string input, Public::AcceptingValue acceptingValue, string kind, Public::Provenance provenance, string model ) { none() From c5ef1f6342bbc04bf34f95abc397df1089617d2c Mon Sep 17 00:00:00 2001 From: Taus Date: Fri, 20 Mar 2026 13:56:07 +0000 Subject: [PATCH 030/157] Python: Port UseOfExit.ql --- python/ql/src/Statements/UseOfExit.ql | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/python/ql/src/Statements/UseOfExit.ql b/python/ql/src/Statements/UseOfExit.ql index 437ff93b5371..2310a839f67b 100644 --- a/python/ql/src/Statements/UseOfExit.ql +++ b/python/ql/src/Statements/UseOfExit.ql @@ -12,10 +12,12 @@ */ import python -private import LegacyPointsTo +private import semmle.python.ApiGraphs from CallNode call, string name -where call.getFunction().(ControlFlowNodeWithPointsTo).pointsTo(Value::siteQuitter(name)) +where + name = ["exit", "quit"] and + call = API::builtin(name).getACall().asCfgNode() select call, "The '" + name + "' site.Quitter object may not exist if the 'site' module is not loaded or is modified." From 37aac059640e804b4b7550279d5f2bfa1812c211 Mon Sep 17 00:00:00 2001 From: Owen Mansel-Chan Date: Fri, 27 Mar 2026 22:39:10 +0000 Subject: [PATCH 031/157] Replace `branch` with `acceptingValue` --- .../data/internal/ApiGraphModels.qll | 26 +++++++++---------- .../internal/ApiGraphModelsExtensions.qll | 6 ++--- .../data/internal/ApiGraphModels.qll | 26 +++++++++---------- .../internal/ApiGraphModelsExtensions.qll | 6 ++--- .../data/internal/ApiGraphModels.qll | 26 +++++++++---------- .../internal/ApiGraphModelsExtensions.qll | 6 ++--- .../rust/dataflow/internal/ModelsAsData.qll | 21 ++++++++------- .../dataflow/internal/FlowSummaryImpl.qll | 16 ++++++------ 8 files changed, 67 insertions(+), 66 deletions(-) diff --git a/javascript/ql/lib/semmle/javascript/frameworks/data/internal/ApiGraphModels.qll b/javascript/ql/lib/semmle/javascript/frameworks/data/internal/ApiGraphModels.qll index 34bf32675221..155fb4b7c786 100644 --- a/javascript/ql/lib/semmle/javascript/frameworks/data/internal/ApiGraphModels.qll +++ b/javascript/ql/lib/semmle/javascript/frameworks/data/internal/ApiGraphModels.qll @@ -13,7 +13,7 @@ * - Barriers: * `type, path, kind` * - BarrierGuards: - * `type, path, branch, kind` + * `type, path, acceptingValue, kind` * - Types: * `type1, type2, path` * @@ -46,7 +46,7 @@ * 3. The `input` and `output` columns specify how data enters and leaves the element selected by the * first `(type, path)` tuple. Both strings are `.`-separated access paths * of the same syntax as the `path` column. - * 4. The `branch` column of barrier guard models specifies which branch of the guard is blocking flow. It can be "true" or "false". + * 4. The `acceptingValue` column of barrier guard models specifies which branch of the guard is blocking flow. It can be "true" or "false". * 5. The `kind` column is a tag that can be referenced from QL to determine to * which classes the interpreted elements should be added. For example, for * sources `"remote"` indicates a default remote flow source, and for summaries @@ -360,11 +360,11 @@ private predicate barrierModel(string type, string path, string kind, string mod /** Holds if a barrier guard model exists for the given parameters. */ private predicate barrierGuardModel( - string type, string path, string branch, string kind, string model + string type, string path, string acceptingValue, string kind, string model ) { // No deprecation adapter for barrier models, they were not around back then. exists(QlBuiltins::ExtensionId madId | - Extensions::barrierGuardModel(type, path, branch, kind, madId) and + Extensions::barrierGuardModel(type, path, acceptingValue, kind, madId) and model = "MaD:" + madId.toString() ) } @@ -788,16 +788,16 @@ module ModelOutput { } /** - * Holds if a barrier model contributed `barrier` with the given `kind` for the given `branch`. + * Holds if a barrier model contributed `barrier` with the given `kind` for the given `acceptingValue`. */ cached - API::Node getABarrierGuardNode(string kind, boolean branch, string model) { - exists(string type, string path, string branch_str | - branch = true and branch_str = "true" + API::Node getABarrierGuardNode(string kind, boolean acceptingValue, string model) { + exists(string type, string path, string acceptingValue_str | + acceptingValue = true and acceptingValue_str = "true" or - branch = false and branch_str = "false" + acceptingValue = false and acceptingValue_str = "false" | - barrierGuardModel(type, path, branch_str, kind, model) and + barrierGuardModel(type, path, acceptingValue_str, kind, model) and result = getNodeFromPath(type, path) ) } @@ -861,12 +861,12 @@ module ModelOutput { API::Node getABarrierNode(string kind) { result = getABarrierNode(kind, _) } /** - * Holds if an external model contributed `barrier-guard` with the given `kind` and `branch`. + * Holds if an external model contributed `barrier-guard` with the given `kind` and `acceptingValue`. * * INTERNAL: Do not use. */ - API::Node getABarrierGuardNode(string kind, boolean branch) { - result = getABarrierGuardNode(kind, branch, _) + API::Node getABarrierGuardNode(string kind, boolean acceptingValue) { + result = getABarrierGuardNode(kind, acceptingValue, _) } /** diff --git a/javascript/ql/lib/semmle/javascript/frameworks/data/internal/ApiGraphModelsExtensions.qll b/javascript/ql/lib/semmle/javascript/frameworks/data/internal/ApiGraphModelsExtensions.qll index 2a644aabb95d..8d8a4f5fd880 100644 --- a/javascript/ql/lib/semmle/javascript/frameworks/data/internal/ApiGraphModelsExtensions.qll +++ b/javascript/ql/lib/semmle/javascript/frameworks/data/internal/ApiGraphModelsExtensions.qll @@ -33,11 +33,11 @@ extensible predicate barrierModel( * of the given `kind` and `madId` is the data extension row number. * `path` is assumed to lead to a parameter of a call (possibly `self`), and * the call is guarding the parameter. - * `branch` is either `true` or `false`, indicating which branch of the guard - * is protecting the parameter. + * `acceptingValue` is either `true` or `false`, indicating which branch of + * the guard is protecting the parameter. */ extensible predicate barrierGuardModel( - string type, string path, string branch, string kind, QlBuiltins::ExtensionId madId + string type, string path, string acceptingValue, string kind, QlBuiltins::ExtensionId madId ); /** diff --git a/python/ql/lib/semmle/python/frameworks/data/internal/ApiGraphModels.qll b/python/ql/lib/semmle/python/frameworks/data/internal/ApiGraphModels.qll index 34bf32675221..155fb4b7c786 100644 --- a/python/ql/lib/semmle/python/frameworks/data/internal/ApiGraphModels.qll +++ b/python/ql/lib/semmle/python/frameworks/data/internal/ApiGraphModels.qll @@ -13,7 +13,7 @@ * - Barriers: * `type, path, kind` * - BarrierGuards: - * `type, path, branch, kind` + * `type, path, acceptingValue, kind` * - Types: * `type1, type2, path` * @@ -46,7 +46,7 @@ * 3. The `input` and `output` columns specify how data enters and leaves the element selected by the * first `(type, path)` tuple. Both strings are `.`-separated access paths * of the same syntax as the `path` column. - * 4. The `branch` column of barrier guard models specifies which branch of the guard is blocking flow. It can be "true" or "false". + * 4. The `acceptingValue` column of barrier guard models specifies which branch of the guard is blocking flow. It can be "true" or "false". * 5. The `kind` column is a tag that can be referenced from QL to determine to * which classes the interpreted elements should be added. For example, for * sources `"remote"` indicates a default remote flow source, and for summaries @@ -360,11 +360,11 @@ private predicate barrierModel(string type, string path, string kind, string mod /** Holds if a barrier guard model exists for the given parameters. */ private predicate barrierGuardModel( - string type, string path, string branch, string kind, string model + string type, string path, string acceptingValue, string kind, string model ) { // No deprecation adapter for barrier models, they were not around back then. exists(QlBuiltins::ExtensionId madId | - Extensions::barrierGuardModel(type, path, branch, kind, madId) and + Extensions::barrierGuardModel(type, path, acceptingValue, kind, madId) and model = "MaD:" + madId.toString() ) } @@ -788,16 +788,16 @@ module ModelOutput { } /** - * Holds if a barrier model contributed `barrier` with the given `kind` for the given `branch`. + * Holds if a barrier model contributed `barrier` with the given `kind` for the given `acceptingValue`. */ cached - API::Node getABarrierGuardNode(string kind, boolean branch, string model) { - exists(string type, string path, string branch_str | - branch = true and branch_str = "true" + API::Node getABarrierGuardNode(string kind, boolean acceptingValue, string model) { + exists(string type, string path, string acceptingValue_str | + acceptingValue = true and acceptingValue_str = "true" or - branch = false and branch_str = "false" + acceptingValue = false and acceptingValue_str = "false" | - barrierGuardModel(type, path, branch_str, kind, model) and + barrierGuardModel(type, path, acceptingValue_str, kind, model) and result = getNodeFromPath(type, path) ) } @@ -861,12 +861,12 @@ module ModelOutput { API::Node getABarrierNode(string kind) { result = getABarrierNode(kind, _) } /** - * Holds if an external model contributed `barrier-guard` with the given `kind` and `branch`. + * Holds if an external model contributed `barrier-guard` with the given `kind` and `acceptingValue`. * * INTERNAL: Do not use. */ - API::Node getABarrierGuardNode(string kind, boolean branch) { - result = getABarrierGuardNode(kind, branch, _) + API::Node getABarrierGuardNode(string kind, boolean acceptingValue) { + result = getABarrierGuardNode(kind, acceptingValue, _) } /** diff --git a/python/ql/lib/semmle/python/frameworks/data/internal/ApiGraphModelsExtensions.qll b/python/ql/lib/semmle/python/frameworks/data/internal/ApiGraphModelsExtensions.qll index 2a644aabb95d..8d8a4f5fd880 100644 --- a/python/ql/lib/semmle/python/frameworks/data/internal/ApiGraphModelsExtensions.qll +++ b/python/ql/lib/semmle/python/frameworks/data/internal/ApiGraphModelsExtensions.qll @@ -33,11 +33,11 @@ extensible predicate barrierModel( * of the given `kind` and `madId` is the data extension row number. * `path` is assumed to lead to a parameter of a call (possibly `self`), and * the call is guarding the parameter. - * `branch` is either `true` or `false`, indicating which branch of the guard - * is protecting the parameter. + * `acceptingValue` is either `true` or `false`, indicating which branch of + * the guard is protecting the parameter. */ extensible predicate barrierGuardModel( - string type, string path, string branch, string kind, QlBuiltins::ExtensionId madId + string type, string path, string acceptingValue, string kind, QlBuiltins::ExtensionId madId ); /** diff --git a/ruby/ql/lib/codeql/ruby/frameworks/data/internal/ApiGraphModels.qll b/ruby/ql/lib/codeql/ruby/frameworks/data/internal/ApiGraphModels.qll index 34bf32675221..155fb4b7c786 100644 --- a/ruby/ql/lib/codeql/ruby/frameworks/data/internal/ApiGraphModels.qll +++ b/ruby/ql/lib/codeql/ruby/frameworks/data/internal/ApiGraphModels.qll @@ -13,7 +13,7 @@ * - Barriers: * `type, path, kind` * - BarrierGuards: - * `type, path, branch, kind` + * `type, path, acceptingValue, kind` * - Types: * `type1, type2, path` * @@ -46,7 +46,7 @@ * 3. The `input` and `output` columns specify how data enters and leaves the element selected by the * first `(type, path)` tuple. Both strings are `.`-separated access paths * of the same syntax as the `path` column. - * 4. The `branch` column of barrier guard models specifies which branch of the guard is blocking flow. It can be "true" or "false". + * 4. The `acceptingValue` column of barrier guard models specifies which branch of the guard is blocking flow. It can be "true" or "false". * 5. The `kind` column is a tag that can be referenced from QL to determine to * which classes the interpreted elements should be added. For example, for * sources `"remote"` indicates a default remote flow source, and for summaries @@ -360,11 +360,11 @@ private predicate barrierModel(string type, string path, string kind, string mod /** Holds if a barrier guard model exists for the given parameters. */ private predicate barrierGuardModel( - string type, string path, string branch, string kind, string model + string type, string path, string acceptingValue, string kind, string model ) { // No deprecation adapter for barrier models, they were not around back then. exists(QlBuiltins::ExtensionId madId | - Extensions::barrierGuardModel(type, path, branch, kind, madId) and + Extensions::barrierGuardModel(type, path, acceptingValue, kind, madId) and model = "MaD:" + madId.toString() ) } @@ -788,16 +788,16 @@ module ModelOutput { } /** - * Holds if a barrier model contributed `barrier` with the given `kind` for the given `branch`. + * Holds if a barrier model contributed `barrier` with the given `kind` for the given `acceptingValue`. */ cached - API::Node getABarrierGuardNode(string kind, boolean branch, string model) { - exists(string type, string path, string branch_str | - branch = true and branch_str = "true" + API::Node getABarrierGuardNode(string kind, boolean acceptingValue, string model) { + exists(string type, string path, string acceptingValue_str | + acceptingValue = true and acceptingValue_str = "true" or - branch = false and branch_str = "false" + acceptingValue = false and acceptingValue_str = "false" | - barrierGuardModel(type, path, branch_str, kind, model) and + barrierGuardModel(type, path, acceptingValue_str, kind, model) and result = getNodeFromPath(type, path) ) } @@ -861,12 +861,12 @@ module ModelOutput { API::Node getABarrierNode(string kind) { result = getABarrierNode(kind, _) } /** - * Holds if an external model contributed `barrier-guard` with the given `kind` and `branch`. + * Holds if an external model contributed `barrier-guard` with the given `kind` and `acceptingValue`. * * INTERNAL: Do not use. */ - API::Node getABarrierGuardNode(string kind, boolean branch) { - result = getABarrierGuardNode(kind, branch, _) + API::Node getABarrierGuardNode(string kind, boolean acceptingValue) { + result = getABarrierGuardNode(kind, acceptingValue, _) } /** diff --git a/ruby/ql/lib/codeql/ruby/frameworks/data/internal/ApiGraphModelsExtensions.qll b/ruby/ql/lib/codeql/ruby/frameworks/data/internal/ApiGraphModelsExtensions.qll index 2a644aabb95d..8d8a4f5fd880 100644 --- a/ruby/ql/lib/codeql/ruby/frameworks/data/internal/ApiGraphModelsExtensions.qll +++ b/ruby/ql/lib/codeql/ruby/frameworks/data/internal/ApiGraphModelsExtensions.qll @@ -33,11 +33,11 @@ extensible predicate barrierModel( * of the given `kind` and `madId` is the data extension row number. * `path` is assumed to lead to a parameter of a call (possibly `self`), and * the call is guarding the parameter. - * `branch` is either `true` or `false`, indicating which branch of the guard - * is protecting the parameter. + * `acceptingValue` is either `true` or `false`, indicating which branch of + * the guard is protecting the parameter. */ extensible predicate barrierGuardModel( - string type, string path, string branch, string kind, QlBuiltins::ExtensionId madId + string type, string path, string acceptingValue, string kind, QlBuiltins::ExtensionId madId ); /** diff --git a/rust/ql/lib/codeql/rust/dataflow/internal/ModelsAsData.qll b/rust/ql/lib/codeql/rust/dataflow/internal/ModelsAsData.qll index cc7dd9963ea0..2b3ecf51fe40 100644 --- a/rust/ql/lib/codeql/rust/dataflow/internal/ModelsAsData.qll +++ b/rust/ql/lib/codeql/rust/dataflow/internal/ModelsAsData.qll @@ -12,7 +12,7 @@ * - Barriers: * `path; output; kind; provenance` * - BarrierGuards: - * `path; input; branch; kind; provenance` + * `path; input; acceptingValue; kind; provenance` * - Neutrals: * `path; kind; provenance` * A neutral is used to indicate that a callable is neutral with respect to flow (no summary), source (is not a source) or sink (is not a sink). @@ -41,7 +41,7 @@ * - `Field[i]`: the `i`th element of a tuple. * - `Reference`: the referenced value. * - `Future`: the value being computed asynchronously. - * 3. The `branch` column of barrier guard models specifies which branch of the + * 3. The `acceptingValue` column of barrier guard models specifies which branch of the * guard is blocking flow. It can be "true" or "false". In the future * "no-exception", "not-zero", "null", "not-null" may be supported. * 4. The `kind` column is a tag that can be referenced from QL to determine to @@ -124,11 +124,12 @@ extensible predicate barrierModel( * extension row number. * * The value referred to by `input` is assumed to lead to an argument of a call - * (possibly `self`), and the call is guarding the argument. `branch` is either `true` - * or `false`, indicating which branch of the guard is protecting the argument. + * (possibly `self`), and the call is guarding the argument. + * `acceptingValue` is either `true` or `false`, indicating which branch of + * the guard is protecting the parameter. */ extensible predicate barrierGuardModel( - string path, string input, string branch, string kind, string provenance, + string path, string input, string acceptingValue, string kind, string provenance, QlBuiltins::ExtensionId madId ); @@ -163,9 +164,9 @@ predicate interpretModelForTest(QlBuiltins::ExtensionId madId, string model) { model = "Barrier: " + path + "; " + output + "; " + kind ) or - exists(string path, string input, string branch, string kind | - barrierGuardModel(path, input, branch, kind, _, madId) and - model = "Barrier guard: " + path + "; " + input + "; " + branch + "; " + kind + exists(string path, string input, string acceptingValue, string kind | + barrierGuardModel(path, input, acceptingValue, kind, _, madId) and + model = "Barrier guard: " + path + "; " + input + "; " + acceptingValue + "; " + kind ) } @@ -275,10 +276,10 @@ private class FlowBarrierGuardFromModel extends FlowBarrierGuard::Range { } override predicate isBarrierGuard( - string input, string branch, string kind, Provenance provenance, string model + string input, string acceptingValue, string kind, Provenance provenance, string model ) { exists(QlBuiltins::ExtensionId madId | - barrierGuardModel(path, input, branch, kind, provenance, madId) and + barrierGuardModel(path, input, acceptingValue, kind, provenance, madId) and model = "MaD:" + madId.toString() ) } diff --git a/shared/dataflow/codeql/dataflow/internal/FlowSummaryImpl.qll b/shared/dataflow/codeql/dataflow/internal/FlowSummaryImpl.qll index 0c6e42d9066a..ce980724778b 100644 --- a/shared/dataflow/codeql/dataflow/internal/FlowSummaryImpl.qll +++ b/shared/dataflow/codeql/dataflow/internal/FlowSummaryImpl.qll @@ -388,11 +388,11 @@ module Make< /** * Holds if this element is a flow barrier guard of kind `kind`, for data - * flowing in as described by `input`, when `this` evaluates to `branch`. + * flowing in as described by `input`, when `this` evaluates to `acceptingValue`. */ pragma[nomagic] abstract predicate isBarrierGuard( - string input, string branch, string kind, Provenance provenance, string model + string input, string acceptingValue, string kind, Provenance provenance, string model ); } @@ -764,10 +764,10 @@ module Make< } private predicate isRelevantBarrierGuard( - BarrierGuardElement e, string input, string branch, string kind, Provenance provenance, - string model + BarrierGuardElement e, string input, string acceptingValue, string kind, + Provenance provenance, string model ) { - e.isBarrierGuard(input, branch, kind, provenance, model) and + e.isBarrierGuard(input, acceptingValue, kind, provenance, model) and ( provenance.isManual() or @@ -1588,11 +1588,11 @@ module Make< * Holds if `barrierGuard` is a relevant barrier guard element with input specification `inSpec`. */ predicate barrierGuardSpec( - BarrierGuardElement barrierGuard, SummaryComponentStack inSpec, string branch, string kind, - string model + BarrierGuardElement barrierGuard, SummaryComponentStack inSpec, string acceptingValue, + string kind, string model ) { exists(string input | - isRelevantBarrierGuard(barrierGuard, input, branch, kind, _, model) and + isRelevantBarrierGuard(barrierGuard, input, acceptingValue, kind, _, model) and External::interpretSpec(input, inSpec) ) } From 187f7c7bcf95097648230c34a7cf7d857dc0aeea Mon Sep 17 00:00:00 2001 From: Taus Date: Fri, 27 Mar 2026 22:44:39 +0000 Subject: [PATCH 032/157] Python: Move isNetworkBind check into isSink --- .../CVE-2018-1281/BindToAllInterfaces.ql | 20 ++++++------------- .../BindToAllInterfaces.expected | 1 - 2 files changed, 6 insertions(+), 15 deletions(-) diff --git a/python/ql/src/Security/CVE-2018-1281/BindToAllInterfaces.ql b/python/ql/src/Security/CVE-2018-1281/BindToAllInterfaces.ql index 75c145ec0ace..14c17edc3591 100644 --- a/python/ql/src/Security/CVE-2018-1281/BindToAllInterfaces.ql +++ b/python/ql/src/Security/CVE-2018-1281/BindToAllInterfaces.ql @@ -34,7 +34,11 @@ private module BindToAllInterfacesConfig implements DataFlow::ConfigSig { } predicate isSink(DataFlow::Node sink) { - ModelOutput::sinkNode(sink, "bind-socket-all-interfaces") + ModelOutput::sinkNode(sink, "bind-socket-all-interfaces") and + // Network socket addresses are tuples like (host, port), so we require + // the bind() argument to originate from a tuple expression. This excludes + // AF_UNIX sockets, which pass a plain string path to bind(). + any(DataFlow::LocalSourceNode n | n.asExpr() instanceof Tuple).flowsTo(sink) } } @@ -42,20 +46,8 @@ private module BindToAllInterfacesFlow = TaintTracking::Global Date: Fri, 27 Mar 2026 23:46:50 +0100 Subject: [PATCH 033/157] Python: Update change note Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> --- .../2026-03-26-improve-bind-all-interfaces-query.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/python/ql/src/change-notes/2026-03-26-improve-bind-all-interfaces-query.md b/python/ql/src/change-notes/2026-03-26-improve-bind-all-interfaces-query.md index b4b5464b5037..bc78b2b6f776 100644 --- a/python/ql/src/change-notes/2026-03-26-improve-bind-all-interfaces-query.md +++ b/python/ql/src/change-notes/2026-03-26-improve-bind-all-interfaces-query.md @@ -2,4 +2,4 @@ category: minorAnalysis --- -- The `py/bind-socket-all-network-interfaces` query now uses the global data-flow library, leading to better precision and more results. Also, wrappers of `socket.socket` in the `eventlet` and `gevent` libraries are now also recognised as socket binding operations. +- The `py/bind-socket-all-network-interfaces` query now uses the global data-flow library, leading to better precision and more results. Also, wrappers of `socket.socket` in the `eventlet` and `gevent` libraries are now also recognized as socket binding operations. From 9c095bc580b5fd4d0f44362faf8680d5e25f2a4d Mon Sep 17 00:00:00 2001 From: Michael Nebel Date: Fri, 27 Mar 2026 12:49:03 +0100 Subject: [PATCH 034/157] C#: Deprecate get[L|R]Value predicates. --- csharp/ql/lib/Linq/Helpers.qll | 2 +- csharp/ql/lib/definitions.qll | 2 +- .../ql/lib/semmle/code/csharp/Assignable.qll | 16 +++++----- csharp/ql/lib/semmle/code/csharp/PrintAst.qll | 4 +-- csharp/ql/lib/semmle/code/csharp/Property.qll | 4 +-- .../semmle/code/csharp/controlflow/Guards.qll | 6 ++-- .../internal/ControlFlowGraphImpl.qll | 2 +- .../semmle/code/csharp/dataflow/Nullness.qll | 2 +- .../dataflow/internal/DataFlowPrivate.qll | 16 +++++----- .../code/csharp/dataflow/internal/SsaImpl.qll | 2 +- .../internal/rangeanalysis/RangeUtils.qll | 16 ++++++---- .../rangeanalysis/SignAnalysisSpecific.qll | 4 +-- .../internal/rangeanalysis/SsaUtils.qll | 2 +- .../semmle/code/csharp/dispatch/Dispatch.qll | 2 +- .../lib/semmle/code/csharp/exprs/Access.qll | 2 +- .../semmle/code/csharp/exprs/Assignment.qll | 32 ++++++++++++++----- .../ql/lib/semmle/code/csharp/exprs/Call.qll | 6 ++-- .../lib/semmle/code/csharp/exprs/Creation.qll | 2 +- .../ql/lib/semmle/code/csharp/exprs/Expr.qll | 2 +- .../lib/semmle/code/csharp/frameworks/Moq.qll | 2 +- .../lib/semmle/code/csharp/frameworks/Sql.qll | 4 +-- .../csharp/security/auth/SecureCookies.qll | 20 ++++++------ .../dataflow/UnsafeDeserializationQuery.qll | 6 ++-- .../csharp/security/xml/InsecureXMLQuery.qll | 10 +++--- csharp/ql/src/Dead Code/NonAssignedFields.ql | 6 ++-- .../ql/src/Language Abuse/ForeachCapture.ql | 18 +++++------ .../MissedTernaryOpportunity.ql | 2 +- .../Collections/WriteOnlyContainer.ql | 5 +-- csharp/ql/src/Likely Bugs/SelfAssignment.ql | 6 ++-- csharp/ql/src/Linq/BadMultipleIteration.ql | 2 +- .../Performance/StringConcatenationInLoop.ql | 4 +-- .../CWE-1004/CookieWithoutHttpOnly.ql | 10 +++--- .../CWE-327/InsecureSQLConnection.ql | 4 +-- .../CWE-614/CookieWithoutSecure.ql | 10 +++--- .../CookieWithOverlyBroadDomain.ql | 6 ++-- .../CookieWithOverlyBroadPath.ql | 4 +-- .../HeaderCheckingDisabled.ql | 4 +-- .../Security Features/InsecureRandomness.ql | 8 ++--- .../Security Features/InsufficientKeySize.ql | 2 +- .../src/Security Features/PersistentCookie.ql | 4 +-- csharp/ql/src/Telemetry/DatabaseQuality.qll | 8 ++--- .../CWE-759/HashWithoutSalt.ql | 4 +-- .../assignments/AssignOperation.ql | 2 +- .../conversion/pointer/Pointer.ql | 4 +-- .../ql/test/library-tests/csharp10/lambda.ql | 2 +- .../test/library-tests/csharp11/operators.ql | 4 +-- .../csharp6/MemberInitializer.ql | 2 +- csharp/ql/test/library-tests/enums/Enums11.ql | 2 +- .../expressions/AddEventExpr1.ql | 2 +- .../expressions/AnonymousMethod1.ql | 2 +- .../expressions/AnonymousMethod2.ql | 2 +- .../expressions/AnonymousMethod3.ql | 2 +- .../expressions/AnonymousMethod4.ql | 2 +- .../expressions/AnonymousMethod5.ql | 2 +- .../expressions/AnonymousObjectCreation1.ql | 6 ++-- .../expressions/AnonymousObjectCreation2.ql | 6 ++-- .../expressions/AnonymousObjectCreation3.ql | 6 ++-- .../expressions/AnonymousObjectCreation4.ql | 2 +- .../expressions/ArrayCreation1.ql | 4 +-- .../expressions/ArrayCreation10.ql | 4 +-- .../expressions/ArrayCreation2.ql | 4 +-- .../expressions/ArrayCreation3.ql | 4 +-- .../expressions/ArrayCreation4.ql | 4 +-- .../expressions/ArrayCreation5.ql | 4 +-- .../expressions/ArrayCreation6.ql | 4 +-- .../expressions/ArrayCreation7.ql | 4 +-- .../expressions/ArrayCreation8.ql | 4 +-- .../expressions/ArrayCreation9.ql | 4 +-- .../test/library-tests/expressions/Lambda1.ql | 2 +- .../test/library-tests/expressions/Lambda2.ql | 2 +- .../test/library-tests/expressions/Lambda3.ql | 2 +- .../test/library-tests/expressions/Lambda4.ql | 2 +- .../test/library-tests/expressions/Lambda5.ql | 2 +- .../test/library-tests/expressions/Lambda6.ql | 2 +- .../expressions/ObjectCreation10.ql | 2 +- .../expressions/ObjectCreation11.ql | 2 +- .../expressions/ObjectCreation4.ql | 8 ++--- .../expressions/ObjectCreation5.ql | 8 ++--- .../expressions/ObjectCreation6.ql | 8 ++--- .../expressions/ObjectCreation7.ql | 8 ++--- .../expressions/RemoveEventExpr1.ql | 2 +- 81 files changed, 216 insertions(+), 195 deletions(-) diff --git a/csharp/ql/lib/Linq/Helpers.qll b/csharp/ql/lib/Linq/Helpers.qll index d490868f4532..912b12b9457b 100644 --- a/csharp/ql/lib/Linq/Helpers.qll +++ b/csharp/ql/lib/Linq/Helpers.qll @@ -77,7 +77,7 @@ predicate missedAllOpportunity(ForeachStmtGenericEnumerable fes) { // The then case of the if assigns false to something and breaks out of the loop. exists(Assignment a, BoolLiteral bl | a = is.getThen().getAChild*() and - bl = a.getRValue() and + bl = a.getRightOperand() and bl.toString() = "false" ) and is.getThen().getAChild*() instanceof BreakStmt diff --git a/csharp/ql/lib/definitions.qll b/csharp/ql/lib/definitions.qll index 4feaf20629c9..d4f2540bbef5 100644 --- a/csharp/ql/lib/definitions.qll +++ b/csharp/ql/lib/definitions.qll @@ -96,7 +96,7 @@ private class MethodUse extends Use, QualifiableExpr { private class AccessUse extends Access, Use { AccessUse() { not this.getTarget().(Parameter).getCallable() instanceof Accessor and - not this = any(LocalVariableDeclAndInitExpr d).getLValue() and + not this = any(LocalVariableDeclAndInitExpr d).getLeftOperand() and not this.isImplicit() and not this instanceof MethodAccess and // handled by `MethodUse` not this instanceof TypeAccess and // handled by `TypeMentionUse` diff --git a/csharp/ql/lib/semmle/code/csharp/Assignable.qll b/csharp/ql/lib/semmle/code/csharp/Assignable.qll index a0e575218adc..7075626aa3bd 100644 --- a/csharp/ql/lib/semmle/code/csharp/Assignable.qll +++ b/csharp/ql/lib/semmle/code/csharp/Assignable.qll @@ -235,7 +235,7 @@ private class RefArg extends AssignableAccess { module AssignableInternal { private predicate tupleAssignmentDefinition(AssignExpr ae, Expr leaf) { exists(TupleExpr te | - ae.getLValue() = te and + ae.getLeftOperand() = te and te.getAnArgument+() = leaf and // `leaf` is either an assignable access or a local variable declaration not leaf instanceof TupleExpr @@ -249,8 +249,8 @@ module AssignableInternal { */ private predicate tupleAssignmentPair(AssignExpr ae, Expr left, Expr right) { tupleAssignmentDefinition(ae, _) and - left = ae.getLValue() and - right = ae.getRValue() + left = ae.getLeftOperand() and + right = ae.getRightOperand() or exists(TupleExpr l, TupleExpr r, int i | tupleAssignmentPair(ae, l, r) | left = l.getArgument(i) and @@ -291,7 +291,7 @@ module AssignableInternal { cached newtype TAssignableDefinition = TAssignmentDefinition(Assignment a) { - not a.getLValue() instanceof TupleExpr and + not a.getLeftOperand() instanceof TupleExpr and not a instanceof AssignCallOperation and not a instanceof AssignCoalesceExpr } or @@ -358,7 +358,7 @@ module AssignableInternal { // Not defined by dispatch in order to avoid too conservative negative recursion error cached AssignableAccess getTargetAccess(AssignableDefinition def) { - def = TAssignmentDefinition(any(Assignment a | a.getLValue() = result)) + def = TAssignmentDefinition(any(Assignment a | a.getLeftOperand() = result)) or def = TTupleAssignmentDefinition(_, result) or @@ -381,8 +381,8 @@ module AssignableInternal { tupleAssignmentPair(ae, ac, result) ) or - exists(Assignment ass | ac = ass.getLValue() | - result = ass.getRValue() and + exists(Assignment ass | ac = ass.getLeftOperand() | + result = ass.getRightOperand() and not ass instanceof AssignOperation ) or @@ -527,7 +527,7 @@ module AssignableDefinitions { Assignment getAssignment() { result = a } override Expr getSource() { - result = a.getRValue() and + result = a.getRightOperand() and not a instanceof AddOrRemoveEventExpr } diff --git a/csharp/ql/lib/semmle/code/csharp/PrintAst.qll b/csharp/ql/lib/semmle/code/csharp/PrintAst.qll index 1ac96c85e788..1fab6b0f8c45 100644 --- a/csharp/ql/lib/semmle/code/csharp/PrintAst.qll +++ b/csharp/ql/lib/semmle/code/csharp/PrintAst.qll @@ -343,10 +343,10 @@ final class AssignmentNode extends ControlFlowElementNode { result.(TypeMentionNode).getTarget() = controlFlowElement or childIndex = 0 and - result.(ElementNode).getElement() = assignment.getLValue() + result.(ElementNode).getElement() = assignment.getLeftOperand() or childIndex = 1 and - result.(ElementNode).getElement() = assignment.getRValue() + result.(ElementNode).getElement() = assignment.getRightOperand() } } diff --git a/csharp/ql/lib/semmle/code/csharp/Property.qll b/csharp/ql/lib/semmle/code/csharp/Property.qll index bbd4fdd9d8ec..c9a338d0359f 100644 --- a/csharp/ql/lib/semmle/code/csharp/Property.qll +++ b/csharp/ql/lib/semmle/code/csharp/Property.qll @@ -535,8 +535,8 @@ class Setter extends Accessor, @setter { exists(AssignExpr assign | this.getStatementBody().getNumberOfStmts() = 1 and assign.getParent() = this.getStatementBody().getAChild() and - assign.getLValue() = result.getAnAccess() and - assign.getRValue() = accessToValue() + assign.getLeftOperand() = result.getAnAccess() and + assign.getRightOperand() = accessToValue() ) } diff --git a/csharp/ql/lib/semmle/code/csharp/controlflow/Guards.qll b/csharp/ql/lib/semmle/code/csharp/controlflow/Guards.qll index 03a5aa7e2b74..6c1eb8c06eb9 100644 --- a/csharp/ql/lib/semmle/code/csharp/controlflow/Guards.qll +++ b/csharp/ql/lib/semmle/code/csharp/controlflow/Guards.qll @@ -136,7 +136,7 @@ private module GuardsInput implements IdExpr() { this instanceof AssignExpr or this instanceof CastExpr } Expr getEqualChildExpr() { - result = this.(AssignExpr).getRValue() + result = this.(AssignExpr).getRightOperand() or result = this.(CastExpr).getExpr() } @@ -836,7 +836,7 @@ module Internal { /** Holds if expression `e2` is a `null` value whenever `e1` is. */ predicate nullValueImpliedUnary(Expr e1, Expr e2) { - e1 = e2.(AssignExpr).getRValue() + e1 = e2.(AssignExpr).getRightOperand() or e1 = e2.(Cast).getExpr() or @@ -923,7 +923,7 @@ module Internal { /** Holds if expression `e2` is a non-`null` value whenever `e1` is. */ predicate nonNullValueImpliedUnary(Expr e1, Expr e2) { e1 = e2.(CastExpr).getExpr() or - e1 = e2.(AssignExpr).getRValue() or + e1 = e2.(AssignExpr).getRightOperand() or e1 = e2.(NullCoalescingOperation).getAnOperand() } diff --git a/csharp/ql/lib/semmle/code/csharp/controlflow/internal/ControlFlowGraphImpl.qll b/csharp/ql/lib/semmle/code/csharp/controlflow/internal/ControlFlowGraphImpl.qll index e29e92d26eba..dc2c7477a35a 100644 --- a/csharp/ql/lib/semmle/code/csharp/controlflow/internal/ControlFlowGraphImpl.qll +++ b/csharp/ql/lib/semmle/code/csharp/controlflow/internal/ControlFlowGraphImpl.qll @@ -521,7 +521,7 @@ module Expressions { // ``` // need special treatment, because the accesses `[0]`, `[1]`, and `[2]` // have no qualifier. - this = any(MemberInitializer mi).getLValue() + this = any(MemberInitializer mi).getLeftOperand() ) and not exists(AssignableDefinitions::OutRefDefinition def | def.getTargetAccess() = this) } diff --git a/csharp/ql/lib/semmle/code/csharp/dataflow/Nullness.qll b/csharp/ql/lib/semmle/code/csharp/dataflow/Nullness.qll index a82779eaa5d7..3d690ee1ac46 100644 --- a/csharp/ql/lib/semmle/code/csharp/dataflow/Nullness.qll +++ b/csharp/ql/lib/semmle/code/csharp/dataflow/Nullness.qll @@ -31,7 +31,7 @@ private Expr maybeNullExpr(Expr reason) { or result instanceof AsExpr and reason = result or - result.(AssignExpr).getRValue() = maybeNullExpr(reason) + result.(AssignExpr).getRightOperand() = maybeNullExpr(reason) or result.(CastExpr).getExpr() = maybeNullExpr(reason) or diff --git a/csharp/ql/lib/semmle/code/csharp/dataflow/internal/DataFlowPrivate.qll b/csharp/ql/lib/semmle/code/csharp/dataflow/internal/DataFlowPrivate.qll index 109c27de67be..5554b8cdbd79 100644 --- a/csharp/ql/lib/semmle/code/csharp/dataflow/internal/DataFlowPrivate.qll +++ b/csharp/ql/lib/semmle/code/csharp/dataflow/internal/DataFlowPrivate.qll @@ -528,7 +528,7 @@ module LocalFlow { e2 = any(AssignExpr ae | ae.getParent() = any(ControlFlowElement cfe | not cfe instanceof ExprStmt) and - e1 = ae.getRValue() + e1 = ae.getRightOperand() ) or e1 = e2.(ObjectCreation).getInitializer() @@ -554,7 +554,7 @@ module LocalFlow { e2 = we ) or - exists(AssignExpr ae | ae.getLValue().(TupleExpr) = e2 and ae.getRValue() = e1) + exists(AssignExpr ae | ae.getLeftOperand().(TupleExpr) = e2 and ae.getRightOperand() = e1) or exists(ControlFlowElement cfe | cfe = e2.(TupleExpr).(PatternExpr).getPatternMatch() | cfe.(IsExpr).getExpr() = e1 @@ -795,7 +795,7 @@ private predicate fieldOrPropertyStore(ContentSet c, Expr src, Expr q, boolean p q = we and mi = we.getInitializer().getAMemberInitializer() and f = mi.getInitializedMember() and - src = mi.getRValue() and + src = mi.getRightOperand() and postUpdate = false ) or @@ -804,7 +804,7 @@ private predicate fieldOrPropertyStore(ContentSet c, Expr src, Expr q, boolean p mi = q.(ObjectInitializer).getAMemberInitializer() and q.getParent() instanceof ObjectCreation and f = mi.getInitializedMember() and - src = mi.getRValue() and + src = mi.getRightOperand() and postUpdate = false ) or @@ -879,8 +879,8 @@ private predicate arrayStore(Expr src, Expr a, boolean postUpdate) { // Member initializer, `new C { Array = { [i] = src } }` exists(MemberInitializer mi | mi = a.(ObjectInitializer).getAMemberInitializer() and - mi.getLValue() instanceof ArrayAccess and - mi.getRValue() = src and + mi.getLeftOperand() instanceof ArrayAccess and + mi.getRightOperand() = src and postUpdate = false ) } @@ -2582,7 +2582,7 @@ module PostUpdateNodes { call.getExpr() = init.(CollectionInitializer).getAnElementInitializer() or // E.g. `new Dictionary() { [0] = "a", [1] = "b" }` - call.getExpr() = init.(ObjectInitializer).getAMemberInitializer().getLValue() + call.getExpr() = init.(ObjectInitializer).getAMemberInitializer().getLeftOperand() ) } @@ -2795,7 +2795,7 @@ predicate additionalLambdaFlowStep(Node nodeFrom, Node nodeTo, boolean preserves preservesValue = true or exists(AddEventExpr aee | - nodeFrom.asExpr() = aee.getRValue() and + nodeFrom.asExpr() = aee.getRightOperand() and nodeTo.asExpr().(EventRead).getTarget() = aee.getTarget() and preservesValue = false ) diff --git a/csharp/ql/lib/semmle/code/csharp/dataflow/internal/SsaImpl.qll b/csharp/ql/lib/semmle/code/csharp/dataflow/internal/SsaImpl.qll index 2809f8187b91..83593a5df36b 100644 --- a/csharp/ql/lib/semmle/code/csharp/dataflow/internal/SsaImpl.qll +++ b/csharp/ql/lib/semmle/code/csharp/dataflow/internal/SsaImpl.qll @@ -337,7 +337,7 @@ private module CallGraph { pred = succ.(DelegateCreation).getArgument() or exists(AddEventExpr ae | succ.(EventAccess).getTarget() = ae.getTarget() | - pred = ae.getRValue() + pred = ae.getRightOperand() ) } diff --git a/csharp/ql/lib/semmle/code/csharp/dataflow/internal/rangeanalysis/RangeUtils.qll b/csharp/ql/lib/semmle/code/csharp/dataflow/internal/rangeanalysis/RangeUtils.qll index 46153f18dae2..171f2d2f59e4 100644 --- a/csharp/ql/lib/semmle/code/csharp/dataflow/internal/rangeanalysis/RangeUtils.qll +++ b/csharp/ql/lib/semmle/code/csharp/dataflow/internal/rangeanalysis/RangeUtils.qll @@ -21,7 +21,7 @@ private module Impl { /** Holds if SSA definition `def` equals `e + delta`. */ predicate ssaUpdateStep(ExplicitDefinition def, ExprNode e, int delta) { exists(ControlFlow::Node cfn | cfn = def.getControlFlowNode() | - e = cfn.(ExprNode::Assignment).getRValue() and + e = cfn.(ExprNode::Assignment).getRightOperand() and delta = 0 and not cfn instanceof ExprNode::AssignOperation or @@ -39,7 +39,7 @@ private module Impl { /** Holds if `e1 + delta` equals `e2`. */ predicate valueFlowStep(ExprNode e2, ExprNode e1, int delta) { - e2.(ExprNode::AssignExpr).getRValue() = e1 and delta = 0 + e2.(ExprNode::AssignExpr).getRightOperand() = e1 and delta = 0 or e2.(ExprNode::UnaryPlusExpr).getOperand() = e1 and delta = 0 or @@ -207,13 +207,13 @@ module ExprNode { override CS::Assignment e; /** Gets the left operand of this assignment. */ - ExprNode getLValue() { - result = unique(ExprNode res | hasChild(e, e.getLValue(), this, res) | res) + ExprNode getLeftOperand() { + result = unique(ExprNode res | hasChild(e, e.getLeftOperand(), this, res) | res) } /** Gets the right operand of this assignment. */ - ExprNode getRValue() { - result = unique(ExprNode res | hasChild(e, e.getRValue(), this, res) | res) + ExprNode getRightOperand() { + result = unique(ExprNode res | hasChild(e, e.getRightOperand(), this, res) | res) } } @@ -225,6 +225,10 @@ module ExprNode { /** A compound assignment operation. */ class AssignOperation extends Assignment, BinaryOperation { override CS::AssignOperation e; + + override ExprNode getLeftOperand() { result = Assignment.super.getLeftOperand() } + + override ExprNode getRightOperand() { result = Assignment.super.getRightOperand() } } /** A unary operation. */ diff --git a/csharp/ql/lib/semmle/code/csharp/dataflow/internal/rangeanalysis/SignAnalysisSpecific.qll b/csharp/ql/lib/semmle/code/csharp/dataflow/internal/rangeanalysis/SignAnalysisSpecific.qll index d59d7958765a..f64eceda1347 100644 --- a/csharp/ql/lib/semmle/code/csharp/dataflow/internal/rangeanalysis/SignAnalysisSpecific.qll +++ b/csharp/ql/lib/semmle/code/csharp/dataflow/internal/rangeanalysis/SignAnalysisSpecific.qll @@ -168,7 +168,7 @@ private module Impl { /** Returned an expression that is assigned to `f`. */ ExprNode getAssignedValueToField(Field f) { result.getExpr() in [ - f.getAnAssignedValue(), any(AssignOperation a | a.getLValue() = f.getAnAccess()) + f.getAnAssignedValue(), any(AssignOperation a | a.getLeftOperand() = f.getAnAccess()) ] } @@ -231,7 +231,7 @@ private module Impl { /** Returns a sub expression of `e` for expression types where the sign depends on the child. */ ExprNode getASubExprWithSameSign(ExprNode e) { exists(Expr e_, Expr child | hasChild(e_, child, e, result) | - child = e_.(AssignExpr).getRValue() or + child = e_.(AssignExpr).getRightOperand() or child = e_.(UnaryPlusExpr).getOperand() or child = e_.(PostIncrExpr).getOperand() or child = e_.(PostDecrExpr).getOperand() or diff --git a/csharp/ql/lib/semmle/code/csharp/dataflow/internal/rangeanalysis/SsaUtils.qll b/csharp/ql/lib/semmle/code/csharp/dataflow/internal/rangeanalysis/SsaUtils.qll index 89117d90ba79..cf4b44239e92 100644 --- a/csharp/ql/lib/semmle/code/csharp/dataflow/internal/rangeanalysis/SsaUtils.qll +++ b/csharp/ql/lib/semmle/code/csharp/dataflow/internal/rangeanalysis/SsaUtils.qll @@ -55,5 +55,5 @@ ExprNode ssaRead(Definition v, int delta) { or v.(ExplicitDefinition).getControlFlowNode().(ExprNode::Assignment) = result and delta = 0 or - result.(ExprNode::AssignExpr).getRValue() = ssaRead(v, delta) + result.(ExprNode::AssignExpr).getRightOperand() = ssaRead(v, delta) } diff --git a/csharp/ql/lib/semmle/code/csharp/dispatch/Dispatch.qll b/csharp/ql/lib/semmle/code/csharp/dispatch/Dispatch.qll index f7f6c7a50be4..770fab65f545 100644 --- a/csharp/ql/lib/semmle/code/csharp/dispatch/Dispatch.qll +++ b/csharp/ql/lib/semmle/code/csharp/dispatch/Dispatch.qll @@ -1348,7 +1348,7 @@ private module Internal { any(DynamicMemberAccess dma | this = TDispatchDynamicEventAccess(_, dma, _)).getQualifier() } - override Expr getArgument(int i) { i = 0 and result = this.getCall().getRValue() } + override Expr getArgument(int i) { i = 0 and result = this.getCall().getRightOperand() } } /** A call to a constructor using dynamic types. */ diff --git a/csharp/ql/lib/semmle/code/csharp/exprs/Access.qll b/csharp/ql/lib/semmle/code/csharp/exprs/Access.qll index 84375bc70130..d9fb16f0974b 100644 --- a/csharp/ql/lib/semmle/code/csharp/exprs/Access.qll +++ b/csharp/ql/lib/semmle/code/csharp/exprs/Access.qll @@ -112,7 +112,7 @@ class BaseAccess extends Access, @base_access_expr { class MemberAccess extends Access, QualifiableExpr, @member_access_expr { override predicate hasImplicitThisQualifier() { QualifiableExpr.super.hasImplicitThisQualifier() and - not exists(MemberInitializer mi | mi.getLValue() = this) + not exists(MemberInitializer mi | mi.getLeftOperand() = this) } override Member getQualifiedDeclaration() { result = this.getTarget() } diff --git a/csharp/ql/lib/semmle/code/csharp/exprs/Assignment.qll b/csharp/ql/lib/semmle/code/csharp/exprs/Assignment.qll index 467149011d2c..8c7dd80da243 100644 --- a/csharp/ql/lib/semmle/code/csharp/exprs/Assignment.qll +++ b/csharp/ql/lib/semmle/code/csharp/exprs/Assignment.qll @@ -20,14 +20,22 @@ class Assignment extends BinaryOperation, @assign_expr { expr_parent(_, 1, this) } - /** Gets the left operand of this assignment. */ - Expr getLValue() { result = this.getLeftOperand() } + /** + * DEPRECATED: Use `getLeftOperand` instead. + * + * Gets the left operand of this assignment. + */ + deprecated Expr getLValue() { result = this.getLeftOperand() } - /** Gets the right operand of this assignment. */ - Expr getRValue() { result = this.getRightOperand() } + /** + * DEPRECATED: Use `getRightOperand` instead. + * + * Gets the right operand of this assignment. + */ + deprecated Expr getRValue() { result = this.getRightOperand() } /** Gets the variable being assigned to, if any. */ - Variable getTargetVariable() { result.getAnAccess() = this.getLValue() } + Variable getTargetVariable() { result.getAnAccess() = this.getLeftOperand() } override string getOperator() { none() } } @@ -40,7 +48,12 @@ class LocalVariableDeclAndInitExpr extends LocalVariableDeclExpr, Assignment { override LocalVariable getTargetVariable() { result = this.getVariable() } - override LocalVariableAccess getLValue() { result = Assignment.super.getLValue() } + /** + * DEPRECATED: Use `getLeftOperand` instead. + */ + deprecated override LocalVariableAccess getLValue() { result = this.getLeftOperand() } + + override LocalVariableAccess getLeftOperand() { result = Assignment.super.getLeftOperand() } override string toString() { result = LocalVariableDeclExpr.super.toString() + " = ..." } @@ -223,9 +236,12 @@ deprecated class AssignUnsighedRightShiftExpr = AssignUnsignedRightShiftExpr; */ class AddOrRemoveEventExpr extends AssignOperation, @assign_event_expr { /** Gets the event targeted by this event assignment. */ - Event getTarget() { result = this.getLValue().getTarget() } + Event getTarget() { result = this.getLeftOperand().getTarget() } - override EventAccess getLValue() { result = this.getChild(0) } + /** + * DEPRECATED: Use `getLeftOperand` instead. + */ + deprecated override EventAccess getLValue() { result = this.getLeftOperand() } override EventAccess getLeftOperand() { result = this.getChild(0) } } diff --git a/csharp/ql/lib/semmle/code/csharp/exprs/Call.qll b/csharp/ql/lib/semmle/code/csharp/exprs/Call.qll index 0d9e414a5c44..272a8e0caae9 100644 --- a/csharp/ql/lib/semmle/code/csharp/exprs/Call.qll +++ b/csharp/ql/lib/semmle/code/csharp/exprs/Call.qll @@ -773,7 +773,7 @@ class EventCall extends AccessorCall, EventAccessExpr { override EventAccessor getTarget() { exists(Event e, AddOrRemoveEventExpr aoree | e = this.getEvent() and - aoree.getLValue() = this + aoree.getLeftOperand() = this | aoree instanceof AddEventExpr and result = e.getAddEventAccessor() or @@ -784,8 +784,8 @@ class EventCall extends AccessorCall, EventAccessExpr { override Expr getArgument(int i) { i = 0 and exists(AddOrRemoveEventExpr aoree | - aoree.getLValue() = this and - result = aoree.getRValue() + aoree.getLeftOperand() = this and + result = aoree.getRightOperand() ) } diff --git a/csharp/ql/lib/semmle/code/csharp/exprs/Creation.qll b/csharp/ql/lib/semmle/code/csharp/exprs/Creation.qll index 0e16e0da9c3c..19ff9fac53b2 100644 --- a/csharp/ql/lib/semmle/code/csharp/exprs/Creation.qll +++ b/csharp/ql/lib/semmle/code/csharp/exprs/Creation.qll @@ -95,7 +95,7 @@ class MemberInitializer extends AssignExpr { MemberInitializer() { this.getParent() instanceof ObjectInitializer } /** Gets the initialized member. */ - Member getInitializedMember() { result.getAnAccess() = this.getLValue() } + Member getInitializedMember() { result.getAnAccess() = this.getLeftOperand() } override string getAPrimaryQlClass() { result = "MemberInitializer" } } diff --git a/csharp/ql/lib/semmle/code/csharp/exprs/Expr.qll b/csharp/ql/lib/semmle/code/csharp/exprs/Expr.qll index 66764d06479d..36eda82531c5 100644 --- a/csharp/ql/lib/semmle/code/csharp/exprs/Expr.qll +++ b/csharp/ql/lib/semmle/code/csharp/exprs/Expr.qll @@ -1099,7 +1099,7 @@ class QualifiableExpr extends Expr, @qualifiable_expr { } private Expr getAnAssignOrForeachChild() { - result = any(AssignExpr e).getLValue() + result = any(AssignExpr e).getLeftOperand() or result = any(ForeachStmt fs).getVariableDeclTuple() or diff --git a/csharp/ql/lib/semmle/code/csharp/frameworks/Moq.qll b/csharp/ql/lib/semmle/code/csharp/frameworks/Moq.qll index 9ab9a026fd29..0beec9a84b28 100644 --- a/csharp/ql/lib/semmle/code/csharp/frameworks/Moq.qll +++ b/csharp/ql/lib/semmle/code/csharp/frameworks/Moq.qll @@ -41,6 +41,6 @@ class ReturnedByMockObject extends ObjectCreation { * Gets a value used to initialize a member of this object creation. */ Expr getAMemberInitializationValue() { - result = this.getInitializer().(ObjectInitializer).getAMemberInitializer().getRValue() + result = this.getInitializer().(ObjectInitializer).getAMemberInitializer().getRightOperand() } } diff --git a/csharp/ql/lib/semmle/code/csharp/frameworks/Sql.qll b/csharp/ql/lib/semmle/code/csharp/frameworks/Sql.qll index 6b1eb7b67fb7..58d6d68bf0ea 100644 --- a/csharp/ql/lib/semmle/code/csharp/frameworks/Sql.qll +++ b/csharp/ql/lib/semmle/code/csharp/frameworks/Sql.qll @@ -17,14 +17,14 @@ abstract class SqlExpr extends Expr { class CommandTextAssignmentSqlExpr extends SqlExpr, AssignExpr { CommandTextAssignmentSqlExpr() { exists(Property p, SystemDataIDbCommandInterface i, Property text | - p = this.getLValue().(PropertyAccess).getTarget() and + p = this.getLeftOperand().(PropertyAccess).getTarget() and text = i.getCommandTextProperty() | p.overridesOrImplementsOrEquals(text) ) } - override Expr getSql() { result = this.getRValue() } + override Expr getSql() { result = this.getRightOperand() } } /** A construction of an unknown `IDbCommand` object. */ diff --git a/csharp/ql/lib/semmle/code/csharp/security/auth/SecureCookies.qll b/csharp/ql/lib/semmle/code/csharp/security/auth/SecureCookies.qll index 56b6294949b8..e7cb6d8e3081 100644 --- a/csharp/ql/lib/semmle/code/csharp/security/auth/SecureCookies.qll +++ b/csharp/ql/lib/semmle/code/csharp/security/auth/SecureCookies.qll @@ -100,20 +100,20 @@ Expr getAValueForCookiePolicyProp(string prop) { Expr getAValueForProp(ObjectCreation create, Assignment a, string prop) { // values set in object init exists(MemberInitializer init, Expr src, PropertyAccess pa | - a.getLValue() = pa and + a.getLeftOperand() = pa and pa.getTarget().hasName(prop) and init = create.getInitializer().(ObjectInitializer).getAMemberInitializer() and - init.getLValue() = pa and - DataFlow::localExprFlow(src, init.getRValue()) and + init.getLeftOperand() = pa and + DataFlow::localExprFlow(src, init.getRightOperand()) and result = src ) or // values set on var that create is assigned to exists(Expr src, PropertyAccess pa | - a.getLValue() = pa and + a.getLeftOperand() = pa and pa.getTarget().hasName(prop) and DataFlow::localExprFlow(create, pa.getQualifier()) and - DataFlow::localExprFlow(src, a.getRValue()) and + DataFlow::localExprFlow(src, a.getRightOperand()) and result = src ) } @@ -138,15 +138,15 @@ private module OnAppendCookieTrackingConfig impl exists(PropertyWrite pw, Assignment delegateAssign, Callable c | pw.getProperty().getName() = "OnAppendCookie" and pw.getProperty().getDeclaringType() instanceof MicrosoftAspNetCoreBuilderCookiePolicyOptions and - delegateAssign.getLValue() = pw and + delegateAssign.getLeftOperand() = pw and ( exists(LambdaExpr lambda | - delegateAssign.getRValue() = lambda and + delegateAssign.getRightOperand() = lambda and lambda = c ) or exists(DelegateCreation delegate | - delegateAssign.getRValue() = delegate and + delegateAssign.getRightOperand() = delegate and delegate.getArgument().(CallableAccess).getTarget() = c ) ) and @@ -159,9 +159,9 @@ private module OnAppendCookieTrackingConfig impl exists(PropertyWrite pw, Assignment a | pw.getProperty().getDeclaringType() instanceof MicrosoftAspNetCoreHttpCookieOptions and pw.getProperty().getName() = getPropertyName() and - a.getLValue() = pw and + a.getLeftOperand() = pw and exists(Expr val | - DataFlow::localExprFlow(val, a.getRValue()) and + DataFlow::localExprFlow(val, a.getRightOperand()) and val.getValue() = "true" ) and sink.asExpr() = pw.getQualifier() diff --git a/csharp/ql/lib/semmle/code/csharp/security/dataflow/UnsafeDeserializationQuery.qll b/csharp/ql/lib/semmle/code/csharp/security/dataflow/UnsafeDeserializationQuery.qll index 5b2bd407a5ce..3c8911ef8074 100644 --- a/csharp/ql/lib/semmle/code/csharp/security/dataflow/UnsafeDeserializationQuery.qll +++ b/csharp/ql/lib/semmle/code/csharp/security/dataflow/UnsafeDeserializationQuery.qll @@ -126,16 +126,16 @@ private module TypeNameTrackingConfig implements DataFlow::ConfigSig { or node1.getType() instanceof TypeNameHandlingEnum and exists(PropertyWrite pw, Property p, Assignment a | - a.getLValue() = pw and + a.getLeftOperand() = pw and pw.getProperty() = p and p.getDeclaringType() instanceof JsonSerializerSettingsClass and p.hasName("TypeNameHandling") and ( - node1.asExpr() = a.getRValue() and + node1.asExpr() = a.getRightOperand() and node2.asExpr() = pw.getQualifier() or exists(ObjectInitializer oi | - node1.asExpr() = oi.getAMemberInitializer().getRValue() and + node1.asExpr() = oi.getAMemberInitializer().getRightOperand() and node2.asExpr() = oi ) ) diff --git a/csharp/ql/lib/semmle/code/csharp/security/xml/InsecureXMLQuery.qll b/csharp/ql/lib/semmle/code/csharp/security/xml/InsecureXMLQuery.qll index 1abeaf797b00..765dc2adf54a 100644 --- a/csharp/ql/lib/semmle/code/csharp/security/xml/InsecureXMLQuery.qll +++ b/csharp/ql/lib/semmle/code/csharp/security/xml/InsecureXMLQuery.qll @@ -84,15 +84,15 @@ private Expr getAValueForProp(ObjectCreation create, string prop) { // values set in object init exists(MemberInitializer init | init = create.getInitializer().(ObjectInitializer).getAMemberInitializer() and - init.getLValue().(PropertyAccess).getTarget().hasName(prop) and - result = init.getRValue() + init.getLeftOperand().(PropertyAccess).getTarget().hasName(prop) and + result = init.getRightOperand() ) or // values set on var that create is assigned to exists(Assignment propAssign | - DataFlow::localExprFlow(create, propAssign.getLValue().(PropertyAccess).getQualifier()) and - propAssign.getLValue().(PropertyAccess).getTarget().hasName(prop) and - result = propAssign.getRValue() + DataFlow::localExprFlow(create, propAssign.getLeftOperand().(PropertyAccess).getQualifier()) and + propAssign.getLeftOperand().(PropertyAccess).getTarget().hasName(prop) and + result = propAssign.getRightOperand() ) } diff --git a/csharp/ql/src/Dead Code/NonAssignedFields.ql b/csharp/ql/src/Dead Code/NonAssignedFields.ql index 83aa889b77c7..b9e868097493 100644 --- a/csharp/ql/src/Dead Code/NonAssignedFields.ql +++ b/csharp/ql/src/Dead Code/NonAssignedFields.ql @@ -84,9 +84,9 @@ where not f.getDeclaringType() instanceof Enum and not f.getType() instanceof Struct and not exists(Assignment ae, Field g | - ae.getLValue().(FieldAccess).getTarget() = g and + ae.getLeftOperand().(FieldAccess).getTarget() = g and g.getUnboundDeclaration() = f and - not ae.getRValue() instanceof NullLiteral + not ae.getRightOperand() instanceof NullLiteral ) and not exists(MethodCall mc, int i, Field g | exists(Parameter p | mc.getTarget().getParameter(i) = p | p.isOut() or p.isRef()) and @@ -101,7 +101,7 @@ where not init instanceof NullLiteral ) and not exists(AssignOperation ua, Field g | - ua.getLValue().(FieldAccess).getTarget() = g and + ua.getLeftOperand().(FieldAccess).getTarget() = g and g.getUnboundDeclaration() = f ) and not exists(MutatorOperation op | diff --git a/csharp/ql/src/Language Abuse/ForeachCapture.ql b/csharp/ql/src/Language Abuse/ForeachCapture.ql index 03f1f99a044c..2ed24b42eba9 100644 --- a/csharp/ql/src/Language Abuse/ForeachCapture.ql +++ b/csharp/ql/src/Language Abuse/ForeachCapture.ql @@ -60,16 +60,16 @@ module LambdaDataFlow { } Element getAssignmentTarget(Expr e) { - exists(Assignment a | a.getRValue() = e | - result = a.getLValue().(PropertyAccess).getTarget() or - result = a.getLValue().(FieldAccess).getTarget() or - result = a.getLValue().(LocalVariableAccess).getTarget() or - result = a.getLValue().(EventAccess).getTarget() + exists(Assignment a | a.getRightOperand() = e | + result = a.getLeftOperand().(PropertyAccess).getTarget() or + result = a.getLeftOperand().(FieldAccess).getTarget() or + result = a.getLeftOperand().(LocalVariableAccess).getTarget() or + result = a.getLeftOperand().(EventAccess).getTarget() ) or exists(AddEventExpr aee | - e = aee.getRValue() and - result = aee.getLValue().getTarget() + e = aee.getRightOperand() and + result = aee.getLeftOperand().getTarget() ) or result = getCollectionAssignmentTarget(e) @@ -97,8 +97,8 @@ Element getCollectionAssignmentTarget(Expr e) { // Store values using indexer exists(IndexerAccess ia, AssignExpr ae | ia.getQualifier() = result.(Variable).getAnAccess() and - ia = ae.getLValue() and - e = ae.getRValue() + ia = ae.getLeftOperand() and + e = ae.getRightOperand() ) } diff --git a/csharp/ql/src/Language Abuse/MissedTernaryOpportunity.ql b/csharp/ql/src/Language Abuse/MissedTernaryOpportunity.ql index bd7492b8583e..01d6baa95732 100644 --- a/csharp/ql/src/Language Abuse/MissedTernaryOpportunity.ql +++ b/csharp/ql/src/Language Abuse/MissedTernaryOpportunity.ql @@ -15,7 +15,7 @@ import csharp import semmle.code.csharp.commons.StructuralComparison private Expr getAssignedExpr(Stmt stmt) { - result = stmt.stripSingletonBlocks().(ExprStmt).getExpr().(AssignExpr).getLValue() + result = stmt.stripSingletonBlocks().(ExprStmt).getExpr().(AssignExpr).getLeftOperand() } from IfStmt is, string what diff --git a/csharp/ql/src/Likely Bugs/Collections/WriteOnlyContainer.ql b/csharp/ql/src/Likely Bugs/Collections/WriteOnlyContainer.ql index 5fcb140e6791..046099213cc6 100644 --- a/csharp/ql/src/Likely Bugs/Collections/WriteOnlyContainer.ql +++ b/csharp/ql/src/Likely Bugs/Collections/WriteOnlyContainer.ql @@ -23,9 +23,10 @@ where ) and forex(Access a | a = v.getAnAccess() | a = any(ModifierMethodCall m).getQualifier() or - a = any(AssignExpr ass | ass.getRValue() instanceof ObjectCreation).getLValue() or + a = any(AssignExpr ass | ass.getRightOperand() instanceof ObjectCreation).getLeftOperand() or a = - any(LocalVariableDeclAndInitExpr ass | ass.getRValue() instanceof ObjectCreation).getLValue() + any(LocalVariableDeclAndInitExpr ass | ass.getRightOperand() instanceof ObjectCreation) + .getLeftOperand() ) and not v = any(ForeachStmt fs).getVariable() and not v = any(BindingPatternExpr vpe).getVariableDeclExpr().getVariable() and diff --git a/csharp/ql/src/Likely Bugs/SelfAssignment.ql b/csharp/ql/src/Likely Bugs/SelfAssignment.ql index f01a1378242e..6e51b87a779f 100644 --- a/csharp/ql/src/Likely Bugs/SelfAssignment.ql +++ b/csharp/ql/src/Likely Bugs/SelfAssignment.ql @@ -19,7 +19,7 @@ private predicate candidate(AssignExpr ae) { not ae instanceof MemberInitializer and // Enum field initializers are never self assignments. `enum E { A = 42 }` not ae.getParent().(Field).getDeclaringType() instanceof Enum and - forall(Expr e | e = ae.getLValue().getAChildExpr*() | + forall(Expr e | e = ae.getLeftOperand().getAChildExpr*() | // Non-trivial property accesses may have side-effects, // so these are not considered e instanceof PropertyAccess implies e instanceof TrivialPropertyAccess @@ -28,7 +28,7 @@ private predicate candidate(AssignExpr ae) { private predicate selfAssignExpr(AssignExpr ae) { candidate(ae) and - sameGvn(ae.getLValue(), ae.getRValue()) + sameGvn(ae.getLeftOperand(), ae.getRightOperand()) } private Declaration getDeclaration(Expr e) { @@ -40,5 +40,5 @@ private Declaration getDeclaration(Expr e) { } from AssignExpr ae, Declaration target -where selfAssignExpr(ae) and target = getDeclaration(ae.getLValue()) +where selfAssignExpr(ae) and target = getDeclaration(ae.getLeftOperand()) select ae, "This assignment assigns $@ to itself.", target, target.getName() diff --git a/csharp/ql/src/Linq/BadMultipleIteration.ql b/csharp/ql/src/Linq/BadMultipleIteration.ql index 8146bbf167d8..0f9e335e2251 100644 --- a/csharp/ql/src/Linq/BadMultipleIteration.ql +++ b/csharp/ql/src/Linq/BadMultipleIteration.ql @@ -50,7 +50,7 @@ predicate potentiallyConsumingAccess(VariableAccess va) { Expr sequenceSource(IEnumerableSequence seq) { result = seq.getInitializer() or - exists(Assignment a | a.getLValue() = seq.getAnAccess() and result = a.getRValue()) + exists(Assignment a | a.getLeftOperand() = seq.getAnAccess() and result = a.getRightOperand()) } from IEnumerableSequence seq, VariableAccess va diff --git a/csharp/ql/src/Performance/StringConcatenationInLoop.ql b/csharp/ql/src/Performance/StringConcatenationInLoop.ql index 3b3228588a4b..d27b99e7bdd0 100644 --- a/csharp/ql/src/Performance/StringConcatenationInLoop.ql +++ b/csharp/ql/src/Performance/StringConcatenationInLoop.ql @@ -24,7 +24,7 @@ class StringCat extends AddExpr { */ predicate isSelfConcatAssignExpr(AssignExpr e, Variable v) { exists(VariableAccess use | - stringCatContains(e.getRValue(), use) and + stringCatContains(e.getRightOperand(), use) and use.getTarget() = e.getTargetVariable() and v = use.getTarget() ) @@ -41,7 +41,7 @@ predicate stringCatContains(StringCat expr, Expr child) { * where `v` is a simple variable (and not, for example, a property). */ predicate isConcatExpr(AssignAddExpr e, Variable v) { - e.getLValue().getType() instanceof StringType and + e.getLeftOperand().getType() instanceof StringType and v = e.getTargetVariable() } diff --git a/csharp/ql/src/Security Features/CWE-1004/CookieWithoutHttpOnly.ql b/csharp/ql/src/Security Features/CWE-1004/CookieWithoutHttpOnly.ql index dcc520540bb0..f72de01b5db2 100644 --- a/csharp/ql/src/Security Features/CWE-1004/CookieWithoutHttpOnly.ql +++ b/csharp/ql/src/Security Features/CWE-1004/CookieWithoutHttpOnly.ql @@ -27,8 +27,8 @@ predicate cookieAppendHttpOnlyByDefault() { predicate httpOnlyFalse(ObjectCreation oc) { exists(Assignment a | - getAValueForProp(oc, a, "HttpOnly") = a.getRValue() and - a.getRValue().getValue() = "false" + getAValueForProp(oc, a, "HttpOnly") = a.getRightOperand() and + a.getRightOperand().getValue() = "false" ) } @@ -100,8 +100,8 @@ predicate nonHttpOnlyCookieBuilderAssignment(Assignment a, Expr val) { MicrosoftAspNetCoreAuthenticationCookiesCookieAuthenticationOptions ) and pw.getProperty().getName() = "HttpOnly" and - a.getLValue() = pw and - DataFlow::localExprFlow(val, a.getRValue()) + a.getLeftOperand() = pw and + DataFlow::localExprFlow(val, a.getRightOperand()) ) } @@ -111,7 +111,7 @@ where nonHttpOnlyCookieCall(httpOnlySink) or exists(Assignment a | - httpOnlySink = a.getRValue() and + httpOnlySink = a.getRightOperand() and nonHttpOnlyCookieBuilderAssignment(a, _) ) ) diff --git a/csharp/ql/src/Security Features/CWE-327/InsecureSQLConnection.ql b/csharp/ql/src/Security Features/CWE-327/InsecureSQLConnection.ql index 330ad1c1c329..a1dd249fabac 100644 --- a/csharp/ql/src/Security Features/CWE-327/InsecureSQLConnection.ql +++ b/csharp/ql/src/Security Features/CWE-327/InsecureSQLConnection.ql @@ -35,8 +35,8 @@ module InsecureSqlConnectionConfig implements DataFlow::ConfigSig { ) and not exists(MemberInitializer mi | mi = oc.getInitializer().(ObjectInitializer).getAMemberInitializer() and - mi.getLValue().(PropertyAccess).getTarget().getName() = "Encrypt" and - mi.getRValue().(BoolLiteral).getValue() = "true" + mi.getLeftOperand().(PropertyAccess).getTarget().getName() = "Encrypt" and + mi.getRightOperand().(BoolLiteral).getValue() = "true" ) ) } diff --git a/csharp/ql/src/Security Features/CWE-614/CookieWithoutSecure.ql b/csharp/ql/src/Security Features/CWE-614/CookieWithoutSecure.ql index ce1f75d627c7..1149b4bcad24 100644 --- a/csharp/ql/src/Security Features/CWE-614/CookieWithoutSecure.ql +++ b/csharp/ql/src/Security Features/CWE-614/CookieWithoutSecure.ql @@ -31,8 +31,8 @@ predicate cookieAppendSecureByDefault() { predicate secureFalse(ObjectCreation oc) { exists(Assignment a | - getAValueForProp(oc, a, "Secure") = a.getRValue() and - a.getRValue().getValue() = "false" + getAValueForProp(oc, a, "Secure") = a.getRightOperand() and + a.getRightOperand().getValue() = "false" ) } @@ -96,8 +96,8 @@ predicate insecureSecurePolicyAssignment(Assignment a, Expr val) { MicrosoftAspNetCoreAuthenticationCookiesCookieAuthenticationOptions ) and pw.getProperty().getName() = "SecurePolicy" and - a.getLValue() = pw and - DataFlow::localExprFlow(val, a.getRValue()) and + a.getLeftOperand() = pw and + DataFlow::localExprFlow(val, a.getRightOperand()) and val.getValue() = "2" // None ) } @@ -107,7 +107,7 @@ where insecureCookieCall(secureSink) or exists(Assignment a | - secureSink = a.getRValue() and + secureSink = a.getRightOperand() and insecureSecurePolicyAssignment(a, _) ) select secureSink, "Cookie attribute 'Secure' is not set to true." diff --git a/csharp/ql/src/Security Features/CookieWithOverlyBroadDomain.ql b/csharp/ql/src/Security Features/CookieWithOverlyBroadDomain.ql index 9c6e69351860..59a6340104a9 100644 --- a/csharp/ql/src/Security Features/CookieWithOverlyBroadDomain.ql +++ b/csharp/ql/src/Security Features/CookieWithOverlyBroadDomain.ql @@ -14,11 +14,11 @@ import csharp from Assignment a, PropertyAccess pa where - a.getLValue() = pa and + a.getLeftOperand() = pa and pa.getTarget().hasName("Domain") and pa.getTarget().getDeclaringType().hasFullyQualifiedName("System.Web", "HttpCookie") and ( - a.getRValue().getValue().regexpReplaceAll("[^.]", "").length() < 2 or - a.getRValue().getValue().matches(".%") + a.getRightOperand().getValue().regexpReplaceAll("[^.]", "").length() < 2 or + a.getRightOperand().getValue().matches(".%") ) select a, "Overly broad domain for cookie." diff --git a/csharp/ql/src/Security Features/CookieWithOverlyBroadPath.ql b/csharp/ql/src/Security Features/CookieWithOverlyBroadPath.ql index 6690cac47d26..d659f7c8dc56 100644 --- a/csharp/ql/src/Security Features/CookieWithOverlyBroadPath.ql +++ b/csharp/ql/src/Security Features/CookieWithOverlyBroadPath.ql @@ -14,8 +14,8 @@ import csharp from Assignment a, PropertyAccess pa where - a.getLValue() = pa and + a.getLeftOperand() = pa and pa.getTarget().hasName("Path") and pa.getTarget().getDeclaringType().hasFullyQualifiedName("System.Web", "HttpCookie") and - a.getRValue().getValue() = "/" + a.getRightOperand().getValue() = "/" select a, "Overly broad path for cookie." diff --git a/csharp/ql/src/Security Features/HeaderCheckingDisabled.ql b/csharp/ql/src/Security Features/HeaderCheckingDisabled.ql index 7a3a5fdc4f20..bc9bf289c2dd 100644 --- a/csharp/ql/src/Security Features/HeaderCheckingDisabled.ql +++ b/csharp/ql/src/Security Features/HeaderCheckingDisabled.ql @@ -17,12 +17,12 @@ from Element l where // header checking is disabled programmatically in the code exists(Assignment a, PropertyAccess pa | - a.getLValue() = pa and + a.getLeftOperand() = pa and pa.getTarget().hasName("EnableHeaderChecking") and pa.getTarget() .getDeclaringType() .hasFullyQualifiedName("System.Web.Configuration", "HttpRuntimeSection") and - a.getRValue().getValue() = "false" and + a.getRightOperand().getValue() = "false" and a = l ) or diff --git a/csharp/ql/src/Security Features/InsecureRandomness.ql b/csharp/ql/src/Security Features/InsecureRandomness.ql index 8237afdff130..649969a27782 100644 --- a/csharp/ql/src/Security Features/InsecureRandomness.ql +++ b/csharp/ql/src/Security Features/InsecureRandomness.ql @@ -89,10 +89,10 @@ module Random { e = any(SensitiveLibraryParameter v).getAnAssignedArgument() or // Assignment operation, e.g. += or similar - exists(AssignOperation ao | ao.getRValue() = e | - ao.getLValue() = any(SensitiveVariable v).getAnAccess() or - ao.getLValue() = any(SensitiveProperty v).getAnAccess() or - ao.getLValue() = any(SensitiveLibraryParameter v).getAnAccess() + exists(AssignOperation ao | ao.getRightOperand() = e | + ao.getLeftOperand() = any(SensitiveVariable v).getAnAccess() or + ao.getLeftOperand() = any(SensitiveProperty v).getAnAccess() or + ao.getLeftOperand() = any(SensitiveLibraryParameter v).getAnAccess() ) ) } diff --git a/csharp/ql/src/Security Features/InsufficientKeySize.ql b/csharp/ql/src/Security Features/InsufficientKeySize.ql index 94ae6b9286f2..02be9125835b 100644 --- a/csharp/ql/src/Security Features/InsufficientKeySize.ql +++ b/csharp/ql/src/Security Features/InsufficientKeySize.ql @@ -20,7 +20,7 @@ predicate incorrectUseOfRC2(Assignment e, string msg) { .getDeclaringType() .hasFullyQualifiedName("System.Security.Cryptography", "RC2CryptoServiceProvider") ) and - e.getRValue().getValue().toInt() < 128 and + e.getRightOperand().getValue().toInt() < 128 and msg = "Key size should be at least 128 bits for RC2 encryption." } diff --git a/csharp/ql/src/Security Features/PersistentCookie.ql b/csharp/ql/src/Security Features/PersistentCookie.ql index 7f9861213fc1..edc97b464e5c 100644 --- a/csharp/ql/src/Security Features/PersistentCookie.ql +++ b/csharp/ql/src/Security Features/PersistentCookie.ql @@ -52,8 +52,8 @@ class FutureDateExpr extends MethodCall { from Assignment a, PropertyAccess pa, FutureDateExpr fde where - a.getLValue() = pa and - a.getRValue() = fde and + a.getLeftOperand() = pa and + a.getRightOperand() = fde and pa.getTarget().hasName("Expires") and pa.getTarget().getDeclaringType().hasFullyQualifiedName("System.Web", "HttpCookie") and (fde.timeIsNotClear() or fde.getTimeInSecond() > 300) // 5 minutes max diff --git a/csharp/ql/src/Telemetry/DatabaseQuality.qll b/csharp/ql/src/Telemetry/DatabaseQuality.qll index ca2ab3e7e165..ad7ac682bf5c 100644 --- a/csharp/ql/src/Telemetry/DatabaseQuality.qll +++ b/csharp/ql/src/Telemetry/DatabaseQuality.qll @@ -27,7 +27,7 @@ module CallTargetStats implements StatsSig { p = c.getProperty() and not p.getAnAccessor() instanceof Setter and assign = c.getParent() and - assign.getLValue() = c and + assign.getLeftOperand() = c and assign.getParent() instanceof Property ) } @@ -36,7 +36,7 @@ module CallTargetStats implements StatsSig { exists(Property p, AssignExpr assign | p = c.getProperty() and assign = c.getParent() and - assign.getLValue() = c and + assign.getLeftOperand() = c and assign.getParent() instanceof ObjectInitializer and assign.getParent().getParent() instanceof AnonymousObjectCreation ) @@ -46,8 +46,8 @@ module CallTargetStats implements StatsSig { exists(Property p, AssignExpr assign | p = c.getProperty() and assign = c.getParent() and - assign.getLValue() = c and - assign.getRValue() instanceof ObjectOrCollectionInitializer + assign.getLeftOperand() = c and + assign.getRightOperand() instanceof ObjectOrCollectionInitializer ) } diff --git a/csharp/ql/src/experimental/Security Features/CWE-759/HashWithoutSalt.ql b/csharp/ql/src/experimental/Security Features/CWE-759/HashWithoutSalt.ql index d43050c2deb4..0dc8fc362d61 100644 --- a/csharp/ql/src/experimental/Security Features/CWE-759/HashWithoutSalt.ql +++ b/csharp/ql/src/experimental/Security Features/CWE-759/HashWithoutSalt.ql @@ -187,10 +187,10 @@ module HashWithoutSaltConfig implements DataFlow::ConfigSig { or // a salt or key is included in subclasses of `KeyedHashAlgorithm` exists(MethodCall mc, Assignment a, ObjectCreation oc | - a.getRValue() = oc and + a.getRightOperand() = oc and oc.getObjectType().getABaseType+() instanceof KeyedHashAlgorithm and mc.getTarget() instanceof HashMethod and - a.getLValue() = mc.getQualifier().(VariableAccess).getTarget().getAnAccess() and + a.getLeftOperand() = mc.getQualifier().(VariableAccess).getTarget().getAnAccess() and mc.getArgument(0) = node.asExpr() ) } diff --git a/csharp/ql/test/library-tests/assignments/AssignOperation.ql b/csharp/ql/test/library-tests/assignments/AssignOperation.ql index 2ca3b11a8313..2fa23ed0a9f3 100644 --- a/csharp/ql/test/library-tests/assignments/AssignOperation.ql +++ b/csharp/ql/test/library-tests/assignments/AssignOperation.ql @@ -1,4 +1,4 @@ import csharp from AssignOperation ao -select ao, ao.getLValue(), ao.getRValue() +select ao, ao.getLeftOperand(), ao.getRightOperand() diff --git a/csharp/ql/test/library-tests/conversion/pointer/Pointer.ql b/csharp/ql/test/library-tests/conversion/pointer/Pointer.ql index 69e7db8c1cf1..450ed9940a8c 100644 --- a/csharp/ql/test/library-tests/conversion/pointer/Pointer.ql +++ b/csharp/ql/test/library-tests/conversion/pointer/Pointer.ql @@ -1,5 +1,5 @@ import csharp from Assignment a -select a.getLocation(), a.getLValue().getType().toString(), a.getRValue().getType().toString(), - a.getRValue().toString() +select a.getLocation(), a.getLeftOperand().getType().toString(), + a.getRightOperand().getType().toString(), a.getRightOperand().toString() diff --git a/csharp/ql/test/library-tests/csharp10/lambda.ql b/csharp/ql/test/library-tests/csharp10/lambda.ql index 3cfec302b525..55c7faac0495 100644 --- a/csharp/ql/test/library-tests/csharp10/lambda.ql +++ b/csharp/ql/test/library-tests/csharp10/lambda.ql @@ -3,7 +3,7 @@ import csharp private predicate getLambda( LocalVariableDeclAndInitExpr e, string type, LocalVariable v, LambdaExpr lexp ) { - lexp = e.getRValue() and + lexp = e.getRightOperand() and v = e.getTargetVariable() and type = e.getType().toStringWithTypes() } diff --git a/csharp/ql/test/library-tests/csharp11/operators.ql b/csharp/ql/test/library-tests/csharp11/operators.ql index 607efac0c26c..f1543e2d744a 100644 --- a/csharp/ql/test/library-tests/csharp11/operators.ql +++ b/csharp/ql/test/library-tests/csharp11/operators.ql @@ -14,8 +14,8 @@ query predicate assignbitwise( AssignBitwiseOperation op, Expr left, Expr right, string name, string qlclass ) { op.getFile().getStem() = "Operators" and - left = op.getLValue() and - right = op.getRValue() and + left = op.getLeftOperand() and + right = op.getRightOperand() and name = op.getOperator() and qlclass = op.getAPrimaryQlClass() } diff --git a/csharp/ql/test/library-tests/csharp6/MemberInitializer.ql b/csharp/ql/test/library-tests/csharp6/MemberInitializer.ql index f3ef63fe2257..1895792f07c1 100644 --- a/csharp/ql/test/library-tests/csharp6/MemberInitializer.ql +++ b/csharp/ql/test/library-tests/csharp6/MemberInitializer.ql @@ -12,7 +12,7 @@ query predicate indexerCalls(IndexerCall indexer, int arg, Expr value) { query predicate elementAssignments( ElementWrite write, Assignment assignment, int index, Expr indexer ) { - write = assignment.getLValue() and indexer = write.getIndex(index) + write = assignment.getLeftOperand() and indexer = write.getIndex(index) } query predicate arrayQualifiers(ElementAccess access, Expr qualifier) { diff --git a/csharp/ql/test/library-tests/enums/Enums11.ql b/csharp/ql/test/library-tests/enums/Enums11.ql index 36b2c005a213..f6133517f7d6 100644 --- a/csharp/ql/test/library-tests/enums/Enums11.ql +++ b/csharp/ql/test/library-tests/enums/Enums11.ql @@ -6,7 +6,7 @@ import csharp from Expr e where - exists(Assignment a | a.getRValue() = e | + exists(Assignment a | a.getRightOperand() = e | a.getParent().(Field).getDeclaringType() instanceof Enum ) select e, e.getValue() diff --git a/csharp/ql/test/library-tests/expressions/AddEventExpr1.ql b/csharp/ql/test/library-tests/expressions/AddEventExpr1.ql index 48f6b41e19d2..e3c1530fb1a0 100644 --- a/csharp/ql/test/library-tests/expressions/AddEventExpr1.ql +++ b/csharp/ql/test/library-tests/expressions/AddEventExpr1.ql @@ -9,5 +9,5 @@ where c.hasName("LoginDialog") and e.getEnclosingCallable() = c and e.getTarget().hasName("Click") and - e.getLValue().getQualifier().(FieldAccess).getTarget().hasName("OkButton") + e.getLeftOperand().getQualifier().(FieldAccess).getTarget().hasName("OkButton") select c, e diff --git a/csharp/ql/test/library-tests/expressions/AnonymousMethod1.ql b/csharp/ql/test/library-tests/expressions/AnonymousMethod1.ql index 2c8268e87e19..74e9d3cb1ffe 100644 --- a/csharp/ql/test/library-tests/expressions/AnonymousMethod1.ql +++ b/csharp/ql/test/library-tests/expressions/AnonymousMethod1.ql @@ -6,7 +6,7 @@ import csharp from Assignment assign, AnonymousMethodExpr e where - assign.getLValue().(VariableAccess).getTarget().hasName("f7") and + assign.getLeftOperand().(VariableAccess).getTarget().hasName("f7") and e.getParent+() = assign and e.getNumberOfParameters() = 1 and e.getParameter(0).getType() instanceof IntType and diff --git a/csharp/ql/test/library-tests/expressions/AnonymousMethod2.ql b/csharp/ql/test/library-tests/expressions/AnonymousMethod2.ql index e9fbbf01a10b..8f0390b0f825 100644 --- a/csharp/ql/test/library-tests/expressions/AnonymousMethod2.ql +++ b/csharp/ql/test/library-tests/expressions/AnonymousMethod2.ql @@ -6,7 +6,7 @@ import csharp from Assignment assign, AnonymousMethodExpr e, Parameter p, ParameterAccess pa where - assign.getLValue().(VariableAccess).getTarget().hasName("f7") and + assign.getLeftOperand().(VariableAccess).getTarget().hasName("f7") and e.getParent+() = assign and e.getNumberOfParameters() = 1 and p = e.getParameter(0) and diff --git a/csharp/ql/test/library-tests/expressions/AnonymousMethod3.ql b/csharp/ql/test/library-tests/expressions/AnonymousMethod3.ql index e4c2e9ae9ba9..46d8907319d5 100644 --- a/csharp/ql/test/library-tests/expressions/AnonymousMethod3.ql +++ b/csharp/ql/test/library-tests/expressions/AnonymousMethod3.ql @@ -6,7 +6,7 @@ import csharp from Assignment assign, AnonymousMethodExpr e where - assign.getLValue().(VariableAccess).getTarget().hasName("f7") and + assign.getLeftOperand().(VariableAccess).getTarget().hasName("f7") and e.getParent+() = assign and e.getNumberOfParameters() = 1 and e.getType().(DelegateType).getReturnType() instanceof IntType diff --git a/csharp/ql/test/library-tests/expressions/AnonymousMethod4.ql b/csharp/ql/test/library-tests/expressions/AnonymousMethod4.ql index 4d424b65b84a..cca81c6b04e9 100644 --- a/csharp/ql/test/library-tests/expressions/AnonymousMethod4.ql +++ b/csharp/ql/test/library-tests/expressions/AnonymousMethod4.ql @@ -6,7 +6,7 @@ import csharp from Assignment assign, AnonymousMethodExpr e where - assign.getLValue().(VariableAccess).getTarget().hasName("f8") and + assign.getLeftOperand().(VariableAccess).getTarget().hasName("f8") and e.getParent+() = assign and e.hasNoParameters() select e, e diff --git a/csharp/ql/test/library-tests/expressions/AnonymousMethod5.ql b/csharp/ql/test/library-tests/expressions/AnonymousMethod5.ql index cbc6ac82ca7e..577d810dfad3 100644 --- a/csharp/ql/test/library-tests/expressions/AnonymousMethod5.ql +++ b/csharp/ql/test/library-tests/expressions/AnonymousMethod5.ql @@ -6,7 +6,7 @@ import csharp from Assignment assign, AnonymousMethodExpr e, LocalVariableAccess va where - assign.getLValue().(VariableAccess).getTarget().hasName("f8") and + assign.getLeftOperand().(VariableAccess).getTarget().hasName("f8") and e.getParent+() = assign and e.hasNoParameters() and va.getEnclosingStmt().getParent+() = e.getBody() and diff --git a/csharp/ql/test/library-tests/expressions/AnonymousObjectCreation1.ql b/csharp/ql/test/library-tests/expressions/AnonymousObjectCreation1.ql index 74d8cd27a948..c717aa260e07 100644 --- a/csharp/ql/test/library-tests/expressions/AnonymousObjectCreation1.ql +++ b/csharp/ql/test/library-tests/expressions/AnonymousObjectCreation1.ql @@ -6,11 +6,11 @@ import csharp from Assignment assign, AnonymousObjectCreation o, Assignment a, Property p where - assign.getLValue().(VariableAccess).getTarget().hasName("list2") and + assign.getLeftOperand().(VariableAccess).getTarget().hasName("list2") and o.getParent+() = assign and o.getInitializer().getMemberInitializer(0) = a and - a.getRValue().getValue() = "2" and - p = a.getLValue().(PropertyAccess).getTarget() and + a.getRightOperand().getValue() = "2" and + p = a.getLeftOperand().(PropertyAccess).getTarget() and p.hasName("i") and p.getDeclaringType() = o.getObjectType() select o diff --git a/csharp/ql/test/library-tests/expressions/AnonymousObjectCreation2.ql b/csharp/ql/test/library-tests/expressions/AnonymousObjectCreation2.ql index 5f9e16564b42..d55bf89d606b 100644 --- a/csharp/ql/test/library-tests/expressions/AnonymousObjectCreation2.ql +++ b/csharp/ql/test/library-tests/expressions/AnonymousObjectCreation2.ql @@ -6,11 +6,11 @@ import csharp from Assignment assign, AnonymousObjectCreation o, Assignment a, Property p where - assign.getLValue().(VariableAccess).getTarget().hasName("contacts2") and + assign.getLeftOperand().(VariableAccess).getTarget().hasName("contacts2") and o.getParent+() = assign and o.getInitializer().getMemberInitializer(0) = a and - a.getRValue().getValue() = "Chris Smith" and - p = a.getLValue().(PropertyAccess).getTarget() and + a.getRightOperand().getValue() = "Chris Smith" and + p = a.getLeftOperand().(PropertyAccess).getTarget() and p.hasName("Name") and p.getDeclaringType() = o.getObjectType() select o, p.getType().toString() diff --git a/csharp/ql/test/library-tests/expressions/AnonymousObjectCreation3.ql b/csharp/ql/test/library-tests/expressions/AnonymousObjectCreation3.ql index afa9ca0d3b29..6033bfed38ad 100644 --- a/csharp/ql/test/library-tests/expressions/AnonymousObjectCreation3.ql +++ b/csharp/ql/test/library-tests/expressions/AnonymousObjectCreation3.ql @@ -6,11 +6,11 @@ import csharp from Assignment assign, AnonymousObjectCreation o, Assignment a, Property p where - assign.getLValue().(VariableAccess).getTarget().hasName("contacts2") and + assign.getLeftOperand().(VariableAccess).getTarget().hasName("contacts2") and o.getParent+() = assign and o.getInitializer().getMemberInitializer(1) = a and - a.getRValue() instanceof ArrayCreation and - p = a.getLValue().(PropertyAccess).getTarget() and + a.getRightOperand() instanceof ArrayCreation and + p = a.getLeftOperand().(PropertyAccess).getTarget() and p.hasName("PhoneNumbers") and p.getDeclaringType() = o.getObjectType() select o, p.getType().getName() diff --git a/csharp/ql/test/library-tests/expressions/AnonymousObjectCreation4.ql b/csharp/ql/test/library-tests/expressions/AnonymousObjectCreation4.ql index b6354d1f4931..a52278839f2e 100644 --- a/csharp/ql/test/library-tests/expressions/AnonymousObjectCreation4.ql +++ b/csharp/ql/test/library-tests/expressions/AnonymousObjectCreation4.ql @@ -8,7 +8,7 @@ from Assignment assign, AnonymousObjectCreation o, Assignment a, AnonymousObjectCreation p, Assignment b where - assign.getLValue().(VariableAccess).getTarget().hasName("contacts2") and + assign.getLeftOperand().(VariableAccess).getTarget().hasName("contacts2") and o.getParent+() = assign and o.getInitializer().getMemberInitializer(1) = a and p.getParent+() = assign and diff --git a/csharp/ql/test/library-tests/expressions/ArrayCreation1.ql b/csharp/ql/test/library-tests/expressions/ArrayCreation1.ql index fba7a4036156..6f728347bff1 100644 --- a/csharp/ql/test/library-tests/expressions/ArrayCreation1.ql +++ b/csharp/ql/test/library-tests/expressions/ArrayCreation1.ql @@ -6,8 +6,8 @@ import csharp from Assignment a, ArrayCreation e, ArrayInitializer i where - a.getLValue().(VariableAccess).getTarget().hasName("is1") and - e = a.getRValue() and + a.getLeftOperand().(VariableAccess).getTarget().hasName("is1") and + e = a.getRightOperand() and not e.isImplicitlyTyped() and i = e.getInitializer() and e.isImplicitlySized() and diff --git a/csharp/ql/test/library-tests/expressions/ArrayCreation10.ql b/csharp/ql/test/library-tests/expressions/ArrayCreation10.ql index d8a1df128671..951ca22c0c2f 100644 --- a/csharp/ql/test/library-tests/expressions/ArrayCreation10.ql +++ b/csharp/ql/test/library-tests/expressions/ArrayCreation10.ql @@ -6,9 +6,9 @@ import csharp from Assignment a, ArrayCreation e, CastExpr cast where - a.getLValue().(VariableAccess).getTarget().hasName("os") and + a.getLeftOperand().(VariableAccess).getTarget().hasName("os") and e.getEnclosingCallable().hasName("MainElementAccess") and - e = a.getRValue() and + e = a.getRightOperand() and not e.isImplicitlyTyped() and e.isImplicitlySized() and e.getArrayType().getDimension() = 1 and diff --git a/csharp/ql/test/library-tests/expressions/ArrayCreation2.ql b/csharp/ql/test/library-tests/expressions/ArrayCreation2.ql index ae56d5798396..88ce79bc91e5 100644 --- a/csharp/ql/test/library-tests/expressions/ArrayCreation2.ql +++ b/csharp/ql/test/library-tests/expressions/ArrayCreation2.ql @@ -6,8 +6,8 @@ import csharp from Assignment a, ArrayCreation e, ArrayInitializer i where - a.getLValue().(VariableAccess).getTarget().hasName("is2") and - e = a.getRValue() and + a.getLeftOperand().(VariableAccess).getTarget().hasName("is2") and + e = a.getRightOperand() and not e.isImplicitlyTyped() and i = e.getInitializer() and e.getNumberOfLengthArguments() = 2 and diff --git a/csharp/ql/test/library-tests/expressions/ArrayCreation3.ql b/csharp/ql/test/library-tests/expressions/ArrayCreation3.ql index efe626dab088..0da55f864798 100644 --- a/csharp/ql/test/library-tests/expressions/ArrayCreation3.ql +++ b/csharp/ql/test/library-tests/expressions/ArrayCreation3.ql @@ -6,8 +6,8 @@ import csharp from Assignment a, ArrayCreation e where - a.getLValue().(VariableAccess).getTarget().hasName("is3") and - e = a.getRValue() and + a.getLeftOperand().(VariableAccess).getTarget().hasName("is3") and + e = a.getRightOperand() and not e.isImplicitlyTyped() and not e.hasInitializer() and e.getNumberOfLengthArguments() = 1 and diff --git a/csharp/ql/test/library-tests/expressions/ArrayCreation4.ql b/csharp/ql/test/library-tests/expressions/ArrayCreation4.ql index 2a0dd5312833..b79ec3f7bd6d 100644 --- a/csharp/ql/test/library-tests/expressions/ArrayCreation4.ql +++ b/csharp/ql/test/library-tests/expressions/ArrayCreation4.ql @@ -6,8 +6,8 @@ import csharp from Assignment a, ArrayCreation e where - a.getLValue().(VariableAccess).getTarget().hasName("is4") and - e = a.getRValue() and + a.getLeftOperand().(VariableAccess).getTarget().hasName("is4") and + e = a.getRightOperand() and not e.isImplicitlyTyped() and not e.hasInitializer() and e.getNumberOfLengthArguments() = 2 and diff --git a/csharp/ql/test/library-tests/expressions/ArrayCreation5.ql b/csharp/ql/test/library-tests/expressions/ArrayCreation5.ql index 04c29cafba8c..88df5bef175c 100644 --- a/csharp/ql/test/library-tests/expressions/ArrayCreation5.ql +++ b/csharp/ql/test/library-tests/expressions/ArrayCreation5.ql @@ -6,8 +6,8 @@ import csharp from Assignment a, ArrayCreation e, int i where - a.getLValue().(VariableAccess).getTarget().hasName("is5") and - e = a.getRValue() and + a.getLeftOperand().(VariableAccess).getTarget().hasName("is5") and + e = a.getRightOperand() and e.isImplicitlyTyped() and e.isImplicitlySized() and e.getArrayType().getDimension() = 1 and diff --git a/csharp/ql/test/library-tests/expressions/ArrayCreation6.ql b/csharp/ql/test/library-tests/expressions/ArrayCreation6.ql index 7ca6bbe9668f..237900bbe7c9 100644 --- a/csharp/ql/test/library-tests/expressions/ArrayCreation6.ql +++ b/csharp/ql/test/library-tests/expressions/ArrayCreation6.ql @@ -6,8 +6,8 @@ import csharp from Assignment a, ArrayCreation e where - a.getLValue().(VariableAccess).getTarget().hasName("is6") and - e = a.getRValue() and + a.getLeftOperand().(VariableAccess).getTarget().hasName("is6") and + e = a.getRightOperand() and e.isImplicitlyTyped() and e.isImplicitlySized() and e.getArrayType().getDimension() = 1 and diff --git a/csharp/ql/test/library-tests/expressions/ArrayCreation7.ql b/csharp/ql/test/library-tests/expressions/ArrayCreation7.ql index e34253a4f02b..a466195a0b1e 100644 --- a/csharp/ql/test/library-tests/expressions/ArrayCreation7.ql +++ b/csharp/ql/test/library-tests/expressions/ArrayCreation7.ql @@ -6,8 +6,8 @@ import csharp from Assignment a, ArrayCreation e where - a.getLValue().(VariableAccess).getTarget().hasName("is7") and - e = a.getRValue() and + a.getLeftOperand().(VariableAccess).getTarget().hasName("is7") and + e = a.getRightOperand() and e.isImplicitlyTyped() and e.isImplicitlySized() and e.getArrayType().getDimension() = 1 and diff --git a/csharp/ql/test/library-tests/expressions/ArrayCreation8.ql b/csharp/ql/test/library-tests/expressions/ArrayCreation8.ql index cc1fd366db13..8eb810247c0a 100644 --- a/csharp/ql/test/library-tests/expressions/ArrayCreation8.ql +++ b/csharp/ql/test/library-tests/expressions/ArrayCreation8.ql @@ -6,8 +6,8 @@ import csharp from Assignment a, ArrayCreation e where - a.getLValue().(VariableAccess).getTarget().hasName("contacts2") and - e = a.getRValue() and + a.getLeftOperand().(VariableAccess).getTarget().hasName("contacts2") and + e = a.getRightOperand() and e.isImplicitlyTyped() and e.isImplicitlySized() and e.getArrayType().getDimension() = 1 and diff --git a/csharp/ql/test/library-tests/expressions/ArrayCreation9.ql b/csharp/ql/test/library-tests/expressions/ArrayCreation9.ql index fc4b561c170f..55ba1d1edb11 100644 --- a/csharp/ql/test/library-tests/expressions/ArrayCreation9.ql +++ b/csharp/ql/test/library-tests/expressions/ArrayCreation9.ql @@ -6,8 +6,8 @@ import csharp from Assignment a, ArrayCreation e where - a.getLValue().(VariableAccess).getTarget().hasName("t") and - e = a.getRValue() and + a.getLeftOperand().(VariableAccess).getTarget().hasName("t") and + e = a.getRightOperand() and e.isImplicitlyTyped() and e.isImplicitlySized() and e.getArrayType().getDimension() = 1 and diff --git a/csharp/ql/test/library-tests/expressions/Lambda1.ql b/csharp/ql/test/library-tests/expressions/Lambda1.ql index f4787c584f32..4e4d17b9d244 100644 --- a/csharp/ql/test/library-tests/expressions/Lambda1.ql +++ b/csharp/ql/test/library-tests/expressions/Lambda1.ql @@ -6,7 +6,7 @@ import csharp from Assignment assign, LambdaExpr e where - assign.getLValue().(VariableAccess).getTarget().hasName("f1") and + assign.getLeftOperand().(VariableAccess).getTarget().hasName("f1") and e.getParent+() = assign and e.getNumberOfParameters() = 1 and e.getParameter(0).getType() instanceof ShortType and diff --git a/csharp/ql/test/library-tests/expressions/Lambda2.ql b/csharp/ql/test/library-tests/expressions/Lambda2.ql index 5fff4bd2cf62..ff5c06ec6704 100644 --- a/csharp/ql/test/library-tests/expressions/Lambda2.ql +++ b/csharp/ql/test/library-tests/expressions/Lambda2.ql @@ -6,7 +6,7 @@ import csharp from Assignment assign, LambdaExpr e where - assign.getLValue().(VariableAccess).getTarget().hasName("f2") and + assign.getLeftOperand().(VariableAccess).getTarget().hasName("f2") and e.getParent+() = assign and e.getNumberOfParameters() = 1 and e.getParameter(0).getType() instanceof IntType and diff --git a/csharp/ql/test/library-tests/expressions/Lambda3.ql b/csharp/ql/test/library-tests/expressions/Lambda3.ql index 32aa919cd205..46d3a411b36f 100644 --- a/csharp/ql/test/library-tests/expressions/Lambda3.ql +++ b/csharp/ql/test/library-tests/expressions/Lambda3.ql @@ -6,7 +6,7 @@ import csharp from Assignment assign, LambdaExpr e where - assign.getLValue().(VariableAccess).getTarget().hasName("f3") and + assign.getLeftOperand().(VariableAccess).getTarget().hasName("f3") and e.getParent+() = assign and e.getNumberOfParameters() = 1 and e.getParameter(0).getType() instanceof IntType and diff --git a/csharp/ql/test/library-tests/expressions/Lambda4.ql b/csharp/ql/test/library-tests/expressions/Lambda4.ql index ca7eb7a4207b..69ac40ad932f 100644 --- a/csharp/ql/test/library-tests/expressions/Lambda4.ql +++ b/csharp/ql/test/library-tests/expressions/Lambda4.ql @@ -6,7 +6,7 @@ import csharp from Assignment assign, LambdaExpr e where - assign.getLValue().(VariableAccess).getTarget().hasName("f4") and + assign.getLeftOperand().(VariableAccess).getTarget().hasName("f4") and e.getParent+() = assign and e.getNumberOfParameters() = 1 and e.getParameter(0).getType() instanceof IntType and diff --git a/csharp/ql/test/library-tests/expressions/Lambda5.ql b/csharp/ql/test/library-tests/expressions/Lambda5.ql index cc577aa85cb7..3836ca4effd0 100644 --- a/csharp/ql/test/library-tests/expressions/Lambda5.ql +++ b/csharp/ql/test/library-tests/expressions/Lambda5.ql @@ -6,7 +6,7 @@ import csharp from Assignment assign, LambdaExpr e where - assign.getLValue().(VariableAccess).getTarget().hasName("f5") and + assign.getLeftOperand().(VariableAccess).getTarget().hasName("f5") and e.getParent+() = assign and e.getNumberOfParameters() = 2 and e.getParameter(0).getType() instanceof IntType and diff --git a/csharp/ql/test/library-tests/expressions/Lambda6.ql b/csharp/ql/test/library-tests/expressions/Lambda6.ql index c584e4f6c093..4a6ee3128346 100644 --- a/csharp/ql/test/library-tests/expressions/Lambda6.ql +++ b/csharp/ql/test/library-tests/expressions/Lambda6.ql @@ -6,7 +6,7 @@ import csharp from Assignment assign, LambdaExpr e where - assign.getLValue().(VariableAccess).getTarget().hasName("f6") and + assign.getLeftOperand().(VariableAccess).getTarget().hasName("f6") and e.getParent+() = assign and e.getNumberOfParameters() = 0 and e.getType().(DelegateType).hasName("Unit") and diff --git a/csharp/ql/test/library-tests/expressions/ObjectCreation10.ql b/csharp/ql/test/library-tests/expressions/ObjectCreation10.ql index abd4a9d6ec6b..971654a95b3a 100644 --- a/csharp/ql/test/library-tests/expressions/ObjectCreation10.ql +++ b/csharp/ql/test/library-tests/expressions/ObjectCreation10.ql @@ -6,7 +6,7 @@ import csharp from Assignment a, CollectionInitializer i where - a.getLValue().(VariableAccess).getTarget().hasName("list1") and + a.getLeftOperand().(VariableAccess).getTarget().hasName("list1") and i.getParent+() = a and i.getElementInitializer(0).getArgument(0) instanceof AssignExpr select i.getAChild+() diff --git a/csharp/ql/test/library-tests/expressions/ObjectCreation11.ql b/csharp/ql/test/library-tests/expressions/ObjectCreation11.ql index c874735c3000..0265579ff677 100644 --- a/csharp/ql/test/library-tests/expressions/ObjectCreation11.ql +++ b/csharp/ql/test/library-tests/expressions/ObjectCreation11.ql @@ -6,7 +6,7 @@ import csharp from Assignment a, CollectionInitializer i, AnonymousObjectCreation o where - a.getLValue().(VariableAccess).getTarget().hasName("list2") and + a.getLeftOperand().(VariableAccess).getTarget().hasName("list2") and i.getParent+() = a and i.getElementInitializer(0).getArgument(0) = o select i, o diff --git a/csharp/ql/test/library-tests/expressions/ObjectCreation4.ql b/csharp/ql/test/library-tests/expressions/ObjectCreation4.ql index 5812397b11b6..6ec3e2ec327b 100644 --- a/csharp/ql/test/library-tests/expressions/ObjectCreation4.ql +++ b/csharp/ql/test/library-tests/expressions/ObjectCreation4.ql @@ -15,9 +15,9 @@ where cc.hasName("Point") and i = e.getInitializer() and a = i.getMemberInitializer(0) and - a.getLValue().(PropertyAccess).getTarget().hasName("X") and - a.getRValue().getValue() = "0" and + a.getLeftOperand().(PropertyAccess).getTarget().hasName("X") and + a.getRightOperand().getValue() = "0" and b = i.getMemberInitializer(1) and - b.getLValue().(PropertyAccess).getTarget().hasName("Y") and - b.getRValue().getValue() = "1" + b.getLeftOperand().(PropertyAccess).getTarget().hasName("Y") and + b.getRightOperand().getValue() = "1" select e, i, a, b diff --git a/csharp/ql/test/library-tests/expressions/ObjectCreation5.ql b/csharp/ql/test/library-tests/expressions/ObjectCreation5.ql index cf31f518ec73..e130da484d74 100644 --- a/csharp/ql/test/library-tests/expressions/ObjectCreation5.ql +++ b/csharp/ql/test/library-tests/expressions/ObjectCreation5.ql @@ -15,10 +15,10 @@ where cc.hasName("Point") and i = e.getInitializer() and a = i.getMemberInitializer(0) and - a.getLValue().(PropertyAccess).getTarget().hasName("X") and - a.getRValue().getValue() = "2" and + a.getLeftOperand().(PropertyAccess).getTarget().hasName("X") and + a.getRightOperand().getValue() = "2" and b = i.getMemberInitializer(1) and - b.getLValue().(PropertyAccess).getTarget().hasName("Y") and - b.getRValue().getValue() = "3" and + b.getLeftOperand().(PropertyAccess).getTarget().hasName("Y") and + b.getRightOperand().getValue() = "3" and i.getNumberOfMemberInitializers() = 2 select i, a, b diff --git a/csharp/ql/test/library-tests/expressions/ObjectCreation6.ql b/csharp/ql/test/library-tests/expressions/ObjectCreation6.ql index 11e771890ca2..529607c8d4ba 100644 --- a/csharp/ql/test/library-tests/expressions/ObjectCreation6.ql +++ b/csharp/ql/test/library-tests/expressions/ObjectCreation6.ql @@ -15,10 +15,10 @@ where cc.hasName("Rectangle") and i = e.getInitializer() and a = i.getMemberInitializer(0) and - a.getLValue().(PropertyAccess).getTarget().hasName("P1") and - a.getRValue() instanceof ObjectCreation and + a.getLeftOperand().(PropertyAccess).getTarget().hasName("P1") and + a.getRightOperand() instanceof ObjectCreation and b = i.getMemberInitializer(1) and - b.getLValue().(PropertyAccess).getTarget().hasName("P2") and - b.getRValue() instanceof ObjectCreation and + b.getLeftOperand().(PropertyAccess).getTarget().hasName("P2") and + b.getRightOperand() instanceof ObjectCreation and i.getNumberOfMemberInitializers() = 2 select i, a, b diff --git a/csharp/ql/test/library-tests/expressions/ObjectCreation7.ql b/csharp/ql/test/library-tests/expressions/ObjectCreation7.ql index ccb17515525e..404011f18968 100644 --- a/csharp/ql/test/library-tests/expressions/ObjectCreation7.ql +++ b/csharp/ql/test/library-tests/expressions/ObjectCreation7.ql @@ -15,10 +15,10 @@ where cc.hasName("Rectangle2") and i = e.getInitializer() and a = i.getMemberInitializer(0) and - a.getLValue().(PropertyAccess).getTarget().hasName("P1") and - a.getRValue() instanceof ObjectInitializer and + a.getLeftOperand().(PropertyAccess).getTarget().hasName("P1") and + a.getRightOperand() instanceof ObjectInitializer and b = i.getMemberInitializer(1) and - b.getLValue().(PropertyAccess).getTarget().hasName("P2") and - b.getRValue() instanceof ObjectInitializer and + b.getLeftOperand().(PropertyAccess).getTarget().hasName("P2") and + b.getRightOperand() instanceof ObjectInitializer and i.getNumberOfMemberInitializers() = 2 select m, e diff --git a/csharp/ql/test/library-tests/expressions/RemoveEventExpr1.ql b/csharp/ql/test/library-tests/expressions/RemoveEventExpr1.ql index 95b223ed6f4d..991fdd6e492c 100644 --- a/csharp/ql/test/library-tests/expressions/RemoveEventExpr1.ql +++ b/csharp/ql/test/library-tests/expressions/RemoveEventExpr1.ql @@ -9,5 +9,5 @@ where c.hasName("LoginDialog") and e.getEnclosingCallable() = c and e.getTarget().hasName("Click") and - e.getLValue().getQualifier().(FieldAccess).getTarget().hasName("CancelButton") + e.getLeftOperand().getQualifier().(FieldAccess).getTarget().hasName("CancelButton") select c, e From 6d5aff4822bd625355d6b16ea04ced168f0ceaf2 Mon Sep 17 00:00:00 2001 From: Michael Nebel Date: Wed, 1 Apr 2026 13:17:52 +0200 Subject: [PATCH 035/157] C#: Add change-note. --- csharp/ql/lib/change-notes/2026-04-01-getlrvalue.md | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 csharp/ql/lib/change-notes/2026-04-01-getlrvalue.md diff --git a/csharp/ql/lib/change-notes/2026-04-01-getlrvalue.md b/csharp/ql/lib/change-notes/2026-04-01-getlrvalue.md new file mode 100644 index 000000000000..da1a3d621481 --- /dev/null +++ b/csharp/ql/lib/change-notes/2026-04-01-getlrvalue.md @@ -0,0 +1,4 @@ +--- +category: deprecated +--- +* The predicates `get[L|R]Value` in the class `Assignment` have been deprecated. Use `get[Left|Right]Operand` instead. From 4d8b782695fdec2dc2058f6112a1bbebfb02d660 Mon Sep 17 00:00:00 2001 From: Mathias Vorreiter Pedersen Date: Thu, 2 Apr 2026 10:56:09 +0100 Subject: [PATCH 036/157] Shared: Also expose dataflow stage 1's forward flow predicate. --- .../dataflow/internal/DataFlowImplStage1.qll | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) diff --git a/shared/dataflow/codeql/dataflow/internal/DataFlowImplStage1.qll b/shared/dataflow/codeql/dataflow/internal/DataFlowImplStage1.qll index 426576d3acef..e9c92844fb7f 100644 --- a/shared/dataflow/codeql/dataflow/internal/DataFlowImplStage1.qll +++ b/shared/dataflow/codeql/dataflow/internal/DataFlowImplStage1.qll @@ -91,6 +91,10 @@ module MakeImplStage1 Lang> { class ApNil extends Ap; + predicate fwdFlow(Nd node); + + predicate fwdFlow(Nd node, Ap ap); + predicate revFlow(Nd node); predicate revFlow(Nd node, Ap ap); @@ -634,7 +638,7 @@ module MakeImplStage1 Lang> { ) } - private predicate fwdFlow(NodeEx node) { fwdFlow(node, _) } + predicate fwdFlow(NodeEx node) { fwdFlow(node, _) } pragma[nomagic] private predicate fwdFlowReadSet(ContentSet c, NodeEx node, Cc cc) { @@ -1291,6 +1295,13 @@ module MakeImplStage1 Lang> { import Stage1 import Stage1Common + predicate fwdFlow(Nd node) { Stage1::fwdFlow(node) } + + predicate fwdFlow(Nd node, Ap ap) { + Stage1::fwdFlow(node) and + exists(ap) + } + predicate revFlow(NodeEx node, Ap ap) { Stage1::revFlow(node) and exists(ap) } predicate toNormalSinkNode = toNormalSinkNodeEx/1; @@ -1395,6 +1406,10 @@ module MakeImplStage1 Lang> { import Stage1Common + predicate fwdFlow(Nd node) { Stage1::fwdFlow(node.getNodeEx()) } + + predicate fwdFlow(Nd node, Ap ap) { Stage1::fwdFlow(node.getNodeEx()) and exists(ap) } + predicate revFlow(Nd node) { Stage1::revFlow(node.getNodeEx()) } predicate revFlow(Nd node, Ap ap) { Stage1::revFlow(node.getNodeEx()) and exists(ap) } From 84c01bc255b549f9b34fece46a588c3e1205f6d6 Mon Sep 17 00:00:00 2001 From: Geoffrey White <40627776+geoffw0@users.noreply.github.com> Date: Thu, 2 Apr 2026 11:26:39 +0100 Subject: [PATCH 037/157] C++: Upgrade query precision. --- cpp/ql/src/Likely Bugs/Format/WrongTypeFormatArguments.ql | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cpp/ql/src/Likely Bugs/Format/WrongTypeFormatArguments.ql b/cpp/ql/src/Likely Bugs/Format/WrongTypeFormatArguments.ql index 7f0a4833cb59..5842b9474f74 100644 --- a/cpp/ql/src/Likely Bugs/Format/WrongTypeFormatArguments.ql +++ b/cpp/ql/src/Likely Bugs/Format/WrongTypeFormatArguments.ql @@ -5,7 +5,7 @@ * @kind problem * @problem.severity error * @security-severity 7.5 - * @precision medium + * @precision high * @id cpp/wrong-type-format-argument * @tags reliability * correctness From fca567f6ea98abe390b446701fa82ff5c386b7d9 Mon Sep 17 00:00:00 2001 From: Geoffrey White <40627776+geoffw0@users.noreply.github.com> Date: Thu, 2 Apr 2026 11:26:21 +0100 Subject: [PATCH 038/157] C++: Change note. --- .../src/change-notes/2026-04-02-wrong-type-format-argument.md | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 cpp/ql/src/change-notes/2026-04-02-wrong-type-format-argument.md diff --git a/cpp/ql/src/change-notes/2026-04-02-wrong-type-format-argument.md b/cpp/ql/src/change-notes/2026-04-02-wrong-type-format-argument.md new file mode 100644 index 000000000000..f8b9085dacc6 --- /dev/null +++ b/cpp/ql/src/change-notes/2026-04-02-wrong-type-format-argument.md @@ -0,0 +1,4 @@ +--- +category: minorAnalysis +--- +* The "Wrong type of arguments to formatting function" (`cpp/wrong-type-format-argument`) query has been upgraded to `high` precision. This query will now run in the default code scanning suite. From b41a4ff5e4c06ac0e2308786bf82490e00b232a3 Mon Sep 17 00:00:00 2001 From: Geoffrey White <40627776+geoffw0@users.noreply.github.com> Date: Thu, 2 Apr 2026 11:28:19 +0100 Subject: [PATCH 039/157] C++: Upgrade query precision. --- cpp/ql/src/Likely Bugs/Arithmetic/IntMultToLong.ql | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cpp/ql/src/Likely Bugs/Arithmetic/IntMultToLong.ql b/cpp/ql/src/Likely Bugs/Arithmetic/IntMultToLong.ql index 6747d177c80e..b05bd637dc2d 100644 --- a/cpp/ql/src/Likely Bugs/Arithmetic/IntMultToLong.ql +++ b/cpp/ql/src/Likely Bugs/Arithmetic/IntMultToLong.ql @@ -5,7 +5,7 @@ * @kind problem * @problem.severity warning * @security-severity 8.1 - * @precision medium + * @precision high * @id cpp/integer-multiplication-cast-to-long * @tags reliability * security From 909b55a40a2e4a85ce4ea04ff8d6a179c0b6399e Mon Sep 17 00:00:00 2001 From: Geoffrey White <40627776+geoffw0@users.noreply.github.com> Date: Thu, 2 Apr 2026 11:28:34 +0100 Subject: [PATCH 040/157] C++: Change note. --- .../2026-04-02-integer-multiplication-cast-to-long.md | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 cpp/ql/src/change-notes/2026-04-02-integer-multiplication-cast-to-long.md diff --git a/cpp/ql/src/change-notes/2026-04-02-integer-multiplication-cast-to-long.md b/cpp/ql/src/change-notes/2026-04-02-integer-multiplication-cast-to-long.md new file mode 100644 index 000000000000..cd6796b408f0 --- /dev/null +++ b/cpp/ql/src/change-notes/2026-04-02-integer-multiplication-cast-to-long.md @@ -0,0 +1,4 @@ +--- +category: minorAnalysis +--- +* The "Multiplication result converted to larger type" (`cpp/integer-multiplication-cast-to-long`) query has been upgraded to `high` precision. This query will now run in the default code scanning suite. From 520e95d92c255dc4e54ccaadc8c31121f0651ded Mon Sep 17 00:00:00 2001 From: Geoffrey White <40627776+geoffw0@users.noreply.github.com> Date: Thu, 2 Apr 2026 11:30:34 +0100 Subject: [PATCH 041/157] C++: Upgrade query precision. --- cpp/ql/src/Security/CWE/CWE-190/ComparisonWithWiderType.ql | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cpp/ql/src/Security/CWE/CWE-190/ComparisonWithWiderType.ql b/cpp/ql/src/Security/CWE/CWE-190/ComparisonWithWiderType.ql index 3f330807304f..7d9ef88adea1 100644 --- a/cpp/ql/src/Security/CWE/CWE-190/ComparisonWithWiderType.ql +++ b/cpp/ql/src/Security/CWE/CWE-190/ComparisonWithWiderType.ql @@ -6,7 +6,7 @@ * @kind problem * @problem.severity warning * @security-severity 7.8 - * @precision medium + * @precision high * @tags reliability * security * external/cwe/cwe-190 From 9dbbdef4cbab1c6bb4f63825112f329b3f5f5fad Mon Sep 17 00:00:00 2001 From: Geoffrey White <40627776+geoffw0@users.noreply.github.com> Date: Thu, 2 Apr 2026 11:30:52 +0100 Subject: [PATCH 042/157] C++: Change note. --- .../src/change-notes/2026-04-02-comparison-with-wider-type.md | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 cpp/ql/src/change-notes/2026-04-02-comparison-with-wider-type.md diff --git a/cpp/ql/src/change-notes/2026-04-02-comparison-with-wider-type.md b/cpp/ql/src/change-notes/2026-04-02-comparison-with-wider-type.md new file mode 100644 index 000000000000..c84e1dba404c --- /dev/null +++ b/cpp/ql/src/change-notes/2026-04-02-comparison-with-wider-type.md @@ -0,0 +1,4 @@ +--- +category: minorAnalysis +--- +* The "Comparison of narrow type with wide type in loop condition" (`cpp/comparison-with-wider-type`) query has been upgraded to `high` precision. This query will now run in the default code scanning suite. From 2d02056e5c2434b85a853b8d414a5bffa327ed1c Mon Sep 17 00:00:00 2001 From: Geoffrey White <40627776+geoffw0@users.noreply.github.com> Date: Thu, 2 Apr 2026 11:34:54 +0100 Subject: [PATCH 043/157] C++: Second change note. --- .../change-notes/2026-04-02-implicit-function-declaration.md | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 cpp/ql/src/change-notes/2026-04-02-implicit-function-declaration.md diff --git a/cpp/ql/src/change-notes/2026-04-02-implicit-function-declaration.md b/cpp/ql/src/change-notes/2026-04-02-implicit-function-declaration.md new file mode 100644 index 000000000000..dd0dbd4bc7d9 --- /dev/null +++ b/cpp/ql/src/change-notes/2026-04-02-implicit-function-declaration.md @@ -0,0 +1,4 @@ +--- +category: minorAnalysis +--- +* The "Implicit function declaration" (`cpp/implicit-function-declaration`) query has been upgraded to `high` precision. From e83658ed06c43ea71f6d35adf1285592ae15148d Mon Sep 17 00:00:00 2001 From: Geoffrey White <40627776+geoffw0@users.noreply.github.com> Date: Thu, 2 Apr 2026 11:38:09 +0100 Subject: [PATCH 044/157] C++: Upgrade query precision. --- .../Underspecified Functions/ImplicitFunctionDeclaration.ql | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cpp/ql/src/Likely Bugs/Underspecified Functions/ImplicitFunctionDeclaration.ql b/cpp/ql/src/Likely Bugs/Underspecified Functions/ImplicitFunctionDeclaration.ql index 007ef71a1630..0cf6c8b3714e 100644 --- a/cpp/ql/src/Likely Bugs/Underspecified Functions/ImplicitFunctionDeclaration.ql +++ b/cpp/ql/src/Likely Bugs/Underspecified Functions/ImplicitFunctionDeclaration.ql @@ -5,7 +5,7 @@ * may lead to unpredictable behavior. * @kind problem * @problem.severity warning - * @precision medium + * @precision high * @id cpp/implicit-function-declaration * @tags correctness * maintainability From 9eabfc5fdc5d3b809641e4f8b81c1188b6d9a743 Mon Sep 17 00:00:00 2001 From: Geoffrey White <40627776+geoffw0@users.noreply.github.com> Date: Thu, 2 Apr 2026 11:39:45 +0100 Subject: [PATCH 045/157] Update cpp/ql/src/Likely Bugs/Underspecified Functions/ImplicitFunctionDeclaration.ql Co-authored-by: Jeroen Ketema <93738568+jketema@users.noreply.github.com> --- .../Underspecified Functions/ImplicitFunctionDeclaration.ql | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cpp/ql/src/Likely Bugs/Underspecified Functions/ImplicitFunctionDeclaration.ql b/cpp/ql/src/Likely Bugs/Underspecified Functions/ImplicitFunctionDeclaration.ql index 0cf6c8b3714e..00b29efbd0f2 100644 --- a/cpp/ql/src/Likely Bugs/Underspecified Functions/ImplicitFunctionDeclaration.ql +++ b/cpp/ql/src/Likely Bugs/Underspecified Functions/ImplicitFunctionDeclaration.ql @@ -18,7 +18,7 @@ import TooManyArguments import semmle.code.cpp.commons.Exclusions /* - * This query is not compatible with build mode: none databases, and has + * This query is not compatible with build mode: none databases, and produces * no results on those databases. */ From 56af9a84ab4f6232bf03c10bc08def2a4611cb83 Mon Sep 17 00:00:00 2001 From: Geoffrey White <40627776+geoffw0@users.noreply.github.com> Date: Thu, 2 Apr 2026 11:40:51 +0100 Subject: [PATCH 046/157] Update cpp/ql/src/Likely Bugs/Underspecified Functions/ImplicitFunctionDeclaration.qhelp --- .../Underspecified Functions/ImplicitFunctionDeclaration.qhelp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cpp/ql/src/Likely Bugs/Underspecified Functions/ImplicitFunctionDeclaration.qhelp b/cpp/ql/src/Likely Bugs/Underspecified Functions/ImplicitFunctionDeclaration.qhelp index d9b5a0220773..90a98e1bf573 100644 --- a/cpp/ql/src/Likely Bugs/Underspecified Functions/ImplicitFunctionDeclaration.qhelp +++ b/cpp/ql/src/Likely Bugs/Underspecified Functions/ImplicitFunctionDeclaration.qhelp @@ -14,7 +14,7 @@ function may behave unpredictably.

This may indicate a misspelled function name, or that the required header containing the function declaration has not been included.

-

Note: This query is not compatible with build mode: none databases, and produces +

Note: This query is not compatible with build mode: none databases, and produces no results on those databases.

From 70b72f70e14f51930f3c9c4de67174ca0636214e Mon Sep 17 00:00:00 2001 From: Geoffrey White <40627776+geoffw0@users.noreply.github.com> Date: Thu, 2 Apr 2026 11:32:53 +0100 Subject: [PATCH 047/157] C++: Upgrade query precision. --- cpp/ql/src/Security/CWE/CWE-468/SuspiciousAddWithSizeof.ql | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cpp/ql/src/Security/CWE/CWE-468/SuspiciousAddWithSizeof.ql b/cpp/ql/src/Security/CWE/CWE-468/SuspiciousAddWithSizeof.ql index 343e96a00d39..d5a5cd8f6655 100644 --- a/cpp/ql/src/Security/CWE/CWE-468/SuspiciousAddWithSizeof.ql +++ b/cpp/ql/src/Security/CWE/CWE-468/SuspiciousAddWithSizeof.ql @@ -6,7 +6,7 @@ * @kind problem * @problem.severity warning * @security-severity 8.8 - * @precision medium + * @precision high * @id cpp/suspicious-add-sizeof * @tags security * external/cwe/cwe-468 From cc89b6ea919eb619ee932c2008fca5bbdeb4da08 Mon Sep 17 00:00:00 2001 From: Geoffrey White <40627776+geoffw0@users.noreply.github.com> Date: Thu, 2 Apr 2026 11:33:06 +0100 Subject: [PATCH 048/157] C++: Change note. --- cpp/ql/src/change-notes/2026-04-02-suspicious-add-sizeof.md | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 cpp/ql/src/change-notes/2026-04-02-suspicious-add-sizeof.md diff --git a/cpp/ql/src/change-notes/2026-04-02-suspicious-add-sizeof.md b/cpp/ql/src/change-notes/2026-04-02-suspicious-add-sizeof.md new file mode 100644 index 000000000000..040e89c13475 --- /dev/null +++ b/cpp/ql/src/change-notes/2026-04-02-suspicious-add-sizeof.md @@ -0,0 +1,4 @@ +--- +category: minorAnalysis +--- +* The "Suspicious add with sizeof" (`cpp/suspicious-add-sizeof`) query has been upgraded to `high` precision. This query will now run in the default code scanning suite. From 5866bcc8816a23b612043ba4dbb847eb4f36a019 Mon Sep 17 00:00:00 2001 From: Jeroen Ketema Date: Thu, 2 Apr 2026 15:41:41 +0200 Subject: [PATCH 049/157] Actions: Add FP test for `actions/missing-workflow-permissions` --- .../Security/CWE-275/.github/workflows/perms11.yml | 9 +++++++++ .../Security/CWE-275/.github/workflows/perms12.yml | 11 +++++++++++ .../CWE-275/MissingActionsPermissions.expected | 1 + 3 files changed, 21 insertions(+) create mode 100644 actions/ql/test/query-tests/Security/CWE-275/.github/workflows/perms11.yml create mode 100644 actions/ql/test/query-tests/Security/CWE-275/.github/workflows/perms12.yml diff --git a/actions/ql/test/query-tests/Security/CWE-275/.github/workflows/perms11.yml b/actions/ql/test/query-tests/Security/CWE-275/.github/workflows/perms11.yml new file mode 100644 index 000000000000..717cdabc3025 --- /dev/null +++ b/actions/ql/test/query-tests/Security/CWE-275/.github/workflows/perms11.yml @@ -0,0 +1,9 @@ +on: + workflow_call: + +jobs: + build: + name: Build and test + runs-on: ubuntu-latest + steps: + - uses: actions/deploy-pages diff --git a/actions/ql/test/query-tests/Security/CWE-275/.github/workflows/perms12.yml b/actions/ql/test/query-tests/Security/CWE-275/.github/workflows/perms12.yml new file mode 100644 index 000000000000..25ac1f532481 --- /dev/null +++ b/actions/ql/test/query-tests/Security/CWE-275/.github/workflows/perms12.yml @@ -0,0 +1,11 @@ +on: + workflow_dispatch: + +permissions: + contents: read + id-token: write + pages: write + +jobs: + call-workflow: + uses: ./.github/workflows/perms11.yml diff --git a/actions/ql/test/query-tests/Security/CWE-275/MissingActionsPermissions.expected b/actions/ql/test/query-tests/Security/CWE-275/MissingActionsPermissions.expected index 52a045e0de21..74edf8a7d389 100644 --- a/actions/ql/test/query-tests/Security/CWE-275/MissingActionsPermissions.expected +++ b/actions/ql/test/query-tests/Security/CWE-275/MissingActionsPermissions.expected @@ -6,3 +6,4 @@ | .github/workflows/perms8.yml:7:5:10:33 | Job: build | Actions job or workflow does not limit the permissions of the GITHUB_TOKEN. Consider setting an explicit permissions block, using the following as a minimal starting point: {id-token: write, pages: write} | | .github/workflows/perms9.yml:7:5:10:44 | Job: build | Actions job or workflow does not limit the permissions of the GITHUB_TOKEN. Consider setting an explicit permissions block, using the following as a minimal starting point: {packages: write} | | .github/workflows/perms10.yml:7:5:10:33 | Job: build | Actions job or workflow does not limit the permissions of the GITHUB_TOKEN. Consider setting an explicit permissions block, using the following as a minimal starting point: {contents: read, models: read} | +| .github/workflows/perms11.yml:6:5:9:33 | Job: build | Actions job or workflow does not limit the permissions of the GITHUB_TOKEN. Consider setting an explicit permissions block, using the following as a minimal starting point: {id-token: write, pages: write} | From 74e6d3474d4a0f03a870a0ab5f23cb66f325ad3d Mon Sep 17 00:00:00 2001 From: Jeroen Ketema Date: Thu, 2 Apr 2026 15:42:45 +0200 Subject: [PATCH 050/157] Actions: Correctly check permissions in `actions/missing-workflow-permissions` --- .../CWE-275/MissingActionsPermissions.ql | 17 +++++++++++++++-- 1 file changed, 15 insertions(+), 2 deletions(-) diff --git a/actions/ql/src/Security/CWE-275/MissingActionsPermissions.ql b/actions/ql/src/Security/CWE-275/MissingActionsPermissions.ql index a8bd8a5f93dc..00f601fd5daf 100644 --- a/actions/ql/src/Security/CWE-275/MissingActionsPermissions.ql +++ b/actions/ql/src/Security/CWE-275/MissingActionsPermissions.ql @@ -26,10 +26,23 @@ string permissionsForJob(Job job) { "{" + concat(string permission | permission = jobNeedsPermission(job) | permission, ", ") + "}" } +predicate jobHasPermissions(Job job) { + exists(job.getPermissions()) + or + exists(job.getEnclosingWorkflow().getPermissions()) + or + // The workflow is reusable and cannot be triggered in any other way; check callers + exists(ReusableWorkflow r | r = job.getEnclosingWorkflow() | + not exists(Event e | e = r.getOn().getAnEvent() | e.getName() != "workflow_call") and + forall(Job caller | caller = job.getEnclosingWorkflow().(ReusableWorkflow).getACaller() | + jobHasPermissions(caller) + ) + ) +} + from Job job, string permissions where - not exists(job.getPermissions()) and - not exists(job.getEnclosingWorkflow().getPermissions()) and + not jobHasPermissions(job) and // exists a trigger event that is not a workflow_call exists(Event e | e = job.getATriggerEvent() and From 47409d1c599c2367c67e649bf89a4817cee9e1b2 Mon Sep 17 00:00:00 2001 From: Jeroen Ketema Date: Thu, 2 Apr 2026 15:43:49 +0200 Subject: [PATCH 051/157] Actions: Update expected test results --- .../Security/CWE-275/MissingActionsPermissions.expected | 1 - 1 file changed, 1 deletion(-) diff --git a/actions/ql/test/query-tests/Security/CWE-275/MissingActionsPermissions.expected b/actions/ql/test/query-tests/Security/CWE-275/MissingActionsPermissions.expected index 74edf8a7d389..52a045e0de21 100644 --- a/actions/ql/test/query-tests/Security/CWE-275/MissingActionsPermissions.expected +++ b/actions/ql/test/query-tests/Security/CWE-275/MissingActionsPermissions.expected @@ -6,4 +6,3 @@ | .github/workflows/perms8.yml:7:5:10:33 | Job: build | Actions job or workflow does not limit the permissions of the GITHUB_TOKEN. Consider setting an explicit permissions block, using the following as a minimal starting point: {id-token: write, pages: write} | | .github/workflows/perms9.yml:7:5:10:44 | Job: build | Actions job or workflow does not limit the permissions of the GITHUB_TOKEN. Consider setting an explicit permissions block, using the following as a minimal starting point: {packages: write} | | .github/workflows/perms10.yml:7:5:10:33 | Job: build | Actions job or workflow does not limit the permissions of the GITHUB_TOKEN. Consider setting an explicit permissions block, using the following as a minimal starting point: {contents: read, models: read} | -| .github/workflows/perms11.yml:6:5:9:33 | Job: build | Actions job or workflow does not limit the permissions of the GITHUB_TOKEN. Consider setting an explicit permissions block, using the following as a minimal starting point: {id-token: write, pages: write} | From 87f9b9581ec3bb327ea78fbc82a6b3f3c4c2c355 Mon Sep 17 00:00:00 2001 From: Jeroen Ketema Date: Thu, 2 Apr 2026 15:48:45 +0200 Subject: [PATCH 052/157] Actions: Add change note --- actions/ql/src/change-notes/2026-04-02-permissions.md | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 actions/ql/src/change-notes/2026-04-02-permissions.md diff --git a/actions/ql/src/change-notes/2026-04-02-permissions.md b/actions/ql/src/change-notes/2026-04-02-permissions.md new file mode 100644 index 000000000000..2672a30ef870 --- /dev/null +++ b/actions/ql/src/change-notes/2026-04-02-permissions.md @@ -0,0 +1,4 @@ +--- +category: minorAnalysis +--- +* The query `actions/missing-workflow-permissions` no longer produces false positive results on reusable workflows where all callers set permissions. \ No newline at end of file From e69e30aa84b9240369b7b32e83a0e84a11e402d6 Mon Sep 17 00:00:00 2001 From: Kristen Newbury Date: Thu, 2 Apr 2026 11:32:37 -0400 Subject: [PATCH 053/157] Adjust alert messages CWE-829/ArtifactPoisoning[Critical|Medium] --- actions/ql/src/Security/CWE-829/ArtifactPoisoningCritical.ql | 4 ++-- actions/ql/src/Security/CWE-829/ArtifactPoisoningMedium.ql | 3 +-- actions/ql/src/change-notes/2026-04-02-alert-msg-poisoning.md | 4 ++++ 3 files changed, 7 insertions(+), 4 deletions(-) create mode 100644 actions/ql/src/change-notes/2026-04-02-alert-msg-poisoning.md diff --git a/actions/ql/src/Security/CWE-829/ArtifactPoisoningCritical.ql b/actions/ql/src/Security/CWE-829/ArtifactPoisoningCritical.ql index 24ecb4b03397..fc65f93f5c09 100644 --- a/actions/ql/src/Security/CWE-829/ArtifactPoisoningCritical.ql +++ b/actions/ql/src/Security/CWE-829/ArtifactPoisoningCritical.ql @@ -21,5 +21,5 @@ where ArtifactPoisoningFlow::flowPath(source, sink) and event = getRelevantEventInPrivilegedContext(sink.getNode()) select sink.getNode(), source, sink, - "Potential artifact poisoning in $@, which may be controlled by an external user ($@).", sink, - sink.getNode().toString(), event, event.getName() + "Potential artifact poisoning, which may be controlled by an external user ($@).", event, + event.getName() diff --git a/actions/ql/src/Security/CWE-829/ArtifactPoisoningMedium.ql b/actions/ql/src/Security/CWE-829/ArtifactPoisoningMedium.ql index d2aff7da95ff..6caba3571146 100644 --- a/actions/ql/src/Security/CWE-829/ArtifactPoisoningMedium.ql +++ b/actions/ql/src/Security/CWE-829/ArtifactPoisoningMedium.ql @@ -21,5 +21,4 @@ where ArtifactPoisoningFlow::flowPath(source, sink) and inNonPrivilegedContext(sink.getNode().asExpr()) select sink.getNode(), source, sink, - "Potential artifact poisoning in $@, which may be controlled by an external user.", sink, - sink.getNode().toString() + "Potential artifact poisoning, which may be controlled by an external user." diff --git a/actions/ql/src/change-notes/2026-04-02-alert-msg-poisoning.md b/actions/ql/src/change-notes/2026-04-02-alert-msg-poisoning.md new file mode 100644 index 000000000000..5b016941566e --- /dev/null +++ b/actions/ql/src/change-notes/2026-04-02-alert-msg-poisoning.md @@ -0,0 +1,4 @@ +--- +category: majorAnalysis +--- +* Fixed alert messages in `actions/artifact-poisoning/critical` and `actions/artifact-poisoning/medium` as they previously included a redundant placeholder in the alert message that would on occasion contain a long block of yml that makes the alert difficult to understand. \ No newline at end of file From 41714656ec52f1dd92b1e47ddb47a4438be05676 Mon Sep 17 00:00:00 2001 From: Kristen Newbury Date: Thu, 2 Apr 2026 11:58:58 -0400 Subject: [PATCH 054/157] Adjust alert messages actions CWE-829 --- .../CWE-829/ArtifactPoisoningCritical.ql | 4 +-- .../CWE-829/ArtifactPoisoningMedium.ql | 2 +- .../2026-04-02-alert-msg-poisoning.md | 2 +- .../ArtifactPoisoningCritical.expected | 36 +++++++++---------- 4 files changed, 22 insertions(+), 22 deletions(-) diff --git a/actions/ql/src/Security/CWE-829/ArtifactPoisoningCritical.ql b/actions/ql/src/Security/CWE-829/ArtifactPoisoningCritical.ql index fc65f93f5c09..44b69cd46b2e 100644 --- a/actions/ql/src/Security/CWE-829/ArtifactPoisoningCritical.ql +++ b/actions/ql/src/Security/CWE-829/ArtifactPoisoningCritical.ql @@ -21,5 +21,5 @@ where ArtifactPoisoningFlow::flowPath(source, sink) and event = getRelevantEventInPrivilegedContext(sink.getNode()) select sink.getNode(), source, sink, - "Potential artifact poisoning, which may be controlled by an external user ($@).", event, - event.getName() + "Potential artifact poisoning; the artifact being consumed has contents that may be controlled by an external user ($@).", + event, event.getName() diff --git a/actions/ql/src/Security/CWE-829/ArtifactPoisoningMedium.ql b/actions/ql/src/Security/CWE-829/ArtifactPoisoningMedium.ql index 6caba3571146..cc5532172e82 100644 --- a/actions/ql/src/Security/CWE-829/ArtifactPoisoningMedium.ql +++ b/actions/ql/src/Security/CWE-829/ArtifactPoisoningMedium.ql @@ -21,4 +21,4 @@ where ArtifactPoisoningFlow::flowPath(source, sink) and inNonPrivilegedContext(sink.getNode().asExpr()) select sink.getNode(), source, sink, - "Potential artifact poisoning, which may be controlled by an external user." + "Potential artifact poisoning; the artifact being consumed has contents that may be controlled by an external user." diff --git a/actions/ql/src/change-notes/2026-04-02-alert-msg-poisoning.md b/actions/ql/src/change-notes/2026-04-02-alert-msg-poisoning.md index 5b016941566e..30936d8b5c54 100644 --- a/actions/ql/src/change-notes/2026-04-02-alert-msg-poisoning.md +++ b/actions/ql/src/change-notes/2026-04-02-alert-msg-poisoning.md @@ -1,4 +1,4 @@ --- category: majorAnalysis --- -* Fixed alert messages in `actions/artifact-poisoning/critical` and `actions/artifact-poisoning/medium` as they previously included a redundant placeholder in the alert message that would on occasion contain a long block of yml that makes the alert difficult to understand. \ No newline at end of file +* Fixed alert messages in `actions/artifact-poisoning/critical` and `actions/artifact-poisoning/medium` as they previously included a redundant placeholder in the alert message that would on occasion contain a long block of yml that makes the alert difficult to understand. Also clarify the wording to make it clear that it is not the artifact that is being poisoned, but instead a potentially untrusted artifact that is consumed. \ No newline at end of file diff --git a/actions/ql/test/query-tests/Security/CWE-829/ArtifactPoisoningCritical.expected b/actions/ql/test/query-tests/Security/CWE-829/ArtifactPoisoningCritical.expected index 2d29cd9b79b4..75f08e0357e0 100644 --- a/actions/ql/test/query-tests/Security/CWE-829/ArtifactPoisoningCritical.expected +++ b/actions/ql/test/query-tests/Security/CWE-829/ArtifactPoisoningCritical.expected @@ -55,21 +55,21 @@ nodes | .github/workflows/test25.yml:39:14:40:45 | ./gradlew buildScanPublishPrevious\n | semmle.label | ./gradlew buildScanPublishPrevious\n | subpaths #select -| .github/workflows/artifactpoisoning11.yml:38:11:38:77 | ./sonarcloud-data/x.py build -j$(nproc) --compiler gcc --skip-build | .github/workflows/artifactpoisoning11.yml:13:9:32:6 | Uses Step | .github/workflows/artifactpoisoning11.yml:38:11:38:77 | ./sonarcloud-data/x.py build -j$(nproc) --compiler gcc --skip-build | Potential artifact poisoning in $@, which may be controlled by an external user ($@). | .github/workflows/artifactpoisoning11.yml:38:11:38:77 | ./sonarcloud-data/x.py build -j$(nproc) --compiler gcc --skip-build | ./sonarcloud-data/x.py build -j$(nproc) --compiler gcc --skip-build | .github/workflows/artifactpoisoning11.yml:4:3:4:14 | workflow_run | workflow_run | -| .github/workflows/artifactpoisoning12.yml:38:11:38:25 | python foo/x.py | .github/workflows/artifactpoisoning12.yml:13:9:32:6 | Uses Step | .github/workflows/artifactpoisoning12.yml:38:11:38:25 | python foo/x.py | Potential artifact poisoning in $@, which may be controlled by an external user ($@). | .github/workflows/artifactpoisoning12.yml:38:11:38:25 | python foo/x.py | python foo/x.py | .github/workflows/artifactpoisoning12.yml:4:3:4:14 | workflow_run | workflow_run | -| .github/workflows/artifactpoisoning21.yml:19:14:20:21 | sh foo/cmd\n | .github/workflows/artifactpoisoning21.yml:13:9:18:6 | Uses Step | .github/workflows/artifactpoisoning21.yml:19:14:20:21 | sh foo/cmd\n | Potential artifact poisoning in $@, which may be controlled by an external user ($@). | .github/workflows/artifactpoisoning21.yml:19:14:20:21 | sh foo/cmd\n | sh foo/cmd\n | .github/workflows/artifactpoisoning21.yml:4:3:4:14 | workflow_run | workflow_run | -| .github/workflows/artifactpoisoning22.yml:18:14:18:19 | sh cmd | .github/workflows/artifactpoisoning22.yml:13:9:17:6 | Uses Step | .github/workflows/artifactpoisoning22.yml:18:14:18:19 | sh cmd | Potential artifact poisoning in $@, which may be controlled by an external user ($@). | .github/workflows/artifactpoisoning22.yml:18:14:18:19 | sh cmd | sh cmd | .github/workflows/artifactpoisoning22.yml:4:3:4:14 | workflow_run | workflow_run | -| .github/workflows/artifactpoisoning31.yml:19:14:19:22 | ./foo/cmd | .github/workflows/artifactpoisoning31.yml:13:9:15:6 | Run Step | .github/workflows/artifactpoisoning31.yml:19:14:19:22 | ./foo/cmd | Potential artifact poisoning in $@, which may be controlled by an external user ($@). | .github/workflows/artifactpoisoning31.yml:19:14:19:22 | ./foo/cmd | ./foo/cmd | .github/workflows/artifactpoisoning31.yml:4:3:4:14 | workflow_run | workflow_run | -| .github/workflows/artifactpoisoning32.yml:17:14:18:20 | ./bar/cmd\n | .github/workflows/artifactpoisoning32.yml:13:9:16:6 | Run Step | .github/workflows/artifactpoisoning32.yml:17:14:18:20 | ./bar/cmd\n | Potential artifact poisoning in $@, which may be controlled by an external user ($@). | .github/workflows/artifactpoisoning32.yml:17:14:18:20 | ./bar/cmd\n | ./bar/cmd\n | .github/workflows/artifactpoisoning32.yml:4:3:4:14 | workflow_run | workflow_run | -| .github/workflows/artifactpoisoning33.yml:17:14:18:20 | ./bar/cmd\n | .github/workflows/artifactpoisoning33.yml:13:9:16:6 | Run Step | .github/workflows/artifactpoisoning33.yml:17:14:18:20 | ./bar/cmd\n | Potential artifact poisoning in $@, which may be controlled by an external user ($@). | .github/workflows/artifactpoisoning33.yml:17:14:18:20 | ./bar/cmd\n | ./bar/cmd\n | .github/workflows/artifactpoisoning33.yml:4:3:4:14 | workflow_run | workflow_run | -| .github/workflows/artifactpoisoning34.yml:20:14:22:23 | npm install\nnpm run lint\n | .github/workflows/artifactpoisoning34.yml:13:9:16:6 | Run Step | .github/workflows/artifactpoisoning34.yml:20:14:22:23 | npm install\nnpm run lint\n | Potential artifact poisoning in $@, which may be controlled by an external user ($@). | .github/workflows/artifactpoisoning34.yml:20:14:22:23 | npm install\nnpm run lint\n | npm install\nnpm run lint\n | .github/workflows/artifactpoisoning34.yml:4:3:4:14 | workflow_run | workflow_run | -| .github/workflows/artifactpoisoning41.yml:22:14:22:22 | ./foo/cmd | .github/workflows/artifactpoisoning41.yml:13:9:21:6 | Run Step | .github/workflows/artifactpoisoning41.yml:22:14:22:22 | ./foo/cmd | Potential artifact poisoning in $@, which may be controlled by an external user ($@). | .github/workflows/artifactpoisoning41.yml:22:14:22:22 | ./foo/cmd | ./foo/cmd | .github/workflows/artifactpoisoning41.yml:4:3:4:14 | workflow_run | workflow_run | -| .github/workflows/artifactpoisoning42.yml:22:14:22:18 | ./cmd | .github/workflows/artifactpoisoning42.yml:13:9:21:6 | Run Step | .github/workflows/artifactpoisoning42.yml:22:14:22:18 | ./cmd | Potential artifact poisoning in $@, which may be controlled by an external user ($@). | .github/workflows/artifactpoisoning42.yml:22:14:22:18 | ./cmd | ./cmd | .github/workflows/artifactpoisoning42.yml:4:3:4:14 | workflow_run | workflow_run | -| .github/workflows/artifactpoisoning71.yml:17:14:18:40 | sed -f config foo.md > bar.md\n | .github/workflows/artifactpoisoning71.yml:9:9:16:6 | Uses Step | .github/workflows/artifactpoisoning71.yml:17:14:18:40 | sed -f config foo.md > bar.md\n | Potential artifact poisoning in $@, which may be controlled by an external user ($@). | .github/workflows/artifactpoisoning71.yml:17:14:18:40 | sed -f config foo.md > bar.md\n | sed -f config foo.md > bar.md\n | .github/workflows/artifactpoisoning71.yml:4:5:4:16 | workflow_run | workflow_run | -| .github/workflows/artifactpoisoning81.yml:31:14:31:27 | python test.py | .github/workflows/artifactpoisoning81.yml:28:9:31:6 | Uses Step | .github/workflows/artifactpoisoning81.yml:31:14:31:27 | python test.py | Potential artifact poisoning in $@, which may be controlled by an external user ($@). | .github/workflows/artifactpoisoning81.yml:31:14:31:27 | python test.py | python test.py | .github/workflows/artifactpoisoning81.yml:3:5:3:23 | pull_request_target | pull_request_target | -| .github/workflows/artifactpoisoning92.yml:28:9:29:6 | Uses Step | .github/actions/download-artifact-2/action.yaml:6:7:25:4 | Uses Step | .github/workflows/artifactpoisoning92.yml:28:9:29:6 | Uses Step | Potential artifact poisoning in $@, which may be controlled by an external user ($@). | .github/workflows/artifactpoisoning92.yml:28:9:29:6 | Uses Step | Uses Step | .github/workflows/artifactpoisoning92.yml:3:3:3:14 | workflow_run | workflow_run | -| .github/workflows/artifactpoisoning92.yml:29:14:29:26 | make snapshot | .github/actions/download-artifact-2/action.yaml:6:7:25:4 | Uses Step | .github/workflows/artifactpoisoning92.yml:29:14:29:26 | make snapshot | Potential artifact poisoning in $@, which may be controlled by an external user ($@). | .github/workflows/artifactpoisoning92.yml:29:14:29:26 | make snapshot | make snapshot | .github/workflows/artifactpoisoning92.yml:3:3:3:14 | workflow_run | workflow_run | -| .github/workflows/artifactpoisoning96.yml:18:14:18:24 | npm install | .github/workflows/artifactpoisoning96.yml:13:9:18:6 | Uses Step | .github/workflows/artifactpoisoning96.yml:18:14:18:24 | npm install | Potential artifact poisoning in $@, which may be controlled by an external user ($@). | .github/workflows/artifactpoisoning96.yml:18:14:18:24 | npm install | npm install | .github/workflows/artifactpoisoning96.yml:2:3:2:14 | workflow_run | workflow_run | -| .github/workflows/artifactpoisoning101.yml:17:14:19:59 | PR_NUMBER=$(./get_pull_request_number.sh pr_number.txt)\necho "PR_NUMBER=$PR_NUMBER" >> $GITHUB_OUTPUT \n | .github/workflows/artifactpoisoning101.yml:10:9:16:6 | Uses Step | .github/workflows/artifactpoisoning101.yml:17:14:19:59 | PR_NUMBER=$(./get_pull_request_number.sh pr_number.txt)\necho "PR_NUMBER=$PR_NUMBER" >> $GITHUB_OUTPUT \n | Potential artifact poisoning in $@, which may be controlled by an external user ($@). | .github/workflows/artifactpoisoning101.yml:17:14:19:59 | PR_NUMBER=$(./get_pull_request_number.sh pr_number.txt)\necho "PR_NUMBER=$PR_NUMBER" >> $GITHUB_OUTPUT \n | PR_NUMBER=$(./get_pull_request_number.sh pr_number.txt)\necho "PR_NUMBER=$PR_NUMBER" >> $GITHUB_OUTPUT \n | .github/workflows/artifactpoisoning101.yml:4:3:4:21 | pull_request_target | pull_request_target | -| .github/workflows/test18.yml:36:15:40:58 | Uses Step | .github/workflows/test18.yml:12:15:33:12 | Uses Step | .github/workflows/test18.yml:36:15:40:58 | Uses Step | Potential artifact poisoning in $@, which may be controlled by an external user ($@). | .github/workflows/test18.yml:36:15:40:58 | Uses Step | Uses Step | .github/workflows/test18.yml:3:5:3:16 | workflow_run | workflow_run | -| .github/workflows/test25.yml:39:14:40:45 | ./gradlew buildScanPublishPrevious\n | .github/workflows/test25.yml:22:9:32:6 | Uses Step: downloadBuildScan | .github/workflows/test25.yml:39:14:40:45 | ./gradlew buildScanPublishPrevious\n | Potential artifact poisoning in $@, which may be controlled by an external user ($@). | .github/workflows/test25.yml:39:14:40:45 | ./gradlew buildScanPublishPrevious\n | ./gradlew buildScanPublishPrevious\n | .github/workflows/test25.yml:2:3:2:14 | workflow_run | workflow_run | +| .github/workflows/artifactpoisoning11.yml:38:11:38:77 | ./sonarcloud-data/x.py build -j$(nproc) --compiler gcc --skip-build | .github/workflows/artifactpoisoning11.yml:13:9:32:6 | Uses Step | .github/workflows/artifactpoisoning11.yml:38:11:38:77 | ./sonarcloud-data/x.py build -j$(nproc) --compiler gcc --skip-build | Potential artifact poisoning; the artifact being consumed has contents that may be controlled by an external user ($@). | .github/workflows/artifactpoisoning11.yml:4:3:4:14 | workflow_run | workflow_run | +| .github/workflows/artifactpoisoning12.yml:38:11:38:25 | python foo/x.py | .github/workflows/artifactpoisoning12.yml:13:9:32:6 | Uses Step | .github/workflows/artifactpoisoning12.yml:38:11:38:25 | python foo/x.py | Potential artifact poisoning; the artifact being consumed has contents that may be controlled by an external user ($@). | .github/workflows/artifactpoisoning12.yml:4:3:4:14 | workflow_run | workflow_run | +| .github/workflows/artifactpoisoning21.yml:19:14:20:21 | sh foo/cmd\n | .github/workflows/artifactpoisoning21.yml:13:9:18:6 | Uses Step | .github/workflows/artifactpoisoning21.yml:19:14:20:21 | sh foo/cmd\n | Potential artifact poisoning; the artifact being consumed has contents that may be controlled by an external user ($@). | .github/workflows/artifactpoisoning21.yml:4:3:4:14 | workflow_run | workflow_run | +| .github/workflows/artifactpoisoning22.yml:18:14:18:19 | sh cmd | .github/workflows/artifactpoisoning22.yml:13:9:17:6 | Uses Step | .github/workflows/artifactpoisoning22.yml:18:14:18:19 | sh cmd | Potential artifact poisoning; the artifact being consumed has contents that may be controlled by an external user ($@). | .github/workflows/artifactpoisoning22.yml:4:3:4:14 | workflow_run | workflow_run | +| .github/workflows/artifactpoisoning31.yml:19:14:19:22 | ./foo/cmd | .github/workflows/artifactpoisoning31.yml:13:9:15:6 | Run Step | .github/workflows/artifactpoisoning31.yml:19:14:19:22 | ./foo/cmd | Potential artifact poisoning; the artifact being consumed has contents that may be controlled by an external user ($@). | .github/workflows/artifactpoisoning31.yml:4:3:4:14 | workflow_run | workflow_run | +| .github/workflows/artifactpoisoning32.yml:17:14:18:20 | ./bar/cmd\n | .github/workflows/artifactpoisoning32.yml:13:9:16:6 | Run Step | .github/workflows/artifactpoisoning32.yml:17:14:18:20 | ./bar/cmd\n | Potential artifact poisoning; the artifact being consumed has contents that may be controlled by an external user ($@). | .github/workflows/artifactpoisoning32.yml:4:3:4:14 | workflow_run | workflow_run | +| .github/workflows/artifactpoisoning33.yml:17:14:18:20 | ./bar/cmd\n | .github/workflows/artifactpoisoning33.yml:13:9:16:6 | Run Step | .github/workflows/artifactpoisoning33.yml:17:14:18:20 | ./bar/cmd\n | Potential artifact poisoning; the artifact being consumed has contents that may be controlled by an external user ($@). | .github/workflows/artifactpoisoning33.yml:4:3:4:14 | workflow_run | workflow_run | +| .github/workflows/artifactpoisoning34.yml:20:14:22:23 | npm install\nnpm run lint\n | .github/workflows/artifactpoisoning34.yml:13:9:16:6 | Run Step | .github/workflows/artifactpoisoning34.yml:20:14:22:23 | npm install\nnpm run lint\n | Potential artifact poisoning; the artifact being consumed has contents that may be controlled by an external user ($@). | .github/workflows/artifactpoisoning34.yml:4:3:4:14 | workflow_run | workflow_run | +| .github/workflows/artifactpoisoning41.yml:22:14:22:22 | ./foo/cmd | .github/workflows/artifactpoisoning41.yml:13:9:21:6 | Run Step | .github/workflows/artifactpoisoning41.yml:22:14:22:22 | ./foo/cmd | Potential artifact poisoning; the artifact being consumed has contents that may be controlled by an external user ($@). | .github/workflows/artifactpoisoning41.yml:4:3:4:14 | workflow_run | workflow_run | +| .github/workflows/artifactpoisoning42.yml:22:14:22:18 | ./cmd | .github/workflows/artifactpoisoning42.yml:13:9:21:6 | Run Step | .github/workflows/artifactpoisoning42.yml:22:14:22:18 | ./cmd | Potential artifact poisoning; the artifact being consumed has contents that may be controlled by an external user ($@). | .github/workflows/artifactpoisoning42.yml:4:3:4:14 | workflow_run | workflow_run | +| .github/workflows/artifactpoisoning71.yml:17:14:18:40 | sed -f config foo.md > bar.md\n | .github/workflows/artifactpoisoning71.yml:9:9:16:6 | Uses Step | .github/workflows/artifactpoisoning71.yml:17:14:18:40 | sed -f config foo.md > bar.md\n | Potential artifact poisoning; the artifact being consumed has contents that may be controlled by an external user ($@). | .github/workflows/artifactpoisoning71.yml:4:5:4:16 | workflow_run | workflow_run | +| .github/workflows/artifactpoisoning81.yml:31:14:31:27 | python test.py | .github/workflows/artifactpoisoning81.yml:28:9:31:6 | Uses Step | .github/workflows/artifactpoisoning81.yml:31:14:31:27 | python test.py | Potential artifact poisoning; the artifact being consumed has contents that may be controlled by an external user ($@). | .github/workflows/artifactpoisoning81.yml:3:5:3:23 | pull_request_target | pull_request_target | +| .github/workflows/artifactpoisoning92.yml:28:9:29:6 | Uses Step | .github/actions/download-artifact-2/action.yaml:6:7:25:4 | Uses Step | .github/workflows/artifactpoisoning92.yml:28:9:29:6 | Uses Step | Potential artifact poisoning; the artifact being consumed has contents that may be controlled by an external user ($@). | .github/workflows/artifactpoisoning92.yml:3:3:3:14 | workflow_run | workflow_run | +| .github/workflows/artifactpoisoning92.yml:29:14:29:26 | make snapshot | .github/actions/download-artifact-2/action.yaml:6:7:25:4 | Uses Step | .github/workflows/artifactpoisoning92.yml:29:14:29:26 | make snapshot | Potential artifact poisoning; the artifact being consumed has contents that may be controlled by an external user ($@). | .github/workflows/artifactpoisoning92.yml:3:3:3:14 | workflow_run | workflow_run | +| .github/workflows/artifactpoisoning96.yml:18:14:18:24 | npm install | .github/workflows/artifactpoisoning96.yml:13:9:18:6 | Uses Step | .github/workflows/artifactpoisoning96.yml:18:14:18:24 | npm install | Potential artifact poisoning; the artifact being consumed has contents that may be controlled by an external user ($@). | .github/workflows/artifactpoisoning96.yml:2:3:2:14 | workflow_run | workflow_run | +| .github/workflows/artifactpoisoning101.yml:17:14:19:59 | PR_NUMBER=$(./get_pull_request_number.sh pr_number.txt)\necho "PR_NUMBER=$PR_NUMBER" >> $GITHUB_OUTPUT \n | .github/workflows/artifactpoisoning101.yml:10:9:16:6 | Uses Step | .github/workflows/artifactpoisoning101.yml:17:14:19:59 | PR_NUMBER=$(./get_pull_request_number.sh pr_number.txt)\necho "PR_NUMBER=$PR_NUMBER" >> $GITHUB_OUTPUT \n | Potential artifact poisoning; the artifact being consumed has contents that may be controlled by an external user ($@). | .github/workflows/artifactpoisoning101.yml:4:3:4:21 | pull_request_target | pull_request_target | +| .github/workflows/test18.yml:36:15:40:58 | Uses Step | .github/workflows/test18.yml:12:15:33:12 | Uses Step | .github/workflows/test18.yml:36:15:40:58 | Uses Step | Potential artifact poisoning; the artifact being consumed has contents that may be controlled by an external user ($@). | .github/workflows/test18.yml:3:5:3:16 | workflow_run | workflow_run | +| .github/workflows/test25.yml:39:14:40:45 | ./gradlew buildScanPublishPrevious\n | .github/workflows/test25.yml:22:9:32:6 | Uses Step: downloadBuildScan | .github/workflows/test25.yml:39:14:40:45 | ./gradlew buildScanPublishPrevious\n | Potential artifact poisoning; the artifact being consumed has contents that may be controlled by an external user ($@). | .github/workflows/test25.yml:2:3:2:14 | workflow_run | workflow_run | From 242090e0acdb7d1af75b4f3e4c556629e24f95ff Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" Date: Mon, 6 Apr 2026 13:49:20 +0000 Subject: [PATCH 055/157] Post-release preparation for codeql-cli-2.25.2 --- actions/ql/lib/qlpack.yml | 2 +- actions/ql/src/qlpack.yml | 2 +- cpp/ql/lib/qlpack.yml | 2 +- cpp/ql/src/qlpack.yml | 2 +- csharp/ql/campaigns/Solorigate/lib/qlpack.yml | 2 +- csharp/ql/campaigns/Solorigate/src/qlpack.yml | 2 +- csharp/ql/lib/qlpack.yml | 2 +- csharp/ql/src/qlpack.yml | 2 +- go/ql/consistency-queries/qlpack.yml | 2 +- go/ql/lib/qlpack.yml | 2 +- go/ql/src/qlpack.yml | 2 +- java/ql/lib/qlpack.yml | 2 +- java/ql/src/qlpack.yml | 2 +- javascript/ql/lib/qlpack.yml | 2 +- javascript/ql/src/qlpack.yml | 2 +- misc/suite-helpers/qlpack.yml | 2 +- python/ql/lib/qlpack.yml | 2 +- python/ql/src/qlpack.yml | 2 +- ruby/ql/lib/qlpack.yml | 2 +- ruby/ql/src/qlpack.yml | 2 +- rust/ql/lib/qlpack.yml | 2 +- rust/ql/src/qlpack.yml | 2 +- shared/concepts/qlpack.yml | 2 +- shared/controlflow/qlpack.yml | 2 +- shared/dataflow/qlpack.yml | 2 +- shared/mad/qlpack.yml | 2 +- shared/quantum/qlpack.yml | 2 +- shared/rangeanalysis/qlpack.yml | 2 +- shared/regex/qlpack.yml | 2 +- shared/ssa/qlpack.yml | 2 +- shared/threat-models/qlpack.yml | 2 +- shared/tutorial/qlpack.yml | 2 +- shared/typeflow/qlpack.yml | 2 +- shared/typeinference/qlpack.yml | 2 +- shared/typetracking/qlpack.yml | 2 +- shared/typos/qlpack.yml | 2 +- shared/util/qlpack.yml | 2 +- shared/xml/qlpack.yml | 2 +- shared/yaml/qlpack.yml | 2 +- swift/ql/lib/qlpack.yml | 2 +- swift/ql/src/qlpack.yml | 2 +- 41 files changed, 41 insertions(+), 41 deletions(-) diff --git a/actions/ql/lib/qlpack.yml b/actions/ql/lib/qlpack.yml index 131f29b87aaa..fec274158000 100644 --- a/actions/ql/lib/qlpack.yml +++ b/actions/ql/lib/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/actions-all -version: 0.4.33 +version: 0.4.34-dev library: true warnOnImplicitThis: true dependencies: diff --git a/actions/ql/src/qlpack.yml b/actions/ql/src/qlpack.yml index 024862b808a6..3216a36f3d08 100644 --- a/actions/ql/src/qlpack.yml +++ b/actions/ql/src/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/actions-queries -version: 0.6.25 +version: 0.6.26-dev library: false warnOnImplicitThis: true groups: [actions, queries] diff --git a/cpp/ql/lib/qlpack.yml b/cpp/ql/lib/qlpack.yml index e4e7a96ef681..dbf57d2b8699 100644 --- a/cpp/ql/lib/qlpack.yml +++ b/cpp/ql/lib/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/cpp-all -version: 9.0.0 +version: 9.0.1-dev groups: cpp dbscheme: semmlecode.cpp.dbscheme extractor: cpp diff --git a/cpp/ql/src/qlpack.yml b/cpp/ql/src/qlpack.yml index fa0391ae9c15..4648951796cc 100644 --- a/cpp/ql/src/qlpack.yml +++ b/cpp/ql/src/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/cpp-queries -version: 1.6.0 +version: 1.6.1-dev groups: - cpp - queries diff --git a/csharp/ql/campaigns/Solorigate/lib/qlpack.yml b/csharp/ql/campaigns/Solorigate/lib/qlpack.yml index 9c094c18dc6d..006ef851567f 100644 --- a/csharp/ql/campaigns/Solorigate/lib/qlpack.yml +++ b/csharp/ql/campaigns/Solorigate/lib/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/csharp-solorigate-all -version: 1.7.64 +version: 1.7.65-dev groups: - csharp - solorigate diff --git a/csharp/ql/campaigns/Solorigate/src/qlpack.yml b/csharp/ql/campaigns/Solorigate/src/qlpack.yml index 666c44a2805e..af5fd98f58af 100644 --- a/csharp/ql/campaigns/Solorigate/src/qlpack.yml +++ b/csharp/ql/campaigns/Solorigate/src/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/csharp-solorigate-queries -version: 1.7.64 +version: 1.7.65-dev groups: - csharp - solorigate diff --git a/csharp/ql/lib/qlpack.yml b/csharp/ql/lib/qlpack.yml index d5088885cdb0..02c1ccd0d33c 100644 --- a/csharp/ql/lib/qlpack.yml +++ b/csharp/ql/lib/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/csharp-all -version: 5.4.12 +version: 5.4.13-dev groups: csharp dbscheme: semmlecode.csharp.dbscheme extractor: csharp diff --git a/csharp/ql/src/qlpack.yml b/csharp/ql/src/qlpack.yml index 64d02609317a..9ea341d1b38d 100644 --- a/csharp/ql/src/qlpack.yml +++ b/csharp/ql/src/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/csharp-queries -version: 1.7.0 +version: 1.7.1-dev groups: - csharp - queries diff --git a/go/ql/consistency-queries/qlpack.yml b/go/ql/consistency-queries/qlpack.yml index 53b3d29e717b..c9dda4765dd0 100644 --- a/go/ql/consistency-queries/qlpack.yml +++ b/go/ql/consistency-queries/qlpack.yml @@ -1,5 +1,5 @@ name: codeql-go-consistency-queries -version: 1.0.47 +version: 1.0.48-dev groups: - go - queries diff --git a/go/ql/lib/qlpack.yml b/go/ql/lib/qlpack.yml index 5c371bb7ae48..2d7338a020dc 100644 --- a/go/ql/lib/qlpack.yml +++ b/go/ql/lib/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/go-all -version: 7.0.5 +version: 7.0.6-dev groups: go dbscheme: go.dbscheme extractor: go diff --git a/go/ql/src/qlpack.yml b/go/ql/src/qlpack.yml index 1ec2c5b9430e..de4e5e06d381 100644 --- a/go/ql/src/qlpack.yml +++ b/go/ql/src/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/go-queries -version: 1.6.0 +version: 1.6.1-dev groups: - go - queries diff --git a/java/ql/lib/qlpack.yml b/java/ql/lib/qlpack.yml index d840954d6236..7f058cfb8d60 100644 --- a/java/ql/lib/qlpack.yml +++ b/java/ql/lib/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/java-all -version: 9.0.3 +version: 9.0.4-dev groups: java dbscheme: config/semmlecode.dbscheme extractor: java diff --git a/java/ql/src/qlpack.yml b/java/ql/src/qlpack.yml index 2c4f95fb25bb..72b4a5f94e6c 100644 --- a/java/ql/src/qlpack.yml +++ b/java/ql/src/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/java-queries -version: 1.11.0 +version: 1.11.1-dev groups: - java - queries diff --git a/javascript/ql/lib/qlpack.yml b/javascript/ql/lib/qlpack.yml index df3fa463f358..e0834c056d11 100644 --- a/javascript/ql/lib/qlpack.yml +++ b/javascript/ql/lib/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/javascript-all -version: 2.6.27 +version: 2.6.28-dev groups: javascript dbscheme: semmlecode.javascript.dbscheme extractor: javascript diff --git a/javascript/ql/src/qlpack.yml b/javascript/ql/src/qlpack.yml index 7bd7a08f955f..117fae183e99 100644 --- a/javascript/ql/src/qlpack.yml +++ b/javascript/ql/src/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/javascript-queries -version: 2.3.7 +version: 2.3.8-dev groups: - javascript - queries diff --git a/misc/suite-helpers/qlpack.yml b/misc/suite-helpers/qlpack.yml index 9ee0e7338b2d..1d8538023420 100644 --- a/misc/suite-helpers/qlpack.yml +++ b/misc/suite-helpers/qlpack.yml @@ -1,4 +1,4 @@ name: codeql/suite-helpers -version: 1.0.47 +version: 1.0.48-dev groups: shared warnOnImplicitThis: true diff --git a/python/ql/lib/qlpack.yml b/python/ql/lib/qlpack.yml index 11bd07835834..fe87c5761cfd 100644 --- a/python/ql/lib/qlpack.yml +++ b/python/ql/lib/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/python-all -version: 7.0.4 +version: 7.0.5-dev groups: python dbscheme: semmlecode.python.dbscheme extractor: python diff --git a/python/ql/src/qlpack.yml b/python/ql/src/qlpack.yml index d3c52c315e85..aa2a2364854f 100644 --- a/python/ql/src/qlpack.yml +++ b/python/ql/src/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/python-queries -version: 1.8.0 +version: 1.8.1-dev groups: - python - queries diff --git a/ruby/ql/lib/qlpack.yml b/ruby/ql/lib/qlpack.yml index 687618237bb6..bbf4de409093 100644 --- a/ruby/ql/lib/qlpack.yml +++ b/ruby/ql/lib/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/ruby-all -version: 5.1.15 +version: 5.1.16-dev groups: ruby extractor: ruby dbscheme: ruby.dbscheme diff --git a/ruby/ql/src/qlpack.yml b/ruby/ql/src/qlpack.yml index a0473f5f849b..191689565de4 100644 --- a/ruby/ql/src/qlpack.yml +++ b/ruby/ql/src/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/ruby-queries -version: 1.6.0 +version: 1.6.1-dev groups: - ruby - queries diff --git a/rust/ql/lib/qlpack.yml b/rust/ql/lib/qlpack.yml index cef8c27d1cb4..f50310200378 100644 --- a/rust/ql/lib/qlpack.yml +++ b/rust/ql/lib/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/rust-all -version: 0.2.11 +version: 0.2.12-dev groups: rust extractor: rust dbscheme: rust.dbscheme diff --git a/rust/ql/src/qlpack.yml b/rust/ql/src/qlpack.yml index 41f566526eb9..f78504db76eb 100644 --- a/rust/ql/src/qlpack.yml +++ b/rust/ql/src/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/rust-queries -version: 0.1.32 +version: 0.1.33-dev groups: - rust - queries diff --git a/shared/concepts/qlpack.yml b/shared/concepts/qlpack.yml index c2cc618dd2d9..bf6e8b6018c0 100644 --- a/shared/concepts/qlpack.yml +++ b/shared/concepts/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/concepts -version: 0.0.21 +version: 0.0.22-dev groups: shared library: true dependencies: diff --git a/shared/controlflow/qlpack.yml b/shared/controlflow/qlpack.yml index c5c64a8bcb68..5573548794d0 100644 --- a/shared/controlflow/qlpack.yml +++ b/shared/controlflow/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/controlflow -version: 2.0.31 +version: 2.0.32-dev groups: shared library: true dependencies: diff --git a/shared/dataflow/qlpack.yml b/shared/dataflow/qlpack.yml index 3009091cfdb3..3b917def33db 100644 --- a/shared/dataflow/qlpack.yml +++ b/shared/dataflow/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/dataflow -version: 2.1.3 +version: 2.1.4-dev groups: shared library: true dependencies: diff --git a/shared/mad/qlpack.yml b/shared/mad/qlpack.yml index 678be4858dc4..b5583f8c55a2 100644 --- a/shared/mad/qlpack.yml +++ b/shared/mad/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/mad -version: 1.0.47 +version: 1.0.48-dev groups: shared library: true dependencies: diff --git a/shared/quantum/qlpack.yml b/shared/quantum/qlpack.yml index 38fca7fc6dc4..a19e99ef7eaa 100644 --- a/shared/quantum/qlpack.yml +++ b/shared/quantum/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/quantum -version: 0.0.25 +version: 0.0.26-dev groups: shared library: true dependencies: diff --git a/shared/rangeanalysis/qlpack.yml b/shared/rangeanalysis/qlpack.yml index 2cf45348dc0e..d493350749ee 100644 --- a/shared/rangeanalysis/qlpack.yml +++ b/shared/rangeanalysis/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/rangeanalysis -version: 1.0.47 +version: 1.0.48-dev groups: shared library: true dependencies: diff --git a/shared/regex/qlpack.yml b/shared/regex/qlpack.yml index b2070c25fb15..7b953dcff1cf 100644 --- a/shared/regex/qlpack.yml +++ b/shared/regex/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/regex -version: 1.0.47 +version: 1.0.48-dev groups: shared library: true dependencies: diff --git a/shared/ssa/qlpack.yml b/shared/ssa/qlpack.yml index ab991edccccf..a8fa9a114243 100644 --- a/shared/ssa/qlpack.yml +++ b/shared/ssa/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/ssa -version: 2.0.23 +version: 2.0.24-dev groups: shared library: true dependencies: diff --git a/shared/threat-models/qlpack.yml b/shared/threat-models/qlpack.yml index 37f9b1ba7448..a4a367a990b3 100644 --- a/shared/threat-models/qlpack.yml +++ b/shared/threat-models/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/threat-models -version: 1.0.47 +version: 1.0.48-dev library: true groups: shared dataExtensions: diff --git a/shared/tutorial/qlpack.yml b/shared/tutorial/qlpack.yml index d2ab12f93454..f961ccdc0eb2 100644 --- a/shared/tutorial/qlpack.yml +++ b/shared/tutorial/qlpack.yml @@ -1,7 +1,7 @@ name: codeql/tutorial description: Library for the CodeQL detective tutorials, helping new users learn to write CodeQL queries. -version: 1.0.47 +version: 1.0.48-dev groups: shared library: true warnOnImplicitThis: true diff --git a/shared/typeflow/qlpack.yml b/shared/typeflow/qlpack.yml index c8d7a74c2978..f7e111d28fde 100644 --- a/shared/typeflow/qlpack.yml +++ b/shared/typeflow/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/typeflow -version: 1.0.47 +version: 1.0.48-dev groups: shared library: true dependencies: diff --git a/shared/typeinference/qlpack.yml b/shared/typeinference/qlpack.yml index d459c36ce72c..97c8df368959 100644 --- a/shared/typeinference/qlpack.yml +++ b/shared/typeinference/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/typeinference -version: 0.0.28 +version: 0.0.29-dev groups: shared library: true dependencies: diff --git a/shared/typetracking/qlpack.yml b/shared/typetracking/qlpack.yml index d2d55be5b550..aa0296875312 100644 --- a/shared/typetracking/qlpack.yml +++ b/shared/typetracking/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/typetracking -version: 2.0.31 +version: 2.0.32-dev groups: shared library: true dependencies: diff --git a/shared/typos/qlpack.yml b/shared/typos/qlpack.yml index b9b579b51763..37fc79bb1dfd 100644 --- a/shared/typos/qlpack.yml +++ b/shared/typos/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/typos -version: 1.0.47 +version: 1.0.48-dev groups: shared library: true warnOnImplicitThis: true diff --git a/shared/util/qlpack.yml b/shared/util/qlpack.yml index 4f7bb193afbb..02e6241dccbf 100644 --- a/shared/util/qlpack.yml +++ b/shared/util/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/util -version: 2.0.34 +version: 2.0.35-dev groups: shared library: true dependencies: null diff --git a/shared/xml/qlpack.yml b/shared/xml/qlpack.yml index fe6e59d133ed..0d75859bdb9d 100644 --- a/shared/xml/qlpack.yml +++ b/shared/xml/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/xml -version: 1.0.47 +version: 1.0.48-dev groups: shared library: true dependencies: diff --git a/shared/yaml/qlpack.yml b/shared/yaml/qlpack.yml index f8e5976f8fa7..cfea54e0b5b5 100644 --- a/shared/yaml/qlpack.yml +++ b/shared/yaml/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/yaml -version: 1.0.47 +version: 1.0.48-dev groups: shared library: true warnOnImplicitThis: true diff --git a/swift/ql/lib/qlpack.yml b/swift/ql/lib/qlpack.yml index ebe1f051136b..32c6458ddeae 100644 --- a/swift/ql/lib/qlpack.yml +++ b/swift/ql/lib/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/swift-all -version: 6.3.3 +version: 6.3.4-dev groups: swift extractor: swift dbscheme: swift.dbscheme diff --git a/swift/ql/src/qlpack.yml b/swift/ql/src/qlpack.yml index 84b3e1d0b5d5..5b6c7a6977a8 100644 --- a/swift/ql/src/qlpack.yml +++ b/swift/ql/src/qlpack.yml @@ -1,5 +1,5 @@ name: codeql/swift-queries -version: 1.3.0 +version: 1.3.1-dev groups: - swift - queries From 74b0e8c19a811ad34f2efbca96425e3185217e76 Mon Sep 17 00:00:00 2001 From: idrissrio Date: Wed, 18 Mar 2026 15:34:59 +0100 Subject: [PATCH 056/157] Java: Accept new test results after JDK 26 extractor upgrade --- .../compact-source-files/CompactSourceAnalysis.expected | 2 +- .../compact-source-files/ImplicitClassDetection.expected | 2 +- .../compact-source-files/MethodInCompactSource.expected | 4 ++-- java/ql/test/library-tests/compact-source-files/options | 2 +- java/ql/test/library-tests/dataflow/kdf/options | 2 +- java/ql/test/library-tests/dataflow/scoped-values/options | 2 +- java/ql/test/library-tests/errorexpr/Test.java | 1 - java/ql/test/library-tests/flexible-constructors/options | 2 +- java/ql/test/library-tests/module-import-declarations/options | 2 +- 9 files changed, 9 insertions(+), 10 deletions(-) diff --git a/java/ql/test/library-tests/compact-source-files/CompactSourceAnalysis.expected b/java/ql/test/library-tests/compact-source-files/CompactSourceAnalysis.expected index 05db00aa26de..0e1dd647e411 100644 --- a/java/ql/test/library-tests/compact-source-files/CompactSourceAnalysis.expected +++ b/java/ql/test/library-tests/compact-source-files/CompactSourceAnalysis.expected @@ -1 +1 @@ -| Test.java:0:0:0:0 | Test | Test.java:1:1:1:1 | Test | Compact source file 'Test' contains implicit class 'Test' | +| Test.java:0:0:0:0 | Test | Test.java:1:1:29:1 | Test | Compact source file 'Test' contains implicit class 'Test' | diff --git a/java/ql/test/library-tests/compact-source-files/ImplicitClassDetection.expected b/java/ql/test/library-tests/compact-source-files/ImplicitClassDetection.expected index 61dcdd8a17ff..9bfaaecbbcb1 100644 --- a/java/ql/test/library-tests/compact-source-files/ImplicitClassDetection.expected +++ b/java/ql/test/library-tests/compact-source-files/ImplicitClassDetection.expected @@ -1,2 +1,2 @@ -| Test.java:1:1:1:1 | Test | implicit | +| Test.java:1:1:29:1 | Test | implicit | | Test.java:25:7:25:16 | NotCompact | not implicit | diff --git a/java/ql/test/library-tests/compact-source-files/MethodInCompactSource.expected b/java/ql/test/library-tests/compact-source-files/MethodInCompactSource.expected index 3c7b45f500ee..d4b41c614413 100644 --- a/java/ql/test/library-tests/compact-source-files/MethodInCompactSource.expected +++ b/java/ql/test/library-tests/compact-source-files/MethodInCompactSource.expected @@ -1,5 +1,5 @@ -| Test.java:1:1:1:1 | | in compact source | -| Test.java:1:1:1:1 | | in compact source | +| Test.java:1:1:29:1 | | in compact source | +| Test.java:1:1:29:1 | | in compact source | | Test.java:5:6:5:9 | main | in compact source | | Test.java:11:6:11:16 | processData | in compact source | | Test.java:16:14:16:31 | updatePrivateField | in compact source | diff --git a/java/ql/test/library-tests/compact-source-files/options b/java/ql/test/library-tests/compact-source-files/options index db1dc01e53b7..3d6e630aa73e 100644 --- a/java/ql/test/library-tests/compact-source-files/options +++ b/java/ql/test/library-tests/compact-source-files/options @@ -1 +1 @@ -//semmle-extractor-options: --javac-args --release 25 --enable-preview +//semmle-extractor-options: --javac-args --release 25 diff --git a/java/ql/test/library-tests/dataflow/kdf/options b/java/ql/test/library-tests/dataflow/kdf/options index f4edc64c0178..801b81e07526 100644 --- a/java/ql/test/library-tests/dataflow/kdf/options +++ b/java/ql/test/library-tests/dataflow/kdf/options @@ -1 +1 @@ -//semmle-extractor-options: --javac-args --enable-preview --release 25 \ No newline at end of file +//semmle-extractor-options: --javac-args --release 25 \ No newline at end of file diff --git a/java/ql/test/library-tests/dataflow/scoped-values/options b/java/ql/test/library-tests/dataflow/scoped-values/options index c793109355a5..2d42b8d2cd8d 100644 --- a/java/ql/test/library-tests/dataflow/scoped-values/options +++ b/java/ql/test/library-tests/dataflow/scoped-values/options @@ -1 +1 @@ -//semmle-extractor-options: --javac-args -source 25 -target 25 --enable-preview \ No newline at end of file +//semmle-extractor-options: --javac-args -source 25 -target 25 \ No newline at end of file diff --git a/java/ql/test/library-tests/errorexpr/Test.java b/java/ql/test/library-tests/errorexpr/Test.java index af314e5ced67..068690e7bb20 100644 --- a/java/ql/test/library-tests/errorexpr/Test.java +++ b/java/ql/test/library-tests/errorexpr/Test.java @@ -13,6 +13,5 @@ public int yieldWrapper(int x) { } // Diagnostic Matches: Erroneous node in tree: (ERROR) -// Diagnostic Matches: In file Test.java:8:15 no end location for JCMethodInvocation : yield(x) // Diagnostic Matches: 1 errors during annotation processing // Diagnostic Matches: Unknown or erroneous type for expression of kind ErrorExpr diff --git a/java/ql/test/library-tests/flexible-constructors/options b/java/ql/test/library-tests/flexible-constructors/options index db1dc01e53b7..3d6e630aa73e 100644 --- a/java/ql/test/library-tests/flexible-constructors/options +++ b/java/ql/test/library-tests/flexible-constructors/options @@ -1 +1 @@ -//semmle-extractor-options: --javac-args --release 25 --enable-preview +//semmle-extractor-options: --javac-args --release 25 diff --git a/java/ql/test/library-tests/module-import-declarations/options b/java/ql/test/library-tests/module-import-declarations/options index b510fdce0df9..801b81e07526 100644 --- a/java/ql/test/library-tests/module-import-declarations/options +++ b/java/ql/test/library-tests/module-import-declarations/options @@ -1 +1 @@ -//semmle-extractor-options: --javac-args --release 25 --enable-preview \ No newline at end of file +//semmle-extractor-options: --javac-args --release 25 \ No newline at end of file From 5a6eb7947068ce413cb20678bb743ceb2b4b0a48 Mon Sep 17 00:00:00 2001 From: idrissrio Date: Fri, 20 Mar 2026 20:27:33 +0100 Subject: [PATCH 057/157] Java: Pin CWE-676 test to --release 25 Thread.stop() was removed in JDK 26. Pin the test to --release 25. --- java/ql/test/query-tests/security/CWE-676/semmle/tests/options | 1 + 1 file changed, 1 insertion(+) create mode 100644 java/ql/test/query-tests/security/CWE-676/semmle/tests/options diff --git a/java/ql/test/query-tests/security/CWE-676/semmle/tests/options b/java/ql/test/query-tests/security/CWE-676/semmle/tests/options new file mode 100644 index 000000000000..3d6e630aa73e --- /dev/null +++ b/java/ql/test/query-tests/security/CWE-676/semmle/tests/options @@ -0,0 +1 @@ +//semmle-extractor-options: --javac-args --release 25 From 3ccbd8032c938c95f9ea2d2f5568545370c80216 Mon Sep 17 00:00:00 2001 From: idrissrio Date: Fri, 20 Mar 2026 20:27:41 +0100 Subject: [PATCH 058/157] Java: Accept new test results for JDK 26 JDK 26 added ofLazy methods to List, Map, and Set collections. Update expected test output to include these new methods. --- .../test.expected | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/java/ql/test-kotlin1/library-tests/java-kotlin-collection-type-generic-methods/test.expected b/java/ql/test-kotlin1/library-tests/java-kotlin-collection-type-generic-methods/test.expected index a56980d10ac4..a55e73e283fa 100644 --- a/java/ql/test-kotlin1/library-tests/java-kotlin-collection-type-generic-methods/test.expected +++ b/java/ql/test-kotlin1/library-tests/java-kotlin-collection-type-generic-methods/test.expected @@ -196,6 +196,8 @@ methodWithDuplicate | List | listIterator | int | | List | of | E | | List | of | E[] | +| List | ofLazy | IntFunction | +| List | ofLazy | int | | List | remove | Object | | List | remove | int | | List | removeAll | Collection | @@ -222,6 +224,8 @@ methodWithDuplicate | List | listIterator | int | | List | of | E | | List | of | E[] | +| List | ofLazy | IntFunction | +| List | ofLazy | int | | List | remove | Object | | List | remove | int | | List | removeAll | Collection | @@ -248,6 +252,8 @@ methodWithDuplicate | List | listIterator | int | | List | of | E | | List | of | E[] | +| List | ofLazy | IntFunction | +| List | ofLazy | int | | List | remove | Object | | List | remove | int | | List | removeAll | Collection | @@ -280,6 +286,8 @@ methodWithDuplicate | Map | of | K | | Map | of | V | | Map | ofEntries | Entry[] | +| Map | ofLazy | Function | +| Map | ofLazy | Set | | Map | put | K | | Map | put | V | | Map | putAll | Map | @@ -310,6 +318,8 @@ methodWithDuplicate | Map | of | K | | Map | of | V | | Map | ofEntries | Entry[] | +| Map | ofLazy | Function | +| Map | ofLazy | Set | | Map | put | Identity | | Map | put | Object | | Map | putAll | Map | @@ -341,6 +351,8 @@ methodWithDuplicate | Map | of | K | | Map | of | V | | Map | ofEntries | Entry[] | +| Map | ofLazy | Function | +| Map | ofLazy | Set | | Map | put | K | | Map | put | V | | Map | putAll | Map | @@ -370,6 +382,8 @@ methodWithDuplicate | Map | of | K | | Map | of | V | | Map | ofEntries | Entry[] | +| Map | ofLazy | Function | +| Map | ofLazy | Set | | Map | put | Object | | Map | putAll | Map | | Map | putIfAbsent | Object | @@ -397,6 +411,8 @@ methodWithDuplicate | Map | of | K | | Map | of | V | | Map | ofEntries | Entry[] | +| Map | ofLazy | Function | +| Map | ofLazy | Set | | Map | put | String | | Map | putAll | Map | | Map | putIfAbsent | String | From 6f199b90ba6c0a59ca99f6cad9e74eb8659c2be4 Mon Sep 17 00:00:00 2001 From: idrissrio Date: Mon, 23 Mar 2026 09:03:46 +0100 Subject: [PATCH 059/157] Java: Accept new test results for JDK 26 Accept new ByteOrder.getEntries, List.ofLazy, and Map.ofLazy entries in kotlin2 test expected files. --- .../test.expected | 16 ++++++++++++++++ .../library-tests/reflection/reflection.expected | 1 + 2 files changed, 17 insertions(+) diff --git a/java/ql/test-kotlin2/library-tests/java-kotlin-collection-type-generic-methods/test.expected b/java/ql/test-kotlin2/library-tests/java-kotlin-collection-type-generic-methods/test.expected index 2495c1fc1572..3237c89c8c72 100644 --- a/java/ql/test-kotlin2/library-tests/java-kotlin-collection-type-generic-methods/test.expected +++ b/java/ql/test-kotlin2/library-tests/java-kotlin-collection-type-generic-methods/test.expected @@ -191,6 +191,8 @@ methodWithDuplicate | List | listIterator | int | | List | of | E | | List | of | E[] | +| List | ofLazy | IntFunction | +| List | ofLazy | int | | List | remove | Object | | List | remove | int | | List | removeAll | Collection | @@ -216,6 +218,8 @@ methodWithDuplicate | List | listIterator | int | | List | of | E | | List | of | E[] | +| List | ofLazy | IntFunction | +| List | ofLazy | int | | List | remove | Object | | List | remove | int | | List | removeAll | Collection | @@ -242,6 +246,8 @@ methodWithDuplicate | List | listIterator | int | | List | of | E | | List | of | E[] | +| List | ofLazy | IntFunction | +| List | ofLazy | int | | List | remove | Object | | List | remove | int | | List | removeAll | Collection | @@ -274,6 +280,8 @@ methodWithDuplicate | Map | of | K | | Map | of | V | | Map | ofEntries | Entry[] | +| Map | ofLazy | Function | +| Map | ofLazy | Set | | Map | put | K | | Map | put | V | | Map | putAll | Map | @@ -303,6 +311,8 @@ methodWithDuplicate | Map | of | K | | Map | of | V | | Map | ofEntries | Entry[] | +| Map | ofLazy | Function | +| Map | ofLazy | Set | | Map | put | Identity | | Map | put | Object | | Map | putAll | Map | @@ -333,6 +343,8 @@ methodWithDuplicate | Map | of | K | | Map | of | V | | Map | ofEntries | Entry[] | +| Map | ofLazy | Function | +| Map | ofLazy | Set | | Map | put | K | | Map | put | V | | Map | putAll | Map | @@ -361,6 +373,8 @@ methodWithDuplicate | Map | of | K | | Map | of | V | | Map | ofEntries | Entry[] | +| Map | ofLazy | Function | +| Map | ofLazy | Set | | Map | put | Object | | Map | putAll | Map | | Map | putIfAbsent | Object | @@ -388,6 +402,8 @@ methodWithDuplicate | Map | of | K | | Map | of | V | | Map | ofEntries | Entry[] | +| Map | ofLazy | Function | +| Map | ofLazy | Set | | Map | put | String | | Map | putAll | Map | | Map | putIfAbsent | String | diff --git a/java/ql/test-kotlin2/library-tests/reflection/reflection.expected b/java/ql/test-kotlin2/library-tests/reflection/reflection.expected index b5de2b1adea3..2c0bee11a9e2 100644 --- a/java/ql/test-kotlin2/library-tests/reflection/reflection.expected +++ b/java/ql/test-kotlin2/library-tests/reflection/reflection.expected @@ -266,6 +266,7 @@ compGenerated | file:///AccessFlag$Location.class:0:0:0:0 | getEntries | Default property accessor | | file:///AccessFlag.class:0:0:0:0 | getEntries | Default property accessor | | file:///AccessMode.class:0:0:0:0 | getEntries | Default property accessor | +| file:///ByteOrder.class:0:0:0:0 | getEntries | Default property accessor | | file:///CharProgression.class:0:0:0:0 | forEach | Forwarder for a Kotlin class inheriting an interface default method | | file:///CharProgression.class:0:0:0:0 | spliterator | Forwarder for a Kotlin class inheriting an interface default method | | file:///CharRange.class:0:0:0:0 | forEach | Forwarder for a Kotlin class inheriting an interface default method | From b19c64896544547c98167b0705a1f2dee592e8ad Mon Sep 17 00:00:00 2001 From: Jeroen Ketema Date: Tue, 7 Apr 2026 10:43:15 +0200 Subject: [PATCH 060/157] C++: Add heuristic for GNU autoconf config files --- cpp/ql/lib/change-notes/2026-04-07-autoconf.md | 4 ++++ cpp/ql/lib/semmle/code/cpp/ConfigurationTestFile.qll | 7 +++++++ .../ExprHasNoEffect/autoconf/ExprHasNoEffect.expected | 2 ++ .../ExprHasNoEffect/autoconf/ExprHasNoEffect.qlref | 1 + .../Likely Typos/ExprHasNoEffect/autoconf/conftest.c | 6 ++++++ .../Likely Typos/ExprHasNoEffect/autoconf/conftest.c.c | 6 ++++++ .../Likely Typos/ExprHasNoEffect/autoconf/conftest.cpp | 6 ++++++ .../Likely Typos/ExprHasNoEffect/autoconf/conftest.h | 3 +++ .../Likely Typos/ExprHasNoEffect/autoconf/conftest123.c | 6 ++++++ .../Likely Typos/ExprHasNoEffect/autoconf/conftest_abc.c | 6 ++++++ 10 files changed, 47 insertions(+) create mode 100644 cpp/ql/lib/change-notes/2026-04-07-autoconf.md create mode 100644 cpp/ql/test/query-tests/Likely Bugs/Likely Typos/ExprHasNoEffect/autoconf/ExprHasNoEffect.expected create mode 100644 cpp/ql/test/query-tests/Likely Bugs/Likely Typos/ExprHasNoEffect/autoconf/ExprHasNoEffect.qlref create mode 100644 cpp/ql/test/query-tests/Likely Bugs/Likely Typos/ExprHasNoEffect/autoconf/conftest.c create mode 100644 cpp/ql/test/query-tests/Likely Bugs/Likely Typos/ExprHasNoEffect/autoconf/conftest.c.c create mode 100644 cpp/ql/test/query-tests/Likely Bugs/Likely Typos/ExprHasNoEffect/autoconf/conftest.cpp create mode 100644 cpp/ql/test/query-tests/Likely Bugs/Likely Typos/ExprHasNoEffect/autoconf/conftest.h create mode 100644 cpp/ql/test/query-tests/Likely Bugs/Likely Typos/ExprHasNoEffect/autoconf/conftest123.c create mode 100644 cpp/ql/test/query-tests/Likely Bugs/Likely Typos/ExprHasNoEffect/autoconf/conftest_abc.c diff --git a/cpp/ql/lib/change-notes/2026-04-07-autoconf.md b/cpp/ql/lib/change-notes/2026-04-07-autoconf.md new file mode 100644 index 000000000000..9f04417b8e25 --- /dev/null +++ b/cpp/ql/lib/change-notes/2026-04-07-autoconf.md @@ -0,0 +1,4 @@ +--- +category: feature +--- +* Added a subclass `AutoconfConfigureTestFile` of `ConfigurationTestFile` that represents files created by GNU autoconf configure scripts to test the build configuration. diff --git a/cpp/ql/lib/semmle/code/cpp/ConfigurationTestFile.qll b/cpp/ql/lib/semmle/code/cpp/ConfigurationTestFile.qll index b39c1009f07e..ae90caa0e637 100644 --- a/cpp/ql/lib/semmle/code/cpp/ConfigurationTestFile.qll +++ b/cpp/ql/lib/semmle/code/cpp/ConfigurationTestFile.qll @@ -42,3 +42,10 @@ class MesonPrivateTestFile extends ConfigurationTestFile { ) } } + +/** + * A file created by a GNU autoconf configure script to test the system configuration. + */ +class AutoconfConfigureTestFile extends ConfigurationTestFile { + AutoconfConfigureTestFile() { this.getBaseName().regexpMatch("conftest[0-9]*\\.c(pp)?") } +} diff --git a/cpp/ql/test/query-tests/Likely Bugs/Likely Typos/ExprHasNoEffect/autoconf/ExprHasNoEffect.expected b/cpp/ql/test/query-tests/Likely Bugs/Likely Typos/ExprHasNoEffect/autoconf/ExprHasNoEffect.expected new file mode 100644 index 000000000000..a87d2ddbd1bc --- /dev/null +++ b/cpp/ql/test/query-tests/Likely Bugs/Likely Typos/ExprHasNoEffect/autoconf/ExprHasNoEffect.expected @@ -0,0 +1,2 @@ +| conftest.c.c:4:3:4:8 | call to strlen | This expression has no effect (because $@ has no external side effects). | conftest.h:3:8:3:13 | strlen | strlen | +| conftest_abc.c:4:3:4:8 | call to strlen | This expression has no effect (because $@ has no external side effects). | conftest.h:3:8:3:13 | strlen | strlen | diff --git a/cpp/ql/test/query-tests/Likely Bugs/Likely Typos/ExprHasNoEffect/autoconf/ExprHasNoEffect.qlref b/cpp/ql/test/query-tests/Likely Bugs/Likely Typos/ExprHasNoEffect/autoconf/ExprHasNoEffect.qlref new file mode 100644 index 000000000000..82a90f5413a9 --- /dev/null +++ b/cpp/ql/test/query-tests/Likely Bugs/Likely Typos/ExprHasNoEffect/autoconf/ExprHasNoEffect.qlref @@ -0,0 +1 @@ +Likely Bugs/Likely Typos/ExprHasNoEffect.ql diff --git a/cpp/ql/test/query-tests/Likely Bugs/Likely Typos/ExprHasNoEffect/autoconf/conftest.c b/cpp/ql/test/query-tests/Likely Bugs/Likely Typos/ExprHasNoEffect/autoconf/conftest.c new file mode 100644 index 000000000000..53c647d194b1 --- /dev/null +++ b/cpp/ql/test/query-tests/Likely Bugs/Likely Typos/ExprHasNoEffect/autoconf/conftest.c @@ -0,0 +1,6 @@ +#include "conftest.h" + +int main2() { + strlen(""); // GOOD: the source file occurs in a `CMakeFiles/CMakeScratch/TryCompile-...` directory + return 0; +} diff --git a/cpp/ql/test/query-tests/Likely Bugs/Likely Typos/ExprHasNoEffect/autoconf/conftest.c.c b/cpp/ql/test/query-tests/Likely Bugs/Likely Typos/ExprHasNoEffect/autoconf/conftest.c.c new file mode 100644 index 000000000000..1c9667d7463b --- /dev/null +++ b/cpp/ql/test/query-tests/Likely Bugs/Likely Typos/ExprHasNoEffect/autoconf/conftest.c.c @@ -0,0 +1,6 @@ +#include "conftest.h" + +int main3() { + strlen(""); // GOOD: the source file occurs in a `CMakeFiles/CMakeScratch/TryCompile-...` directory + return 0; +} diff --git a/cpp/ql/test/query-tests/Likely Bugs/Likely Typos/ExprHasNoEffect/autoconf/conftest.cpp b/cpp/ql/test/query-tests/Likely Bugs/Likely Typos/ExprHasNoEffect/autoconf/conftest.cpp new file mode 100644 index 000000000000..9cd23976e14e --- /dev/null +++ b/cpp/ql/test/query-tests/Likely Bugs/Likely Typos/ExprHasNoEffect/autoconf/conftest.cpp @@ -0,0 +1,6 @@ +#include "conftest.h" + +int main4() { + strlen(""); // GOOD: the source file occurs in a `CMakeFiles/CMakeScratch/TryCompile-...` directory + return 0; +} diff --git a/cpp/ql/test/query-tests/Likely Bugs/Likely Typos/ExprHasNoEffect/autoconf/conftest.h b/cpp/ql/test/query-tests/Likely Bugs/Likely Typos/ExprHasNoEffect/autoconf/conftest.h new file mode 100644 index 000000000000..9cf6f7e0d9f8 --- /dev/null +++ b/cpp/ql/test/query-tests/Likely Bugs/Likely Typos/ExprHasNoEffect/autoconf/conftest.h @@ -0,0 +1,3 @@ +typedef long long size_t; + +size_t strlen(const char *s); diff --git a/cpp/ql/test/query-tests/Likely Bugs/Likely Typos/ExprHasNoEffect/autoconf/conftest123.c b/cpp/ql/test/query-tests/Likely Bugs/Likely Typos/ExprHasNoEffect/autoconf/conftest123.c new file mode 100644 index 000000000000..e79a7361ffc1 --- /dev/null +++ b/cpp/ql/test/query-tests/Likely Bugs/Likely Typos/ExprHasNoEffect/autoconf/conftest123.c @@ -0,0 +1,6 @@ +#include "conftest.h" + +int main5() { + strlen(""); // GOOD: the source file occurs in a `CMakeFiles/CMakeScratch/TryCompile-...` directory + return 0; +} diff --git a/cpp/ql/test/query-tests/Likely Bugs/Likely Typos/ExprHasNoEffect/autoconf/conftest_abc.c b/cpp/ql/test/query-tests/Likely Bugs/Likely Typos/ExprHasNoEffect/autoconf/conftest_abc.c new file mode 100644 index 000000000000..d6db9c0b3e03 --- /dev/null +++ b/cpp/ql/test/query-tests/Likely Bugs/Likely Typos/ExprHasNoEffect/autoconf/conftest_abc.c @@ -0,0 +1,6 @@ +#include "conftest.h" + +int main1() { + strlen(""); // GOOD: the source file occurs in a `CMakeFiles/CMakeScratch/TryCompile-...` directory + return 0; +} From 04cfd37f53be166f4ab33c520f293958256c8372 Mon Sep 17 00:00:00 2001 From: Jeroen Ketema Date: Tue, 7 Apr 2026 10:52:12 +0200 Subject: [PATCH 061/157] C++: Fix comments in tests --- .../Likely Typos/ExprHasNoEffect/autoconf/conftest.c | 2 +- .../Likely Typos/ExprHasNoEffect/autoconf/conftest.c.c | 2 +- .../Likely Typos/ExprHasNoEffect/autoconf/conftest.cpp | 2 +- .../Likely Typos/ExprHasNoEffect/autoconf/conftest123.c | 2 +- .../Likely Typos/ExprHasNoEffect/autoconf/conftest_abc.c | 2 +- 5 files changed, 5 insertions(+), 5 deletions(-) diff --git a/cpp/ql/test/query-tests/Likely Bugs/Likely Typos/ExprHasNoEffect/autoconf/conftest.c b/cpp/ql/test/query-tests/Likely Bugs/Likely Typos/ExprHasNoEffect/autoconf/conftest.c index 53c647d194b1..2e067f5c4336 100644 --- a/cpp/ql/test/query-tests/Likely Bugs/Likely Typos/ExprHasNoEffect/autoconf/conftest.c +++ b/cpp/ql/test/query-tests/Likely Bugs/Likely Typos/ExprHasNoEffect/autoconf/conftest.c @@ -1,6 +1,6 @@ #include "conftest.h" int main2() { - strlen(""); // GOOD: the source file occurs in a `CMakeFiles/CMakeScratch/TryCompile-...` directory + strlen(""); // GOOD: conftest files are ignored return 0; } diff --git a/cpp/ql/test/query-tests/Likely Bugs/Likely Typos/ExprHasNoEffect/autoconf/conftest.c.c b/cpp/ql/test/query-tests/Likely Bugs/Likely Typos/ExprHasNoEffect/autoconf/conftest.c.c index 1c9667d7463b..4ff7c2253358 100644 --- a/cpp/ql/test/query-tests/Likely Bugs/Likely Typos/ExprHasNoEffect/autoconf/conftest.c.c +++ b/cpp/ql/test/query-tests/Likely Bugs/Likely Typos/ExprHasNoEffect/autoconf/conftest.c.c @@ -1,6 +1,6 @@ #include "conftest.h" int main3() { - strlen(""); // GOOD: the source file occurs in a `CMakeFiles/CMakeScratch/TryCompile-...` directory + strlen(""); // BAD: not a `conftest` file, as `conftest` is not directly followed by the extension or a sequence of numbers. return 0; } diff --git a/cpp/ql/test/query-tests/Likely Bugs/Likely Typos/ExprHasNoEffect/autoconf/conftest.cpp b/cpp/ql/test/query-tests/Likely Bugs/Likely Typos/ExprHasNoEffect/autoconf/conftest.cpp index 9cd23976e14e..7b8edf642610 100644 --- a/cpp/ql/test/query-tests/Likely Bugs/Likely Typos/ExprHasNoEffect/autoconf/conftest.cpp +++ b/cpp/ql/test/query-tests/Likely Bugs/Likely Typos/ExprHasNoEffect/autoconf/conftest.cpp @@ -1,6 +1,6 @@ #include "conftest.h" int main4() { - strlen(""); // GOOD: the source file occurs in a `CMakeFiles/CMakeScratch/TryCompile-...` directory + strlen(""); // GOOD: conftest files are ignored return 0; } diff --git a/cpp/ql/test/query-tests/Likely Bugs/Likely Typos/ExprHasNoEffect/autoconf/conftest123.c b/cpp/ql/test/query-tests/Likely Bugs/Likely Typos/ExprHasNoEffect/autoconf/conftest123.c index e79a7361ffc1..b227d53ad2a3 100644 --- a/cpp/ql/test/query-tests/Likely Bugs/Likely Typos/ExprHasNoEffect/autoconf/conftest123.c +++ b/cpp/ql/test/query-tests/Likely Bugs/Likely Typos/ExprHasNoEffect/autoconf/conftest123.c @@ -1,6 +1,6 @@ #include "conftest.h" int main5() { - strlen(""); // GOOD: the source file occurs in a `CMakeFiles/CMakeScratch/TryCompile-...` directory + strlen(""); // GOOD: conftest files are ignored return 0; } diff --git a/cpp/ql/test/query-tests/Likely Bugs/Likely Typos/ExprHasNoEffect/autoconf/conftest_abc.c b/cpp/ql/test/query-tests/Likely Bugs/Likely Typos/ExprHasNoEffect/autoconf/conftest_abc.c index d6db9c0b3e03..88215d7434cd 100644 --- a/cpp/ql/test/query-tests/Likely Bugs/Likely Typos/ExprHasNoEffect/autoconf/conftest_abc.c +++ b/cpp/ql/test/query-tests/Likely Bugs/Likely Typos/ExprHasNoEffect/autoconf/conftest_abc.c @@ -1,6 +1,6 @@ #include "conftest.h" int main1() { - strlen(""); // GOOD: the source file occurs in a `CMakeFiles/CMakeScratch/TryCompile-...` directory + strlen(""); // BAD: not a `conftest` file, as `conftest` is not directly followed by the extension or a sequence of numbers. return 0; } From eb64fcd208039d92c1ffc3de463a7faa940534bc Mon Sep 17 00:00:00 2001 From: Tom Hvitved Date: Fri, 20 Mar 2026 11:16:43 +0100 Subject: [PATCH 062/157] C#: Add test that shows unintended flow summary generation --- .../dataflow/CaptureContentSummaryModels.expected | 1 + csharp/ql/test/utils/modelgenerator/dataflow/Summaries.cs | 6 ++++++ 2 files changed, 7 insertions(+) diff --git a/csharp/ql/test/utils/modelgenerator/dataflow/CaptureContentSummaryModels.expected b/csharp/ql/test/utils/modelgenerator/dataflow/CaptureContentSummaryModels.expected index cb6fc390349c..47769d299c35 100644 --- a/csharp/ql/test/utils/modelgenerator/dataflow/CaptureContentSummaryModels.expected +++ b/csharp/ql/test/utils/modelgenerator/dataflow/CaptureContentSummaryModels.expected @@ -1,2 +1,3 @@ unexpectedModel +| Unexpected contentbased-summary found: Models;HigherOrderParameters;false;Apply;(System.Func,System.Object);;Argument[1];ReturnValue;value;dfc-generated | expectedModel diff --git a/csharp/ql/test/utils/modelgenerator/dataflow/Summaries.cs b/csharp/ql/test/utils/modelgenerator/dataflow/Summaries.cs index b59513504d9d..4c85b397ac1f 100644 --- a/csharp/ql/test/utils/modelgenerator/dataflow/Summaries.cs +++ b/csharp/ql/test/utils/modelgenerator/dataflow/Summaries.cs @@ -536,6 +536,12 @@ public void Apply(Action a, object o) { a(o); } + + private void CallApply() + { + // Test that this call to `Apply` does not interfere with the flow summaries generated for `Apply` + Apply(x => x, null); + } } public static class HigherOrderExtensionMethods From 1e1a8732a38535cdaf337c97c856ab846d945bcf Mon Sep 17 00:00:00 2001 From: Tom Hvitved Date: Wed, 25 Mar 2026 11:39:40 +0100 Subject: [PATCH 063/157] Data flow: Add hook for preventing lambda dispatch in source call contexts --- .../internal/DataFlowImplSpecific.qll | 2 ++ .../dataflow/internal/DataFlowPrivate.qll | 17 ++++++++++- .../CaptureContentSummaryModels.expected | 1 - shared/dataflow/codeql/dataflow/DataFlow.qll | 29 +++++++++++++++++++ .../codeql/dataflow/internal/DataFlowImpl.qll | 12 ++++++++ .../dataflow/internal/DataFlowImplCommon.qll | 15 +++++++++- 6 files changed, 73 insertions(+), 3 deletions(-) diff --git a/csharp/ql/lib/semmle/code/csharp/dataflow/internal/DataFlowImplSpecific.qll b/csharp/ql/lib/semmle/code/csharp/dataflow/internal/DataFlowImplSpecific.qll index af104d777b87..d548c0ef2767 100644 --- a/csharp/ql/lib/semmle/code/csharp/dataflow/internal/DataFlowImplSpecific.qll +++ b/csharp/ql/lib/semmle/code/csharp/dataflow/internal/DataFlowImplSpecific.qll @@ -29,4 +29,6 @@ module CsharpDataFlow implements InputSig { predicate neverSkipInPathGraph(Node n) { exists(n.(AssignableDefinitionNode).getDefinition().getTargetAccess()) } + + DataFlowType getSourceContextParameterNodeType() { result.isSourceContextParameterType() } } diff --git a/csharp/ql/lib/semmle/code/csharp/dataflow/internal/DataFlowPrivate.qll b/csharp/ql/lib/semmle/code/csharp/dataflow/internal/DataFlowPrivate.qll index 109c27de67be..64a869e346ec 100644 --- a/csharp/ql/lib/semmle/code/csharp/dataflow/internal/DataFlowPrivate.qll +++ b/csharp/ql/lib/semmle/code/csharp/dataflow/internal/DataFlowPrivate.qll @@ -1179,7 +1179,8 @@ private module Cached { cached newtype TDataFlowType = TGvnDataFlowType(Gvn::GvnType t) or - TDelegateDataFlowType(Callable lambda) { lambdaCreationExpr(_, lambda) } + TDelegateDataFlowType(Callable lambda) { lambdaCreationExpr(_, lambda) } or + TSourceContextParameterType() } import Cached @@ -2394,6 +2395,8 @@ class DataFlowType extends TDataFlowType { Callable asDelegate() { this = TDelegateDataFlowType(result) } + predicate isSourceContextParameterType() { this = TSourceContextParameterType() } + /** * Gets an expression that creates a delegate of this type. * @@ -2412,6 +2415,9 @@ class DataFlowType extends TDataFlowType { result = this.asGvnType().toString() or result = this.asDelegate().toString() + or + this.isSourceContextParameterType() and + result = "" } } @@ -2469,6 +2475,11 @@ private predicate compatibleTypesDelegateLeft(DataFlowType dt1, DataFlowType dt2 ) } +pragma[nomagic] +private predicate compatibleTypesSourceContextParameterTypeLeft(DataFlowType dt1, DataFlowType dt2) { + dt1.isSourceContextParameterType() and not exists(dt2.asDelegate()) +} + /** * Holds if `t1` and `t2` are compatible, that is, whether data can flow from * a node of type `t1` to a node of type `t2`. @@ -2499,6 +2510,10 @@ predicate compatibleTypes(DataFlowType dt1, DataFlowType dt2) { compatibleTypesDelegateLeft(dt2, dt1) or dt1.asDelegate() = dt2.asDelegate() + or + compatibleTypesSourceContextParameterTypeLeft(dt1, dt2) + or + compatibleTypesSourceContextParameterTypeLeft(dt2, dt1) } pragma[nomagic] diff --git a/csharp/ql/test/utils/modelgenerator/dataflow/CaptureContentSummaryModels.expected b/csharp/ql/test/utils/modelgenerator/dataflow/CaptureContentSummaryModels.expected index 47769d299c35..cb6fc390349c 100644 --- a/csharp/ql/test/utils/modelgenerator/dataflow/CaptureContentSummaryModels.expected +++ b/csharp/ql/test/utils/modelgenerator/dataflow/CaptureContentSummaryModels.expected @@ -1,3 +1,2 @@ unexpectedModel -| Unexpected contentbased-summary found: Models;HigherOrderParameters;false;Apply;(System.Func,System.Object);;Argument[1];ReturnValue;value;dfc-generated | expectedModel diff --git a/shared/dataflow/codeql/dataflow/DataFlow.qll b/shared/dataflow/codeql/dataflow/DataFlow.qll index 7f9c0194374b..bc9fc26adb12 100644 --- a/shared/dataflow/codeql/dataflow/DataFlow.qll +++ b/shared/dataflow/codeql/dataflow/DataFlow.qll @@ -63,6 +63,35 @@ signature module InputSig { DataFlowType getNodeType(Node node); + /** + * Gets a special type to use for parameter nodes belonging to callables with a + * source node where a source call context `FlowFeature` is used, if any. + * + * This can be used to prevent lambdas from being resolved, when a concrete call + * context is needed. Example: + * + * ```csharp + * void Foo(Action a) + * { + * var x = Source(); + * a(x); // (1) + * a = s => Sink(s); // (2) + * a(x); // (3) + * } + * + * void Bar() + * { + * Foo(s => Sink(s)); // (4) + * } + * ``` + * + * If a source call context flow feature is used, `a` can be assigned a special + * type that is incompatible with the type of _any_ lambda expression, which will + * prevent the call edge from (1) to (4). Note that the call edge from (3) to (2) + * will still be valid. + */ + default DataFlowType getSourceContextParameterNodeType() { none() } + predicate nodeIsHidden(Node node); class DataFlowExpr; diff --git a/shared/dataflow/codeql/dataflow/internal/DataFlowImpl.qll b/shared/dataflow/codeql/dataflow/internal/DataFlowImpl.qll index 506774857d8e..ed0412d1cd4d 100644 --- a/shared/dataflow/codeql/dataflow/internal/DataFlowImpl.qll +++ b/shared/dataflow/codeql/dataflow/internal/DataFlowImpl.qll @@ -1103,6 +1103,16 @@ module MakeImpl Lang> { private module FwdTypeFlowInput implements TypeFlowInput { predicate enableTypeFlow = Param::enableTypeFlow/0; + pragma[nomagic] + predicate isParameterNodeInSourceCallContext(ParamNode p) { + hasSourceCallCtx() and + exists(Node source, DataFlowCallable c | + Config::isSource(pragma[only_bind_into](source), _) and + nodeEnclosingCallable(source, c) and + nodeEnclosingCallable(p, c) + ) + } + predicate relevantCallEdgeIn = PrevStage::relevantCallEdgeIn/2; predicate relevantCallEdgeOut = PrevStage::relevantCallEdgeOut/2; @@ -1410,6 +1420,8 @@ module MakeImpl Lang> { private module RevTypeFlowInput implements TypeFlowInput { predicate enableTypeFlow = Param::enableTypeFlow/0; + predicate isParameterNodeInSourceCallContext(ParamNode p) { none() } + predicate relevantCallEdgeIn(Call call, Callable c) { flowOutOfCallAp(call, c, _, _, _, _, _) } diff --git a/shared/dataflow/codeql/dataflow/internal/DataFlowImplCommon.qll b/shared/dataflow/codeql/dataflow/internal/DataFlowImplCommon.qll index 51ebb3f8a730..3a414b8a0009 100644 --- a/shared/dataflow/codeql/dataflow/internal/DataFlowImplCommon.qll +++ b/shared/dataflow/codeql/dataflow/internal/DataFlowImplCommon.qll @@ -1893,6 +1893,9 @@ module MakeImplCommon Lang> { signature module TypeFlowInput { predicate enableTypeFlow(); + /** Holds if `p` is a parameter of a callable with a source node that has a call context. */ + predicate isParameterNodeInSourceCallContext(ParamNode p); + /** Holds if the edge is possibly needed in the direction `call` to `c`. */ predicate relevantCallEdgeIn(Call call, Callable c); @@ -1953,6 +1956,9 @@ module MakeImplCommon Lang> { /** * Holds if a sequence of calls may propagate the value of `arg` to some * argument-to-parameter call edge that strengthens the static type. + * + * This predicate is a reverse flow computation, starting at calls that + * strengthen the type and then following relevant call edges backwards. */ pragma[nomagic] private predicate trackedArgTypeCand(ArgNode arg) { @@ -1987,6 +1993,9 @@ module MakeImplCommon Lang> { * Holds if `p` is part of a value-propagating call path where the * end-points have stronger types than the intermediate parameter and * argument nodes. + * + * This predicate is a forward flow computation, intersecting with the + * reverse flow computation done in `trackedArgTypeCand`. */ private predicate trackedParamType(ParamNode p) { exists(Call call1, Callable c1, ArgNode argOut, Call call2, Callable c2, ArgNode argIn | @@ -2013,6 +2022,8 @@ module MakeImplCommon Lang> { typeStrongerThanFilter(at, pt) ) or + Input::isParameterNodeInSourceCallContext(p) + or exists(ArgNode arg | trackedArgType(arg) and relevantCallEdge(_, _, arg, p) and @@ -2106,7 +2117,9 @@ module MakeImplCommon Lang> { private predicate typeFlowParamType(ParamNode p, Type t, boolean cc) { exists(Callable c | Input::dataFlowNonCallEntry(c, cc) and - trackedParamWithType(p, t, c) + if cc = true and exists(getSourceContextParameterNodeType()) + then t = getSourceContextParameterNodeType() + else trackedParamWithType(p, t, c) ) or exists(Type t1, Type t2 | From 0d4524f8f3256ef28e52af97bb70b69b82fbd8fd Mon Sep 17 00:00:00 2001 From: Tom Hvitved Date: Tue, 7 Apr 2026 11:38:48 +0200 Subject: [PATCH 064/157] Address review comments --- .../code/csharp/dataflow/internal/DataFlowImplSpecific.qll | 4 +++- .../semmle/code/csharp/dataflow/internal/DataFlowPrivate.qll | 2 ++ shared/dataflow/codeql/dataflow/DataFlow.qll | 4 ++-- .../dataflow/codeql/dataflow/internal/DataFlowImplCommon.qll | 4 ++-- 4 files changed, 9 insertions(+), 5 deletions(-) diff --git a/csharp/ql/lib/semmle/code/csharp/dataflow/internal/DataFlowImplSpecific.qll b/csharp/ql/lib/semmle/code/csharp/dataflow/internal/DataFlowImplSpecific.qll index d548c0ef2767..ab1e75b3d0fc 100644 --- a/csharp/ql/lib/semmle/code/csharp/dataflow/internal/DataFlowImplSpecific.qll +++ b/csharp/ql/lib/semmle/code/csharp/dataflow/internal/DataFlowImplSpecific.qll @@ -30,5 +30,7 @@ module CsharpDataFlow implements InputSig { exists(n.(AssignableDefinitionNode).getDefinition().getTargetAccess()) } - DataFlowType getSourceContextParameterNodeType() { result.isSourceContextParameterType() } + DataFlowType getSourceContextParameterNodeType(Node p) { + exists(p) and result.isSourceContextParameterType() + } } diff --git a/csharp/ql/lib/semmle/code/csharp/dataflow/internal/DataFlowPrivate.qll b/csharp/ql/lib/semmle/code/csharp/dataflow/internal/DataFlowPrivate.qll index 64a869e346ec..9a550a30b737 100644 --- a/csharp/ql/lib/semmle/code/csharp/dataflow/internal/DataFlowPrivate.qll +++ b/csharp/ql/lib/semmle/code/csharp/dataflow/internal/DataFlowPrivate.qll @@ -2526,6 +2526,8 @@ predicate typeStrongerThan(DataFlowType t1, DataFlowType t2) { uselessTypebound(t2) or compatibleTypesDelegateLeft(t1, t2) + or + compatibleTypesSourceContextParameterTypeLeft(t1, t2) } /** diff --git a/shared/dataflow/codeql/dataflow/DataFlow.qll b/shared/dataflow/codeql/dataflow/DataFlow.qll index bc9fc26adb12..cacd52cf8396 100644 --- a/shared/dataflow/codeql/dataflow/DataFlow.qll +++ b/shared/dataflow/codeql/dataflow/DataFlow.qll @@ -64,7 +64,7 @@ signature module InputSig { DataFlowType getNodeType(Node node); /** - * Gets a special type to use for parameter nodes belonging to callables with a + * Gets a special type to use for parameter node `p` belonging to callables with a * source node where a source call context `FlowFeature` is used, if any. * * This can be used to prevent lambdas from being resolved, when a concrete call @@ -90,7 +90,7 @@ signature module InputSig { * prevent the call edge from (1) to (4). Note that the call edge from (3) to (2) * will still be valid. */ - default DataFlowType getSourceContextParameterNodeType() { none() } + default DataFlowType getSourceContextParameterNodeType(Node p) { none() } predicate nodeIsHidden(Node node); diff --git a/shared/dataflow/codeql/dataflow/internal/DataFlowImplCommon.qll b/shared/dataflow/codeql/dataflow/internal/DataFlowImplCommon.qll index 3a414b8a0009..b2d4d13b07d4 100644 --- a/shared/dataflow/codeql/dataflow/internal/DataFlowImplCommon.qll +++ b/shared/dataflow/codeql/dataflow/internal/DataFlowImplCommon.qll @@ -2117,8 +2117,8 @@ module MakeImplCommon Lang> { private predicate typeFlowParamType(ParamNode p, Type t, boolean cc) { exists(Callable c | Input::dataFlowNonCallEntry(c, cc) and - if cc = true and exists(getSourceContextParameterNodeType()) - then t = getSourceContextParameterNodeType() + if cc = true and exists(getSourceContextParameterNodeType(p)) + then t = getSourceContextParameterNodeType(p) else trackedParamWithType(p, t, c) ) or From e06294bcb4ccfbc0783c47a1a8c9f0f84578f2da Mon Sep 17 00:00:00 2001 From: Mathias Vorreiter Pedersen Date: Tue, 7 Apr 2026 11:11:04 +0100 Subject: [PATCH 065/157] Shared: Respond to review comments. --- .../codeql/dataflow/internal/DataFlowImplStage1.qll | 13 ++----------- 1 file changed, 2 insertions(+), 11 deletions(-) diff --git a/shared/dataflow/codeql/dataflow/internal/DataFlowImplStage1.qll b/shared/dataflow/codeql/dataflow/internal/DataFlowImplStage1.qll index e9c92844fb7f..b7a45a67b567 100644 --- a/shared/dataflow/codeql/dataflow/internal/DataFlowImplStage1.qll +++ b/shared/dataflow/codeql/dataflow/internal/DataFlowImplStage1.qll @@ -86,15 +86,13 @@ module MakeImplStage1 Lang> { bindingset[p, kind] predicate parameterFlowThroughAllowed(ParamNd p, ReturnKindExt kind); + predicate fwdFlow(Nd node); + // begin StageSig class Ap; class ApNil extends Ap; - predicate fwdFlow(Nd node); - - predicate fwdFlow(Nd node, Ap ap); - predicate revFlow(Nd node); predicate revFlow(Nd node, Ap ap); @@ -1297,11 +1295,6 @@ module MakeImplStage1 Lang> { predicate fwdFlow(Nd node) { Stage1::fwdFlow(node) } - predicate fwdFlow(Nd node, Ap ap) { - Stage1::fwdFlow(node) and - exists(ap) - } - predicate revFlow(NodeEx node, Ap ap) { Stage1::revFlow(node) and exists(ap) } predicate toNormalSinkNode = toNormalSinkNodeEx/1; @@ -1408,8 +1401,6 @@ module MakeImplStage1 Lang> { predicate fwdFlow(Nd node) { Stage1::fwdFlow(node.getNodeEx()) } - predicate fwdFlow(Nd node, Ap ap) { Stage1::fwdFlow(node.getNodeEx()) and exists(ap) } - predicate revFlow(Nd node) { Stage1::revFlow(node.getNodeEx()) } predicate revFlow(Nd node, Ap ap) { Stage1::revFlow(node.getNodeEx()) and exists(ap) } From 3769a8a48287688b1c7469233d32d46dcd636660 Mon Sep 17 00:00:00 2001 From: Geoffrey White <40627776+geoffw0@users.noreply.github.com> Date: Tue, 7 Apr 2026 12:51:56 +0100 Subject: [PATCH 066/157] C++: Update code scanning suite .expected. --- .../integration-tests/query-suite/cpp-code-scanning.qls.expected | 1 + 1 file changed, 1 insertion(+) diff --git a/cpp/ql/integration-tests/query-suite/cpp-code-scanning.qls.expected b/cpp/ql/integration-tests/query-suite/cpp-code-scanning.qls.expected index 57d240fd7958..6875fbf43def 100644 --- a/cpp/ql/integration-tests/query-suite/cpp-code-scanning.qls.expected +++ b/cpp/ql/integration-tests/query-suite/cpp-code-scanning.qls.expected @@ -11,6 +11,7 @@ ql/cpp/ql/src/Likely Bugs/Arithmetic/SignedOverflowCheck.ql ql/cpp/ql/src/Likely Bugs/Conversion/CastArrayPointerArithmetic.ql ql/cpp/ql/src/Likely Bugs/Format/SnprintfOverflow.ql ql/cpp/ql/src/Likely Bugs/Format/WrongNumberOfFormatArguments.ql +ql/cpp/ql/src/Likely Bugs/Format/WrongTypeFormatArguments.ql ql/cpp/ql/src/Likely Bugs/Memory Management/AllocaInLoop.ql ql/cpp/ql/src/Likely Bugs/Memory Management/PointerOverflow.ql ql/cpp/ql/src/Likely Bugs/Memory Management/ReturnStackAllocatedMemory.ql From f2292643a35362236f1e729bf7833839fb36bb56 Mon Sep 17 00:00:00 2001 From: Geoffrey White <40627776+geoffw0@users.noreply.github.com> Date: Tue, 7 Apr 2026 12:53:53 +0100 Subject: [PATCH 067/157] C++: Update code scanning suite .expected. --- .../integration-tests/query-suite/cpp-code-scanning.qls.expected | 1 + 1 file changed, 1 insertion(+) diff --git a/cpp/ql/integration-tests/query-suite/cpp-code-scanning.qls.expected b/cpp/ql/integration-tests/query-suite/cpp-code-scanning.qls.expected index 57d240fd7958..6cc662aee3b2 100644 --- a/cpp/ql/integration-tests/query-suite/cpp-code-scanning.qls.expected +++ b/cpp/ql/integration-tests/query-suite/cpp-code-scanning.qls.expected @@ -7,6 +7,7 @@ ql/cpp/ql/src/Diagnostics/ExtractedFiles.ql ql/cpp/ql/src/Diagnostics/ExtractionWarnings.ql ql/cpp/ql/src/Diagnostics/FailedExtractorInvocations.ql ql/cpp/ql/src/Likely Bugs/Arithmetic/BadAdditionOverflowCheck.ql +ql/cpp/ql/src/Likely Bugs/Arithmetic/IntMultToLong.ql ql/cpp/ql/src/Likely Bugs/Arithmetic/SignedOverflowCheck.ql ql/cpp/ql/src/Likely Bugs/Conversion/CastArrayPointerArithmetic.ql ql/cpp/ql/src/Likely Bugs/Format/SnprintfOverflow.ql From 201af3fffcb9a79fbc49bc37ef05275abd0ce7f5 Mon Sep 17 00:00:00 2001 From: Geoffrey White <40627776+geoffw0@users.noreply.github.com> Date: Tue, 7 Apr 2026 12:59:31 +0100 Subject: [PATCH 068/157] C++: Update code scanning suite .expected. --- .../integration-tests/query-suite/cpp-code-scanning.qls.expected | 1 + 1 file changed, 1 insertion(+) diff --git a/cpp/ql/integration-tests/query-suite/cpp-code-scanning.qls.expected b/cpp/ql/integration-tests/query-suite/cpp-code-scanning.qls.expected index 57d240fd7958..926efb34d85c 100644 --- a/cpp/ql/integration-tests/query-suite/cpp-code-scanning.qls.expected +++ b/cpp/ql/integration-tests/query-suite/cpp-code-scanning.qls.expected @@ -28,6 +28,7 @@ ql/cpp/ql/src/Security/CWE/CWE-120/VeryLikelyOverrunWrite.ql ql/cpp/ql/src/Security/CWE/CWE-131/NoSpaceForZeroTerminator.ql ql/cpp/ql/src/Security/CWE/CWE-134/UncontrolledFormatString.ql ql/cpp/ql/src/Security/CWE/CWE-190/ArithmeticUncontrolled.ql +ql/cpp/ql/src/Security/CWE/CWE-190/ComparisonWithWiderType.ql ql/cpp/ql/src/Security/CWE/CWE-191/UnsignedDifferenceExpressionComparedZero.ql ql/cpp/ql/src/Security/CWE/CWE-253/HResultBooleanConversion.ql ql/cpp/ql/src/Security/CWE/CWE-311/CleartextFileWrite.ql From b21dba6131e8550f7ea940c3341ccfbfbbd3dc6d Mon Sep 17 00:00:00 2001 From: Geoffrey White <40627776+geoffw0@users.noreply.github.com> Date: Tue, 7 Apr 2026 13:06:34 +0100 Subject: [PATCH 069/157] C++: Update code scanning suite .expected. --- .../integration-tests/query-suite/cpp-code-scanning.qls.expected | 1 + 1 file changed, 1 insertion(+) diff --git a/cpp/ql/integration-tests/query-suite/cpp-code-scanning.qls.expected b/cpp/ql/integration-tests/query-suite/cpp-code-scanning.qls.expected index 57d240fd7958..4e86c27d53fd 100644 --- a/cpp/ql/integration-tests/query-suite/cpp-code-scanning.qls.expected +++ b/cpp/ql/integration-tests/query-suite/cpp-code-scanning.qls.expected @@ -40,6 +40,7 @@ ql/cpp/ql/src/Security/CWE/CWE-367/TOCTOUFilesystemRace.ql ql/cpp/ql/src/Security/CWE/CWE-416/IteratorToExpiredContainer.ql ql/cpp/ql/src/Security/CWE/CWE-416/UseOfStringAfterLifetimeEnds.ql ql/cpp/ql/src/Security/CWE/CWE-416/UseOfUniquePointerAfterLifetimeEnds.ql +ql/cpp/ql/src/Security/CWE/CWE-468/SuspiciousAddWithSizeof.ql ql/cpp/ql/src/Security/CWE/CWE-497/ExposedSystemData.ql ql/cpp/ql/src/Security/CWE/CWE-611/XXE.ql ql/cpp/ql/src/Security/CWE/CWE-676/DangerousFunctionOverflow.ql From 8d79248ea767a3e931d0e1695d48c8b4d0b719ae Mon Sep 17 00:00:00 2001 From: Taus Date: Fri, 20 Mar 2026 13:55:49 +0000 Subject: [PATCH 070/157] Python: Port ModificationOfLocals.ql --- python/ql/src/Statements/ModificationOfLocals.ql | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/python/ql/src/Statements/ModificationOfLocals.ql b/python/ql/src/Statements/ModificationOfLocals.ql index e4791a410f7a..82529cbd6d0b 100644 --- a/python/ql/src/Statements/ModificationOfLocals.ql +++ b/python/ql/src/Statements/ModificationOfLocals.ql @@ -12,10 +12,10 @@ */ import python -private import LegacyPointsTo +private import semmle.python.ApiGraphs -predicate originIsLocals(ControlFlowNodeWithPointsTo n) { - n.pointsTo(_, _, Value::named("locals").getACall()) +predicate originIsLocals(ControlFlowNode n) { + API::builtin("locals").getReturn().getAValueReachableFromSource().asCfgNode() = n } predicate modification_of_locals(ControlFlowNode f) { @@ -37,5 +37,5 @@ where // in module level scope `locals() == globals()` // see https://docs.python.org/3/library/functions.html#locals // FP report in https://github.com/github/codeql/issues/6674 - not a.getScope() instanceof ModuleScope + not a.getScope() instanceof Module select a, "Modification of the locals() dictionary will have no effect on the local variables." From e3688444d74582c29c0356f96ac80c19201f3166 Mon Sep 17 00:00:00 2001 From: Taus Date: Tue, 7 Apr 2026 21:39:30 +0000 Subject: [PATCH 071/157] Python: Also exclude class scope Changing the `locals()` dictionary actually _does_ change the attributes of the class being defined, so we shouldn't alert in this case. --- python/ql/src/Statements/ModificationOfLocals.ql | 5 ++++- python/ql/test/query-tests/Statements/general/test.py | 6 ++++++ 2 files changed, 10 insertions(+), 1 deletion(-) diff --git a/python/ql/src/Statements/ModificationOfLocals.ql b/python/ql/src/Statements/ModificationOfLocals.ql index 82529cbd6d0b..f32ddcf78849 100644 --- a/python/ql/src/Statements/ModificationOfLocals.ql +++ b/python/ql/src/Statements/ModificationOfLocals.ql @@ -37,5 +37,8 @@ where // in module level scope `locals() == globals()` // see https://docs.python.org/3/library/functions.html#locals // FP report in https://github.com/github/codeql/issues/6674 - not a.getScope() instanceof Module + not a.getScope() instanceof Module and + // in class level scope `locals()` reflects the class namespace, + // so modifications do take effect. + not a.getScope() instanceof Class select a, "Modification of the locals() dictionary will have no effect on the local variables." diff --git a/python/ql/test/query-tests/Statements/general/test.py b/python/ql/test/query-tests/Statements/general/test.py index eee63fa89e88..a5848f7c718d 100644 --- a/python/ql/test/query-tests/Statements/general/test.py +++ b/python/ql/test/query-tests/Statements/general/test.py @@ -174,3 +174,9 @@ def assert_ok(seq): # False positive. ODASA-8042. Fixed in PR #2401. class false_positive: e = (x for x in []) + +# In class-level scope `locals()` reflects the class namespace, +# so modifications do take effect. +class MyClass: + locals()['x'] = 43 # OK + y = x From 2fbfcb970e87aaad8c9501e6ecc071227b6c11a0 Mon Sep 17 00:00:00 2001 From: Jeroen Ketema Date: Wed, 8 Apr 2026 13:19:00 +0200 Subject: [PATCH 072/157] Swift: Use Swift 6.3 artifacts --- swift/third_party/load.bzl | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/swift/third_party/load.bzl b/swift/third_party/load.bzl index 676c5f0ce847..156a2201cdac 100644 --- a/swift/third_party/load.bzl +++ b/swift/third_party/load.bzl @@ -6,6 +6,10 @@ load("//misc/bazel:lfs.bzl", "lfs_archive", "lfs_files") _override = { # these are used to test new artifacts. Must be empty before merging to main + "swift-prebuilt-macOS-swift-6.3-RELEASE-161.tar.zst": "eab65167bfb20e07803b9be61b22b109a0308056c58b572ea9a275b920a3ea0a", + "swift-prebuilt-Linux-swift-6.3-RELEASE-161.tar.zst": "cfc111c983a00acfdb01090ba1f568fa257d2f8fc3050a2f7c37e160fe9f1003", + "resource-dir-macOS-swift-6.3-RELEASE-151.zip": "991e63a2559a762058d66df08275aea55217ff96bd482c5ad7d536181afa573a", + "resource-dir-Linux-swift-6.3-RELEASE-151.zip": "9078cfd1ec62f30cd25c0ea4e43fc3d99449f802e6c165f59a7f789a70eb5284", } _staging_url = "https://github.com/dsp-testing/codeql-swift-artifacts/releases/download/staging-{}/{}" From fd83515843776744084570828a1a25360a8a3383 Mon Sep 17 00:00:00 2001 From: Jeroen Ketema Date: Wed, 8 Apr 2026 13:19:40 +0200 Subject: [PATCH 073/157] Swift: Make extractor compile --- swift/extractor/infra/SwiftTagTraits.h | 7 +++---- swift/extractor/translators/StmtTranslator.cpp | 2 +- swift/extractor/translators/TypeTranslator.cpp | 12 ++++++++---- swift/extractor/translators/TypeTranslator.h | 3 ++- 4 files changed, 14 insertions(+), 10 deletions(-) diff --git a/swift/extractor/infra/SwiftTagTraits.h b/swift/extractor/infra/SwiftTagTraits.h index f7825043edda..7ea1d58a5763 100644 --- a/swift/extractor/infra/SwiftTagTraits.h +++ b/swift/extractor/infra/SwiftTagTraits.h @@ -146,7 +146,6 @@ MAP(swift::Expr, ExprTag) MAP(swift::ImplicitConversionExpr, ImplicitConversionExprTag) MAP(swift::LoadExpr, LoadExprTag) MAP(swift::DestructureTupleExpr, DestructureTupleExprTag) - MAP(swift::UnresolvedTypeConversionExpr, UnresolvedTypeConversionExprTag) MAP(swift::FunctionConversionExpr, FunctionConversionExprTag) MAP(swift::CovariantFunctionConversionExpr, CovariantFunctionConversionExprTag) MAP(swift::CovariantReturnConversionExpr, CovariantReturnConversionExprTag) @@ -267,8 +266,7 @@ MAP(swift::TypeRepr, TypeReprTag) MAP(swift::Type, TypeTag) MAP(swift::TypeBase, TypeTag) MAP(swift::ErrorType, ErrorTypeTag) - MAP(swift::UnresolvedType, UnresolvedTypeTag) - MAP(swift::PlaceholderType, void) // appears in ambiguous types but are then transformed to UnresolvedType + MAP(swift::PlaceholderType, void) // appears in ambiguous types but are then transformed to ErrorType MAP(swift::BuiltinType, BuiltinTypeTag) MAP(swift::AnyBuiltinIntegerType, AnyBuiltinIntegerTypeTag) MAP(swift::BuiltinIntegerType, BuiltinIntegerTypeTag) @@ -285,7 +283,8 @@ MAP(swift::TypeBase, TypeTag) MAP(swift::BuiltinVectorType, BuiltinVectorTypeTag) MAP(swift::BuiltinPackIndexType, void) // SIL type, cannot really appear in the frontend run MAP(swift::BuiltinNonDefaultDistributedActorStorageType, void) // Does not appear in AST/SIL, only used during IRGen - MAP(swift::BuiltinFixedArrayType, BuiltinFixedArrayTypeTag) + MAP(swift::BuiltinGenericType, BuiltinGenericTypeTag) + MAP(swift::BuiltinFixedArrayType, BuiltinFixedArrayTypeTag) MAP(swift::BuiltinUnboundGenericType, void) // Only used during type resolution MAP(swift::BuiltinImplicitActorType, void) // SIL type MAP(swift::TupleType, TupleTypeTag) diff --git a/swift/extractor/translators/StmtTranslator.cpp b/swift/extractor/translators/StmtTranslator.cpp index 1562c28f19c7..2b059682b331 100644 --- a/swift/extractor/translators/StmtTranslator.cpp +++ b/swift/extractor/translators/StmtTranslator.cpp @@ -137,7 +137,7 @@ codeql::CaseStmt StmtTranslator::translateCaseStmt(const swift::CaseStmt& stmt) auto entry = dispatcher.createEntry(stmt); entry.body = dispatcher.fetchLabel(stmt.getBody()); entry.labels = dispatcher.fetchRepeatedLabels(stmt.getCaseLabelItems()); - entry.variables = dispatcher.fetchRepeatedLabels(stmt.getCaseBodyVariablesOrEmptyArray()); + entry.variables = dispatcher.fetchRepeatedLabels(stmt.getCaseBodyVariables()); return entry; } diff --git a/swift/extractor/translators/TypeTranslator.cpp b/swift/extractor/translators/TypeTranslator.cpp index 52d17c7a3577..5d2d1e39667e 100644 --- a/swift/extractor/translators/TypeTranslator.cpp +++ b/swift/extractor/translators/TypeTranslator.cpp @@ -233,6 +233,14 @@ codeql::BuiltinIntegerType TypeTranslator::translateBuiltinIntegerType( return entry; } +codeql::BuiltinFixedArrayType TypeTranslator::translateBuiltinFixedArrayType( + const swift::BuiltinFixedArrayType& type) { + // currently the translate dispatching mechanism does not go up more than one step in the + // hierarchy so we need to put this explicitly here, as BuiltinFixedArrayType derives from + // BuiltinGenericType which then derives from BuiltinType + return translateBuiltinType(type); +} + codeql::ExistentialArchetypeType TypeTranslator::translateExistentialArchetypeType( const swift::ExistentialArchetypeType& type) { auto entry = createTypeEntry(type); @@ -258,10 +266,6 @@ codeql::ErrorType TypeTranslator::translateErrorType(const swift::ErrorType& typ return createTypeEntry(type); } -codeql::UnresolvedType TypeTranslator::translateUnresolvedType(const swift::UnresolvedType& type) { - return createTypeEntry(type); -} - codeql::ParameterizedProtocolType TypeTranslator::translateParameterizedProtocolType( const swift::ParameterizedProtocolType& type) { auto entry = createTypeEntry(type); diff --git a/swift/extractor/translators/TypeTranslator.h b/swift/extractor/translators/TypeTranslator.h index c65c0e757dec..fd211ec39e09 100644 --- a/swift/extractor/translators/TypeTranslator.h +++ b/swift/extractor/translators/TypeTranslator.h @@ -69,13 +69,14 @@ class TypeTranslator : public TypeTranslatorBase { codeql::BuiltinIntegerLiteralType translateBuiltinIntegerLiteralType( const swift::BuiltinIntegerLiteralType& type); codeql::BuiltinIntegerType translateBuiltinIntegerType(const swift::BuiltinIntegerType& type); + codeql::BuiltinFixedArrayType translateBuiltinFixedArrayType( + const swift::BuiltinFixedArrayType& type); codeql::ExistentialArchetypeType translateExistentialArchetypeType( const swift::ExistentialArchetypeType& type); codeql::ModuleType translateModuleType(const swift::ModuleType& type); codeql::OpaqueTypeArchetypeType translateOpaqueTypeArchetypeType( const swift::OpaqueTypeArchetypeType& type); codeql::ErrorType translateErrorType(const swift::ErrorType& type); - codeql::UnresolvedType translateUnresolvedType(const swift::UnresolvedType& type); codeql::ParameterizedProtocolType translateParameterizedProtocolType( const swift::ParameterizedProtocolType& type); codeql::PackArchetypeType translatePackArchetypeType(const swift::PackArchetypeType& type); From d473c7143d3b83351ee5027320fb831daeceb021 Mon Sep 17 00:00:00 2001 From: Jeroen Ketema Date: Wed, 8 Apr 2026 13:20:06 +0200 Subject: [PATCH 074/157] Swift: Update schema --- swift/schema.py | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/swift/schema.py b/swift/schema.py index e7b45fb81a57..9302cb14b579 100644 --- a/swift/schema.py +++ b/swift/schema.py @@ -1480,7 +1480,14 @@ class TypeValueExpr(Expr): class IntegerType(Type): value: string -class BuiltinFixedArrayType(BuiltinType): +class BuiltinGenericType(BuiltinType): + """ + A builtin generic type. + """ + pass + + +class BuiltinFixedArrayType(BuiltinGenericType): """ A builtin type representing N values stored contiguously. """ From 6b2494c3e5c22cb552696dd7d1b91c5e1e6cc211 Mon Sep 17 00:00:00 2001 From: Jeroen Ketema Date: Wed, 8 Apr 2026 13:21:03 +0200 Subject: [PATCH 075/157] Swift: Update generated files --- swift/ql/.generated.list | 15 +++++---- swift/ql/.gitattributes | 3 ++ swift/ql/lib/codeql/swift/elements.qll | 1 + .../elements/type/BuiltinFixedArrayType.qll | 2 +- .../elements/type/BuiltinGenericType.qll | 12 +++++++ .../type/internal/BuiltinGenericTypeImpl.qll | 19 +++++++++++ .../codeql/swift/generated/ParentChild.qll | 16 +++++----- swift/ql/lib/codeql/swift/generated/Raw.qll | 32 +++++++++++-------- swift/ql/lib/codeql/swift/generated/Synth.qll | 31 +++++++++++++++--- .../generated/type/BuiltinFixedArrayType.qll | 6 ++-- .../generated/type/BuiltinGenericType.qll | 22 +++++++++++++ swift/ql/lib/swift.dbscheme | 14 +++++--- 12 files changed, 133 insertions(+), 40 deletions(-) create mode 100644 swift/ql/lib/codeql/swift/elements/type/BuiltinGenericType.qll create mode 100644 swift/ql/lib/codeql/swift/elements/type/internal/BuiltinGenericTypeImpl.qll create mode 100644 swift/ql/lib/codeql/swift/generated/type/BuiltinGenericType.qll diff --git a/swift/ql/.generated.list b/swift/ql/.generated.list index 8d2fb9a2ebca..a666c64948d4 100644 --- a/swift/ql/.generated.list +++ b/swift/ql/.generated.list @@ -539,8 +539,9 @@ lib/codeql/swift/elements/type/BoundGenericType.qll 089e5e8d09c62a23d575dcab68cd lib/codeql/swift/elements/type/BuiltinBridgeObjectType.qll b0064e09b53efe801b0bf950ff00698a84e2f714e853e4859ed5f3246025a1bd aa14b6ae2ec510c4ddd2cc073bf971809536ab8fd8763fd05bd171b0bbe83860 lib/codeql/swift/elements/type/BuiltinDefaultActorStorageType.qll e867a9d0b2c61b7eb61f5143c78e31f8d98d3245d79e0e3281d4c172175f496b 265e87f2e37ca968af572cc619294d1ee91dd66ebb0d1bb1ba9ab7159de52f0b lib/codeql/swift/elements/type/BuiltinExecutorType.qll 2b141553bbc02a00d97579ba9d0e38fa0978d40ce954b0caf64826aa259dbc08 a81465fd0e87ad5b8e418d8f21c337b3e96388a3b92b3332f0d6b0ff7663e5c7 -lib/codeql/swift/elements/type/BuiltinFixedArrayType.qll 24a57f15a53070e6308841cd5dac4d55059e84d9fb18a77eec1130647dcdc97c 9f4167ef5190cbeee71abd068bdb0a280b690a16349cd408244d4cf9edfb357a +lib/codeql/swift/elements/type/BuiltinFixedArrayType.qll 9d32f49cd7169d12c00cde31433897e8f8ada62132430020dc2525a97673cf57 0236f494f6ce77b04a80e405d11f5b39b1e45ea9c50a6ee42dd96407516b448f lib/codeql/swift/elements/type/BuiltinFloatType.qll 81f49325077b75cea682904ddab24d1b2fdc5c93b0b28830c08e866d5c9307a7 e26a348d66e3824ccd92729624ce2b2ebc82a844aa47035e0a963a62b08b772d +lib/codeql/swift/elements/type/BuiltinGenericType.qll 108682444f5f28b64b7caa16254fd4d7418813bc9e7f6a17477b13fe37293d40 de3fa330516684f0cfd848101b3a93f83b2d8a9f00b35dae70d2b56cb5414923 lib/codeql/swift/elements/type/BuiltinIntegerLiteralType.qll 34ee35733cf26f90d799a79f8a2362b199ea2ecb6ba83eb5678dda9eb3ed255f e33fdb27d3c22d441277b66ba74136cb88e1da25a2146391b258c68f7fbf5dd3 lib/codeql/swift/elements/type/BuiltinIntegerType.qll b931e79a40fb379a8de377ae4ea1c85befb7b07dbfe913f0ea7f5adf5514b217 5d7e6f21284b8c5ff70773bb64f896a40541c9064bfdd336798ccfda4cb4fb9e lib/codeql/swift/elements/type/BuiltinJobType.qll 4b4cab766d8476efd7482ab47f6fdd63fd90a322e1e791949351092f126f5b46 779ceee86a778b59a3feb5247603fe07e4a73068a7990e25c31dd93ba0dd718d @@ -623,6 +624,7 @@ lib/codeql/swift/elements/type/internal/BuiltinFixedArrayTypeConstructor.qll 0d5 lib/codeql/swift/elements/type/internal/BuiltinFixedArrayTypeImpl.qll 6b69ba8b271646bcd699e338f41c186f3e4e7d401830918407e392312b2f0ad1 ecaca3d762264423094f7c2cb63e33b5d72d970946766eec33d984fa977950b4 lib/codeql/swift/elements/type/internal/BuiltinFloatTypeConstructor.qll f1dab7b9d36213e57083a6effec1b2d859553831394c0e746c592c96a20db6de cceeaa864cfc84511b3cdad6a88d44fc14ea1c8e38db72b0854c3f217a3f9c44 lib/codeql/swift/elements/type/internal/BuiltinFloatTypeImpl.qll 1dc7f7817c4a238751875b0cee98d060a1ea975a22fd90ceef0f9874b85824d6 d98f743c28174fb3294f0ff60232600a4fc80aeefe72e5cc15bb56e09880ec1e +lib/codeql/swift/elements/type/internal/BuiltinGenericTypeImpl.qll 2735ef1521c399540ef43fc75aa62b4bbb1871446d87304c9e3a991ad16a96f4 263e41354843afc5d1f57bd2f50610992d05d77ceb1c2079587ddd3a1eceffc5 lib/codeql/swift/elements/type/internal/BuiltinIntegerLiteralTypeConstructor.qll 3885775f78e18286aa8dc99ab5b6f386a278b34b47f93da28d67faac918e6087 93be2ad0b7235bab613b74582bc1de0ca8b2a4da7a387d09a9b8ef9b38095534 lib/codeql/swift/elements/type/internal/BuiltinIntegerLiteralTypeImpl.qll 7f078bd837acddd0e835f78b0ae6e0381c9c587e82edc61cf78986ce0081e314 f141415be39f8a5f09d4a90cc5d841f90385c3be8781c0bafbad0871681ec8a3 lib/codeql/swift/elements/type/internal/BuiltinIntegerTypeConstructor.qll 2c5a7884c5c8c852d81b6ce03f9c6cc036944428731e3a73208c0d2047b72611 abd29915698109395a4751999aa334ba3c020f20372a5dff213acdd672d024a9 @@ -721,7 +723,7 @@ lib/codeql/swift/elements/type/internal/UnresolvedTypeImpl.qll ee1499dd568753898 lib/codeql/swift/elements/type/internal/VariadicSequenceTypeConstructor.qll fc74a5a2a2effa28ef24509b20ee4373d97cf6e8c71840121bb031c6adedf584 c9b2effc1d01c13c5e6a74a111122fa79a2f6554dda3cb016d68ba397e566ec4 lib/codeql/swift/elements/type/internal/WeakStorageTypeConstructor.qll 5fdce3716aba6318522174a2c455a63480970222ae81c732fb19c6dd3ae2d271 60ea79d6943e129deba0deccb566cf9d73f78398b0f7f0212674d91287d6b2ae lib/codeql/swift/elements/type/internal/WeakStorageTypeImpl.qll 74f79b458f3204ec2519bd654de21bc4fb6b76816bd8ca01990fe897563a1383 34e1810f74cecda5b580ed050438ae1d914b97a36b8f4e2de1c25254c0cac633 -lib/codeql/swift/elements.qll ec0104a658330f595eac7dd8578d996905a6c2cf78765744c3967a8f3d1c3273 ec0104a658330f595eac7dd8578d996905a6c2cf78765744c3967a8f3d1c3273 +lib/codeql/swift/elements.qll 70e20ccd31c9247904fb5ef00ccbda5a6d29c680e88b0ed238f4b4546abf5f33 70e20ccd31c9247904fb5ef00ccbda5a6d29c680e88b0ed238f4b4546abf5f33 lib/codeql/swift/generated/AstNode.qll 6fb80e9b230a1e3ae8193af40744f253d5cc81dc4239156924e5ab606c491efc e5c28418e9a38bde08f323a3986a199620189fc4a8a4dc8f670610a5d3d65b99 lib/codeql/swift/generated/AvailabilityInfo.qll e3a5274c43e72ff124b6988fd8be0c83a41b89337e11104150dd0ca7f51d8a11 889563791ca8d9758dbbccf64a0731c4bdbf721cad32bc6cd723f1072b6aa1de lib/codeql/swift/generated/AvailabilitySpec.qll 1bd2a0ee085f802c99090e681ab3339fc5013024d79deef39f376de12ab76d37 658f2eb51860726cfa6808b3e3501d624e0734750d1420f7a25c89782f1f6c7e @@ -737,10 +739,10 @@ lib/codeql/swift/generated/KeyPathComponent.qll e11dcf952045b5e6062e24c23515cff9 lib/codeql/swift/generated/Locatable.qll 1d37fa20de71c0b9986bfd7a7c0cb82ab7bf3fda2d2008700f955ad82ce109a7 e97d4d4fb8a4800e0008cc00f60c8ed9b1ebd5f1140fd85e68b034616178d721 lib/codeql/swift/generated/Location.qll 5e20316c3e480ddfe632b7e88e016c19f10a67df1f6ae9c8f128755a6907d6f5 5a0af2d070bcb2ed53d6d0282bf9c60dc64c2dce89c21fdd485e9c7893c1c8fa lib/codeql/swift/generated/MacroRole.qll facf907e75490d69cd401c491215e4719324d751f40ea46c86ccf24cf3663c1f 969d8d4b44e3f1a9c193a152a4d83a303e56d2dbb871fc920c47a33f699cf018 -lib/codeql/swift/generated/ParentChild.qll 7fdc133bdec6cc223d5ee85e757b02c5d2e1ab121bcf269bb48c8a12a31a61e9 d8dd6e21d290a293db4db510b1523a9ea428b12f48b7574f03acf00b9ca065ef +lib/codeql/swift/generated/ParentChild.qll 669d39245f2cb735cfd4bcebdb551ef8f334fef5297c5834a8b09ebfa655856e 59b283c8a30b6b364c853302ab919ea713e0289e7b793b08b46fc87178d14a6a lib/codeql/swift/generated/PureSynthConstructors.qll bc31a6c4d142fa3fbdcae69d5ba6f1cec00eb9ad92b46c8d7b91ebfa7ef6c1f4 bc31a6c4d142fa3fbdcae69d5ba6f1cec00eb9ad92b46c8d7b91ebfa7ef6c1f4 -lib/codeql/swift/generated/Raw.qll 6adc2ec210e91051b6d3d6c84117b827f10dbea682a18b69348d1c6cdc53629c 9ff02fcca7a7b83c85303ffc6daa00ea392da6ce1f9cb389b5053b34d4a45e4c -lib/codeql/swift/generated/Synth.qll b0084d1f573ba1b10ec8a8fab169b15f15866ecb9a6aeeeac81553a442be28e3 09efe455f3fd6b8b983b30efbd797f09af46e6f5a1a1075801650528999ed938 +lib/codeql/swift/generated/Raw.qll c209a47a66f24f54bdfb5adf591dd171b2dbe9e30936a2355160526b9f756399 378e7492ca885f46092628ca26afa76c909deb88f092fe56404fea8f94d133b0 +lib/codeql/swift/generated/Synth.qll e30b50d2645d9c36719d81f1be70712c7c6e89a3f5b4a5ae894411e045d05bff 9bd0c9c90532db97cde9553dde4089b7cf12c462c690d853fa40cb36ea112c21 lib/codeql/swift/generated/SynthConstructors.qll c40f01e1331bdbe238620a41d17409cefe34a6b23066708ef5d74f8631b54f48 c40f01e1331bdbe238620a41d17409cefe34a6b23066708ef5d74f8631b54f48 lib/codeql/swift/generated/UnknownFile.qll 247ddf2ebb49ce5ed4bf7bf91a969ddff37de6c78d43d8affccaf7eb586e06f2 452b29f0465ef45e978ef8b647b75e5a2a1e53f2a568fc003bc8f52f73b3fa4d lib/codeql/swift/generated/UnknownLocation.qll d871000b4f53ffca4f67ea23ca5626e5dcce125d62a4d4b9969e08cc974af6fc b05971d7774e60790362fb810fb7086314f40a2de747b8cb1bc823ec6494a4dd @@ -978,8 +980,9 @@ lib/codeql/swift/generated/type/BoundGenericType.qll 5e7a2210b766437ca301f9675f7 lib/codeql/swift/generated/type/BuiltinBridgeObjectType.qll 97f30768a8788ec4547ce8a8f06fdd165286177e3819bf2e6590b9479f5bada4 ea3161c34d1d18783b38deac43c73048e4510015307d93f77cd95c149e988846 lib/codeql/swift/generated/type/BuiltinDefaultActorStorageType.qll 10e49de9a8bc3e67285c111f7869c8baceb70e478661d5557ebc8c86f41b4aec 1a0ce85eb325f666fbc2ac49c6f994efd552de6f2105e0a7ba9a10e39f3d1591 lib/codeql/swift/generated/type/BuiltinExecutorType.qll 8f58d4d413910aded894bfa9b54748adfc2b78f4ee271ac6db5f5b0214f36a66 69da70d76146155529b7b2426b3a459abe318f887240aac1aed5719fda5f386a -lib/codeql/swift/generated/type/BuiltinFixedArrayType.qll 9bd26596da9137b07324222c9ed39ec0781e44673314fba96a0c7cf16f65cc7d cc2d40961b070a89f3350ab95b92ae33372277e499d7b2a9ea34721cc1fe1923 +lib/codeql/swift/generated/type/BuiltinFixedArrayType.qll 2ae9d1ef215c725bc27f69d25247d360ee8aa0aa5a757df6b8e9734821084435 2f1caacf0f95c8f863296f0cc0a56abac4bf58ddc68e9ed63b5d8672fd21172d lib/codeql/swift/generated/type/BuiltinFloatType.qll 6306a806107bba052fe0b1335c8c4d4391cdb6aa5f42f14c70743113928c4c36 3265d571630c0437e5d81ba20a0b6112b7e88ee3ffca737557186001cf8aa04a +lib/codeql/swift/generated/type/BuiltinGenericType.qll 6cd1b5da102e221f25a301c284ccc9cbd64d595596787df1a4fd3f2a92ded077 3ae4c8676a868205c5334646e395b8fc4e561ee2f4c115003ae2f4ed83197b76 lib/codeql/swift/generated/type/BuiltinIntegerLiteralType.qll 3f49aac9b81c440b902a658294cf95aff5cb79b0d6cee8b1abd8a08ad45c7966 6c184dcf5d9376f193f07fe4722ea7cab51f1dfdef4d72c3042842d73cca31fe lib/codeql/swift/generated/type/BuiltinIntegerType.qll 3cfcbc4ebea6051d1f6dedcf098888c72c02bf697cebb52a0060c1885bea61f0 1c78df7a184e3615024d6e361b88dd619828a0aa7d342564610a95b02cc67d1e lib/codeql/swift/generated/type/BuiltinJobType.qll dc0e1932e972936001b1d688d6e70d7395184eef3c4242cebf3a2608d6607785 e5573304f6043f79cfc28e35744fd390eaebcb86a6f2758cc96aba588c1b8cb9 diff --git a/swift/ql/.gitattributes b/swift/ql/.gitattributes index 37f29b6947ed..212221509d0b 100644 --- a/swift/ql/.gitattributes +++ b/swift/ql/.gitattributes @@ -543,6 +543,7 @@ /lib/codeql/swift/elements/type/BuiltinExecutorType.qll linguist-generated /lib/codeql/swift/elements/type/BuiltinFixedArrayType.qll linguist-generated /lib/codeql/swift/elements/type/BuiltinFloatType.qll linguist-generated +/lib/codeql/swift/elements/type/BuiltinGenericType.qll linguist-generated /lib/codeql/swift/elements/type/BuiltinIntegerLiteralType.qll linguist-generated /lib/codeql/swift/elements/type/BuiltinIntegerType.qll linguist-generated /lib/codeql/swift/elements/type/BuiltinJobType.qll linguist-generated @@ -625,6 +626,7 @@ /lib/codeql/swift/elements/type/internal/BuiltinFixedArrayTypeImpl.qll linguist-generated /lib/codeql/swift/elements/type/internal/BuiltinFloatTypeConstructor.qll linguist-generated /lib/codeql/swift/elements/type/internal/BuiltinFloatTypeImpl.qll linguist-generated +/lib/codeql/swift/elements/type/internal/BuiltinGenericTypeImpl.qll linguist-generated /lib/codeql/swift/elements/type/internal/BuiltinIntegerLiteralTypeConstructor.qll linguist-generated /lib/codeql/swift/elements/type/internal/BuiltinIntegerLiteralTypeImpl.qll linguist-generated /lib/codeql/swift/elements/type/internal/BuiltinIntegerTypeConstructor.qll linguist-generated @@ -982,6 +984,7 @@ /lib/codeql/swift/generated/type/BuiltinExecutorType.qll linguist-generated /lib/codeql/swift/generated/type/BuiltinFixedArrayType.qll linguist-generated /lib/codeql/swift/generated/type/BuiltinFloatType.qll linguist-generated +/lib/codeql/swift/generated/type/BuiltinGenericType.qll linguist-generated /lib/codeql/swift/generated/type/BuiltinIntegerLiteralType.qll linguist-generated /lib/codeql/swift/generated/type/BuiltinIntegerType.qll linguist-generated /lib/codeql/swift/generated/type/BuiltinJobType.qll linguist-generated diff --git a/swift/ql/lib/codeql/swift/elements.qll b/swift/ql/lib/codeql/swift/elements.qll index bdffeba5261f..6a39c4657785 100644 --- a/swift/ql/lib/codeql/swift/elements.qll +++ b/swift/ql/lib/codeql/swift/elements.qll @@ -252,6 +252,7 @@ import codeql.swift.elements.type.BuiltinDefaultActorStorageType import codeql.swift.elements.type.BuiltinExecutorType import codeql.swift.elements.type.BuiltinFixedArrayType import codeql.swift.elements.type.BuiltinFloatType +import codeql.swift.elements.type.BuiltinGenericType import codeql.swift.elements.type.BuiltinIntegerLiteralType import codeql.swift.elements.type.BuiltinIntegerType import codeql.swift.elements.type.BuiltinJobType diff --git a/swift/ql/lib/codeql/swift/elements/type/BuiltinFixedArrayType.qll b/swift/ql/lib/codeql/swift/elements/type/BuiltinFixedArrayType.qll index bf523a0a7852..996c38d127bf 100644 --- a/swift/ql/lib/codeql/swift/elements/type/BuiltinFixedArrayType.qll +++ b/swift/ql/lib/codeql/swift/elements/type/BuiltinFixedArrayType.qll @@ -4,7 +4,7 @@ */ private import internal.BuiltinFixedArrayTypeImpl -import codeql.swift.elements.type.BuiltinType +import codeql.swift.elements.type.BuiltinGenericType /** * A builtin type representing N values stored contiguously. diff --git a/swift/ql/lib/codeql/swift/elements/type/BuiltinGenericType.qll b/swift/ql/lib/codeql/swift/elements/type/BuiltinGenericType.qll new file mode 100644 index 000000000000..4513423fd608 --- /dev/null +++ b/swift/ql/lib/codeql/swift/elements/type/BuiltinGenericType.qll @@ -0,0 +1,12 @@ +// generated by codegen/codegen.py, do not edit +/** + * This module provides the public class `BuiltinGenericType`. + */ + +private import internal.BuiltinGenericTypeImpl +import codeql.swift.elements.type.BuiltinType + +/** + * A builtin generic type. + */ +final class BuiltinGenericType = Impl::BuiltinGenericType; diff --git a/swift/ql/lib/codeql/swift/elements/type/internal/BuiltinGenericTypeImpl.qll b/swift/ql/lib/codeql/swift/elements/type/internal/BuiltinGenericTypeImpl.qll new file mode 100644 index 000000000000..0e475d64f010 --- /dev/null +++ b/swift/ql/lib/codeql/swift/elements/type/internal/BuiltinGenericTypeImpl.qll @@ -0,0 +1,19 @@ +// generated by codegen/codegen.py, remove this comment if you wish to edit this file +/** + * This module provides a hand-modifiable wrapper around the generated class `BuiltinGenericType`. + * + * INTERNAL: Do not use. + */ + +private import codeql.swift.generated.type.BuiltinGenericType + +/** + * INTERNAL: This module contains the customizable definition of `BuiltinGenericType` and should not + * be referenced directly. + */ +module Impl { + /** + * A builtin generic type. + */ + class BuiltinGenericType extends Generated::BuiltinGenericType { } +} diff --git a/swift/ql/lib/codeql/swift/generated/ParentChild.qll b/swift/ql/lib/codeql/swift/generated/ParentChild.qll index efed12bb5fe0..424fd7af75e9 100644 --- a/swift/ql/lib/codeql/swift/generated/ParentChild.qll +++ b/swift/ql/lib/codeql/swift/generated/ParentChild.qll @@ -2972,12 +2972,6 @@ private module Impl { none() } - private Element getImmediateChildOfBuiltinFixedArrayType( - BuiltinFixedArrayType e, int index, string partialPredicateCall - ) { - none() - } - private Element getImmediateChildOfBuiltinFloatType( BuiltinFloatType e, int index, string partialPredicateCall ) { @@ -3084,6 +3078,12 @@ private module Impl { none() } + private Element getImmediateChildOfBuiltinFixedArrayType( + BuiltinFixedArrayType e, int index, string partialPredicateCall + ) { + none() + } + private Element getImmediateChildOfBuiltinIntegerLiteralType( BuiltinIntegerLiteralType e, int index, string partialPredicateCall ) { @@ -3636,8 +3636,6 @@ private module Impl { or result = getImmediateChildOfBuiltinExecutorType(e, index, partialAccessor) or - result = getImmediateChildOfBuiltinFixedArrayType(e, index, partialAccessor) - or result = getImmediateChildOfBuiltinFloatType(e, index, partialAccessor) or result = getImmediateChildOfBuiltinJobType(e, index, partialAccessor) @@ -3674,6 +3672,8 @@ private module Impl { or result = getImmediateChildOfWeakStorageType(e, index, partialAccessor) or + result = getImmediateChildOfBuiltinFixedArrayType(e, index, partialAccessor) + or result = getImmediateChildOfBuiltinIntegerLiteralType(e, index, partialAccessor) or result = getImmediateChildOfBuiltinIntegerType(e, index, partialAccessor) diff --git a/swift/ql/lib/codeql/swift/generated/Raw.qll b/swift/ql/lib/codeql/swift/generated/Raw.qll index 714579218bcb..c2c65234cd4b 100644 --- a/swift/ql/lib/codeql/swift/generated/Raw.qll +++ b/swift/ql/lib/codeql/swift/generated/Raw.qll @@ -6293,24 +6293,18 @@ module Raw { /** * INTERNAL: Do not use. - * A builtin type representing N values stored contiguously. */ - class BuiltinFixedArrayType extends @builtin_fixed_array_type, BuiltinType { - override string toString() { result = "BuiltinFixedArrayType" } + class BuiltinFloatType extends @builtin_float_type, BuiltinType { + override string toString() { result = "BuiltinFloatType" } } - private Element getImmediateChildOfBuiltinFixedArrayType(BuiltinFixedArrayType e, int index) { - none() - } + private Element getImmediateChildOfBuiltinFloatType(BuiltinFloatType e, int index) { none() } /** * INTERNAL: Do not use. + * A builtin generic type. */ - class BuiltinFloatType extends @builtin_float_type, BuiltinType { - override string toString() { result = "BuiltinFloatType" } - } - - private Element getImmediateChildOfBuiltinFloatType(BuiltinFloatType e, int index) { none() } + class BuiltinGenericType extends @builtin_generic_type, BuiltinType { } /** * INTERNAL: Do not use. @@ -6537,6 +6531,18 @@ module Raw { int getNumberOfArgTypes() { result = count(int i | bound_generic_type_arg_types(this, i, _)) } } + /** + * INTERNAL: Do not use. + * A builtin type representing N values stored contiguously. + */ + class BuiltinFixedArrayType extends @builtin_fixed_array_type, BuiltinGenericType { + override string toString() { result = "BuiltinFixedArrayType" } + } + + private Element getImmediateChildOfBuiltinFixedArrayType(BuiltinFixedArrayType e, int index) { + none() + } + /** * INTERNAL: Do not use. */ @@ -7224,8 +7230,6 @@ module Raw { or result = getImmediateChildOfBuiltinExecutorType(e, index) or - result = getImmediateChildOfBuiltinFixedArrayType(e, index) - or result = getImmediateChildOfBuiltinFloatType(e, index) or result = getImmediateChildOfBuiltinJobType(e, index) @@ -7262,6 +7266,8 @@ module Raw { or result = getImmediateChildOfWeakStorageType(e, index) or + result = getImmediateChildOfBuiltinFixedArrayType(e, index) + or result = getImmediateChildOfBuiltinIntegerLiteralType(e, index) or result = getImmediateChildOfBuiltinIntegerType(e, index) diff --git a/swift/ql/lib/codeql/swift/generated/Synth.qll b/swift/ql/lib/codeql/swift/generated/Synth.qll index 27508df94e97..cd847f3e6afd 100644 --- a/swift/ql/lib/codeql/swift/generated/Synth.qll +++ b/swift/ql/lib/codeql/swift/generated/Synth.qll @@ -1392,12 +1392,17 @@ module Synth { class TBoundGenericType = TBoundGenericClassType or TBoundGenericEnumType or TBoundGenericStructType; + /** + * INTERNAL: Do not use. + */ + class TBuiltinGenericType = TBuiltinFixedArrayType; + /** * INTERNAL: Do not use. */ class TBuiltinType = TAnyBuiltinIntegerType or TBuiltinBridgeObjectType or TBuiltinDefaultActorStorageType or - TBuiltinExecutorType or TBuiltinFixedArrayType or TBuiltinFloatType or TBuiltinJobType or + TBuiltinExecutorType or TBuiltinFloatType or TBuiltinGenericType or TBuiltinJobType or TBuiltinNativeObjectType or TBuiltinRawPointerType or TBuiltinRawUnsafeContinuationType or TBuiltinUnsafeValueBufferType or TBuiltinVectorType; @@ -4291,6 +4296,14 @@ module Synth { result = convertBoundGenericStructTypeFromRaw(e) } + /** + * INTERNAL: Do not use. + * Converts a raw DB element to a synthesized `TBuiltinGenericType`, if possible. + */ + TBuiltinGenericType convertBuiltinGenericTypeFromRaw(Raw::Element e) { + result = convertBuiltinFixedArrayTypeFromRaw(e) + } + /** * INTERNAL: Do not use. * Converts a raw DB element to a synthesized `TBuiltinType`, if possible. @@ -4304,10 +4317,10 @@ module Synth { or result = convertBuiltinExecutorTypeFromRaw(e) or - result = convertBuiltinFixedArrayTypeFromRaw(e) - or result = convertBuiltinFloatTypeFromRaw(e) or + result = convertBuiltinGenericTypeFromRaw(e) + or result = convertBuiltinJobTypeFromRaw(e) or result = convertBuiltinNativeObjectTypeFromRaw(e) @@ -7037,6 +7050,14 @@ module Synth { result = convertBoundGenericStructTypeToRaw(e) } + /** + * INTERNAL: Do not use. + * Converts a synthesized `TBuiltinGenericType` to a raw DB element, if possible. + */ + Raw::Element convertBuiltinGenericTypeToRaw(TBuiltinGenericType e) { + result = convertBuiltinFixedArrayTypeToRaw(e) + } + /** * INTERNAL: Do not use. * Converts a synthesized `TBuiltinType` to a raw DB element, if possible. @@ -7050,10 +7071,10 @@ module Synth { or result = convertBuiltinExecutorTypeToRaw(e) or - result = convertBuiltinFixedArrayTypeToRaw(e) - or result = convertBuiltinFloatTypeToRaw(e) or + result = convertBuiltinGenericTypeToRaw(e) + or result = convertBuiltinJobTypeToRaw(e) or result = convertBuiltinNativeObjectTypeToRaw(e) diff --git a/swift/ql/lib/codeql/swift/generated/type/BuiltinFixedArrayType.qll b/swift/ql/lib/codeql/swift/generated/type/BuiltinFixedArrayType.qll index b61533168b77..5ed9491607af 100644 --- a/swift/ql/lib/codeql/swift/generated/type/BuiltinFixedArrayType.qll +++ b/swift/ql/lib/codeql/swift/generated/type/BuiltinFixedArrayType.qll @@ -6,7 +6,7 @@ private import codeql.swift.generated.Synth private import codeql.swift.generated.Raw -import codeql.swift.elements.type.internal.BuiltinTypeImpl::Impl as BuiltinTypeImpl +import codeql.swift.elements.type.internal.BuiltinGenericTypeImpl::Impl as BuiltinGenericTypeImpl /** * INTERNAL: This module contains the fully generated definition of `BuiltinFixedArrayType` and should not @@ -18,7 +18,9 @@ module Generated { * INTERNAL: Do not reference the `Generated::BuiltinFixedArrayType` class directly. * Use the subclass `BuiltinFixedArrayType`, where the following predicates are available. */ - class BuiltinFixedArrayType extends Synth::TBuiltinFixedArrayType, BuiltinTypeImpl::BuiltinType { + class BuiltinFixedArrayType extends Synth::TBuiltinFixedArrayType, + BuiltinGenericTypeImpl::BuiltinGenericType + { override string getAPrimaryQlClass() { result = "BuiltinFixedArrayType" } } } diff --git a/swift/ql/lib/codeql/swift/generated/type/BuiltinGenericType.qll b/swift/ql/lib/codeql/swift/generated/type/BuiltinGenericType.qll new file mode 100644 index 000000000000..cfed16ac2832 --- /dev/null +++ b/swift/ql/lib/codeql/swift/generated/type/BuiltinGenericType.qll @@ -0,0 +1,22 @@ +// generated by codegen/codegen.py, do not edit +/** + * This module provides the generated definition of `BuiltinGenericType`. + * INTERNAL: Do not import directly. + */ + +private import codeql.swift.generated.Synth +private import codeql.swift.generated.Raw +import codeql.swift.elements.type.internal.BuiltinTypeImpl::Impl as BuiltinTypeImpl + +/** + * INTERNAL: This module contains the fully generated definition of `BuiltinGenericType` and should not + * be referenced directly. + */ +module Generated { + /** + * A builtin generic type. + * INTERNAL: Do not reference the `Generated::BuiltinGenericType` class directly. + * Use the subclass `BuiltinGenericType`, where the following predicates are available. + */ + class BuiltinGenericType extends Synth::TBuiltinGenericType, BuiltinTypeImpl::BuiltinType { } +} diff --git a/swift/ql/lib/swift.dbscheme b/swift/ql/lib/swift.dbscheme index 33e5e5e03bd3..ee3053b673c9 100644 --- a/swift/ql/lib/swift.dbscheme +++ b/swift/ql/lib/swift.dbscheme @@ -2266,8 +2266,8 @@ any_generic_type_parents( //dir=type | @builtin_bridge_object_type | @builtin_default_actor_storage_type | @builtin_executor_type -| @builtin_fixed_array_type | @builtin_float_type +| @builtin_generic_type | @builtin_job_type | @builtin_native_object_type | @builtin_raw_pointer_type @@ -2449,14 +2449,14 @@ builtin_executor_types( //dir=type unique int id: @builtin_executor_type ); -builtin_fixed_array_types( //dir=type - unique int id: @builtin_fixed_array_type -); - builtin_float_types( //dir=type unique int id: @builtin_float_type ); +@builtin_generic_type = + @builtin_fixed_array_type +; + builtin_job_types( //dir=type unique int id: @builtin_job_type ); @@ -2558,6 +2558,10 @@ bound_generic_type_arg_types( //dir=type int arg_type: @type_or_none ref ); +builtin_fixed_array_types( //dir=type + unique int id: @builtin_fixed_array_type +); + builtin_integer_literal_types( //dir=type unique int id: @builtin_integer_literal_type ); From 5eb8db0d4892df079fe3b09c841161d5a3b5b1ec Mon Sep 17 00:00:00 2001 From: Jeroen Ketema Date: Wed, 8 Apr 2026 13:21:33 +0200 Subject: [PATCH 076/157] Swift: Update expected QL test results after 6.3 update --- .../extractor-tests/declarations/all.expected | 1 + .../extractor-tests/errors/Errors.expected | 6 +- .../decl/CapturedDecl/PrintAst.expected | 4 +- .../ConcreteVarDecl/ConcreteVarDecl.expected | 14 ++--- .../decl/MacroDecl/MacroRole.expected | 2 + .../decl/ParamDecl/ParamDecl.expected | 4 +- .../ObjectLiteralExpr.expected | 6 +- .../stmt/ForEachStmt/ForEachStmt.expected | 4 +- .../type/BuiltinType/BuiltinType.expected | 61 +++++++++++++++++++ .../type/IntegerType/IntegerType.expected | 6 ++ .../test/library-tests/ast/PrintAst.expected | 12 ++-- .../controlflow/graph/Cfg.expected | 12 ++-- 12 files changed, 101 insertions(+), 31 deletions(-) diff --git a/swift/ql/test/extractor-tests/declarations/all.expected b/swift/ql/test/extractor-tests/declarations/all.expected index 98b948953451..109e80ee4f60 100644 --- a/swift/ql/test/extractor-tests/declarations/all.expected +++ b/swift/ql/test/extractor-tests/declarations/all.expected @@ -116,6 +116,7 @@ | declarations.swift:77:16:77:23 | var ... = ... | | | declarations.swift:77:20:77:20 | _x | | | declarations.swift:77:20:77:20 | get | | +| declarations.swift:77:20:77:20 | var ... = ... | | | declarations.swift:77:20:77:20 | x | | | declarations.swift:81:1:136:1 | HasPropertyAndObserver | | | declarations.swift:81:8:81:8 | HasPropertyAndObserver.init(normalField:hasWillSet1:hasWillSet2:hasDidSet1:hasDidSet2:hasBoth:) | | diff --git a/swift/ql/test/extractor-tests/errors/Errors.expected b/swift/ql/test/extractor-tests/errors/Errors.expected index 50ab8ec658be..51900bf11d01 100644 --- a/swift/ql/test/extractor-tests/errors/Errors.expected +++ b/swift/ql/test/extractor-tests/errors/Errors.expected @@ -1,6 +1,6 @@ -| file://:0:0:0:0 | <> | ErrorType | -| file://:0:0:0:0 | <> | ErrorType | -| file://:0:0:0:0 | <> | ErrorType | +| file://:0:0:0:0 | _ | ErrorType | +| file://:0:0:0:0 | _ | ErrorType | +| file://:0:0:0:0 | _ | ErrorType | | overloaded.swift:6:5:6:5 | OverloadedDeclRefExpr | OverloadedDeclRefExpr | | unresolved.swift:5:1:5:14 | UnresolvedSpecializeExpr | UnresolvedSpecializeExpr | | unspecified.swift:3:1:3:23 | missing extended_type_decl from ExtensionDecl | UnspecifiedElement | diff --git a/swift/ql/test/extractor-tests/generated/decl/CapturedDecl/PrintAst.expected b/swift/ql/test/extractor-tests/generated/decl/CapturedDecl/PrintAst.expected index ac61ba1dfc60..689d93cab9b0 100644 --- a/swift/ql/test/extractor-tests/generated/decl/CapturedDecl/PrintAst.expected +++ b/swift/ql/test/extractor-tests/generated/decl/CapturedDecl/PrintAst.expected @@ -164,8 +164,8 @@ closures.swift: # 31| getArgument(0): [Argument] : ... .!=(_:_:) ... # 31| getExpr(): [BinaryExpr] ... .!=(_:_:) ... # 31| getFunction(): [MethodLookupExpr] .!=(_:_:) -# 31| getBase(): [TypeExpr] Optional.Type -# 31| getTypeRepr(): [TypeRepr] Optional +# 31| getBase(): [TypeExpr] Int?.Type +# 31| getTypeRepr(): [TypeRepr] Int? # 31| getMethodRef(): [DeclRefExpr] !=(_:_:) # 31| getArgument(0): [Argument] : x # 31| getExpr(): [DeclRefExpr] x diff --git a/swift/ql/test/extractor-tests/generated/decl/ConcreteVarDecl/ConcreteVarDecl.expected b/swift/ql/test/extractor-tests/generated/decl/ConcreteVarDecl/ConcreteVarDecl.expected index 09751f3c41d4..03460f83620a 100644 --- a/swift/ql/test/extractor-tests/generated/decl/ConcreteVarDecl/ConcreteVarDecl.expected +++ b/swift/ql/test/extractor-tests/generated/decl/ConcreteVarDecl/ConcreteVarDecl.expected @@ -118,11 +118,11 @@ getParentInitializer | var_decls.swift:57:36:57:36 | _w4 | var_decls.swift:57:4:57:41 | call to WrapperWithProjectedAndInit.init(wrappedValue:) | | var_decls.swift:57:36:57:36 | w4 | var_decls.swift:57:4:57:41 | call to WrapperWithProjectedAndInit.init(wrappedValue:) | getPropertyWrapperBackingVarBinding -| var_decls.swift:24:15:24:15 | wrapped | file://:0:0:0:0 | var ... = ... | -| var_decls.swift:54:10:54:10 | w1 | file://:0:0:0:0 | var ... = ... | -| var_decls.swift:55:24:55:24 | w2 | file://:0:0:0:0 | var ... = ... | -| var_decls.swift:56:29:56:29 | w3 | file://:0:0:0:0 | var ... = ... | -| var_decls.swift:57:36:57:36 | w4 | file://:0:0:0:0 | var ... = ... | +| var_decls.swift:24:15:24:15 | wrapped | var_decls.swift:24:15:24:15 | var ... = ... | +| var_decls.swift:54:10:54:10 | w1 | var_decls.swift:54:10:54:10 | var ... = ... | +| var_decls.swift:55:24:55:24 | w2 | var_decls.swift:55:24:55:24 | var ... = ... | +| var_decls.swift:56:29:56:29 | w3 | var_decls.swift:56:29:56:29 | var ... = ... | +| var_decls.swift:57:36:57:36 | w4 | var_decls.swift:57:36:57:36 | var ... = ... | getPropertyWrapperBackingVar | var_decls.swift:24:15:24:15 | wrapped | var_decls.swift:24:15:24:15 | _wrapped | | var_decls.swift:54:10:54:10 | w1 | var_decls.swift:54:10:54:10 | _w1 | @@ -130,8 +130,8 @@ getPropertyWrapperBackingVar | var_decls.swift:56:29:56:29 | w3 | var_decls.swift:56:29:56:29 | _w3 | | var_decls.swift:57:36:57:36 | w4 | var_decls.swift:57:36:57:36 | _w4 | getPropertyWrapperProjectionVarBinding -| var_decls.swift:56:29:56:29 | w3 | file://:0:0:0:0 | var ... = ... | -| var_decls.swift:57:36:57:36 | w4 | file://:0:0:0:0 | var ... = ... | +| var_decls.swift:56:29:56:29 | w3 | var_decls.swift:56:29:56:29 | var ... = ... | +| var_decls.swift:57:36:57:36 | w4 | var_decls.swift:57:36:57:36 | var ... = ... | getPropertyWrapperProjectionVar | var_decls.swift:56:29:56:29 | w3 | var_decls.swift:56:29:56:29 | $w3 | | var_decls.swift:57:36:57:36 | w4 | var_decls.swift:57:36:57:36 | $w4 | diff --git a/swift/ql/test/extractor-tests/generated/decl/MacroDecl/MacroRole.expected b/swift/ql/test/extractor-tests/generated/decl/MacroDecl/MacroRole.expected index 05232a3cd041..52e80f2a2c69 100644 --- a/swift/ql/test/extractor-tests/generated/decl/MacroDecl/MacroRole.expected +++ b/swift/ql/test/extractor-tests/generated/decl/MacroDecl/MacroRole.expected @@ -11,6 +11,7 @@ instances | file://:0:0:0:0 | #freestanding(expression) | getKind: | 1 | getMacroSyntax: | 0 | | file://:0:0:0:0 | #freestanding(expression) | getKind: | 1 | getMacroSyntax: | 0 | | file://:0:0:0:0 | @attached(accessor) | getKind: | 4 | getMacroSyntax: | 1 | +| file://:0:0:0:0 | @attached(extension) | getKind: | 256 | getMacroSyntax: | 1 | | file://:0:0:0:0 | @attached(member) | getKind: | 16 | getMacroSyntax: | 1 | | file://:0:0:0:0 | @attached(memberAttribute) | getKind: | 8 | getMacroSyntax: | 1 | | file://:0:0:0:0 | @attached(peer) | getKind: | 32 | getMacroSyntax: | 1 | @@ -22,6 +23,7 @@ instances | test.swift:6:2:6:20 | @attached(extension) | getKind: | 256 | getMacroSyntax: | 1 | getConformance getName +| file://:0:0:0:0 | @attached(extension) | 0 | _() | | file://:0:0:0:0 | @attached(peer) | 0 | $() | | file://:0:0:0:0 | @attached(peer) | 0 | _() | | file://:0:0:0:0 | @attached(peer) | 0 | _lldb_summary() | diff --git a/swift/ql/test/extractor-tests/generated/decl/ParamDecl/ParamDecl.expected b/swift/ql/test/extractor-tests/generated/decl/ParamDecl/ParamDecl.expected index f67d25dc31b0..65191e3d55f1 100644 --- a/swift/ql/test/extractor-tests/generated/decl/ParamDecl/ParamDecl.expected +++ b/swift/ql/test/extractor-tests/generated/decl/ParamDecl/ParamDecl.expected @@ -66,8 +66,8 @@ getAttachedPropertyWrapperType getParentPattern getParentInitializer getPropertyWrapperBackingVarBinding -| param_decls.swift:48:18:48:22 | p1 | file://:0:0:0:0 | var ... = ... | -| param_decls.swift:49:26:49:30 | p2 | file://:0:0:0:0 | var ... = ... | +| param_decls.swift:48:18:48:22 | p1 | param_decls.swift:48:18:48:18 | var ... = ... | +| param_decls.swift:49:26:49:30 | p2 | param_decls.swift:49:26:49:26 | var ... = ... | getPropertyWrapperBackingVar | param_decls.swift:48:18:48:22 | p1 | param_decls.swift:48:18:48:18 | _p1 | | param_decls.swift:49:26:49:30 | p2 | param_decls.swift:49:26:49:26 | _p2 | diff --git a/swift/ql/test/extractor-tests/generated/expr/ObjectLiteralExpr/ObjectLiteralExpr.expected b/swift/ql/test/extractor-tests/generated/expr/ObjectLiteralExpr/ObjectLiteralExpr.expected index abf317e5a3b9..9f454d9cd696 100644 --- a/swift/ql/test/extractor-tests/generated/expr/ObjectLiteralExpr/ObjectLiteralExpr.expected +++ b/swift/ql/test/extractor-tests/generated/expr/ObjectLiteralExpr/ObjectLiteralExpr.expected @@ -3,9 +3,9 @@ instances | object_literals.swift:6:5:6:61 | #colorLiteral(...) | getKind: | 2 | | object_literals.swift:7:5:7:44 | #imageLiteral(...) | getKind: | 1 | getType -| object_literals.swift:5:5:5:42 | #fileLiteral(...) | <> | -| object_literals.swift:6:5:6:61 | #colorLiteral(...) | <> | -| object_literals.swift:7:5:7:44 | #imageLiteral(...) | <> | +| object_literals.swift:5:5:5:42 | #fileLiteral(...) | _ | +| object_literals.swift:6:5:6:61 | #colorLiteral(...) | _ | +| object_literals.swift:7:5:7:44 | #imageLiteral(...) | _ | getArgument | object_literals.swift:5:5:5:42 | #fileLiteral(...) | 0 | object_literals.swift:5:18:5:32 | resourceName: file.txt | | object_literals.swift:6:5:6:61 | #colorLiteral(...) | 0 | object_literals.swift:6:19:6:24 | red: 255 | diff --git a/swift/ql/test/extractor-tests/generated/stmt/ForEachStmt/ForEachStmt.expected b/swift/ql/test/extractor-tests/generated/stmt/ForEachStmt/ForEachStmt.expected index 55fc86a8fdbd..ff575435d015 100644 --- a/swift/ql/test/extractor-tests/generated/stmt/ForEachStmt/ForEachStmt.expected +++ b/swift/ql/test/extractor-tests/generated/stmt/ForEachStmt/ForEachStmt.expected @@ -12,8 +12,8 @@ getVariable getWhere | for.swift:4:5:6:5 | for ... in ... where ... { ... } | for.swift:4:25:4:30 | ... .!=(_:_:) ... | getIteratorVar -| for.swift:4:5:6:5 | for ... in ... where ... { ... } | file://:0:0:0:0 | var ... = ... | -| for.swift:7:5:9:5 | for ... in ... { ... } | file://:0:0:0:0 | var ... = ... | +| for.swift:4:5:6:5 | for ... in ... where ... { ... } | for.swift:4:14:4:14 | var ... = ... | +| for.swift:7:5:9:5 | for ... in ... { ... } | for.swift:7:14:7:14 | var ... = ... | getNextCall | for.swift:4:5:6:5 | for ... in ... where ... { ... } | for.swift:4:5:4:5 | call to next() | | for.swift:7:5:9:5 | for ... in ... { ... } | for.swift:7:5:7:5 | call to next() | diff --git a/swift/ql/test/extractor-tests/generated/type/BuiltinType/BuiltinType.expected b/swift/ql/test/extractor-tests/generated/type/BuiltinType/BuiltinType.expected index 1b64e9f4a224..fe0d3372c495 100644 --- a/swift/ql/test/extractor-tests/generated/type/BuiltinType/BuiltinType.expected +++ b/swift/ql/test/extractor-tests/generated/type/BuiltinType/BuiltinType.expected @@ -3,8 +3,69 @@ | Builtin.FPIEEE32 | BuiltinFloatType | getName: | FPIEEE32 | getCanonicalType: | Builtin.FPIEEE32 | | Builtin.FPIEEE64 | BuiltinFloatType | getName: | FPIEEE64 | getCanonicalType: | Builtin.FPIEEE64 | | Builtin.FixedArray<4, Int> | BuiltinFixedArrayType | getName: | FixedArray<4, Int> | getCanonicalType: | Builtin.FixedArray<4, Int> | +| Builtin.FixedArray<4, Int> | BuiltinFixedArrayType | getName: | FixedArray<4, Int> | getCanonicalType: | Builtin.FixedArray | +| Builtin.FixedArray<4, Int> | BuiltinFixedArrayType | getName: | FixedArray<4, Int> | getCanonicalType: | Builtin.FixedArray<\u03c4_0_0, \u03c4_0_1> | +| Builtin.FixedArray<4, Int> | BuiltinFixedArrayType | getName: | FixedArray<4, Int> | getCanonicalType: | Builtin.FixedArray | +| Builtin.FixedArray<4, Int> | BuiltinFixedArrayType | getName: | FixedArray | getCanonicalType: | Builtin.FixedArray<4, Int> | +| Builtin.FixedArray<4, Int> | BuiltinFixedArrayType | getName: | FixedArray | getCanonicalType: | Builtin.FixedArray | +| Builtin.FixedArray<4, Int> | BuiltinFixedArrayType | getName: | FixedArray | getCanonicalType: | Builtin.FixedArray<\u03c4_0_0, \u03c4_0_1> | +| Builtin.FixedArray<4, Int> | BuiltinFixedArrayType | getName: | FixedArray | getCanonicalType: | Builtin.FixedArray | +| Builtin.FixedArray<4, Int> | BuiltinFixedArrayType | getName: | FixedArray<\u03c4_0_0, \u03c4_0_1> | getCanonicalType: | Builtin.FixedArray<4, Int> | +| Builtin.FixedArray<4, Int> | BuiltinFixedArrayType | getName: | FixedArray<\u03c4_0_0, \u03c4_0_1> | getCanonicalType: | Builtin.FixedArray | +| Builtin.FixedArray<4, Int> | BuiltinFixedArrayType | getName: | FixedArray<\u03c4_0_0, \u03c4_0_1> | getCanonicalType: | Builtin.FixedArray<\u03c4_0_0, \u03c4_0_1> | +| Builtin.FixedArray<4, Int> | BuiltinFixedArrayType | getName: | FixedArray<\u03c4_0_0, \u03c4_0_1> | getCanonicalType: | Builtin.FixedArray | +| Builtin.FixedArray<4, Int> | BuiltinFixedArrayType | getName: | FixedArray | getCanonicalType: | Builtin.FixedArray<4, Int> | +| Builtin.FixedArray<4, Int> | BuiltinFixedArrayType | getName: | FixedArray | getCanonicalType: | Builtin.FixedArray | +| Builtin.FixedArray<4, Int> | BuiltinFixedArrayType | getName: | FixedArray | getCanonicalType: | Builtin.FixedArray<\u03c4_0_0, \u03c4_0_1> | +| Builtin.FixedArray<4, Int> | BuiltinFixedArrayType | getName: | FixedArray | getCanonicalType: | Builtin.FixedArray | +| Builtin.FixedArray | BuiltinFixedArrayType | getName: | FixedArray<4, Int> | getCanonicalType: | Builtin.FixedArray<4, Int> | +| Builtin.FixedArray | BuiltinFixedArrayType | getName: | FixedArray<4, Int> | getCanonicalType: | Builtin.FixedArray | +| Builtin.FixedArray | BuiltinFixedArrayType | getName: | FixedArray<4, Int> | getCanonicalType: | Builtin.FixedArray<\u03c4_0_0, \u03c4_0_1> | +| Builtin.FixedArray | BuiltinFixedArrayType | getName: | FixedArray<4, Int> | getCanonicalType: | Builtin.FixedArray | +| Builtin.FixedArray | BuiltinFixedArrayType | getName: | FixedArray | getCanonicalType: | Builtin.FixedArray<4, Int> | | Builtin.FixedArray | BuiltinFixedArrayType | getName: | FixedArray | getCanonicalType: | Builtin.FixedArray | +| Builtin.FixedArray | BuiltinFixedArrayType | getName: | FixedArray | getCanonicalType: | Builtin.FixedArray<\u03c4_0_0, \u03c4_0_1> | +| Builtin.FixedArray | BuiltinFixedArrayType | getName: | FixedArray | getCanonicalType: | Builtin.FixedArray | +| Builtin.FixedArray | BuiltinFixedArrayType | getName: | FixedArray<\u03c4_0_0, \u03c4_0_1> | getCanonicalType: | Builtin.FixedArray<4, Int> | +| Builtin.FixedArray | BuiltinFixedArrayType | getName: | FixedArray<\u03c4_0_0, \u03c4_0_1> | getCanonicalType: | Builtin.FixedArray | +| Builtin.FixedArray | BuiltinFixedArrayType | getName: | FixedArray<\u03c4_0_0, \u03c4_0_1> | getCanonicalType: | Builtin.FixedArray<\u03c4_0_0, \u03c4_0_1> | +| Builtin.FixedArray | BuiltinFixedArrayType | getName: | FixedArray<\u03c4_0_0, \u03c4_0_1> | getCanonicalType: | Builtin.FixedArray | +| Builtin.FixedArray | BuiltinFixedArrayType | getName: | FixedArray | getCanonicalType: | Builtin.FixedArray<4, Int> | +| Builtin.FixedArray | BuiltinFixedArrayType | getName: | FixedArray | getCanonicalType: | Builtin.FixedArray | +| Builtin.FixedArray | BuiltinFixedArrayType | getName: | FixedArray | getCanonicalType: | Builtin.FixedArray<\u03c4_0_0, \u03c4_0_1> | +| Builtin.FixedArray | BuiltinFixedArrayType | getName: | FixedArray | getCanonicalType: | Builtin.FixedArray | +| Builtin.FixedArray<\u03c4_0_0, \u03c4_0_1> | BuiltinFixedArrayType | getName: | FixedArray<4, Int> | getCanonicalType: | Builtin.FixedArray<4, Int> | +| Builtin.FixedArray<\u03c4_0_0, \u03c4_0_1> | BuiltinFixedArrayType | getName: | FixedArray<4, Int> | getCanonicalType: | Builtin.FixedArray | +| Builtin.FixedArray<\u03c4_0_0, \u03c4_0_1> | BuiltinFixedArrayType | getName: | FixedArray<4, Int> | getCanonicalType: | Builtin.FixedArray<\u03c4_0_0, \u03c4_0_1> | +| Builtin.FixedArray<\u03c4_0_0, \u03c4_0_1> | BuiltinFixedArrayType | getName: | FixedArray<4, Int> | getCanonicalType: | Builtin.FixedArray | +| Builtin.FixedArray<\u03c4_0_0, \u03c4_0_1> | BuiltinFixedArrayType | getName: | FixedArray | getCanonicalType: | Builtin.FixedArray<4, Int> | +| Builtin.FixedArray<\u03c4_0_0, \u03c4_0_1> | BuiltinFixedArrayType | getName: | FixedArray | getCanonicalType: | Builtin.FixedArray | +| Builtin.FixedArray<\u03c4_0_0, \u03c4_0_1> | BuiltinFixedArrayType | getName: | FixedArray | getCanonicalType: | Builtin.FixedArray<\u03c4_0_0, \u03c4_0_1> | +| Builtin.FixedArray<\u03c4_0_0, \u03c4_0_1> | BuiltinFixedArrayType | getName: | FixedArray | getCanonicalType: | Builtin.FixedArray | +| Builtin.FixedArray<\u03c4_0_0, \u03c4_0_1> | BuiltinFixedArrayType | getName: | FixedArray<\u03c4_0_0, \u03c4_0_1> | getCanonicalType: | Builtin.FixedArray<4, Int> | +| Builtin.FixedArray<\u03c4_0_0, \u03c4_0_1> | BuiltinFixedArrayType | getName: | FixedArray<\u03c4_0_0, \u03c4_0_1> | getCanonicalType: | Builtin.FixedArray | | Builtin.FixedArray<\u03c4_0_0, \u03c4_0_1> | BuiltinFixedArrayType | getName: | FixedArray<\u03c4_0_0, \u03c4_0_1> | getCanonicalType: | Builtin.FixedArray<\u03c4_0_0, \u03c4_0_1> | +| Builtin.FixedArray<\u03c4_0_0, \u03c4_0_1> | BuiltinFixedArrayType | getName: | FixedArray<\u03c4_0_0, \u03c4_0_1> | getCanonicalType: | Builtin.FixedArray | +| Builtin.FixedArray<\u03c4_0_0, \u03c4_0_1> | BuiltinFixedArrayType | getName: | FixedArray | getCanonicalType: | Builtin.FixedArray<4, Int> | +| Builtin.FixedArray<\u03c4_0_0, \u03c4_0_1> | BuiltinFixedArrayType | getName: | FixedArray | getCanonicalType: | Builtin.FixedArray | +| Builtin.FixedArray<\u03c4_0_0, \u03c4_0_1> | BuiltinFixedArrayType | getName: | FixedArray | getCanonicalType: | Builtin.FixedArray<\u03c4_0_0, \u03c4_0_1> | +| Builtin.FixedArray<\u03c4_0_0, \u03c4_0_1> | BuiltinFixedArrayType | getName: | FixedArray | getCanonicalType: | Builtin.FixedArray | +| Builtin.FixedArray | BuiltinFixedArrayType | getName: | FixedArray<4, Int> | getCanonicalType: | Builtin.FixedArray<4, Int> | +| Builtin.FixedArray | BuiltinFixedArrayType | getName: | FixedArray<4, Int> | getCanonicalType: | Builtin.FixedArray | +| Builtin.FixedArray | BuiltinFixedArrayType | getName: | FixedArray<4, Int> | getCanonicalType: | Builtin.FixedArray<\u03c4_0_0, \u03c4_0_1> | +| Builtin.FixedArray | BuiltinFixedArrayType | getName: | FixedArray<4, Int> | getCanonicalType: | Builtin.FixedArray | +| Builtin.FixedArray | BuiltinFixedArrayType | getName: | FixedArray | getCanonicalType: | Builtin.FixedArray<4, Int> | +| Builtin.FixedArray | BuiltinFixedArrayType | getName: | FixedArray | getCanonicalType: | Builtin.FixedArray | +| Builtin.FixedArray | BuiltinFixedArrayType | getName: | FixedArray | getCanonicalType: | Builtin.FixedArray<\u03c4_0_0, \u03c4_0_1> | +| Builtin.FixedArray | BuiltinFixedArrayType | getName: | FixedArray | getCanonicalType: | Builtin.FixedArray | +| Builtin.FixedArray | BuiltinFixedArrayType | getName: | FixedArray<\u03c4_0_0, \u03c4_0_1> | getCanonicalType: | Builtin.FixedArray<4, Int> | +| Builtin.FixedArray | BuiltinFixedArrayType | getName: | FixedArray<\u03c4_0_0, \u03c4_0_1> | getCanonicalType: | Builtin.FixedArray | +| Builtin.FixedArray | BuiltinFixedArrayType | getName: | FixedArray<\u03c4_0_0, \u03c4_0_1> | getCanonicalType: | Builtin.FixedArray<\u03c4_0_0, \u03c4_0_1> | +| Builtin.FixedArray | BuiltinFixedArrayType | getName: | FixedArray<\u03c4_0_0, \u03c4_0_1> | getCanonicalType: | Builtin.FixedArray | +| Builtin.FixedArray | BuiltinFixedArrayType | getName: | FixedArray | getCanonicalType: | Builtin.FixedArray<4, Int> | +| Builtin.FixedArray | BuiltinFixedArrayType | getName: | FixedArray | getCanonicalType: | Builtin.FixedArray | +| Builtin.FixedArray | BuiltinFixedArrayType | getName: | FixedArray | getCanonicalType: | Builtin.FixedArray<\u03c4_0_0, \u03c4_0_1> | +| Builtin.FixedArray | BuiltinFixedArrayType | getName: | FixedArray | getCanonicalType: | Builtin.FixedArray | | Builtin.IntLiteral | BuiltinIntegerLiteralType | getName: | IntLiteral | getCanonicalType: | Builtin.IntLiteral | | Builtin.Job | BuiltinJobType | getName: | Job | getCanonicalType: | Builtin.Job | | Builtin.NativeObject | BuiltinNativeObjectType | getName: | NativeObject | getCanonicalType: | Builtin.NativeObject | diff --git a/swift/ql/test/extractor-tests/generated/type/IntegerType/IntegerType.expected b/swift/ql/test/extractor-tests/generated/type/IntegerType/IntegerType.expected index 7fba23db8bdc..7b2c1bada262 100644 --- a/swift/ql/test/extractor-tests/generated/type/IntegerType/IntegerType.expected +++ b/swift/ql/test/extractor-tests/generated/type/IntegerType/IntegerType.expected @@ -1,2 +1,8 @@ +| 16 | getName: | 16 | getCanonicalType: | 16 | getValue: | 16 | +| 40 | getName: | 40 | getCanonicalType: | 40 | getValue: | 40 | +| 58 | getName: | 58 | getCanonicalType: | 58 | getValue: | 58 | +| 100 | getName: | 100 | getCanonicalType: | 100 | getValue: | 100 | +| 112 | getName: | 112 | getCanonicalType: | 112 | getValue: | 112 | | 128 | getName: | 128 | getCanonicalType: | 128 | getValue: | 128 | | 256 | getName: | 256 | getCanonicalType: | 256 | getValue: | 256 | +| 716 | getName: | 716 | getCanonicalType: | 716 | getValue: | 716 | diff --git a/swift/ql/test/library-tests/ast/PrintAst.expected b/swift/ql/test/library-tests/ast/PrintAst.expected index 8cd6a4a5aff7..9e47767c2376 100644 --- a/swift/ql/test/library-tests/ast/PrintAst.expected +++ b/swift/ql/test/library-tests/ast/PrintAst.expected @@ -705,7 +705,7 @@ cfg.swift: # 138| getVariable(0): [ConcreteVarDecl] $generator # 138| Type = IndexingIterator> # 138| getPattern(): [AnyPattern] _ -#-----| getIteratorVar(): [PatternBindingDecl] var ... = ... +# 138| getIteratorVar(): [PatternBindingDecl] var ... = ... # 138| getInit(0): [CallExpr] call to makeIterator() # 138| getFunction(): [MethodLookupExpr] .makeIterator() # 138| getBase(): [BinaryExpr] ... ....(_:_:) ... @@ -3263,7 +3263,7 @@ cfg.swift: # 526| getVariable(1): [ConcreteVarDecl] $i$generator # 526| Type = IndexingIterator> # 526| getPattern(): [NamedPattern] i -#-----| getIteratorVar(): [PatternBindingDecl] var ... = ... +# 526| getIteratorVar(): [PatternBindingDecl] var ... = ... # 526| getInit(0): [CallExpr] call to makeIterator() # 526| getFunction(): [MethodLookupExpr] .makeIterator() # 526| getBase(): [BinaryExpr] ... ....(_:_:) ... @@ -3302,7 +3302,7 @@ cfg.swift: # 533| getVariable(1): [ConcreteVarDecl] $i$generator # 533| Type = AsyncStream.Iterator # 533| getPattern(): [NamedPattern] i -#-----| getIteratorVar(): [PatternBindingDecl] var ... = ... +# 533| getIteratorVar(): [PatternBindingDecl] var ... = ... # 533| getInit(0): [CallExpr] call to makeAsyncIterator() # 533| getFunction(): [MethodLookupExpr] .makeAsyncIterator() # 533| getBase(): [DeclRefExpr] stream @@ -4141,7 +4141,7 @@ declarations.swift: #-----| getResult(): [MemberRefExpr] .wrappedValue #-----| getBase(): [DeclRefExpr] _x #-----| getCapture(0): [CapturedDecl] _x -#-----| getPropertyWrapperBackingVarBinding(): [PatternBindingDecl] var ... = ... +# 77| getPropertyWrapperBackingVarBinding(): [PatternBindingDecl] var ... = ... # 77| getInit(0): [CallExpr] call to ZeroWrapper.init() # 77| getFunction(): [MethodLookupExpr] ZeroWrapper.init() # 77| getBase(): [TypeExpr] ZeroWrapper.Type @@ -7018,7 +7018,7 @@ statements.swift: # 2| getVariable(1): [ConcreteVarDecl] $i$generator # 2| Type = IndexingIterator> # 2| getPattern(): [NamedPattern] i -#-----| getIteratorVar(): [PatternBindingDecl] var ... = ... +# 2| getIteratorVar(): [PatternBindingDecl] var ... = ... # 2| getInit(0): [CallExpr] call to makeIterator() # 2| getFunction(): [MethodLookupExpr] .makeIterator() # 2| getBase(): [BinaryExpr] ... ....(_:_:) ... @@ -7470,7 +7470,7 @@ statements.swift: # 71| getExpr(): [IntegerLiteralExpr] 2 # 71| getArgument(1): [Argument] : 0 # 71| getExpr(): [IntegerLiteralExpr] 0 -#-----| getIteratorVar(): [PatternBindingDecl] var ... = ... +# 71| getIteratorVar(): [PatternBindingDecl] var ... = ... # 71| getInit(0): [CallExpr] call to makeIterator() # 71| getFunction(): [MethodLookupExpr] .makeIterator() # 71| getBase(): [DeclRefExpr] numbers diff --git a/swift/ql/test/library-tests/controlflow/graph/Cfg.expected b/swift/ql/test/library-tests/controlflow/graph/Cfg.expected index 8fc8c7808b1b..f128a0994b53 100644 --- a/swift/ql/test/library-tests/controlflow/graph/Cfg.expected +++ b/swift/ql/test/library-tests/controlflow/graph/Cfg.expected @@ -474,7 +474,8 @@ | cfg.swift:138:12:138:12 | 0 | cfg.swift:138:16:138:16 | 10 | | | cfg.swift:138:12:138:12 | $generator | cfg.swift:138:12:138:12 | .makeIterator() | match | | cfg.swift:138:12:138:12 | .makeIterator() | cfg.swift:138:13:138:13 | ....(_:_:) | | -| cfg.swift:138:12:138:12 | call to makeIterator() | file://:0:0:0:0 | var ... = ... | | +| cfg.swift:138:12:138:12 | call to makeIterator() | cfg.swift:138:12:138:12 | var ... = ... | | +| cfg.swift:138:12:138:12 | var ... = ... | cfg.swift:138:3:138:3 | .next() | | | cfg.swift:138:12:138:16 | ... ....(_:_:) ... | cfg.swift:138:12:138:12 | call to makeIterator() | | | cfg.swift:138:13:138:13 | ....(_:_:) | cfg.swift:138:13:138:13 | Int.Type | | | cfg.swift:138:13:138:13 | Int.Type | cfg.swift:138:12:138:12 | 0 | | @@ -2023,7 +2024,8 @@ | cfg.swift:526:26:526:26 | 1 | cfg.swift:526:30:526:30 | 100 | | | cfg.swift:526:26:526:26 | $i$generator | cfg.swift:526:26:526:26 | .makeIterator() | match | | cfg.swift:526:26:526:26 | .makeIterator() | cfg.swift:526:27:526:27 | ....(_:_:) | | -| cfg.swift:526:26:526:26 | call to makeIterator() | file://:0:0:0:0 | var ... = ... | | +| cfg.swift:526:26:526:26 | call to makeIterator() | cfg.swift:526:26:526:26 | var ... = ... | | +| cfg.swift:526:26:526:26 | var ... = ... | cfg.swift:526:17:526:17 | .next() | | | cfg.swift:526:26:526:30 | ... ....(_:_:) ... | cfg.swift:526:26:526:26 | call to makeIterator() | | | cfg.swift:526:27:526:27 | ....(_:_:) | cfg.swift:526:27:526:27 | Int.Type | | | cfg.swift:526:27:526:27 | Int.Type | cfg.swift:526:26:526:26 | 1 | | @@ -2048,8 +2050,9 @@ | cfg.swift:533:24:533:24 | $i$generator | cfg.swift:533:24:533:24 | .makeAsyncIterator() | match | | cfg.swift:533:24:533:24 | (AsyncStream) ... | cfg.swift:533:24:533:24 | call to makeAsyncIterator() | | | cfg.swift:533:24:533:24 | .makeAsyncIterator() | cfg.swift:533:24:533:24 | stream | | -| cfg.swift:533:24:533:24 | call to makeAsyncIterator() | file://:0:0:0:0 | var ... = ... | | +| cfg.swift:533:24:533:24 | call to makeAsyncIterator() | cfg.swift:533:24:533:24 | var ... = ... | | | cfg.swift:533:24:533:24 | stream | cfg.swift:533:24:533:24 | (AsyncStream) ... | | +| cfg.swift:533:24:533:24 | var ... = ... | cfg.swift:533:5:533:5 | .next(isolation:) | | | cfg.swift:534:9:534:9 | print(_:separator:terminator:) | cfg.swift:534:15:534:15 | i | | | cfg.swift:534:9:534:16 | call to print(_:separator:terminator:) | cfg.swift:533:5:533:5 | .next(isolation:) | | | cfg.swift:534:14:534:14 | default separator | cfg.swift:534:14:534:14 | default terminator | | @@ -2350,6 +2353,3 @@ | file://:0:0:0:0 | value | file://:0:0:0:0 | ... = ... | | | file://:0:0:0:0 | value | file://:0:0:0:0 | ... = ... | | | file://:0:0:0:0 | value | file://:0:0:0:0 | ... = ... | | -| file://:0:0:0:0 | var ... = ... | cfg.swift:138:3:138:3 | .next() | | -| file://:0:0:0:0 | var ... = ... | cfg.swift:526:17:526:17 | .next() | | -| file://:0:0:0:0 | var ... = ... | cfg.swift:533:5:533:5 | .next(isolation:) | | From 7b7411f7dfeea0db4bea9e1fa71c3a1fe5ab227f Mon Sep 17 00:00:00 2001 From: Kristen Newbury Date: Wed, 8 Apr 2026 08:57:45 -0400 Subject: [PATCH 077/157] Change alert location CWE-829/ArtifactPoisoning queries --- .../CWE-829/ArtifactPoisoningCritical.ql | 2 +- .../CWE-829/ArtifactPoisoningMedium.ql | 2 +- .../2026-04-02-alert-msg-poisoning.md | 2 +- .../ArtifactPoisoningCritical.expected | 36 +++++++++---------- 4 files changed, 21 insertions(+), 21 deletions(-) diff --git a/actions/ql/src/Security/CWE-829/ArtifactPoisoningCritical.ql b/actions/ql/src/Security/CWE-829/ArtifactPoisoningCritical.ql index 44b69cd46b2e..be49de830c33 100644 --- a/actions/ql/src/Security/CWE-829/ArtifactPoisoningCritical.ql +++ b/actions/ql/src/Security/CWE-829/ArtifactPoisoningCritical.ql @@ -20,6 +20,6 @@ from ArtifactPoisoningFlow::PathNode source, ArtifactPoisoningFlow::PathNode sin where ArtifactPoisoningFlow::flowPath(source, sink) and event = getRelevantEventInPrivilegedContext(sink.getNode()) -select sink.getNode(), source, sink, +select source.getNode(), source, sink, "Potential artifact poisoning; the artifact being consumed has contents that may be controlled by an external user ($@).", event, event.getName() diff --git a/actions/ql/src/Security/CWE-829/ArtifactPoisoningMedium.ql b/actions/ql/src/Security/CWE-829/ArtifactPoisoningMedium.ql index cc5532172e82..49dc856e5665 100644 --- a/actions/ql/src/Security/CWE-829/ArtifactPoisoningMedium.ql +++ b/actions/ql/src/Security/CWE-829/ArtifactPoisoningMedium.ql @@ -20,5 +20,5 @@ from ArtifactPoisoningFlow::PathNode source, ArtifactPoisoningFlow::PathNode sin where ArtifactPoisoningFlow::flowPath(source, sink) and inNonPrivilegedContext(sink.getNode().asExpr()) -select sink.getNode(), source, sink, +select source.getNode(), source, sink, "Potential artifact poisoning; the artifact being consumed has contents that may be controlled by an external user." diff --git a/actions/ql/src/change-notes/2026-04-02-alert-msg-poisoning.md b/actions/ql/src/change-notes/2026-04-02-alert-msg-poisoning.md index 30936d8b5c54..e2340f446a71 100644 --- a/actions/ql/src/change-notes/2026-04-02-alert-msg-poisoning.md +++ b/actions/ql/src/change-notes/2026-04-02-alert-msg-poisoning.md @@ -1,4 +1,4 @@ --- category: majorAnalysis --- -* Fixed alert messages in `actions/artifact-poisoning/critical` and `actions/artifact-poisoning/medium` as they previously included a redundant placeholder in the alert message that would on occasion contain a long block of yml that makes the alert difficult to understand. Also clarify the wording to make it clear that it is not the artifact that is being poisoned, but instead a potentially untrusted artifact that is consumed. \ No newline at end of file +* Fixed alert messages in `actions/artifact-poisoning/critical` and `actions/artifact-poisoning/medium` as they previously included a redundant placeholder in the alert message that would on occasion contain a long block of yml that makes the alert difficult to understand. Also clarify the wording to make it clear that it is not the artifact that is being poisoned, but instead a potentially untrusted artifact that is consumed. Also change the alert location to be the source, to align more with other queries reporting an artifact (e.g. zipslip) which is more useful. \ No newline at end of file diff --git a/actions/ql/test/query-tests/Security/CWE-829/ArtifactPoisoningCritical.expected b/actions/ql/test/query-tests/Security/CWE-829/ArtifactPoisoningCritical.expected index 75f08e0357e0..3c5f6bf93e98 100644 --- a/actions/ql/test/query-tests/Security/CWE-829/ArtifactPoisoningCritical.expected +++ b/actions/ql/test/query-tests/Security/CWE-829/ArtifactPoisoningCritical.expected @@ -55,21 +55,21 @@ nodes | .github/workflows/test25.yml:39:14:40:45 | ./gradlew buildScanPublishPrevious\n | semmle.label | ./gradlew buildScanPublishPrevious\n | subpaths #select -| .github/workflows/artifactpoisoning11.yml:38:11:38:77 | ./sonarcloud-data/x.py build -j$(nproc) --compiler gcc --skip-build | .github/workflows/artifactpoisoning11.yml:13:9:32:6 | Uses Step | .github/workflows/artifactpoisoning11.yml:38:11:38:77 | ./sonarcloud-data/x.py build -j$(nproc) --compiler gcc --skip-build | Potential artifact poisoning; the artifact being consumed has contents that may be controlled by an external user ($@). | .github/workflows/artifactpoisoning11.yml:4:3:4:14 | workflow_run | workflow_run | -| .github/workflows/artifactpoisoning12.yml:38:11:38:25 | python foo/x.py | .github/workflows/artifactpoisoning12.yml:13:9:32:6 | Uses Step | .github/workflows/artifactpoisoning12.yml:38:11:38:25 | python foo/x.py | Potential artifact poisoning; the artifact being consumed has contents that may be controlled by an external user ($@). | .github/workflows/artifactpoisoning12.yml:4:3:4:14 | workflow_run | workflow_run | -| .github/workflows/artifactpoisoning21.yml:19:14:20:21 | sh foo/cmd\n | .github/workflows/artifactpoisoning21.yml:13:9:18:6 | Uses Step | .github/workflows/artifactpoisoning21.yml:19:14:20:21 | sh foo/cmd\n | Potential artifact poisoning; the artifact being consumed has contents that may be controlled by an external user ($@). | .github/workflows/artifactpoisoning21.yml:4:3:4:14 | workflow_run | workflow_run | -| .github/workflows/artifactpoisoning22.yml:18:14:18:19 | sh cmd | .github/workflows/artifactpoisoning22.yml:13:9:17:6 | Uses Step | .github/workflows/artifactpoisoning22.yml:18:14:18:19 | sh cmd | Potential artifact poisoning; the artifact being consumed has contents that may be controlled by an external user ($@). | .github/workflows/artifactpoisoning22.yml:4:3:4:14 | workflow_run | workflow_run | -| .github/workflows/artifactpoisoning31.yml:19:14:19:22 | ./foo/cmd | .github/workflows/artifactpoisoning31.yml:13:9:15:6 | Run Step | .github/workflows/artifactpoisoning31.yml:19:14:19:22 | ./foo/cmd | Potential artifact poisoning; the artifact being consumed has contents that may be controlled by an external user ($@). | .github/workflows/artifactpoisoning31.yml:4:3:4:14 | workflow_run | workflow_run | -| .github/workflows/artifactpoisoning32.yml:17:14:18:20 | ./bar/cmd\n | .github/workflows/artifactpoisoning32.yml:13:9:16:6 | Run Step | .github/workflows/artifactpoisoning32.yml:17:14:18:20 | ./bar/cmd\n | Potential artifact poisoning; the artifact being consumed has contents that may be controlled by an external user ($@). | .github/workflows/artifactpoisoning32.yml:4:3:4:14 | workflow_run | workflow_run | -| .github/workflows/artifactpoisoning33.yml:17:14:18:20 | ./bar/cmd\n | .github/workflows/artifactpoisoning33.yml:13:9:16:6 | Run Step | .github/workflows/artifactpoisoning33.yml:17:14:18:20 | ./bar/cmd\n | Potential artifact poisoning; the artifact being consumed has contents that may be controlled by an external user ($@). | .github/workflows/artifactpoisoning33.yml:4:3:4:14 | workflow_run | workflow_run | -| .github/workflows/artifactpoisoning34.yml:20:14:22:23 | npm install\nnpm run lint\n | .github/workflows/artifactpoisoning34.yml:13:9:16:6 | Run Step | .github/workflows/artifactpoisoning34.yml:20:14:22:23 | npm install\nnpm run lint\n | Potential artifact poisoning; the artifact being consumed has contents that may be controlled by an external user ($@). | .github/workflows/artifactpoisoning34.yml:4:3:4:14 | workflow_run | workflow_run | -| .github/workflows/artifactpoisoning41.yml:22:14:22:22 | ./foo/cmd | .github/workflows/artifactpoisoning41.yml:13:9:21:6 | Run Step | .github/workflows/artifactpoisoning41.yml:22:14:22:22 | ./foo/cmd | Potential artifact poisoning; the artifact being consumed has contents that may be controlled by an external user ($@). | .github/workflows/artifactpoisoning41.yml:4:3:4:14 | workflow_run | workflow_run | -| .github/workflows/artifactpoisoning42.yml:22:14:22:18 | ./cmd | .github/workflows/artifactpoisoning42.yml:13:9:21:6 | Run Step | .github/workflows/artifactpoisoning42.yml:22:14:22:18 | ./cmd | Potential artifact poisoning; the artifact being consumed has contents that may be controlled by an external user ($@). | .github/workflows/artifactpoisoning42.yml:4:3:4:14 | workflow_run | workflow_run | -| .github/workflows/artifactpoisoning71.yml:17:14:18:40 | sed -f config foo.md > bar.md\n | .github/workflows/artifactpoisoning71.yml:9:9:16:6 | Uses Step | .github/workflows/artifactpoisoning71.yml:17:14:18:40 | sed -f config foo.md > bar.md\n | Potential artifact poisoning; the artifact being consumed has contents that may be controlled by an external user ($@). | .github/workflows/artifactpoisoning71.yml:4:5:4:16 | workflow_run | workflow_run | -| .github/workflows/artifactpoisoning81.yml:31:14:31:27 | python test.py | .github/workflows/artifactpoisoning81.yml:28:9:31:6 | Uses Step | .github/workflows/artifactpoisoning81.yml:31:14:31:27 | python test.py | Potential artifact poisoning; the artifact being consumed has contents that may be controlled by an external user ($@). | .github/workflows/artifactpoisoning81.yml:3:5:3:23 | pull_request_target | pull_request_target | -| .github/workflows/artifactpoisoning92.yml:28:9:29:6 | Uses Step | .github/actions/download-artifact-2/action.yaml:6:7:25:4 | Uses Step | .github/workflows/artifactpoisoning92.yml:28:9:29:6 | Uses Step | Potential artifact poisoning; the artifact being consumed has contents that may be controlled by an external user ($@). | .github/workflows/artifactpoisoning92.yml:3:3:3:14 | workflow_run | workflow_run | -| .github/workflows/artifactpoisoning92.yml:29:14:29:26 | make snapshot | .github/actions/download-artifact-2/action.yaml:6:7:25:4 | Uses Step | .github/workflows/artifactpoisoning92.yml:29:14:29:26 | make snapshot | Potential artifact poisoning; the artifact being consumed has contents that may be controlled by an external user ($@). | .github/workflows/artifactpoisoning92.yml:3:3:3:14 | workflow_run | workflow_run | -| .github/workflows/artifactpoisoning96.yml:18:14:18:24 | npm install | .github/workflows/artifactpoisoning96.yml:13:9:18:6 | Uses Step | .github/workflows/artifactpoisoning96.yml:18:14:18:24 | npm install | Potential artifact poisoning; the artifact being consumed has contents that may be controlled by an external user ($@). | .github/workflows/artifactpoisoning96.yml:2:3:2:14 | workflow_run | workflow_run | -| .github/workflows/artifactpoisoning101.yml:17:14:19:59 | PR_NUMBER=$(./get_pull_request_number.sh pr_number.txt)\necho "PR_NUMBER=$PR_NUMBER" >> $GITHUB_OUTPUT \n | .github/workflows/artifactpoisoning101.yml:10:9:16:6 | Uses Step | .github/workflows/artifactpoisoning101.yml:17:14:19:59 | PR_NUMBER=$(./get_pull_request_number.sh pr_number.txt)\necho "PR_NUMBER=$PR_NUMBER" >> $GITHUB_OUTPUT \n | Potential artifact poisoning; the artifact being consumed has contents that may be controlled by an external user ($@). | .github/workflows/artifactpoisoning101.yml:4:3:4:21 | pull_request_target | pull_request_target | -| .github/workflows/test18.yml:36:15:40:58 | Uses Step | .github/workflows/test18.yml:12:15:33:12 | Uses Step | .github/workflows/test18.yml:36:15:40:58 | Uses Step | Potential artifact poisoning; the artifact being consumed has contents that may be controlled by an external user ($@). | .github/workflows/test18.yml:3:5:3:16 | workflow_run | workflow_run | -| .github/workflows/test25.yml:39:14:40:45 | ./gradlew buildScanPublishPrevious\n | .github/workflows/test25.yml:22:9:32:6 | Uses Step: downloadBuildScan | .github/workflows/test25.yml:39:14:40:45 | ./gradlew buildScanPublishPrevious\n | Potential artifact poisoning; the artifact being consumed has contents that may be controlled by an external user ($@). | .github/workflows/test25.yml:2:3:2:14 | workflow_run | workflow_run | +| .github/actions/download-artifact-2/action.yaml:6:7:25:4 | Uses Step | .github/actions/download-artifact-2/action.yaml:6:7:25:4 | Uses Step | .github/workflows/artifactpoisoning92.yml:28:9:29:6 | Uses Step | Potential artifact poisoning; the artifact being consumed has contents that may be controlled by an external user ($@). | .github/workflows/artifactpoisoning92.yml:3:3:3:14 | workflow_run | workflow_run | +| .github/actions/download-artifact-2/action.yaml:6:7:25:4 | Uses Step | .github/actions/download-artifact-2/action.yaml:6:7:25:4 | Uses Step | .github/workflows/artifactpoisoning92.yml:29:14:29:26 | make snapshot | Potential artifact poisoning; the artifact being consumed has contents that may be controlled by an external user ($@). | .github/workflows/artifactpoisoning92.yml:3:3:3:14 | workflow_run | workflow_run | +| .github/workflows/artifactpoisoning11.yml:13:9:32:6 | Uses Step | .github/workflows/artifactpoisoning11.yml:13:9:32:6 | Uses Step | .github/workflows/artifactpoisoning11.yml:38:11:38:77 | ./sonarcloud-data/x.py build -j$(nproc) --compiler gcc --skip-build | Potential artifact poisoning; the artifact being consumed has contents that may be controlled by an external user ($@). | .github/workflows/artifactpoisoning11.yml:4:3:4:14 | workflow_run | workflow_run | +| .github/workflows/artifactpoisoning12.yml:13:9:32:6 | Uses Step | .github/workflows/artifactpoisoning12.yml:13:9:32:6 | Uses Step | .github/workflows/artifactpoisoning12.yml:38:11:38:25 | python foo/x.py | Potential artifact poisoning; the artifact being consumed has contents that may be controlled by an external user ($@). | .github/workflows/artifactpoisoning12.yml:4:3:4:14 | workflow_run | workflow_run | +| .github/workflows/artifactpoisoning21.yml:13:9:18:6 | Uses Step | .github/workflows/artifactpoisoning21.yml:13:9:18:6 | Uses Step | .github/workflows/artifactpoisoning21.yml:19:14:20:21 | sh foo/cmd\n | Potential artifact poisoning; the artifact being consumed has contents that may be controlled by an external user ($@). | .github/workflows/artifactpoisoning21.yml:4:3:4:14 | workflow_run | workflow_run | +| .github/workflows/artifactpoisoning22.yml:13:9:17:6 | Uses Step | .github/workflows/artifactpoisoning22.yml:13:9:17:6 | Uses Step | .github/workflows/artifactpoisoning22.yml:18:14:18:19 | sh cmd | Potential artifact poisoning; the artifact being consumed has contents that may be controlled by an external user ($@). | .github/workflows/artifactpoisoning22.yml:4:3:4:14 | workflow_run | workflow_run | +| .github/workflows/artifactpoisoning31.yml:13:9:15:6 | Run Step | .github/workflows/artifactpoisoning31.yml:13:9:15:6 | Run Step | .github/workflows/artifactpoisoning31.yml:19:14:19:22 | ./foo/cmd | Potential artifact poisoning; the artifact being consumed has contents that may be controlled by an external user ($@). | .github/workflows/artifactpoisoning31.yml:4:3:4:14 | workflow_run | workflow_run | +| .github/workflows/artifactpoisoning32.yml:13:9:16:6 | Run Step | .github/workflows/artifactpoisoning32.yml:13:9:16:6 | Run Step | .github/workflows/artifactpoisoning32.yml:17:14:18:20 | ./bar/cmd\n | Potential artifact poisoning; the artifact being consumed has contents that may be controlled by an external user ($@). | .github/workflows/artifactpoisoning32.yml:4:3:4:14 | workflow_run | workflow_run | +| .github/workflows/artifactpoisoning33.yml:13:9:16:6 | Run Step | .github/workflows/artifactpoisoning33.yml:13:9:16:6 | Run Step | .github/workflows/artifactpoisoning33.yml:17:14:18:20 | ./bar/cmd\n | Potential artifact poisoning; the artifact being consumed has contents that may be controlled by an external user ($@). | .github/workflows/artifactpoisoning33.yml:4:3:4:14 | workflow_run | workflow_run | +| .github/workflows/artifactpoisoning34.yml:13:9:16:6 | Run Step | .github/workflows/artifactpoisoning34.yml:13:9:16:6 | Run Step | .github/workflows/artifactpoisoning34.yml:20:14:22:23 | npm install\nnpm run lint\n | Potential artifact poisoning; the artifact being consumed has contents that may be controlled by an external user ($@). | .github/workflows/artifactpoisoning34.yml:4:3:4:14 | workflow_run | workflow_run | +| .github/workflows/artifactpoisoning41.yml:13:9:21:6 | Run Step | .github/workflows/artifactpoisoning41.yml:13:9:21:6 | Run Step | .github/workflows/artifactpoisoning41.yml:22:14:22:22 | ./foo/cmd | Potential artifact poisoning; the artifact being consumed has contents that may be controlled by an external user ($@). | .github/workflows/artifactpoisoning41.yml:4:3:4:14 | workflow_run | workflow_run | +| .github/workflows/artifactpoisoning42.yml:13:9:21:6 | Run Step | .github/workflows/artifactpoisoning42.yml:13:9:21:6 | Run Step | .github/workflows/artifactpoisoning42.yml:22:14:22:18 | ./cmd | Potential artifact poisoning; the artifact being consumed has contents that may be controlled by an external user ($@). | .github/workflows/artifactpoisoning42.yml:4:3:4:14 | workflow_run | workflow_run | +| .github/workflows/artifactpoisoning71.yml:9:9:16:6 | Uses Step | .github/workflows/artifactpoisoning71.yml:9:9:16:6 | Uses Step | .github/workflows/artifactpoisoning71.yml:17:14:18:40 | sed -f config foo.md > bar.md\n | Potential artifact poisoning; the artifact being consumed has contents that may be controlled by an external user ($@). | .github/workflows/artifactpoisoning71.yml:4:5:4:16 | workflow_run | workflow_run | +| .github/workflows/artifactpoisoning81.yml:28:9:31:6 | Uses Step | .github/workflows/artifactpoisoning81.yml:28:9:31:6 | Uses Step | .github/workflows/artifactpoisoning81.yml:31:14:31:27 | python test.py | Potential artifact poisoning; the artifact being consumed has contents that may be controlled by an external user ($@). | .github/workflows/artifactpoisoning81.yml:3:5:3:23 | pull_request_target | pull_request_target | +| .github/workflows/artifactpoisoning96.yml:13:9:18:6 | Uses Step | .github/workflows/artifactpoisoning96.yml:13:9:18:6 | Uses Step | .github/workflows/artifactpoisoning96.yml:18:14:18:24 | npm install | Potential artifact poisoning; the artifact being consumed has contents that may be controlled by an external user ($@). | .github/workflows/artifactpoisoning96.yml:2:3:2:14 | workflow_run | workflow_run | +| .github/workflows/artifactpoisoning101.yml:10:9:16:6 | Uses Step | .github/workflows/artifactpoisoning101.yml:10:9:16:6 | Uses Step | .github/workflows/artifactpoisoning101.yml:17:14:19:59 | PR_NUMBER=$(./get_pull_request_number.sh pr_number.txt)\necho "PR_NUMBER=$PR_NUMBER" >> $GITHUB_OUTPUT \n | Potential artifact poisoning; the artifact being consumed has contents that may be controlled by an external user ($@). | .github/workflows/artifactpoisoning101.yml:4:3:4:21 | pull_request_target | pull_request_target | +| .github/workflows/test18.yml:12:15:33:12 | Uses Step | .github/workflows/test18.yml:12:15:33:12 | Uses Step | .github/workflows/test18.yml:36:15:40:58 | Uses Step | Potential artifact poisoning; the artifact being consumed has contents that may be controlled by an external user ($@). | .github/workflows/test18.yml:3:5:3:16 | workflow_run | workflow_run | +| .github/workflows/test25.yml:22:9:32:6 | Uses Step: downloadBuildScan | .github/workflows/test25.yml:22:9:32:6 | Uses Step: downloadBuildScan | .github/workflows/test25.yml:39:14:40:45 | ./gradlew buildScanPublishPrevious\n | Potential artifact poisoning; the artifact being consumed has contents that may be controlled by an external user ($@). | .github/workflows/test25.yml:2:3:2:14 | workflow_run | workflow_run | From f7de0abe602d2c4695b11604201e97637bf4673c Mon Sep 17 00:00:00 2001 From: Jeroen Ketema Date: Wed, 8 Apr 2026 15:32:43 +0200 Subject: [PATCH 078/157] Swift: Fix `BuiltinFixedArrayType` mangling --- swift/extractor/mangler/SwiftMangler.cpp | 11 +++- swift/extractor/mangler/SwiftMangler.h | 1 + .../type/BuiltinType/BuiltinType.expected | 61 ------------------- 3 files changed, 9 insertions(+), 64 deletions(-) diff --git a/swift/extractor/mangler/SwiftMangler.cpp b/swift/extractor/mangler/SwiftMangler.cpp index 8d7d2a8a0658..76735bdc09f4 100644 --- a/swift/extractor/mangler/SwiftMangler.cpp +++ b/swift/extractor/mangler/SwiftMangler.cpp @@ -202,6 +202,14 @@ SwiftMangledName SwiftMangler::visitBuiltinType(const swift::BuiltinType* type) return initMangled(type) << type->getTypeName(buffer, /* prependBuiltinNamespace= */ false); } +SwiftMangledName SwiftMangler::visitBuiltinFixedArrayType( + const swift::BuiltinFixedArrayType* type) { + auto ret = visitBuiltinType(type); + ret << fetch(type->getSize()); + ret << fetch(type->getElementType()); + return ret; +} + SwiftMangledName SwiftMangler::visitAnyGenericType(const swift::AnyGenericType* type) { auto ret = initMangled(type); auto decl = type->getDecl(); @@ -240,9 +248,6 @@ SwiftMangledName SwiftMangler::visitAnyFunctionType(const swift::AnyFunctionType if (flags.isNonEphemeral()) { ret << "_nonephermeral"; } - if (flags.isIsolated()) { - ret << "_isolated"; - } if (flags.isSending()) { ret << "_sending"; } diff --git a/swift/extractor/mangler/SwiftMangler.h b/swift/extractor/mangler/SwiftMangler.h index caf70718633e..bb3691013886 100644 --- a/swift/extractor/mangler/SwiftMangler.h +++ b/swift/extractor/mangler/SwiftMangler.h @@ -71,6 +71,7 @@ class SwiftMangler : private swift::TypeVisitor, SwiftMangledName visitModuleType(const swift::ModuleType* type); SwiftMangledName visitTupleType(const swift::TupleType* type); SwiftMangledName visitBuiltinType(const swift::BuiltinType* type); + SwiftMangledName visitBuiltinFixedArrayType(const swift::BuiltinFixedArrayType* type); SwiftMangledName visitAnyGenericType(const swift::AnyGenericType* type); // shouldn't be required, but they forgot to link `NominalType` to its direct superclass diff --git a/swift/ql/test/extractor-tests/generated/type/BuiltinType/BuiltinType.expected b/swift/ql/test/extractor-tests/generated/type/BuiltinType/BuiltinType.expected index fe0d3372c495..1b64e9f4a224 100644 --- a/swift/ql/test/extractor-tests/generated/type/BuiltinType/BuiltinType.expected +++ b/swift/ql/test/extractor-tests/generated/type/BuiltinType/BuiltinType.expected @@ -3,69 +3,8 @@ | Builtin.FPIEEE32 | BuiltinFloatType | getName: | FPIEEE32 | getCanonicalType: | Builtin.FPIEEE32 | | Builtin.FPIEEE64 | BuiltinFloatType | getName: | FPIEEE64 | getCanonicalType: | Builtin.FPIEEE64 | | Builtin.FixedArray<4, Int> | BuiltinFixedArrayType | getName: | FixedArray<4, Int> | getCanonicalType: | Builtin.FixedArray<4, Int> | -| Builtin.FixedArray<4, Int> | BuiltinFixedArrayType | getName: | FixedArray<4, Int> | getCanonicalType: | Builtin.FixedArray | -| Builtin.FixedArray<4, Int> | BuiltinFixedArrayType | getName: | FixedArray<4, Int> | getCanonicalType: | Builtin.FixedArray<\u03c4_0_0, \u03c4_0_1> | -| Builtin.FixedArray<4, Int> | BuiltinFixedArrayType | getName: | FixedArray<4, Int> | getCanonicalType: | Builtin.FixedArray | -| Builtin.FixedArray<4, Int> | BuiltinFixedArrayType | getName: | FixedArray | getCanonicalType: | Builtin.FixedArray<4, Int> | -| Builtin.FixedArray<4, Int> | BuiltinFixedArrayType | getName: | FixedArray | getCanonicalType: | Builtin.FixedArray | -| Builtin.FixedArray<4, Int> | BuiltinFixedArrayType | getName: | FixedArray | getCanonicalType: | Builtin.FixedArray<\u03c4_0_0, \u03c4_0_1> | -| Builtin.FixedArray<4, Int> | BuiltinFixedArrayType | getName: | FixedArray | getCanonicalType: | Builtin.FixedArray | -| Builtin.FixedArray<4, Int> | BuiltinFixedArrayType | getName: | FixedArray<\u03c4_0_0, \u03c4_0_1> | getCanonicalType: | Builtin.FixedArray<4, Int> | -| Builtin.FixedArray<4, Int> | BuiltinFixedArrayType | getName: | FixedArray<\u03c4_0_0, \u03c4_0_1> | getCanonicalType: | Builtin.FixedArray | -| Builtin.FixedArray<4, Int> | BuiltinFixedArrayType | getName: | FixedArray<\u03c4_0_0, \u03c4_0_1> | getCanonicalType: | Builtin.FixedArray<\u03c4_0_0, \u03c4_0_1> | -| Builtin.FixedArray<4, Int> | BuiltinFixedArrayType | getName: | FixedArray<\u03c4_0_0, \u03c4_0_1> | getCanonicalType: | Builtin.FixedArray | -| Builtin.FixedArray<4, Int> | BuiltinFixedArrayType | getName: | FixedArray | getCanonicalType: | Builtin.FixedArray<4, Int> | -| Builtin.FixedArray<4, Int> | BuiltinFixedArrayType | getName: | FixedArray | getCanonicalType: | Builtin.FixedArray | -| Builtin.FixedArray<4, Int> | BuiltinFixedArrayType | getName: | FixedArray | getCanonicalType: | Builtin.FixedArray<\u03c4_0_0, \u03c4_0_1> | -| Builtin.FixedArray<4, Int> | BuiltinFixedArrayType | getName: | FixedArray | getCanonicalType: | Builtin.FixedArray | -| Builtin.FixedArray | BuiltinFixedArrayType | getName: | FixedArray<4, Int> | getCanonicalType: | Builtin.FixedArray<4, Int> | -| Builtin.FixedArray | BuiltinFixedArrayType | getName: | FixedArray<4, Int> | getCanonicalType: | Builtin.FixedArray | -| Builtin.FixedArray | BuiltinFixedArrayType | getName: | FixedArray<4, Int> | getCanonicalType: | Builtin.FixedArray<\u03c4_0_0, \u03c4_0_1> | -| Builtin.FixedArray | BuiltinFixedArrayType | getName: | FixedArray<4, Int> | getCanonicalType: | Builtin.FixedArray | -| Builtin.FixedArray | BuiltinFixedArrayType | getName: | FixedArray | getCanonicalType: | Builtin.FixedArray<4, Int> | | Builtin.FixedArray | BuiltinFixedArrayType | getName: | FixedArray | getCanonicalType: | Builtin.FixedArray | -| Builtin.FixedArray | BuiltinFixedArrayType | getName: | FixedArray | getCanonicalType: | Builtin.FixedArray<\u03c4_0_0, \u03c4_0_1> | -| Builtin.FixedArray | BuiltinFixedArrayType | getName: | FixedArray | getCanonicalType: | Builtin.FixedArray | -| Builtin.FixedArray | BuiltinFixedArrayType | getName: | FixedArray<\u03c4_0_0, \u03c4_0_1> | getCanonicalType: | Builtin.FixedArray<4, Int> | -| Builtin.FixedArray | BuiltinFixedArrayType | getName: | FixedArray<\u03c4_0_0, \u03c4_0_1> | getCanonicalType: | Builtin.FixedArray | -| Builtin.FixedArray | BuiltinFixedArrayType | getName: | FixedArray<\u03c4_0_0, \u03c4_0_1> | getCanonicalType: | Builtin.FixedArray<\u03c4_0_0, \u03c4_0_1> | -| Builtin.FixedArray | BuiltinFixedArrayType | getName: | FixedArray<\u03c4_0_0, \u03c4_0_1> | getCanonicalType: | Builtin.FixedArray | -| Builtin.FixedArray | BuiltinFixedArrayType | getName: | FixedArray | getCanonicalType: | Builtin.FixedArray<4, Int> | -| Builtin.FixedArray | BuiltinFixedArrayType | getName: | FixedArray | getCanonicalType: | Builtin.FixedArray | -| Builtin.FixedArray | BuiltinFixedArrayType | getName: | FixedArray | getCanonicalType: | Builtin.FixedArray<\u03c4_0_0, \u03c4_0_1> | -| Builtin.FixedArray | BuiltinFixedArrayType | getName: | FixedArray | getCanonicalType: | Builtin.FixedArray | -| Builtin.FixedArray<\u03c4_0_0, \u03c4_0_1> | BuiltinFixedArrayType | getName: | FixedArray<4, Int> | getCanonicalType: | Builtin.FixedArray<4, Int> | -| Builtin.FixedArray<\u03c4_0_0, \u03c4_0_1> | BuiltinFixedArrayType | getName: | FixedArray<4, Int> | getCanonicalType: | Builtin.FixedArray | -| Builtin.FixedArray<\u03c4_0_0, \u03c4_0_1> | BuiltinFixedArrayType | getName: | FixedArray<4, Int> | getCanonicalType: | Builtin.FixedArray<\u03c4_0_0, \u03c4_0_1> | -| Builtin.FixedArray<\u03c4_0_0, \u03c4_0_1> | BuiltinFixedArrayType | getName: | FixedArray<4, Int> | getCanonicalType: | Builtin.FixedArray | -| Builtin.FixedArray<\u03c4_0_0, \u03c4_0_1> | BuiltinFixedArrayType | getName: | FixedArray | getCanonicalType: | Builtin.FixedArray<4, Int> | -| Builtin.FixedArray<\u03c4_0_0, \u03c4_0_1> | BuiltinFixedArrayType | getName: | FixedArray | getCanonicalType: | Builtin.FixedArray | -| Builtin.FixedArray<\u03c4_0_0, \u03c4_0_1> | BuiltinFixedArrayType | getName: | FixedArray | getCanonicalType: | Builtin.FixedArray<\u03c4_0_0, \u03c4_0_1> | -| Builtin.FixedArray<\u03c4_0_0, \u03c4_0_1> | BuiltinFixedArrayType | getName: | FixedArray | getCanonicalType: | Builtin.FixedArray | -| Builtin.FixedArray<\u03c4_0_0, \u03c4_0_1> | BuiltinFixedArrayType | getName: | FixedArray<\u03c4_0_0, \u03c4_0_1> | getCanonicalType: | Builtin.FixedArray<4, Int> | -| Builtin.FixedArray<\u03c4_0_0, \u03c4_0_1> | BuiltinFixedArrayType | getName: | FixedArray<\u03c4_0_0, \u03c4_0_1> | getCanonicalType: | Builtin.FixedArray | | Builtin.FixedArray<\u03c4_0_0, \u03c4_0_1> | BuiltinFixedArrayType | getName: | FixedArray<\u03c4_0_0, \u03c4_0_1> | getCanonicalType: | Builtin.FixedArray<\u03c4_0_0, \u03c4_0_1> | -| Builtin.FixedArray<\u03c4_0_0, \u03c4_0_1> | BuiltinFixedArrayType | getName: | FixedArray<\u03c4_0_0, \u03c4_0_1> | getCanonicalType: | Builtin.FixedArray | -| Builtin.FixedArray<\u03c4_0_0, \u03c4_0_1> | BuiltinFixedArrayType | getName: | FixedArray | getCanonicalType: | Builtin.FixedArray<4, Int> | -| Builtin.FixedArray<\u03c4_0_0, \u03c4_0_1> | BuiltinFixedArrayType | getName: | FixedArray | getCanonicalType: | Builtin.FixedArray | -| Builtin.FixedArray<\u03c4_0_0, \u03c4_0_1> | BuiltinFixedArrayType | getName: | FixedArray | getCanonicalType: | Builtin.FixedArray<\u03c4_0_0, \u03c4_0_1> | -| Builtin.FixedArray<\u03c4_0_0, \u03c4_0_1> | BuiltinFixedArrayType | getName: | FixedArray | getCanonicalType: | Builtin.FixedArray | -| Builtin.FixedArray | BuiltinFixedArrayType | getName: | FixedArray<4, Int> | getCanonicalType: | Builtin.FixedArray<4, Int> | -| Builtin.FixedArray | BuiltinFixedArrayType | getName: | FixedArray<4, Int> | getCanonicalType: | Builtin.FixedArray | -| Builtin.FixedArray | BuiltinFixedArrayType | getName: | FixedArray<4, Int> | getCanonicalType: | Builtin.FixedArray<\u03c4_0_0, \u03c4_0_1> | -| Builtin.FixedArray | BuiltinFixedArrayType | getName: | FixedArray<4, Int> | getCanonicalType: | Builtin.FixedArray | -| Builtin.FixedArray | BuiltinFixedArrayType | getName: | FixedArray | getCanonicalType: | Builtin.FixedArray<4, Int> | -| Builtin.FixedArray | BuiltinFixedArrayType | getName: | FixedArray | getCanonicalType: | Builtin.FixedArray | -| Builtin.FixedArray | BuiltinFixedArrayType | getName: | FixedArray | getCanonicalType: | Builtin.FixedArray<\u03c4_0_0, \u03c4_0_1> | -| Builtin.FixedArray | BuiltinFixedArrayType | getName: | FixedArray | getCanonicalType: | Builtin.FixedArray | -| Builtin.FixedArray | BuiltinFixedArrayType | getName: | FixedArray<\u03c4_0_0, \u03c4_0_1> | getCanonicalType: | Builtin.FixedArray<4, Int> | -| Builtin.FixedArray | BuiltinFixedArrayType | getName: | FixedArray<\u03c4_0_0, \u03c4_0_1> | getCanonicalType: | Builtin.FixedArray | -| Builtin.FixedArray | BuiltinFixedArrayType | getName: | FixedArray<\u03c4_0_0, \u03c4_0_1> | getCanonicalType: | Builtin.FixedArray<\u03c4_0_0, \u03c4_0_1> | -| Builtin.FixedArray | BuiltinFixedArrayType | getName: | FixedArray<\u03c4_0_0, \u03c4_0_1> | getCanonicalType: | Builtin.FixedArray | -| Builtin.FixedArray | BuiltinFixedArrayType | getName: | FixedArray | getCanonicalType: | Builtin.FixedArray<4, Int> | -| Builtin.FixedArray | BuiltinFixedArrayType | getName: | FixedArray | getCanonicalType: | Builtin.FixedArray | -| Builtin.FixedArray | BuiltinFixedArrayType | getName: | FixedArray | getCanonicalType: | Builtin.FixedArray<\u03c4_0_0, \u03c4_0_1> | -| Builtin.FixedArray | BuiltinFixedArrayType | getName: | FixedArray | getCanonicalType: | Builtin.FixedArray | | Builtin.IntLiteral | BuiltinIntegerLiteralType | getName: | IntLiteral | getCanonicalType: | Builtin.IntLiteral | | Builtin.Job | BuiltinJobType | getName: | Job | getCanonicalType: | Builtin.Job | | Builtin.NativeObject | BuiltinNativeObjectType | getName: | NativeObject | getCanonicalType: | Builtin.NativeObject | From 7bf78de167533dc217ce5aab4f165a7dd0ee78da Mon Sep 17 00:00:00 2001 From: Jeroen Ketema Date: Wed, 8 Apr 2026 15:42:10 +0200 Subject: [PATCH 079/157] Swift: Fix `AnyFunctionType` name mangling --- swift/extractor/mangler/SwiftMangler.cpp | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/swift/extractor/mangler/SwiftMangler.cpp b/swift/extractor/mangler/SwiftMangler.cpp index 76735bdc09f4..483c0ae73d20 100644 --- a/swift/extractor/mangler/SwiftMangler.cpp +++ b/swift/extractor/mangler/SwiftMangler.cpp @@ -314,9 +314,13 @@ SwiftMangledName SwiftMangler::visitAnyFunctionType(const swift::AnyFunctionType if (type->hasGlobalActor()) { ret << "_actor" << fetch(type->getGlobalActor()); } - if (type->getIsolation().isErased()) { + const auto& isolation = type->getIsolation(); + if (isolation.isErased()) { ret << "_isolated"; } + if (isolation.isNonIsolatedCaller()) { + ret << "_nonisolatednonsending"; + } // TODO: see if this needs to be used in identifying types, if not it needs to be removed from // type printing in the Swift compiler code assert(type->hasExtInfo() && "type must have ext info"); From 95681bfad48b508fafec3e3f96ae52287e567dd2 Mon Sep 17 00:00:00 2001 From: Geoffrey White <40627776+geoffw0@users.noreply.github.com> Date: Mon, 9 Mar 2026 15:06:20 +0000 Subject: [PATCH 080/157] Rust: Fix performance issue with File.fromSource. --- rust/ql/lib/codeql/files/FileSystem.qll | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/rust/ql/lib/codeql/files/FileSystem.qll b/rust/ql/lib/codeql/files/FileSystem.qll index cfab33b9a440..367f088504b4 100644 --- a/rust/ql/lib/codeql/files/FileSystem.qll +++ b/rust/ql/lib/codeql/files/FileSystem.qll @@ -45,13 +45,16 @@ extensible predicate additionalExternalFile(string relativePath); /** A file. */ class File extends Container, Impl::File { + pragma[nomagic] + private string getRelativePath0() { result = this.getRelativePath() } + /** * Holds if this file was extracted from the source code of the target project * (rather than another location such as inside a dependency). */ predicate fromSource() { exists(ExtractorStep s | s.getAction() = "Extract" and s.getFile() = this) and - not additionalExternalFile(this.getRelativePath()) + not additionalExternalFile(this.getRelativePath0()) } /** From 7833a0a2e818c850689c216877b418d6f7c4848c Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 9 Apr 2026 03:08:02 +0000 Subject: [PATCH 081/157] Bump gazelle from 0.47.0 to 0.50.0 Bumps [gazelle](https://github.com/bazel-contrib/bazel-gazelle) from 0.47.0 to 0.50.0. - [Release notes](https://github.com/bazel-contrib/bazel-gazelle/releases) - [Commits](https://github.com/bazel-contrib/bazel-gazelle/compare/v0.47.0...v0.50.0) --- updated-dependencies: - dependency-name: gazelle dependency-version: 0.50.0 dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] --- MODULE.bazel | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/MODULE.bazel b/MODULE.bazel index d5c2c8784e26..16b4a4691f8a 100644 --- a/MODULE.bazel +++ b/MODULE.bazel @@ -27,7 +27,7 @@ bazel_dep(name = "abseil-cpp", version = "20260107.1", repo_name = "absl") bazel_dep(name = "nlohmann_json", version = "3.11.3", repo_name = "json") bazel_dep(name = "fmt", version = "12.1.0-codeql.1") bazel_dep(name = "rules_kotlin", version = "2.2.2-codeql.1") -bazel_dep(name = "gazelle", version = "0.47.0") +bazel_dep(name = "gazelle", version = "0.50.0") bazel_dep(name = "rules_dotnet", version = "0.21.5-codeql.1") bazel_dep(name = "googletest", version = "1.17.0.bcr.2") bazel_dep(name = "rules_rust", version = "0.69.0") From d704b753c8fdd36d2efa180dfdef8fb37d44012b Mon Sep 17 00:00:00 2001 From: Tom Hvitved Date: Thu, 9 Apr 2026 09:18:08 +0200 Subject: [PATCH 082/157] Fix CP in `typeFlowParamType` Forgot to link `p` with `c` using `nodeEnclosingCallable(p, c)`. --- .../codeql/dataflow/internal/DataFlowImplCommon.qll | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/shared/dataflow/codeql/dataflow/internal/DataFlowImplCommon.qll b/shared/dataflow/codeql/dataflow/internal/DataFlowImplCommon.qll index b2d4d13b07d4..962a58c26f94 100644 --- a/shared/dataflow/codeql/dataflow/internal/DataFlowImplCommon.qll +++ b/shared/dataflow/codeql/dataflow/internal/DataFlowImplCommon.qll @@ -2115,11 +2115,13 @@ module MakeImplCommon Lang> { * context. */ private predicate typeFlowParamType(ParamNode p, Type t, boolean cc) { - exists(Callable c | - Input::dataFlowNonCallEntry(c, cc) and - if cc = true and exists(getSourceContextParameterNodeType(p)) - then t = getSourceContextParameterNodeType(p) - else trackedParamWithType(p, t, c) + exists(Callable c | Input::dataFlowNonCallEntry(c, cc) | + cc = true and + nodeEnclosingCallable(p, c) and + t = getSourceContextParameterNodeType(p) + or + (cc = false or not exists(getSourceContextParameterNodeType(p))) and + trackedParamWithType(p, t, c) ) or exists(Type t1, Type t2 | From e72c1166640ddddfae86897cf24443da0dc90dd7 Mon Sep 17 00:00:00 2001 From: Geoffrey White <40627776+geoffw0@users.noreply.github.com> Date: Thu, 9 Apr 2026 11:18:25 +0100 Subject: [PATCH 083/157] Rust: Proposed improved solution. --- rust/ql/lib/codeql/files/FileSystem.qll | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/rust/ql/lib/codeql/files/FileSystem.qll b/rust/ql/lib/codeql/files/FileSystem.qll index 367f088504b4..93ff7be604e0 100644 --- a/rust/ql/lib/codeql/files/FileSystem.qll +++ b/rust/ql/lib/codeql/files/FileSystem.qll @@ -46,7 +46,7 @@ extensible predicate additionalExternalFile(string relativePath); /** A file. */ class File extends Container, Impl::File { pragma[nomagic] - private string getRelativePath0() { result = this.getRelativePath() } + private predicate isAdditionalExternalFile() { additionalExternalFile(this.getRelativePath()) } /** * Holds if this file was extracted from the source code of the target project @@ -54,7 +54,7 @@ class File extends Container, Impl::File { */ predicate fromSource() { exists(ExtractorStep s | s.getAction() = "Extract" and s.getFile() = this) and - not additionalExternalFile(this.getRelativePath0()) + not this.isAdditionalExternalFile() } /** From d09e2f66cd2686bddf0640b66a4cfa296fdcf77f Mon Sep 17 00:00:00 2001 From: Jeroen Ketema Date: Wed, 8 Apr 2026 18:20:59 +0200 Subject: [PATCH 084/157] Swift: Assign indexes to `fileprivate` `ValueDecl`s At least in the case of function declarations there can be multiple identical ones within the same module, causing data set check errors if not differentiated. --- swift/extractor/mangler/SwiftMangler.cpp | 65 +++++++++++++++--------- swift/extractor/mangler/SwiftMangler.h | 19 ++++--- 2 files changed, 53 insertions(+), 31 deletions(-) diff --git a/swift/extractor/mangler/SwiftMangler.cpp b/swift/extractor/mangler/SwiftMangler.cpp index 483c0ae73d20..e9f46a9d3dca 100644 --- a/swift/extractor/mangler/SwiftMangler.cpp +++ b/swift/extractor/mangler/SwiftMangler.cpp @@ -40,8 +40,8 @@ std::string_view getTypeKindStr(const swift::TypeBase* type) { } // namespace -std::unordered_map - SwiftMangler::preloadedExtensionIndexes; +std::unordered_map + SwiftMangler::preloadedExtensionOrFilePrivateValueIndexes; SwiftMangledName SwiftMangler::initMangled(const swift::TypeBase* type) { return {getTypeKindStr(type), '_'}; @@ -75,6 +75,12 @@ SwiftMangledName SwiftMangler::visitValueDecl(const swift::ValueDecl* decl, bool if (decl->isStatic()) { ret << "|static"; } + if (decl->getFormalAccess() == swift::AccessLevel::FilePrivate) { + auto parent = getParent(decl); + auto index = getExtensionOrFilePrivateValueIndex(decl, parent); + ret << "|fileprivate" << index.index + << (index.kind == ExtensionOrFilePrivateValueKind::clang ? "_clang" : ""); + } return ret; } @@ -105,51 +111,63 @@ SwiftMangledName SwiftMangler::visitExtensionDecl(const swift::ExtensionDecl* de auto parent = getParent(decl); auto target = decl->getExtendedType(); - auto index = getExtensionIndex(decl, parent); + auto index = getExtensionOrFilePrivateValueIndex(decl, parent); return initMangled(decl) << fetch(target) << index.index - << (index.kind == ExtensionKind::clang ? "_clang" : ""); + << (index.kind == ExtensionOrFilePrivateValueKind::clang ? "_clang" + : ""); } -SwiftMangler::ExtensionIndex SwiftMangler::getExtensionIndex(const swift::ExtensionDecl* decl, - const swift::Decl* parent) { - // to avoid iterating multiple times on the parent of multiple extensions, we preload extension - // indexes once for each encountered parent into the `preloadedExtensionIndexes` mapping. - if (auto found = SwiftMangler::preloadedExtensionIndexes.find(decl); - found != SwiftMangler::preloadedExtensionIndexes.end()) { +SwiftMangler::ExtensionOrFilePrivateValueIndex SwiftMangler::getExtensionOrFilePrivateValueIndex( + const swift::Decl* decl, + const swift::Decl* parent) { + // to avoid iterating multiple times on the parent, we preload the indexes once for each + // encountered parent. + if (auto found = SwiftMangler::preloadedExtensionOrFilePrivateValueIndexes.find(decl); + found != SwiftMangler::preloadedExtensionOrFilePrivateValueIndexes.end()) { return found->second; } if (auto parentModule = llvm::dyn_cast(parent)) { llvm::SmallVector siblings; parentModule->getTopLevelDecls(siblings); - indexExtensions(siblings); + indexExtensionsAndFilePrivateValues(siblings); if (auto clangModule = parentModule->findUnderlyingClangModule()) { - indexClangExtensions(clangModule, decl->getASTContext().getClangModuleLoader()); + indexClangExtensionsAndFilePrivateValues(clangModule, + decl->getASTContext().getClangModuleLoader()); } } else if (auto iterableParent = llvm::dyn_cast(parent)) { - indexExtensions(iterableParent->getAllMembers()); + indexExtensionsAndFilePrivateValues(iterableParent->getAllMembers()); } else { // TODO use a generic logging handle for Swift entities here, once it's available CODEQL_ASSERT(false, "non-local context must be module or iterable decl context"); } - auto found = SwiftMangler::preloadedExtensionIndexes.find(decl); + auto found = SwiftMangler::preloadedExtensionOrFilePrivateValueIndexes.find(decl); // TODO use a generic logging handle for Swift entities here, once it's available - CODEQL_ASSERT(found != SwiftMangler::preloadedExtensionIndexes.end(), - "extension not found within parent"); + CODEQL_ASSERT(found != SwiftMangler::preloadedExtensionOrFilePrivateValueIndexes.end(), + "declaration not found within parent"); return found->second; } -void SwiftMangler::indexExtensions(llvm::ArrayRef siblings) { +bool SwiftMangler::isExtensionOrFilePrivateValue(const swift::Decl* decl) { + return decl->getKind() == swift::DeclKind::Extension || + (swift::isa(decl) && + swift::dyn_cast(decl)->getFormalAccess() == + swift::AccessLevel::FilePrivate); +} + +void SwiftMangler::indexExtensionsAndFilePrivateValues(llvm::ArrayRef siblings) { auto index = 0u; for (auto sibling : siblings) { - if (sibling->getKind() == swift::DeclKind::Extension) { - SwiftMangler::preloadedExtensionIndexes.try_emplace(sibling, ExtensionKind::swift, index); + if (isExtensionOrFilePrivateValue(sibling)) { + SwiftMangler::preloadedExtensionOrFilePrivateValueIndexes.try_emplace( + sibling, ExtensionOrFilePrivateValueKind::swift, index); index++; } } } -void SwiftMangler::indexClangExtensions(const clang::Module* clangModule, - swift::ClangModuleLoader* moduleLoader) { +void SwiftMangler::indexClangExtensionsAndFilePrivateValues( + const clang::Module* clangModule, + swift::ClangModuleLoader* moduleLoader) { if (!moduleLoader) { return; } @@ -160,8 +178,9 @@ void SwiftMangler::indexClangExtensions(const clang::Module* clangModule, llvm::SmallVector children; swiftSubmodule->getTopLevelDecls(children); for (const auto child : children) { - if (child->getKind() == swift::DeclKind::Extension) { - SwiftMangler::preloadedExtensionIndexes.try_emplace(child, ExtensionKind::clang, index); + if (isExtensionOrFilePrivateValue(child)) { + SwiftMangler::preloadedExtensionOrFilePrivateValueIndexes.try_emplace( + child, ExtensionOrFilePrivateValueKind::clang, index); index++; } } diff --git a/swift/extractor/mangler/SwiftMangler.h b/swift/extractor/mangler/SwiftMangler.h index bb3691013886..92175b5887b3 100644 --- a/swift/extractor/mangler/SwiftMangler.h +++ b/swift/extractor/mangler/SwiftMangler.h @@ -107,26 +107,29 @@ class SwiftMangler : private swift::TypeVisitor, SwiftMangledName visitPackExpansionType(const swift::PackExpansionType* type); private: - enum class ExtensionKind : bool { + enum class ExtensionOrFilePrivateValueKind : bool { swift, clang, }; - struct ExtensionIndex { - const ExtensionKind kind : 1; + struct ExtensionOrFilePrivateValueIndex { + const ExtensionOrFilePrivateValueKind kind : 1; const uint32_t index : 31; }; - static std::unordered_map preloadedExtensionIndexes; + static std::unordered_map + preloadedExtensionOrFilePrivateValueIndexes; virtual SwiftMangledName fetch(const swift::Decl* decl) = 0; virtual SwiftMangledName fetch(const swift::TypeBase* type) = 0; SwiftMangledName fetch(swift::Type type) { return fetch(type.getPointer()); } - void indexExtensions(llvm::ArrayRef siblings); - void indexClangExtensions(const clang::Module* clangModule, - swift::ClangModuleLoader* moduleLoader); - ExtensionIndex getExtensionIndex(const swift::ExtensionDecl* decl, const swift::Decl* parent); + bool isExtensionOrFilePrivateValue(const swift::Decl* decl); + void indexExtensionsAndFilePrivateValues(llvm::ArrayRef siblings); + void indexClangExtensionsAndFilePrivateValues(const clang::Module* clangModule, + swift::ClangModuleLoader* moduleLoader); + ExtensionOrFilePrivateValueIndex getExtensionOrFilePrivateValueIndex(const swift::Decl* decl, + const swift::Decl* parent); static SwiftMangledName initMangled(const swift::TypeBase* type); SwiftMangledName initMangled(const swift::Decl* decl); SwiftMangledName visitTypeDiscriminatedValueDecl(const swift::ValueDecl* decl); From 34b626e8bb0d00dc98da7826ec388a6191712280 Mon Sep 17 00:00:00 2001 From: Jeroen Ketema Date: Wed, 8 Apr 2026 18:51:55 +0200 Subject: [PATCH 085/157] Swift: Update expected integration test results --- .../integration-tests/posix/deduplication/BuiltinTypes.expected | 1 + 1 file changed, 1 insertion(+) diff --git a/swift/ql/integration-tests/posix/deduplication/BuiltinTypes.expected b/swift/ql/integration-tests/posix/deduplication/BuiltinTypes.expected index 0f0a0220445b..1ca837955b63 100644 --- a/swift/ql/integration-tests/posix/deduplication/BuiltinTypes.expected +++ b/swift/ql/integration-tests/posix/deduplication/BuiltinTypes.expected @@ -4,6 +4,7 @@ | Builtin.FPIEEE64 | BuiltinFloatType | | Builtin.FixedArray<\u03c4_0_0, \u03c4_0_1> | BuiltinFixedArrayType | | Builtin.FixedArray | BuiltinFixedArrayType | +| Builtin.FixedArray | BuiltinFixedArrayType | | Builtin.Int1 | BuiltinIntegerType | | Builtin.Int8 | BuiltinIntegerType | | Builtin.Int16 | BuiltinIntegerType | From 7879d0a006d6cc7814006f42dd19f8baada5c1e3 Mon Sep 17 00:00:00 2001 From: Jeroen Ketema Date: Thu, 9 Apr 2026 10:33:27 +0200 Subject: [PATCH 086/157] Swift: Fix `OpaqueTypeArchetypeType` name mangling --- swift/extractor/mangler/SwiftMangler.cpp | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/swift/extractor/mangler/SwiftMangler.cpp b/swift/extractor/mangler/SwiftMangler.cpp index e9f46a9d3dca..879bc8fe5160 100644 --- a/swift/extractor/mangler/SwiftMangler.cpp +++ b/swift/extractor/mangler/SwiftMangler.cpp @@ -451,7 +451,13 @@ SwiftMangledName SwiftMangler::visitArchetypeType(const swift::ArchetypeType* ty SwiftMangledName SwiftMangler::visitOpaqueTypeArchetypeType( const swift::OpaqueTypeArchetypeType* type) { - return visitArchetypeType(type) << fetch(type->getDecl()); + auto ret = visitArchetypeType(type) << fetch(type->getDecl()); + ret << '<'; + for (auto replacement : type->getSubstitutions().getReplacementTypes()) { + ret << fetch(replacement); + } + ret << '>'; + return ret; } SwiftMangledName SwiftMangler::visitExistentialArchetypeType( From 21937c2415b4a023ba5f31f4644caffaa2ed1ab5 Mon Sep 17 00:00:00 2001 From: Jeroen Ketema Date: Thu, 9 Apr 2026 14:09:00 +0200 Subject: [PATCH 087/157] Swift: Add dbscheme upgrade and downgrade scripts --- .../old.dbscheme | 2889 +++++++++++++++++ .../swift.dbscheme | 2885 ++++++++++++++++ .../upgrade.properties | 2 + .../old.dbscheme | 2885 ++++++++++++++++ .../swift.dbscheme | 2889 +++++++++++++++++ .../upgrade.properties | 2 + 6 files changed, 11552 insertions(+) create mode 100644 swift/downgrades/ee3053b673c901a325b361b18c50b18342752bf8/old.dbscheme create mode 100644 swift/downgrades/ee3053b673c901a325b361b18c50b18342752bf8/swift.dbscheme create mode 100644 swift/downgrades/ee3053b673c901a325b361b18c50b18342752bf8/upgrade.properties create mode 100644 swift/ql/lib/upgrades/33e5e5e03bd3f98322f4c67aefa81015be832b88/old.dbscheme create mode 100644 swift/ql/lib/upgrades/33e5e5e03bd3f98322f4c67aefa81015be832b88/swift.dbscheme create mode 100644 swift/ql/lib/upgrades/33e5e5e03bd3f98322f4c67aefa81015be832b88/upgrade.properties diff --git a/swift/downgrades/ee3053b673c901a325b361b18c50b18342752bf8/old.dbscheme b/swift/downgrades/ee3053b673c901a325b361b18c50b18342752bf8/old.dbscheme new file mode 100644 index 000000000000..ee3053b673c9 --- /dev/null +++ b/swift/downgrades/ee3053b673c901a325b361b18c50b18342752bf8/old.dbscheme @@ -0,0 +1,2889 @@ +// generated by codegen/codegen.py, do not edit + +// from prefix.dbscheme +/** + * The source location of the snapshot. + */ +sourceLocationPrefix( + string prefix: string ref +); + + +// from schema.py + +@element = + @file +| @generic_context +| @locatable +| @location +| @type +; + +#keyset[id] +element_is_unknown( + int id: @element ref +); + +@file = + @db_file +; + +#keyset[id] +files( + int id: @file ref, + string name: string ref +); + +#keyset[id] +file_is_successfully_extracted( + int id: @file ref +); + +@locatable = + @argument +| @ast_node +| @comment +| @diagnostics +| @error_element +; + +#keyset[id] +locatable_locations( + int id: @locatable ref, + int location: @location_or_none ref +); + +@location = + @db_location +; + +#keyset[id] +locations( + int id: @location ref, + int file: @file_or_none ref, + int start_line: int ref, + int start_column: int ref, + int end_line: int ref, + int end_column: int ref +); + +@ast_node = + @availability_info +| @availability_spec +| @callable +| @case_label_item +| @condition_element +| @decl +| @expr +| @key_path_component +| @macro_role +| @pattern +| @stmt +| @stmt_condition +| @type_repr +; + +comments( + unique int id: @comment, + string text: string ref +); + +db_files( + unique int id: @db_file +); + +db_locations( + unique int id: @db_location +); + +diagnostics( + unique int id: @diagnostics, + string text: string ref, + int kind: int ref +); + +@error_element = + @error_expr +| @error_type +| @overloaded_decl_ref_expr +| @unresolved_decl_ref_expr +| @unresolved_dot_expr +| @unresolved_member_chain_result_expr +| @unresolved_member_expr +| @unresolved_pattern_expr +| @unresolved_specialize_expr +| @unresolved_type +| @unresolved_type_conversion_expr +| @unspecified_element +; + +availability_infos( + unique int id: @availability_info +); + +#keyset[id] +availability_info_is_unavailable( + int id: @availability_info ref +); + +#keyset[id, index] +availability_info_specs( + int id: @availability_info ref, + int index: int ref, + int spec: @availability_spec_or_none ref +); + +availability_specs( + unique int id: @availability_spec +); + +#keyset[id] +availability_spec_platforms( + int id: @availability_spec ref, + string platform: string ref +); + +#keyset[id] +availability_spec_versions( + int id: @availability_spec ref, + string version: string ref +); + +#keyset[id] +availability_spec_is_wildcard( + int id: @availability_spec ref +); + +@callable = + @closure_expr +| @function +; + +#keyset[id] +callable_names( + int id: @callable ref, + string name: string ref +); + +#keyset[id] +callable_self_params( + int id: @callable ref, + int self_param: @param_decl_or_none ref +); + +#keyset[id, index] +callable_params( + int id: @callable ref, + int index: int ref, + int param: @param_decl_or_none ref +); + +#keyset[id] +callable_bodies( + int id: @callable ref, + int body: @brace_stmt_or_none ref +); + +#keyset[id, index] +callable_captures( + int id: @callable ref, + int index: int ref, + int capture: @captured_decl_or_none ref +); + +key_path_components( + unique int id: @key_path_component, + int kind: int ref, + int component_type: @type_or_none ref +); + +#keyset[id, index] +key_path_component_subscript_arguments( + int id: @key_path_component ref, + int index: int ref, + int subscript_argument: @argument_or_none ref +); + +#keyset[id] +key_path_component_tuple_indices( + int id: @key_path_component ref, + int tuple_index: int ref +); + +#keyset[id] +key_path_component_decl_refs( + int id: @key_path_component ref, + int decl_ref: @value_decl_or_none ref +); + +macro_roles( + unique int id: @macro_role, + int kind: int ref, + int macro_syntax: int ref +); + +#keyset[id, index] +macro_role_conformances( + int id: @macro_role ref, + int index: int ref, + int conformance: @expr_or_none ref +); + +#keyset[id, index] +macro_role_names( + int id: @macro_role ref, + int index: int ref, + string name: string ref +); + +unspecified_elements( + unique int id: @unspecified_element, + string property: string ref, + string error: string ref +); + +#keyset[id] +unspecified_element_parents( + int id: @unspecified_element ref, + int parent: @element ref +); + +#keyset[id] +unspecified_element_indices( + int id: @unspecified_element ref, + int index: int ref +); + +#keyset[id, index] +unspecified_element_children( + int id: @unspecified_element ref, + int index: int ref, + int child: @ast_node_or_none ref +); + +@decl = + @captured_decl +| @enum_case_decl +| @extension_decl +| @if_config_decl +| @import_decl +| @missing_member_decl +| @operator_decl +| @pattern_binding_decl +| @pound_diagnostic_decl +| @precedence_group_decl +| @top_level_code_decl +| @using_decl +| @value_decl +; + +#keyset[id] +decls( //dir=decl + int id: @decl ref, + int module: @module_decl_or_none ref +); + +#keyset[id, index] +decl_members( //dir=decl + int id: @decl ref, + int index: int ref, + int member: @decl_or_none ref +); + +@generic_context = + @extension_decl +| @function +| @generic_type_decl +| @macro_decl +| @subscript_decl +; + +#keyset[id, index] +generic_context_generic_type_params( //dir=decl + int id: @generic_context ref, + int index: int ref, + int generic_type_param: @generic_type_param_decl_or_none ref +); + +captured_decls( //dir=decl + unique int id: @captured_decl, + int decl: @value_decl_or_none ref +); + +#keyset[id] +captured_decl_is_direct( //dir=decl + int id: @captured_decl ref +); + +#keyset[id] +captured_decl_is_escaping( //dir=decl + int id: @captured_decl ref +); + +enum_case_decls( //dir=decl + unique int id: @enum_case_decl +); + +#keyset[id, index] +enum_case_decl_elements( //dir=decl + int id: @enum_case_decl ref, + int index: int ref, + int element: @enum_element_decl_or_none ref +); + +extension_decls( //dir=decl + unique int id: @extension_decl, + int extended_type_decl: @nominal_type_decl_or_none ref +); + +#keyset[id, index] +extension_decl_protocols( //dir=decl + int id: @extension_decl ref, + int index: int ref, + int protocol: @protocol_decl_or_none ref +); + +if_config_decls( //dir=decl + unique int id: @if_config_decl +); + +#keyset[id, index] +if_config_decl_active_elements( //dir=decl + int id: @if_config_decl ref, + int index: int ref, + int active_element: @ast_node_or_none ref +); + +import_decls( //dir=decl + unique int id: @import_decl +); + +#keyset[id] +import_decl_is_exported( //dir=decl + int id: @import_decl ref +); + +#keyset[id] +import_decl_imported_modules( //dir=decl + int id: @import_decl ref, + int imported_module: @module_decl_or_none ref +); + +#keyset[id, index] +import_decl_declarations( //dir=decl + int id: @import_decl ref, + int index: int ref, + int declaration: @value_decl_or_none ref +); + +missing_member_decls( //dir=decl + unique int id: @missing_member_decl, + string name: string ref +); + +@operator_decl = + @infix_operator_decl +| @postfix_operator_decl +| @prefix_operator_decl +; + +#keyset[id] +operator_decls( //dir=decl + int id: @operator_decl ref, + string name: string ref +); + +pattern_binding_decls( //dir=decl + unique int id: @pattern_binding_decl +); + +#keyset[id, index] +pattern_binding_decl_inits( //dir=decl + int id: @pattern_binding_decl ref, + int index: int ref, + int init: @expr_or_none ref +); + +#keyset[id, index] +pattern_binding_decl_patterns( //dir=decl + int id: @pattern_binding_decl ref, + int index: int ref, + int pattern: @pattern_or_none ref +); + +pound_diagnostic_decls( //dir=decl + unique int id: @pound_diagnostic_decl, + int kind: int ref, + int message: @string_literal_expr_or_none ref +); + +precedence_group_decls( //dir=decl + unique int id: @precedence_group_decl +); + +top_level_code_decls( //dir=decl + unique int id: @top_level_code_decl, + int body: @brace_stmt_or_none ref +); + +using_decls( //dir=decl + unique int id: @using_decl +); + +#keyset[id] +using_decl_is_main_actor( //dir=decl + int id: @using_decl ref +); + +#keyset[id] +using_decl_is_nonisolated( //dir=decl + int id: @using_decl ref +); + +@value_decl = + @abstract_storage_decl +| @enum_element_decl +| @function +| @macro_decl +| @type_decl +; + +#keyset[id] +value_decls( //dir=decl + int id: @value_decl ref, + int interface_type: @type_or_none ref +); + +@abstract_storage_decl = + @subscript_decl +| @var_decl +; + +#keyset[id, index] +abstract_storage_decl_accessors( //dir=decl + int id: @abstract_storage_decl ref, + int index: int ref, + int accessor: @accessor_or_none ref +); + +enum_element_decls( //dir=decl + unique int id: @enum_element_decl, + string name: string ref +); + +#keyset[id, index] +enum_element_decl_params( //dir=decl + int id: @enum_element_decl ref, + int index: int ref, + int param: @param_decl_or_none ref +); + +@function = + @accessor_or_named_function +| @deinitializer +| @initializer +; + +infix_operator_decls( //dir=decl + unique int id: @infix_operator_decl +); + +#keyset[id] +infix_operator_decl_precedence_groups( //dir=decl + int id: @infix_operator_decl ref, + int precedence_group: @precedence_group_decl_or_none ref +); + +macro_decls( //dir=decl + unique int id: @macro_decl, + string name: string ref +); + +#keyset[id, index] +macro_decl_parameters( //dir=decl + int id: @macro_decl ref, + int index: int ref, + int parameter: @param_decl_or_none ref +); + +#keyset[id, index] +macro_decl_roles( //dir=decl + int id: @macro_decl ref, + int index: int ref, + int role: @macro_role_or_none ref +); + +postfix_operator_decls( //dir=decl + unique int id: @postfix_operator_decl +); + +prefix_operator_decls( //dir=decl + unique int id: @prefix_operator_decl +); + +@type_decl = + @abstract_type_param_decl +| @generic_type_decl +| @module_decl +; + +#keyset[id] +type_decls( //dir=decl + int id: @type_decl ref, + string name: string ref +); + +#keyset[id, index] +type_decl_inherited_types( //dir=decl + int id: @type_decl ref, + int index: int ref, + int inherited_type: @type_or_none ref +); + +@abstract_type_param_decl = + @associated_type_decl +| @generic_type_param_decl +; + +@accessor_or_named_function = + @accessor +| @named_function +; + +deinitializers( //dir=decl + unique int id: @deinitializer +); + +@generic_type_decl = + @nominal_type_decl +| @opaque_type_decl +| @type_alias_decl +; + +initializers( //dir=decl + unique int id: @initializer +); + +module_decls( //dir=decl + unique int id: @module_decl +); + +#keyset[id] +module_decl_is_builtin_module( //dir=decl + int id: @module_decl ref +); + +#keyset[id] +module_decl_is_system_module( //dir=decl + int id: @module_decl ref +); + +module_decl_imported_modules( //dir=decl + int id: @module_decl ref, + int imported_module: @module_decl_or_none ref +); + +module_decl_exported_modules( //dir=decl + int id: @module_decl ref, + int exported_module: @module_decl_or_none ref +); + +subscript_decls( //dir=decl + unique int id: @subscript_decl, + int element_type: @type_or_none ref +); + +#keyset[id, index] +subscript_decl_params( //dir=decl + int id: @subscript_decl ref, + int index: int ref, + int param: @param_decl_or_none ref +); + +@var_decl = + @concrete_var_decl +| @param_decl +; + +#keyset[id] +var_decls( //dir=decl + int id: @var_decl ref, + string name: string ref, + int type_: @type_or_none ref +); + +#keyset[id] +var_decl_attached_property_wrapper_types( //dir=decl + int id: @var_decl ref, + int attached_property_wrapper_type: @type_or_none ref +); + +#keyset[id] +var_decl_parent_patterns( //dir=decl + int id: @var_decl ref, + int parent_pattern: @pattern_or_none ref +); + +#keyset[id] +var_decl_parent_initializers( //dir=decl + int id: @var_decl ref, + int parent_initializer: @expr_or_none ref +); + +#keyset[id] +var_decl_property_wrapper_backing_var_bindings( //dir=decl + int id: @var_decl ref, + int property_wrapper_backing_var_binding: @pattern_binding_decl_or_none ref +); + +#keyset[id] +var_decl_property_wrapper_backing_vars( //dir=decl + int id: @var_decl ref, + int property_wrapper_backing_var: @var_decl_or_none ref +); + +#keyset[id] +var_decl_property_wrapper_projection_var_bindings( //dir=decl + int id: @var_decl ref, + int property_wrapper_projection_var_binding: @pattern_binding_decl_or_none ref +); + +#keyset[id] +var_decl_property_wrapper_projection_vars( //dir=decl + int id: @var_decl ref, + int property_wrapper_projection_var: @var_decl_or_none ref +); + +accessors( //dir=decl + unique int id: @accessor +); + +#keyset[id] +accessor_is_getter( //dir=decl + int id: @accessor ref +); + +#keyset[id] +accessor_is_setter( //dir=decl + int id: @accessor ref +); + +#keyset[id] +accessor_is_will_set( //dir=decl + int id: @accessor ref +); + +#keyset[id] +accessor_is_did_set( //dir=decl + int id: @accessor ref +); + +#keyset[id] +accessor_is_read( //dir=decl + int id: @accessor ref +); + +#keyset[id] +accessor_is_modify( //dir=decl + int id: @accessor ref +); + +#keyset[id] +accessor_is_unsafe_address( //dir=decl + int id: @accessor ref +); + +#keyset[id] +accessor_is_unsafe_mutable_address( //dir=decl + int id: @accessor ref +); + +#keyset[id] +accessor_is_distributed_get( //dir=decl + int id: @accessor ref +); + +#keyset[id] +accessor_is_read2( //dir=decl + int id: @accessor ref +); + +#keyset[id] +accessor_is_modify2( //dir=decl + int id: @accessor ref +); + +#keyset[id] +accessor_is_init( //dir=decl + int id: @accessor ref +); + +associated_type_decls( //dir=decl + unique int id: @associated_type_decl +); + +concrete_var_decls( //dir=decl + unique int id: @concrete_var_decl, + int introducer_int: int ref +); + +generic_type_param_decls( //dir=decl + unique int id: @generic_type_param_decl +); + +named_functions( //dir=decl + unique int id: @named_function +); + +@nominal_type_decl = + @class_decl +| @enum_decl +| @protocol_decl +| @struct_decl +; + +#keyset[id] +nominal_type_decls( //dir=decl + int id: @nominal_type_decl ref, + int type_: @type_or_none ref +); + +opaque_type_decls( //dir=decl + unique int id: @opaque_type_decl, + int naming_declaration: @value_decl_or_none ref +); + +#keyset[id, index] +opaque_type_decl_opaque_generic_params( //dir=decl + int id: @opaque_type_decl ref, + int index: int ref, + int opaque_generic_param: @generic_type_param_type_or_none ref +); + +param_decls( //dir=decl + unique int id: @param_decl +); + +#keyset[id] +param_decl_is_inout( //dir=decl + int id: @param_decl ref +); + +#keyset[id] +param_decl_property_wrapper_local_wrapped_var_bindings( //dir=decl + int id: @param_decl ref, + int property_wrapper_local_wrapped_var_binding: @pattern_binding_decl_or_none ref +); + +#keyset[id] +param_decl_property_wrapper_local_wrapped_vars( //dir=decl + int id: @param_decl ref, + int property_wrapper_local_wrapped_var: @var_decl_or_none ref +); + +type_alias_decls( //dir=decl + unique int id: @type_alias_decl, + int aliased_type: @type_or_none ref +); + +class_decls( //dir=decl + unique int id: @class_decl +); + +enum_decls( //dir=decl + unique int id: @enum_decl +); + +protocol_decls( //dir=decl + unique int id: @protocol_decl +); + +struct_decls( //dir=decl + unique int id: @struct_decl +); + +arguments( //dir=expr + unique int id: @argument, + string label: string ref, + int expr: @expr_or_none ref +); + +@expr = + @any_try_expr +| @applied_property_wrapper_expr +| @apply_expr +| @assign_expr +| @bind_optional_expr +| @capture_list_expr +| @closure_expr +| @collection_expr +| @consume_expr +| @copy_expr +| @current_context_isolation_expr +| @decl_ref_expr +| @default_argument_expr +| @discard_assignment_expr +| @dot_syntax_base_ignored_expr +| @dynamic_type_expr +| @enum_is_case_expr +| @error_expr +| @explicit_cast_expr +| @extract_function_isolation_expr +| @force_value_expr +| @identity_expr +| @if_expr +| @implicit_conversion_expr +| @in_out_expr +| @key_path_application_expr +| @key_path_dot_expr +| @key_path_expr +| @lazy_initialization_expr +| @literal_expr +| @lookup_expr +| @make_temporarily_escapable_expr +| @materialize_pack_expr +| @obj_c_selector_expr +| @one_way_expr +| @opaque_value_expr +| @open_existential_expr +| @optional_evaluation_expr +| @other_initializer_ref_expr +| @overloaded_decl_ref_expr +| @pack_element_expr +| @pack_expansion_expr +| @property_wrapper_value_placeholder_expr +| @rebind_self_in_initializer_expr +| @sequence_expr +| @single_value_stmt_expr +| @super_ref_expr +| @tap_expr +| @tuple_element_expr +| @tuple_expr +| @type_expr +| @type_value_expr +| @unresolved_decl_ref_expr +| @unresolved_dot_expr +| @unresolved_member_expr +| @unresolved_pattern_expr +| @unresolved_specialize_expr +| @vararg_expansion_expr +; + +#keyset[id] +expr_types( //dir=expr + int id: @expr ref, + int type_: @type_or_none ref +); + +@any_try_expr = + @force_try_expr +| @optional_try_expr +| @try_expr +; + +#keyset[id] +any_try_exprs( //dir=expr + int id: @any_try_expr ref, + int sub_expr: @expr_or_none ref +); + +applied_property_wrapper_exprs( //dir=expr + unique int id: @applied_property_wrapper_expr, + int kind: int ref, + int value: @expr_or_none ref, + int param: @param_decl_or_none ref +); + +@apply_expr = + @binary_expr +| @call_expr +| @postfix_unary_expr +| @prefix_unary_expr +| @self_apply_expr +; + +#keyset[id] +apply_exprs( //dir=expr + int id: @apply_expr ref, + int function: @expr_or_none ref +); + +#keyset[id, index] +apply_expr_arguments( //dir=expr + int id: @apply_expr ref, + int index: int ref, + int argument: @argument_or_none ref +); + +assign_exprs( //dir=expr + unique int id: @assign_expr, + int dest: @expr_or_none ref, + int source: @expr_or_none ref +); + +bind_optional_exprs( //dir=expr + unique int id: @bind_optional_expr, + int sub_expr: @expr_or_none ref +); + +capture_list_exprs( //dir=expr + unique int id: @capture_list_expr, + int closure_body: @closure_expr_or_none ref +); + +#keyset[id, index] +capture_list_expr_binding_decls( //dir=expr + int id: @capture_list_expr ref, + int index: int ref, + int binding_decl: @pattern_binding_decl_or_none ref +); + +@closure_expr = + @auto_closure_expr +| @explicit_closure_expr +; + +@collection_expr = + @array_expr +| @dictionary_expr +; + +consume_exprs( //dir=expr + unique int id: @consume_expr, + int sub_expr: @expr_or_none ref +); + +copy_exprs( //dir=expr + unique int id: @copy_expr, + int sub_expr: @expr_or_none ref +); + +current_context_isolation_exprs( //dir=expr + unique int id: @current_context_isolation_expr, + int actor: @expr_or_none ref +); + +decl_ref_exprs( //dir=expr + unique int id: @decl_ref_expr, + int decl: @decl_or_none ref +); + +#keyset[id, index] +decl_ref_expr_replacement_types( //dir=expr + int id: @decl_ref_expr ref, + int index: int ref, + int replacement_type: @type_or_none ref +); + +#keyset[id] +decl_ref_expr_has_direct_to_storage_semantics( //dir=expr + int id: @decl_ref_expr ref +); + +#keyset[id] +decl_ref_expr_has_direct_to_implementation_semantics( //dir=expr + int id: @decl_ref_expr ref +); + +#keyset[id] +decl_ref_expr_has_ordinary_semantics( //dir=expr + int id: @decl_ref_expr ref +); + +#keyset[id] +decl_ref_expr_has_distributed_thunk_semantics( //dir=expr + int id: @decl_ref_expr ref +); + +default_argument_exprs( //dir=expr + unique int id: @default_argument_expr, + int param_decl: @param_decl_or_none ref, + int param_index: int ref +); + +#keyset[id] +default_argument_expr_caller_side_defaults( //dir=expr + int id: @default_argument_expr ref, + int caller_side_default: @expr_or_none ref +); + +discard_assignment_exprs( //dir=expr + unique int id: @discard_assignment_expr +); + +dot_syntax_base_ignored_exprs( //dir=expr + unique int id: @dot_syntax_base_ignored_expr, + int qualifier: @expr_or_none ref, + int sub_expr: @expr_or_none ref +); + +dynamic_type_exprs( //dir=expr + unique int id: @dynamic_type_expr, + int base: @expr_or_none ref +); + +enum_is_case_exprs( //dir=expr + unique int id: @enum_is_case_expr, + int sub_expr: @expr_or_none ref, + int element: @enum_element_decl_or_none ref +); + +error_exprs( //dir=expr + unique int id: @error_expr +); + +@explicit_cast_expr = + @checked_cast_expr +| @coerce_expr +; + +#keyset[id] +explicit_cast_exprs( //dir=expr + int id: @explicit_cast_expr ref, + int sub_expr: @expr_or_none ref +); + +extract_function_isolation_exprs( //dir=expr + unique int id: @extract_function_isolation_expr, + int function_expr: @expr_or_none ref +); + +force_value_exprs( //dir=expr + unique int id: @force_value_expr, + int sub_expr: @expr_or_none ref +); + +@identity_expr = + @await_expr +| @borrow_expr +| @dot_self_expr +| @paren_expr +| @unresolved_member_chain_result_expr +| @unsafe_expr +; + +#keyset[id] +identity_exprs( //dir=expr + int id: @identity_expr ref, + int sub_expr: @expr_or_none ref +); + +if_exprs( //dir=expr + unique int id: @if_expr, + int condition: @expr_or_none ref, + int then_expr: @expr_or_none ref, + int else_expr: @expr_or_none ref +); + +@implicit_conversion_expr = + @abi_safe_conversion_expr +| @actor_isolation_erasure_expr +| @any_hashable_erasure_expr +| @archetype_to_super_expr +| @array_to_pointer_expr +| @bridge_from_obj_c_expr +| @bridge_to_obj_c_expr +| @class_metatype_to_object_expr +| @collection_upcast_conversion_expr +| @conditional_bridge_from_obj_c_expr +| @covariant_function_conversion_expr +| @covariant_return_conversion_expr +| @derived_to_base_expr +| @destructure_tuple_expr +| @differentiable_function_expr +| @differentiable_function_extract_original_expr +| @erasure_expr +| @existential_metatype_to_object_expr +| @foreign_object_conversion_expr +| @function_conversion_expr +| @in_out_to_pointer_expr +| @inject_into_optional_expr +| @linear_function_expr +| @linear_function_extract_original_expr +| @linear_to_differentiable_function_expr +| @load_expr +| @metatype_conversion_expr +| @pointer_to_pointer_expr +| @protocol_metatype_to_object_expr +| @string_to_pointer_expr +| @underlying_to_opaque_expr +| @unevaluated_instance_expr +| @unreachable_expr +| @unresolved_type_conversion_expr +| @unsafe_cast_expr +; + +#keyset[id] +implicit_conversion_exprs( //dir=expr + int id: @implicit_conversion_expr ref, + int sub_expr: @expr_or_none ref +); + +in_out_exprs( //dir=expr + unique int id: @in_out_expr, + int sub_expr: @expr_or_none ref +); + +key_path_application_exprs( //dir=expr + unique int id: @key_path_application_expr, + int base: @expr_or_none ref, + int key_path: @expr_or_none ref +); + +key_path_dot_exprs( //dir=expr + unique int id: @key_path_dot_expr +); + +key_path_exprs( //dir=expr + unique int id: @key_path_expr +); + +#keyset[id] +key_path_expr_roots( //dir=expr + int id: @key_path_expr ref, + int root: @type_repr_or_none ref +); + +#keyset[id, index] +key_path_expr_components( //dir=expr + int id: @key_path_expr ref, + int index: int ref, + int component: @key_path_component_or_none ref +); + +lazy_initialization_exprs( //dir=expr + unique int id: @lazy_initialization_expr, + int sub_expr: @expr_or_none ref +); + +@literal_expr = + @builtin_literal_expr +| @interpolated_string_literal_expr +| @nil_literal_expr +| @object_literal_expr +| @regex_literal_expr +; + +@lookup_expr = + @dynamic_lookup_expr +| @member_ref_expr +| @subscript_expr +; + +#keyset[id] +lookup_exprs( //dir=expr + int id: @lookup_expr ref, + int base: @expr_or_none ref +); + +#keyset[id] +lookup_expr_members( //dir=expr + int id: @lookup_expr ref, + int member: @decl_or_none ref +); + +make_temporarily_escapable_exprs( //dir=expr + unique int id: @make_temporarily_escapable_expr, + int escaping_closure: @opaque_value_expr_or_none ref, + int nonescaping_closure: @expr_or_none ref, + int sub_expr: @expr_or_none ref +); + +materialize_pack_exprs( //dir=expr + unique int id: @materialize_pack_expr, + int sub_expr: @expr_or_none ref +); + +obj_c_selector_exprs( //dir=expr + unique int id: @obj_c_selector_expr, + int sub_expr: @expr_or_none ref, + int method: @function_or_none ref +); + +one_way_exprs( //dir=expr + unique int id: @one_way_expr, + int sub_expr: @expr_or_none ref +); + +opaque_value_exprs( //dir=expr + unique int id: @opaque_value_expr +); + +open_existential_exprs( //dir=expr + unique int id: @open_existential_expr, + int sub_expr: @expr_or_none ref, + int existential: @expr_or_none ref, + int opaque_expr: @opaque_value_expr_or_none ref +); + +optional_evaluation_exprs( //dir=expr + unique int id: @optional_evaluation_expr, + int sub_expr: @expr_or_none ref +); + +other_initializer_ref_exprs( //dir=expr + unique int id: @other_initializer_ref_expr, + int initializer: @initializer_or_none ref +); + +overloaded_decl_ref_exprs( //dir=expr + unique int id: @overloaded_decl_ref_expr +); + +#keyset[id, index] +overloaded_decl_ref_expr_possible_declarations( //dir=expr + int id: @overloaded_decl_ref_expr ref, + int index: int ref, + int possible_declaration: @value_decl_or_none ref +); + +pack_element_exprs( //dir=expr + unique int id: @pack_element_expr, + int sub_expr: @expr_or_none ref +); + +pack_expansion_exprs( //dir=expr + unique int id: @pack_expansion_expr, + int pattern_expr: @expr_or_none ref +); + +property_wrapper_value_placeholder_exprs( //dir=expr + unique int id: @property_wrapper_value_placeholder_expr, + int placeholder: @opaque_value_expr_or_none ref +); + +#keyset[id] +property_wrapper_value_placeholder_expr_wrapped_values( //dir=expr + int id: @property_wrapper_value_placeholder_expr ref, + int wrapped_value: @expr_or_none ref +); + +rebind_self_in_initializer_exprs( //dir=expr + unique int id: @rebind_self_in_initializer_expr, + int sub_expr: @expr_or_none ref, + int self: @var_decl_or_none ref +); + +sequence_exprs( //dir=expr + unique int id: @sequence_expr +); + +#keyset[id, index] +sequence_expr_elements( //dir=expr + int id: @sequence_expr ref, + int index: int ref, + int element: @expr_or_none ref +); + +single_value_stmt_exprs( //dir=expr + unique int id: @single_value_stmt_expr, + int stmt: @stmt_or_none ref +); + +super_ref_exprs( //dir=expr + unique int id: @super_ref_expr, + int self: @var_decl_or_none ref +); + +tap_exprs( //dir=expr + unique int id: @tap_expr, + int body: @brace_stmt_or_none ref, + int var: @var_decl_or_none ref +); + +#keyset[id] +tap_expr_sub_exprs( //dir=expr + int id: @tap_expr ref, + int sub_expr: @expr_or_none ref +); + +tuple_element_exprs( //dir=expr + unique int id: @tuple_element_expr, + int sub_expr: @expr_or_none ref, + int index: int ref +); + +tuple_exprs( //dir=expr + unique int id: @tuple_expr +); + +#keyset[id, index] +tuple_expr_elements( //dir=expr + int id: @tuple_expr ref, + int index: int ref, + int element: @expr_or_none ref +); + +type_exprs( //dir=expr + unique int id: @type_expr +); + +#keyset[id] +type_expr_type_reprs( //dir=expr + int id: @type_expr ref, + int type_repr: @type_repr_or_none ref +); + +type_value_exprs( //dir=expr + unique int id: @type_value_expr, + int type_repr: @type_repr_or_none ref +); + +unresolved_decl_ref_exprs( //dir=expr + unique int id: @unresolved_decl_ref_expr +); + +#keyset[id] +unresolved_decl_ref_expr_names( //dir=expr + int id: @unresolved_decl_ref_expr ref, + string name: string ref +); + +unresolved_dot_exprs( //dir=expr + unique int id: @unresolved_dot_expr, + int base: @expr_or_none ref, + string name: string ref +); + +unresolved_member_exprs( //dir=expr + unique int id: @unresolved_member_expr, + string name: string ref +); + +unresolved_pattern_exprs( //dir=expr + unique int id: @unresolved_pattern_expr, + int sub_pattern: @pattern_or_none ref +); + +unresolved_specialize_exprs( //dir=expr + unique int id: @unresolved_specialize_expr, + int sub_expr: @expr_or_none ref +); + +vararg_expansion_exprs( //dir=expr + unique int id: @vararg_expansion_expr, + int sub_expr: @expr_or_none ref +); + +abi_safe_conversion_exprs( //dir=expr + unique int id: @abi_safe_conversion_expr +); + +actor_isolation_erasure_exprs( //dir=expr + unique int id: @actor_isolation_erasure_expr +); + +any_hashable_erasure_exprs( //dir=expr + unique int id: @any_hashable_erasure_expr +); + +archetype_to_super_exprs( //dir=expr + unique int id: @archetype_to_super_expr +); + +array_exprs( //dir=expr + unique int id: @array_expr +); + +#keyset[id, index] +array_expr_elements( //dir=expr + int id: @array_expr ref, + int index: int ref, + int element: @expr_or_none ref +); + +array_to_pointer_exprs( //dir=expr + unique int id: @array_to_pointer_expr +); + +auto_closure_exprs( //dir=expr + unique int id: @auto_closure_expr +); + +await_exprs( //dir=expr + unique int id: @await_expr +); + +binary_exprs( //dir=expr + unique int id: @binary_expr +); + +borrow_exprs( //dir=expr + unique int id: @borrow_expr +); + +bridge_from_obj_c_exprs( //dir=expr + unique int id: @bridge_from_obj_c_expr +); + +bridge_to_obj_c_exprs( //dir=expr + unique int id: @bridge_to_obj_c_expr +); + +@builtin_literal_expr = + @boolean_literal_expr +| @magic_identifier_literal_expr +| @number_literal_expr +| @string_literal_expr +; + +call_exprs( //dir=expr + unique int id: @call_expr +); + +@checked_cast_expr = + @conditional_checked_cast_expr +| @forced_checked_cast_expr +| @is_expr +; + +class_metatype_to_object_exprs( //dir=expr + unique int id: @class_metatype_to_object_expr +); + +coerce_exprs( //dir=expr + unique int id: @coerce_expr +); + +collection_upcast_conversion_exprs( //dir=expr + unique int id: @collection_upcast_conversion_expr +); + +conditional_bridge_from_obj_c_exprs( //dir=expr + unique int id: @conditional_bridge_from_obj_c_expr +); + +covariant_function_conversion_exprs( //dir=expr + unique int id: @covariant_function_conversion_expr +); + +covariant_return_conversion_exprs( //dir=expr + unique int id: @covariant_return_conversion_expr +); + +derived_to_base_exprs( //dir=expr + unique int id: @derived_to_base_expr +); + +destructure_tuple_exprs( //dir=expr + unique int id: @destructure_tuple_expr +); + +dictionary_exprs( //dir=expr + unique int id: @dictionary_expr +); + +#keyset[id, index] +dictionary_expr_elements( //dir=expr + int id: @dictionary_expr ref, + int index: int ref, + int element: @expr_or_none ref +); + +differentiable_function_exprs( //dir=expr + unique int id: @differentiable_function_expr +); + +differentiable_function_extract_original_exprs( //dir=expr + unique int id: @differentiable_function_extract_original_expr +); + +dot_self_exprs( //dir=expr + unique int id: @dot_self_expr +); + +@dynamic_lookup_expr = + @dynamic_member_ref_expr +| @dynamic_subscript_expr +; + +erasure_exprs( //dir=expr + unique int id: @erasure_expr +); + +existential_metatype_to_object_exprs( //dir=expr + unique int id: @existential_metatype_to_object_expr +); + +explicit_closure_exprs( //dir=expr + unique int id: @explicit_closure_expr +); + +force_try_exprs( //dir=expr + unique int id: @force_try_expr +); + +foreign_object_conversion_exprs( //dir=expr + unique int id: @foreign_object_conversion_expr +); + +function_conversion_exprs( //dir=expr + unique int id: @function_conversion_expr +); + +in_out_to_pointer_exprs( //dir=expr + unique int id: @in_out_to_pointer_expr +); + +inject_into_optional_exprs( //dir=expr + unique int id: @inject_into_optional_expr +); + +interpolated_string_literal_exprs( //dir=expr + unique int id: @interpolated_string_literal_expr +); + +#keyset[id] +interpolated_string_literal_expr_interpolation_exprs( //dir=expr + int id: @interpolated_string_literal_expr ref, + int interpolation_expr: @opaque_value_expr_or_none ref +); + +#keyset[id] +interpolated_string_literal_expr_appending_exprs( //dir=expr + int id: @interpolated_string_literal_expr ref, + int appending_expr: @tap_expr_or_none ref +); + +linear_function_exprs( //dir=expr + unique int id: @linear_function_expr +); + +linear_function_extract_original_exprs( //dir=expr + unique int id: @linear_function_extract_original_expr +); + +linear_to_differentiable_function_exprs( //dir=expr + unique int id: @linear_to_differentiable_function_expr +); + +load_exprs( //dir=expr + unique int id: @load_expr +); + +member_ref_exprs( //dir=expr + unique int id: @member_ref_expr +); + +#keyset[id] +member_ref_expr_has_direct_to_storage_semantics( //dir=expr + int id: @member_ref_expr ref +); + +#keyset[id] +member_ref_expr_has_direct_to_implementation_semantics( //dir=expr + int id: @member_ref_expr ref +); + +#keyset[id] +member_ref_expr_has_ordinary_semantics( //dir=expr + int id: @member_ref_expr ref +); + +#keyset[id] +member_ref_expr_has_distributed_thunk_semantics( //dir=expr + int id: @member_ref_expr ref +); + +metatype_conversion_exprs( //dir=expr + unique int id: @metatype_conversion_expr +); + +nil_literal_exprs( //dir=expr + unique int id: @nil_literal_expr +); + +object_literal_exprs( //dir=expr + unique int id: @object_literal_expr, + int kind: int ref +); + +#keyset[id, index] +object_literal_expr_arguments( //dir=expr + int id: @object_literal_expr ref, + int index: int ref, + int argument: @argument_or_none ref +); + +optional_try_exprs( //dir=expr + unique int id: @optional_try_expr +); + +paren_exprs( //dir=expr + unique int id: @paren_expr +); + +pointer_to_pointer_exprs( //dir=expr + unique int id: @pointer_to_pointer_expr +); + +postfix_unary_exprs( //dir=expr + unique int id: @postfix_unary_expr +); + +prefix_unary_exprs( //dir=expr + unique int id: @prefix_unary_expr +); + +protocol_metatype_to_object_exprs( //dir=expr + unique int id: @protocol_metatype_to_object_expr +); + +regex_literal_exprs( //dir=expr + unique int id: @regex_literal_expr, + string pattern: string ref, + int version: int ref +); + +@self_apply_expr = + @dot_syntax_call_expr +| @initializer_ref_call_expr +; + +#keyset[id] +self_apply_exprs( //dir=expr + int id: @self_apply_expr ref, + int base: @expr_or_none ref +); + +string_to_pointer_exprs( //dir=expr + unique int id: @string_to_pointer_expr +); + +subscript_exprs( //dir=expr + unique int id: @subscript_expr +); + +#keyset[id, index] +subscript_expr_arguments( //dir=expr + int id: @subscript_expr ref, + int index: int ref, + int argument: @argument_or_none ref +); + +#keyset[id] +subscript_expr_has_direct_to_storage_semantics( //dir=expr + int id: @subscript_expr ref +); + +#keyset[id] +subscript_expr_has_direct_to_implementation_semantics( //dir=expr + int id: @subscript_expr ref +); + +#keyset[id] +subscript_expr_has_ordinary_semantics( //dir=expr + int id: @subscript_expr ref +); + +#keyset[id] +subscript_expr_has_distributed_thunk_semantics( //dir=expr + int id: @subscript_expr ref +); + +try_exprs( //dir=expr + unique int id: @try_expr +); + +underlying_to_opaque_exprs( //dir=expr + unique int id: @underlying_to_opaque_expr +); + +unevaluated_instance_exprs( //dir=expr + unique int id: @unevaluated_instance_expr +); + +unreachable_exprs( //dir=expr + unique int id: @unreachable_expr +); + +unresolved_member_chain_result_exprs( //dir=expr + unique int id: @unresolved_member_chain_result_expr +); + +unresolved_type_conversion_exprs( //dir=expr + unique int id: @unresolved_type_conversion_expr +); + +unsafe_cast_exprs( //dir=expr + unique int id: @unsafe_cast_expr +); + +unsafe_exprs( //dir=expr + unique int id: @unsafe_expr +); + +boolean_literal_exprs( //dir=expr + unique int id: @boolean_literal_expr, + boolean value: boolean ref +); + +conditional_checked_cast_exprs( //dir=expr + unique int id: @conditional_checked_cast_expr +); + +dot_syntax_call_exprs( //dir=expr + unique int id: @dot_syntax_call_expr +); + +dynamic_member_ref_exprs( //dir=expr + unique int id: @dynamic_member_ref_expr +); + +dynamic_subscript_exprs( //dir=expr + unique int id: @dynamic_subscript_expr +); + +forced_checked_cast_exprs( //dir=expr + unique int id: @forced_checked_cast_expr +); + +initializer_ref_call_exprs( //dir=expr + unique int id: @initializer_ref_call_expr +); + +is_exprs( //dir=expr + unique int id: @is_expr +); + +magic_identifier_literal_exprs( //dir=expr + unique int id: @magic_identifier_literal_expr, + string kind: string ref +); + +@number_literal_expr = + @float_literal_expr +| @integer_literal_expr +; + +string_literal_exprs( //dir=expr + unique int id: @string_literal_expr, + string value: string ref +); + +float_literal_exprs( //dir=expr + unique int id: @float_literal_expr, + string string_value: string ref +); + +integer_literal_exprs( //dir=expr + unique int id: @integer_literal_expr, + string string_value: string ref +); + +@pattern = + @any_pattern +| @binding_pattern +| @bool_pattern +| @enum_element_pattern +| @expr_pattern +| @is_pattern +| @named_pattern +| @optional_some_pattern +| @paren_pattern +| @tuple_pattern +| @typed_pattern +; + +#keyset[id] +pattern_types( //dir=pattern + int id: @pattern ref, + int type_: @type_or_none ref +); + +any_patterns( //dir=pattern + unique int id: @any_pattern +); + +binding_patterns( //dir=pattern + unique int id: @binding_pattern, + int sub_pattern: @pattern_or_none ref +); + +bool_patterns( //dir=pattern + unique int id: @bool_pattern, + boolean value: boolean ref +); + +enum_element_patterns( //dir=pattern + unique int id: @enum_element_pattern, + int element: @enum_element_decl_or_none ref +); + +#keyset[id] +enum_element_pattern_sub_patterns( //dir=pattern + int id: @enum_element_pattern ref, + int sub_pattern: @pattern_or_none ref +); + +expr_patterns( //dir=pattern + unique int id: @expr_pattern, + int sub_expr: @expr_or_none ref +); + +is_patterns( //dir=pattern + unique int id: @is_pattern +); + +#keyset[id] +is_pattern_cast_type_reprs( //dir=pattern + int id: @is_pattern ref, + int cast_type_repr: @type_repr_or_none ref +); + +#keyset[id] +is_pattern_sub_patterns( //dir=pattern + int id: @is_pattern ref, + int sub_pattern: @pattern_or_none ref +); + +named_patterns( //dir=pattern + unique int id: @named_pattern, + int var_decl: @var_decl_or_none ref +); + +optional_some_patterns( //dir=pattern + unique int id: @optional_some_pattern, + int sub_pattern: @pattern_or_none ref +); + +paren_patterns( //dir=pattern + unique int id: @paren_pattern, + int sub_pattern: @pattern_or_none ref +); + +tuple_patterns( //dir=pattern + unique int id: @tuple_pattern +); + +#keyset[id, index] +tuple_pattern_elements( //dir=pattern + int id: @tuple_pattern ref, + int index: int ref, + int element: @pattern_or_none ref +); + +typed_patterns( //dir=pattern + unique int id: @typed_pattern, + int sub_pattern: @pattern_or_none ref +); + +#keyset[id] +typed_pattern_type_reprs( //dir=pattern + int id: @typed_pattern ref, + int type_repr: @type_repr_or_none ref +); + +case_label_items( //dir=stmt + unique int id: @case_label_item, + int pattern: @pattern_or_none ref +); + +#keyset[id] +case_label_item_guards( //dir=stmt + int id: @case_label_item ref, + int guard: @expr_or_none ref +); + +condition_elements( //dir=stmt + unique int id: @condition_element +); + +#keyset[id] +condition_element_booleans( //dir=stmt + int id: @condition_element ref, + int boolean_: @expr_or_none ref +); + +#keyset[id] +condition_element_patterns( //dir=stmt + int id: @condition_element ref, + int pattern: @pattern_or_none ref +); + +#keyset[id] +condition_element_initializers( //dir=stmt + int id: @condition_element ref, + int initializer: @expr_or_none ref +); + +#keyset[id] +condition_element_availabilities( //dir=stmt + int id: @condition_element ref, + int availability: @availability_info_or_none ref +); + +@stmt = + @brace_stmt +| @break_stmt +| @case_stmt +| @continue_stmt +| @defer_stmt +| @discard_stmt +| @fail_stmt +| @fallthrough_stmt +| @labeled_stmt +| @pound_assert_stmt +| @return_stmt +| @then_stmt +| @throw_stmt +| @yield_stmt +; + +stmt_conditions( //dir=stmt + unique int id: @stmt_condition +); + +#keyset[id, index] +stmt_condition_elements( //dir=stmt + int id: @stmt_condition ref, + int index: int ref, + int element: @condition_element_or_none ref +); + +brace_stmts( //dir=stmt + unique int id: @brace_stmt +); + +#keyset[id, index] +brace_stmt_elements( //dir=stmt + int id: @brace_stmt ref, + int index: int ref, + int element: @ast_node_or_none ref +); + +break_stmts( //dir=stmt + unique int id: @break_stmt +); + +#keyset[id] +break_stmt_target_names( //dir=stmt + int id: @break_stmt ref, + string target_name: string ref +); + +#keyset[id] +break_stmt_targets( //dir=stmt + int id: @break_stmt ref, + int target: @stmt_or_none ref +); + +case_stmts( //dir=stmt + unique int id: @case_stmt, + int body: @stmt_or_none ref +); + +#keyset[id, index] +case_stmt_labels( //dir=stmt + int id: @case_stmt ref, + int index: int ref, + int label: @case_label_item_or_none ref +); + +#keyset[id, index] +case_stmt_variables( //dir=stmt + int id: @case_stmt ref, + int index: int ref, + int variable: @var_decl_or_none ref +); + +continue_stmts( //dir=stmt + unique int id: @continue_stmt +); + +#keyset[id] +continue_stmt_target_names( //dir=stmt + int id: @continue_stmt ref, + string target_name: string ref +); + +#keyset[id] +continue_stmt_targets( //dir=stmt + int id: @continue_stmt ref, + int target: @stmt_or_none ref +); + +defer_stmts( //dir=stmt + unique int id: @defer_stmt, + int body: @brace_stmt_or_none ref +); + +discard_stmts( //dir=stmt + unique int id: @discard_stmt, + int sub_expr: @expr_or_none ref +); + +fail_stmts( //dir=stmt + unique int id: @fail_stmt +); + +fallthrough_stmts( //dir=stmt + unique int id: @fallthrough_stmt, + int fallthrough_source: @case_stmt_or_none ref, + int fallthrough_dest: @case_stmt_or_none ref +); + +@labeled_stmt = + @do_catch_stmt +| @do_stmt +| @for_each_stmt +| @labeled_conditional_stmt +| @repeat_while_stmt +| @switch_stmt +; + +#keyset[id] +labeled_stmt_labels( //dir=stmt + int id: @labeled_stmt ref, + string label: string ref +); + +pound_assert_stmts( //dir=stmt + unique int id: @pound_assert_stmt, + int condition: @expr_or_none ref, + string message: string ref +); + +return_stmts( //dir=stmt + unique int id: @return_stmt +); + +#keyset[id] +return_stmt_results( //dir=stmt + int id: @return_stmt ref, + int result: @expr_or_none ref +); + +then_stmts( //dir=stmt + unique int id: @then_stmt, + int result: @expr_or_none ref +); + +throw_stmts( //dir=stmt + unique int id: @throw_stmt, + int sub_expr: @expr_or_none ref +); + +yield_stmts( //dir=stmt + unique int id: @yield_stmt +); + +#keyset[id, index] +yield_stmt_results( //dir=stmt + int id: @yield_stmt ref, + int index: int ref, + int result: @expr_or_none ref +); + +do_catch_stmts( //dir=stmt + unique int id: @do_catch_stmt, + int body: @stmt_or_none ref +); + +#keyset[id, index] +do_catch_stmt_catches( //dir=stmt + int id: @do_catch_stmt ref, + int index: int ref, + int catch: @case_stmt_or_none ref +); + +do_stmts( //dir=stmt + unique int id: @do_stmt, + int body: @brace_stmt_or_none ref +); + +for_each_stmts( //dir=stmt + unique int id: @for_each_stmt, + int pattern: @pattern_or_none ref, + int body: @brace_stmt_or_none ref +); + +#keyset[id, index] +for_each_stmt_variables( //dir=stmt + int id: @for_each_stmt ref, + int index: int ref, + int variable: @var_decl_or_none ref +); + +#keyset[id] +for_each_stmt_wheres( //dir=stmt + int id: @for_each_stmt ref, + int where: @expr_or_none ref +); + +#keyset[id] +for_each_stmt_iterator_vars( //dir=stmt + int id: @for_each_stmt ref, + int iteratorVar: @pattern_binding_decl_or_none ref +); + +#keyset[id] +for_each_stmt_next_calls( //dir=stmt + int id: @for_each_stmt ref, + int nextCall: @expr_or_none ref +); + +@labeled_conditional_stmt = + @guard_stmt +| @if_stmt +| @while_stmt +; + +#keyset[id] +labeled_conditional_stmts( //dir=stmt + int id: @labeled_conditional_stmt ref, + int condition: @stmt_condition_or_none ref +); + +repeat_while_stmts( //dir=stmt + unique int id: @repeat_while_stmt, + int condition: @expr_or_none ref, + int body: @stmt_or_none ref +); + +switch_stmts( //dir=stmt + unique int id: @switch_stmt, + int expr: @expr_or_none ref +); + +#keyset[id, index] +switch_stmt_cases( //dir=stmt + int id: @switch_stmt ref, + int index: int ref, + int case_: @case_stmt_or_none ref +); + +guard_stmts( //dir=stmt + unique int id: @guard_stmt, + int body: @brace_stmt_or_none ref +); + +if_stmts( //dir=stmt + unique int id: @if_stmt, + int then: @stmt_or_none ref +); + +#keyset[id] +if_stmt_elses( //dir=stmt + int id: @if_stmt ref, + int else: @stmt_or_none ref +); + +while_stmts( //dir=stmt + unique int id: @while_stmt, + int body: @stmt_or_none ref +); + +@type = + @any_function_type +| @any_generic_type +| @any_metatype_type +| @builtin_type +| @dependent_member_type +| @dynamic_self_type +| @error_type +| @existential_type +| @in_out_type +| @integer_type +| @l_value_type +| @module_type +| @pack_element_type +| @pack_expansion_type +| @pack_type +| @parameterized_protocol_type +| @protocol_composition_type +| @reference_storage_type +| @substitutable_type +| @sugar_type +| @tuple_type +| @unresolved_type +; + +#keyset[id] +types( //dir=type + int id: @type ref, + string name: string ref, + int canonical_type: @type_or_none ref +); + +type_reprs( //dir=type + unique int id: @type_repr, + int type_: @type_or_none ref +); + +@any_function_type = + @function_type +| @generic_function_type +; + +#keyset[id] +any_function_types( //dir=type + int id: @any_function_type ref, + int result: @type_or_none ref +); + +#keyset[id, index] +any_function_type_param_types( //dir=type + int id: @any_function_type ref, + int index: int ref, + int param_type: @type_or_none ref +); + +#keyset[id] +any_function_type_is_throwing( //dir=type + int id: @any_function_type ref +); + +#keyset[id] +any_function_type_is_async( //dir=type + int id: @any_function_type ref +); + +@any_generic_type = + @nominal_or_bound_generic_nominal_type +| @unbound_generic_type +; + +#keyset[id] +any_generic_types( //dir=type + int id: @any_generic_type ref, + int declaration: @generic_type_decl_or_none ref +); + +#keyset[id] +any_generic_type_parents( //dir=type + int id: @any_generic_type ref, + int parent: @type_or_none ref +); + +@any_metatype_type = + @existential_metatype_type +| @metatype_type +; + +@builtin_type = + @any_builtin_integer_type +| @builtin_bridge_object_type +| @builtin_default_actor_storage_type +| @builtin_executor_type +| @builtin_float_type +| @builtin_generic_type +| @builtin_job_type +| @builtin_native_object_type +| @builtin_raw_pointer_type +| @builtin_raw_unsafe_continuation_type +| @builtin_unsafe_value_buffer_type +| @builtin_vector_type +; + +dependent_member_types( //dir=type + unique int id: @dependent_member_type, + int base_type: @type_or_none ref, + int associated_type_decl: @associated_type_decl_or_none ref +); + +dynamic_self_types( //dir=type + unique int id: @dynamic_self_type, + int static_self_type: @type_or_none ref +); + +error_types( //dir=type + unique int id: @error_type +); + +existential_types( //dir=type + unique int id: @existential_type, + int constraint: @type_or_none ref +); + +in_out_types( //dir=type + unique int id: @in_out_type, + int object_type: @type_or_none ref +); + +integer_types( //dir=type + unique int id: @integer_type, + string value: string ref +); + +l_value_types( //dir=type + unique int id: @l_value_type, + int object_type: @type_or_none ref +); + +module_types( //dir=type + unique int id: @module_type, + int module: @module_decl_or_none ref +); + +pack_element_types( //dir=type + unique int id: @pack_element_type, + int pack_type: @type_or_none ref +); + +pack_expansion_types( //dir=type + unique int id: @pack_expansion_type, + int pattern_type: @type_or_none ref, + int count_type: @type_or_none ref +); + +pack_types( //dir=type + unique int id: @pack_type +); + +#keyset[id, index] +pack_type_elements( //dir=type + int id: @pack_type ref, + int index: int ref, + int element: @type_or_none ref +); + +parameterized_protocol_types( //dir=type + unique int id: @parameterized_protocol_type, + int base: @protocol_type_or_none ref +); + +#keyset[id, index] +parameterized_protocol_type_args( //dir=type + int id: @parameterized_protocol_type ref, + int index: int ref, + int arg: @type_or_none ref +); + +protocol_composition_types( //dir=type + unique int id: @protocol_composition_type +); + +#keyset[id, index] +protocol_composition_type_members( //dir=type + int id: @protocol_composition_type ref, + int index: int ref, + int member: @type_or_none ref +); + +@reference_storage_type = + @unmanaged_storage_type +| @unowned_storage_type +| @weak_storage_type +; + +#keyset[id] +reference_storage_types( //dir=type + int id: @reference_storage_type ref, + int referent_type: @type_or_none ref +); + +@substitutable_type = + @archetype_type +| @generic_type_param_type +; + +@sugar_type = + @paren_type +| @syntax_sugar_type +| @type_alias_type +; + +tuple_types( //dir=type + unique int id: @tuple_type +); + +#keyset[id, index] +tuple_type_types( //dir=type + int id: @tuple_type ref, + int index: int ref, + int type_: @type_or_none ref +); + +#keyset[id, index] +tuple_type_names( //dir=type + int id: @tuple_type ref, + int index: int ref, + string name: string ref +); + +unresolved_types( //dir=type + unique int id: @unresolved_type +); + +@any_builtin_integer_type = + @builtin_integer_literal_type +| @builtin_integer_type +; + +@archetype_type = + @local_archetype_type +| @opaque_type_archetype_type +| @pack_archetype_type +| @primary_archetype_type +; + +#keyset[id] +archetype_types( //dir=type + int id: @archetype_type ref, + int interface_type: @type_or_none ref +); + +#keyset[id] +archetype_type_superclasses( //dir=type + int id: @archetype_type ref, + int superclass: @type_or_none ref +); + +#keyset[id, index] +archetype_type_protocols( //dir=type + int id: @archetype_type ref, + int index: int ref, + int protocol: @protocol_decl_or_none ref +); + +builtin_bridge_object_types( //dir=type + unique int id: @builtin_bridge_object_type +); + +builtin_default_actor_storage_types( //dir=type + unique int id: @builtin_default_actor_storage_type +); + +builtin_executor_types( //dir=type + unique int id: @builtin_executor_type +); + +builtin_float_types( //dir=type + unique int id: @builtin_float_type +); + +@builtin_generic_type = + @builtin_fixed_array_type +; + +builtin_job_types( //dir=type + unique int id: @builtin_job_type +); + +builtin_native_object_types( //dir=type + unique int id: @builtin_native_object_type +); + +builtin_raw_pointer_types( //dir=type + unique int id: @builtin_raw_pointer_type +); + +builtin_raw_unsafe_continuation_types( //dir=type + unique int id: @builtin_raw_unsafe_continuation_type +); + +builtin_unsafe_value_buffer_types( //dir=type + unique int id: @builtin_unsafe_value_buffer_type +); + +builtin_vector_types( //dir=type + unique int id: @builtin_vector_type +); + +existential_metatype_types( //dir=type + unique int id: @existential_metatype_type +); + +function_types( //dir=type + unique int id: @function_type +); + +generic_function_types( //dir=type + unique int id: @generic_function_type +); + +#keyset[id, index] +generic_function_type_generic_params( //dir=type + int id: @generic_function_type ref, + int index: int ref, + int generic_param: @generic_type_param_type_or_none ref +); + +generic_type_param_types( //dir=type + unique int id: @generic_type_param_type +); + +metatype_types( //dir=type + unique int id: @metatype_type +); + +@nominal_or_bound_generic_nominal_type = + @bound_generic_type +| @nominal_type +; + +paren_types( //dir=type + unique int id: @paren_type, + int type_: @type_or_none ref +); + +@syntax_sugar_type = + @dictionary_type +| @inline_array_type +| @unary_syntax_sugar_type +; + +type_alias_types( //dir=type + unique int id: @type_alias_type, + int decl: @type_alias_decl_or_none ref +); + +unbound_generic_types( //dir=type + unique int id: @unbound_generic_type +); + +unmanaged_storage_types( //dir=type + unique int id: @unmanaged_storage_type +); + +unowned_storage_types( //dir=type + unique int id: @unowned_storage_type +); + +weak_storage_types( //dir=type + unique int id: @weak_storage_type +); + +@bound_generic_type = + @bound_generic_class_type +| @bound_generic_enum_type +| @bound_generic_struct_type +; + +#keyset[id, index] +bound_generic_type_arg_types( //dir=type + int id: @bound_generic_type ref, + int index: int ref, + int arg_type: @type_or_none ref +); + +builtin_fixed_array_types( //dir=type + unique int id: @builtin_fixed_array_type +); + +builtin_integer_literal_types( //dir=type + unique int id: @builtin_integer_literal_type +); + +builtin_integer_types( //dir=type + unique int id: @builtin_integer_type +); + +#keyset[id] +builtin_integer_type_widths( //dir=type + int id: @builtin_integer_type ref, + int width: int ref +); + +dictionary_types( //dir=type + unique int id: @dictionary_type, + int key_type: @type_or_none ref, + int value_type: @type_or_none ref +); + +inline_array_types( //dir=type + unique int id: @inline_array_type, + int count_type: @type_or_none ref, + int element_type: @type_or_none ref +); + +@local_archetype_type = + @element_archetype_type +| @existential_archetype_type +; + +@nominal_type = + @class_type +| @enum_type +| @protocol_type +| @struct_type +; + +opaque_type_archetype_types( //dir=type + unique int id: @opaque_type_archetype_type, + int declaration: @opaque_type_decl_or_none ref +); + +pack_archetype_types( //dir=type + unique int id: @pack_archetype_type +); + +primary_archetype_types( //dir=type + unique int id: @primary_archetype_type +); + +@unary_syntax_sugar_type = + @array_slice_type +| @optional_type +| @variadic_sequence_type +; + +#keyset[id] +unary_syntax_sugar_types( //dir=type + int id: @unary_syntax_sugar_type ref, + int base_type: @type_or_none ref +); + +array_slice_types( //dir=type + unique int id: @array_slice_type +); + +bound_generic_class_types( //dir=type + unique int id: @bound_generic_class_type +); + +bound_generic_enum_types( //dir=type + unique int id: @bound_generic_enum_type +); + +bound_generic_struct_types( //dir=type + unique int id: @bound_generic_struct_type +); + +class_types( //dir=type + unique int id: @class_type +); + +element_archetype_types( //dir=type + unique int id: @element_archetype_type +); + +enum_types( //dir=type + unique int id: @enum_type +); + +existential_archetype_types( //dir=type + unique int id: @existential_archetype_type +); + +optional_types( //dir=type + unique int id: @optional_type +); + +protocol_types( //dir=type + unique int id: @protocol_type +); + +struct_types( //dir=type + unique int id: @struct_type +); + +variadic_sequence_types( //dir=type + unique int id: @variadic_sequence_type +); + +@accessor_or_none = + @accessor +| @unspecified_element +; + +@argument_or_none = + @argument +| @unspecified_element +; + +@associated_type_decl_or_none = + @associated_type_decl +| @unspecified_element +; + +@ast_node_or_none = + @ast_node +| @unspecified_element +; + +@availability_info_or_none = + @availability_info +| @unspecified_element +; + +@availability_spec_or_none = + @availability_spec +| @unspecified_element +; + +@brace_stmt_or_none = + @brace_stmt +| @unspecified_element +; + +@captured_decl_or_none = + @captured_decl +| @unspecified_element +; + +@case_label_item_or_none = + @case_label_item +| @unspecified_element +; + +@case_stmt_or_none = + @case_stmt +| @unspecified_element +; + +@closure_expr_or_none = + @closure_expr +| @unspecified_element +; + +@condition_element_or_none = + @condition_element +| @unspecified_element +; + +@decl_or_none = + @decl +| @unspecified_element +; + +@enum_element_decl_or_none = + @enum_element_decl +| @unspecified_element +; + +@expr_or_none = + @expr +| @unspecified_element +; + +@file_or_none = + @file +| @unspecified_element +; + +@function_or_none = + @function +| @unspecified_element +; + +@generic_type_decl_or_none = + @generic_type_decl +| @unspecified_element +; + +@generic_type_param_decl_or_none = + @generic_type_param_decl +| @unspecified_element +; + +@generic_type_param_type_or_none = + @generic_type_param_type +| @unspecified_element +; + +@initializer_or_none = + @initializer +| @unspecified_element +; + +@key_path_component_or_none = + @key_path_component +| @unspecified_element +; + +@location_or_none = + @location +| @unspecified_element +; + +@macro_role_or_none = + @macro_role +| @unspecified_element +; + +@module_decl_or_none = + @module_decl +| @unspecified_element +; + +@nominal_type_decl_or_none = + @nominal_type_decl +| @unspecified_element +; + +@opaque_type_decl_or_none = + @opaque_type_decl +| @unspecified_element +; + +@opaque_value_expr_or_none = + @opaque_value_expr +| @unspecified_element +; + +@param_decl_or_none = + @param_decl +| @unspecified_element +; + +@pattern_or_none = + @pattern +| @unspecified_element +; + +@pattern_binding_decl_or_none = + @pattern_binding_decl +| @unspecified_element +; + +@precedence_group_decl_or_none = + @precedence_group_decl +| @unspecified_element +; + +@protocol_decl_or_none = + @protocol_decl +| @unspecified_element +; + +@protocol_type_or_none = + @protocol_type +| @unspecified_element +; + +@stmt_or_none = + @stmt +| @unspecified_element +; + +@stmt_condition_or_none = + @stmt_condition +| @unspecified_element +; + +@string_literal_expr_or_none = + @string_literal_expr +| @unspecified_element +; + +@tap_expr_or_none = + @tap_expr +| @unspecified_element +; + +@type_or_none = + @type +| @unspecified_element +; + +@type_alias_decl_or_none = + @type_alias_decl +| @unspecified_element +; + +@type_repr_or_none = + @type_repr +| @unspecified_element +; + +@value_decl_or_none = + @unspecified_element +| @value_decl +; + +@var_decl_or_none = + @unspecified_element +| @var_decl +; diff --git a/swift/downgrades/ee3053b673c901a325b361b18c50b18342752bf8/swift.dbscheme b/swift/downgrades/ee3053b673c901a325b361b18c50b18342752bf8/swift.dbscheme new file mode 100644 index 000000000000..33e5e5e03bd3 --- /dev/null +++ b/swift/downgrades/ee3053b673c901a325b361b18c50b18342752bf8/swift.dbscheme @@ -0,0 +1,2885 @@ +// generated by codegen/codegen.py, do not edit + +// from prefix.dbscheme +/** + * The source location of the snapshot. + */ +sourceLocationPrefix( + string prefix: string ref +); + + +// from schema.py + +@element = + @file +| @generic_context +| @locatable +| @location +| @type +; + +#keyset[id] +element_is_unknown( + int id: @element ref +); + +@file = + @db_file +; + +#keyset[id] +files( + int id: @file ref, + string name: string ref +); + +#keyset[id] +file_is_successfully_extracted( + int id: @file ref +); + +@locatable = + @argument +| @ast_node +| @comment +| @diagnostics +| @error_element +; + +#keyset[id] +locatable_locations( + int id: @locatable ref, + int location: @location_or_none ref +); + +@location = + @db_location +; + +#keyset[id] +locations( + int id: @location ref, + int file: @file_or_none ref, + int start_line: int ref, + int start_column: int ref, + int end_line: int ref, + int end_column: int ref +); + +@ast_node = + @availability_info +| @availability_spec +| @callable +| @case_label_item +| @condition_element +| @decl +| @expr +| @key_path_component +| @macro_role +| @pattern +| @stmt +| @stmt_condition +| @type_repr +; + +comments( + unique int id: @comment, + string text: string ref +); + +db_files( + unique int id: @db_file +); + +db_locations( + unique int id: @db_location +); + +diagnostics( + unique int id: @diagnostics, + string text: string ref, + int kind: int ref +); + +@error_element = + @error_expr +| @error_type +| @overloaded_decl_ref_expr +| @unresolved_decl_ref_expr +| @unresolved_dot_expr +| @unresolved_member_chain_result_expr +| @unresolved_member_expr +| @unresolved_pattern_expr +| @unresolved_specialize_expr +| @unresolved_type +| @unresolved_type_conversion_expr +| @unspecified_element +; + +availability_infos( + unique int id: @availability_info +); + +#keyset[id] +availability_info_is_unavailable( + int id: @availability_info ref +); + +#keyset[id, index] +availability_info_specs( + int id: @availability_info ref, + int index: int ref, + int spec: @availability_spec_or_none ref +); + +availability_specs( + unique int id: @availability_spec +); + +#keyset[id] +availability_spec_platforms( + int id: @availability_spec ref, + string platform: string ref +); + +#keyset[id] +availability_spec_versions( + int id: @availability_spec ref, + string version: string ref +); + +#keyset[id] +availability_spec_is_wildcard( + int id: @availability_spec ref +); + +@callable = + @closure_expr +| @function +; + +#keyset[id] +callable_names( + int id: @callable ref, + string name: string ref +); + +#keyset[id] +callable_self_params( + int id: @callable ref, + int self_param: @param_decl_or_none ref +); + +#keyset[id, index] +callable_params( + int id: @callable ref, + int index: int ref, + int param: @param_decl_or_none ref +); + +#keyset[id] +callable_bodies( + int id: @callable ref, + int body: @brace_stmt_or_none ref +); + +#keyset[id, index] +callable_captures( + int id: @callable ref, + int index: int ref, + int capture: @captured_decl_or_none ref +); + +key_path_components( + unique int id: @key_path_component, + int kind: int ref, + int component_type: @type_or_none ref +); + +#keyset[id, index] +key_path_component_subscript_arguments( + int id: @key_path_component ref, + int index: int ref, + int subscript_argument: @argument_or_none ref +); + +#keyset[id] +key_path_component_tuple_indices( + int id: @key_path_component ref, + int tuple_index: int ref +); + +#keyset[id] +key_path_component_decl_refs( + int id: @key_path_component ref, + int decl_ref: @value_decl_or_none ref +); + +macro_roles( + unique int id: @macro_role, + int kind: int ref, + int macro_syntax: int ref +); + +#keyset[id, index] +macro_role_conformances( + int id: @macro_role ref, + int index: int ref, + int conformance: @expr_or_none ref +); + +#keyset[id, index] +macro_role_names( + int id: @macro_role ref, + int index: int ref, + string name: string ref +); + +unspecified_elements( + unique int id: @unspecified_element, + string property: string ref, + string error: string ref +); + +#keyset[id] +unspecified_element_parents( + int id: @unspecified_element ref, + int parent: @element ref +); + +#keyset[id] +unspecified_element_indices( + int id: @unspecified_element ref, + int index: int ref +); + +#keyset[id, index] +unspecified_element_children( + int id: @unspecified_element ref, + int index: int ref, + int child: @ast_node_or_none ref +); + +@decl = + @captured_decl +| @enum_case_decl +| @extension_decl +| @if_config_decl +| @import_decl +| @missing_member_decl +| @operator_decl +| @pattern_binding_decl +| @pound_diagnostic_decl +| @precedence_group_decl +| @top_level_code_decl +| @using_decl +| @value_decl +; + +#keyset[id] +decls( //dir=decl + int id: @decl ref, + int module: @module_decl_or_none ref +); + +#keyset[id, index] +decl_members( //dir=decl + int id: @decl ref, + int index: int ref, + int member: @decl_or_none ref +); + +@generic_context = + @extension_decl +| @function +| @generic_type_decl +| @macro_decl +| @subscript_decl +; + +#keyset[id, index] +generic_context_generic_type_params( //dir=decl + int id: @generic_context ref, + int index: int ref, + int generic_type_param: @generic_type_param_decl_or_none ref +); + +captured_decls( //dir=decl + unique int id: @captured_decl, + int decl: @value_decl_or_none ref +); + +#keyset[id] +captured_decl_is_direct( //dir=decl + int id: @captured_decl ref +); + +#keyset[id] +captured_decl_is_escaping( //dir=decl + int id: @captured_decl ref +); + +enum_case_decls( //dir=decl + unique int id: @enum_case_decl +); + +#keyset[id, index] +enum_case_decl_elements( //dir=decl + int id: @enum_case_decl ref, + int index: int ref, + int element: @enum_element_decl_or_none ref +); + +extension_decls( //dir=decl + unique int id: @extension_decl, + int extended_type_decl: @nominal_type_decl_or_none ref +); + +#keyset[id, index] +extension_decl_protocols( //dir=decl + int id: @extension_decl ref, + int index: int ref, + int protocol: @protocol_decl_or_none ref +); + +if_config_decls( //dir=decl + unique int id: @if_config_decl +); + +#keyset[id, index] +if_config_decl_active_elements( //dir=decl + int id: @if_config_decl ref, + int index: int ref, + int active_element: @ast_node_or_none ref +); + +import_decls( //dir=decl + unique int id: @import_decl +); + +#keyset[id] +import_decl_is_exported( //dir=decl + int id: @import_decl ref +); + +#keyset[id] +import_decl_imported_modules( //dir=decl + int id: @import_decl ref, + int imported_module: @module_decl_or_none ref +); + +#keyset[id, index] +import_decl_declarations( //dir=decl + int id: @import_decl ref, + int index: int ref, + int declaration: @value_decl_or_none ref +); + +missing_member_decls( //dir=decl + unique int id: @missing_member_decl, + string name: string ref +); + +@operator_decl = + @infix_operator_decl +| @postfix_operator_decl +| @prefix_operator_decl +; + +#keyset[id] +operator_decls( //dir=decl + int id: @operator_decl ref, + string name: string ref +); + +pattern_binding_decls( //dir=decl + unique int id: @pattern_binding_decl +); + +#keyset[id, index] +pattern_binding_decl_inits( //dir=decl + int id: @pattern_binding_decl ref, + int index: int ref, + int init: @expr_or_none ref +); + +#keyset[id, index] +pattern_binding_decl_patterns( //dir=decl + int id: @pattern_binding_decl ref, + int index: int ref, + int pattern: @pattern_or_none ref +); + +pound_diagnostic_decls( //dir=decl + unique int id: @pound_diagnostic_decl, + int kind: int ref, + int message: @string_literal_expr_or_none ref +); + +precedence_group_decls( //dir=decl + unique int id: @precedence_group_decl +); + +top_level_code_decls( //dir=decl + unique int id: @top_level_code_decl, + int body: @brace_stmt_or_none ref +); + +using_decls( //dir=decl + unique int id: @using_decl +); + +#keyset[id] +using_decl_is_main_actor( //dir=decl + int id: @using_decl ref +); + +#keyset[id] +using_decl_is_nonisolated( //dir=decl + int id: @using_decl ref +); + +@value_decl = + @abstract_storage_decl +| @enum_element_decl +| @function +| @macro_decl +| @type_decl +; + +#keyset[id] +value_decls( //dir=decl + int id: @value_decl ref, + int interface_type: @type_or_none ref +); + +@abstract_storage_decl = + @subscript_decl +| @var_decl +; + +#keyset[id, index] +abstract_storage_decl_accessors( //dir=decl + int id: @abstract_storage_decl ref, + int index: int ref, + int accessor: @accessor_or_none ref +); + +enum_element_decls( //dir=decl + unique int id: @enum_element_decl, + string name: string ref +); + +#keyset[id, index] +enum_element_decl_params( //dir=decl + int id: @enum_element_decl ref, + int index: int ref, + int param: @param_decl_or_none ref +); + +@function = + @accessor_or_named_function +| @deinitializer +| @initializer +; + +infix_operator_decls( //dir=decl + unique int id: @infix_operator_decl +); + +#keyset[id] +infix_operator_decl_precedence_groups( //dir=decl + int id: @infix_operator_decl ref, + int precedence_group: @precedence_group_decl_or_none ref +); + +macro_decls( //dir=decl + unique int id: @macro_decl, + string name: string ref +); + +#keyset[id, index] +macro_decl_parameters( //dir=decl + int id: @macro_decl ref, + int index: int ref, + int parameter: @param_decl_or_none ref +); + +#keyset[id, index] +macro_decl_roles( //dir=decl + int id: @macro_decl ref, + int index: int ref, + int role: @macro_role_or_none ref +); + +postfix_operator_decls( //dir=decl + unique int id: @postfix_operator_decl +); + +prefix_operator_decls( //dir=decl + unique int id: @prefix_operator_decl +); + +@type_decl = + @abstract_type_param_decl +| @generic_type_decl +| @module_decl +; + +#keyset[id] +type_decls( //dir=decl + int id: @type_decl ref, + string name: string ref +); + +#keyset[id, index] +type_decl_inherited_types( //dir=decl + int id: @type_decl ref, + int index: int ref, + int inherited_type: @type_or_none ref +); + +@abstract_type_param_decl = + @associated_type_decl +| @generic_type_param_decl +; + +@accessor_or_named_function = + @accessor +| @named_function +; + +deinitializers( //dir=decl + unique int id: @deinitializer +); + +@generic_type_decl = + @nominal_type_decl +| @opaque_type_decl +| @type_alias_decl +; + +initializers( //dir=decl + unique int id: @initializer +); + +module_decls( //dir=decl + unique int id: @module_decl +); + +#keyset[id] +module_decl_is_builtin_module( //dir=decl + int id: @module_decl ref +); + +#keyset[id] +module_decl_is_system_module( //dir=decl + int id: @module_decl ref +); + +module_decl_imported_modules( //dir=decl + int id: @module_decl ref, + int imported_module: @module_decl_or_none ref +); + +module_decl_exported_modules( //dir=decl + int id: @module_decl ref, + int exported_module: @module_decl_or_none ref +); + +subscript_decls( //dir=decl + unique int id: @subscript_decl, + int element_type: @type_or_none ref +); + +#keyset[id, index] +subscript_decl_params( //dir=decl + int id: @subscript_decl ref, + int index: int ref, + int param: @param_decl_or_none ref +); + +@var_decl = + @concrete_var_decl +| @param_decl +; + +#keyset[id] +var_decls( //dir=decl + int id: @var_decl ref, + string name: string ref, + int type_: @type_or_none ref +); + +#keyset[id] +var_decl_attached_property_wrapper_types( //dir=decl + int id: @var_decl ref, + int attached_property_wrapper_type: @type_or_none ref +); + +#keyset[id] +var_decl_parent_patterns( //dir=decl + int id: @var_decl ref, + int parent_pattern: @pattern_or_none ref +); + +#keyset[id] +var_decl_parent_initializers( //dir=decl + int id: @var_decl ref, + int parent_initializer: @expr_or_none ref +); + +#keyset[id] +var_decl_property_wrapper_backing_var_bindings( //dir=decl + int id: @var_decl ref, + int property_wrapper_backing_var_binding: @pattern_binding_decl_or_none ref +); + +#keyset[id] +var_decl_property_wrapper_backing_vars( //dir=decl + int id: @var_decl ref, + int property_wrapper_backing_var: @var_decl_or_none ref +); + +#keyset[id] +var_decl_property_wrapper_projection_var_bindings( //dir=decl + int id: @var_decl ref, + int property_wrapper_projection_var_binding: @pattern_binding_decl_or_none ref +); + +#keyset[id] +var_decl_property_wrapper_projection_vars( //dir=decl + int id: @var_decl ref, + int property_wrapper_projection_var: @var_decl_or_none ref +); + +accessors( //dir=decl + unique int id: @accessor +); + +#keyset[id] +accessor_is_getter( //dir=decl + int id: @accessor ref +); + +#keyset[id] +accessor_is_setter( //dir=decl + int id: @accessor ref +); + +#keyset[id] +accessor_is_will_set( //dir=decl + int id: @accessor ref +); + +#keyset[id] +accessor_is_did_set( //dir=decl + int id: @accessor ref +); + +#keyset[id] +accessor_is_read( //dir=decl + int id: @accessor ref +); + +#keyset[id] +accessor_is_modify( //dir=decl + int id: @accessor ref +); + +#keyset[id] +accessor_is_unsafe_address( //dir=decl + int id: @accessor ref +); + +#keyset[id] +accessor_is_unsafe_mutable_address( //dir=decl + int id: @accessor ref +); + +#keyset[id] +accessor_is_distributed_get( //dir=decl + int id: @accessor ref +); + +#keyset[id] +accessor_is_read2( //dir=decl + int id: @accessor ref +); + +#keyset[id] +accessor_is_modify2( //dir=decl + int id: @accessor ref +); + +#keyset[id] +accessor_is_init( //dir=decl + int id: @accessor ref +); + +associated_type_decls( //dir=decl + unique int id: @associated_type_decl +); + +concrete_var_decls( //dir=decl + unique int id: @concrete_var_decl, + int introducer_int: int ref +); + +generic_type_param_decls( //dir=decl + unique int id: @generic_type_param_decl +); + +named_functions( //dir=decl + unique int id: @named_function +); + +@nominal_type_decl = + @class_decl +| @enum_decl +| @protocol_decl +| @struct_decl +; + +#keyset[id] +nominal_type_decls( //dir=decl + int id: @nominal_type_decl ref, + int type_: @type_or_none ref +); + +opaque_type_decls( //dir=decl + unique int id: @opaque_type_decl, + int naming_declaration: @value_decl_or_none ref +); + +#keyset[id, index] +opaque_type_decl_opaque_generic_params( //dir=decl + int id: @opaque_type_decl ref, + int index: int ref, + int opaque_generic_param: @generic_type_param_type_or_none ref +); + +param_decls( //dir=decl + unique int id: @param_decl +); + +#keyset[id] +param_decl_is_inout( //dir=decl + int id: @param_decl ref +); + +#keyset[id] +param_decl_property_wrapper_local_wrapped_var_bindings( //dir=decl + int id: @param_decl ref, + int property_wrapper_local_wrapped_var_binding: @pattern_binding_decl_or_none ref +); + +#keyset[id] +param_decl_property_wrapper_local_wrapped_vars( //dir=decl + int id: @param_decl ref, + int property_wrapper_local_wrapped_var: @var_decl_or_none ref +); + +type_alias_decls( //dir=decl + unique int id: @type_alias_decl, + int aliased_type: @type_or_none ref +); + +class_decls( //dir=decl + unique int id: @class_decl +); + +enum_decls( //dir=decl + unique int id: @enum_decl +); + +protocol_decls( //dir=decl + unique int id: @protocol_decl +); + +struct_decls( //dir=decl + unique int id: @struct_decl +); + +arguments( //dir=expr + unique int id: @argument, + string label: string ref, + int expr: @expr_or_none ref +); + +@expr = + @any_try_expr +| @applied_property_wrapper_expr +| @apply_expr +| @assign_expr +| @bind_optional_expr +| @capture_list_expr +| @closure_expr +| @collection_expr +| @consume_expr +| @copy_expr +| @current_context_isolation_expr +| @decl_ref_expr +| @default_argument_expr +| @discard_assignment_expr +| @dot_syntax_base_ignored_expr +| @dynamic_type_expr +| @enum_is_case_expr +| @error_expr +| @explicit_cast_expr +| @extract_function_isolation_expr +| @force_value_expr +| @identity_expr +| @if_expr +| @implicit_conversion_expr +| @in_out_expr +| @key_path_application_expr +| @key_path_dot_expr +| @key_path_expr +| @lazy_initialization_expr +| @literal_expr +| @lookup_expr +| @make_temporarily_escapable_expr +| @materialize_pack_expr +| @obj_c_selector_expr +| @one_way_expr +| @opaque_value_expr +| @open_existential_expr +| @optional_evaluation_expr +| @other_initializer_ref_expr +| @overloaded_decl_ref_expr +| @pack_element_expr +| @pack_expansion_expr +| @property_wrapper_value_placeholder_expr +| @rebind_self_in_initializer_expr +| @sequence_expr +| @single_value_stmt_expr +| @super_ref_expr +| @tap_expr +| @tuple_element_expr +| @tuple_expr +| @type_expr +| @type_value_expr +| @unresolved_decl_ref_expr +| @unresolved_dot_expr +| @unresolved_member_expr +| @unresolved_pattern_expr +| @unresolved_specialize_expr +| @vararg_expansion_expr +; + +#keyset[id] +expr_types( //dir=expr + int id: @expr ref, + int type_: @type_or_none ref +); + +@any_try_expr = + @force_try_expr +| @optional_try_expr +| @try_expr +; + +#keyset[id] +any_try_exprs( //dir=expr + int id: @any_try_expr ref, + int sub_expr: @expr_or_none ref +); + +applied_property_wrapper_exprs( //dir=expr + unique int id: @applied_property_wrapper_expr, + int kind: int ref, + int value: @expr_or_none ref, + int param: @param_decl_or_none ref +); + +@apply_expr = + @binary_expr +| @call_expr +| @postfix_unary_expr +| @prefix_unary_expr +| @self_apply_expr +; + +#keyset[id] +apply_exprs( //dir=expr + int id: @apply_expr ref, + int function: @expr_or_none ref +); + +#keyset[id, index] +apply_expr_arguments( //dir=expr + int id: @apply_expr ref, + int index: int ref, + int argument: @argument_or_none ref +); + +assign_exprs( //dir=expr + unique int id: @assign_expr, + int dest: @expr_or_none ref, + int source: @expr_or_none ref +); + +bind_optional_exprs( //dir=expr + unique int id: @bind_optional_expr, + int sub_expr: @expr_or_none ref +); + +capture_list_exprs( //dir=expr + unique int id: @capture_list_expr, + int closure_body: @closure_expr_or_none ref +); + +#keyset[id, index] +capture_list_expr_binding_decls( //dir=expr + int id: @capture_list_expr ref, + int index: int ref, + int binding_decl: @pattern_binding_decl_or_none ref +); + +@closure_expr = + @auto_closure_expr +| @explicit_closure_expr +; + +@collection_expr = + @array_expr +| @dictionary_expr +; + +consume_exprs( //dir=expr + unique int id: @consume_expr, + int sub_expr: @expr_or_none ref +); + +copy_exprs( //dir=expr + unique int id: @copy_expr, + int sub_expr: @expr_or_none ref +); + +current_context_isolation_exprs( //dir=expr + unique int id: @current_context_isolation_expr, + int actor: @expr_or_none ref +); + +decl_ref_exprs( //dir=expr + unique int id: @decl_ref_expr, + int decl: @decl_or_none ref +); + +#keyset[id, index] +decl_ref_expr_replacement_types( //dir=expr + int id: @decl_ref_expr ref, + int index: int ref, + int replacement_type: @type_or_none ref +); + +#keyset[id] +decl_ref_expr_has_direct_to_storage_semantics( //dir=expr + int id: @decl_ref_expr ref +); + +#keyset[id] +decl_ref_expr_has_direct_to_implementation_semantics( //dir=expr + int id: @decl_ref_expr ref +); + +#keyset[id] +decl_ref_expr_has_ordinary_semantics( //dir=expr + int id: @decl_ref_expr ref +); + +#keyset[id] +decl_ref_expr_has_distributed_thunk_semantics( //dir=expr + int id: @decl_ref_expr ref +); + +default_argument_exprs( //dir=expr + unique int id: @default_argument_expr, + int param_decl: @param_decl_or_none ref, + int param_index: int ref +); + +#keyset[id] +default_argument_expr_caller_side_defaults( //dir=expr + int id: @default_argument_expr ref, + int caller_side_default: @expr_or_none ref +); + +discard_assignment_exprs( //dir=expr + unique int id: @discard_assignment_expr +); + +dot_syntax_base_ignored_exprs( //dir=expr + unique int id: @dot_syntax_base_ignored_expr, + int qualifier: @expr_or_none ref, + int sub_expr: @expr_or_none ref +); + +dynamic_type_exprs( //dir=expr + unique int id: @dynamic_type_expr, + int base: @expr_or_none ref +); + +enum_is_case_exprs( //dir=expr + unique int id: @enum_is_case_expr, + int sub_expr: @expr_or_none ref, + int element: @enum_element_decl_or_none ref +); + +error_exprs( //dir=expr + unique int id: @error_expr +); + +@explicit_cast_expr = + @checked_cast_expr +| @coerce_expr +; + +#keyset[id] +explicit_cast_exprs( //dir=expr + int id: @explicit_cast_expr ref, + int sub_expr: @expr_or_none ref +); + +extract_function_isolation_exprs( //dir=expr + unique int id: @extract_function_isolation_expr, + int function_expr: @expr_or_none ref +); + +force_value_exprs( //dir=expr + unique int id: @force_value_expr, + int sub_expr: @expr_or_none ref +); + +@identity_expr = + @await_expr +| @borrow_expr +| @dot_self_expr +| @paren_expr +| @unresolved_member_chain_result_expr +| @unsafe_expr +; + +#keyset[id] +identity_exprs( //dir=expr + int id: @identity_expr ref, + int sub_expr: @expr_or_none ref +); + +if_exprs( //dir=expr + unique int id: @if_expr, + int condition: @expr_or_none ref, + int then_expr: @expr_or_none ref, + int else_expr: @expr_or_none ref +); + +@implicit_conversion_expr = + @abi_safe_conversion_expr +| @actor_isolation_erasure_expr +| @any_hashable_erasure_expr +| @archetype_to_super_expr +| @array_to_pointer_expr +| @bridge_from_obj_c_expr +| @bridge_to_obj_c_expr +| @class_metatype_to_object_expr +| @collection_upcast_conversion_expr +| @conditional_bridge_from_obj_c_expr +| @covariant_function_conversion_expr +| @covariant_return_conversion_expr +| @derived_to_base_expr +| @destructure_tuple_expr +| @differentiable_function_expr +| @differentiable_function_extract_original_expr +| @erasure_expr +| @existential_metatype_to_object_expr +| @foreign_object_conversion_expr +| @function_conversion_expr +| @in_out_to_pointer_expr +| @inject_into_optional_expr +| @linear_function_expr +| @linear_function_extract_original_expr +| @linear_to_differentiable_function_expr +| @load_expr +| @metatype_conversion_expr +| @pointer_to_pointer_expr +| @protocol_metatype_to_object_expr +| @string_to_pointer_expr +| @underlying_to_opaque_expr +| @unevaluated_instance_expr +| @unreachable_expr +| @unresolved_type_conversion_expr +| @unsafe_cast_expr +; + +#keyset[id] +implicit_conversion_exprs( //dir=expr + int id: @implicit_conversion_expr ref, + int sub_expr: @expr_or_none ref +); + +in_out_exprs( //dir=expr + unique int id: @in_out_expr, + int sub_expr: @expr_or_none ref +); + +key_path_application_exprs( //dir=expr + unique int id: @key_path_application_expr, + int base: @expr_or_none ref, + int key_path: @expr_or_none ref +); + +key_path_dot_exprs( //dir=expr + unique int id: @key_path_dot_expr +); + +key_path_exprs( //dir=expr + unique int id: @key_path_expr +); + +#keyset[id] +key_path_expr_roots( //dir=expr + int id: @key_path_expr ref, + int root: @type_repr_or_none ref +); + +#keyset[id, index] +key_path_expr_components( //dir=expr + int id: @key_path_expr ref, + int index: int ref, + int component: @key_path_component_or_none ref +); + +lazy_initialization_exprs( //dir=expr + unique int id: @lazy_initialization_expr, + int sub_expr: @expr_or_none ref +); + +@literal_expr = + @builtin_literal_expr +| @interpolated_string_literal_expr +| @nil_literal_expr +| @object_literal_expr +| @regex_literal_expr +; + +@lookup_expr = + @dynamic_lookup_expr +| @member_ref_expr +| @subscript_expr +; + +#keyset[id] +lookup_exprs( //dir=expr + int id: @lookup_expr ref, + int base: @expr_or_none ref +); + +#keyset[id] +lookup_expr_members( //dir=expr + int id: @lookup_expr ref, + int member: @decl_or_none ref +); + +make_temporarily_escapable_exprs( //dir=expr + unique int id: @make_temporarily_escapable_expr, + int escaping_closure: @opaque_value_expr_or_none ref, + int nonescaping_closure: @expr_or_none ref, + int sub_expr: @expr_or_none ref +); + +materialize_pack_exprs( //dir=expr + unique int id: @materialize_pack_expr, + int sub_expr: @expr_or_none ref +); + +obj_c_selector_exprs( //dir=expr + unique int id: @obj_c_selector_expr, + int sub_expr: @expr_or_none ref, + int method: @function_or_none ref +); + +one_way_exprs( //dir=expr + unique int id: @one_way_expr, + int sub_expr: @expr_or_none ref +); + +opaque_value_exprs( //dir=expr + unique int id: @opaque_value_expr +); + +open_existential_exprs( //dir=expr + unique int id: @open_existential_expr, + int sub_expr: @expr_or_none ref, + int existential: @expr_or_none ref, + int opaque_expr: @opaque_value_expr_or_none ref +); + +optional_evaluation_exprs( //dir=expr + unique int id: @optional_evaluation_expr, + int sub_expr: @expr_or_none ref +); + +other_initializer_ref_exprs( //dir=expr + unique int id: @other_initializer_ref_expr, + int initializer: @initializer_or_none ref +); + +overloaded_decl_ref_exprs( //dir=expr + unique int id: @overloaded_decl_ref_expr +); + +#keyset[id, index] +overloaded_decl_ref_expr_possible_declarations( //dir=expr + int id: @overloaded_decl_ref_expr ref, + int index: int ref, + int possible_declaration: @value_decl_or_none ref +); + +pack_element_exprs( //dir=expr + unique int id: @pack_element_expr, + int sub_expr: @expr_or_none ref +); + +pack_expansion_exprs( //dir=expr + unique int id: @pack_expansion_expr, + int pattern_expr: @expr_or_none ref +); + +property_wrapper_value_placeholder_exprs( //dir=expr + unique int id: @property_wrapper_value_placeholder_expr, + int placeholder: @opaque_value_expr_or_none ref +); + +#keyset[id] +property_wrapper_value_placeholder_expr_wrapped_values( //dir=expr + int id: @property_wrapper_value_placeholder_expr ref, + int wrapped_value: @expr_or_none ref +); + +rebind_self_in_initializer_exprs( //dir=expr + unique int id: @rebind_self_in_initializer_expr, + int sub_expr: @expr_or_none ref, + int self: @var_decl_or_none ref +); + +sequence_exprs( //dir=expr + unique int id: @sequence_expr +); + +#keyset[id, index] +sequence_expr_elements( //dir=expr + int id: @sequence_expr ref, + int index: int ref, + int element: @expr_or_none ref +); + +single_value_stmt_exprs( //dir=expr + unique int id: @single_value_stmt_expr, + int stmt: @stmt_or_none ref +); + +super_ref_exprs( //dir=expr + unique int id: @super_ref_expr, + int self: @var_decl_or_none ref +); + +tap_exprs( //dir=expr + unique int id: @tap_expr, + int body: @brace_stmt_or_none ref, + int var: @var_decl_or_none ref +); + +#keyset[id] +tap_expr_sub_exprs( //dir=expr + int id: @tap_expr ref, + int sub_expr: @expr_or_none ref +); + +tuple_element_exprs( //dir=expr + unique int id: @tuple_element_expr, + int sub_expr: @expr_or_none ref, + int index: int ref +); + +tuple_exprs( //dir=expr + unique int id: @tuple_expr +); + +#keyset[id, index] +tuple_expr_elements( //dir=expr + int id: @tuple_expr ref, + int index: int ref, + int element: @expr_or_none ref +); + +type_exprs( //dir=expr + unique int id: @type_expr +); + +#keyset[id] +type_expr_type_reprs( //dir=expr + int id: @type_expr ref, + int type_repr: @type_repr_or_none ref +); + +type_value_exprs( //dir=expr + unique int id: @type_value_expr, + int type_repr: @type_repr_or_none ref +); + +unresolved_decl_ref_exprs( //dir=expr + unique int id: @unresolved_decl_ref_expr +); + +#keyset[id] +unresolved_decl_ref_expr_names( //dir=expr + int id: @unresolved_decl_ref_expr ref, + string name: string ref +); + +unresolved_dot_exprs( //dir=expr + unique int id: @unresolved_dot_expr, + int base: @expr_or_none ref, + string name: string ref +); + +unresolved_member_exprs( //dir=expr + unique int id: @unresolved_member_expr, + string name: string ref +); + +unresolved_pattern_exprs( //dir=expr + unique int id: @unresolved_pattern_expr, + int sub_pattern: @pattern_or_none ref +); + +unresolved_specialize_exprs( //dir=expr + unique int id: @unresolved_specialize_expr, + int sub_expr: @expr_or_none ref +); + +vararg_expansion_exprs( //dir=expr + unique int id: @vararg_expansion_expr, + int sub_expr: @expr_or_none ref +); + +abi_safe_conversion_exprs( //dir=expr + unique int id: @abi_safe_conversion_expr +); + +actor_isolation_erasure_exprs( //dir=expr + unique int id: @actor_isolation_erasure_expr +); + +any_hashable_erasure_exprs( //dir=expr + unique int id: @any_hashable_erasure_expr +); + +archetype_to_super_exprs( //dir=expr + unique int id: @archetype_to_super_expr +); + +array_exprs( //dir=expr + unique int id: @array_expr +); + +#keyset[id, index] +array_expr_elements( //dir=expr + int id: @array_expr ref, + int index: int ref, + int element: @expr_or_none ref +); + +array_to_pointer_exprs( //dir=expr + unique int id: @array_to_pointer_expr +); + +auto_closure_exprs( //dir=expr + unique int id: @auto_closure_expr +); + +await_exprs( //dir=expr + unique int id: @await_expr +); + +binary_exprs( //dir=expr + unique int id: @binary_expr +); + +borrow_exprs( //dir=expr + unique int id: @borrow_expr +); + +bridge_from_obj_c_exprs( //dir=expr + unique int id: @bridge_from_obj_c_expr +); + +bridge_to_obj_c_exprs( //dir=expr + unique int id: @bridge_to_obj_c_expr +); + +@builtin_literal_expr = + @boolean_literal_expr +| @magic_identifier_literal_expr +| @number_literal_expr +| @string_literal_expr +; + +call_exprs( //dir=expr + unique int id: @call_expr +); + +@checked_cast_expr = + @conditional_checked_cast_expr +| @forced_checked_cast_expr +| @is_expr +; + +class_metatype_to_object_exprs( //dir=expr + unique int id: @class_metatype_to_object_expr +); + +coerce_exprs( //dir=expr + unique int id: @coerce_expr +); + +collection_upcast_conversion_exprs( //dir=expr + unique int id: @collection_upcast_conversion_expr +); + +conditional_bridge_from_obj_c_exprs( //dir=expr + unique int id: @conditional_bridge_from_obj_c_expr +); + +covariant_function_conversion_exprs( //dir=expr + unique int id: @covariant_function_conversion_expr +); + +covariant_return_conversion_exprs( //dir=expr + unique int id: @covariant_return_conversion_expr +); + +derived_to_base_exprs( //dir=expr + unique int id: @derived_to_base_expr +); + +destructure_tuple_exprs( //dir=expr + unique int id: @destructure_tuple_expr +); + +dictionary_exprs( //dir=expr + unique int id: @dictionary_expr +); + +#keyset[id, index] +dictionary_expr_elements( //dir=expr + int id: @dictionary_expr ref, + int index: int ref, + int element: @expr_or_none ref +); + +differentiable_function_exprs( //dir=expr + unique int id: @differentiable_function_expr +); + +differentiable_function_extract_original_exprs( //dir=expr + unique int id: @differentiable_function_extract_original_expr +); + +dot_self_exprs( //dir=expr + unique int id: @dot_self_expr +); + +@dynamic_lookup_expr = + @dynamic_member_ref_expr +| @dynamic_subscript_expr +; + +erasure_exprs( //dir=expr + unique int id: @erasure_expr +); + +existential_metatype_to_object_exprs( //dir=expr + unique int id: @existential_metatype_to_object_expr +); + +explicit_closure_exprs( //dir=expr + unique int id: @explicit_closure_expr +); + +force_try_exprs( //dir=expr + unique int id: @force_try_expr +); + +foreign_object_conversion_exprs( //dir=expr + unique int id: @foreign_object_conversion_expr +); + +function_conversion_exprs( //dir=expr + unique int id: @function_conversion_expr +); + +in_out_to_pointer_exprs( //dir=expr + unique int id: @in_out_to_pointer_expr +); + +inject_into_optional_exprs( //dir=expr + unique int id: @inject_into_optional_expr +); + +interpolated_string_literal_exprs( //dir=expr + unique int id: @interpolated_string_literal_expr +); + +#keyset[id] +interpolated_string_literal_expr_interpolation_exprs( //dir=expr + int id: @interpolated_string_literal_expr ref, + int interpolation_expr: @opaque_value_expr_or_none ref +); + +#keyset[id] +interpolated_string_literal_expr_appending_exprs( //dir=expr + int id: @interpolated_string_literal_expr ref, + int appending_expr: @tap_expr_or_none ref +); + +linear_function_exprs( //dir=expr + unique int id: @linear_function_expr +); + +linear_function_extract_original_exprs( //dir=expr + unique int id: @linear_function_extract_original_expr +); + +linear_to_differentiable_function_exprs( //dir=expr + unique int id: @linear_to_differentiable_function_expr +); + +load_exprs( //dir=expr + unique int id: @load_expr +); + +member_ref_exprs( //dir=expr + unique int id: @member_ref_expr +); + +#keyset[id] +member_ref_expr_has_direct_to_storage_semantics( //dir=expr + int id: @member_ref_expr ref +); + +#keyset[id] +member_ref_expr_has_direct_to_implementation_semantics( //dir=expr + int id: @member_ref_expr ref +); + +#keyset[id] +member_ref_expr_has_ordinary_semantics( //dir=expr + int id: @member_ref_expr ref +); + +#keyset[id] +member_ref_expr_has_distributed_thunk_semantics( //dir=expr + int id: @member_ref_expr ref +); + +metatype_conversion_exprs( //dir=expr + unique int id: @metatype_conversion_expr +); + +nil_literal_exprs( //dir=expr + unique int id: @nil_literal_expr +); + +object_literal_exprs( //dir=expr + unique int id: @object_literal_expr, + int kind: int ref +); + +#keyset[id, index] +object_literal_expr_arguments( //dir=expr + int id: @object_literal_expr ref, + int index: int ref, + int argument: @argument_or_none ref +); + +optional_try_exprs( //dir=expr + unique int id: @optional_try_expr +); + +paren_exprs( //dir=expr + unique int id: @paren_expr +); + +pointer_to_pointer_exprs( //dir=expr + unique int id: @pointer_to_pointer_expr +); + +postfix_unary_exprs( //dir=expr + unique int id: @postfix_unary_expr +); + +prefix_unary_exprs( //dir=expr + unique int id: @prefix_unary_expr +); + +protocol_metatype_to_object_exprs( //dir=expr + unique int id: @protocol_metatype_to_object_expr +); + +regex_literal_exprs( //dir=expr + unique int id: @regex_literal_expr, + string pattern: string ref, + int version: int ref +); + +@self_apply_expr = + @dot_syntax_call_expr +| @initializer_ref_call_expr +; + +#keyset[id] +self_apply_exprs( //dir=expr + int id: @self_apply_expr ref, + int base: @expr_or_none ref +); + +string_to_pointer_exprs( //dir=expr + unique int id: @string_to_pointer_expr +); + +subscript_exprs( //dir=expr + unique int id: @subscript_expr +); + +#keyset[id, index] +subscript_expr_arguments( //dir=expr + int id: @subscript_expr ref, + int index: int ref, + int argument: @argument_or_none ref +); + +#keyset[id] +subscript_expr_has_direct_to_storage_semantics( //dir=expr + int id: @subscript_expr ref +); + +#keyset[id] +subscript_expr_has_direct_to_implementation_semantics( //dir=expr + int id: @subscript_expr ref +); + +#keyset[id] +subscript_expr_has_ordinary_semantics( //dir=expr + int id: @subscript_expr ref +); + +#keyset[id] +subscript_expr_has_distributed_thunk_semantics( //dir=expr + int id: @subscript_expr ref +); + +try_exprs( //dir=expr + unique int id: @try_expr +); + +underlying_to_opaque_exprs( //dir=expr + unique int id: @underlying_to_opaque_expr +); + +unevaluated_instance_exprs( //dir=expr + unique int id: @unevaluated_instance_expr +); + +unreachable_exprs( //dir=expr + unique int id: @unreachable_expr +); + +unresolved_member_chain_result_exprs( //dir=expr + unique int id: @unresolved_member_chain_result_expr +); + +unresolved_type_conversion_exprs( //dir=expr + unique int id: @unresolved_type_conversion_expr +); + +unsafe_cast_exprs( //dir=expr + unique int id: @unsafe_cast_expr +); + +unsafe_exprs( //dir=expr + unique int id: @unsafe_expr +); + +boolean_literal_exprs( //dir=expr + unique int id: @boolean_literal_expr, + boolean value: boolean ref +); + +conditional_checked_cast_exprs( //dir=expr + unique int id: @conditional_checked_cast_expr +); + +dot_syntax_call_exprs( //dir=expr + unique int id: @dot_syntax_call_expr +); + +dynamic_member_ref_exprs( //dir=expr + unique int id: @dynamic_member_ref_expr +); + +dynamic_subscript_exprs( //dir=expr + unique int id: @dynamic_subscript_expr +); + +forced_checked_cast_exprs( //dir=expr + unique int id: @forced_checked_cast_expr +); + +initializer_ref_call_exprs( //dir=expr + unique int id: @initializer_ref_call_expr +); + +is_exprs( //dir=expr + unique int id: @is_expr +); + +magic_identifier_literal_exprs( //dir=expr + unique int id: @magic_identifier_literal_expr, + string kind: string ref +); + +@number_literal_expr = + @float_literal_expr +| @integer_literal_expr +; + +string_literal_exprs( //dir=expr + unique int id: @string_literal_expr, + string value: string ref +); + +float_literal_exprs( //dir=expr + unique int id: @float_literal_expr, + string string_value: string ref +); + +integer_literal_exprs( //dir=expr + unique int id: @integer_literal_expr, + string string_value: string ref +); + +@pattern = + @any_pattern +| @binding_pattern +| @bool_pattern +| @enum_element_pattern +| @expr_pattern +| @is_pattern +| @named_pattern +| @optional_some_pattern +| @paren_pattern +| @tuple_pattern +| @typed_pattern +; + +#keyset[id] +pattern_types( //dir=pattern + int id: @pattern ref, + int type_: @type_or_none ref +); + +any_patterns( //dir=pattern + unique int id: @any_pattern +); + +binding_patterns( //dir=pattern + unique int id: @binding_pattern, + int sub_pattern: @pattern_or_none ref +); + +bool_patterns( //dir=pattern + unique int id: @bool_pattern, + boolean value: boolean ref +); + +enum_element_patterns( //dir=pattern + unique int id: @enum_element_pattern, + int element: @enum_element_decl_or_none ref +); + +#keyset[id] +enum_element_pattern_sub_patterns( //dir=pattern + int id: @enum_element_pattern ref, + int sub_pattern: @pattern_or_none ref +); + +expr_patterns( //dir=pattern + unique int id: @expr_pattern, + int sub_expr: @expr_or_none ref +); + +is_patterns( //dir=pattern + unique int id: @is_pattern +); + +#keyset[id] +is_pattern_cast_type_reprs( //dir=pattern + int id: @is_pattern ref, + int cast_type_repr: @type_repr_or_none ref +); + +#keyset[id] +is_pattern_sub_patterns( //dir=pattern + int id: @is_pattern ref, + int sub_pattern: @pattern_or_none ref +); + +named_patterns( //dir=pattern + unique int id: @named_pattern, + int var_decl: @var_decl_or_none ref +); + +optional_some_patterns( //dir=pattern + unique int id: @optional_some_pattern, + int sub_pattern: @pattern_or_none ref +); + +paren_patterns( //dir=pattern + unique int id: @paren_pattern, + int sub_pattern: @pattern_or_none ref +); + +tuple_patterns( //dir=pattern + unique int id: @tuple_pattern +); + +#keyset[id, index] +tuple_pattern_elements( //dir=pattern + int id: @tuple_pattern ref, + int index: int ref, + int element: @pattern_or_none ref +); + +typed_patterns( //dir=pattern + unique int id: @typed_pattern, + int sub_pattern: @pattern_or_none ref +); + +#keyset[id] +typed_pattern_type_reprs( //dir=pattern + int id: @typed_pattern ref, + int type_repr: @type_repr_or_none ref +); + +case_label_items( //dir=stmt + unique int id: @case_label_item, + int pattern: @pattern_or_none ref +); + +#keyset[id] +case_label_item_guards( //dir=stmt + int id: @case_label_item ref, + int guard: @expr_or_none ref +); + +condition_elements( //dir=stmt + unique int id: @condition_element +); + +#keyset[id] +condition_element_booleans( //dir=stmt + int id: @condition_element ref, + int boolean_: @expr_or_none ref +); + +#keyset[id] +condition_element_patterns( //dir=stmt + int id: @condition_element ref, + int pattern: @pattern_or_none ref +); + +#keyset[id] +condition_element_initializers( //dir=stmt + int id: @condition_element ref, + int initializer: @expr_or_none ref +); + +#keyset[id] +condition_element_availabilities( //dir=stmt + int id: @condition_element ref, + int availability: @availability_info_or_none ref +); + +@stmt = + @brace_stmt +| @break_stmt +| @case_stmt +| @continue_stmt +| @defer_stmt +| @discard_stmt +| @fail_stmt +| @fallthrough_stmt +| @labeled_stmt +| @pound_assert_stmt +| @return_stmt +| @then_stmt +| @throw_stmt +| @yield_stmt +; + +stmt_conditions( //dir=stmt + unique int id: @stmt_condition +); + +#keyset[id, index] +stmt_condition_elements( //dir=stmt + int id: @stmt_condition ref, + int index: int ref, + int element: @condition_element_or_none ref +); + +brace_stmts( //dir=stmt + unique int id: @brace_stmt +); + +#keyset[id, index] +brace_stmt_elements( //dir=stmt + int id: @brace_stmt ref, + int index: int ref, + int element: @ast_node_or_none ref +); + +break_stmts( //dir=stmt + unique int id: @break_stmt +); + +#keyset[id] +break_stmt_target_names( //dir=stmt + int id: @break_stmt ref, + string target_name: string ref +); + +#keyset[id] +break_stmt_targets( //dir=stmt + int id: @break_stmt ref, + int target: @stmt_or_none ref +); + +case_stmts( //dir=stmt + unique int id: @case_stmt, + int body: @stmt_or_none ref +); + +#keyset[id, index] +case_stmt_labels( //dir=stmt + int id: @case_stmt ref, + int index: int ref, + int label: @case_label_item_or_none ref +); + +#keyset[id, index] +case_stmt_variables( //dir=stmt + int id: @case_stmt ref, + int index: int ref, + int variable: @var_decl_or_none ref +); + +continue_stmts( //dir=stmt + unique int id: @continue_stmt +); + +#keyset[id] +continue_stmt_target_names( //dir=stmt + int id: @continue_stmt ref, + string target_name: string ref +); + +#keyset[id] +continue_stmt_targets( //dir=stmt + int id: @continue_stmt ref, + int target: @stmt_or_none ref +); + +defer_stmts( //dir=stmt + unique int id: @defer_stmt, + int body: @brace_stmt_or_none ref +); + +discard_stmts( //dir=stmt + unique int id: @discard_stmt, + int sub_expr: @expr_or_none ref +); + +fail_stmts( //dir=stmt + unique int id: @fail_stmt +); + +fallthrough_stmts( //dir=stmt + unique int id: @fallthrough_stmt, + int fallthrough_source: @case_stmt_or_none ref, + int fallthrough_dest: @case_stmt_or_none ref +); + +@labeled_stmt = + @do_catch_stmt +| @do_stmt +| @for_each_stmt +| @labeled_conditional_stmt +| @repeat_while_stmt +| @switch_stmt +; + +#keyset[id] +labeled_stmt_labels( //dir=stmt + int id: @labeled_stmt ref, + string label: string ref +); + +pound_assert_stmts( //dir=stmt + unique int id: @pound_assert_stmt, + int condition: @expr_or_none ref, + string message: string ref +); + +return_stmts( //dir=stmt + unique int id: @return_stmt +); + +#keyset[id] +return_stmt_results( //dir=stmt + int id: @return_stmt ref, + int result: @expr_or_none ref +); + +then_stmts( //dir=stmt + unique int id: @then_stmt, + int result: @expr_or_none ref +); + +throw_stmts( //dir=stmt + unique int id: @throw_stmt, + int sub_expr: @expr_or_none ref +); + +yield_stmts( //dir=stmt + unique int id: @yield_stmt +); + +#keyset[id, index] +yield_stmt_results( //dir=stmt + int id: @yield_stmt ref, + int index: int ref, + int result: @expr_or_none ref +); + +do_catch_stmts( //dir=stmt + unique int id: @do_catch_stmt, + int body: @stmt_or_none ref +); + +#keyset[id, index] +do_catch_stmt_catches( //dir=stmt + int id: @do_catch_stmt ref, + int index: int ref, + int catch: @case_stmt_or_none ref +); + +do_stmts( //dir=stmt + unique int id: @do_stmt, + int body: @brace_stmt_or_none ref +); + +for_each_stmts( //dir=stmt + unique int id: @for_each_stmt, + int pattern: @pattern_or_none ref, + int body: @brace_stmt_or_none ref +); + +#keyset[id, index] +for_each_stmt_variables( //dir=stmt + int id: @for_each_stmt ref, + int index: int ref, + int variable: @var_decl_or_none ref +); + +#keyset[id] +for_each_stmt_wheres( //dir=stmt + int id: @for_each_stmt ref, + int where: @expr_or_none ref +); + +#keyset[id] +for_each_stmt_iterator_vars( //dir=stmt + int id: @for_each_stmt ref, + int iteratorVar: @pattern_binding_decl_or_none ref +); + +#keyset[id] +for_each_stmt_next_calls( //dir=stmt + int id: @for_each_stmt ref, + int nextCall: @expr_or_none ref +); + +@labeled_conditional_stmt = + @guard_stmt +| @if_stmt +| @while_stmt +; + +#keyset[id] +labeled_conditional_stmts( //dir=stmt + int id: @labeled_conditional_stmt ref, + int condition: @stmt_condition_or_none ref +); + +repeat_while_stmts( //dir=stmt + unique int id: @repeat_while_stmt, + int condition: @expr_or_none ref, + int body: @stmt_or_none ref +); + +switch_stmts( //dir=stmt + unique int id: @switch_stmt, + int expr: @expr_or_none ref +); + +#keyset[id, index] +switch_stmt_cases( //dir=stmt + int id: @switch_stmt ref, + int index: int ref, + int case_: @case_stmt_or_none ref +); + +guard_stmts( //dir=stmt + unique int id: @guard_stmt, + int body: @brace_stmt_or_none ref +); + +if_stmts( //dir=stmt + unique int id: @if_stmt, + int then: @stmt_or_none ref +); + +#keyset[id] +if_stmt_elses( //dir=stmt + int id: @if_stmt ref, + int else: @stmt_or_none ref +); + +while_stmts( //dir=stmt + unique int id: @while_stmt, + int body: @stmt_or_none ref +); + +@type = + @any_function_type +| @any_generic_type +| @any_metatype_type +| @builtin_type +| @dependent_member_type +| @dynamic_self_type +| @error_type +| @existential_type +| @in_out_type +| @integer_type +| @l_value_type +| @module_type +| @pack_element_type +| @pack_expansion_type +| @pack_type +| @parameterized_protocol_type +| @protocol_composition_type +| @reference_storage_type +| @substitutable_type +| @sugar_type +| @tuple_type +| @unresolved_type +; + +#keyset[id] +types( //dir=type + int id: @type ref, + string name: string ref, + int canonical_type: @type_or_none ref +); + +type_reprs( //dir=type + unique int id: @type_repr, + int type_: @type_or_none ref +); + +@any_function_type = + @function_type +| @generic_function_type +; + +#keyset[id] +any_function_types( //dir=type + int id: @any_function_type ref, + int result: @type_or_none ref +); + +#keyset[id, index] +any_function_type_param_types( //dir=type + int id: @any_function_type ref, + int index: int ref, + int param_type: @type_or_none ref +); + +#keyset[id] +any_function_type_is_throwing( //dir=type + int id: @any_function_type ref +); + +#keyset[id] +any_function_type_is_async( //dir=type + int id: @any_function_type ref +); + +@any_generic_type = + @nominal_or_bound_generic_nominal_type +| @unbound_generic_type +; + +#keyset[id] +any_generic_types( //dir=type + int id: @any_generic_type ref, + int declaration: @generic_type_decl_or_none ref +); + +#keyset[id] +any_generic_type_parents( //dir=type + int id: @any_generic_type ref, + int parent: @type_or_none ref +); + +@any_metatype_type = + @existential_metatype_type +| @metatype_type +; + +@builtin_type = + @any_builtin_integer_type +| @builtin_bridge_object_type +| @builtin_default_actor_storage_type +| @builtin_executor_type +| @builtin_fixed_array_type +| @builtin_float_type +| @builtin_job_type +| @builtin_native_object_type +| @builtin_raw_pointer_type +| @builtin_raw_unsafe_continuation_type +| @builtin_unsafe_value_buffer_type +| @builtin_vector_type +; + +dependent_member_types( //dir=type + unique int id: @dependent_member_type, + int base_type: @type_or_none ref, + int associated_type_decl: @associated_type_decl_or_none ref +); + +dynamic_self_types( //dir=type + unique int id: @dynamic_self_type, + int static_self_type: @type_or_none ref +); + +error_types( //dir=type + unique int id: @error_type +); + +existential_types( //dir=type + unique int id: @existential_type, + int constraint: @type_or_none ref +); + +in_out_types( //dir=type + unique int id: @in_out_type, + int object_type: @type_or_none ref +); + +integer_types( //dir=type + unique int id: @integer_type, + string value: string ref +); + +l_value_types( //dir=type + unique int id: @l_value_type, + int object_type: @type_or_none ref +); + +module_types( //dir=type + unique int id: @module_type, + int module: @module_decl_or_none ref +); + +pack_element_types( //dir=type + unique int id: @pack_element_type, + int pack_type: @type_or_none ref +); + +pack_expansion_types( //dir=type + unique int id: @pack_expansion_type, + int pattern_type: @type_or_none ref, + int count_type: @type_or_none ref +); + +pack_types( //dir=type + unique int id: @pack_type +); + +#keyset[id, index] +pack_type_elements( //dir=type + int id: @pack_type ref, + int index: int ref, + int element: @type_or_none ref +); + +parameterized_protocol_types( //dir=type + unique int id: @parameterized_protocol_type, + int base: @protocol_type_or_none ref +); + +#keyset[id, index] +parameterized_protocol_type_args( //dir=type + int id: @parameterized_protocol_type ref, + int index: int ref, + int arg: @type_or_none ref +); + +protocol_composition_types( //dir=type + unique int id: @protocol_composition_type +); + +#keyset[id, index] +protocol_composition_type_members( //dir=type + int id: @protocol_composition_type ref, + int index: int ref, + int member: @type_or_none ref +); + +@reference_storage_type = + @unmanaged_storage_type +| @unowned_storage_type +| @weak_storage_type +; + +#keyset[id] +reference_storage_types( //dir=type + int id: @reference_storage_type ref, + int referent_type: @type_or_none ref +); + +@substitutable_type = + @archetype_type +| @generic_type_param_type +; + +@sugar_type = + @paren_type +| @syntax_sugar_type +| @type_alias_type +; + +tuple_types( //dir=type + unique int id: @tuple_type +); + +#keyset[id, index] +tuple_type_types( //dir=type + int id: @tuple_type ref, + int index: int ref, + int type_: @type_or_none ref +); + +#keyset[id, index] +tuple_type_names( //dir=type + int id: @tuple_type ref, + int index: int ref, + string name: string ref +); + +unresolved_types( //dir=type + unique int id: @unresolved_type +); + +@any_builtin_integer_type = + @builtin_integer_literal_type +| @builtin_integer_type +; + +@archetype_type = + @local_archetype_type +| @opaque_type_archetype_type +| @pack_archetype_type +| @primary_archetype_type +; + +#keyset[id] +archetype_types( //dir=type + int id: @archetype_type ref, + int interface_type: @type_or_none ref +); + +#keyset[id] +archetype_type_superclasses( //dir=type + int id: @archetype_type ref, + int superclass: @type_or_none ref +); + +#keyset[id, index] +archetype_type_protocols( //dir=type + int id: @archetype_type ref, + int index: int ref, + int protocol: @protocol_decl_or_none ref +); + +builtin_bridge_object_types( //dir=type + unique int id: @builtin_bridge_object_type +); + +builtin_default_actor_storage_types( //dir=type + unique int id: @builtin_default_actor_storage_type +); + +builtin_executor_types( //dir=type + unique int id: @builtin_executor_type +); + +builtin_fixed_array_types( //dir=type + unique int id: @builtin_fixed_array_type +); + +builtin_float_types( //dir=type + unique int id: @builtin_float_type +); + +builtin_job_types( //dir=type + unique int id: @builtin_job_type +); + +builtin_native_object_types( //dir=type + unique int id: @builtin_native_object_type +); + +builtin_raw_pointer_types( //dir=type + unique int id: @builtin_raw_pointer_type +); + +builtin_raw_unsafe_continuation_types( //dir=type + unique int id: @builtin_raw_unsafe_continuation_type +); + +builtin_unsafe_value_buffer_types( //dir=type + unique int id: @builtin_unsafe_value_buffer_type +); + +builtin_vector_types( //dir=type + unique int id: @builtin_vector_type +); + +existential_metatype_types( //dir=type + unique int id: @existential_metatype_type +); + +function_types( //dir=type + unique int id: @function_type +); + +generic_function_types( //dir=type + unique int id: @generic_function_type +); + +#keyset[id, index] +generic_function_type_generic_params( //dir=type + int id: @generic_function_type ref, + int index: int ref, + int generic_param: @generic_type_param_type_or_none ref +); + +generic_type_param_types( //dir=type + unique int id: @generic_type_param_type +); + +metatype_types( //dir=type + unique int id: @metatype_type +); + +@nominal_or_bound_generic_nominal_type = + @bound_generic_type +| @nominal_type +; + +paren_types( //dir=type + unique int id: @paren_type, + int type_: @type_or_none ref +); + +@syntax_sugar_type = + @dictionary_type +| @inline_array_type +| @unary_syntax_sugar_type +; + +type_alias_types( //dir=type + unique int id: @type_alias_type, + int decl: @type_alias_decl_or_none ref +); + +unbound_generic_types( //dir=type + unique int id: @unbound_generic_type +); + +unmanaged_storage_types( //dir=type + unique int id: @unmanaged_storage_type +); + +unowned_storage_types( //dir=type + unique int id: @unowned_storage_type +); + +weak_storage_types( //dir=type + unique int id: @weak_storage_type +); + +@bound_generic_type = + @bound_generic_class_type +| @bound_generic_enum_type +| @bound_generic_struct_type +; + +#keyset[id, index] +bound_generic_type_arg_types( //dir=type + int id: @bound_generic_type ref, + int index: int ref, + int arg_type: @type_or_none ref +); + +builtin_integer_literal_types( //dir=type + unique int id: @builtin_integer_literal_type +); + +builtin_integer_types( //dir=type + unique int id: @builtin_integer_type +); + +#keyset[id] +builtin_integer_type_widths( //dir=type + int id: @builtin_integer_type ref, + int width: int ref +); + +dictionary_types( //dir=type + unique int id: @dictionary_type, + int key_type: @type_or_none ref, + int value_type: @type_or_none ref +); + +inline_array_types( //dir=type + unique int id: @inline_array_type, + int count_type: @type_or_none ref, + int element_type: @type_or_none ref +); + +@local_archetype_type = + @element_archetype_type +| @existential_archetype_type +; + +@nominal_type = + @class_type +| @enum_type +| @protocol_type +| @struct_type +; + +opaque_type_archetype_types( //dir=type + unique int id: @opaque_type_archetype_type, + int declaration: @opaque_type_decl_or_none ref +); + +pack_archetype_types( //dir=type + unique int id: @pack_archetype_type +); + +primary_archetype_types( //dir=type + unique int id: @primary_archetype_type +); + +@unary_syntax_sugar_type = + @array_slice_type +| @optional_type +| @variadic_sequence_type +; + +#keyset[id] +unary_syntax_sugar_types( //dir=type + int id: @unary_syntax_sugar_type ref, + int base_type: @type_or_none ref +); + +array_slice_types( //dir=type + unique int id: @array_slice_type +); + +bound_generic_class_types( //dir=type + unique int id: @bound_generic_class_type +); + +bound_generic_enum_types( //dir=type + unique int id: @bound_generic_enum_type +); + +bound_generic_struct_types( //dir=type + unique int id: @bound_generic_struct_type +); + +class_types( //dir=type + unique int id: @class_type +); + +element_archetype_types( //dir=type + unique int id: @element_archetype_type +); + +enum_types( //dir=type + unique int id: @enum_type +); + +existential_archetype_types( //dir=type + unique int id: @existential_archetype_type +); + +optional_types( //dir=type + unique int id: @optional_type +); + +protocol_types( //dir=type + unique int id: @protocol_type +); + +struct_types( //dir=type + unique int id: @struct_type +); + +variadic_sequence_types( //dir=type + unique int id: @variadic_sequence_type +); + +@accessor_or_none = + @accessor +| @unspecified_element +; + +@argument_or_none = + @argument +| @unspecified_element +; + +@associated_type_decl_or_none = + @associated_type_decl +| @unspecified_element +; + +@ast_node_or_none = + @ast_node +| @unspecified_element +; + +@availability_info_or_none = + @availability_info +| @unspecified_element +; + +@availability_spec_or_none = + @availability_spec +| @unspecified_element +; + +@brace_stmt_or_none = + @brace_stmt +| @unspecified_element +; + +@captured_decl_or_none = + @captured_decl +| @unspecified_element +; + +@case_label_item_or_none = + @case_label_item +| @unspecified_element +; + +@case_stmt_or_none = + @case_stmt +| @unspecified_element +; + +@closure_expr_or_none = + @closure_expr +| @unspecified_element +; + +@condition_element_or_none = + @condition_element +| @unspecified_element +; + +@decl_or_none = + @decl +| @unspecified_element +; + +@enum_element_decl_or_none = + @enum_element_decl +| @unspecified_element +; + +@expr_or_none = + @expr +| @unspecified_element +; + +@file_or_none = + @file +| @unspecified_element +; + +@function_or_none = + @function +| @unspecified_element +; + +@generic_type_decl_or_none = + @generic_type_decl +| @unspecified_element +; + +@generic_type_param_decl_or_none = + @generic_type_param_decl +| @unspecified_element +; + +@generic_type_param_type_or_none = + @generic_type_param_type +| @unspecified_element +; + +@initializer_or_none = + @initializer +| @unspecified_element +; + +@key_path_component_or_none = + @key_path_component +| @unspecified_element +; + +@location_or_none = + @location +| @unspecified_element +; + +@macro_role_or_none = + @macro_role +| @unspecified_element +; + +@module_decl_or_none = + @module_decl +| @unspecified_element +; + +@nominal_type_decl_or_none = + @nominal_type_decl +| @unspecified_element +; + +@opaque_type_decl_or_none = + @opaque_type_decl +| @unspecified_element +; + +@opaque_value_expr_or_none = + @opaque_value_expr +| @unspecified_element +; + +@param_decl_or_none = + @param_decl +| @unspecified_element +; + +@pattern_or_none = + @pattern +| @unspecified_element +; + +@pattern_binding_decl_or_none = + @pattern_binding_decl +| @unspecified_element +; + +@precedence_group_decl_or_none = + @precedence_group_decl +| @unspecified_element +; + +@protocol_decl_or_none = + @protocol_decl +| @unspecified_element +; + +@protocol_type_or_none = + @protocol_type +| @unspecified_element +; + +@stmt_or_none = + @stmt +| @unspecified_element +; + +@stmt_condition_or_none = + @stmt_condition +| @unspecified_element +; + +@string_literal_expr_or_none = + @string_literal_expr +| @unspecified_element +; + +@tap_expr_or_none = + @tap_expr +| @unspecified_element +; + +@type_or_none = + @type +| @unspecified_element +; + +@type_alias_decl_or_none = + @type_alias_decl +| @unspecified_element +; + +@type_repr_or_none = + @type_repr +| @unspecified_element +; + +@value_decl_or_none = + @unspecified_element +| @value_decl +; + +@var_decl_or_none = + @unspecified_element +| @var_decl +; diff --git a/swift/downgrades/ee3053b673c901a325b361b18c50b18342752bf8/upgrade.properties b/swift/downgrades/ee3053b673c901a325b361b18c50b18342752bf8/upgrade.properties new file mode 100644 index 000000000000..dfc606c6f143 --- /dev/null +++ b/swift/downgrades/ee3053b673c901a325b361b18c50b18342752bf8/upgrade.properties @@ -0,0 +1,2 @@ +description: Upgrade to Swift 6.3 +compatibility: full diff --git a/swift/ql/lib/upgrades/33e5e5e03bd3f98322f4c67aefa81015be832b88/old.dbscheme b/swift/ql/lib/upgrades/33e5e5e03bd3f98322f4c67aefa81015be832b88/old.dbscheme new file mode 100644 index 000000000000..33e5e5e03bd3 --- /dev/null +++ b/swift/ql/lib/upgrades/33e5e5e03bd3f98322f4c67aefa81015be832b88/old.dbscheme @@ -0,0 +1,2885 @@ +// generated by codegen/codegen.py, do not edit + +// from prefix.dbscheme +/** + * The source location of the snapshot. + */ +sourceLocationPrefix( + string prefix: string ref +); + + +// from schema.py + +@element = + @file +| @generic_context +| @locatable +| @location +| @type +; + +#keyset[id] +element_is_unknown( + int id: @element ref +); + +@file = + @db_file +; + +#keyset[id] +files( + int id: @file ref, + string name: string ref +); + +#keyset[id] +file_is_successfully_extracted( + int id: @file ref +); + +@locatable = + @argument +| @ast_node +| @comment +| @diagnostics +| @error_element +; + +#keyset[id] +locatable_locations( + int id: @locatable ref, + int location: @location_or_none ref +); + +@location = + @db_location +; + +#keyset[id] +locations( + int id: @location ref, + int file: @file_or_none ref, + int start_line: int ref, + int start_column: int ref, + int end_line: int ref, + int end_column: int ref +); + +@ast_node = + @availability_info +| @availability_spec +| @callable +| @case_label_item +| @condition_element +| @decl +| @expr +| @key_path_component +| @macro_role +| @pattern +| @stmt +| @stmt_condition +| @type_repr +; + +comments( + unique int id: @comment, + string text: string ref +); + +db_files( + unique int id: @db_file +); + +db_locations( + unique int id: @db_location +); + +diagnostics( + unique int id: @diagnostics, + string text: string ref, + int kind: int ref +); + +@error_element = + @error_expr +| @error_type +| @overloaded_decl_ref_expr +| @unresolved_decl_ref_expr +| @unresolved_dot_expr +| @unresolved_member_chain_result_expr +| @unresolved_member_expr +| @unresolved_pattern_expr +| @unresolved_specialize_expr +| @unresolved_type +| @unresolved_type_conversion_expr +| @unspecified_element +; + +availability_infos( + unique int id: @availability_info +); + +#keyset[id] +availability_info_is_unavailable( + int id: @availability_info ref +); + +#keyset[id, index] +availability_info_specs( + int id: @availability_info ref, + int index: int ref, + int spec: @availability_spec_or_none ref +); + +availability_specs( + unique int id: @availability_spec +); + +#keyset[id] +availability_spec_platforms( + int id: @availability_spec ref, + string platform: string ref +); + +#keyset[id] +availability_spec_versions( + int id: @availability_spec ref, + string version: string ref +); + +#keyset[id] +availability_spec_is_wildcard( + int id: @availability_spec ref +); + +@callable = + @closure_expr +| @function +; + +#keyset[id] +callable_names( + int id: @callable ref, + string name: string ref +); + +#keyset[id] +callable_self_params( + int id: @callable ref, + int self_param: @param_decl_or_none ref +); + +#keyset[id, index] +callable_params( + int id: @callable ref, + int index: int ref, + int param: @param_decl_or_none ref +); + +#keyset[id] +callable_bodies( + int id: @callable ref, + int body: @brace_stmt_or_none ref +); + +#keyset[id, index] +callable_captures( + int id: @callable ref, + int index: int ref, + int capture: @captured_decl_or_none ref +); + +key_path_components( + unique int id: @key_path_component, + int kind: int ref, + int component_type: @type_or_none ref +); + +#keyset[id, index] +key_path_component_subscript_arguments( + int id: @key_path_component ref, + int index: int ref, + int subscript_argument: @argument_or_none ref +); + +#keyset[id] +key_path_component_tuple_indices( + int id: @key_path_component ref, + int tuple_index: int ref +); + +#keyset[id] +key_path_component_decl_refs( + int id: @key_path_component ref, + int decl_ref: @value_decl_or_none ref +); + +macro_roles( + unique int id: @macro_role, + int kind: int ref, + int macro_syntax: int ref +); + +#keyset[id, index] +macro_role_conformances( + int id: @macro_role ref, + int index: int ref, + int conformance: @expr_or_none ref +); + +#keyset[id, index] +macro_role_names( + int id: @macro_role ref, + int index: int ref, + string name: string ref +); + +unspecified_elements( + unique int id: @unspecified_element, + string property: string ref, + string error: string ref +); + +#keyset[id] +unspecified_element_parents( + int id: @unspecified_element ref, + int parent: @element ref +); + +#keyset[id] +unspecified_element_indices( + int id: @unspecified_element ref, + int index: int ref +); + +#keyset[id, index] +unspecified_element_children( + int id: @unspecified_element ref, + int index: int ref, + int child: @ast_node_or_none ref +); + +@decl = + @captured_decl +| @enum_case_decl +| @extension_decl +| @if_config_decl +| @import_decl +| @missing_member_decl +| @operator_decl +| @pattern_binding_decl +| @pound_diagnostic_decl +| @precedence_group_decl +| @top_level_code_decl +| @using_decl +| @value_decl +; + +#keyset[id] +decls( //dir=decl + int id: @decl ref, + int module: @module_decl_or_none ref +); + +#keyset[id, index] +decl_members( //dir=decl + int id: @decl ref, + int index: int ref, + int member: @decl_or_none ref +); + +@generic_context = + @extension_decl +| @function +| @generic_type_decl +| @macro_decl +| @subscript_decl +; + +#keyset[id, index] +generic_context_generic_type_params( //dir=decl + int id: @generic_context ref, + int index: int ref, + int generic_type_param: @generic_type_param_decl_or_none ref +); + +captured_decls( //dir=decl + unique int id: @captured_decl, + int decl: @value_decl_or_none ref +); + +#keyset[id] +captured_decl_is_direct( //dir=decl + int id: @captured_decl ref +); + +#keyset[id] +captured_decl_is_escaping( //dir=decl + int id: @captured_decl ref +); + +enum_case_decls( //dir=decl + unique int id: @enum_case_decl +); + +#keyset[id, index] +enum_case_decl_elements( //dir=decl + int id: @enum_case_decl ref, + int index: int ref, + int element: @enum_element_decl_or_none ref +); + +extension_decls( //dir=decl + unique int id: @extension_decl, + int extended_type_decl: @nominal_type_decl_or_none ref +); + +#keyset[id, index] +extension_decl_protocols( //dir=decl + int id: @extension_decl ref, + int index: int ref, + int protocol: @protocol_decl_or_none ref +); + +if_config_decls( //dir=decl + unique int id: @if_config_decl +); + +#keyset[id, index] +if_config_decl_active_elements( //dir=decl + int id: @if_config_decl ref, + int index: int ref, + int active_element: @ast_node_or_none ref +); + +import_decls( //dir=decl + unique int id: @import_decl +); + +#keyset[id] +import_decl_is_exported( //dir=decl + int id: @import_decl ref +); + +#keyset[id] +import_decl_imported_modules( //dir=decl + int id: @import_decl ref, + int imported_module: @module_decl_or_none ref +); + +#keyset[id, index] +import_decl_declarations( //dir=decl + int id: @import_decl ref, + int index: int ref, + int declaration: @value_decl_or_none ref +); + +missing_member_decls( //dir=decl + unique int id: @missing_member_decl, + string name: string ref +); + +@operator_decl = + @infix_operator_decl +| @postfix_operator_decl +| @prefix_operator_decl +; + +#keyset[id] +operator_decls( //dir=decl + int id: @operator_decl ref, + string name: string ref +); + +pattern_binding_decls( //dir=decl + unique int id: @pattern_binding_decl +); + +#keyset[id, index] +pattern_binding_decl_inits( //dir=decl + int id: @pattern_binding_decl ref, + int index: int ref, + int init: @expr_or_none ref +); + +#keyset[id, index] +pattern_binding_decl_patterns( //dir=decl + int id: @pattern_binding_decl ref, + int index: int ref, + int pattern: @pattern_or_none ref +); + +pound_diagnostic_decls( //dir=decl + unique int id: @pound_diagnostic_decl, + int kind: int ref, + int message: @string_literal_expr_or_none ref +); + +precedence_group_decls( //dir=decl + unique int id: @precedence_group_decl +); + +top_level_code_decls( //dir=decl + unique int id: @top_level_code_decl, + int body: @brace_stmt_or_none ref +); + +using_decls( //dir=decl + unique int id: @using_decl +); + +#keyset[id] +using_decl_is_main_actor( //dir=decl + int id: @using_decl ref +); + +#keyset[id] +using_decl_is_nonisolated( //dir=decl + int id: @using_decl ref +); + +@value_decl = + @abstract_storage_decl +| @enum_element_decl +| @function +| @macro_decl +| @type_decl +; + +#keyset[id] +value_decls( //dir=decl + int id: @value_decl ref, + int interface_type: @type_or_none ref +); + +@abstract_storage_decl = + @subscript_decl +| @var_decl +; + +#keyset[id, index] +abstract_storage_decl_accessors( //dir=decl + int id: @abstract_storage_decl ref, + int index: int ref, + int accessor: @accessor_or_none ref +); + +enum_element_decls( //dir=decl + unique int id: @enum_element_decl, + string name: string ref +); + +#keyset[id, index] +enum_element_decl_params( //dir=decl + int id: @enum_element_decl ref, + int index: int ref, + int param: @param_decl_or_none ref +); + +@function = + @accessor_or_named_function +| @deinitializer +| @initializer +; + +infix_operator_decls( //dir=decl + unique int id: @infix_operator_decl +); + +#keyset[id] +infix_operator_decl_precedence_groups( //dir=decl + int id: @infix_operator_decl ref, + int precedence_group: @precedence_group_decl_or_none ref +); + +macro_decls( //dir=decl + unique int id: @macro_decl, + string name: string ref +); + +#keyset[id, index] +macro_decl_parameters( //dir=decl + int id: @macro_decl ref, + int index: int ref, + int parameter: @param_decl_or_none ref +); + +#keyset[id, index] +macro_decl_roles( //dir=decl + int id: @macro_decl ref, + int index: int ref, + int role: @macro_role_or_none ref +); + +postfix_operator_decls( //dir=decl + unique int id: @postfix_operator_decl +); + +prefix_operator_decls( //dir=decl + unique int id: @prefix_operator_decl +); + +@type_decl = + @abstract_type_param_decl +| @generic_type_decl +| @module_decl +; + +#keyset[id] +type_decls( //dir=decl + int id: @type_decl ref, + string name: string ref +); + +#keyset[id, index] +type_decl_inherited_types( //dir=decl + int id: @type_decl ref, + int index: int ref, + int inherited_type: @type_or_none ref +); + +@abstract_type_param_decl = + @associated_type_decl +| @generic_type_param_decl +; + +@accessor_or_named_function = + @accessor +| @named_function +; + +deinitializers( //dir=decl + unique int id: @deinitializer +); + +@generic_type_decl = + @nominal_type_decl +| @opaque_type_decl +| @type_alias_decl +; + +initializers( //dir=decl + unique int id: @initializer +); + +module_decls( //dir=decl + unique int id: @module_decl +); + +#keyset[id] +module_decl_is_builtin_module( //dir=decl + int id: @module_decl ref +); + +#keyset[id] +module_decl_is_system_module( //dir=decl + int id: @module_decl ref +); + +module_decl_imported_modules( //dir=decl + int id: @module_decl ref, + int imported_module: @module_decl_or_none ref +); + +module_decl_exported_modules( //dir=decl + int id: @module_decl ref, + int exported_module: @module_decl_or_none ref +); + +subscript_decls( //dir=decl + unique int id: @subscript_decl, + int element_type: @type_or_none ref +); + +#keyset[id, index] +subscript_decl_params( //dir=decl + int id: @subscript_decl ref, + int index: int ref, + int param: @param_decl_or_none ref +); + +@var_decl = + @concrete_var_decl +| @param_decl +; + +#keyset[id] +var_decls( //dir=decl + int id: @var_decl ref, + string name: string ref, + int type_: @type_or_none ref +); + +#keyset[id] +var_decl_attached_property_wrapper_types( //dir=decl + int id: @var_decl ref, + int attached_property_wrapper_type: @type_or_none ref +); + +#keyset[id] +var_decl_parent_patterns( //dir=decl + int id: @var_decl ref, + int parent_pattern: @pattern_or_none ref +); + +#keyset[id] +var_decl_parent_initializers( //dir=decl + int id: @var_decl ref, + int parent_initializer: @expr_or_none ref +); + +#keyset[id] +var_decl_property_wrapper_backing_var_bindings( //dir=decl + int id: @var_decl ref, + int property_wrapper_backing_var_binding: @pattern_binding_decl_or_none ref +); + +#keyset[id] +var_decl_property_wrapper_backing_vars( //dir=decl + int id: @var_decl ref, + int property_wrapper_backing_var: @var_decl_or_none ref +); + +#keyset[id] +var_decl_property_wrapper_projection_var_bindings( //dir=decl + int id: @var_decl ref, + int property_wrapper_projection_var_binding: @pattern_binding_decl_or_none ref +); + +#keyset[id] +var_decl_property_wrapper_projection_vars( //dir=decl + int id: @var_decl ref, + int property_wrapper_projection_var: @var_decl_or_none ref +); + +accessors( //dir=decl + unique int id: @accessor +); + +#keyset[id] +accessor_is_getter( //dir=decl + int id: @accessor ref +); + +#keyset[id] +accessor_is_setter( //dir=decl + int id: @accessor ref +); + +#keyset[id] +accessor_is_will_set( //dir=decl + int id: @accessor ref +); + +#keyset[id] +accessor_is_did_set( //dir=decl + int id: @accessor ref +); + +#keyset[id] +accessor_is_read( //dir=decl + int id: @accessor ref +); + +#keyset[id] +accessor_is_modify( //dir=decl + int id: @accessor ref +); + +#keyset[id] +accessor_is_unsafe_address( //dir=decl + int id: @accessor ref +); + +#keyset[id] +accessor_is_unsafe_mutable_address( //dir=decl + int id: @accessor ref +); + +#keyset[id] +accessor_is_distributed_get( //dir=decl + int id: @accessor ref +); + +#keyset[id] +accessor_is_read2( //dir=decl + int id: @accessor ref +); + +#keyset[id] +accessor_is_modify2( //dir=decl + int id: @accessor ref +); + +#keyset[id] +accessor_is_init( //dir=decl + int id: @accessor ref +); + +associated_type_decls( //dir=decl + unique int id: @associated_type_decl +); + +concrete_var_decls( //dir=decl + unique int id: @concrete_var_decl, + int introducer_int: int ref +); + +generic_type_param_decls( //dir=decl + unique int id: @generic_type_param_decl +); + +named_functions( //dir=decl + unique int id: @named_function +); + +@nominal_type_decl = + @class_decl +| @enum_decl +| @protocol_decl +| @struct_decl +; + +#keyset[id] +nominal_type_decls( //dir=decl + int id: @nominal_type_decl ref, + int type_: @type_or_none ref +); + +opaque_type_decls( //dir=decl + unique int id: @opaque_type_decl, + int naming_declaration: @value_decl_or_none ref +); + +#keyset[id, index] +opaque_type_decl_opaque_generic_params( //dir=decl + int id: @opaque_type_decl ref, + int index: int ref, + int opaque_generic_param: @generic_type_param_type_or_none ref +); + +param_decls( //dir=decl + unique int id: @param_decl +); + +#keyset[id] +param_decl_is_inout( //dir=decl + int id: @param_decl ref +); + +#keyset[id] +param_decl_property_wrapper_local_wrapped_var_bindings( //dir=decl + int id: @param_decl ref, + int property_wrapper_local_wrapped_var_binding: @pattern_binding_decl_or_none ref +); + +#keyset[id] +param_decl_property_wrapper_local_wrapped_vars( //dir=decl + int id: @param_decl ref, + int property_wrapper_local_wrapped_var: @var_decl_or_none ref +); + +type_alias_decls( //dir=decl + unique int id: @type_alias_decl, + int aliased_type: @type_or_none ref +); + +class_decls( //dir=decl + unique int id: @class_decl +); + +enum_decls( //dir=decl + unique int id: @enum_decl +); + +protocol_decls( //dir=decl + unique int id: @protocol_decl +); + +struct_decls( //dir=decl + unique int id: @struct_decl +); + +arguments( //dir=expr + unique int id: @argument, + string label: string ref, + int expr: @expr_or_none ref +); + +@expr = + @any_try_expr +| @applied_property_wrapper_expr +| @apply_expr +| @assign_expr +| @bind_optional_expr +| @capture_list_expr +| @closure_expr +| @collection_expr +| @consume_expr +| @copy_expr +| @current_context_isolation_expr +| @decl_ref_expr +| @default_argument_expr +| @discard_assignment_expr +| @dot_syntax_base_ignored_expr +| @dynamic_type_expr +| @enum_is_case_expr +| @error_expr +| @explicit_cast_expr +| @extract_function_isolation_expr +| @force_value_expr +| @identity_expr +| @if_expr +| @implicit_conversion_expr +| @in_out_expr +| @key_path_application_expr +| @key_path_dot_expr +| @key_path_expr +| @lazy_initialization_expr +| @literal_expr +| @lookup_expr +| @make_temporarily_escapable_expr +| @materialize_pack_expr +| @obj_c_selector_expr +| @one_way_expr +| @opaque_value_expr +| @open_existential_expr +| @optional_evaluation_expr +| @other_initializer_ref_expr +| @overloaded_decl_ref_expr +| @pack_element_expr +| @pack_expansion_expr +| @property_wrapper_value_placeholder_expr +| @rebind_self_in_initializer_expr +| @sequence_expr +| @single_value_stmt_expr +| @super_ref_expr +| @tap_expr +| @tuple_element_expr +| @tuple_expr +| @type_expr +| @type_value_expr +| @unresolved_decl_ref_expr +| @unresolved_dot_expr +| @unresolved_member_expr +| @unresolved_pattern_expr +| @unresolved_specialize_expr +| @vararg_expansion_expr +; + +#keyset[id] +expr_types( //dir=expr + int id: @expr ref, + int type_: @type_or_none ref +); + +@any_try_expr = + @force_try_expr +| @optional_try_expr +| @try_expr +; + +#keyset[id] +any_try_exprs( //dir=expr + int id: @any_try_expr ref, + int sub_expr: @expr_or_none ref +); + +applied_property_wrapper_exprs( //dir=expr + unique int id: @applied_property_wrapper_expr, + int kind: int ref, + int value: @expr_or_none ref, + int param: @param_decl_or_none ref +); + +@apply_expr = + @binary_expr +| @call_expr +| @postfix_unary_expr +| @prefix_unary_expr +| @self_apply_expr +; + +#keyset[id] +apply_exprs( //dir=expr + int id: @apply_expr ref, + int function: @expr_or_none ref +); + +#keyset[id, index] +apply_expr_arguments( //dir=expr + int id: @apply_expr ref, + int index: int ref, + int argument: @argument_or_none ref +); + +assign_exprs( //dir=expr + unique int id: @assign_expr, + int dest: @expr_or_none ref, + int source: @expr_or_none ref +); + +bind_optional_exprs( //dir=expr + unique int id: @bind_optional_expr, + int sub_expr: @expr_or_none ref +); + +capture_list_exprs( //dir=expr + unique int id: @capture_list_expr, + int closure_body: @closure_expr_or_none ref +); + +#keyset[id, index] +capture_list_expr_binding_decls( //dir=expr + int id: @capture_list_expr ref, + int index: int ref, + int binding_decl: @pattern_binding_decl_or_none ref +); + +@closure_expr = + @auto_closure_expr +| @explicit_closure_expr +; + +@collection_expr = + @array_expr +| @dictionary_expr +; + +consume_exprs( //dir=expr + unique int id: @consume_expr, + int sub_expr: @expr_or_none ref +); + +copy_exprs( //dir=expr + unique int id: @copy_expr, + int sub_expr: @expr_or_none ref +); + +current_context_isolation_exprs( //dir=expr + unique int id: @current_context_isolation_expr, + int actor: @expr_or_none ref +); + +decl_ref_exprs( //dir=expr + unique int id: @decl_ref_expr, + int decl: @decl_or_none ref +); + +#keyset[id, index] +decl_ref_expr_replacement_types( //dir=expr + int id: @decl_ref_expr ref, + int index: int ref, + int replacement_type: @type_or_none ref +); + +#keyset[id] +decl_ref_expr_has_direct_to_storage_semantics( //dir=expr + int id: @decl_ref_expr ref +); + +#keyset[id] +decl_ref_expr_has_direct_to_implementation_semantics( //dir=expr + int id: @decl_ref_expr ref +); + +#keyset[id] +decl_ref_expr_has_ordinary_semantics( //dir=expr + int id: @decl_ref_expr ref +); + +#keyset[id] +decl_ref_expr_has_distributed_thunk_semantics( //dir=expr + int id: @decl_ref_expr ref +); + +default_argument_exprs( //dir=expr + unique int id: @default_argument_expr, + int param_decl: @param_decl_or_none ref, + int param_index: int ref +); + +#keyset[id] +default_argument_expr_caller_side_defaults( //dir=expr + int id: @default_argument_expr ref, + int caller_side_default: @expr_or_none ref +); + +discard_assignment_exprs( //dir=expr + unique int id: @discard_assignment_expr +); + +dot_syntax_base_ignored_exprs( //dir=expr + unique int id: @dot_syntax_base_ignored_expr, + int qualifier: @expr_or_none ref, + int sub_expr: @expr_or_none ref +); + +dynamic_type_exprs( //dir=expr + unique int id: @dynamic_type_expr, + int base: @expr_or_none ref +); + +enum_is_case_exprs( //dir=expr + unique int id: @enum_is_case_expr, + int sub_expr: @expr_or_none ref, + int element: @enum_element_decl_or_none ref +); + +error_exprs( //dir=expr + unique int id: @error_expr +); + +@explicit_cast_expr = + @checked_cast_expr +| @coerce_expr +; + +#keyset[id] +explicit_cast_exprs( //dir=expr + int id: @explicit_cast_expr ref, + int sub_expr: @expr_or_none ref +); + +extract_function_isolation_exprs( //dir=expr + unique int id: @extract_function_isolation_expr, + int function_expr: @expr_or_none ref +); + +force_value_exprs( //dir=expr + unique int id: @force_value_expr, + int sub_expr: @expr_or_none ref +); + +@identity_expr = + @await_expr +| @borrow_expr +| @dot_self_expr +| @paren_expr +| @unresolved_member_chain_result_expr +| @unsafe_expr +; + +#keyset[id] +identity_exprs( //dir=expr + int id: @identity_expr ref, + int sub_expr: @expr_or_none ref +); + +if_exprs( //dir=expr + unique int id: @if_expr, + int condition: @expr_or_none ref, + int then_expr: @expr_or_none ref, + int else_expr: @expr_or_none ref +); + +@implicit_conversion_expr = + @abi_safe_conversion_expr +| @actor_isolation_erasure_expr +| @any_hashable_erasure_expr +| @archetype_to_super_expr +| @array_to_pointer_expr +| @bridge_from_obj_c_expr +| @bridge_to_obj_c_expr +| @class_metatype_to_object_expr +| @collection_upcast_conversion_expr +| @conditional_bridge_from_obj_c_expr +| @covariant_function_conversion_expr +| @covariant_return_conversion_expr +| @derived_to_base_expr +| @destructure_tuple_expr +| @differentiable_function_expr +| @differentiable_function_extract_original_expr +| @erasure_expr +| @existential_metatype_to_object_expr +| @foreign_object_conversion_expr +| @function_conversion_expr +| @in_out_to_pointer_expr +| @inject_into_optional_expr +| @linear_function_expr +| @linear_function_extract_original_expr +| @linear_to_differentiable_function_expr +| @load_expr +| @metatype_conversion_expr +| @pointer_to_pointer_expr +| @protocol_metatype_to_object_expr +| @string_to_pointer_expr +| @underlying_to_opaque_expr +| @unevaluated_instance_expr +| @unreachable_expr +| @unresolved_type_conversion_expr +| @unsafe_cast_expr +; + +#keyset[id] +implicit_conversion_exprs( //dir=expr + int id: @implicit_conversion_expr ref, + int sub_expr: @expr_or_none ref +); + +in_out_exprs( //dir=expr + unique int id: @in_out_expr, + int sub_expr: @expr_or_none ref +); + +key_path_application_exprs( //dir=expr + unique int id: @key_path_application_expr, + int base: @expr_or_none ref, + int key_path: @expr_or_none ref +); + +key_path_dot_exprs( //dir=expr + unique int id: @key_path_dot_expr +); + +key_path_exprs( //dir=expr + unique int id: @key_path_expr +); + +#keyset[id] +key_path_expr_roots( //dir=expr + int id: @key_path_expr ref, + int root: @type_repr_or_none ref +); + +#keyset[id, index] +key_path_expr_components( //dir=expr + int id: @key_path_expr ref, + int index: int ref, + int component: @key_path_component_or_none ref +); + +lazy_initialization_exprs( //dir=expr + unique int id: @lazy_initialization_expr, + int sub_expr: @expr_or_none ref +); + +@literal_expr = + @builtin_literal_expr +| @interpolated_string_literal_expr +| @nil_literal_expr +| @object_literal_expr +| @regex_literal_expr +; + +@lookup_expr = + @dynamic_lookup_expr +| @member_ref_expr +| @subscript_expr +; + +#keyset[id] +lookup_exprs( //dir=expr + int id: @lookup_expr ref, + int base: @expr_or_none ref +); + +#keyset[id] +lookup_expr_members( //dir=expr + int id: @lookup_expr ref, + int member: @decl_or_none ref +); + +make_temporarily_escapable_exprs( //dir=expr + unique int id: @make_temporarily_escapable_expr, + int escaping_closure: @opaque_value_expr_or_none ref, + int nonescaping_closure: @expr_or_none ref, + int sub_expr: @expr_or_none ref +); + +materialize_pack_exprs( //dir=expr + unique int id: @materialize_pack_expr, + int sub_expr: @expr_or_none ref +); + +obj_c_selector_exprs( //dir=expr + unique int id: @obj_c_selector_expr, + int sub_expr: @expr_or_none ref, + int method: @function_or_none ref +); + +one_way_exprs( //dir=expr + unique int id: @one_way_expr, + int sub_expr: @expr_or_none ref +); + +opaque_value_exprs( //dir=expr + unique int id: @opaque_value_expr +); + +open_existential_exprs( //dir=expr + unique int id: @open_existential_expr, + int sub_expr: @expr_or_none ref, + int existential: @expr_or_none ref, + int opaque_expr: @opaque_value_expr_or_none ref +); + +optional_evaluation_exprs( //dir=expr + unique int id: @optional_evaluation_expr, + int sub_expr: @expr_or_none ref +); + +other_initializer_ref_exprs( //dir=expr + unique int id: @other_initializer_ref_expr, + int initializer: @initializer_or_none ref +); + +overloaded_decl_ref_exprs( //dir=expr + unique int id: @overloaded_decl_ref_expr +); + +#keyset[id, index] +overloaded_decl_ref_expr_possible_declarations( //dir=expr + int id: @overloaded_decl_ref_expr ref, + int index: int ref, + int possible_declaration: @value_decl_or_none ref +); + +pack_element_exprs( //dir=expr + unique int id: @pack_element_expr, + int sub_expr: @expr_or_none ref +); + +pack_expansion_exprs( //dir=expr + unique int id: @pack_expansion_expr, + int pattern_expr: @expr_or_none ref +); + +property_wrapper_value_placeholder_exprs( //dir=expr + unique int id: @property_wrapper_value_placeholder_expr, + int placeholder: @opaque_value_expr_or_none ref +); + +#keyset[id] +property_wrapper_value_placeholder_expr_wrapped_values( //dir=expr + int id: @property_wrapper_value_placeholder_expr ref, + int wrapped_value: @expr_or_none ref +); + +rebind_self_in_initializer_exprs( //dir=expr + unique int id: @rebind_self_in_initializer_expr, + int sub_expr: @expr_or_none ref, + int self: @var_decl_or_none ref +); + +sequence_exprs( //dir=expr + unique int id: @sequence_expr +); + +#keyset[id, index] +sequence_expr_elements( //dir=expr + int id: @sequence_expr ref, + int index: int ref, + int element: @expr_or_none ref +); + +single_value_stmt_exprs( //dir=expr + unique int id: @single_value_stmt_expr, + int stmt: @stmt_or_none ref +); + +super_ref_exprs( //dir=expr + unique int id: @super_ref_expr, + int self: @var_decl_or_none ref +); + +tap_exprs( //dir=expr + unique int id: @tap_expr, + int body: @brace_stmt_or_none ref, + int var: @var_decl_or_none ref +); + +#keyset[id] +tap_expr_sub_exprs( //dir=expr + int id: @tap_expr ref, + int sub_expr: @expr_or_none ref +); + +tuple_element_exprs( //dir=expr + unique int id: @tuple_element_expr, + int sub_expr: @expr_or_none ref, + int index: int ref +); + +tuple_exprs( //dir=expr + unique int id: @tuple_expr +); + +#keyset[id, index] +tuple_expr_elements( //dir=expr + int id: @tuple_expr ref, + int index: int ref, + int element: @expr_or_none ref +); + +type_exprs( //dir=expr + unique int id: @type_expr +); + +#keyset[id] +type_expr_type_reprs( //dir=expr + int id: @type_expr ref, + int type_repr: @type_repr_or_none ref +); + +type_value_exprs( //dir=expr + unique int id: @type_value_expr, + int type_repr: @type_repr_or_none ref +); + +unresolved_decl_ref_exprs( //dir=expr + unique int id: @unresolved_decl_ref_expr +); + +#keyset[id] +unresolved_decl_ref_expr_names( //dir=expr + int id: @unresolved_decl_ref_expr ref, + string name: string ref +); + +unresolved_dot_exprs( //dir=expr + unique int id: @unresolved_dot_expr, + int base: @expr_or_none ref, + string name: string ref +); + +unresolved_member_exprs( //dir=expr + unique int id: @unresolved_member_expr, + string name: string ref +); + +unresolved_pattern_exprs( //dir=expr + unique int id: @unresolved_pattern_expr, + int sub_pattern: @pattern_or_none ref +); + +unresolved_specialize_exprs( //dir=expr + unique int id: @unresolved_specialize_expr, + int sub_expr: @expr_or_none ref +); + +vararg_expansion_exprs( //dir=expr + unique int id: @vararg_expansion_expr, + int sub_expr: @expr_or_none ref +); + +abi_safe_conversion_exprs( //dir=expr + unique int id: @abi_safe_conversion_expr +); + +actor_isolation_erasure_exprs( //dir=expr + unique int id: @actor_isolation_erasure_expr +); + +any_hashable_erasure_exprs( //dir=expr + unique int id: @any_hashable_erasure_expr +); + +archetype_to_super_exprs( //dir=expr + unique int id: @archetype_to_super_expr +); + +array_exprs( //dir=expr + unique int id: @array_expr +); + +#keyset[id, index] +array_expr_elements( //dir=expr + int id: @array_expr ref, + int index: int ref, + int element: @expr_or_none ref +); + +array_to_pointer_exprs( //dir=expr + unique int id: @array_to_pointer_expr +); + +auto_closure_exprs( //dir=expr + unique int id: @auto_closure_expr +); + +await_exprs( //dir=expr + unique int id: @await_expr +); + +binary_exprs( //dir=expr + unique int id: @binary_expr +); + +borrow_exprs( //dir=expr + unique int id: @borrow_expr +); + +bridge_from_obj_c_exprs( //dir=expr + unique int id: @bridge_from_obj_c_expr +); + +bridge_to_obj_c_exprs( //dir=expr + unique int id: @bridge_to_obj_c_expr +); + +@builtin_literal_expr = + @boolean_literal_expr +| @magic_identifier_literal_expr +| @number_literal_expr +| @string_literal_expr +; + +call_exprs( //dir=expr + unique int id: @call_expr +); + +@checked_cast_expr = + @conditional_checked_cast_expr +| @forced_checked_cast_expr +| @is_expr +; + +class_metatype_to_object_exprs( //dir=expr + unique int id: @class_metatype_to_object_expr +); + +coerce_exprs( //dir=expr + unique int id: @coerce_expr +); + +collection_upcast_conversion_exprs( //dir=expr + unique int id: @collection_upcast_conversion_expr +); + +conditional_bridge_from_obj_c_exprs( //dir=expr + unique int id: @conditional_bridge_from_obj_c_expr +); + +covariant_function_conversion_exprs( //dir=expr + unique int id: @covariant_function_conversion_expr +); + +covariant_return_conversion_exprs( //dir=expr + unique int id: @covariant_return_conversion_expr +); + +derived_to_base_exprs( //dir=expr + unique int id: @derived_to_base_expr +); + +destructure_tuple_exprs( //dir=expr + unique int id: @destructure_tuple_expr +); + +dictionary_exprs( //dir=expr + unique int id: @dictionary_expr +); + +#keyset[id, index] +dictionary_expr_elements( //dir=expr + int id: @dictionary_expr ref, + int index: int ref, + int element: @expr_or_none ref +); + +differentiable_function_exprs( //dir=expr + unique int id: @differentiable_function_expr +); + +differentiable_function_extract_original_exprs( //dir=expr + unique int id: @differentiable_function_extract_original_expr +); + +dot_self_exprs( //dir=expr + unique int id: @dot_self_expr +); + +@dynamic_lookup_expr = + @dynamic_member_ref_expr +| @dynamic_subscript_expr +; + +erasure_exprs( //dir=expr + unique int id: @erasure_expr +); + +existential_metatype_to_object_exprs( //dir=expr + unique int id: @existential_metatype_to_object_expr +); + +explicit_closure_exprs( //dir=expr + unique int id: @explicit_closure_expr +); + +force_try_exprs( //dir=expr + unique int id: @force_try_expr +); + +foreign_object_conversion_exprs( //dir=expr + unique int id: @foreign_object_conversion_expr +); + +function_conversion_exprs( //dir=expr + unique int id: @function_conversion_expr +); + +in_out_to_pointer_exprs( //dir=expr + unique int id: @in_out_to_pointer_expr +); + +inject_into_optional_exprs( //dir=expr + unique int id: @inject_into_optional_expr +); + +interpolated_string_literal_exprs( //dir=expr + unique int id: @interpolated_string_literal_expr +); + +#keyset[id] +interpolated_string_literal_expr_interpolation_exprs( //dir=expr + int id: @interpolated_string_literal_expr ref, + int interpolation_expr: @opaque_value_expr_or_none ref +); + +#keyset[id] +interpolated_string_literal_expr_appending_exprs( //dir=expr + int id: @interpolated_string_literal_expr ref, + int appending_expr: @tap_expr_or_none ref +); + +linear_function_exprs( //dir=expr + unique int id: @linear_function_expr +); + +linear_function_extract_original_exprs( //dir=expr + unique int id: @linear_function_extract_original_expr +); + +linear_to_differentiable_function_exprs( //dir=expr + unique int id: @linear_to_differentiable_function_expr +); + +load_exprs( //dir=expr + unique int id: @load_expr +); + +member_ref_exprs( //dir=expr + unique int id: @member_ref_expr +); + +#keyset[id] +member_ref_expr_has_direct_to_storage_semantics( //dir=expr + int id: @member_ref_expr ref +); + +#keyset[id] +member_ref_expr_has_direct_to_implementation_semantics( //dir=expr + int id: @member_ref_expr ref +); + +#keyset[id] +member_ref_expr_has_ordinary_semantics( //dir=expr + int id: @member_ref_expr ref +); + +#keyset[id] +member_ref_expr_has_distributed_thunk_semantics( //dir=expr + int id: @member_ref_expr ref +); + +metatype_conversion_exprs( //dir=expr + unique int id: @metatype_conversion_expr +); + +nil_literal_exprs( //dir=expr + unique int id: @nil_literal_expr +); + +object_literal_exprs( //dir=expr + unique int id: @object_literal_expr, + int kind: int ref +); + +#keyset[id, index] +object_literal_expr_arguments( //dir=expr + int id: @object_literal_expr ref, + int index: int ref, + int argument: @argument_or_none ref +); + +optional_try_exprs( //dir=expr + unique int id: @optional_try_expr +); + +paren_exprs( //dir=expr + unique int id: @paren_expr +); + +pointer_to_pointer_exprs( //dir=expr + unique int id: @pointer_to_pointer_expr +); + +postfix_unary_exprs( //dir=expr + unique int id: @postfix_unary_expr +); + +prefix_unary_exprs( //dir=expr + unique int id: @prefix_unary_expr +); + +protocol_metatype_to_object_exprs( //dir=expr + unique int id: @protocol_metatype_to_object_expr +); + +regex_literal_exprs( //dir=expr + unique int id: @regex_literal_expr, + string pattern: string ref, + int version: int ref +); + +@self_apply_expr = + @dot_syntax_call_expr +| @initializer_ref_call_expr +; + +#keyset[id] +self_apply_exprs( //dir=expr + int id: @self_apply_expr ref, + int base: @expr_or_none ref +); + +string_to_pointer_exprs( //dir=expr + unique int id: @string_to_pointer_expr +); + +subscript_exprs( //dir=expr + unique int id: @subscript_expr +); + +#keyset[id, index] +subscript_expr_arguments( //dir=expr + int id: @subscript_expr ref, + int index: int ref, + int argument: @argument_or_none ref +); + +#keyset[id] +subscript_expr_has_direct_to_storage_semantics( //dir=expr + int id: @subscript_expr ref +); + +#keyset[id] +subscript_expr_has_direct_to_implementation_semantics( //dir=expr + int id: @subscript_expr ref +); + +#keyset[id] +subscript_expr_has_ordinary_semantics( //dir=expr + int id: @subscript_expr ref +); + +#keyset[id] +subscript_expr_has_distributed_thunk_semantics( //dir=expr + int id: @subscript_expr ref +); + +try_exprs( //dir=expr + unique int id: @try_expr +); + +underlying_to_opaque_exprs( //dir=expr + unique int id: @underlying_to_opaque_expr +); + +unevaluated_instance_exprs( //dir=expr + unique int id: @unevaluated_instance_expr +); + +unreachable_exprs( //dir=expr + unique int id: @unreachable_expr +); + +unresolved_member_chain_result_exprs( //dir=expr + unique int id: @unresolved_member_chain_result_expr +); + +unresolved_type_conversion_exprs( //dir=expr + unique int id: @unresolved_type_conversion_expr +); + +unsafe_cast_exprs( //dir=expr + unique int id: @unsafe_cast_expr +); + +unsafe_exprs( //dir=expr + unique int id: @unsafe_expr +); + +boolean_literal_exprs( //dir=expr + unique int id: @boolean_literal_expr, + boolean value: boolean ref +); + +conditional_checked_cast_exprs( //dir=expr + unique int id: @conditional_checked_cast_expr +); + +dot_syntax_call_exprs( //dir=expr + unique int id: @dot_syntax_call_expr +); + +dynamic_member_ref_exprs( //dir=expr + unique int id: @dynamic_member_ref_expr +); + +dynamic_subscript_exprs( //dir=expr + unique int id: @dynamic_subscript_expr +); + +forced_checked_cast_exprs( //dir=expr + unique int id: @forced_checked_cast_expr +); + +initializer_ref_call_exprs( //dir=expr + unique int id: @initializer_ref_call_expr +); + +is_exprs( //dir=expr + unique int id: @is_expr +); + +magic_identifier_literal_exprs( //dir=expr + unique int id: @magic_identifier_literal_expr, + string kind: string ref +); + +@number_literal_expr = + @float_literal_expr +| @integer_literal_expr +; + +string_literal_exprs( //dir=expr + unique int id: @string_literal_expr, + string value: string ref +); + +float_literal_exprs( //dir=expr + unique int id: @float_literal_expr, + string string_value: string ref +); + +integer_literal_exprs( //dir=expr + unique int id: @integer_literal_expr, + string string_value: string ref +); + +@pattern = + @any_pattern +| @binding_pattern +| @bool_pattern +| @enum_element_pattern +| @expr_pattern +| @is_pattern +| @named_pattern +| @optional_some_pattern +| @paren_pattern +| @tuple_pattern +| @typed_pattern +; + +#keyset[id] +pattern_types( //dir=pattern + int id: @pattern ref, + int type_: @type_or_none ref +); + +any_patterns( //dir=pattern + unique int id: @any_pattern +); + +binding_patterns( //dir=pattern + unique int id: @binding_pattern, + int sub_pattern: @pattern_or_none ref +); + +bool_patterns( //dir=pattern + unique int id: @bool_pattern, + boolean value: boolean ref +); + +enum_element_patterns( //dir=pattern + unique int id: @enum_element_pattern, + int element: @enum_element_decl_or_none ref +); + +#keyset[id] +enum_element_pattern_sub_patterns( //dir=pattern + int id: @enum_element_pattern ref, + int sub_pattern: @pattern_or_none ref +); + +expr_patterns( //dir=pattern + unique int id: @expr_pattern, + int sub_expr: @expr_or_none ref +); + +is_patterns( //dir=pattern + unique int id: @is_pattern +); + +#keyset[id] +is_pattern_cast_type_reprs( //dir=pattern + int id: @is_pattern ref, + int cast_type_repr: @type_repr_or_none ref +); + +#keyset[id] +is_pattern_sub_patterns( //dir=pattern + int id: @is_pattern ref, + int sub_pattern: @pattern_or_none ref +); + +named_patterns( //dir=pattern + unique int id: @named_pattern, + int var_decl: @var_decl_or_none ref +); + +optional_some_patterns( //dir=pattern + unique int id: @optional_some_pattern, + int sub_pattern: @pattern_or_none ref +); + +paren_patterns( //dir=pattern + unique int id: @paren_pattern, + int sub_pattern: @pattern_or_none ref +); + +tuple_patterns( //dir=pattern + unique int id: @tuple_pattern +); + +#keyset[id, index] +tuple_pattern_elements( //dir=pattern + int id: @tuple_pattern ref, + int index: int ref, + int element: @pattern_or_none ref +); + +typed_patterns( //dir=pattern + unique int id: @typed_pattern, + int sub_pattern: @pattern_or_none ref +); + +#keyset[id] +typed_pattern_type_reprs( //dir=pattern + int id: @typed_pattern ref, + int type_repr: @type_repr_or_none ref +); + +case_label_items( //dir=stmt + unique int id: @case_label_item, + int pattern: @pattern_or_none ref +); + +#keyset[id] +case_label_item_guards( //dir=stmt + int id: @case_label_item ref, + int guard: @expr_or_none ref +); + +condition_elements( //dir=stmt + unique int id: @condition_element +); + +#keyset[id] +condition_element_booleans( //dir=stmt + int id: @condition_element ref, + int boolean_: @expr_or_none ref +); + +#keyset[id] +condition_element_patterns( //dir=stmt + int id: @condition_element ref, + int pattern: @pattern_or_none ref +); + +#keyset[id] +condition_element_initializers( //dir=stmt + int id: @condition_element ref, + int initializer: @expr_or_none ref +); + +#keyset[id] +condition_element_availabilities( //dir=stmt + int id: @condition_element ref, + int availability: @availability_info_or_none ref +); + +@stmt = + @brace_stmt +| @break_stmt +| @case_stmt +| @continue_stmt +| @defer_stmt +| @discard_stmt +| @fail_stmt +| @fallthrough_stmt +| @labeled_stmt +| @pound_assert_stmt +| @return_stmt +| @then_stmt +| @throw_stmt +| @yield_stmt +; + +stmt_conditions( //dir=stmt + unique int id: @stmt_condition +); + +#keyset[id, index] +stmt_condition_elements( //dir=stmt + int id: @stmt_condition ref, + int index: int ref, + int element: @condition_element_or_none ref +); + +brace_stmts( //dir=stmt + unique int id: @brace_stmt +); + +#keyset[id, index] +brace_stmt_elements( //dir=stmt + int id: @brace_stmt ref, + int index: int ref, + int element: @ast_node_or_none ref +); + +break_stmts( //dir=stmt + unique int id: @break_stmt +); + +#keyset[id] +break_stmt_target_names( //dir=stmt + int id: @break_stmt ref, + string target_name: string ref +); + +#keyset[id] +break_stmt_targets( //dir=stmt + int id: @break_stmt ref, + int target: @stmt_or_none ref +); + +case_stmts( //dir=stmt + unique int id: @case_stmt, + int body: @stmt_or_none ref +); + +#keyset[id, index] +case_stmt_labels( //dir=stmt + int id: @case_stmt ref, + int index: int ref, + int label: @case_label_item_or_none ref +); + +#keyset[id, index] +case_stmt_variables( //dir=stmt + int id: @case_stmt ref, + int index: int ref, + int variable: @var_decl_or_none ref +); + +continue_stmts( //dir=stmt + unique int id: @continue_stmt +); + +#keyset[id] +continue_stmt_target_names( //dir=stmt + int id: @continue_stmt ref, + string target_name: string ref +); + +#keyset[id] +continue_stmt_targets( //dir=stmt + int id: @continue_stmt ref, + int target: @stmt_or_none ref +); + +defer_stmts( //dir=stmt + unique int id: @defer_stmt, + int body: @brace_stmt_or_none ref +); + +discard_stmts( //dir=stmt + unique int id: @discard_stmt, + int sub_expr: @expr_or_none ref +); + +fail_stmts( //dir=stmt + unique int id: @fail_stmt +); + +fallthrough_stmts( //dir=stmt + unique int id: @fallthrough_stmt, + int fallthrough_source: @case_stmt_or_none ref, + int fallthrough_dest: @case_stmt_or_none ref +); + +@labeled_stmt = + @do_catch_stmt +| @do_stmt +| @for_each_stmt +| @labeled_conditional_stmt +| @repeat_while_stmt +| @switch_stmt +; + +#keyset[id] +labeled_stmt_labels( //dir=stmt + int id: @labeled_stmt ref, + string label: string ref +); + +pound_assert_stmts( //dir=stmt + unique int id: @pound_assert_stmt, + int condition: @expr_or_none ref, + string message: string ref +); + +return_stmts( //dir=stmt + unique int id: @return_stmt +); + +#keyset[id] +return_stmt_results( //dir=stmt + int id: @return_stmt ref, + int result: @expr_or_none ref +); + +then_stmts( //dir=stmt + unique int id: @then_stmt, + int result: @expr_or_none ref +); + +throw_stmts( //dir=stmt + unique int id: @throw_stmt, + int sub_expr: @expr_or_none ref +); + +yield_stmts( //dir=stmt + unique int id: @yield_stmt +); + +#keyset[id, index] +yield_stmt_results( //dir=stmt + int id: @yield_stmt ref, + int index: int ref, + int result: @expr_or_none ref +); + +do_catch_stmts( //dir=stmt + unique int id: @do_catch_stmt, + int body: @stmt_or_none ref +); + +#keyset[id, index] +do_catch_stmt_catches( //dir=stmt + int id: @do_catch_stmt ref, + int index: int ref, + int catch: @case_stmt_or_none ref +); + +do_stmts( //dir=stmt + unique int id: @do_stmt, + int body: @brace_stmt_or_none ref +); + +for_each_stmts( //dir=stmt + unique int id: @for_each_stmt, + int pattern: @pattern_or_none ref, + int body: @brace_stmt_or_none ref +); + +#keyset[id, index] +for_each_stmt_variables( //dir=stmt + int id: @for_each_stmt ref, + int index: int ref, + int variable: @var_decl_or_none ref +); + +#keyset[id] +for_each_stmt_wheres( //dir=stmt + int id: @for_each_stmt ref, + int where: @expr_or_none ref +); + +#keyset[id] +for_each_stmt_iterator_vars( //dir=stmt + int id: @for_each_stmt ref, + int iteratorVar: @pattern_binding_decl_or_none ref +); + +#keyset[id] +for_each_stmt_next_calls( //dir=stmt + int id: @for_each_stmt ref, + int nextCall: @expr_or_none ref +); + +@labeled_conditional_stmt = + @guard_stmt +| @if_stmt +| @while_stmt +; + +#keyset[id] +labeled_conditional_stmts( //dir=stmt + int id: @labeled_conditional_stmt ref, + int condition: @stmt_condition_or_none ref +); + +repeat_while_stmts( //dir=stmt + unique int id: @repeat_while_stmt, + int condition: @expr_or_none ref, + int body: @stmt_or_none ref +); + +switch_stmts( //dir=stmt + unique int id: @switch_stmt, + int expr: @expr_or_none ref +); + +#keyset[id, index] +switch_stmt_cases( //dir=stmt + int id: @switch_stmt ref, + int index: int ref, + int case_: @case_stmt_or_none ref +); + +guard_stmts( //dir=stmt + unique int id: @guard_stmt, + int body: @brace_stmt_or_none ref +); + +if_stmts( //dir=stmt + unique int id: @if_stmt, + int then: @stmt_or_none ref +); + +#keyset[id] +if_stmt_elses( //dir=stmt + int id: @if_stmt ref, + int else: @stmt_or_none ref +); + +while_stmts( //dir=stmt + unique int id: @while_stmt, + int body: @stmt_or_none ref +); + +@type = + @any_function_type +| @any_generic_type +| @any_metatype_type +| @builtin_type +| @dependent_member_type +| @dynamic_self_type +| @error_type +| @existential_type +| @in_out_type +| @integer_type +| @l_value_type +| @module_type +| @pack_element_type +| @pack_expansion_type +| @pack_type +| @parameterized_protocol_type +| @protocol_composition_type +| @reference_storage_type +| @substitutable_type +| @sugar_type +| @tuple_type +| @unresolved_type +; + +#keyset[id] +types( //dir=type + int id: @type ref, + string name: string ref, + int canonical_type: @type_or_none ref +); + +type_reprs( //dir=type + unique int id: @type_repr, + int type_: @type_or_none ref +); + +@any_function_type = + @function_type +| @generic_function_type +; + +#keyset[id] +any_function_types( //dir=type + int id: @any_function_type ref, + int result: @type_or_none ref +); + +#keyset[id, index] +any_function_type_param_types( //dir=type + int id: @any_function_type ref, + int index: int ref, + int param_type: @type_or_none ref +); + +#keyset[id] +any_function_type_is_throwing( //dir=type + int id: @any_function_type ref +); + +#keyset[id] +any_function_type_is_async( //dir=type + int id: @any_function_type ref +); + +@any_generic_type = + @nominal_or_bound_generic_nominal_type +| @unbound_generic_type +; + +#keyset[id] +any_generic_types( //dir=type + int id: @any_generic_type ref, + int declaration: @generic_type_decl_or_none ref +); + +#keyset[id] +any_generic_type_parents( //dir=type + int id: @any_generic_type ref, + int parent: @type_or_none ref +); + +@any_metatype_type = + @existential_metatype_type +| @metatype_type +; + +@builtin_type = + @any_builtin_integer_type +| @builtin_bridge_object_type +| @builtin_default_actor_storage_type +| @builtin_executor_type +| @builtin_fixed_array_type +| @builtin_float_type +| @builtin_job_type +| @builtin_native_object_type +| @builtin_raw_pointer_type +| @builtin_raw_unsafe_continuation_type +| @builtin_unsafe_value_buffer_type +| @builtin_vector_type +; + +dependent_member_types( //dir=type + unique int id: @dependent_member_type, + int base_type: @type_or_none ref, + int associated_type_decl: @associated_type_decl_or_none ref +); + +dynamic_self_types( //dir=type + unique int id: @dynamic_self_type, + int static_self_type: @type_or_none ref +); + +error_types( //dir=type + unique int id: @error_type +); + +existential_types( //dir=type + unique int id: @existential_type, + int constraint: @type_or_none ref +); + +in_out_types( //dir=type + unique int id: @in_out_type, + int object_type: @type_or_none ref +); + +integer_types( //dir=type + unique int id: @integer_type, + string value: string ref +); + +l_value_types( //dir=type + unique int id: @l_value_type, + int object_type: @type_or_none ref +); + +module_types( //dir=type + unique int id: @module_type, + int module: @module_decl_or_none ref +); + +pack_element_types( //dir=type + unique int id: @pack_element_type, + int pack_type: @type_or_none ref +); + +pack_expansion_types( //dir=type + unique int id: @pack_expansion_type, + int pattern_type: @type_or_none ref, + int count_type: @type_or_none ref +); + +pack_types( //dir=type + unique int id: @pack_type +); + +#keyset[id, index] +pack_type_elements( //dir=type + int id: @pack_type ref, + int index: int ref, + int element: @type_or_none ref +); + +parameterized_protocol_types( //dir=type + unique int id: @parameterized_protocol_type, + int base: @protocol_type_or_none ref +); + +#keyset[id, index] +parameterized_protocol_type_args( //dir=type + int id: @parameterized_protocol_type ref, + int index: int ref, + int arg: @type_or_none ref +); + +protocol_composition_types( //dir=type + unique int id: @protocol_composition_type +); + +#keyset[id, index] +protocol_composition_type_members( //dir=type + int id: @protocol_composition_type ref, + int index: int ref, + int member: @type_or_none ref +); + +@reference_storage_type = + @unmanaged_storage_type +| @unowned_storage_type +| @weak_storage_type +; + +#keyset[id] +reference_storage_types( //dir=type + int id: @reference_storage_type ref, + int referent_type: @type_or_none ref +); + +@substitutable_type = + @archetype_type +| @generic_type_param_type +; + +@sugar_type = + @paren_type +| @syntax_sugar_type +| @type_alias_type +; + +tuple_types( //dir=type + unique int id: @tuple_type +); + +#keyset[id, index] +tuple_type_types( //dir=type + int id: @tuple_type ref, + int index: int ref, + int type_: @type_or_none ref +); + +#keyset[id, index] +tuple_type_names( //dir=type + int id: @tuple_type ref, + int index: int ref, + string name: string ref +); + +unresolved_types( //dir=type + unique int id: @unresolved_type +); + +@any_builtin_integer_type = + @builtin_integer_literal_type +| @builtin_integer_type +; + +@archetype_type = + @local_archetype_type +| @opaque_type_archetype_type +| @pack_archetype_type +| @primary_archetype_type +; + +#keyset[id] +archetype_types( //dir=type + int id: @archetype_type ref, + int interface_type: @type_or_none ref +); + +#keyset[id] +archetype_type_superclasses( //dir=type + int id: @archetype_type ref, + int superclass: @type_or_none ref +); + +#keyset[id, index] +archetype_type_protocols( //dir=type + int id: @archetype_type ref, + int index: int ref, + int protocol: @protocol_decl_or_none ref +); + +builtin_bridge_object_types( //dir=type + unique int id: @builtin_bridge_object_type +); + +builtin_default_actor_storage_types( //dir=type + unique int id: @builtin_default_actor_storage_type +); + +builtin_executor_types( //dir=type + unique int id: @builtin_executor_type +); + +builtin_fixed_array_types( //dir=type + unique int id: @builtin_fixed_array_type +); + +builtin_float_types( //dir=type + unique int id: @builtin_float_type +); + +builtin_job_types( //dir=type + unique int id: @builtin_job_type +); + +builtin_native_object_types( //dir=type + unique int id: @builtin_native_object_type +); + +builtin_raw_pointer_types( //dir=type + unique int id: @builtin_raw_pointer_type +); + +builtin_raw_unsafe_continuation_types( //dir=type + unique int id: @builtin_raw_unsafe_continuation_type +); + +builtin_unsafe_value_buffer_types( //dir=type + unique int id: @builtin_unsafe_value_buffer_type +); + +builtin_vector_types( //dir=type + unique int id: @builtin_vector_type +); + +existential_metatype_types( //dir=type + unique int id: @existential_metatype_type +); + +function_types( //dir=type + unique int id: @function_type +); + +generic_function_types( //dir=type + unique int id: @generic_function_type +); + +#keyset[id, index] +generic_function_type_generic_params( //dir=type + int id: @generic_function_type ref, + int index: int ref, + int generic_param: @generic_type_param_type_or_none ref +); + +generic_type_param_types( //dir=type + unique int id: @generic_type_param_type +); + +metatype_types( //dir=type + unique int id: @metatype_type +); + +@nominal_or_bound_generic_nominal_type = + @bound_generic_type +| @nominal_type +; + +paren_types( //dir=type + unique int id: @paren_type, + int type_: @type_or_none ref +); + +@syntax_sugar_type = + @dictionary_type +| @inline_array_type +| @unary_syntax_sugar_type +; + +type_alias_types( //dir=type + unique int id: @type_alias_type, + int decl: @type_alias_decl_or_none ref +); + +unbound_generic_types( //dir=type + unique int id: @unbound_generic_type +); + +unmanaged_storage_types( //dir=type + unique int id: @unmanaged_storage_type +); + +unowned_storage_types( //dir=type + unique int id: @unowned_storage_type +); + +weak_storage_types( //dir=type + unique int id: @weak_storage_type +); + +@bound_generic_type = + @bound_generic_class_type +| @bound_generic_enum_type +| @bound_generic_struct_type +; + +#keyset[id, index] +bound_generic_type_arg_types( //dir=type + int id: @bound_generic_type ref, + int index: int ref, + int arg_type: @type_or_none ref +); + +builtin_integer_literal_types( //dir=type + unique int id: @builtin_integer_literal_type +); + +builtin_integer_types( //dir=type + unique int id: @builtin_integer_type +); + +#keyset[id] +builtin_integer_type_widths( //dir=type + int id: @builtin_integer_type ref, + int width: int ref +); + +dictionary_types( //dir=type + unique int id: @dictionary_type, + int key_type: @type_or_none ref, + int value_type: @type_or_none ref +); + +inline_array_types( //dir=type + unique int id: @inline_array_type, + int count_type: @type_or_none ref, + int element_type: @type_or_none ref +); + +@local_archetype_type = + @element_archetype_type +| @existential_archetype_type +; + +@nominal_type = + @class_type +| @enum_type +| @protocol_type +| @struct_type +; + +opaque_type_archetype_types( //dir=type + unique int id: @opaque_type_archetype_type, + int declaration: @opaque_type_decl_or_none ref +); + +pack_archetype_types( //dir=type + unique int id: @pack_archetype_type +); + +primary_archetype_types( //dir=type + unique int id: @primary_archetype_type +); + +@unary_syntax_sugar_type = + @array_slice_type +| @optional_type +| @variadic_sequence_type +; + +#keyset[id] +unary_syntax_sugar_types( //dir=type + int id: @unary_syntax_sugar_type ref, + int base_type: @type_or_none ref +); + +array_slice_types( //dir=type + unique int id: @array_slice_type +); + +bound_generic_class_types( //dir=type + unique int id: @bound_generic_class_type +); + +bound_generic_enum_types( //dir=type + unique int id: @bound_generic_enum_type +); + +bound_generic_struct_types( //dir=type + unique int id: @bound_generic_struct_type +); + +class_types( //dir=type + unique int id: @class_type +); + +element_archetype_types( //dir=type + unique int id: @element_archetype_type +); + +enum_types( //dir=type + unique int id: @enum_type +); + +existential_archetype_types( //dir=type + unique int id: @existential_archetype_type +); + +optional_types( //dir=type + unique int id: @optional_type +); + +protocol_types( //dir=type + unique int id: @protocol_type +); + +struct_types( //dir=type + unique int id: @struct_type +); + +variadic_sequence_types( //dir=type + unique int id: @variadic_sequence_type +); + +@accessor_or_none = + @accessor +| @unspecified_element +; + +@argument_or_none = + @argument +| @unspecified_element +; + +@associated_type_decl_or_none = + @associated_type_decl +| @unspecified_element +; + +@ast_node_or_none = + @ast_node +| @unspecified_element +; + +@availability_info_or_none = + @availability_info +| @unspecified_element +; + +@availability_spec_or_none = + @availability_spec +| @unspecified_element +; + +@brace_stmt_or_none = + @brace_stmt +| @unspecified_element +; + +@captured_decl_or_none = + @captured_decl +| @unspecified_element +; + +@case_label_item_or_none = + @case_label_item +| @unspecified_element +; + +@case_stmt_or_none = + @case_stmt +| @unspecified_element +; + +@closure_expr_or_none = + @closure_expr +| @unspecified_element +; + +@condition_element_or_none = + @condition_element +| @unspecified_element +; + +@decl_or_none = + @decl +| @unspecified_element +; + +@enum_element_decl_or_none = + @enum_element_decl +| @unspecified_element +; + +@expr_or_none = + @expr +| @unspecified_element +; + +@file_or_none = + @file +| @unspecified_element +; + +@function_or_none = + @function +| @unspecified_element +; + +@generic_type_decl_or_none = + @generic_type_decl +| @unspecified_element +; + +@generic_type_param_decl_or_none = + @generic_type_param_decl +| @unspecified_element +; + +@generic_type_param_type_or_none = + @generic_type_param_type +| @unspecified_element +; + +@initializer_or_none = + @initializer +| @unspecified_element +; + +@key_path_component_or_none = + @key_path_component +| @unspecified_element +; + +@location_or_none = + @location +| @unspecified_element +; + +@macro_role_or_none = + @macro_role +| @unspecified_element +; + +@module_decl_or_none = + @module_decl +| @unspecified_element +; + +@nominal_type_decl_or_none = + @nominal_type_decl +| @unspecified_element +; + +@opaque_type_decl_or_none = + @opaque_type_decl +| @unspecified_element +; + +@opaque_value_expr_or_none = + @opaque_value_expr +| @unspecified_element +; + +@param_decl_or_none = + @param_decl +| @unspecified_element +; + +@pattern_or_none = + @pattern +| @unspecified_element +; + +@pattern_binding_decl_or_none = + @pattern_binding_decl +| @unspecified_element +; + +@precedence_group_decl_or_none = + @precedence_group_decl +| @unspecified_element +; + +@protocol_decl_or_none = + @protocol_decl +| @unspecified_element +; + +@protocol_type_or_none = + @protocol_type +| @unspecified_element +; + +@stmt_or_none = + @stmt +| @unspecified_element +; + +@stmt_condition_or_none = + @stmt_condition +| @unspecified_element +; + +@string_literal_expr_or_none = + @string_literal_expr +| @unspecified_element +; + +@tap_expr_or_none = + @tap_expr +| @unspecified_element +; + +@type_or_none = + @type +| @unspecified_element +; + +@type_alias_decl_or_none = + @type_alias_decl +| @unspecified_element +; + +@type_repr_or_none = + @type_repr +| @unspecified_element +; + +@value_decl_or_none = + @unspecified_element +| @value_decl +; + +@var_decl_or_none = + @unspecified_element +| @var_decl +; diff --git a/swift/ql/lib/upgrades/33e5e5e03bd3f98322f4c67aefa81015be832b88/swift.dbscheme b/swift/ql/lib/upgrades/33e5e5e03bd3f98322f4c67aefa81015be832b88/swift.dbscheme new file mode 100644 index 000000000000..ee3053b673c9 --- /dev/null +++ b/swift/ql/lib/upgrades/33e5e5e03bd3f98322f4c67aefa81015be832b88/swift.dbscheme @@ -0,0 +1,2889 @@ +// generated by codegen/codegen.py, do not edit + +// from prefix.dbscheme +/** + * The source location of the snapshot. + */ +sourceLocationPrefix( + string prefix: string ref +); + + +// from schema.py + +@element = + @file +| @generic_context +| @locatable +| @location +| @type +; + +#keyset[id] +element_is_unknown( + int id: @element ref +); + +@file = + @db_file +; + +#keyset[id] +files( + int id: @file ref, + string name: string ref +); + +#keyset[id] +file_is_successfully_extracted( + int id: @file ref +); + +@locatable = + @argument +| @ast_node +| @comment +| @diagnostics +| @error_element +; + +#keyset[id] +locatable_locations( + int id: @locatable ref, + int location: @location_or_none ref +); + +@location = + @db_location +; + +#keyset[id] +locations( + int id: @location ref, + int file: @file_or_none ref, + int start_line: int ref, + int start_column: int ref, + int end_line: int ref, + int end_column: int ref +); + +@ast_node = + @availability_info +| @availability_spec +| @callable +| @case_label_item +| @condition_element +| @decl +| @expr +| @key_path_component +| @macro_role +| @pattern +| @stmt +| @stmt_condition +| @type_repr +; + +comments( + unique int id: @comment, + string text: string ref +); + +db_files( + unique int id: @db_file +); + +db_locations( + unique int id: @db_location +); + +diagnostics( + unique int id: @diagnostics, + string text: string ref, + int kind: int ref +); + +@error_element = + @error_expr +| @error_type +| @overloaded_decl_ref_expr +| @unresolved_decl_ref_expr +| @unresolved_dot_expr +| @unresolved_member_chain_result_expr +| @unresolved_member_expr +| @unresolved_pattern_expr +| @unresolved_specialize_expr +| @unresolved_type +| @unresolved_type_conversion_expr +| @unspecified_element +; + +availability_infos( + unique int id: @availability_info +); + +#keyset[id] +availability_info_is_unavailable( + int id: @availability_info ref +); + +#keyset[id, index] +availability_info_specs( + int id: @availability_info ref, + int index: int ref, + int spec: @availability_spec_or_none ref +); + +availability_specs( + unique int id: @availability_spec +); + +#keyset[id] +availability_spec_platforms( + int id: @availability_spec ref, + string platform: string ref +); + +#keyset[id] +availability_spec_versions( + int id: @availability_spec ref, + string version: string ref +); + +#keyset[id] +availability_spec_is_wildcard( + int id: @availability_spec ref +); + +@callable = + @closure_expr +| @function +; + +#keyset[id] +callable_names( + int id: @callable ref, + string name: string ref +); + +#keyset[id] +callable_self_params( + int id: @callable ref, + int self_param: @param_decl_or_none ref +); + +#keyset[id, index] +callable_params( + int id: @callable ref, + int index: int ref, + int param: @param_decl_or_none ref +); + +#keyset[id] +callable_bodies( + int id: @callable ref, + int body: @brace_stmt_or_none ref +); + +#keyset[id, index] +callable_captures( + int id: @callable ref, + int index: int ref, + int capture: @captured_decl_or_none ref +); + +key_path_components( + unique int id: @key_path_component, + int kind: int ref, + int component_type: @type_or_none ref +); + +#keyset[id, index] +key_path_component_subscript_arguments( + int id: @key_path_component ref, + int index: int ref, + int subscript_argument: @argument_or_none ref +); + +#keyset[id] +key_path_component_tuple_indices( + int id: @key_path_component ref, + int tuple_index: int ref +); + +#keyset[id] +key_path_component_decl_refs( + int id: @key_path_component ref, + int decl_ref: @value_decl_or_none ref +); + +macro_roles( + unique int id: @macro_role, + int kind: int ref, + int macro_syntax: int ref +); + +#keyset[id, index] +macro_role_conformances( + int id: @macro_role ref, + int index: int ref, + int conformance: @expr_or_none ref +); + +#keyset[id, index] +macro_role_names( + int id: @macro_role ref, + int index: int ref, + string name: string ref +); + +unspecified_elements( + unique int id: @unspecified_element, + string property: string ref, + string error: string ref +); + +#keyset[id] +unspecified_element_parents( + int id: @unspecified_element ref, + int parent: @element ref +); + +#keyset[id] +unspecified_element_indices( + int id: @unspecified_element ref, + int index: int ref +); + +#keyset[id, index] +unspecified_element_children( + int id: @unspecified_element ref, + int index: int ref, + int child: @ast_node_or_none ref +); + +@decl = + @captured_decl +| @enum_case_decl +| @extension_decl +| @if_config_decl +| @import_decl +| @missing_member_decl +| @operator_decl +| @pattern_binding_decl +| @pound_diagnostic_decl +| @precedence_group_decl +| @top_level_code_decl +| @using_decl +| @value_decl +; + +#keyset[id] +decls( //dir=decl + int id: @decl ref, + int module: @module_decl_or_none ref +); + +#keyset[id, index] +decl_members( //dir=decl + int id: @decl ref, + int index: int ref, + int member: @decl_or_none ref +); + +@generic_context = + @extension_decl +| @function +| @generic_type_decl +| @macro_decl +| @subscript_decl +; + +#keyset[id, index] +generic_context_generic_type_params( //dir=decl + int id: @generic_context ref, + int index: int ref, + int generic_type_param: @generic_type_param_decl_or_none ref +); + +captured_decls( //dir=decl + unique int id: @captured_decl, + int decl: @value_decl_or_none ref +); + +#keyset[id] +captured_decl_is_direct( //dir=decl + int id: @captured_decl ref +); + +#keyset[id] +captured_decl_is_escaping( //dir=decl + int id: @captured_decl ref +); + +enum_case_decls( //dir=decl + unique int id: @enum_case_decl +); + +#keyset[id, index] +enum_case_decl_elements( //dir=decl + int id: @enum_case_decl ref, + int index: int ref, + int element: @enum_element_decl_or_none ref +); + +extension_decls( //dir=decl + unique int id: @extension_decl, + int extended_type_decl: @nominal_type_decl_or_none ref +); + +#keyset[id, index] +extension_decl_protocols( //dir=decl + int id: @extension_decl ref, + int index: int ref, + int protocol: @protocol_decl_or_none ref +); + +if_config_decls( //dir=decl + unique int id: @if_config_decl +); + +#keyset[id, index] +if_config_decl_active_elements( //dir=decl + int id: @if_config_decl ref, + int index: int ref, + int active_element: @ast_node_or_none ref +); + +import_decls( //dir=decl + unique int id: @import_decl +); + +#keyset[id] +import_decl_is_exported( //dir=decl + int id: @import_decl ref +); + +#keyset[id] +import_decl_imported_modules( //dir=decl + int id: @import_decl ref, + int imported_module: @module_decl_or_none ref +); + +#keyset[id, index] +import_decl_declarations( //dir=decl + int id: @import_decl ref, + int index: int ref, + int declaration: @value_decl_or_none ref +); + +missing_member_decls( //dir=decl + unique int id: @missing_member_decl, + string name: string ref +); + +@operator_decl = + @infix_operator_decl +| @postfix_operator_decl +| @prefix_operator_decl +; + +#keyset[id] +operator_decls( //dir=decl + int id: @operator_decl ref, + string name: string ref +); + +pattern_binding_decls( //dir=decl + unique int id: @pattern_binding_decl +); + +#keyset[id, index] +pattern_binding_decl_inits( //dir=decl + int id: @pattern_binding_decl ref, + int index: int ref, + int init: @expr_or_none ref +); + +#keyset[id, index] +pattern_binding_decl_patterns( //dir=decl + int id: @pattern_binding_decl ref, + int index: int ref, + int pattern: @pattern_or_none ref +); + +pound_diagnostic_decls( //dir=decl + unique int id: @pound_diagnostic_decl, + int kind: int ref, + int message: @string_literal_expr_or_none ref +); + +precedence_group_decls( //dir=decl + unique int id: @precedence_group_decl +); + +top_level_code_decls( //dir=decl + unique int id: @top_level_code_decl, + int body: @brace_stmt_or_none ref +); + +using_decls( //dir=decl + unique int id: @using_decl +); + +#keyset[id] +using_decl_is_main_actor( //dir=decl + int id: @using_decl ref +); + +#keyset[id] +using_decl_is_nonisolated( //dir=decl + int id: @using_decl ref +); + +@value_decl = + @abstract_storage_decl +| @enum_element_decl +| @function +| @macro_decl +| @type_decl +; + +#keyset[id] +value_decls( //dir=decl + int id: @value_decl ref, + int interface_type: @type_or_none ref +); + +@abstract_storage_decl = + @subscript_decl +| @var_decl +; + +#keyset[id, index] +abstract_storage_decl_accessors( //dir=decl + int id: @abstract_storage_decl ref, + int index: int ref, + int accessor: @accessor_or_none ref +); + +enum_element_decls( //dir=decl + unique int id: @enum_element_decl, + string name: string ref +); + +#keyset[id, index] +enum_element_decl_params( //dir=decl + int id: @enum_element_decl ref, + int index: int ref, + int param: @param_decl_or_none ref +); + +@function = + @accessor_or_named_function +| @deinitializer +| @initializer +; + +infix_operator_decls( //dir=decl + unique int id: @infix_operator_decl +); + +#keyset[id] +infix_operator_decl_precedence_groups( //dir=decl + int id: @infix_operator_decl ref, + int precedence_group: @precedence_group_decl_or_none ref +); + +macro_decls( //dir=decl + unique int id: @macro_decl, + string name: string ref +); + +#keyset[id, index] +macro_decl_parameters( //dir=decl + int id: @macro_decl ref, + int index: int ref, + int parameter: @param_decl_or_none ref +); + +#keyset[id, index] +macro_decl_roles( //dir=decl + int id: @macro_decl ref, + int index: int ref, + int role: @macro_role_or_none ref +); + +postfix_operator_decls( //dir=decl + unique int id: @postfix_operator_decl +); + +prefix_operator_decls( //dir=decl + unique int id: @prefix_operator_decl +); + +@type_decl = + @abstract_type_param_decl +| @generic_type_decl +| @module_decl +; + +#keyset[id] +type_decls( //dir=decl + int id: @type_decl ref, + string name: string ref +); + +#keyset[id, index] +type_decl_inherited_types( //dir=decl + int id: @type_decl ref, + int index: int ref, + int inherited_type: @type_or_none ref +); + +@abstract_type_param_decl = + @associated_type_decl +| @generic_type_param_decl +; + +@accessor_or_named_function = + @accessor +| @named_function +; + +deinitializers( //dir=decl + unique int id: @deinitializer +); + +@generic_type_decl = + @nominal_type_decl +| @opaque_type_decl +| @type_alias_decl +; + +initializers( //dir=decl + unique int id: @initializer +); + +module_decls( //dir=decl + unique int id: @module_decl +); + +#keyset[id] +module_decl_is_builtin_module( //dir=decl + int id: @module_decl ref +); + +#keyset[id] +module_decl_is_system_module( //dir=decl + int id: @module_decl ref +); + +module_decl_imported_modules( //dir=decl + int id: @module_decl ref, + int imported_module: @module_decl_or_none ref +); + +module_decl_exported_modules( //dir=decl + int id: @module_decl ref, + int exported_module: @module_decl_or_none ref +); + +subscript_decls( //dir=decl + unique int id: @subscript_decl, + int element_type: @type_or_none ref +); + +#keyset[id, index] +subscript_decl_params( //dir=decl + int id: @subscript_decl ref, + int index: int ref, + int param: @param_decl_or_none ref +); + +@var_decl = + @concrete_var_decl +| @param_decl +; + +#keyset[id] +var_decls( //dir=decl + int id: @var_decl ref, + string name: string ref, + int type_: @type_or_none ref +); + +#keyset[id] +var_decl_attached_property_wrapper_types( //dir=decl + int id: @var_decl ref, + int attached_property_wrapper_type: @type_or_none ref +); + +#keyset[id] +var_decl_parent_patterns( //dir=decl + int id: @var_decl ref, + int parent_pattern: @pattern_or_none ref +); + +#keyset[id] +var_decl_parent_initializers( //dir=decl + int id: @var_decl ref, + int parent_initializer: @expr_or_none ref +); + +#keyset[id] +var_decl_property_wrapper_backing_var_bindings( //dir=decl + int id: @var_decl ref, + int property_wrapper_backing_var_binding: @pattern_binding_decl_or_none ref +); + +#keyset[id] +var_decl_property_wrapper_backing_vars( //dir=decl + int id: @var_decl ref, + int property_wrapper_backing_var: @var_decl_or_none ref +); + +#keyset[id] +var_decl_property_wrapper_projection_var_bindings( //dir=decl + int id: @var_decl ref, + int property_wrapper_projection_var_binding: @pattern_binding_decl_or_none ref +); + +#keyset[id] +var_decl_property_wrapper_projection_vars( //dir=decl + int id: @var_decl ref, + int property_wrapper_projection_var: @var_decl_or_none ref +); + +accessors( //dir=decl + unique int id: @accessor +); + +#keyset[id] +accessor_is_getter( //dir=decl + int id: @accessor ref +); + +#keyset[id] +accessor_is_setter( //dir=decl + int id: @accessor ref +); + +#keyset[id] +accessor_is_will_set( //dir=decl + int id: @accessor ref +); + +#keyset[id] +accessor_is_did_set( //dir=decl + int id: @accessor ref +); + +#keyset[id] +accessor_is_read( //dir=decl + int id: @accessor ref +); + +#keyset[id] +accessor_is_modify( //dir=decl + int id: @accessor ref +); + +#keyset[id] +accessor_is_unsafe_address( //dir=decl + int id: @accessor ref +); + +#keyset[id] +accessor_is_unsafe_mutable_address( //dir=decl + int id: @accessor ref +); + +#keyset[id] +accessor_is_distributed_get( //dir=decl + int id: @accessor ref +); + +#keyset[id] +accessor_is_read2( //dir=decl + int id: @accessor ref +); + +#keyset[id] +accessor_is_modify2( //dir=decl + int id: @accessor ref +); + +#keyset[id] +accessor_is_init( //dir=decl + int id: @accessor ref +); + +associated_type_decls( //dir=decl + unique int id: @associated_type_decl +); + +concrete_var_decls( //dir=decl + unique int id: @concrete_var_decl, + int introducer_int: int ref +); + +generic_type_param_decls( //dir=decl + unique int id: @generic_type_param_decl +); + +named_functions( //dir=decl + unique int id: @named_function +); + +@nominal_type_decl = + @class_decl +| @enum_decl +| @protocol_decl +| @struct_decl +; + +#keyset[id] +nominal_type_decls( //dir=decl + int id: @nominal_type_decl ref, + int type_: @type_or_none ref +); + +opaque_type_decls( //dir=decl + unique int id: @opaque_type_decl, + int naming_declaration: @value_decl_or_none ref +); + +#keyset[id, index] +opaque_type_decl_opaque_generic_params( //dir=decl + int id: @opaque_type_decl ref, + int index: int ref, + int opaque_generic_param: @generic_type_param_type_or_none ref +); + +param_decls( //dir=decl + unique int id: @param_decl +); + +#keyset[id] +param_decl_is_inout( //dir=decl + int id: @param_decl ref +); + +#keyset[id] +param_decl_property_wrapper_local_wrapped_var_bindings( //dir=decl + int id: @param_decl ref, + int property_wrapper_local_wrapped_var_binding: @pattern_binding_decl_or_none ref +); + +#keyset[id] +param_decl_property_wrapper_local_wrapped_vars( //dir=decl + int id: @param_decl ref, + int property_wrapper_local_wrapped_var: @var_decl_or_none ref +); + +type_alias_decls( //dir=decl + unique int id: @type_alias_decl, + int aliased_type: @type_or_none ref +); + +class_decls( //dir=decl + unique int id: @class_decl +); + +enum_decls( //dir=decl + unique int id: @enum_decl +); + +protocol_decls( //dir=decl + unique int id: @protocol_decl +); + +struct_decls( //dir=decl + unique int id: @struct_decl +); + +arguments( //dir=expr + unique int id: @argument, + string label: string ref, + int expr: @expr_or_none ref +); + +@expr = + @any_try_expr +| @applied_property_wrapper_expr +| @apply_expr +| @assign_expr +| @bind_optional_expr +| @capture_list_expr +| @closure_expr +| @collection_expr +| @consume_expr +| @copy_expr +| @current_context_isolation_expr +| @decl_ref_expr +| @default_argument_expr +| @discard_assignment_expr +| @dot_syntax_base_ignored_expr +| @dynamic_type_expr +| @enum_is_case_expr +| @error_expr +| @explicit_cast_expr +| @extract_function_isolation_expr +| @force_value_expr +| @identity_expr +| @if_expr +| @implicit_conversion_expr +| @in_out_expr +| @key_path_application_expr +| @key_path_dot_expr +| @key_path_expr +| @lazy_initialization_expr +| @literal_expr +| @lookup_expr +| @make_temporarily_escapable_expr +| @materialize_pack_expr +| @obj_c_selector_expr +| @one_way_expr +| @opaque_value_expr +| @open_existential_expr +| @optional_evaluation_expr +| @other_initializer_ref_expr +| @overloaded_decl_ref_expr +| @pack_element_expr +| @pack_expansion_expr +| @property_wrapper_value_placeholder_expr +| @rebind_self_in_initializer_expr +| @sequence_expr +| @single_value_stmt_expr +| @super_ref_expr +| @tap_expr +| @tuple_element_expr +| @tuple_expr +| @type_expr +| @type_value_expr +| @unresolved_decl_ref_expr +| @unresolved_dot_expr +| @unresolved_member_expr +| @unresolved_pattern_expr +| @unresolved_specialize_expr +| @vararg_expansion_expr +; + +#keyset[id] +expr_types( //dir=expr + int id: @expr ref, + int type_: @type_or_none ref +); + +@any_try_expr = + @force_try_expr +| @optional_try_expr +| @try_expr +; + +#keyset[id] +any_try_exprs( //dir=expr + int id: @any_try_expr ref, + int sub_expr: @expr_or_none ref +); + +applied_property_wrapper_exprs( //dir=expr + unique int id: @applied_property_wrapper_expr, + int kind: int ref, + int value: @expr_or_none ref, + int param: @param_decl_or_none ref +); + +@apply_expr = + @binary_expr +| @call_expr +| @postfix_unary_expr +| @prefix_unary_expr +| @self_apply_expr +; + +#keyset[id] +apply_exprs( //dir=expr + int id: @apply_expr ref, + int function: @expr_or_none ref +); + +#keyset[id, index] +apply_expr_arguments( //dir=expr + int id: @apply_expr ref, + int index: int ref, + int argument: @argument_or_none ref +); + +assign_exprs( //dir=expr + unique int id: @assign_expr, + int dest: @expr_or_none ref, + int source: @expr_or_none ref +); + +bind_optional_exprs( //dir=expr + unique int id: @bind_optional_expr, + int sub_expr: @expr_or_none ref +); + +capture_list_exprs( //dir=expr + unique int id: @capture_list_expr, + int closure_body: @closure_expr_or_none ref +); + +#keyset[id, index] +capture_list_expr_binding_decls( //dir=expr + int id: @capture_list_expr ref, + int index: int ref, + int binding_decl: @pattern_binding_decl_or_none ref +); + +@closure_expr = + @auto_closure_expr +| @explicit_closure_expr +; + +@collection_expr = + @array_expr +| @dictionary_expr +; + +consume_exprs( //dir=expr + unique int id: @consume_expr, + int sub_expr: @expr_or_none ref +); + +copy_exprs( //dir=expr + unique int id: @copy_expr, + int sub_expr: @expr_or_none ref +); + +current_context_isolation_exprs( //dir=expr + unique int id: @current_context_isolation_expr, + int actor: @expr_or_none ref +); + +decl_ref_exprs( //dir=expr + unique int id: @decl_ref_expr, + int decl: @decl_or_none ref +); + +#keyset[id, index] +decl_ref_expr_replacement_types( //dir=expr + int id: @decl_ref_expr ref, + int index: int ref, + int replacement_type: @type_or_none ref +); + +#keyset[id] +decl_ref_expr_has_direct_to_storage_semantics( //dir=expr + int id: @decl_ref_expr ref +); + +#keyset[id] +decl_ref_expr_has_direct_to_implementation_semantics( //dir=expr + int id: @decl_ref_expr ref +); + +#keyset[id] +decl_ref_expr_has_ordinary_semantics( //dir=expr + int id: @decl_ref_expr ref +); + +#keyset[id] +decl_ref_expr_has_distributed_thunk_semantics( //dir=expr + int id: @decl_ref_expr ref +); + +default_argument_exprs( //dir=expr + unique int id: @default_argument_expr, + int param_decl: @param_decl_or_none ref, + int param_index: int ref +); + +#keyset[id] +default_argument_expr_caller_side_defaults( //dir=expr + int id: @default_argument_expr ref, + int caller_side_default: @expr_or_none ref +); + +discard_assignment_exprs( //dir=expr + unique int id: @discard_assignment_expr +); + +dot_syntax_base_ignored_exprs( //dir=expr + unique int id: @dot_syntax_base_ignored_expr, + int qualifier: @expr_or_none ref, + int sub_expr: @expr_or_none ref +); + +dynamic_type_exprs( //dir=expr + unique int id: @dynamic_type_expr, + int base: @expr_or_none ref +); + +enum_is_case_exprs( //dir=expr + unique int id: @enum_is_case_expr, + int sub_expr: @expr_or_none ref, + int element: @enum_element_decl_or_none ref +); + +error_exprs( //dir=expr + unique int id: @error_expr +); + +@explicit_cast_expr = + @checked_cast_expr +| @coerce_expr +; + +#keyset[id] +explicit_cast_exprs( //dir=expr + int id: @explicit_cast_expr ref, + int sub_expr: @expr_or_none ref +); + +extract_function_isolation_exprs( //dir=expr + unique int id: @extract_function_isolation_expr, + int function_expr: @expr_or_none ref +); + +force_value_exprs( //dir=expr + unique int id: @force_value_expr, + int sub_expr: @expr_or_none ref +); + +@identity_expr = + @await_expr +| @borrow_expr +| @dot_self_expr +| @paren_expr +| @unresolved_member_chain_result_expr +| @unsafe_expr +; + +#keyset[id] +identity_exprs( //dir=expr + int id: @identity_expr ref, + int sub_expr: @expr_or_none ref +); + +if_exprs( //dir=expr + unique int id: @if_expr, + int condition: @expr_or_none ref, + int then_expr: @expr_or_none ref, + int else_expr: @expr_or_none ref +); + +@implicit_conversion_expr = + @abi_safe_conversion_expr +| @actor_isolation_erasure_expr +| @any_hashable_erasure_expr +| @archetype_to_super_expr +| @array_to_pointer_expr +| @bridge_from_obj_c_expr +| @bridge_to_obj_c_expr +| @class_metatype_to_object_expr +| @collection_upcast_conversion_expr +| @conditional_bridge_from_obj_c_expr +| @covariant_function_conversion_expr +| @covariant_return_conversion_expr +| @derived_to_base_expr +| @destructure_tuple_expr +| @differentiable_function_expr +| @differentiable_function_extract_original_expr +| @erasure_expr +| @existential_metatype_to_object_expr +| @foreign_object_conversion_expr +| @function_conversion_expr +| @in_out_to_pointer_expr +| @inject_into_optional_expr +| @linear_function_expr +| @linear_function_extract_original_expr +| @linear_to_differentiable_function_expr +| @load_expr +| @metatype_conversion_expr +| @pointer_to_pointer_expr +| @protocol_metatype_to_object_expr +| @string_to_pointer_expr +| @underlying_to_opaque_expr +| @unevaluated_instance_expr +| @unreachable_expr +| @unresolved_type_conversion_expr +| @unsafe_cast_expr +; + +#keyset[id] +implicit_conversion_exprs( //dir=expr + int id: @implicit_conversion_expr ref, + int sub_expr: @expr_or_none ref +); + +in_out_exprs( //dir=expr + unique int id: @in_out_expr, + int sub_expr: @expr_or_none ref +); + +key_path_application_exprs( //dir=expr + unique int id: @key_path_application_expr, + int base: @expr_or_none ref, + int key_path: @expr_or_none ref +); + +key_path_dot_exprs( //dir=expr + unique int id: @key_path_dot_expr +); + +key_path_exprs( //dir=expr + unique int id: @key_path_expr +); + +#keyset[id] +key_path_expr_roots( //dir=expr + int id: @key_path_expr ref, + int root: @type_repr_or_none ref +); + +#keyset[id, index] +key_path_expr_components( //dir=expr + int id: @key_path_expr ref, + int index: int ref, + int component: @key_path_component_or_none ref +); + +lazy_initialization_exprs( //dir=expr + unique int id: @lazy_initialization_expr, + int sub_expr: @expr_or_none ref +); + +@literal_expr = + @builtin_literal_expr +| @interpolated_string_literal_expr +| @nil_literal_expr +| @object_literal_expr +| @regex_literal_expr +; + +@lookup_expr = + @dynamic_lookup_expr +| @member_ref_expr +| @subscript_expr +; + +#keyset[id] +lookup_exprs( //dir=expr + int id: @lookup_expr ref, + int base: @expr_or_none ref +); + +#keyset[id] +lookup_expr_members( //dir=expr + int id: @lookup_expr ref, + int member: @decl_or_none ref +); + +make_temporarily_escapable_exprs( //dir=expr + unique int id: @make_temporarily_escapable_expr, + int escaping_closure: @opaque_value_expr_or_none ref, + int nonescaping_closure: @expr_or_none ref, + int sub_expr: @expr_or_none ref +); + +materialize_pack_exprs( //dir=expr + unique int id: @materialize_pack_expr, + int sub_expr: @expr_or_none ref +); + +obj_c_selector_exprs( //dir=expr + unique int id: @obj_c_selector_expr, + int sub_expr: @expr_or_none ref, + int method: @function_or_none ref +); + +one_way_exprs( //dir=expr + unique int id: @one_way_expr, + int sub_expr: @expr_or_none ref +); + +opaque_value_exprs( //dir=expr + unique int id: @opaque_value_expr +); + +open_existential_exprs( //dir=expr + unique int id: @open_existential_expr, + int sub_expr: @expr_or_none ref, + int existential: @expr_or_none ref, + int opaque_expr: @opaque_value_expr_or_none ref +); + +optional_evaluation_exprs( //dir=expr + unique int id: @optional_evaluation_expr, + int sub_expr: @expr_or_none ref +); + +other_initializer_ref_exprs( //dir=expr + unique int id: @other_initializer_ref_expr, + int initializer: @initializer_or_none ref +); + +overloaded_decl_ref_exprs( //dir=expr + unique int id: @overloaded_decl_ref_expr +); + +#keyset[id, index] +overloaded_decl_ref_expr_possible_declarations( //dir=expr + int id: @overloaded_decl_ref_expr ref, + int index: int ref, + int possible_declaration: @value_decl_or_none ref +); + +pack_element_exprs( //dir=expr + unique int id: @pack_element_expr, + int sub_expr: @expr_or_none ref +); + +pack_expansion_exprs( //dir=expr + unique int id: @pack_expansion_expr, + int pattern_expr: @expr_or_none ref +); + +property_wrapper_value_placeholder_exprs( //dir=expr + unique int id: @property_wrapper_value_placeholder_expr, + int placeholder: @opaque_value_expr_or_none ref +); + +#keyset[id] +property_wrapper_value_placeholder_expr_wrapped_values( //dir=expr + int id: @property_wrapper_value_placeholder_expr ref, + int wrapped_value: @expr_or_none ref +); + +rebind_self_in_initializer_exprs( //dir=expr + unique int id: @rebind_self_in_initializer_expr, + int sub_expr: @expr_or_none ref, + int self: @var_decl_or_none ref +); + +sequence_exprs( //dir=expr + unique int id: @sequence_expr +); + +#keyset[id, index] +sequence_expr_elements( //dir=expr + int id: @sequence_expr ref, + int index: int ref, + int element: @expr_or_none ref +); + +single_value_stmt_exprs( //dir=expr + unique int id: @single_value_stmt_expr, + int stmt: @stmt_or_none ref +); + +super_ref_exprs( //dir=expr + unique int id: @super_ref_expr, + int self: @var_decl_or_none ref +); + +tap_exprs( //dir=expr + unique int id: @tap_expr, + int body: @brace_stmt_or_none ref, + int var: @var_decl_or_none ref +); + +#keyset[id] +tap_expr_sub_exprs( //dir=expr + int id: @tap_expr ref, + int sub_expr: @expr_or_none ref +); + +tuple_element_exprs( //dir=expr + unique int id: @tuple_element_expr, + int sub_expr: @expr_or_none ref, + int index: int ref +); + +tuple_exprs( //dir=expr + unique int id: @tuple_expr +); + +#keyset[id, index] +tuple_expr_elements( //dir=expr + int id: @tuple_expr ref, + int index: int ref, + int element: @expr_or_none ref +); + +type_exprs( //dir=expr + unique int id: @type_expr +); + +#keyset[id] +type_expr_type_reprs( //dir=expr + int id: @type_expr ref, + int type_repr: @type_repr_or_none ref +); + +type_value_exprs( //dir=expr + unique int id: @type_value_expr, + int type_repr: @type_repr_or_none ref +); + +unresolved_decl_ref_exprs( //dir=expr + unique int id: @unresolved_decl_ref_expr +); + +#keyset[id] +unresolved_decl_ref_expr_names( //dir=expr + int id: @unresolved_decl_ref_expr ref, + string name: string ref +); + +unresolved_dot_exprs( //dir=expr + unique int id: @unresolved_dot_expr, + int base: @expr_or_none ref, + string name: string ref +); + +unresolved_member_exprs( //dir=expr + unique int id: @unresolved_member_expr, + string name: string ref +); + +unresolved_pattern_exprs( //dir=expr + unique int id: @unresolved_pattern_expr, + int sub_pattern: @pattern_or_none ref +); + +unresolved_specialize_exprs( //dir=expr + unique int id: @unresolved_specialize_expr, + int sub_expr: @expr_or_none ref +); + +vararg_expansion_exprs( //dir=expr + unique int id: @vararg_expansion_expr, + int sub_expr: @expr_or_none ref +); + +abi_safe_conversion_exprs( //dir=expr + unique int id: @abi_safe_conversion_expr +); + +actor_isolation_erasure_exprs( //dir=expr + unique int id: @actor_isolation_erasure_expr +); + +any_hashable_erasure_exprs( //dir=expr + unique int id: @any_hashable_erasure_expr +); + +archetype_to_super_exprs( //dir=expr + unique int id: @archetype_to_super_expr +); + +array_exprs( //dir=expr + unique int id: @array_expr +); + +#keyset[id, index] +array_expr_elements( //dir=expr + int id: @array_expr ref, + int index: int ref, + int element: @expr_or_none ref +); + +array_to_pointer_exprs( //dir=expr + unique int id: @array_to_pointer_expr +); + +auto_closure_exprs( //dir=expr + unique int id: @auto_closure_expr +); + +await_exprs( //dir=expr + unique int id: @await_expr +); + +binary_exprs( //dir=expr + unique int id: @binary_expr +); + +borrow_exprs( //dir=expr + unique int id: @borrow_expr +); + +bridge_from_obj_c_exprs( //dir=expr + unique int id: @bridge_from_obj_c_expr +); + +bridge_to_obj_c_exprs( //dir=expr + unique int id: @bridge_to_obj_c_expr +); + +@builtin_literal_expr = + @boolean_literal_expr +| @magic_identifier_literal_expr +| @number_literal_expr +| @string_literal_expr +; + +call_exprs( //dir=expr + unique int id: @call_expr +); + +@checked_cast_expr = + @conditional_checked_cast_expr +| @forced_checked_cast_expr +| @is_expr +; + +class_metatype_to_object_exprs( //dir=expr + unique int id: @class_metatype_to_object_expr +); + +coerce_exprs( //dir=expr + unique int id: @coerce_expr +); + +collection_upcast_conversion_exprs( //dir=expr + unique int id: @collection_upcast_conversion_expr +); + +conditional_bridge_from_obj_c_exprs( //dir=expr + unique int id: @conditional_bridge_from_obj_c_expr +); + +covariant_function_conversion_exprs( //dir=expr + unique int id: @covariant_function_conversion_expr +); + +covariant_return_conversion_exprs( //dir=expr + unique int id: @covariant_return_conversion_expr +); + +derived_to_base_exprs( //dir=expr + unique int id: @derived_to_base_expr +); + +destructure_tuple_exprs( //dir=expr + unique int id: @destructure_tuple_expr +); + +dictionary_exprs( //dir=expr + unique int id: @dictionary_expr +); + +#keyset[id, index] +dictionary_expr_elements( //dir=expr + int id: @dictionary_expr ref, + int index: int ref, + int element: @expr_or_none ref +); + +differentiable_function_exprs( //dir=expr + unique int id: @differentiable_function_expr +); + +differentiable_function_extract_original_exprs( //dir=expr + unique int id: @differentiable_function_extract_original_expr +); + +dot_self_exprs( //dir=expr + unique int id: @dot_self_expr +); + +@dynamic_lookup_expr = + @dynamic_member_ref_expr +| @dynamic_subscript_expr +; + +erasure_exprs( //dir=expr + unique int id: @erasure_expr +); + +existential_metatype_to_object_exprs( //dir=expr + unique int id: @existential_metatype_to_object_expr +); + +explicit_closure_exprs( //dir=expr + unique int id: @explicit_closure_expr +); + +force_try_exprs( //dir=expr + unique int id: @force_try_expr +); + +foreign_object_conversion_exprs( //dir=expr + unique int id: @foreign_object_conversion_expr +); + +function_conversion_exprs( //dir=expr + unique int id: @function_conversion_expr +); + +in_out_to_pointer_exprs( //dir=expr + unique int id: @in_out_to_pointer_expr +); + +inject_into_optional_exprs( //dir=expr + unique int id: @inject_into_optional_expr +); + +interpolated_string_literal_exprs( //dir=expr + unique int id: @interpolated_string_literal_expr +); + +#keyset[id] +interpolated_string_literal_expr_interpolation_exprs( //dir=expr + int id: @interpolated_string_literal_expr ref, + int interpolation_expr: @opaque_value_expr_or_none ref +); + +#keyset[id] +interpolated_string_literal_expr_appending_exprs( //dir=expr + int id: @interpolated_string_literal_expr ref, + int appending_expr: @tap_expr_or_none ref +); + +linear_function_exprs( //dir=expr + unique int id: @linear_function_expr +); + +linear_function_extract_original_exprs( //dir=expr + unique int id: @linear_function_extract_original_expr +); + +linear_to_differentiable_function_exprs( //dir=expr + unique int id: @linear_to_differentiable_function_expr +); + +load_exprs( //dir=expr + unique int id: @load_expr +); + +member_ref_exprs( //dir=expr + unique int id: @member_ref_expr +); + +#keyset[id] +member_ref_expr_has_direct_to_storage_semantics( //dir=expr + int id: @member_ref_expr ref +); + +#keyset[id] +member_ref_expr_has_direct_to_implementation_semantics( //dir=expr + int id: @member_ref_expr ref +); + +#keyset[id] +member_ref_expr_has_ordinary_semantics( //dir=expr + int id: @member_ref_expr ref +); + +#keyset[id] +member_ref_expr_has_distributed_thunk_semantics( //dir=expr + int id: @member_ref_expr ref +); + +metatype_conversion_exprs( //dir=expr + unique int id: @metatype_conversion_expr +); + +nil_literal_exprs( //dir=expr + unique int id: @nil_literal_expr +); + +object_literal_exprs( //dir=expr + unique int id: @object_literal_expr, + int kind: int ref +); + +#keyset[id, index] +object_literal_expr_arguments( //dir=expr + int id: @object_literal_expr ref, + int index: int ref, + int argument: @argument_or_none ref +); + +optional_try_exprs( //dir=expr + unique int id: @optional_try_expr +); + +paren_exprs( //dir=expr + unique int id: @paren_expr +); + +pointer_to_pointer_exprs( //dir=expr + unique int id: @pointer_to_pointer_expr +); + +postfix_unary_exprs( //dir=expr + unique int id: @postfix_unary_expr +); + +prefix_unary_exprs( //dir=expr + unique int id: @prefix_unary_expr +); + +protocol_metatype_to_object_exprs( //dir=expr + unique int id: @protocol_metatype_to_object_expr +); + +regex_literal_exprs( //dir=expr + unique int id: @regex_literal_expr, + string pattern: string ref, + int version: int ref +); + +@self_apply_expr = + @dot_syntax_call_expr +| @initializer_ref_call_expr +; + +#keyset[id] +self_apply_exprs( //dir=expr + int id: @self_apply_expr ref, + int base: @expr_or_none ref +); + +string_to_pointer_exprs( //dir=expr + unique int id: @string_to_pointer_expr +); + +subscript_exprs( //dir=expr + unique int id: @subscript_expr +); + +#keyset[id, index] +subscript_expr_arguments( //dir=expr + int id: @subscript_expr ref, + int index: int ref, + int argument: @argument_or_none ref +); + +#keyset[id] +subscript_expr_has_direct_to_storage_semantics( //dir=expr + int id: @subscript_expr ref +); + +#keyset[id] +subscript_expr_has_direct_to_implementation_semantics( //dir=expr + int id: @subscript_expr ref +); + +#keyset[id] +subscript_expr_has_ordinary_semantics( //dir=expr + int id: @subscript_expr ref +); + +#keyset[id] +subscript_expr_has_distributed_thunk_semantics( //dir=expr + int id: @subscript_expr ref +); + +try_exprs( //dir=expr + unique int id: @try_expr +); + +underlying_to_opaque_exprs( //dir=expr + unique int id: @underlying_to_opaque_expr +); + +unevaluated_instance_exprs( //dir=expr + unique int id: @unevaluated_instance_expr +); + +unreachable_exprs( //dir=expr + unique int id: @unreachable_expr +); + +unresolved_member_chain_result_exprs( //dir=expr + unique int id: @unresolved_member_chain_result_expr +); + +unresolved_type_conversion_exprs( //dir=expr + unique int id: @unresolved_type_conversion_expr +); + +unsafe_cast_exprs( //dir=expr + unique int id: @unsafe_cast_expr +); + +unsafe_exprs( //dir=expr + unique int id: @unsafe_expr +); + +boolean_literal_exprs( //dir=expr + unique int id: @boolean_literal_expr, + boolean value: boolean ref +); + +conditional_checked_cast_exprs( //dir=expr + unique int id: @conditional_checked_cast_expr +); + +dot_syntax_call_exprs( //dir=expr + unique int id: @dot_syntax_call_expr +); + +dynamic_member_ref_exprs( //dir=expr + unique int id: @dynamic_member_ref_expr +); + +dynamic_subscript_exprs( //dir=expr + unique int id: @dynamic_subscript_expr +); + +forced_checked_cast_exprs( //dir=expr + unique int id: @forced_checked_cast_expr +); + +initializer_ref_call_exprs( //dir=expr + unique int id: @initializer_ref_call_expr +); + +is_exprs( //dir=expr + unique int id: @is_expr +); + +magic_identifier_literal_exprs( //dir=expr + unique int id: @magic_identifier_literal_expr, + string kind: string ref +); + +@number_literal_expr = + @float_literal_expr +| @integer_literal_expr +; + +string_literal_exprs( //dir=expr + unique int id: @string_literal_expr, + string value: string ref +); + +float_literal_exprs( //dir=expr + unique int id: @float_literal_expr, + string string_value: string ref +); + +integer_literal_exprs( //dir=expr + unique int id: @integer_literal_expr, + string string_value: string ref +); + +@pattern = + @any_pattern +| @binding_pattern +| @bool_pattern +| @enum_element_pattern +| @expr_pattern +| @is_pattern +| @named_pattern +| @optional_some_pattern +| @paren_pattern +| @tuple_pattern +| @typed_pattern +; + +#keyset[id] +pattern_types( //dir=pattern + int id: @pattern ref, + int type_: @type_or_none ref +); + +any_patterns( //dir=pattern + unique int id: @any_pattern +); + +binding_patterns( //dir=pattern + unique int id: @binding_pattern, + int sub_pattern: @pattern_or_none ref +); + +bool_patterns( //dir=pattern + unique int id: @bool_pattern, + boolean value: boolean ref +); + +enum_element_patterns( //dir=pattern + unique int id: @enum_element_pattern, + int element: @enum_element_decl_or_none ref +); + +#keyset[id] +enum_element_pattern_sub_patterns( //dir=pattern + int id: @enum_element_pattern ref, + int sub_pattern: @pattern_or_none ref +); + +expr_patterns( //dir=pattern + unique int id: @expr_pattern, + int sub_expr: @expr_or_none ref +); + +is_patterns( //dir=pattern + unique int id: @is_pattern +); + +#keyset[id] +is_pattern_cast_type_reprs( //dir=pattern + int id: @is_pattern ref, + int cast_type_repr: @type_repr_or_none ref +); + +#keyset[id] +is_pattern_sub_patterns( //dir=pattern + int id: @is_pattern ref, + int sub_pattern: @pattern_or_none ref +); + +named_patterns( //dir=pattern + unique int id: @named_pattern, + int var_decl: @var_decl_or_none ref +); + +optional_some_patterns( //dir=pattern + unique int id: @optional_some_pattern, + int sub_pattern: @pattern_or_none ref +); + +paren_patterns( //dir=pattern + unique int id: @paren_pattern, + int sub_pattern: @pattern_or_none ref +); + +tuple_patterns( //dir=pattern + unique int id: @tuple_pattern +); + +#keyset[id, index] +tuple_pattern_elements( //dir=pattern + int id: @tuple_pattern ref, + int index: int ref, + int element: @pattern_or_none ref +); + +typed_patterns( //dir=pattern + unique int id: @typed_pattern, + int sub_pattern: @pattern_or_none ref +); + +#keyset[id] +typed_pattern_type_reprs( //dir=pattern + int id: @typed_pattern ref, + int type_repr: @type_repr_or_none ref +); + +case_label_items( //dir=stmt + unique int id: @case_label_item, + int pattern: @pattern_or_none ref +); + +#keyset[id] +case_label_item_guards( //dir=stmt + int id: @case_label_item ref, + int guard: @expr_or_none ref +); + +condition_elements( //dir=stmt + unique int id: @condition_element +); + +#keyset[id] +condition_element_booleans( //dir=stmt + int id: @condition_element ref, + int boolean_: @expr_or_none ref +); + +#keyset[id] +condition_element_patterns( //dir=stmt + int id: @condition_element ref, + int pattern: @pattern_or_none ref +); + +#keyset[id] +condition_element_initializers( //dir=stmt + int id: @condition_element ref, + int initializer: @expr_or_none ref +); + +#keyset[id] +condition_element_availabilities( //dir=stmt + int id: @condition_element ref, + int availability: @availability_info_or_none ref +); + +@stmt = + @brace_stmt +| @break_stmt +| @case_stmt +| @continue_stmt +| @defer_stmt +| @discard_stmt +| @fail_stmt +| @fallthrough_stmt +| @labeled_stmt +| @pound_assert_stmt +| @return_stmt +| @then_stmt +| @throw_stmt +| @yield_stmt +; + +stmt_conditions( //dir=stmt + unique int id: @stmt_condition +); + +#keyset[id, index] +stmt_condition_elements( //dir=stmt + int id: @stmt_condition ref, + int index: int ref, + int element: @condition_element_or_none ref +); + +brace_stmts( //dir=stmt + unique int id: @brace_stmt +); + +#keyset[id, index] +brace_stmt_elements( //dir=stmt + int id: @brace_stmt ref, + int index: int ref, + int element: @ast_node_or_none ref +); + +break_stmts( //dir=stmt + unique int id: @break_stmt +); + +#keyset[id] +break_stmt_target_names( //dir=stmt + int id: @break_stmt ref, + string target_name: string ref +); + +#keyset[id] +break_stmt_targets( //dir=stmt + int id: @break_stmt ref, + int target: @stmt_or_none ref +); + +case_stmts( //dir=stmt + unique int id: @case_stmt, + int body: @stmt_or_none ref +); + +#keyset[id, index] +case_stmt_labels( //dir=stmt + int id: @case_stmt ref, + int index: int ref, + int label: @case_label_item_or_none ref +); + +#keyset[id, index] +case_stmt_variables( //dir=stmt + int id: @case_stmt ref, + int index: int ref, + int variable: @var_decl_or_none ref +); + +continue_stmts( //dir=stmt + unique int id: @continue_stmt +); + +#keyset[id] +continue_stmt_target_names( //dir=stmt + int id: @continue_stmt ref, + string target_name: string ref +); + +#keyset[id] +continue_stmt_targets( //dir=stmt + int id: @continue_stmt ref, + int target: @stmt_or_none ref +); + +defer_stmts( //dir=stmt + unique int id: @defer_stmt, + int body: @brace_stmt_or_none ref +); + +discard_stmts( //dir=stmt + unique int id: @discard_stmt, + int sub_expr: @expr_or_none ref +); + +fail_stmts( //dir=stmt + unique int id: @fail_stmt +); + +fallthrough_stmts( //dir=stmt + unique int id: @fallthrough_stmt, + int fallthrough_source: @case_stmt_or_none ref, + int fallthrough_dest: @case_stmt_or_none ref +); + +@labeled_stmt = + @do_catch_stmt +| @do_stmt +| @for_each_stmt +| @labeled_conditional_stmt +| @repeat_while_stmt +| @switch_stmt +; + +#keyset[id] +labeled_stmt_labels( //dir=stmt + int id: @labeled_stmt ref, + string label: string ref +); + +pound_assert_stmts( //dir=stmt + unique int id: @pound_assert_stmt, + int condition: @expr_or_none ref, + string message: string ref +); + +return_stmts( //dir=stmt + unique int id: @return_stmt +); + +#keyset[id] +return_stmt_results( //dir=stmt + int id: @return_stmt ref, + int result: @expr_or_none ref +); + +then_stmts( //dir=stmt + unique int id: @then_stmt, + int result: @expr_or_none ref +); + +throw_stmts( //dir=stmt + unique int id: @throw_stmt, + int sub_expr: @expr_or_none ref +); + +yield_stmts( //dir=stmt + unique int id: @yield_stmt +); + +#keyset[id, index] +yield_stmt_results( //dir=stmt + int id: @yield_stmt ref, + int index: int ref, + int result: @expr_or_none ref +); + +do_catch_stmts( //dir=stmt + unique int id: @do_catch_stmt, + int body: @stmt_or_none ref +); + +#keyset[id, index] +do_catch_stmt_catches( //dir=stmt + int id: @do_catch_stmt ref, + int index: int ref, + int catch: @case_stmt_or_none ref +); + +do_stmts( //dir=stmt + unique int id: @do_stmt, + int body: @brace_stmt_or_none ref +); + +for_each_stmts( //dir=stmt + unique int id: @for_each_stmt, + int pattern: @pattern_or_none ref, + int body: @brace_stmt_or_none ref +); + +#keyset[id, index] +for_each_stmt_variables( //dir=stmt + int id: @for_each_stmt ref, + int index: int ref, + int variable: @var_decl_or_none ref +); + +#keyset[id] +for_each_stmt_wheres( //dir=stmt + int id: @for_each_stmt ref, + int where: @expr_or_none ref +); + +#keyset[id] +for_each_stmt_iterator_vars( //dir=stmt + int id: @for_each_stmt ref, + int iteratorVar: @pattern_binding_decl_or_none ref +); + +#keyset[id] +for_each_stmt_next_calls( //dir=stmt + int id: @for_each_stmt ref, + int nextCall: @expr_or_none ref +); + +@labeled_conditional_stmt = + @guard_stmt +| @if_stmt +| @while_stmt +; + +#keyset[id] +labeled_conditional_stmts( //dir=stmt + int id: @labeled_conditional_stmt ref, + int condition: @stmt_condition_or_none ref +); + +repeat_while_stmts( //dir=stmt + unique int id: @repeat_while_stmt, + int condition: @expr_or_none ref, + int body: @stmt_or_none ref +); + +switch_stmts( //dir=stmt + unique int id: @switch_stmt, + int expr: @expr_or_none ref +); + +#keyset[id, index] +switch_stmt_cases( //dir=stmt + int id: @switch_stmt ref, + int index: int ref, + int case_: @case_stmt_or_none ref +); + +guard_stmts( //dir=stmt + unique int id: @guard_stmt, + int body: @brace_stmt_or_none ref +); + +if_stmts( //dir=stmt + unique int id: @if_stmt, + int then: @stmt_or_none ref +); + +#keyset[id] +if_stmt_elses( //dir=stmt + int id: @if_stmt ref, + int else: @stmt_or_none ref +); + +while_stmts( //dir=stmt + unique int id: @while_stmt, + int body: @stmt_or_none ref +); + +@type = + @any_function_type +| @any_generic_type +| @any_metatype_type +| @builtin_type +| @dependent_member_type +| @dynamic_self_type +| @error_type +| @existential_type +| @in_out_type +| @integer_type +| @l_value_type +| @module_type +| @pack_element_type +| @pack_expansion_type +| @pack_type +| @parameterized_protocol_type +| @protocol_composition_type +| @reference_storage_type +| @substitutable_type +| @sugar_type +| @tuple_type +| @unresolved_type +; + +#keyset[id] +types( //dir=type + int id: @type ref, + string name: string ref, + int canonical_type: @type_or_none ref +); + +type_reprs( //dir=type + unique int id: @type_repr, + int type_: @type_or_none ref +); + +@any_function_type = + @function_type +| @generic_function_type +; + +#keyset[id] +any_function_types( //dir=type + int id: @any_function_type ref, + int result: @type_or_none ref +); + +#keyset[id, index] +any_function_type_param_types( //dir=type + int id: @any_function_type ref, + int index: int ref, + int param_type: @type_or_none ref +); + +#keyset[id] +any_function_type_is_throwing( //dir=type + int id: @any_function_type ref +); + +#keyset[id] +any_function_type_is_async( //dir=type + int id: @any_function_type ref +); + +@any_generic_type = + @nominal_or_bound_generic_nominal_type +| @unbound_generic_type +; + +#keyset[id] +any_generic_types( //dir=type + int id: @any_generic_type ref, + int declaration: @generic_type_decl_or_none ref +); + +#keyset[id] +any_generic_type_parents( //dir=type + int id: @any_generic_type ref, + int parent: @type_or_none ref +); + +@any_metatype_type = + @existential_metatype_type +| @metatype_type +; + +@builtin_type = + @any_builtin_integer_type +| @builtin_bridge_object_type +| @builtin_default_actor_storage_type +| @builtin_executor_type +| @builtin_float_type +| @builtin_generic_type +| @builtin_job_type +| @builtin_native_object_type +| @builtin_raw_pointer_type +| @builtin_raw_unsafe_continuation_type +| @builtin_unsafe_value_buffer_type +| @builtin_vector_type +; + +dependent_member_types( //dir=type + unique int id: @dependent_member_type, + int base_type: @type_or_none ref, + int associated_type_decl: @associated_type_decl_or_none ref +); + +dynamic_self_types( //dir=type + unique int id: @dynamic_self_type, + int static_self_type: @type_or_none ref +); + +error_types( //dir=type + unique int id: @error_type +); + +existential_types( //dir=type + unique int id: @existential_type, + int constraint: @type_or_none ref +); + +in_out_types( //dir=type + unique int id: @in_out_type, + int object_type: @type_or_none ref +); + +integer_types( //dir=type + unique int id: @integer_type, + string value: string ref +); + +l_value_types( //dir=type + unique int id: @l_value_type, + int object_type: @type_or_none ref +); + +module_types( //dir=type + unique int id: @module_type, + int module: @module_decl_or_none ref +); + +pack_element_types( //dir=type + unique int id: @pack_element_type, + int pack_type: @type_or_none ref +); + +pack_expansion_types( //dir=type + unique int id: @pack_expansion_type, + int pattern_type: @type_or_none ref, + int count_type: @type_or_none ref +); + +pack_types( //dir=type + unique int id: @pack_type +); + +#keyset[id, index] +pack_type_elements( //dir=type + int id: @pack_type ref, + int index: int ref, + int element: @type_or_none ref +); + +parameterized_protocol_types( //dir=type + unique int id: @parameterized_protocol_type, + int base: @protocol_type_or_none ref +); + +#keyset[id, index] +parameterized_protocol_type_args( //dir=type + int id: @parameterized_protocol_type ref, + int index: int ref, + int arg: @type_or_none ref +); + +protocol_composition_types( //dir=type + unique int id: @protocol_composition_type +); + +#keyset[id, index] +protocol_composition_type_members( //dir=type + int id: @protocol_composition_type ref, + int index: int ref, + int member: @type_or_none ref +); + +@reference_storage_type = + @unmanaged_storage_type +| @unowned_storage_type +| @weak_storage_type +; + +#keyset[id] +reference_storage_types( //dir=type + int id: @reference_storage_type ref, + int referent_type: @type_or_none ref +); + +@substitutable_type = + @archetype_type +| @generic_type_param_type +; + +@sugar_type = + @paren_type +| @syntax_sugar_type +| @type_alias_type +; + +tuple_types( //dir=type + unique int id: @tuple_type +); + +#keyset[id, index] +tuple_type_types( //dir=type + int id: @tuple_type ref, + int index: int ref, + int type_: @type_or_none ref +); + +#keyset[id, index] +tuple_type_names( //dir=type + int id: @tuple_type ref, + int index: int ref, + string name: string ref +); + +unresolved_types( //dir=type + unique int id: @unresolved_type +); + +@any_builtin_integer_type = + @builtin_integer_literal_type +| @builtin_integer_type +; + +@archetype_type = + @local_archetype_type +| @opaque_type_archetype_type +| @pack_archetype_type +| @primary_archetype_type +; + +#keyset[id] +archetype_types( //dir=type + int id: @archetype_type ref, + int interface_type: @type_or_none ref +); + +#keyset[id] +archetype_type_superclasses( //dir=type + int id: @archetype_type ref, + int superclass: @type_or_none ref +); + +#keyset[id, index] +archetype_type_protocols( //dir=type + int id: @archetype_type ref, + int index: int ref, + int protocol: @protocol_decl_or_none ref +); + +builtin_bridge_object_types( //dir=type + unique int id: @builtin_bridge_object_type +); + +builtin_default_actor_storage_types( //dir=type + unique int id: @builtin_default_actor_storage_type +); + +builtin_executor_types( //dir=type + unique int id: @builtin_executor_type +); + +builtin_float_types( //dir=type + unique int id: @builtin_float_type +); + +@builtin_generic_type = + @builtin_fixed_array_type +; + +builtin_job_types( //dir=type + unique int id: @builtin_job_type +); + +builtin_native_object_types( //dir=type + unique int id: @builtin_native_object_type +); + +builtin_raw_pointer_types( //dir=type + unique int id: @builtin_raw_pointer_type +); + +builtin_raw_unsafe_continuation_types( //dir=type + unique int id: @builtin_raw_unsafe_continuation_type +); + +builtin_unsafe_value_buffer_types( //dir=type + unique int id: @builtin_unsafe_value_buffer_type +); + +builtin_vector_types( //dir=type + unique int id: @builtin_vector_type +); + +existential_metatype_types( //dir=type + unique int id: @existential_metatype_type +); + +function_types( //dir=type + unique int id: @function_type +); + +generic_function_types( //dir=type + unique int id: @generic_function_type +); + +#keyset[id, index] +generic_function_type_generic_params( //dir=type + int id: @generic_function_type ref, + int index: int ref, + int generic_param: @generic_type_param_type_or_none ref +); + +generic_type_param_types( //dir=type + unique int id: @generic_type_param_type +); + +metatype_types( //dir=type + unique int id: @metatype_type +); + +@nominal_or_bound_generic_nominal_type = + @bound_generic_type +| @nominal_type +; + +paren_types( //dir=type + unique int id: @paren_type, + int type_: @type_or_none ref +); + +@syntax_sugar_type = + @dictionary_type +| @inline_array_type +| @unary_syntax_sugar_type +; + +type_alias_types( //dir=type + unique int id: @type_alias_type, + int decl: @type_alias_decl_or_none ref +); + +unbound_generic_types( //dir=type + unique int id: @unbound_generic_type +); + +unmanaged_storage_types( //dir=type + unique int id: @unmanaged_storage_type +); + +unowned_storage_types( //dir=type + unique int id: @unowned_storage_type +); + +weak_storage_types( //dir=type + unique int id: @weak_storage_type +); + +@bound_generic_type = + @bound_generic_class_type +| @bound_generic_enum_type +| @bound_generic_struct_type +; + +#keyset[id, index] +bound_generic_type_arg_types( //dir=type + int id: @bound_generic_type ref, + int index: int ref, + int arg_type: @type_or_none ref +); + +builtin_fixed_array_types( //dir=type + unique int id: @builtin_fixed_array_type +); + +builtin_integer_literal_types( //dir=type + unique int id: @builtin_integer_literal_type +); + +builtin_integer_types( //dir=type + unique int id: @builtin_integer_type +); + +#keyset[id] +builtin_integer_type_widths( //dir=type + int id: @builtin_integer_type ref, + int width: int ref +); + +dictionary_types( //dir=type + unique int id: @dictionary_type, + int key_type: @type_or_none ref, + int value_type: @type_or_none ref +); + +inline_array_types( //dir=type + unique int id: @inline_array_type, + int count_type: @type_or_none ref, + int element_type: @type_or_none ref +); + +@local_archetype_type = + @element_archetype_type +| @existential_archetype_type +; + +@nominal_type = + @class_type +| @enum_type +| @protocol_type +| @struct_type +; + +opaque_type_archetype_types( //dir=type + unique int id: @opaque_type_archetype_type, + int declaration: @opaque_type_decl_or_none ref +); + +pack_archetype_types( //dir=type + unique int id: @pack_archetype_type +); + +primary_archetype_types( //dir=type + unique int id: @primary_archetype_type +); + +@unary_syntax_sugar_type = + @array_slice_type +| @optional_type +| @variadic_sequence_type +; + +#keyset[id] +unary_syntax_sugar_types( //dir=type + int id: @unary_syntax_sugar_type ref, + int base_type: @type_or_none ref +); + +array_slice_types( //dir=type + unique int id: @array_slice_type +); + +bound_generic_class_types( //dir=type + unique int id: @bound_generic_class_type +); + +bound_generic_enum_types( //dir=type + unique int id: @bound_generic_enum_type +); + +bound_generic_struct_types( //dir=type + unique int id: @bound_generic_struct_type +); + +class_types( //dir=type + unique int id: @class_type +); + +element_archetype_types( //dir=type + unique int id: @element_archetype_type +); + +enum_types( //dir=type + unique int id: @enum_type +); + +existential_archetype_types( //dir=type + unique int id: @existential_archetype_type +); + +optional_types( //dir=type + unique int id: @optional_type +); + +protocol_types( //dir=type + unique int id: @protocol_type +); + +struct_types( //dir=type + unique int id: @struct_type +); + +variadic_sequence_types( //dir=type + unique int id: @variadic_sequence_type +); + +@accessor_or_none = + @accessor +| @unspecified_element +; + +@argument_or_none = + @argument +| @unspecified_element +; + +@associated_type_decl_or_none = + @associated_type_decl +| @unspecified_element +; + +@ast_node_or_none = + @ast_node +| @unspecified_element +; + +@availability_info_or_none = + @availability_info +| @unspecified_element +; + +@availability_spec_or_none = + @availability_spec +| @unspecified_element +; + +@brace_stmt_or_none = + @brace_stmt +| @unspecified_element +; + +@captured_decl_or_none = + @captured_decl +| @unspecified_element +; + +@case_label_item_or_none = + @case_label_item +| @unspecified_element +; + +@case_stmt_or_none = + @case_stmt +| @unspecified_element +; + +@closure_expr_or_none = + @closure_expr +| @unspecified_element +; + +@condition_element_or_none = + @condition_element +| @unspecified_element +; + +@decl_or_none = + @decl +| @unspecified_element +; + +@enum_element_decl_or_none = + @enum_element_decl +| @unspecified_element +; + +@expr_or_none = + @expr +| @unspecified_element +; + +@file_or_none = + @file +| @unspecified_element +; + +@function_or_none = + @function +| @unspecified_element +; + +@generic_type_decl_or_none = + @generic_type_decl +| @unspecified_element +; + +@generic_type_param_decl_or_none = + @generic_type_param_decl +| @unspecified_element +; + +@generic_type_param_type_or_none = + @generic_type_param_type +| @unspecified_element +; + +@initializer_or_none = + @initializer +| @unspecified_element +; + +@key_path_component_or_none = + @key_path_component +| @unspecified_element +; + +@location_or_none = + @location +| @unspecified_element +; + +@macro_role_or_none = + @macro_role +| @unspecified_element +; + +@module_decl_or_none = + @module_decl +| @unspecified_element +; + +@nominal_type_decl_or_none = + @nominal_type_decl +| @unspecified_element +; + +@opaque_type_decl_or_none = + @opaque_type_decl +| @unspecified_element +; + +@opaque_value_expr_or_none = + @opaque_value_expr +| @unspecified_element +; + +@param_decl_or_none = + @param_decl +| @unspecified_element +; + +@pattern_or_none = + @pattern +| @unspecified_element +; + +@pattern_binding_decl_or_none = + @pattern_binding_decl +| @unspecified_element +; + +@precedence_group_decl_or_none = + @precedence_group_decl +| @unspecified_element +; + +@protocol_decl_or_none = + @protocol_decl +| @unspecified_element +; + +@protocol_type_or_none = + @protocol_type +| @unspecified_element +; + +@stmt_or_none = + @stmt +| @unspecified_element +; + +@stmt_condition_or_none = + @stmt_condition +| @unspecified_element +; + +@string_literal_expr_or_none = + @string_literal_expr +| @unspecified_element +; + +@tap_expr_or_none = + @tap_expr +| @unspecified_element +; + +@type_or_none = + @type +| @unspecified_element +; + +@type_alias_decl_or_none = + @type_alias_decl +| @unspecified_element +; + +@type_repr_or_none = + @type_repr +| @unspecified_element +; + +@value_decl_or_none = + @unspecified_element +| @value_decl +; + +@var_decl_or_none = + @unspecified_element +| @var_decl +; diff --git a/swift/ql/lib/upgrades/33e5e5e03bd3f98322f4c67aefa81015be832b88/upgrade.properties b/swift/ql/lib/upgrades/33e5e5e03bd3f98322f4c67aefa81015be832b88/upgrade.properties new file mode 100644 index 000000000000..dfc606c6f143 --- /dev/null +++ b/swift/ql/lib/upgrades/33e5e5e03bd3f98322f4c67aefa81015be832b88/upgrade.properties @@ -0,0 +1,2 @@ +description: Upgrade to Swift 6.3 +compatibility: full From d622dabf3e12ee9b6fb2b6167627e958943bf687 Mon Sep 17 00:00:00 2001 From: Taus Date: Thu, 9 Apr 2026 13:06:45 +0000 Subject: [PATCH 088/157] Python: Add `create-extractor-pack.sh` for Python This allows us to build and test the extractor (for actual QL extraction -- not just the extractor unit tests) entirely from within the `github/codeql` repo, just as we do with Ruby. All that's needed is a `--search-path` argument that points to the repo root. --- python/scripts/create-extractor-pack.sh | 67 +++++++++++++++++++++++++ 1 file changed, 67 insertions(+) create mode 100755 python/scripts/create-extractor-pack.sh diff --git a/python/scripts/create-extractor-pack.sh b/python/scripts/create-extractor-pack.sh new file mode 100755 index 000000000000..ae9248f6ccfc --- /dev/null +++ b/python/scripts/create-extractor-pack.sh @@ -0,0 +1,67 @@ +#!/bin/bash +# +# Build a local Python extractor pack from source. +# +# Usage with the CodeQL CLI (run from the repository root): +# +# codeql database create -l python -s --search-path . +# codeql test run --search-path . python/ql/test/ +# +set -eux + +if [[ "$OSTYPE" == "linux-gnu"* ]]; then + platform="linux64" +elif [[ "$OSTYPE" == "darwin"* ]]; then + platform="osx64" +else + echo "Unknown OS" + exit 1 +fi + +cd "$(dirname "$0")/.." + +# Build the tsg-python Rust binary +(cd extractor/tsg-python && cargo build --release) +tsg_bin="extractor/tsg-python/target/release/tsg-python" + +# Generate python3src.zip from the Python extractor source. +# make_zips.py creates the zip in the source directory and then copies it to the +# given output directory. We use a temporary directory to avoid a same-file copy +# error, then move the zip back. +tmpdir=$(mktemp -d) +trap 'rm -rf "$tmpdir"' EXIT +(cd extractor && python3 make_zips.py "$tmpdir") +cp "$tmpdir/python3src.zip" extractor/python3src.zip + +# Assemble the extractor pack +rm -rf extractor-pack +mkdir -p extractor-pack/tools/${platform} + +# Root-level metadata and schema files +cp codeql-extractor.yml extractor-pack/ +cp ql/lib/semmlecode.python.dbscheme extractor-pack/ +cp ql/lib/semmlecode.python.dbscheme.stats extractor-pack/ + +# Python extractor engine files (into tools/) +cp extractor/python_tracer.py extractor-pack/tools/ +cp extractor/index.py extractor-pack/tools/ +cp extractor/setup.py extractor-pack/tools/ +cp extractor/convert_setup.py extractor-pack/tools/ +cp extractor/get_venv_lib.py extractor-pack/tools/ +cp extractor/imp.py extractor-pack/tools/ +cp extractor/LICENSE-PSF.md extractor-pack/tools/ +cp extractor/python3src.zip extractor-pack/tools/ +cp -r extractor/data extractor-pack/tools/ + +# Shell tool scripts (autobuild, pre-finalize, lgtm-scripts) +cp tools/autobuild.sh extractor-pack/tools/ +cp tools/autobuild.cmd extractor-pack/tools/ +cp tools/pre-finalize.sh extractor-pack/tools/ +cp tools/pre-finalize.cmd extractor-pack/tools/ +cp -r tools/lgtm-scripts extractor-pack/tools/ + +# Downgrades +cp -r downgrades extractor-pack/ + +# Platform-specific Rust binary +cp "${tsg_bin}" extractor-pack/tools/${platform}/tsg-python From 94fb011b90dac51a4a1860f3f6c9e8cdc0cd185f Mon Sep 17 00:00:00 2001 From: Jeroen Ketema Date: Thu, 9 Apr 2026 15:17:13 +0200 Subject: [PATCH 089/157] Swift: Add change note --- swift/ql/lib/change-notes/2026-04-06-swift-6.3.md | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 swift/ql/lib/change-notes/2026-04-06-swift-6.3.md diff --git a/swift/ql/lib/change-notes/2026-04-06-swift-6.3.md b/swift/ql/lib/change-notes/2026-04-06-swift-6.3.md new file mode 100644 index 000000000000..512cb6139847 --- /dev/null +++ b/swift/ql/lib/change-notes/2026-04-06-swift-6.3.md @@ -0,0 +1,4 @@ +--- +category: majorAnalysis +--- +* Upgraded to allow analysis of Swift 6.3. From 85c42ae9325aa96aee37eb607813edfee083f301 Mon Sep 17 00:00:00 2001 From: Jeroen Ketema Date: Thu, 9 Apr 2026 15:19:29 +0200 Subject: [PATCH 090/157] Swift: Update supported versions --- docs/codeql/reusables/supported-versions-compilers.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/codeql/reusables/supported-versions-compilers.rst b/docs/codeql/reusables/supported-versions-compilers.rst index ddda7065cf1c..f40e7960589b 100644 --- a/docs/codeql/reusables/supported-versions-compilers.rst +++ b/docs/codeql/reusables/supported-versions-compilers.rst @@ -26,7 +26,7 @@ Python [9]_,"2.7, 3.5, 3.6, 3.7, 3.8, 3.9, 3.10, 3.11, 3.12, 3.13",Not applicable,``.py`` Ruby [10]_,"up to 3.3",Not applicable,"``.rb``, ``.erb``, ``.gemspec``, ``Gemfile``" Rust [11]_,"Rust editions 2021 and 2024","Rust compiler","``.rs``, ``Cargo.toml``" - Swift [12]_ [13]_,"Swift 5.4-6.2","Swift compiler","``.swift``" + Swift [12]_ [13]_,"Swift 5.4-6.3","Swift compiler","``.swift``" TypeScript [14]_,"2.6-5.9",Standard TypeScript compiler,"``.ts``, ``.tsx``, ``.mts``, ``.cts``" .. container:: footnote-group From 3fa5c952b3aa4551c1041ff9703e828363aa4535 Mon Sep 17 00:00:00 2001 From: Tom Hvitved Date: Tue, 7 Apr 2026 13:39:09 +0200 Subject: [PATCH 091/157] Rust: Add more closure flow tests --- .../dataflow/lambdas/inline-flow.expected | 65 +++++++++++++++++++ .../library-tests/dataflow/lambdas/main.rs | 26 ++++++++ 2 files changed, 91 insertions(+) diff --git a/rust/ql/test/library-tests/dataflow/lambdas/inline-flow.expected b/rust/ql/test/library-tests/dataflow/lambdas/inline-flow.expected index 7c99702aec63..31b42cc228a5 100644 --- a/rust/ql/test/library-tests/dataflow/lambdas/inline-flow.expected +++ b/rust/ql/test/library-tests/dataflow/lambdas/inline-flow.expected @@ -30,6 +30,33 @@ edges | main.rs:77:13:77:22 | f(...) | main.rs:77:9:77:9 | b | provenance | | | main.rs:77:21:77:21 | a | main.rs:66:24:66:32 | ...: i64 | provenance | | | main.rs:77:21:77:21 | a | main.rs:77:13:77:22 | f(...) | provenance | | +| main.rs:81:28:81:33 | ...: i64 | main.rs:82:7:82:7 | x | provenance | | +| main.rs:81:28:81:33 | ...: i64 | main.rs:82:7:82:7 | x | provenance | | +| main.rs:81:28:81:33 | ...: i64 | main.rs:82:7:82:7 | x | provenance | | +| main.rs:82:7:82:7 | x | main.rs:87:12:87:12 | ... | provenance | | +| main.rs:82:7:82:7 | x | main.rs:89:12:89:12 | ... | provenance | | +| main.rs:82:7:82:7 | x | main.rs:99:17:99:17 | ... | provenance | | +| main.rs:82:7:82:7 | x | main.rs:101:17:101:17 | ... | provenance | | +| main.rs:82:7:82:7 | x | main.rs:102:17:102:17 | ... | provenance | | +| main.rs:86:9:86:9 | a | main.rs:87:24:87:24 | a | provenance | | +| main.rs:86:13:86:22 | source(...) | main.rs:86:9:86:9 | a | provenance | | +| main.rs:87:12:87:12 | ... | main.rs:87:20:87:20 | x | provenance | | +| main.rs:87:24:87:24 | a | main.rs:81:28:81:33 | ...: i64 | provenance | | +| main.rs:88:9:88:9 | b | main.rs:89:24:89:24 | b | provenance | | +| main.rs:88:13:88:22 | source(...) | main.rs:88:9:88:9 | b | provenance | | +| main.rs:89:12:89:12 | ... | main.rs:89:20:89:20 | x | provenance | | +| main.rs:89:24:89:24 | b | main.rs:81:28:81:33 | ...: i64 | provenance | | +| main.rs:93:33:93:38 | ...: i64 | main.rs:94:14:94:14 | x | provenance | | +| main.rs:94:14:94:14 | x | main.rs:81:28:81:33 | ...: i64 | provenance | | +| main.rs:98:9:98:9 | a | main.rs:99:29:99:29 | a | provenance | | +| main.rs:98:13:98:22 | source(...) | main.rs:98:9:98:9 | a | provenance | | +| main.rs:99:17:99:17 | ... | main.rs:99:25:99:25 | x | provenance | | +| main.rs:99:29:99:29 | a | main.rs:93:33:93:38 | ...: i64 | provenance | | +| main.rs:100:9:100:9 | b | main.rs:101:29:101:29 | b | provenance | | +| main.rs:100:13:100:22 | source(...) | main.rs:100:9:100:9 | b | provenance | | +| main.rs:101:17:101:17 | ... | main.rs:101:25:101:25 | x | provenance | | +| main.rs:101:29:101:29 | b | main.rs:93:33:93:38 | ...: i64 | provenance | | +| main.rs:102:17:102:17 | ... | main.rs:102:25:102:25 | x | provenance | | nodes | main.rs:10:20:10:52 | if cond {...} else {...} | semmle.label | if cond {...} else {...} | | main.rs:10:30:10:39 | source(...) | semmle.label | source(...) | @@ -68,6 +95,36 @@ nodes | main.rs:77:13:77:22 | f(...) | semmle.label | f(...) | | main.rs:77:21:77:21 | a | semmle.label | a | | main.rs:78:10:78:10 | b | semmle.label | b | +| main.rs:81:28:81:33 | ...: i64 | semmle.label | ...: i64 | +| main.rs:81:28:81:33 | ...: i64 | semmle.label | ...: i64 | +| main.rs:81:28:81:33 | ...: i64 | semmle.label | ...: i64 | +| main.rs:82:7:82:7 | x | semmle.label | x | +| main.rs:82:7:82:7 | x | semmle.label | x | +| main.rs:82:7:82:7 | x | semmle.label | x | +| main.rs:86:9:86:9 | a | semmle.label | a | +| main.rs:86:13:86:22 | source(...) | semmle.label | source(...) | +| main.rs:87:12:87:12 | ... | semmle.label | ... | +| main.rs:87:20:87:20 | x | semmle.label | x | +| main.rs:87:24:87:24 | a | semmle.label | a | +| main.rs:88:9:88:9 | b | semmle.label | b | +| main.rs:88:13:88:22 | source(...) | semmle.label | source(...) | +| main.rs:89:12:89:12 | ... | semmle.label | ... | +| main.rs:89:20:89:20 | x | semmle.label | x | +| main.rs:89:24:89:24 | b | semmle.label | b | +| main.rs:93:33:93:38 | ...: i64 | semmle.label | ...: i64 | +| main.rs:94:14:94:14 | x | semmle.label | x | +| main.rs:98:9:98:9 | a | semmle.label | a | +| main.rs:98:13:98:22 | source(...) | semmle.label | source(...) | +| main.rs:99:17:99:17 | ... | semmle.label | ... | +| main.rs:99:25:99:25 | x | semmle.label | x | +| main.rs:99:29:99:29 | a | semmle.label | a | +| main.rs:100:9:100:9 | b | semmle.label | b | +| main.rs:100:13:100:22 | source(...) | semmle.label | source(...) | +| main.rs:101:17:101:17 | ... | semmle.label | ... | +| main.rs:101:25:101:25 | x | semmle.label | x | +| main.rs:101:29:101:29 | b | semmle.label | b | +| main.rs:102:17:102:17 | ... | semmle.label | ... | +| main.rs:102:25:102:25 | x | semmle.label | x | subpaths | main.rs:29:21:29:21 | a | main.rs:27:20:27:23 | ... | main.rs:27:26:27:52 | if cond {...} else {...} | main.rs:29:13:29:22 | f(...) | | main.rs:77:21:77:21 | a | main.rs:66:24:66:32 | ...: i64 | main.rs:66:42:72:1 | { ... } | main.rs:77:13:77:22 | f(...) | @@ -81,3 +138,11 @@ testFailures | main.rs:52:10:52:13 | data | main.rs:62:13:62:22 | source(...) | main.rs:52:10:52:13 | data | $@ | main.rs:62:13:62:22 | source(...) | source(...) | | main.rs:57:10:57:12 | f(...) | main.rs:48:5:48:14 | source(...) | main.rs:57:10:57:12 | f(...) | $@ | main.rs:48:5:48:14 | source(...) | source(...) | | main.rs:78:10:78:10 | b | main.rs:76:13:76:22 | source(...) | main.rs:78:10:78:10 | b | $@ | main.rs:76:13:76:22 | source(...) | source(...) | +| main.rs:87:20:87:20 | x | main.rs:86:13:86:22 | source(...) | main.rs:87:20:87:20 | x | $@ | main.rs:86:13:86:22 | source(...) | source(...) | +| main.rs:89:20:89:20 | x | main.rs:88:13:88:22 | source(...) | main.rs:89:20:89:20 | x | $@ | main.rs:88:13:88:22 | source(...) | source(...) | +| main.rs:99:25:99:25 | x | main.rs:98:13:98:22 | source(...) | main.rs:99:25:99:25 | x | $@ | main.rs:98:13:98:22 | source(...) | source(...) | +| main.rs:99:25:99:25 | x | main.rs:100:13:100:22 | source(...) | main.rs:99:25:99:25 | x | $@ | main.rs:100:13:100:22 | source(...) | source(...) | +| main.rs:101:25:101:25 | x | main.rs:98:13:98:22 | source(...) | main.rs:101:25:101:25 | x | $@ | main.rs:98:13:98:22 | source(...) | source(...) | +| main.rs:101:25:101:25 | x | main.rs:100:13:100:22 | source(...) | main.rs:101:25:101:25 | x | $@ | main.rs:100:13:100:22 | source(...) | source(...) | +| main.rs:102:25:102:25 | x | main.rs:98:13:98:22 | source(...) | main.rs:102:25:102:25 | x | $@ | main.rs:98:13:98:22 | source(...) | source(...) | +| main.rs:102:25:102:25 | x | main.rs:100:13:100:22 | source(...) | main.rs:102:25:102:25 | x | $@ | main.rs:100:13:100:22 | source(...) | source(...) | diff --git a/rust/ql/test/library-tests/dataflow/lambdas/main.rs b/rust/ql/test/library-tests/dataflow/lambdas/main.rs index 252b132ec744..a2dfc7e9a1ce 100644 --- a/rust/ql/test/library-tests/dataflow/lambdas/main.rs +++ b/rust/ql/test/library-tests/dataflow/lambdas/main.rs @@ -78,6 +78,30 @@ fn function_flows_through() { sink(b); // $ hasValueFlow=56 } +fn apply(f: F, x: i64) { + f(x); +} + +fn test_apply() { + let a = source(77); + apply(|x| sink(x), a); // $ hasValueFlow=77 + let b = source(78); + apply(|x| sink(x), b); // $ hasValueFlow=78 + apply(|x| sink(x), 0); +} + +fn apply_wrap(f: F, x: i64) { + apply(f, x); +} + +fn test_apply_wrap() { + let a = source(79); + apply_wrap(|x| sink(x), a); // $ hasValueFlow=79 $ SPURIOUS: hasValueFlow=80 + let b = source(80); + apply_wrap(|x| sink(x), b); // $ hasValueFlow=80 $ SPURIOUS: hasValueFlow=79 + apply_wrap(|x| sink(x), 0); // $ SPURIOUS: hasValueFlow=79 hasValueFlow=80 +} + fn main() { closure_flow_out(); closure_flow_in(); @@ -86,4 +110,6 @@ fn main() { function_flow_in(); function_flow_out(); function_flows_through(); + test_apply(); + test_apply_wrap(); } From 23f081006ea3ce087e6e18e2715fa33342a39958 Mon Sep 17 00:00:00 2001 From: Tom Hvitved Date: Fri, 27 Mar 2026 12:53:45 +0100 Subject: [PATCH 092/157] Rust: Track closure types in data flow --- .../rust/dataflow/internal/DataFlowImpl.qll | 113 ++++++++++++++++-- .../rust/dataflow/internal/ModelsAsData.qll | 6 +- .../dataflow/lambdas/inline-flow.expected | 14 +-- .../library-tests/dataflow/lambdas/main.rs | 2 +- 4 files changed, 109 insertions(+), 26 deletions(-) diff --git a/rust/ql/lib/codeql/rust/dataflow/internal/DataFlowImpl.qll b/rust/ql/lib/codeql/rust/dataflow/internal/DataFlowImpl.qll index 27773758fc46..6ae18d8ce149 100644 --- a/rust/ql/lib/codeql/rust/dataflow/internal/DataFlowImpl.qll +++ b/rust/ql/lib/codeql/rust/dataflow/internal/DataFlowImpl.qll @@ -193,9 +193,7 @@ module LocalFlow { } pragma[nomagic] - predicate localFlowStepCommon(Node nodeFrom, Node nodeTo) { - nodeFrom.asExpr() = getALastEvalNode(nodeTo.asExpr()) - or + predicate localMustFlowStep(Node nodeFrom, Node nodeTo) { // An edge from the right-hand side of a let statement to the left-hand side. exists(LetStmt s | nodeFrom.asExpr() = s.getInitializer() and @@ -238,6 +236,15 @@ module LocalFlow { nodeTo.asPat() = match.getAnArm().getPat() ) or + nodeFrom.asExpr() = nodeTo.asExpr().(ParenExpr).getExpr() + } + + pragma[nomagic] + predicate localFlowStepCommon(Node nodeFrom, Node nodeTo) { + localMustFlowStep(nodeFrom, nodeTo) + or + nodeFrom.asExpr() = getALastEvalNode(nodeTo.asExpr()) + or nodeFrom.asPat().(OrPat).getAPat() = nodeTo.asPat() or nodeTo.(PostUpdateNode).getPreUpdateNode().asExpr() = @@ -263,10 +270,84 @@ predicate lambdaCallExpr(CallExprImpl::DynamicCallExpr call, LambdaCallKind kind exists(kind) } +// NOTE: We do not yet track type information, except for closures where +// we use the closure itself to represent the unique type. +final class DataFlowType extends TDataFlowType { + Expr asClosureExpr() { this = TClosureExprType(result) } + + predicate isUnknownType() { this = TUnknownType() } + + predicate isSourceContextParameterType() { this = TSourceContextParameterType() } + + string toString() { + exists(this.asClosureExpr()) and + result = "... => .." + or + this.isUnknownType() and + result = "" + or + this.isSourceContextParameterType() and + result = "" + } +} + +pragma[nomagic] +private predicate compatibleTypesSourceContextParameterTypeLeft(DataFlowType t1, DataFlowType t2) { + t1.isSourceContextParameterType() and not exists(t2.asClosureExpr()) +} + +pragma[nomagic] +private predicate compatibleTypesLeft(DataFlowType t1, DataFlowType t2) { + t1.isUnknownType() and exists(t2) + or + t1.asClosureExpr() = t2.asClosureExpr() + or + compatibleTypesSourceContextParameterTypeLeft(t1, t2) +} + +predicate compatibleTypes(DataFlowType t1, DataFlowType t2) { + compatibleTypesLeft(t1, t2) + or + compatibleTypesLeft(t2, t1) +} + +pragma[nomagic] +predicate typeStrongerThan(DataFlowType t1, DataFlowType t2) { + not t1.isUnknownType() and t2.isUnknownType() + or + compatibleTypesSourceContextParameterTypeLeft(t1, t2) +} + +DataFlowType getNodeType(NodePublic node) { + result.asClosureExpr() = node.asExpr() + or + result.asClosureExpr() = node.(ClosureParameterNode).getCfgScope() + or + exists(VariableCapture::Flow::SynthesizedCaptureNode scn | + scn = node.(CaptureNode).getSynthesizedCaptureNode() and + if scn.isInstanceAccess() + then result.asClosureExpr() = scn.getEnclosingCallable() + else result.isUnknownType() + ) + or + not lambdaCreationExpr(node.asExpr()) and + not node instanceof ClosureParameterNode and + not node instanceof CaptureNode and + result.isUnknownType() +} + // Defines a set of aliases needed for the `RustDataFlow` module private module Aliases { class DataFlowCallableAlias = DataFlowCallable; + class DataFlowTypeAlias = DataFlowType; + + predicate compatibleTypesAlias = compatibleTypes/2; + + predicate typeStrongerThanAlias = typeStrongerThan/2; + + predicate getNodeTypeAlias = getNodeType/1; + class ReturnKindAlias = ReturnKind; class DataFlowCallAlias = DataFlowCall; @@ -398,8 +479,6 @@ module RustDataFlowGen implements InputSig result = node.(Node::Node).getEnclosingCallable() } - DataFlowType getNodeType(Node node) { any() } - predicate nodeIsHidden(Node node) { node instanceof SsaNode or node.(FlowSummaryNode).getSummaryNode().isHidden() or @@ -486,15 +565,17 @@ module RustDataFlowGen implements InputSig */ OutNode getAnOutNode(DataFlowCall call, ReturnKind kind) { call = result.getCall(kind) } - // NOTE: For now we use the type `Unit` and do not benefit from type - // information in the data flow analysis. - final class DataFlowType extends Unit { - string toString() { result = "" } - } + class DataFlowType = DataFlowTypeAlias; - predicate compatibleTypes(DataFlowType t1, DataFlowType t2) { any() } + predicate compatibleTypes = compatibleTypesAlias/2; - predicate typeStrongerThan(DataFlowType t1, DataFlowType t2) { none() } + predicate typeStrongerThan = typeStrongerThanAlias/2; + + DataFlowType getSourceContextParameterNodeType(Node p) { + exists(p) and result.isSourceContextParameterType() + } + + predicate getNodeType = getNodeTypeAlias/1; class Content = ContentAlias; @@ -897,6 +978,8 @@ module RustDataFlowGen implements InputSig predicate localMustFlowStep(Node node1, Node node2) { SsaFlow::localMustFlowStep(node1, node2) or + LocalFlow::localMustFlowStep(node1, node2) + or FlowSummaryImpl::Private::Steps::summaryLocalMustFlowStep(node1 .(FlowSummaryNode) .getSummaryNode(), node2.(FlowSummaryNode).getSummaryNode()) @@ -1110,6 +1193,12 @@ private module Cached { TCfgScope(CfgScope scope) or TSummarizedCallable(SummarizedCallable c) + cached + newtype TDataFlowType = + TClosureExprType(Expr e) { lambdaCreationExpr(e) } or + TUnknownType() or + TSourceContextParameterType() + /** This is the local flow predicate that is exposed. */ cached predicate localFlowStepImpl(Node nodeFrom, Node nodeTo) { diff --git a/rust/ql/lib/codeql/rust/dataflow/internal/ModelsAsData.qll b/rust/ql/lib/codeql/rust/dataflow/internal/ModelsAsData.qll index 4d28dd8de812..0a7288a330fa 100644 --- a/rust/ql/lib/codeql/rust/dataflow/internal/ModelsAsData.qll +++ b/rust/ql/lib/codeql/rust/dataflow/internal/ModelsAsData.qll @@ -280,7 +280,7 @@ private module Debug { private import Content private import codeql.rust.dataflow.internal.DataFlowImpl private import codeql.rust.internal.typeinference.TypeMention - private import codeql.rust.internal.typeinference.Type + private import codeql.rust.internal.typeinference.Type as Type private predicate relevantManualModel(SummarizedCallableImpl sc, string can) { exists(Provenance manual | @@ -298,7 +298,7 @@ private module Debug { sc.propagatesFlow(input, _, _, _, _, _) and input.head() = SummaryComponent::argument(pos) and p = pos.getParameterIn(sc.getParamList()) and - tm.getType() instanceof RefType and + tm.getType() instanceof Type::RefType and not input.tail().head() = SummaryComponent::content(TSingletonContentSet(TReferenceContent())) | tm = p.getTypeRepr() @@ -313,7 +313,7 @@ private module Debug { exists(TypeMention tm | relevantManualModel(sc, can) and sc.propagatesFlow(_, output, _, _, _, _) and - tm.getType() instanceof RefType and + tm.getType() instanceof Type::RefType and output.head() = SummaryComponent::return(_) and not output.tail().head() = SummaryComponent::content(TSingletonContentSet(TReferenceContent())) and diff --git a/rust/ql/test/library-tests/dataflow/lambdas/inline-flow.expected b/rust/ql/test/library-tests/dataflow/lambdas/inline-flow.expected index 31b42cc228a5..ca4bbe77479a 100644 --- a/rust/ql/test/library-tests/dataflow/lambdas/inline-flow.expected +++ b/rust/ql/test/library-tests/dataflow/lambdas/inline-flow.expected @@ -13,9 +13,9 @@ edges | main.rs:29:13:29:22 | f(...) | main.rs:29:9:29:9 | b | provenance | | | main.rs:29:21:29:21 | a | main.rs:27:20:27:23 | ... | provenance | | | main.rs:29:21:29:21 | a | main.rs:29:13:29:22 | f(...) | provenance | | -| main.rs:37:16:37:25 | source(...) | main.rs:39:5:39:5 | [post] f [captured capt] | provenance | | -| main.rs:39:5:39:5 | [post] f [captured capt] | main.rs:40:10:40:13 | capt | provenance | | -| main.rs:39:5:39:5 | [post] f [captured capt] | main.rs:44:5:44:5 | g [captured capt] | provenance | | +| main.rs:37:16:37:25 | source(...) | main.rs:39:5:39:5 | [post] f : ... => .. [captured capt] | provenance | | +| main.rs:39:5:39:5 | [post] f : ... => .. [captured capt] | main.rs:40:10:40:13 | capt | provenance | | +| main.rs:39:5:39:5 | [post] f : ... => .. [captured capt] | main.rs:44:5:44:5 | g [captured capt] | provenance | | | main.rs:44:5:44:5 | g [captured capt] | main.rs:42:14:42:17 | capt | provenance | | | main.rs:47:29:49:1 | { ... } | main.rs:57:10:57:12 | f(...) | provenance | | | main.rs:48:5:48:14 | source(...) | main.rs:47:29:49:1 | { ... } | provenance | | @@ -37,7 +37,6 @@ edges | main.rs:82:7:82:7 | x | main.rs:89:12:89:12 | ... | provenance | | | main.rs:82:7:82:7 | x | main.rs:99:17:99:17 | ... | provenance | | | main.rs:82:7:82:7 | x | main.rs:101:17:101:17 | ... | provenance | | -| main.rs:82:7:82:7 | x | main.rs:102:17:102:17 | ... | provenance | | | main.rs:86:9:86:9 | a | main.rs:87:24:87:24 | a | provenance | | | main.rs:86:13:86:22 | source(...) | main.rs:86:9:86:9 | a | provenance | | | main.rs:87:12:87:12 | ... | main.rs:87:20:87:20 | x | provenance | | @@ -56,7 +55,6 @@ edges | main.rs:100:13:100:22 | source(...) | main.rs:100:9:100:9 | b | provenance | | | main.rs:101:17:101:17 | ... | main.rs:101:25:101:25 | x | provenance | | | main.rs:101:29:101:29 | b | main.rs:93:33:93:38 | ...: i64 | provenance | | -| main.rs:102:17:102:17 | ... | main.rs:102:25:102:25 | x | provenance | | nodes | main.rs:10:20:10:52 | if cond {...} else {...} | semmle.label | if cond {...} else {...} | | main.rs:10:30:10:39 | source(...) | semmle.label | source(...) | @@ -75,7 +73,7 @@ nodes | main.rs:29:21:29:21 | a | semmle.label | a | | main.rs:30:10:30:10 | b | semmle.label | b | | main.rs:37:16:37:25 | source(...) | semmle.label | source(...) | -| main.rs:39:5:39:5 | [post] f [captured capt] | semmle.label | [post] f [captured capt] | +| main.rs:39:5:39:5 | [post] f : ... => .. [captured capt] | semmle.label | [post] f : ... => .. [captured capt] | | main.rs:40:10:40:13 | capt | semmle.label | capt | | main.rs:42:14:42:17 | capt | semmle.label | capt | | main.rs:44:5:44:5 | g [captured capt] | semmle.label | g [captured capt] | @@ -123,8 +121,6 @@ nodes | main.rs:101:17:101:17 | ... | semmle.label | ... | | main.rs:101:25:101:25 | x | semmle.label | x | | main.rs:101:29:101:29 | b | semmle.label | b | -| main.rs:102:17:102:17 | ... | semmle.label | ... | -| main.rs:102:25:102:25 | x | semmle.label | x | subpaths | main.rs:29:21:29:21 | a | main.rs:27:20:27:23 | ... | main.rs:27:26:27:52 | if cond {...} else {...} | main.rs:29:13:29:22 | f(...) | | main.rs:77:21:77:21 | a | main.rs:66:24:66:32 | ...: i64 | main.rs:66:42:72:1 | { ... } | main.rs:77:13:77:22 | f(...) | @@ -144,5 +140,3 @@ testFailures | main.rs:99:25:99:25 | x | main.rs:100:13:100:22 | source(...) | main.rs:99:25:99:25 | x | $@ | main.rs:100:13:100:22 | source(...) | source(...) | | main.rs:101:25:101:25 | x | main.rs:98:13:98:22 | source(...) | main.rs:101:25:101:25 | x | $@ | main.rs:98:13:98:22 | source(...) | source(...) | | main.rs:101:25:101:25 | x | main.rs:100:13:100:22 | source(...) | main.rs:101:25:101:25 | x | $@ | main.rs:100:13:100:22 | source(...) | source(...) | -| main.rs:102:25:102:25 | x | main.rs:98:13:98:22 | source(...) | main.rs:102:25:102:25 | x | $@ | main.rs:98:13:98:22 | source(...) | source(...) | -| main.rs:102:25:102:25 | x | main.rs:100:13:100:22 | source(...) | main.rs:102:25:102:25 | x | $@ | main.rs:100:13:100:22 | source(...) | source(...) | diff --git a/rust/ql/test/library-tests/dataflow/lambdas/main.rs b/rust/ql/test/library-tests/dataflow/lambdas/main.rs index a2dfc7e9a1ce..66295f004a22 100644 --- a/rust/ql/test/library-tests/dataflow/lambdas/main.rs +++ b/rust/ql/test/library-tests/dataflow/lambdas/main.rs @@ -99,7 +99,7 @@ fn test_apply_wrap() { apply_wrap(|x| sink(x), a); // $ hasValueFlow=79 $ SPURIOUS: hasValueFlow=80 let b = source(80); apply_wrap(|x| sink(x), b); // $ hasValueFlow=80 $ SPURIOUS: hasValueFlow=79 - apply_wrap(|x| sink(x), 0); // $ SPURIOUS: hasValueFlow=79 hasValueFlow=80 + apply_wrap(|x| sink(x), 0); } fn main() { From cf4ab1d106dac871ea71cbad28d869c9feb8a978 Mon Sep 17 00:00:00 2001 From: Anders Schack-Mulligen Date: Thu, 9 Apr 2026 15:57:19 +0200 Subject: [PATCH 093/157] C#: Replace old-style unbind with pragmas. --- .../ql/lib/semmle/code/csharp/Conversion.qll | 24 +++++++------------ 1 file changed, 8 insertions(+), 16 deletions(-) diff --git a/csharp/ql/lib/semmle/code/csharp/Conversion.qll b/csharp/ql/lib/semmle/code/csharp/Conversion.qll index ec7ef9cac952..fd2c680e9c7f 100644 --- a/csharp/ql/lib/semmle/code/csharp/Conversion.qll +++ b/csharp/ql/lib/semmle/code/csharp/Conversion.qll @@ -232,14 +232,9 @@ private module Identity { */ pragma[nomagic] private predicate convTypeArguments(Type fromTypeArgument, Type toTypeArgument, int i) { - exists(int j | - fromTypeArgument = getTypeArgumentRanked(_, _, i) and - toTypeArgument = getTypeArgumentRanked(_, _, j) and - i <= j and - j <= i - | - convIdentity(fromTypeArgument, toTypeArgument) - ) + fromTypeArgument = getTypeArgumentRanked(_, _, pragma[only_bind_into](i)) and + toTypeArgument = getTypeArgumentRanked(_, _, pragma[only_bind_into](i)) and + convIdentity(fromTypeArgument, toTypeArgument) } pragma[nomagic] @@ -929,19 +924,16 @@ private module Variance { private predicate convTypeArguments( TypeArgument fromTypeArgument, TypeArgument toTypeArgument, int i, TVariance v ) { - exists(int j | - fromTypeArgument = getTypeArgumentRanked(_, _, i, _) and - toTypeArgument = getTypeArgumentRanked(_, _, j, _) and - i <= j and - j <= i - | + fromTypeArgument = getTypeArgumentRanked(_, _, pragma[only_bind_into](i), _) and + toTypeArgument = getTypeArgumentRanked(_, _, pragma[only_bind_into](i), _) and + ( convIdentity(fromTypeArgument, toTypeArgument) and v = TNone() or - convRefTypeTypeArgumentOut(fromTypeArgument, toTypeArgument, j) and + convRefTypeTypeArgumentOut(fromTypeArgument, toTypeArgument, i) and v = TOut() or - convRefTypeTypeArgumentIn(toTypeArgument, fromTypeArgument, j) and + convRefTypeTypeArgumentIn(toTypeArgument, fromTypeArgument, i) and v = TIn() ) } From 4ada727babd85e44f04fbd8e906aee8ba35475f8 Mon Sep 17 00:00:00 2001 From: Jeroen Ketema Date: Thu, 9 Apr 2026 16:31:12 +0200 Subject: [PATCH 094/157] Swift: Add staged archives to LFS --- swift/third_party/resources/resource-dir-linux.zip | 4 ++-- swift/third_party/resources/resource-dir-macos.zip | 4 ++-- swift/third_party/resources/swift-prebuilt-linux.tar.zst | 4 ++-- swift/third_party/resources/swift-prebuilt-macos.tar.zst | 4 ++-- 4 files changed, 8 insertions(+), 8 deletions(-) diff --git a/swift/third_party/resources/resource-dir-linux.zip b/swift/third_party/resources/resource-dir-linux.zip index a6e0fe2fa125..74170f153238 100644 --- a/swift/third_party/resources/resource-dir-linux.zip +++ b/swift/third_party/resources/resource-dir-linux.zip @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:34e30361f98e5c3abec7be1d7136252cad97eba4916a87e3c08992e0289eb00f -size 385238500 +oid sha256:9078cfd1ec62f30cd25c0ea4e43fc3d99449f802e6c165f59a7f789a70eb5284 +size 408208306 diff --git a/swift/third_party/resources/resource-dir-macos.zip b/swift/third_party/resources/resource-dir-macos.zip index 80411222aaba..a505593bce90 100644 --- a/swift/third_party/resources/resource-dir-macos.zip +++ b/swift/third_party/resources/resource-dir-macos.zip @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:e3966e6e8039fba5730dc49bf0a51986c6da28a94aa86552c187b66dc3716a9b -size 613938283 +oid sha256:991e63a2559a762058d66df08275aea55217ff96bd482c5ad7d536181afa573a +size 547982664 diff --git a/swift/third_party/resources/swift-prebuilt-linux.tar.zst b/swift/third_party/resources/swift-prebuilt-linux.tar.zst index 2aedff45fc86..eb86602bcd9f 100644 --- a/swift/third_party/resources/swift-prebuilt-linux.tar.zst +++ b/swift/third_party/resources/swift-prebuilt-linux.tar.zst @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:1960a80b5cbc7e1ec0ef4b221254efdd6d266eaed11c7fa6fff5388648d1881b -size 132800316 +oid sha256:cfc111c983a00acfdb01090ba1f568fa257d2f8fc3050a2f7c37e160fe9f1003 +size 143475222 diff --git a/swift/third_party/resources/swift-prebuilt-macos.tar.zst b/swift/third_party/resources/swift-prebuilt-macos.tar.zst index aaf3d1c42af8..a2df7ad311c0 100644 --- a/swift/third_party/resources/swift-prebuilt-macos.tar.zst +++ b/swift/third_party/resources/swift-prebuilt-macos.tar.zst @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:2b7ec0e2bd28b16ca9a16cb3d1ad8c917ad4641cf1d0fe574e75381871beeda4 -size 115351244 +oid sha256:eab65167bfb20e07803b9be61b22b109a0308056c58b572ea9a275b920a3ea0a +size 125077905 From 43f48001e38aa2faaf7e900c21a37b6efbd0eb72 Mon Sep 17 00:00:00 2001 From: Jeroen Ketema Date: Thu, 9 Apr 2026 16:31:57 +0200 Subject: [PATCH 095/157] Swift: Clear override --- swift/third_party/load.bzl | 4 ---- 1 file changed, 4 deletions(-) diff --git a/swift/third_party/load.bzl b/swift/third_party/load.bzl index 156a2201cdac..676c5f0ce847 100644 --- a/swift/third_party/load.bzl +++ b/swift/third_party/load.bzl @@ -6,10 +6,6 @@ load("//misc/bazel:lfs.bzl", "lfs_archive", "lfs_files") _override = { # these are used to test new artifacts. Must be empty before merging to main - "swift-prebuilt-macOS-swift-6.3-RELEASE-161.tar.zst": "eab65167bfb20e07803b9be61b22b109a0308056c58b572ea9a275b920a3ea0a", - "swift-prebuilt-Linux-swift-6.3-RELEASE-161.tar.zst": "cfc111c983a00acfdb01090ba1f568fa257d2f8fc3050a2f7c37e160fe9f1003", - "resource-dir-macOS-swift-6.3-RELEASE-151.zip": "991e63a2559a762058d66df08275aea55217ff96bd482c5ad7d536181afa573a", - "resource-dir-Linux-swift-6.3-RELEASE-151.zip": "9078cfd1ec62f30cd25c0ea4e43fc3d99449f802e6c165f59a7f789a70eb5284", } _staging_url = "https://github.com/dsp-testing/codeql-swift-artifacts/releases/download/staging-{}/{}" From 38440d96b81aaaebb1c3d3afd6981dcf64f300aa Mon Sep 17 00:00:00 2001 From: Sam Chang Date: Thu, 9 Apr 2026 10:48:08 -0700 Subject: [PATCH 096/157] Support added in Jan 2026 --- docs/codeql/reusables/supported-versions-compilers.rst | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/codeql/reusables/supported-versions-compilers.rst b/docs/codeql/reusables/supported-versions-compilers.rst index ddda7065cf1c..0812eed4d083 100644 --- a/docs/codeql/reusables/supported-versions-compilers.rst +++ b/docs/codeql/reusables/supported-versions-compilers.rst @@ -11,11 +11,11 @@ Microsoft extensions (up to VS 2022), Arm Compiler 5 [5]_","``.cpp``, ``.c++``, ``.cxx``, ``.hpp``, ``.hh``, ``.h++``, ``.hxx``, ``.c``, ``.cc``, ``.h``" - C#,C# up to 13,"Microsoft Visual Studio up to 2019 with .NET up to 4.8, + C#,C# up to 14,"Microsoft Visual Studio up to 2019 with .NET up to 4.8, .NET Core up to 3.1 - .NET 5, .NET 6, .NET 7, .NET 8, .NET 9","``.sln``, ``.slnx``, ``.csproj``, ``.cs``, ``.cshtml``, ``.xaml``" + .NET 5, .NET 6, .NET 7, .NET 8, .NET 9, .NET 10","``.sln``, ``.slnx``, ``.csproj``, ``.cs``, ``.cshtml``, ``.xaml``" GitHub Actions,"Not applicable",Not applicable,"``.github/workflows/*.yml``, ``.github/workflows/*.yaml``, ``**/action.yml``, ``**/action.yaml``" Go (aka Golang), "Go up to 1.26", "Go 1.11 or more recent", ``.go`` Java,"Java 7 to 26 [6]_","javac (OpenJDK and Oracle JDK), From 7883fab44fca0f9553cd17edf87de53b8e2d703a Mon Sep 17 00:00:00 2001 From: Sam Chang Date: Thu, 9 Apr 2026 12:06:54 -0700 Subject: [PATCH 097/157] Qualify the limited support for .NET 10 and C# 14 --- .../supported-versions-compilers.rst | 39 ++++++++++--------- 1 file changed, 20 insertions(+), 19 deletions(-) diff --git a/docs/codeql/reusables/supported-versions-compilers.rst b/docs/codeql/reusables/supported-versions-compilers.rst index 0812eed4d083..3891332f4575 100644 --- a/docs/codeql/reusables/supported-versions-compilers.rst +++ b/docs/codeql/reusables/supported-versions-compilers.rst @@ -11,23 +11,23 @@ Microsoft extensions (up to VS 2022), Arm Compiler 5 [5]_","``.cpp``, ``.c++``, ``.cxx``, ``.hpp``, ``.hh``, ``.h++``, ``.hxx``, ``.c``, ``.cc``, ``.h``" - C#,C# up to 14,"Microsoft Visual Studio up to 2019 with .NET up to 4.8, + C#,C# up to 14 [6]_,"Microsoft Visual Studio up to 2019 with .NET up to 4.8, .NET Core up to 3.1 - .NET 5, .NET 6, .NET 7, .NET 8, .NET 9, .NET 10","``.sln``, ``.slnx``, ``.csproj``, ``.cs``, ``.cshtml``, ``.xaml``" + .NET 5, .NET 6, .NET 7, .NET 8, .NET 9, .NET 10 [6]_","``.sln``, ``.slnx``, ``.csproj``, ``.cs``, ``.cshtml``, ``.xaml``" GitHub Actions,"Not applicable",Not applicable,"``.github/workflows/*.yml``, ``.github/workflows/*.yaml``, ``**/action.yml``, ``**/action.yaml``" Go (aka Golang), "Go up to 1.26", "Go 1.11 or more recent", ``.go`` - Java,"Java 7 to 26 [6]_","javac (OpenJDK and Oracle JDK), + Java,"Java 7 to 26 [7]_","javac (OpenJDK and Oracle JDK), - Eclipse compiler for Java (ECJ) [7]_",``.java`` + Eclipse compiler for Java (ECJ) [8]_",``.java`` Kotlin,"Kotlin 1.8.0 to 2.3.2\ *x*","kotlinc",``.kt`` - JavaScript,ECMAScript 2022 or lower,Not applicable,"``.js``, ``.jsx``, ``.mjs``, ``.es``, ``.es6``, ``.htm``, ``.html``, ``.xhtm``, ``.xhtml``, ``.vue``, ``.hbs``, ``.ejs``, ``.njk``, ``.json``, ``.yaml``, ``.yml``, ``.raml``, ``.xml`` [8]_" - Python [9]_,"2.7, 3.5, 3.6, 3.7, 3.8, 3.9, 3.10, 3.11, 3.12, 3.13",Not applicable,``.py`` - Ruby [10]_,"up to 3.3",Not applicable,"``.rb``, ``.erb``, ``.gemspec``, ``Gemfile``" - Rust [11]_,"Rust editions 2021 and 2024","Rust compiler","``.rs``, ``Cargo.toml``" - Swift [12]_ [13]_,"Swift 5.4-6.2","Swift compiler","``.swift``" - TypeScript [14]_,"2.6-5.9",Standard TypeScript compiler,"``.ts``, ``.tsx``, ``.mts``, ``.cts``" + JavaScript,ECMAScript 2022 or lower,Not applicable,"``.js``, ``.jsx``, ``.mjs``, ``.es``, ``.es6``, ``.htm``, ``.html``, ``.xhtm``, ``.xhtml``, ``.vue``, ``.hbs``, ``.ejs``, ``.njk``, ``.json``, ``.yaml``, ``.yml``, ``.raml``, ``.xml`` [9]_" + Python [10]_,"2.7, 3.5, 3.6, 3.7, 3.8, 3.9, 3.10, 3.11, 3.12, 3.13",Not applicable,``.py`` + Ruby [11]_,"up to 3.3",Not applicable,"``.rb``, ``.erb``, ``.gemspec``, ``Gemfile``" + Rust [12]_,"Rust editions 2021 and 2024","Rust compiler","``.rs``, ``Cargo.toml``" + Swift [13]_ [14]_,"Swift 5.4-6.2","Swift compiler","``.swift``" + TypeScript [15]_,"2.6-5.9",Standard TypeScript compiler,"``.ts``, ``.tsx``, ``.mts``, ``.cts``" .. container:: footnote-group @@ -36,12 +36,13 @@ .. [3] Objective-C, Objective-C++, C++/CLI, and C++/CX are not supported. .. [4] Support for the clang-cl compiler is preliminary. .. [5] Support for the Arm Compiler (armcc) is preliminary. - .. [6] Builds that execute on Java 7 to 26 can be analyzed. The analysis understands standard language features in Java 8 to 26; "preview" and "incubator" features are not supported. Source code using Java language versions older than Java 8 are analyzed as Java 8 code. - .. [7] ECJ is supported when the build invokes it via the Maven Compiler plugin or the Takari Lifecycle plugin. - .. [8] JSX and Flow code, YAML, JSON, HTML, and XML files may also be analyzed with JavaScript files. - .. [9] The extractor requires Python 3 to run. To analyze Python 2.7 you should install both versions of Python. - .. [10] Requires glibc 2.17. - .. [11] Requires ``rustup`` and ``cargo`` to be installed. Features from nightly toolchains are not supported. - .. [12] Support for the analysis of Swift requires macOS. - .. [13] Embedded Swift is not supported. - .. [14] TypeScript analysis is performed by running the JavaScript extractor with TypeScript enabled. This is the default. + .. [6] Support for .NET 10 is preliminary and code that uses language features new to C# 14 is not yet fully supported for extraction and analysis. + .. [7] Builds that execute on Java 7 to 26 can be analyzed. The analysis understands standard language features in Java 8 to 26; "preview" and "incubator" features are not supported. Source code using Java language versions older than Java 8 are analyzed as Java 8 code. + .. [8] ECJ is supported when the build invokes it via the Maven Compiler plugin or the Takari Lifecycle plugin. + .. [9] JSX and Flow code, YAML, JSON, HTML, and XML files may also be analyzed with JavaScript files. + .. [10] The extractor requires Python 3 to run. To analyze Python 2.7 you should install both versions of Python. + .. [11] Requires glibc 2.17. + .. [12] Requires ``rustup`` and ``cargo`` to be installed. Features from nightly toolchains are not supported. + .. [13] Support for the analysis of Swift requires macOS. + .. [14] Embedded Swift is not supported. + .. [15] TypeScript analysis is performed by running the JavaScript extractor with TypeScript enabled. This is the default. From 42fe2d5002f5cad99ce5d92146fca9a23f723e39 Mon Sep 17 00:00:00 2001 From: Tom Hvitved Date: Fri, 10 Apr 2026 10:08:09 +0200 Subject: [PATCH 098/157] Rust: Add another type inference test --- .../library-tests/type-inference/closure.rs | 1 + .../type-inference/type-inference.expected | 130 ++++++++++-------- 2 files changed, 71 insertions(+), 60 deletions(-) diff --git a/rust/ql/test/library-tests/type-inference/closure.rs b/rust/ql/test/library-tests/type-inference/closure.rs index fbef401bb083..a63a708e2456 100644 --- a/rust/ql/test/library-tests/type-inference/closure.rs +++ b/rust/ql/test/library-tests/type-inference/closure.rs @@ -228,6 +228,7 @@ mod implicit_deref { let x = 0i32; let v = Default::default(); // $ type=v:i32 target=default let s = S(v); + let _ret = s(x); // $ type=_ret:bool let s_ref = &s; let _ret = s_ref(x); // $ type=_ret:bool diff --git a/rust/ql/test/library-tests/type-inference/type-inference.expected b/rust/ql/test/library-tests/type-inference/type-inference.expected index 4be703598427..ceae6f4dd095 100644 --- a/rust/ql/test/library-tests/type-inference/type-inference.expected +++ b/rust/ql/test/library-tests/type-inference/type-inference.expected @@ -873,7 +873,7 @@ inferCertainType | closure.rs:218:13:218:22 | &... | | {EXTERNAL LOCATION} | & | | closure.rs:218:14:218:22 | \|...\| false | | {EXTERNAL LOCATION} | dyn Fn | | closure.rs:218:18:218:22 | false | | {EXTERNAL LOCATION} | bool | -| closure.rs:222:19:240:5 | { ... } | | {EXTERNAL LOCATION} | () | +| closure.rs:222:19:241:5 | { ... } | | {EXTERNAL LOCATION} | () | | closure.rs:223:13:223:13 | x | | {EXTERNAL LOCATION} | i64 | | closure.rs:223:17:223:20 | 0i64 | | {EXTERNAL LOCATION} | i64 | | closure.rs:226:21:226:23 | ArgList | | {EXTERNAL LOCATION} | (T_1) | @@ -881,20 +881,23 @@ inferCertainType | closure.rs:226:22:226:22 | x | | {EXTERNAL LOCATION} | i64 | | closure.rs:228:13:228:13 | x | | {EXTERNAL LOCATION} | i32 | | closure.rs:228:17:228:20 | 0i32 | | {EXTERNAL LOCATION} | i32 | -| closure.rs:231:13:231:17 | s_ref | | {EXTERNAL LOCATION} | & | -| closure.rs:231:21:231:22 | &s | | {EXTERNAL LOCATION} | & | -| closure.rs:232:20:232:24 | s_ref | | {EXTERNAL LOCATION} | & | -| closure.rs:232:25:232:27 | ArgList | | {EXTERNAL LOCATION} | (T_1) | -| closure.rs:232:25:232:27 | ArgList | T0 | {EXTERNAL LOCATION} | i32 | -| closure.rs:232:26:232:26 | x | | {EXTERNAL LOCATION} | i32 | -| closure.rs:238:13:238:13 | c | | {EXTERNAL LOCATION} | dyn Fn | -| closure.rs:238:17:238:21 | \|...\| x | | {EXTERNAL LOCATION} | dyn Fn | -| closure.rs:239:9:239:12 | (...) | | {EXTERNAL LOCATION} | & | -| closure.rs:239:10:239:11 | &c | | {EXTERNAL LOCATION} | & | -| closure.rs:239:11:239:11 | c | | {EXTERNAL LOCATION} | dyn Fn | -| closure.rs:239:13:239:15 | ArgList | | {EXTERNAL LOCATION} | (T_1) | -| closure.rs:239:13:239:15 | ArgList | T0 | {EXTERNAL LOCATION} | i32 | -| closure.rs:239:14:239:14 | x | | {EXTERNAL LOCATION} | i32 | +| closure.rs:231:21:231:23 | ArgList | | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:231:21:231:23 | ArgList | T0 | {EXTERNAL LOCATION} | i32 | +| closure.rs:231:22:231:22 | x | | {EXTERNAL LOCATION} | i32 | +| closure.rs:232:13:232:17 | s_ref | | {EXTERNAL LOCATION} | & | +| closure.rs:232:21:232:22 | &s | | {EXTERNAL LOCATION} | & | +| closure.rs:233:20:233:24 | s_ref | | {EXTERNAL LOCATION} | & | +| closure.rs:233:25:233:27 | ArgList | | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:233:25:233:27 | ArgList | T0 | {EXTERNAL LOCATION} | i32 | +| closure.rs:233:26:233:26 | x | | {EXTERNAL LOCATION} | i32 | +| closure.rs:239:13:239:13 | c | | {EXTERNAL LOCATION} | dyn Fn | +| closure.rs:239:17:239:21 | \|...\| x | | {EXTERNAL LOCATION} | dyn Fn | +| closure.rs:240:9:240:12 | (...) | | {EXTERNAL LOCATION} | & | +| closure.rs:240:10:240:11 | &c | | {EXTERNAL LOCATION} | & | +| closure.rs:240:11:240:11 | c | | {EXTERNAL LOCATION} | dyn Fn | +| closure.rs:240:13:240:15 | ArgList | | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:240:13:240:15 | ArgList | T0 | {EXTERNAL LOCATION} | i32 | +| closure.rs:240:14:240:14 | x | | {EXTERNAL LOCATION} | i32 | | dereference.rs:13:14:13:18 | SelfParam | | {EXTERNAL LOCATION} | & | | dereference.rs:13:14:13:18 | SelfParam | TRef | dereference.rs:5:1:7:1 | MyIntPointer | | dereference.rs:13:29:15:5 | { ... } | | {EXTERNAL LOCATION} | & | @@ -6894,7 +6897,7 @@ inferType | closure.rs:218:14:218:22 | \|...\| false | dyn(Output) | {EXTERNAL LOCATION} | bool | | closure.rs:218:15:218:15 | _ | | closure.rs:214:10:214:10 | T | | closure.rs:218:18:218:22 | false | | {EXTERNAL LOCATION} | bool | -| closure.rs:222:19:240:5 | { ... } | | {EXTERNAL LOCATION} | () | +| closure.rs:222:19:241:5 | { ... } | | {EXTERNAL LOCATION} | () | | closure.rs:223:13:223:13 | x | | {EXTERNAL LOCATION} | i64 | | closure.rs:223:17:223:20 | 0i64 | | {EXTERNAL LOCATION} | i64 | | closure.rs:224:13:224:13 | v | | {EXTERNAL LOCATION} | i64 | @@ -6920,50 +6923,57 @@ inferType | closure.rs:230:17:230:20 | S(...) | | closure.rs:212:5:212:19 | S | | closure.rs:230:17:230:20 | S(...) | T | {EXTERNAL LOCATION} | i32 | | closure.rs:230:19:230:19 | v | | {EXTERNAL LOCATION} | i32 | -| closure.rs:231:13:231:17 | s_ref | | {EXTERNAL LOCATION} | & | -| closure.rs:231:13:231:17 | s_ref | TRef | closure.rs:212:5:212:19 | S | -| closure.rs:231:13:231:17 | s_ref | TRef.T | {EXTERNAL LOCATION} | i32 | -| closure.rs:231:21:231:22 | &s | | {EXTERNAL LOCATION} | & | -| closure.rs:231:21:231:22 | &s | TRef | closure.rs:212:5:212:19 | S | -| closure.rs:231:21:231:22 | &s | TRef.T | {EXTERNAL LOCATION} | i32 | -| closure.rs:231:22:231:22 | s | | closure.rs:212:5:212:19 | S | -| closure.rs:231:22:231:22 | s | T | {EXTERNAL LOCATION} | i32 | -| closure.rs:232:13:232:16 | _ret | | {EXTERNAL LOCATION} | bool | -| closure.rs:232:20:232:24 | s_ref | | {EXTERNAL LOCATION} | & | -| closure.rs:232:20:232:24 | s_ref | TRef | closure.rs:212:5:212:19 | S | -| closure.rs:232:20:232:24 | s_ref | TRef.T | {EXTERNAL LOCATION} | i32 | -| closure.rs:232:20:232:27 | s_ref(...) | | {EXTERNAL LOCATION} | bool | -| closure.rs:232:25:232:27 | ArgList | | {EXTERNAL LOCATION} | (T_1) | -| closure.rs:232:25:232:27 | ArgList | T0 | {EXTERNAL LOCATION} | i32 | -| closure.rs:232:26:232:26 | x | | {EXTERNAL LOCATION} | i32 | -| closure.rs:238:13:238:13 | c | | {EXTERNAL LOCATION} | dyn Fn | -| closure.rs:238:13:238:13 | c | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | -| closure.rs:238:13:238:13 | c | dyn(Args).T0 | {EXTERNAL LOCATION} | i32 | -| closure.rs:238:13:238:13 | c | dyn(Output) | {EXTERNAL LOCATION} | i32 | -| closure.rs:238:17:238:21 | \|...\| x | | {EXTERNAL LOCATION} | dyn Fn | -| closure.rs:238:17:238:21 | \|...\| x | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | -| closure.rs:238:17:238:21 | \|...\| x | dyn(Args).T0 | {EXTERNAL LOCATION} | i32 | -| closure.rs:238:17:238:21 | \|...\| x | dyn(Output) | {EXTERNAL LOCATION} | i32 | -| closure.rs:238:18:238:18 | x | | {EXTERNAL LOCATION} | i32 | -| closure.rs:238:21:238:21 | x | | {EXTERNAL LOCATION} | i32 | -| closure.rs:239:9:239:12 | (...) | | {EXTERNAL LOCATION} | & | -| closure.rs:239:9:239:12 | (...) | TRef | {EXTERNAL LOCATION} | dyn Fn | -| closure.rs:239:9:239:12 | (...) | TRef.dyn(Args) | {EXTERNAL LOCATION} | (T_1) | -| closure.rs:239:9:239:12 | (...) | TRef.dyn(Args).T0 | {EXTERNAL LOCATION} | i32 | -| closure.rs:239:9:239:12 | (...) | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | -| closure.rs:239:9:239:15 | ...(...) | | {EXTERNAL LOCATION} | i32 | -| closure.rs:239:10:239:11 | &c | | {EXTERNAL LOCATION} | & | -| closure.rs:239:10:239:11 | &c | TRef | {EXTERNAL LOCATION} | dyn Fn | -| closure.rs:239:10:239:11 | &c | TRef.dyn(Args) | {EXTERNAL LOCATION} | (T_1) | -| closure.rs:239:10:239:11 | &c | TRef.dyn(Args).T0 | {EXTERNAL LOCATION} | i32 | -| closure.rs:239:10:239:11 | &c | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | -| closure.rs:239:11:239:11 | c | | {EXTERNAL LOCATION} | dyn Fn | -| closure.rs:239:11:239:11 | c | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | -| closure.rs:239:11:239:11 | c | dyn(Args).T0 | {EXTERNAL LOCATION} | i32 | -| closure.rs:239:11:239:11 | c | dyn(Output) | {EXTERNAL LOCATION} | i32 | -| closure.rs:239:13:239:15 | ArgList | | {EXTERNAL LOCATION} | (T_1) | -| closure.rs:239:13:239:15 | ArgList | T0 | {EXTERNAL LOCATION} | i32 | -| closure.rs:239:14:239:14 | x | | {EXTERNAL LOCATION} | i32 | +| closure.rs:231:13:231:16 | _ret | | {EXTERNAL LOCATION} | bool | +| closure.rs:231:20:231:20 | s | | closure.rs:212:5:212:19 | S | +| closure.rs:231:20:231:20 | s | T | {EXTERNAL LOCATION} | i32 | +| closure.rs:231:20:231:23 | s(...) | | {EXTERNAL LOCATION} | bool | +| closure.rs:231:21:231:23 | ArgList | | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:231:21:231:23 | ArgList | T0 | {EXTERNAL LOCATION} | i32 | +| closure.rs:231:22:231:22 | x | | {EXTERNAL LOCATION} | i32 | +| closure.rs:232:13:232:17 | s_ref | | {EXTERNAL LOCATION} | & | +| closure.rs:232:13:232:17 | s_ref | TRef | closure.rs:212:5:212:19 | S | +| closure.rs:232:13:232:17 | s_ref | TRef.T | {EXTERNAL LOCATION} | i32 | +| closure.rs:232:21:232:22 | &s | | {EXTERNAL LOCATION} | & | +| closure.rs:232:21:232:22 | &s | TRef | closure.rs:212:5:212:19 | S | +| closure.rs:232:21:232:22 | &s | TRef.T | {EXTERNAL LOCATION} | i32 | +| closure.rs:232:22:232:22 | s | | closure.rs:212:5:212:19 | S | +| closure.rs:232:22:232:22 | s | T | {EXTERNAL LOCATION} | i32 | +| closure.rs:233:13:233:16 | _ret | | {EXTERNAL LOCATION} | bool | +| closure.rs:233:20:233:24 | s_ref | | {EXTERNAL LOCATION} | & | +| closure.rs:233:20:233:24 | s_ref | TRef | closure.rs:212:5:212:19 | S | +| closure.rs:233:20:233:24 | s_ref | TRef.T | {EXTERNAL LOCATION} | i32 | +| closure.rs:233:20:233:27 | s_ref(...) | | {EXTERNAL LOCATION} | bool | +| closure.rs:233:25:233:27 | ArgList | | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:233:25:233:27 | ArgList | T0 | {EXTERNAL LOCATION} | i32 | +| closure.rs:233:26:233:26 | x | | {EXTERNAL LOCATION} | i32 | +| closure.rs:239:13:239:13 | c | | {EXTERNAL LOCATION} | dyn Fn | +| closure.rs:239:13:239:13 | c | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:239:13:239:13 | c | dyn(Args).T0 | {EXTERNAL LOCATION} | i32 | +| closure.rs:239:13:239:13 | c | dyn(Output) | {EXTERNAL LOCATION} | i32 | +| closure.rs:239:17:239:21 | \|...\| x | | {EXTERNAL LOCATION} | dyn Fn | +| closure.rs:239:17:239:21 | \|...\| x | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:239:17:239:21 | \|...\| x | dyn(Args).T0 | {EXTERNAL LOCATION} | i32 | +| closure.rs:239:17:239:21 | \|...\| x | dyn(Output) | {EXTERNAL LOCATION} | i32 | +| closure.rs:239:18:239:18 | x | | {EXTERNAL LOCATION} | i32 | +| closure.rs:239:21:239:21 | x | | {EXTERNAL LOCATION} | i32 | +| closure.rs:240:9:240:12 | (...) | | {EXTERNAL LOCATION} | & | +| closure.rs:240:9:240:12 | (...) | TRef | {EXTERNAL LOCATION} | dyn Fn | +| closure.rs:240:9:240:12 | (...) | TRef.dyn(Args) | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:240:9:240:12 | (...) | TRef.dyn(Args).T0 | {EXTERNAL LOCATION} | i32 | +| closure.rs:240:9:240:12 | (...) | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | +| closure.rs:240:9:240:15 | ...(...) | | {EXTERNAL LOCATION} | i32 | +| closure.rs:240:10:240:11 | &c | | {EXTERNAL LOCATION} | & | +| closure.rs:240:10:240:11 | &c | TRef | {EXTERNAL LOCATION} | dyn Fn | +| closure.rs:240:10:240:11 | &c | TRef.dyn(Args) | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:240:10:240:11 | &c | TRef.dyn(Args).T0 | {EXTERNAL LOCATION} | i32 | +| closure.rs:240:10:240:11 | &c | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | +| closure.rs:240:11:240:11 | c | | {EXTERNAL LOCATION} | dyn Fn | +| closure.rs:240:11:240:11 | c | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:240:11:240:11 | c | dyn(Args).T0 | {EXTERNAL LOCATION} | i32 | +| closure.rs:240:11:240:11 | c | dyn(Output) | {EXTERNAL LOCATION} | i32 | +| closure.rs:240:13:240:15 | ArgList | | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:240:13:240:15 | ArgList | T0 | {EXTERNAL LOCATION} | i32 | +| closure.rs:240:14:240:14 | x | | {EXTERNAL LOCATION} | i32 | | dereference.rs:13:14:13:18 | SelfParam | | {EXTERNAL LOCATION} | & | | dereference.rs:13:14:13:18 | SelfParam | TRef | dereference.rs:5:1:7:1 | MyIntPointer | | dereference.rs:13:29:15:5 | { ... } | | {EXTERNAL LOCATION} | & | From be329c8ab4aba6956d8eeddb887401c71e191037 Mon Sep 17 00:00:00 2001 From: Tom Hvitved Date: Thu, 9 Apr 2026 13:23:46 +0200 Subject: [PATCH 099/157] Rust: Replace recursion through `forall` with ranked recursion --- .../internal/typeinference/TypeInference.qll | 490 ++++++++---------- .../dataflow/local/DataFlowStep.expected | 5 - .../library-tests/type-inference/closure.rs | 9 +- .../type-inference/type-inference.expected | 98 ++-- 4 files changed, 270 insertions(+), 332 deletions(-) diff --git a/rust/ql/lib/codeql/rust/internal/typeinference/TypeInference.qll b/rust/ql/lib/codeql/rust/internal/typeinference/TypeInference.qll index c6a268be126f..cc6e13d59217 100644 --- a/rust/ql/lib/codeql/rust/internal/typeinference/TypeInference.qll +++ b/rust/ql/lib/codeql/rust/internal/typeinference/TypeInference.qll @@ -1718,7 +1718,7 @@ private module AssocFunctionResolution { * inside `root`. */ pragma[nomagic] - private predicate hasIncompatibleTarget( + predicate hasIncompatibleTarget( ImplOrTraitItemNode i, FunctionPosition selfPos, DerefChain derefChain, BorrowKind borrow, Type root ) { @@ -1743,7 +1743,7 @@ private module AssocFunctionResolution { * is not satisfied. */ pragma[nomagic] - private predicate hasIncompatibleBlanketLikeTarget( + predicate hasIncompatibleBlanketLikeTarget( ImplItemNode impl, FunctionPosition selfPos, DerefChain derefChain, BorrowKind borrow ) { SelfArgIsNotInstantiationOfBlanketLike::argIsNotInstantiationOf(MkAssocFunctionCallCand(this, @@ -1795,7 +1795,7 @@ private module AssocFunctionResolution { } pragma[nomagic] - private Type getComplexStrippedSelfType( + Type getComplexStrippedSelfType( FunctionPosition selfPos, DerefChain derefChain, BorrowKind borrow, TypePath strippedTypePath ) { result = this.getANonPseudoSelfTypeAt(selfPos, derefChain, borrow, strippedTypePath) and @@ -1806,258 +1806,25 @@ private module AssocFunctionResolution { ) } - bindingset[derefChain, borrow, strippedTypePath, strippedType] - private predicate hasNoCompatibleNonBlanketLikeTargetCheck( - FunctionPosition selfPos, DerefChain derefChain, BorrowKind borrow, TypePath strippedTypePath, - Type strippedType - ) { - forall(ImplOrTraitItemNode i | - nonBlanketLikeCandidate(this, _, selfPos, i, _, strippedTypePath, strippedType) - | - this.hasIncompatibleTarget(i, selfPos, derefChain, borrow, strippedType) - ) - } - - bindingset[derefChain, borrow, strippedTypePath, strippedType] - private predicate hasNoCompatibleTargetCheck( - FunctionPosition selfPos, DerefChain derefChain, BorrowKind borrow, TypePath strippedTypePath, - Type strippedType - ) { - this.hasNoCompatibleNonBlanketLikeTargetCheck(selfPos, derefChain, borrow, strippedTypePath, - strippedType) and - forall(ImplItemNode i | blanketLikeCandidate(this, _, selfPos, i, _, _, _) | - this.hasIncompatibleBlanketLikeTarget(i, selfPos, derefChain, borrow) - ) - } - - bindingset[derefChain, borrow, strippedTypePath, strippedType] - private predicate hasNoCompatibleNonBlanketTargetCheck( - FunctionPosition selfPos, DerefChain derefChain, BorrowKind borrow, TypePath strippedTypePath, - Type strippedType - ) { - this.hasNoCompatibleNonBlanketLikeTargetCheck(selfPos, derefChain, borrow, strippedTypePath, - strippedType) and - forall(ImplItemNode i | - blanketLikeCandidate(this, _, selfPos, i, _, _, _) and - not i.isBlanketImplementation() - | - this.hasIncompatibleBlanketLikeTarget(i, selfPos, derefChain, borrow) - ) - } - - // forex using recursion - pragma[nomagic] - private predicate hasNoCompatibleTargetNoBorrowToIndex( - FunctionPosition selfPos, DerefChain derefChain, TypePath strippedTypePath, Type strippedType, - int n - ) { - this.supportsAutoDerefAndBorrow() and - this.hasReceiverAtPos(selfPos) and - strippedType = - this.getComplexStrippedSelfType(selfPos, derefChain, TNoBorrowKind(), strippedTypePath) and - n = -1 - or - this.hasNoCompatibleTargetNoBorrowToIndex(selfPos, derefChain, strippedTypePath, strippedType, - n - 1) and - exists(Type t | - t = getNthLookupType(this, strippedType, n) and - this.hasNoCompatibleTargetCheck(selfPos, derefChain, TNoBorrowKind(), strippedTypePath, t) - ) - } - /** - * Holds if the candidate receiver type represented by `derefChain` does not - * have a matching call target at function-call adjusted position `selfPos`. + * Holds if the candidate receiver type represented by `derefChain` and `borrow` + * does not have a matching call target at function-call adjusted position `selfPos`. */ - pragma[nomagic] - predicate hasNoCompatibleTargetNoBorrow(FunctionPosition selfPos, DerefChain derefChain) { - exists(Type strippedType | - this.hasNoCompatibleTargetNoBorrowToIndex(selfPos, derefChain, _, strippedType, - getLastLookupTypeIndex(this, strippedType)) - ) - } - - // forex using recursion - pragma[nomagic] - private predicate hasNoCompatibleNonBlanketTargetNoBorrowToIndex( - FunctionPosition selfPos, DerefChain derefChain, TypePath strippedTypePath, Type strippedType, - int n - ) { - ( - this.supportsAutoDerefAndBorrow() and - this.hasReceiverAtPos(selfPos) - or - // needed for the `hasNoCompatibleNonBlanketTarget` check in - // `ArgSatisfiesBlanketLikeConstraintInput::hasBlanketCandidate` - exists(ImplItemNode i | - derefChain.isEmpty() and - blanketLikeCandidate(this, _, selfPos, i, _, _, _) and - i.isBlanketImplementation() - ) - ) and - strippedType = - this.getComplexStrippedSelfType(selfPos, derefChain, TNoBorrowKind(), strippedTypePath) and - n = -1 - or - this.hasNoCompatibleNonBlanketTargetNoBorrowToIndex(selfPos, derefChain, strippedTypePath, - strippedType, n - 1) and - exists(Type t | - t = getNthLookupType(this, strippedType, n) and - this.hasNoCompatibleNonBlanketTargetCheck(selfPos, derefChain, TNoBorrowKind(), - strippedTypePath, t) - ) - } - - /** - * Holds if the candidate receiver type represented by `derefChain` does not have - * a matching non-blanket call target at function-call adjusted position `selfPos`. - */ - pragma[nomagic] - predicate hasNoCompatibleNonBlanketTargetNoBorrow( - FunctionPosition selfPos, DerefChain derefChain - ) { - exists(Type strippedType | - this.hasNoCompatibleNonBlanketTargetNoBorrowToIndex(selfPos, derefChain, _, strippedType, - getLastLookupTypeIndex(this, strippedType)) - ) - } - - // forex using recursion - pragma[nomagic] - private predicate hasNoCompatibleTargetSharedBorrowToIndex( - FunctionPosition selfPos, DerefChain derefChain, TypePath strippedTypePath, Type strippedType, - int n - ) { - this.hasNoCompatibleTargetNoBorrow(selfPos, derefChain) and - strippedType = - this.getComplexStrippedSelfType(selfPos, derefChain, TSomeBorrowKind(false), - strippedTypePath) and - n = -1 - or - this.hasNoCompatibleTargetSharedBorrowToIndex(selfPos, derefChain, strippedTypePath, - strippedType, n - 1) and - exists(Type t | - t = getNthLookupType(this, strippedType, n) and - this.hasNoCompatibleNonBlanketLikeTargetCheck(selfPos, derefChain, TSomeBorrowKind(false), - strippedTypePath, t) - ) - } - - /** - * Holds if the candidate receiver type represented by `derefChain`, followed - * by a shared borrow, does not have a matching call target at function-call - * adjusted position `selfPos`. - */ - pragma[nomagic] - predicate hasNoCompatibleTargetSharedBorrow(FunctionPosition selfPos, DerefChain derefChain) { - exists(Type strippedType | - this.hasNoCompatibleTargetSharedBorrowToIndex(selfPos, derefChain, _, strippedType, - getLastLookupTypeIndex(this, strippedType)) - ) - } - - // forex using recursion - pragma[nomagic] - private predicate hasNoCompatibleTargetMutBorrowToIndex( - FunctionPosition selfPos, DerefChain derefChain, TypePath strippedTypePath, Type strippedType, - int n - ) { - this.hasNoCompatibleTargetSharedBorrow(selfPos, derefChain) and - strippedType = - this.getComplexStrippedSelfType(selfPos, derefChain, TSomeBorrowKind(true), strippedTypePath) and - n = -1 - or - this.hasNoCompatibleTargetMutBorrowToIndex(selfPos, derefChain, strippedTypePath, - strippedType, n - 1) and - exists(Type t | - t = getNthLookupType(this, strippedType, n) and - this.hasNoCompatibleNonBlanketLikeTargetCheck(selfPos, derefChain, TSomeBorrowKind(true), - strippedTypePath, t) - ) - } - - /** - * Holds if the candidate receiver type represented by `derefChain`, followed - * by a `mut` borrow, does not have a matching call target at function-call - * adjusted position `selfPos`. - */ - pragma[nomagic] - predicate hasNoCompatibleTargetMutBorrow(FunctionPosition selfPos, DerefChain derefChain) { - exists(Type strippedType | - this.hasNoCompatibleTargetMutBorrowToIndex(selfPos, derefChain, _, strippedType, - getLastLookupTypeIndex(this, strippedType)) - ) - } - - // forex using recursion - pragma[nomagic] - private predicate hasNoCompatibleNonBlanketTargetSharedBorrowToIndex( - FunctionPosition selfPos, DerefChain derefChain, TypePath strippedTypePath, Type strippedType, - int n - ) { - this.hasNoCompatibleTargetNoBorrow(selfPos, derefChain) and - strippedType = - this.getComplexStrippedSelfType(selfPos, derefChain, TSomeBorrowKind(false), - strippedTypePath) and - n = -1 - or - this.hasNoCompatibleNonBlanketTargetSharedBorrowToIndex(selfPos, derefChain, strippedTypePath, - strippedType, n - 1) and - exists(Type t | - t = getNthLookupType(this, strippedType, n) and - this.hasNoCompatibleNonBlanketTargetCheck(selfPos, derefChain, TSomeBorrowKind(false), - strippedTypePath, t) - ) - } - - /** - * Holds if the candidate receiver type represented by `derefChain`, followed - * by a shared borrow, does not have a matching non-blanket call target at - * function-call adjusted position `selfPos`. - */ - pragma[nomagic] - predicate hasNoCompatibleNonBlanketTargetSharedBorrow( - FunctionPosition selfPos, DerefChain derefChain - ) { - exists(Type strippedType | - this.hasNoCompatibleNonBlanketTargetSharedBorrowToIndex(selfPos, derefChain, _, - strippedType, getLastLookupTypeIndex(this, strippedType)) - ) - } - - // forex using recursion - pragma[nomagic] - private predicate hasNoCompatibleNonBlanketTargetMutBorrowToIndex( - FunctionPosition selfPos, DerefChain derefChain, TypePath strippedTypePath, Type strippedType, - int n + predicate hasNoCompatibleTarget( + FunctionPosition selfPos, DerefChain derefChain, BorrowKind borrow ) { - this.hasNoCompatibleNonBlanketTargetSharedBorrow(selfPos, derefChain) and - strippedType = - this.getComplexStrippedSelfType(selfPos, derefChain, TSomeBorrowKind(true), strippedTypePath) and - n = -1 - or - this.hasNoCompatibleNonBlanketTargetMutBorrowToIndex(selfPos, derefChain, strippedTypePath, - strippedType, n - 1) and - exists(Type t | - t = getNthLookupType(this, strippedType, n) and - this.hasNoCompatibleNonBlanketTargetCheck(selfPos, derefChain, TSomeBorrowKind(true), - strippedTypePath, t) - ) + NoCompatibleTarget::hasNoCompatibleTarget(this, selfPos, derefChain, borrow) } /** - * Holds if the candidate receiver type represented by `derefChain`, followed - * by a `mut` borrow, does not have a matching non-blanket call target at - * function-call adjusted position `selfPos`. + * Holds if the candidate receiver type represented by `derefChain` and `borrow` + * does not have a matching non-blanket call target at function-call adjusted + * position `selfPos`. */ - pragma[nomagic] - predicate hasNoCompatibleNonBlanketTargetMutBorrow( - FunctionPosition selfPos, DerefChain derefChain + predicate hasNoCompatibleNonBlanketTarget( + FunctionPosition selfPos, DerefChain derefChain, BorrowKind borrow ) { - exists(Type strippedType | - this.hasNoCompatibleNonBlanketTargetMutBorrowToIndex(selfPos, derefChain, _, strippedType, - getLastLookupTypeIndex(this, strippedType)) - ) + NoCompatibleTarget::hasNoCompatibleNonBlanketTarget(this, selfPos, derefChain, borrow) } /** @@ -2082,6 +1849,25 @@ private module AssocFunctionResolution { ) } + /** + * Holds if this call may have an implicit borrow of kind `borrow` at + * function-call adjusted position `selfPos` with the given `derefChain`. + */ + pragma[nomagic] + predicate hasImplicitBorrowCand( + FunctionPosition selfPos, DerefChain derefChain, BorrowKind borrow + ) { + exists(BorrowKind prev | this.hasNoCompatibleTarget(selfPos, derefChain, prev) | + // first try shared borrow + prev.isNoBorrow() and + borrow.isSharedBorrow() + or + // then try mutable borrow + prev.isSharedBorrow() and + borrow.isMutableBorrow() + ) + } + /** * Gets the type of this call at function-call adjusted position `selfPos` and * type path `path`. @@ -2107,23 +1893,15 @@ private module AssocFunctionResolution { borrow.isNoBorrow() or exists(RefType rt | - // first try shared borrow - this.hasNoCompatibleTargetNoBorrow(selfPos, derefChain) and - borrow.isSharedBorrow() - or - // then try mutable borrow - this.hasNoCompatibleTargetSharedBorrow(selfPos, derefChain) and - borrow.isMutableBorrow() + this.hasImplicitBorrowCand(selfPos, derefChain, borrow) and + rt = borrow.getRefType() | - rt = borrow.getRefType() and - ( - path.isEmpty() and - result = rt - or - exists(TypePath suffix | - result = this.getSelfTypeAtNoBorrow(selfPos, derefChain, suffix) and - path = TypePath::cons(rt.getPositionalTypeParameter(0), suffix) - ) + path.isEmpty() and + result = rt + or + exists(TypePath suffix | + result = this.getSelfTypeAtNoBorrow(selfPos, derefChain, suffix) and + path = TypePath::cons(rt.getPositionalTypeParameter(0), suffix) ) ) } @@ -2322,6 +2100,177 @@ private module AssocFunctionResolution { override Trait getTrait() { result instanceof AnyFnTrait } } + /** + * Provides logic for efficiently checking that there are no compatible call + * targets for a given candidate receiver type. + * + * For calls with non-blanket target candidates, we need to check: + * + * ```text + * forall types `t` where `t` is a lookup type for the given candidate receiver type: + * forall non-blanket candidates `c` matching `t`: + * check that `c` is not a compatible target + * ``` + * + * Instead of implementing the above using `forall`, we apply the standard trick + * of using ranked recursion. + */ + private module NoCompatibleTarget { + private import codeql.rust.elements.internal.generated.Raw + private import codeql.rust.elements.internal.generated.Synth + + private class RawImplOrTrait = @impl or @trait; + + private predicate id(RawImplOrTrait x, RawImplOrTrait y) { x = y } + + private predicate idOfRaw(RawImplOrTrait x, int y) = equivalenceRelation(id/2)(x, y) + + private int idOfImplOrTraitItemNode(ImplOrTraitItemNode i) { + idOfRaw(Synth::convertAstNodeToRaw(i), result) + } + + /** + * Holds if `t` is the `n`th lookup type for the candidate receiver type + * represented by `derefChain` and `borrow` at function-call adjusted position + * `selfPos` of `afc`. + * + * There are no compatible non-blanket-like candidates for lookup types `0` to `n - 1`. + */ + pragma[nomagic] + private predicate noCompatibleNonBlanketLikeTargetCandNthLookupType( + AssocFunctionCall afc, FunctionPosition selfPos, DerefChain derefChain, BorrowKind borrow, + TypePath strippedTypePath, Type strippedType, int n, Type t + ) { + ( + ( + ( + afc.supportsAutoDerefAndBorrow() and + afc.hasReceiverAtPos(selfPos) + or + // needed for the `hasNoCompatibleNonBlanketTarget` check in + // `ArgSatisfiesBlanketLikeConstraintInput::hasBlanketCandidate` + exists(ImplItemNode i | + derefChain.isEmpty() and + blanketLikeCandidate(afc, _, selfPos, i, _, _, _) and + i.isBlanketImplementation() + ) + ) and + borrow.isNoBorrow() + or + afc.hasImplicitBorrowCand(selfPos, derefChain, borrow) + ) and + strippedType = afc.getComplexStrippedSelfType(selfPos, derefChain, borrow, strippedTypePath) and + n = 0 + or + hasNoCompatibleNonBlanketLikeTargetForNthLookupType(afc, selfPos, derefChain, borrow, + strippedTypePath, strippedType, n - 1) + ) and + t = getNthLookupType(afc, strippedType, n) + } + + pragma[nomagic] + private ImplOrTraitItemNode getKthNonBlanketLikeCandidateForNthLookupType( + AssocFunctionCall afc, FunctionPosition selfPos, DerefChain derefChain, BorrowKind borrow, + TypePath strippedTypePath, Type strippedType, int n, Type t, int k + ) { + noCompatibleNonBlanketLikeTargetCandNthLookupType(afc, selfPos, derefChain, borrow, + strippedTypePath, strippedType, n, t) and + result = + rank[k + 1](ImplOrTraitItemNode i, int id | + nonBlanketLikeCandidate(afc, _, selfPos, i, _, strippedTypePath, t) and + id = idOfImplOrTraitItemNode(i) + | + i order by id + ) + } + + pragma[nomagic] + private int getLastNonBlanketLikeCandidateForNthLookupType( + AssocFunctionCall afc, FunctionPosition selfPos, DerefChain derefChain, BorrowKind borrow, + TypePath strippedTypePath, Type strippedType, int n + ) { + exists(Type t | + noCompatibleNonBlanketLikeTargetCandNthLookupType(afc, selfPos, derefChain, borrow, + strippedTypePath, strippedType, n, t) and + result = + count(ImplOrTraitItemNode i | + nonBlanketLikeCandidate(afc, _, selfPos, i, _, strippedTypePath, t) + ) - 1 + ) + } + + pragma[nomagic] + private predicate hasNoCompatibleNonBlanketLikeTargetForNthLookupTypeToIndex( + AssocFunctionCall afc, FunctionPosition selfPos, DerefChain derefChain, BorrowKind borrow, + TypePath strippedTypePath, Type strippedType, int n, int k + ) { + exists(Type t | + noCompatibleNonBlanketLikeTargetCandNthLookupType(afc, selfPos, derefChain, borrow, + strippedTypePath, strippedType, n, t) + | + k = -1 + or + hasNoCompatibleNonBlanketLikeTargetForNthLookupTypeToIndex(afc, selfPos, derefChain, borrow, + strippedTypePath, strippedType, n, k - 1) and + exists(ImplOrTraitItemNode i | + i = + getKthNonBlanketLikeCandidateForNthLookupType(afc, selfPos, derefChain, borrow, + strippedTypePath, strippedType, n, t, k) and + afc.hasIncompatibleTarget(i, selfPos, derefChain, borrow, t) + ) + ) + } + + pragma[nomagic] + private predicate hasNoCompatibleNonBlanketLikeTargetForNthLookupType( + AssocFunctionCall afc, FunctionPosition selfPos, DerefChain derefChain, BorrowKind borrow, + TypePath strippedTypePath, Type strippedType, int n + ) { + exists(int last | + last = + getLastNonBlanketLikeCandidateForNthLookupType(afc, selfPos, derefChain, borrow, + strippedTypePath, strippedType, n) and + hasNoCompatibleNonBlanketLikeTargetForNthLookupTypeToIndex(afc, selfPos, derefChain, borrow, + strippedTypePath, strippedType, n, last) + ) + } + + pragma[nomagic] + private predicate hasNoCompatibleNonBlanketLikeTarget( + AssocFunctionCall afc, FunctionPosition selfPos, DerefChain derefChain, BorrowKind borrow + ) { + exists(Type strippedType | + hasNoCompatibleNonBlanketLikeTargetForNthLookupType(afc, selfPos, derefChain, borrow, _, + strippedType, getLastLookupTypeIndex(afc, strippedType)) + ) + } + + pragma[nomagic] + predicate hasNoCompatibleTarget( + AssocFunctionCall afc, FunctionPosition selfPos, DerefChain derefChain, BorrowKind borrow + ) { + hasNoCompatibleNonBlanketLikeTarget(afc, selfPos, derefChain, borrow) and + // todo: replace with ranked recursion if needed + forall(ImplItemNode i | blanketLikeCandidate(afc, _, selfPos, i, _, _, _) | + afc.hasIncompatibleBlanketLikeTarget(i, selfPos, derefChain, borrow) + ) + } + + pragma[nomagic] + predicate hasNoCompatibleNonBlanketTarget( + AssocFunctionCall afc, FunctionPosition selfPos, DerefChain derefChain, BorrowKind borrow + ) { + hasNoCompatibleNonBlanketLikeTarget(afc, selfPos, derefChain, borrow) and + // todo: replace with ranked recursion if needed + forall(ImplItemNode i | + blanketLikeCandidate(afc, _, selfPos, i, _, _, _) and + not i.isBlanketImplementation() + | + afc.hasIncompatibleBlanketLikeTarget(i, selfPos, derefChain, borrow) + ) + } + } + pragma[nomagic] private AssocFunctionDeclaration getAssocFunctionSuccessor( ImplOrTraitItemNode i, string name, int arity @@ -2358,14 +2307,7 @@ private module AssocFunctionResolution { pragma[nomagic] predicate hasNoCompatibleNonBlanketTarget() { - afc_.hasNoCompatibleNonBlanketTargetSharedBorrow(selfPos_, derefChain) and - borrow.isSharedBorrow() - or - afc_.hasNoCompatibleNonBlanketTargetMutBorrow(selfPos_, derefChain) and - borrow.isMutableBorrow() - or - afc_.hasNoCompatibleNonBlanketTargetNoBorrow(selfPos_, derefChain) and - borrow.isNoBorrow() + afc_.hasNoCompatibleNonBlanketTarget(selfPos_, derefChain, borrow) } pragma[nomagic] @@ -2474,7 +2416,7 @@ private module AssocFunctionResolution { MkCallDerefCand(AssocFunctionCall afc, FunctionPosition selfPos, DerefChain derefChain) { afc.supportsAutoDerefAndBorrow() and afc.hasReceiverAtPos(selfPos) and - afc.hasNoCompatibleTargetMutBorrow(selfPos, derefChain) and + afc.hasNoCompatibleTarget(selfPos, derefChain, TSomeBorrowKind(true)) and exists(afc.getSelfTypeAtNoBorrow(selfPos, derefChain, TypePath::nil())) } @@ -2547,10 +2489,6 @@ private module AssocFunctionResolution { // (https://rust-lang.github.io/rfcs/1210-impl-specialization.html), as well as // cases where our blanket implementation filtering is not precise enough. if impl.isBlanketImplementation() then afcc.hasNoCompatibleNonBlanketTarget() else any() - | - borrow.isNoBorrow() - or - blanketPath.getHead() = borrow.getRefType().getPositionalTypeParameter(0) ) } } diff --git a/rust/ql/test/library-tests/dataflow/local/DataFlowStep.expected b/rust/ql/test/library-tests/dataflow/local/DataFlowStep.expected index b0c11770a8e6..e220a769eceb 100644 --- a/rust/ql/test/library-tests/dataflow/local/DataFlowStep.expected +++ b/rust/ql/test/library-tests/dataflow/local/DataFlowStep.expected @@ -927,9 +927,6 @@ readStep | main.rs:480:25:480:29 | names | file://:0:0:0:0 | element | main.rs:480:9:480:20 | TuplePat | | main.rs:482:41:482:67 | [post] \|...\| ... | main.rs:479:9:479:20 | captured default_name | main.rs:482:41:482:67 | [post] default_name | | main.rs:482:44:482:55 | [post] default_name [implicit borrow] | file://:0:0:0:0 | &ref | main.rs:482:44:482:55 | [post] default_name | -| main.rs:482:44:482:55 | [post] default_name [implicit borrow] | file://:0:0:0:0 | &ref | main.rs:482:44:482:55 | [post] default_name [implicit deref 0 in state after deref] | -| main.rs:482:44:482:55 | [post] default_name [implicit deref 0 in state after borrow] | file://:0:0:0:0 | &ref | main.rs:482:44:482:55 | [post] default_name | -| main.rs:482:44:482:55 | default_name [implicit deref 0 in state before deref] | file://:0:0:0:0 | &ref | main.rs:482:44:482:55 | default_name [implicit deref 0 in state after deref] | | main.rs:482:44:482:55 | this | main.rs:479:9:479:20 | captured default_name | main.rs:482:44:482:55 | default_name | | main.rs:483:18:483:18 | [post] n [implicit borrow] | file://:0:0:0:0 | &ref | main.rs:483:18:483:18 | [post] n | | main.rs:506:13:506:13 | [post] a [implicit borrow] | file://:0:0:0:0 | &ref | main.rs:506:13:506:13 | [post] a | @@ -1056,8 +1053,6 @@ storeStep | main.rs:479:24:479:33 | source(...) | file://:0:0:0:0 | &ref | main.rs:479:24:479:33 | source(...) [implicit borrow] | | main.rs:482:41:482:67 | default_name | main.rs:479:9:479:20 | captured default_name | main.rs:482:41:482:67 | \|...\| ... | | main.rs:482:44:482:55 | default_name | file://:0:0:0:0 | &ref | main.rs:482:44:482:55 | default_name [implicit borrow] | -| main.rs:482:44:482:55 | default_name | file://:0:0:0:0 | &ref | main.rs:482:44:482:55 | default_name [implicit deref 0 in state after borrow] | -| main.rs:482:44:482:55 | default_name [implicit deref 0 in state after deref] | file://:0:0:0:0 | &ref | main.rs:482:44:482:55 | default_name [implicit borrow] | | main.rs:483:18:483:18 | n | file://:0:0:0:0 | &ref | main.rs:483:18:483:18 | n [implicit borrow] | | main.rs:506:13:506:13 | a | file://:0:0:0:0 | &ref | main.rs:506:13:506:13 | a [implicit borrow] | | main.rs:507:13:507:13 | b | file://:0:0:0:0 | &ref | main.rs:507:13:507:13 | b [implicit deref 0 in state after borrow] | diff --git a/rust/ql/test/library-tests/type-inference/closure.rs b/rust/ql/test/library-tests/type-inference/closure.rs index a63a708e2456..635b169bf96b 100644 --- a/rust/ql/test/library-tests/type-inference/closure.rs +++ b/rust/ql/test/library-tests/type-inference/closure.rs @@ -230,7 +230,14 @@ mod implicit_deref { let s = S(v); let _ret = s(x); // $ type=_ret:bool let s_ref = &s; - let _ret = s_ref(x); // $ type=_ret:bool + // The call below incorrectly resolves to + // `impl FnOnce for &F` from + // https://doc.rust-lang.org/std/ops/trait.FnOnce.html#impl-FnOnce%3CA%3E-for-%26F + // because `s_ref` gets an implicit borrow `&&S`, and then we incorrectly + // conclude that `&S` satisfies the blanket constraint `Fn` because of the + // `impl FnOnce for &F` implementation (we do not currently identify that + // `&S` does not satisfy `Fn`) + let _ret = s_ref(x); // $ MISSING: type=_ret:bool // The call below is not an implicit deref, instead it will target // `impl FnOnce for &F` from diff --git a/rust/ql/test/library-tests/type-inference/type-inference.expected b/rust/ql/test/library-tests/type-inference/type-inference.expected index ceae6f4dd095..5e870ae6ca5d 100644 --- a/rust/ql/test/library-tests/type-inference/type-inference.expected +++ b/rust/ql/test/library-tests/type-inference/type-inference.expected @@ -873,7 +873,7 @@ inferCertainType | closure.rs:218:13:218:22 | &... | | {EXTERNAL LOCATION} | & | | closure.rs:218:14:218:22 | \|...\| false | | {EXTERNAL LOCATION} | dyn Fn | | closure.rs:218:18:218:22 | false | | {EXTERNAL LOCATION} | bool | -| closure.rs:222:19:241:5 | { ... } | | {EXTERNAL LOCATION} | () | +| closure.rs:222:19:248:5 | { ... } | | {EXTERNAL LOCATION} | () | | closure.rs:223:13:223:13 | x | | {EXTERNAL LOCATION} | i64 | | closure.rs:223:17:223:20 | 0i64 | | {EXTERNAL LOCATION} | i64 | | closure.rs:226:21:226:23 | ArgList | | {EXTERNAL LOCATION} | (T_1) | @@ -886,18 +886,18 @@ inferCertainType | closure.rs:231:22:231:22 | x | | {EXTERNAL LOCATION} | i32 | | closure.rs:232:13:232:17 | s_ref | | {EXTERNAL LOCATION} | & | | closure.rs:232:21:232:22 | &s | | {EXTERNAL LOCATION} | & | -| closure.rs:233:20:233:24 | s_ref | | {EXTERNAL LOCATION} | & | -| closure.rs:233:25:233:27 | ArgList | | {EXTERNAL LOCATION} | (T_1) | -| closure.rs:233:25:233:27 | ArgList | T0 | {EXTERNAL LOCATION} | i32 | -| closure.rs:233:26:233:26 | x | | {EXTERNAL LOCATION} | i32 | -| closure.rs:239:13:239:13 | c | | {EXTERNAL LOCATION} | dyn Fn | -| closure.rs:239:17:239:21 | \|...\| x | | {EXTERNAL LOCATION} | dyn Fn | -| closure.rs:240:9:240:12 | (...) | | {EXTERNAL LOCATION} | & | -| closure.rs:240:10:240:11 | &c | | {EXTERNAL LOCATION} | & | -| closure.rs:240:11:240:11 | c | | {EXTERNAL LOCATION} | dyn Fn | -| closure.rs:240:13:240:15 | ArgList | | {EXTERNAL LOCATION} | (T_1) | -| closure.rs:240:13:240:15 | ArgList | T0 | {EXTERNAL LOCATION} | i32 | -| closure.rs:240:14:240:14 | x | | {EXTERNAL LOCATION} | i32 | +| closure.rs:240:20:240:24 | s_ref | | {EXTERNAL LOCATION} | & | +| closure.rs:240:25:240:27 | ArgList | | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:240:25:240:27 | ArgList | T0 | {EXTERNAL LOCATION} | i32 | +| closure.rs:240:26:240:26 | x | | {EXTERNAL LOCATION} | i32 | +| closure.rs:246:13:246:13 | c | | {EXTERNAL LOCATION} | dyn Fn | +| closure.rs:246:17:246:21 | \|...\| x | | {EXTERNAL LOCATION} | dyn Fn | +| closure.rs:247:9:247:12 | (...) | | {EXTERNAL LOCATION} | & | +| closure.rs:247:10:247:11 | &c | | {EXTERNAL LOCATION} | & | +| closure.rs:247:11:247:11 | c | | {EXTERNAL LOCATION} | dyn Fn | +| closure.rs:247:13:247:15 | ArgList | | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:247:13:247:15 | ArgList | T0 | {EXTERNAL LOCATION} | i32 | +| closure.rs:247:14:247:14 | x | | {EXTERNAL LOCATION} | i32 | | dereference.rs:13:14:13:18 | SelfParam | | {EXTERNAL LOCATION} | & | | dereference.rs:13:14:13:18 | SelfParam | TRef | dereference.rs:5:1:7:1 | MyIntPointer | | dereference.rs:13:29:15:5 | { ... } | | {EXTERNAL LOCATION} | & | @@ -6897,7 +6897,7 @@ inferType | closure.rs:218:14:218:22 | \|...\| false | dyn(Output) | {EXTERNAL LOCATION} | bool | | closure.rs:218:15:218:15 | _ | | closure.rs:214:10:214:10 | T | | closure.rs:218:18:218:22 | false | | {EXTERNAL LOCATION} | bool | -| closure.rs:222:19:241:5 | { ... } | | {EXTERNAL LOCATION} | () | +| closure.rs:222:19:248:5 | { ... } | | {EXTERNAL LOCATION} | () | | closure.rs:223:13:223:13 | x | | {EXTERNAL LOCATION} | i64 | | closure.rs:223:17:223:20 | 0i64 | | {EXTERNAL LOCATION} | i64 | | closure.rs:224:13:224:13 | v | | {EXTERNAL LOCATION} | i64 | @@ -6938,42 +6938,40 @@ inferType | closure.rs:232:21:232:22 | &s | TRef.T | {EXTERNAL LOCATION} | i32 | | closure.rs:232:22:232:22 | s | | closure.rs:212:5:212:19 | S | | closure.rs:232:22:232:22 | s | T | {EXTERNAL LOCATION} | i32 | -| closure.rs:233:13:233:16 | _ret | | {EXTERNAL LOCATION} | bool | -| closure.rs:233:20:233:24 | s_ref | | {EXTERNAL LOCATION} | & | -| closure.rs:233:20:233:24 | s_ref | TRef | closure.rs:212:5:212:19 | S | -| closure.rs:233:20:233:24 | s_ref | TRef.T | {EXTERNAL LOCATION} | i32 | -| closure.rs:233:20:233:27 | s_ref(...) | | {EXTERNAL LOCATION} | bool | -| closure.rs:233:25:233:27 | ArgList | | {EXTERNAL LOCATION} | (T_1) | -| closure.rs:233:25:233:27 | ArgList | T0 | {EXTERNAL LOCATION} | i32 | -| closure.rs:233:26:233:26 | x | | {EXTERNAL LOCATION} | i32 | -| closure.rs:239:13:239:13 | c | | {EXTERNAL LOCATION} | dyn Fn | -| closure.rs:239:13:239:13 | c | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | -| closure.rs:239:13:239:13 | c | dyn(Args).T0 | {EXTERNAL LOCATION} | i32 | -| closure.rs:239:13:239:13 | c | dyn(Output) | {EXTERNAL LOCATION} | i32 | -| closure.rs:239:17:239:21 | \|...\| x | | {EXTERNAL LOCATION} | dyn Fn | -| closure.rs:239:17:239:21 | \|...\| x | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | -| closure.rs:239:17:239:21 | \|...\| x | dyn(Args).T0 | {EXTERNAL LOCATION} | i32 | -| closure.rs:239:17:239:21 | \|...\| x | dyn(Output) | {EXTERNAL LOCATION} | i32 | -| closure.rs:239:18:239:18 | x | | {EXTERNAL LOCATION} | i32 | -| closure.rs:239:21:239:21 | x | | {EXTERNAL LOCATION} | i32 | -| closure.rs:240:9:240:12 | (...) | | {EXTERNAL LOCATION} | & | -| closure.rs:240:9:240:12 | (...) | TRef | {EXTERNAL LOCATION} | dyn Fn | -| closure.rs:240:9:240:12 | (...) | TRef.dyn(Args) | {EXTERNAL LOCATION} | (T_1) | -| closure.rs:240:9:240:12 | (...) | TRef.dyn(Args).T0 | {EXTERNAL LOCATION} | i32 | -| closure.rs:240:9:240:12 | (...) | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | -| closure.rs:240:9:240:15 | ...(...) | | {EXTERNAL LOCATION} | i32 | -| closure.rs:240:10:240:11 | &c | | {EXTERNAL LOCATION} | & | -| closure.rs:240:10:240:11 | &c | TRef | {EXTERNAL LOCATION} | dyn Fn | -| closure.rs:240:10:240:11 | &c | TRef.dyn(Args) | {EXTERNAL LOCATION} | (T_1) | -| closure.rs:240:10:240:11 | &c | TRef.dyn(Args).T0 | {EXTERNAL LOCATION} | i32 | -| closure.rs:240:10:240:11 | &c | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | -| closure.rs:240:11:240:11 | c | | {EXTERNAL LOCATION} | dyn Fn | -| closure.rs:240:11:240:11 | c | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | -| closure.rs:240:11:240:11 | c | dyn(Args).T0 | {EXTERNAL LOCATION} | i32 | -| closure.rs:240:11:240:11 | c | dyn(Output) | {EXTERNAL LOCATION} | i32 | -| closure.rs:240:13:240:15 | ArgList | | {EXTERNAL LOCATION} | (T_1) | -| closure.rs:240:13:240:15 | ArgList | T0 | {EXTERNAL LOCATION} | i32 | -| closure.rs:240:14:240:14 | x | | {EXTERNAL LOCATION} | i32 | +| closure.rs:240:20:240:24 | s_ref | | {EXTERNAL LOCATION} | & | +| closure.rs:240:20:240:24 | s_ref | TRef | closure.rs:212:5:212:19 | S | +| closure.rs:240:20:240:24 | s_ref | TRef.T | {EXTERNAL LOCATION} | i32 | +| closure.rs:240:25:240:27 | ArgList | | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:240:25:240:27 | ArgList | T0 | {EXTERNAL LOCATION} | i32 | +| closure.rs:240:26:240:26 | x | | {EXTERNAL LOCATION} | i32 | +| closure.rs:246:13:246:13 | c | | {EXTERNAL LOCATION} | dyn Fn | +| closure.rs:246:13:246:13 | c | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:246:13:246:13 | c | dyn(Args).T0 | {EXTERNAL LOCATION} | i32 | +| closure.rs:246:13:246:13 | c | dyn(Output) | {EXTERNAL LOCATION} | i32 | +| closure.rs:246:17:246:21 | \|...\| x | | {EXTERNAL LOCATION} | dyn Fn | +| closure.rs:246:17:246:21 | \|...\| x | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:246:17:246:21 | \|...\| x | dyn(Args).T0 | {EXTERNAL LOCATION} | i32 | +| closure.rs:246:17:246:21 | \|...\| x | dyn(Output) | {EXTERNAL LOCATION} | i32 | +| closure.rs:246:18:246:18 | x | | {EXTERNAL LOCATION} | i32 | +| closure.rs:246:21:246:21 | x | | {EXTERNAL LOCATION} | i32 | +| closure.rs:247:9:247:12 | (...) | | {EXTERNAL LOCATION} | & | +| closure.rs:247:9:247:12 | (...) | TRef | {EXTERNAL LOCATION} | dyn Fn | +| closure.rs:247:9:247:12 | (...) | TRef.dyn(Args) | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:247:9:247:12 | (...) | TRef.dyn(Args).T0 | {EXTERNAL LOCATION} | i32 | +| closure.rs:247:9:247:12 | (...) | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | +| closure.rs:247:9:247:15 | ...(...) | | {EXTERNAL LOCATION} | i32 | +| closure.rs:247:10:247:11 | &c | | {EXTERNAL LOCATION} | & | +| closure.rs:247:10:247:11 | &c | TRef | {EXTERNAL LOCATION} | dyn Fn | +| closure.rs:247:10:247:11 | &c | TRef.dyn(Args) | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:247:10:247:11 | &c | TRef.dyn(Args).T0 | {EXTERNAL LOCATION} | i32 | +| closure.rs:247:10:247:11 | &c | TRef.dyn(Output) | {EXTERNAL LOCATION} | i32 | +| closure.rs:247:11:247:11 | c | | {EXTERNAL LOCATION} | dyn Fn | +| closure.rs:247:11:247:11 | c | dyn(Args) | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:247:11:247:11 | c | dyn(Args).T0 | {EXTERNAL LOCATION} | i32 | +| closure.rs:247:11:247:11 | c | dyn(Output) | {EXTERNAL LOCATION} | i32 | +| closure.rs:247:13:247:15 | ArgList | | {EXTERNAL LOCATION} | (T_1) | +| closure.rs:247:13:247:15 | ArgList | T0 | {EXTERNAL LOCATION} | i32 | +| closure.rs:247:14:247:14 | x | | {EXTERNAL LOCATION} | i32 | | dereference.rs:13:14:13:18 | SelfParam | | {EXTERNAL LOCATION} | & | | dereference.rs:13:14:13:18 | SelfParam | TRef | dereference.rs:5:1:7:1 | MyIntPointer | | dereference.rs:13:29:15:5 | { ... } | | {EXTERNAL LOCATION} | & | From 27f7f747a414635cfc0413898549cd98a7433938 Mon Sep 17 00:00:00 2001 From: Tom Hvitved Date: Fri, 10 Apr 2026 13:20:36 +0200 Subject: [PATCH 100/157] Rust: Check whole blanket constraints, not just the root trait type --- .../codeql/rust/internal/PathResolution.qll | 15 ++++++----- .../typeinference/BlanketImplementation.qll | 27 ++++++++++--------- 2 files changed, 23 insertions(+), 19 deletions(-) diff --git a/rust/ql/lib/codeql/rust/internal/PathResolution.qll b/rust/ql/lib/codeql/rust/internal/PathResolution.qll index c38e9bff91c2..10d18786880b 100644 --- a/rust/ql/lib/codeql/rust/internal/PathResolution.qll +++ b/rust/ql/lib/codeql/rust/internal/PathResolution.qll @@ -1202,18 +1202,21 @@ final class TypeParamItemNode extends NamedItemNode, TypeItemNode instanceof Typ } pragma[nomagic] - Path getABoundPath() { result = this.getTypeBoundAt(_, _).getTypeRepr().(PathTypeRepr).getPath() } - - pragma[nomagic] - ItemNode resolveBound(int index) { + Path getBoundPath(int index) { result = rank[index + 1](int i, int j | | - resolvePath(this.getTypeBoundAt(i, j).getTypeRepr().(PathTypeRepr).getPath()) order by i, j + this.getTypeBoundAt(i, j).getTypeRepr().(PathTypeRepr).getPath() order by i, j ) } - ItemNode resolveABound() { result = resolvePath(this.getABoundPath()) } + pragma[nomagic] + Path getABoundPath() { result = this.getBoundPath(_) } + + pragma[nomagic] + ItemNode resolveBound(int index) { result = resolvePath(this.getBoundPath(index)) } + + ItemNode resolveABound() { result = this.resolveBound(_) } pragma[nomagic] ItemNode resolveAdditionalBound(ItemNode constrainingItem) { diff --git a/rust/ql/lib/codeql/rust/internal/typeinference/BlanketImplementation.qll b/rust/ql/lib/codeql/rust/internal/typeinference/BlanketImplementation.qll index 26e8bdea4e0e..86bcdbe4fe8f 100644 --- a/rust/ql/lib/codeql/rust/internal/typeinference/BlanketImplementation.qll +++ b/rust/ql/lib/codeql/rust/internal/typeinference/BlanketImplementation.qll @@ -15,10 +15,11 @@ private import TypeInference * Holds if `traitBound` is the first non-trivial trait bound of `tp`. */ pragma[nomagic] -private predicate hasFirstNonTrivialTraitBound(TypeParamItemNode tp, Trait traitBound) { +private predicate hasFirstNonTrivialTraitBound(TypeParamItemNode tp, Path traitBound) { traitBound = - min(Trait trait, int i | - trait = tp.resolveBound(i) and + min(Trait trait, Path path, int i | + path = tp.getBoundPath(i) and + trait = resolvePath(path) and // Exclude traits that are known to not narrow things down very much. not trait.getName().getText() = [ @@ -27,7 +28,7 @@ private predicate hasFirstNonTrivialTraitBound(TypeParamItemNode tp, Trait trait "Send", "Sync", "Unpin", "UnwindSafe", "RefUnwindSafe" ] | - trait order by i + path order by i ) } @@ -103,11 +104,11 @@ module SatisfiesBlanketConstraint< } private module SatisfiesBlanketConstraintInput implements - SatisfiesTypeInputSig + SatisfiesConstraintInputSig { pragma[nomagic] additional predicate relevantConstraint( - ArgumentTypeAndBlanketOffset ato, ImplItemNode impl, Trait traitBound + ArgumentTypeAndBlanketOffset ato, ImplItemNode impl, Path traitBound ) { exists(ArgumentType at, TypePath blanketPath, TypeParam blanketTypeParam | ato = MkArgumentTypeAndBlanketOffset(at, blanketPath) and @@ -117,13 +118,13 @@ module SatisfiesBlanketConstraint< } pragma[nomagic] - predicate relevantConstraint(ArgumentTypeAndBlanketOffset ato, Type constraint) { - relevantConstraint(ato, _, constraint.(TraitType).getTrait()) + predicate relevantConstraint(ArgumentTypeAndBlanketOffset ato, TypeMention constraint) { + relevantConstraint(ato, _, constraint) } } private module SatisfiesBlanketConstraint = - SatisfiesType; + SatisfiesConstraint; /** * Holds if the argument type `at` satisfies the first non-trivial blanket @@ -131,10 +132,10 @@ module SatisfiesBlanketConstraint< */ pragma[nomagic] predicate satisfiesBlanketConstraint(ArgumentType at, ImplItemNode impl) { - exists(ArgumentTypeAndBlanketOffset ato, Trait traitBound | + exists(ArgumentTypeAndBlanketOffset ato, Path traitBound | ato = MkArgumentTypeAndBlanketOffset(at, _) and SatisfiesBlanketConstraintInput::relevantConstraint(ato, impl, traitBound) and - SatisfiesBlanketConstraint::satisfiesConstraint(ato, TTrait(traitBound), _, _) + SatisfiesBlanketConstraint::satisfiesConstraint(ato, traitBound, _, _) ) or exists(TypeParam blanketTypeParam | @@ -149,10 +150,10 @@ module SatisfiesBlanketConstraint< */ pragma[nomagic] predicate dissatisfiesBlanketConstraint(ArgumentType at, ImplItemNode impl) { - exists(ArgumentTypeAndBlanketOffset ato, Trait traitBound | + exists(ArgumentTypeAndBlanketOffset ato, Path traitBound | ato = MkArgumentTypeAndBlanketOffset(at, _) and SatisfiesBlanketConstraintInput::relevantConstraint(ato, impl, traitBound) and - SatisfiesBlanketConstraint::dissatisfiesConstraint(ato, TTrait(traitBound)) + SatisfiesBlanketConstraint::dissatisfiesConstraint(ato, traitBound) ) } } From ad4018f399b87fccf34f54ef6e2ff765aff8ebe5 Mon Sep 17 00:00:00 2001 From: Taus Date: Fri, 10 Apr 2026 13:50:43 +0000 Subject: [PATCH 101/157] Python: Add parser support for lazy imports As defined in PEP-810. We implement this in much the same way as how we handle `async` annotations currently. The relevant nodes get an `is_lazy` field that defaults to being false. --- python/extractor/semmle/python/ast.py | 10 +- .../semmle/python/parser/dump_ast.py | 4 +- .../semmle/python/parser/tsg_parser.py | 2 +- .../tests/parser/lazy_imports_new.expected | 284 ++++++++++++++++++ .../tests/parser/lazy_imports_new.py | 34 +++ python/extractor/tsg-python/python.tsg | 7 + python/extractor/tsg-python/tsp/grammar.js | 3 + 7 files changed, 337 insertions(+), 7 deletions(-) create mode 100644 python/extractor/tests/parser/lazy_imports_new.expected create mode 100644 python/extractor/tests/parser/lazy_imports_new.py diff --git a/python/extractor/semmle/python/ast.py b/python/extractor/semmle/python/ast.py index 1efe5cd1d197..93ab146cb6fe 100644 --- a/python/extractor/semmle/python/ast.py +++ b/python/extractor/semmle/python/ast.py @@ -845,17 +845,19 @@ def __init__(self, test, body, orelse): class Import(stmt): - __slots__ = "names", + __slots__ = "is_lazy", "names", - def __init__(self, names): + def __init__(self, names, is_lazy=False): self.names = names + self.is_lazy = is_lazy class ImportFrom(stmt): - __slots__ = "module", + __slots__ = "is_lazy", "module", - def __init__(self, module): + def __init__(self, module, is_lazy=False): self.module = module + self.is_lazy = is_lazy class Nonlocal(stmt): diff --git a/python/extractor/semmle/python/parser/dump_ast.py b/python/extractor/semmle/python/parser/dump_ast.py index 23e1a973dfc7..802bed8fac24 100644 --- a/python/extractor/semmle/python/parser/dump_ast.py +++ b/python/extractor/semmle/python/parser/dump_ast.py @@ -72,8 +72,8 @@ def visit(self, node, level=0, visited=None): # just not print it in that case. if field == "parenthesised" and value is None: continue - # Likewise, the default value for `is_async` is `False`, so we don't need to print it. - if field == "is_async" and value is False: + # Likewise, the default value for `is_async` and `is_lazy` is `False`, so we don't need to print it. + if field in ("is_async", "is_lazy") and value is False: continue output.write("{} {}:".format(indent,field)) if isinstance(value, list): diff --git a/python/extractor/semmle/python/parser/tsg_parser.py b/python/extractor/semmle/python/parser/tsg_parser.py index 6ee8286c4c78..356faf249ed3 100644 --- a/python/extractor/semmle/python/parser/tsg_parser.py +++ b/python/extractor/semmle/python/parser/tsg_parser.py @@ -291,7 +291,7 @@ def create_placeholder_args(cls): if cls in (ast.Raise, ast.Ellipsis): return {} fields = ast_fields[cls] - args = {field: None for field in fields if field != "is_async"} + args = {field: None for field in fields if field not in ("is_async", "is_lazy")} for field in list_fields.get(cls, ()): args[field] = [] if cls in (ast.GeneratorExp, ast.ListComp, ast.SetComp, ast.DictComp): diff --git a/python/extractor/tests/parser/lazy_imports_new.expected b/python/extractor/tests/parser/lazy_imports_new.expected new file mode 100644 index 000000000000..ae881c2c1b3c --- /dev/null +++ b/python/extractor/tests/parser/lazy_imports_new.expected @@ -0,0 +1,284 @@ +Module: [2, 0] - [35, 0] + body: [ + Import: [2, 0] - [2, 13] + is_lazy: True + names: [ + alias: [2, 12] - [2, 13] + value: + ImportExpr: [2, 12] - [2, 13] + level: 0 + name: 'a' + top: True + asname: + Name: [2, 12] - [2, 13] + variable: Variable('a', None) + ctx: Store + ] + Import: [4, 0] - [4, 18] + is_lazy: True + names: [ + alias: [4, 12] - [4, 14] + value: + ImportExpr: [4, 12] - [4, 14] + level: 0 + name: 'b1' + top: True + asname: + Name: [4, 12] - [4, 14] + variable: Variable('b1', None) + ctx: Store + alias: [4, 16] - [4, 18] + value: + ImportExpr: [4, 16] - [4, 18] + level: 0 + name: 'b2' + top: True + asname: + Name: [4, 16] - [4, 18] + variable: Variable('b2', None) + ctx: Store + ] + Import: [6, 0] - [6, 20] + is_lazy: True + names: [ + alias: [6, 12] - [6, 20] + value: + ImportExpr: [6, 12] - [6, 20] + level: 0 + name: 'c1.c2.c3' + top: True + asname: + Name: [6, 12] - [6, 20] + variable: Variable('c1', None) + ctx: Store + ] + Import: [8, 0] - [8, 23] + is_lazy: True + names: [ + alias: [8, 12] - [8, 23] + value: + ImportExpr: [8, 12] - [8, 17] + level: 0 + name: 'd1.d2' + top: False + asname: + Name: [8, 21] - [8, 23] + variable: Variable('d3', None) + ctx: Store + ] + Import: [10, 0] - [10, 20] + is_lazy: True + names: [ + alias: [10, 19] - [10, 20] + value: + ImportMember: [10, 19] - [10, 20] + module: + ImportExpr: [10, 10] - [10, 11] + level: 0 + name: 'e' + top: False + name: 'f' + asname: + Name: [10, 19] - [10, 20] + variable: Variable('f', None) + ctx: Store + ] + Import: [12, 0] - [12, 29] + is_lazy: True + names: [ + alias: [12, 23] - [12, 25] + value: + ImportMember: [12, 23] - [12, 25] + module: + ImportExpr: [12, 10] - [12, 15] + level: 0 + name: 'g1.g2' + top: False + name: 'h1' + asname: + Name: [12, 23] - [12, 25] + variable: Variable('h1', None) + ctx: Store + alias: [12, 27] - [12, 29] + value: + ImportMember: [12, 27] - [12, 29] + module: + ImportExpr: [12, 10] - [12, 15] + level: 0 + name: 'g1.g2' + top: False + name: 'h2' + asname: + Name: [12, 27] - [12, 29] + variable: Variable('h2', None) + ctx: Store + ] + Import: [14, 0] - [14, 32] + is_lazy: True + names: [ + alias: [14, 20] - [14, 28] + value: + ImportMember: [14, 20] - [14, 28] + module: + ImportExpr: [14, 10] - [14, 12] + level: 0 + name: 'i1' + top: False + name: 'j1' + asname: + Name: [14, 26] - [14, 28] + variable: Variable('j2', None) + ctx: Store + alias: [14, 30] - [14, 32] + value: + ImportMember: [14, 30] - [14, 32] + module: + ImportExpr: [14, 10] - [14, 12] + level: 0 + name: 'i1' + top: False + name: 'j3' + asname: + Name: [14, 30] - [14, 32] + variable: Variable('j3', None) + ctx: Store + ] + Import: [16, 0] - [16, 37] + is_lazy: True + names: [ + alias: [16, 25] - [16, 33] + value: + ImportMember: [16, 25] - [16, 33] + module: + ImportExpr: [16, 10] - [16, 17] + level: 2 + name: 'k1.k2' + top: False + name: 'l1' + asname: + Name: [16, 31] - [16, 33] + variable: Variable('l2', None) + ctx: Store + alias: [16, 35] - [16, 37] + value: + ImportMember: [16, 35] - [16, 37] + module: + ImportExpr: [16, 10] - [16, 17] + level: 2 + name: 'k1.k2' + top: False + name: 'l3' + asname: + Name: [16, 35] - [16, 37] + variable: Variable('l3', None) + ctx: Store + ] + Import: [18, 0] - [18, 20] + is_lazy: True + names: [ + alias: [18, 19] - [18, 20] + value: + ImportMember: [18, 19] - [18, 20] + module: + ImportExpr: [18, 10] - [18, 11] + level: 1 + name: None + top: False + name: 'm' + asname: + Name: [18, 19] - [18, 20] + variable: Variable('m', None) + ctx: Store + ] + Import: [20, 0] - [20, 22] + is_lazy: True + names: [ + alias: [20, 21] - [20, 22] + value: + ImportMember: [20, 21] - [20, 22] + module: + ImportExpr: [20, 10] - [20, 13] + level: 3 + name: None + top: False + name: 'n' + asname: + Name: [20, 21] - [20, 22] + variable: Variable('n', None) + ctx: Store + ] + ImportFrom: [22, 0] - [22, 20] + is_lazy: True + module: + ImportExpr: [22, 10] - [22, 11] + level: 0 + name: 'o' + top: False + Assign: [26, 0] - [26, 8] + targets: [ + Name: [26, 0] - [26, 4] + variable: Variable('lazy', None) + ctx: Store + ] + value: + Num: [26, 7] - [26, 8] + n: 1 + text: '1' + Assign: [28, 0] - [28, 11] + targets: [ + Subscript: [28, 0] - [28, 7] + value: + Name: [28, 0] - [28, 4] + variable: Variable('lazy', None) + ctx: Load + index: + Num: [28, 5] - [28, 6] + n: 2 + text: '2' + ctx: Store + ] + value: + Num: [28, 10] - [28, 11] + n: 3 + text: '3' + Assign: [30, 0] - [30, 12] + targets: [ + Attribute: [30, 0] - [30, 8] + value: + Name: [30, 0] - [30, 4] + variable: Variable('lazy', None) + ctx: Load + attr: 'foo' + ctx: Store + ] + value: + Num: [30, 11] - [30, 12] + n: 4 + text: '4' + Expr: [32, 0] - [32, 6] + value: + Call: [32, 0] - [32, 6] + func: + Name: [32, 0] - [32, 4] + variable: Variable('lazy', None) + ctx: Load + positional_args: [] + named_args: [] + AnnAssign: [34, 0] - [34, 14] + value: None + annotation: + Name: [34, 10] - [34, 14] + variable: Variable('case', None) + ctx: Load + target: + Subscript: [34, 0] - [34, 7] + value: + Name: [34, 0] - [34, 4] + variable: Variable('lazy', None) + ctx: Load + index: + Num: [34, 5] - [34, 6] + n: 5 + text: '5' + ctx: Store + ] diff --git a/python/extractor/tests/parser/lazy_imports_new.py b/python/extractor/tests/parser/lazy_imports_new.py new file mode 100644 index 000000000000..13d01eaa6c40 --- /dev/null +++ b/python/extractor/tests/parser/lazy_imports_new.py @@ -0,0 +1,34 @@ +# Basic lazy imports (PEP 810) +lazy import a + +lazy import b1, b2 + +lazy import c1.c2.c3 + +lazy import d1.d2 as d3 + +lazy from e import f + +lazy from g1.g2 import h1, h2 + +lazy from i1 import j1 as j2, j3 + +lazy from ..k1.k2 import l1 as l2, l3 + +lazy from . import m + +lazy from ... import n + +lazy from o import * + + +# `lazy` used as a regular identifier (soft keyword behavior) +lazy = 1 + +lazy[2] = 3 + +lazy.foo = 4 + +lazy() + +lazy[5] : case diff --git a/python/extractor/tsg-python/python.tsg b/python/extractor/tsg-python/python.tsg index dd11814753d8..93d6e95a344a 100644 --- a/python/extractor/tsg-python/python.tsg +++ b/python/extractor/tsg-python/python.tsg @@ -1777,6 +1777,13 @@ attr (@importfrom.importexpr) level = level } +; Set is_lazy for lazy import statements (PEP 810) +[ + (import_statement is_lazy: _) + (import_from_statement is_lazy: _) +] @lazy_import +{ attr (@lazy_import.node) is_lazy = #true } + ;;;;;; End of Import (`from ... import ...`) ;;;;;; Raise (`raise ...`) diff --git a/python/extractor/tsg-python/tsp/grammar.js b/python/extractor/tsg-python/tsp/grammar.js index c53a67da1260..05b792340ddb 100644 --- a/python/extractor/tsg-python/tsp/grammar.js +++ b/python/extractor/tsg-python/tsp/grammar.js @@ -109,6 +109,7 @@ module.exports = grammar({ ), import_statement: $ => seq( + optional(field('is_lazy', 'lazy')), 'import', $._import_list ), @@ -131,6 +132,7 @@ module.exports = grammar({ ), import_from_statement: $ => seq( + optional(field('is_lazy', 'lazy')), 'from', field('module_name', choice( $.relative_import, @@ -1228,6 +1230,7 @@ module.exports = grammar({ 'await', 'match', 'type', + 'lazy', ), $.identifier )), From 2c79f9d8282ed0b1bbe03d6f126871c53d6523d1 Mon Sep 17 00:00:00 2001 From: Taus Date: Fri, 10 Apr 2026 13:50:59 +0000 Subject: [PATCH 102/157] Python: Regenerate parser files --- .../extractor/tsg-python/tsp/src/grammar.json | 36 + .../tsg-python/tsp/src/node-types.json | 24 + python/extractor/tsg-python/tsp/src/parser.c | 80497 ++++++++-------- .../tsg-python/tsp/src/tree_sitter/array.h | 57 +- 4 files changed, 40778 insertions(+), 39836 deletions(-) diff --git a/python/extractor/tsg-python/tsp/src/grammar.json b/python/extractor/tsg-python/tsp/src/grammar.json index fbe1f17b9491..552597b18a9b 100644 --- a/python/extractor/tsg-python/tsp/src/grammar.json +++ b/python/extractor/tsg-python/tsp/src/grammar.json @@ -144,6 +144,22 @@ "import_statement": { "type": "SEQ", "members": [ + { + "type": "CHOICE", + "members": [ + { + "type": "FIELD", + "name": "is_lazy", + "content": { + "type": "STRING", + "value": "lazy" + } + }, + { + "type": "BLANK" + } + ] + }, { "type": "STRING", "value": "import" @@ -232,6 +248,22 @@ "import_from_statement": { "type": "SEQ", "members": [ + { + "type": "CHOICE", + "members": [ + { + "type": "FIELD", + "name": "is_lazy", + "content": { + "type": "STRING", + "value": "lazy" + } + }, + { + "type": "BLANK" + } + ] + }, { "type": "STRING", "value": "from" @@ -6721,6 +6753,10 @@ { "type": "STRING", "value": "type" + }, + { + "type": "STRING", + "value": "lazy" } ] }, diff --git a/python/extractor/tsg-python/tsp/src/node-types.json b/python/extractor/tsg-python/tsp/src/node-types.json index 609952bd5e53..f8659f44e2e8 100644 --- a/python/extractor/tsg-python/tsp/src/node-types.json +++ b/python/extractor/tsg-python/tsp/src/node-types.json @@ -1811,6 +1811,16 @@ "type": "import_from_statement", "named": true, "fields": { + "is_lazy": { + "multiple": false, + "required": false, + "types": [ + { + "type": "lazy", + "named": false + } + ] + }, "module_name": { "multiple": false, "required": true, @@ -1860,6 +1870,16 @@ "type": "import_statement", "named": true, "fields": { + "is_lazy": { + "multiple": false, + "required": false, + "types": [ + { + "type": "lazy", + "named": false + } + ] + }, "name": { "multiple": true, "required": true, @@ -4154,6 +4174,10 @@ "type": "lambda", "named": false }, + { + "type": "lazy", + "named": false + }, { "type": "match", "named": false diff --git a/python/extractor/tsg-python/tsp/src/parser.c b/python/extractor/tsg-python/tsp/src/parser.c index 74a0d1440fbd..c0d6afc81eeb 100644 --- a/python/extractor/tsg-python/tsp/src/parser.c +++ b/python/extractor/tsg-python/tsp/src/parser.c @@ -7,317 +7,319 @@ #endif #define LANGUAGE_VERSION 14 -#define STATE_COUNT 1723 +#define STATE_COUNT 1734 #define LARGE_STATE_COUNT 156 -#define SYMBOL_COUNT 291 +#define SYMBOL_COUNT 292 #define ALIAS_COUNT 3 -#define TOKEN_COUNT 109 +#define TOKEN_COUNT 110 #define EXTERNAL_TOKEN_COUNT 7 -#define FIELD_COUNT 54 +#define FIELD_COUNT 55 #define MAX_ALIAS_SEQUENCE_LENGTH 10 #define MAX_RESERVED_WORD_SET_SIZE 0 -#define PRODUCTION_ID_COUNT 166 +#define PRODUCTION_ID_COUNT 170 #define SUPERTYPE_COUNT 0 enum ts_symbol_identifiers { sym_identifier = 1, - anon_sym_import = 2, - anon_sym_DOT = 3, - anon_sym_from = 4, - anon_sym___future__ = 5, - anon_sym_LPAREN = 6, - anon_sym_RPAREN = 7, - anon_sym_COMMA = 8, - anon_sym_as = 9, - anon_sym_STAR = 10, - anon_sym_print = 11, - anon_sym_GT_GT = 12, - anon_sym_assert = 13, - anon_sym_COLON_EQ = 14, - anon_sym_return = 15, - anon_sym_del = 16, - anon_sym_raise = 17, - anon_sym_pass = 18, - anon_sym_break = 19, - anon_sym_continue = 20, - anon_sym_if = 21, - anon_sym_COLON = 22, - anon_sym_elif = 23, - anon_sym_else = 24, - anon_sym_async = 25, - anon_sym_for = 26, - anon_sym_in = 27, - anon_sym_while = 28, - anon_sym_try = 29, - anon_sym_except = 30, - anon_sym_finally = 31, - anon_sym_with = 32, - anon_sym_match = 33, - anon_sym_case = 34, - anon_sym_PIPE = 35, - anon_sym_DASH = 36, - anon_sym_PLUS = 37, - sym_match_wildcard_pattern = 38, - anon_sym_LBRACK = 39, - anon_sym_RBRACK = 40, - anon_sym_LBRACE = 41, - anon_sym_RBRACE = 42, - anon_sym_STAR_STAR = 43, - anon_sym_EQ = 44, - anon_sym_def = 45, - anon_sym_DASH_GT = 46, - anon_sym_global = 47, - anon_sym_nonlocal = 48, - anon_sym_exec = 49, - anon_sym_type = 50, - anon_sym_class = 51, - anon_sym_AT = 52, - anon_sym_not = 53, - anon_sym_and = 54, - anon_sym_or = 55, - anon_sym_SLASH = 56, - anon_sym_PERCENT = 57, - anon_sym_SLASH_SLASH = 58, - anon_sym_AMP = 59, - anon_sym_CARET = 60, - anon_sym_LT_LT = 61, - anon_sym_TILDE = 62, - anon_sym_LT = 63, - anon_sym_LT_EQ = 64, - anon_sym_EQ_EQ = 65, - anon_sym_BANG_EQ = 66, - anon_sym_GT_EQ = 67, - anon_sym_GT = 68, - anon_sym_LT_GT = 69, - anon_sym_is = 70, - anon_sym_lambda = 71, - anon_sym_PLUS_EQ = 72, - anon_sym_DASH_EQ = 73, - anon_sym_STAR_EQ = 74, - anon_sym_SLASH_EQ = 75, - anon_sym_AT_EQ = 76, - anon_sym_SLASH_SLASH_EQ = 77, - anon_sym_PERCENT_EQ = 78, - anon_sym_STAR_STAR_EQ = 79, - anon_sym_GT_GT_EQ = 80, - anon_sym_LT_LT_EQ = 81, - anon_sym_AMP_EQ = 82, - anon_sym_CARET_EQ = 83, - anon_sym_PIPE_EQ = 84, - anon_sym_yield = 85, - sym_ellipsis = 86, - anon_sym_LBRACE2 = 87, - sym__escape_interpolation = 88, - sym_escape_sequence = 89, - anon_sym_BSLASH = 90, - anon_sym_COLON2 = 91, - aux_sym_format_specifier_token1 = 92, - sym_type_conversion = 93, - sym_integer = 94, - sym_float = 95, - anon_sym_await = 96, - sym_true = 97, - sym_false = 98, - sym_none = 99, - sym_comment = 100, - anon_sym_SEMI = 101, - sym__newline = 102, - sym__indent = 103, - sym__dedent = 104, - sym__string_start = 105, - sym__string_content = 106, - sym__string_end = 107, - sym__template_string_start = 108, - sym_module = 109, - sym__statement = 110, - sym__simple_statements = 111, - sym_import_statement = 112, - sym_import_prefix = 113, - sym_relative_import = 114, - sym_future_import_statement = 115, - sym_import_from_statement = 116, - sym__import_list = 117, - sym_aliased_import = 118, - sym_wildcard_import = 119, - sym_print_statement = 120, - sym_chevron = 121, - sym_assert_statement = 122, - sym_expression_statement = 123, - sym_named_expression = 124, - sym_return_statement = 125, - sym_delete_statement = 126, - sym_raise_statement = 127, - sym_pass_statement = 128, - sym_break_statement = 129, - sym_continue_statement = 130, - sym_if_statement = 131, - sym_elif_clause = 132, - sym_else_clause = 133, - sym_for_statement = 134, - sym_while_statement = 135, - sym_try_statement = 136, - sym_exception_list = 137, - sym_except_clause = 138, - sym_except_group_clause = 139, - sym_finally_clause = 140, - sym_with_statement = 141, - sym_with_clause = 142, - sym_with_item = 143, - sym_match_statement = 144, - sym_cases = 145, - sym_case_block = 146, - sym__match_patterns = 147, - sym_open_sequence_match_pattern = 148, - sym__match_pattern = 149, - sym_match_as_pattern = 150, - sym__match_or_pattern = 151, - sym_match_or_pattern = 152, - sym__closed_pattern = 153, - sym_match_literal_pattern = 154, - sym_match_capture_pattern = 155, - sym_match_value_pattern = 156, - sym_match_group_pattern = 157, - sym_match_sequence_pattern = 158, - sym__match_maybe_star_pattern = 159, - sym_match_star_pattern = 160, - sym_match_mapping_pattern = 161, - sym_match_double_star_pattern = 162, - sym_match_key_value_pattern = 163, - sym_match_class_pattern = 164, - sym_pattern_class_name = 165, - sym_match_positional_pattern = 166, - sym_match_keyword_pattern = 167, - sym_guard = 168, - sym_function_definition = 169, - sym_parameters = 170, - sym_lambda_parameters = 171, - sym_list_splat = 172, - sym_dictionary_splat = 173, - sym_global_statement = 174, - sym_nonlocal_statement = 175, - sym_exec_statement = 176, - sym_type_alias_statement = 177, - sym_class_definition = 178, - sym_type_parameters = 179, - sym__type_bound = 180, - sym_typevar_parameter = 181, - sym_typevartuple_parameter = 182, - sym_paramspec_parameter = 183, - sym__type_parameter = 184, - sym__type_param_default = 185, - sym_parenthesized_list_splat = 186, - sym_argument_list = 187, - sym_decorated_definition = 188, - sym_decorator = 189, - sym_block = 190, - sym_expression_list = 191, - sym_dotted_name = 192, - sym__parameters = 193, - sym__patterns = 194, - sym_parameter = 195, - sym_pattern = 196, - sym_tuple_pattern = 197, - sym_list_pattern = 198, - sym_default_parameter = 199, - sym_typed_default_parameter = 200, - sym_list_splat_pattern = 201, - sym_dictionary_splat_pattern = 202, - sym__expression_within_for_in_clause = 203, - sym_expression = 204, - sym_primary_expression = 205, - sym_not_operator = 206, - sym_boolean_operator = 207, - sym_binary_operator = 208, - sym_unary_operator = 209, - sym_comparison_operator = 210, - sym_lambda = 211, - sym_lambda_within_for_in_clause = 212, - sym_assignment = 213, - sym_augmented_assignment = 214, - sym_pattern_list = 215, - sym__right_hand_side = 216, - sym_yield = 217, - sym_attribute = 218, - sym__index_expression = 219, - sym_index_expression_list = 220, - sym_subscript = 221, - sym_slice = 222, - sym_call = 223, - sym_typed_parameter = 224, - sym_type = 225, - sym_keyword_argument = 226, - sym_list = 227, - sym_set = 228, - sym_tuple = 229, - sym_dictionary = 230, - sym_pair = 231, - sym_list_comprehension = 232, - sym_dictionary_comprehension = 233, - sym_set_comprehension = 234, - sym_generator_expression = 235, - sym__comprehension_clauses = 236, - sym_parenthesized_expression = 237, - sym__collection_elements = 238, - sym_for_in_clause = 239, - sym_if_clause = 240, - sym_conditional_expression = 241, - sym_concatenated_string = 242, - sym_string = 243, - sym_concatenated_template_string = 244, - sym_template_string = 245, - sym_string_content = 246, - sym_interpolation = 247, - sym__f_expression = 248, - sym__not_escape_sequence = 249, - sym_format_specifier = 250, - sym_await = 251, - sym_positional_separator = 252, - sym_keyword_separator = 253, - sym__semicolon = 254, - aux_sym_module_repeat1 = 255, - aux_sym__simple_statements_repeat1 = 256, - aux_sym_import_prefix_repeat1 = 257, - aux_sym__import_list_repeat1 = 258, - aux_sym_print_statement_repeat1 = 259, - aux_sym_assert_statement_repeat1 = 260, - aux_sym_if_statement_repeat1 = 261, - aux_sym_try_statement_repeat1 = 262, - aux_sym_try_statement_repeat2 = 263, - aux_sym_exception_list_repeat1 = 264, - aux_sym_with_clause_repeat1 = 265, - aux_sym_cases_repeat1 = 266, - aux_sym_open_sequence_match_pattern_repeat1 = 267, - aux_sym_match_or_pattern_repeat1 = 268, - aux_sym_match_value_pattern_repeat1 = 269, - aux_sym_match_mapping_pattern_repeat1 = 270, - aux_sym_match_class_pattern_repeat1 = 271, - aux_sym_match_class_pattern_repeat2 = 272, - aux_sym_global_statement_repeat1 = 273, - aux_sym_type_parameters_repeat1 = 274, - aux_sym_argument_list_repeat1 = 275, - aux_sym_decorated_definition_repeat1 = 276, - aux_sym_expression_list_repeat1 = 277, - aux_sym__parameters_repeat1 = 278, - aux_sym__patterns_repeat1 = 279, - aux_sym_comparison_operator_repeat1 = 280, - aux_sym_index_expression_list_repeat1 = 281, - aux_sym_dictionary_repeat1 = 282, - aux_sym__comprehension_clauses_repeat1 = 283, - aux_sym__collection_elements_repeat1 = 284, - aux_sym_for_in_clause_repeat1 = 285, - aux_sym_concatenated_string_repeat1 = 286, - aux_sym_string_repeat1 = 287, - aux_sym_concatenated_template_string_repeat1 = 288, - aux_sym_string_content_repeat1 = 289, - aux_sym_format_specifier_repeat1 = 290, - alias_sym_format_expression = 291, - anon_alias_sym_isnot = 292, - anon_alias_sym_notin = 293, + anon_sym_lazy = 2, + anon_sym_import = 3, + anon_sym_DOT = 4, + anon_sym_from = 5, + anon_sym___future__ = 6, + anon_sym_LPAREN = 7, + anon_sym_RPAREN = 8, + anon_sym_COMMA = 9, + anon_sym_as = 10, + anon_sym_STAR = 11, + anon_sym_print = 12, + anon_sym_GT_GT = 13, + anon_sym_assert = 14, + anon_sym_COLON_EQ = 15, + anon_sym_return = 16, + anon_sym_del = 17, + anon_sym_raise = 18, + anon_sym_pass = 19, + anon_sym_break = 20, + anon_sym_continue = 21, + anon_sym_if = 22, + anon_sym_COLON = 23, + anon_sym_elif = 24, + anon_sym_else = 25, + anon_sym_async = 26, + anon_sym_for = 27, + anon_sym_in = 28, + anon_sym_while = 29, + anon_sym_try = 30, + anon_sym_except = 31, + anon_sym_finally = 32, + anon_sym_with = 33, + anon_sym_match = 34, + anon_sym_case = 35, + anon_sym_PIPE = 36, + anon_sym_DASH = 37, + anon_sym_PLUS = 38, + sym_match_wildcard_pattern = 39, + anon_sym_LBRACK = 40, + anon_sym_RBRACK = 41, + anon_sym_LBRACE = 42, + anon_sym_RBRACE = 43, + anon_sym_STAR_STAR = 44, + anon_sym_EQ = 45, + anon_sym_def = 46, + anon_sym_DASH_GT = 47, + anon_sym_global = 48, + anon_sym_nonlocal = 49, + anon_sym_exec = 50, + anon_sym_type = 51, + anon_sym_class = 52, + anon_sym_AT = 53, + anon_sym_not = 54, + anon_sym_and = 55, + anon_sym_or = 56, + anon_sym_SLASH = 57, + anon_sym_PERCENT = 58, + anon_sym_SLASH_SLASH = 59, + anon_sym_AMP = 60, + anon_sym_CARET = 61, + anon_sym_LT_LT = 62, + anon_sym_TILDE = 63, + anon_sym_LT = 64, + anon_sym_LT_EQ = 65, + anon_sym_EQ_EQ = 66, + anon_sym_BANG_EQ = 67, + anon_sym_GT_EQ = 68, + anon_sym_GT = 69, + anon_sym_LT_GT = 70, + anon_sym_is = 71, + anon_sym_lambda = 72, + anon_sym_PLUS_EQ = 73, + anon_sym_DASH_EQ = 74, + anon_sym_STAR_EQ = 75, + anon_sym_SLASH_EQ = 76, + anon_sym_AT_EQ = 77, + anon_sym_SLASH_SLASH_EQ = 78, + anon_sym_PERCENT_EQ = 79, + anon_sym_STAR_STAR_EQ = 80, + anon_sym_GT_GT_EQ = 81, + anon_sym_LT_LT_EQ = 82, + anon_sym_AMP_EQ = 83, + anon_sym_CARET_EQ = 84, + anon_sym_PIPE_EQ = 85, + anon_sym_yield = 86, + sym_ellipsis = 87, + anon_sym_LBRACE2 = 88, + sym__escape_interpolation = 89, + sym_escape_sequence = 90, + anon_sym_BSLASH = 91, + anon_sym_COLON2 = 92, + aux_sym_format_specifier_token1 = 93, + sym_type_conversion = 94, + sym_integer = 95, + sym_float = 96, + anon_sym_await = 97, + sym_true = 98, + sym_false = 99, + sym_none = 100, + sym_comment = 101, + anon_sym_SEMI = 102, + sym__newline = 103, + sym__indent = 104, + sym__dedent = 105, + sym__string_start = 106, + sym__string_content = 107, + sym__string_end = 108, + sym__template_string_start = 109, + sym_module = 110, + sym__statement = 111, + sym__simple_statements = 112, + sym_import_statement = 113, + sym_import_prefix = 114, + sym_relative_import = 115, + sym_future_import_statement = 116, + sym_import_from_statement = 117, + sym__import_list = 118, + sym_aliased_import = 119, + sym_wildcard_import = 120, + sym_print_statement = 121, + sym_chevron = 122, + sym_assert_statement = 123, + sym_expression_statement = 124, + sym_named_expression = 125, + sym_return_statement = 126, + sym_delete_statement = 127, + sym_raise_statement = 128, + sym_pass_statement = 129, + sym_break_statement = 130, + sym_continue_statement = 131, + sym_if_statement = 132, + sym_elif_clause = 133, + sym_else_clause = 134, + sym_for_statement = 135, + sym_while_statement = 136, + sym_try_statement = 137, + sym_exception_list = 138, + sym_except_clause = 139, + sym_except_group_clause = 140, + sym_finally_clause = 141, + sym_with_statement = 142, + sym_with_clause = 143, + sym_with_item = 144, + sym_match_statement = 145, + sym_cases = 146, + sym_case_block = 147, + sym__match_patterns = 148, + sym_open_sequence_match_pattern = 149, + sym__match_pattern = 150, + sym_match_as_pattern = 151, + sym__match_or_pattern = 152, + sym_match_or_pattern = 153, + sym__closed_pattern = 154, + sym_match_literal_pattern = 155, + sym_match_capture_pattern = 156, + sym_match_value_pattern = 157, + sym_match_group_pattern = 158, + sym_match_sequence_pattern = 159, + sym__match_maybe_star_pattern = 160, + sym_match_star_pattern = 161, + sym_match_mapping_pattern = 162, + sym_match_double_star_pattern = 163, + sym_match_key_value_pattern = 164, + sym_match_class_pattern = 165, + sym_pattern_class_name = 166, + sym_match_positional_pattern = 167, + sym_match_keyword_pattern = 168, + sym_guard = 169, + sym_function_definition = 170, + sym_parameters = 171, + sym_lambda_parameters = 172, + sym_list_splat = 173, + sym_dictionary_splat = 174, + sym_global_statement = 175, + sym_nonlocal_statement = 176, + sym_exec_statement = 177, + sym_type_alias_statement = 178, + sym_class_definition = 179, + sym_type_parameters = 180, + sym__type_bound = 181, + sym_typevar_parameter = 182, + sym_typevartuple_parameter = 183, + sym_paramspec_parameter = 184, + sym__type_parameter = 185, + sym__type_param_default = 186, + sym_parenthesized_list_splat = 187, + sym_argument_list = 188, + sym_decorated_definition = 189, + sym_decorator = 190, + sym_block = 191, + sym_expression_list = 192, + sym_dotted_name = 193, + sym__parameters = 194, + sym__patterns = 195, + sym_parameter = 196, + sym_pattern = 197, + sym_tuple_pattern = 198, + sym_list_pattern = 199, + sym_default_parameter = 200, + sym_typed_default_parameter = 201, + sym_list_splat_pattern = 202, + sym_dictionary_splat_pattern = 203, + sym__expression_within_for_in_clause = 204, + sym_expression = 205, + sym_primary_expression = 206, + sym_not_operator = 207, + sym_boolean_operator = 208, + sym_binary_operator = 209, + sym_unary_operator = 210, + sym_comparison_operator = 211, + sym_lambda = 212, + sym_lambda_within_for_in_clause = 213, + sym_assignment = 214, + sym_augmented_assignment = 215, + sym_pattern_list = 216, + sym__right_hand_side = 217, + sym_yield = 218, + sym_attribute = 219, + sym__index_expression = 220, + sym_index_expression_list = 221, + sym_subscript = 222, + sym_slice = 223, + sym_call = 224, + sym_typed_parameter = 225, + sym_type = 226, + sym_keyword_argument = 227, + sym_list = 228, + sym_set = 229, + sym_tuple = 230, + sym_dictionary = 231, + sym_pair = 232, + sym_list_comprehension = 233, + sym_dictionary_comprehension = 234, + sym_set_comprehension = 235, + sym_generator_expression = 236, + sym__comprehension_clauses = 237, + sym_parenthesized_expression = 238, + sym__collection_elements = 239, + sym_for_in_clause = 240, + sym_if_clause = 241, + sym_conditional_expression = 242, + sym_concatenated_string = 243, + sym_string = 244, + sym_concatenated_template_string = 245, + sym_template_string = 246, + sym_string_content = 247, + sym_interpolation = 248, + sym__f_expression = 249, + sym__not_escape_sequence = 250, + sym_format_specifier = 251, + sym_await = 252, + sym_positional_separator = 253, + sym_keyword_separator = 254, + sym__semicolon = 255, + aux_sym_module_repeat1 = 256, + aux_sym__simple_statements_repeat1 = 257, + aux_sym_import_prefix_repeat1 = 258, + aux_sym__import_list_repeat1 = 259, + aux_sym_print_statement_repeat1 = 260, + aux_sym_assert_statement_repeat1 = 261, + aux_sym_if_statement_repeat1 = 262, + aux_sym_try_statement_repeat1 = 263, + aux_sym_try_statement_repeat2 = 264, + aux_sym_exception_list_repeat1 = 265, + aux_sym_with_clause_repeat1 = 266, + aux_sym_cases_repeat1 = 267, + aux_sym_open_sequence_match_pattern_repeat1 = 268, + aux_sym_match_or_pattern_repeat1 = 269, + aux_sym_match_value_pattern_repeat1 = 270, + aux_sym_match_mapping_pattern_repeat1 = 271, + aux_sym_match_class_pattern_repeat1 = 272, + aux_sym_match_class_pattern_repeat2 = 273, + aux_sym_global_statement_repeat1 = 274, + aux_sym_type_parameters_repeat1 = 275, + aux_sym_argument_list_repeat1 = 276, + aux_sym_decorated_definition_repeat1 = 277, + aux_sym_expression_list_repeat1 = 278, + aux_sym__parameters_repeat1 = 279, + aux_sym__patterns_repeat1 = 280, + aux_sym_comparison_operator_repeat1 = 281, + aux_sym_index_expression_list_repeat1 = 282, + aux_sym_dictionary_repeat1 = 283, + aux_sym__comprehension_clauses_repeat1 = 284, + aux_sym__collection_elements_repeat1 = 285, + aux_sym_for_in_clause_repeat1 = 286, + aux_sym_concatenated_string_repeat1 = 287, + aux_sym_string_repeat1 = 288, + aux_sym_concatenated_template_string_repeat1 = 289, + aux_sym_string_content_repeat1 = 290, + aux_sym_format_specifier_repeat1 = 291, + alias_sym_format_expression = 292, + anon_alias_sym_isnot = 293, + anon_alias_sym_notin = 294, }; static const char * const ts_symbol_names[] = { [ts_builtin_sym_end] = "end", [sym_identifier] = "identifier", + [anon_sym_lazy] = "lazy", [anon_sym_import] = "import", [anon_sym_DOT] = ".", [anon_sym_from] = "from", @@ -615,6 +617,7 @@ static const char * const ts_symbol_names[] = { static const TSSymbol ts_symbol_map[] = { [ts_builtin_sym_end] = ts_builtin_sym_end, [sym_identifier] = sym_identifier, + [anon_sym_lazy] = anon_sym_lazy, [anon_sym_import] = anon_sym_import, [anon_sym_DOT] = anon_sym_DOT, [anon_sym_from] = anon_sym_from, @@ -918,6 +921,10 @@ static const TSSymbolMetadata ts_symbol_metadata[] = { .visible = true, .named = true, }, + [anon_sym_lazy] = { + .visible = true, + .named = false, + }, [anon_sym_import] = { .visible = true, .named = false, @@ -2116,37 +2123,38 @@ enum ts_field_identifiers { field_imaginary = 21, field_inner = 22, field_interpolation = 23, - field_key = 24, - field_kwarg = 25, - field_left = 26, - field_module_name = 27, - field_name = 28, - field_object = 29, - field_operator = 30, - field_operators = 31, - field_parameters = 32, - field_pattern = 33, - field_prefix = 34, - field_prefix_operator = 35, - field_real = 36, - field_return_type = 37, - field_right = 38, - field_start = 39, - field_step = 40, - field_stop = 41, - field_string_content = 42, - field_subject = 43, - field_subscript = 44, - field_suffix = 45, - field_superclasses = 46, - field_target = 47, - field_test = 48, - field_trailing_comma = 49, - field_type = 50, - field_type_parameter = 51, - field_type_parameters = 52, - field_value = 53, - field_vararg = 54, + field_is_lazy = 24, + field_key = 25, + field_kwarg = 26, + field_left = 27, + field_module_name = 28, + field_name = 29, + field_object = 30, + field_operator = 31, + field_operators = 32, + field_parameters = 33, + field_pattern = 34, + field_prefix = 35, + field_prefix_operator = 36, + field_real = 37, + field_return_type = 38, + field_right = 39, + field_start = 40, + field_step = 41, + field_stop = 42, + field_string_content = 43, + field_subject = 44, + field_subscript = 45, + field_suffix = 46, + field_superclasses = 47, + field_target = 48, + field_test = 49, + field_trailing_comma = 50, + field_type = 51, + field_type_parameter = 52, + field_type_parameters = 53, + field_value = 54, + field_vararg = 55, }; static const char * const ts_field_names[] = { @@ -2174,6 +2182,7 @@ static const char * const ts_field_names[] = { [field_imaginary] = "imaginary", [field_inner] = "inner", [field_interpolation] = "interpolation", + [field_is_lazy] = "is_lazy", [field_key] = "key", [field_kwarg] = "kwarg", [field_left] = "left", @@ -2229,147 +2238,151 @@ static const TSMapSlice ts_field_map_slices[PRODUCTION_ID_COUNT] = { [20] = {.index = 21, .length = 4}, [21] = {.index = 25, .length = 4}, [22] = {.index = 29, .length = 2}, - [23] = {.index = 31, .length = 1}, - [24] = {.index = 32, .length = 2}, - [25] = {.index = 34, .length = 2}, - [26] = {.index = 36, .length = 1}, - [27] = {.index = 37, .length = 2}, - [28] = {.index = 39, .length = 1}, - [29] = {.index = 40, .length = 2}, - [30] = {.index = 42, .length = 1}, - [31] = {.index = 43, .length = 1}, - [32] = {.index = 44, .length = 1}, - [33] = {.index = 45, .length = 1}, - [34] = {.index = 45, .length = 1}, - [35] = {.index = 37, .length = 2}, - [36] = {.index = 46, .length = 2}, + [23] = {.index = 31, .length = 2}, + [24] = {.index = 33, .length = 2}, + [25] = {.index = 35, .length = 1}, + [26] = {.index = 36, .length = 2}, + [27] = {.index = 38, .length = 2}, + [28] = {.index = 40, .length = 1}, + [29] = {.index = 41, .length = 1}, + [30] = {.index = 42, .length = 2}, + [31] = {.index = 44, .length = 1}, + [32] = {.index = 45, .length = 1}, + [33] = {.index = 46, .length = 1}, + [34] = {.index = 47, .length = 1}, + [35] = {.index = 47, .length = 1}, + [36] = {.index = 31, .length = 2}, [37] = {.index = 48, .length = 2}, [38] = {.index = 50, .length = 2}, - [39] = {.index = 52, .length = 3}, - [40] = {.index = 55, .length = 2}, - [41] = {.index = 57, .length = 1}, - [42] = {.index = 58, .length = 2}, - [43] = {.index = 60, .length = 1}, - [44] = {.index = 61, .length = 2}, + [39] = {.index = 52, .length = 2}, + [40] = {.index = 54, .length = 3}, + [41] = {.index = 57, .length = 2}, + [42] = {.index = 59, .length = 1}, + [43] = {.index = 60, .length = 2}, + [44] = {.index = 62, .length = 1}, [45] = {.index = 63, .length = 2}, - [46] = {.index = 65, .length = 1}, - [47] = {.index = 66, .length = 2}, - [48] = {.index = 68, .length = 1}, - [50] = {.index = 69, .length = 3}, - [51] = {.index = 72, .length = 1}, - [52] = {.index = 73, .length = 2}, - [53] = {.index = 75, .length = 1}, - [54] = {.index = 76, .length = 2}, + [46] = {.index = 65, .length = 2}, + [47] = {.index = 67, .length = 1}, + [48] = {.index = 68, .length = 2}, + [49] = {.index = 70, .length = 1}, + [51] = {.index = 71, .length = 3}, + [52] = {.index = 74, .length = 1}, + [53] = {.index = 75, .length = 2}, + [54] = {.index = 77, .length = 1}, [55] = {.index = 78, .length = 2}, - [56] = {.index = 44, .length = 1}, - [57] = {.index = 80, .length = 1}, - [58] = {.index = 81, .length = 2}, + [56] = {.index = 80, .length = 2}, + [57] = {.index = 46, .length = 1}, + [58] = {.index = 82, .length = 1}, [59] = {.index = 83, .length = 2}, - [60] = {.index = 83, .length = 2}, + [60] = {.index = 85, .length = 2}, [61] = {.index = 85, .length = 2}, [62] = {.index = 87, .length = 2}, [63] = {.index = 89, .length = 2}, [64] = {.index = 91, .length = 2}, - [65] = {.index = 93, .length = 1}, - [66] = {.index = 94, .length = 2}, - [67] = {.index = 43, .length = 1}, - [68] = {.index = 96, .length = 1}, - [69] = {.index = 97, .length = 1}, - [70] = {.index = 98, .length = 2}, + [65] = {.index = 93, .length = 2}, + [66] = {.index = 95, .length = 1}, + [67] = {.index = 96, .length = 2}, + [68] = {.index = 45, .length = 1}, + [69] = {.index = 98, .length = 1}, + [70] = {.index = 99, .length = 1}, [71] = {.index = 100, .length = 2}, - [72] = {.index = 100, .length = 2}, - [74] = {.index = 102, .length = 1}, - [75] = {.index = 103, .length = 3}, - [76] = {.index = 106, .length = 3}, - [77] = {.index = 109, .length = 3}, - [78] = {.index = 112, .length = 1}, + [72] = {.index = 102, .length = 2}, + [73] = {.index = 102, .length = 2}, + [75] = {.index = 104, .length = 3}, + [76] = {.index = 107, .length = 2}, + [77] = {.index = 109, .length = 1}, + [78] = {.index = 110, .length = 3}, [79] = {.index = 113, .length = 3}, [80] = {.index = 116, .length = 3}, - [81] = {.index = 119, .length = 2}, - [82] = {.index = 121, .length = 2}, - [83] = {.index = 123, .length = 1}, - [84] = {.index = 124, .length = 2}, - [85] = {.index = 126, .length = 2}, - [86] = {.index = 128, .length = 1}, - [87] = {.index = 129, .length = 3}, - [88] = {.index = 132, .length = 3}, - [89] = {.index = 135, .length = 3}, - [90] = {.index = 138, .length = 3}, - [91] = {.index = 141, .length = 3}, - [92] = {.index = 144, .length = 3}, - [93] = {.index = 85, .length = 2}, - [94] = {.index = 147, .length = 1}, - [95] = {.index = 148, .length = 2}, - [96] = {.index = 150, .length = 1}, - [97] = {.index = 151, .length = 2}, - [98] = {.index = 153, .length = 2}, - [99] = {.index = 155, .length = 4}, - [100] = {.index = 159, .length = 2}, - [101] = {.index = 161, .length = 4}, - [102] = {.index = 165, .length = 4}, - [103] = {.index = 169, .length = 2}, - [104] = {.index = 171, .length = 3}, - [105] = {.index = 174, .length = 3}, - [106] = {.index = 177, .length = 4}, - [107] = {.index = 181, .length = 2}, - [108] = {.index = 183, .length = 2}, - [109] = {.index = 185, .length = 1}, - [110] = {.index = 186, .length = 1}, - [111] = {.index = 187, .length = 3}, - [112] = {.index = 190, .length = 2}, - [113] = {.index = 192, .length = 2}, - [114] = {.index = 194, .length = 4}, - [115] = {.index = 198, .length = 4}, - [116] = {.index = 202, .length = 4}, - [117] = {.index = 206, .length = 4}, - [118] = {.index = 210, .length = 4}, - [119] = {.index = 214, .length = 3}, - [120] = {.index = 217, .length = 2}, - [121] = {.index = 219, .length = 2}, - [122] = {.index = 221, .length = 2}, - [123] = {.index = 223, .length = 3}, - [124] = {.index = 226, .length = 5}, - [125] = {.index = 231, .length = 3}, - [126] = {.index = 234, .length = 4}, - [127] = {.index = 238, .length = 4}, - [128] = {.index = 242, .length = 4}, - [129] = {.index = 246, .length = 4}, - [130] = {.index = 250, .length = 2}, - [131] = {.index = 252, .length = 1}, - [132] = {.index = 253, .length = 3}, - [133] = {.index = 256, .length = 1}, - [134] = {.index = 257, .length = 2}, - [135] = {.index = 259, .length = 2}, - [136] = {.index = 261, .length = 1}, - [137] = {.index = 262, .length = 4}, - [138] = {.index = 266, .length = 5}, - [139] = {.index = 271, .length = 5}, - [140] = {.index = 276, .length = 3}, - [141] = {.index = 279, .length = 3}, - [142] = {.index = 282, .length = 4}, - [143] = {.index = 286, .length = 4}, - [144] = {.index = 290, .length = 4}, - [145] = {.index = 294, .length = 5}, - [146] = {.index = 299, .length = 5}, - [147] = {.index = 304, .length = 2}, - [148] = {.index = 306, .length = 3}, - [149] = {.index = 309, .length = 4}, - [150] = {.index = 313, .length = 3}, - [151] = {.index = 316, .length = 3}, - [152] = {.index = 319, .length = 5}, - [153] = {.index = 324, .length = 5}, - [154] = {.index = 329, .length = 5}, - [155] = {.index = 334, .length = 5}, - [156] = {.index = 339, .length = 5}, - [157] = {.index = 344, .length = 3}, - [158] = {.index = 347, .length = 3}, - [159] = {.index = 350, .length = 4}, - [160] = {.index = 354, .length = 2}, - [161] = {.index = 356, .length = 6}, - [162] = {.index = 362, .length = 6}, - [163] = {.index = 368, .length = 3}, - [164] = {.index = 371, .length = 4}, - [165] = {.index = 375, .length = 4}, + [81] = {.index = 119, .length = 1}, + [82] = {.index = 120, .length = 3}, + [83] = {.index = 123, .length = 3}, + [84] = {.index = 126, .length = 2}, + [85] = {.index = 128, .length = 2}, + [86] = {.index = 130, .length = 1}, + [87] = {.index = 131, .length = 2}, + [88] = {.index = 133, .length = 2}, + [89] = {.index = 135, .length = 1}, + [90] = {.index = 136, .length = 3}, + [91] = {.index = 139, .length = 3}, + [92] = {.index = 142, .length = 3}, + [93] = {.index = 145, .length = 3}, + [94] = {.index = 148, .length = 3}, + [95] = {.index = 151, .length = 3}, + [96] = {.index = 87, .length = 2}, + [97] = {.index = 154, .length = 1}, + [98] = {.index = 155, .length = 2}, + [99] = {.index = 157, .length = 1}, + [100] = {.index = 158, .length = 2}, + [101] = {.index = 160, .length = 2}, + [102] = {.index = 162, .length = 4}, + [103] = {.index = 166, .length = 2}, + [104] = {.index = 168, .length = 4}, + [105] = {.index = 172, .length = 4}, + [106] = {.index = 176, .length = 2}, + [107] = {.index = 178, .length = 3}, + [108] = {.index = 181, .length = 3}, + [109] = {.index = 184, .length = 4}, + [110] = {.index = 188, .length = 2}, + [111] = {.index = 190, .length = 2}, + [112] = {.index = 192, .length = 1}, + [113] = {.index = 193, .length = 1}, + [114] = {.index = 194, .length = 3}, + [115] = {.index = 197, .length = 2}, + [116] = {.index = 199, .length = 2}, + [117] = {.index = 201, .length = 4}, + [118] = {.index = 205, .length = 4}, + [119] = {.index = 209, .length = 4}, + [120] = {.index = 213, .length = 4}, + [121] = {.index = 217, .length = 4}, + [122] = {.index = 221, .length = 3}, + [123] = {.index = 224, .length = 2}, + [124] = {.index = 226, .length = 2}, + [125] = {.index = 228, .length = 3}, + [126] = {.index = 231, .length = 2}, + [127] = {.index = 233, .length = 3}, + [128] = {.index = 236, .length = 5}, + [129] = {.index = 241, .length = 3}, + [130] = {.index = 244, .length = 4}, + [131] = {.index = 248, .length = 4}, + [132] = {.index = 252, .length = 4}, + [133] = {.index = 256, .length = 4}, + [134] = {.index = 260, .length = 2}, + [135] = {.index = 262, .length = 1}, + [136] = {.index = 263, .length = 3}, + [137] = {.index = 266, .length = 1}, + [138] = {.index = 267, .length = 2}, + [139] = {.index = 269, .length = 2}, + [140] = {.index = 271, .length = 1}, + [141] = {.index = 272, .length = 4}, + [142] = {.index = 276, .length = 5}, + [143] = {.index = 281, .length = 5}, + [144] = {.index = 286, .length = 3}, + [145] = {.index = 289, .length = 3}, + [146] = {.index = 292, .length = 4}, + [147] = {.index = 296, .length = 4}, + [148] = {.index = 300, .length = 4}, + [149] = {.index = 304, .length = 5}, + [150] = {.index = 309, .length = 5}, + [151] = {.index = 314, .length = 2}, + [152] = {.index = 316, .length = 3}, + [153] = {.index = 319, .length = 4}, + [154] = {.index = 323, .length = 3}, + [155] = {.index = 326, .length = 3}, + [156] = {.index = 329, .length = 5}, + [157] = {.index = 334, .length = 5}, + [158] = {.index = 339, .length = 5}, + [159] = {.index = 344, .length = 5}, + [160] = {.index = 349, .length = 5}, + [161] = {.index = 354, .length = 3}, + [162] = {.index = 357, .length = 3}, + [163] = {.index = 360, .length = 4}, + [164] = {.index = 364, .length = 2}, + [165] = {.index = 366, .length = 6}, + [166] = {.index = 372, .length = 6}, + [167] = {.index = 378, .length = 3}, + [168] = {.index = 381, .length = 4}, + [169] = {.index = 385, .length = 4}, }; static const TSFieldMapEntry ts_field_map_entries[] = { @@ -2422,486 +2435,500 @@ static const TSFieldMapEntry ts_field_map_entries[] = { {field_string_content, 0, .inherited = true}, {field_string_content, 1, .inherited = true}, [29] = + {field_is_lazy, 0}, + {field_name, 2, .inherited = true}, + [31] = + {field_name, 0}, + {field_value, 2}, + [33] = {field_name, 0}, {field_name, 1, .inherited = true}, - [31] = + [35] = {field_name, 1}, - [32] = + [36] = {field_element, 0}, {field_trailing_comma, 1}, - [34] = + [38] = {field_element, 1, .inherited = true}, {field_trailing_comma, 1, .inherited = true}, - [36] = + [40] = {field_inner, 1}, - [37] = - {field_name, 0}, - {field_value, 2}, - [39] = + [41] = {field_argument, 2, .inherited = true}, - [40] = + [42] = {field_argument, 1}, {field_argument, 2, .inherited = true}, - [42] = + [44] = {field_cause, 2}, - [43] = + [45] = {field_element, 1}, - [44] = + [46] = {field_body, 2}, - [45] = + [47] = {field_kwarg, 1}, - [46] = + [48] = {field_element, 0, .inherited = true}, {field_element, 1, .inherited = true}, - [48] = + [50] = {field_left, 0}, {field_type, 2}, - [50] = + [52] = {field_left, 0}, {field_right, 2}, - [52] = + [54] = {field_left, 0}, {field_operator, 1}, {field_right, 2}, - [55] = + [57] = {field_attribute, 2}, {field_object, 0}, - [57] = + [59] = {field_operators, 0}, - [58] = + [60] = {field_operators, 0, .inherited = true}, {field_operators, 1, .inherited = true}, - [60] = + [62] = {field_expression, 1}, - [61] = + [63] = {field_name, 0, .inherited = true}, {field_name, 1, .inherited = true}, - [63] = + [65] = {field_alias, 2}, {field_name, 0}, - [65] = + [67] = {field_name, 3, .inherited = true}, - [66] = + [68] = {field_module_name, 1}, {field_name, 3, .inherited = true}, - [68] = + [70] = {field_module_name, 1}, - [69] = + [71] = {field_element, 0}, {field_element, 1, .inherited = true}, {field_trailing_comma, 2}, - [72] = + [74] = {field_body, 1}, - [73] = + [75] = {field_argument, 0, .inherited = true}, {field_argument, 1, .inherited = true}, - [75] = + [77] = {field_cause, 3}, - [76] = + [78] = {field_condition, 1}, {field_consequence, 3}, - [78] = + [80] = {field_body, 3}, {field_condition, 1}, - [80] = + [82] = {field_body, 3}, - [81] = + [83] = {field_alias, 2}, {field_value, 0}, - [83] = + [85] = {field_cases, 3}, {field_subject, 1}, - [85] = + [87] = {field_element, 1}, {field_element, 2, .inherited = true}, - [87] = + [89] = {field_key, 0}, {field_value, 2}, - [89] = + [91] = {field_name, 1}, {field_value, 3}, - [91] = + [93] = {field_body, 3}, {field_name, 1}, - [93] = + [95] = {field_type, 2}, - [94] = + [96] = {field_body, 3}, {field_parameters, 1}, - [96] = + [98] = {field_stop, 1}, - [97] = + [99] = {field_start, 0}, - [98] = + [100] = {field_subscript, 2}, {field_value, 0}, - [100] = + [102] = {field_operators, 0}, {field_operators, 1}, - [102] = + [104] = + {field_is_lazy, 0}, + {field_module_name, 2}, + {field_name, 4, .inherited = true}, + [107] = + {field_is_lazy, 0}, + {field_module_name, 2}, + [109] = {field_alternative, 0}, - [103] = + [110] = {field_alternative, 4}, {field_condition, 1}, {field_consequence, 3}, - [106] = + [113] = {field_alternative, 4, .inherited = true}, {field_condition, 1}, {field_consequence, 3}, - [109] = + [116] = {field_condition, 1}, {field_consequence, 3}, {field_consequence, 4}, - [112] = + [119] = {field_body, 4}, - [113] = + [120] = {field_alternative, 4}, {field_body, 3}, {field_condition, 1}, - [116] = + [123] = {field_body, 3}, {field_body, 4}, {field_condition, 1}, - [119] = + [126] = {field_body, 2}, {field_body, 3}, - [121] = + [128] = {field_body, 3}, {field_body, 4}, - [123] = + [130] = {field_real, 0}, - [124] = + [131] = {field_bound, 1, .inherited = true}, {field_name, 0}, - [126] = + [133] = {field_default, 1, .inherited = true}, {field_name, 0}, - [128] = + [135] = {field_type_parameter, 1}, - [129] = + [136] = {field_body, 4}, {field_name, 1}, {field_parameters, 2}, - [132] = + [139] = {field_name, 1}, {field_type_parameters, 2}, {field_value, 4}, - [135] = + [142] = {field_body, 3}, {field_body, 4}, {field_name, 1}, - [138] = + [145] = {field_body, 4}, {field_name, 1}, {field_type_parameters, 2}, - [141] = + [148] = {field_body, 4}, {field_name, 1}, {field_superclasses, 2}, - [144] = + [151] = {field_left, 0}, {field_right, 4}, {field_type, 2}, - [147] = + [154] = {field_step, 2}, - [148] = + [155] = {field_start, 0}, {field_stop, 2}, - [150] = + [157] = {field_name, 4, .inherited = true}, - [151] = + [158] = {field_module_name, 1}, {field_name, 4, .inherited = true}, - [153] = + [160] = {field_left, 1}, {field_right, 3}, - [155] = + [162] = {field_alternative, 4, .inherited = true}, {field_alternative, 5}, {field_condition, 1}, {field_consequence, 3}, - [159] = + [166] = {field_alternative, 0, .inherited = true}, {field_alternative, 1, .inherited = true}, - [161] = + [168] = {field_alternative, 5}, {field_condition, 1}, {field_consequence, 3}, {field_consequence, 4}, - [165] = + [172] = {field_alternative, 5, .inherited = true}, {field_condition, 1}, {field_consequence, 3}, {field_consequence, 4}, - [169] = + [176] = {field_body, 4}, {field_body, 5}, - [171] = + [178] = {field_body, 5}, {field_name, 2}, {field_parameters, 3}, - [174] = + [181] = {field_body, 5}, {field_left, 1}, {field_right, 3}, - [177] = + [184] = {field_alternative, 5}, {field_body, 3}, {field_body, 4}, {field_condition, 1}, - [181] = + [188] = {field_prefix_operator, 0}, {field_real, 1}, - [183] = + [190] = {field_default, 2, .inherited = true}, {field_name, 1}, - [185] = + [192] = {field_bound, 1}, - [186] = + [193] = {field_default, 1}, - [187] = + [194] = {field_bound, 1, .inherited = true}, {field_default, 2, .inherited = true}, {field_name, 0}, - [190] = + [197] = {field_type_parameter, 1}, {field_type_parameter, 2, .inherited = true}, - [192] = + [199] = {field_type_parameter, 0, .inherited = true}, {field_type_parameter, 1, .inherited = true}, - [194] = + [201] = {field_body, 4}, {field_body, 5}, {field_name, 1}, {field_parameters, 2}, - [198] = + [205] = {field_body, 5}, {field_name, 1}, {field_parameters, 3}, {field_type_parameters, 2}, - [202] = + [209] = {field_body, 4}, {field_body, 5}, {field_name, 1}, {field_type_parameters, 2}, - [206] = + [213] = {field_body, 5}, {field_name, 1}, {field_superclasses, 3}, {field_type_parameters, 2}, - [210] = + [217] = {field_body, 4}, {field_body, 5}, {field_name, 1}, {field_superclasses, 2}, - [214] = + [221] = {field_name, 0}, {field_type, 2}, {field_value, 4}, - [217] = + [224] = {field_step, 3}, {field_stop, 1}, - [219] = + [226] = {field_start, 0}, {field_step, 3}, - [221] = + [228] = + {field_is_lazy, 0}, + {field_module_name, 2}, + {field_name, 5, .inherited = true}, + [231] = {field_left, 2}, {field_right, 4}, - [223] = + [233] = {field_left, 1}, {field_right, 3}, {field_right, 4}, - [226] = + [236] = {field_alternative, 5, .inherited = true}, {field_alternative, 6}, {field_condition, 1}, {field_consequence, 3}, {field_consequence, 4}, - [231] = + [241] = {field_body, 6}, {field_left, 2}, {field_right, 4}, - [234] = + [244] = {field_body, 5}, {field_body, 6}, {field_name, 2}, {field_parameters, 3}, - [238] = + [248] = {field_body, 6}, {field_name, 2}, {field_parameters, 4}, {field_type_parameters, 3}, - [242] = + [252] = {field_alternative, 6}, {field_body, 5}, {field_left, 1}, {field_right, 3}, - [246] = + [256] = {field_body, 5}, {field_body, 6}, {field_left, 1}, {field_right, 3}, - [250] = + [260] = {field_body, 3}, {field_type, 1}, - [252] = + [262] = {field_content, 1}, - [253] = + [263] = {field_imaginary, 2}, {field_operator, 1}, {field_real, 0}, - [256] = + [266] = {field_test, 1}, - [257] = + [267] = {field_body, 3}, {field_pattern, 1}, - [259] = + [269] = {field_alias, 2}, {field_pattern, 0}, - [261] = + [271] = {field_class, 0}, - [262] = + [272] = {field_body, 6}, {field_name, 1}, {field_parameters, 2}, {field_return_type, 4}, - [266] = + [276] = {field_body, 5}, {field_body, 6}, {field_name, 1}, {field_parameters, 3}, {field_type_parameters, 2}, - [271] = + [281] = {field_body, 5}, {field_body, 6}, {field_name, 1}, {field_superclasses, 3}, {field_type_parameters, 2}, - [276] = + [286] = {field_start, 0}, {field_step, 4}, {field_stop, 2}, - [279] = + [289] = {field_left, 2}, {field_right, 4}, {field_right, 5}, - [282] = + [292] = {field_alternative, 7}, {field_body, 6}, {field_left, 2}, {field_right, 4}, - [286] = + [296] = {field_body, 6}, {field_body, 7}, {field_left, 2}, {field_right, 4}, - [290] = + [300] = {field_body, 7}, {field_name, 2}, {field_parameters, 3}, {field_return_type, 5}, - [294] = + [304] = {field_body, 6}, {field_body, 7}, {field_name, 2}, {field_parameters, 4}, {field_type_parameters, 3}, - [299] = + [309] = {field_alternative, 7}, {field_body, 5}, {field_body, 6}, {field_left, 1}, {field_right, 3}, - [304] = + [314] = {field_body, 4}, {field_type, 2}, - [306] = + [316] = {field_body, 3}, {field_body, 4}, {field_type, 1}, - [309] = + [319] = {field_imaginary, 3}, {field_operator, 2}, {field_prefix_operator, 0}, {field_real, 1}, - [313] = + [323] = {field_body, 3}, {field_body, 4}, {field_pattern, 1}, - [316] = + [326] = {field_body, 4}, {field_guard, 2}, {field_pattern, 1}, - [319] = + [329] = {field_body, 6}, {field_body, 7}, {field_name, 1}, {field_parameters, 2}, {field_return_type, 4}, - [324] = + [334] = {field_body, 7}, {field_name, 1}, {field_parameters, 3}, {field_return_type, 5}, {field_type_parameters, 2}, - [329] = + [339] = {field_alternative, 8}, {field_body, 6}, {field_body, 7}, {field_left, 2}, {field_right, 4}, - [334] = + [344] = {field_body, 7}, {field_body, 8}, {field_name, 2}, {field_parameters, 3}, {field_return_type, 5}, - [339] = + [349] = {field_body, 8}, {field_name, 2}, {field_parameters, 4}, {field_return_type, 6}, {field_type_parameters, 3}, - [344] = + [354] = {field_body, 4}, {field_body, 5}, {field_type, 2}, - [347] = + [357] = {field_alias, 3}, {field_body, 5}, {field_type, 1}, - [350] = + [360] = {field_body, 4}, {field_body, 5}, {field_guard, 2}, {field_pattern, 1}, - [354] = + [364] = {field_attribute, 0}, {field_value, 2}, - [356] = + [366] = {field_body, 7}, {field_body, 8}, {field_name, 1}, {field_parameters, 3}, {field_return_type, 5}, {field_type_parameters, 2}, - [362] = + [372] = {field_body, 8}, {field_body, 9}, {field_name, 2}, {field_parameters, 4}, {field_return_type, 6}, {field_type_parameters, 3}, - [368] = + [378] = {field_alias, 4}, {field_body, 6}, {field_type, 2}, - [371] = + [381] = {field_alias, 3}, {field_body, 5}, {field_body, 6}, {field_type, 1}, - [375] = + [385] = {field_alias, 4}, {field_body, 6}, {field_body, 7}, @@ -2916,126 +2943,126 @@ static const TSSymbol ts_alias_sequences[PRODUCTION_ID_COUNT][MAX_ALIAS_SEQUENCE [8] = { [1] = sym_identifier, }, - [27] = { + [23] = { [0] = sym_identifier, }, - [33] = { + [34] = { [1] = sym_identifier, }, - [49] = { + [50] = { [1] = sym_parenthesized_expression, }, - [54] = { - [3] = sym_block, - }, [55] = { [3] = sym_block, }, [56] = { - [2] = sym_block, + [3] = sym_block, }, [57] = { + [2] = sym_block, + }, + [58] = { [3] = sym_block, }, - [59] = { + [60] = { [1] = sym_tuple, }, - [64] = { + [65] = { [3] = sym_block, }, - [67] = { + [68] = { [1] = sym_parenthesized_expression, }, - [71] = { + [72] = { [0] = anon_alias_sym_notin, [1] = anon_alias_sym_notin, }, - [72] = { + [73] = { [0] = anon_alias_sym_isnot, [1] = anon_alias_sym_isnot, }, - [73] = { + [74] = { [0] = alias_sym_format_expression, }, - [75] = { + [78] = { [3] = sym_block, }, - [76] = { + [79] = { [3] = sym_block, }, - [78] = { + [81] = { [4] = sym_block, }, - [79] = { + [82] = { [3] = sym_block, }, - [87] = { + [90] = { [4] = sym_block, }, - [90] = { + [93] = { [4] = sym_block, }, - [91] = { + [94] = { [4] = sym_block, }, - [93] = { + [96] = { [1] = sym_parenthesized_expression, }, - [99] = { + [102] = { [3] = sym_block, }, - [104] = { + [107] = { [5] = sym_block, }, - [105] = { + [108] = { [5] = sym_block, }, - [115] = { + [118] = { [5] = sym_block, }, - [117] = { + [120] = { [5] = sym_block, }, - [125] = { + [129] = { [6] = sym_block, }, - [127] = { + [131] = { [6] = sym_block, }, - [128] = { + [132] = { [5] = sym_block, }, - [130] = { + [134] = { [3] = sym_block, }, - [134] = { + [138] = { [3] = sym_block, }, - [137] = { + [141] = { [6] = sym_block, }, - [142] = { + [146] = { [6] = sym_block, }, - [144] = { + [148] = { [7] = sym_block, }, - [147] = { + [151] = { [4] = sym_block, }, - [151] = { + [155] = { [4] = sym_block, }, - [153] = { + [157] = { [7] = sym_block, }, - [156] = { + [160] = { [8] = sym_block, }, - [158] = { + [162] = { [5] = sym_block, }, - [163] = { + [167] = { [6] = sym_block, }, }; @@ -3088,41 +3115,41 @@ static const TSStateId ts_primary_state_ids[STATE_COUNT] = { [28] = 28, [29] = 29, [30] = 30, - [31] = 3, + [31] = 31, [32] = 5, - [33] = 6, - [34] = 7, - [35] = 8, - [36] = 9, - [37] = 10, - [38] = 11, - [39] = 12, - [40] = 13, - [41] = 14, - [42] = 15, - [43] = 16, - [44] = 17, - [45] = 18, - [46] = 19, - [47] = 20, - [48] = 21, - [49] = 22, - [50] = 23, - [51] = 24, - [52] = 25, - [53] = 26, - [54] = 27, - [55] = 28, - [56] = 56, - [57] = 29, - [58] = 30, - [59] = 56, + [33] = 7, + [34] = 8, + [35] = 9, + [36] = 10, + [37] = 11, + [38] = 12, + [39] = 13, + [40] = 14, + [41] = 15, + [42] = 16, + [43] = 17, + [44] = 18, + [45] = 19, + [46] = 20, + [47] = 21, + [48] = 22, + [49] = 23, + [50] = 24, + [51] = 25, + [52] = 26, + [53] = 27, + [54] = 28, + [55] = 29, + [56] = 30, + [57] = 31, + [58] = 3, + [59] = 6, [60] = 60, - [61] = 61, + [61] = 60, [62] = 62, - [63] = 61, + [63] = 63, [64] = 60, - [65] = 61, + [65] = 63, [66] = 66, [67] = 66, [68] = 68, @@ -3131,84 +3158,84 @@ static const TSStateId ts_primary_state_ids[STATE_COUNT] = { [71] = 71, [72] = 72, [73] = 73, - [74] = 74, + [74] = 71, [75] = 75, [76] = 76, [77] = 77, [78] = 78, [79] = 79, - [80] = 80, + [80] = 68, [81] = 81, [82] = 82, [83] = 83, [84] = 84, - [85] = 71, - [86] = 72, + [85] = 76, + [86] = 86, [87] = 87, - [88] = 74, - [89] = 75, - [90] = 80, - [91] = 82, - [92] = 92, - [93] = 83, - [94] = 94, - [95] = 87, - [96] = 84, - [97] = 94, - [98] = 98, - [99] = 76, + [88] = 88, + [89] = 69, + [90] = 70, + [91] = 91, + [92] = 72, + [93] = 78, + [94] = 79, + [95] = 95, + [96] = 82, + [97] = 97, + [98] = 77, + [99] = 91, [100] = 100, - [101] = 100, - [102] = 102, - [103] = 77, - [104] = 104, + [101] = 95, + [102] = 97, + [103] = 103, + [104] = 103, [105] = 105, - [106] = 102, - [107] = 107, - [108] = 104, - [109] = 105, + [106] = 105, + [107] = 81, + [108] = 108, + [109] = 108, [110] = 110, - [111] = 78, + [111] = 83, [112] = 112, - [113] = 79, - [114] = 107, + [113] = 110, + [114] = 84, [115] = 115, - [116] = 116, - [117] = 110, - [118] = 92, - [119] = 70, - [120] = 112, - [121] = 81, - [122] = 73, - [123] = 115, - [124] = 69, - [125] = 116, - [126] = 98, + [116] = 112, + [117] = 117, + [118] = 73, + [119] = 115, + [120] = 100, + [121] = 86, + [122] = 117, + [123] = 87, + [124] = 124, + [125] = 88, + [126] = 124, [127] = 127, - [128] = 128, - [129] = 128, - [130] = 127, - [131] = 128, - [132] = 127, + [128] = 127, + [129] = 127, + [130] = 130, + [131] = 130, + [132] = 130, [133] = 133, [134] = 134, [135] = 135, [136] = 136, [137] = 137, [138] = 136, - [139] = 139, + [139] = 136, [140] = 136, - [141] = 136, + [141] = 141, [142] = 142, [143] = 137, - [144] = 136, - [145] = 137, - [146] = 146, - [147] = 136, - [148] = 134, + [144] = 135, + [145] = 145, + [146] = 136, + [147] = 137, + [148] = 136, [149] = 137, - [150] = 137, - [151] = 146, + [150] = 145, + [151] = 137, [152] = 137, [153] = 153, [154] = 154, @@ -3217,10 +3244,10 @@ static const TSStateId ts_primary_state_ids[STATE_COUNT] = { [157] = 157, [158] = 158, [159] = 159, - [160] = 157, - [161] = 161, - [162] = 159, - [163] = 157, + [160] = 160, + [161] = 156, + [162] = 157, + [163] = 156, [164] = 164, [165] = 164, [166] = 164, @@ -3231,96 +3258,96 @@ static const TSStateId ts_primary_state_ids[STATE_COUNT] = { [171] = 171, [172] = 172, [173] = 173, - [174] = 168, - [175] = 175, + [174] = 174, + [175] = 174, [176] = 176, - [177] = 177, - [178] = 170, - [179] = 171, - [180] = 172, - [181] = 173, - [182] = 176, - [183] = 183, + [177] = 168, + [178] = 178, + [179] = 179, + [180] = 173, + [181] = 171, + [182] = 170, + [183] = 172, [184] = 184, [185] = 185, - [186] = 186, - [187] = 176, - [188] = 176, + [186] = 174, + [187] = 187, + [188] = 174, [189] = 189, [190] = 190, - [191] = 170, - [192] = 192, + [191] = 171, + [192] = 170, [193] = 172, [194] = 194, [195] = 195, [196] = 196, [197] = 197, [198] = 198, - [199] = 199, - [200] = 200, - [201] = 189, - [202] = 195, - [203] = 196, + [199] = 196, + [200] = 197, + [201] = 201, + [202] = 202, + [203] = 203, [204] = 204, - [205] = 205, - [206] = 194, - [207] = 197, - [208] = 194, - [209] = 198, - [210] = 199, - [211] = 199, - [212] = 195, - [213] = 196, - [214] = 198, - [215] = 189, - [216] = 200, - [217] = 217, - [218] = 194, + [205] = 201, + [206] = 202, + [207] = 207, + [208] = 198, + [209] = 189, + [210] = 197, + [211] = 198, + [212] = 212, + [213] = 201, + [214] = 202, + [215] = 203, + [216] = 204, + [217] = 189, + [218] = 196, [219] = 197, - [220] = 171, - [221] = 195, - [222] = 196, - [223] = 198, + [220] = 201, + [221] = 202, + [222] = 203, + [223] = 204, [224] = 189, - [225] = 200, - [226] = 194, - [227] = 197, - [228] = 200, - [229] = 194, - [230] = 197, - [231] = 197, + [225] = 196, + [226] = 197, + [227] = 196, + [228] = 197, + [229] = 203, + [230] = 204, + [231] = 196, [232] = 232, [233] = 233, [234] = 234, [235] = 235, [236] = 236, [237] = 237, - [238] = 232, + [238] = 233, [239] = 239, - [240] = 232, - [241] = 232, + [240] = 233, + [241] = 233, [242] = 242, [243] = 243, [244] = 244, [245] = 245, [246] = 246, - [247] = 246, - [248] = 243, + [247] = 245, + [248] = 244, [249] = 249, [250] = 250, [251] = 250, [252] = 252, - [253] = 253, - [254] = 249, - [255] = 252, - [256] = 252, - [257] = 253, - [258] = 249, - [259] = 252, - [260] = 253, + [253] = 249, + [254] = 254, + [255] = 250, + [256] = 254, + [257] = 250, + [258] = 252, + [259] = 249, + [260] = 252, [261] = 249, - [262] = 253, - [263] = 250, + [262] = 254, + [263] = 252, [264] = 264, [265] = 265, [266] = 266, @@ -3328,23 +3355,23 @@ static const TSStateId ts_primary_state_ids[STATE_COUNT] = { [268] = 266, [269] = 269, [270] = 270, - [271] = 265, + [271] = 269, [272] = 272, - [273] = 273, + [273] = 272, [274] = 274, [275] = 275, [276] = 276, - [277] = 277, - [278] = 278, - [279] = 275, - [280] = 267, - [281] = 273, + [277] = 267, + [278] = 275, + [279] = 276, + [280] = 280, + [281] = 281, [282] = 282, [283] = 283, - [284] = 278, - [285] = 276, - [286] = 270, - [287] = 283, + [284] = 284, + [285] = 264, + [286] = 274, + [287] = 265, [288] = 288, [289] = 289, [290] = 290, @@ -3359,165 +3386,165 @@ static const TSStateId ts_primary_state_ids[STATE_COUNT] = { [299] = 299, [300] = 300, [301] = 301, - [302] = 302, + [302] = 296, [303] = 303, - [304] = 288, + [304] = 304, [305] = 305, [306] = 306, [307] = 307, - [308] = 308, - [309] = 309, - [310] = 305, - [311] = 295, + [308] = 297, + [309] = 307, + [310] = 310, + [311] = 311, [312] = 312, [313] = 313, [314] = 314, [315] = 315, [316] = 316, [317] = 317, - [318] = 313, - [319] = 312, + [318] = 318, + [319] = 310, [320] = 320, [321] = 321, - [322] = 322, - [323] = 323, + [322] = 321, + [323] = 313, [324] = 324, - [325] = 320, - [326] = 321, - [327] = 322, + [325] = 325, + [326] = 320, + [327] = 327, [328] = 328, - [329] = 329, - [330] = 328, - [331] = 329, - [332] = 314, + [329] = 311, + [330] = 312, + [331] = 325, + [332] = 327, [333] = 316, - [334] = 334, - [335] = 317, - [336] = 334, - [337] = 323, - [338] = 324, + [334] = 317, + [335] = 314, + [336] = 318, + [337] = 337, + [338] = 338, [339] = 339, [340] = 340, [341] = 341, [342] = 342, - [343] = 340, + [343] = 343, [344] = 344, - [345] = 345, + [345] = 339, [346] = 346, [347] = 347, - [348] = 345, - [349] = 349, + [348] = 348, + [349] = 342, [350] = 350, [351] = 351, [352] = 352, [353] = 353, [354] = 354, [355] = 355, - [356] = 356, - [357] = 356, - [358] = 358, - [359] = 341, + [356] = 337, + [357] = 357, + [358] = 340, + [359] = 359, [360] = 360, - [361] = 361, + [361] = 339, [362] = 362, - [363] = 363, + [363] = 342, [364] = 364, [365] = 365, - [366] = 356, - [367] = 367, - [368] = 361, - [369] = 351, - [370] = 341, - [371] = 344, + [366] = 337, + [367] = 357, + [368] = 340, + [369] = 339, + [370] = 362, + [371] = 346, [372] = 372, - [373] = 373, - [374] = 353, - [375] = 362, - [376] = 360, + [373] = 342, + [374] = 364, + [375] = 375, + [376] = 376, [377] = 377, [378] = 378, - [379] = 361, - [380] = 380, - [381] = 364, - [382] = 351, - [383] = 383, - [384] = 384, + [379] = 379, + [380] = 362, + [381] = 346, + [382] = 357, + [383] = 375, + [384] = 343, [385] = 385, - [386] = 353, - [387] = 360, - [388] = 344, - [389] = 344, - [390] = 378, - [391] = 340, - [392] = 356, - [393] = 361, - [394] = 364, - [395] = 351, - [396] = 353, - [397] = 397, - [398] = 360, - [399] = 354, - [400] = 344, - [401] = 340, - [402] = 402, - [403] = 340, - [404] = 350, - [405] = 356, + [386] = 337, + [387] = 378, + [388] = 357, + [389] = 346, + [390] = 376, + [391] = 346, + [392] = 340, + [393] = 339, + [394] = 375, + [395] = 362, + [396] = 396, + [397] = 376, + [398] = 343, + [399] = 399, + [400] = 376, + [401] = 376, + [402] = 362, + [403] = 403, + [404] = 404, + [405] = 342, [406] = 406, - [407] = 407, - [408] = 356, - [409] = 361, - [410] = 364, - [411] = 351, - [412] = 353, - [413] = 360, - [414] = 344, - [415] = 361, - [416] = 340, - [417] = 350, - [418] = 362, - [419] = 350, - [420] = 364, - [421] = 350, - [422] = 350, - [423] = 385, - [424] = 407, + [407] = 337, + [408] = 346, + [409] = 337, + [410] = 357, + [411] = 340, + [412] = 339, + [413] = 362, + [414] = 342, + [415] = 376, + [416] = 378, + [417] = 404, + [418] = 347, + [419] = 404, + [420] = 404, + [421] = 404, + [422] = 396, + [423] = 348, + [424] = 404, [425] = 425, - [426] = 351, - [427] = 353, + [426] = 357, + [427] = 340, [428] = 360, - [429] = 380, + [429] = 429, [430] = 430, - [431] = 378, - [432] = 432, - [433] = 402, - [434] = 397, - [435] = 364, + [431] = 425, + [432] = 354, + [433] = 430, + [434] = 434, + [435] = 435, [436] = 436, [437] = 437, [438] = 438, [439] = 439, [440] = 440, - [441] = 441, + [441] = 438, [442] = 442, - [443] = 443, - [444] = 436, - [445] = 442, + [443] = 439, + [444] = 444, + [445] = 445, [446] = 446, [447] = 447, [448] = 446, [449] = 447, [450] = 450, - [451] = 440, + [451] = 437, [452] = 452, - [453] = 452, - [454] = 437, - [455] = 441, - [456] = 438, - [457] = 443, - [458] = 458, - [459] = 439, - [460] = 450, + [453] = 442, + [454] = 444, + [455] = 445, + [456] = 435, + [457] = 457, + [458] = 436, + [459] = 457, + [460] = 440, [461] = 461, [462] = 462, [463] = 463, @@ -3525,51 +3552,51 @@ static const TSStateId ts_primary_state_ids[STATE_COUNT] = { [465] = 465, [466] = 466, [467] = 467, - [468] = 468, + [468] = 461, [469] = 469, - [470] = 470, - [471] = 471, - [472] = 470, - [473] = 463, + [470] = 462, + [471] = 469, + [472] = 465, + [473] = 473, [474] = 474, - [475] = 294, - [476] = 466, - [477] = 477, + [475] = 474, + [476] = 476, + [477] = 463, [478] = 478, - [479] = 468, + [479] = 478, [480] = 480, - [481] = 480, + [481] = 467, [482] = 482, - [483] = 307, - [484] = 469, + [483] = 473, + [484] = 466, [485] = 485, - [486] = 471, + [486] = 464, [487] = 487, - [488] = 464, - [489] = 485, - [490] = 477, - [491] = 482, + [488] = 488, + [489] = 489, + [490] = 490, + [491] = 491, [492] = 492, [493] = 493, [494] = 494, - [495] = 495, - [496] = 496, + [495] = 489, + [496] = 324, [497] = 497, - [498] = 492, - [499] = 499, - [500] = 500, + [498] = 498, + [499] = 328, + [500] = 497, [501] = 501, [502] = 502, - [503] = 495, - [504] = 496, - [505] = 499, - [506] = 500, - [507] = 501, - [508] = 493, - [509] = 509, - [510] = 510, + [503] = 503, + [504] = 504, + [505] = 488, + [506] = 498, + [507] = 491, + [508] = 502, + [509] = 493, + [510] = 492, [511] = 511, - [512] = 511, + [512] = 512, [513] = 513, [514] = 514, [515] = 515, @@ -3581,9 +3608,9 @@ static const TSStateId ts_primary_state_ids[STATE_COUNT] = { [521] = 521, [522] = 522, [523] = 523, - [524] = 524, - [525] = 525, - [526] = 526, + [524] = 514, + [525] = 515, + [526] = 517, [527] = 527, [528] = 528, [529] = 529, @@ -3601,158 +3628,158 @@ static const TSStateId ts_primary_state_ids[STATE_COUNT] = { [541] = 541, [542] = 542, [543] = 543, - [544] = 544, + [544] = 527, [545] = 545, [546] = 546, [547] = 547, - [548] = 548, + [548] = 528, [549] = 549, [550] = 550, [551] = 551, - [552] = 521, + [552] = 529, [553] = 553, [554] = 554, [555] = 555, - [556] = 556, + [556] = 530, [557] = 557, - [558] = 514, + [558] = 558, [559] = 559, [560] = 560, - [561] = 534, - [562] = 535, - [563] = 540, - [564] = 541, - [565] = 547, - [566] = 550, - [567] = 567, - [568] = 568, - [569] = 569, + [561] = 561, + [562] = 562, + [563] = 531, + [564] = 564, + [565] = 565, + [566] = 566, + [567] = 532, + [568] = 533, + [569] = 534, [570] = 570, [571] = 571, - [572] = 515, - [573] = 516, - [574] = 517, - [575] = 518, - [576] = 519, - [577] = 520, - [578] = 522, - [579] = 523, - [580] = 524, - [581] = 567, - [582] = 525, - [583] = 526, - [584] = 527, - [585] = 528, - [586] = 529, - [587] = 530, - [588] = 560, - [589] = 531, - [590] = 532, - [591] = 533, - [592] = 536, - [593] = 537, - [594] = 538, - [595] = 539, - [596] = 568, - [597] = 569, - [598] = 542, - [599] = 543, - [600] = 544, - [601] = 545, - [602] = 546, - [603] = 548, - [604] = 549, - [605] = 570, - [606] = 571, - [607] = 553, - [608] = 554, - [609] = 555, - [610] = 556, - [611] = 557, - [612] = 612, - [613] = 559, - [614] = 614, + [572] = 535, + [573] = 536, + [574] = 574, + [575] = 537, + [576] = 538, + [577] = 539, + [578] = 512, + [579] = 540, + [580] = 541, + [581] = 542, + [582] = 582, + [583] = 543, + [584] = 513, + [585] = 585, + [586] = 545, + [587] = 546, + [588] = 588, + [589] = 547, + [590] = 590, + [591] = 511, + [592] = 549, + [593] = 551, + [594] = 553, + [595] = 554, + [596] = 555, + [597] = 558, + [598] = 559, + [599] = 516, + [600] = 560, + [601] = 561, + [602] = 562, + [603] = 518, + [604] = 564, + [605] = 565, + [606] = 519, + [607] = 520, + [608] = 521, + [609] = 522, + [610] = 550, + [611] = 566, + [612] = 574, + [613] = 523, + [614] = 570, [615] = 615, [616] = 616, - [617] = 617, - [618] = 615, - [619] = 619, - [620] = 620, - [621] = 621, - [622] = 615, - [623] = 615, + [617] = 616, + [618] = 616, + [619] = 616, + [620] = 616, + [621] = 616, + [622] = 622, + [623] = 623, [624] = 624, - [625] = 615, - [626] = 615, - [627] = 627, + [625] = 625, + [626] = 626, + [627] = 625, [628] = 628, [629] = 629, - [630] = 630, - [631] = 627, + [630] = 624, + [631] = 631, [632] = 632, - [633] = 633, - [634] = 634, - [635] = 628, - [636] = 629, + [633] = 625, + [634] = 626, + [635] = 629, + [636] = 636, [637] = 628, - [638] = 629, - [639] = 630, + [638] = 628, + [639] = 631, [640] = 640, - [641] = 641, + [641] = 631, [642] = 642, - [643] = 633, - [644] = 634, - [645] = 632, + [643] = 640, + [644] = 642, + [645] = 645, [646] = 628, - [647] = 629, - [648] = 630, - [649] = 640, - [650] = 634, - [651] = 642, - [652] = 633, - [653] = 634, + [647] = 631, + [648] = 640, + [649] = 642, + [650] = 622, + [651] = 651, + [652] = 623, + [653] = 624, [654] = 640, - [655] = 627, - [656] = 632, - [657] = 657, - [658] = 627, - [659] = 632, - [660] = 641, - [661] = 630, - [662] = 662, - [663] = 628, - [664] = 629, - [665] = 630, - [666] = 640, - [667] = 641, + [655] = 626, + [656] = 625, + [657] = 629, + [658] = 658, + [659] = 623, + [660] = 626, + [661] = 651, + [662] = 629, + [663] = 651, + [664] = 623, + [665] = 628, + [666] = 631, + [667] = 640, [668] = 642, - [669] = 633, - [670] = 634, - [671] = 642, - [672] = 640, - [673] = 627, - [674] = 632, - [675] = 657, - [676] = 657, - [677] = 657, - [678] = 678, - [679] = 657, - [680] = 641, - [681] = 628, - [682] = 629, - [683] = 630, - [684] = 640, - [685] = 641, - [686] = 642, - [687] = 633, - [688] = 634, - [689] = 633, - [690] = 627, - [691] = 632, - [692] = 657, - [693] = 642, - [694] = 641, - [695] = 695, + [669] = 622, + [670] = 651, + [671] = 623, + [672] = 624, + [673] = 629, + [674] = 642, + [675] = 675, + [676] = 676, + [677] = 624, + [678] = 628, + [679] = 631, + [680] = 640, + [681] = 642, + [682] = 622, + [683] = 651, + [684] = 623, + [685] = 624, + [686] = 622, + [687] = 626, + [688] = 625, + [689] = 629, + [690] = 626, + [691] = 625, + [692] = 692, + [693] = 693, + [694] = 651, + [695] = 622, [696] = 696, [697] = 697, [698] = 698, @@ -3782,8 +3809,8 @@ static const TSStateId ts_primary_state_ids[STATE_COUNT] = { [722] = 722, [723] = 723, [724] = 724, - [725] = 719, - [726] = 726, + [725] = 725, + [726] = 719, [727] = 727, [728] = 728, [729] = 729, @@ -3794,300 +3821,300 @@ static const TSStateId ts_primary_state_ids[STATE_COUNT] = { [734] = 734, [735] = 735, [736] = 736, - [737] = 737, - [738] = 738, + [737] = 735, + [738] = 693, [739] = 739, - [740] = 734, - [741] = 741, + [740] = 740, + [741] = 740, [742] = 742, [743] = 743, - [744] = 616, - [745] = 617, - [746] = 619, - [747] = 620, + [744] = 744, + [745] = 744, + [746] = 746, + [747] = 747, [748] = 748, [749] = 749, - [750] = 736, - [751] = 737, - [752] = 738, + [750] = 750, + [751] = 743, + [752] = 692, [753] = 739, - [754] = 741, - [755] = 742, - [756] = 743, - [757] = 748, - [758] = 749, - [759] = 759, - [760] = 735, - [761] = 759, - [762] = 620, - [763] = 624, - [764] = 713, - [765] = 616, - [766] = 719, - [767] = 621, - [768] = 624, - [769] = 616, - [770] = 617, - [771] = 619, - [772] = 719, - [773] = 773, - [774] = 774, - [775] = 619, - [776] = 620, - [777] = 712, - [778] = 617, - [779] = 719, - [780] = 773, - [781] = 774, - [782] = 621, - [783] = 734, - [784] = 759, - [785] = 735, - [786] = 736, - [787] = 737, - [788] = 738, - [789] = 739, - [790] = 735, - [791] = 741, - [792] = 742, - [793] = 743, - [794] = 621, - [795] = 624, - [796] = 736, - [797] = 748, - [798] = 749, - [799] = 737, - [800] = 738, - [801] = 739, - [802] = 734, - [803] = 759, - [804] = 742, - [805] = 743, - [806] = 695, - [807] = 696, - [808] = 697, - [809] = 698, - [810] = 735, - [811] = 759, - [812] = 736, - [813] = 737, - [814] = 738, - [815] = 739, - [816] = 734, - [817] = 741, - [818] = 742, - [819] = 743, - [820] = 748, - [821] = 749, - [822] = 719, - [823] = 748, - [824] = 749, - [825] = 741, - [826] = 773, - [827] = 696, - [828] = 736, - [829] = 737, - [830] = 698, - [831] = 738, - [832] = 739, - [833] = 734, - [834] = 509, - [835] = 741, - [836] = 742, - [837] = 743, - [838] = 502, + [754] = 742, + [755] = 746, + [756] = 747, + [757] = 736, + [758] = 748, + [759] = 675, + [760] = 676, + [761] = 749, + [762] = 750, + [763] = 719, + [764] = 764, + [765] = 719, + [766] = 645, + [767] = 675, + [768] = 676, + [769] = 658, + [770] = 692, + [771] = 693, + [772] = 700, + [773] = 764, + [774] = 676, + [775] = 645, + [776] = 658, + [777] = 720, + [778] = 693, + [779] = 692, + [780] = 719, + [781] = 781, + [782] = 675, + [783] = 781, + [784] = 740, + [785] = 739, + [786] = 740, + [787] = 697, + [788] = 698, + [789] = 744, + [790] = 736, + [791] = 735, + [792] = 719, + [793] = 645, + [794] = 658, + [795] = 696, + [796] = 699, + [797] = 743, + [798] = 746, + [799] = 735, + [800] = 740, + [801] = 746, + [802] = 747, + [803] = 746, + [804] = 744, + [805] = 748, + [806] = 749, + [807] = 750, + [808] = 743, + [809] = 748, + [810] = 739, + [811] = 742, + [812] = 749, + [813] = 744, + [814] = 736, + [815] = 750, + [816] = 743, + [817] = 747, + [818] = 748, + [819] = 739, + [820] = 742, + [821] = 742, + [822] = 736, + [823] = 749, + [824] = 750, + [825] = 735, + [826] = 747, + [827] = 827, + [828] = 828, + [829] = 781, + [830] = 827, + [831] = 746, + [832] = 747, + [833] = 735, + [834] = 571, + [835] = 740, + [836] = 697, + [837] = 698, + [838] = 748, [839] = 839, - [840] = 773, - [841] = 697, - [842] = 774, - [843] = 748, - [844] = 749, - [845] = 759, - [846] = 846, - [847] = 695, - [848] = 735, - [849] = 494, - [850] = 695, - [851] = 698, - [852] = 852, - [853] = 774, + [840] = 749, + [841] = 750, + [842] = 503, + [843] = 696, + [844] = 764, + [845] = 739, + [846] = 742, + [847] = 847, + [848] = 582, + [849] = 487, + [850] = 764, + [851] = 781, + [852] = 696, + [853] = 697, [854] = 854, - [855] = 855, - [856] = 856, - [857] = 513, - [858] = 462, - [859] = 696, - [860] = 860, - [861] = 697, - [862] = 856, - [863] = 773, - [864] = 465, - [865] = 774, - [866] = 720, - [867] = 716, - [868] = 710, - [869] = 705, - [870] = 712, - [871] = 713, - [872] = 706, - [873] = 707, - [874] = 708, - [875] = 709, - [876] = 294, - [877] = 699, - [878] = 732, - [879] = 721, - [880] = 726, - [881] = 727, - [882] = 728, - [883] = 729, - [884] = 730, - [885] = 731, - [886] = 706, + [855] = 744, + [856] = 736, + [857] = 699, + [858] = 858, + [859] = 585, + [860] = 698, + [861] = 557, + [862] = 862, + [863] = 781, + [864] = 699, + [865] = 764, + [866] = 743, + [867] = 718, + [868] = 732, + [869] = 701, + [870] = 715, + [871] = 781, + [872] = 582, + [873] = 709, + [874] = 874, + [875] = 875, + [876] = 710, + [877] = 557, + [878] = 725, + [879] = 764, + [880] = 711, + [881] = 733, + [882] = 701, + [883] = 571, + [884] = 709, + [885] = 721, + [886] = 707, [887] = 722, - [888] = 700, - [889] = 702, - [890] = 307, - [891] = 705, - [892] = 717, - [893] = 714, - [894] = 716, - [895] = 718, - [896] = 732, - [897] = 711, - [898] = 701, - [899] = 703, - [900] = 704, - [901] = 710, - [902] = 708, - [903] = 718, - [904] = 733, - [905] = 712, - [906] = 733, - [907] = 721, - [908] = 724, - [909] = 714, - [910] = 726, - [911] = 773, - [912] = 774, - [913] = 727, - [914] = 701, - [915] = 494, - [916] = 703, - [917] = 704, - [918] = 713, - [919] = 502, - [920] = 728, - [921] = 729, + [888] = 710, + [889] = 889, + [890] = 703, + [891] = 708, + [892] = 711, + [893] = 731, + [894] = 704, + [895] = 702, + [896] = 708, + [897] = 706, + [898] = 723, + [899] = 899, + [900] = 734, + [901] = 714, + [902] = 712, + [903] = 734, + [904] = 700, + [905] = 720, + [906] = 705, + [907] = 732, + [908] = 718, + [909] = 700, + [910] = 720, + [911] = 721, + [912] = 722, + [913] = 723, + [914] = 724, + [915] = 713, + [916] = 324, + [917] = 733, + [918] = 724, + [919] = 717, + [920] = 725, + [921] = 728, [922] = 730, - [923] = 731, - [924] = 724, - [925] = 513, - [926] = 723, - [927] = 927, - [928] = 928, - [929] = 722, - [930] = 700, - [931] = 699, - [932] = 932, - [933] = 933, - [934] = 934, - [935] = 935, - [936] = 702, - [937] = 707, - [938] = 723, + [923] = 923, + [924] = 924, + [925] = 729, + [926] = 704, + [927] = 714, + [928] = 716, + [929] = 716, + [930] = 731, + [931] = 702, + [932] = 713, + [933] = 727, + [934] = 728, + [935] = 729, + [936] = 727, + [937] = 705, + [938] = 703, [939] = 715, - [940] = 717, - [941] = 720, - [942] = 715, - [943] = 711, - [944] = 709, - [945] = 706, - [946] = 710, - [947] = 294, - [948] = 722, - [949] = 699, - [950] = 702, - [951] = 307, - [952] = 715, - [953] = 724, - [954] = 717, - [955] = 714, - [956] = 716, - [957] = 718, - [958] = 720, - [959] = 732, - [960] = 711, - [961] = 701, - [962] = 703, - [963] = 723, - [964] = 964, - [965] = 704, - [966] = 707, - [967] = 721, - [968] = 708, - [969] = 705, - [970] = 726, - [971] = 727, - [972] = 839, - [973] = 852, - [974] = 728, - [975] = 709, - [976] = 729, - [977] = 733, - [978] = 730, - [979] = 979, + [940] = 706, + [941] = 707, + [942] = 712, + [943] = 328, + [944] = 730, + [945] = 717, + [946] = 722, + [947] = 728, + [948] = 729, + [949] = 707, + [950] = 708, + [951] = 703, + [952] = 706, + [953] = 712, + [954] = 862, + [955] = 328, + [956] = 723, + [957] = 717, + [958] = 704, + [959] = 705, + [960] = 714, + [961] = 730, + [962] = 732, + [963] = 701, + [964] = 715, + [965] = 709, + [966] = 710, + [967] = 724, + [968] = 711, + [969] = 969, + [970] = 725, + [971] = 828, + [972] = 972, + [973] = 973, + [974] = 718, + [975] = 324, + [976] = 721, + [977] = 716, + [978] = 733, + [979] = 734, [980] = 980, [981] = 731, - [982] = 982, - [983] = 700, - [984] = 984, + [982] = 702, + [983] = 713, + [984] = 727, [985] = 985, [986] = 986, [987] = 987, [988] = 988, [989] = 989, - [990] = 989, + [990] = 990, [991] = 991, [992] = 991, - [993] = 993, + [993] = 990, [994] = 994, - [995] = 989, - [996] = 996, - [997] = 991, + [995] = 995, + [996] = 991, + [997] = 997, [998] = 998, [999] = 999, - [1000] = 1000, + [1000] = 991, [1001] = 1001, - [1002] = 991, - [1003] = 989, + [1002] = 1002, + [1003] = 991, [1004] = 1004, - [1005] = 1005, - [1006] = 991, - [1007] = 989, - [1008] = 1008, - [1009] = 991, - [1010] = 1010, - [1011] = 989, + [1005] = 990, + [1006] = 990, + [1007] = 1007, + [1008] = 990, + [1009] = 1009, + [1010] = 990, + [1011] = 991, [1012] = 1012, [1013] = 1013, [1014] = 1014, [1015] = 1014, [1016] = 1014, - [1017] = 1014, + [1017] = 1017, [1018] = 1014, [1019] = 1019, [1020] = 1014, - [1021] = 1021, + [1021] = 1014, [1022] = 1022, [1023] = 1023, [1024] = 1024, - [1025] = 1025, - [1026] = 1025, - [1027] = 1023, - [1028] = 1028, - [1029] = 1028, - [1030] = 1030, + [1025] = 1024, + [1026] = 1026, + [1027] = 1027, + [1028] = 1027, + [1029] = 1029, + [1030] = 1029, [1031] = 1031, [1032] = 1032, [1033] = 1033, @@ -4099,55 +4126,55 @@ static const TSStateId ts_primary_state_ids[STATE_COUNT] = { [1039] = 1039, [1040] = 1040, [1041] = 1041, - [1042] = 1042, - [1043] = 1033, - [1044] = 1035, - [1045] = 1037, - [1046] = 1034, - [1047] = 1033, - [1048] = 1036, - [1049] = 1049, - [1050] = 1035, + [1042] = 1038, + [1043] = 1039, + [1044] = 1038, + [1045] = 1039, + [1046] = 1040, + [1047] = 1037, + [1048] = 1038, + [1049] = 1039, + [1050] = 1040, [1051] = 1037, - [1052] = 1052, - [1053] = 1033, - [1054] = 1036, - [1055] = 1035, - [1056] = 1037, - [1057] = 1033, - [1058] = 1036, - [1059] = 1035, - [1060] = 1034, - [1061] = 1034, - [1062] = 1062, + [1052] = 1039, + [1053] = 1037, + [1054] = 1040, + [1055] = 1041, + [1056] = 1056, + [1057] = 1057, + [1058] = 1041, + [1059] = 1041, + [1060] = 1060, + [1061] = 1061, + [1062] = 1037, [1063] = 1063, [1064] = 1064, [1065] = 1065, [1066] = 1066, [1067] = 1067, - [1068] = 1063, + [1068] = 1068, [1069] = 1065, - [1070] = 1070, - [1071] = 1071, + [1070] = 1068, + [1071] = 1064, [1072] = 1072, - [1073] = 1066, - [1074] = 1070, - [1075] = 1067, - [1076] = 1067, + [1073] = 1073, + [1074] = 1063, + [1075] = 1064, + [1076] = 1076, [1077] = 1077, - [1078] = 1078, - [1079] = 1066, - [1080] = 1067, - [1081] = 1081, - [1082] = 1064, - [1083] = 1081, - [1084] = 1066, - [1085] = 1071, - [1086] = 1081, - [1087] = 1077, - [1088] = 1081, - [1089] = 1062, - [1090] = 1090, + [1078] = 1067, + [1079] = 1079, + [1080] = 1072, + [1081] = 1073, + [1082] = 1066, + [1083] = 1068, + [1084] = 1079, + [1085] = 1079, + [1086] = 1079, + [1087] = 1064, + [1088] = 1088, + [1089] = 1076, + [1090] = 1068, [1091] = 1091, [1092] = 1092, [1093] = 1093, @@ -4159,73 +4186,73 @@ static const TSStateId ts_primary_state_ids[STATE_COUNT] = { [1099] = 1099, [1100] = 1100, [1101] = 1101, - [1102] = 1071, - [1103] = 1064, - [1104] = 1062, - [1105] = 1063, - [1106] = 1065, - [1107] = 1070, - [1108] = 1071, - [1109] = 1071, + [1102] = 1102, + [1103] = 1103, + [1104] = 1032, + [1105] = 1105, + [1106] = 1031, + [1107] = 1107, + [1108] = 1108, + [1109] = 1109, [1110] = 1110, [1111] = 1111, - [1112] = 1096, + [1112] = 1112, [1113] = 1113, [1114] = 1114, [1115] = 1115, [1116] = 1116, [1117] = 1117, - [1118] = 1113, - [1119] = 1119, - [1120] = 1120, - [1121] = 1063, - [1122] = 1122, - [1123] = 1065, - [1124] = 1124, - [1125] = 1125, - [1126] = 1126, + [1118] = 1118, + [1119] = 1067, + [1120] = 1072, + [1121] = 1073, + [1122] = 1076, + [1123] = 1063, + [1124] = 1066, + [1125] = 1065, + [1126] = 1073, [1127] = 1127, - [1128] = 1128, - [1129] = 1031, + [1128] = 1127, + [1129] = 1129, [1130] = 1130, - [1131] = 1131, + [1131] = 1094, [1132] = 1132, [1133] = 1133, [1134] = 1134, - [1135] = 1030, + [1135] = 1135, [1136] = 1136, [1137] = 1137, [1138] = 1138, [1139] = 1139, [1140] = 1140, - [1141] = 1096, - [1142] = 1142, + [1141] = 1067, + [1142] = 1094, [1143] = 1143, - [1144] = 1070, - [1145] = 1077, - [1146] = 1146, - [1147] = 1147, - [1148] = 1093, - [1149] = 1077, - [1150] = 1064, - [1151] = 1062, - [1152] = 1063, - [1153] = 1065, - [1154] = 1154, - [1155] = 1155, - [1156] = 1064, - [1157] = 1070, - [1158] = 1031, - [1159] = 1159, - [1160] = 1160, - [1161] = 1161, - [1162] = 1162, - [1163] = 1062, - [1164] = 1117, - [1165] = 1077, - [1166] = 1125, - [1167] = 1167, - [1168] = 1030, + [1144] = 1102, + [1145] = 1066, + [1146] = 1076, + [1147] = 1063, + [1148] = 1148, + [1149] = 1149, + [1150] = 1150, + [1151] = 1143, + [1152] = 1065, + [1153] = 1153, + [1154] = 1153, + [1155] = 1072, + [1156] = 1032, + [1157] = 1157, + [1158] = 1067, + [1159] = 1072, + [1160] = 1073, + [1161] = 1076, + [1162] = 1063, + [1163] = 1066, + [1164] = 1065, + [1165] = 1165, + [1166] = 1166, + [1167] = 1031, + [1168] = 1168, [1169] = 1169, [1170] = 1170, [1171] = 1171, @@ -4233,150 +4260,150 @@ static const TSStateId ts_primary_state_ids[STATE_COUNT] = { [1173] = 1173, [1174] = 1174, [1175] = 1175, - [1176] = 1031, + [1176] = 1176, [1177] = 1177, - [1178] = 1178, + [1178] = 1066, [1179] = 1179, [1180] = 1180, - [1181] = 1173, + [1181] = 1181, [1182] = 1182, [1183] = 1183, - [1184] = 1184, - [1185] = 1185, + [1184] = 1143, + [1185] = 1065, [1186] = 1186, - [1187] = 1171, - [1188] = 1077, - [1189] = 1183, - [1190] = 1170, - [1191] = 1125, - [1192] = 1064, - [1193] = 1062, - [1194] = 1063, - [1195] = 1065, - [1196] = 1196, - [1197] = 1197, - [1198] = 1170, - [1199] = 1117, - [1200] = 1200, + [1187] = 1067, + [1188] = 1188, + [1189] = 1031, + [1190] = 1190, + [1191] = 1191, + [1192] = 1170, + [1193] = 1193, + [1194] = 1072, + [1195] = 1102, + [1196] = 1188, + [1197] = 1073, + [1198] = 1076, + [1199] = 1170, + [1200] = 1063, [1201] = 1201, - [1202] = 1093, + [1202] = 1202, [1203] = 1203, - [1204] = 1204, - [1205] = 1186, + [1204] = 1174, + [1205] = 1205, [1206] = 1206, - [1207] = 1204, - [1208] = 1070, - [1209] = 1071, - [1210] = 1030, - [1211] = 1211, - [1212] = 1170, - [1213] = 1213, - [1214] = 1214, + [1207] = 1207, + [1208] = 1208, + [1209] = 1171, + [1210] = 1203, + [1211] = 1032, + [1212] = 1153, + [1213] = 1175, + [1214] = 1170, [1215] = 1215, [1216] = 1216, [1217] = 1217, [1218] = 1218, - [1219] = 1216, + [1219] = 1219, [1220] = 1220, [1221] = 1221, - [1222] = 1221, + [1222] = 1222, [1223] = 1223, - [1224] = 1224, + [1224] = 1222, [1225] = 1225, [1226] = 1226, [1227] = 1227, - [1228] = 1228, + [1228] = 1217, [1229] = 1229, [1230] = 1230, [1231] = 1231, - [1232] = 1215, - [1233] = 1233, - [1234] = 1032, + [1232] = 1232, + [1233] = 1231, + [1234] = 1234, [1235] = 1235, [1236] = 1236, - [1237] = 1235, + [1237] = 1237, [1238] = 1238, [1239] = 1239, - [1240] = 1236, - [1241] = 1233, + [1240] = 1240, + [1241] = 1238, [1242] = 1242, - [1243] = 1243, + [1243] = 1201, [1244] = 1244, - [1245] = 1245, - [1246] = 1246, - [1247] = 1247, + [1245] = 1234, + [1246] = 1237, + [1247] = 1219, [1248] = 1248, - [1249] = 1249, - [1250] = 1172, - [1251] = 1229, + [1249] = 1033, + [1250] = 1220, + [1251] = 1251, [1252] = 1252, [1253] = 1253, - [1254] = 1230, + [1254] = 1254, [1255] = 1255, [1256] = 1256, [1257] = 1257, - [1258] = 1183, + [1258] = 1258, [1259] = 1259, - [1260] = 1215, + [1260] = 1180, [1261] = 1261, [1262] = 1262, [1263] = 1263, [1264] = 1264, [1265] = 1265, - [1266] = 1266, + [1266] = 1262, [1267] = 1267, [1268] = 1268, [1269] = 1269, [1270] = 1270, [1271] = 1271, - [1272] = 1272, - [1273] = 1267, - [1274] = 1274, + [1272] = 1220, + [1273] = 1273, + [1274] = 1188, [1275] = 1275, [1276] = 1276, [1277] = 1277, - [1278] = 1229, + [1278] = 1219, [1279] = 1279, - [1280] = 1221, - [1281] = 1256, - [1282] = 1214, - [1283] = 1283, - [1284] = 1284, + [1280] = 1280, + [1281] = 1281, + [1282] = 1282, + [1283] = 1273, + [1284] = 1231, [1285] = 1285, [1286] = 1286, - [1287] = 1265, + [1287] = 1287, [1288] = 1288, - [1289] = 1049, + [1289] = 1289, [1290] = 1290, - [1291] = 1291, + [1291] = 1269, [1292] = 1292, [1293] = 1293, - [1294] = 1294, + [1294] = 1056, [1295] = 1295, - [1296] = 1296, + [1296] = 1295, [1297] = 1297, [1298] = 1298, [1299] = 1299, [1300] = 1300, - [1301] = 1301, + [1301] = 1299, [1302] = 1302, [1303] = 1303, [1304] = 1304, - [1305] = 1298, + [1305] = 1300, [1306] = 1306, - [1307] = 1297, + [1307] = 1307, [1308] = 1308, [1309] = 1309, - [1310] = 1302, + [1310] = 1310, [1311] = 1311, [1312] = 1312, [1313] = 1313, - [1314] = 1314, - [1315] = 1315, + [1314] = 1061, + [1315] = 1035, [1316] = 1316, - [1317] = 1039, - [1318] = 1040, - [1319] = 1319, + [1317] = 1262, + [1318] = 1308, + [1319] = 1281, [1320] = 1320, [1321] = 1321, [1322] = 1322, @@ -4385,202 +4412,202 @@ static const TSStateId ts_primary_state_ids[STATE_COUNT] = { [1325] = 1325, [1326] = 1326, [1327] = 1327, - [1328] = 1271, - [1329] = 1275, - [1330] = 1290, + [1328] = 1328, + [1329] = 1329, + [1330] = 1330, [1331] = 1331, - [1332] = 1332, - [1333] = 1303, - [1334] = 1334, - [1335] = 1297, - [1336] = 1336, + [1332] = 1299, + [1333] = 1333, + [1334] = 1289, + [1335] = 1300, + [1336] = 1306, [1337] = 1337, [1338] = 1338, - [1339] = 1297, + [1339] = 1339, [1340] = 1340, [1341] = 1341, [1342] = 1342, - [1343] = 1303, + [1343] = 1306, [1344] = 1344, - [1345] = 1297, - [1346] = 1322, - [1347] = 1334, - [1348] = 1332, - [1349] = 1349, - [1350] = 1295, - [1351] = 1351, - [1352] = 1349, + [1345] = 1306, + [1346] = 1346, + [1347] = 1347, + [1348] = 1348, + [1349] = 1306, + [1350] = 1350, + [1351] = 1312, + [1352] = 1337, [1353] = 1353, [1354] = 1354, - [1355] = 1355, - [1356] = 1356, + [1355] = 1309, + [1356] = 1327, [1357] = 1357, - [1358] = 1267, + [1358] = 1264, [1359] = 1359, [1360] = 1360, - [1361] = 1351, + [1361] = 1361, [1362] = 1362, - [1363] = 1304, - [1364] = 1364, + [1363] = 1363, + [1364] = 1357, [1365] = 1365, - [1366] = 1297, - [1367] = 1255, - [1368] = 1368, - [1369] = 1301, - [1370] = 1323, + [1366] = 1366, + [1367] = 1303, + [1368] = 1304, + [1369] = 1306, + [1370] = 1370, [1371] = 1371, [1372] = 1372, - [1373] = 1332, + [1373] = 1373, [1374] = 1374, - [1375] = 1375, - [1376] = 1376, + [1375] = 1307, + [1376] = 1359, [1377] = 1377, [1378] = 1378, [1379] = 1379, - [1380] = 1223, + [1380] = 1380, [1381] = 1381, - [1382] = 1306, + [1382] = 1382, [1383] = 1383, - [1384] = 1309, + [1384] = 1384, [1385] = 1385, [1386] = 1386, - [1387] = 1387, - [1388] = 1388, + [1387] = 1384, + [1388] = 696, [1389] = 1389, [1390] = 1390, [1391] = 1391, [1392] = 1392, [1393] = 1393, [1394] = 1394, - [1395] = 1368, + [1395] = 1395, [1396] = 1396, - [1397] = 1387, - [1398] = 1388, + [1397] = 1397, + [1398] = 1398, [1399] = 1399, - [1400] = 1383, + [1400] = 1400, [1401] = 1401, - [1402] = 1402, + [1402] = 1393, [1403] = 1403, - [1404] = 697, - [1405] = 1405, - [1406] = 1406, - [1407] = 1377, - [1408] = 1389, - [1409] = 1409, - [1410] = 1403, - [1411] = 1387, - [1412] = 1388, + [1404] = 1395, + [1405] = 1394, + [1406] = 1320, + [1407] = 1407, + [1408] = 1408, + [1409] = 1322, + [1410] = 1410, + [1411] = 1411, + [1412] = 1379, [1413] = 1413, - [1414] = 1377, - [1415] = 1415, - [1416] = 1416, - [1417] = 1417, + [1414] = 1251, + [1415] = 1384, + [1416] = 1393, + [1417] = 1394, [1418] = 1418, [1419] = 1419, - [1420] = 1420, + [1420] = 1397, [1421] = 1421, - [1422] = 1422, - [1423] = 1383, + [1422] = 1399, + [1423] = 1400, [1424] = 1424, - [1425] = 1403, - [1426] = 1389, - [1427] = 1409, - [1428] = 1385, - [1429] = 1387, - [1430] = 1388, + [1425] = 1425, + [1426] = 1407, + [1427] = 1427, + [1428] = 1386, + [1429] = 697, + [1430] = 1395, [1431] = 1431, - [1432] = 1377, - [1433] = 1409, - [1434] = 1434, - [1435] = 1415, - [1436] = 1417, - [1437] = 1418, - [1438] = 1438, - [1439] = 1439, - [1440] = 1440, - [1441] = 1441, - [1442] = 1442, + [1432] = 1407, + [1433] = 1433, + [1434] = 1397, + [1435] = 1435, + [1436] = 1379, + [1437] = 1413, + [1438] = 1399, + [1439] = 1384, + [1440] = 1393, + [1441] = 1400, + [1442] = 1394, [1443] = 1443, [1444] = 1444, - [1445] = 1445, + [1445] = 1397, [1446] = 1446, - [1447] = 1447, - [1448] = 1415, + [1447] = 1399, + [1448] = 1400, [1449] = 1449, - [1450] = 1417, - [1451] = 1418, + [1450] = 1425, + [1451] = 1344, [1452] = 1452, [1453] = 1453, [1454] = 1454, - [1455] = 1253, - [1456] = 1390, + [1455] = 1455, + [1456] = 1456, [1457] = 1457, - [1458] = 1419, + [1458] = 1458, [1459] = 1459, [1460] = 1460, [1461] = 1461, - [1462] = 1415, - [1463] = 1308, - [1464] = 1464, + [1462] = 1462, + [1463] = 1463, + [1464] = 1252, [1465] = 1465, [1466] = 1466, [1467] = 1467, [1468] = 1468, [1469] = 1469, - [1470] = 695, - [1471] = 1376, + [1470] = 1463, + [1471] = 1471, [1472] = 1472, - [1473] = 1473, + [1473] = 1326, [1474] = 1474, - [1475] = 1475, - [1476] = 1476, + [1475] = 1328, + [1476] = 1230, [1477] = 1477, [1478] = 1478, - [1479] = 1342, + [1479] = 1395, [1480] = 1480, - [1481] = 1417, - [1482] = 1218, - [1483] = 1418, + [1481] = 1481, + [1482] = 1482, + [1483] = 1483, [1484] = 1484, - [1485] = 1389, + [1485] = 1485, [1486] = 1486, - [1487] = 1353, - [1488] = 1359, - [1489] = 1383, - [1490] = 1403, - [1491] = 1409, - [1492] = 1492, - [1493] = 1453, - [1494] = 1457, + [1487] = 1372, + [1488] = 1488, + [1489] = 1489, + [1490] = 1490, + [1491] = 1491, + [1492] = 1226, + [1493] = 1452, + [1494] = 1494, [1495] = 1495, - [1496] = 1496, + [1496] = 1401, [1497] = 1497, - [1498] = 1498, - [1499] = 1460, - [1500] = 1500, - [1501] = 1501, - [1502] = 1217, - [1503] = 1503, - [1504] = 1496, - [1505] = 1473, - [1506] = 1443, - [1507] = 1507, - [1508] = 1508, - [1509] = 1509, + [1498] = 1379, + [1499] = 1499, + [1500] = 1324, + [1501] = 1413, + [1502] = 1410, + [1503] = 1467, + [1504] = 1504, + [1505] = 1407, + [1506] = 1506, + [1507] = 1413, + [1508] = 1411, + [1509] = 1478, [1510] = 1510, - [1511] = 1511, + [1511] = 1453, [1512] = 1512, [1513] = 1513, [1514] = 1514, - [1515] = 313, + [1515] = 1515, [1516] = 1516, [1517] = 1517, [1518] = 1518, [1519] = 1519, - [1520] = 1442, - [1521] = 320, + [1520] = 1518, + [1521] = 1521, [1522] = 1522, - [1523] = 1523, + [1523] = 320, [1524] = 1524, [1525] = 1525, [1526] = 1526, @@ -4590,61 +4617,61 @@ static const TSStateId ts_primary_state_ids[STATE_COUNT] = { [1530] = 1530, [1531] = 1531, [1532] = 1532, - [1533] = 1533, + [1533] = 1186, [1534] = 1534, [1535] = 1535, - [1536] = 314, - [1537] = 1196, - [1538] = 317, + [1536] = 1536, + [1537] = 1537, + [1538] = 1538, [1539] = 1539, - [1540] = 1486, + [1540] = 1540, [1541] = 1541, - [1542] = 1542, - [1543] = 1511, + [1542] = 321, + [1543] = 1539, [1544] = 1544, - [1545] = 1421, - [1546] = 1513, + [1545] = 1545, + [1546] = 1531, [1547] = 1547, [1548] = 1548, - [1549] = 1510, + [1549] = 1549, [1550] = 1550, [1551] = 1551, - [1552] = 1548, - [1553] = 1553, - [1554] = 1541, - [1555] = 1555, - [1556] = 1556, + [1552] = 1552, + [1553] = 1381, + [1554] = 1391, + [1555] = 1550, + [1556] = 1547, [1557] = 1557, [1558] = 1558, [1559] = 1559, [1560] = 1560, [1561] = 1561, - [1562] = 1562, + [1562] = 1548, [1563] = 1563, - [1564] = 1564, - [1565] = 1550, + [1564] = 310, + [1565] = 1565, [1566] = 1566, - [1567] = 1510, - [1568] = 1568, + [1567] = 1567, + [1568] = 1518, [1569] = 1569, [1570] = 1570, [1571] = 1571, [1572] = 1572, [1573] = 1573, - [1574] = 1574, - [1575] = 1575, - [1576] = 1557, + [1574] = 1510, + [1575] = 318, + [1576] = 1576, [1577] = 1577, - [1578] = 1512, + [1578] = 1578, [1579] = 1579, - [1580] = 334, - [1581] = 1581, - [1582] = 1539, - [1583] = 1583, + [1580] = 1580, + [1581] = 327, + [1582] = 1538, + [1583] = 1512, [1584] = 1584, [1585] = 1585, - [1586] = 1584, - [1587] = 1587, + [1586] = 1586, + [1587] = 1545, [1588] = 1588, [1589] = 1589, [1590] = 1590, @@ -4659,127 +4686,138 @@ static const TSStateId ts_primary_state_ids[STATE_COUNT] = { [1599] = 1599, [1600] = 1600, [1601] = 1601, - [1602] = 1600, + [1602] = 1602, [1603] = 1603, - [1604] = 1593, + [1604] = 1604, [1605] = 1605, - [1606] = 1588, - [1607] = 1589, - [1608] = 1608, + [1606] = 1606, + [1607] = 1607, + [1608] = 1594, [1609] = 1609, [1610] = 1610, [1611] = 1611, [1612] = 1612, - [1613] = 1592, + [1613] = 1613, [1614] = 1614, - [1615] = 1591, + [1615] = 1615, [1616] = 1616, [1617] = 1617, - [1618] = 1617, + [1618] = 1618, [1619] = 1619, [1620] = 1620, [1621] = 1621, [1622] = 1622, [1623] = 1623, - [1624] = 1614, - [1625] = 1610, - [1626] = 1591, - [1627] = 1627, - [1628] = 1628, + [1624] = 1624, + [1625] = 1625, + [1626] = 1626, + [1627] = 1609, + [1628] = 1617, [1629] = 1629, - [1630] = 1630, + [1630] = 1593, [1631] = 1631, - [1632] = 1605, - [1633] = 1594, - [1634] = 1612, - [1635] = 1584, + [1632] = 1614, + [1633] = 1633, + [1634] = 1634, + [1635] = 1635, [1636] = 1636, - [1637] = 1603, - [1638] = 1638, - [1639] = 1583, + [1637] = 1615, + [1638] = 1616, + [1639] = 1639, [1640] = 1640, [1641] = 1641, - [1642] = 1616, - [1643] = 1643, - [1644] = 1644, - [1645] = 1627, - [1646] = 1609, - [1647] = 1647, + [1642] = 1622, + [1643] = 1615, + [1644] = 1620, + [1645] = 1599, + [1646] = 1646, + [1647] = 1633, [1648] = 1648, - [1649] = 1627, - [1650] = 1631, - [1651] = 1605, - [1652] = 1587, - [1653] = 1653, - [1654] = 1654, + [1649] = 1621, + [1650] = 1650, + [1651] = 1607, + [1652] = 1652, + [1653] = 1611, + [1654] = 1600, [1655] = 1655, - [1656] = 1594, - [1657] = 1657, + [1656] = 1641, + [1657] = 1652, [1658] = 1658, [1659] = 1659, - [1660] = 1653, + [1660] = 1660, [1661] = 1661, - [1662] = 1662, + [1662] = 1597, [1663] = 1663, [1664] = 1664, - [1665] = 1596, - [1666] = 1608, - [1667] = 1667, - [1668] = 1593, - [1669] = 1653, - [1670] = 1597, - [1671] = 1612, - [1672] = 1672, - [1673] = 1593, - [1674] = 1612, - [1675] = 1591, - [1676] = 1590, - [1677] = 1614, - [1678] = 1596, - [1679] = 1594, - [1680] = 1680, - [1681] = 1636, - [1682] = 1682, - [1683] = 1596, - [1684] = 1684, + [1665] = 1665, + [1666] = 1603, + [1667] = 1601, + [1668] = 1668, + [1669] = 1655, + [1670] = 1652, + [1671] = 1671, + [1672] = 1603, + [1673] = 1655, + [1674] = 1664, + [1675] = 1675, + [1676] = 1676, + [1677] = 1677, + [1678] = 1601, + [1679] = 1655, + [1680] = 1618, + [1681] = 1594, + [1682] = 1622, + [1683] = 1641, + [1684] = 1616, [1685] = 1685, - [1686] = 1592, - [1687] = 1600, - [1688] = 1688, - [1689] = 1621, - [1690] = 1593, - [1691] = 1629, - [1692] = 1641, - [1693] = 1653, - [1694] = 1584, - [1695] = 1605, - [1696] = 1696, - [1697] = 1622, - [1698] = 1667, - [1699] = 1644, - [1700] = 1612, - [1701] = 1701, - [1702] = 1702, - [1703] = 1703, - [1704] = 1611, - [1705] = 1600, + [1686] = 1659, + [1687] = 1618, + [1688] = 1629, + [1689] = 1689, + [1690] = 1690, + [1691] = 1641, + [1692] = 1618, + [1693] = 1626, + [1694] = 1694, + [1695] = 1593, + [1696] = 1594, + [1697] = 1697, + [1698] = 1626, + [1699] = 1660, + [1700] = 1700, + [1701] = 1593, + [1702] = 1663, + [1703] = 1634, + [1704] = 1704, + [1705] = 1622, [1706] = 1592, [1707] = 1707, - [1708] = 1614, - [1709] = 1709, - [1710] = 1601, - [1711] = 1593, - [1712] = 1688, - [1713] = 1619, - [1714] = 1599, - [1715] = 1627, - [1716] = 1661, - [1717] = 1685, - [1718] = 1631, - [1719] = 1672, - [1720] = 1612, - [1721] = 1631, - [1722] = 1722, + [1708] = 1616, + [1709] = 1596, + [1710] = 1622, + [1711] = 1711, + [1712] = 1619, + [1713] = 1713, + [1714] = 1714, + [1715] = 1676, + [1716] = 1626, + [1717] = 1717, + [1718] = 1694, + [1719] = 1603, + [1720] = 1622, + [1721] = 1601, + [1722] = 1615, + [1723] = 1641, + [1724] = 1671, + [1725] = 1639, + [1726] = 1659, + [1727] = 1612, + [1728] = 1668, + [1729] = 1641, + [1730] = 1648, + [1731] = 1652, + [1732] = 1659, + [1733] = 1624, }; static const TSCharacterRange sym_identifier_character_set_1[] = { @@ -6043,79 +6081,80 @@ static bool ts_lex_keywords(TSLexer *lexer, TSStateId state) { END_STATE(); case 46: if (lookahead == 'm') ADVANCE(82); + if (lookahead == 'z') ADVANCE(83); END_STATE(); case 47: - if (lookahead == 't') ADVANCE(83); + if (lookahead == 't') ADVANCE(84); END_STATE(); case 48: - if (lookahead == 'n') ADVANCE(84); - if (lookahead == 't') ADVANCE(85); + if (lookahead == 'n') ADVANCE(85); + if (lookahead == 't') ADVANCE(86); END_STATE(); case 49: ACCEPT_TOKEN(anon_sym_or); END_STATE(); case 50: - if (lookahead == 's') ADVANCE(86); + if (lookahead == 's') ADVANCE(87); END_STATE(); case 51: - if (lookahead == 'i') ADVANCE(87); + if (lookahead == 'i') ADVANCE(88); END_STATE(); case 52: - if (lookahead == 'i') ADVANCE(88); + if (lookahead == 'i') ADVANCE(89); END_STATE(); case 53: - if (lookahead == 't') ADVANCE(89); + if (lookahead == 't') ADVANCE(90); END_STATE(); case 54: - if (lookahead == 'y') ADVANCE(90); + if (lookahead == 'y') ADVANCE(91); END_STATE(); case 55: - if (lookahead == 'p') ADVANCE(91); + if (lookahead == 'p') ADVANCE(92); END_STATE(); case 56: - if (lookahead == 'i') ADVANCE(92); + if (lookahead == 'i') ADVANCE(93); END_STATE(); case 57: - if (lookahead == 't') ADVANCE(93); + if (lookahead == 't') ADVANCE(94); END_STATE(); case 58: - if (lookahead == 'e') ADVANCE(94); + if (lookahead == 'e') ADVANCE(95); END_STATE(); case 59: - if (lookahead == 's') ADVANCE(95); + if (lookahead == 's') ADVANCE(96); END_STATE(); case 60: - if (lookahead == 'e') ADVANCE(96); + if (lookahead == 'e') ADVANCE(97); END_STATE(); case 61: - if (lookahead == 'e') ADVANCE(97); + if (lookahead == 'e') ADVANCE(98); END_STATE(); case 62: - if (lookahead == 'u') ADVANCE(98); + if (lookahead == 'u') ADVANCE(99); END_STATE(); case 63: ACCEPT_TOKEN(anon_sym_and); END_STATE(); case 64: - if (lookahead == 'e') ADVANCE(99); + if (lookahead == 'e') ADVANCE(100); END_STATE(); case 65: - if (lookahead == 'n') ADVANCE(100); + if (lookahead == 'n') ADVANCE(101); END_STATE(); case 66: - if (lookahead == 'i') ADVANCE(101); + if (lookahead == 'i') ADVANCE(102); END_STATE(); case 67: - if (lookahead == 'a') ADVANCE(102); + if (lookahead == 'a') ADVANCE(103); END_STATE(); case 68: - if (lookahead == 'e') ADVANCE(103); + if (lookahead == 'e') ADVANCE(104); END_STATE(); case 69: - if (lookahead == 's') ADVANCE(104); + if (lookahead == 's') ADVANCE(105); END_STATE(); case 70: - if (lookahead == 't') ADVANCE(105); + if (lookahead == 't') ADVANCE(106); END_STATE(); case 71: ACCEPT_TOKEN(anon_sym_def); @@ -6124,276 +6163,282 @@ static bool ts_lex_keywords(TSLexer *lexer, TSStateId state) { ACCEPT_TOKEN(anon_sym_del); END_STATE(); case 73: - if (lookahead == 'f') ADVANCE(106); + if (lookahead == 'f') ADVANCE(107); END_STATE(); case 74: - if (lookahead == 'e') ADVANCE(107); + if (lookahead == 'e') ADVANCE(108); END_STATE(); case 75: - if (lookahead == 'e') ADVANCE(108); + if (lookahead == 'e') ADVANCE(109); END_STATE(); case 76: - if (lookahead == 'c') ADVANCE(109); + if (lookahead == 'c') ADVANCE(110); END_STATE(); case 77: - if (lookahead == 'a') ADVANCE(110); + if (lookahead == 'a') ADVANCE(111); END_STATE(); case 78: ACCEPT_TOKEN(anon_sym_for); END_STATE(); case 79: - if (lookahead == 'm') ADVANCE(111); + if (lookahead == 'm') ADVANCE(112); END_STATE(); case 80: - if (lookahead == 'b') ADVANCE(112); + if (lookahead == 'b') ADVANCE(113); END_STATE(); case 81: - if (lookahead == 'o') ADVANCE(113); + if (lookahead == 'o') ADVANCE(114); END_STATE(); case 82: - if (lookahead == 'b') ADVANCE(114); + if (lookahead == 'b') ADVANCE(115); END_STATE(); case 83: - if (lookahead == 'c') ADVANCE(115); + if (lookahead == 'y') ADVANCE(116); END_STATE(); case 84: - if (lookahead == 'l') ADVANCE(116); + if (lookahead == 'c') ADVANCE(117); END_STATE(); case 85: - ACCEPT_TOKEN(anon_sym_not); + if (lookahead == 'l') ADVANCE(118); END_STATE(); case 86: - if (lookahead == 's') ADVANCE(117); + ACCEPT_TOKEN(anon_sym_not); END_STATE(); case 87: - if (lookahead == 'n') ADVANCE(118); + if (lookahead == 's') ADVANCE(119); END_STATE(); case 88: - if (lookahead == 's') ADVANCE(119); + if (lookahead == 'n') ADVANCE(120); END_STATE(); case 89: - if (lookahead == 'u') ADVANCE(120); + if (lookahead == 's') ADVANCE(121); END_STATE(); case 90: - ACCEPT_TOKEN(anon_sym_try); + if (lookahead == 'u') ADVANCE(122); END_STATE(); case 91: - if (lookahead == 'e') ADVANCE(121); + ACCEPT_TOKEN(anon_sym_try); END_STATE(); case 92: - if (lookahead == 'l') ADVANCE(122); + if (lookahead == 'e') ADVANCE(123); END_STATE(); case 93: - if (lookahead == 'h') ADVANCE(123); + if (lookahead == 'l') ADVANCE(124); END_STATE(); case 94: - if (lookahead == 'l') ADVANCE(124); + if (lookahead == 'h') ADVANCE(125); END_STATE(); case 95: - if (lookahead == 'e') ADVANCE(125); + if (lookahead == 'l') ADVANCE(126); END_STATE(); case 96: - ACCEPT_TOKEN(sym_none); + if (lookahead == 'e') ADVANCE(127); END_STATE(); case 97: - ACCEPT_TOKEN(sym_true); + ACCEPT_TOKEN(sym_none); END_STATE(); case 98: - if (lookahead == 't') ADVANCE(126); + ACCEPT_TOKEN(sym_true); END_STATE(); case 99: - if (lookahead == 'r') ADVANCE(127); + if (lookahead == 't') ADVANCE(128); END_STATE(); case 100: - if (lookahead == 'c') ADVANCE(128); + if (lookahead == 'r') ADVANCE(129); END_STATE(); case 101: - if (lookahead == 't') ADVANCE(129); + if (lookahead == 'c') ADVANCE(130); END_STATE(); case 102: - if (lookahead == 'k') ADVANCE(130); + if (lookahead == 't') ADVANCE(131); END_STATE(); case 103: - ACCEPT_TOKEN(anon_sym_case); + if (lookahead == 'k') ADVANCE(132); END_STATE(); case 104: - if (lookahead == 's') ADVANCE(131); + ACCEPT_TOKEN(anon_sym_case); END_STATE(); case 105: - if (lookahead == 'i') ADVANCE(132); + if (lookahead == 's') ADVANCE(133); END_STATE(); case 106: - ACCEPT_TOKEN(anon_sym_elif); + if (lookahead == 'i') ADVANCE(134); END_STATE(); case 107: - ACCEPT_TOKEN(anon_sym_else); + ACCEPT_TOKEN(anon_sym_elif); END_STATE(); case 108: - if (lookahead == 'p') ADVANCE(133); + ACCEPT_TOKEN(anon_sym_else); END_STATE(); case 109: - ACCEPT_TOKEN(anon_sym_exec); + if (lookahead == 'p') ADVANCE(135); END_STATE(); case 110: - if (lookahead == 'l') ADVANCE(134); + ACCEPT_TOKEN(anon_sym_exec); END_STATE(); case 111: - ACCEPT_TOKEN(anon_sym_from); + if (lookahead == 'l') ADVANCE(136); END_STATE(); case 112: - if (lookahead == 'a') ADVANCE(135); + ACCEPT_TOKEN(anon_sym_from); END_STATE(); case 113: - if (lookahead == 'r') ADVANCE(136); + if (lookahead == 'a') ADVANCE(137); END_STATE(); case 114: - if (lookahead == 'd') ADVANCE(137); + if (lookahead == 'r') ADVANCE(138); END_STATE(); case 115: - if (lookahead == 'h') ADVANCE(138); + if (lookahead == 'd') ADVANCE(139); END_STATE(); case 116: - if (lookahead == 'o') ADVANCE(139); + ACCEPT_TOKEN(anon_sym_lazy); END_STATE(); case 117: - ACCEPT_TOKEN(anon_sym_pass); + if (lookahead == 'h') ADVANCE(140); END_STATE(); case 118: - if (lookahead == 't') ADVANCE(140); + if (lookahead == 'o') ADVANCE(141); END_STATE(); case 119: - if (lookahead == 'e') ADVANCE(141); + ACCEPT_TOKEN(anon_sym_pass); END_STATE(); case 120: - if (lookahead == 'r') ADVANCE(142); + if (lookahead == 't') ADVANCE(142); END_STATE(); case 121: - ACCEPT_TOKEN(anon_sym_type); + if (lookahead == 'e') ADVANCE(143); END_STATE(); case 122: - if (lookahead == 'e') ADVANCE(143); + if (lookahead == 'r') ADVANCE(144); END_STATE(); case 123: - ACCEPT_TOKEN(anon_sym_with); + ACCEPT_TOKEN(anon_sym_type); END_STATE(); case 124: - if (lookahead == 'd') ADVANCE(144); + if (lookahead == 'e') ADVANCE(145); END_STATE(); case 125: - ACCEPT_TOKEN(sym_false); + ACCEPT_TOKEN(anon_sym_with); END_STATE(); case 126: - if (lookahead == 'u') ADVANCE(145); + if (lookahead == 'd') ADVANCE(146); END_STATE(); case 127: - if (lookahead == 't') ADVANCE(146); + ACCEPT_TOKEN(sym_false); END_STATE(); case 128: - ACCEPT_TOKEN(anon_sym_async); + if (lookahead == 'u') ADVANCE(147); END_STATE(); case 129: - ACCEPT_TOKEN(anon_sym_await); + if (lookahead == 't') ADVANCE(148); END_STATE(); case 130: - ACCEPT_TOKEN(anon_sym_break); + ACCEPT_TOKEN(anon_sym_async); END_STATE(); case 131: - ACCEPT_TOKEN(anon_sym_class); + ACCEPT_TOKEN(anon_sym_await); END_STATE(); case 132: - if (lookahead == 'n') ADVANCE(147); + ACCEPT_TOKEN(anon_sym_break); END_STATE(); case 133: - if (lookahead == 't') ADVANCE(148); + ACCEPT_TOKEN(anon_sym_class); END_STATE(); case 134: - if (lookahead == 'l') ADVANCE(149); + if (lookahead == 'n') ADVANCE(149); END_STATE(); case 135: - if (lookahead == 'l') ADVANCE(150); + if (lookahead == 't') ADVANCE(150); END_STATE(); case 136: - if (lookahead == 't') ADVANCE(151); + if (lookahead == 'l') ADVANCE(151); END_STATE(); case 137: - if (lookahead == 'a') ADVANCE(152); + if (lookahead == 'l') ADVANCE(152); END_STATE(); case 138: - ACCEPT_TOKEN(anon_sym_match); + if (lookahead == 't') ADVANCE(153); END_STATE(); case 139: - if (lookahead == 'c') ADVANCE(153); + if (lookahead == 'a') ADVANCE(154); END_STATE(); case 140: - ACCEPT_TOKEN(anon_sym_print); + ACCEPT_TOKEN(anon_sym_match); END_STATE(); case 141: - ACCEPT_TOKEN(anon_sym_raise); + if (lookahead == 'c') ADVANCE(155); END_STATE(); case 142: - if (lookahead == 'n') ADVANCE(154); + ACCEPT_TOKEN(anon_sym_print); END_STATE(); case 143: - ACCEPT_TOKEN(anon_sym_while); + ACCEPT_TOKEN(anon_sym_raise); END_STATE(); case 144: - ACCEPT_TOKEN(anon_sym_yield); + if (lookahead == 'n') ADVANCE(156); END_STATE(); case 145: - if (lookahead == 'r') ADVANCE(155); + ACCEPT_TOKEN(anon_sym_while); END_STATE(); case 146: - ACCEPT_TOKEN(anon_sym_assert); + ACCEPT_TOKEN(anon_sym_yield); END_STATE(); case 147: - if (lookahead == 'u') ADVANCE(156); + if (lookahead == 'r') ADVANCE(157); END_STATE(); case 148: - ACCEPT_TOKEN(anon_sym_except); + ACCEPT_TOKEN(anon_sym_assert); END_STATE(); case 149: - if (lookahead == 'y') ADVANCE(157); + if (lookahead == 'u') ADVANCE(158); END_STATE(); case 150: - ACCEPT_TOKEN(anon_sym_global); + ACCEPT_TOKEN(anon_sym_except); END_STATE(); case 151: - ACCEPT_TOKEN(anon_sym_import); + if (lookahead == 'y') ADVANCE(159); END_STATE(); case 152: - ACCEPT_TOKEN(anon_sym_lambda); + ACCEPT_TOKEN(anon_sym_global); END_STATE(); case 153: - if (lookahead == 'a') ADVANCE(158); + ACCEPT_TOKEN(anon_sym_import); END_STATE(); case 154: - ACCEPT_TOKEN(anon_sym_return); + ACCEPT_TOKEN(anon_sym_lambda); END_STATE(); case 155: - if (lookahead == 'e') ADVANCE(159); + if (lookahead == 'a') ADVANCE(160); END_STATE(); case 156: - if (lookahead == 'e') ADVANCE(160); + ACCEPT_TOKEN(anon_sym_return); END_STATE(); case 157: - ACCEPT_TOKEN(anon_sym_finally); + if (lookahead == 'e') ADVANCE(161); END_STATE(); case 158: - if (lookahead == 'l') ADVANCE(161); + if (lookahead == 'e') ADVANCE(162); END_STATE(); case 159: - if (lookahead == '_') ADVANCE(162); + ACCEPT_TOKEN(anon_sym_finally); END_STATE(); case 160: - ACCEPT_TOKEN(anon_sym_continue); + if (lookahead == 'l') ADVANCE(163); END_STATE(); case 161: - ACCEPT_TOKEN(anon_sym_nonlocal); + if (lookahead == '_') ADVANCE(164); END_STATE(); case 162: - if (lookahead == '_') ADVANCE(163); + ACCEPT_TOKEN(anon_sym_continue); END_STATE(); case 163: + ACCEPT_TOKEN(anon_sym_nonlocal); + END_STATE(); + case 164: + if (lookahead == '_') ADVANCE(165); + END_STATE(); + case 165: ACCEPT_TOKEN(anon_sym___future__); END_STATE(); default: @@ -6462,22 +6507,22 @@ static const TSLexMode ts_lex_modes[STATE_COUNT] = { [57] = {.lex_state = 51, .external_lex_state = 3}, [58] = {.lex_state = 51, .external_lex_state = 3}, [59] = {.lex_state = 51, .external_lex_state = 3}, - [60] = {.lex_state = 51, .external_lex_state = 2}, + [60] = {.lex_state = 51, .external_lex_state = 3}, [61] = {.lex_state = 51, .external_lex_state = 3}, [62] = {.lex_state = 51, .external_lex_state = 2}, [63] = {.lex_state = 51, .external_lex_state = 3}, [64] = {.lex_state = 51, .external_lex_state = 3}, - [65] = {.lex_state = 51, .external_lex_state = 3}, + [65] = {.lex_state = 51, .external_lex_state = 2}, [66] = {.lex_state = 51, .external_lex_state = 4}, [67] = {.lex_state = 51, .external_lex_state = 4}, - [68] = {.lex_state = 51, .external_lex_state = 4}, + [68] = {.lex_state = 51, .external_lex_state = 5}, [69] = {.lex_state = 51, .external_lex_state = 5}, [70] = {.lex_state = 51, .external_lex_state = 5}, [71] = {.lex_state = 51, .external_lex_state = 5}, [72] = {.lex_state = 51, .external_lex_state = 5}, [73] = {.lex_state = 51, .external_lex_state = 5}, [74] = {.lex_state = 51, .external_lex_state = 5}, - [75] = {.lex_state = 51, .external_lex_state = 5}, + [75] = {.lex_state = 51, .external_lex_state = 4}, [76] = {.lex_state = 51, .external_lex_state = 5}, [77] = {.lex_state = 51, .external_lex_state = 5}, [78] = {.lex_state = 51, .external_lex_state = 5}, @@ -6536,22 +6581,22 @@ static const TSLexMode ts_lex_modes[STATE_COUNT] = { [131] = {.lex_state = 51, .external_lex_state = 4}, [132] = {.lex_state = 51, .external_lex_state = 4}, [133] = {.lex_state = 51, .external_lex_state = 2}, - [134] = {.lex_state = 51, .external_lex_state = 4}, - [135] = {.lex_state = 51, .external_lex_state = 2}, + [134] = {.lex_state = 51, .external_lex_state = 2}, + [135] = {.lex_state = 51, .external_lex_state = 4}, [136] = {.lex_state = 51, .external_lex_state = 2}, [137] = {.lex_state = 51, .external_lex_state = 2}, [138] = {.lex_state = 51, .external_lex_state = 2}, - [139] = {.lex_state = 51, .external_lex_state = 2}, - [140] = {.lex_state = 51, .external_lex_state = 4}, - [141] = {.lex_state = 14, .external_lex_state = 2}, + [139] = {.lex_state = 51, .external_lex_state = 4}, + [140] = {.lex_state = 14, .external_lex_state = 2}, + [141] = {.lex_state = 51, .external_lex_state = 2}, [142] = {.lex_state = 51, .external_lex_state = 2}, [143] = {.lex_state = 51, .external_lex_state = 2}, [144] = {.lex_state = 51, .external_lex_state = 2}, - [145] = {.lex_state = 14, .external_lex_state = 2}, + [145] = {.lex_state = 51, .external_lex_state = 2}, [146] = {.lex_state = 51, .external_lex_state = 2}, - [147] = {.lex_state = 51, .external_lex_state = 2}, + [147] = {.lex_state = 51, .external_lex_state = 4}, [148] = {.lex_state = 51, .external_lex_state = 2}, - [149] = {.lex_state = 51, .external_lex_state = 4}, + [149] = {.lex_state = 14, .external_lex_state = 2}, [150] = {.lex_state = 51, .external_lex_state = 2}, [151] = {.lex_state = 51, .external_lex_state = 2}, [152] = {.lex_state = 51, .external_lex_state = 2}, @@ -6576,17 +6621,17 @@ static const TSLexMode ts_lex_modes[STATE_COUNT] = { [171] = {.lex_state = 51, .external_lex_state = 2}, [172] = {.lex_state = 51, .external_lex_state = 2}, [173] = {.lex_state = 51, .external_lex_state = 2}, - [174] = {.lex_state = 51, .external_lex_state = 4}, + [174] = {.lex_state = 51, .external_lex_state = 2}, [175] = {.lex_state = 51, .external_lex_state = 2}, [176] = {.lex_state = 51, .external_lex_state = 2}, - [177] = {.lex_state = 51, .external_lex_state = 2}, - [178] = {.lex_state = 14, .external_lex_state = 2}, - [179] = {.lex_state = 14, .external_lex_state = 2}, - [180] = {.lex_state = 14, .external_lex_state = 2}, - [181] = {.lex_state = 51, .external_lex_state = 2}, - [182] = {.lex_state = 51, .external_lex_state = 2}, - [183] = {.lex_state = 51, .external_lex_state = 2}, - [184] = {.lex_state = 51, .external_lex_state = 4}, + [177] = {.lex_state = 51, .external_lex_state = 4}, + [178] = {.lex_state = 51, .external_lex_state = 4}, + [179] = {.lex_state = 51, .external_lex_state = 2}, + [180] = {.lex_state = 51, .external_lex_state = 2}, + [181] = {.lex_state = 14, .external_lex_state = 2}, + [182] = {.lex_state = 14, .external_lex_state = 2}, + [183] = {.lex_state = 14, .external_lex_state = 2}, + [184] = {.lex_state = 51, .external_lex_state = 2}, [185] = {.lex_state = 51, .external_lex_state = 2}, [186] = {.lex_state = 51, .external_lex_state = 2}, [187] = {.lex_state = 51, .external_lex_state = 2}, @@ -6594,10 +6639,10 @@ static const TSLexMode ts_lex_modes[STATE_COUNT] = { [189] = {.lex_state = 51, .external_lex_state = 2}, [190] = {.lex_state = 51, .external_lex_state = 2}, [191] = {.lex_state = 51, .external_lex_state = 4}, - [192] = {.lex_state = 51, .external_lex_state = 2}, + [192] = {.lex_state = 51, .external_lex_state = 4}, [193] = {.lex_state = 51, .external_lex_state = 4}, [194] = {.lex_state = 51, .external_lex_state = 2}, - [195] = {.lex_state = 51, .external_lex_state = 2}, + [195] = {.lex_state = 51, .external_lex_state = 4}, [196] = {.lex_state = 51, .external_lex_state = 2}, [197] = {.lex_state = 51, .external_lex_state = 2}, [198] = {.lex_state = 51, .external_lex_state = 2}, @@ -6619,10 +6664,10 @@ static const TSLexMode ts_lex_modes[STATE_COUNT] = { [214] = {.lex_state = 51, .external_lex_state = 2}, [215] = {.lex_state = 51, .external_lex_state = 2}, [216] = {.lex_state = 51, .external_lex_state = 2}, - [217] = {.lex_state = 51, .external_lex_state = 4}, + [217] = {.lex_state = 51, .external_lex_state = 2}, [218] = {.lex_state = 51, .external_lex_state = 2}, [219] = {.lex_state = 51, .external_lex_state = 2}, - [220] = {.lex_state = 51, .external_lex_state = 4}, + [220] = {.lex_state = 51, .external_lex_state = 2}, [221] = {.lex_state = 51, .external_lex_state = 2}, [222] = {.lex_state = 51, .external_lex_state = 2}, [223] = {.lex_state = 51, .external_lex_state = 2}, @@ -6669,13 +6714,13 @@ static const TSLexMode ts_lex_modes[STATE_COUNT] = { [264] = {.lex_state = 51, .external_lex_state = 2}, [265] = {.lex_state = 51, .external_lex_state = 2}, [266] = {.lex_state = 51, .external_lex_state = 3}, - [267] = {.lex_state = 51, .external_lex_state = 3}, + [267] = {.lex_state = 51, .external_lex_state = 2}, [268] = {.lex_state = 51, .external_lex_state = 2}, [269] = {.lex_state = 51, .external_lex_state = 2}, [270] = {.lex_state = 51, .external_lex_state = 2}, - [271] = {.lex_state = 51, .external_lex_state = 2}, + [271] = {.lex_state = 51, .external_lex_state = 3}, [272] = {.lex_state = 51, .external_lex_state = 2}, - [273] = {.lex_state = 51, .external_lex_state = 2}, + [273] = {.lex_state = 51, .external_lex_state = 3}, [274] = {.lex_state = 51, .external_lex_state = 2}, [275] = {.lex_state = 51, .external_lex_state = 2}, [276] = {.lex_state = 51, .external_lex_state = 2}, @@ -6685,62 +6730,62 @@ static const TSLexMode ts_lex_modes[STATE_COUNT] = { [280] = {.lex_state = 51, .external_lex_state = 2}, [281] = {.lex_state = 51, .external_lex_state = 2}, [282] = {.lex_state = 51, .external_lex_state = 2}, - [283] = {.lex_state = 51, .external_lex_state = 3}, + [283] = {.lex_state = 51, .external_lex_state = 2}, [284] = {.lex_state = 51, .external_lex_state = 2}, [285] = {.lex_state = 51, .external_lex_state = 2}, [286] = {.lex_state = 51, .external_lex_state = 2}, [287] = {.lex_state = 51, .external_lex_state = 2}, - [288] = {.lex_state = 51, .external_lex_state = 2}, - [289] = {.lex_state = 51, .external_lex_state = 4}, + [288] = {.lex_state = 51, .external_lex_state = 4}, + [289] = {.lex_state = 51, .external_lex_state = 2}, [290] = {.lex_state = 51, .external_lex_state = 4}, [291] = {.lex_state = 51, .external_lex_state = 4}, - [292] = {.lex_state = 51, .external_lex_state = 2}, + [292] = {.lex_state = 51, .external_lex_state = 4}, [293] = {.lex_state = 51, .external_lex_state = 2}, - [294] = {.lex_state = 16}, + [294] = {.lex_state = 51, .external_lex_state = 2}, [295] = {.lex_state = 51, .external_lex_state = 2}, [296] = {.lex_state = 51, .external_lex_state = 2}, [297] = {.lex_state = 51, .external_lex_state = 2}, [298] = {.lex_state = 51, .external_lex_state = 2}, [299] = {.lex_state = 51, .external_lex_state = 2}, - [300] = {.lex_state = 51, .external_lex_state = 4}, + [300] = {.lex_state = 51, .external_lex_state = 2}, [301] = {.lex_state = 51, .external_lex_state = 2}, [302] = {.lex_state = 51, .external_lex_state = 2}, [303] = {.lex_state = 51, .external_lex_state = 2}, [304] = {.lex_state = 51, .external_lex_state = 2}, [305] = {.lex_state = 51, .external_lex_state = 2}, [306] = {.lex_state = 51, .external_lex_state = 2}, - [307] = {.lex_state = 16}, + [307] = {.lex_state = 51, .external_lex_state = 2}, [308] = {.lex_state = 51, .external_lex_state = 2}, [309] = {.lex_state = 51, .external_lex_state = 2}, - [310] = {.lex_state = 51, .external_lex_state = 2}, + [310] = {.lex_state = 51, .external_lex_state = 3}, [311] = {.lex_state = 51, .external_lex_state = 2}, [312] = {.lex_state = 51, .external_lex_state = 2}, [313] = {.lex_state = 51, .external_lex_state = 3}, - [314] = {.lex_state = 51, .external_lex_state = 3}, + [314] = {.lex_state = 51, .external_lex_state = 2}, [315] = {.lex_state = 51, .external_lex_state = 2}, [316] = {.lex_state = 51, .external_lex_state = 2}, [317] = {.lex_state = 51, .external_lex_state = 2}, - [318] = {.lex_state = 51, .external_lex_state = 2}, - [319] = {.lex_state = 51, .external_lex_state = 3}, - [320] = {.lex_state = 51, .external_lex_state = 3}, + [318] = {.lex_state = 51, .external_lex_state = 3}, + [319] = {.lex_state = 51, .external_lex_state = 2}, + [320] = {.lex_state = 51, .external_lex_state = 2}, [321] = {.lex_state = 51, .external_lex_state = 2}, - [322] = {.lex_state = 51, .external_lex_state = 2}, + [322] = {.lex_state = 51, .external_lex_state = 3}, [323] = {.lex_state = 51, .external_lex_state = 2}, - [324] = {.lex_state = 16, .external_lex_state = 6}, - [325] = {.lex_state = 51, .external_lex_state = 2}, + [324] = {.lex_state = 16}, + [325] = {.lex_state = 51, .external_lex_state = 3}, [326] = {.lex_state = 51, .external_lex_state = 3}, - [327] = {.lex_state = 51, .external_lex_state = 3}, - [328] = {.lex_state = 51, .external_lex_state = 2}, - [329] = {.lex_state = 51, .external_lex_state = 2}, + [327] = {.lex_state = 51, .external_lex_state = 2}, + [328] = {.lex_state = 16}, + [329] = {.lex_state = 51, .external_lex_state = 3}, [330] = {.lex_state = 51, .external_lex_state = 3}, - [331] = {.lex_state = 51, .external_lex_state = 3}, - [332] = {.lex_state = 51, .external_lex_state = 2}, + [331] = {.lex_state = 51, .external_lex_state = 2}, + [332] = {.lex_state = 51, .external_lex_state = 3}, [333] = {.lex_state = 51, .external_lex_state = 3}, - [334] = {.lex_state = 51, .external_lex_state = 2}, - [335] = {.lex_state = 51, .external_lex_state = 3}, - [336] = {.lex_state = 51, .external_lex_state = 3}, + [334] = {.lex_state = 51, .external_lex_state = 3}, + [335] = {.lex_state = 51, .external_lex_state = 2}, + [336] = {.lex_state = 51, .external_lex_state = 2}, [337] = {.lex_state = 51, .external_lex_state = 2}, - [338] = {.lex_state = 16, .external_lex_state = 6}, + [338] = {.lex_state = 51, .external_lex_state = 2}, [339] = {.lex_state = 51, .external_lex_state = 2}, [340] = {.lex_state = 51, .external_lex_state = 2}, [341] = {.lex_state = 51, .external_lex_state = 2}, @@ -6769,14 +6814,14 @@ static const TSLexMode ts_lex_modes[STATE_COUNT] = { [364] = {.lex_state = 51, .external_lex_state = 2}, [365] = {.lex_state = 51, .external_lex_state = 2}, [366] = {.lex_state = 51, .external_lex_state = 2}, - [367] = {.lex_state = 16, .external_lex_state = 7}, + [367] = {.lex_state = 51, .external_lex_state = 2}, [368] = {.lex_state = 51, .external_lex_state = 2}, [369] = {.lex_state = 51, .external_lex_state = 2}, [370] = {.lex_state = 51, .external_lex_state = 2}, [371] = {.lex_state = 51, .external_lex_state = 2}, [372] = {.lex_state = 51, .external_lex_state = 2}, [373] = {.lex_state = 51, .external_lex_state = 2}, - [374] = {.lex_state = 51, .external_lex_state = 2}, + [374] = {.lex_state = 51, .external_lex_state = 3}, [375] = {.lex_state = 51, .external_lex_state = 2}, [376] = {.lex_state = 51, .external_lex_state = 2}, [377] = {.lex_state = 51, .external_lex_state = 2}, @@ -6801,7 +6846,7 @@ static const TSLexMode ts_lex_modes[STATE_COUNT] = { [396] = {.lex_state = 51, .external_lex_state = 2}, [397] = {.lex_state = 51, .external_lex_state = 2}, [398] = {.lex_state = 51, .external_lex_state = 2}, - [399] = {.lex_state = 51, .external_lex_state = 3}, + [399] = {.lex_state = 51, .external_lex_state = 2}, [400] = {.lex_state = 51, .external_lex_state = 2}, [401] = {.lex_state = 51, .external_lex_state = 2}, [402] = {.lex_state = 51, .external_lex_state = 2}, @@ -6832,201 +6877,201 @@ static const TSLexMode ts_lex_modes[STATE_COUNT] = { [427] = {.lex_state = 51, .external_lex_state = 2}, [428] = {.lex_state = 51, .external_lex_state = 2}, [429] = {.lex_state = 51, .external_lex_state = 2}, - [430] = {.lex_state = 51, .external_lex_state = 2}, + [430] = {.lex_state = 16, .external_lex_state = 6}, [431] = {.lex_state = 51, .external_lex_state = 2}, [432] = {.lex_state = 51, .external_lex_state = 2}, - [433] = {.lex_state = 51, .external_lex_state = 2}, + [433] = {.lex_state = 16, .external_lex_state = 6}, [434] = {.lex_state = 51, .external_lex_state = 2}, - [435] = {.lex_state = 51, .external_lex_state = 2}, - [436] = {.lex_state = 51, .external_lex_state = 2}, - [437] = {.lex_state = 51, .external_lex_state = 3}, - [438] = {.lex_state = 51, .external_lex_state = 3}, - [439] = {.lex_state = 51, .external_lex_state = 3}, + [435] = {.lex_state = 51, .external_lex_state = 3}, + [436] = {.lex_state = 51, .external_lex_state = 3}, + [437] = {.lex_state = 51, .external_lex_state = 2}, + [438] = {.lex_state = 51, .external_lex_state = 2}, + [439] = {.lex_state = 51, .external_lex_state = 2}, [440] = {.lex_state = 51, .external_lex_state = 3}, [441] = {.lex_state = 51, .external_lex_state = 3}, [442] = {.lex_state = 51, .external_lex_state = 2}, [443] = {.lex_state = 51, .external_lex_state = 3}, [444] = {.lex_state = 51, .external_lex_state = 3}, - [445] = {.lex_state = 51, .external_lex_state = 3}, + [445] = {.lex_state = 51, .external_lex_state = 2}, [446] = {.lex_state = 51, .external_lex_state = 3}, [447] = {.lex_state = 51, .external_lex_state = 3}, [448] = {.lex_state = 51, .external_lex_state = 2}, [449] = {.lex_state = 51, .external_lex_state = 2}, - [450] = {.lex_state = 51, .external_lex_state = 2}, - [451] = {.lex_state = 51, .external_lex_state = 2}, - [452] = {.lex_state = 51, .external_lex_state = 3}, - [453] = {.lex_state = 51, .external_lex_state = 2}, + [450] = {.lex_state = 16, .external_lex_state = 6}, + [451] = {.lex_state = 51, .external_lex_state = 3}, + [452] = {.lex_state = 16, .external_lex_state = 7}, + [453] = {.lex_state = 51, .external_lex_state = 3}, [454] = {.lex_state = 51, .external_lex_state = 2}, - [455] = {.lex_state = 51, .external_lex_state = 2}, + [455] = {.lex_state = 51, .external_lex_state = 3}, [456] = {.lex_state = 51, .external_lex_state = 2}, [457] = {.lex_state = 51, .external_lex_state = 2}, - [458] = {.lex_state = 16, .external_lex_state = 6}, - [459] = {.lex_state = 51, .external_lex_state = 2}, - [460] = {.lex_state = 51, .external_lex_state = 3}, + [458] = {.lex_state = 51, .external_lex_state = 2}, + [459] = {.lex_state = 51, .external_lex_state = 3}, + [460] = {.lex_state = 51, .external_lex_state = 2}, [461] = {.lex_state = 51, .external_lex_state = 2}, - [462] = {.lex_state = 16, .external_lex_state = 6}, - [463] = {.lex_state = 51, .external_lex_state = 2}, + [462] = {.lex_state = 51, .external_lex_state = 2}, + [463] = {.lex_state = 51, .external_lex_state = 3}, [464] = {.lex_state = 51, .external_lex_state = 2}, - [465] = {.lex_state = 16, .external_lex_state = 6}, + [465] = {.lex_state = 51, .external_lex_state = 2}, [466] = {.lex_state = 51, .external_lex_state = 3}, [467] = {.lex_state = 51, .external_lex_state = 2}, - [468] = {.lex_state = 51, .external_lex_state = 2}, + [468] = {.lex_state = 51, .external_lex_state = 3}, [469] = {.lex_state = 51, .external_lex_state = 3}, [470] = {.lex_state = 51, .external_lex_state = 3}, [471] = {.lex_state = 51, .external_lex_state = 2}, - [472] = {.lex_state = 51, .external_lex_state = 2}, - [473] = {.lex_state = 51, .external_lex_state = 3}, - [474] = {.lex_state = 16}, - [475] = {.lex_state = 16, .external_lex_state = 6}, + [472] = {.lex_state = 51, .external_lex_state = 3}, + [473] = {.lex_state = 51, .external_lex_state = 2}, + [474] = {.lex_state = 51, .external_lex_state = 2}, + [475] = {.lex_state = 51, .external_lex_state = 3}, [476] = {.lex_state = 51, .external_lex_state = 2}, - [477] = {.lex_state = 51, .external_lex_state = 3}, + [477] = {.lex_state = 51, .external_lex_state = 2}, [478] = {.lex_state = 51, .external_lex_state = 2}, [479] = {.lex_state = 51, .external_lex_state = 3}, - [480] = {.lex_state = 51, .external_lex_state = 3}, - [481] = {.lex_state = 51, .external_lex_state = 2}, + [480] = {.lex_state = 16, .external_lex_state = 6}, + [481] = {.lex_state = 51, .external_lex_state = 3}, [482] = {.lex_state = 51, .external_lex_state = 2}, - [483] = {.lex_state = 16, .external_lex_state = 6}, + [483] = {.lex_state = 51, .external_lex_state = 3}, [484] = {.lex_state = 51, .external_lex_state = 2}, [485] = {.lex_state = 51, .external_lex_state = 2}, [486] = {.lex_state = 51, .external_lex_state = 3}, - [487] = {.lex_state = 16}, + [487] = {.lex_state = 16, .external_lex_state = 6}, [488] = {.lex_state = 51, .external_lex_state = 3}, - [489] = {.lex_state = 51, .external_lex_state = 3}, - [490] = {.lex_state = 51, .external_lex_state = 2}, + [489] = {.lex_state = 51, .external_lex_state = 2}, + [490] = {.lex_state = 16}, [491] = {.lex_state = 51, .external_lex_state = 3}, - [492] = {.lex_state = 51, .external_lex_state = 3}, + [492] = {.lex_state = 51, .external_lex_state = 2}, [493] = {.lex_state = 51, .external_lex_state = 2}, - [494] = {.lex_state = 16, .external_lex_state = 6}, - [495] = {.lex_state = 51, .external_lex_state = 2}, - [496] = {.lex_state = 51, .external_lex_state = 2}, - [497] = {.lex_state = 51, .external_lex_state = 2}, + [494] = {.lex_state = 16}, + [495] = {.lex_state = 51, .external_lex_state = 3}, + [496] = {.lex_state = 16, .external_lex_state = 6}, + [497] = {.lex_state = 51, .external_lex_state = 3}, [498] = {.lex_state = 51, .external_lex_state = 2}, - [499] = {.lex_state = 51, .external_lex_state = 2}, + [499] = {.lex_state = 16, .external_lex_state = 6}, [500] = {.lex_state = 51, .external_lex_state = 2}, [501] = {.lex_state = 51, .external_lex_state = 2}, - [502] = {.lex_state = 16, .external_lex_state = 6}, - [503] = {.lex_state = 51, .external_lex_state = 3}, - [504] = {.lex_state = 51, .external_lex_state = 3}, - [505] = {.lex_state = 51, .external_lex_state = 3}, + [502] = {.lex_state = 51, .external_lex_state = 3}, + [503] = {.lex_state = 16, .external_lex_state = 6}, + [504] = {.lex_state = 51, .external_lex_state = 2}, + [505] = {.lex_state = 51, .external_lex_state = 2}, [506] = {.lex_state = 51, .external_lex_state = 3}, - [507] = {.lex_state = 51, .external_lex_state = 3}, + [507] = {.lex_state = 51, .external_lex_state = 2}, [508] = {.lex_state = 51, .external_lex_state = 2}, - [509] = {.lex_state = 16}, + [509] = {.lex_state = 51, .external_lex_state = 2}, [510] = {.lex_state = 51, .external_lex_state = 2}, - [511] = {.lex_state = 51, .external_lex_state = 2}, - [512] = {.lex_state = 51, .external_lex_state = 2}, - [513] = {.lex_state = 16, .external_lex_state = 6}, + [511] = {.lex_state = 51, .external_lex_state = 3}, + [512] = {.lex_state = 51, .external_lex_state = 3}, + [513] = {.lex_state = 51, .external_lex_state = 3}, [514] = {.lex_state = 51, .external_lex_state = 2}, [515] = {.lex_state = 51, .external_lex_state = 2}, - [516] = {.lex_state = 51, .external_lex_state = 2}, + [516] = {.lex_state = 51, .external_lex_state = 3}, [517] = {.lex_state = 51, .external_lex_state = 2}, - [518] = {.lex_state = 51, .external_lex_state = 2}, - [519] = {.lex_state = 51, .external_lex_state = 2}, - [520] = {.lex_state = 51, .external_lex_state = 2}, - [521] = {.lex_state = 51, .external_lex_state = 2}, - [522] = {.lex_state = 51, .external_lex_state = 2}, - [523] = {.lex_state = 51, .external_lex_state = 2}, - [524] = {.lex_state = 51, .external_lex_state = 2}, - [525] = {.lex_state = 51, .external_lex_state = 2}, - [526] = {.lex_state = 51, .external_lex_state = 2}, - [527] = {.lex_state = 51, .external_lex_state = 2}, - [528] = {.lex_state = 51, .external_lex_state = 2}, - [529] = {.lex_state = 51, .external_lex_state = 2}, - [530] = {.lex_state = 51, .external_lex_state = 2}, - [531] = {.lex_state = 51, .external_lex_state = 2}, - [532] = {.lex_state = 51, .external_lex_state = 2}, - [533] = {.lex_state = 51, .external_lex_state = 2}, - [534] = {.lex_state = 51, .external_lex_state = 2}, - [535] = {.lex_state = 51, .external_lex_state = 2}, - [536] = {.lex_state = 51, .external_lex_state = 2}, - [537] = {.lex_state = 51, .external_lex_state = 2}, - [538] = {.lex_state = 51, .external_lex_state = 2}, - [539] = {.lex_state = 51, .external_lex_state = 2}, - [540] = {.lex_state = 51, .external_lex_state = 2}, - [541] = {.lex_state = 51, .external_lex_state = 2}, - [542] = {.lex_state = 51, .external_lex_state = 2}, - [543] = {.lex_state = 51, .external_lex_state = 2}, + [518] = {.lex_state = 51, .external_lex_state = 3}, + [519] = {.lex_state = 51, .external_lex_state = 3}, + [520] = {.lex_state = 51, .external_lex_state = 3}, + [521] = {.lex_state = 51, .external_lex_state = 3}, + [522] = {.lex_state = 51, .external_lex_state = 3}, + [523] = {.lex_state = 51, .external_lex_state = 3}, + [524] = {.lex_state = 51, .external_lex_state = 3}, + [525] = {.lex_state = 51, .external_lex_state = 3}, + [526] = {.lex_state = 51, .external_lex_state = 3}, + [527] = {.lex_state = 51, .external_lex_state = 3}, + [528] = {.lex_state = 51, .external_lex_state = 3}, + [529] = {.lex_state = 51, .external_lex_state = 3}, + [530] = {.lex_state = 51, .external_lex_state = 3}, + [531] = {.lex_state = 51, .external_lex_state = 3}, + [532] = {.lex_state = 51, .external_lex_state = 3}, + [533] = {.lex_state = 51, .external_lex_state = 3}, + [534] = {.lex_state = 51, .external_lex_state = 3}, + [535] = {.lex_state = 51, .external_lex_state = 3}, + [536] = {.lex_state = 51, .external_lex_state = 3}, + [537] = {.lex_state = 51, .external_lex_state = 3}, + [538] = {.lex_state = 51, .external_lex_state = 3}, + [539] = {.lex_state = 51, .external_lex_state = 3}, + [540] = {.lex_state = 51, .external_lex_state = 3}, + [541] = {.lex_state = 51, .external_lex_state = 3}, + [542] = {.lex_state = 51, .external_lex_state = 3}, + [543] = {.lex_state = 51, .external_lex_state = 3}, [544] = {.lex_state = 51, .external_lex_state = 2}, - [545] = {.lex_state = 51, .external_lex_state = 2}, - [546] = {.lex_state = 51, .external_lex_state = 2}, - [547] = {.lex_state = 51, .external_lex_state = 2}, + [545] = {.lex_state = 51, .external_lex_state = 3}, + [546] = {.lex_state = 51, .external_lex_state = 3}, + [547] = {.lex_state = 51, .external_lex_state = 3}, [548] = {.lex_state = 51, .external_lex_state = 2}, - [549] = {.lex_state = 51, .external_lex_state = 2}, + [549] = {.lex_state = 51, .external_lex_state = 3}, [550] = {.lex_state = 51, .external_lex_state = 2}, - [551] = {.lex_state = 51, .external_lex_state = 2}, - [552] = {.lex_state = 51, .external_lex_state = 3}, + [551] = {.lex_state = 51, .external_lex_state = 3}, + [552] = {.lex_state = 51, .external_lex_state = 2}, [553] = {.lex_state = 51, .external_lex_state = 3}, [554] = {.lex_state = 51, .external_lex_state = 3}, [555] = {.lex_state = 51, .external_lex_state = 3}, - [556] = {.lex_state = 51, .external_lex_state = 3}, - [557] = {.lex_state = 51, .external_lex_state = 3}, + [556] = {.lex_state = 51, .external_lex_state = 2}, + [557] = {.lex_state = 16, .external_lex_state = 6}, [558] = {.lex_state = 51, .external_lex_state = 3}, [559] = {.lex_state = 51, .external_lex_state = 3}, [560] = {.lex_state = 51, .external_lex_state = 3}, [561] = {.lex_state = 51, .external_lex_state = 3}, [562] = {.lex_state = 51, .external_lex_state = 3}, - [563] = {.lex_state = 51, .external_lex_state = 3}, + [563] = {.lex_state = 51, .external_lex_state = 2}, [564] = {.lex_state = 51, .external_lex_state = 3}, [565] = {.lex_state = 51, .external_lex_state = 3}, - [566] = {.lex_state = 51, .external_lex_state = 3}, - [567] = {.lex_state = 51, .external_lex_state = 3}, - [568] = {.lex_state = 51, .external_lex_state = 3}, - [569] = {.lex_state = 51, .external_lex_state = 3}, - [570] = {.lex_state = 51, .external_lex_state = 3}, - [571] = {.lex_state = 51, .external_lex_state = 3}, - [572] = {.lex_state = 51, .external_lex_state = 3}, - [573] = {.lex_state = 51, .external_lex_state = 3}, - [574] = {.lex_state = 51, .external_lex_state = 3}, - [575] = {.lex_state = 51, .external_lex_state = 3}, - [576] = {.lex_state = 51, .external_lex_state = 3}, - [577] = {.lex_state = 51, .external_lex_state = 3}, - [578] = {.lex_state = 51, .external_lex_state = 3}, - [579] = {.lex_state = 51, .external_lex_state = 3}, - [580] = {.lex_state = 51, .external_lex_state = 3}, + [566] = {.lex_state = 51, .external_lex_state = 2}, + [567] = {.lex_state = 51, .external_lex_state = 2}, + [568] = {.lex_state = 51, .external_lex_state = 2}, + [569] = {.lex_state = 51, .external_lex_state = 2}, + [570] = {.lex_state = 51, .external_lex_state = 2}, + [571] = {.lex_state = 16, .external_lex_state = 6}, + [572] = {.lex_state = 51, .external_lex_state = 2}, + [573] = {.lex_state = 51, .external_lex_state = 2}, + [574] = {.lex_state = 51, .external_lex_state = 2}, + [575] = {.lex_state = 51, .external_lex_state = 2}, + [576] = {.lex_state = 51, .external_lex_state = 2}, + [577] = {.lex_state = 51, .external_lex_state = 2}, + [578] = {.lex_state = 51, .external_lex_state = 2}, + [579] = {.lex_state = 51, .external_lex_state = 2}, + [580] = {.lex_state = 51, .external_lex_state = 2}, [581] = {.lex_state = 51, .external_lex_state = 2}, - [582] = {.lex_state = 51, .external_lex_state = 3}, - [583] = {.lex_state = 51, .external_lex_state = 3}, - [584] = {.lex_state = 51, .external_lex_state = 3}, - [585] = {.lex_state = 51, .external_lex_state = 3}, - [586] = {.lex_state = 51, .external_lex_state = 3}, - [587] = {.lex_state = 51, .external_lex_state = 3}, + [582] = {.lex_state = 16, .external_lex_state = 6}, + [583] = {.lex_state = 51, .external_lex_state = 2}, + [584] = {.lex_state = 51, .external_lex_state = 2}, + [585] = {.lex_state = 16}, + [586] = {.lex_state = 51, .external_lex_state = 2}, + [587] = {.lex_state = 51, .external_lex_state = 2}, [588] = {.lex_state = 51, .external_lex_state = 2}, - [589] = {.lex_state = 51, .external_lex_state = 3}, - [590] = {.lex_state = 51, .external_lex_state = 3}, - [591] = {.lex_state = 51, .external_lex_state = 3}, - [592] = {.lex_state = 51, .external_lex_state = 3}, - [593] = {.lex_state = 51, .external_lex_state = 3}, - [594] = {.lex_state = 51, .external_lex_state = 3}, - [595] = {.lex_state = 51, .external_lex_state = 3}, + [589] = {.lex_state = 51, .external_lex_state = 2}, + [590] = {.lex_state = 51, .external_lex_state = 2}, + [591] = {.lex_state = 51, .external_lex_state = 2}, + [592] = {.lex_state = 51, .external_lex_state = 2}, + [593] = {.lex_state = 51, .external_lex_state = 2}, + [594] = {.lex_state = 51, .external_lex_state = 2}, + [595] = {.lex_state = 51, .external_lex_state = 2}, [596] = {.lex_state = 51, .external_lex_state = 2}, [597] = {.lex_state = 51, .external_lex_state = 2}, - [598] = {.lex_state = 51, .external_lex_state = 3}, - [599] = {.lex_state = 51, .external_lex_state = 3}, - [600] = {.lex_state = 51, .external_lex_state = 3}, - [601] = {.lex_state = 51, .external_lex_state = 3}, - [602] = {.lex_state = 51, .external_lex_state = 3}, - [603] = {.lex_state = 51, .external_lex_state = 3}, - [604] = {.lex_state = 51, .external_lex_state = 3}, + [598] = {.lex_state = 51, .external_lex_state = 2}, + [599] = {.lex_state = 51, .external_lex_state = 2}, + [600] = {.lex_state = 51, .external_lex_state = 2}, + [601] = {.lex_state = 51, .external_lex_state = 2}, + [602] = {.lex_state = 51, .external_lex_state = 2}, + [603] = {.lex_state = 51, .external_lex_state = 2}, + [604] = {.lex_state = 51, .external_lex_state = 2}, [605] = {.lex_state = 51, .external_lex_state = 2}, [606] = {.lex_state = 51, .external_lex_state = 2}, [607] = {.lex_state = 51, .external_lex_state = 2}, [608] = {.lex_state = 51, .external_lex_state = 2}, [609] = {.lex_state = 51, .external_lex_state = 2}, - [610] = {.lex_state = 51, .external_lex_state = 2}, - [611] = {.lex_state = 51, .external_lex_state = 2}, - [612] = {.lex_state = 51, .external_lex_state = 2}, + [610] = {.lex_state = 51, .external_lex_state = 3}, + [611] = {.lex_state = 51, .external_lex_state = 3}, + [612] = {.lex_state = 51, .external_lex_state = 3}, [613] = {.lex_state = 51, .external_lex_state = 2}, - [614] = {.lex_state = 51, .external_lex_state = 2}, + [614] = {.lex_state = 51, .external_lex_state = 3}, [615] = {.lex_state = 51, .external_lex_state = 2}, - [616] = {.lex_state = 16, .external_lex_state = 8}, - [617] = {.lex_state = 16, .external_lex_state = 9}, + [616] = {.lex_state = 51, .external_lex_state = 2}, + [617] = {.lex_state = 51, .external_lex_state = 2}, [618] = {.lex_state = 51, .external_lex_state = 2}, - [619] = {.lex_state = 16, .external_lex_state = 8}, - [620] = {.lex_state = 16, .external_lex_state = 9}, - [621] = {.lex_state = 16, .external_lex_state = 8}, + [619] = {.lex_state = 51, .external_lex_state = 2}, + [620] = {.lex_state = 51, .external_lex_state = 2}, + [621] = {.lex_state = 51, .external_lex_state = 2}, [622] = {.lex_state = 51, .external_lex_state = 2}, [623] = {.lex_state = 51, .external_lex_state = 2}, - [624] = {.lex_state = 16, .external_lex_state = 9}, + [624] = {.lex_state = 51, .external_lex_state = 2}, [625] = {.lex_state = 51, .external_lex_state = 2}, [626] = {.lex_state = 51, .external_lex_state = 2}, [627] = {.lex_state = 51, .external_lex_state = 2}, @@ -7047,7 +7092,7 @@ static const TSLexMode ts_lex_modes[STATE_COUNT] = { [642] = {.lex_state = 51, .external_lex_state = 2}, [643] = {.lex_state = 51, .external_lex_state = 2}, [644] = {.lex_state = 51, .external_lex_state = 2}, - [645] = {.lex_state = 51, .external_lex_state = 2}, + [645] = {.lex_state = 16, .external_lex_state = 8}, [646] = {.lex_state = 51, .external_lex_state = 2}, [647] = {.lex_state = 51, .external_lex_state = 2}, [648] = {.lex_state = 51, .external_lex_state = 2}, @@ -7060,7 +7105,7 @@ static const TSLexMode ts_lex_modes[STATE_COUNT] = { [655] = {.lex_state = 51, .external_lex_state = 2}, [656] = {.lex_state = 51, .external_lex_state = 2}, [657] = {.lex_state = 51, .external_lex_state = 2}, - [658] = {.lex_state = 51, .external_lex_state = 2}, + [658] = {.lex_state = 16, .external_lex_state = 9}, [659] = {.lex_state = 51, .external_lex_state = 2}, [660] = {.lex_state = 51, .external_lex_state = 2}, [661] = {.lex_state = 51, .external_lex_state = 2}, @@ -7077,8 +7122,8 @@ static const TSLexMode ts_lex_modes[STATE_COUNT] = { [672] = {.lex_state = 51, .external_lex_state = 2}, [673] = {.lex_state = 51, .external_lex_state = 2}, [674] = {.lex_state = 51, .external_lex_state = 2}, - [675] = {.lex_state = 51, .external_lex_state = 2}, - [676] = {.lex_state = 51, .external_lex_state = 2}, + [675] = {.lex_state = 16, .external_lex_state = 8}, + [676] = {.lex_state = 16, .external_lex_state = 9}, [677] = {.lex_state = 51, .external_lex_state = 2}, [678] = {.lex_state = 51, .external_lex_state = 2}, [679] = {.lex_state = 51, .external_lex_state = 2}, @@ -7094,15 +7139,15 @@ static const TSLexMode ts_lex_modes[STATE_COUNT] = { [689] = {.lex_state = 51, .external_lex_state = 2}, [690] = {.lex_state = 51, .external_lex_state = 2}, [691] = {.lex_state = 51, .external_lex_state = 2}, - [692] = {.lex_state = 51, .external_lex_state = 2}, - [693] = {.lex_state = 51, .external_lex_state = 2}, + [692] = {.lex_state = 16, .external_lex_state = 8}, + [693] = {.lex_state = 16, .external_lex_state = 9}, [694] = {.lex_state = 51, .external_lex_state = 2}, - [695] = {.lex_state = 16, .external_lex_state = 8}, - [696] = {.lex_state = 16, .external_lex_state = 9}, + [695] = {.lex_state = 51, .external_lex_state = 2}, + [696] = {.lex_state = 16, .external_lex_state = 8}, [697] = {.lex_state = 16, .external_lex_state = 8}, [698] = {.lex_state = 16, .external_lex_state = 9}, - [699] = {.lex_state = 16}, - [700] = {.lex_state = 16}, + [699] = {.lex_state = 16, .external_lex_state = 9}, + [700] = {.lex_state = 15}, [701] = {.lex_state = 16}, [702] = {.lex_state = 16}, [703] = {.lex_state = 16}, @@ -7114,15 +7159,15 @@ static const TSLexMode ts_lex_modes[STATE_COUNT] = { [709] = {.lex_state = 16}, [710] = {.lex_state = 16}, [711] = {.lex_state = 16}, - [712] = {.lex_state = 15}, - [713] = {.lex_state = 15}, + [712] = {.lex_state = 16}, + [713] = {.lex_state = 16}, [714] = {.lex_state = 16}, [715] = {.lex_state = 16}, [716] = {.lex_state = 16}, [717] = {.lex_state = 16}, [718] = {.lex_state = 16}, [719] = {.lex_state = 16}, - [720] = {.lex_state = 16}, + [720] = {.lex_state = 15}, [721] = {.lex_state = 16}, [722] = {.lex_state = 16}, [723] = {.lex_state = 16}, @@ -7140,214 +7185,214 @@ static const TSLexMode ts_lex_modes[STATE_COUNT] = { [735] = {.lex_state = 16}, [736] = {.lex_state = 16}, [737] = {.lex_state = 16}, - [738] = {.lex_state = 16}, + [738] = {.lex_state = 16, .external_lex_state = 9}, [739] = {.lex_state = 16}, [740] = {.lex_state = 16}, [741] = {.lex_state = 16}, [742] = {.lex_state = 16}, [743] = {.lex_state = 16}, - [744] = {.lex_state = 16, .external_lex_state = 8}, - [745] = {.lex_state = 16, .external_lex_state = 9}, - [746] = {.lex_state = 16, .external_lex_state = 8}, - [747] = {.lex_state = 16, .external_lex_state = 9}, + [744] = {.lex_state = 16}, + [745] = {.lex_state = 16}, + [746] = {.lex_state = 16}, + [747] = {.lex_state = 16}, [748] = {.lex_state = 16}, [749] = {.lex_state = 16}, [750] = {.lex_state = 16}, [751] = {.lex_state = 16}, - [752] = {.lex_state = 16}, + [752] = {.lex_state = 16, .external_lex_state = 8}, [753] = {.lex_state = 16}, [754] = {.lex_state = 16}, [755] = {.lex_state = 16}, [756] = {.lex_state = 16}, [757] = {.lex_state = 16}, [758] = {.lex_state = 16}, - [759] = {.lex_state = 16}, - [760] = {.lex_state = 16}, + [759] = {.lex_state = 16, .external_lex_state = 8}, + [760] = {.lex_state = 16, .external_lex_state = 9}, [761] = {.lex_state = 16}, - [762] = {.lex_state = 15, .external_lex_state = 9}, - [763] = {.lex_state = 16, .external_lex_state = 10}, + [762] = {.lex_state = 16}, + [763] = {.lex_state = 15}, [764] = {.lex_state = 16}, - [765] = {.lex_state = 16, .external_lex_state = 7}, - [766] = {.lex_state = 15}, + [765] = {.lex_state = 16, .external_lex_state = 6}, + [766] = {.lex_state = 15, .external_lex_state = 8}, [767] = {.lex_state = 15, .external_lex_state = 8}, [768] = {.lex_state = 15, .external_lex_state = 9}, - [769] = {.lex_state = 15, .external_lex_state = 8}, - [770] = {.lex_state = 15, .external_lex_state = 9}, - [771] = {.lex_state = 15, .external_lex_state = 8}, + [769] = {.lex_state = 16, .external_lex_state = 10}, + [770] = {.lex_state = 15, .external_lex_state = 8}, + [771] = {.lex_state = 15, .external_lex_state = 9}, [772] = {.lex_state = 16}, [773] = {.lex_state = 16}, - [774] = {.lex_state = 16}, + [774] = {.lex_state = 16, .external_lex_state = 10}, [775] = {.lex_state = 16, .external_lex_state = 7}, - [776] = {.lex_state = 16, .external_lex_state = 10}, + [776] = {.lex_state = 15, .external_lex_state = 9}, [777] = {.lex_state = 16}, [778] = {.lex_state = 16, .external_lex_state = 10}, - [779] = {.lex_state = 16, .external_lex_state = 6}, + [779] = {.lex_state = 16, .external_lex_state = 7}, [780] = {.lex_state = 16}, [781] = {.lex_state = 16}, [782] = {.lex_state = 16, .external_lex_state = 7}, - [783] = {.lex_state = 15}, - [784] = {.lex_state = 15}, - [785] = {.lex_state = 15}, - [786] = {.lex_state = 15}, - [787] = {.lex_state = 15}, - [788] = {.lex_state = 15}, - [789] = {.lex_state = 15}, - [790] = {.lex_state = 16}, - [791] = {.lex_state = 15}, - [792] = {.lex_state = 15}, - [793] = {.lex_state = 15}, - [794] = {.lex_state = 16, .external_lex_state = 8}, - [795] = {.lex_state = 16, .external_lex_state = 9}, - [796] = {.lex_state = 16, .external_lex_state = 6}, - [797] = {.lex_state = 15}, - [798] = {.lex_state = 15}, - [799] = {.lex_state = 16, .external_lex_state = 6}, - [800] = {.lex_state = 16, .external_lex_state = 6}, - [801] = {.lex_state = 16, .external_lex_state = 6}, - [802] = {.lex_state = 16, .external_lex_state = 6}, + [783] = {.lex_state = 16}, + [784] = {.lex_state = 16}, + [785] = {.lex_state = 16, .external_lex_state = 6}, + [786] = {.lex_state = 16, .external_lex_state = 6}, + [787] = {.lex_state = 16, .external_lex_state = 8}, + [788] = {.lex_state = 16, .external_lex_state = 9}, + [789] = {.lex_state = 16, .external_lex_state = 6}, + [790] = {.lex_state = 16, .external_lex_state = 6}, + [791] = {.lex_state = 16, .external_lex_state = 6}, + [792] = {.lex_state = 16}, + [793] = {.lex_state = 16, .external_lex_state = 8}, + [794] = {.lex_state = 16, .external_lex_state = 9}, + [795] = {.lex_state = 16, .external_lex_state = 8}, + [796] = {.lex_state = 16, .external_lex_state = 9}, + [797] = {.lex_state = 16, .external_lex_state = 6}, + [798] = {.lex_state = 16, .external_lex_state = 6}, + [799] = {.lex_state = 15}, + [800] = {.lex_state = 15}, + [801] = {.lex_state = 15}, + [802] = {.lex_state = 15}, [803] = {.lex_state = 16}, - [804] = {.lex_state = 16, .external_lex_state = 6}, - [805] = {.lex_state = 16, .external_lex_state = 6}, - [806] = {.lex_state = 16, .external_lex_state = 8}, - [807] = {.lex_state = 16, .external_lex_state = 9}, - [808] = {.lex_state = 16, .external_lex_state = 8}, - [809] = {.lex_state = 16, .external_lex_state = 9}, - [810] = {.lex_state = 16, .external_lex_state = 6}, - [811] = {.lex_state = 16, .external_lex_state = 6}, - [812] = {.lex_state = 16}, + [804] = {.lex_state = 15}, + [805] = {.lex_state = 16}, + [806] = {.lex_state = 16}, + [807] = {.lex_state = 16}, + [808] = {.lex_state = 16}, + [809] = {.lex_state = 15}, + [810] = {.lex_state = 16}, + [811] = {.lex_state = 16}, + [812] = {.lex_state = 15}, [813] = {.lex_state = 16}, [814] = {.lex_state = 16}, - [815] = {.lex_state = 16}, - [816] = {.lex_state = 16}, - [817] = {.lex_state = 16}, - [818] = {.lex_state = 16}, - [819] = {.lex_state = 16}, - [820] = {.lex_state = 16}, - [821] = {.lex_state = 16}, - [822] = {.lex_state = 16}, + [815] = {.lex_state = 15}, + [816] = {.lex_state = 15}, + [817] = {.lex_state = 16, .external_lex_state = 6}, + [818] = {.lex_state = 16, .external_lex_state = 6}, + [819] = {.lex_state = 15}, + [820] = {.lex_state = 15}, + [821] = {.lex_state = 16, .external_lex_state = 6}, + [822] = {.lex_state = 15}, [823] = {.lex_state = 16, .external_lex_state = 6}, [824] = {.lex_state = 16, .external_lex_state = 6}, - [825] = {.lex_state = 16, .external_lex_state = 6}, - [826] = {.lex_state = 16, .external_lex_state = 6}, - [827] = {.lex_state = 16, .external_lex_state = 10}, + [825] = {.lex_state = 16}, + [826] = {.lex_state = 16}, + [827] = {.lex_state = 51, .external_lex_state = 2}, [828] = {.lex_state = 16}, [829] = {.lex_state = 16}, - [830] = {.lex_state = 16, .external_lex_state = 10}, + [830] = {.lex_state = 51, .external_lex_state = 2}, [831] = {.lex_state = 16}, [832] = {.lex_state = 16}, [833] = {.lex_state = 16}, [834] = {.lex_state = 16}, [835] = {.lex_state = 16}, - [836] = {.lex_state = 16}, - [837] = {.lex_state = 16}, + [836] = {.lex_state = 16, .external_lex_state = 7}, + [837] = {.lex_state = 15, .external_lex_state = 9}, [838] = {.lex_state = 16}, [839] = {.lex_state = 16}, - [840] = {.lex_state = 15}, - [841] = {.lex_state = 15, .external_lex_state = 8}, + [840] = {.lex_state = 16}, + [841] = {.lex_state = 16}, [842] = {.lex_state = 16}, - [843] = {.lex_state = 16}, - [844] = {.lex_state = 16}, + [843] = {.lex_state = 15, .external_lex_state = 8}, + [844] = {.lex_state = 16, .external_lex_state = 6}, [845] = {.lex_state = 16}, - [846] = {.lex_state = 51, .external_lex_state = 2}, - [847] = {.lex_state = 16, .external_lex_state = 7}, + [846] = {.lex_state = 16}, + [847] = {.lex_state = 51, .external_lex_state = 2}, [848] = {.lex_state = 16}, [849] = {.lex_state = 16}, - [850] = {.lex_state = 15, .external_lex_state = 8}, - [851] = {.lex_state = 15, .external_lex_state = 9}, - [852] = {.lex_state = 16}, - [853] = {.lex_state = 16, .external_lex_state = 6}, - [854] = {.lex_state = 51, .external_lex_state = 2}, + [850] = {.lex_state = 16}, + [851] = {.lex_state = 16, .external_lex_state = 6}, + [852] = {.lex_state = 16, .external_lex_state = 7}, + [853] = {.lex_state = 15, .external_lex_state = 8}, + [854] = {.lex_state = 16}, [855] = {.lex_state = 16}, - [856] = {.lex_state = 51, .external_lex_state = 2}, - [857] = {.lex_state = 16}, - [858] = {.lex_state = 16}, - [859] = {.lex_state = 15, .external_lex_state = 9}, - [860] = {.lex_state = 16}, - [861] = {.lex_state = 16, .external_lex_state = 7}, - [862] = {.lex_state = 51, .external_lex_state = 2}, - [863] = {.lex_state = 16}, - [864] = {.lex_state = 16}, + [856] = {.lex_state = 16}, + [857] = {.lex_state = 16, .external_lex_state = 10}, + [858] = {.lex_state = 51, .external_lex_state = 2}, + [859] = {.lex_state = 16}, + [860] = {.lex_state = 16, .external_lex_state = 10}, + [861] = {.lex_state = 16}, + [862] = {.lex_state = 16}, + [863] = {.lex_state = 15}, + [864] = {.lex_state = 15, .external_lex_state = 9}, [865] = {.lex_state = 15}, - [866] = {.lex_state = 15}, + [866] = {.lex_state = 16}, [867] = {.lex_state = 16, .external_lex_state = 6}, - [868] = {.lex_state = 15}, + [868] = {.lex_state = 16, .external_lex_state = 6}, [869] = {.lex_state = 15}, - [870] = {.lex_state = 16}, + [870] = {.lex_state = 15}, [871] = {.lex_state = 16}, - [872] = {.lex_state = 15}, + [872] = {.lex_state = 16}, [873] = {.lex_state = 15}, - [874] = {.lex_state = 15}, - [875] = {.lex_state = 15}, + [874] = {.lex_state = 51, .external_lex_state = 2}, + [875] = {.lex_state = 51, .external_lex_state = 2}, [876] = {.lex_state = 15}, - [877] = {.lex_state = 15}, - [878] = {.lex_state = 16, .external_lex_state = 6}, - [879] = {.lex_state = 15}, + [877] = {.lex_state = 16}, + [878] = {.lex_state = 15}, + [879] = {.lex_state = 16}, [880] = {.lex_state = 15}, - [881] = {.lex_state = 15}, - [882] = {.lex_state = 15}, - [883] = {.lex_state = 15}, - [884] = {.lex_state = 15}, - [885] = {.lex_state = 15}, - [886] = {.lex_state = 16, .external_lex_state = 6}, - [887] = {.lex_state = 15}, - [888] = {.lex_state = 15}, - [889] = {.lex_state = 15}, - [890] = {.lex_state = 15}, - [891] = {.lex_state = 16, .external_lex_state = 6}, - [892] = {.lex_state = 15}, - [893] = {.lex_state = 15}, + [881] = {.lex_state = 16, .external_lex_state = 6}, + [882] = {.lex_state = 16, .external_lex_state = 6}, + [883] = {.lex_state = 16}, + [884] = {.lex_state = 16, .external_lex_state = 6}, + [885] = {.lex_state = 16, .external_lex_state = 6}, + [886] = {.lex_state = 15}, + [887] = {.lex_state = 16, .external_lex_state = 6}, + [888] = {.lex_state = 16, .external_lex_state = 6}, + [889] = {.lex_state = 51, .external_lex_state = 2}, + [890] = {.lex_state = 16, .external_lex_state = 6}, + [891] = {.lex_state = 15}, + [892] = {.lex_state = 16, .external_lex_state = 6}, + [893] = {.lex_state = 16, .external_lex_state = 6}, [894] = {.lex_state = 15}, - [895] = {.lex_state = 15}, - [896] = {.lex_state = 15}, - [897] = {.lex_state = 15}, - [898] = {.lex_state = 15}, - [899] = {.lex_state = 15}, - [900] = {.lex_state = 15}, + [895] = {.lex_state = 16, .external_lex_state = 6}, + [896] = {.lex_state = 16, .external_lex_state = 6}, + [897] = {.lex_state = 16, .external_lex_state = 6}, + [898] = {.lex_state = 16, .external_lex_state = 6}, + [899] = {.lex_state = 51, .external_lex_state = 2}, + [900] = {.lex_state = 16, .external_lex_state = 6}, [901] = {.lex_state = 16, .external_lex_state = 6}, [902] = {.lex_state = 16, .external_lex_state = 6}, - [903] = {.lex_state = 16, .external_lex_state = 6}, + [903] = {.lex_state = 15}, [904] = {.lex_state = 16, .external_lex_state = 6}, [905] = {.lex_state = 16, .external_lex_state = 6}, [906] = {.lex_state = 15}, - [907] = {.lex_state = 16, .external_lex_state = 6}, - [908] = {.lex_state = 16, .external_lex_state = 6}, - [909] = {.lex_state = 16, .external_lex_state = 6}, - [910] = {.lex_state = 16, .external_lex_state = 6}, - [911] = {.lex_state = 16}, - [912] = {.lex_state = 16}, - [913] = {.lex_state = 16, .external_lex_state = 6}, - [914] = {.lex_state = 16, .external_lex_state = 6}, - [915] = {.lex_state = 16}, - [916] = {.lex_state = 16, .external_lex_state = 6}, - [917] = {.lex_state = 16, .external_lex_state = 6}, + [907] = {.lex_state = 15}, + [908] = {.lex_state = 15}, + [909] = {.lex_state = 16}, + [910] = {.lex_state = 16}, + [911] = {.lex_state = 15}, + [912] = {.lex_state = 15}, + [913] = {.lex_state = 15}, + [914] = {.lex_state = 15}, + [915] = {.lex_state = 16, .external_lex_state = 6}, + [916] = {.lex_state = 15}, + [917] = {.lex_state = 15}, [918] = {.lex_state = 16, .external_lex_state = 6}, - [919] = {.lex_state = 16}, + [919] = {.lex_state = 16, .external_lex_state = 6}, [920] = {.lex_state = 16, .external_lex_state = 6}, [921] = {.lex_state = 16, .external_lex_state = 6}, [922] = {.lex_state = 16, .external_lex_state = 6}, - [923] = {.lex_state = 16, .external_lex_state = 6}, - [924] = {.lex_state = 15}, - [925] = {.lex_state = 16}, + [923] = {.lex_state = 51, .external_lex_state = 2}, + [924] = {.lex_state = 51, .external_lex_state = 2}, + [925] = {.lex_state = 16, .external_lex_state = 6}, [926] = {.lex_state = 16, .external_lex_state = 6}, - [927] = {.lex_state = 51, .external_lex_state = 2}, - [928] = {.lex_state = 51, .external_lex_state = 2}, - [929] = {.lex_state = 16, .external_lex_state = 6}, - [930] = {.lex_state = 16, .external_lex_state = 6}, - [931] = {.lex_state = 16, .external_lex_state = 6}, - [932] = {.lex_state = 51, .external_lex_state = 2}, - [933] = {.lex_state = 51, .external_lex_state = 2}, - [934] = {.lex_state = 51, .external_lex_state = 2}, - [935] = {.lex_state = 51, .external_lex_state = 2}, + [927] = {.lex_state = 15}, + [928] = {.lex_state = 16, .external_lex_state = 6}, + [929] = {.lex_state = 15}, + [930] = {.lex_state = 15}, + [931] = {.lex_state = 15}, + [932] = {.lex_state = 15}, + [933] = {.lex_state = 15}, + [934] = {.lex_state = 15}, + [935] = {.lex_state = 15}, [936] = {.lex_state = 16, .external_lex_state = 6}, [937] = {.lex_state = 16, .external_lex_state = 6}, [938] = {.lex_state = 15}, - [939] = {.lex_state = 15}, - [940] = {.lex_state = 16, .external_lex_state = 6}, + [939] = {.lex_state = 16, .external_lex_state = 6}, + [940] = {.lex_state = 15}, [941] = {.lex_state = 16, .external_lex_state = 6}, - [942] = {.lex_state = 16, .external_lex_state = 6}, - [943] = {.lex_state = 16, .external_lex_state = 6}, - [944] = {.lex_state = 16, .external_lex_state = 6}, - [945] = {.lex_state = 16}, + [942] = {.lex_state = 15}, + [943] = {.lex_state = 15}, + [944] = {.lex_state = 15}, + [945] = {.lex_state = 15}, [946] = {.lex_state = 16}, [947] = {.lex_state = 16}, [948] = {.lex_state = 16}, @@ -7366,56 +7411,56 @@ static const TSLexMode ts_lex_modes[STATE_COUNT] = { [961] = {.lex_state = 16}, [962] = {.lex_state = 16}, [963] = {.lex_state = 16}, - [964] = {.lex_state = 51, .external_lex_state = 2}, + [964] = {.lex_state = 16}, [965] = {.lex_state = 16}, [966] = {.lex_state = 16}, [967] = {.lex_state = 16}, [968] = {.lex_state = 16}, - [969] = {.lex_state = 16}, + [969] = {.lex_state = 51, .external_lex_state = 2}, [970] = {.lex_state = 16}, [971] = {.lex_state = 16}, - [972] = {.lex_state = 16}, - [973] = {.lex_state = 16}, + [972] = {.lex_state = 51, .external_lex_state = 2}, + [973] = {.lex_state = 51, .external_lex_state = 2}, [974] = {.lex_state = 16}, [975] = {.lex_state = 16}, [976] = {.lex_state = 16}, [977] = {.lex_state = 16}, [978] = {.lex_state = 16}, - [979] = {.lex_state = 51, .external_lex_state = 2}, + [979] = {.lex_state = 16}, [980] = {.lex_state = 51, .external_lex_state = 2}, [981] = {.lex_state = 16}, - [982] = {.lex_state = 51, .external_lex_state = 2}, + [982] = {.lex_state = 16}, [983] = {.lex_state = 16}, - [984] = {.lex_state = 51, .external_lex_state = 2}, + [984] = {.lex_state = 16}, [985] = {.lex_state = 51, .external_lex_state = 2}, [986] = {.lex_state = 51, .external_lex_state = 2}, [987] = {.lex_state = 51, .external_lex_state = 2}, [988] = {.lex_state = 51, .external_lex_state = 2}, - [989] = {.lex_state = 51}, + [989] = {.lex_state = 51, .external_lex_state = 2}, [990] = {.lex_state = 0}, - [991] = {.lex_state = 51}, - [992] = {.lex_state = 0}, + [991] = {.lex_state = 0}, + [992] = {.lex_state = 51}, [993] = {.lex_state = 51}, - [994] = {.lex_state = 51, .external_lex_state = 2}, - [995] = {.lex_state = 14}, - [996] = {.lex_state = 51, .external_lex_state = 2}, - [997] = {.lex_state = 51}, + [994] = {.lex_state = 51}, + [995] = {.lex_state = 51, .external_lex_state = 2}, + [996] = {.lex_state = 51}, + [997] = {.lex_state = 16}, [998] = {.lex_state = 51}, [999] = {.lex_state = 51}, - [1000] = {.lex_state = 16}, - [1001] = {.lex_state = 16}, - [1002] = {.lex_state = 0, .external_lex_state = 6}, - [1003] = {.lex_state = 0, .external_lex_state = 6}, - [1004] = {.lex_state = 51}, - [1005] = {.lex_state = 51}, - [1006] = {.lex_state = 14}, - [1007] = {.lex_state = 51}, - [1008] = {.lex_state = 51, .external_lex_state = 2}, - [1009] = {.lex_state = 51}, + [1000] = {.lex_state = 0, .external_lex_state = 6}, + [1001] = {.lex_state = 51}, + [1002] = {.lex_state = 51}, + [1003] = {.lex_state = 14}, + [1004] = {.lex_state = 16}, + [1005] = {.lex_state = 14}, + [1006] = {.lex_state = 51}, + [1007] = {.lex_state = 51, .external_lex_state = 2}, + [1008] = {.lex_state = 0, .external_lex_state = 6}, + [1009] = {.lex_state = 51, .external_lex_state = 2}, [1010] = {.lex_state = 51}, [1011] = {.lex_state = 51}, - [1012] = {.lex_state = 16}, - [1013] = {.lex_state = 51}, + [1012] = {.lex_state = 51}, + [1013] = {.lex_state = 16}, [1014] = {.lex_state = 51}, [1015] = {.lex_state = 51}, [1016] = {.lex_state = 51}, @@ -7423,420 +7468,420 @@ static const TSLexMode ts_lex_modes[STATE_COUNT] = { [1018] = {.lex_state = 51}, [1019] = {.lex_state = 51}, [1020] = {.lex_state = 51}, - [1021] = {.lex_state = 51, .external_lex_state = 2}, + [1021] = {.lex_state = 51}, [1022] = {.lex_state = 0}, - [1023] = {.lex_state = 51}, - [1024] = {.lex_state = 51}, + [1023] = {.lex_state = 51, .external_lex_state = 2}, + [1024] = {.lex_state = 0}, [1025] = {.lex_state = 51}, - [1026] = {.lex_state = 0}, + [1026] = {.lex_state = 51}, [1027] = {.lex_state = 0}, - [1028] = {.lex_state = 0}, + [1028] = {.lex_state = 51}, [1029] = {.lex_state = 0}, - [1030] = {.lex_state = 51}, + [1030] = {.lex_state = 0}, [1031] = {.lex_state = 51}, - [1032] = {.lex_state = 16}, - [1033] = {.lex_state = 18, .external_lex_state = 11}, - [1034] = {.lex_state = 51}, - [1035] = {.lex_state = 18, .external_lex_state = 11}, - [1036] = {.lex_state = 18, .external_lex_state = 11}, + [1032] = {.lex_state = 51}, + [1033] = {.lex_state = 16}, + [1034] = {.lex_state = 18, .external_lex_state = 11}, + [1035] = {.lex_state = 51, .external_lex_state = 9}, + [1036] = {.lex_state = 16}, [1037] = {.lex_state = 18, .external_lex_state = 11}, - [1038] = {.lex_state = 16}, - [1039] = {.lex_state = 51, .external_lex_state = 8}, - [1040] = {.lex_state = 51, .external_lex_state = 9}, - [1041] = {.lex_state = 0}, - [1042] = {.lex_state = 16}, + [1038] = {.lex_state = 18, .external_lex_state = 11}, + [1039] = {.lex_state = 18, .external_lex_state = 11}, + [1040] = {.lex_state = 18, .external_lex_state = 11}, + [1041] = {.lex_state = 51}, + [1042] = {.lex_state = 18, .external_lex_state = 11}, [1043] = {.lex_state = 18, .external_lex_state = 11}, [1044] = {.lex_state = 18, .external_lex_state = 11}, [1045] = {.lex_state = 18, .external_lex_state = 11}, - [1046] = {.lex_state = 51}, + [1046] = {.lex_state = 18, .external_lex_state = 11}, [1047] = {.lex_state = 18, .external_lex_state = 11}, [1048] = {.lex_state = 18, .external_lex_state = 11}, - [1049] = {.lex_state = 16}, + [1049] = {.lex_state = 18, .external_lex_state = 11}, [1050] = {.lex_state = 18, .external_lex_state = 11}, [1051] = {.lex_state = 18, .external_lex_state = 11}, [1052] = {.lex_state = 18, .external_lex_state = 11}, [1053] = {.lex_state = 18, .external_lex_state = 11}, [1054] = {.lex_state = 18, .external_lex_state = 11}, - [1055] = {.lex_state = 18, .external_lex_state = 11}, - [1056] = {.lex_state = 18, .external_lex_state = 11}, - [1057] = {.lex_state = 18, .external_lex_state = 11}, - [1058] = {.lex_state = 18, .external_lex_state = 11}, - [1059] = {.lex_state = 18, .external_lex_state = 11}, - [1060] = {.lex_state = 51}, - [1061] = {.lex_state = 51}, - [1062] = {.lex_state = 0}, - [1063] = {.lex_state = 51}, + [1055] = {.lex_state = 51}, + [1056] = {.lex_state = 16}, + [1057] = {.lex_state = 0}, + [1058] = {.lex_state = 51}, + [1059] = {.lex_state = 51}, + [1060] = {.lex_state = 16}, + [1061] = {.lex_state = 51, .external_lex_state = 8}, + [1062] = {.lex_state = 18, .external_lex_state = 11}, + [1063] = {.lex_state = 0}, [1064] = {.lex_state = 0}, - [1065] = {.lex_state = 51}, - [1066] = {.lex_state = 0}, + [1065] = {.lex_state = 0}, + [1066] = {.lex_state = 51}, [1067] = {.lex_state = 0}, [1068] = {.lex_state = 0}, - [1069] = {.lex_state = 0}, - [1070] = {.lex_state = 51}, - [1071] = {.lex_state = 51}, - [1072] = {.lex_state = 51}, + [1069] = {.lex_state = 51}, + [1070] = {.lex_state = 0}, + [1071] = {.lex_state = 0}, + [1072] = {.lex_state = 0}, [1073] = {.lex_state = 0}, - [1074] = {.lex_state = 0}, + [1074] = {.lex_state = 51}, [1075] = {.lex_state = 0}, [1076] = {.lex_state = 0}, [1077] = {.lex_state = 51}, [1078] = {.lex_state = 51}, [1079] = {.lex_state = 0}, - [1080] = {.lex_state = 0}, - [1081] = {.lex_state = 0}, - [1082] = {.lex_state = 51}, + [1080] = {.lex_state = 51}, + [1081] = {.lex_state = 51}, + [1082] = {.lex_state = 0}, [1083] = {.lex_state = 0}, [1084] = {.lex_state = 0}, [1085] = {.lex_state = 0}, [1086] = {.lex_state = 0}, [1087] = {.lex_state = 0}, - [1088] = {.lex_state = 0}, + [1088] = {.lex_state = 51}, [1089] = {.lex_state = 51}, [1090] = {.lex_state = 0}, - [1091] = {.lex_state = 51}, + [1091] = {.lex_state = 0}, [1092] = {.lex_state = 0}, - [1093] = {.lex_state = 14}, - [1094] = {.lex_state = 0}, - [1095] = {.lex_state = 14}, - [1096] = {.lex_state = 51}, - [1097] = {.lex_state = 51}, - [1098] = {.lex_state = 0}, + [1093] = {.lex_state = 51}, + [1094] = {.lex_state = 51}, + [1095] = {.lex_state = 0}, + [1096] = {.lex_state = 14}, + [1097] = {.lex_state = 0}, + [1098] = {.lex_state = 51}, [1099] = {.lex_state = 0}, - [1100] = {.lex_state = 0}, - [1101] = {.lex_state = 51}, - [1102] = {.lex_state = 51}, - [1103] = {.lex_state = 14}, + [1100] = {.lex_state = 51}, + [1101] = {.lex_state = 0}, + [1102] = {.lex_state = 14}, + [1103] = {.lex_state = 51}, [1104] = {.lex_state = 14}, - [1105] = {.lex_state = 14}, + [1105] = {.lex_state = 51}, [1106] = {.lex_state = 14}, - [1107] = {.lex_state = 14}, - [1108] = {.lex_state = 14}, - [1109] = {.lex_state = 0, .external_lex_state = 6}, + [1107] = {.lex_state = 51}, + [1108] = {.lex_state = 51}, + [1109] = {.lex_state = 51}, [1110] = {.lex_state = 51}, - [1111] = {.lex_state = 0}, - [1112] = {.lex_state = 14}, + [1111] = {.lex_state = 16}, + [1112] = {.lex_state = 0}, [1113] = {.lex_state = 0}, [1114] = {.lex_state = 51}, [1115] = {.lex_state = 51}, [1116] = {.lex_state = 51}, - [1117] = {.lex_state = 51}, - [1118] = {.lex_state = 0}, - [1119] = {.lex_state = 51}, - [1120] = {.lex_state = 51}, - [1121] = {.lex_state = 0, .external_lex_state = 6}, - [1122] = {.lex_state = 0, .external_lex_state = 6}, - [1123] = {.lex_state = 0, .external_lex_state = 6}, - [1124] = {.lex_state = 51}, + [1117] = {.lex_state = 0}, + [1118] = {.lex_state = 51}, + [1119] = {.lex_state = 14}, + [1120] = {.lex_state = 14}, + [1121] = {.lex_state = 14}, + [1122] = {.lex_state = 14}, + [1123] = {.lex_state = 14}, + [1124] = {.lex_state = 14}, [1125] = {.lex_state = 14}, - [1126] = {.lex_state = 51}, - [1127] = {.lex_state = 51}, + [1126] = {.lex_state = 0, .external_lex_state = 6}, + [1127] = {.lex_state = 0}, [1128] = {.lex_state = 0}, - [1129] = {.lex_state = 14}, + [1129] = {.lex_state = 51}, [1130] = {.lex_state = 51}, - [1131] = {.lex_state = 51}, + [1131] = {.lex_state = 14}, [1132] = {.lex_state = 51}, - [1133] = {.lex_state = 18, .external_lex_state = 11}, - [1134] = {.lex_state = 51}, - [1135] = {.lex_state = 0, .external_lex_state = 6}, - [1136] = {.lex_state = 0}, + [1133] = {.lex_state = 51}, + [1134] = {.lex_state = 0, .external_lex_state = 6}, + [1135] = {.lex_state = 18, .external_lex_state = 11}, + [1136] = {.lex_state = 51}, [1137] = {.lex_state = 51}, [1138] = {.lex_state = 51}, - [1139] = {.lex_state = 16}, + [1139] = {.lex_state = 51}, [1140] = {.lex_state = 51}, [1141] = {.lex_state = 0, .external_lex_state = 6}, - [1142] = {.lex_state = 51}, - [1143] = {.lex_state = 51}, - [1144] = {.lex_state = 0, .external_lex_state = 6}, + [1142] = {.lex_state = 0, .external_lex_state = 6}, + [1143] = {.lex_state = 14}, + [1144] = {.lex_state = 0}, [1145] = {.lex_state = 0, .external_lex_state = 6}, - [1146] = {.lex_state = 0}, - [1147] = {.lex_state = 18, .external_lex_state = 11}, - [1148] = {.lex_state = 0}, - [1149] = {.lex_state = 51}, + [1146] = {.lex_state = 0, .external_lex_state = 6}, + [1147] = {.lex_state = 0, .external_lex_state = 6}, + [1148] = {.lex_state = 51}, + [1149] = {.lex_state = 18, .external_lex_state = 11}, [1150] = {.lex_state = 51}, [1151] = {.lex_state = 51}, - [1152] = {.lex_state = 51}, + [1152] = {.lex_state = 0, .external_lex_state = 6}, [1153] = {.lex_state = 51}, - [1154] = {.lex_state = 51}, - [1155] = {.lex_state = 0}, + [1154] = {.lex_state = 14}, + [1155] = {.lex_state = 0, .external_lex_state = 6}, [1156] = {.lex_state = 0, .external_lex_state = 6}, - [1157] = {.lex_state = 51}, - [1158] = {.lex_state = 0, .external_lex_state = 6}, + [1157] = {.lex_state = 0}, + [1158] = {.lex_state = 51}, [1159] = {.lex_state = 51}, [1160] = {.lex_state = 51}, [1161] = {.lex_state = 51}, - [1162] = {.lex_state = 0}, - [1163] = {.lex_state = 0, .external_lex_state = 6}, - [1164] = {.lex_state = 14}, - [1165] = {.lex_state = 14}, - [1166] = {.lex_state = 51}, - [1167] = {.lex_state = 51}, - [1168] = {.lex_state = 14}, - [1169] = {.lex_state = 0}, + [1162] = {.lex_state = 51}, + [1163] = {.lex_state = 51}, + [1164] = {.lex_state = 51}, + [1165] = {.lex_state = 0}, + [1166] = {.lex_state = 0}, + [1167] = {.lex_state = 0, .external_lex_state = 6}, + [1168] = {.lex_state = 51}, + [1169] = {.lex_state = 51}, [1170] = {.lex_state = 0}, [1171] = {.lex_state = 0}, - [1172] = {.lex_state = 51}, + [1172] = {.lex_state = 0}, [1173] = {.lex_state = 0}, - [1174] = {.lex_state = 0}, - [1175] = {.lex_state = 0, .external_lex_state = 6}, - [1176] = {.lex_state = 51}, - [1177] = {.lex_state = 0, .external_lex_state = 6}, - [1178] = {.lex_state = 0}, + [1174] = {.lex_state = 51}, + [1175] = {.lex_state = 0}, + [1176] = {.lex_state = 0, .external_lex_state = 6}, + [1177] = {.lex_state = 16}, + [1178] = {.lex_state = 51}, [1179] = {.lex_state = 0, .external_lex_state = 6}, - [1180] = {.lex_state = 0, .external_lex_state = 6}, - [1181] = {.lex_state = 0}, - [1182] = {.lex_state = 0}, - [1183] = {.lex_state = 14}, - [1184] = {.lex_state = 51}, - [1185] = {.lex_state = 0, .external_lex_state = 6}, - [1186] = {.lex_state = 51}, - [1187] = {.lex_state = 0}, - [1188] = {.lex_state = 51}, - [1189] = {.lex_state = 0}, + [1180] = {.lex_state = 0}, + [1181] = {.lex_state = 0, .external_lex_state = 6}, + [1182] = {.lex_state = 0, .external_lex_state = 6}, + [1183] = {.lex_state = 0}, + [1184] = {.lex_state = 0, .external_lex_state = 6}, + [1185] = {.lex_state = 51}, + [1186] = {.lex_state = 14}, + [1187] = {.lex_state = 51}, + [1188] = {.lex_state = 14}, + [1189] = {.lex_state = 51}, [1190] = {.lex_state = 0}, - [1191] = {.lex_state = 0, .external_lex_state = 6}, - [1192] = {.lex_state = 51}, - [1193] = {.lex_state = 51}, + [1191] = {.lex_state = 0}, + [1192] = {.lex_state = 0}, + [1193] = {.lex_state = 0}, [1194] = {.lex_state = 51}, - [1195] = {.lex_state = 51}, - [1196] = {.lex_state = 14}, - [1197] = {.lex_state = 0, .external_lex_state = 6}, - [1198] = {.lex_state = 0}, - [1199] = {.lex_state = 0, .external_lex_state = 6}, + [1195] = {.lex_state = 0, .external_lex_state = 6}, + [1196] = {.lex_state = 0}, + [1197] = {.lex_state = 51}, + [1198] = {.lex_state = 51}, + [1199] = {.lex_state = 0}, [1200] = {.lex_state = 51}, - [1201] = {.lex_state = 16}, - [1202] = {.lex_state = 0, .external_lex_state = 6}, - [1203] = {.lex_state = 0}, + [1201] = {.lex_state = 51}, + [1202] = {.lex_state = 0}, + [1203] = {.lex_state = 51}, [1204] = {.lex_state = 51}, [1205] = {.lex_state = 51}, - [1206] = {.lex_state = 0}, - [1207] = {.lex_state = 51}, - [1208] = {.lex_state = 51}, - [1209] = {.lex_state = 51}, + [1206] = {.lex_state = 0, .external_lex_state = 6}, + [1207] = {.lex_state = 0, .external_lex_state = 6}, + [1208] = {.lex_state = 0}, + [1209] = {.lex_state = 0}, [1210] = {.lex_state = 51}, - [1211] = {.lex_state = 0}, - [1212] = {.lex_state = 0}, - [1213] = {.lex_state = 0, .external_lex_state = 6}, + [1211] = {.lex_state = 51}, + [1212] = {.lex_state = 0, .external_lex_state = 6}, + [1213] = {.lex_state = 0}, [1214] = {.lex_state = 0}, - [1215] = {.lex_state = 14}, - [1216] = {.lex_state = 16}, - [1217] = {.lex_state = 18, .external_lex_state = 11}, - [1218] = {.lex_state = 18, .external_lex_state = 11}, - [1219] = {.lex_state = 16, .external_lex_state = 6}, - [1220] = {.lex_state = 51}, - [1221] = {.lex_state = 14}, - [1222] = {.lex_state = 51}, - [1223] = {.lex_state = 18, .external_lex_state = 11}, - [1224] = {.lex_state = 0, .external_lex_state = 6}, - [1225] = {.lex_state = 0}, - [1226] = {.lex_state = 0, .external_lex_state = 6}, - [1227] = {.lex_state = 0, .external_lex_state = 6}, - [1228] = {.lex_state = 51}, - [1229] = {.lex_state = 51}, - [1230] = {.lex_state = 51}, + [1215] = {.lex_state = 51}, + [1216] = {.lex_state = 0, .external_lex_state = 6}, + [1217] = {.lex_state = 16, .external_lex_state = 6}, + [1218] = {.lex_state = 51}, + [1219] = {.lex_state = 14}, + [1220] = {.lex_state = 14}, + [1221] = {.lex_state = 51}, + [1222] = {.lex_state = 16}, + [1223] = {.lex_state = 51}, + [1224] = {.lex_state = 16, .external_lex_state = 6}, + [1225] = {.lex_state = 0, .external_lex_state = 6}, + [1226] = {.lex_state = 18, .external_lex_state = 11}, + [1227] = {.lex_state = 51}, + [1228] = {.lex_state = 16}, + [1229] = {.lex_state = 0}, + [1230] = {.lex_state = 18, .external_lex_state = 11}, [1231] = {.lex_state = 51}, - [1232] = {.lex_state = 51}, - [1233] = {.lex_state = 16, .external_lex_state = 6}, - [1234] = {.lex_state = 16, .external_lex_state = 6}, + [1232] = {.lex_state = 0}, + [1233] = {.lex_state = 14}, + [1234] = {.lex_state = 51}, [1235] = {.lex_state = 51}, [1236] = {.lex_state = 51}, [1237] = {.lex_state = 51}, - [1238] = {.lex_state = 0}, + [1238] = {.lex_state = 51}, [1239] = {.lex_state = 51}, - [1240] = {.lex_state = 51}, - [1241] = {.lex_state = 16}, - [1242] = {.lex_state = 51}, - [1243] = {.lex_state = 51}, + [1240] = {.lex_state = 0, .external_lex_state = 6}, + [1241] = {.lex_state = 51}, + [1242] = {.lex_state = 0, .external_lex_state = 6}, + [1243] = {.lex_state = 0, .external_lex_state = 6}, [1244] = {.lex_state = 51}, - [1245] = {.lex_state = 18, .external_lex_state = 11}, + [1245] = {.lex_state = 51}, [1246] = {.lex_state = 51}, [1247] = {.lex_state = 51}, - [1248] = {.lex_state = 0}, - [1249] = {.lex_state = 51}, - [1250] = {.lex_state = 0, .external_lex_state = 6}, - [1251] = {.lex_state = 14}, + [1248] = {.lex_state = 16}, + [1249] = {.lex_state = 16, .external_lex_state = 6}, + [1250] = {.lex_state = 51}, + [1251] = {.lex_state = 18, .external_lex_state = 11}, [1252] = {.lex_state = 18, .external_lex_state = 11}, - [1253] = {.lex_state = 18, .external_lex_state = 11}, - [1254] = {.lex_state = 51}, - [1255] = {.lex_state = 0, .external_lex_state = 6}, + [1253] = {.lex_state = 51}, + [1254] = {.lex_state = 18, .external_lex_state = 11}, + [1255] = {.lex_state = 18, .external_lex_state = 11}, [1256] = {.lex_state = 51}, [1257] = {.lex_state = 0}, - [1258] = {.lex_state = 0, .external_lex_state = 6}, - [1259] = {.lex_state = 0}, - [1260] = {.lex_state = 0, .external_lex_state = 6}, + [1258] = {.lex_state = 0}, + [1259] = {.lex_state = 51}, + [1260] = {.lex_state = 0}, [1261] = {.lex_state = 0}, - [1262] = {.lex_state = 0}, - [1263] = {.lex_state = 51}, - [1264] = {.lex_state = 0}, - [1265] = {.lex_state = 14}, - [1266] = {.lex_state = 0}, - [1267] = {.lex_state = 51}, - [1268] = {.lex_state = 0}, - [1269] = {.lex_state = 0, .external_lex_state = 6}, - [1270] = {.lex_state = 0}, - [1271] = {.lex_state = 0, .external_lex_state = 6}, - [1272] = {.lex_state = 0}, - [1273] = {.lex_state = 14}, - [1274] = {.lex_state = 0}, - [1275] = {.lex_state = 0, .external_lex_state = 6}, + [1262] = {.lex_state = 51}, + [1263] = {.lex_state = 0}, + [1264] = {.lex_state = 0, .external_lex_state = 6}, + [1265] = {.lex_state = 0, .external_lex_state = 6}, + [1266] = {.lex_state = 14}, + [1267] = {.lex_state = 0}, + [1268] = {.lex_state = 0, .external_lex_state = 6}, + [1269] = {.lex_state = 14}, + [1270] = {.lex_state = 0, .external_lex_state = 6}, + [1271] = {.lex_state = 0}, + [1272] = {.lex_state = 0, .external_lex_state = 6}, + [1273] = {.lex_state = 51}, + [1274] = {.lex_state = 0, .external_lex_state = 6}, + [1275] = {.lex_state = 0}, [1276] = {.lex_state = 0}, - [1277] = {.lex_state = 51}, + [1277] = {.lex_state = 0, .external_lex_state = 6}, [1278] = {.lex_state = 0, .external_lex_state = 6}, - [1279] = {.lex_state = 0, .external_lex_state = 6}, - [1280] = {.lex_state = 0, .external_lex_state = 6}, - [1281] = {.lex_state = 51}, + [1279] = {.lex_state = 10}, + [1280] = {.lex_state = 0}, + [1281] = {.lex_state = 0, .external_lex_state = 6}, [1282] = {.lex_state = 0}, - [1283] = {.lex_state = 10}, - [1284] = {.lex_state = 10}, - [1285] = {.lex_state = 0, .external_lex_state = 6}, + [1283] = {.lex_state = 51}, + [1284] = {.lex_state = 0, .external_lex_state = 6}, + [1285] = {.lex_state = 0}, [1286] = {.lex_state = 0}, - [1287] = {.lex_state = 14}, + [1287] = {.lex_state = 0}, [1288] = {.lex_state = 10}, - [1289] = {.lex_state = 16, .external_lex_state = 6}, - [1290] = {.lex_state = 0, .external_lex_state = 6}, - [1291] = {.lex_state = 0}, - [1292] = {.lex_state = 0, .external_lex_state = 6}, - [1293] = {.lex_state = 0}, - [1294] = {.lex_state = 51}, - [1295] = {.lex_state = 51}, - [1296] = {.lex_state = 51}, - [1297] = {.lex_state = 0}, - [1298] = {.lex_state = 0}, + [1289] = {.lex_state = 0, .external_lex_state = 6}, + [1290] = {.lex_state = 0}, + [1291] = {.lex_state = 14}, + [1292] = {.lex_state = 10}, + [1293] = {.lex_state = 51}, + [1294] = {.lex_state = 16, .external_lex_state = 6}, + [1295] = {.lex_state = 0, .external_lex_state = 6}, + [1296] = {.lex_state = 0}, + [1297] = {.lex_state = 0, .external_lex_state = 6}, + [1298] = {.lex_state = 0, .external_lex_state = 6}, [1299] = {.lex_state = 0, .external_lex_state = 6}, - [1300] = {.lex_state = 0}, - [1301] = {.lex_state = 0}, - [1302] = {.lex_state = 14}, - [1303] = {.lex_state = 0, .external_lex_state = 6}, + [1300] = {.lex_state = 0, .external_lex_state = 6}, + [1301] = {.lex_state = 0, .external_lex_state = 6}, + [1302] = {.lex_state = 51}, + [1303] = {.lex_state = 0}, [1304] = {.lex_state = 0}, - [1305] = {.lex_state = 0}, - [1306] = {.lex_state = 0, .external_lex_state = 6}, + [1305] = {.lex_state = 0, .external_lex_state = 6}, + [1306] = {.lex_state = 0}, [1307] = {.lex_state = 0}, - [1308] = {.lex_state = 51}, - [1309] = {.lex_state = 0, .external_lex_state = 6}, - [1310] = {.lex_state = 14}, + [1308] = {.lex_state = 14}, + [1309] = {.lex_state = 51}, + [1310] = {.lex_state = 0, .external_lex_state = 6}, [1311] = {.lex_state = 0}, - [1312] = {.lex_state = 0}, - [1313] = {.lex_state = 0}, - [1314] = {.lex_state = 0}, - [1315] = {.lex_state = 0}, + [1312] = {.lex_state = 51}, + [1313] = {.lex_state = 51}, + [1314] = {.lex_state = 51, .external_lex_state = 8}, + [1315] = {.lex_state = 51, .external_lex_state = 9}, [1316] = {.lex_state = 0, .external_lex_state = 6}, - [1317] = {.lex_state = 51, .external_lex_state = 8}, - [1318] = {.lex_state = 51, .external_lex_state = 9}, - [1319] = {.lex_state = 0, .external_lex_state = 6}, + [1317] = {.lex_state = 0, .external_lex_state = 6}, + [1318] = {.lex_state = 14}, + [1319] = {.lex_state = 0}, [1320] = {.lex_state = 0, .external_lex_state = 6}, - [1321] = {.lex_state = 0}, - [1322] = {.lex_state = 51}, - [1323] = {.lex_state = 0}, - [1324] = {.lex_state = 0, .external_lex_state = 6}, + [1321] = {.lex_state = 0, .external_lex_state = 6}, + [1322] = {.lex_state = 0, .external_lex_state = 6}, + [1323] = {.lex_state = 16}, + [1324] = {.lex_state = 51}, [1325] = {.lex_state = 51}, [1326] = {.lex_state = 0, .external_lex_state = 6}, - [1327] = {.lex_state = 0}, - [1328] = {.lex_state = 0}, - [1329] = {.lex_state = 0}, + [1327] = {.lex_state = 51}, + [1328] = {.lex_state = 0, .external_lex_state = 6}, + [1329] = {.lex_state = 51}, [1330] = {.lex_state = 0}, - [1331] = {.lex_state = 51}, + [1331] = {.lex_state = 0}, [1332] = {.lex_state = 0, .external_lex_state = 6}, - [1333] = {.lex_state = 0, .external_lex_state = 6}, - [1334] = {.lex_state = 51}, - [1335] = {.lex_state = 0}, - [1336] = {.lex_state = 16}, - [1337] = {.lex_state = 0, .external_lex_state = 6}, - [1338] = {.lex_state = 51}, - [1339] = {.lex_state = 0}, - [1340] = {.lex_state = 0, .external_lex_state = 6}, - [1341] = {.lex_state = 51}, + [1333] = {.lex_state = 0}, + [1334] = {.lex_state = 0}, + [1335] = {.lex_state = 0, .external_lex_state = 6}, + [1336] = {.lex_state = 0}, + [1337] = {.lex_state = 51}, + [1338] = {.lex_state = 0, .external_lex_state = 6}, + [1339] = {.lex_state = 51}, + [1340] = {.lex_state = 51}, + [1341] = {.lex_state = 0}, [1342] = {.lex_state = 51}, - [1343] = {.lex_state = 0, .external_lex_state = 6}, - [1344] = {.lex_state = 0, .external_lex_state = 6}, + [1343] = {.lex_state = 0}, + [1344] = {.lex_state = 51}, [1345] = {.lex_state = 0}, - [1346] = {.lex_state = 51}, - [1347] = {.lex_state = 51}, - [1348] = {.lex_state = 0, .external_lex_state = 6}, - [1349] = {.lex_state = 51}, - [1350] = {.lex_state = 51}, + [1346] = {.lex_state = 0}, + [1347] = {.lex_state = 0}, + [1348] = {.lex_state = 0}, + [1349] = {.lex_state = 0}, + [1350] = {.lex_state = 0, .external_lex_state = 6}, [1351] = {.lex_state = 51}, [1352] = {.lex_state = 51}, [1353] = {.lex_state = 0, .external_lex_state = 6}, [1354] = {.lex_state = 0, .external_lex_state = 6}, - [1355] = {.lex_state = 0, .external_lex_state = 6}, - [1356] = {.lex_state = 0}, - [1357] = {.lex_state = 0, .external_lex_state = 6}, - [1358] = {.lex_state = 0, .external_lex_state = 6}, - [1359] = {.lex_state = 0, .external_lex_state = 6}, + [1355] = {.lex_state = 51}, + [1356] = {.lex_state = 51}, + [1357] = {.lex_state = 51}, + [1358] = {.lex_state = 0}, + [1359] = {.lex_state = 0}, [1360] = {.lex_state = 0, .external_lex_state = 6}, - [1361] = {.lex_state = 51}, - [1362] = {.lex_state = 16}, - [1363] = {.lex_state = 0}, + [1361] = {.lex_state = 0}, + [1362] = {.lex_state = 0}, + [1363] = {.lex_state = 0, .external_lex_state = 6}, [1364] = {.lex_state = 51}, [1365] = {.lex_state = 0, .external_lex_state = 6}, - [1366] = {.lex_state = 0}, + [1366] = {.lex_state = 0, .external_lex_state = 6}, [1367] = {.lex_state = 0}, - [1368] = {.lex_state = 0, .external_lex_state = 6}, + [1368] = {.lex_state = 0}, [1369] = {.lex_state = 0}, - [1370] = {.lex_state = 0}, + [1370] = {.lex_state = 0, .external_lex_state = 6}, [1371] = {.lex_state = 0}, - [1372] = {.lex_state = 0}, - [1373] = {.lex_state = 0, .external_lex_state = 6}, - [1374] = {.lex_state = 0}, + [1372] = {.lex_state = 0, .external_lex_state = 6}, + [1373] = {.lex_state = 0}, + [1374] = {.lex_state = 16}, [1375] = {.lex_state = 0}, [1376] = {.lex_state = 0}, [1377] = {.lex_state = 0}, [1378] = {.lex_state = 0}, - [1379] = {.lex_state = 51}, - [1380] = {.lex_state = 10}, - [1381] = {.lex_state = 0}, + [1379] = {.lex_state = 0}, + [1380] = {.lex_state = 51}, + [1381] = {.lex_state = 0, .external_lex_state = 6}, [1382] = {.lex_state = 0}, - [1383] = {.lex_state = 0}, + [1383] = {.lex_state = 51}, [1384] = {.lex_state = 0}, - [1385] = {.lex_state = 51}, - [1386] = {.lex_state = 0}, + [1385] = {.lex_state = 0}, + [1386] = {.lex_state = 51}, [1387] = {.lex_state = 0}, - [1388] = {.lex_state = 0}, - [1389] = {.lex_state = 0}, - [1390] = {.lex_state = 51}, - [1391] = {.lex_state = 51}, - [1392] = {.lex_state = 0}, - [1393] = {.lex_state = 0, .external_lex_state = 6}, - [1394] = {.lex_state = 51}, + [1388] = {.lex_state = 0, .external_lex_state = 6}, + [1389] = {.lex_state = 51}, + [1390] = {.lex_state = 0}, + [1391] = {.lex_state = 0, .external_lex_state = 6}, + [1392] = {.lex_state = 0, .external_lex_state = 6}, + [1393] = {.lex_state = 0}, + [1394] = {.lex_state = 0}, [1395] = {.lex_state = 0}, [1396] = {.lex_state = 0}, [1397] = {.lex_state = 0}, [1398] = {.lex_state = 0}, [1399] = {.lex_state = 0}, [1400] = {.lex_state = 0}, - [1401] = {.lex_state = 0}, + [1401] = {.lex_state = 14}, [1402] = {.lex_state = 0}, [1403] = {.lex_state = 0}, - [1404] = {.lex_state = 0, .external_lex_state = 6}, + [1404] = {.lex_state = 0}, [1405] = {.lex_state = 0}, - [1406] = {.lex_state = 0, .external_lex_state = 6}, + [1406] = {.lex_state = 0}, [1407] = {.lex_state = 0}, - [1408] = {.lex_state = 0}, + [1408] = {.lex_state = 16}, [1409] = {.lex_state = 0}, - [1410] = {.lex_state = 0}, + [1410] = {.lex_state = 51}, [1411] = {.lex_state = 0}, [1412] = {.lex_state = 0}, [1413] = {.lex_state = 0}, - [1414] = {.lex_state = 0}, + [1414] = {.lex_state = 10}, [1415] = {.lex_state = 0}, [1416] = {.lex_state = 0}, [1417] = {.lex_state = 0}, [1418] = {.lex_state = 0}, - [1419] = {.lex_state = 14}, - [1420] = {.lex_state = 0, .external_lex_state = 6}, - [1421] = {.lex_state = 0, .external_lex_state = 6}, + [1419] = {.lex_state = 0}, + [1420] = {.lex_state = 0}, + [1421] = {.lex_state = 0}, [1422] = {.lex_state = 0}, [1423] = {.lex_state = 0}, [1424] = {.lex_state = 0}, - [1425] = {.lex_state = 0}, + [1425] = {.lex_state = 14}, [1426] = {.lex_state = 0}, [1427] = {.lex_state = 0}, [1428] = {.lex_state = 0}, - [1429] = {.lex_state = 0}, + [1429] = {.lex_state = 0, .external_lex_state = 6}, [1430] = {.lex_state = 0}, [1431] = {.lex_state = 0}, [1432] = {.lex_state = 0}, [1433] = {.lex_state = 0}, - [1434] = {.lex_state = 51}, + [1434] = {.lex_state = 0}, [1435] = {.lex_state = 0}, [1436] = {.lex_state = 0}, [1437] = {.lex_state = 0}, @@ -7844,241 +7889,241 @@ static const TSLexMode ts_lex_modes[STATE_COUNT] = { [1439] = {.lex_state = 0}, [1440] = {.lex_state = 0}, [1441] = {.lex_state = 0}, - [1442] = {.lex_state = 51}, - [1443] = {.lex_state = 0}, - [1444] = {.lex_state = 51}, - [1445] = {.lex_state = 51}, - [1446] = {.lex_state = 51}, - [1447] = {.lex_state = 51}, + [1442] = {.lex_state = 0}, + [1443] = {.lex_state = 51}, + [1444] = {.lex_state = 0}, + [1445] = {.lex_state = 0}, + [1446] = {.lex_state = 10}, + [1447] = {.lex_state = 0}, [1448] = {.lex_state = 0}, [1449] = {.lex_state = 0}, - [1450] = {.lex_state = 0}, - [1451] = {.lex_state = 0}, - [1452] = {.lex_state = 51}, + [1450] = {.lex_state = 14}, + [1451] = {.lex_state = 0, .external_lex_state = 6}, + [1452] = {.lex_state = 0}, [1453] = {.lex_state = 51}, - [1454] = {.lex_state = 0}, - [1455] = {.lex_state = 10}, - [1456] = {.lex_state = 51}, - [1457] = {.lex_state = 14}, - [1458] = {.lex_state = 14}, + [1454] = {.lex_state = 51}, + [1455] = {.lex_state = 0}, + [1456] = {.lex_state = 0}, + [1457] = {.lex_state = 0}, + [1458] = {.lex_state = 0, .external_lex_state = 6}, [1459] = {.lex_state = 0}, [1460] = {.lex_state = 0}, [1461] = {.lex_state = 0}, [1462] = {.lex_state = 0}, - [1463] = {.lex_state = 0, .external_lex_state = 6}, - [1464] = {.lex_state = 51}, - [1465] = {.lex_state = 51}, + [1463] = {.lex_state = 51}, + [1464] = {.lex_state = 10}, + [1465] = {.lex_state = 0, .external_lex_state = 6}, [1466] = {.lex_state = 0}, - [1467] = {.lex_state = 0}, + [1467] = {.lex_state = 51}, [1468] = {.lex_state = 0}, [1469] = {.lex_state = 0}, - [1470] = {.lex_state = 0, .external_lex_state = 6}, - [1471] = {.lex_state = 51}, + [1470] = {.lex_state = 51}, + [1471] = {.lex_state = 0}, [1472] = {.lex_state = 0}, [1473] = {.lex_state = 0}, [1474] = {.lex_state = 0}, - [1475] = {.lex_state = 0, .external_lex_state = 6}, - [1476] = {.lex_state = 0}, - [1477] = {.lex_state = 0}, - [1478] = {.lex_state = 16}, - [1479] = {.lex_state = 51}, + [1475] = {.lex_state = 0}, + [1476] = {.lex_state = 10}, + [1477] = {.lex_state = 51}, + [1478] = {.lex_state = 0}, + [1479] = {.lex_state = 0}, [1480] = {.lex_state = 0}, - [1481] = {.lex_state = 0}, - [1482] = {.lex_state = 10}, + [1481] = {.lex_state = 51}, + [1482] = {.lex_state = 0}, [1483] = {.lex_state = 0}, [1484] = {.lex_state = 0}, [1485] = {.lex_state = 0}, - [1486] = {.lex_state = 0, .external_lex_state = 6}, + [1486] = {.lex_state = 51}, [1487] = {.lex_state = 0}, - [1488] = {.lex_state = 0}, + [1488] = {.lex_state = 51}, [1489] = {.lex_state = 0}, [1490] = {.lex_state = 0}, - [1491] = {.lex_state = 0}, - [1492] = {.lex_state = 0}, - [1493] = {.lex_state = 51}, - [1494] = {.lex_state = 14}, - [1495] = {.lex_state = 0}, - [1496] = {.lex_state = 0}, - [1497] = {.lex_state = 10}, + [1491] = {.lex_state = 51}, + [1492] = {.lex_state = 10}, + [1493] = {.lex_state = 0}, + [1494] = {.lex_state = 0, .external_lex_state = 6}, + [1495] = {.lex_state = 51}, + [1496] = {.lex_state = 14}, + [1497] = {.lex_state = 0}, [1498] = {.lex_state = 0}, [1499] = {.lex_state = 0}, - [1500] = {.lex_state = 0}, - [1501] = {.lex_state = 51}, - [1502] = {.lex_state = 10}, - [1503] = {.lex_state = 0}, - [1504] = {.lex_state = 0}, + [1500] = {.lex_state = 51}, + [1501] = {.lex_state = 0}, + [1502] = {.lex_state = 0}, + [1503] = {.lex_state = 51}, + [1504] = {.lex_state = 51}, [1505] = {.lex_state = 0}, - [1506] = {.lex_state = 51}, - [1507] = {.lex_state = 0, .external_lex_state = 6}, + [1506] = {.lex_state = 0}, + [1507] = {.lex_state = 0}, [1508] = {.lex_state = 0}, [1509] = {.lex_state = 0}, - [1510] = {.lex_state = 0}, - [1511] = {.lex_state = 17}, + [1510] = {.lex_state = 51}, + [1511] = {.lex_state = 0}, [1512] = {.lex_state = 0}, - [1513] = {.lex_state = 17}, - [1514] = {.lex_state = 0, .external_lex_state = 6}, + [1513] = {.lex_state = 0, .external_lex_state = 6}, + [1514] = {.lex_state = 0}, [1515] = {.lex_state = 0}, - [1516] = {.lex_state = 0}, + [1516] = {.lex_state = 0, .external_lex_state = 6}, [1517] = {.lex_state = 0, .external_lex_state = 6}, - [1518] = {.lex_state = 0, .external_lex_state = 6}, + [1518] = {.lex_state = 0}, [1519] = {.lex_state = 0}, - [1520] = {.lex_state = 51}, - [1521] = {.lex_state = 0}, - [1522] = {.lex_state = 0}, - [1523] = {.lex_state = 0, .external_lex_state = 6}, + [1520] = {.lex_state = 0}, + [1521] = {.lex_state = 0, .external_lex_state = 6}, + [1522] = {.lex_state = 0, .external_lex_state = 6}, + [1523] = {.lex_state = 0}, [1524] = {.lex_state = 0}, - [1525] = {.lex_state = 0, .external_lex_state = 6}, - [1526] = {.lex_state = 0}, - [1527] = {.lex_state = 0, .external_lex_state = 6}, + [1525] = {.lex_state = 17}, + [1526] = {.lex_state = 0, .external_lex_state = 6}, + [1527] = {.lex_state = 0}, [1528] = {.lex_state = 0, .external_lex_state = 6}, [1529] = {.lex_state = 0}, [1530] = {.lex_state = 0, .external_lex_state = 6}, - [1531] = {.lex_state = 0, .external_lex_state = 6}, - [1532] = {.lex_state = 0, .external_lex_state = 6}, + [1531] = {.lex_state = 17}, + [1532] = {.lex_state = 0}, [1533] = {.lex_state = 0, .external_lex_state = 6}, - [1534] = {.lex_state = 0}, + [1534] = {.lex_state = 0, .external_lex_state = 6}, [1535] = {.lex_state = 0, .external_lex_state = 6}, [1536] = {.lex_state = 0}, - [1537] = {.lex_state = 0, .external_lex_state = 6}, + [1537] = {.lex_state = 0}, [1538] = {.lex_state = 0}, [1539] = {.lex_state = 17}, [1540] = {.lex_state = 0}, - [1541] = {.lex_state = 17}, + [1541] = {.lex_state = 0}, [1542] = {.lex_state = 0}, [1543] = {.lex_state = 17}, [1544] = {.lex_state = 0}, - [1545] = {.lex_state = 0}, + [1545] = {.lex_state = 17}, [1546] = {.lex_state = 17}, [1547] = {.lex_state = 17}, [1548] = {.lex_state = 51}, [1549] = {.lex_state = 0}, [1550] = {.lex_state = 51}, - [1551] = {.lex_state = 0, .external_lex_state = 6}, - [1552] = {.lex_state = 51}, + [1551] = {.lex_state = 0}, + [1552] = {.lex_state = 0, .external_lex_state = 6}, [1553] = {.lex_state = 0}, - [1554] = {.lex_state = 17}, - [1555] = {.lex_state = 0}, - [1556] = {.lex_state = 0}, + [1554] = {.lex_state = 0}, + [1555] = {.lex_state = 51}, + [1556] = {.lex_state = 17}, [1557] = {.lex_state = 0}, - [1558] = {.lex_state = 0}, - [1559] = {.lex_state = 0}, + [1558] = {.lex_state = 16}, + [1559] = {.lex_state = 0, .external_lex_state = 6}, [1560] = {.lex_state = 0}, [1561] = {.lex_state = 0}, - [1562] = {.lex_state = 16}, - [1563] = {.lex_state = 0}, + [1562] = {.lex_state = 51}, + [1563] = {.lex_state = 0, .external_lex_state = 6}, [1564] = {.lex_state = 0}, - [1565] = {.lex_state = 51}, - [1566] = {.lex_state = 0}, + [1565] = {.lex_state = 0}, + [1566] = {.lex_state = 0, .external_lex_state = 6}, [1567] = {.lex_state = 0}, - [1568] = {.lex_state = 0, .external_lex_state = 6}, + [1568] = {.lex_state = 0}, [1569] = {.lex_state = 0}, - [1570] = {.lex_state = 0}, - [1571] = {.lex_state = 17}, + [1570] = {.lex_state = 0, .external_lex_state = 6}, + [1571] = {.lex_state = 0, .external_lex_state = 6}, [1572] = {.lex_state = 0, .external_lex_state = 6}, - [1573] = {.lex_state = 0}, - [1574] = {.lex_state = 0}, + [1573] = {.lex_state = 0, .external_lex_state = 6}, + [1574] = {.lex_state = 51}, [1575] = {.lex_state = 0}, [1576] = {.lex_state = 0}, - [1577] = {.lex_state = 0}, - [1578] = {.lex_state = 0}, - [1579] = {.lex_state = 0, .external_lex_state = 6}, + [1577] = {.lex_state = 0, .external_lex_state = 6}, + [1578] = {.lex_state = 0, .external_lex_state = 6}, + [1579] = {.lex_state = 0}, [1580] = {.lex_state = 0}, [1581] = {.lex_state = 0}, - [1582] = {.lex_state = 17}, - [1583] = {.lex_state = 51}, + [1582] = {.lex_state = 0}, + [1583] = {.lex_state = 0}, [1584] = {.lex_state = 0}, [1585] = {.lex_state = 0}, [1586] = {.lex_state = 0}, - [1587] = {.lex_state = 0}, - [1588] = {.lex_state = 51}, - [1589] = {.lex_state = 51}, - [1590] = {.lex_state = 51}, + [1587] = {.lex_state = 17}, + [1588] = {.lex_state = 0, .external_lex_state = 6}, + [1589] = {.lex_state = 0}, + [1590] = {.lex_state = 17}, [1591] = {.lex_state = 0}, - [1592] = {.lex_state = 0}, - [1593] = {.lex_state = 51}, + [1592] = {.lex_state = 51}, + [1593] = {.lex_state = 0}, [1594] = {.lex_state = 0}, [1595] = {.lex_state = 0}, [1596] = {.lex_state = 0}, - [1597] = {.lex_state = 51}, - [1598] = {.lex_state = 51}, - [1599] = {.lex_state = 0}, - [1600] = {.lex_state = 0}, - [1601] = {.lex_state = 51}, - [1602] = {.lex_state = 0}, - [1603] = {.lex_state = 51}, - [1604] = {.lex_state = 51}, - [1605] = {.lex_state = 0}, + [1597] = {.lex_state = 0}, + [1598] = {.lex_state = 0}, + [1599] = {.lex_state = 51}, + [1600] = {.lex_state = 51}, + [1601] = {.lex_state = 0}, + [1602] = {.lex_state = 51}, + [1603] = {.lex_state = 0}, + [1604] = {.lex_state = 0}, + [1605] = {.lex_state = 51}, [1606] = {.lex_state = 51}, [1607] = {.lex_state = 51}, - [1608] = {.lex_state = 51}, + [1608] = {.lex_state = 0}, [1609] = {.lex_state = 51}, - [1610] = {.lex_state = 51}, - [1611] = {.lex_state = 0}, + [1610] = {.lex_state = 0}, + [1611] = {.lex_state = 51}, [1612] = {.lex_state = 0}, [1613] = {.lex_state = 0}, - [1614] = {.lex_state = 0}, + [1614] = {.lex_state = 51}, [1615] = {.lex_state = 0}, - [1616] = {.lex_state = 51}, + [1616] = {.lex_state = 0}, [1617] = {.lex_state = 51}, - [1618] = {.lex_state = 51}, - [1619] = {.lex_state = 0}, + [1618] = {.lex_state = 0}, + [1619] = {.lex_state = 51}, [1620] = {.lex_state = 51}, [1621] = {.lex_state = 51}, [1622] = {.lex_state = 51}, [1623] = {.lex_state = 0}, [1624] = {.lex_state = 0}, - [1625] = {.lex_state = 51}, + [1625] = {.lex_state = 0}, [1626] = {.lex_state = 0}, - [1627] = {.lex_state = 0}, - [1628] = {.lex_state = 0}, - [1629] = {.lex_state = 0}, - [1630] = {.lex_state = 51}, + [1627] = {.lex_state = 51}, + [1628] = {.lex_state = 51}, + [1629] = {.lex_state = 51}, + [1630] = {.lex_state = 0}, [1631] = {.lex_state = 0}, - [1632] = {.lex_state = 0}, - [1633] = {.lex_state = 0}, - [1634] = {.lex_state = 0}, + [1632] = {.lex_state = 51}, + [1633] = {.lex_state = 51}, + [1634] = {.lex_state = 51}, [1635] = {.lex_state = 0}, [1636] = {.lex_state = 0}, - [1637] = {.lex_state = 51}, + [1637] = {.lex_state = 0}, [1638] = {.lex_state = 0}, - [1639] = {.lex_state = 51}, - [1640] = {.lex_state = 51}, + [1639] = {.lex_state = 0}, + [1640] = {.lex_state = 0}, [1641] = {.lex_state = 0}, [1642] = {.lex_state = 51}, [1643] = {.lex_state = 0}, - [1644] = {.lex_state = 0}, - [1645] = {.lex_state = 0}, - [1646] = {.lex_state = 51}, - [1647] = {.lex_state = 0}, + [1644] = {.lex_state = 51}, + [1645] = {.lex_state = 51}, + [1646] = {.lex_state = 0}, + [1647] = {.lex_state = 51}, [1648] = {.lex_state = 0}, - [1649] = {.lex_state = 0}, + [1649] = {.lex_state = 51}, [1650] = {.lex_state = 0}, - [1651] = {.lex_state = 0}, + [1651] = {.lex_state = 51}, [1652] = {.lex_state = 0}, - [1653] = {.lex_state = 0}, - [1654] = {.lex_state = 0}, + [1653] = {.lex_state = 51}, + [1654] = {.lex_state = 51}, [1655] = {.lex_state = 0}, [1656] = {.lex_state = 0}, [1657] = {.lex_state = 0}, - [1658] = {.lex_state = 0}, + [1658] = {.lex_state = 51}, [1659] = {.lex_state = 0}, - [1660] = {.lex_state = 0}, + [1660] = {.lex_state = 51}, [1661] = {.lex_state = 0}, [1662] = {.lex_state = 0}, [1663] = {.lex_state = 0}, [1664] = {.lex_state = 0}, [1665] = {.lex_state = 0}, - [1666] = {.lex_state = 51}, + [1666] = {.lex_state = 0}, [1667] = {.lex_state = 0}, - [1668] = {.lex_state = 51}, + [1668] = {.lex_state = 0}, [1669] = {.lex_state = 0}, - [1670] = {.lex_state = 51}, + [1670] = {.lex_state = 0}, [1671] = {.lex_state = 0}, [1672] = {.lex_state = 0}, - [1673] = {.lex_state = 51}, + [1673] = {.lex_state = 0}, [1674] = {.lex_state = 0}, [1675] = {.lex_state = 0}, - [1676] = {.lex_state = 51}, + [1676] = {.lex_state = 0}, [1677] = {.lex_state = 0}, [1678] = {.lex_state = 0}, [1679] = {.lex_state = 0}, @@ -8091,7 +8136,7 @@ static const TSLexMode ts_lex_modes[STATE_COUNT] = { [1686] = {.lex_state = 0}, [1687] = {.lex_state = 0}, [1688] = {.lex_state = 51}, - [1689] = {.lex_state = 51}, + [1689] = {.lex_state = 0}, [1690] = {.lex_state = 51}, [1691] = {.lex_state = 0}, [1692] = {.lex_state = 0}, @@ -8099,21 +8144,21 @@ static const TSLexMode ts_lex_modes[STATE_COUNT] = { [1694] = {.lex_state = 0}, [1695] = {.lex_state = 0}, [1696] = {.lex_state = 0}, - [1697] = {.lex_state = 51}, + [1697] = {.lex_state = 0}, [1698] = {.lex_state = 0}, - [1699] = {.lex_state = 0}, + [1699] = {.lex_state = 51}, [1700] = {.lex_state = 0}, [1701] = {.lex_state = 0}, [1702] = {.lex_state = 0}, - [1703] = {.lex_state = 0}, + [1703] = {.lex_state = 51}, [1704] = {.lex_state = 0}, - [1705] = {.lex_state = 0}, - [1706] = {.lex_state = 0}, - [1707] = {.lex_state = 0}, + [1705] = {.lex_state = 51}, + [1706] = {.lex_state = 51}, + [1707] = {.lex_state = 51}, [1708] = {.lex_state = 0}, [1709] = {.lex_state = 0}, [1710] = {.lex_state = 51}, - [1711] = {.lex_state = 51}, + [1711] = {.lex_state = 0}, [1712] = {.lex_state = 51}, [1713] = {.lex_state = 0}, [1714] = {.lex_state = 0}, @@ -8122,15 +8167,27 @@ static const TSLexMode ts_lex_modes[STATE_COUNT] = { [1717] = {.lex_state = 0}, [1718] = {.lex_state = 0}, [1719] = {.lex_state = 0}, - [1720] = {.lex_state = 0}, + [1720] = {.lex_state = 51}, [1721] = {.lex_state = 0}, - [1722] = {.lex_state = 51}, + [1722] = {.lex_state = 0}, + [1723] = {.lex_state = 0}, + [1724] = {.lex_state = 0}, + [1725] = {.lex_state = 0}, + [1726] = {.lex_state = 0}, + [1727] = {.lex_state = 0}, + [1728] = {.lex_state = 0}, + [1729] = {.lex_state = 0}, + [1730] = {.lex_state = 0}, + [1731] = {.lex_state = 0}, + [1732] = {.lex_state = 0}, + [1733] = {.lex_state = 0}, }; static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [STATE(0)] = { [ts_builtin_sym_end] = ACTIONS(1), [sym_identifier] = ACTIONS(1), + [anon_sym_lazy] = ACTIONS(1), [anon_sym_import] = ACTIONS(1), [anon_sym_DOT] = ACTIONS(1), [anon_sym_from] = ACTIONS(1), @@ -8236,22 +8293,22 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__template_string_start] = ACTIONS(1), }, [STATE(1)] = { - [sym_module] = STATE(1655), + [sym_module] = STATE(1610), [sym__statement] = STATE(62), [sym__simple_statements] = STATE(62), - [sym_import_statement] = STATE(1348), - [sym_future_import_statement] = STATE(1348), - [sym_import_from_statement] = STATE(1348), - [sym_print_statement] = STATE(1348), - [sym_assert_statement] = STATE(1348), - [sym_expression_statement] = STATE(1348), - [sym_named_expression] = STATE(1158), - [sym_return_statement] = STATE(1348), - [sym_delete_statement] = STATE(1348), - [sym_raise_statement] = STATE(1348), - [sym_pass_statement] = STATE(1348), - [sym_break_statement] = STATE(1348), - [sym_continue_statement] = STATE(1348), + [sym_import_statement] = STATE(1301), + [sym_future_import_statement] = STATE(1301), + [sym_import_from_statement] = STATE(1301), + [sym_print_statement] = STATE(1301), + [sym_assert_statement] = STATE(1301), + [sym_expression_statement] = STATE(1301), + [sym_named_expression] = STATE(1156), + [sym_return_statement] = STATE(1301), + [sym_delete_statement] = STATE(1301), + [sym_raise_statement] = STATE(1301), + [sym_pass_statement] = STATE(1301), + [sym_break_statement] = STATE(1301), + [sym_continue_statement] = STATE(1301), [sym_if_statement] = STATE(62), [sym_for_statement] = STATE(62), [sym_while_statement] = STATE(62), @@ -8259,219 +8316,340 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_with_statement] = STATE(62), [sym_match_statement] = STATE(62), [sym_function_definition] = STATE(62), - [sym_list_splat] = STATE(1549), - [sym_dictionary_splat] = STATE(1549), - [sym_global_statement] = STATE(1348), - [sym_nonlocal_statement] = STATE(1348), - [sym_exec_statement] = STATE(1348), - [sym_type_alias_statement] = STATE(1348), + [sym_list_splat] = STATE(1520), + [sym_dictionary_splat] = STATE(1520), + [sym_global_statement] = STATE(1301), + [sym_nonlocal_statement] = STATE(1301), + [sym_exec_statement] = STATE(1301), + [sym_type_alias_statement] = STATE(1301), [sym_class_definition] = STATE(62), [sym_decorated_definition] = STATE(62), - [sym_decorator] = STATE(1118), - [sym_expression_list] = STATE(1551), - [sym_pattern] = STATE(1013), - [sym_tuple_pattern] = STATE(999), - [sym_list_pattern] = STATE(999), - [sym_list_splat_pattern] = STATE(999), - [sym_expression] = STATE(1185), - [sym_primary_expression] = STATE(779), - [sym_not_operator] = STATE(1158), - [sym_boolean_operator] = STATE(1158), - [sym_binary_operator] = STATE(908), - [sym_unary_operator] = STATE(908), - [sym_comparison_operator] = STATE(1158), - [sym_lambda] = STATE(1158), - [sym_assignment] = STATE(1551), - [sym_augmented_assignment] = STATE(1551), - [sym_pattern_list] = STATE(1024), - [sym_yield] = STATE(1551), - [sym_attribute] = STATE(494), - [sym_subscript] = STATE(494), - [sym_call] = STATE(908), - [sym_list] = STATE(908), - [sym_set] = STATE(908), - [sym_tuple] = STATE(908), - [sym_dictionary] = STATE(908), - [sym_list_comprehension] = STATE(908), - [sym_dictionary_comprehension] = STATE(908), - [sym_set_comprehension] = STATE(908), - [sym_generator_expression] = STATE(908), - [sym_parenthesized_expression] = STATE(908), - [sym_conditional_expression] = STATE(1158), - [sym_concatenated_string] = STATE(908), - [sym_string] = STATE(782), - [sym_concatenated_template_string] = STATE(908), - [sym_template_string] = STATE(763), - [sym_await] = STATE(908), + [sym_decorator] = STATE(1128), + [sym_expression_list] = STATE(1522), + [sym_pattern] = STATE(1017), + [sym_tuple_pattern] = STATE(1001), + [sym_list_pattern] = STATE(1001), + [sym_list_splat_pattern] = STATE(1001), + [sym_expression] = STATE(1176), + [sym_primary_expression] = STATE(765), + [sym_not_operator] = STATE(1156), + [sym_boolean_operator] = STATE(1156), + [sym_binary_operator] = STATE(920), + [sym_unary_operator] = STATE(920), + [sym_comparison_operator] = STATE(1156), + [sym_lambda] = STATE(1156), + [sym_assignment] = STATE(1522), + [sym_augmented_assignment] = STATE(1522), + [sym_pattern_list] = STATE(1026), + [sym_yield] = STATE(1522), + [sym_attribute] = STATE(582), + [sym_subscript] = STATE(582), + [sym_call] = STATE(920), + [sym_list] = STATE(920), + [sym_set] = STATE(920), + [sym_tuple] = STATE(920), + [sym_dictionary] = STATE(920), + [sym_list_comprehension] = STATE(920), + [sym_dictionary_comprehension] = STATE(920), + [sym_set_comprehension] = STATE(920), + [sym_generator_expression] = STATE(920), + [sym_parenthesized_expression] = STATE(920), + [sym_conditional_expression] = STATE(1156), + [sym_concatenated_string] = STATE(920), + [sym_string] = STATE(775), + [sym_concatenated_template_string] = STATE(920), + [sym_template_string] = STATE(769), + [sym_await] = STATE(920), [aux_sym_module_repeat1] = STATE(62), - [aux_sym_decorated_definition_repeat1] = STATE(1118), + [aux_sym_decorated_definition_repeat1] = STATE(1128), [ts_builtin_sym_end] = ACTIONS(5), [sym_identifier] = ACTIONS(7), - [anon_sym_import] = ACTIONS(9), - [anon_sym_from] = ACTIONS(11), - [anon_sym_LPAREN] = ACTIONS(13), - [anon_sym_STAR] = ACTIONS(15), - [anon_sym_print] = ACTIONS(17), - [anon_sym_assert] = ACTIONS(19), - [anon_sym_return] = ACTIONS(21), - [anon_sym_del] = ACTIONS(23), - [anon_sym_raise] = ACTIONS(25), - [anon_sym_pass] = ACTIONS(27), - [anon_sym_break] = ACTIONS(29), - [anon_sym_continue] = ACTIONS(31), - [anon_sym_if] = ACTIONS(33), - [anon_sym_async] = ACTIONS(35), - [anon_sym_for] = ACTIONS(37), - [anon_sym_while] = ACTIONS(39), - [anon_sym_try] = ACTIONS(41), - [anon_sym_with] = ACTIONS(43), - [anon_sym_match] = ACTIONS(45), - [anon_sym_DASH] = ACTIONS(47), - [anon_sym_PLUS] = ACTIONS(47), - [anon_sym_LBRACK] = ACTIONS(49), - [anon_sym_LBRACE] = ACTIONS(51), - [anon_sym_STAR_STAR] = ACTIONS(53), - [anon_sym_def] = ACTIONS(55), - [anon_sym_global] = ACTIONS(57), - [anon_sym_nonlocal] = ACTIONS(59), - [anon_sym_exec] = ACTIONS(61), - [anon_sym_type] = ACTIONS(63), - [anon_sym_class] = ACTIONS(65), - [anon_sym_AT] = ACTIONS(67), - [anon_sym_not] = ACTIONS(69), - [anon_sym_TILDE] = ACTIONS(47), - [anon_sym_lambda] = ACTIONS(71), - [anon_sym_yield] = ACTIONS(73), - [sym_ellipsis] = ACTIONS(75), - [sym_integer] = ACTIONS(77), - [sym_float] = ACTIONS(75), - [anon_sym_await] = ACTIONS(79), - [sym_true] = ACTIONS(77), - [sym_false] = ACTIONS(77), - [sym_none] = ACTIONS(77), + [anon_sym_lazy] = ACTIONS(9), + [anon_sym_import] = ACTIONS(11), + [anon_sym_from] = ACTIONS(13), + [anon_sym_LPAREN] = ACTIONS(15), + [anon_sym_STAR] = ACTIONS(17), + [anon_sym_print] = ACTIONS(19), + [anon_sym_assert] = ACTIONS(21), + [anon_sym_return] = ACTIONS(23), + [anon_sym_del] = ACTIONS(25), + [anon_sym_raise] = ACTIONS(27), + [anon_sym_pass] = ACTIONS(29), + [anon_sym_break] = ACTIONS(31), + [anon_sym_continue] = ACTIONS(33), + [anon_sym_if] = ACTIONS(35), + [anon_sym_async] = ACTIONS(37), + [anon_sym_for] = ACTIONS(39), + [anon_sym_while] = ACTIONS(41), + [anon_sym_try] = ACTIONS(43), + [anon_sym_with] = ACTIONS(45), + [anon_sym_match] = ACTIONS(47), + [anon_sym_DASH] = ACTIONS(49), + [anon_sym_PLUS] = ACTIONS(49), + [anon_sym_LBRACK] = ACTIONS(51), + [anon_sym_LBRACE] = ACTIONS(53), + [anon_sym_STAR_STAR] = ACTIONS(55), + [anon_sym_def] = ACTIONS(57), + [anon_sym_global] = ACTIONS(59), + [anon_sym_nonlocal] = ACTIONS(61), + [anon_sym_exec] = ACTIONS(63), + [anon_sym_type] = ACTIONS(65), + [anon_sym_class] = ACTIONS(67), + [anon_sym_AT] = ACTIONS(69), + [anon_sym_not] = ACTIONS(71), + [anon_sym_TILDE] = ACTIONS(49), + [anon_sym_lambda] = ACTIONS(73), + [anon_sym_yield] = ACTIONS(75), + [sym_ellipsis] = ACTIONS(77), + [sym_integer] = ACTIONS(79), + [sym_float] = ACTIONS(77), + [anon_sym_await] = ACTIONS(81), + [sym_true] = ACTIONS(79), + [sym_false] = ACTIONS(79), + [sym_none] = ACTIONS(79), [sym_comment] = ACTIONS(3), - [sym__string_start] = ACTIONS(81), - [sym__template_string_start] = ACTIONS(83), + [sym__string_start] = ACTIONS(83), + [sym__template_string_start] = ACTIONS(85), }, [STATE(2)] = { - [sym__statement] = STATE(65), - [sym__simple_statements] = STATE(65), + [sym__statement] = STATE(64), + [sym__simple_statements] = STATE(64), [sym_import_statement] = STATE(1332), [sym_future_import_statement] = STATE(1332), [sym_import_from_statement] = STATE(1332), [sym_print_statement] = STATE(1332), [sym_assert_statement] = STATE(1332), [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1158), + [sym_named_expression] = STATE(1156), [sym_return_statement] = STATE(1332), [sym_delete_statement] = STATE(1332), [sym_raise_statement] = STATE(1332), [sym_pass_statement] = STATE(1332), [sym_break_statement] = STATE(1332), [sym_continue_statement] = STATE(1332), - [sym_if_statement] = STATE(65), - [sym_for_statement] = STATE(65), - [sym_while_statement] = STATE(65), - [sym_try_statement] = STATE(65), - [sym_with_statement] = STATE(65), - [sym_match_statement] = STATE(65), - [sym_function_definition] = STATE(65), - [sym_list_splat] = STATE(1549), - [sym_dictionary_splat] = STATE(1549), + [sym_if_statement] = STATE(64), + [sym_for_statement] = STATE(64), + [sym_while_statement] = STATE(64), + [sym_try_statement] = STATE(64), + [sym_with_statement] = STATE(64), + [sym_match_statement] = STATE(64), + [sym_function_definition] = STATE(64), + [sym_list_splat] = STATE(1520), + [sym_dictionary_splat] = STATE(1520), [sym_global_statement] = STATE(1332), [sym_nonlocal_statement] = STATE(1332), [sym_exec_statement] = STATE(1332), [sym_type_alias_statement] = STATE(1332), - [sym_class_definition] = STATE(65), - [sym_decorated_definition] = STATE(65), - [sym_decorator] = STATE(1113), - [sym_block] = STATE(327), - [sym_expression_list] = STATE(1551), - [sym_pattern] = STATE(1013), - [sym_tuple_pattern] = STATE(999), - [sym_list_pattern] = STATE(999), - [sym_list_splat_pattern] = STATE(999), - [sym_expression] = STATE(1185), - [sym_primary_expression] = STATE(779), - [sym_not_operator] = STATE(1158), - [sym_boolean_operator] = STATE(1158), - [sym_binary_operator] = STATE(908), - [sym_unary_operator] = STATE(908), - [sym_comparison_operator] = STATE(1158), - [sym_lambda] = STATE(1158), - [sym_assignment] = STATE(1551), - [sym_augmented_assignment] = STATE(1551), - [sym_pattern_list] = STATE(1024), - [sym_yield] = STATE(1551), - [sym_attribute] = STATE(494), - [sym_subscript] = STATE(494), - [sym_call] = STATE(908), - [sym_list] = STATE(908), - [sym_set] = STATE(908), - [sym_tuple] = STATE(908), - [sym_dictionary] = STATE(908), - [sym_list_comprehension] = STATE(908), - [sym_dictionary_comprehension] = STATE(908), - [sym_set_comprehension] = STATE(908), - [sym_generator_expression] = STATE(908), - [sym_parenthesized_expression] = STATE(908), - [sym_conditional_expression] = STATE(1158), - [sym_concatenated_string] = STATE(908), - [sym_string] = STATE(782), - [sym_concatenated_template_string] = STATE(908), - [sym_template_string] = STATE(763), - [sym_await] = STATE(908), - [aux_sym_module_repeat1] = STATE(65), - [aux_sym_decorated_definition_repeat1] = STATE(1113), + [sym_class_definition] = STATE(64), + [sym_decorated_definition] = STATE(64), + [sym_decorator] = STATE(1127), + [sym_block] = STATE(330), + [sym_expression_list] = STATE(1522), + [sym_pattern] = STATE(1017), + [sym_tuple_pattern] = STATE(1001), + [sym_list_pattern] = STATE(1001), + [sym_list_splat_pattern] = STATE(1001), + [sym_expression] = STATE(1176), + [sym_primary_expression] = STATE(765), + [sym_not_operator] = STATE(1156), + [sym_boolean_operator] = STATE(1156), + [sym_binary_operator] = STATE(920), + [sym_unary_operator] = STATE(920), + [sym_comparison_operator] = STATE(1156), + [sym_lambda] = STATE(1156), + [sym_assignment] = STATE(1522), + [sym_augmented_assignment] = STATE(1522), + [sym_pattern_list] = STATE(1026), + [sym_yield] = STATE(1522), + [sym_attribute] = STATE(582), + [sym_subscript] = STATE(582), + [sym_call] = STATE(920), + [sym_list] = STATE(920), + [sym_set] = STATE(920), + [sym_tuple] = STATE(920), + [sym_dictionary] = STATE(920), + [sym_list_comprehension] = STATE(920), + [sym_dictionary_comprehension] = STATE(920), + [sym_set_comprehension] = STATE(920), + [sym_generator_expression] = STATE(920), + [sym_parenthesized_expression] = STATE(920), + [sym_conditional_expression] = STATE(1156), + [sym_concatenated_string] = STATE(920), + [sym_string] = STATE(775), + [sym_concatenated_template_string] = STATE(920), + [sym_template_string] = STATE(769), + [sym_await] = STATE(920), + [aux_sym_module_repeat1] = STATE(64), + [aux_sym_decorated_definition_repeat1] = STATE(1127), [sym_identifier] = ACTIONS(7), - [anon_sym_import] = ACTIONS(9), - [anon_sym_from] = ACTIONS(11), - [anon_sym_LPAREN] = ACTIONS(13), - [anon_sym_STAR] = ACTIONS(15), - [anon_sym_print] = ACTIONS(17), - [anon_sym_assert] = ACTIONS(19), - [anon_sym_return] = ACTIONS(21), - [anon_sym_del] = ACTIONS(23), - [anon_sym_raise] = ACTIONS(25), - [anon_sym_pass] = ACTIONS(27), - [anon_sym_break] = ACTIONS(29), - [anon_sym_continue] = ACTIONS(31), - [anon_sym_if] = ACTIONS(85), - [anon_sym_async] = ACTIONS(87), - [anon_sym_for] = ACTIONS(89), - [anon_sym_while] = ACTIONS(91), - [anon_sym_try] = ACTIONS(93), - [anon_sym_with] = ACTIONS(95), - [anon_sym_match] = ACTIONS(97), - [anon_sym_DASH] = ACTIONS(47), - [anon_sym_PLUS] = ACTIONS(47), - [anon_sym_LBRACK] = ACTIONS(49), - [anon_sym_LBRACE] = ACTIONS(51), - [anon_sym_STAR_STAR] = ACTIONS(53), - [anon_sym_def] = ACTIONS(99), - [anon_sym_global] = ACTIONS(57), - [anon_sym_nonlocal] = ACTIONS(59), - [anon_sym_exec] = ACTIONS(61), - [anon_sym_type] = ACTIONS(63), - [anon_sym_class] = ACTIONS(101), - [anon_sym_AT] = ACTIONS(67), - [anon_sym_not] = ACTIONS(69), - [anon_sym_TILDE] = ACTIONS(47), - [anon_sym_lambda] = ACTIONS(71), - [anon_sym_yield] = ACTIONS(73), - [sym_ellipsis] = ACTIONS(75), - [sym_integer] = ACTIONS(77), - [sym_float] = ACTIONS(75), - [anon_sym_await] = ACTIONS(79), - [sym_true] = ACTIONS(77), - [sym_false] = ACTIONS(77), - [sym_none] = ACTIONS(77), + [anon_sym_lazy] = ACTIONS(9), + [anon_sym_import] = ACTIONS(11), + [anon_sym_from] = ACTIONS(13), + [anon_sym_LPAREN] = ACTIONS(15), + [anon_sym_STAR] = ACTIONS(17), + [anon_sym_print] = ACTIONS(19), + [anon_sym_assert] = ACTIONS(21), + [anon_sym_return] = ACTIONS(23), + [anon_sym_del] = ACTIONS(25), + [anon_sym_raise] = ACTIONS(27), + [anon_sym_pass] = ACTIONS(29), + [anon_sym_break] = ACTIONS(31), + [anon_sym_continue] = ACTIONS(33), + [anon_sym_if] = ACTIONS(87), + [anon_sym_async] = ACTIONS(89), + [anon_sym_for] = ACTIONS(91), + [anon_sym_while] = ACTIONS(93), + [anon_sym_try] = ACTIONS(95), + [anon_sym_with] = ACTIONS(97), + [anon_sym_match] = ACTIONS(99), + [anon_sym_DASH] = ACTIONS(49), + [anon_sym_PLUS] = ACTIONS(49), + [anon_sym_LBRACK] = ACTIONS(51), + [anon_sym_LBRACE] = ACTIONS(53), + [anon_sym_STAR_STAR] = ACTIONS(55), + [anon_sym_def] = ACTIONS(101), + [anon_sym_global] = ACTIONS(59), + [anon_sym_nonlocal] = ACTIONS(61), + [anon_sym_exec] = ACTIONS(63), + [anon_sym_type] = ACTIONS(65), + [anon_sym_class] = ACTIONS(103), + [anon_sym_AT] = ACTIONS(69), + [anon_sym_not] = ACTIONS(71), + [anon_sym_TILDE] = ACTIONS(49), + [anon_sym_lambda] = ACTIONS(73), + [anon_sym_yield] = ACTIONS(75), + [sym_ellipsis] = ACTIONS(77), + [sym_integer] = ACTIONS(79), + [sym_float] = ACTIONS(77), + [anon_sym_await] = ACTIONS(81), + [sym_true] = ACTIONS(79), + [sym_false] = ACTIONS(79), + [sym_none] = ACTIONS(79), [sym_comment] = ACTIONS(3), - [sym__dedent] = ACTIONS(103), - [sym__string_start] = ACTIONS(81), - [sym__template_string_start] = ACTIONS(83), + [sym__dedent] = ACTIONS(105), + [sym__string_start] = ACTIONS(83), + [sym__template_string_start] = ACTIONS(85), }, [STATE(3)] = { + [sym__statement] = STATE(60), + [sym__simple_statements] = STATE(60), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1156), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), + [sym_if_statement] = STATE(60), + [sym_for_statement] = STATE(60), + [sym_while_statement] = STATE(60), + [sym_try_statement] = STATE(60), + [sym_with_statement] = STATE(60), + [sym_match_statement] = STATE(60), + [sym_function_definition] = STATE(60), + [sym_list_splat] = STATE(1520), + [sym_dictionary_splat] = STATE(1520), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), + [sym_class_definition] = STATE(60), + [sym_decorated_definition] = STATE(60), + [sym_decorator] = STATE(1127), + [sym_block] = STATE(1213), + [sym_expression_list] = STATE(1522), + [sym_pattern] = STATE(1017), + [sym_tuple_pattern] = STATE(1001), + [sym_list_pattern] = STATE(1001), + [sym_list_splat_pattern] = STATE(1001), + [sym_expression] = STATE(1176), + [sym_primary_expression] = STATE(765), + [sym_not_operator] = STATE(1156), + [sym_boolean_operator] = STATE(1156), + [sym_binary_operator] = STATE(920), + [sym_unary_operator] = STATE(920), + [sym_comparison_operator] = STATE(1156), + [sym_lambda] = STATE(1156), + [sym_assignment] = STATE(1522), + [sym_augmented_assignment] = STATE(1522), + [sym_pattern_list] = STATE(1026), + [sym_yield] = STATE(1522), + [sym_attribute] = STATE(582), + [sym_subscript] = STATE(582), + [sym_call] = STATE(920), + [sym_list] = STATE(920), + [sym_set] = STATE(920), + [sym_tuple] = STATE(920), + [sym_dictionary] = STATE(920), + [sym_list_comprehension] = STATE(920), + [sym_dictionary_comprehension] = STATE(920), + [sym_set_comprehension] = STATE(920), + [sym_generator_expression] = STATE(920), + [sym_parenthesized_expression] = STATE(920), + [sym_conditional_expression] = STATE(1156), + [sym_concatenated_string] = STATE(920), + [sym_string] = STATE(775), + [sym_concatenated_template_string] = STATE(920), + [sym_template_string] = STATE(769), + [sym_await] = STATE(920), + [aux_sym_module_repeat1] = STATE(60), + [aux_sym_decorated_definition_repeat1] = STATE(1127), + [sym_identifier] = ACTIONS(7), + [anon_sym_lazy] = ACTIONS(9), + [anon_sym_import] = ACTIONS(11), + [anon_sym_from] = ACTIONS(13), + [anon_sym_LPAREN] = ACTIONS(15), + [anon_sym_STAR] = ACTIONS(17), + [anon_sym_print] = ACTIONS(19), + [anon_sym_assert] = ACTIONS(21), + [anon_sym_return] = ACTIONS(23), + [anon_sym_del] = ACTIONS(25), + [anon_sym_raise] = ACTIONS(27), + [anon_sym_pass] = ACTIONS(29), + [anon_sym_break] = ACTIONS(31), + [anon_sym_continue] = ACTIONS(33), + [anon_sym_if] = ACTIONS(87), + [anon_sym_async] = ACTIONS(89), + [anon_sym_for] = ACTIONS(91), + [anon_sym_while] = ACTIONS(93), + [anon_sym_try] = ACTIONS(95), + [anon_sym_with] = ACTIONS(97), + [anon_sym_match] = ACTIONS(99), + [anon_sym_DASH] = ACTIONS(49), + [anon_sym_PLUS] = ACTIONS(49), + [anon_sym_LBRACK] = ACTIONS(51), + [anon_sym_LBRACE] = ACTIONS(53), + [anon_sym_STAR_STAR] = ACTIONS(55), + [anon_sym_def] = ACTIONS(101), + [anon_sym_global] = ACTIONS(59), + [anon_sym_nonlocal] = ACTIONS(61), + [anon_sym_exec] = ACTIONS(63), + [anon_sym_type] = ACTIONS(65), + [anon_sym_class] = ACTIONS(103), + [anon_sym_AT] = ACTIONS(69), + [anon_sym_not] = ACTIONS(71), + [anon_sym_TILDE] = ACTIONS(49), + [anon_sym_lambda] = ACTIONS(73), + [anon_sym_yield] = ACTIONS(75), + [sym_ellipsis] = ACTIONS(77), + [sym_integer] = ACTIONS(79), + [sym_float] = ACTIONS(77), + [anon_sym_await] = ACTIONS(81), + [sym_true] = ACTIONS(79), + [sym_false] = ACTIONS(79), + [sym_none] = ACTIONS(79), + [sym_comment] = ACTIONS(3), + [sym__dedent] = ACTIONS(107), + [sym__string_start] = ACTIONS(83), + [sym__template_string_start] = ACTIONS(85), + }, + [STATE(4)] = { [sym__statement] = STATE(61), [sym__simple_statements] = STATE(61), [sym_import_statement] = STATE(1332), @@ -8480,7 +8658,7 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_print_statement] = STATE(1332), [sym_assert_statement] = STATE(1332), [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1158), + [sym_named_expression] = STATE(1156), [sym_return_statement] = STATE(1332), [sym_delete_statement] = STATE(1332), [sym_raise_statement] = STATE(1332), @@ -8494,3286 +8672,3195 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_with_statement] = STATE(61), [sym_match_statement] = STATE(61), [sym_function_definition] = STATE(61), - [sym_list_splat] = STATE(1549), - [sym_dictionary_splat] = STATE(1549), + [sym_list_splat] = STATE(1520), + [sym_dictionary_splat] = STATE(1520), [sym_global_statement] = STATE(1332), [sym_nonlocal_statement] = STATE(1332), [sym_exec_statement] = STATE(1332), [sym_type_alias_statement] = STATE(1332), [sym_class_definition] = STATE(61), [sym_decorated_definition] = STATE(61), - [sym_decorator] = STATE(1113), - [sym_block] = STATE(1181), - [sym_expression_list] = STATE(1551), - [sym_pattern] = STATE(1013), - [sym_tuple_pattern] = STATE(999), - [sym_list_pattern] = STATE(999), - [sym_list_splat_pattern] = STATE(999), - [sym_expression] = STATE(1185), - [sym_primary_expression] = STATE(779), - [sym_not_operator] = STATE(1158), - [sym_boolean_operator] = STATE(1158), - [sym_binary_operator] = STATE(908), - [sym_unary_operator] = STATE(908), - [sym_comparison_operator] = STATE(1158), - [sym_lambda] = STATE(1158), - [sym_assignment] = STATE(1551), - [sym_augmented_assignment] = STATE(1551), - [sym_pattern_list] = STATE(1024), - [sym_yield] = STATE(1551), - [sym_attribute] = STATE(494), - [sym_subscript] = STATE(494), - [sym_call] = STATE(908), - [sym_list] = STATE(908), - [sym_set] = STATE(908), - [sym_tuple] = STATE(908), - [sym_dictionary] = STATE(908), - [sym_list_comprehension] = STATE(908), - [sym_dictionary_comprehension] = STATE(908), - [sym_set_comprehension] = STATE(908), - [sym_generator_expression] = STATE(908), - [sym_parenthesized_expression] = STATE(908), - [sym_conditional_expression] = STATE(1158), - [sym_concatenated_string] = STATE(908), - [sym_string] = STATE(782), - [sym_concatenated_template_string] = STATE(908), - [sym_template_string] = STATE(763), - [sym_await] = STATE(908), + [sym_decorator] = STATE(1127), + [sym_block] = STATE(312), + [sym_expression_list] = STATE(1522), + [sym_pattern] = STATE(1017), + [sym_tuple_pattern] = STATE(1001), + [sym_list_pattern] = STATE(1001), + [sym_list_splat_pattern] = STATE(1001), + [sym_expression] = STATE(1176), + [sym_primary_expression] = STATE(765), + [sym_not_operator] = STATE(1156), + [sym_boolean_operator] = STATE(1156), + [sym_binary_operator] = STATE(920), + [sym_unary_operator] = STATE(920), + [sym_comparison_operator] = STATE(1156), + [sym_lambda] = STATE(1156), + [sym_assignment] = STATE(1522), + [sym_augmented_assignment] = STATE(1522), + [sym_pattern_list] = STATE(1026), + [sym_yield] = STATE(1522), + [sym_attribute] = STATE(582), + [sym_subscript] = STATE(582), + [sym_call] = STATE(920), + [sym_list] = STATE(920), + [sym_set] = STATE(920), + [sym_tuple] = STATE(920), + [sym_dictionary] = STATE(920), + [sym_list_comprehension] = STATE(920), + [sym_dictionary_comprehension] = STATE(920), + [sym_set_comprehension] = STATE(920), + [sym_generator_expression] = STATE(920), + [sym_parenthesized_expression] = STATE(920), + [sym_conditional_expression] = STATE(1156), + [sym_concatenated_string] = STATE(920), + [sym_string] = STATE(775), + [sym_concatenated_template_string] = STATE(920), + [sym_template_string] = STATE(769), + [sym_await] = STATE(920), [aux_sym_module_repeat1] = STATE(61), - [aux_sym_decorated_definition_repeat1] = STATE(1113), + [aux_sym_decorated_definition_repeat1] = STATE(1127), [sym_identifier] = ACTIONS(7), - [anon_sym_import] = ACTIONS(9), - [anon_sym_from] = ACTIONS(11), - [anon_sym_LPAREN] = ACTIONS(13), - [anon_sym_STAR] = ACTIONS(15), - [anon_sym_print] = ACTIONS(17), - [anon_sym_assert] = ACTIONS(19), - [anon_sym_return] = ACTIONS(21), - [anon_sym_del] = ACTIONS(23), - [anon_sym_raise] = ACTIONS(25), - [anon_sym_pass] = ACTIONS(27), - [anon_sym_break] = ACTIONS(29), - [anon_sym_continue] = ACTIONS(31), - [anon_sym_if] = ACTIONS(85), - [anon_sym_async] = ACTIONS(87), - [anon_sym_for] = ACTIONS(89), - [anon_sym_while] = ACTIONS(91), - [anon_sym_try] = ACTIONS(93), - [anon_sym_with] = ACTIONS(95), - [anon_sym_match] = ACTIONS(97), - [anon_sym_DASH] = ACTIONS(47), - [anon_sym_PLUS] = ACTIONS(47), - [anon_sym_LBRACK] = ACTIONS(49), - [anon_sym_LBRACE] = ACTIONS(51), - [anon_sym_STAR_STAR] = ACTIONS(53), - [anon_sym_def] = ACTIONS(99), - [anon_sym_global] = ACTIONS(57), - [anon_sym_nonlocal] = ACTIONS(59), - [anon_sym_exec] = ACTIONS(61), - [anon_sym_type] = ACTIONS(63), - [anon_sym_class] = ACTIONS(101), - [anon_sym_AT] = ACTIONS(67), - [anon_sym_not] = ACTIONS(69), - [anon_sym_TILDE] = ACTIONS(47), - [anon_sym_lambda] = ACTIONS(71), - [anon_sym_yield] = ACTIONS(73), - [sym_ellipsis] = ACTIONS(75), - [sym_integer] = ACTIONS(77), - [sym_float] = ACTIONS(75), - [anon_sym_await] = ACTIONS(79), - [sym_true] = ACTIONS(77), - [sym_false] = ACTIONS(77), - [sym_none] = ACTIONS(77), + [anon_sym_lazy] = ACTIONS(9), + [anon_sym_import] = ACTIONS(11), + [anon_sym_from] = ACTIONS(13), + [anon_sym_LPAREN] = ACTIONS(15), + [anon_sym_STAR] = ACTIONS(17), + [anon_sym_print] = ACTIONS(19), + [anon_sym_assert] = ACTIONS(21), + [anon_sym_return] = ACTIONS(23), + [anon_sym_del] = ACTIONS(25), + [anon_sym_raise] = ACTIONS(27), + [anon_sym_pass] = ACTIONS(29), + [anon_sym_break] = ACTIONS(31), + [anon_sym_continue] = ACTIONS(33), + [anon_sym_if] = ACTIONS(87), + [anon_sym_async] = ACTIONS(89), + [anon_sym_for] = ACTIONS(91), + [anon_sym_while] = ACTIONS(93), + [anon_sym_try] = ACTIONS(95), + [anon_sym_with] = ACTIONS(97), + [anon_sym_match] = ACTIONS(99), + [anon_sym_DASH] = ACTIONS(49), + [anon_sym_PLUS] = ACTIONS(49), + [anon_sym_LBRACK] = ACTIONS(51), + [anon_sym_LBRACE] = ACTIONS(53), + [anon_sym_STAR_STAR] = ACTIONS(55), + [anon_sym_def] = ACTIONS(101), + [anon_sym_global] = ACTIONS(59), + [anon_sym_nonlocal] = ACTIONS(61), + [anon_sym_exec] = ACTIONS(63), + [anon_sym_type] = ACTIONS(65), + [anon_sym_class] = ACTIONS(103), + [anon_sym_AT] = ACTIONS(69), + [anon_sym_not] = ACTIONS(71), + [anon_sym_TILDE] = ACTIONS(49), + [anon_sym_lambda] = ACTIONS(73), + [anon_sym_yield] = ACTIONS(75), + [sym_ellipsis] = ACTIONS(77), + [sym_integer] = ACTIONS(79), + [sym_float] = ACTIONS(77), + [anon_sym_await] = ACTIONS(81), + [sym_true] = ACTIONS(79), + [sym_false] = ACTIONS(79), + [sym_none] = ACTIONS(79), [sym_comment] = ACTIONS(3), - [sym__dedent] = ACTIONS(105), - [sym__string_start] = ACTIONS(81), - [sym__template_string_start] = ACTIONS(83), - }, - [STATE(4)] = { - [sym__statement] = STATE(63), - [sym__simple_statements] = STATE(63), - [sym_import_statement] = STATE(1332), - [sym_future_import_statement] = STATE(1332), - [sym_import_from_statement] = STATE(1332), - [sym_print_statement] = STATE(1332), - [sym_assert_statement] = STATE(1332), - [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1158), - [sym_return_statement] = STATE(1332), - [sym_delete_statement] = STATE(1332), - [sym_raise_statement] = STATE(1332), - [sym_pass_statement] = STATE(1332), - [sym_break_statement] = STATE(1332), - [sym_continue_statement] = STATE(1332), - [sym_if_statement] = STATE(63), - [sym_for_statement] = STATE(63), - [sym_while_statement] = STATE(63), - [sym_try_statement] = STATE(63), - [sym_with_statement] = STATE(63), - [sym_match_statement] = STATE(63), - [sym_function_definition] = STATE(63), - [sym_list_splat] = STATE(1549), - [sym_dictionary_splat] = STATE(1549), - [sym_global_statement] = STATE(1332), - [sym_nonlocal_statement] = STATE(1332), - [sym_exec_statement] = STATE(1332), - [sym_type_alias_statement] = STATE(1332), - [sym_class_definition] = STATE(63), - [sym_decorated_definition] = STATE(63), - [sym_decorator] = STATE(1113), - [sym_block] = STATE(322), - [sym_expression_list] = STATE(1551), - [sym_pattern] = STATE(1013), - [sym_tuple_pattern] = STATE(999), - [sym_list_pattern] = STATE(999), - [sym_list_splat_pattern] = STATE(999), - [sym_expression] = STATE(1185), - [sym_primary_expression] = STATE(779), - [sym_not_operator] = STATE(1158), - [sym_boolean_operator] = STATE(1158), - [sym_binary_operator] = STATE(908), - [sym_unary_operator] = STATE(908), - [sym_comparison_operator] = STATE(1158), - [sym_lambda] = STATE(1158), - [sym_assignment] = STATE(1551), - [sym_augmented_assignment] = STATE(1551), - [sym_pattern_list] = STATE(1024), - [sym_yield] = STATE(1551), - [sym_attribute] = STATE(494), - [sym_subscript] = STATE(494), - [sym_call] = STATE(908), - [sym_list] = STATE(908), - [sym_set] = STATE(908), - [sym_tuple] = STATE(908), - [sym_dictionary] = STATE(908), - [sym_list_comprehension] = STATE(908), - [sym_dictionary_comprehension] = STATE(908), - [sym_set_comprehension] = STATE(908), - [sym_generator_expression] = STATE(908), - [sym_parenthesized_expression] = STATE(908), - [sym_conditional_expression] = STATE(1158), - [sym_concatenated_string] = STATE(908), - [sym_string] = STATE(782), - [sym_concatenated_template_string] = STATE(908), - [sym_template_string] = STATE(763), - [sym_await] = STATE(908), - [aux_sym_module_repeat1] = STATE(63), - [aux_sym_decorated_definition_repeat1] = STATE(1113), - [sym_identifier] = ACTIONS(7), - [anon_sym_import] = ACTIONS(9), - [anon_sym_from] = ACTIONS(11), - [anon_sym_LPAREN] = ACTIONS(13), - [anon_sym_STAR] = ACTIONS(15), - [anon_sym_print] = ACTIONS(17), - [anon_sym_assert] = ACTIONS(19), - [anon_sym_return] = ACTIONS(21), - [anon_sym_del] = ACTIONS(23), - [anon_sym_raise] = ACTIONS(25), - [anon_sym_pass] = ACTIONS(27), - [anon_sym_break] = ACTIONS(29), - [anon_sym_continue] = ACTIONS(31), - [anon_sym_if] = ACTIONS(85), - [anon_sym_async] = ACTIONS(87), - [anon_sym_for] = ACTIONS(89), - [anon_sym_while] = ACTIONS(91), - [anon_sym_try] = ACTIONS(93), - [anon_sym_with] = ACTIONS(95), - [anon_sym_match] = ACTIONS(97), - [anon_sym_DASH] = ACTIONS(47), - [anon_sym_PLUS] = ACTIONS(47), - [anon_sym_LBRACK] = ACTIONS(49), - [anon_sym_LBRACE] = ACTIONS(51), - [anon_sym_STAR_STAR] = ACTIONS(53), - [anon_sym_def] = ACTIONS(99), - [anon_sym_global] = ACTIONS(57), - [anon_sym_nonlocal] = ACTIONS(59), - [anon_sym_exec] = ACTIONS(61), - [anon_sym_type] = ACTIONS(63), - [anon_sym_class] = ACTIONS(101), - [anon_sym_AT] = ACTIONS(67), - [anon_sym_not] = ACTIONS(69), - [anon_sym_TILDE] = ACTIONS(47), - [anon_sym_lambda] = ACTIONS(71), - [anon_sym_yield] = ACTIONS(73), - [sym_ellipsis] = ACTIONS(75), - [sym_integer] = ACTIONS(77), - [sym_float] = ACTIONS(75), - [anon_sym_await] = ACTIONS(79), - [sym_true] = ACTIONS(77), - [sym_false] = ACTIONS(77), - [sym_none] = ACTIONS(77), - [sym_comment] = ACTIONS(3), - [sym__dedent] = ACTIONS(107), - [sym__string_start] = ACTIONS(81), - [sym__template_string_start] = ACTIONS(83), + [sym__dedent] = ACTIONS(109), + [sym__string_start] = ACTIONS(83), + [sym__template_string_start] = ACTIONS(85), }, [STATE(5)] = { - [sym__statement] = STATE(63), - [sym__simple_statements] = STATE(63), + [sym__statement] = STATE(61), + [sym__simple_statements] = STATE(61), [sym_import_statement] = STATE(1332), [sym_future_import_statement] = STATE(1332), [sym_import_from_statement] = STATE(1332), [sym_print_statement] = STATE(1332), [sym_assert_statement] = STATE(1332), [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1158), + [sym_named_expression] = STATE(1156), [sym_return_statement] = STATE(1332), [sym_delete_statement] = STATE(1332), [sym_raise_statement] = STATE(1332), [sym_pass_statement] = STATE(1332), [sym_break_statement] = STATE(1332), [sym_continue_statement] = STATE(1332), - [sym_if_statement] = STATE(63), - [sym_for_statement] = STATE(63), - [sym_while_statement] = STATE(63), - [sym_try_statement] = STATE(63), - [sym_with_statement] = STATE(63), - [sym_match_statement] = STATE(63), - [sym_function_definition] = STATE(63), - [sym_list_splat] = STATE(1549), - [sym_dictionary_splat] = STATE(1549), + [sym_if_statement] = STATE(61), + [sym_for_statement] = STATE(61), + [sym_while_statement] = STATE(61), + [sym_try_statement] = STATE(61), + [sym_with_statement] = STATE(61), + [sym_match_statement] = STATE(61), + [sym_function_definition] = STATE(61), + [sym_list_splat] = STATE(1520), + [sym_dictionary_splat] = STATE(1520), [sym_global_statement] = STATE(1332), [sym_nonlocal_statement] = STATE(1332), [sym_exec_statement] = STATE(1332), [sym_type_alias_statement] = STATE(1332), - [sym_class_definition] = STATE(63), - [sym_decorated_definition] = STATE(63), - [sym_decorator] = STATE(1113), - [sym_block] = STATE(490), - [sym_expression_list] = STATE(1551), - [sym_pattern] = STATE(1013), - [sym_tuple_pattern] = STATE(999), - [sym_list_pattern] = STATE(999), - [sym_list_splat_pattern] = STATE(999), - [sym_expression] = STATE(1185), - [sym_primary_expression] = STATE(779), - [sym_not_operator] = STATE(1158), - [sym_boolean_operator] = STATE(1158), - [sym_binary_operator] = STATE(908), - [sym_unary_operator] = STATE(908), - [sym_comparison_operator] = STATE(1158), - [sym_lambda] = STATE(1158), - [sym_assignment] = STATE(1551), - [sym_augmented_assignment] = STATE(1551), - [sym_pattern_list] = STATE(1024), - [sym_yield] = STATE(1551), - [sym_attribute] = STATE(494), - [sym_subscript] = STATE(494), - [sym_call] = STATE(908), - [sym_list] = STATE(908), - [sym_set] = STATE(908), - [sym_tuple] = STATE(908), - [sym_dictionary] = STATE(908), - [sym_list_comprehension] = STATE(908), - [sym_dictionary_comprehension] = STATE(908), - [sym_set_comprehension] = STATE(908), - [sym_generator_expression] = STATE(908), - [sym_parenthesized_expression] = STATE(908), - [sym_conditional_expression] = STATE(1158), - [sym_concatenated_string] = STATE(908), - [sym_string] = STATE(782), - [sym_concatenated_template_string] = STATE(908), - [sym_template_string] = STATE(763), - [sym_await] = STATE(908), - [aux_sym_module_repeat1] = STATE(63), - [aux_sym_decorated_definition_repeat1] = STATE(1113), + [sym_class_definition] = STATE(61), + [sym_decorated_definition] = STATE(61), + [sym_decorator] = STATE(1127), + [sym_block] = STATE(474), + [sym_expression_list] = STATE(1522), + [sym_pattern] = STATE(1017), + [sym_tuple_pattern] = STATE(1001), + [sym_list_pattern] = STATE(1001), + [sym_list_splat_pattern] = STATE(1001), + [sym_expression] = STATE(1176), + [sym_primary_expression] = STATE(765), + [sym_not_operator] = STATE(1156), + [sym_boolean_operator] = STATE(1156), + [sym_binary_operator] = STATE(920), + [sym_unary_operator] = STATE(920), + [sym_comparison_operator] = STATE(1156), + [sym_lambda] = STATE(1156), + [sym_assignment] = STATE(1522), + [sym_augmented_assignment] = STATE(1522), + [sym_pattern_list] = STATE(1026), + [sym_yield] = STATE(1522), + [sym_attribute] = STATE(582), + [sym_subscript] = STATE(582), + [sym_call] = STATE(920), + [sym_list] = STATE(920), + [sym_set] = STATE(920), + [sym_tuple] = STATE(920), + [sym_dictionary] = STATE(920), + [sym_list_comprehension] = STATE(920), + [sym_dictionary_comprehension] = STATE(920), + [sym_set_comprehension] = STATE(920), + [sym_generator_expression] = STATE(920), + [sym_parenthesized_expression] = STATE(920), + [sym_conditional_expression] = STATE(1156), + [sym_concatenated_string] = STATE(920), + [sym_string] = STATE(775), + [sym_concatenated_template_string] = STATE(920), + [sym_template_string] = STATE(769), + [sym_await] = STATE(920), + [aux_sym_module_repeat1] = STATE(61), + [aux_sym_decorated_definition_repeat1] = STATE(1127), [sym_identifier] = ACTIONS(7), - [anon_sym_import] = ACTIONS(9), - [anon_sym_from] = ACTIONS(11), - [anon_sym_LPAREN] = ACTIONS(13), - [anon_sym_STAR] = ACTIONS(15), - [anon_sym_print] = ACTIONS(17), - [anon_sym_assert] = ACTIONS(19), - [anon_sym_return] = ACTIONS(21), - [anon_sym_del] = ACTIONS(23), - [anon_sym_raise] = ACTIONS(25), - [anon_sym_pass] = ACTIONS(27), - [anon_sym_break] = ACTIONS(29), - [anon_sym_continue] = ACTIONS(31), - [anon_sym_if] = ACTIONS(85), - [anon_sym_async] = ACTIONS(87), - [anon_sym_for] = ACTIONS(89), - [anon_sym_while] = ACTIONS(91), - [anon_sym_try] = ACTIONS(93), - [anon_sym_with] = ACTIONS(95), - [anon_sym_match] = ACTIONS(97), - [anon_sym_DASH] = ACTIONS(47), - [anon_sym_PLUS] = ACTIONS(47), - [anon_sym_LBRACK] = ACTIONS(49), - [anon_sym_LBRACE] = ACTIONS(51), - [anon_sym_STAR_STAR] = ACTIONS(53), - [anon_sym_def] = ACTIONS(99), - [anon_sym_global] = ACTIONS(57), - [anon_sym_nonlocal] = ACTIONS(59), - [anon_sym_exec] = ACTIONS(61), - [anon_sym_type] = ACTIONS(63), - [anon_sym_class] = ACTIONS(101), - [anon_sym_AT] = ACTIONS(67), - [anon_sym_not] = ACTIONS(69), - [anon_sym_TILDE] = ACTIONS(47), - [anon_sym_lambda] = ACTIONS(71), - [anon_sym_yield] = ACTIONS(73), - [sym_ellipsis] = ACTIONS(75), - [sym_integer] = ACTIONS(77), - [sym_float] = ACTIONS(75), - [anon_sym_await] = ACTIONS(79), - [sym_true] = ACTIONS(77), - [sym_false] = ACTIONS(77), - [sym_none] = ACTIONS(77), + [anon_sym_lazy] = ACTIONS(9), + [anon_sym_import] = ACTIONS(11), + [anon_sym_from] = ACTIONS(13), + [anon_sym_LPAREN] = ACTIONS(15), + [anon_sym_STAR] = ACTIONS(17), + [anon_sym_print] = ACTIONS(19), + [anon_sym_assert] = ACTIONS(21), + [anon_sym_return] = ACTIONS(23), + [anon_sym_del] = ACTIONS(25), + [anon_sym_raise] = ACTIONS(27), + [anon_sym_pass] = ACTIONS(29), + [anon_sym_break] = ACTIONS(31), + [anon_sym_continue] = ACTIONS(33), + [anon_sym_if] = ACTIONS(87), + [anon_sym_async] = ACTIONS(89), + [anon_sym_for] = ACTIONS(91), + [anon_sym_while] = ACTIONS(93), + [anon_sym_try] = ACTIONS(95), + [anon_sym_with] = ACTIONS(97), + [anon_sym_match] = ACTIONS(99), + [anon_sym_DASH] = ACTIONS(49), + [anon_sym_PLUS] = ACTIONS(49), + [anon_sym_LBRACK] = ACTIONS(51), + [anon_sym_LBRACE] = ACTIONS(53), + [anon_sym_STAR_STAR] = ACTIONS(55), + [anon_sym_def] = ACTIONS(101), + [anon_sym_global] = ACTIONS(59), + [anon_sym_nonlocal] = ACTIONS(61), + [anon_sym_exec] = ACTIONS(63), + [anon_sym_type] = ACTIONS(65), + [anon_sym_class] = ACTIONS(103), + [anon_sym_AT] = ACTIONS(69), + [anon_sym_not] = ACTIONS(71), + [anon_sym_TILDE] = ACTIONS(49), + [anon_sym_lambda] = ACTIONS(73), + [anon_sym_yield] = ACTIONS(75), + [sym_ellipsis] = ACTIONS(77), + [sym_integer] = ACTIONS(79), + [sym_float] = ACTIONS(77), + [anon_sym_await] = ACTIONS(81), + [sym_true] = ACTIONS(79), + [sym_false] = ACTIONS(79), + [sym_none] = ACTIONS(79), [sym_comment] = ACTIONS(3), - [sym__dedent] = ACTIONS(107), - [sym__string_start] = ACTIONS(81), - [sym__template_string_start] = ACTIONS(83), + [sym__dedent] = ACTIONS(109), + [sym__string_start] = ACTIONS(83), + [sym__template_string_start] = ACTIONS(85), }, [STATE(6)] = { - [sym__statement] = STATE(63), - [sym__simple_statements] = STATE(63), + [sym__statement] = STATE(61), + [sym__simple_statements] = STATE(61), [sym_import_statement] = STATE(1332), [sym_future_import_statement] = STATE(1332), [sym_import_from_statement] = STATE(1332), [sym_print_statement] = STATE(1332), [sym_assert_statement] = STATE(1332), [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1158), + [sym_named_expression] = STATE(1156), [sym_return_statement] = STATE(1332), [sym_delete_statement] = STATE(1332), [sym_raise_statement] = STATE(1332), [sym_pass_statement] = STATE(1332), [sym_break_statement] = STATE(1332), [sym_continue_statement] = STATE(1332), - [sym_if_statement] = STATE(63), - [sym_for_statement] = STATE(63), - [sym_while_statement] = STATE(63), - [sym_try_statement] = STATE(63), - [sym_with_statement] = STATE(63), - [sym_match_statement] = STATE(63), - [sym_function_definition] = STATE(63), - [sym_list_splat] = STATE(1549), - [sym_dictionary_splat] = STATE(1549), + [sym_if_statement] = STATE(61), + [sym_for_statement] = STATE(61), + [sym_while_statement] = STATE(61), + [sym_try_statement] = STATE(61), + [sym_with_statement] = STATE(61), + [sym_match_statement] = STATE(61), + [sym_function_definition] = STATE(61), + [sym_list_splat] = STATE(1520), + [sym_dictionary_splat] = STATE(1520), [sym_global_statement] = STATE(1332), [sym_nonlocal_statement] = STATE(1332), [sym_exec_statement] = STATE(1332), [sym_type_alias_statement] = STATE(1332), - [sym_class_definition] = STATE(63), - [sym_decorated_definition] = STATE(63), - [sym_decorator] = STATE(1113), - [sym_block] = STATE(540), - [sym_expression_list] = STATE(1551), - [sym_pattern] = STATE(1013), - [sym_tuple_pattern] = STATE(999), - [sym_list_pattern] = STATE(999), - [sym_list_splat_pattern] = STATE(999), - [sym_expression] = STATE(1185), - [sym_primary_expression] = STATE(779), - [sym_not_operator] = STATE(1158), - [sym_boolean_operator] = STATE(1158), - [sym_binary_operator] = STATE(908), - [sym_unary_operator] = STATE(908), - [sym_comparison_operator] = STATE(1158), - [sym_lambda] = STATE(1158), - [sym_assignment] = STATE(1551), - [sym_augmented_assignment] = STATE(1551), - [sym_pattern_list] = STATE(1024), - [sym_yield] = STATE(1551), - [sym_attribute] = STATE(494), - [sym_subscript] = STATE(494), - [sym_call] = STATE(908), - [sym_list] = STATE(908), - [sym_set] = STATE(908), - [sym_tuple] = STATE(908), - [sym_dictionary] = STATE(908), - [sym_list_comprehension] = STATE(908), - [sym_dictionary_comprehension] = STATE(908), - [sym_set_comprehension] = STATE(908), - [sym_generator_expression] = STATE(908), - [sym_parenthesized_expression] = STATE(908), - [sym_conditional_expression] = STATE(1158), - [sym_concatenated_string] = STATE(908), - [sym_string] = STATE(782), - [sym_concatenated_template_string] = STATE(908), - [sym_template_string] = STATE(763), - [sym_await] = STATE(908), - [aux_sym_module_repeat1] = STATE(63), - [aux_sym_decorated_definition_repeat1] = STATE(1113), + [sym_class_definition] = STATE(61), + [sym_decorated_definition] = STATE(61), + [sym_decorator] = STATE(1127), + [sym_block] = STATE(609), + [sym_expression_list] = STATE(1522), + [sym_pattern] = STATE(1017), + [sym_tuple_pattern] = STATE(1001), + [sym_list_pattern] = STATE(1001), + [sym_list_splat_pattern] = STATE(1001), + [sym_expression] = STATE(1176), + [sym_primary_expression] = STATE(765), + [sym_not_operator] = STATE(1156), + [sym_boolean_operator] = STATE(1156), + [sym_binary_operator] = STATE(920), + [sym_unary_operator] = STATE(920), + [sym_comparison_operator] = STATE(1156), + [sym_lambda] = STATE(1156), + [sym_assignment] = STATE(1522), + [sym_augmented_assignment] = STATE(1522), + [sym_pattern_list] = STATE(1026), + [sym_yield] = STATE(1522), + [sym_attribute] = STATE(582), + [sym_subscript] = STATE(582), + [sym_call] = STATE(920), + [sym_list] = STATE(920), + [sym_set] = STATE(920), + [sym_tuple] = STATE(920), + [sym_dictionary] = STATE(920), + [sym_list_comprehension] = STATE(920), + [sym_dictionary_comprehension] = STATE(920), + [sym_set_comprehension] = STATE(920), + [sym_generator_expression] = STATE(920), + [sym_parenthesized_expression] = STATE(920), + [sym_conditional_expression] = STATE(1156), + [sym_concatenated_string] = STATE(920), + [sym_string] = STATE(775), + [sym_concatenated_template_string] = STATE(920), + [sym_template_string] = STATE(769), + [sym_await] = STATE(920), + [aux_sym_module_repeat1] = STATE(61), + [aux_sym_decorated_definition_repeat1] = STATE(1127), [sym_identifier] = ACTIONS(7), - [anon_sym_import] = ACTIONS(9), - [anon_sym_from] = ACTIONS(11), - [anon_sym_LPAREN] = ACTIONS(13), - [anon_sym_STAR] = ACTIONS(15), - [anon_sym_print] = ACTIONS(17), - [anon_sym_assert] = ACTIONS(19), - [anon_sym_return] = ACTIONS(21), - [anon_sym_del] = ACTIONS(23), - [anon_sym_raise] = ACTIONS(25), - [anon_sym_pass] = ACTIONS(27), - [anon_sym_break] = ACTIONS(29), - [anon_sym_continue] = ACTIONS(31), - [anon_sym_if] = ACTIONS(85), - [anon_sym_async] = ACTIONS(87), - [anon_sym_for] = ACTIONS(89), - [anon_sym_while] = ACTIONS(91), - [anon_sym_try] = ACTIONS(93), - [anon_sym_with] = ACTIONS(95), - [anon_sym_match] = ACTIONS(97), - [anon_sym_DASH] = ACTIONS(47), - [anon_sym_PLUS] = ACTIONS(47), - [anon_sym_LBRACK] = ACTIONS(49), - [anon_sym_LBRACE] = ACTIONS(51), - [anon_sym_STAR_STAR] = ACTIONS(53), - [anon_sym_def] = ACTIONS(99), - [anon_sym_global] = ACTIONS(57), - [anon_sym_nonlocal] = ACTIONS(59), - [anon_sym_exec] = ACTIONS(61), - [anon_sym_type] = ACTIONS(63), - [anon_sym_class] = ACTIONS(101), - [anon_sym_AT] = ACTIONS(67), - [anon_sym_not] = ACTIONS(69), - [anon_sym_TILDE] = ACTIONS(47), - [anon_sym_lambda] = ACTIONS(71), - [anon_sym_yield] = ACTIONS(73), - [sym_ellipsis] = ACTIONS(75), - [sym_integer] = ACTIONS(77), - [sym_float] = ACTIONS(75), - [anon_sym_await] = ACTIONS(79), - [sym_true] = ACTIONS(77), - [sym_false] = ACTIONS(77), - [sym_none] = ACTIONS(77), + [anon_sym_lazy] = ACTIONS(9), + [anon_sym_import] = ACTIONS(11), + [anon_sym_from] = ACTIONS(13), + [anon_sym_LPAREN] = ACTIONS(15), + [anon_sym_STAR] = ACTIONS(17), + [anon_sym_print] = ACTIONS(19), + [anon_sym_assert] = ACTIONS(21), + [anon_sym_return] = ACTIONS(23), + [anon_sym_del] = ACTIONS(25), + [anon_sym_raise] = ACTIONS(27), + [anon_sym_pass] = ACTIONS(29), + [anon_sym_break] = ACTIONS(31), + [anon_sym_continue] = ACTIONS(33), + [anon_sym_if] = ACTIONS(87), + [anon_sym_async] = ACTIONS(89), + [anon_sym_for] = ACTIONS(91), + [anon_sym_while] = ACTIONS(93), + [anon_sym_try] = ACTIONS(95), + [anon_sym_with] = ACTIONS(97), + [anon_sym_match] = ACTIONS(99), + [anon_sym_DASH] = ACTIONS(49), + [anon_sym_PLUS] = ACTIONS(49), + [anon_sym_LBRACK] = ACTIONS(51), + [anon_sym_LBRACE] = ACTIONS(53), + [anon_sym_STAR_STAR] = ACTIONS(55), + [anon_sym_def] = ACTIONS(101), + [anon_sym_global] = ACTIONS(59), + [anon_sym_nonlocal] = ACTIONS(61), + [anon_sym_exec] = ACTIONS(63), + [anon_sym_type] = ACTIONS(65), + [anon_sym_class] = ACTIONS(103), + [anon_sym_AT] = ACTIONS(69), + [anon_sym_not] = ACTIONS(71), + [anon_sym_TILDE] = ACTIONS(49), + [anon_sym_lambda] = ACTIONS(73), + [anon_sym_yield] = ACTIONS(75), + [sym_ellipsis] = ACTIONS(77), + [sym_integer] = ACTIONS(79), + [sym_float] = ACTIONS(77), + [anon_sym_await] = ACTIONS(81), + [sym_true] = ACTIONS(79), + [sym_false] = ACTIONS(79), + [sym_none] = ACTIONS(79), [sym_comment] = ACTIONS(3), - [sym__dedent] = ACTIONS(107), - [sym__string_start] = ACTIONS(81), - [sym__template_string_start] = ACTIONS(83), + [sym__dedent] = ACTIONS(109), + [sym__string_start] = ACTIONS(83), + [sym__template_string_start] = ACTIONS(85), }, [STATE(7)] = { - [sym__statement] = STATE(63), - [sym__simple_statements] = STATE(63), + [sym__statement] = STATE(61), + [sym__simple_statements] = STATE(61), [sym_import_statement] = STATE(1332), [sym_future_import_statement] = STATE(1332), [sym_import_from_statement] = STATE(1332), [sym_print_statement] = STATE(1332), [sym_assert_statement] = STATE(1332), [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1158), + [sym_named_expression] = STATE(1156), [sym_return_statement] = STATE(1332), [sym_delete_statement] = STATE(1332), [sym_raise_statement] = STATE(1332), [sym_pass_statement] = STATE(1332), [sym_break_statement] = STATE(1332), [sym_continue_statement] = STATE(1332), - [sym_if_statement] = STATE(63), - [sym_for_statement] = STATE(63), - [sym_while_statement] = STATE(63), - [sym_try_statement] = STATE(63), - [sym_with_statement] = STATE(63), - [sym_match_statement] = STATE(63), - [sym_function_definition] = STATE(63), - [sym_list_splat] = STATE(1549), - [sym_dictionary_splat] = STATE(1549), + [sym_if_statement] = STATE(61), + [sym_for_statement] = STATE(61), + [sym_while_statement] = STATE(61), + [sym_try_statement] = STATE(61), + [sym_with_statement] = STATE(61), + [sym_match_statement] = STATE(61), + [sym_function_definition] = STATE(61), + [sym_list_splat] = STATE(1520), + [sym_dictionary_splat] = STATE(1520), [sym_global_statement] = STATE(1332), [sym_nonlocal_statement] = STATE(1332), [sym_exec_statement] = STATE(1332), [sym_type_alias_statement] = STATE(1332), - [sym_class_definition] = STATE(63), - [sym_decorated_definition] = STATE(63), - [sym_decorator] = STATE(1113), - [sym_block] = STATE(547), - [sym_expression_list] = STATE(1551), - [sym_pattern] = STATE(1013), - [sym_tuple_pattern] = STATE(999), - [sym_list_pattern] = STATE(999), - [sym_list_splat_pattern] = STATE(999), - [sym_expression] = STATE(1185), - [sym_primary_expression] = STATE(779), - [sym_not_operator] = STATE(1158), - [sym_boolean_operator] = STATE(1158), - [sym_binary_operator] = STATE(908), - [sym_unary_operator] = STATE(908), - [sym_comparison_operator] = STATE(1158), - [sym_lambda] = STATE(1158), - [sym_assignment] = STATE(1551), - [sym_augmented_assignment] = STATE(1551), - [sym_pattern_list] = STATE(1024), - [sym_yield] = STATE(1551), - [sym_attribute] = STATE(494), - [sym_subscript] = STATE(494), - [sym_call] = STATE(908), - [sym_list] = STATE(908), - [sym_set] = STATE(908), - [sym_tuple] = STATE(908), - [sym_dictionary] = STATE(908), - [sym_list_comprehension] = STATE(908), - [sym_dictionary_comprehension] = STATE(908), - [sym_set_comprehension] = STATE(908), - [sym_generator_expression] = STATE(908), - [sym_parenthesized_expression] = STATE(908), - [sym_conditional_expression] = STATE(1158), - [sym_concatenated_string] = STATE(908), - [sym_string] = STATE(782), - [sym_concatenated_template_string] = STATE(908), - [sym_template_string] = STATE(763), - [sym_await] = STATE(908), - [aux_sym_module_repeat1] = STATE(63), - [aux_sym_decorated_definition_repeat1] = STATE(1113), + [sym_class_definition] = STATE(61), + [sym_decorated_definition] = STATE(61), + [sym_decorator] = STATE(1127), + [sym_block] = STATE(514), + [sym_expression_list] = STATE(1522), + [sym_pattern] = STATE(1017), + [sym_tuple_pattern] = STATE(1001), + [sym_list_pattern] = STATE(1001), + [sym_list_splat_pattern] = STATE(1001), + [sym_expression] = STATE(1176), + [sym_primary_expression] = STATE(765), + [sym_not_operator] = STATE(1156), + [sym_boolean_operator] = STATE(1156), + [sym_binary_operator] = STATE(920), + [sym_unary_operator] = STATE(920), + [sym_comparison_operator] = STATE(1156), + [sym_lambda] = STATE(1156), + [sym_assignment] = STATE(1522), + [sym_augmented_assignment] = STATE(1522), + [sym_pattern_list] = STATE(1026), + [sym_yield] = STATE(1522), + [sym_attribute] = STATE(582), + [sym_subscript] = STATE(582), + [sym_call] = STATE(920), + [sym_list] = STATE(920), + [sym_set] = STATE(920), + [sym_tuple] = STATE(920), + [sym_dictionary] = STATE(920), + [sym_list_comprehension] = STATE(920), + [sym_dictionary_comprehension] = STATE(920), + [sym_set_comprehension] = STATE(920), + [sym_generator_expression] = STATE(920), + [sym_parenthesized_expression] = STATE(920), + [sym_conditional_expression] = STATE(1156), + [sym_concatenated_string] = STATE(920), + [sym_string] = STATE(775), + [sym_concatenated_template_string] = STATE(920), + [sym_template_string] = STATE(769), + [sym_await] = STATE(920), + [aux_sym_module_repeat1] = STATE(61), + [aux_sym_decorated_definition_repeat1] = STATE(1127), [sym_identifier] = ACTIONS(7), - [anon_sym_import] = ACTIONS(9), - [anon_sym_from] = ACTIONS(11), - [anon_sym_LPAREN] = ACTIONS(13), - [anon_sym_STAR] = ACTIONS(15), - [anon_sym_print] = ACTIONS(17), - [anon_sym_assert] = ACTIONS(19), - [anon_sym_return] = ACTIONS(21), - [anon_sym_del] = ACTIONS(23), - [anon_sym_raise] = ACTIONS(25), - [anon_sym_pass] = ACTIONS(27), - [anon_sym_break] = ACTIONS(29), - [anon_sym_continue] = ACTIONS(31), - [anon_sym_if] = ACTIONS(85), - [anon_sym_async] = ACTIONS(87), - [anon_sym_for] = ACTIONS(89), - [anon_sym_while] = ACTIONS(91), - [anon_sym_try] = ACTIONS(93), - [anon_sym_with] = ACTIONS(95), - [anon_sym_match] = ACTIONS(97), - [anon_sym_DASH] = ACTIONS(47), - [anon_sym_PLUS] = ACTIONS(47), - [anon_sym_LBRACK] = ACTIONS(49), - [anon_sym_LBRACE] = ACTIONS(51), - [anon_sym_STAR_STAR] = ACTIONS(53), - [anon_sym_def] = ACTIONS(99), - [anon_sym_global] = ACTIONS(57), - [anon_sym_nonlocal] = ACTIONS(59), - [anon_sym_exec] = ACTIONS(61), - [anon_sym_type] = ACTIONS(63), - [anon_sym_class] = ACTIONS(101), - [anon_sym_AT] = ACTIONS(67), - [anon_sym_not] = ACTIONS(69), - [anon_sym_TILDE] = ACTIONS(47), - [anon_sym_lambda] = ACTIONS(71), - [anon_sym_yield] = ACTIONS(73), - [sym_ellipsis] = ACTIONS(75), - [sym_integer] = ACTIONS(77), - [sym_float] = ACTIONS(75), - [anon_sym_await] = ACTIONS(79), - [sym_true] = ACTIONS(77), - [sym_false] = ACTIONS(77), - [sym_none] = ACTIONS(77), + [anon_sym_lazy] = ACTIONS(9), + [anon_sym_import] = ACTIONS(11), + [anon_sym_from] = ACTIONS(13), + [anon_sym_LPAREN] = ACTIONS(15), + [anon_sym_STAR] = ACTIONS(17), + [anon_sym_print] = ACTIONS(19), + [anon_sym_assert] = ACTIONS(21), + [anon_sym_return] = ACTIONS(23), + [anon_sym_del] = ACTIONS(25), + [anon_sym_raise] = ACTIONS(27), + [anon_sym_pass] = ACTIONS(29), + [anon_sym_break] = ACTIONS(31), + [anon_sym_continue] = ACTIONS(33), + [anon_sym_if] = ACTIONS(87), + [anon_sym_async] = ACTIONS(89), + [anon_sym_for] = ACTIONS(91), + [anon_sym_while] = ACTIONS(93), + [anon_sym_try] = ACTIONS(95), + [anon_sym_with] = ACTIONS(97), + [anon_sym_match] = ACTIONS(99), + [anon_sym_DASH] = ACTIONS(49), + [anon_sym_PLUS] = ACTIONS(49), + [anon_sym_LBRACK] = ACTIONS(51), + [anon_sym_LBRACE] = ACTIONS(53), + [anon_sym_STAR_STAR] = ACTIONS(55), + [anon_sym_def] = ACTIONS(101), + [anon_sym_global] = ACTIONS(59), + [anon_sym_nonlocal] = ACTIONS(61), + [anon_sym_exec] = ACTIONS(63), + [anon_sym_type] = ACTIONS(65), + [anon_sym_class] = ACTIONS(103), + [anon_sym_AT] = ACTIONS(69), + [anon_sym_not] = ACTIONS(71), + [anon_sym_TILDE] = ACTIONS(49), + [anon_sym_lambda] = ACTIONS(73), + [anon_sym_yield] = ACTIONS(75), + [sym_ellipsis] = ACTIONS(77), + [sym_integer] = ACTIONS(79), + [sym_float] = ACTIONS(77), + [anon_sym_await] = ACTIONS(81), + [sym_true] = ACTIONS(79), + [sym_false] = ACTIONS(79), + [sym_none] = ACTIONS(79), [sym_comment] = ACTIONS(3), - [sym__dedent] = ACTIONS(107), - [sym__string_start] = ACTIONS(81), - [sym__template_string_start] = ACTIONS(83), + [sym__dedent] = ACTIONS(109), + [sym__string_start] = ACTIONS(83), + [sym__template_string_start] = ACTIONS(85), }, [STATE(8)] = { - [sym__statement] = STATE(63), - [sym__simple_statements] = STATE(63), + [sym__statement] = STATE(61), + [sym__simple_statements] = STATE(61), [sym_import_statement] = STATE(1332), [sym_future_import_statement] = STATE(1332), [sym_import_from_statement] = STATE(1332), [sym_print_statement] = STATE(1332), [sym_assert_statement] = STATE(1332), [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1158), + [sym_named_expression] = STATE(1156), [sym_return_statement] = STATE(1332), [sym_delete_statement] = STATE(1332), [sym_raise_statement] = STATE(1332), [sym_pass_statement] = STATE(1332), [sym_break_statement] = STATE(1332), [sym_continue_statement] = STATE(1332), - [sym_if_statement] = STATE(63), - [sym_for_statement] = STATE(63), - [sym_while_statement] = STATE(63), - [sym_try_statement] = STATE(63), - [sym_with_statement] = STATE(63), - [sym_match_statement] = STATE(63), - [sym_function_definition] = STATE(63), - [sym_list_splat] = STATE(1549), - [sym_dictionary_splat] = STATE(1549), + [sym_if_statement] = STATE(61), + [sym_for_statement] = STATE(61), + [sym_while_statement] = STATE(61), + [sym_try_statement] = STATE(61), + [sym_with_statement] = STATE(61), + [sym_match_statement] = STATE(61), + [sym_function_definition] = STATE(61), + [sym_list_splat] = STATE(1520), + [sym_dictionary_splat] = STATE(1520), [sym_global_statement] = STATE(1332), [sym_nonlocal_statement] = STATE(1332), [sym_exec_statement] = STATE(1332), [sym_type_alias_statement] = STATE(1332), - [sym_class_definition] = STATE(63), - [sym_decorated_definition] = STATE(63), - [sym_decorator] = STATE(1113), - [sym_block] = STATE(605), - [sym_expression_list] = STATE(1551), - [sym_pattern] = STATE(1013), - [sym_tuple_pattern] = STATE(999), - [sym_list_pattern] = STATE(999), - [sym_list_splat_pattern] = STATE(999), - [sym_expression] = STATE(1185), - [sym_primary_expression] = STATE(779), - [sym_not_operator] = STATE(1158), - [sym_boolean_operator] = STATE(1158), - [sym_binary_operator] = STATE(908), - [sym_unary_operator] = STATE(908), - [sym_comparison_operator] = STATE(1158), - [sym_lambda] = STATE(1158), - [sym_assignment] = STATE(1551), - [sym_augmented_assignment] = STATE(1551), - [sym_pattern_list] = STATE(1024), - [sym_yield] = STATE(1551), - [sym_attribute] = STATE(494), - [sym_subscript] = STATE(494), - [sym_call] = STATE(908), - [sym_list] = STATE(908), - [sym_set] = STATE(908), - [sym_tuple] = STATE(908), - [sym_dictionary] = STATE(908), - [sym_list_comprehension] = STATE(908), - [sym_dictionary_comprehension] = STATE(908), - [sym_set_comprehension] = STATE(908), - [sym_generator_expression] = STATE(908), - [sym_parenthesized_expression] = STATE(908), - [sym_conditional_expression] = STATE(1158), - [sym_concatenated_string] = STATE(908), - [sym_string] = STATE(782), - [sym_concatenated_template_string] = STATE(908), - [sym_template_string] = STATE(763), - [sym_await] = STATE(908), - [aux_sym_module_repeat1] = STATE(63), - [aux_sym_decorated_definition_repeat1] = STATE(1113), + [sym_class_definition] = STATE(61), + [sym_decorated_definition] = STATE(61), + [sym_decorator] = STATE(1127), + [sym_block] = STATE(552), + [sym_expression_list] = STATE(1522), + [sym_pattern] = STATE(1017), + [sym_tuple_pattern] = STATE(1001), + [sym_list_pattern] = STATE(1001), + [sym_list_splat_pattern] = STATE(1001), + [sym_expression] = STATE(1176), + [sym_primary_expression] = STATE(765), + [sym_not_operator] = STATE(1156), + [sym_boolean_operator] = STATE(1156), + [sym_binary_operator] = STATE(920), + [sym_unary_operator] = STATE(920), + [sym_comparison_operator] = STATE(1156), + [sym_lambda] = STATE(1156), + [sym_assignment] = STATE(1522), + [sym_augmented_assignment] = STATE(1522), + [sym_pattern_list] = STATE(1026), + [sym_yield] = STATE(1522), + [sym_attribute] = STATE(582), + [sym_subscript] = STATE(582), + [sym_call] = STATE(920), + [sym_list] = STATE(920), + [sym_set] = STATE(920), + [sym_tuple] = STATE(920), + [sym_dictionary] = STATE(920), + [sym_list_comprehension] = STATE(920), + [sym_dictionary_comprehension] = STATE(920), + [sym_set_comprehension] = STATE(920), + [sym_generator_expression] = STATE(920), + [sym_parenthesized_expression] = STATE(920), + [sym_conditional_expression] = STATE(1156), + [sym_concatenated_string] = STATE(920), + [sym_string] = STATE(775), + [sym_concatenated_template_string] = STATE(920), + [sym_template_string] = STATE(769), + [sym_await] = STATE(920), + [aux_sym_module_repeat1] = STATE(61), + [aux_sym_decorated_definition_repeat1] = STATE(1127), [sym_identifier] = ACTIONS(7), - [anon_sym_import] = ACTIONS(9), - [anon_sym_from] = ACTIONS(11), - [anon_sym_LPAREN] = ACTIONS(13), - [anon_sym_STAR] = ACTIONS(15), - [anon_sym_print] = ACTIONS(17), - [anon_sym_assert] = ACTIONS(19), - [anon_sym_return] = ACTIONS(21), - [anon_sym_del] = ACTIONS(23), - [anon_sym_raise] = ACTIONS(25), - [anon_sym_pass] = ACTIONS(27), - [anon_sym_break] = ACTIONS(29), - [anon_sym_continue] = ACTIONS(31), - [anon_sym_if] = ACTIONS(85), - [anon_sym_async] = ACTIONS(87), - [anon_sym_for] = ACTIONS(89), - [anon_sym_while] = ACTIONS(91), - [anon_sym_try] = ACTIONS(93), - [anon_sym_with] = ACTIONS(95), - [anon_sym_match] = ACTIONS(97), - [anon_sym_DASH] = ACTIONS(47), - [anon_sym_PLUS] = ACTIONS(47), - [anon_sym_LBRACK] = ACTIONS(49), - [anon_sym_LBRACE] = ACTIONS(51), - [anon_sym_STAR_STAR] = ACTIONS(53), - [anon_sym_def] = ACTIONS(99), - [anon_sym_global] = ACTIONS(57), - [anon_sym_nonlocal] = ACTIONS(59), - [anon_sym_exec] = ACTIONS(61), - [anon_sym_type] = ACTIONS(63), - [anon_sym_class] = ACTIONS(101), - [anon_sym_AT] = ACTIONS(67), - [anon_sym_not] = ACTIONS(69), - [anon_sym_TILDE] = ACTIONS(47), - [anon_sym_lambda] = ACTIONS(71), - [anon_sym_yield] = ACTIONS(73), - [sym_ellipsis] = ACTIONS(75), - [sym_integer] = ACTIONS(77), - [sym_float] = ACTIONS(75), - [anon_sym_await] = ACTIONS(79), - [sym_true] = ACTIONS(77), - [sym_false] = ACTIONS(77), - [sym_none] = ACTIONS(77), + [anon_sym_lazy] = ACTIONS(9), + [anon_sym_import] = ACTIONS(11), + [anon_sym_from] = ACTIONS(13), + [anon_sym_LPAREN] = ACTIONS(15), + [anon_sym_STAR] = ACTIONS(17), + [anon_sym_print] = ACTIONS(19), + [anon_sym_assert] = ACTIONS(21), + [anon_sym_return] = ACTIONS(23), + [anon_sym_del] = ACTIONS(25), + [anon_sym_raise] = ACTIONS(27), + [anon_sym_pass] = ACTIONS(29), + [anon_sym_break] = ACTIONS(31), + [anon_sym_continue] = ACTIONS(33), + [anon_sym_if] = ACTIONS(87), + [anon_sym_async] = ACTIONS(89), + [anon_sym_for] = ACTIONS(91), + [anon_sym_while] = ACTIONS(93), + [anon_sym_try] = ACTIONS(95), + [anon_sym_with] = ACTIONS(97), + [anon_sym_match] = ACTIONS(99), + [anon_sym_DASH] = ACTIONS(49), + [anon_sym_PLUS] = ACTIONS(49), + [anon_sym_LBRACK] = ACTIONS(51), + [anon_sym_LBRACE] = ACTIONS(53), + [anon_sym_STAR_STAR] = ACTIONS(55), + [anon_sym_def] = ACTIONS(101), + [anon_sym_global] = ACTIONS(59), + [anon_sym_nonlocal] = ACTIONS(61), + [anon_sym_exec] = ACTIONS(63), + [anon_sym_type] = ACTIONS(65), + [anon_sym_class] = ACTIONS(103), + [anon_sym_AT] = ACTIONS(69), + [anon_sym_not] = ACTIONS(71), + [anon_sym_TILDE] = ACTIONS(49), + [anon_sym_lambda] = ACTIONS(73), + [anon_sym_yield] = ACTIONS(75), + [sym_ellipsis] = ACTIONS(77), + [sym_integer] = ACTIONS(79), + [sym_float] = ACTIONS(77), + [anon_sym_await] = ACTIONS(81), + [sym_true] = ACTIONS(79), + [sym_false] = ACTIONS(79), + [sym_none] = ACTIONS(79), [sym_comment] = ACTIONS(3), - [sym__dedent] = ACTIONS(107), - [sym__string_start] = ACTIONS(81), - [sym__template_string_start] = ACTIONS(83), + [sym__dedent] = ACTIONS(109), + [sym__string_start] = ACTIONS(83), + [sym__template_string_start] = ACTIONS(85), }, [STATE(9)] = { - [sym__statement] = STATE(63), - [sym__simple_statements] = STATE(63), + [sym__statement] = STATE(61), + [sym__simple_statements] = STATE(61), [sym_import_statement] = STATE(1332), [sym_future_import_statement] = STATE(1332), [sym_import_from_statement] = STATE(1332), [sym_print_statement] = STATE(1332), [sym_assert_statement] = STATE(1332), [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1158), + [sym_named_expression] = STATE(1156), [sym_return_statement] = STATE(1332), [sym_delete_statement] = STATE(1332), [sym_raise_statement] = STATE(1332), [sym_pass_statement] = STATE(1332), [sym_break_statement] = STATE(1332), [sym_continue_statement] = STATE(1332), - [sym_if_statement] = STATE(63), - [sym_for_statement] = STATE(63), - [sym_while_statement] = STATE(63), - [sym_try_statement] = STATE(63), - [sym_with_statement] = STATE(63), - [sym_match_statement] = STATE(63), - [sym_function_definition] = STATE(63), - [sym_list_splat] = STATE(1549), - [sym_dictionary_splat] = STATE(1549), + [sym_if_statement] = STATE(61), + [sym_for_statement] = STATE(61), + [sym_while_statement] = STATE(61), + [sym_try_statement] = STATE(61), + [sym_with_statement] = STATE(61), + [sym_match_statement] = STATE(61), + [sym_function_definition] = STATE(61), + [sym_list_splat] = STATE(1520), + [sym_dictionary_splat] = STATE(1520), [sym_global_statement] = STATE(1332), [sym_nonlocal_statement] = STATE(1332), [sym_exec_statement] = STATE(1332), [sym_type_alias_statement] = STATE(1332), - [sym_class_definition] = STATE(63), - [sym_decorated_definition] = STATE(63), - [sym_decorator] = STATE(1113), - [sym_block] = STATE(519), - [sym_expression_list] = STATE(1551), - [sym_pattern] = STATE(1013), - [sym_tuple_pattern] = STATE(999), - [sym_list_pattern] = STATE(999), - [sym_list_splat_pattern] = STATE(999), - [sym_expression] = STATE(1185), - [sym_primary_expression] = STATE(779), - [sym_not_operator] = STATE(1158), - [sym_boolean_operator] = STATE(1158), - [sym_binary_operator] = STATE(908), - [sym_unary_operator] = STATE(908), - [sym_comparison_operator] = STATE(1158), - [sym_lambda] = STATE(1158), - [sym_assignment] = STATE(1551), - [sym_augmented_assignment] = STATE(1551), - [sym_pattern_list] = STATE(1024), - [sym_yield] = STATE(1551), - [sym_attribute] = STATE(494), - [sym_subscript] = STATE(494), - [sym_call] = STATE(908), - [sym_list] = STATE(908), - [sym_set] = STATE(908), - [sym_tuple] = STATE(908), - [sym_dictionary] = STATE(908), - [sym_list_comprehension] = STATE(908), - [sym_dictionary_comprehension] = STATE(908), - [sym_set_comprehension] = STATE(908), - [sym_generator_expression] = STATE(908), - [sym_parenthesized_expression] = STATE(908), - [sym_conditional_expression] = STATE(1158), - [sym_concatenated_string] = STATE(908), - [sym_string] = STATE(782), - [sym_concatenated_template_string] = STATE(908), - [sym_template_string] = STATE(763), - [sym_await] = STATE(908), - [aux_sym_module_repeat1] = STATE(63), - [aux_sym_decorated_definition_repeat1] = STATE(1113), + [sym_class_definition] = STATE(61), + [sym_decorated_definition] = STATE(61), + [sym_decorator] = STATE(1127), + [sym_block] = STATE(572), + [sym_expression_list] = STATE(1522), + [sym_pattern] = STATE(1017), + [sym_tuple_pattern] = STATE(1001), + [sym_list_pattern] = STATE(1001), + [sym_list_splat_pattern] = STATE(1001), + [sym_expression] = STATE(1176), + [sym_primary_expression] = STATE(765), + [sym_not_operator] = STATE(1156), + [sym_boolean_operator] = STATE(1156), + [sym_binary_operator] = STATE(920), + [sym_unary_operator] = STATE(920), + [sym_comparison_operator] = STATE(1156), + [sym_lambda] = STATE(1156), + [sym_assignment] = STATE(1522), + [sym_augmented_assignment] = STATE(1522), + [sym_pattern_list] = STATE(1026), + [sym_yield] = STATE(1522), + [sym_attribute] = STATE(582), + [sym_subscript] = STATE(582), + [sym_call] = STATE(920), + [sym_list] = STATE(920), + [sym_set] = STATE(920), + [sym_tuple] = STATE(920), + [sym_dictionary] = STATE(920), + [sym_list_comprehension] = STATE(920), + [sym_dictionary_comprehension] = STATE(920), + [sym_set_comprehension] = STATE(920), + [sym_generator_expression] = STATE(920), + [sym_parenthesized_expression] = STATE(920), + [sym_conditional_expression] = STATE(1156), + [sym_concatenated_string] = STATE(920), + [sym_string] = STATE(775), + [sym_concatenated_template_string] = STATE(920), + [sym_template_string] = STATE(769), + [sym_await] = STATE(920), + [aux_sym_module_repeat1] = STATE(61), + [aux_sym_decorated_definition_repeat1] = STATE(1127), [sym_identifier] = ACTIONS(7), - [anon_sym_import] = ACTIONS(9), - [anon_sym_from] = ACTIONS(11), - [anon_sym_LPAREN] = ACTIONS(13), - [anon_sym_STAR] = ACTIONS(15), - [anon_sym_print] = ACTIONS(17), - [anon_sym_assert] = ACTIONS(19), - [anon_sym_return] = ACTIONS(21), - [anon_sym_del] = ACTIONS(23), - [anon_sym_raise] = ACTIONS(25), - [anon_sym_pass] = ACTIONS(27), - [anon_sym_break] = ACTIONS(29), - [anon_sym_continue] = ACTIONS(31), - [anon_sym_if] = ACTIONS(85), - [anon_sym_async] = ACTIONS(87), - [anon_sym_for] = ACTIONS(89), - [anon_sym_while] = ACTIONS(91), - [anon_sym_try] = ACTIONS(93), - [anon_sym_with] = ACTIONS(95), - [anon_sym_match] = ACTIONS(97), - [anon_sym_DASH] = ACTIONS(47), - [anon_sym_PLUS] = ACTIONS(47), - [anon_sym_LBRACK] = ACTIONS(49), - [anon_sym_LBRACE] = ACTIONS(51), - [anon_sym_STAR_STAR] = ACTIONS(53), - [anon_sym_def] = ACTIONS(99), - [anon_sym_global] = ACTIONS(57), - [anon_sym_nonlocal] = ACTIONS(59), - [anon_sym_exec] = ACTIONS(61), - [anon_sym_type] = ACTIONS(63), - [anon_sym_class] = ACTIONS(101), - [anon_sym_AT] = ACTIONS(67), - [anon_sym_not] = ACTIONS(69), - [anon_sym_TILDE] = ACTIONS(47), - [anon_sym_lambda] = ACTIONS(71), - [anon_sym_yield] = ACTIONS(73), - [sym_ellipsis] = ACTIONS(75), - [sym_integer] = ACTIONS(77), - [sym_float] = ACTIONS(75), - [anon_sym_await] = ACTIONS(79), - [sym_true] = ACTIONS(77), - [sym_false] = ACTIONS(77), - [sym_none] = ACTIONS(77), + [anon_sym_lazy] = ACTIONS(9), + [anon_sym_import] = ACTIONS(11), + [anon_sym_from] = ACTIONS(13), + [anon_sym_LPAREN] = ACTIONS(15), + [anon_sym_STAR] = ACTIONS(17), + [anon_sym_print] = ACTIONS(19), + [anon_sym_assert] = ACTIONS(21), + [anon_sym_return] = ACTIONS(23), + [anon_sym_del] = ACTIONS(25), + [anon_sym_raise] = ACTIONS(27), + [anon_sym_pass] = ACTIONS(29), + [anon_sym_break] = ACTIONS(31), + [anon_sym_continue] = ACTIONS(33), + [anon_sym_if] = ACTIONS(87), + [anon_sym_async] = ACTIONS(89), + [anon_sym_for] = ACTIONS(91), + [anon_sym_while] = ACTIONS(93), + [anon_sym_try] = ACTIONS(95), + [anon_sym_with] = ACTIONS(97), + [anon_sym_match] = ACTIONS(99), + [anon_sym_DASH] = ACTIONS(49), + [anon_sym_PLUS] = ACTIONS(49), + [anon_sym_LBRACK] = ACTIONS(51), + [anon_sym_LBRACE] = ACTIONS(53), + [anon_sym_STAR_STAR] = ACTIONS(55), + [anon_sym_def] = ACTIONS(101), + [anon_sym_global] = ACTIONS(59), + [anon_sym_nonlocal] = ACTIONS(61), + [anon_sym_exec] = ACTIONS(63), + [anon_sym_type] = ACTIONS(65), + [anon_sym_class] = ACTIONS(103), + [anon_sym_AT] = ACTIONS(69), + [anon_sym_not] = ACTIONS(71), + [anon_sym_TILDE] = ACTIONS(49), + [anon_sym_lambda] = ACTIONS(73), + [anon_sym_yield] = ACTIONS(75), + [sym_ellipsis] = ACTIONS(77), + [sym_integer] = ACTIONS(79), + [sym_float] = ACTIONS(77), + [anon_sym_await] = ACTIONS(81), + [sym_true] = ACTIONS(79), + [sym_false] = ACTIONS(79), + [sym_none] = ACTIONS(79), [sym_comment] = ACTIONS(3), - [sym__dedent] = ACTIONS(107), - [sym__string_start] = ACTIONS(81), - [sym__template_string_start] = ACTIONS(83), + [sym__dedent] = ACTIONS(109), + [sym__string_start] = ACTIONS(83), + [sym__template_string_start] = ACTIONS(85), }, [STATE(10)] = { - [sym__statement] = STATE(63), - [sym__simple_statements] = STATE(63), + [sym__statement] = STATE(61), + [sym__simple_statements] = STATE(61), [sym_import_statement] = STATE(1332), [sym_future_import_statement] = STATE(1332), [sym_import_from_statement] = STATE(1332), [sym_print_statement] = STATE(1332), [sym_assert_statement] = STATE(1332), [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1158), + [sym_named_expression] = STATE(1156), [sym_return_statement] = STATE(1332), [sym_delete_statement] = STATE(1332), [sym_raise_statement] = STATE(1332), [sym_pass_statement] = STATE(1332), [sym_break_statement] = STATE(1332), [sym_continue_statement] = STATE(1332), - [sym_if_statement] = STATE(63), - [sym_for_statement] = STATE(63), - [sym_while_statement] = STATE(63), - [sym_try_statement] = STATE(63), - [sym_with_statement] = STATE(63), - [sym_match_statement] = STATE(63), - [sym_function_definition] = STATE(63), - [sym_list_splat] = STATE(1549), - [sym_dictionary_splat] = STATE(1549), + [sym_if_statement] = STATE(61), + [sym_for_statement] = STATE(61), + [sym_while_statement] = STATE(61), + [sym_try_statement] = STATE(61), + [sym_with_statement] = STATE(61), + [sym_match_statement] = STATE(61), + [sym_function_definition] = STATE(61), + [sym_list_splat] = STATE(1520), + [sym_dictionary_splat] = STATE(1520), [sym_global_statement] = STATE(1332), [sym_nonlocal_statement] = STATE(1332), [sym_exec_statement] = STATE(1332), [sym_type_alias_statement] = STATE(1332), - [sym_class_definition] = STATE(63), - [sym_decorated_definition] = STATE(63), - [sym_decorator] = STATE(1113), - [sym_block] = STATE(522), - [sym_expression_list] = STATE(1551), - [sym_pattern] = STATE(1013), - [sym_tuple_pattern] = STATE(999), - [sym_list_pattern] = STATE(999), - [sym_list_splat_pattern] = STATE(999), - [sym_expression] = STATE(1185), - [sym_primary_expression] = STATE(779), - [sym_not_operator] = STATE(1158), - [sym_boolean_operator] = STATE(1158), - [sym_binary_operator] = STATE(908), - [sym_unary_operator] = STATE(908), - [sym_comparison_operator] = STATE(1158), - [sym_lambda] = STATE(1158), - [sym_assignment] = STATE(1551), - [sym_augmented_assignment] = STATE(1551), - [sym_pattern_list] = STATE(1024), - [sym_yield] = STATE(1551), - [sym_attribute] = STATE(494), - [sym_subscript] = STATE(494), - [sym_call] = STATE(908), - [sym_list] = STATE(908), - [sym_set] = STATE(908), - [sym_tuple] = STATE(908), - [sym_dictionary] = STATE(908), - [sym_list_comprehension] = STATE(908), - [sym_dictionary_comprehension] = STATE(908), - [sym_set_comprehension] = STATE(908), - [sym_generator_expression] = STATE(908), - [sym_parenthesized_expression] = STATE(908), - [sym_conditional_expression] = STATE(1158), - [sym_concatenated_string] = STATE(908), - [sym_string] = STATE(782), - [sym_concatenated_template_string] = STATE(908), - [sym_template_string] = STATE(763), - [sym_await] = STATE(908), - [aux_sym_module_repeat1] = STATE(63), - [aux_sym_decorated_definition_repeat1] = STATE(1113), + [sym_class_definition] = STATE(61), + [sym_decorated_definition] = STATE(61), + [sym_decorator] = STATE(1127), + [sym_block] = STATE(575), + [sym_expression_list] = STATE(1522), + [sym_pattern] = STATE(1017), + [sym_tuple_pattern] = STATE(1001), + [sym_list_pattern] = STATE(1001), + [sym_list_splat_pattern] = STATE(1001), + [sym_expression] = STATE(1176), + [sym_primary_expression] = STATE(765), + [sym_not_operator] = STATE(1156), + [sym_boolean_operator] = STATE(1156), + [sym_binary_operator] = STATE(920), + [sym_unary_operator] = STATE(920), + [sym_comparison_operator] = STATE(1156), + [sym_lambda] = STATE(1156), + [sym_assignment] = STATE(1522), + [sym_augmented_assignment] = STATE(1522), + [sym_pattern_list] = STATE(1026), + [sym_yield] = STATE(1522), + [sym_attribute] = STATE(582), + [sym_subscript] = STATE(582), + [sym_call] = STATE(920), + [sym_list] = STATE(920), + [sym_set] = STATE(920), + [sym_tuple] = STATE(920), + [sym_dictionary] = STATE(920), + [sym_list_comprehension] = STATE(920), + [sym_dictionary_comprehension] = STATE(920), + [sym_set_comprehension] = STATE(920), + [sym_generator_expression] = STATE(920), + [sym_parenthesized_expression] = STATE(920), + [sym_conditional_expression] = STATE(1156), + [sym_concatenated_string] = STATE(920), + [sym_string] = STATE(775), + [sym_concatenated_template_string] = STATE(920), + [sym_template_string] = STATE(769), + [sym_await] = STATE(920), + [aux_sym_module_repeat1] = STATE(61), + [aux_sym_decorated_definition_repeat1] = STATE(1127), [sym_identifier] = ACTIONS(7), - [anon_sym_import] = ACTIONS(9), - [anon_sym_from] = ACTIONS(11), - [anon_sym_LPAREN] = ACTIONS(13), - [anon_sym_STAR] = ACTIONS(15), - [anon_sym_print] = ACTIONS(17), - [anon_sym_assert] = ACTIONS(19), - [anon_sym_return] = ACTIONS(21), - [anon_sym_del] = ACTIONS(23), - [anon_sym_raise] = ACTIONS(25), - [anon_sym_pass] = ACTIONS(27), - [anon_sym_break] = ACTIONS(29), - [anon_sym_continue] = ACTIONS(31), - [anon_sym_if] = ACTIONS(85), - [anon_sym_async] = ACTIONS(87), - [anon_sym_for] = ACTIONS(89), - [anon_sym_while] = ACTIONS(91), - [anon_sym_try] = ACTIONS(93), - [anon_sym_with] = ACTIONS(95), - [anon_sym_match] = ACTIONS(97), - [anon_sym_DASH] = ACTIONS(47), - [anon_sym_PLUS] = ACTIONS(47), - [anon_sym_LBRACK] = ACTIONS(49), - [anon_sym_LBRACE] = ACTIONS(51), - [anon_sym_STAR_STAR] = ACTIONS(53), - [anon_sym_def] = ACTIONS(99), - [anon_sym_global] = ACTIONS(57), - [anon_sym_nonlocal] = ACTIONS(59), - [anon_sym_exec] = ACTIONS(61), - [anon_sym_type] = ACTIONS(63), - [anon_sym_class] = ACTIONS(101), - [anon_sym_AT] = ACTIONS(67), - [anon_sym_not] = ACTIONS(69), - [anon_sym_TILDE] = ACTIONS(47), - [anon_sym_lambda] = ACTIONS(71), - [anon_sym_yield] = ACTIONS(73), - [sym_ellipsis] = ACTIONS(75), - [sym_integer] = ACTIONS(77), - [sym_float] = ACTIONS(75), - [anon_sym_await] = ACTIONS(79), - [sym_true] = ACTIONS(77), - [sym_false] = ACTIONS(77), - [sym_none] = ACTIONS(77), + [anon_sym_lazy] = ACTIONS(9), + [anon_sym_import] = ACTIONS(11), + [anon_sym_from] = ACTIONS(13), + [anon_sym_LPAREN] = ACTIONS(15), + [anon_sym_STAR] = ACTIONS(17), + [anon_sym_print] = ACTIONS(19), + [anon_sym_assert] = ACTIONS(21), + [anon_sym_return] = ACTIONS(23), + [anon_sym_del] = ACTIONS(25), + [anon_sym_raise] = ACTIONS(27), + [anon_sym_pass] = ACTIONS(29), + [anon_sym_break] = ACTIONS(31), + [anon_sym_continue] = ACTIONS(33), + [anon_sym_if] = ACTIONS(87), + [anon_sym_async] = ACTIONS(89), + [anon_sym_for] = ACTIONS(91), + [anon_sym_while] = ACTIONS(93), + [anon_sym_try] = ACTIONS(95), + [anon_sym_with] = ACTIONS(97), + [anon_sym_match] = ACTIONS(99), + [anon_sym_DASH] = ACTIONS(49), + [anon_sym_PLUS] = ACTIONS(49), + [anon_sym_LBRACK] = ACTIONS(51), + [anon_sym_LBRACE] = ACTIONS(53), + [anon_sym_STAR_STAR] = ACTIONS(55), + [anon_sym_def] = ACTIONS(101), + [anon_sym_global] = ACTIONS(59), + [anon_sym_nonlocal] = ACTIONS(61), + [anon_sym_exec] = ACTIONS(63), + [anon_sym_type] = ACTIONS(65), + [anon_sym_class] = ACTIONS(103), + [anon_sym_AT] = ACTIONS(69), + [anon_sym_not] = ACTIONS(71), + [anon_sym_TILDE] = ACTIONS(49), + [anon_sym_lambda] = ACTIONS(73), + [anon_sym_yield] = ACTIONS(75), + [sym_ellipsis] = ACTIONS(77), + [sym_integer] = ACTIONS(79), + [sym_float] = ACTIONS(77), + [anon_sym_await] = ACTIONS(81), + [sym_true] = ACTIONS(79), + [sym_false] = ACTIONS(79), + [sym_none] = ACTIONS(79), [sym_comment] = ACTIONS(3), - [sym__dedent] = ACTIONS(107), - [sym__string_start] = ACTIONS(81), - [sym__template_string_start] = ACTIONS(83), + [sym__dedent] = ACTIONS(109), + [sym__string_start] = ACTIONS(83), + [sym__template_string_start] = ACTIONS(85), }, [STATE(11)] = { - [sym__statement] = STATE(63), - [sym__simple_statements] = STATE(63), + [sym__statement] = STATE(61), + [sym__simple_statements] = STATE(61), [sym_import_statement] = STATE(1332), [sym_future_import_statement] = STATE(1332), [sym_import_from_statement] = STATE(1332), [sym_print_statement] = STATE(1332), [sym_assert_statement] = STATE(1332), [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1158), + [sym_named_expression] = STATE(1156), [sym_return_statement] = STATE(1332), [sym_delete_statement] = STATE(1332), [sym_raise_statement] = STATE(1332), [sym_pass_statement] = STATE(1332), [sym_break_statement] = STATE(1332), [sym_continue_statement] = STATE(1332), - [sym_if_statement] = STATE(63), - [sym_for_statement] = STATE(63), - [sym_while_statement] = STATE(63), - [sym_try_statement] = STATE(63), - [sym_with_statement] = STATE(63), - [sym_match_statement] = STATE(63), - [sym_function_definition] = STATE(63), - [sym_list_splat] = STATE(1549), - [sym_dictionary_splat] = STATE(1549), + [sym_if_statement] = STATE(61), + [sym_for_statement] = STATE(61), + [sym_while_statement] = STATE(61), + [sym_try_statement] = STATE(61), + [sym_with_statement] = STATE(61), + [sym_match_statement] = STATE(61), + [sym_function_definition] = STATE(61), + [sym_list_splat] = STATE(1520), + [sym_dictionary_splat] = STATE(1520), [sym_global_statement] = STATE(1332), [sym_nonlocal_statement] = STATE(1332), [sym_exec_statement] = STATE(1332), [sym_type_alias_statement] = STATE(1332), - [sym_class_definition] = STATE(63), - [sym_decorated_definition] = STATE(63), - [sym_decorator] = STATE(1113), - [sym_block] = STATE(524), - [sym_expression_list] = STATE(1551), - [sym_pattern] = STATE(1013), - [sym_tuple_pattern] = STATE(999), - [sym_list_pattern] = STATE(999), - [sym_list_splat_pattern] = STATE(999), - [sym_expression] = STATE(1185), - [sym_primary_expression] = STATE(779), - [sym_not_operator] = STATE(1158), - [sym_boolean_operator] = STATE(1158), - [sym_binary_operator] = STATE(908), - [sym_unary_operator] = STATE(908), - [sym_comparison_operator] = STATE(1158), - [sym_lambda] = STATE(1158), - [sym_assignment] = STATE(1551), - [sym_augmented_assignment] = STATE(1551), - [sym_pattern_list] = STATE(1024), - [sym_yield] = STATE(1551), - [sym_attribute] = STATE(494), - [sym_subscript] = STATE(494), - [sym_call] = STATE(908), - [sym_list] = STATE(908), - [sym_set] = STATE(908), - [sym_tuple] = STATE(908), - [sym_dictionary] = STATE(908), - [sym_list_comprehension] = STATE(908), - [sym_dictionary_comprehension] = STATE(908), - [sym_set_comprehension] = STATE(908), - [sym_generator_expression] = STATE(908), - [sym_parenthesized_expression] = STATE(908), - [sym_conditional_expression] = STATE(1158), - [sym_concatenated_string] = STATE(908), - [sym_string] = STATE(782), - [sym_concatenated_template_string] = STATE(908), - [sym_template_string] = STATE(763), - [sym_await] = STATE(908), - [aux_sym_module_repeat1] = STATE(63), - [aux_sym_decorated_definition_repeat1] = STATE(1113), + [sym_class_definition] = STATE(61), + [sym_decorated_definition] = STATE(61), + [sym_decorator] = STATE(1127), + [sym_block] = STATE(577), + [sym_expression_list] = STATE(1522), + [sym_pattern] = STATE(1017), + [sym_tuple_pattern] = STATE(1001), + [sym_list_pattern] = STATE(1001), + [sym_list_splat_pattern] = STATE(1001), + [sym_expression] = STATE(1176), + [sym_primary_expression] = STATE(765), + [sym_not_operator] = STATE(1156), + [sym_boolean_operator] = STATE(1156), + [sym_binary_operator] = STATE(920), + [sym_unary_operator] = STATE(920), + [sym_comparison_operator] = STATE(1156), + [sym_lambda] = STATE(1156), + [sym_assignment] = STATE(1522), + [sym_augmented_assignment] = STATE(1522), + [sym_pattern_list] = STATE(1026), + [sym_yield] = STATE(1522), + [sym_attribute] = STATE(582), + [sym_subscript] = STATE(582), + [sym_call] = STATE(920), + [sym_list] = STATE(920), + [sym_set] = STATE(920), + [sym_tuple] = STATE(920), + [sym_dictionary] = STATE(920), + [sym_list_comprehension] = STATE(920), + [sym_dictionary_comprehension] = STATE(920), + [sym_set_comprehension] = STATE(920), + [sym_generator_expression] = STATE(920), + [sym_parenthesized_expression] = STATE(920), + [sym_conditional_expression] = STATE(1156), + [sym_concatenated_string] = STATE(920), + [sym_string] = STATE(775), + [sym_concatenated_template_string] = STATE(920), + [sym_template_string] = STATE(769), + [sym_await] = STATE(920), + [aux_sym_module_repeat1] = STATE(61), + [aux_sym_decorated_definition_repeat1] = STATE(1127), [sym_identifier] = ACTIONS(7), - [anon_sym_import] = ACTIONS(9), - [anon_sym_from] = ACTIONS(11), - [anon_sym_LPAREN] = ACTIONS(13), - [anon_sym_STAR] = ACTIONS(15), - [anon_sym_print] = ACTIONS(17), - [anon_sym_assert] = ACTIONS(19), - [anon_sym_return] = ACTIONS(21), - [anon_sym_del] = ACTIONS(23), - [anon_sym_raise] = ACTIONS(25), - [anon_sym_pass] = ACTIONS(27), - [anon_sym_break] = ACTIONS(29), - [anon_sym_continue] = ACTIONS(31), - [anon_sym_if] = ACTIONS(85), - [anon_sym_async] = ACTIONS(87), - [anon_sym_for] = ACTIONS(89), - [anon_sym_while] = ACTIONS(91), - [anon_sym_try] = ACTIONS(93), - [anon_sym_with] = ACTIONS(95), - [anon_sym_match] = ACTIONS(97), - [anon_sym_DASH] = ACTIONS(47), - [anon_sym_PLUS] = ACTIONS(47), - [anon_sym_LBRACK] = ACTIONS(49), - [anon_sym_LBRACE] = ACTIONS(51), - [anon_sym_STAR_STAR] = ACTIONS(53), - [anon_sym_def] = ACTIONS(99), - [anon_sym_global] = ACTIONS(57), - [anon_sym_nonlocal] = ACTIONS(59), - [anon_sym_exec] = ACTIONS(61), - [anon_sym_type] = ACTIONS(63), - [anon_sym_class] = ACTIONS(101), - [anon_sym_AT] = ACTIONS(67), - [anon_sym_not] = ACTIONS(69), - [anon_sym_TILDE] = ACTIONS(47), - [anon_sym_lambda] = ACTIONS(71), - [anon_sym_yield] = ACTIONS(73), - [sym_ellipsis] = ACTIONS(75), - [sym_integer] = ACTIONS(77), - [sym_float] = ACTIONS(75), - [anon_sym_await] = ACTIONS(79), - [sym_true] = ACTIONS(77), - [sym_false] = ACTIONS(77), - [sym_none] = ACTIONS(77), + [anon_sym_lazy] = ACTIONS(9), + [anon_sym_import] = ACTIONS(11), + [anon_sym_from] = ACTIONS(13), + [anon_sym_LPAREN] = ACTIONS(15), + [anon_sym_STAR] = ACTIONS(17), + [anon_sym_print] = ACTIONS(19), + [anon_sym_assert] = ACTIONS(21), + [anon_sym_return] = ACTIONS(23), + [anon_sym_del] = ACTIONS(25), + [anon_sym_raise] = ACTIONS(27), + [anon_sym_pass] = ACTIONS(29), + [anon_sym_break] = ACTIONS(31), + [anon_sym_continue] = ACTIONS(33), + [anon_sym_if] = ACTIONS(87), + [anon_sym_async] = ACTIONS(89), + [anon_sym_for] = ACTIONS(91), + [anon_sym_while] = ACTIONS(93), + [anon_sym_try] = ACTIONS(95), + [anon_sym_with] = ACTIONS(97), + [anon_sym_match] = ACTIONS(99), + [anon_sym_DASH] = ACTIONS(49), + [anon_sym_PLUS] = ACTIONS(49), + [anon_sym_LBRACK] = ACTIONS(51), + [anon_sym_LBRACE] = ACTIONS(53), + [anon_sym_STAR_STAR] = ACTIONS(55), + [anon_sym_def] = ACTIONS(101), + [anon_sym_global] = ACTIONS(59), + [anon_sym_nonlocal] = ACTIONS(61), + [anon_sym_exec] = ACTIONS(63), + [anon_sym_type] = ACTIONS(65), + [anon_sym_class] = ACTIONS(103), + [anon_sym_AT] = ACTIONS(69), + [anon_sym_not] = ACTIONS(71), + [anon_sym_TILDE] = ACTIONS(49), + [anon_sym_lambda] = ACTIONS(73), + [anon_sym_yield] = ACTIONS(75), + [sym_ellipsis] = ACTIONS(77), + [sym_integer] = ACTIONS(79), + [sym_float] = ACTIONS(77), + [anon_sym_await] = ACTIONS(81), + [sym_true] = ACTIONS(79), + [sym_false] = ACTIONS(79), + [sym_none] = ACTIONS(79), [sym_comment] = ACTIONS(3), - [sym__dedent] = ACTIONS(107), - [sym__string_start] = ACTIONS(81), - [sym__template_string_start] = ACTIONS(83), + [sym__dedent] = ACTIONS(109), + [sym__string_start] = ACTIONS(83), + [sym__template_string_start] = ACTIONS(85), }, [STATE(12)] = { - [sym__statement] = STATE(63), - [sym__simple_statements] = STATE(63), + [sym__statement] = STATE(61), + [sym__simple_statements] = STATE(61), [sym_import_statement] = STATE(1332), [sym_future_import_statement] = STATE(1332), [sym_import_from_statement] = STATE(1332), [sym_print_statement] = STATE(1332), [sym_assert_statement] = STATE(1332), [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1158), + [sym_named_expression] = STATE(1156), [sym_return_statement] = STATE(1332), [sym_delete_statement] = STATE(1332), [sym_raise_statement] = STATE(1332), [sym_pass_statement] = STATE(1332), [sym_break_statement] = STATE(1332), [sym_continue_statement] = STATE(1332), - [sym_if_statement] = STATE(63), - [sym_for_statement] = STATE(63), - [sym_while_statement] = STATE(63), - [sym_try_statement] = STATE(63), - [sym_with_statement] = STATE(63), - [sym_match_statement] = STATE(63), - [sym_function_definition] = STATE(63), - [sym_list_splat] = STATE(1549), - [sym_dictionary_splat] = STATE(1549), + [sym_if_statement] = STATE(61), + [sym_for_statement] = STATE(61), + [sym_while_statement] = STATE(61), + [sym_try_statement] = STATE(61), + [sym_with_statement] = STATE(61), + [sym_match_statement] = STATE(61), + [sym_function_definition] = STATE(61), + [sym_list_splat] = STATE(1520), + [sym_dictionary_splat] = STATE(1520), [sym_global_statement] = STATE(1332), [sym_nonlocal_statement] = STATE(1332), [sym_exec_statement] = STATE(1332), [sym_type_alias_statement] = STATE(1332), - [sym_class_definition] = STATE(63), - [sym_decorated_definition] = STATE(63), - [sym_decorator] = STATE(1113), - [sym_block] = STATE(526), - [sym_expression_list] = STATE(1551), - [sym_pattern] = STATE(1013), - [sym_tuple_pattern] = STATE(999), - [sym_list_pattern] = STATE(999), - [sym_list_splat_pattern] = STATE(999), - [sym_expression] = STATE(1185), - [sym_primary_expression] = STATE(779), - [sym_not_operator] = STATE(1158), - [sym_boolean_operator] = STATE(1158), - [sym_binary_operator] = STATE(908), - [sym_unary_operator] = STATE(908), - [sym_comparison_operator] = STATE(1158), - [sym_lambda] = STATE(1158), - [sym_assignment] = STATE(1551), - [sym_augmented_assignment] = STATE(1551), - [sym_pattern_list] = STATE(1024), - [sym_yield] = STATE(1551), - [sym_attribute] = STATE(494), - [sym_subscript] = STATE(494), - [sym_call] = STATE(908), - [sym_list] = STATE(908), - [sym_set] = STATE(908), - [sym_tuple] = STATE(908), - [sym_dictionary] = STATE(908), - [sym_list_comprehension] = STATE(908), - [sym_dictionary_comprehension] = STATE(908), - [sym_set_comprehension] = STATE(908), - [sym_generator_expression] = STATE(908), - [sym_parenthesized_expression] = STATE(908), - [sym_conditional_expression] = STATE(1158), - [sym_concatenated_string] = STATE(908), - [sym_string] = STATE(782), - [sym_concatenated_template_string] = STATE(908), - [sym_template_string] = STATE(763), - [sym_await] = STATE(908), - [aux_sym_module_repeat1] = STATE(63), - [aux_sym_decorated_definition_repeat1] = STATE(1113), + [sym_class_definition] = STATE(61), + [sym_decorated_definition] = STATE(61), + [sym_decorator] = STATE(1127), + [sym_block] = STATE(580), + [sym_expression_list] = STATE(1522), + [sym_pattern] = STATE(1017), + [sym_tuple_pattern] = STATE(1001), + [sym_list_pattern] = STATE(1001), + [sym_list_splat_pattern] = STATE(1001), + [sym_expression] = STATE(1176), + [sym_primary_expression] = STATE(765), + [sym_not_operator] = STATE(1156), + [sym_boolean_operator] = STATE(1156), + [sym_binary_operator] = STATE(920), + [sym_unary_operator] = STATE(920), + [sym_comparison_operator] = STATE(1156), + [sym_lambda] = STATE(1156), + [sym_assignment] = STATE(1522), + [sym_augmented_assignment] = STATE(1522), + [sym_pattern_list] = STATE(1026), + [sym_yield] = STATE(1522), + [sym_attribute] = STATE(582), + [sym_subscript] = STATE(582), + [sym_call] = STATE(920), + [sym_list] = STATE(920), + [sym_set] = STATE(920), + [sym_tuple] = STATE(920), + [sym_dictionary] = STATE(920), + [sym_list_comprehension] = STATE(920), + [sym_dictionary_comprehension] = STATE(920), + [sym_set_comprehension] = STATE(920), + [sym_generator_expression] = STATE(920), + [sym_parenthesized_expression] = STATE(920), + [sym_conditional_expression] = STATE(1156), + [sym_concatenated_string] = STATE(920), + [sym_string] = STATE(775), + [sym_concatenated_template_string] = STATE(920), + [sym_template_string] = STATE(769), + [sym_await] = STATE(920), + [aux_sym_module_repeat1] = STATE(61), + [aux_sym_decorated_definition_repeat1] = STATE(1127), [sym_identifier] = ACTIONS(7), - [anon_sym_import] = ACTIONS(9), - [anon_sym_from] = ACTIONS(11), - [anon_sym_LPAREN] = ACTIONS(13), - [anon_sym_STAR] = ACTIONS(15), - [anon_sym_print] = ACTIONS(17), - [anon_sym_assert] = ACTIONS(19), - [anon_sym_return] = ACTIONS(21), - [anon_sym_del] = ACTIONS(23), - [anon_sym_raise] = ACTIONS(25), - [anon_sym_pass] = ACTIONS(27), - [anon_sym_break] = ACTIONS(29), - [anon_sym_continue] = ACTIONS(31), - [anon_sym_if] = ACTIONS(85), - [anon_sym_async] = ACTIONS(87), - [anon_sym_for] = ACTIONS(89), - [anon_sym_while] = ACTIONS(91), - [anon_sym_try] = ACTIONS(93), - [anon_sym_with] = ACTIONS(95), - [anon_sym_match] = ACTIONS(97), - [anon_sym_DASH] = ACTIONS(47), - [anon_sym_PLUS] = ACTIONS(47), - [anon_sym_LBRACK] = ACTIONS(49), - [anon_sym_LBRACE] = ACTIONS(51), - [anon_sym_STAR_STAR] = ACTIONS(53), - [anon_sym_def] = ACTIONS(99), - [anon_sym_global] = ACTIONS(57), - [anon_sym_nonlocal] = ACTIONS(59), - [anon_sym_exec] = ACTIONS(61), - [anon_sym_type] = ACTIONS(63), - [anon_sym_class] = ACTIONS(101), - [anon_sym_AT] = ACTIONS(67), - [anon_sym_not] = ACTIONS(69), - [anon_sym_TILDE] = ACTIONS(47), - [anon_sym_lambda] = ACTIONS(71), - [anon_sym_yield] = ACTIONS(73), - [sym_ellipsis] = ACTIONS(75), - [sym_integer] = ACTIONS(77), - [sym_float] = ACTIONS(75), - [anon_sym_await] = ACTIONS(79), - [sym_true] = ACTIONS(77), - [sym_false] = ACTIONS(77), - [sym_none] = ACTIONS(77), + [anon_sym_lazy] = ACTIONS(9), + [anon_sym_import] = ACTIONS(11), + [anon_sym_from] = ACTIONS(13), + [anon_sym_LPAREN] = ACTIONS(15), + [anon_sym_STAR] = ACTIONS(17), + [anon_sym_print] = ACTIONS(19), + [anon_sym_assert] = ACTIONS(21), + [anon_sym_return] = ACTIONS(23), + [anon_sym_del] = ACTIONS(25), + [anon_sym_raise] = ACTIONS(27), + [anon_sym_pass] = ACTIONS(29), + [anon_sym_break] = ACTIONS(31), + [anon_sym_continue] = ACTIONS(33), + [anon_sym_if] = ACTIONS(87), + [anon_sym_async] = ACTIONS(89), + [anon_sym_for] = ACTIONS(91), + [anon_sym_while] = ACTIONS(93), + [anon_sym_try] = ACTIONS(95), + [anon_sym_with] = ACTIONS(97), + [anon_sym_match] = ACTIONS(99), + [anon_sym_DASH] = ACTIONS(49), + [anon_sym_PLUS] = ACTIONS(49), + [anon_sym_LBRACK] = ACTIONS(51), + [anon_sym_LBRACE] = ACTIONS(53), + [anon_sym_STAR_STAR] = ACTIONS(55), + [anon_sym_def] = ACTIONS(101), + [anon_sym_global] = ACTIONS(59), + [anon_sym_nonlocal] = ACTIONS(61), + [anon_sym_exec] = ACTIONS(63), + [anon_sym_type] = ACTIONS(65), + [anon_sym_class] = ACTIONS(103), + [anon_sym_AT] = ACTIONS(69), + [anon_sym_not] = ACTIONS(71), + [anon_sym_TILDE] = ACTIONS(49), + [anon_sym_lambda] = ACTIONS(73), + [anon_sym_yield] = ACTIONS(75), + [sym_ellipsis] = ACTIONS(77), + [sym_integer] = ACTIONS(79), + [sym_float] = ACTIONS(77), + [anon_sym_await] = ACTIONS(81), + [sym_true] = ACTIONS(79), + [sym_false] = ACTIONS(79), + [sym_none] = ACTIONS(79), [sym_comment] = ACTIONS(3), - [sym__dedent] = ACTIONS(107), - [sym__string_start] = ACTIONS(81), - [sym__template_string_start] = ACTIONS(83), + [sym__dedent] = ACTIONS(109), + [sym__string_start] = ACTIONS(83), + [sym__template_string_start] = ACTIONS(85), }, [STATE(13)] = { - [sym__statement] = STATE(63), - [sym__simple_statements] = STATE(63), + [sym__statement] = STATE(61), + [sym__simple_statements] = STATE(61), [sym_import_statement] = STATE(1332), [sym_future_import_statement] = STATE(1332), [sym_import_from_statement] = STATE(1332), [sym_print_statement] = STATE(1332), [sym_assert_statement] = STATE(1332), [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1158), + [sym_named_expression] = STATE(1156), [sym_return_statement] = STATE(1332), [sym_delete_statement] = STATE(1332), [sym_raise_statement] = STATE(1332), [sym_pass_statement] = STATE(1332), [sym_break_statement] = STATE(1332), [sym_continue_statement] = STATE(1332), - [sym_if_statement] = STATE(63), - [sym_for_statement] = STATE(63), - [sym_while_statement] = STATE(63), - [sym_try_statement] = STATE(63), - [sym_with_statement] = STATE(63), - [sym_match_statement] = STATE(63), - [sym_function_definition] = STATE(63), - [sym_list_splat] = STATE(1549), - [sym_dictionary_splat] = STATE(1549), + [sym_if_statement] = STATE(61), + [sym_for_statement] = STATE(61), + [sym_while_statement] = STATE(61), + [sym_try_statement] = STATE(61), + [sym_with_statement] = STATE(61), + [sym_match_statement] = STATE(61), + [sym_function_definition] = STATE(61), + [sym_list_splat] = STATE(1520), + [sym_dictionary_splat] = STATE(1520), [sym_global_statement] = STATE(1332), [sym_nonlocal_statement] = STATE(1332), [sym_exec_statement] = STATE(1332), [sym_type_alias_statement] = STATE(1332), - [sym_class_definition] = STATE(63), - [sym_decorated_definition] = STATE(63), - [sym_decorator] = STATE(1113), - [sym_block] = STATE(484), - [sym_expression_list] = STATE(1551), - [sym_pattern] = STATE(1013), - [sym_tuple_pattern] = STATE(999), - [sym_list_pattern] = STATE(999), - [sym_list_splat_pattern] = STATE(999), - [sym_expression] = STATE(1185), - [sym_primary_expression] = STATE(779), - [sym_not_operator] = STATE(1158), - [sym_boolean_operator] = STATE(1158), - [sym_binary_operator] = STATE(908), - [sym_unary_operator] = STATE(908), - [sym_comparison_operator] = STATE(1158), - [sym_lambda] = STATE(1158), - [sym_assignment] = STATE(1551), - [sym_augmented_assignment] = STATE(1551), - [sym_pattern_list] = STATE(1024), - [sym_yield] = STATE(1551), - [sym_attribute] = STATE(494), - [sym_subscript] = STATE(494), - [sym_call] = STATE(908), - [sym_list] = STATE(908), - [sym_set] = STATE(908), - [sym_tuple] = STATE(908), - [sym_dictionary] = STATE(908), - [sym_list_comprehension] = STATE(908), - [sym_dictionary_comprehension] = STATE(908), - [sym_set_comprehension] = STATE(908), - [sym_generator_expression] = STATE(908), - [sym_parenthesized_expression] = STATE(908), - [sym_conditional_expression] = STATE(1158), - [sym_concatenated_string] = STATE(908), - [sym_string] = STATE(782), - [sym_concatenated_template_string] = STATE(908), - [sym_template_string] = STATE(763), - [sym_await] = STATE(908), - [aux_sym_module_repeat1] = STATE(63), - [aux_sym_decorated_definition_repeat1] = STATE(1113), + [sym_class_definition] = STATE(61), + [sym_decorated_definition] = STATE(61), + [sym_decorator] = STATE(1127), + [sym_block] = STATE(473), + [sym_expression_list] = STATE(1522), + [sym_pattern] = STATE(1017), + [sym_tuple_pattern] = STATE(1001), + [sym_list_pattern] = STATE(1001), + [sym_list_splat_pattern] = STATE(1001), + [sym_expression] = STATE(1176), + [sym_primary_expression] = STATE(765), + [sym_not_operator] = STATE(1156), + [sym_boolean_operator] = STATE(1156), + [sym_binary_operator] = STATE(920), + [sym_unary_operator] = STATE(920), + [sym_comparison_operator] = STATE(1156), + [sym_lambda] = STATE(1156), + [sym_assignment] = STATE(1522), + [sym_augmented_assignment] = STATE(1522), + [sym_pattern_list] = STATE(1026), + [sym_yield] = STATE(1522), + [sym_attribute] = STATE(582), + [sym_subscript] = STATE(582), + [sym_call] = STATE(920), + [sym_list] = STATE(920), + [sym_set] = STATE(920), + [sym_tuple] = STATE(920), + [sym_dictionary] = STATE(920), + [sym_list_comprehension] = STATE(920), + [sym_dictionary_comprehension] = STATE(920), + [sym_set_comprehension] = STATE(920), + [sym_generator_expression] = STATE(920), + [sym_parenthesized_expression] = STATE(920), + [sym_conditional_expression] = STATE(1156), + [sym_concatenated_string] = STATE(920), + [sym_string] = STATE(775), + [sym_concatenated_template_string] = STATE(920), + [sym_template_string] = STATE(769), + [sym_await] = STATE(920), + [aux_sym_module_repeat1] = STATE(61), + [aux_sym_decorated_definition_repeat1] = STATE(1127), [sym_identifier] = ACTIONS(7), - [anon_sym_import] = ACTIONS(9), - [anon_sym_from] = ACTIONS(11), - [anon_sym_LPAREN] = ACTIONS(13), - [anon_sym_STAR] = ACTIONS(15), - [anon_sym_print] = ACTIONS(17), - [anon_sym_assert] = ACTIONS(19), - [anon_sym_return] = ACTIONS(21), - [anon_sym_del] = ACTIONS(23), - [anon_sym_raise] = ACTIONS(25), - [anon_sym_pass] = ACTIONS(27), - [anon_sym_break] = ACTIONS(29), - [anon_sym_continue] = ACTIONS(31), - [anon_sym_if] = ACTIONS(85), - [anon_sym_async] = ACTIONS(87), - [anon_sym_for] = ACTIONS(89), - [anon_sym_while] = ACTIONS(91), - [anon_sym_try] = ACTIONS(93), - [anon_sym_with] = ACTIONS(95), - [anon_sym_match] = ACTIONS(97), - [anon_sym_DASH] = ACTIONS(47), - [anon_sym_PLUS] = ACTIONS(47), - [anon_sym_LBRACK] = ACTIONS(49), - [anon_sym_LBRACE] = ACTIONS(51), - [anon_sym_STAR_STAR] = ACTIONS(53), - [anon_sym_def] = ACTIONS(99), - [anon_sym_global] = ACTIONS(57), - [anon_sym_nonlocal] = ACTIONS(59), - [anon_sym_exec] = ACTIONS(61), - [anon_sym_type] = ACTIONS(63), - [anon_sym_class] = ACTIONS(101), - [anon_sym_AT] = ACTIONS(67), - [anon_sym_not] = ACTIONS(69), - [anon_sym_TILDE] = ACTIONS(47), - [anon_sym_lambda] = ACTIONS(71), - [anon_sym_yield] = ACTIONS(73), - [sym_ellipsis] = ACTIONS(75), - [sym_integer] = ACTIONS(77), - [sym_float] = ACTIONS(75), - [anon_sym_await] = ACTIONS(79), - [sym_true] = ACTIONS(77), - [sym_false] = ACTIONS(77), - [sym_none] = ACTIONS(77), + [anon_sym_lazy] = ACTIONS(9), + [anon_sym_import] = ACTIONS(11), + [anon_sym_from] = ACTIONS(13), + [anon_sym_LPAREN] = ACTIONS(15), + [anon_sym_STAR] = ACTIONS(17), + [anon_sym_print] = ACTIONS(19), + [anon_sym_assert] = ACTIONS(21), + [anon_sym_return] = ACTIONS(23), + [anon_sym_del] = ACTIONS(25), + [anon_sym_raise] = ACTIONS(27), + [anon_sym_pass] = ACTIONS(29), + [anon_sym_break] = ACTIONS(31), + [anon_sym_continue] = ACTIONS(33), + [anon_sym_if] = ACTIONS(87), + [anon_sym_async] = ACTIONS(89), + [anon_sym_for] = ACTIONS(91), + [anon_sym_while] = ACTIONS(93), + [anon_sym_try] = ACTIONS(95), + [anon_sym_with] = ACTIONS(97), + [anon_sym_match] = ACTIONS(99), + [anon_sym_DASH] = ACTIONS(49), + [anon_sym_PLUS] = ACTIONS(49), + [anon_sym_LBRACK] = ACTIONS(51), + [anon_sym_LBRACE] = ACTIONS(53), + [anon_sym_STAR_STAR] = ACTIONS(55), + [anon_sym_def] = ACTIONS(101), + [anon_sym_global] = ACTIONS(59), + [anon_sym_nonlocal] = ACTIONS(61), + [anon_sym_exec] = ACTIONS(63), + [anon_sym_type] = ACTIONS(65), + [anon_sym_class] = ACTIONS(103), + [anon_sym_AT] = ACTIONS(69), + [anon_sym_not] = ACTIONS(71), + [anon_sym_TILDE] = ACTIONS(49), + [anon_sym_lambda] = ACTIONS(73), + [anon_sym_yield] = ACTIONS(75), + [sym_ellipsis] = ACTIONS(77), + [sym_integer] = ACTIONS(79), + [sym_float] = ACTIONS(77), + [anon_sym_await] = ACTIONS(81), + [sym_true] = ACTIONS(79), + [sym_false] = ACTIONS(79), + [sym_none] = ACTIONS(79), [sym_comment] = ACTIONS(3), - [sym__dedent] = ACTIONS(107), - [sym__string_start] = ACTIONS(81), - [sym__template_string_start] = ACTIONS(83), + [sym__dedent] = ACTIONS(109), + [sym__string_start] = ACTIONS(83), + [sym__template_string_start] = ACTIONS(85), }, [STATE(14)] = { - [sym__statement] = STATE(63), - [sym__simple_statements] = STATE(63), + [sym__statement] = STATE(61), + [sym__simple_statements] = STATE(61), [sym_import_statement] = STATE(1332), [sym_future_import_statement] = STATE(1332), [sym_import_from_statement] = STATE(1332), [sym_print_statement] = STATE(1332), [sym_assert_statement] = STATE(1332), [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1158), + [sym_named_expression] = STATE(1156), [sym_return_statement] = STATE(1332), [sym_delete_statement] = STATE(1332), [sym_raise_statement] = STATE(1332), [sym_pass_statement] = STATE(1332), [sym_break_statement] = STATE(1332), [sym_continue_statement] = STATE(1332), - [sym_if_statement] = STATE(63), - [sym_for_statement] = STATE(63), - [sym_while_statement] = STATE(63), - [sym_try_statement] = STATE(63), - [sym_with_statement] = STATE(63), - [sym_match_statement] = STATE(63), - [sym_function_definition] = STATE(63), - [sym_list_splat] = STATE(1549), - [sym_dictionary_splat] = STATE(1549), + [sym_if_statement] = STATE(61), + [sym_for_statement] = STATE(61), + [sym_while_statement] = STATE(61), + [sym_try_statement] = STATE(61), + [sym_with_statement] = STATE(61), + [sym_match_statement] = STATE(61), + [sym_function_definition] = STATE(61), + [sym_list_splat] = STATE(1520), + [sym_dictionary_splat] = STATE(1520), [sym_global_statement] = STATE(1332), [sym_nonlocal_statement] = STATE(1332), [sym_exec_statement] = STATE(1332), [sym_type_alias_statement] = STATE(1332), - [sym_class_definition] = STATE(63), - [sym_decorated_definition] = STATE(63), - [sym_decorator] = STATE(1113), - [sym_block] = STATE(456), - [sym_expression_list] = STATE(1551), - [sym_pattern] = STATE(1013), - [sym_tuple_pattern] = STATE(999), - [sym_list_pattern] = STATE(999), - [sym_list_splat_pattern] = STATE(999), - [sym_expression] = STATE(1185), - [sym_primary_expression] = STATE(779), - [sym_not_operator] = STATE(1158), - [sym_boolean_operator] = STATE(1158), - [sym_binary_operator] = STATE(908), - [sym_unary_operator] = STATE(908), - [sym_comparison_operator] = STATE(1158), - [sym_lambda] = STATE(1158), - [sym_assignment] = STATE(1551), - [sym_augmented_assignment] = STATE(1551), - [sym_pattern_list] = STATE(1024), - [sym_yield] = STATE(1551), - [sym_attribute] = STATE(494), - [sym_subscript] = STATE(494), - [sym_call] = STATE(908), - [sym_list] = STATE(908), - [sym_set] = STATE(908), - [sym_tuple] = STATE(908), - [sym_dictionary] = STATE(908), - [sym_list_comprehension] = STATE(908), - [sym_dictionary_comprehension] = STATE(908), - [sym_set_comprehension] = STATE(908), - [sym_generator_expression] = STATE(908), - [sym_parenthesized_expression] = STATE(908), - [sym_conditional_expression] = STATE(1158), - [sym_concatenated_string] = STATE(908), - [sym_string] = STATE(782), - [sym_concatenated_template_string] = STATE(908), - [sym_template_string] = STATE(763), - [sym_await] = STATE(908), - [aux_sym_module_repeat1] = STATE(63), - [aux_sym_decorated_definition_repeat1] = STATE(1113), + [sym_class_definition] = STATE(61), + [sym_decorated_definition] = STATE(61), + [sym_decorator] = STATE(1127), + [sym_block] = STATE(448), + [sym_expression_list] = STATE(1522), + [sym_pattern] = STATE(1017), + [sym_tuple_pattern] = STATE(1001), + [sym_list_pattern] = STATE(1001), + [sym_list_splat_pattern] = STATE(1001), + [sym_expression] = STATE(1176), + [sym_primary_expression] = STATE(765), + [sym_not_operator] = STATE(1156), + [sym_boolean_operator] = STATE(1156), + [sym_binary_operator] = STATE(920), + [sym_unary_operator] = STATE(920), + [sym_comparison_operator] = STATE(1156), + [sym_lambda] = STATE(1156), + [sym_assignment] = STATE(1522), + [sym_augmented_assignment] = STATE(1522), + [sym_pattern_list] = STATE(1026), + [sym_yield] = STATE(1522), + [sym_attribute] = STATE(582), + [sym_subscript] = STATE(582), + [sym_call] = STATE(920), + [sym_list] = STATE(920), + [sym_set] = STATE(920), + [sym_tuple] = STATE(920), + [sym_dictionary] = STATE(920), + [sym_list_comprehension] = STATE(920), + [sym_dictionary_comprehension] = STATE(920), + [sym_set_comprehension] = STATE(920), + [sym_generator_expression] = STATE(920), + [sym_parenthesized_expression] = STATE(920), + [sym_conditional_expression] = STATE(1156), + [sym_concatenated_string] = STATE(920), + [sym_string] = STATE(775), + [sym_concatenated_template_string] = STATE(920), + [sym_template_string] = STATE(769), + [sym_await] = STATE(920), + [aux_sym_module_repeat1] = STATE(61), + [aux_sym_decorated_definition_repeat1] = STATE(1127), [sym_identifier] = ACTIONS(7), - [anon_sym_import] = ACTIONS(9), - [anon_sym_from] = ACTIONS(11), - [anon_sym_LPAREN] = ACTIONS(13), - [anon_sym_STAR] = ACTIONS(15), - [anon_sym_print] = ACTIONS(17), - [anon_sym_assert] = ACTIONS(19), - [anon_sym_return] = ACTIONS(21), - [anon_sym_del] = ACTIONS(23), - [anon_sym_raise] = ACTIONS(25), - [anon_sym_pass] = ACTIONS(27), - [anon_sym_break] = ACTIONS(29), - [anon_sym_continue] = ACTIONS(31), - [anon_sym_if] = ACTIONS(85), - [anon_sym_async] = ACTIONS(87), - [anon_sym_for] = ACTIONS(89), - [anon_sym_while] = ACTIONS(91), - [anon_sym_try] = ACTIONS(93), - [anon_sym_with] = ACTIONS(95), - [anon_sym_match] = ACTIONS(97), - [anon_sym_DASH] = ACTIONS(47), - [anon_sym_PLUS] = ACTIONS(47), - [anon_sym_LBRACK] = ACTIONS(49), - [anon_sym_LBRACE] = ACTIONS(51), - [anon_sym_STAR_STAR] = ACTIONS(53), - [anon_sym_def] = ACTIONS(99), - [anon_sym_global] = ACTIONS(57), - [anon_sym_nonlocal] = ACTIONS(59), - [anon_sym_exec] = ACTIONS(61), - [anon_sym_type] = ACTIONS(63), - [anon_sym_class] = ACTIONS(101), - [anon_sym_AT] = ACTIONS(67), - [anon_sym_not] = ACTIONS(69), - [anon_sym_TILDE] = ACTIONS(47), - [anon_sym_lambda] = ACTIONS(71), - [anon_sym_yield] = ACTIONS(73), - [sym_ellipsis] = ACTIONS(75), - [sym_integer] = ACTIONS(77), - [sym_float] = ACTIONS(75), - [anon_sym_await] = ACTIONS(79), - [sym_true] = ACTIONS(77), - [sym_false] = ACTIONS(77), - [sym_none] = ACTIONS(77), + [anon_sym_lazy] = ACTIONS(9), + [anon_sym_import] = ACTIONS(11), + [anon_sym_from] = ACTIONS(13), + [anon_sym_LPAREN] = ACTIONS(15), + [anon_sym_STAR] = ACTIONS(17), + [anon_sym_print] = ACTIONS(19), + [anon_sym_assert] = ACTIONS(21), + [anon_sym_return] = ACTIONS(23), + [anon_sym_del] = ACTIONS(25), + [anon_sym_raise] = ACTIONS(27), + [anon_sym_pass] = ACTIONS(29), + [anon_sym_break] = ACTIONS(31), + [anon_sym_continue] = ACTIONS(33), + [anon_sym_if] = ACTIONS(87), + [anon_sym_async] = ACTIONS(89), + [anon_sym_for] = ACTIONS(91), + [anon_sym_while] = ACTIONS(93), + [anon_sym_try] = ACTIONS(95), + [anon_sym_with] = ACTIONS(97), + [anon_sym_match] = ACTIONS(99), + [anon_sym_DASH] = ACTIONS(49), + [anon_sym_PLUS] = ACTIONS(49), + [anon_sym_LBRACK] = ACTIONS(51), + [anon_sym_LBRACE] = ACTIONS(53), + [anon_sym_STAR_STAR] = ACTIONS(55), + [anon_sym_def] = ACTIONS(101), + [anon_sym_global] = ACTIONS(59), + [anon_sym_nonlocal] = ACTIONS(61), + [anon_sym_exec] = ACTIONS(63), + [anon_sym_type] = ACTIONS(65), + [anon_sym_class] = ACTIONS(103), + [anon_sym_AT] = ACTIONS(69), + [anon_sym_not] = ACTIONS(71), + [anon_sym_TILDE] = ACTIONS(49), + [anon_sym_lambda] = ACTIONS(73), + [anon_sym_yield] = ACTIONS(75), + [sym_ellipsis] = ACTIONS(77), + [sym_integer] = ACTIONS(79), + [sym_float] = ACTIONS(77), + [anon_sym_await] = ACTIONS(81), + [sym_true] = ACTIONS(79), + [sym_false] = ACTIONS(79), + [sym_none] = ACTIONS(79), [sym_comment] = ACTIONS(3), - [sym__dedent] = ACTIONS(107), - [sym__string_start] = ACTIONS(81), - [sym__template_string_start] = ACTIONS(83), + [sym__dedent] = ACTIONS(109), + [sym__string_start] = ACTIONS(83), + [sym__template_string_start] = ACTIONS(85), }, [STATE(15)] = { - [sym__statement] = STATE(63), - [sym__simple_statements] = STATE(63), + [sym__statement] = STATE(61), + [sym__simple_statements] = STATE(61), [sym_import_statement] = STATE(1332), [sym_future_import_statement] = STATE(1332), [sym_import_from_statement] = STATE(1332), [sym_print_statement] = STATE(1332), [sym_assert_statement] = STATE(1332), [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1158), + [sym_named_expression] = STATE(1156), [sym_return_statement] = STATE(1332), [sym_delete_statement] = STATE(1332), [sym_raise_statement] = STATE(1332), [sym_pass_statement] = STATE(1332), [sym_break_statement] = STATE(1332), [sym_continue_statement] = STATE(1332), - [sym_if_statement] = STATE(63), - [sym_for_statement] = STATE(63), - [sym_while_statement] = STATE(63), - [sym_try_statement] = STATE(63), - [sym_with_statement] = STATE(63), - [sym_match_statement] = STATE(63), - [sym_function_definition] = STATE(63), - [sym_list_splat] = STATE(1549), - [sym_dictionary_splat] = STATE(1549), + [sym_if_statement] = STATE(61), + [sym_for_statement] = STATE(61), + [sym_while_statement] = STATE(61), + [sym_try_statement] = STATE(61), + [sym_with_statement] = STATE(61), + [sym_match_statement] = STATE(61), + [sym_function_definition] = STATE(61), + [sym_list_splat] = STATE(1520), + [sym_dictionary_splat] = STATE(1520), [sym_global_statement] = STATE(1332), [sym_nonlocal_statement] = STATE(1332), [sym_exec_statement] = STATE(1332), [sym_type_alias_statement] = STATE(1332), - [sym_class_definition] = STATE(63), - [sym_decorated_definition] = STATE(63), - [sym_decorator] = STATE(1113), - [sym_block] = STATE(529), - [sym_expression_list] = STATE(1551), - [sym_pattern] = STATE(1013), - [sym_tuple_pattern] = STATE(999), - [sym_list_pattern] = STATE(999), - [sym_list_splat_pattern] = STATE(999), - [sym_expression] = STATE(1185), - [sym_primary_expression] = STATE(779), - [sym_not_operator] = STATE(1158), - [sym_boolean_operator] = STATE(1158), - [sym_binary_operator] = STATE(908), - [sym_unary_operator] = STATE(908), - [sym_comparison_operator] = STATE(1158), - [sym_lambda] = STATE(1158), - [sym_assignment] = STATE(1551), - [sym_augmented_assignment] = STATE(1551), - [sym_pattern_list] = STATE(1024), - [sym_yield] = STATE(1551), - [sym_attribute] = STATE(494), - [sym_subscript] = STATE(494), - [sym_call] = STATE(908), - [sym_list] = STATE(908), - [sym_set] = STATE(908), - [sym_tuple] = STATE(908), - [sym_dictionary] = STATE(908), - [sym_list_comprehension] = STATE(908), - [sym_dictionary_comprehension] = STATE(908), - [sym_set_comprehension] = STATE(908), - [sym_generator_expression] = STATE(908), - [sym_parenthesized_expression] = STATE(908), - [sym_conditional_expression] = STATE(1158), - [sym_concatenated_string] = STATE(908), - [sym_string] = STATE(782), - [sym_concatenated_template_string] = STATE(908), - [sym_template_string] = STATE(763), - [sym_await] = STATE(908), - [aux_sym_module_repeat1] = STATE(63), - [aux_sym_decorated_definition_repeat1] = STATE(1113), + [sym_class_definition] = STATE(61), + [sym_decorated_definition] = STATE(61), + [sym_decorator] = STATE(1127), + [sym_block] = STATE(586), + [sym_expression_list] = STATE(1522), + [sym_pattern] = STATE(1017), + [sym_tuple_pattern] = STATE(1001), + [sym_list_pattern] = STATE(1001), + [sym_list_splat_pattern] = STATE(1001), + [sym_expression] = STATE(1176), + [sym_primary_expression] = STATE(765), + [sym_not_operator] = STATE(1156), + [sym_boolean_operator] = STATE(1156), + [sym_binary_operator] = STATE(920), + [sym_unary_operator] = STATE(920), + [sym_comparison_operator] = STATE(1156), + [sym_lambda] = STATE(1156), + [sym_assignment] = STATE(1522), + [sym_augmented_assignment] = STATE(1522), + [sym_pattern_list] = STATE(1026), + [sym_yield] = STATE(1522), + [sym_attribute] = STATE(582), + [sym_subscript] = STATE(582), + [sym_call] = STATE(920), + [sym_list] = STATE(920), + [sym_set] = STATE(920), + [sym_tuple] = STATE(920), + [sym_dictionary] = STATE(920), + [sym_list_comprehension] = STATE(920), + [sym_dictionary_comprehension] = STATE(920), + [sym_set_comprehension] = STATE(920), + [sym_generator_expression] = STATE(920), + [sym_parenthesized_expression] = STATE(920), + [sym_conditional_expression] = STATE(1156), + [sym_concatenated_string] = STATE(920), + [sym_string] = STATE(775), + [sym_concatenated_template_string] = STATE(920), + [sym_template_string] = STATE(769), + [sym_await] = STATE(920), + [aux_sym_module_repeat1] = STATE(61), + [aux_sym_decorated_definition_repeat1] = STATE(1127), [sym_identifier] = ACTIONS(7), - [anon_sym_import] = ACTIONS(9), - [anon_sym_from] = ACTIONS(11), - [anon_sym_LPAREN] = ACTIONS(13), - [anon_sym_STAR] = ACTIONS(15), - [anon_sym_print] = ACTIONS(17), - [anon_sym_assert] = ACTIONS(19), - [anon_sym_return] = ACTIONS(21), - [anon_sym_del] = ACTIONS(23), - [anon_sym_raise] = ACTIONS(25), - [anon_sym_pass] = ACTIONS(27), - [anon_sym_break] = ACTIONS(29), - [anon_sym_continue] = ACTIONS(31), - [anon_sym_if] = ACTIONS(85), - [anon_sym_async] = ACTIONS(87), - [anon_sym_for] = ACTIONS(89), - [anon_sym_while] = ACTIONS(91), - [anon_sym_try] = ACTIONS(93), - [anon_sym_with] = ACTIONS(95), - [anon_sym_match] = ACTIONS(97), - [anon_sym_DASH] = ACTIONS(47), - [anon_sym_PLUS] = ACTIONS(47), - [anon_sym_LBRACK] = ACTIONS(49), - [anon_sym_LBRACE] = ACTIONS(51), - [anon_sym_STAR_STAR] = ACTIONS(53), - [anon_sym_def] = ACTIONS(99), - [anon_sym_global] = ACTIONS(57), - [anon_sym_nonlocal] = ACTIONS(59), - [anon_sym_exec] = ACTIONS(61), - [anon_sym_type] = ACTIONS(63), - [anon_sym_class] = ACTIONS(101), - [anon_sym_AT] = ACTIONS(67), - [anon_sym_not] = ACTIONS(69), - [anon_sym_TILDE] = ACTIONS(47), - [anon_sym_lambda] = ACTIONS(71), - [anon_sym_yield] = ACTIONS(73), - [sym_ellipsis] = ACTIONS(75), - [sym_integer] = ACTIONS(77), - [sym_float] = ACTIONS(75), - [anon_sym_await] = ACTIONS(79), - [sym_true] = ACTIONS(77), - [sym_false] = ACTIONS(77), - [sym_none] = ACTIONS(77), + [anon_sym_lazy] = ACTIONS(9), + [anon_sym_import] = ACTIONS(11), + [anon_sym_from] = ACTIONS(13), + [anon_sym_LPAREN] = ACTIONS(15), + [anon_sym_STAR] = ACTIONS(17), + [anon_sym_print] = ACTIONS(19), + [anon_sym_assert] = ACTIONS(21), + [anon_sym_return] = ACTIONS(23), + [anon_sym_del] = ACTIONS(25), + [anon_sym_raise] = ACTIONS(27), + [anon_sym_pass] = ACTIONS(29), + [anon_sym_break] = ACTIONS(31), + [anon_sym_continue] = ACTIONS(33), + [anon_sym_if] = ACTIONS(87), + [anon_sym_async] = ACTIONS(89), + [anon_sym_for] = ACTIONS(91), + [anon_sym_while] = ACTIONS(93), + [anon_sym_try] = ACTIONS(95), + [anon_sym_with] = ACTIONS(97), + [anon_sym_match] = ACTIONS(99), + [anon_sym_DASH] = ACTIONS(49), + [anon_sym_PLUS] = ACTIONS(49), + [anon_sym_LBRACK] = ACTIONS(51), + [anon_sym_LBRACE] = ACTIONS(53), + [anon_sym_STAR_STAR] = ACTIONS(55), + [anon_sym_def] = ACTIONS(101), + [anon_sym_global] = ACTIONS(59), + [anon_sym_nonlocal] = ACTIONS(61), + [anon_sym_exec] = ACTIONS(63), + [anon_sym_type] = ACTIONS(65), + [anon_sym_class] = ACTIONS(103), + [anon_sym_AT] = ACTIONS(69), + [anon_sym_not] = ACTIONS(71), + [anon_sym_TILDE] = ACTIONS(49), + [anon_sym_lambda] = ACTIONS(73), + [anon_sym_yield] = ACTIONS(75), + [sym_ellipsis] = ACTIONS(77), + [sym_integer] = ACTIONS(79), + [sym_float] = ACTIONS(77), + [anon_sym_await] = ACTIONS(81), + [sym_true] = ACTIONS(79), + [sym_false] = ACTIONS(79), + [sym_none] = ACTIONS(79), [sym_comment] = ACTIONS(3), - [sym__dedent] = ACTIONS(107), - [sym__string_start] = ACTIONS(81), - [sym__template_string_start] = ACTIONS(83), + [sym__dedent] = ACTIONS(109), + [sym__string_start] = ACTIONS(83), + [sym__template_string_start] = ACTIONS(85), }, [STATE(16)] = { - [sym__statement] = STATE(63), - [sym__simple_statements] = STATE(63), + [sym__statement] = STATE(61), + [sym__simple_statements] = STATE(61), [sym_import_statement] = STATE(1332), [sym_future_import_statement] = STATE(1332), [sym_import_from_statement] = STATE(1332), [sym_print_statement] = STATE(1332), [sym_assert_statement] = STATE(1332), [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1158), + [sym_named_expression] = STATE(1156), [sym_return_statement] = STATE(1332), [sym_delete_statement] = STATE(1332), [sym_raise_statement] = STATE(1332), [sym_pass_statement] = STATE(1332), [sym_break_statement] = STATE(1332), [sym_continue_statement] = STATE(1332), - [sym_if_statement] = STATE(63), - [sym_for_statement] = STATE(63), - [sym_while_statement] = STATE(63), - [sym_try_statement] = STATE(63), - [sym_with_statement] = STATE(63), - [sym_match_statement] = STATE(63), - [sym_function_definition] = STATE(63), - [sym_list_splat] = STATE(1549), - [sym_dictionary_splat] = STATE(1549), + [sym_if_statement] = STATE(61), + [sym_for_statement] = STATE(61), + [sym_while_statement] = STATE(61), + [sym_try_statement] = STATE(61), + [sym_with_statement] = STATE(61), + [sym_match_statement] = STATE(61), + [sym_function_definition] = STATE(61), + [sym_list_splat] = STATE(1520), + [sym_dictionary_splat] = STATE(1520), [sym_global_statement] = STATE(1332), [sym_nonlocal_statement] = STATE(1332), [sym_exec_statement] = STATE(1332), [sym_type_alias_statement] = STATE(1332), - [sym_class_definition] = STATE(63), - [sym_decorated_definition] = STATE(63), - [sym_decorator] = STATE(1113), - [sym_block] = STATE(532), - [sym_expression_list] = STATE(1551), - [sym_pattern] = STATE(1013), - [sym_tuple_pattern] = STATE(999), - [sym_list_pattern] = STATE(999), - [sym_list_splat_pattern] = STATE(999), - [sym_expression] = STATE(1185), - [sym_primary_expression] = STATE(779), - [sym_not_operator] = STATE(1158), - [sym_boolean_operator] = STATE(1158), - [sym_binary_operator] = STATE(908), - [sym_unary_operator] = STATE(908), - [sym_comparison_operator] = STATE(1158), - [sym_lambda] = STATE(1158), - [sym_assignment] = STATE(1551), - [sym_augmented_assignment] = STATE(1551), - [sym_pattern_list] = STATE(1024), - [sym_yield] = STATE(1551), - [sym_attribute] = STATE(494), - [sym_subscript] = STATE(494), - [sym_call] = STATE(908), - [sym_list] = STATE(908), - [sym_set] = STATE(908), - [sym_tuple] = STATE(908), - [sym_dictionary] = STATE(908), - [sym_list_comprehension] = STATE(908), - [sym_dictionary_comprehension] = STATE(908), - [sym_set_comprehension] = STATE(908), - [sym_generator_expression] = STATE(908), - [sym_parenthesized_expression] = STATE(908), - [sym_conditional_expression] = STATE(1158), - [sym_concatenated_string] = STATE(908), - [sym_string] = STATE(782), - [sym_concatenated_template_string] = STATE(908), - [sym_template_string] = STATE(763), - [sym_await] = STATE(908), - [aux_sym_module_repeat1] = STATE(63), - [aux_sym_decorated_definition_repeat1] = STATE(1113), + [sym_class_definition] = STATE(61), + [sym_decorated_definition] = STATE(61), + [sym_decorator] = STATE(1127), + [sym_block] = STATE(591), + [sym_expression_list] = STATE(1522), + [sym_pattern] = STATE(1017), + [sym_tuple_pattern] = STATE(1001), + [sym_list_pattern] = STATE(1001), + [sym_list_splat_pattern] = STATE(1001), + [sym_expression] = STATE(1176), + [sym_primary_expression] = STATE(765), + [sym_not_operator] = STATE(1156), + [sym_boolean_operator] = STATE(1156), + [sym_binary_operator] = STATE(920), + [sym_unary_operator] = STATE(920), + [sym_comparison_operator] = STATE(1156), + [sym_lambda] = STATE(1156), + [sym_assignment] = STATE(1522), + [sym_augmented_assignment] = STATE(1522), + [sym_pattern_list] = STATE(1026), + [sym_yield] = STATE(1522), + [sym_attribute] = STATE(582), + [sym_subscript] = STATE(582), + [sym_call] = STATE(920), + [sym_list] = STATE(920), + [sym_set] = STATE(920), + [sym_tuple] = STATE(920), + [sym_dictionary] = STATE(920), + [sym_list_comprehension] = STATE(920), + [sym_dictionary_comprehension] = STATE(920), + [sym_set_comprehension] = STATE(920), + [sym_generator_expression] = STATE(920), + [sym_parenthesized_expression] = STATE(920), + [sym_conditional_expression] = STATE(1156), + [sym_concatenated_string] = STATE(920), + [sym_string] = STATE(775), + [sym_concatenated_template_string] = STATE(920), + [sym_template_string] = STATE(769), + [sym_await] = STATE(920), + [aux_sym_module_repeat1] = STATE(61), + [aux_sym_decorated_definition_repeat1] = STATE(1127), [sym_identifier] = ACTIONS(7), - [anon_sym_import] = ACTIONS(9), - [anon_sym_from] = ACTIONS(11), - [anon_sym_LPAREN] = ACTIONS(13), - [anon_sym_STAR] = ACTIONS(15), - [anon_sym_print] = ACTIONS(17), - [anon_sym_assert] = ACTIONS(19), - [anon_sym_return] = ACTIONS(21), - [anon_sym_del] = ACTIONS(23), - [anon_sym_raise] = ACTIONS(25), - [anon_sym_pass] = ACTIONS(27), - [anon_sym_break] = ACTIONS(29), - [anon_sym_continue] = ACTIONS(31), - [anon_sym_if] = ACTIONS(85), - [anon_sym_async] = ACTIONS(87), - [anon_sym_for] = ACTIONS(89), - [anon_sym_while] = ACTIONS(91), - [anon_sym_try] = ACTIONS(93), - [anon_sym_with] = ACTIONS(95), - [anon_sym_match] = ACTIONS(97), - [anon_sym_DASH] = ACTIONS(47), - [anon_sym_PLUS] = ACTIONS(47), - [anon_sym_LBRACK] = ACTIONS(49), - [anon_sym_LBRACE] = ACTIONS(51), - [anon_sym_STAR_STAR] = ACTIONS(53), - [anon_sym_def] = ACTIONS(99), - [anon_sym_global] = ACTIONS(57), - [anon_sym_nonlocal] = ACTIONS(59), - [anon_sym_exec] = ACTIONS(61), - [anon_sym_type] = ACTIONS(63), - [anon_sym_class] = ACTIONS(101), - [anon_sym_AT] = ACTIONS(67), - [anon_sym_not] = ACTIONS(69), - [anon_sym_TILDE] = ACTIONS(47), - [anon_sym_lambda] = ACTIONS(71), - [anon_sym_yield] = ACTIONS(73), - [sym_ellipsis] = ACTIONS(75), - [sym_integer] = ACTIONS(77), - [sym_float] = ACTIONS(75), - [anon_sym_await] = ACTIONS(79), - [sym_true] = ACTIONS(77), - [sym_false] = ACTIONS(77), - [sym_none] = ACTIONS(77), + [anon_sym_lazy] = ACTIONS(9), + [anon_sym_import] = ACTIONS(11), + [anon_sym_from] = ACTIONS(13), + [anon_sym_LPAREN] = ACTIONS(15), + [anon_sym_STAR] = ACTIONS(17), + [anon_sym_print] = ACTIONS(19), + [anon_sym_assert] = ACTIONS(21), + [anon_sym_return] = ACTIONS(23), + [anon_sym_del] = ACTIONS(25), + [anon_sym_raise] = ACTIONS(27), + [anon_sym_pass] = ACTIONS(29), + [anon_sym_break] = ACTIONS(31), + [anon_sym_continue] = ACTIONS(33), + [anon_sym_if] = ACTIONS(87), + [anon_sym_async] = ACTIONS(89), + [anon_sym_for] = ACTIONS(91), + [anon_sym_while] = ACTIONS(93), + [anon_sym_try] = ACTIONS(95), + [anon_sym_with] = ACTIONS(97), + [anon_sym_match] = ACTIONS(99), + [anon_sym_DASH] = ACTIONS(49), + [anon_sym_PLUS] = ACTIONS(49), + [anon_sym_LBRACK] = ACTIONS(51), + [anon_sym_LBRACE] = ACTIONS(53), + [anon_sym_STAR_STAR] = ACTIONS(55), + [anon_sym_def] = ACTIONS(101), + [anon_sym_global] = ACTIONS(59), + [anon_sym_nonlocal] = ACTIONS(61), + [anon_sym_exec] = ACTIONS(63), + [anon_sym_type] = ACTIONS(65), + [anon_sym_class] = ACTIONS(103), + [anon_sym_AT] = ACTIONS(69), + [anon_sym_not] = ACTIONS(71), + [anon_sym_TILDE] = ACTIONS(49), + [anon_sym_lambda] = ACTIONS(73), + [anon_sym_yield] = ACTIONS(75), + [sym_ellipsis] = ACTIONS(77), + [sym_integer] = ACTIONS(79), + [sym_float] = ACTIONS(77), + [anon_sym_await] = ACTIONS(81), + [sym_true] = ACTIONS(79), + [sym_false] = ACTIONS(79), + [sym_none] = ACTIONS(79), [sym_comment] = ACTIONS(3), - [sym__dedent] = ACTIONS(107), - [sym__string_start] = ACTIONS(81), - [sym__template_string_start] = ACTIONS(83), + [sym__dedent] = ACTIONS(109), + [sym__string_start] = ACTIONS(83), + [sym__template_string_start] = ACTIONS(85), }, [STATE(17)] = { - [sym__statement] = STATE(63), - [sym__simple_statements] = STATE(63), + [sym__statement] = STATE(61), + [sym__simple_statements] = STATE(61), [sym_import_statement] = STATE(1332), [sym_future_import_statement] = STATE(1332), [sym_import_from_statement] = STATE(1332), [sym_print_statement] = STATE(1332), [sym_assert_statement] = STATE(1332), [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1158), + [sym_named_expression] = STATE(1156), [sym_return_statement] = STATE(1332), [sym_delete_statement] = STATE(1332), [sym_raise_statement] = STATE(1332), [sym_pass_statement] = STATE(1332), [sym_break_statement] = STATE(1332), [sym_continue_statement] = STATE(1332), - [sym_if_statement] = STATE(63), - [sym_for_statement] = STATE(63), - [sym_while_statement] = STATE(63), - [sym_try_statement] = STATE(63), - [sym_with_statement] = STATE(63), - [sym_match_statement] = STATE(63), - [sym_function_definition] = STATE(63), - [sym_list_splat] = STATE(1549), - [sym_dictionary_splat] = STATE(1549), + [sym_if_statement] = STATE(61), + [sym_for_statement] = STATE(61), + [sym_while_statement] = STATE(61), + [sym_try_statement] = STATE(61), + [sym_with_statement] = STATE(61), + [sym_match_statement] = STATE(61), + [sym_function_definition] = STATE(61), + [sym_list_splat] = STATE(1520), + [sym_dictionary_splat] = STATE(1520), [sym_global_statement] = STATE(1332), [sym_nonlocal_statement] = STATE(1332), [sym_exec_statement] = STATE(1332), [sym_type_alias_statement] = STATE(1332), - [sym_class_definition] = STATE(63), - [sym_decorated_definition] = STATE(63), - [sym_decorator] = STATE(1113), - [sym_block] = STATE(533), - [sym_expression_list] = STATE(1551), - [sym_pattern] = STATE(1013), - [sym_tuple_pattern] = STATE(999), - [sym_list_pattern] = STATE(999), - [sym_list_splat_pattern] = STATE(999), - [sym_expression] = STATE(1185), - [sym_primary_expression] = STATE(779), - [sym_not_operator] = STATE(1158), - [sym_boolean_operator] = STATE(1158), - [sym_binary_operator] = STATE(908), - [sym_unary_operator] = STATE(908), - [sym_comparison_operator] = STATE(1158), - [sym_lambda] = STATE(1158), - [sym_assignment] = STATE(1551), - [sym_augmented_assignment] = STATE(1551), - [sym_pattern_list] = STATE(1024), - [sym_yield] = STATE(1551), - [sym_attribute] = STATE(494), - [sym_subscript] = STATE(494), - [sym_call] = STATE(908), - [sym_list] = STATE(908), - [sym_set] = STATE(908), - [sym_tuple] = STATE(908), - [sym_dictionary] = STATE(908), - [sym_list_comprehension] = STATE(908), - [sym_dictionary_comprehension] = STATE(908), - [sym_set_comprehension] = STATE(908), - [sym_generator_expression] = STATE(908), - [sym_parenthesized_expression] = STATE(908), - [sym_conditional_expression] = STATE(1158), - [sym_concatenated_string] = STATE(908), - [sym_string] = STATE(782), - [sym_concatenated_template_string] = STATE(908), - [sym_template_string] = STATE(763), - [sym_await] = STATE(908), - [aux_sym_module_repeat1] = STATE(63), - [aux_sym_decorated_definition_repeat1] = STATE(1113), + [sym_class_definition] = STATE(61), + [sym_decorated_definition] = STATE(61), + [sym_decorator] = STATE(1127), + [sym_block] = STATE(592), + [sym_expression_list] = STATE(1522), + [sym_pattern] = STATE(1017), + [sym_tuple_pattern] = STATE(1001), + [sym_list_pattern] = STATE(1001), + [sym_list_splat_pattern] = STATE(1001), + [sym_expression] = STATE(1176), + [sym_primary_expression] = STATE(765), + [sym_not_operator] = STATE(1156), + [sym_boolean_operator] = STATE(1156), + [sym_binary_operator] = STATE(920), + [sym_unary_operator] = STATE(920), + [sym_comparison_operator] = STATE(1156), + [sym_lambda] = STATE(1156), + [sym_assignment] = STATE(1522), + [sym_augmented_assignment] = STATE(1522), + [sym_pattern_list] = STATE(1026), + [sym_yield] = STATE(1522), + [sym_attribute] = STATE(582), + [sym_subscript] = STATE(582), + [sym_call] = STATE(920), + [sym_list] = STATE(920), + [sym_set] = STATE(920), + [sym_tuple] = STATE(920), + [sym_dictionary] = STATE(920), + [sym_list_comprehension] = STATE(920), + [sym_dictionary_comprehension] = STATE(920), + [sym_set_comprehension] = STATE(920), + [sym_generator_expression] = STATE(920), + [sym_parenthesized_expression] = STATE(920), + [sym_conditional_expression] = STATE(1156), + [sym_concatenated_string] = STATE(920), + [sym_string] = STATE(775), + [sym_concatenated_template_string] = STATE(920), + [sym_template_string] = STATE(769), + [sym_await] = STATE(920), + [aux_sym_module_repeat1] = STATE(61), + [aux_sym_decorated_definition_repeat1] = STATE(1127), [sym_identifier] = ACTIONS(7), - [anon_sym_import] = ACTIONS(9), - [anon_sym_from] = ACTIONS(11), - [anon_sym_LPAREN] = ACTIONS(13), - [anon_sym_STAR] = ACTIONS(15), - [anon_sym_print] = ACTIONS(17), - [anon_sym_assert] = ACTIONS(19), - [anon_sym_return] = ACTIONS(21), - [anon_sym_del] = ACTIONS(23), - [anon_sym_raise] = ACTIONS(25), - [anon_sym_pass] = ACTIONS(27), - [anon_sym_break] = ACTIONS(29), - [anon_sym_continue] = ACTIONS(31), - [anon_sym_if] = ACTIONS(85), - [anon_sym_async] = ACTIONS(87), - [anon_sym_for] = ACTIONS(89), - [anon_sym_while] = ACTIONS(91), - [anon_sym_try] = ACTIONS(93), - [anon_sym_with] = ACTIONS(95), - [anon_sym_match] = ACTIONS(97), - [anon_sym_DASH] = ACTIONS(47), - [anon_sym_PLUS] = ACTIONS(47), - [anon_sym_LBRACK] = ACTIONS(49), - [anon_sym_LBRACE] = ACTIONS(51), - [anon_sym_STAR_STAR] = ACTIONS(53), - [anon_sym_def] = ACTIONS(99), - [anon_sym_global] = ACTIONS(57), - [anon_sym_nonlocal] = ACTIONS(59), - [anon_sym_exec] = ACTIONS(61), - [anon_sym_type] = ACTIONS(63), - [anon_sym_class] = ACTIONS(101), - [anon_sym_AT] = ACTIONS(67), - [anon_sym_not] = ACTIONS(69), - [anon_sym_TILDE] = ACTIONS(47), - [anon_sym_lambda] = ACTIONS(71), - [anon_sym_yield] = ACTIONS(73), - [sym_ellipsis] = ACTIONS(75), - [sym_integer] = ACTIONS(77), - [sym_float] = ACTIONS(75), - [anon_sym_await] = ACTIONS(79), - [sym_true] = ACTIONS(77), - [sym_false] = ACTIONS(77), - [sym_none] = ACTIONS(77), + [anon_sym_lazy] = ACTIONS(9), + [anon_sym_import] = ACTIONS(11), + [anon_sym_from] = ACTIONS(13), + [anon_sym_LPAREN] = ACTIONS(15), + [anon_sym_STAR] = ACTIONS(17), + [anon_sym_print] = ACTIONS(19), + [anon_sym_assert] = ACTIONS(21), + [anon_sym_return] = ACTIONS(23), + [anon_sym_del] = ACTIONS(25), + [anon_sym_raise] = ACTIONS(27), + [anon_sym_pass] = ACTIONS(29), + [anon_sym_break] = ACTIONS(31), + [anon_sym_continue] = ACTIONS(33), + [anon_sym_if] = ACTIONS(87), + [anon_sym_async] = ACTIONS(89), + [anon_sym_for] = ACTIONS(91), + [anon_sym_while] = ACTIONS(93), + [anon_sym_try] = ACTIONS(95), + [anon_sym_with] = ACTIONS(97), + [anon_sym_match] = ACTIONS(99), + [anon_sym_DASH] = ACTIONS(49), + [anon_sym_PLUS] = ACTIONS(49), + [anon_sym_LBRACK] = ACTIONS(51), + [anon_sym_LBRACE] = ACTIONS(53), + [anon_sym_STAR_STAR] = ACTIONS(55), + [anon_sym_def] = ACTIONS(101), + [anon_sym_global] = ACTIONS(59), + [anon_sym_nonlocal] = ACTIONS(61), + [anon_sym_exec] = ACTIONS(63), + [anon_sym_type] = ACTIONS(65), + [anon_sym_class] = ACTIONS(103), + [anon_sym_AT] = ACTIONS(69), + [anon_sym_not] = ACTIONS(71), + [anon_sym_TILDE] = ACTIONS(49), + [anon_sym_lambda] = ACTIONS(73), + [anon_sym_yield] = ACTIONS(75), + [sym_ellipsis] = ACTIONS(77), + [sym_integer] = ACTIONS(79), + [sym_float] = ACTIONS(77), + [anon_sym_await] = ACTIONS(81), + [sym_true] = ACTIONS(79), + [sym_false] = ACTIONS(79), + [sym_none] = ACTIONS(79), [sym_comment] = ACTIONS(3), - [sym__dedent] = ACTIONS(107), - [sym__string_start] = ACTIONS(81), - [sym__template_string_start] = ACTIONS(83), + [sym__dedent] = ACTIONS(109), + [sym__string_start] = ACTIONS(83), + [sym__template_string_start] = ACTIONS(85), }, [STATE(18)] = { - [sym__statement] = STATE(63), - [sym__simple_statements] = STATE(63), + [sym__statement] = STATE(61), + [sym__simple_statements] = STATE(61), [sym_import_statement] = STATE(1332), [sym_future_import_statement] = STATE(1332), [sym_import_from_statement] = STATE(1332), [sym_print_statement] = STATE(1332), [sym_assert_statement] = STATE(1332), [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1158), + [sym_named_expression] = STATE(1156), [sym_return_statement] = STATE(1332), [sym_delete_statement] = STATE(1332), [sym_raise_statement] = STATE(1332), [sym_pass_statement] = STATE(1332), [sym_break_statement] = STATE(1332), [sym_continue_statement] = STATE(1332), - [sym_if_statement] = STATE(63), - [sym_for_statement] = STATE(63), - [sym_while_statement] = STATE(63), - [sym_try_statement] = STATE(63), - [sym_with_statement] = STATE(63), - [sym_match_statement] = STATE(63), - [sym_function_definition] = STATE(63), - [sym_list_splat] = STATE(1549), - [sym_dictionary_splat] = STATE(1549), + [sym_if_statement] = STATE(61), + [sym_for_statement] = STATE(61), + [sym_while_statement] = STATE(61), + [sym_try_statement] = STATE(61), + [sym_with_statement] = STATE(61), + [sym_match_statement] = STATE(61), + [sym_function_definition] = STATE(61), + [sym_list_splat] = STATE(1520), + [sym_dictionary_splat] = STATE(1520), [sym_global_statement] = STATE(1332), [sym_nonlocal_statement] = STATE(1332), [sym_exec_statement] = STATE(1332), [sym_type_alias_statement] = STATE(1332), - [sym_class_definition] = STATE(63), - [sym_decorated_definition] = STATE(63), - [sym_decorator] = STATE(1113), - [sym_block] = STATE(498), - [sym_expression_list] = STATE(1551), - [sym_pattern] = STATE(1013), - [sym_tuple_pattern] = STATE(999), - [sym_list_pattern] = STATE(999), - [sym_list_splat_pattern] = STATE(999), - [sym_expression] = STATE(1185), - [sym_primary_expression] = STATE(779), - [sym_not_operator] = STATE(1158), - [sym_boolean_operator] = STATE(1158), - [sym_binary_operator] = STATE(908), - [sym_unary_operator] = STATE(908), - [sym_comparison_operator] = STATE(1158), - [sym_lambda] = STATE(1158), - [sym_assignment] = STATE(1551), - [sym_augmented_assignment] = STATE(1551), - [sym_pattern_list] = STATE(1024), - [sym_yield] = STATE(1551), - [sym_attribute] = STATE(494), - [sym_subscript] = STATE(494), - [sym_call] = STATE(908), - [sym_list] = STATE(908), - [sym_set] = STATE(908), - [sym_tuple] = STATE(908), - [sym_dictionary] = STATE(908), - [sym_list_comprehension] = STATE(908), - [sym_dictionary_comprehension] = STATE(908), - [sym_set_comprehension] = STATE(908), - [sym_generator_expression] = STATE(908), - [sym_parenthesized_expression] = STATE(908), - [sym_conditional_expression] = STATE(1158), - [sym_concatenated_string] = STATE(908), - [sym_string] = STATE(782), - [sym_concatenated_template_string] = STATE(908), - [sym_template_string] = STATE(763), - [sym_await] = STATE(908), - [aux_sym_module_repeat1] = STATE(63), - [aux_sym_decorated_definition_repeat1] = STATE(1113), + [sym_class_definition] = STATE(61), + [sym_decorated_definition] = STATE(61), + [sym_decorator] = STATE(1127), + [sym_block] = STATE(507), + [sym_expression_list] = STATE(1522), + [sym_pattern] = STATE(1017), + [sym_tuple_pattern] = STATE(1001), + [sym_list_pattern] = STATE(1001), + [sym_list_splat_pattern] = STATE(1001), + [sym_expression] = STATE(1176), + [sym_primary_expression] = STATE(765), + [sym_not_operator] = STATE(1156), + [sym_boolean_operator] = STATE(1156), + [sym_binary_operator] = STATE(920), + [sym_unary_operator] = STATE(920), + [sym_comparison_operator] = STATE(1156), + [sym_lambda] = STATE(1156), + [sym_assignment] = STATE(1522), + [sym_augmented_assignment] = STATE(1522), + [sym_pattern_list] = STATE(1026), + [sym_yield] = STATE(1522), + [sym_attribute] = STATE(582), + [sym_subscript] = STATE(582), + [sym_call] = STATE(920), + [sym_list] = STATE(920), + [sym_set] = STATE(920), + [sym_tuple] = STATE(920), + [sym_dictionary] = STATE(920), + [sym_list_comprehension] = STATE(920), + [sym_dictionary_comprehension] = STATE(920), + [sym_set_comprehension] = STATE(920), + [sym_generator_expression] = STATE(920), + [sym_parenthesized_expression] = STATE(920), + [sym_conditional_expression] = STATE(1156), + [sym_concatenated_string] = STATE(920), + [sym_string] = STATE(775), + [sym_concatenated_template_string] = STATE(920), + [sym_template_string] = STATE(769), + [sym_await] = STATE(920), + [aux_sym_module_repeat1] = STATE(61), + [aux_sym_decorated_definition_repeat1] = STATE(1127), [sym_identifier] = ACTIONS(7), - [anon_sym_import] = ACTIONS(9), - [anon_sym_from] = ACTIONS(11), - [anon_sym_LPAREN] = ACTIONS(13), - [anon_sym_STAR] = ACTIONS(15), - [anon_sym_print] = ACTIONS(17), - [anon_sym_assert] = ACTIONS(19), - [anon_sym_return] = ACTIONS(21), - [anon_sym_del] = ACTIONS(23), - [anon_sym_raise] = ACTIONS(25), - [anon_sym_pass] = ACTIONS(27), - [anon_sym_break] = ACTIONS(29), - [anon_sym_continue] = ACTIONS(31), - [anon_sym_if] = ACTIONS(85), - [anon_sym_async] = ACTIONS(87), - [anon_sym_for] = ACTIONS(89), - [anon_sym_while] = ACTIONS(91), - [anon_sym_try] = ACTIONS(93), - [anon_sym_with] = ACTIONS(95), - [anon_sym_match] = ACTIONS(97), - [anon_sym_DASH] = ACTIONS(47), - [anon_sym_PLUS] = ACTIONS(47), - [anon_sym_LBRACK] = ACTIONS(49), - [anon_sym_LBRACE] = ACTIONS(51), - [anon_sym_STAR_STAR] = ACTIONS(53), - [anon_sym_def] = ACTIONS(99), - [anon_sym_global] = ACTIONS(57), - [anon_sym_nonlocal] = ACTIONS(59), - [anon_sym_exec] = ACTIONS(61), - [anon_sym_type] = ACTIONS(63), - [anon_sym_class] = ACTIONS(101), - [anon_sym_AT] = ACTIONS(67), - [anon_sym_not] = ACTIONS(69), - [anon_sym_TILDE] = ACTIONS(47), - [anon_sym_lambda] = ACTIONS(71), - [anon_sym_yield] = ACTIONS(73), - [sym_ellipsis] = ACTIONS(75), - [sym_integer] = ACTIONS(77), - [sym_float] = ACTIONS(75), - [anon_sym_await] = ACTIONS(79), - [sym_true] = ACTIONS(77), - [sym_false] = ACTIONS(77), - [sym_none] = ACTIONS(77), + [anon_sym_lazy] = ACTIONS(9), + [anon_sym_import] = ACTIONS(11), + [anon_sym_from] = ACTIONS(13), + [anon_sym_LPAREN] = ACTIONS(15), + [anon_sym_STAR] = ACTIONS(17), + [anon_sym_print] = ACTIONS(19), + [anon_sym_assert] = ACTIONS(21), + [anon_sym_return] = ACTIONS(23), + [anon_sym_del] = ACTIONS(25), + [anon_sym_raise] = ACTIONS(27), + [anon_sym_pass] = ACTIONS(29), + [anon_sym_break] = ACTIONS(31), + [anon_sym_continue] = ACTIONS(33), + [anon_sym_if] = ACTIONS(87), + [anon_sym_async] = ACTIONS(89), + [anon_sym_for] = ACTIONS(91), + [anon_sym_while] = ACTIONS(93), + [anon_sym_try] = ACTIONS(95), + [anon_sym_with] = ACTIONS(97), + [anon_sym_match] = ACTIONS(99), + [anon_sym_DASH] = ACTIONS(49), + [anon_sym_PLUS] = ACTIONS(49), + [anon_sym_LBRACK] = ACTIONS(51), + [anon_sym_LBRACE] = ACTIONS(53), + [anon_sym_STAR_STAR] = ACTIONS(55), + [anon_sym_def] = ACTIONS(101), + [anon_sym_global] = ACTIONS(59), + [anon_sym_nonlocal] = ACTIONS(61), + [anon_sym_exec] = ACTIONS(63), + [anon_sym_type] = ACTIONS(65), + [anon_sym_class] = ACTIONS(103), + [anon_sym_AT] = ACTIONS(69), + [anon_sym_not] = ACTIONS(71), + [anon_sym_TILDE] = ACTIONS(49), + [anon_sym_lambda] = ACTIONS(73), + [anon_sym_yield] = ACTIONS(75), + [sym_ellipsis] = ACTIONS(77), + [sym_integer] = ACTIONS(79), + [sym_float] = ACTIONS(77), + [anon_sym_await] = ACTIONS(81), + [sym_true] = ACTIONS(79), + [sym_false] = ACTIONS(79), + [sym_none] = ACTIONS(79), [sym_comment] = ACTIONS(3), - [sym__dedent] = ACTIONS(107), - [sym__string_start] = ACTIONS(81), - [sym__template_string_start] = ACTIONS(83), + [sym__dedent] = ACTIONS(109), + [sym__string_start] = ACTIONS(83), + [sym__template_string_start] = ACTIONS(85), }, [STATE(19)] = { - [sym__statement] = STATE(63), - [sym__simple_statements] = STATE(63), + [sym__statement] = STATE(61), + [sym__simple_statements] = STATE(61), [sym_import_statement] = STATE(1332), [sym_future_import_statement] = STATE(1332), [sym_import_from_statement] = STATE(1332), [sym_print_statement] = STATE(1332), [sym_assert_statement] = STATE(1332), [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1158), + [sym_named_expression] = STATE(1156), [sym_return_statement] = STATE(1332), [sym_delete_statement] = STATE(1332), [sym_raise_statement] = STATE(1332), [sym_pass_statement] = STATE(1332), [sym_break_statement] = STATE(1332), [sym_continue_statement] = STATE(1332), - [sym_if_statement] = STATE(63), - [sym_for_statement] = STATE(63), - [sym_while_statement] = STATE(63), - [sym_try_statement] = STATE(63), - [sym_with_statement] = STATE(63), - [sym_match_statement] = STATE(63), - [sym_function_definition] = STATE(63), - [sym_list_splat] = STATE(1549), - [sym_dictionary_splat] = STATE(1549), + [sym_if_statement] = STATE(61), + [sym_for_statement] = STATE(61), + [sym_while_statement] = STATE(61), + [sym_try_statement] = STATE(61), + [sym_with_statement] = STATE(61), + [sym_match_statement] = STATE(61), + [sym_function_definition] = STATE(61), + [sym_list_splat] = STATE(1520), + [sym_dictionary_splat] = STATE(1520), [sym_global_statement] = STATE(1332), [sym_nonlocal_statement] = STATE(1332), [sym_exec_statement] = STATE(1332), [sym_type_alias_statement] = STATE(1332), - [sym_class_definition] = STATE(63), - [sym_decorated_definition] = STATE(63), - [sym_decorator] = STATE(1113), - [sym_block] = STATE(476), - [sym_expression_list] = STATE(1551), - [sym_pattern] = STATE(1013), - [sym_tuple_pattern] = STATE(999), - [sym_list_pattern] = STATE(999), - [sym_list_splat_pattern] = STATE(999), - [sym_expression] = STATE(1185), - [sym_primary_expression] = STATE(779), - [sym_not_operator] = STATE(1158), - [sym_boolean_operator] = STATE(1158), - [sym_binary_operator] = STATE(908), - [sym_unary_operator] = STATE(908), - [sym_comparison_operator] = STATE(1158), - [sym_lambda] = STATE(1158), - [sym_assignment] = STATE(1551), - [sym_augmented_assignment] = STATE(1551), - [sym_pattern_list] = STATE(1024), - [sym_yield] = STATE(1551), - [sym_attribute] = STATE(494), - [sym_subscript] = STATE(494), - [sym_call] = STATE(908), - [sym_list] = STATE(908), - [sym_set] = STATE(908), - [sym_tuple] = STATE(908), - [sym_dictionary] = STATE(908), - [sym_list_comprehension] = STATE(908), - [sym_dictionary_comprehension] = STATE(908), - [sym_set_comprehension] = STATE(908), - [sym_generator_expression] = STATE(908), - [sym_parenthesized_expression] = STATE(908), - [sym_conditional_expression] = STATE(1158), - [sym_concatenated_string] = STATE(908), - [sym_string] = STATE(782), - [sym_concatenated_template_string] = STATE(908), - [sym_template_string] = STATE(763), - [sym_await] = STATE(908), - [aux_sym_module_repeat1] = STATE(63), - [aux_sym_decorated_definition_repeat1] = STATE(1113), + [sym_class_definition] = STATE(61), + [sym_decorated_definition] = STATE(61), + [sym_decorator] = STATE(1127), + [sym_block] = STATE(462), + [sym_expression_list] = STATE(1522), + [sym_pattern] = STATE(1017), + [sym_tuple_pattern] = STATE(1001), + [sym_list_pattern] = STATE(1001), + [sym_list_splat_pattern] = STATE(1001), + [sym_expression] = STATE(1176), + [sym_primary_expression] = STATE(765), + [sym_not_operator] = STATE(1156), + [sym_boolean_operator] = STATE(1156), + [sym_binary_operator] = STATE(920), + [sym_unary_operator] = STATE(920), + [sym_comparison_operator] = STATE(1156), + [sym_lambda] = STATE(1156), + [sym_assignment] = STATE(1522), + [sym_augmented_assignment] = STATE(1522), + [sym_pattern_list] = STATE(1026), + [sym_yield] = STATE(1522), + [sym_attribute] = STATE(582), + [sym_subscript] = STATE(582), + [sym_call] = STATE(920), + [sym_list] = STATE(920), + [sym_set] = STATE(920), + [sym_tuple] = STATE(920), + [sym_dictionary] = STATE(920), + [sym_list_comprehension] = STATE(920), + [sym_dictionary_comprehension] = STATE(920), + [sym_set_comprehension] = STATE(920), + [sym_generator_expression] = STATE(920), + [sym_parenthesized_expression] = STATE(920), + [sym_conditional_expression] = STATE(1156), + [sym_concatenated_string] = STATE(920), + [sym_string] = STATE(775), + [sym_concatenated_template_string] = STATE(920), + [sym_template_string] = STATE(769), + [sym_await] = STATE(920), + [aux_sym_module_repeat1] = STATE(61), + [aux_sym_decorated_definition_repeat1] = STATE(1127), [sym_identifier] = ACTIONS(7), - [anon_sym_import] = ACTIONS(9), - [anon_sym_from] = ACTIONS(11), - [anon_sym_LPAREN] = ACTIONS(13), - [anon_sym_STAR] = ACTIONS(15), - [anon_sym_print] = ACTIONS(17), - [anon_sym_assert] = ACTIONS(19), - [anon_sym_return] = ACTIONS(21), - [anon_sym_del] = ACTIONS(23), - [anon_sym_raise] = ACTIONS(25), - [anon_sym_pass] = ACTIONS(27), - [anon_sym_break] = ACTIONS(29), - [anon_sym_continue] = ACTIONS(31), - [anon_sym_if] = ACTIONS(85), - [anon_sym_async] = ACTIONS(87), - [anon_sym_for] = ACTIONS(89), - [anon_sym_while] = ACTIONS(91), - [anon_sym_try] = ACTIONS(93), - [anon_sym_with] = ACTIONS(95), - [anon_sym_match] = ACTIONS(97), - [anon_sym_DASH] = ACTIONS(47), - [anon_sym_PLUS] = ACTIONS(47), - [anon_sym_LBRACK] = ACTIONS(49), - [anon_sym_LBRACE] = ACTIONS(51), - [anon_sym_STAR_STAR] = ACTIONS(53), - [anon_sym_def] = ACTIONS(99), - [anon_sym_global] = ACTIONS(57), - [anon_sym_nonlocal] = ACTIONS(59), - [anon_sym_exec] = ACTIONS(61), - [anon_sym_type] = ACTIONS(63), - [anon_sym_class] = ACTIONS(101), - [anon_sym_AT] = ACTIONS(67), - [anon_sym_not] = ACTIONS(69), - [anon_sym_TILDE] = ACTIONS(47), - [anon_sym_lambda] = ACTIONS(71), - [anon_sym_yield] = ACTIONS(73), - [sym_ellipsis] = ACTIONS(75), - [sym_integer] = ACTIONS(77), - [sym_float] = ACTIONS(75), - [anon_sym_await] = ACTIONS(79), - [sym_true] = ACTIONS(77), - [sym_false] = ACTIONS(77), - [sym_none] = ACTIONS(77), + [anon_sym_lazy] = ACTIONS(9), + [anon_sym_import] = ACTIONS(11), + [anon_sym_from] = ACTIONS(13), + [anon_sym_LPAREN] = ACTIONS(15), + [anon_sym_STAR] = ACTIONS(17), + [anon_sym_print] = ACTIONS(19), + [anon_sym_assert] = ACTIONS(21), + [anon_sym_return] = ACTIONS(23), + [anon_sym_del] = ACTIONS(25), + [anon_sym_raise] = ACTIONS(27), + [anon_sym_pass] = ACTIONS(29), + [anon_sym_break] = ACTIONS(31), + [anon_sym_continue] = ACTIONS(33), + [anon_sym_if] = ACTIONS(87), + [anon_sym_async] = ACTIONS(89), + [anon_sym_for] = ACTIONS(91), + [anon_sym_while] = ACTIONS(93), + [anon_sym_try] = ACTIONS(95), + [anon_sym_with] = ACTIONS(97), + [anon_sym_match] = ACTIONS(99), + [anon_sym_DASH] = ACTIONS(49), + [anon_sym_PLUS] = ACTIONS(49), + [anon_sym_LBRACK] = ACTIONS(51), + [anon_sym_LBRACE] = ACTIONS(53), + [anon_sym_STAR_STAR] = ACTIONS(55), + [anon_sym_def] = ACTIONS(101), + [anon_sym_global] = ACTIONS(59), + [anon_sym_nonlocal] = ACTIONS(61), + [anon_sym_exec] = ACTIONS(63), + [anon_sym_type] = ACTIONS(65), + [anon_sym_class] = ACTIONS(103), + [anon_sym_AT] = ACTIONS(69), + [anon_sym_not] = ACTIONS(71), + [anon_sym_TILDE] = ACTIONS(49), + [anon_sym_lambda] = ACTIONS(73), + [anon_sym_yield] = ACTIONS(75), + [sym_ellipsis] = ACTIONS(77), + [sym_integer] = ACTIONS(79), + [sym_float] = ACTIONS(77), + [anon_sym_await] = ACTIONS(81), + [sym_true] = ACTIONS(79), + [sym_false] = ACTIONS(79), + [sym_none] = ACTIONS(79), [sym_comment] = ACTIONS(3), - [sym__dedent] = ACTIONS(107), - [sym__string_start] = ACTIONS(81), - [sym__template_string_start] = ACTIONS(83), + [sym__dedent] = ACTIONS(109), + [sym__string_start] = ACTIONS(83), + [sym__template_string_start] = ACTIONS(85), }, [STATE(20)] = { - [sym__statement] = STATE(63), - [sym__simple_statements] = STATE(63), + [sym__statement] = STATE(61), + [sym__simple_statements] = STATE(61), [sym_import_statement] = STATE(1332), [sym_future_import_statement] = STATE(1332), [sym_import_from_statement] = STATE(1332), [sym_print_statement] = STATE(1332), [sym_assert_statement] = STATE(1332), [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1158), + [sym_named_expression] = STATE(1156), [sym_return_statement] = STATE(1332), [sym_delete_statement] = STATE(1332), [sym_raise_statement] = STATE(1332), [sym_pass_statement] = STATE(1332), [sym_break_statement] = STATE(1332), [sym_continue_statement] = STATE(1332), - [sym_if_statement] = STATE(63), - [sym_for_statement] = STATE(63), - [sym_while_statement] = STATE(63), - [sym_try_statement] = STATE(63), - [sym_with_statement] = STATE(63), - [sym_match_statement] = STATE(63), - [sym_function_definition] = STATE(63), - [sym_list_splat] = STATE(1549), - [sym_dictionary_splat] = STATE(1549), + [sym_if_statement] = STATE(61), + [sym_for_statement] = STATE(61), + [sym_while_statement] = STATE(61), + [sym_try_statement] = STATE(61), + [sym_with_statement] = STATE(61), + [sym_match_statement] = STATE(61), + [sym_function_definition] = STATE(61), + [sym_list_splat] = STATE(1520), + [sym_dictionary_splat] = STATE(1520), [sym_global_statement] = STATE(1332), [sym_nonlocal_statement] = STATE(1332), [sym_exec_statement] = STATE(1332), [sym_type_alias_statement] = STATE(1332), - [sym_class_definition] = STATE(63), - [sym_decorated_definition] = STATE(63), - [sym_decorator] = STATE(1113), - [sym_block] = STATE(538), - [sym_expression_list] = STATE(1551), - [sym_pattern] = STATE(1013), - [sym_tuple_pattern] = STATE(999), - [sym_list_pattern] = STATE(999), - [sym_list_splat_pattern] = STATE(999), - [sym_expression] = STATE(1185), - [sym_primary_expression] = STATE(779), - [sym_not_operator] = STATE(1158), - [sym_boolean_operator] = STATE(1158), - [sym_binary_operator] = STATE(908), - [sym_unary_operator] = STATE(908), - [sym_comparison_operator] = STATE(1158), - [sym_lambda] = STATE(1158), - [sym_assignment] = STATE(1551), - [sym_augmented_assignment] = STATE(1551), - [sym_pattern_list] = STATE(1024), - [sym_yield] = STATE(1551), - [sym_attribute] = STATE(494), - [sym_subscript] = STATE(494), - [sym_call] = STATE(908), - [sym_list] = STATE(908), - [sym_set] = STATE(908), - [sym_tuple] = STATE(908), - [sym_dictionary] = STATE(908), - [sym_list_comprehension] = STATE(908), - [sym_dictionary_comprehension] = STATE(908), - [sym_set_comprehension] = STATE(908), - [sym_generator_expression] = STATE(908), - [sym_parenthesized_expression] = STATE(908), - [sym_conditional_expression] = STATE(1158), - [sym_concatenated_string] = STATE(908), - [sym_string] = STATE(782), - [sym_concatenated_template_string] = STATE(908), - [sym_template_string] = STATE(763), - [sym_await] = STATE(908), - [aux_sym_module_repeat1] = STATE(63), - [aux_sym_decorated_definition_repeat1] = STATE(1113), + [sym_class_definition] = STATE(61), + [sym_decorated_definition] = STATE(61), + [sym_decorator] = STATE(1127), + [sym_block] = STATE(595), + [sym_expression_list] = STATE(1522), + [sym_pattern] = STATE(1017), + [sym_tuple_pattern] = STATE(1001), + [sym_list_pattern] = STATE(1001), + [sym_list_splat_pattern] = STATE(1001), + [sym_expression] = STATE(1176), + [sym_primary_expression] = STATE(765), + [sym_not_operator] = STATE(1156), + [sym_boolean_operator] = STATE(1156), + [sym_binary_operator] = STATE(920), + [sym_unary_operator] = STATE(920), + [sym_comparison_operator] = STATE(1156), + [sym_lambda] = STATE(1156), + [sym_assignment] = STATE(1522), + [sym_augmented_assignment] = STATE(1522), + [sym_pattern_list] = STATE(1026), + [sym_yield] = STATE(1522), + [sym_attribute] = STATE(582), + [sym_subscript] = STATE(582), + [sym_call] = STATE(920), + [sym_list] = STATE(920), + [sym_set] = STATE(920), + [sym_tuple] = STATE(920), + [sym_dictionary] = STATE(920), + [sym_list_comprehension] = STATE(920), + [sym_dictionary_comprehension] = STATE(920), + [sym_set_comprehension] = STATE(920), + [sym_generator_expression] = STATE(920), + [sym_parenthesized_expression] = STATE(920), + [sym_conditional_expression] = STATE(1156), + [sym_concatenated_string] = STATE(920), + [sym_string] = STATE(775), + [sym_concatenated_template_string] = STATE(920), + [sym_template_string] = STATE(769), + [sym_await] = STATE(920), + [aux_sym_module_repeat1] = STATE(61), + [aux_sym_decorated_definition_repeat1] = STATE(1127), [sym_identifier] = ACTIONS(7), - [anon_sym_import] = ACTIONS(9), - [anon_sym_from] = ACTIONS(11), - [anon_sym_LPAREN] = ACTIONS(13), - [anon_sym_STAR] = ACTIONS(15), - [anon_sym_print] = ACTIONS(17), - [anon_sym_assert] = ACTIONS(19), - [anon_sym_return] = ACTIONS(21), - [anon_sym_del] = ACTIONS(23), - [anon_sym_raise] = ACTIONS(25), - [anon_sym_pass] = ACTIONS(27), - [anon_sym_break] = ACTIONS(29), - [anon_sym_continue] = ACTIONS(31), - [anon_sym_if] = ACTIONS(85), - [anon_sym_async] = ACTIONS(87), - [anon_sym_for] = ACTIONS(89), - [anon_sym_while] = ACTIONS(91), - [anon_sym_try] = ACTIONS(93), - [anon_sym_with] = ACTIONS(95), - [anon_sym_match] = ACTIONS(97), - [anon_sym_DASH] = ACTIONS(47), - [anon_sym_PLUS] = ACTIONS(47), - [anon_sym_LBRACK] = ACTIONS(49), - [anon_sym_LBRACE] = ACTIONS(51), - [anon_sym_STAR_STAR] = ACTIONS(53), - [anon_sym_def] = ACTIONS(99), - [anon_sym_global] = ACTIONS(57), - [anon_sym_nonlocal] = ACTIONS(59), - [anon_sym_exec] = ACTIONS(61), - [anon_sym_type] = ACTIONS(63), - [anon_sym_class] = ACTIONS(101), - [anon_sym_AT] = ACTIONS(67), - [anon_sym_not] = ACTIONS(69), - [anon_sym_TILDE] = ACTIONS(47), - [anon_sym_lambda] = ACTIONS(71), - [anon_sym_yield] = ACTIONS(73), - [sym_ellipsis] = ACTIONS(75), - [sym_integer] = ACTIONS(77), - [sym_float] = ACTIONS(75), - [anon_sym_await] = ACTIONS(79), - [sym_true] = ACTIONS(77), - [sym_false] = ACTIONS(77), - [sym_none] = ACTIONS(77), + [anon_sym_lazy] = ACTIONS(9), + [anon_sym_import] = ACTIONS(11), + [anon_sym_from] = ACTIONS(13), + [anon_sym_LPAREN] = ACTIONS(15), + [anon_sym_STAR] = ACTIONS(17), + [anon_sym_print] = ACTIONS(19), + [anon_sym_assert] = ACTIONS(21), + [anon_sym_return] = ACTIONS(23), + [anon_sym_del] = ACTIONS(25), + [anon_sym_raise] = ACTIONS(27), + [anon_sym_pass] = ACTIONS(29), + [anon_sym_break] = ACTIONS(31), + [anon_sym_continue] = ACTIONS(33), + [anon_sym_if] = ACTIONS(87), + [anon_sym_async] = ACTIONS(89), + [anon_sym_for] = ACTIONS(91), + [anon_sym_while] = ACTIONS(93), + [anon_sym_try] = ACTIONS(95), + [anon_sym_with] = ACTIONS(97), + [anon_sym_match] = ACTIONS(99), + [anon_sym_DASH] = ACTIONS(49), + [anon_sym_PLUS] = ACTIONS(49), + [anon_sym_LBRACK] = ACTIONS(51), + [anon_sym_LBRACE] = ACTIONS(53), + [anon_sym_STAR_STAR] = ACTIONS(55), + [anon_sym_def] = ACTIONS(101), + [anon_sym_global] = ACTIONS(59), + [anon_sym_nonlocal] = ACTIONS(61), + [anon_sym_exec] = ACTIONS(63), + [anon_sym_type] = ACTIONS(65), + [anon_sym_class] = ACTIONS(103), + [anon_sym_AT] = ACTIONS(69), + [anon_sym_not] = ACTIONS(71), + [anon_sym_TILDE] = ACTIONS(49), + [anon_sym_lambda] = ACTIONS(73), + [anon_sym_yield] = ACTIONS(75), + [sym_ellipsis] = ACTIONS(77), + [sym_integer] = ACTIONS(79), + [sym_float] = ACTIONS(77), + [anon_sym_await] = ACTIONS(81), + [sym_true] = ACTIONS(79), + [sym_false] = ACTIONS(79), + [sym_none] = ACTIONS(79), [sym_comment] = ACTIONS(3), - [sym__dedent] = ACTIONS(107), - [sym__string_start] = ACTIONS(81), - [sym__template_string_start] = ACTIONS(83), + [sym__dedent] = ACTIONS(109), + [sym__string_start] = ACTIONS(83), + [sym__template_string_start] = ACTIONS(85), }, [STATE(21)] = { - [sym__statement] = STATE(63), - [sym__simple_statements] = STATE(63), + [sym__statement] = STATE(61), + [sym__simple_statements] = STATE(61), [sym_import_statement] = STATE(1332), [sym_future_import_statement] = STATE(1332), [sym_import_from_statement] = STATE(1332), [sym_print_statement] = STATE(1332), [sym_assert_statement] = STATE(1332), [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1158), + [sym_named_expression] = STATE(1156), [sym_return_statement] = STATE(1332), [sym_delete_statement] = STATE(1332), [sym_raise_statement] = STATE(1332), [sym_pass_statement] = STATE(1332), [sym_break_statement] = STATE(1332), [sym_continue_statement] = STATE(1332), - [sym_if_statement] = STATE(63), - [sym_for_statement] = STATE(63), - [sym_while_statement] = STATE(63), - [sym_try_statement] = STATE(63), - [sym_with_statement] = STATE(63), - [sym_match_statement] = STATE(63), - [sym_function_definition] = STATE(63), - [sym_list_splat] = STATE(1549), - [sym_dictionary_splat] = STATE(1549), + [sym_if_statement] = STATE(61), + [sym_for_statement] = STATE(61), + [sym_while_statement] = STATE(61), + [sym_try_statement] = STATE(61), + [sym_with_statement] = STATE(61), + [sym_match_statement] = STATE(61), + [sym_function_definition] = STATE(61), + [sym_list_splat] = STATE(1520), + [sym_dictionary_splat] = STATE(1520), [sym_global_statement] = STATE(1332), [sym_nonlocal_statement] = STATE(1332), [sym_exec_statement] = STATE(1332), [sym_type_alias_statement] = STATE(1332), - [sym_class_definition] = STATE(63), - [sym_decorated_definition] = STATE(63), - [sym_decorator] = STATE(1113), - [sym_block] = STATE(455), - [sym_expression_list] = STATE(1551), - [sym_pattern] = STATE(1013), - [sym_tuple_pattern] = STATE(999), - [sym_list_pattern] = STATE(999), - [sym_list_splat_pattern] = STATE(999), - [sym_expression] = STATE(1185), - [sym_primary_expression] = STATE(779), - [sym_not_operator] = STATE(1158), - [sym_boolean_operator] = STATE(1158), - [sym_binary_operator] = STATE(908), - [sym_unary_operator] = STATE(908), - [sym_comparison_operator] = STATE(1158), - [sym_lambda] = STATE(1158), - [sym_assignment] = STATE(1551), - [sym_augmented_assignment] = STATE(1551), - [sym_pattern_list] = STATE(1024), - [sym_yield] = STATE(1551), - [sym_attribute] = STATE(494), - [sym_subscript] = STATE(494), - [sym_call] = STATE(908), - [sym_list] = STATE(908), - [sym_set] = STATE(908), - [sym_tuple] = STATE(908), - [sym_dictionary] = STATE(908), - [sym_list_comprehension] = STATE(908), - [sym_dictionary_comprehension] = STATE(908), - [sym_set_comprehension] = STATE(908), - [sym_generator_expression] = STATE(908), - [sym_parenthesized_expression] = STATE(908), - [sym_conditional_expression] = STATE(1158), - [sym_concatenated_string] = STATE(908), - [sym_string] = STATE(782), - [sym_concatenated_template_string] = STATE(908), - [sym_template_string] = STATE(763), - [sym_await] = STATE(908), - [aux_sym_module_repeat1] = STATE(63), - [aux_sym_decorated_definition_repeat1] = STATE(1113), + [sym_class_definition] = STATE(61), + [sym_decorated_definition] = STATE(61), + [sym_decorator] = STATE(1127), + [sym_block] = STATE(445), + [sym_expression_list] = STATE(1522), + [sym_pattern] = STATE(1017), + [sym_tuple_pattern] = STATE(1001), + [sym_list_pattern] = STATE(1001), + [sym_list_splat_pattern] = STATE(1001), + [sym_expression] = STATE(1176), + [sym_primary_expression] = STATE(765), + [sym_not_operator] = STATE(1156), + [sym_boolean_operator] = STATE(1156), + [sym_binary_operator] = STATE(920), + [sym_unary_operator] = STATE(920), + [sym_comparison_operator] = STATE(1156), + [sym_lambda] = STATE(1156), + [sym_assignment] = STATE(1522), + [sym_augmented_assignment] = STATE(1522), + [sym_pattern_list] = STATE(1026), + [sym_yield] = STATE(1522), + [sym_attribute] = STATE(582), + [sym_subscript] = STATE(582), + [sym_call] = STATE(920), + [sym_list] = STATE(920), + [sym_set] = STATE(920), + [sym_tuple] = STATE(920), + [sym_dictionary] = STATE(920), + [sym_list_comprehension] = STATE(920), + [sym_dictionary_comprehension] = STATE(920), + [sym_set_comprehension] = STATE(920), + [sym_generator_expression] = STATE(920), + [sym_parenthesized_expression] = STATE(920), + [sym_conditional_expression] = STATE(1156), + [sym_concatenated_string] = STATE(920), + [sym_string] = STATE(775), + [sym_concatenated_template_string] = STATE(920), + [sym_template_string] = STATE(769), + [sym_await] = STATE(920), + [aux_sym_module_repeat1] = STATE(61), + [aux_sym_decorated_definition_repeat1] = STATE(1127), [sym_identifier] = ACTIONS(7), - [anon_sym_import] = ACTIONS(9), - [anon_sym_from] = ACTIONS(11), - [anon_sym_LPAREN] = ACTIONS(13), - [anon_sym_STAR] = ACTIONS(15), - [anon_sym_print] = ACTIONS(17), - [anon_sym_assert] = ACTIONS(19), - [anon_sym_return] = ACTIONS(21), - [anon_sym_del] = ACTIONS(23), - [anon_sym_raise] = ACTIONS(25), - [anon_sym_pass] = ACTIONS(27), - [anon_sym_break] = ACTIONS(29), - [anon_sym_continue] = ACTIONS(31), - [anon_sym_if] = ACTIONS(85), - [anon_sym_async] = ACTIONS(87), - [anon_sym_for] = ACTIONS(89), - [anon_sym_while] = ACTIONS(91), - [anon_sym_try] = ACTIONS(93), - [anon_sym_with] = ACTIONS(95), - [anon_sym_match] = ACTIONS(97), - [anon_sym_DASH] = ACTIONS(47), - [anon_sym_PLUS] = ACTIONS(47), - [anon_sym_LBRACK] = ACTIONS(49), - [anon_sym_LBRACE] = ACTIONS(51), - [anon_sym_STAR_STAR] = ACTIONS(53), - [anon_sym_def] = ACTIONS(99), - [anon_sym_global] = ACTIONS(57), - [anon_sym_nonlocal] = ACTIONS(59), - [anon_sym_exec] = ACTIONS(61), - [anon_sym_type] = ACTIONS(63), - [anon_sym_class] = ACTIONS(101), - [anon_sym_AT] = ACTIONS(67), - [anon_sym_not] = ACTIONS(69), - [anon_sym_TILDE] = ACTIONS(47), - [anon_sym_lambda] = ACTIONS(71), - [anon_sym_yield] = ACTIONS(73), - [sym_ellipsis] = ACTIONS(75), - [sym_integer] = ACTIONS(77), - [sym_float] = ACTIONS(75), - [anon_sym_await] = ACTIONS(79), - [sym_true] = ACTIONS(77), - [sym_false] = ACTIONS(77), - [sym_none] = ACTIONS(77), + [anon_sym_lazy] = ACTIONS(9), + [anon_sym_import] = ACTIONS(11), + [anon_sym_from] = ACTIONS(13), + [anon_sym_LPAREN] = ACTIONS(15), + [anon_sym_STAR] = ACTIONS(17), + [anon_sym_print] = ACTIONS(19), + [anon_sym_assert] = ACTIONS(21), + [anon_sym_return] = ACTIONS(23), + [anon_sym_del] = ACTIONS(25), + [anon_sym_raise] = ACTIONS(27), + [anon_sym_pass] = ACTIONS(29), + [anon_sym_break] = ACTIONS(31), + [anon_sym_continue] = ACTIONS(33), + [anon_sym_if] = ACTIONS(87), + [anon_sym_async] = ACTIONS(89), + [anon_sym_for] = ACTIONS(91), + [anon_sym_while] = ACTIONS(93), + [anon_sym_try] = ACTIONS(95), + [anon_sym_with] = ACTIONS(97), + [anon_sym_match] = ACTIONS(99), + [anon_sym_DASH] = ACTIONS(49), + [anon_sym_PLUS] = ACTIONS(49), + [anon_sym_LBRACK] = ACTIONS(51), + [anon_sym_LBRACE] = ACTIONS(53), + [anon_sym_STAR_STAR] = ACTIONS(55), + [anon_sym_def] = ACTIONS(101), + [anon_sym_global] = ACTIONS(59), + [anon_sym_nonlocal] = ACTIONS(61), + [anon_sym_exec] = ACTIONS(63), + [anon_sym_type] = ACTIONS(65), + [anon_sym_class] = ACTIONS(103), + [anon_sym_AT] = ACTIONS(69), + [anon_sym_not] = ACTIONS(71), + [anon_sym_TILDE] = ACTIONS(49), + [anon_sym_lambda] = ACTIONS(73), + [anon_sym_yield] = ACTIONS(75), + [sym_ellipsis] = ACTIONS(77), + [sym_integer] = ACTIONS(79), + [sym_float] = ACTIONS(77), + [anon_sym_await] = ACTIONS(81), + [sym_true] = ACTIONS(79), + [sym_false] = ACTIONS(79), + [sym_none] = ACTIONS(79), [sym_comment] = ACTIONS(3), - [sym__dedent] = ACTIONS(107), - [sym__string_start] = ACTIONS(81), - [sym__template_string_start] = ACTIONS(83), + [sym__dedent] = ACTIONS(109), + [sym__string_start] = ACTIONS(83), + [sym__template_string_start] = ACTIONS(85), }, [STATE(22)] = { - [sym__statement] = STATE(63), - [sym__simple_statements] = STATE(63), + [sym__statement] = STATE(61), + [sym__simple_statements] = STATE(61), [sym_import_statement] = STATE(1332), [sym_future_import_statement] = STATE(1332), [sym_import_from_statement] = STATE(1332), [sym_print_statement] = STATE(1332), [sym_assert_statement] = STATE(1332), [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1158), + [sym_named_expression] = STATE(1156), [sym_return_statement] = STATE(1332), [sym_delete_statement] = STATE(1332), [sym_raise_statement] = STATE(1332), [sym_pass_statement] = STATE(1332), [sym_break_statement] = STATE(1332), [sym_continue_statement] = STATE(1332), - [sym_if_statement] = STATE(63), - [sym_for_statement] = STATE(63), - [sym_while_statement] = STATE(63), - [sym_try_statement] = STATE(63), - [sym_with_statement] = STATE(63), - [sym_match_statement] = STATE(63), - [sym_function_definition] = STATE(63), - [sym_list_splat] = STATE(1549), - [sym_dictionary_splat] = STATE(1549), + [sym_if_statement] = STATE(61), + [sym_for_statement] = STATE(61), + [sym_while_statement] = STATE(61), + [sym_try_statement] = STATE(61), + [sym_with_statement] = STATE(61), + [sym_match_statement] = STATE(61), + [sym_function_definition] = STATE(61), + [sym_list_splat] = STATE(1520), + [sym_dictionary_splat] = STATE(1520), [sym_global_statement] = STATE(1332), [sym_nonlocal_statement] = STATE(1332), [sym_exec_statement] = STATE(1332), [sym_type_alias_statement] = STATE(1332), - [sym_class_definition] = STATE(63), - [sym_decorated_definition] = STATE(63), - [sym_decorator] = STATE(1113), - [sym_block] = STATE(499), - [sym_expression_list] = STATE(1551), - [sym_pattern] = STATE(1013), - [sym_tuple_pattern] = STATE(999), - [sym_list_pattern] = STATE(999), - [sym_list_splat_pattern] = STATE(999), - [sym_expression] = STATE(1185), - [sym_primary_expression] = STATE(779), - [sym_not_operator] = STATE(1158), - [sym_boolean_operator] = STATE(1158), - [sym_binary_operator] = STATE(908), - [sym_unary_operator] = STATE(908), - [sym_comparison_operator] = STATE(1158), - [sym_lambda] = STATE(1158), - [sym_assignment] = STATE(1551), - [sym_augmented_assignment] = STATE(1551), - [sym_pattern_list] = STATE(1024), - [sym_yield] = STATE(1551), - [sym_attribute] = STATE(494), - [sym_subscript] = STATE(494), - [sym_call] = STATE(908), - [sym_list] = STATE(908), - [sym_set] = STATE(908), - [sym_tuple] = STATE(908), - [sym_dictionary] = STATE(908), - [sym_list_comprehension] = STATE(908), - [sym_dictionary_comprehension] = STATE(908), - [sym_set_comprehension] = STATE(908), - [sym_generator_expression] = STATE(908), - [sym_parenthesized_expression] = STATE(908), - [sym_conditional_expression] = STATE(1158), - [sym_concatenated_string] = STATE(908), - [sym_string] = STATE(782), - [sym_concatenated_template_string] = STATE(908), - [sym_template_string] = STATE(763), - [sym_await] = STATE(908), - [aux_sym_module_repeat1] = STATE(63), - [aux_sym_decorated_definition_repeat1] = STATE(1113), - [sym_identifier] = ACTIONS(7), - [anon_sym_import] = ACTIONS(9), - [anon_sym_from] = ACTIONS(11), - [anon_sym_LPAREN] = ACTIONS(13), - [anon_sym_STAR] = ACTIONS(15), - [anon_sym_print] = ACTIONS(17), - [anon_sym_assert] = ACTIONS(19), - [anon_sym_return] = ACTIONS(21), - [anon_sym_del] = ACTIONS(23), - [anon_sym_raise] = ACTIONS(25), - [anon_sym_pass] = ACTIONS(27), - [anon_sym_break] = ACTIONS(29), - [anon_sym_continue] = ACTIONS(31), - [anon_sym_if] = ACTIONS(85), - [anon_sym_async] = ACTIONS(87), - [anon_sym_for] = ACTIONS(89), - [anon_sym_while] = ACTIONS(91), - [anon_sym_try] = ACTIONS(93), - [anon_sym_with] = ACTIONS(95), - [anon_sym_match] = ACTIONS(97), - [anon_sym_DASH] = ACTIONS(47), - [anon_sym_PLUS] = ACTIONS(47), - [anon_sym_LBRACK] = ACTIONS(49), - [anon_sym_LBRACE] = ACTIONS(51), - [anon_sym_STAR_STAR] = ACTIONS(53), - [anon_sym_def] = ACTIONS(99), - [anon_sym_global] = ACTIONS(57), - [anon_sym_nonlocal] = ACTIONS(59), - [anon_sym_exec] = ACTIONS(61), - [anon_sym_type] = ACTIONS(63), - [anon_sym_class] = ACTIONS(101), - [anon_sym_AT] = ACTIONS(67), - [anon_sym_not] = ACTIONS(69), - [anon_sym_TILDE] = ACTIONS(47), - [anon_sym_lambda] = ACTIONS(71), - [anon_sym_yield] = ACTIONS(73), - [sym_ellipsis] = ACTIONS(75), - [sym_integer] = ACTIONS(77), - [sym_float] = ACTIONS(75), - [anon_sym_await] = ACTIONS(79), - [sym_true] = ACTIONS(77), - [sym_false] = ACTIONS(77), - [sym_none] = ACTIONS(77), - [sym_comment] = ACTIONS(3), - [sym__dedent] = ACTIONS(107), - [sym__string_start] = ACTIONS(81), - [sym__template_string_start] = ACTIONS(83), + [sym_class_definition] = STATE(61), + [sym_decorated_definition] = STATE(61), + [sym_decorator] = STATE(1127), + [sym_block] = STATE(505), + [sym_expression_list] = STATE(1522), + [sym_pattern] = STATE(1017), + [sym_tuple_pattern] = STATE(1001), + [sym_list_pattern] = STATE(1001), + [sym_list_splat_pattern] = STATE(1001), + [sym_expression] = STATE(1176), + [sym_primary_expression] = STATE(765), + [sym_not_operator] = STATE(1156), + [sym_boolean_operator] = STATE(1156), + [sym_binary_operator] = STATE(920), + [sym_unary_operator] = STATE(920), + [sym_comparison_operator] = STATE(1156), + [sym_lambda] = STATE(1156), + [sym_assignment] = STATE(1522), + [sym_augmented_assignment] = STATE(1522), + [sym_pattern_list] = STATE(1026), + [sym_yield] = STATE(1522), + [sym_attribute] = STATE(582), + [sym_subscript] = STATE(582), + [sym_call] = STATE(920), + [sym_list] = STATE(920), + [sym_set] = STATE(920), + [sym_tuple] = STATE(920), + [sym_dictionary] = STATE(920), + [sym_list_comprehension] = STATE(920), + [sym_dictionary_comprehension] = STATE(920), + [sym_set_comprehension] = STATE(920), + [sym_generator_expression] = STATE(920), + [sym_parenthesized_expression] = STATE(920), + [sym_conditional_expression] = STATE(1156), + [sym_concatenated_string] = STATE(920), + [sym_string] = STATE(775), + [sym_concatenated_template_string] = STATE(920), + [sym_template_string] = STATE(769), + [sym_await] = STATE(920), + [aux_sym_module_repeat1] = STATE(61), + [aux_sym_decorated_definition_repeat1] = STATE(1127), + [sym_identifier] = ACTIONS(7), + [anon_sym_lazy] = ACTIONS(9), + [anon_sym_import] = ACTIONS(11), + [anon_sym_from] = ACTIONS(13), + [anon_sym_LPAREN] = ACTIONS(15), + [anon_sym_STAR] = ACTIONS(17), + [anon_sym_print] = ACTIONS(19), + [anon_sym_assert] = ACTIONS(21), + [anon_sym_return] = ACTIONS(23), + [anon_sym_del] = ACTIONS(25), + [anon_sym_raise] = ACTIONS(27), + [anon_sym_pass] = ACTIONS(29), + [anon_sym_break] = ACTIONS(31), + [anon_sym_continue] = ACTIONS(33), + [anon_sym_if] = ACTIONS(87), + [anon_sym_async] = ACTIONS(89), + [anon_sym_for] = ACTIONS(91), + [anon_sym_while] = ACTIONS(93), + [anon_sym_try] = ACTIONS(95), + [anon_sym_with] = ACTIONS(97), + [anon_sym_match] = ACTIONS(99), + [anon_sym_DASH] = ACTIONS(49), + [anon_sym_PLUS] = ACTIONS(49), + [anon_sym_LBRACK] = ACTIONS(51), + [anon_sym_LBRACE] = ACTIONS(53), + [anon_sym_STAR_STAR] = ACTIONS(55), + [anon_sym_def] = ACTIONS(101), + [anon_sym_global] = ACTIONS(59), + [anon_sym_nonlocal] = ACTIONS(61), + [anon_sym_exec] = ACTIONS(63), + [anon_sym_type] = ACTIONS(65), + [anon_sym_class] = ACTIONS(103), + [anon_sym_AT] = ACTIONS(69), + [anon_sym_not] = ACTIONS(71), + [anon_sym_TILDE] = ACTIONS(49), + [anon_sym_lambda] = ACTIONS(73), + [anon_sym_yield] = ACTIONS(75), + [sym_ellipsis] = ACTIONS(77), + [sym_integer] = ACTIONS(79), + [sym_float] = ACTIONS(77), + [anon_sym_await] = ACTIONS(81), + [sym_true] = ACTIONS(79), + [sym_false] = ACTIONS(79), + [sym_none] = ACTIONS(79), + [sym_comment] = ACTIONS(3), + [sym__dedent] = ACTIONS(109), + [sym__string_start] = ACTIONS(83), + [sym__template_string_start] = ACTIONS(85), }, [STATE(23)] = { - [sym__statement] = STATE(63), - [sym__simple_statements] = STATE(63), + [sym__statement] = STATE(61), + [sym__simple_statements] = STATE(61), [sym_import_statement] = STATE(1332), [sym_future_import_statement] = STATE(1332), [sym_import_from_statement] = STATE(1332), [sym_print_statement] = STATE(1332), [sym_assert_statement] = STATE(1332), [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1158), + [sym_named_expression] = STATE(1156), [sym_return_statement] = STATE(1332), [sym_delete_statement] = STATE(1332), [sym_raise_statement] = STATE(1332), [sym_pass_statement] = STATE(1332), [sym_break_statement] = STATE(1332), [sym_continue_statement] = STATE(1332), - [sym_if_statement] = STATE(63), - [sym_for_statement] = STATE(63), - [sym_while_statement] = STATE(63), - [sym_try_statement] = STATE(63), - [sym_with_statement] = STATE(63), - [sym_match_statement] = STATE(63), - [sym_function_definition] = STATE(63), - [sym_list_splat] = STATE(1549), - [sym_dictionary_splat] = STATE(1549), + [sym_if_statement] = STATE(61), + [sym_for_statement] = STATE(61), + [sym_while_statement] = STATE(61), + [sym_try_statement] = STATE(61), + [sym_with_statement] = STATE(61), + [sym_match_statement] = STATE(61), + [sym_function_definition] = STATE(61), + [sym_list_splat] = STATE(1520), + [sym_dictionary_splat] = STATE(1520), [sym_global_statement] = STATE(1332), [sym_nonlocal_statement] = STATE(1332), [sym_exec_statement] = STATE(1332), [sym_type_alias_statement] = STATE(1332), - [sym_class_definition] = STATE(63), - [sym_decorated_definition] = STATE(63), - [sym_decorator] = STATE(1113), - [sym_block] = STATE(542), - [sym_expression_list] = STATE(1551), - [sym_pattern] = STATE(1013), - [sym_tuple_pattern] = STATE(999), - [sym_list_pattern] = STATE(999), - [sym_list_splat_pattern] = STATE(999), - [sym_expression] = STATE(1185), - [sym_primary_expression] = STATE(779), - [sym_not_operator] = STATE(1158), - [sym_boolean_operator] = STATE(1158), - [sym_binary_operator] = STATE(908), - [sym_unary_operator] = STATE(908), - [sym_comparison_operator] = STATE(1158), - [sym_lambda] = STATE(1158), - [sym_assignment] = STATE(1551), - [sym_augmented_assignment] = STATE(1551), - [sym_pattern_list] = STATE(1024), - [sym_yield] = STATE(1551), - [sym_attribute] = STATE(494), - [sym_subscript] = STATE(494), - [sym_call] = STATE(908), - [sym_list] = STATE(908), - [sym_set] = STATE(908), - [sym_tuple] = STATE(908), - [sym_dictionary] = STATE(908), - [sym_list_comprehension] = STATE(908), - [sym_dictionary_comprehension] = STATE(908), - [sym_set_comprehension] = STATE(908), - [sym_generator_expression] = STATE(908), - [sym_parenthesized_expression] = STATE(908), - [sym_conditional_expression] = STATE(1158), - [sym_concatenated_string] = STATE(908), - [sym_string] = STATE(782), - [sym_concatenated_template_string] = STATE(908), - [sym_template_string] = STATE(763), - [sym_await] = STATE(908), - [aux_sym_module_repeat1] = STATE(63), - [aux_sym_decorated_definition_repeat1] = STATE(1113), + [sym_class_definition] = STATE(61), + [sym_decorated_definition] = STATE(61), + [sym_decorator] = STATE(1127), + [sym_block] = STATE(597), + [sym_expression_list] = STATE(1522), + [sym_pattern] = STATE(1017), + [sym_tuple_pattern] = STATE(1001), + [sym_list_pattern] = STATE(1001), + [sym_list_splat_pattern] = STATE(1001), + [sym_expression] = STATE(1176), + [sym_primary_expression] = STATE(765), + [sym_not_operator] = STATE(1156), + [sym_boolean_operator] = STATE(1156), + [sym_binary_operator] = STATE(920), + [sym_unary_operator] = STATE(920), + [sym_comparison_operator] = STATE(1156), + [sym_lambda] = STATE(1156), + [sym_assignment] = STATE(1522), + [sym_augmented_assignment] = STATE(1522), + [sym_pattern_list] = STATE(1026), + [sym_yield] = STATE(1522), + [sym_attribute] = STATE(582), + [sym_subscript] = STATE(582), + [sym_call] = STATE(920), + [sym_list] = STATE(920), + [sym_set] = STATE(920), + [sym_tuple] = STATE(920), + [sym_dictionary] = STATE(920), + [sym_list_comprehension] = STATE(920), + [sym_dictionary_comprehension] = STATE(920), + [sym_set_comprehension] = STATE(920), + [sym_generator_expression] = STATE(920), + [sym_parenthesized_expression] = STATE(920), + [sym_conditional_expression] = STATE(1156), + [sym_concatenated_string] = STATE(920), + [sym_string] = STATE(775), + [sym_concatenated_template_string] = STATE(920), + [sym_template_string] = STATE(769), + [sym_await] = STATE(920), + [aux_sym_module_repeat1] = STATE(61), + [aux_sym_decorated_definition_repeat1] = STATE(1127), [sym_identifier] = ACTIONS(7), - [anon_sym_import] = ACTIONS(9), - [anon_sym_from] = ACTIONS(11), - [anon_sym_LPAREN] = ACTIONS(13), - [anon_sym_STAR] = ACTIONS(15), - [anon_sym_print] = ACTIONS(17), - [anon_sym_assert] = ACTIONS(19), - [anon_sym_return] = ACTIONS(21), - [anon_sym_del] = ACTIONS(23), - [anon_sym_raise] = ACTIONS(25), - [anon_sym_pass] = ACTIONS(27), - [anon_sym_break] = ACTIONS(29), - [anon_sym_continue] = ACTIONS(31), - [anon_sym_if] = ACTIONS(85), - [anon_sym_async] = ACTIONS(87), - [anon_sym_for] = ACTIONS(89), - [anon_sym_while] = ACTIONS(91), - [anon_sym_try] = ACTIONS(93), - [anon_sym_with] = ACTIONS(95), - [anon_sym_match] = ACTIONS(97), - [anon_sym_DASH] = ACTIONS(47), - [anon_sym_PLUS] = ACTIONS(47), - [anon_sym_LBRACK] = ACTIONS(49), - [anon_sym_LBRACE] = ACTIONS(51), - [anon_sym_STAR_STAR] = ACTIONS(53), - [anon_sym_def] = ACTIONS(99), - [anon_sym_global] = ACTIONS(57), - [anon_sym_nonlocal] = ACTIONS(59), - [anon_sym_exec] = ACTIONS(61), - [anon_sym_type] = ACTIONS(63), - [anon_sym_class] = ACTIONS(101), - [anon_sym_AT] = ACTIONS(67), - [anon_sym_not] = ACTIONS(69), - [anon_sym_TILDE] = ACTIONS(47), - [anon_sym_lambda] = ACTIONS(71), - [anon_sym_yield] = ACTIONS(73), - [sym_ellipsis] = ACTIONS(75), - [sym_integer] = ACTIONS(77), - [sym_float] = ACTIONS(75), - [anon_sym_await] = ACTIONS(79), - [sym_true] = ACTIONS(77), - [sym_false] = ACTIONS(77), - [sym_none] = ACTIONS(77), + [anon_sym_lazy] = ACTIONS(9), + [anon_sym_import] = ACTIONS(11), + [anon_sym_from] = ACTIONS(13), + [anon_sym_LPAREN] = ACTIONS(15), + [anon_sym_STAR] = ACTIONS(17), + [anon_sym_print] = ACTIONS(19), + [anon_sym_assert] = ACTIONS(21), + [anon_sym_return] = ACTIONS(23), + [anon_sym_del] = ACTIONS(25), + [anon_sym_raise] = ACTIONS(27), + [anon_sym_pass] = ACTIONS(29), + [anon_sym_break] = ACTIONS(31), + [anon_sym_continue] = ACTIONS(33), + [anon_sym_if] = ACTIONS(87), + [anon_sym_async] = ACTIONS(89), + [anon_sym_for] = ACTIONS(91), + [anon_sym_while] = ACTIONS(93), + [anon_sym_try] = ACTIONS(95), + [anon_sym_with] = ACTIONS(97), + [anon_sym_match] = ACTIONS(99), + [anon_sym_DASH] = ACTIONS(49), + [anon_sym_PLUS] = ACTIONS(49), + [anon_sym_LBRACK] = ACTIONS(51), + [anon_sym_LBRACE] = ACTIONS(53), + [anon_sym_STAR_STAR] = ACTIONS(55), + [anon_sym_def] = ACTIONS(101), + [anon_sym_global] = ACTIONS(59), + [anon_sym_nonlocal] = ACTIONS(61), + [anon_sym_exec] = ACTIONS(63), + [anon_sym_type] = ACTIONS(65), + [anon_sym_class] = ACTIONS(103), + [anon_sym_AT] = ACTIONS(69), + [anon_sym_not] = ACTIONS(71), + [anon_sym_TILDE] = ACTIONS(49), + [anon_sym_lambda] = ACTIONS(73), + [anon_sym_yield] = ACTIONS(75), + [sym_ellipsis] = ACTIONS(77), + [sym_integer] = ACTIONS(79), + [sym_float] = ACTIONS(77), + [anon_sym_await] = ACTIONS(81), + [sym_true] = ACTIONS(79), + [sym_false] = ACTIONS(79), + [sym_none] = ACTIONS(79), [sym_comment] = ACTIONS(3), - [sym__dedent] = ACTIONS(107), - [sym__string_start] = ACTIONS(81), - [sym__template_string_start] = ACTIONS(83), + [sym__dedent] = ACTIONS(109), + [sym__string_start] = ACTIONS(83), + [sym__template_string_start] = ACTIONS(85), }, [STATE(24)] = { - [sym__statement] = STATE(63), - [sym__simple_statements] = STATE(63), + [sym__statement] = STATE(61), + [sym__simple_statements] = STATE(61), [sym_import_statement] = STATE(1332), [sym_future_import_statement] = STATE(1332), [sym_import_from_statement] = STATE(1332), [sym_print_statement] = STATE(1332), [sym_assert_statement] = STATE(1332), [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1158), + [sym_named_expression] = STATE(1156), [sym_return_statement] = STATE(1332), [sym_delete_statement] = STATE(1332), [sym_raise_statement] = STATE(1332), [sym_pass_statement] = STATE(1332), [sym_break_statement] = STATE(1332), [sym_continue_statement] = STATE(1332), - [sym_if_statement] = STATE(63), - [sym_for_statement] = STATE(63), - [sym_while_statement] = STATE(63), - [sym_try_statement] = STATE(63), - [sym_with_statement] = STATE(63), - [sym_match_statement] = STATE(63), - [sym_function_definition] = STATE(63), - [sym_list_splat] = STATE(1549), - [sym_dictionary_splat] = STATE(1549), + [sym_if_statement] = STATE(61), + [sym_for_statement] = STATE(61), + [sym_while_statement] = STATE(61), + [sym_try_statement] = STATE(61), + [sym_with_statement] = STATE(61), + [sym_match_statement] = STATE(61), + [sym_function_definition] = STATE(61), + [sym_list_splat] = STATE(1520), + [sym_dictionary_splat] = STATE(1520), [sym_global_statement] = STATE(1332), [sym_nonlocal_statement] = STATE(1332), [sym_exec_statement] = STATE(1332), [sym_type_alias_statement] = STATE(1332), - [sym_class_definition] = STATE(63), - [sym_decorated_definition] = STATE(63), - [sym_decorator] = STATE(1113), - [sym_block] = STATE(471), - [sym_expression_list] = STATE(1551), - [sym_pattern] = STATE(1013), - [sym_tuple_pattern] = STATE(999), - [sym_list_pattern] = STATE(999), - [sym_list_splat_pattern] = STATE(999), - [sym_expression] = STATE(1185), - [sym_primary_expression] = STATE(779), - [sym_not_operator] = STATE(1158), - [sym_boolean_operator] = STATE(1158), - [sym_binary_operator] = STATE(908), - [sym_unary_operator] = STATE(908), - [sym_comparison_operator] = STATE(1158), - [sym_lambda] = STATE(1158), - [sym_assignment] = STATE(1551), - [sym_augmented_assignment] = STATE(1551), - [sym_pattern_list] = STATE(1024), - [sym_yield] = STATE(1551), - [sym_attribute] = STATE(494), - [sym_subscript] = STATE(494), - [sym_call] = STATE(908), - [sym_list] = STATE(908), - [sym_set] = STATE(908), - [sym_tuple] = STATE(908), - [sym_dictionary] = STATE(908), - [sym_list_comprehension] = STATE(908), - [sym_dictionary_comprehension] = STATE(908), - [sym_set_comprehension] = STATE(908), - [sym_generator_expression] = STATE(908), - [sym_parenthesized_expression] = STATE(908), - [sym_conditional_expression] = STATE(1158), - [sym_concatenated_string] = STATE(908), - [sym_string] = STATE(782), - [sym_concatenated_template_string] = STATE(908), - [sym_template_string] = STATE(763), - [sym_await] = STATE(908), - [aux_sym_module_repeat1] = STATE(63), - [aux_sym_decorated_definition_repeat1] = STATE(1113), + [sym_class_definition] = STATE(61), + [sym_decorated_definition] = STATE(61), + [sym_decorator] = STATE(1127), + [sym_block] = STATE(467), + [sym_expression_list] = STATE(1522), + [sym_pattern] = STATE(1017), + [sym_tuple_pattern] = STATE(1001), + [sym_list_pattern] = STATE(1001), + [sym_list_splat_pattern] = STATE(1001), + [sym_expression] = STATE(1176), + [sym_primary_expression] = STATE(765), + [sym_not_operator] = STATE(1156), + [sym_boolean_operator] = STATE(1156), + [sym_binary_operator] = STATE(920), + [sym_unary_operator] = STATE(920), + [sym_comparison_operator] = STATE(1156), + [sym_lambda] = STATE(1156), + [sym_assignment] = STATE(1522), + [sym_augmented_assignment] = STATE(1522), + [sym_pattern_list] = STATE(1026), + [sym_yield] = STATE(1522), + [sym_attribute] = STATE(582), + [sym_subscript] = STATE(582), + [sym_call] = STATE(920), + [sym_list] = STATE(920), + [sym_set] = STATE(920), + [sym_tuple] = STATE(920), + [sym_dictionary] = STATE(920), + [sym_list_comprehension] = STATE(920), + [sym_dictionary_comprehension] = STATE(920), + [sym_set_comprehension] = STATE(920), + [sym_generator_expression] = STATE(920), + [sym_parenthesized_expression] = STATE(920), + [sym_conditional_expression] = STATE(1156), + [sym_concatenated_string] = STATE(920), + [sym_string] = STATE(775), + [sym_concatenated_template_string] = STATE(920), + [sym_template_string] = STATE(769), + [sym_await] = STATE(920), + [aux_sym_module_repeat1] = STATE(61), + [aux_sym_decorated_definition_repeat1] = STATE(1127), [sym_identifier] = ACTIONS(7), - [anon_sym_import] = ACTIONS(9), - [anon_sym_from] = ACTIONS(11), - [anon_sym_LPAREN] = ACTIONS(13), - [anon_sym_STAR] = ACTIONS(15), - [anon_sym_print] = ACTIONS(17), - [anon_sym_assert] = ACTIONS(19), - [anon_sym_return] = ACTIONS(21), - [anon_sym_del] = ACTIONS(23), - [anon_sym_raise] = ACTIONS(25), - [anon_sym_pass] = ACTIONS(27), - [anon_sym_break] = ACTIONS(29), - [anon_sym_continue] = ACTIONS(31), - [anon_sym_if] = ACTIONS(85), - [anon_sym_async] = ACTIONS(87), - [anon_sym_for] = ACTIONS(89), - [anon_sym_while] = ACTIONS(91), - [anon_sym_try] = ACTIONS(93), - [anon_sym_with] = ACTIONS(95), - [anon_sym_match] = ACTIONS(97), - [anon_sym_DASH] = ACTIONS(47), - [anon_sym_PLUS] = ACTIONS(47), - [anon_sym_LBRACK] = ACTIONS(49), - [anon_sym_LBRACE] = ACTIONS(51), - [anon_sym_STAR_STAR] = ACTIONS(53), - [anon_sym_def] = ACTIONS(99), - [anon_sym_global] = ACTIONS(57), - [anon_sym_nonlocal] = ACTIONS(59), - [anon_sym_exec] = ACTIONS(61), - [anon_sym_type] = ACTIONS(63), - [anon_sym_class] = ACTIONS(101), - [anon_sym_AT] = ACTIONS(67), - [anon_sym_not] = ACTIONS(69), - [anon_sym_TILDE] = ACTIONS(47), - [anon_sym_lambda] = ACTIONS(71), - [anon_sym_yield] = ACTIONS(73), - [sym_ellipsis] = ACTIONS(75), - [sym_integer] = ACTIONS(77), - [sym_float] = ACTIONS(75), - [anon_sym_await] = ACTIONS(79), - [sym_true] = ACTIONS(77), - [sym_false] = ACTIONS(77), - [sym_none] = ACTIONS(77), + [anon_sym_lazy] = ACTIONS(9), + [anon_sym_import] = ACTIONS(11), + [anon_sym_from] = ACTIONS(13), + [anon_sym_LPAREN] = ACTIONS(15), + [anon_sym_STAR] = ACTIONS(17), + [anon_sym_print] = ACTIONS(19), + [anon_sym_assert] = ACTIONS(21), + [anon_sym_return] = ACTIONS(23), + [anon_sym_del] = ACTIONS(25), + [anon_sym_raise] = ACTIONS(27), + [anon_sym_pass] = ACTIONS(29), + [anon_sym_break] = ACTIONS(31), + [anon_sym_continue] = ACTIONS(33), + [anon_sym_if] = ACTIONS(87), + [anon_sym_async] = ACTIONS(89), + [anon_sym_for] = ACTIONS(91), + [anon_sym_while] = ACTIONS(93), + [anon_sym_try] = ACTIONS(95), + [anon_sym_with] = ACTIONS(97), + [anon_sym_match] = ACTIONS(99), + [anon_sym_DASH] = ACTIONS(49), + [anon_sym_PLUS] = ACTIONS(49), + [anon_sym_LBRACK] = ACTIONS(51), + [anon_sym_LBRACE] = ACTIONS(53), + [anon_sym_STAR_STAR] = ACTIONS(55), + [anon_sym_def] = ACTIONS(101), + [anon_sym_global] = ACTIONS(59), + [anon_sym_nonlocal] = ACTIONS(61), + [anon_sym_exec] = ACTIONS(63), + [anon_sym_type] = ACTIONS(65), + [anon_sym_class] = ACTIONS(103), + [anon_sym_AT] = ACTIONS(69), + [anon_sym_not] = ACTIONS(71), + [anon_sym_TILDE] = ACTIONS(49), + [anon_sym_lambda] = ACTIONS(73), + [anon_sym_yield] = ACTIONS(75), + [sym_ellipsis] = ACTIONS(77), + [sym_integer] = ACTIONS(79), + [sym_float] = ACTIONS(77), + [anon_sym_await] = ACTIONS(81), + [sym_true] = ACTIONS(79), + [sym_false] = ACTIONS(79), + [sym_none] = ACTIONS(79), [sym_comment] = ACTIONS(3), - [sym__dedent] = ACTIONS(107), - [sym__string_start] = ACTIONS(81), - [sym__template_string_start] = ACTIONS(83), + [sym__dedent] = ACTIONS(109), + [sym__string_start] = ACTIONS(83), + [sym__template_string_start] = ACTIONS(85), }, [STATE(25)] = { - [sym__statement] = STATE(63), - [sym__simple_statements] = STATE(63), + [sym__statement] = STATE(61), + [sym__simple_statements] = STATE(61), [sym_import_statement] = STATE(1332), [sym_future_import_statement] = STATE(1332), [sym_import_from_statement] = STATE(1332), [sym_print_statement] = STATE(1332), [sym_assert_statement] = STATE(1332), [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1158), + [sym_named_expression] = STATE(1156), [sym_return_statement] = STATE(1332), [sym_delete_statement] = STATE(1332), [sym_raise_statement] = STATE(1332), [sym_pass_statement] = STATE(1332), [sym_break_statement] = STATE(1332), [sym_continue_statement] = STATE(1332), - [sym_if_statement] = STATE(63), - [sym_for_statement] = STATE(63), - [sym_while_statement] = STATE(63), - [sym_try_statement] = STATE(63), - [sym_with_statement] = STATE(63), - [sym_match_statement] = STATE(63), - [sym_function_definition] = STATE(63), - [sym_list_splat] = STATE(1549), - [sym_dictionary_splat] = STATE(1549), + [sym_if_statement] = STATE(61), + [sym_for_statement] = STATE(61), + [sym_while_statement] = STATE(61), + [sym_try_statement] = STATE(61), + [sym_with_statement] = STATE(61), + [sym_match_statement] = STATE(61), + [sym_function_definition] = STATE(61), + [sym_list_splat] = STATE(1520), + [sym_dictionary_splat] = STATE(1520), [sym_global_statement] = STATE(1332), [sym_nonlocal_statement] = STATE(1332), [sym_exec_statement] = STATE(1332), [sym_type_alias_statement] = STATE(1332), - [sym_class_definition] = STATE(63), - [sym_decorated_definition] = STATE(63), - [sym_decorator] = STATE(1113), - [sym_block] = STATE(545), - [sym_expression_list] = STATE(1551), - [sym_pattern] = STATE(1013), - [sym_tuple_pattern] = STATE(999), - [sym_list_pattern] = STATE(999), - [sym_list_splat_pattern] = STATE(999), - [sym_expression] = STATE(1185), - [sym_primary_expression] = STATE(779), - [sym_not_operator] = STATE(1158), - [sym_boolean_operator] = STATE(1158), - [sym_binary_operator] = STATE(908), - [sym_unary_operator] = STATE(908), - [sym_comparison_operator] = STATE(1158), - [sym_lambda] = STATE(1158), - [sym_assignment] = STATE(1551), - [sym_augmented_assignment] = STATE(1551), - [sym_pattern_list] = STATE(1024), - [sym_yield] = STATE(1551), - [sym_attribute] = STATE(494), - [sym_subscript] = STATE(494), - [sym_call] = STATE(908), - [sym_list] = STATE(908), - [sym_set] = STATE(908), - [sym_tuple] = STATE(908), - [sym_dictionary] = STATE(908), - [sym_list_comprehension] = STATE(908), - [sym_dictionary_comprehension] = STATE(908), - [sym_set_comprehension] = STATE(908), - [sym_generator_expression] = STATE(908), - [sym_parenthesized_expression] = STATE(908), - [sym_conditional_expression] = STATE(1158), - [sym_concatenated_string] = STATE(908), - [sym_string] = STATE(782), - [sym_concatenated_template_string] = STATE(908), - [sym_template_string] = STATE(763), - [sym_await] = STATE(908), - [aux_sym_module_repeat1] = STATE(63), - [aux_sym_decorated_definition_repeat1] = STATE(1113), + [sym_class_definition] = STATE(61), + [sym_decorated_definition] = STATE(61), + [sym_decorator] = STATE(1127), + [sym_block] = STATE(601), + [sym_expression_list] = STATE(1522), + [sym_pattern] = STATE(1017), + [sym_tuple_pattern] = STATE(1001), + [sym_list_pattern] = STATE(1001), + [sym_list_splat_pattern] = STATE(1001), + [sym_expression] = STATE(1176), + [sym_primary_expression] = STATE(765), + [sym_not_operator] = STATE(1156), + [sym_boolean_operator] = STATE(1156), + [sym_binary_operator] = STATE(920), + [sym_unary_operator] = STATE(920), + [sym_comparison_operator] = STATE(1156), + [sym_lambda] = STATE(1156), + [sym_assignment] = STATE(1522), + [sym_augmented_assignment] = STATE(1522), + [sym_pattern_list] = STATE(1026), + [sym_yield] = STATE(1522), + [sym_attribute] = STATE(582), + [sym_subscript] = STATE(582), + [sym_call] = STATE(920), + [sym_list] = STATE(920), + [sym_set] = STATE(920), + [sym_tuple] = STATE(920), + [sym_dictionary] = STATE(920), + [sym_list_comprehension] = STATE(920), + [sym_dictionary_comprehension] = STATE(920), + [sym_set_comprehension] = STATE(920), + [sym_generator_expression] = STATE(920), + [sym_parenthesized_expression] = STATE(920), + [sym_conditional_expression] = STATE(1156), + [sym_concatenated_string] = STATE(920), + [sym_string] = STATE(775), + [sym_concatenated_template_string] = STATE(920), + [sym_template_string] = STATE(769), + [sym_await] = STATE(920), + [aux_sym_module_repeat1] = STATE(61), + [aux_sym_decorated_definition_repeat1] = STATE(1127), [sym_identifier] = ACTIONS(7), - [anon_sym_import] = ACTIONS(9), - [anon_sym_from] = ACTIONS(11), - [anon_sym_LPAREN] = ACTIONS(13), - [anon_sym_STAR] = ACTIONS(15), - [anon_sym_print] = ACTIONS(17), - [anon_sym_assert] = ACTIONS(19), - [anon_sym_return] = ACTIONS(21), - [anon_sym_del] = ACTIONS(23), - [anon_sym_raise] = ACTIONS(25), - [anon_sym_pass] = ACTIONS(27), - [anon_sym_break] = ACTIONS(29), - [anon_sym_continue] = ACTIONS(31), - [anon_sym_if] = ACTIONS(85), - [anon_sym_async] = ACTIONS(87), - [anon_sym_for] = ACTIONS(89), - [anon_sym_while] = ACTIONS(91), - [anon_sym_try] = ACTIONS(93), - [anon_sym_with] = ACTIONS(95), - [anon_sym_match] = ACTIONS(97), - [anon_sym_DASH] = ACTIONS(47), - [anon_sym_PLUS] = ACTIONS(47), - [anon_sym_LBRACK] = ACTIONS(49), - [anon_sym_LBRACE] = ACTIONS(51), - [anon_sym_STAR_STAR] = ACTIONS(53), - [anon_sym_def] = ACTIONS(99), - [anon_sym_global] = ACTIONS(57), - [anon_sym_nonlocal] = ACTIONS(59), - [anon_sym_exec] = ACTIONS(61), - [anon_sym_type] = ACTIONS(63), - [anon_sym_class] = ACTIONS(101), - [anon_sym_AT] = ACTIONS(67), - [anon_sym_not] = ACTIONS(69), - [anon_sym_TILDE] = ACTIONS(47), - [anon_sym_lambda] = ACTIONS(71), - [anon_sym_yield] = ACTIONS(73), - [sym_ellipsis] = ACTIONS(75), - [sym_integer] = ACTIONS(77), - [sym_float] = ACTIONS(75), - [anon_sym_await] = ACTIONS(79), - [sym_true] = ACTIONS(77), - [sym_false] = ACTIONS(77), - [sym_none] = ACTIONS(77), + [anon_sym_lazy] = ACTIONS(9), + [anon_sym_import] = ACTIONS(11), + [anon_sym_from] = ACTIONS(13), + [anon_sym_LPAREN] = ACTIONS(15), + [anon_sym_STAR] = ACTIONS(17), + [anon_sym_print] = ACTIONS(19), + [anon_sym_assert] = ACTIONS(21), + [anon_sym_return] = ACTIONS(23), + [anon_sym_del] = ACTIONS(25), + [anon_sym_raise] = ACTIONS(27), + [anon_sym_pass] = ACTIONS(29), + [anon_sym_break] = ACTIONS(31), + [anon_sym_continue] = ACTIONS(33), + [anon_sym_if] = ACTIONS(87), + [anon_sym_async] = ACTIONS(89), + [anon_sym_for] = ACTIONS(91), + [anon_sym_while] = ACTIONS(93), + [anon_sym_try] = ACTIONS(95), + [anon_sym_with] = ACTIONS(97), + [anon_sym_match] = ACTIONS(99), + [anon_sym_DASH] = ACTIONS(49), + [anon_sym_PLUS] = ACTIONS(49), + [anon_sym_LBRACK] = ACTIONS(51), + [anon_sym_LBRACE] = ACTIONS(53), + [anon_sym_STAR_STAR] = ACTIONS(55), + [anon_sym_def] = ACTIONS(101), + [anon_sym_global] = ACTIONS(59), + [anon_sym_nonlocal] = ACTIONS(61), + [anon_sym_exec] = ACTIONS(63), + [anon_sym_type] = ACTIONS(65), + [anon_sym_class] = ACTIONS(103), + [anon_sym_AT] = ACTIONS(69), + [anon_sym_not] = ACTIONS(71), + [anon_sym_TILDE] = ACTIONS(49), + [anon_sym_lambda] = ACTIONS(73), + [anon_sym_yield] = ACTIONS(75), + [sym_ellipsis] = ACTIONS(77), + [sym_integer] = ACTIONS(79), + [sym_float] = ACTIONS(77), + [anon_sym_await] = ACTIONS(81), + [sym_true] = ACTIONS(79), + [sym_false] = ACTIONS(79), + [sym_none] = ACTIONS(79), [sym_comment] = ACTIONS(3), - [sym__dedent] = ACTIONS(107), - [sym__string_start] = ACTIONS(81), - [sym__template_string_start] = ACTIONS(83), + [sym__dedent] = ACTIONS(109), + [sym__string_start] = ACTIONS(83), + [sym__template_string_start] = ACTIONS(85), }, [STATE(26)] = { - [sym__statement] = STATE(63), - [sym__simple_statements] = STATE(63), + [sym__statement] = STATE(61), + [sym__simple_statements] = STATE(61), [sym_import_statement] = STATE(1332), [sym_future_import_statement] = STATE(1332), [sym_import_from_statement] = STATE(1332), [sym_print_statement] = STATE(1332), [sym_assert_statement] = STATE(1332), [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1158), + [sym_named_expression] = STATE(1156), [sym_return_statement] = STATE(1332), [sym_delete_statement] = STATE(1332), [sym_raise_statement] = STATE(1332), [sym_pass_statement] = STATE(1332), [sym_break_statement] = STATE(1332), [sym_continue_statement] = STATE(1332), - [sym_if_statement] = STATE(63), - [sym_for_statement] = STATE(63), - [sym_while_statement] = STATE(63), - [sym_try_statement] = STATE(63), - [sym_with_statement] = STATE(63), - [sym_match_statement] = STATE(63), - [sym_function_definition] = STATE(63), - [sym_list_splat] = STATE(1549), - [sym_dictionary_splat] = STATE(1549), + [sym_if_statement] = STATE(61), + [sym_for_statement] = STATE(61), + [sym_while_statement] = STATE(61), + [sym_try_statement] = STATE(61), + [sym_with_statement] = STATE(61), + [sym_match_statement] = STATE(61), + [sym_function_definition] = STATE(61), + [sym_list_splat] = STATE(1520), + [sym_dictionary_splat] = STATE(1520), [sym_global_statement] = STATE(1332), [sym_nonlocal_statement] = STATE(1332), [sym_exec_statement] = STATE(1332), [sym_type_alias_statement] = STATE(1332), - [sym_class_definition] = STATE(63), - [sym_decorated_definition] = STATE(63), - [sym_decorator] = STATE(1113), - [sym_block] = STATE(457), - [sym_expression_list] = STATE(1551), - [sym_pattern] = STATE(1013), - [sym_tuple_pattern] = STATE(999), - [sym_list_pattern] = STATE(999), - [sym_list_splat_pattern] = STATE(999), - [sym_expression] = STATE(1185), - [sym_primary_expression] = STATE(779), - [sym_not_operator] = STATE(1158), - [sym_boolean_operator] = STATE(1158), - [sym_binary_operator] = STATE(908), - [sym_unary_operator] = STATE(908), - [sym_comparison_operator] = STATE(1158), - [sym_lambda] = STATE(1158), - [sym_assignment] = STATE(1551), - [sym_augmented_assignment] = STATE(1551), - [sym_pattern_list] = STATE(1024), - [sym_yield] = STATE(1551), - [sym_attribute] = STATE(494), - [sym_subscript] = STATE(494), - [sym_call] = STATE(908), - [sym_list] = STATE(908), - [sym_set] = STATE(908), - [sym_tuple] = STATE(908), - [sym_dictionary] = STATE(908), - [sym_list_comprehension] = STATE(908), - [sym_dictionary_comprehension] = STATE(908), - [sym_set_comprehension] = STATE(908), - [sym_generator_expression] = STATE(908), - [sym_parenthesized_expression] = STATE(908), - [sym_conditional_expression] = STATE(1158), - [sym_concatenated_string] = STATE(908), - [sym_string] = STATE(782), - [sym_concatenated_template_string] = STATE(908), - [sym_template_string] = STATE(763), - [sym_await] = STATE(908), - [aux_sym_module_repeat1] = STATE(63), - [aux_sym_decorated_definition_repeat1] = STATE(1113), + [sym_class_definition] = STATE(61), + [sym_decorated_definition] = STATE(61), + [sym_decorator] = STATE(1127), + [sym_block] = STATE(456), + [sym_expression_list] = STATE(1522), + [sym_pattern] = STATE(1017), + [sym_tuple_pattern] = STATE(1001), + [sym_list_pattern] = STATE(1001), + [sym_list_splat_pattern] = STATE(1001), + [sym_expression] = STATE(1176), + [sym_primary_expression] = STATE(765), + [sym_not_operator] = STATE(1156), + [sym_boolean_operator] = STATE(1156), + [sym_binary_operator] = STATE(920), + [sym_unary_operator] = STATE(920), + [sym_comparison_operator] = STATE(1156), + [sym_lambda] = STATE(1156), + [sym_assignment] = STATE(1522), + [sym_augmented_assignment] = STATE(1522), + [sym_pattern_list] = STATE(1026), + [sym_yield] = STATE(1522), + [sym_attribute] = STATE(582), + [sym_subscript] = STATE(582), + [sym_call] = STATE(920), + [sym_list] = STATE(920), + [sym_set] = STATE(920), + [sym_tuple] = STATE(920), + [sym_dictionary] = STATE(920), + [sym_list_comprehension] = STATE(920), + [sym_dictionary_comprehension] = STATE(920), + [sym_set_comprehension] = STATE(920), + [sym_generator_expression] = STATE(920), + [sym_parenthesized_expression] = STATE(920), + [sym_conditional_expression] = STATE(1156), + [sym_concatenated_string] = STATE(920), + [sym_string] = STATE(775), + [sym_concatenated_template_string] = STATE(920), + [sym_template_string] = STATE(769), + [sym_await] = STATE(920), + [aux_sym_module_repeat1] = STATE(61), + [aux_sym_decorated_definition_repeat1] = STATE(1127), [sym_identifier] = ACTIONS(7), - [anon_sym_import] = ACTIONS(9), - [anon_sym_from] = ACTIONS(11), - [anon_sym_LPAREN] = ACTIONS(13), - [anon_sym_STAR] = ACTIONS(15), - [anon_sym_print] = ACTIONS(17), - [anon_sym_assert] = ACTIONS(19), - [anon_sym_return] = ACTIONS(21), - [anon_sym_del] = ACTIONS(23), - [anon_sym_raise] = ACTIONS(25), - [anon_sym_pass] = ACTIONS(27), - [anon_sym_break] = ACTIONS(29), - [anon_sym_continue] = ACTIONS(31), - [anon_sym_if] = ACTIONS(85), - [anon_sym_async] = ACTIONS(87), - [anon_sym_for] = ACTIONS(89), - [anon_sym_while] = ACTIONS(91), - [anon_sym_try] = ACTIONS(93), - [anon_sym_with] = ACTIONS(95), - [anon_sym_match] = ACTIONS(97), - [anon_sym_DASH] = ACTIONS(47), - [anon_sym_PLUS] = ACTIONS(47), - [anon_sym_LBRACK] = ACTIONS(49), - [anon_sym_LBRACE] = ACTIONS(51), - [anon_sym_STAR_STAR] = ACTIONS(53), - [anon_sym_def] = ACTIONS(99), - [anon_sym_global] = ACTIONS(57), - [anon_sym_nonlocal] = ACTIONS(59), - [anon_sym_exec] = ACTIONS(61), - [anon_sym_type] = ACTIONS(63), - [anon_sym_class] = ACTIONS(101), - [anon_sym_AT] = ACTIONS(67), - [anon_sym_not] = ACTIONS(69), - [anon_sym_TILDE] = ACTIONS(47), - [anon_sym_lambda] = ACTIONS(71), - [anon_sym_yield] = ACTIONS(73), - [sym_ellipsis] = ACTIONS(75), - [sym_integer] = ACTIONS(77), - [sym_float] = ACTIONS(75), - [anon_sym_await] = ACTIONS(79), - [sym_true] = ACTIONS(77), - [sym_false] = ACTIONS(77), - [sym_none] = ACTIONS(77), + [anon_sym_lazy] = ACTIONS(9), + [anon_sym_import] = ACTIONS(11), + [anon_sym_from] = ACTIONS(13), + [anon_sym_LPAREN] = ACTIONS(15), + [anon_sym_STAR] = ACTIONS(17), + [anon_sym_print] = ACTIONS(19), + [anon_sym_assert] = ACTIONS(21), + [anon_sym_return] = ACTIONS(23), + [anon_sym_del] = ACTIONS(25), + [anon_sym_raise] = ACTIONS(27), + [anon_sym_pass] = ACTIONS(29), + [anon_sym_break] = ACTIONS(31), + [anon_sym_continue] = ACTIONS(33), + [anon_sym_if] = ACTIONS(87), + [anon_sym_async] = ACTIONS(89), + [anon_sym_for] = ACTIONS(91), + [anon_sym_while] = ACTIONS(93), + [anon_sym_try] = ACTIONS(95), + [anon_sym_with] = ACTIONS(97), + [anon_sym_match] = ACTIONS(99), + [anon_sym_DASH] = ACTIONS(49), + [anon_sym_PLUS] = ACTIONS(49), + [anon_sym_LBRACK] = ACTIONS(51), + [anon_sym_LBRACE] = ACTIONS(53), + [anon_sym_STAR_STAR] = ACTIONS(55), + [anon_sym_def] = ACTIONS(101), + [anon_sym_global] = ACTIONS(59), + [anon_sym_nonlocal] = ACTIONS(61), + [anon_sym_exec] = ACTIONS(63), + [anon_sym_type] = ACTIONS(65), + [anon_sym_class] = ACTIONS(103), + [anon_sym_AT] = ACTIONS(69), + [anon_sym_not] = ACTIONS(71), + [anon_sym_TILDE] = ACTIONS(49), + [anon_sym_lambda] = ACTIONS(73), + [anon_sym_yield] = ACTIONS(75), + [sym_ellipsis] = ACTIONS(77), + [sym_integer] = ACTIONS(79), + [sym_float] = ACTIONS(77), + [anon_sym_await] = ACTIONS(81), + [sym_true] = ACTIONS(79), + [sym_false] = ACTIONS(79), + [sym_none] = ACTIONS(79), [sym_comment] = ACTIONS(3), - [sym__dedent] = ACTIONS(107), - [sym__string_start] = ACTIONS(81), - [sym__template_string_start] = ACTIONS(83), + [sym__dedent] = ACTIONS(109), + [sym__string_start] = ACTIONS(83), + [sym__template_string_start] = ACTIONS(85), }, [STATE(27)] = { - [sym__statement] = STATE(63), - [sym__simple_statements] = STATE(63), + [sym__statement] = STATE(61), + [sym__simple_statements] = STATE(61), [sym_import_statement] = STATE(1332), [sym_future_import_statement] = STATE(1332), [sym_import_from_statement] = STATE(1332), [sym_print_statement] = STATE(1332), [sym_assert_statement] = STATE(1332), [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1158), + [sym_named_expression] = STATE(1156), [sym_return_statement] = STATE(1332), [sym_delete_statement] = STATE(1332), [sym_raise_statement] = STATE(1332), [sym_pass_statement] = STATE(1332), [sym_break_statement] = STATE(1332), [sym_continue_statement] = STATE(1332), - [sym_if_statement] = STATE(63), - [sym_for_statement] = STATE(63), - [sym_while_statement] = STATE(63), - [sym_try_statement] = STATE(63), - [sym_with_statement] = STATE(63), - [sym_match_statement] = STATE(63), - [sym_function_definition] = STATE(63), - [sym_list_splat] = STATE(1549), - [sym_dictionary_splat] = STATE(1549), + [sym_if_statement] = STATE(61), + [sym_for_statement] = STATE(61), + [sym_while_statement] = STATE(61), + [sym_try_statement] = STATE(61), + [sym_with_statement] = STATE(61), + [sym_match_statement] = STATE(61), + [sym_function_definition] = STATE(61), + [sym_list_splat] = STATE(1520), + [sym_dictionary_splat] = STATE(1520), [sym_global_statement] = STATE(1332), [sym_nonlocal_statement] = STATE(1332), [sym_exec_statement] = STATE(1332), [sym_type_alias_statement] = STATE(1332), - [sym_class_definition] = STATE(63), - [sym_decorated_definition] = STATE(63), - [sym_decorator] = STATE(1113), - [sym_block] = STATE(501), - [sym_expression_list] = STATE(1551), - [sym_pattern] = STATE(1013), - [sym_tuple_pattern] = STATE(999), - [sym_list_pattern] = STATE(999), - [sym_list_splat_pattern] = STATE(999), - [sym_expression] = STATE(1185), - [sym_primary_expression] = STATE(779), - [sym_not_operator] = STATE(1158), - [sym_boolean_operator] = STATE(1158), - [sym_binary_operator] = STATE(908), - [sym_unary_operator] = STATE(908), - [sym_comparison_operator] = STATE(1158), - [sym_lambda] = STATE(1158), - [sym_assignment] = STATE(1551), - [sym_augmented_assignment] = STATE(1551), - [sym_pattern_list] = STATE(1024), - [sym_yield] = STATE(1551), - [sym_attribute] = STATE(494), - [sym_subscript] = STATE(494), - [sym_call] = STATE(908), - [sym_list] = STATE(908), - [sym_set] = STATE(908), - [sym_tuple] = STATE(908), - [sym_dictionary] = STATE(908), - [sym_list_comprehension] = STATE(908), - [sym_dictionary_comprehension] = STATE(908), - [sym_set_comprehension] = STATE(908), - [sym_generator_expression] = STATE(908), - [sym_parenthesized_expression] = STATE(908), - [sym_conditional_expression] = STATE(1158), - [sym_concatenated_string] = STATE(908), - [sym_string] = STATE(782), - [sym_concatenated_template_string] = STATE(908), - [sym_template_string] = STATE(763), - [sym_await] = STATE(908), - [aux_sym_module_repeat1] = STATE(63), - [aux_sym_decorated_definition_repeat1] = STATE(1113), + [sym_class_definition] = STATE(61), + [sym_decorated_definition] = STATE(61), + [sym_decorator] = STATE(1127), + [sym_block] = STATE(498), + [sym_expression_list] = STATE(1522), + [sym_pattern] = STATE(1017), + [sym_tuple_pattern] = STATE(1001), + [sym_list_pattern] = STATE(1001), + [sym_list_splat_pattern] = STATE(1001), + [sym_expression] = STATE(1176), + [sym_primary_expression] = STATE(765), + [sym_not_operator] = STATE(1156), + [sym_boolean_operator] = STATE(1156), + [sym_binary_operator] = STATE(920), + [sym_unary_operator] = STATE(920), + [sym_comparison_operator] = STATE(1156), + [sym_lambda] = STATE(1156), + [sym_assignment] = STATE(1522), + [sym_augmented_assignment] = STATE(1522), + [sym_pattern_list] = STATE(1026), + [sym_yield] = STATE(1522), + [sym_attribute] = STATE(582), + [sym_subscript] = STATE(582), + [sym_call] = STATE(920), + [sym_list] = STATE(920), + [sym_set] = STATE(920), + [sym_tuple] = STATE(920), + [sym_dictionary] = STATE(920), + [sym_list_comprehension] = STATE(920), + [sym_dictionary_comprehension] = STATE(920), + [sym_set_comprehension] = STATE(920), + [sym_generator_expression] = STATE(920), + [sym_parenthesized_expression] = STATE(920), + [sym_conditional_expression] = STATE(1156), + [sym_concatenated_string] = STATE(920), + [sym_string] = STATE(775), + [sym_concatenated_template_string] = STATE(920), + [sym_template_string] = STATE(769), + [sym_await] = STATE(920), + [aux_sym_module_repeat1] = STATE(61), + [aux_sym_decorated_definition_repeat1] = STATE(1127), [sym_identifier] = ACTIONS(7), - [anon_sym_import] = ACTIONS(9), - [anon_sym_from] = ACTIONS(11), - [anon_sym_LPAREN] = ACTIONS(13), - [anon_sym_STAR] = ACTIONS(15), - [anon_sym_print] = ACTIONS(17), - [anon_sym_assert] = ACTIONS(19), - [anon_sym_return] = ACTIONS(21), - [anon_sym_del] = ACTIONS(23), - [anon_sym_raise] = ACTIONS(25), - [anon_sym_pass] = ACTIONS(27), - [anon_sym_break] = ACTIONS(29), - [anon_sym_continue] = ACTIONS(31), - [anon_sym_if] = ACTIONS(85), - [anon_sym_async] = ACTIONS(87), - [anon_sym_for] = ACTIONS(89), - [anon_sym_while] = ACTIONS(91), - [anon_sym_try] = ACTIONS(93), - [anon_sym_with] = ACTIONS(95), - [anon_sym_match] = ACTIONS(97), - [anon_sym_DASH] = ACTIONS(47), - [anon_sym_PLUS] = ACTIONS(47), - [anon_sym_LBRACK] = ACTIONS(49), - [anon_sym_LBRACE] = ACTIONS(51), - [anon_sym_STAR_STAR] = ACTIONS(53), - [anon_sym_def] = ACTIONS(99), - [anon_sym_global] = ACTIONS(57), - [anon_sym_nonlocal] = ACTIONS(59), - [anon_sym_exec] = ACTIONS(61), - [anon_sym_type] = ACTIONS(63), - [anon_sym_class] = ACTIONS(101), - [anon_sym_AT] = ACTIONS(67), - [anon_sym_not] = ACTIONS(69), - [anon_sym_TILDE] = ACTIONS(47), - [anon_sym_lambda] = ACTIONS(71), - [anon_sym_yield] = ACTIONS(73), - [sym_ellipsis] = ACTIONS(75), - [sym_integer] = ACTIONS(77), - [sym_float] = ACTIONS(75), - [anon_sym_await] = ACTIONS(79), - [sym_true] = ACTIONS(77), - [sym_false] = ACTIONS(77), - [sym_none] = ACTIONS(77), + [anon_sym_lazy] = ACTIONS(9), + [anon_sym_import] = ACTIONS(11), + [anon_sym_from] = ACTIONS(13), + [anon_sym_LPAREN] = ACTIONS(15), + [anon_sym_STAR] = ACTIONS(17), + [anon_sym_print] = ACTIONS(19), + [anon_sym_assert] = ACTIONS(21), + [anon_sym_return] = ACTIONS(23), + [anon_sym_del] = ACTIONS(25), + [anon_sym_raise] = ACTIONS(27), + [anon_sym_pass] = ACTIONS(29), + [anon_sym_break] = ACTIONS(31), + [anon_sym_continue] = ACTIONS(33), + [anon_sym_if] = ACTIONS(87), + [anon_sym_async] = ACTIONS(89), + [anon_sym_for] = ACTIONS(91), + [anon_sym_while] = ACTIONS(93), + [anon_sym_try] = ACTIONS(95), + [anon_sym_with] = ACTIONS(97), + [anon_sym_match] = ACTIONS(99), + [anon_sym_DASH] = ACTIONS(49), + [anon_sym_PLUS] = ACTIONS(49), + [anon_sym_LBRACK] = ACTIONS(51), + [anon_sym_LBRACE] = ACTIONS(53), + [anon_sym_STAR_STAR] = ACTIONS(55), + [anon_sym_def] = ACTIONS(101), + [anon_sym_global] = ACTIONS(59), + [anon_sym_nonlocal] = ACTIONS(61), + [anon_sym_exec] = ACTIONS(63), + [anon_sym_type] = ACTIONS(65), + [anon_sym_class] = ACTIONS(103), + [anon_sym_AT] = ACTIONS(69), + [anon_sym_not] = ACTIONS(71), + [anon_sym_TILDE] = ACTIONS(49), + [anon_sym_lambda] = ACTIONS(73), + [anon_sym_yield] = ACTIONS(75), + [sym_ellipsis] = ACTIONS(77), + [sym_integer] = ACTIONS(79), + [sym_float] = ACTIONS(77), + [anon_sym_await] = ACTIONS(81), + [sym_true] = ACTIONS(79), + [sym_false] = ACTIONS(79), + [sym_none] = ACTIONS(79), [sym_comment] = ACTIONS(3), - [sym__dedent] = ACTIONS(107), - [sym__string_start] = ACTIONS(81), - [sym__template_string_start] = ACTIONS(83), + [sym__dedent] = ACTIONS(109), + [sym__string_start] = ACTIONS(83), + [sym__template_string_start] = ACTIONS(85), }, [STATE(28)] = { - [sym__statement] = STATE(63), - [sym__simple_statements] = STATE(63), + [sym__statement] = STATE(61), + [sym__simple_statements] = STATE(61), [sym_import_statement] = STATE(1332), [sym_future_import_statement] = STATE(1332), [sym_import_from_statement] = STATE(1332), [sym_print_statement] = STATE(1332), [sym_assert_statement] = STATE(1332), [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1158), + [sym_named_expression] = STATE(1156), [sym_return_statement] = STATE(1332), [sym_delete_statement] = STATE(1332), [sym_raise_statement] = STATE(1332), [sym_pass_statement] = STATE(1332), [sym_break_statement] = STATE(1332), [sym_continue_statement] = STATE(1332), - [sym_if_statement] = STATE(63), - [sym_for_statement] = STATE(63), - [sym_while_statement] = STATE(63), - [sym_try_statement] = STATE(63), - [sym_with_statement] = STATE(63), - [sym_match_statement] = STATE(63), - [sym_function_definition] = STATE(63), - [sym_list_splat] = STATE(1549), - [sym_dictionary_splat] = STATE(1549), + [sym_if_statement] = STATE(61), + [sym_for_statement] = STATE(61), + [sym_while_statement] = STATE(61), + [sym_try_statement] = STATE(61), + [sym_with_statement] = STATE(61), + [sym_match_statement] = STATE(61), + [sym_function_definition] = STATE(61), + [sym_list_splat] = STATE(1520), + [sym_dictionary_splat] = STATE(1520), [sym_global_statement] = STATE(1332), [sym_nonlocal_statement] = STATE(1332), [sym_exec_statement] = STATE(1332), [sym_type_alias_statement] = STATE(1332), - [sym_class_definition] = STATE(63), - [sym_decorated_definition] = STATE(63), - [sym_decorator] = STATE(1113), - [sym_block] = STATE(548), - [sym_expression_list] = STATE(1551), - [sym_pattern] = STATE(1013), - [sym_tuple_pattern] = STATE(999), - [sym_list_pattern] = STATE(999), - [sym_list_splat_pattern] = STATE(999), - [sym_expression] = STATE(1185), - [sym_primary_expression] = STATE(779), - [sym_not_operator] = STATE(1158), - [sym_boolean_operator] = STATE(1158), - [sym_binary_operator] = STATE(908), - [sym_unary_operator] = STATE(908), - [sym_comparison_operator] = STATE(1158), - [sym_lambda] = STATE(1158), - [sym_assignment] = STATE(1551), - [sym_augmented_assignment] = STATE(1551), - [sym_pattern_list] = STATE(1024), - [sym_yield] = STATE(1551), - [sym_attribute] = STATE(494), - [sym_subscript] = STATE(494), - [sym_call] = STATE(908), - [sym_list] = STATE(908), - [sym_set] = STATE(908), - [sym_tuple] = STATE(908), - [sym_dictionary] = STATE(908), - [sym_list_comprehension] = STATE(908), - [sym_dictionary_comprehension] = STATE(908), - [sym_set_comprehension] = STATE(908), - [sym_generator_expression] = STATE(908), - [sym_parenthesized_expression] = STATE(908), - [sym_conditional_expression] = STATE(1158), - [sym_concatenated_string] = STATE(908), - [sym_string] = STATE(782), - [sym_concatenated_template_string] = STATE(908), - [sym_template_string] = STATE(763), - [sym_await] = STATE(908), - [aux_sym_module_repeat1] = STATE(63), - [aux_sym_decorated_definition_repeat1] = STATE(1113), + [sym_class_definition] = STATE(61), + [sym_decorated_definition] = STATE(61), + [sym_decorator] = STATE(1127), + [sym_block] = STATE(604), + [sym_expression_list] = STATE(1522), + [sym_pattern] = STATE(1017), + [sym_tuple_pattern] = STATE(1001), + [sym_list_pattern] = STATE(1001), + [sym_list_splat_pattern] = STATE(1001), + [sym_expression] = STATE(1176), + [sym_primary_expression] = STATE(765), + [sym_not_operator] = STATE(1156), + [sym_boolean_operator] = STATE(1156), + [sym_binary_operator] = STATE(920), + [sym_unary_operator] = STATE(920), + [sym_comparison_operator] = STATE(1156), + [sym_lambda] = STATE(1156), + [sym_assignment] = STATE(1522), + [sym_augmented_assignment] = STATE(1522), + [sym_pattern_list] = STATE(1026), + [sym_yield] = STATE(1522), + [sym_attribute] = STATE(582), + [sym_subscript] = STATE(582), + [sym_call] = STATE(920), + [sym_list] = STATE(920), + [sym_set] = STATE(920), + [sym_tuple] = STATE(920), + [sym_dictionary] = STATE(920), + [sym_list_comprehension] = STATE(920), + [sym_dictionary_comprehension] = STATE(920), + [sym_set_comprehension] = STATE(920), + [sym_generator_expression] = STATE(920), + [sym_parenthesized_expression] = STATE(920), + [sym_conditional_expression] = STATE(1156), + [sym_concatenated_string] = STATE(920), + [sym_string] = STATE(775), + [sym_concatenated_template_string] = STATE(920), + [sym_template_string] = STATE(769), + [sym_await] = STATE(920), + [aux_sym_module_repeat1] = STATE(61), + [aux_sym_decorated_definition_repeat1] = STATE(1127), [sym_identifier] = ACTIONS(7), - [anon_sym_import] = ACTIONS(9), - [anon_sym_from] = ACTIONS(11), - [anon_sym_LPAREN] = ACTIONS(13), - [anon_sym_STAR] = ACTIONS(15), - [anon_sym_print] = ACTIONS(17), - [anon_sym_assert] = ACTIONS(19), - [anon_sym_return] = ACTIONS(21), - [anon_sym_del] = ACTIONS(23), - [anon_sym_raise] = ACTIONS(25), - [anon_sym_pass] = ACTIONS(27), - [anon_sym_break] = ACTIONS(29), - [anon_sym_continue] = ACTIONS(31), - [anon_sym_if] = ACTIONS(85), - [anon_sym_async] = ACTIONS(87), - [anon_sym_for] = ACTIONS(89), - [anon_sym_while] = ACTIONS(91), - [anon_sym_try] = ACTIONS(93), - [anon_sym_with] = ACTIONS(95), - [anon_sym_match] = ACTIONS(97), - [anon_sym_DASH] = ACTIONS(47), - [anon_sym_PLUS] = ACTIONS(47), - [anon_sym_LBRACK] = ACTIONS(49), - [anon_sym_LBRACE] = ACTIONS(51), - [anon_sym_STAR_STAR] = ACTIONS(53), - [anon_sym_def] = ACTIONS(99), - [anon_sym_global] = ACTIONS(57), - [anon_sym_nonlocal] = ACTIONS(59), - [anon_sym_exec] = ACTIONS(61), - [anon_sym_type] = ACTIONS(63), - [anon_sym_class] = ACTIONS(101), - [anon_sym_AT] = ACTIONS(67), - [anon_sym_not] = ACTIONS(69), - [anon_sym_TILDE] = ACTIONS(47), - [anon_sym_lambda] = ACTIONS(71), - [anon_sym_yield] = ACTIONS(73), - [sym_ellipsis] = ACTIONS(75), - [sym_integer] = ACTIONS(77), - [sym_float] = ACTIONS(75), - [anon_sym_await] = ACTIONS(79), - [sym_true] = ACTIONS(77), - [sym_false] = ACTIONS(77), - [sym_none] = ACTIONS(77), + [anon_sym_lazy] = ACTIONS(9), + [anon_sym_import] = ACTIONS(11), + [anon_sym_from] = ACTIONS(13), + [anon_sym_LPAREN] = ACTIONS(15), + [anon_sym_STAR] = ACTIONS(17), + [anon_sym_print] = ACTIONS(19), + [anon_sym_assert] = ACTIONS(21), + [anon_sym_return] = ACTIONS(23), + [anon_sym_del] = ACTIONS(25), + [anon_sym_raise] = ACTIONS(27), + [anon_sym_pass] = ACTIONS(29), + [anon_sym_break] = ACTIONS(31), + [anon_sym_continue] = ACTIONS(33), + [anon_sym_if] = ACTIONS(87), + [anon_sym_async] = ACTIONS(89), + [anon_sym_for] = ACTIONS(91), + [anon_sym_while] = ACTIONS(93), + [anon_sym_try] = ACTIONS(95), + [anon_sym_with] = ACTIONS(97), + [anon_sym_match] = ACTIONS(99), + [anon_sym_DASH] = ACTIONS(49), + [anon_sym_PLUS] = ACTIONS(49), + [anon_sym_LBRACK] = ACTIONS(51), + [anon_sym_LBRACE] = ACTIONS(53), + [anon_sym_STAR_STAR] = ACTIONS(55), + [anon_sym_def] = ACTIONS(101), + [anon_sym_global] = ACTIONS(59), + [anon_sym_nonlocal] = ACTIONS(61), + [anon_sym_exec] = ACTIONS(63), + [anon_sym_type] = ACTIONS(65), + [anon_sym_class] = ACTIONS(103), + [anon_sym_AT] = ACTIONS(69), + [anon_sym_not] = ACTIONS(71), + [anon_sym_TILDE] = ACTIONS(49), + [anon_sym_lambda] = ACTIONS(73), + [anon_sym_yield] = ACTIONS(75), + [sym_ellipsis] = ACTIONS(77), + [sym_integer] = ACTIONS(79), + [sym_float] = ACTIONS(77), + [anon_sym_await] = ACTIONS(81), + [sym_true] = ACTIONS(79), + [sym_false] = ACTIONS(79), + [sym_none] = ACTIONS(79), [sym_comment] = ACTIONS(3), - [sym__dedent] = ACTIONS(107), - [sym__string_start] = ACTIONS(81), - [sym__template_string_start] = ACTIONS(83), + [sym__dedent] = ACTIONS(109), + [sym__string_start] = ACTIONS(83), + [sym__template_string_start] = ACTIONS(85), }, [STATE(29)] = { - [sym__statement] = STATE(63), - [sym__simple_statements] = STATE(63), + [sym__statement] = STATE(61), + [sym__simple_statements] = STATE(61), [sym_import_statement] = STATE(1332), [sym_future_import_statement] = STATE(1332), [sym_import_from_statement] = STATE(1332), [sym_print_statement] = STATE(1332), [sym_assert_statement] = STATE(1332), [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1158), + [sym_named_expression] = STATE(1156), [sym_return_statement] = STATE(1332), [sym_delete_statement] = STATE(1332), [sym_raise_statement] = STATE(1332), [sym_pass_statement] = STATE(1332), [sym_break_statement] = STATE(1332), [sym_continue_statement] = STATE(1332), - [sym_if_statement] = STATE(63), - [sym_for_statement] = STATE(63), - [sym_while_statement] = STATE(63), - [sym_try_statement] = STATE(63), - [sym_with_statement] = STATE(63), - [sym_match_statement] = STATE(63), - [sym_function_definition] = STATE(63), - [sym_list_splat] = STATE(1549), - [sym_dictionary_splat] = STATE(1549), + [sym_if_statement] = STATE(61), + [sym_for_statement] = STATE(61), + [sym_while_statement] = STATE(61), + [sym_try_statement] = STATE(61), + [sym_with_statement] = STATE(61), + [sym_match_statement] = STATE(61), + [sym_function_definition] = STATE(61), + [sym_list_splat] = STATE(1520), + [sym_dictionary_splat] = STATE(1520), [sym_global_statement] = STATE(1332), [sym_nonlocal_statement] = STATE(1332), [sym_exec_statement] = STATE(1332), [sym_type_alias_statement] = STATE(1332), - [sym_class_definition] = STATE(63), - [sym_decorated_definition] = STATE(63), - [sym_decorator] = STATE(1113), - [sym_block] = STATE(448), - [sym_expression_list] = STATE(1551), - [sym_pattern] = STATE(1013), - [sym_tuple_pattern] = STATE(999), - [sym_list_pattern] = STATE(999), - [sym_list_splat_pattern] = STATE(999), - [sym_expression] = STATE(1185), - [sym_primary_expression] = STATE(779), - [sym_not_operator] = STATE(1158), - [sym_boolean_operator] = STATE(1158), - [sym_binary_operator] = STATE(908), - [sym_unary_operator] = STATE(908), - [sym_comparison_operator] = STATE(1158), - [sym_lambda] = STATE(1158), - [sym_assignment] = STATE(1551), - [sym_augmented_assignment] = STATE(1551), - [sym_pattern_list] = STATE(1024), - [sym_yield] = STATE(1551), - [sym_attribute] = STATE(494), - [sym_subscript] = STATE(494), - [sym_call] = STATE(908), - [sym_list] = STATE(908), - [sym_set] = STATE(908), - [sym_tuple] = STATE(908), - [sym_dictionary] = STATE(908), - [sym_list_comprehension] = STATE(908), - [sym_dictionary_comprehension] = STATE(908), - [sym_set_comprehension] = STATE(908), - [sym_generator_expression] = STATE(908), - [sym_parenthesized_expression] = STATE(908), - [sym_conditional_expression] = STATE(1158), - [sym_concatenated_string] = STATE(908), - [sym_string] = STATE(782), - [sym_concatenated_template_string] = STATE(908), - [sym_template_string] = STATE(763), - [sym_await] = STATE(908), - [aux_sym_module_repeat1] = STATE(63), - [aux_sym_decorated_definition_repeat1] = STATE(1113), + [sym_class_definition] = STATE(61), + [sym_decorated_definition] = STATE(61), + [sym_decorator] = STATE(1127), + [sym_block] = STATE(605), + [sym_expression_list] = STATE(1522), + [sym_pattern] = STATE(1017), + [sym_tuple_pattern] = STATE(1001), + [sym_list_pattern] = STATE(1001), + [sym_list_splat_pattern] = STATE(1001), + [sym_expression] = STATE(1176), + [sym_primary_expression] = STATE(765), + [sym_not_operator] = STATE(1156), + [sym_boolean_operator] = STATE(1156), + [sym_binary_operator] = STATE(920), + [sym_unary_operator] = STATE(920), + [sym_comparison_operator] = STATE(1156), + [sym_lambda] = STATE(1156), + [sym_assignment] = STATE(1522), + [sym_augmented_assignment] = STATE(1522), + [sym_pattern_list] = STATE(1026), + [sym_yield] = STATE(1522), + [sym_attribute] = STATE(582), + [sym_subscript] = STATE(582), + [sym_call] = STATE(920), + [sym_list] = STATE(920), + [sym_set] = STATE(920), + [sym_tuple] = STATE(920), + [sym_dictionary] = STATE(920), + [sym_list_comprehension] = STATE(920), + [sym_dictionary_comprehension] = STATE(920), + [sym_set_comprehension] = STATE(920), + [sym_generator_expression] = STATE(920), + [sym_parenthesized_expression] = STATE(920), + [sym_conditional_expression] = STATE(1156), + [sym_concatenated_string] = STATE(920), + [sym_string] = STATE(775), + [sym_concatenated_template_string] = STATE(920), + [sym_template_string] = STATE(769), + [sym_await] = STATE(920), + [aux_sym_module_repeat1] = STATE(61), + [aux_sym_decorated_definition_repeat1] = STATE(1127), [sym_identifier] = ACTIONS(7), - [anon_sym_import] = ACTIONS(9), - [anon_sym_from] = ACTIONS(11), - [anon_sym_LPAREN] = ACTIONS(13), - [anon_sym_STAR] = ACTIONS(15), - [anon_sym_print] = ACTIONS(17), - [anon_sym_assert] = ACTIONS(19), - [anon_sym_return] = ACTIONS(21), - [anon_sym_del] = ACTIONS(23), - [anon_sym_raise] = ACTIONS(25), - [anon_sym_pass] = ACTIONS(27), - [anon_sym_break] = ACTIONS(29), - [anon_sym_continue] = ACTIONS(31), - [anon_sym_if] = ACTIONS(85), - [anon_sym_async] = ACTIONS(87), - [anon_sym_for] = ACTIONS(89), - [anon_sym_while] = ACTIONS(91), - [anon_sym_try] = ACTIONS(93), - [anon_sym_with] = ACTIONS(95), - [anon_sym_match] = ACTIONS(97), - [anon_sym_DASH] = ACTIONS(47), - [anon_sym_PLUS] = ACTIONS(47), - [anon_sym_LBRACK] = ACTIONS(49), - [anon_sym_LBRACE] = ACTIONS(51), - [anon_sym_STAR_STAR] = ACTIONS(53), - [anon_sym_def] = ACTIONS(99), - [anon_sym_global] = ACTIONS(57), - [anon_sym_nonlocal] = ACTIONS(59), - [anon_sym_exec] = ACTIONS(61), - [anon_sym_type] = ACTIONS(63), - [anon_sym_class] = ACTIONS(101), - [anon_sym_AT] = ACTIONS(67), - [anon_sym_not] = ACTIONS(69), - [anon_sym_TILDE] = ACTIONS(47), - [anon_sym_lambda] = ACTIONS(71), - [anon_sym_yield] = ACTIONS(73), - [sym_ellipsis] = ACTIONS(75), - [sym_integer] = ACTIONS(77), - [sym_float] = ACTIONS(75), - [anon_sym_await] = ACTIONS(79), - [sym_true] = ACTIONS(77), - [sym_false] = ACTIONS(77), - [sym_none] = ACTIONS(77), + [anon_sym_lazy] = ACTIONS(9), + [anon_sym_import] = ACTIONS(11), + [anon_sym_from] = ACTIONS(13), + [anon_sym_LPAREN] = ACTIONS(15), + [anon_sym_STAR] = ACTIONS(17), + [anon_sym_print] = ACTIONS(19), + [anon_sym_assert] = ACTIONS(21), + [anon_sym_return] = ACTIONS(23), + [anon_sym_del] = ACTIONS(25), + [anon_sym_raise] = ACTIONS(27), + [anon_sym_pass] = ACTIONS(29), + [anon_sym_break] = ACTIONS(31), + [anon_sym_continue] = ACTIONS(33), + [anon_sym_if] = ACTIONS(87), + [anon_sym_async] = ACTIONS(89), + [anon_sym_for] = ACTIONS(91), + [anon_sym_while] = ACTIONS(93), + [anon_sym_try] = ACTIONS(95), + [anon_sym_with] = ACTIONS(97), + [anon_sym_match] = ACTIONS(99), + [anon_sym_DASH] = ACTIONS(49), + [anon_sym_PLUS] = ACTIONS(49), + [anon_sym_LBRACK] = ACTIONS(51), + [anon_sym_LBRACE] = ACTIONS(53), + [anon_sym_STAR_STAR] = ACTIONS(55), + [anon_sym_def] = ACTIONS(101), + [anon_sym_global] = ACTIONS(59), + [anon_sym_nonlocal] = ACTIONS(61), + [anon_sym_exec] = ACTIONS(63), + [anon_sym_type] = ACTIONS(65), + [anon_sym_class] = ACTIONS(103), + [anon_sym_AT] = ACTIONS(69), + [anon_sym_not] = ACTIONS(71), + [anon_sym_TILDE] = ACTIONS(49), + [anon_sym_lambda] = ACTIONS(73), + [anon_sym_yield] = ACTIONS(75), + [sym_ellipsis] = ACTIONS(77), + [sym_integer] = ACTIONS(79), + [sym_float] = ACTIONS(77), + [anon_sym_await] = ACTIONS(81), + [sym_true] = ACTIONS(79), + [sym_false] = ACTIONS(79), + [sym_none] = ACTIONS(79), [sym_comment] = ACTIONS(3), - [sym__dedent] = ACTIONS(107), - [sym__string_start] = ACTIONS(81), - [sym__template_string_start] = ACTIONS(83), + [sym__dedent] = ACTIONS(109), + [sym__string_start] = ACTIONS(83), + [sym__template_string_start] = ACTIONS(85), }, [STATE(30)] = { - [sym__statement] = STATE(63), - [sym__simple_statements] = STATE(63), + [sym__statement] = STATE(61), + [sym__simple_statements] = STATE(61), [sym_import_statement] = STATE(1332), [sym_future_import_statement] = STATE(1332), [sym_import_from_statement] = STATE(1332), [sym_print_statement] = STATE(1332), [sym_assert_statement] = STATE(1332), [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1158), + [sym_named_expression] = STATE(1156), [sym_return_statement] = STATE(1332), [sym_delete_statement] = STATE(1332), [sym_raise_statement] = STATE(1332), [sym_pass_statement] = STATE(1332), [sym_break_statement] = STATE(1332), [sym_continue_statement] = STATE(1332), - [sym_if_statement] = STATE(63), - [sym_for_statement] = STATE(63), - [sym_while_statement] = STATE(63), - [sym_try_statement] = STATE(63), - [sym_with_statement] = STATE(63), - [sym_match_statement] = STATE(63), - [sym_function_definition] = STATE(63), - [sym_list_splat] = STATE(1549), - [sym_dictionary_splat] = STATE(1549), + [sym_if_statement] = STATE(61), + [sym_for_statement] = STATE(61), + [sym_while_statement] = STATE(61), + [sym_try_statement] = STATE(61), + [sym_with_statement] = STATE(61), + [sym_match_statement] = STATE(61), + [sym_function_definition] = STATE(61), + [sym_list_splat] = STATE(1520), + [sym_dictionary_splat] = STATE(1520), [sym_global_statement] = STATE(1332), [sym_nonlocal_statement] = STATE(1332), [sym_exec_statement] = STATE(1332), [sym_type_alias_statement] = STATE(1332), - [sym_class_definition] = STATE(63), - [sym_decorated_definition] = STATE(63), - [sym_decorator] = STATE(1113), - [sym_block] = STATE(449), - [sym_expression_list] = STATE(1551), - [sym_pattern] = STATE(1013), - [sym_tuple_pattern] = STATE(999), - [sym_list_pattern] = STATE(999), - [sym_list_splat_pattern] = STATE(999), - [sym_expression] = STATE(1185), - [sym_primary_expression] = STATE(779), - [sym_not_operator] = STATE(1158), - [sym_boolean_operator] = STATE(1158), - [sym_binary_operator] = STATE(908), - [sym_unary_operator] = STATE(908), - [sym_comparison_operator] = STATE(1158), - [sym_lambda] = STATE(1158), - [sym_assignment] = STATE(1551), - [sym_augmented_assignment] = STATE(1551), - [sym_pattern_list] = STATE(1024), - [sym_yield] = STATE(1551), - [sym_attribute] = STATE(494), - [sym_subscript] = STATE(494), - [sym_call] = STATE(908), - [sym_list] = STATE(908), - [sym_set] = STATE(908), - [sym_tuple] = STATE(908), - [sym_dictionary] = STATE(908), - [sym_list_comprehension] = STATE(908), - [sym_dictionary_comprehension] = STATE(908), - [sym_set_comprehension] = STATE(908), - [sym_generator_expression] = STATE(908), - [sym_parenthesized_expression] = STATE(908), - [sym_conditional_expression] = STATE(1158), - [sym_concatenated_string] = STATE(908), - [sym_string] = STATE(782), - [sym_concatenated_template_string] = STATE(908), - [sym_template_string] = STATE(763), - [sym_await] = STATE(908), - [aux_sym_module_repeat1] = STATE(63), - [aux_sym_decorated_definition_repeat1] = STATE(1113), + [sym_class_definition] = STATE(61), + [sym_decorated_definition] = STATE(61), + [sym_decorator] = STATE(1127), + [sym_block] = STATE(438), + [sym_expression_list] = STATE(1522), + [sym_pattern] = STATE(1017), + [sym_tuple_pattern] = STATE(1001), + [sym_list_pattern] = STATE(1001), + [sym_list_splat_pattern] = STATE(1001), + [sym_expression] = STATE(1176), + [sym_primary_expression] = STATE(765), + [sym_not_operator] = STATE(1156), + [sym_boolean_operator] = STATE(1156), + [sym_binary_operator] = STATE(920), + [sym_unary_operator] = STATE(920), + [sym_comparison_operator] = STATE(1156), + [sym_lambda] = STATE(1156), + [sym_assignment] = STATE(1522), + [sym_augmented_assignment] = STATE(1522), + [sym_pattern_list] = STATE(1026), + [sym_yield] = STATE(1522), + [sym_attribute] = STATE(582), + [sym_subscript] = STATE(582), + [sym_call] = STATE(920), + [sym_list] = STATE(920), + [sym_set] = STATE(920), + [sym_tuple] = STATE(920), + [sym_dictionary] = STATE(920), + [sym_list_comprehension] = STATE(920), + [sym_dictionary_comprehension] = STATE(920), + [sym_set_comprehension] = STATE(920), + [sym_generator_expression] = STATE(920), + [sym_parenthesized_expression] = STATE(920), + [sym_conditional_expression] = STATE(1156), + [sym_concatenated_string] = STATE(920), + [sym_string] = STATE(775), + [sym_concatenated_template_string] = STATE(920), + [sym_template_string] = STATE(769), + [sym_await] = STATE(920), + [aux_sym_module_repeat1] = STATE(61), + [aux_sym_decorated_definition_repeat1] = STATE(1127), [sym_identifier] = ACTIONS(7), - [anon_sym_import] = ACTIONS(9), - [anon_sym_from] = ACTIONS(11), - [anon_sym_LPAREN] = ACTIONS(13), - [anon_sym_STAR] = ACTIONS(15), - [anon_sym_print] = ACTIONS(17), - [anon_sym_assert] = ACTIONS(19), - [anon_sym_return] = ACTIONS(21), - [anon_sym_del] = ACTIONS(23), - [anon_sym_raise] = ACTIONS(25), - [anon_sym_pass] = ACTIONS(27), - [anon_sym_break] = ACTIONS(29), - [anon_sym_continue] = ACTIONS(31), - [anon_sym_if] = ACTIONS(85), - [anon_sym_async] = ACTIONS(87), - [anon_sym_for] = ACTIONS(89), - [anon_sym_while] = ACTIONS(91), - [anon_sym_try] = ACTIONS(93), - [anon_sym_with] = ACTIONS(95), - [anon_sym_match] = ACTIONS(97), - [anon_sym_DASH] = ACTIONS(47), - [anon_sym_PLUS] = ACTIONS(47), - [anon_sym_LBRACK] = ACTIONS(49), - [anon_sym_LBRACE] = ACTIONS(51), - [anon_sym_STAR_STAR] = ACTIONS(53), - [anon_sym_def] = ACTIONS(99), - [anon_sym_global] = ACTIONS(57), - [anon_sym_nonlocal] = ACTIONS(59), - [anon_sym_exec] = ACTIONS(61), - [anon_sym_type] = ACTIONS(63), - [anon_sym_class] = ACTIONS(101), - [anon_sym_AT] = ACTIONS(67), - [anon_sym_not] = ACTIONS(69), - [anon_sym_TILDE] = ACTIONS(47), - [anon_sym_lambda] = ACTIONS(71), - [anon_sym_yield] = ACTIONS(73), - [sym_ellipsis] = ACTIONS(75), - [sym_integer] = ACTIONS(77), - [sym_float] = ACTIONS(75), - [anon_sym_await] = ACTIONS(79), - [sym_true] = ACTIONS(77), - [sym_false] = ACTIONS(77), - [sym_none] = ACTIONS(77), + [anon_sym_lazy] = ACTIONS(9), + [anon_sym_import] = ACTIONS(11), + [anon_sym_from] = ACTIONS(13), + [anon_sym_LPAREN] = ACTIONS(15), + [anon_sym_STAR] = ACTIONS(17), + [anon_sym_print] = ACTIONS(19), + [anon_sym_assert] = ACTIONS(21), + [anon_sym_return] = ACTIONS(23), + [anon_sym_del] = ACTIONS(25), + [anon_sym_raise] = ACTIONS(27), + [anon_sym_pass] = ACTIONS(29), + [anon_sym_break] = ACTIONS(31), + [anon_sym_continue] = ACTIONS(33), + [anon_sym_if] = ACTIONS(87), + [anon_sym_async] = ACTIONS(89), + [anon_sym_for] = ACTIONS(91), + [anon_sym_while] = ACTIONS(93), + [anon_sym_try] = ACTIONS(95), + [anon_sym_with] = ACTIONS(97), + [anon_sym_match] = ACTIONS(99), + [anon_sym_DASH] = ACTIONS(49), + [anon_sym_PLUS] = ACTIONS(49), + [anon_sym_LBRACK] = ACTIONS(51), + [anon_sym_LBRACE] = ACTIONS(53), + [anon_sym_STAR_STAR] = ACTIONS(55), + [anon_sym_def] = ACTIONS(101), + [anon_sym_global] = ACTIONS(59), + [anon_sym_nonlocal] = ACTIONS(61), + [anon_sym_exec] = ACTIONS(63), + [anon_sym_type] = ACTIONS(65), + [anon_sym_class] = ACTIONS(103), + [anon_sym_AT] = ACTIONS(69), + [anon_sym_not] = ACTIONS(71), + [anon_sym_TILDE] = ACTIONS(49), + [anon_sym_lambda] = ACTIONS(73), + [anon_sym_yield] = ACTIONS(75), + [sym_ellipsis] = ACTIONS(77), + [sym_integer] = ACTIONS(79), + [sym_float] = ACTIONS(77), + [anon_sym_await] = ACTIONS(81), + [sym_true] = ACTIONS(79), + [sym_false] = ACTIONS(79), + [sym_none] = ACTIONS(79), [sym_comment] = ACTIONS(3), - [sym__dedent] = ACTIONS(107), - [sym__string_start] = ACTIONS(81), - [sym__template_string_start] = ACTIONS(83), + [sym__dedent] = ACTIONS(109), + [sym__string_start] = ACTIONS(83), + [sym__template_string_start] = ACTIONS(85), }, [STATE(31)] = { [sym__statement] = STATE(61), @@ -11784,7 +11871,7 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_print_statement] = STATE(1332), [sym_assert_statement] = STATE(1332), [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1158), + [sym_named_expression] = STATE(1156), [sym_return_statement] = STATE(1332), [sym_delete_statement] = STATE(1332), [sym_raise_statement] = STATE(1332), @@ -11798,3421 +11885,3212 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_with_statement] = STATE(61), [sym_match_statement] = STATE(61), [sym_function_definition] = STATE(61), - [sym_list_splat] = STATE(1549), - [sym_dictionary_splat] = STATE(1549), + [sym_list_splat] = STATE(1520), + [sym_dictionary_splat] = STATE(1520), [sym_global_statement] = STATE(1332), [sym_nonlocal_statement] = STATE(1332), [sym_exec_statement] = STATE(1332), [sym_type_alias_statement] = STATE(1332), [sym_class_definition] = STATE(61), [sym_decorated_definition] = STATE(61), - [sym_decorator] = STATE(1113), - [sym_block] = STATE(1173), - [sym_expression_list] = STATE(1551), - [sym_pattern] = STATE(1013), - [sym_tuple_pattern] = STATE(999), - [sym_list_pattern] = STATE(999), - [sym_list_splat_pattern] = STATE(999), - [sym_expression] = STATE(1185), - [sym_primary_expression] = STATE(779), - [sym_not_operator] = STATE(1158), - [sym_boolean_operator] = STATE(1158), - [sym_binary_operator] = STATE(908), - [sym_unary_operator] = STATE(908), - [sym_comparison_operator] = STATE(1158), - [sym_lambda] = STATE(1158), - [sym_assignment] = STATE(1551), - [sym_augmented_assignment] = STATE(1551), - [sym_pattern_list] = STATE(1024), - [sym_yield] = STATE(1551), - [sym_attribute] = STATE(494), - [sym_subscript] = STATE(494), - [sym_call] = STATE(908), - [sym_list] = STATE(908), - [sym_set] = STATE(908), - [sym_tuple] = STATE(908), - [sym_dictionary] = STATE(908), - [sym_list_comprehension] = STATE(908), - [sym_dictionary_comprehension] = STATE(908), - [sym_set_comprehension] = STATE(908), - [sym_generator_expression] = STATE(908), - [sym_parenthesized_expression] = STATE(908), - [sym_conditional_expression] = STATE(1158), - [sym_concatenated_string] = STATE(908), - [sym_string] = STATE(782), - [sym_concatenated_template_string] = STATE(908), - [sym_template_string] = STATE(763), - [sym_await] = STATE(908), + [sym_decorator] = STATE(1127), + [sym_block] = STATE(439), + [sym_expression_list] = STATE(1522), + [sym_pattern] = STATE(1017), + [sym_tuple_pattern] = STATE(1001), + [sym_list_pattern] = STATE(1001), + [sym_list_splat_pattern] = STATE(1001), + [sym_expression] = STATE(1176), + [sym_primary_expression] = STATE(765), + [sym_not_operator] = STATE(1156), + [sym_boolean_operator] = STATE(1156), + [sym_binary_operator] = STATE(920), + [sym_unary_operator] = STATE(920), + [sym_comparison_operator] = STATE(1156), + [sym_lambda] = STATE(1156), + [sym_assignment] = STATE(1522), + [sym_augmented_assignment] = STATE(1522), + [sym_pattern_list] = STATE(1026), + [sym_yield] = STATE(1522), + [sym_attribute] = STATE(582), + [sym_subscript] = STATE(582), + [sym_call] = STATE(920), + [sym_list] = STATE(920), + [sym_set] = STATE(920), + [sym_tuple] = STATE(920), + [sym_dictionary] = STATE(920), + [sym_list_comprehension] = STATE(920), + [sym_dictionary_comprehension] = STATE(920), + [sym_set_comprehension] = STATE(920), + [sym_generator_expression] = STATE(920), + [sym_parenthesized_expression] = STATE(920), + [sym_conditional_expression] = STATE(1156), + [sym_concatenated_string] = STATE(920), + [sym_string] = STATE(775), + [sym_concatenated_template_string] = STATE(920), + [sym_template_string] = STATE(769), + [sym_await] = STATE(920), [aux_sym_module_repeat1] = STATE(61), - [aux_sym_decorated_definition_repeat1] = STATE(1113), + [aux_sym_decorated_definition_repeat1] = STATE(1127), [sym_identifier] = ACTIONS(7), - [anon_sym_import] = ACTIONS(9), - [anon_sym_from] = ACTIONS(11), - [anon_sym_LPAREN] = ACTIONS(13), - [anon_sym_STAR] = ACTIONS(15), - [anon_sym_print] = ACTIONS(17), - [anon_sym_assert] = ACTIONS(19), - [anon_sym_return] = ACTIONS(21), - [anon_sym_del] = ACTIONS(23), - [anon_sym_raise] = ACTIONS(25), - [anon_sym_pass] = ACTIONS(27), - [anon_sym_break] = ACTIONS(29), - [anon_sym_continue] = ACTIONS(31), - [anon_sym_if] = ACTIONS(85), - [anon_sym_async] = ACTIONS(87), - [anon_sym_for] = ACTIONS(89), - [anon_sym_while] = ACTIONS(91), - [anon_sym_try] = ACTIONS(93), - [anon_sym_with] = ACTIONS(95), - [anon_sym_match] = ACTIONS(97), - [anon_sym_DASH] = ACTIONS(47), - [anon_sym_PLUS] = ACTIONS(47), - [anon_sym_LBRACK] = ACTIONS(49), - [anon_sym_LBRACE] = ACTIONS(51), - [anon_sym_STAR_STAR] = ACTIONS(53), - [anon_sym_def] = ACTIONS(99), - [anon_sym_global] = ACTIONS(57), - [anon_sym_nonlocal] = ACTIONS(59), - [anon_sym_exec] = ACTIONS(61), - [anon_sym_type] = ACTIONS(63), - [anon_sym_class] = ACTIONS(101), - [anon_sym_AT] = ACTIONS(67), - [anon_sym_not] = ACTIONS(69), - [anon_sym_TILDE] = ACTIONS(47), - [anon_sym_lambda] = ACTIONS(71), - [anon_sym_yield] = ACTIONS(73), - [sym_ellipsis] = ACTIONS(75), - [sym_integer] = ACTIONS(77), - [sym_float] = ACTIONS(75), - [anon_sym_await] = ACTIONS(79), - [sym_true] = ACTIONS(77), - [sym_false] = ACTIONS(77), - [sym_none] = ACTIONS(77), + [anon_sym_lazy] = ACTIONS(9), + [anon_sym_import] = ACTIONS(11), + [anon_sym_from] = ACTIONS(13), + [anon_sym_LPAREN] = ACTIONS(15), + [anon_sym_STAR] = ACTIONS(17), + [anon_sym_print] = ACTIONS(19), + [anon_sym_assert] = ACTIONS(21), + [anon_sym_return] = ACTIONS(23), + [anon_sym_del] = ACTIONS(25), + [anon_sym_raise] = ACTIONS(27), + [anon_sym_pass] = ACTIONS(29), + [anon_sym_break] = ACTIONS(31), + [anon_sym_continue] = ACTIONS(33), + [anon_sym_if] = ACTIONS(87), + [anon_sym_async] = ACTIONS(89), + [anon_sym_for] = ACTIONS(91), + [anon_sym_while] = ACTIONS(93), + [anon_sym_try] = ACTIONS(95), + [anon_sym_with] = ACTIONS(97), + [anon_sym_match] = ACTIONS(99), + [anon_sym_DASH] = ACTIONS(49), + [anon_sym_PLUS] = ACTIONS(49), + [anon_sym_LBRACK] = ACTIONS(51), + [anon_sym_LBRACE] = ACTIONS(53), + [anon_sym_STAR_STAR] = ACTIONS(55), + [anon_sym_def] = ACTIONS(101), + [anon_sym_global] = ACTIONS(59), + [anon_sym_nonlocal] = ACTIONS(61), + [anon_sym_exec] = ACTIONS(63), + [anon_sym_type] = ACTIONS(65), + [anon_sym_class] = ACTIONS(103), + [anon_sym_AT] = ACTIONS(69), + [anon_sym_not] = ACTIONS(71), + [anon_sym_TILDE] = ACTIONS(49), + [anon_sym_lambda] = ACTIONS(73), + [anon_sym_yield] = ACTIONS(75), + [sym_ellipsis] = ACTIONS(77), + [sym_integer] = ACTIONS(79), + [sym_float] = ACTIONS(77), + [anon_sym_await] = ACTIONS(81), + [sym_true] = ACTIONS(79), + [sym_false] = ACTIONS(79), + [sym_none] = ACTIONS(79), [sym_comment] = ACTIONS(3), - [sym__dedent] = ACTIONS(105), - [sym__string_start] = ACTIONS(81), - [sym__template_string_start] = ACTIONS(83), + [sym__dedent] = ACTIONS(109), + [sym__string_start] = ACTIONS(83), + [sym__template_string_start] = ACTIONS(85), }, [STATE(32)] = { - [sym__statement] = STATE(65), - [sym__simple_statements] = STATE(65), + [sym__statement] = STATE(64), + [sym__simple_statements] = STATE(64), [sym_import_statement] = STATE(1332), [sym_future_import_statement] = STATE(1332), [sym_import_from_statement] = STATE(1332), [sym_print_statement] = STATE(1332), [sym_assert_statement] = STATE(1332), [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1158), + [sym_named_expression] = STATE(1156), [sym_return_statement] = STATE(1332), [sym_delete_statement] = STATE(1332), [sym_raise_statement] = STATE(1332), [sym_pass_statement] = STATE(1332), [sym_break_statement] = STATE(1332), [sym_continue_statement] = STATE(1332), - [sym_if_statement] = STATE(65), - [sym_for_statement] = STATE(65), - [sym_while_statement] = STATE(65), - [sym_try_statement] = STATE(65), - [sym_with_statement] = STATE(65), - [sym_match_statement] = STATE(65), - [sym_function_definition] = STATE(65), - [sym_list_splat] = STATE(1549), - [sym_dictionary_splat] = STATE(1549), + [sym_if_statement] = STATE(64), + [sym_for_statement] = STATE(64), + [sym_while_statement] = STATE(64), + [sym_try_statement] = STATE(64), + [sym_with_statement] = STATE(64), + [sym_match_statement] = STATE(64), + [sym_function_definition] = STATE(64), + [sym_list_splat] = STATE(1520), + [sym_dictionary_splat] = STATE(1520), [sym_global_statement] = STATE(1332), [sym_nonlocal_statement] = STATE(1332), [sym_exec_statement] = STATE(1332), [sym_type_alias_statement] = STATE(1332), - [sym_class_definition] = STATE(65), - [sym_decorated_definition] = STATE(65), - [sym_decorator] = STATE(1113), - [sym_block] = STATE(477), - [sym_expression_list] = STATE(1551), - [sym_pattern] = STATE(1013), - [sym_tuple_pattern] = STATE(999), - [sym_list_pattern] = STATE(999), - [sym_list_splat_pattern] = STATE(999), - [sym_expression] = STATE(1185), - [sym_primary_expression] = STATE(779), - [sym_not_operator] = STATE(1158), - [sym_boolean_operator] = STATE(1158), - [sym_binary_operator] = STATE(908), - [sym_unary_operator] = STATE(908), - [sym_comparison_operator] = STATE(1158), - [sym_lambda] = STATE(1158), - [sym_assignment] = STATE(1551), - [sym_augmented_assignment] = STATE(1551), - [sym_pattern_list] = STATE(1024), - [sym_yield] = STATE(1551), - [sym_attribute] = STATE(494), - [sym_subscript] = STATE(494), - [sym_call] = STATE(908), - [sym_list] = STATE(908), - [sym_set] = STATE(908), - [sym_tuple] = STATE(908), - [sym_dictionary] = STATE(908), - [sym_list_comprehension] = STATE(908), - [sym_dictionary_comprehension] = STATE(908), - [sym_set_comprehension] = STATE(908), - [sym_generator_expression] = STATE(908), - [sym_parenthesized_expression] = STATE(908), - [sym_conditional_expression] = STATE(1158), - [sym_concatenated_string] = STATE(908), - [sym_string] = STATE(782), - [sym_concatenated_template_string] = STATE(908), - [sym_template_string] = STATE(763), - [sym_await] = STATE(908), - [aux_sym_module_repeat1] = STATE(65), - [aux_sym_decorated_definition_repeat1] = STATE(1113), + [sym_class_definition] = STATE(64), + [sym_decorated_definition] = STATE(64), + [sym_decorator] = STATE(1127), + [sym_block] = STATE(475), + [sym_expression_list] = STATE(1522), + [sym_pattern] = STATE(1017), + [sym_tuple_pattern] = STATE(1001), + [sym_list_pattern] = STATE(1001), + [sym_list_splat_pattern] = STATE(1001), + [sym_expression] = STATE(1176), + [sym_primary_expression] = STATE(765), + [sym_not_operator] = STATE(1156), + [sym_boolean_operator] = STATE(1156), + [sym_binary_operator] = STATE(920), + [sym_unary_operator] = STATE(920), + [sym_comparison_operator] = STATE(1156), + [sym_lambda] = STATE(1156), + [sym_assignment] = STATE(1522), + [sym_augmented_assignment] = STATE(1522), + [sym_pattern_list] = STATE(1026), + [sym_yield] = STATE(1522), + [sym_attribute] = STATE(582), + [sym_subscript] = STATE(582), + [sym_call] = STATE(920), + [sym_list] = STATE(920), + [sym_set] = STATE(920), + [sym_tuple] = STATE(920), + [sym_dictionary] = STATE(920), + [sym_list_comprehension] = STATE(920), + [sym_dictionary_comprehension] = STATE(920), + [sym_set_comprehension] = STATE(920), + [sym_generator_expression] = STATE(920), + [sym_parenthesized_expression] = STATE(920), + [sym_conditional_expression] = STATE(1156), + [sym_concatenated_string] = STATE(920), + [sym_string] = STATE(775), + [sym_concatenated_template_string] = STATE(920), + [sym_template_string] = STATE(769), + [sym_await] = STATE(920), + [aux_sym_module_repeat1] = STATE(64), + [aux_sym_decorated_definition_repeat1] = STATE(1127), [sym_identifier] = ACTIONS(7), - [anon_sym_import] = ACTIONS(9), - [anon_sym_from] = ACTIONS(11), - [anon_sym_LPAREN] = ACTIONS(13), - [anon_sym_STAR] = ACTIONS(15), - [anon_sym_print] = ACTIONS(17), - [anon_sym_assert] = ACTIONS(19), - [anon_sym_return] = ACTIONS(21), - [anon_sym_del] = ACTIONS(23), - [anon_sym_raise] = ACTIONS(25), - [anon_sym_pass] = ACTIONS(27), - [anon_sym_break] = ACTIONS(29), - [anon_sym_continue] = ACTIONS(31), - [anon_sym_if] = ACTIONS(85), - [anon_sym_async] = ACTIONS(87), - [anon_sym_for] = ACTIONS(89), - [anon_sym_while] = ACTIONS(91), - [anon_sym_try] = ACTIONS(93), - [anon_sym_with] = ACTIONS(95), - [anon_sym_match] = ACTIONS(97), - [anon_sym_DASH] = ACTIONS(47), - [anon_sym_PLUS] = ACTIONS(47), - [anon_sym_LBRACK] = ACTIONS(49), - [anon_sym_LBRACE] = ACTIONS(51), - [anon_sym_STAR_STAR] = ACTIONS(53), - [anon_sym_def] = ACTIONS(99), - [anon_sym_global] = ACTIONS(57), - [anon_sym_nonlocal] = ACTIONS(59), - [anon_sym_exec] = ACTIONS(61), - [anon_sym_type] = ACTIONS(63), - [anon_sym_class] = ACTIONS(101), - [anon_sym_AT] = ACTIONS(67), - [anon_sym_not] = ACTIONS(69), - [anon_sym_TILDE] = ACTIONS(47), - [anon_sym_lambda] = ACTIONS(71), - [anon_sym_yield] = ACTIONS(73), - [sym_ellipsis] = ACTIONS(75), - [sym_integer] = ACTIONS(77), - [sym_float] = ACTIONS(75), - [anon_sym_await] = ACTIONS(79), - [sym_true] = ACTIONS(77), - [sym_false] = ACTIONS(77), - [sym_none] = ACTIONS(77), + [anon_sym_lazy] = ACTIONS(9), + [anon_sym_import] = ACTIONS(11), + [anon_sym_from] = ACTIONS(13), + [anon_sym_LPAREN] = ACTIONS(15), + [anon_sym_STAR] = ACTIONS(17), + [anon_sym_print] = ACTIONS(19), + [anon_sym_assert] = ACTIONS(21), + [anon_sym_return] = ACTIONS(23), + [anon_sym_del] = ACTIONS(25), + [anon_sym_raise] = ACTIONS(27), + [anon_sym_pass] = ACTIONS(29), + [anon_sym_break] = ACTIONS(31), + [anon_sym_continue] = ACTIONS(33), + [anon_sym_if] = ACTIONS(87), + [anon_sym_async] = ACTIONS(89), + [anon_sym_for] = ACTIONS(91), + [anon_sym_while] = ACTIONS(93), + [anon_sym_try] = ACTIONS(95), + [anon_sym_with] = ACTIONS(97), + [anon_sym_match] = ACTIONS(99), + [anon_sym_DASH] = ACTIONS(49), + [anon_sym_PLUS] = ACTIONS(49), + [anon_sym_LBRACK] = ACTIONS(51), + [anon_sym_LBRACE] = ACTIONS(53), + [anon_sym_STAR_STAR] = ACTIONS(55), + [anon_sym_def] = ACTIONS(101), + [anon_sym_global] = ACTIONS(59), + [anon_sym_nonlocal] = ACTIONS(61), + [anon_sym_exec] = ACTIONS(63), + [anon_sym_type] = ACTIONS(65), + [anon_sym_class] = ACTIONS(103), + [anon_sym_AT] = ACTIONS(69), + [anon_sym_not] = ACTIONS(71), + [anon_sym_TILDE] = ACTIONS(49), + [anon_sym_lambda] = ACTIONS(73), + [anon_sym_yield] = ACTIONS(75), + [sym_ellipsis] = ACTIONS(77), + [sym_integer] = ACTIONS(79), + [sym_float] = ACTIONS(77), + [anon_sym_await] = ACTIONS(81), + [sym_true] = ACTIONS(79), + [sym_false] = ACTIONS(79), + [sym_none] = ACTIONS(79), [sym_comment] = ACTIONS(3), - [sym__dedent] = ACTIONS(103), - [sym__string_start] = ACTIONS(81), - [sym__template_string_start] = ACTIONS(83), + [sym__dedent] = ACTIONS(105), + [sym__string_start] = ACTIONS(83), + [sym__template_string_start] = ACTIONS(85), }, [STATE(33)] = { - [sym__statement] = STATE(65), - [sym__simple_statements] = STATE(65), + [sym__statement] = STATE(64), + [sym__simple_statements] = STATE(64), [sym_import_statement] = STATE(1332), [sym_future_import_statement] = STATE(1332), [sym_import_from_statement] = STATE(1332), [sym_print_statement] = STATE(1332), [sym_assert_statement] = STATE(1332), [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1158), + [sym_named_expression] = STATE(1156), [sym_return_statement] = STATE(1332), [sym_delete_statement] = STATE(1332), [sym_raise_statement] = STATE(1332), [sym_pass_statement] = STATE(1332), [sym_break_statement] = STATE(1332), [sym_continue_statement] = STATE(1332), - [sym_if_statement] = STATE(65), - [sym_for_statement] = STATE(65), - [sym_while_statement] = STATE(65), - [sym_try_statement] = STATE(65), - [sym_with_statement] = STATE(65), - [sym_match_statement] = STATE(65), - [sym_function_definition] = STATE(65), - [sym_list_splat] = STATE(1549), - [sym_dictionary_splat] = STATE(1549), + [sym_if_statement] = STATE(64), + [sym_for_statement] = STATE(64), + [sym_while_statement] = STATE(64), + [sym_try_statement] = STATE(64), + [sym_with_statement] = STATE(64), + [sym_match_statement] = STATE(64), + [sym_function_definition] = STATE(64), + [sym_list_splat] = STATE(1520), + [sym_dictionary_splat] = STATE(1520), [sym_global_statement] = STATE(1332), [sym_nonlocal_statement] = STATE(1332), [sym_exec_statement] = STATE(1332), [sym_type_alias_statement] = STATE(1332), - [sym_class_definition] = STATE(65), - [sym_decorated_definition] = STATE(65), - [sym_decorator] = STATE(1113), - [sym_block] = STATE(563), - [sym_expression_list] = STATE(1551), - [sym_pattern] = STATE(1013), - [sym_tuple_pattern] = STATE(999), - [sym_list_pattern] = STATE(999), - [sym_list_splat_pattern] = STATE(999), - [sym_expression] = STATE(1185), - [sym_primary_expression] = STATE(779), - [sym_not_operator] = STATE(1158), - [sym_boolean_operator] = STATE(1158), - [sym_binary_operator] = STATE(908), - [sym_unary_operator] = STATE(908), - [sym_comparison_operator] = STATE(1158), - [sym_lambda] = STATE(1158), - [sym_assignment] = STATE(1551), - [sym_augmented_assignment] = STATE(1551), - [sym_pattern_list] = STATE(1024), - [sym_yield] = STATE(1551), - [sym_attribute] = STATE(494), - [sym_subscript] = STATE(494), - [sym_call] = STATE(908), - [sym_list] = STATE(908), - [sym_set] = STATE(908), - [sym_tuple] = STATE(908), - [sym_dictionary] = STATE(908), - [sym_list_comprehension] = STATE(908), - [sym_dictionary_comprehension] = STATE(908), - [sym_set_comprehension] = STATE(908), - [sym_generator_expression] = STATE(908), - [sym_parenthesized_expression] = STATE(908), - [sym_conditional_expression] = STATE(1158), - [sym_concatenated_string] = STATE(908), - [sym_string] = STATE(782), - [sym_concatenated_template_string] = STATE(908), - [sym_template_string] = STATE(763), - [sym_await] = STATE(908), - [aux_sym_module_repeat1] = STATE(65), - [aux_sym_decorated_definition_repeat1] = STATE(1113), + [sym_class_definition] = STATE(64), + [sym_decorated_definition] = STATE(64), + [sym_decorator] = STATE(1127), + [sym_block] = STATE(524), + [sym_expression_list] = STATE(1522), + [sym_pattern] = STATE(1017), + [sym_tuple_pattern] = STATE(1001), + [sym_list_pattern] = STATE(1001), + [sym_list_splat_pattern] = STATE(1001), + [sym_expression] = STATE(1176), + [sym_primary_expression] = STATE(765), + [sym_not_operator] = STATE(1156), + [sym_boolean_operator] = STATE(1156), + [sym_binary_operator] = STATE(920), + [sym_unary_operator] = STATE(920), + [sym_comparison_operator] = STATE(1156), + [sym_lambda] = STATE(1156), + [sym_assignment] = STATE(1522), + [sym_augmented_assignment] = STATE(1522), + [sym_pattern_list] = STATE(1026), + [sym_yield] = STATE(1522), + [sym_attribute] = STATE(582), + [sym_subscript] = STATE(582), + [sym_call] = STATE(920), + [sym_list] = STATE(920), + [sym_set] = STATE(920), + [sym_tuple] = STATE(920), + [sym_dictionary] = STATE(920), + [sym_list_comprehension] = STATE(920), + [sym_dictionary_comprehension] = STATE(920), + [sym_set_comprehension] = STATE(920), + [sym_generator_expression] = STATE(920), + [sym_parenthesized_expression] = STATE(920), + [sym_conditional_expression] = STATE(1156), + [sym_concatenated_string] = STATE(920), + [sym_string] = STATE(775), + [sym_concatenated_template_string] = STATE(920), + [sym_template_string] = STATE(769), + [sym_await] = STATE(920), + [aux_sym_module_repeat1] = STATE(64), + [aux_sym_decorated_definition_repeat1] = STATE(1127), [sym_identifier] = ACTIONS(7), - [anon_sym_import] = ACTIONS(9), - [anon_sym_from] = ACTIONS(11), - [anon_sym_LPAREN] = ACTIONS(13), - [anon_sym_STAR] = ACTIONS(15), - [anon_sym_print] = ACTIONS(17), - [anon_sym_assert] = ACTIONS(19), - [anon_sym_return] = ACTIONS(21), - [anon_sym_del] = ACTIONS(23), - [anon_sym_raise] = ACTIONS(25), - [anon_sym_pass] = ACTIONS(27), - [anon_sym_break] = ACTIONS(29), - [anon_sym_continue] = ACTIONS(31), - [anon_sym_if] = ACTIONS(85), - [anon_sym_async] = ACTIONS(87), - [anon_sym_for] = ACTIONS(89), - [anon_sym_while] = ACTIONS(91), - [anon_sym_try] = ACTIONS(93), - [anon_sym_with] = ACTIONS(95), - [anon_sym_match] = ACTIONS(97), - [anon_sym_DASH] = ACTIONS(47), - [anon_sym_PLUS] = ACTIONS(47), - [anon_sym_LBRACK] = ACTIONS(49), - [anon_sym_LBRACE] = ACTIONS(51), - [anon_sym_STAR_STAR] = ACTIONS(53), - [anon_sym_def] = ACTIONS(99), - [anon_sym_global] = ACTIONS(57), - [anon_sym_nonlocal] = ACTIONS(59), - [anon_sym_exec] = ACTIONS(61), - [anon_sym_type] = ACTIONS(63), - [anon_sym_class] = ACTIONS(101), - [anon_sym_AT] = ACTIONS(67), - [anon_sym_not] = ACTIONS(69), - [anon_sym_TILDE] = ACTIONS(47), - [anon_sym_lambda] = ACTIONS(71), - [anon_sym_yield] = ACTIONS(73), - [sym_ellipsis] = ACTIONS(75), - [sym_integer] = ACTIONS(77), - [sym_float] = ACTIONS(75), - [anon_sym_await] = ACTIONS(79), - [sym_true] = ACTIONS(77), - [sym_false] = ACTIONS(77), - [sym_none] = ACTIONS(77), + [anon_sym_lazy] = ACTIONS(9), + [anon_sym_import] = ACTIONS(11), + [anon_sym_from] = ACTIONS(13), + [anon_sym_LPAREN] = ACTIONS(15), + [anon_sym_STAR] = ACTIONS(17), + [anon_sym_print] = ACTIONS(19), + [anon_sym_assert] = ACTIONS(21), + [anon_sym_return] = ACTIONS(23), + [anon_sym_del] = ACTIONS(25), + [anon_sym_raise] = ACTIONS(27), + [anon_sym_pass] = ACTIONS(29), + [anon_sym_break] = ACTIONS(31), + [anon_sym_continue] = ACTIONS(33), + [anon_sym_if] = ACTIONS(87), + [anon_sym_async] = ACTIONS(89), + [anon_sym_for] = ACTIONS(91), + [anon_sym_while] = ACTIONS(93), + [anon_sym_try] = ACTIONS(95), + [anon_sym_with] = ACTIONS(97), + [anon_sym_match] = ACTIONS(99), + [anon_sym_DASH] = ACTIONS(49), + [anon_sym_PLUS] = ACTIONS(49), + [anon_sym_LBRACK] = ACTIONS(51), + [anon_sym_LBRACE] = ACTIONS(53), + [anon_sym_STAR_STAR] = ACTIONS(55), + [anon_sym_def] = ACTIONS(101), + [anon_sym_global] = ACTIONS(59), + [anon_sym_nonlocal] = ACTIONS(61), + [anon_sym_exec] = ACTIONS(63), + [anon_sym_type] = ACTIONS(65), + [anon_sym_class] = ACTIONS(103), + [anon_sym_AT] = ACTIONS(69), + [anon_sym_not] = ACTIONS(71), + [anon_sym_TILDE] = ACTIONS(49), + [anon_sym_lambda] = ACTIONS(73), + [anon_sym_yield] = ACTIONS(75), + [sym_ellipsis] = ACTIONS(77), + [sym_integer] = ACTIONS(79), + [sym_float] = ACTIONS(77), + [anon_sym_await] = ACTIONS(81), + [sym_true] = ACTIONS(79), + [sym_false] = ACTIONS(79), + [sym_none] = ACTIONS(79), [sym_comment] = ACTIONS(3), - [sym__dedent] = ACTIONS(103), - [sym__string_start] = ACTIONS(81), - [sym__template_string_start] = ACTIONS(83), + [sym__dedent] = ACTIONS(105), + [sym__string_start] = ACTIONS(83), + [sym__template_string_start] = ACTIONS(85), }, [STATE(34)] = { - [sym__statement] = STATE(65), - [sym__simple_statements] = STATE(65), + [sym__statement] = STATE(64), + [sym__simple_statements] = STATE(64), [sym_import_statement] = STATE(1332), [sym_future_import_statement] = STATE(1332), [sym_import_from_statement] = STATE(1332), [sym_print_statement] = STATE(1332), [sym_assert_statement] = STATE(1332), [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1158), + [sym_named_expression] = STATE(1156), [sym_return_statement] = STATE(1332), [sym_delete_statement] = STATE(1332), [sym_raise_statement] = STATE(1332), [sym_pass_statement] = STATE(1332), [sym_break_statement] = STATE(1332), [sym_continue_statement] = STATE(1332), - [sym_if_statement] = STATE(65), - [sym_for_statement] = STATE(65), - [sym_while_statement] = STATE(65), - [sym_try_statement] = STATE(65), - [sym_with_statement] = STATE(65), - [sym_match_statement] = STATE(65), - [sym_function_definition] = STATE(65), - [sym_list_splat] = STATE(1549), - [sym_dictionary_splat] = STATE(1549), + [sym_if_statement] = STATE(64), + [sym_for_statement] = STATE(64), + [sym_while_statement] = STATE(64), + [sym_try_statement] = STATE(64), + [sym_with_statement] = STATE(64), + [sym_match_statement] = STATE(64), + [sym_function_definition] = STATE(64), + [sym_list_splat] = STATE(1520), + [sym_dictionary_splat] = STATE(1520), [sym_global_statement] = STATE(1332), [sym_nonlocal_statement] = STATE(1332), [sym_exec_statement] = STATE(1332), [sym_type_alias_statement] = STATE(1332), - [sym_class_definition] = STATE(65), - [sym_decorated_definition] = STATE(65), - [sym_decorator] = STATE(1113), - [sym_block] = STATE(565), - [sym_expression_list] = STATE(1551), - [sym_pattern] = STATE(1013), - [sym_tuple_pattern] = STATE(999), - [sym_list_pattern] = STATE(999), - [sym_list_splat_pattern] = STATE(999), - [sym_expression] = STATE(1185), - [sym_primary_expression] = STATE(779), - [sym_not_operator] = STATE(1158), - [sym_boolean_operator] = STATE(1158), - [sym_binary_operator] = STATE(908), - [sym_unary_operator] = STATE(908), - [sym_comparison_operator] = STATE(1158), - [sym_lambda] = STATE(1158), - [sym_assignment] = STATE(1551), - [sym_augmented_assignment] = STATE(1551), - [sym_pattern_list] = STATE(1024), - [sym_yield] = STATE(1551), - [sym_attribute] = STATE(494), - [sym_subscript] = STATE(494), - [sym_call] = STATE(908), - [sym_list] = STATE(908), - [sym_set] = STATE(908), - [sym_tuple] = STATE(908), - [sym_dictionary] = STATE(908), - [sym_list_comprehension] = STATE(908), - [sym_dictionary_comprehension] = STATE(908), - [sym_set_comprehension] = STATE(908), - [sym_generator_expression] = STATE(908), - [sym_parenthesized_expression] = STATE(908), - [sym_conditional_expression] = STATE(1158), - [sym_concatenated_string] = STATE(908), - [sym_string] = STATE(782), - [sym_concatenated_template_string] = STATE(908), - [sym_template_string] = STATE(763), - [sym_await] = STATE(908), - [aux_sym_module_repeat1] = STATE(65), - [aux_sym_decorated_definition_repeat1] = STATE(1113), + [sym_class_definition] = STATE(64), + [sym_decorated_definition] = STATE(64), + [sym_decorator] = STATE(1127), + [sym_block] = STATE(529), + [sym_expression_list] = STATE(1522), + [sym_pattern] = STATE(1017), + [sym_tuple_pattern] = STATE(1001), + [sym_list_pattern] = STATE(1001), + [sym_list_splat_pattern] = STATE(1001), + [sym_expression] = STATE(1176), + [sym_primary_expression] = STATE(765), + [sym_not_operator] = STATE(1156), + [sym_boolean_operator] = STATE(1156), + [sym_binary_operator] = STATE(920), + [sym_unary_operator] = STATE(920), + [sym_comparison_operator] = STATE(1156), + [sym_lambda] = STATE(1156), + [sym_assignment] = STATE(1522), + [sym_augmented_assignment] = STATE(1522), + [sym_pattern_list] = STATE(1026), + [sym_yield] = STATE(1522), + [sym_attribute] = STATE(582), + [sym_subscript] = STATE(582), + [sym_call] = STATE(920), + [sym_list] = STATE(920), + [sym_set] = STATE(920), + [sym_tuple] = STATE(920), + [sym_dictionary] = STATE(920), + [sym_list_comprehension] = STATE(920), + [sym_dictionary_comprehension] = STATE(920), + [sym_set_comprehension] = STATE(920), + [sym_generator_expression] = STATE(920), + [sym_parenthesized_expression] = STATE(920), + [sym_conditional_expression] = STATE(1156), + [sym_concatenated_string] = STATE(920), + [sym_string] = STATE(775), + [sym_concatenated_template_string] = STATE(920), + [sym_template_string] = STATE(769), + [sym_await] = STATE(920), + [aux_sym_module_repeat1] = STATE(64), + [aux_sym_decorated_definition_repeat1] = STATE(1127), [sym_identifier] = ACTIONS(7), - [anon_sym_import] = ACTIONS(9), - [anon_sym_from] = ACTIONS(11), - [anon_sym_LPAREN] = ACTIONS(13), - [anon_sym_STAR] = ACTIONS(15), - [anon_sym_print] = ACTIONS(17), - [anon_sym_assert] = ACTIONS(19), - [anon_sym_return] = ACTIONS(21), - [anon_sym_del] = ACTIONS(23), - [anon_sym_raise] = ACTIONS(25), - [anon_sym_pass] = ACTIONS(27), - [anon_sym_break] = ACTIONS(29), - [anon_sym_continue] = ACTIONS(31), - [anon_sym_if] = ACTIONS(85), - [anon_sym_async] = ACTIONS(87), - [anon_sym_for] = ACTIONS(89), - [anon_sym_while] = ACTIONS(91), - [anon_sym_try] = ACTIONS(93), - [anon_sym_with] = ACTIONS(95), - [anon_sym_match] = ACTIONS(97), - [anon_sym_DASH] = ACTIONS(47), - [anon_sym_PLUS] = ACTIONS(47), - [anon_sym_LBRACK] = ACTIONS(49), - [anon_sym_LBRACE] = ACTIONS(51), - [anon_sym_STAR_STAR] = ACTIONS(53), - [anon_sym_def] = ACTIONS(99), - [anon_sym_global] = ACTIONS(57), - [anon_sym_nonlocal] = ACTIONS(59), - [anon_sym_exec] = ACTIONS(61), - [anon_sym_type] = ACTIONS(63), - [anon_sym_class] = ACTIONS(101), - [anon_sym_AT] = ACTIONS(67), - [anon_sym_not] = ACTIONS(69), - [anon_sym_TILDE] = ACTIONS(47), - [anon_sym_lambda] = ACTIONS(71), - [anon_sym_yield] = ACTIONS(73), - [sym_ellipsis] = ACTIONS(75), - [sym_integer] = ACTIONS(77), - [sym_float] = ACTIONS(75), - [anon_sym_await] = ACTIONS(79), - [sym_true] = ACTIONS(77), - [sym_false] = ACTIONS(77), - [sym_none] = ACTIONS(77), + [anon_sym_lazy] = ACTIONS(9), + [anon_sym_import] = ACTIONS(11), + [anon_sym_from] = ACTIONS(13), + [anon_sym_LPAREN] = ACTIONS(15), + [anon_sym_STAR] = ACTIONS(17), + [anon_sym_print] = ACTIONS(19), + [anon_sym_assert] = ACTIONS(21), + [anon_sym_return] = ACTIONS(23), + [anon_sym_del] = ACTIONS(25), + [anon_sym_raise] = ACTIONS(27), + [anon_sym_pass] = ACTIONS(29), + [anon_sym_break] = ACTIONS(31), + [anon_sym_continue] = ACTIONS(33), + [anon_sym_if] = ACTIONS(87), + [anon_sym_async] = ACTIONS(89), + [anon_sym_for] = ACTIONS(91), + [anon_sym_while] = ACTIONS(93), + [anon_sym_try] = ACTIONS(95), + [anon_sym_with] = ACTIONS(97), + [anon_sym_match] = ACTIONS(99), + [anon_sym_DASH] = ACTIONS(49), + [anon_sym_PLUS] = ACTIONS(49), + [anon_sym_LBRACK] = ACTIONS(51), + [anon_sym_LBRACE] = ACTIONS(53), + [anon_sym_STAR_STAR] = ACTIONS(55), + [anon_sym_def] = ACTIONS(101), + [anon_sym_global] = ACTIONS(59), + [anon_sym_nonlocal] = ACTIONS(61), + [anon_sym_exec] = ACTIONS(63), + [anon_sym_type] = ACTIONS(65), + [anon_sym_class] = ACTIONS(103), + [anon_sym_AT] = ACTIONS(69), + [anon_sym_not] = ACTIONS(71), + [anon_sym_TILDE] = ACTIONS(49), + [anon_sym_lambda] = ACTIONS(73), + [anon_sym_yield] = ACTIONS(75), + [sym_ellipsis] = ACTIONS(77), + [sym_integer] = ACTIONS(79), + [sym_float] = ACTIONS(77), + [anon_sym_await] = ACTIONS(81), + [sym_true] = ACTIONS(79), + [sym_false] = ACTIONS(79), + [sym_none] = ACTIONS(79), [sym_comment] = ACTIONS(3), - [sym__dedent] = ACTIONS(103), - [sym__string_start] = ACTIONS(81), - [sym__template_string_start] = ACTIONS(83), + [sym__dedent] = ACTIONS(105), + [sym__string_start] = ACTIONS(83), + [sym__template_string_start] = ACTIONS(85), }, [STATE(35)] = { - [sym__statement] = STATE(65), - [sym__simple_statements] = STATE(65), + [sym__statement] = STATE(64), + [sym__simple_statements] = STATE(64), [sym_import_statement] = STATE(1332), [sym_future_import_statement] = STATE(1332), [sym_import_from_statement] = STATE(1332), [sym_print_statement] = STATE(1332), [sym_assert_statement] = STATE(1332), [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1158), + [sym_named_expression] = STATE(1156), [sym_return_statement] = STATE(1332), [sym_delete_statement] = STATE(1332), [sym_raise_statement] = STATE(1332), [sym_pass_statement] = STATE(1332), [sym_break_statement] = STATE(1332), [sym_continue_statement] = STATE(1332), - [sym_if_statement] = STATE(65), - [sym_for_statement] = STATE(65), - [sym_while_statement] = STATE(65), - [sym_try_statement] = STATE(65), - [sym_with_statement] = STATE(65), - [sym_match_statement] = STATE(65), - [sym_function_definition] = STATE(65), - [sym_list_splat] = STATE(1549), - [sym_dictionary_splat] = STATE(1549), + [sym_if_statement] = STATE(64), + [sym_for_statement] = STATE(64), + [sym_while_statement] = STATE(64), + [sym_try_statement] = STATE(64), + [sym_with_statement] = STATE(64), + [sym_match_statement] = STATE(64), + [sym_function_definition] = STATE(64), + [sym_list_splat] = STATE(1520), + [sym_dictionary_splat] = STATE(1520), [sym_global_statement] = STATE(1332), [sym_nonlocal_statement] = STATE(1332), [sym_exec_statement] = STATE(1332), [sym_type_alias_statement] = STATE(1332), - [sym_class_definition] = STATE(65), - [sym_decorated_definition] = STATE(65), - [sym_decorator] = STATE(1113), - [sym_block] = STATE(570), - [sym_expression_list] = STATE(1551), - [sym_pattern] = STATE(1013), - [sym_tuple_pattern] = STATE(999), - [sym_list_pattern] = STATE(999), - [sym_list_splat_pattern] = STATE(999), - [sym_expression] = STATE(1185), - [sym_primary_expression] = STATE(779), - [sym_not_operator] = STATE(1158), - [sym_boolean_operator] = STATE(1158), - [sym_binary_operator] = STATE(908), - [sym_unary_operator] = STATE(908), - [sym_comparison_operator] = STATE(1158), - [sym_lambda] = STATE(1158), - [sym_assignment] = STATE(1551), - [sym_augmented_assignment] = STATE(1551), - [sym_pattern_list] = STATE(1024), - [sym_yield] = STATE(1551), - [sym_attribute] = STATE(494), - [sym_subscript] = STATE(494), - [sym_call] = STATE(908), - [sym_list] = STATE(908), - [sym_set] = STATE(908), - [sym_tuple] = STATE(908), - [sym_dictionary] = STATE(908), - [sym_list_comprehension] = STATE(908), - [sym_dictionary_comprehension] = STATE(908), - [sym_set_comprehension] = STATE(908), - [sym_generator_expression] = STATE(908), - [sym_parenthesized_expression] = STATE(908), - [sym_conditional_expression] = STATE(1158), - [sym_concatenated_string] = STATE(908), - [sym_string] = STATE(782), - [sym_concatenated_template_string] = STATE(908), - [sym_template_string] = STATE(763), - [sym_await] = STATE(908), - [aux_sym_module_repeat1] = STATE(65), - [aux_sym_decorated_definition_repeat1] = STATE(1113), + [sym_class_definition] = STATE(64), + [sym_decorated_definition] = STATE(64), + [sym_decorator] = STATE(1127), + [sym_block] = STATE(535), + [sym_expression_list] = STATE(1522), + [sym_pattern] = STATE(1017), + [sym_tuple_pattern] = STATE(1001), + [sym_list_pattern] = STATE(1001), + [sym_list_splat_pattern] = STATE(1001), + [sym_expression] = STATE(1176), + [sym_primary_expression] = STATE(765), + [sym_not_operator] = STATE(1156), + [sym_boolean_operator] = STATE(1156), + [sym_binary_operator] = STATE(920), + [sym_unary_operator] = STATE(920), + [sym_comparison_operator] = STATE(1156), + [sym_lambda] = STATE(1156), + [sym_assignment] = STATE(1522), + [sym_augmented_assignment] = STATE(1522), + [sym_pattern_list] = STATE(1026), + [sym_yield] = STATE(1522), + [sym_attribute] = STATE(582), + [sym_subscript] = STATE(582), + [sym_call] = STATE(920), + [sym_list] = STATE(920), + [sym_set] = STATE(920), + [sym_tuple] = STATE(920), + [sym_dictionary] = STATE(920), + [sym_list_comprehension] = STATE(920), + [sym_dictionary_comprehension] = STATE(920), + [sym_set_comprehension] = STATE(920), + [sym_generator_expression] = STATE(920), + [sym_parenthesized_expression] = STATE(920), + [sym_conditional_expression] = STATE(1156), + [sym_concatenated_string] = STATE(920), + [sym_string] = STATE(775), + [sym_concatenated_template_string] = STATE(920), + [sym_template_string] = STATE(769), + [sym_await] = STATE(920), + [aux_sym_module_repeat1] = STATE(64), + [aux_sym_decorated_definition_repeat1] = STATE(1127), [sym_identifier] = ACTIONS(7), - [anon_sym_import] = ACTIONS(9), - [anon_sym_from] = ACTIONS(11), - [anon_sym_LPAREN] = ACTIONS(13), - [anon_sym_STAR] = ACTIONS(15), - [anon_sym_print] = ACTIONS(17), - [anon_sym_assert] = ACTIONS(19), - [anon_sym_return] = ACTIONS(21), - [anon_sym_del] = ACTIONS(23), - [anon_sym_raise] = ACTIONS(25), - [anon_sym_pass] = ACTIONS(27), - [anon_sym_break] = ACTIONS(29), - [anon_sym_continue] = ACTIONS(31), - [anon_sym_if] = ACTIONS(85), - [anon_sym_async] = ACTIONS(87), - [anon_sym_for] = ACTIONS(89), - [anon_sym_while] = ACTIONS(91), - [anon_sym_try] = ACTIONS(93), - [anon_sym_with] = ACTIONS(95), - [anon_sym_match] = ACTIONS(97), - [anon_sym_DASH] = ACTIONS(47), - [anon_sym_PLUS] = ACTIONS(47), - [anon_sym_LBRACK] = ACTIONS(49), - [anon_sym_LBRACE] = ACTIONS(51), - [anon_sym_STAR_STAR] = ACTIONS(53), - [anon_sym_def] = ACTIONS(99), - [anon_sym_global] = ACTIONS(57), - [anon_sym_nonlocal] = ACTIONS(59), - [anon_sym_exec] = ACTIONS(61), - [anon_sym_type] = ACTIONS(63), - [anon_sym_class] = ACTIONS(101), - [anon_sym_AT] = ACTIONS(67), - [anon_sym_not] = ACTIONS(69), - [anon_sym_TILDE] = ACTIONS(47), - [anon_sym_lambda] = ACTIONS(71), - [anon_sym_yield] = ACTIONS(73), - [sym_ellipsis] = ACTIONS(75), - [sym_integer] = ACTIONS(77), - [sym_float] = ACTIONS(75), - [anon_sym_await] = ACTIONS(79), - [sym_true] = ACTIONS(77), - [sym_false] = ACTIONS(77), - [sym_none] = ACTIONS(77), + [anon_sym_lazy] = ACTIONS(9), + [anon_sym_import] = ACTIONS(11), + [anon_sym_from] = ACTIONS(13), + [anon_sym_LPAREN] = ACTIONS(15), + [anon_sym_STAR] = ACTIONS(17), + [anon_sym_print] = ACTIONS(19), + [anon_sym_assert] = ACTIONS(21), + [anon_sym_return] = ACTIONS(23), + [anon_sym_del] = ACTIONS(25), + [anon_sym_raise] = ACTIONS(27), + [anon_sym_pass] = ACTIONS(29), + [anon_sym_break] = ACTIONS(31), + [anon_sym_continue] = ACTIONS(33), + [anon_sym_if] = ACTIONS(87), + [anon_sym_async] = ACTIONS(89), + [anon_sym_for] = ACTIONS(91), + [anon_sym_while] = ACTIONS(93), + [anon_sym_try] = ACTIONS(95), + [anon_sym_with] = ACTIONS(97), + [anon_sym_match] = ACTIONS(99), + [anon_sym_DASH] = ACTIONS(49), + [anon_sym_PLUS] = ACTIONS(49), + [anon_sym_LBRACK] = ACTIONS(51), + [anon_sym_LBRACE] = ACTIONS(53), + [anon_sym_STAR_STAR] = ACTIONS(55), + [anon_sym_def] = ACTIONS(101), + [anon_sym_global] = ACTIONS(59), + [anon_sym_nonlocal] = ACTIONS(61), + [anon_sym_exec] = ACTIONS(63), + [anon_sym_type] = ACTIONS(65), + [anon_sym_class] = ACTIONS(103), + [anon_sym_AT] = ACTIONS(69), + [anon_sym_not] = ACTIONS(71), + [anon_sym_TILDE] = ACTIONS(49), + [anon_sym_lambda] = ACTIONS(73), + [anon_sym_yield] = ACTIONS(75), + [sym_ellipsis] = ACTIONS(77), + [sym_integer] = ACTIONS(79), + [sym_float] = ACTIONS(77), + [anon_sym_await] = ACTIONS(81), + [sym_true] = ACTIONS(79), + [sym_false] = ACTIONS(79), + [sym_none] = ACTIONS(79), [sym_comment] = ACTIONS(3), - [sym__dedent] = ACTIONS(103), - [sym__string_start] = ACTIONS(81), - [sym__template_string_start] = ACTIONS(83), + [sym__dedent] = ACTIONS(105), + [sym__string_start] = ACTIONS(83), + [sym__template_string_start] = ACTIONS(85), }, [STATE(36)] = { - [sym__statement] = STATE(65), - [sym__simple_statements] = STATE(65), + [sym__statement] = STATE(64), + [sym__simple_statements] = STATE(64), [sym_import_statement] = STATE(1332), [sym_future_import_statement] = STATE(1332), [sym_import_from_statement] = STATE(1332), [sym_print_statement] = STATE(1332), [sym_assert_statement] = STATE(1332), [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1158), + [sym_named_expression] = STATE(1156), [sym_return_statement] = STATE(1332), [sym_delete_statement] = STATE(1332), [sym_raise_statement] = STATE(1332), [sym_pass_statement] = STATE(1332), [sym_break_statement] = STATE(1332), [sym_continue_statement] = STATE(1332), - [sym_if_statement] = STATE(65), - [sym_for_statement] = STATE(65), - [sym_while_statement] = STATE(65), - [sym_try_statement] = STATE(65), - [sym_with_statement] = STATE(65), - [sym_match_statement] = STATE(65), - [sym_function_definition] = STATE(65), - [sym_list_splat] = STATE(1549), - [sym_dictionary_splat] = STATE(1549), + [sym_if_statement] = STATE(64), + [sym_for_statement] = STATE(64), + [sym_while_statement] = STATE(64), + [sym_try_statement] = STATE(64), + [sym_with_statement] = STATE(64), + [sym_match_statement] = STATE(64), + [sym_function_definition] = STATE(64), + [sym_list_splat] = STATE(1520), + [sym_dictionary_splat] = STATE(1520), [sym_global_statement] = STATE(1332), [sym_nonlocal_statement] = STATE(1332), [sym_exec_statement] = STATE(1332), [sym_type_alias_statement] = STATE(1332), - [sym_class_definition] = STATE(65), - [sym_decorated_definition] = STATE(65), - [sym_decorator] = STATE(1113), - [sym_block] = STATE(576), - [sym_expression_list] = STATE(1551), - [sym_pattern] = STATE(1013), - [sym_tuple_pattern] = STATE(999), - [sym_list_pattern] = STATE(999), - [sym_list_splat_pattern] = STATE(999), - [sym_expression] = STATE(1185), - [sym_primary_expression] = STATE(779), - [sym_not_operator] = STATE(1158), - [sym_boolean_operator] = STATE(1158), - [sym_binary_operator] = STATE(908), - [sym_unary_operator] = STATE(908), - [sym_comparison_operator] = STATE(1158), - [sym_lambda] = STATE(1158), - [sym_assignment] = STATE(1551), - [sym_augmented_assignment] = STATE(1551), - [sym_pattern_list] = STATE(1024), - [sym_yield] = STATE(1551), - [sym_attribute] = STATE(494), - [sym_subscript] = STATE(494), - [sym_call] = STATE(908), - [sym_list] = STATE(908), - [sym_set] = STATE(908), - [sym_tuple] = STATE(908), - [sym_dictionary] = STATE(908), - [sym_list_comprehension] = STATE(908), - [sym_dictionary_comprehension] = STATE(908), - [sym_set_comprehension] = STATE(908), - [sym_generator_expression] = STATE(908), - [sym_parenthesized_expression] = STATE(908), - [sym_conditional_expression] = STATE(1158), - [sym_concatenated_string] = STATE(908), - [sym_string] = STATE(782), - [sym_concatenated_template_string] = STATE(908), - [sym_template_string] = STATE(763), - [sym_await] = STATE(908), - [aux_sym_module_repeat1] = STATE(65), - [aux_sym_decorated_definition_repeat1] = STATE(1113), + [sym_class_definition] = STATE(64), + [sym_decorated_definition] = STATE(64), + [sym_decorator] = STATE(1127), + [sym_block] = STATE(537), + [sym_expression_list] = STATE(1522), + [sym_pattern] = STATE(1017), + [sym_tuple_pattern] = STATE(1001), + [sym_list_pattern] = STATE(1001), + [sym_list_splat_pattern] = STATE(1001), + [sym_expression] = STATE(1176), + [sym_primary_expression] = STATE(765), + [sym_not_operator] = STATE(1156), + [sym_boolean_operator] = STATE(1156), + [sym_binary_operator] = STATE(920), + [sym_unary_operator] = STATE(920), + [sym_comparison_operator] = STATE(1156), + [sym_lambda] = STATE(1156), + [sym_assignment] = STATE(1522), + [sym_augmented_assignment] = STATE(1522), + [sym_pattern_list] = STATE(1026), + [sym_yield] = STATE(1522), + [sym_attribute] = STATE(582), + [sym_subscript] = STATE(582), + [sym_call] = STATE(920), + [sym_list] = STATE(920), + [sym_set] = STATE(920), + [sym_tuple] = STATE(920), + [sym_dictionary] = STATE(920), + [sym_list_comprehension] = STATE(920), + [sym_dictionary_comprehension] = STATE(920), + [sym_set_comprehension] = STATE(920), + [sym_generator_expression] = STATE(920), + [sym_parenthesized_expression] = STATE(920), + [sym_conditional_expression] = STATE(1156), + [sym_concatenated_string] = STATE(920), + [sym_string] = STATE(775), + [sym_concatenated_template_string] = STATE(920), + [sym_template_string] = STATE(769), + [sym_await] = STATE(920), + [aux_sym_module_repeat1] = STATE(64), + [aux_sym_decorated_definition_repeat1] = STATE(1127), [sym_identifier] = ACTIONS(7), - [anon_sym_import] = ACTIONS(9), - [anon_sym_from] = ACTIONS(11), - [anon_sym_LPAREN] = ACTIONS(13), - [anon_sym_STAR] = ACTIONS(15), - [anon_sym_print] = ACTIONS(17), - [anon_sym_assert] = ACTIONS(19), - [anon_sym_return] = ACTIONS(21), - [anon_sym_del] = ACTIONS(23), - [anon_sym_raise] = ACTIONS(25), - [anon_sym_pass] = ACTIONS(27), - [anon_sym_break] = ACTIONS(29), - [anon_sym_continue] = ACTIONS(31), - [anon_sym_if] = ACTIONS(85), - [anon_sym_async] = ACTIONS(87), - [anon_sym_for] = ACTIONS(89), - [anon_sym_while] = ACTIONS(91), - [anon_sym_try] = ACTIONS(93), - [anon_sym_with] = ACTIONS(95), - [anon_sym_match] = ACTIONS(97), - [anon_sym_DASH] = ACTIONS(47), - [anon_sym_PLUS] = ACTIONS(47), - [anon_sym_LBRACK] = ACTIONS(49), - [anon_sym_LBRACE] = ACTIONS(51), - [anon_sym_STAR_STAR] = ACTIONS(53), - [anon_sym_def] = ACTIONS(99), - [anon_sym_global] = ACTIONS(57), - [anon_sym_nonlocal] = ACTIONS(59), - [anon_sym_exec] = ACTIONS(61), - [anon_sym_type] = ACTIONS(63), - [anon_sym_class] = ACTIONS(101), - [anon_sym_AT] = ACTIONS(67), - [anon_sym_not] = ACTIONS(69), - [anon_sym_TILDE] = ACTIONS(47), - [anon_sym_lambda] = ACTIONS(71), - [anon_sym_yield] = ACTIONS(73), - [sym_ellipsis] = ACTIONS(75), - [sym_integer] = ACTIONS(77), - [sym_float] = ACTIONS(75), - [anon_sym_await] = ACTIONS(79), - [sym_true] = ACTIONS(77), - [sym_false] = ACTIONS(77), - [sym_none] = ACTIONS(77), + [anon_sym_lazy] = ACTIONS(9), + [anon_sym_import] = ACTIONS(11), + [anon_sym_from] = ACTIONS(13), + [anon_sym_LPAREN] = ACTIONS(15), + [anon_sym_STAR] = ACTIONS(17), + [anon_sym_print] = ACTIONS(19), + [anon_sym_assert] = ACTIONS(21), + [anon_sym_return] = ACTIONS(23), + [anon_sym_del] = ACTIONS(25), + [anon_sym_raise] = ACTIONS(27), + [anon_sym_pass] = ACTIONS(29), + [anon_sym_break] = ACTIONS(31), + [anon_sym_continue] = ACTIONS(33), + [anon_sym_if] = ACTIONS(87), + [anon_sym_async] = ACTIONS(89), + [anon_sym_for] = ACTIONS(91), + [anon_sym_while] = ACTIONS(93), + [anon_sym_try] = ACTIONS(95), + [anon_sym_with] = ACTIONS(97), + [anon_sym_match] = ACTIONS(99), + [anon_sym_DASH] = ACTIONS(49), + [anon_sym_PLUS] = ACTIONS(49), + [anon_sym_LBRACK] = ACTIONS(51), + [anon_sym_LBRACE] = ACTIONS(53), + [anon_sym_STAR_STAR] = ACTIONS(55), + [anon_sym_def] = ACTIONS(101), + [anon_sym_global] = ACTIONS(59), + [anon_sym_nonlocal] = ACTIONS(61), + [anon_sym_exec] = ACTIONS(63), + [anon_sym_type] = ACTIONS(65), + [anon_sym_class] = ACTIONS(103), + [anon_sym_AT] = ACTIONS(69), + [anon_sym_not] = ACTIONS(71), + [anon_sym_TILDE] = ACTIONS(49), + [anon_sym_lambda] = ACTIONS(73), + [anon_sym_yield] = ACTIONS(75), + [sym_ellipsis] = ACTIONS(77), + [sym_integer] = ACTIONS(79), + [sym_float] = ACTIONS(77), + [anon_sym_await] = ACTIONS(81), + [sym_true] = ACTIONS(79), + [sym_false] = ACTIONS(79), + [sym_none] = ACTIONS(79), [sym_comment] = ACTIONS(3), - [sym__dedent] = ACTIONS(103), - [sym__string_start] = ACTIONS(81), - [sym__template_string_start] = ACTIONS(83), + [sym__dedent] = ACTIONS(105), + [sym__string_start] = ACTIONS(83), + [sym__template_string_start] = ACTIONS(85), }, [STATE(37)] = { - [sym__statement] = STATE(65), - [sym__simple_statements] = STATE(65), + [sym__statement] = STATE(64), + [sym__simple_statements] = STATE(64), [sym_import_statement] = STATE(1332), [sym_future_import_statement] = STATE(1332), [sym_import_from_statement] = STATE(1332), [sym_print_statement] = STATE(1332), [sym_assert_statement] = STATE(1332), [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1158), + [sym_named_expression] = STATE(1156), [sym_return_statement] = STATE(1332), [sym_delete_statement] = STATE(1332), [sym_raise_statement] = STATE(1332), [sym_pass_statement] = STATE(1332), [sym_break_statement] = STATE(1332), [sym_continue_statement] = STATE(1332), - [sym_if_statement] = STATE(65), - [sym_for_statement] = STATE(65), - [sym_while_statement] = STATE(65), - [sym_try_statement] = STATE(65), - [sym_with_statement] = STATE(65), - [sym_match_statement] = STATE(65), - [sym_function_definition] = STATE(65), - [sym_list_splat] = STATE(1549), - [sym_dictionary_splat] = STATE(1549), + [sym_if_statement] = STATE(64), + [sym_for_statement] = STATE(64), + [sym_while_statement] = STATE(64), + [sym_try_statement] = STATE(64), + [sym_with_statement] = STATE(64), + [sym_match_statement] = STATE(64), + [sym_function_definition] = STATE(64), + [sym_list_splat] = STATE(1520), + [sym_dictionary_splat] = STATE(1520), [sym_global_statement] = STATE(1332), [sym_nonlocal_statement] = STATE(1332), [sym_exec_statement] = STATE(1332), [sym_type_alias_statement] = STATE(1332), - [sym_class_definition] = STATE(65), - [sym_decorated_definition] = STATE(65), - [sym_decorator] = STATE(1113), - [sym_block] = STATE(578), - [sym_expression_list] = STATE(1551), - [sym_pattern] = STATE(1013), - [sym_tuple_pattern] = STATE(999), - [sym_list_pattern] = STATE(999), - [sym_list_splat_pattern] = STATE(999), - [sym_expression] = STATE(1185), - [sym_primary_expression] = STATE(779), - [sym_not_operator] = STATE(1158), - [sym_boolean_operator] = STATE(1158), - [sym_binary_operator] = STATE(908), - [sym_unary_operator] = STATE(908), - [sym_comparison_operator] = STATE(1158), - [sym_lambda] = STATE(1158), - [sym_assignment] = STATE(1551), - [sym_augmented_assignment] = STATE(1551), - [sym_pattern_list] = STATE(1024), - [sym_yield] = STATE(1551), - [sym_attribute] = STATE(494), - [sym_subscript] = STATE(494), - [sym_call] = STATE(908), - [sym_list] = STATE(908), - [sym_set] = STATE(908), - [sym_tuple] = STATE(908), - [sym_dictionary] = STATE(908), - [sym_list_comprehension] = STATE(908), - [sym_dictionary_comprehension] = STATE(908), - [sym_set_comprehension] = STATE(908), - [sym_generator_expression] = STATE(908), - [sym_parenthesized_expression] = STATE(908), - [sym_conditional_expression] = STATE(1158), - [sym_concatenated_string] = STATE(908), - [sym_string] = STATE(782), - [sym_concatenated_template_string] = STATE(908), - [sym_template_string] = STATE(763), - [sym_await] = STATE(908), - [aux_sym_module_repeat1] = STATE(65), - [aux_sym_decorated_definition_repeat1] = STATE(1113), + [sym_class_definition] = STATE(64), + [sym_decorated_definition] = STATE(64), + [sym_decorator] = STATE(1127), + [sym_block] = STATE(539), + [sym_expression_list] = STATE(1522), + [sym_pattern] = STATE(1017), + [sym_tuple_pattern] = STATE(1001), + [sym_list_pattern] = STATE(1001), + [sym_list_splat_pattern] = STATE(1001), + [sym_expression] = STATE(1176), + [sym_primary_expression] = STATE(765), + [sym_not_operator] = STATE(1156), + [sym_boolean_operator] = STATE(1156), + [sym_binary_operator] = STATE(920), + [sym_unary_operator] = STATE(920), + [sym_comparison_operator] = STATE(1156), + [sym_lambda] = STATE(1156), + [sym_assignment] = STATE(1522), + [sym_augmented_assignment] = STATE(1522), + [sym_pattern_list] = STATE(1026), + [sym_yield] = STATE(1522), + [sym_attribute] = STATE(582), + [sym_subscript] = STATE(582), + [sym_call] = STATE(920), + [sym_list] = STATE(920), + [sym_set] = STATE(920), + [sym_tuple] = STATE(920), + [sym_dictionary] = STATE(920), + [sym_list_comprehension] = STATE(920), + [sym_dictionary_comprehension] = STATE(920), + [sym_set_comprehension] = STATE(920), + [sym_generator_expression] = STATE(920), + [sym_parenthesized_expression] = STATE(920), + [sym_conditional_expression] = STATE(1156), + [sym_concatenated_string] = STATE(920), + [sym_string] = STATE(775), + [sym_concatenated_template_string] = STATE(920), + [sym_template_string] = STATE(769), + [sym_await] = STATE(920), + [aux_sym_module_repeat1] = STATE(64), + [aux_sym_decorated_definition_repeat1] = STATE(1127), [sym_identifier] = ACTIONS(7), - [anon_sym_import] = ACTIONS(9), - [anon_sym_from] = ACTIONS(11), - [anon_sym_LPAREN] = ACTIONS(13), - [anon_sym_STAR] = ACTIONS(15), - [anon_sym_print] = ACTIONS(17), - [anon_sym_assert] = ACTIONS(19), - [anon_sym_return] = ACTIONS(21), - [anon_sym_del] = ACTIONS(23), - [anon_sym_raise] = ACTIONS(25), - [anon_sym_pass] = ACTIONS(27), - [anon_sym_break] = ACTIONS(29), - [anon_sym_continue] = ACTIONS(31), - [anon_sym_if] = ACTIONS(85), - [anon_sym_async] = ACTIONS(87), - [anon_sym_for] = ACTIONS(89), - [anon_sym_while] = ACTIONS(91), - [anon_sym_try] = ACTIONS(93), - [anon_sym_with] = ACTIONS(95), - [anon_sym_match] = ACTIONS(97), - [anon_sym_DASH] = ACTIONS(47), - [anon_sym_PLUS] = ACTIONS(47), - [anon_sym_LBRACK] = ACTIONS(49), - [anon_sym_LBRACE] = ACTIONS(51), - [anon_sym_STAR_STAR] = ACTIONS(53), - [anon_sym_def] = ACTIONS(99), - [anon_sym_global] = ACTIONS(57), - [anon_sym_nonlocal] = ACTIONS(59), - [anon_sym_exec] = ACTIONS(61), - [anon_sym_type] = ACTIONS(63), - [anon_sym_class] = ACTIONS(101), - [anon_sym_AT] = ACTIONS(67), - [anon_sym_not] = ACTIONS(69), - [anon_sym_TILDE] = ACTIONS(47), - [anon_sym_lambda] = ACTIONS(71), - [anon_sym_yield] = ACTIONS(73), - [sym_ellipsis] = ACTIONS(75), - [sym_integer] = ACTIONS(77), - [sym_float] = ACTIONS(75), - [anon_sym_await] = ACTIONS(79), - [sym_true] = ACTIONS(77), - [sym_false] = ACTIONS(77), - [sym_none] = ACTIONS(77), + [anon_sym_lazy] = ACTIONS(9), + [anon_sym_import] = ACTIONS(11), + [anon_sym_from] = ACTIONS(13), + [anon_sym_LPAREN] = ACTIONS(15), + [anon_sym_STAR] = ACTIONS(17), + [anon_sym_print] = ACTIONS(19), + [anon_sym_assert] = ACTIONS(21), + [anon_sym_return] = ACTIONS(23), + [anon_sym_del] = ACTIONS(25), + [anon_sym_raise] = ACTIONS(27), + [anon_sym_pass] = ACTIONS(29), + [anon_sym_break] = ACTIONS(31), + [anon_sym_continue] = ACTIONS(33), + [anon_sym_if] = ACTIONS(87), + [anon_sym_async] = ACTIONS(89), + [anon_sym_for] = ACTIONS(91), + [anon_sym_while] = ACTIONS(93), + [anon_sym_try] = ACTIONS(95), + [anon_sym_with] = ACTIONS(97), + [anon_sym_match] = ACTIONS(99), + [anon_sym_DASH] = ACTIONS(49), + [anon_sym_PLUS] = ACTIONS(49), + [anon_sym_LBRACK] = ACTIONS(51), + [anon_sym_LBRACE] = ACTIONS(53), + [anon_sym_STAR_STAR] = ACTIONS(55), + [anon_sym_def] = ACTIONS(101), + [anon_sym_global] = ACTIONS(59), + [anon_sym_nonlocal] = ACTIONS(61), + [anon_sym_exec] = ACTIONS(63), + [anon_sym_type] = ACTIONS(65), + [anon_sym_class] = ACTIONS(103), + [anon_sym_AT] = ACTIONS(69), + [anon_sym_not] = ACTIONS(71), + [anon_sym_TILDE] = ACTIONS(49), + [anon_sym_lambda] = ACTIONS(73), + [anon_sym_yield] = ACTIONS(75), + [sym_ellipsis] = ACTIONS(77), + [sym_integer] = ACTIONS(79), + [sym_float] = ACTIONS(77), + [anon_sym_await] = ACTIONS(81), + [sym_true] = ACTIONS(79), + [sym_false] = ACTIONS(79), + [sym_none] = ACTIONS(79), [sym_comment] = ACTIONS(3), - [sym__dedent] = ACTIONS(103), - [sym__string_start] = ACTIONS(81), - [sym__template_string_start] = ACTIONS(83), + [sym__dedent] = ACTIONS(105), + [sym__string_start] = ACTIONS(83), + [sym__template_string_start] = ACTIONS(85), }, [STATE(38)] = { - [sym__statement] = STATE(65), - [sym__simple_statements] = STATE(65), + [sym__statement] = STATE(64), + [sym__simple_statements] = STATE(64), [sym_import_statement] = STATE(1332), [sym_future_import_statement] = STATE(1332), [sym_import_from_statement] = STATE(1332), [sym_print_statement] = STATE(1332), [sym_assert_statement] = STATE(1332), [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1158), + [sym_named_expression] = STATE(1156), [sym_return_statement] = STATE(1332), [sym_delete_statement] = STATE(1332), [sym_raise_statement] = STATE(1332), [sym_pass_statement] = STATE(1332), [sym_break_statement] = STATE(1332), [sym_continue_statement] = STATE(1332), - [sym_if_statement] = STATE(65), - [sym_for_statement] = STATE(65), - [sym_while_statement] = STATE(65), - [sym_try_statement] = STATE(65), - [sym_with_statement] = STATE(65), - [sym_match_statement] = STATE(65), - [sym_function_definition] = STATE(65), - [sym_list_splat] = STATE(1549), - [sym_dictionary_splat] = STATE(1549), + [sym_if_statement] = STATE(64), + [sym_for_statement] = STATE(64), + [sym_while_statement] = STATE(64), + [sym_try_statement] = STATE(64), + [sym_with_statement] = STATE(64), + [sym_match_statement] = STATE(64), + [sym_function_definition] = STATE(64), + [sym_list_splat] = STATE(1520), + [sym_dictionary_splat] = STATE(1520), [sym_global_statement] = STATE(1332), [sym_nonlocal_statement] = STATE(1332), [sym_exec_statement] = STATE(1332), [sym_type_alias_statement] = STATE(1332), - [sym_class_definition] = STATE(65), - [sym_decorated_definition] = STATE(65), - [sym_decorator] = STATE(1113), - [sym_block] = STATE(580), - [sym_expression_list] = STATE(1551), - [sym_pattern] = STATE(1013), - [sym_tuple_pattern] = STATE(999), - [sym_list_pattern] = STATE(999), - [sym_list_splat_pattern] = STATE(999), - [sym_expression] = STATE(1185), - [sym_primary_expression] = STATE(779), - [sym_not_operator] = STATE(1158), - [sym_boolean_operator] = STATE(1158), - [sym_binary_operator] = STATE(908), - [sym_unary_operator] = STATE(908), - [sym_comparison_operator] = STATE(1158), - [sym_lambda] = STATE(1158), - [sym_assignment] = STATE(1551), - [sym_augmented_assignment] = STATE(1551), - [sym_pattern_list] = STATE(1024), - [sym_yield] = STATE(1551), - [sym_attribute] = STATE(494), - [sym_subscript] = STATE(494), - [sym_call] = STATE(908), - [sym_list] = STATE(908), - [sym_set] = STATE(908), - [sym_tuple] = STATE(908), - [sym_dictionary] = STATE(908), - [sym_list_comprehension] = STATE(908), - [sym_dictionary_comprehension] = STATE(908), - [sym_set_comprehension] = STATE(908), - [sym_generator_expression] = STATE(908), - [sym_parenthesized_expression] = STATE(908), - [sym_conditional_expression] = STATE(1158), - [sym_concatenated_string] = STATE(908), - [sym_string] = STATE(782), - [sym_concatenated_template_string] = STATE(908), - [sym_template_string] = STATE(763), - [sym_await] = STATE(908), - [aux_sym_module_repeat1] = STATE(65), - [aux_sym_decorated_definition_repeat1] = STATE(1113), + [sym_class_definition] = STATE(64), + [sym_decorated_definition] = STATE(64), + [sym_decorator] = STATE(1127), + [sym_block] = STATE(541), + [sym_expression_list] = STATE(1522), + [sym_pattern] = STATE(1017), + [sym_tuple_pattern] = STATE(1001), + [sym_list_pattern] = STATE(1001), + [sym_list_splat_pattern] = STATE(1001), + [sym_expression] = STATE(1176), + [sym_primary_expression] = STATE(765), + [sym_not_operator] = STATE(1156), + [sym_boolean_operator] = STATE(1156), + [sym_binary_operator] = STATE(920), + [sym_unary_operator] = STATE(920), + [sym_comparison_operator] = STATE(1156), + [sym_lambda] = STATE(1156), + [sym_assignment] = STATE(1522), + [sym_augmented_assignment] = STATE(1522), + [sym_pattern_list] = STATE(1026), + [sym_yield] = STATE(1522), + [sym_attribute] = STATE(582), + [sym_subscript] = STATE(582), + [sym_call] = STATE(920), + [sym_list] = STATE(920), + [sym_set] = STATE(920), + [sym_tuple] = STATE(920), + [sym_dictionary] = STATE(920), + [sym_list_comprehension] = STATE(920), + [sym_dictionary_comprehension] = STATE(920), + [sym_set_comprehension] = STATE(920), + [sym_generator_expression] = STATE(920), + [sym_parenthesized_expression] = STATE(920), + [sym_conditional_expression] = STATE(1156), + [sym_concatenated_string] = STATE(920), + [sym_string] = STATE(775), + [sym_concatenated_template_string] = STATE(920), + [sym_template_string] = STATE(769), + [sym_await] = STATE(920), + [aux_sym_module_repeat1] = STATE(64), + [aux_sym_decorated_definition_repeat1] = STATE(1127), [sym_identifier] = ACTIONS(7), - [anon_sym_import] = ACTIONS(9), - [anon_sym_from] = ACTIONS(11), - [anon_sym_LPAREN] = ACTIONS(13), - [anon_sym_STAR] = ACTIONS(15), - [anon_sym_print] = ACTIONS(17), - [anon_sym_assert] = ACTIONS(19), - [anon_sym_return] = ACTIONS(21), - [anon_sym_del] = ACTIONS(23), - [anon_sym_raise] = ACTIONS(25), - [anon_sym_pass] = ACTIONS(27), - [anon_sym_break] = ACTIONS(29), - [anon_sym_continue] = ACTIONS(31), - [anon_sym_if] = ACTIONS(85), - [anon_sym_async] = ACTIONS(87), - [anon_sym_for] = ACTIONS(89), - [anon_sym_while] = ACTIONS(91), - [anon_sym_try] = ACTIONS(93), - [anon_sym_with] = ACTIONS(95), - [anon_sym_match] = ACTIONS(97), - [anon_sym_DASH] = ACTIONS(47), - [anon_sym_PLUS] = ACTIONS(47), - [anon_sym_LBRACK] = ACTIONS(49), - [anon_sym_LBRACE] = ACTIONS(51), - [anon_sym_STAR_STAR] = ACTIONS(53), - [anon_sym_def] = ACTIONS(99), - [anon_sym_global] = ACTIONS(57), - [anon_sym_nonlocal] = ACTIONS(59), - [anon_sym_exec] = ACTIONS(61), - [anon_sym_type] = ACTIONS(63), - [anon_sym_class] = ACTIONS(101), - [anon_sym_AT] = ACTIONS(67), - [anon_sym_not] = ACTIONS(69), - [anon_sym_TILDE] = ACTIONS(47), - [anon_sym_lambda] = ACTIONS(71), - [anon_sym_yield] = ACTIONS(73), - [sym_ellipsis] = ACTIONS(75), - [sym_integer] = ACTIONS(77), - [sym_float] = ACTIONS(75), - [anon_sym_await] = ACTIONS(79), - [sym_true] = ACTIONS(77), - [sym_false] = ACTIONS(77), - [sym_none] = ACTIONS(77), + [anon_sym_lazy] = ACTIONS(9), + [anon_sym_import] = ACTIONS(11), + [anon_sym_from] = ACTIONS(13), + [anon_sym_LPAREN] = ACTIONS(15), + [anon_sym_STAR] = ACTIONS(17), + [anon_sym_print] = ACTIONS(19), + [anon_sym_assert] = ACTIONS(21), + [anon_sym_return] = ACTIONS(23), + [anon_sym_del] = ACTIONS(25), + [anon_sym_raise] = ACTIONS(27), + [anon_sym_pass] = ACTIONS(29), + [anon_sym_break] = ACTIONS(31), + [anon_sym_continue] = ACTIONS(33), + [anon_sym_if] = ACTIONS(87), + [anon_sym_async] = ACTIONS(89), + [anon_sym_for] = ACTIONS(91), + [anon_sym_while] = ACTIONS(93), + [anon_sym_try] = ACTIONS(95), + [anon_sym_with] = ACTIONS(97), + [anon_sym_match] = ACTIONS(99), + [anon_sym_DASH] = ACTIONS(49), + [anon_sym_PLUS] = ACTIONS(49), + [anon_sym_LBRACK] = ACTIONS(51), + [anon_sym_LBRACE] = ACTIONS(53), + [anon_sym_STAR_STAR] = ACTIONS(55), + [anon_sym_def] = ACTIONS(101), + [anon_sym_global] = ACTIONS(59), + [anon_sym_nonlocal] = ACTIONS(61), + [anon_sym_exec] = ACTIONS(63), + [anon_sym_type] = ACTIONS(65), + [anon_sym_class] = ACTIONS(103), + [anon_sym_AT] = ACTIONS(69), + [anon_sym_not] = ACTIONS(71), + [anon_sym_TILDE] = ACTIONS(49), + [anon_sym_lambda] = ACTIONS(73), + [anon_sym_yield] = ACTIONS(75), + [sym_ellipsis] = ACTIONS(77), + [sym_integer] = ACTIONS(79), + [sym_float] = ACTIONS(77), + [anon_sym_await] = ACTIONS(81), + [sym_true] = ACTIONS(79), + [sym_false] = ACTIONS(79), + [sym_none] = ACTIONS(79), [sym_comment] = ACTIONS(3), - [sym__dedent] = ACTIONS(103), - [sym__string_start] = ACTIONS(81), - [sym__template_string_start] = ACTIONS(83), + [sym__dedent] = ACTIONS(105), + [sym__string_start] = ACTIONS(83), + [sym__template_string_start] = ACTIONS(85), }, [STATE(39)] = { - [sym__statement] = STATE(65), - [sym__simple_statements] = STATE(65), + [sym__statement] = STATE(64), + [sym__simple_statements] = STATE(64), [sym_import_statement] = STATE(1332), [sym_future_import_statement] = STATE(1332), [sym_import_from_statement] = STATE(1332), [sym_print_statement] = STATE(1332), [sym_assert_statement] = STATE(1332), [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1158), + [sym_named_expression] = STATE(1156), [sym_return_statement] = STATE(1332), [sym_delete_statement] = STATE(1332), [sym_raise_statement] = STATE(1332), [sym_pass_statement] = STATE(1332), [sym_break_statement] = STATE(1332), [sym_continue_statement] = STATE(1332), - [sym_if_statement] = STATE(65), - [sym_for_statement] = STATE(65), - [sym_while_statement] = STATE(65), - [sym_try_statement] = STATE(65), - [sym_with_statement] = STATE(65), - [sym_match_statement] = STATE(65), - [sym_function_definition] = STATE(65), - [sym_list_splat] = STATE(1549), - [sym_dictionary_splat] = STATE(1549), + [sym_if_statement] = STATE(64), + [sym_for_statement] = STATE(64), + [sym_while_statement] = STATE(64), + [sym_try_statement] = STATE(64), + [sym_with_statement] = STATE(64), + [sym_match_statement] = STATE(64), + [sym_function_definition] = STATE(64), + [sym_list_splat] = STATE(1520), + [sym_dictionary_splat] = STATE(1520), [sym_global_statement] = STATE(1332), [sym_nonlocal_statement] = STATE(1332), [sym_exec_statement] = STATE(1332), [sym_type_alias_statement] = STATE(1332), - [sym_class_definition] = STATE(65), - [sym_decorated_definition] = STATE(65), - [sym_decorator] = STATE(1113), - [sym_block] = STATE(583), - [sym_expression_list] = STATE(1551), - [sym_pattern] = STATE(1013), - [sym_tuple_pattern] = STATE(999), - [sym_list_pattern] = STATE(999), - [sym_list_splat_pattern] = STATE(999), - [sym_expression] = STATE(1185), - [sym_primary_expression] = STATE(779), - [sym_not_operator] = STATE(1158), - [sym_boolean_operator] = STATE(1158), - [sym_binary_operator] = STATE(908), - [sym_unary_operator] = STATE(908), - [sym_comparison_operator] = STATE(1158), - [sym_lambda] = STATE(1158), - [sym_assignment] = STATE(1551), - [sym_augmented_assignment] = STATE(1551), - [sym_pattern_list] = STATE(1024), - [sym_yield] = STATE(1551), - [sym_attribute] = STATE(494), - [sym_subscript] = STATE(494), - [sym_call] = STATE(908), - [sym_list] = STATE(908), - [sym_set] = STATE(908), - [sym_tuple] = STATE(908), - [sym_dictionary] = STATE(908), - [sym_list_comprehension] = STATE(908), - [sym_dictionary_comprehension] = STATE(908), - [sym_set_comprehension] = STATE(908), - [sym_generator_expression] = STATE(908), - [sym_parenthesized_expression] = STATE(908), - [sym_conditional_expression] = STATE(1158), - [sym_concatenated_string] = STATE(908), - [sym_string] = STATE(782), - [sym_concatenated_template_string] = STATE(908), - [sym_template_string] = STATE(763), - [sym_await] = STATE(908), - [aux_sym_module_repeat1] = STATE(65), - [aux_sym_decorated_definition_repeat1] = STATE(1113), + [sym_class_definition] = STATE(64), + [sym_decorated_definition] = STATE(64), + [sym_decorator] = STATE(1127), + [sym_block] = STATE(483), + [sym_expression_list] = STATE(1522), + [sym_pattern] = STATE(1017), + [sym_tuple_pattern] = STATE(1001), + [sym_list_pattern] = STATE(1001), + [sym_list_splat_pattern] = STATE(1001), + [sym_expression] = STATE(1176), + [sym_primary_expression] = STATE(765), + [sym_not_operator] = STATE(1156), + [sym_boolean_operator] = STATE(1156), + [sym_binary_operator] = STATE(920), + [sym_unary_operator] = STATE(920), + [sym_comparison_operator] = STATE(1156), + [sym_lambda] = STATE(1156), + [sym_assignment] = STATE(1522), + [sym_augmented_assignment] = STATE(1522), + [sym_pattern_list] = STATE(1026), + [sym_yield] = STATE(1522), + [sym_attribute] = STATE(582), + [sym_subscript] = STATE(582), + [sym_call] = STATE(920), + [sym_list] = STATE(920), + [sym_set] = STATE(920), + [sym_tuple] = STATE(920), + [sym_dictionary] = STATE(920), + [sym_list_comprehension] = STATE(920), + [sym_dictionary_comprehension] = STATE(920), + [sym_set_comprehension] = STATE(920), + [sym_generator_expression] = STATE(920), + [sym_parenthesized_expression] = STATE(920), + [sym_conditional_expression] = STATE(1156), + [sym_concatenated_string] = STATE(920), + [sym_string] = STATE(775), + [sym_concatenated_template_string] = STATE(920), + [sym_template_string] = STATE(769), + [sym_await] = STATE(920), + [aux_sym_module_repeat1] = STATE(64), + [aux_sym_decorated_definition_repeat1] = STATE(1127), [sym_identifier] = ACTIONS(7), - [anon_sym_import] = ACTIONS(9), - [anon_sym_from] = ACTIONS(11), - [anon_sym_LPAREN] = ACTIONS(13), - [anon_sym_STAR] = ACTIONS(15), - [anon_sym_print] = ACTIONS(17), - [anon_sym_assert] = ACTIONS(19), - [anon_sym_return] = ACTIONS(21), - [anon_sym_del] = ACTIONS(23), - [anon_sym_raise] = ACTIONS(25), - [anon_sym_pass] = ACTIONS(27), - [anon_sym_break] = ACTIONS(29), - [anon_sym_continue] = ACTIONS(31), - [anon_sym_if] = ACTIONS(85), - [anon_sym_async] = ACTIONS(87), - [anon_sym_for] = ACTIONS(89), - [anon_sym_while] = ACTIONS(91), - [anon_sym_try] = ACTIONS(93), - [anon_sym_with] = ACTIONS(95), - [anon_sym_match] = ACTIONS(97), - [anon_sym_DASH] = ACTIONS(47), - [anon_sym_PLUS] = ACTIONS(47), - [anon_sym_LBRACK] = ACTIONS(49), - [anon_sym_LBRACE] = ACTIONS(51), - [anon_sym_STAR_STAR] = ACTIONS(53), - [anon_sym_def] = ACTIONS(99), - [anon_sym_global] = ACTIONS(57), - [anon_sym_nonlocal] = ACTIONS(59), - [anon_sym_exec] = ACTIONS(61), - [anon_sym_type] = ACTIONS(63), - [anon_sym_class] = ACTIONS(101), - [anon_sym_AT] = ACTIONS(67), - [anon_sym_not] = ACTIONS(69), - [anon_sym_TILDE] = ACTIONS(47), - [anon_sym_lambda] = ACTIONS(71), - [anon_sym_yield] = ACTIONS(73), - [sym_ellipsis] = ACTIONS(75), - [sym_integer] = ACTIONS(77), - [sym_float] = ACTIONS(75), - [anon_sym_await] = ACTIONS(79), - [sym_true] = ACTIONS(77), - [sym_false] = ACTIONS(77), - [sym_none] = ACTIONS(77), + [anon_sym_lazy] = ACTIONS(9), + [anon_sym_import] = ACTIONS(11), + [anon_sym_from] = ACTIONS(13), + [anon_sym_LPAREN] = ACTIONS(15), + [anon_sym_STAR] = ACTIONS(17), + [anon_sym_print] = ACTIONS(19), + [anon_sym_assert] = ACTIONS(21), + [anon_sym_return] = ACTIONS(23), + [anon_sym_del] = ACTIONS(25), + [anon_sym_raise] = ACTIONS(27), + [anon_sym_pass] = ACTIONS(29), + [anon_sym_break] = ACTIONS(31), + [anon_sym_continue] = ACTIONS(33), + [anon_sym_if] = ACTIONS(87), + [anon_sym_async] = ACTIONS(89), + [anon_sym_for] = ACTIONS(91), + [anon_sym_while] = ACTIONS(93), + [anon_sym_try] = ACTIONS(95), + [anon_sym_with] = ACTIONS(97), + [anon_sym_match] = ACTIONS(99), + [anon_sym_DASH] = ACTIONS(49), + [anon_sym_PLUS] = ACTIONS(49), + [anon_sym_LBRACK] = ACTIONS(51), + [anon_sym_LBRACE] = ACTIONS(53), + [anon_sym_STAR_STAR] = ACTIONS(55), + [anon_sym_def] = ACTIONS(101), + [anon_sym_global] = ACTIONS(59), + [anon_sym_nonlocal] = ACTIONS(61), + [anon_sym_exec] = ACTIONS(63), + [anon_sym_type] = ACTIONS(65), + [anon_sym_class] = ACTIONS(103), + [anon_sym_AT] = ACTIONS(69), + [anon_sym_not] = ACTIONS(71), + [anon_sym_TILDE] = ACTIONS(49), + [anon_sym_lambda] = ACTIONS(73), + [anon_sym_yield] = ACTIONS(75), + [sym_ellipsis] = ACTIONS(77), + [sym_integer] = ACTIONS(79), + [sym_float] = ACTIONS(77), + [anon_sym_await] = ACTIONS(81), + [sym_true] = ACTIONS(79), + [sym_false] = ACTIONS(79), + [sym_none] = ACTIONS(79), [sym_comment] = ACTIONS(3), - [sym__dedent] = ACTIONS(103), - [sym__string_start] = ACTIONS(81), - [sym__template_string_start] = ACTIONS(83), + [sym__dedent] = ACTIONS(105), + [sym__string_start] = ACTIONS(83), + [sym__template_string_start] = ACTIONS(85), }, [STATE(40)] = { - [sym__statement] = STATE(65), - [sym__simple_statements] = STATE(65), + [sym__statement] = STATE(64), + [sym__simple_statements] = STATE(64), [sym_import_statement] = STATE(1332), [sym_future_import_statement] = STATE(1332), [sym_import_from_statement] = STATE(1332), [sym_print_statement] = STATE(1332), [sym_assert_statement] = STATE(1332), [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1158), + [sym_named_expression] = STATE(1156), [sym_return_statement] = STATE(1332), [sym_delete_statement] = STATE(1332), [sym_raise_statement] = STATE(1332), [sym_pass_statement] = STATE(1332), [sym_break_statement] = STATE(1332), [sym_continue_statement] = STATE(1332), - [sym_if_statement] = STATE(65), - [sym_for_statement] = STATE(65), - [sym_while_statement] = STATE(65), - [sym_try_statement] = STATE(65), - [sym_with_statement] = STATE(65), - [sym_match_statement] = STATE(65), - [sym_function_definition] = STATE(65), - [sym_list_splat] = STATE(1549), - [sym_dictionary_splat] = STATE(1549), + [sym_if_statement] = STATE(64), + [sym_for_statement] = STATE(64), + [sym_while_statement] = STATE(64), + [sym_try_statement] = STATE(64), + [sym_with_statement] = STATE(64), + [sym_match_statement] = STATE(64), + [sym_function_definition] = STATE(64), + [sym_list_splat] = STATE(1520), + [sym_dictionary_splat] = STATE(1520), [sym_global_statement] = STATE(1332), [sym_nonlocal_statement] = STATE(1332), [sym_exec_statement] = STATE(1332), [sym_type_alias_statement] = STATE(1332), - [sym_class_definition] = STATE(65), - [sym_decorated_definition] = STATE(65), - [sym_decorator] = STATE(1113), - [sym_block] = STATE(469), - [sym_expression_list] = STATE(1551), - [sym_pattern] = STATE(1013), - [sym_tuple_pattern] = STATE(999), - [sym_list_pattern] = STATE(999), - [sym_list_splat_pattern] = STATE(999), - [sym_expression] = STATE(1185), - [sym_primary_expression] = STATE(779), - [sym_not_operator] = STATE(1158), - [sym_boolean_operator] = STATE(1158), - [sym_binary_operator] = STATE(908), - [sym_unary_operator] = STATE(908), - [sym_comparison_operator] = STATE(1158), - [sym_lambda] = STATE(1158), - [sym_assignment] = STATE(1551), - [sym_augmented_assignment] = STATE(1551), - [sym_pattern_list] = STATE(1024), - [sym_yield] = STATE(1551), - [sym_attribute] = STATE(494), - [sym_subscript] = STATE(494), - [sym_call] = STATE(908), - [sym_list] = STATE(908), - [sym_set] = STATE(908), - [sym_tuple] = STATE(908), - [sym_dictionary] = STATE(908), - [sym_list_comprehension] = STATE(908), - [sym_dictionary_comprehension] = STATE(908), - [sym_set_comprehension] = STATE(908), - [sym_generator_expression] = STATE(908), - [sym_parenthesized_expression] = STATE(908), - [sym_conditional_expression] = STATE(1158), - [sym_concatenated_string] = STATE(908), - [sym_string] = STATE(782), - [sym_concatenated_template_string] = STATE(908), - [sym_template_string] = STATE(763), - [sym_await] = STATE(908), - [aux_sym_module_repeat1] = STATE(65), - [aux_sym_decorated_definition_repeat1] = STATE(1113), + [sym_class_definition] = STATE(64), + [sym_decorated_definition] = STATE(64), + [sym_decorator] = STATE(1127), + [sym_block] = STATE(446), + [sym_expression_list] = STATE(1522), + [sym_pattern] = STATE(1017), + [sym_tuple_pattern] = STATE(1001), + [sym_list_pattern] = STATE(1001), + [sym_list_splat_pattern] = STATE(1001), + [sym_expression] = STATE(1176), + [sym_primary_expression] = STATE(765), + [sym_not_operator] = STATE(1156), + [sym_boolean_operator] = STATE(1156), + [sym_binary_operator] = STATE(920), + [sym_unary_operator] = STATE(920), + [sym_comparison_operator] = STATE(1156), + [sym_lambda] = STATE(1156), + [sym_assignment] = STATE(1522), + [sym_augmented_assignment] = STATE(1522), + [sym_pattern_list] = STATE(1026), + [sym_yield] = STATE(1522), + [sym_attribute] = STATE(582), + [sym_subscript] = STATE(582), + [sym_call] = STATE(920), + [sym_list] = STATE(920), + [sym_set] = STATE(920), + [sym_tuple] = STATE(920), + [sym_dictionary] = STATE(920), + [sym_list_comprehension] = STATE(920), + [sym_dictionary_comprehension] = STATE(920), + [sym_set_comprehension] = STATE(920), + [sym_generator_expression] = STATE(920), + [sym_parenthesized_expression] = STATE(920), + [sym_conditional_expression] = STATE(1156), + [sym_concatenated_string] = STATE(920), + [sym_string] = STATE(775), + [sym_concatenated_template_string] = STATE(920), + [sym_template_string] = STATE(769), + [sym_await] = STATE(920), + [aux_sym_module_repeat1] = STATE(64), + [aux_sym_decorated_definition_repeat1] = STATE(1127), [sym_identifier] = ACTIONS(7), - [anon_sym_import] = ACTIONS(9), - [anon_sym_from] = ACTIONS(11), - [anon_sym_LPAREN] = ACTIONS(13), - [anon_sym_STAR] = ACTIONS(15), - [anon_sym_print] = ACTIONS(17), - [anon_sym_assert] = ACTIONS(19), - [anon_sym_return] = ACTIONS(21), - [anon_sym_del] = ACTIONS(23), - [anon_sym_raise] = ACTIONS(25), - [anon_sym_pass] = ACTIONS(27), - [anon_sym_break] = ACTIONS(29), - [anon_sym_continue] = ACTIONS(31), - [anon_sym_if] = ACTIONS(85), - [anon_sym_async] = ACTIONS(87), - [anon_sym_for] = ACTIONS(89), - [anon_sym_while] = ACTIONS(91), - [anon_sym_try] = ACTIONS(93), - [anon_sym_with] = ACTIONS(95), - [anon_sym_match] = ACTIONS(97), - [anon_sym_DASH] = ACTIONS(47), - [anon_sym_PLUS] = ACTIONS(47), - [anon_sym_LBRACK] = ACTIONS(49), - [anon_sym_LBRACE] = ACTIONS(51), - [anon_sym_STAR_STAR] = ACTIONS(53), - [anon_sym_def] = ACTIONS(99), - [anon_sym_global] = ACTIONS(57), - [anon_sym_nonlocal] = ACTIONS(59), - [anon_sym_exec] = ACTIONS(61), - [anon_sym_type] = ACTIONS(63), - [anon_sym_class] = ACTIONS(101), - [anon_sym_AT] = ACTIONS(67), - [anon_sym_not] = ACTIONS(69), - [anon_sym_TILDE] = ACTIONS(47), - [anon_sym_lambda] = ACTIONS(71), - [anon_sym_yield] = ACTIONS(73), - [sym_ellipsis] = ACTIONS(75), - [sym_integer] = ACTIONS(77), - [sym_float] = ACTIONS(75), - [anon_sym_await] = ACTIONS(79), - [sym_true] = ACTIONS(77), - [sym_false] = ACTIONS(77), - [sym_none] = ACTIONS(77), + [anon_sym_lazy] = ACTIONS(9), + [anon_sym_import] = ACTIONS(11), + [anon_sym_from] = ACTIONS(13), + [anon_sym_LPAREN] = ACTIONS(15), + [anon_sym_STAR] = ACTIONS(17), + [anon_sym_print] = ACTIONS(19), + [anon_sym_assert] = ACTIONS(21), + [anon_sym_return] = ACTIONS(23), + [anon_sym_del] = ACTIONS(25), + [anon_sym_raise] = ACTIONS(27), + [anon_sym_pass] = ACTIONS(29), + [anon_sym_break] = ACTIONS(31), + [anon_sym_continue] = ACTIONS(33), + [anon_sym_if] = ACTIONS(87), + [anon_sym_async] = ACTIONS(89), + [anon_sym_for] = ACTIONS(91), + [anon_sym_while] = ACTIONS(93), + [anon_sym_try] = ACTIONS(95), + [anon_sym_with] = ACTIONS(97), + [anon_sym_match] = ACTIONS(99), + [anon_sym_DASH] = ACTIONS(49), + [anon_sym_PLUS] = ACTIONS(49), + [anon_sym_LBRACK] = ACTIONS(51), + [anon_sym_LBRACE] = ACTIONS(53), + [anon_sym_STAR_STAR] = ACTIONS(55), + [anon_sym_def] = ACTIONS(101), + [anon_sym_global] = ACTIONS(59), + [anon_sym_nonlocal] = ACTIONS(61), + [anon_sym_exec] = ACTIONS(63), + [anon_sym_type] = ACTIONS(65), + [anon_sym_class] = ACTIONS(103), + [anon_sym_AT] = ACTIONS(69), + [anon_sym_not] = ACTIONS(71), + [anon_sym_TILDE] = ACTIONS(49), + [anon_sym_lambda] = ACTIONS(73), + [anon_sym_yield] = ACTIONS(75), + [sym_ellipsis] = ACTIONS(77), + [sym_integer] = ACTIONS(79), + [sym_float] = ACTIONS(77), + [anon_sym_await] = ACTIONS(81), + [sym_true] = ACTIONS(79), + [sym_false] = ACTIONS(79), + [sym_none] = ACTIONS(79), [sym_comment] = ACTIONS(3), - [sym__dedent] = ACTIONS(103), - [sym__string_start] = ACTIONS(81), - [sym__template_string_start] = ACTIONS(83), + [sym__dedent] = ACTIONS(105), + [sym__string_start] = ACTIONS(83), + [sym__template_string_start] = ACTIONS(85), }, [STATE(41)] = { - [sym__statement] = STATE(65), - [sym__simple_statements] = STATE(65), + [sym__statement] = STATE(64), + [sym__simple_statements] = STATE(64), [sym_import_statement] = STATE(1332), [sym_future_import_statement] = STATE(1332), [sym_import_from_statement] = STATE(1332), [sym_print_statement] = STATE(1332), [sym_assert_statement] = STATE(1332), [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1158), + [sym_named_expression] = STATE(1156), [sym_return_statement] = STATE(1332), [sym_delete_statement] = STATE(1332), [sym_raise_statement] = STATE(1332), [sym_pass_statement] = STATE(1332), [sym_break_statement] = STATE(1332), [sym_continue_statement] = STATE(1332), - [sym_if_statement] = STATE(65), - [sym_for_statement] = STATE(65), - [sym_while_statement] = STATE(65), - [sym_try_statement] = STATE(65), - [sym_with_statement] = STATE(65), - [sym_match_statement] = STATE(65), - [sym_function_definition] = STATE(65), - [sym_list_splat] = STATE(1549), - [sym_dictionary_splat] = STATE(1549), + [sym_if_statement] = STATE(64), + [sym_for_statement] = STATE(64), + [sym_while_statement] = STATE(64), + [sym_try_statement] = STATE(64), + [sym_with_statement] = STATE(64), + [sym_match_statement] = STATE(64), + [sym_function_definition] = STATE(64), + [sym_list_splat] = STATE(1520), + [sym_dictionary_splat] = STATE(1520), [sym_global_statement] = STATE(1332), [sym_nonlocal_statement] = STATE(1332), [sym_exec_statement] = STATE(1332), [sym_type_alias_statement] = STATE(1332), - [sym_class_definition] = STATE(65), - [sym_decorated_definition] = STATE(65), - [sym_decorator] = STATE(1113), - [sym_block] = STATE(438), - [sym_expression_list] = STATE(1551), - [sym_pattern] = STATE(1013), - [sym_tuple_pattern] = STATE(999), - [sym_list_pattern] = STATE(999), - [sym_list_splat_pattern] = STATE(999), - [sym_expression] = STATE(1185), - [sym_primary_expression] = STATE(779), - [sym_not_operator] = STATE(1158), - [sym_boolean_operator] = STATE(1158), - [sym_binary_operator] = STATE(908), - [sym_unary_operator] = STATE(908), - [sym_comparison_operator] = STATE(1158), - [sym_lambda] = STATE(1158), - [sym_assignment] = STATE(1551), - [sym_augmented_assignment] = STATE(1551), - [sym_pattern_list] = STATE(1024), - [sym_yield] = STATE(1551), - [sym_attribute] = STATE(494), - [sym_subscript] = STATE(494), - [sym_call] = STATE(908), - [sym_list] = STATE(908), - [sym_set] = STATE(908), - [sym_tuple] = STATE(908), - [sym_dictionary] = STATE(908), - [sym_list_comprehension] = STATE(908), - [sym_dictionary_comprehension] = STATE(908), - [sym_set_comprehension] = STATE(908), - [sym_generator_expression] = STATE(908), - [sym_parenthesized_expression] = STATE(908), - [sym_conditional_expression] = STATE(1158), - [sym_concatenated_string] = STATE(908), - [sym_string] = STATE(782), - [sym_concatenated_template_string] = STATE(908), - [sym_template_string] = STATE(763), - [sym_await] = STATE(908), - [aux_sym_module_repeat1] = STATE(65), - [aux_sym_decorated_definition_repeat1] = STATE(1113), + [sym_class_definition] = STATE(64), + [sym_decorated_definition] = STATE(64), + [sym_decorator] = STATE(1127), + [sym_block] = STATE(545), + [sym_expression_list] = STATE(1522), + [sym_pattern] = STATE(1017), + [sym_tuple_pattern] = STATE(1001), + [sym_list_pattern] = STATE(1001), + [sym_list_splat_pattern] = STATE(1001), + [sym_expression] = STATE(1176), + [sym_primary_expression] = STATE(765), + [sym_not_operator] = STATE(1156), + [sym_boolean_operator] = STATE(1156), + [sym_binary_operator] = STATE(920), + [sym_unary_operator] = STATE(920), + [sym_comparison_operator] = STATE(1156), + [sym_lambda] = STATE(1156), + [sym_assignment] = STATE(1522), + [sym_augmented_assignment] = STATE(1522), + [sym_pattern_list] = STATE(1026), + [sym_yield] = STATE(1522), + [sym_attribute] = STATE(582), + [sym_subscript] = STATE(582), + [sym_call] = STATE(920), + [sym_list] = STATE(920), + [sym_set] = STATE(920), + [sym_tuple] = STATE(920), + [sym_dictionary] = STATE(920), + [sym_list_comprehension] = STATE(920), + [sym_dictionary_comprehension] = STATE(920), + [sym_set_comprehension] = STATE(920), + [sym_generator_expression] = STATE(920), + [sym_parenthesized_expression] = STATE(920), + [sym_conditional_expression] = STATE(1156), + [sym_concatenated_string] = STATE(920), + [sym_string] = STATE(775), + [sym_concatenated_template_string] = STATE(920), + [sym_template_string] = STATE(769), + [sym_await] = STATE(920), + [aux_sym_module_repeat1] = STATE(64), + [aux_sym_decorated_definition_repeat1] = STATE(1127), [sym_identifier] = ACTIONS(7), - [anon_sym_import] = ACTIONS(9), - [anon_sym_from] = ACTIONS(11), - [anon_sym_LPAREN] = ACTIONS(13), - [anon_sym_STAR] = ACTIONS(15), - [anon_sym_print] = ACTIONS(17), - [anon_sym_assert] = ACTIONS(19), - [anon_sym_return] = ACTIONS(21), - [anon_sym_del] = ACTIONS(23), - [anon_sym_raise] = ACTIONS(25), - [anon_sym_pass] = ACTIONS(27), - [anon_sym_break] = ACTIONS(29), - [anon_sym_continue] = ACTIONS(31), - [anon_sym_if] = ACTIONS(85), - [anon_sym_async] = ACTIONS(87), - [anon_sym_for] = ACTIONS(89), - [anon_sym_while] = ACTIONS(91), - [anon_sym_try] = ACTIONS(93), - [anon_sym_with] = ACTIONS(95), - [anon_sym_match] = ACTIONS(97), - [anon_sym_DASH] = ACTIONS(47), - [anon_sym_PLUS] = ACTIONS(47), - [anon_sym_LBRACK] = ACTIONS(49), - [anon_sym_LBRACE] = ACTIONS(51), - [anon_sym_STAR_STAR] = ACTIONS(53), - [anon_sym_def] = ACTIONS(99), - [anon_sym_global] = ACTIONS(57), - [anon_sym_nonlocal] = ACTIONS(59), - [anon_sym_exec] = ACTIONS(61), - [anon_sym_type] = ACTIONS(63), - [anon_sym_class] = ACTIONS(101), - [anon_sym_AT] = ACTIONS(67), - [anon_sym_not] = ACTIONS(69), - [anon_sym_TILDE] = ACTIONS(47), - [anon_sym_lambda] = ACTIONS(71), - [anon_sym_yield] = ACTIONS(73), - [sym_ellipsis] = ACTIONS(75), - [sym_integer] = ACTIONS(77), - [sym_float] = ACTIONS(75), - [anon_sym_await] = ACTIONS(79), - [sym_true] = ACTIONS(77), - [sym_false] = ACTIONS(77), - [sym_none] = ACTIONS(77), + [anon_sym_lazy] = ACTIONS(9), + [anon_sym_import] = ACTIONS(11), + [anon_sym_from] = ACTIONS(13), + [anon_sym_LPAREN] = ACTIONS(15), + [anon_sym_STAR] = ACTIONS(17), + [anon_sym_print] = ACTIONS(19), + [anon_sym_assert] = ACTIONS(21), + [anon_sym_return] = ACTIONS(23), + [anon_sym_del] = ACTIONS(25), + [anon_sym_raise] = ACTIONS(27), + [anon_sym_pass] = ACTIONS(29), + [anon_sym_break] = ACTIONS(31), + [anon_sym_continue] = ACTIONS(33), + [anon_sym_if] = ACTIONS(87), + [anon_sym_async] = ACTIONS(89), + [anon_sym_for] = ACTIONS(91), + [anon_sym_while] = ACTIONS(93), + [anon_sym_try] = ACTIONS(95), + [anon_sym_with] = ACTIONS(97), + [anon_sym_match] = ACTIONS(99), + [anon_sym_DASH] = ACTIONS(49), + [anon_sym_PLUS] = ACTIONS(49), + [anon_sym_LBRACK] = ACTIONS(51), + [anon_sym_LBRACE] = ACTIONS(53), + [anon_sym_STAR_STAR] = ACTIONS(55), + [anon_sym_def] = ACTIONS(101), + [anon_sym_global] = ACTIONS(59), + [anon_sym_nonlocal] = ACTIONS(61), + [anon_sym_exec] = ACTIONS(63), + [anon_sym_type] = ACTIONS(65), + [anon_sym_class] = ACTIONS(103), + [anon_sym_AT] = ACTIONS(69), + [anon_sym_not] = ACTIONS(71), + [anon_sym_TILDE] = ACTIONS(49), + [anon_sym_lambda] = ACTIONS(73), + [anon_sym_yield] = ACTIONS(75), + [sym_ellipsis] = ACTIONS(77), + [sym_integer] = ACTIONS(79), + [sym_float] = ACTIONS(77), + [anon_sym_await] = ACTIONS(81), + [sym_true] = ACTIONS(79), + [sym_false] = ACTIONS(79), + [sym_none] = ACTIONS(79), [sym_comment] = ACTIONS(3), - [sym__dedent] = ACTIONS(103), - [sym__string_start] = ACTIONS(81), - [sym__template_string_start] = ACTIONS(83), + [sym__dedent] = ACTIONS(105), + [sym__string_start] = ACTIONS(83), + [sym__template_string_start] = ACTIONS(85), }, [STATE(42)] = { - [sym__statement] = STATE(65), - [sym__simple_statements] = STATE(65), + [sym__statement] = STATE(64), + [sym__simple_statements] = STATE(64), [sym_import_statement] = STATE(1332), [sym_future_import_statement] = STATE(1332), [sym_import_from_statement] = STATE(1332), [sym_print_statement] = STATE(1332), [sym_assert_statement] = STATE(1332), [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1158), + [sym_named_expression] = STATE(1156), [sym_return_statement] = STATE(1332), [sym_delete_statement] = STATE(1332), [sym_raise_statement] = STATE(1332), [sym_pass_statement] = STATE(1332), [sym_break_statement] = STATE(1332), [sym_continue_statement] = STATE(1332), - [sym_if_statement] = STATE(65), - [sym_for_statement] = STATE(65), - [sym_while_statement] = STATE(65), - [sym_try_statement] = STATE(65), - [sym_with_statement] = STATE(65), - [sym_match_statement] = STATE(65), - [sym_function_definition] = STATE(65), - [sym_list_splat] = STATE(1549), - [sym_dictionary_splat] = STATE(1549), + [sym_if_statement] = STATE(64), + [sym_for_statement] = STATE(64), + [sym_while_statement] = STATE(64), + [sym_try_statement] = STATE(64), + [sym_with_statement] = STATE(64), + [sym_match_statement] = STATE(64), + [sym_function_definition] = STATE(64), + [sym_list_splat] = STATE(1520), + [sym_dictionary_splat] = STATE(1520), [sym_global_statement] = STATE(1332), [sym_nonlocal_statement] = STATE(1332), [sym_exec_statement] = STATE(1332), [sym_type_alias_statement] = STATE(1332), - [sym_class_definition] = STATE(65), - [sym_decorated_definition] = STATE(65), - [sym_decorator] = STATE(1113), - [sym_block] = STATE(586), - [sym_expression_list] = STATE(1551), - [sym_pattern] = STATE(1013), - [sym_tuple_pattern] = STATE(999), - [sym_list_pattern] = STATE(999), - [sym_list_splat_pattern] = STATE(999), - [sym_expression] = STATE(1185), - [sym_primary_expression] = STATE(779), - [sym_not_operator] = STATE(1158), - [sym_boolean_operator] = STATE(1158), - [sym_binary_operator] = STATE(908), - [sym_unary_operator] = STATE(908), - [sym_comparison_operator] = STATE(1158), - [sym_lambda] = STATE(1158), - [sym_assignment] = STATE(1551), - [sym_augmented_assignment] = STATE(1551), - [sym_pattern_list] = STATE(1024), - [sym_yield] = STATE(1551), - [sym_attribute] = STATE(494), - [sym_subscript] = STATE(494), - [sym_call] = STATE(908), - [sym_list] = STATE(908), - [sym_set] = STATE(908), - [sym_tuple] = STATE(908), - [sym_dictionary] = STATE(908), - [sym_list_comprehension] = STATE(908), - [sym_dictionary_comprehension] = STATE(908), - [sym_set_comprehension] = STATE(908), - [sym_generator_expression] = STATE(908), - [sym_parenthesized_expression] = STATE(908), - [sym_conditional_expression] = STATE(1158), - [sym_concatenated_string] = STATE(908), - [sym_string] = STATE(782), - [sym_concatenated_template_string] = STATE(908), - [sym_template_string] = STATE(763), - [sym_await] = STATE(908), - [aux_sym_module_repeat1] = STATE(65), - [aux_sym_decorated_definition_repeat1] = STATE(1113), + [sym_class_definition] = STATE(64), + [sym_decorated_definition] = STATE(64), + [sym_decorator] = STATE(1127), + [sym_block] = STATE(511), + [sym_expression_list] = STATE(1522), + [sym_pattern] = STATE(1017), + [sym_tuple_pattern] = STATE(1001), + [sym_list_pattern] = STATE(1001), + [sym_list_splat_pattern] = STATE(1001), + [sym_expression] = STATE(1176), + [sym_primary_expression] = STATE(765), + [sym_not_operator] = STATE(1156), + [sym_boolean_operator] = STATE(1156), + [sym_binary_operator] = STATE(920), + [sym_unary_operator] = STATE(920), + [sym_comparison_operator] = STATE(1156), + [sym_lambda] = STATE(1156), + [sym_assignment] = STATE(1522), + [sym_augmented_assignment] = STATE(1522), + [sym_pattern_list] = STATE(1026), + [sym_yield] = STATE(1522), + [sym_attribute] = STATE(582), + [sym_subscript] = STATE(582), + [sym_call] = STATE(920), + [sym_list] = STATE(920), + [sym_set] = STATE(920), + [sym_tuple] = STATE(920), + [sym_dictionary] = STATE(920), + [sym_list_comprehension] = STATE(920), + [sym_dictionary_comprehension] = STATE(920), + [sym_set_comprehension] = STATE(920), + [sym_generator_expression] = STATE(920), + [sym_parenthesized_expression] = STATE(920), + [sym_conditional_expression] = STATE(1156), + [sym_concatenated_string] = STATE(920), + [sym_string] = STATE(775), + [sym_concatenated_template_string] = STATE(920), + [sym_template_string] = STATE(769), + [sym_await] = STATE(920), + [aux_sym_module_repeat1] = STATE(64), + [aux_sym_decorated_definition_repeat1] = STATE(1127), [sym_identifier] = ACTIONS(7), - [anon_sym_import] = ACTIONS(9), - [anon_sym_from] = ACTIONS(11), - [anon_sym_LPAREN] = ACTIONS(13), - [anon_sym_STAR] = ACTIONS(15), - [anon_sym_print] = ACTIONS(17), - [anon_sym_assert] = ACTIONS(19), - [anon_sym_return] = ACTIONS(21), - [anon_sym_del] = ACTIONS(23), - [anon_sym_raise] = ACTIONS(25), - [anon_sym_pass] = ACTIONS(27), - [anon_sym_break] = ACTIONS(29), - [anon_sym_continue] = ACTIONS(31), - [anon_sym_if] = ACTIONS(85), - [anon_sym_async] = ACTIONS(87), - [anon_sym_for] = ACTIONS(89), - [anon_sym_while] = ACTIONS(91), - [anon_sym_try] = ACTIONS(93), - [anon_sym_with] = ACTIONS(95), - [anon_sym_match] = ACTIONS(97), - [anon_sym_DASH] = ACTIONS(47), - [anon_sym_PLUS] = ACTIONS(47), - [anon_sym_LBRACK] = ACTIONS(49), - [anon_sym_LBRACE] = ACTIONS(51), - [anon_sym_STAR_STAR] = ACTIONS(53), - [anon_sym_def] = ACTIONS(99), - [anon_sym_global] = ACTIONS(57), - [anon_sym_nonlocal] = ACTIONS(59), - [anon_sym_exec] = ACTIONS(61), - [anon_sym_type] = ACTIONS(63), - [anon_sym_class] = ACTIONS(101), - [anon_sym_AT] = ACTIONS(67), - [anon_sym_not] = ACTIONS(69), - [anon_sym_TILDE] = ACTIONS(47), - [anon_sym_lambda] = ACTIONS(71), - [anon_sym_yield] = ACTIONS(73), - [sym_ellipsis] = ACTIONS(75), - [sym_integer] = ACTIONS(77), - [sym_float] = ACTIONS(75), - [anon_sym_await] = ACTIONS(79), - [sym_true] = ACTIONS(77), - [sym_false] = ACTIONS(77), - [sym_none] = ACTIONS(77), + [anon_sym_lazy] = ACTIONS(9), + [anon_sym_import] = ACTIONS(11), + [anon_sym_from] = ACTIONS(13), + [anon_sym_LPAREN] = ACTIONS(15), + [anon_sym_STAR] = ACTIONS(17), + [anon_sym_print] = ACTIONS(19), + [anon_sym_assert] = ACTIONS(21), + [anon_sym_return] = ACTIONS(23), + [anon_sym_del] = ACTIONS(25), + [anon_sym_raise] = ACTIONS(27), + [anon_sym_pass] = ACTIONS(29), + [anon_sym_break] = ACTIONS(31), + [anon_sym_continue] = ACTIONS(33), + [anon_sym_if] = ACTIONS(87), + [anon_sym_async] = ACTIONS(89), + [anon_sym_for] = ACTIONS(91), + [anon_sym_while] = ACTIONS(93), + [anon_sym_try] = ACTIONS(95), + [anon_sym_with] = ACTIONS(97), + [anon_sym_match] = ACTIONS(99), + [anon_sym_DASH] = ACTIONS(49), + [anon_sym_PLUS] = ACTIONS(49), + [anon_sym_LBRACK] = ACTIONS(51), + [anon_sym_LBRACE] = ACTIONS(53), + [anon_sym_STAR_STAR] = ACTIONS(55), + [anon_sym_def] = ACTIONS(101), + [anon_sym_global] = ACTIONS(59), + [anon_sym_nonlocal] = ACTIONS(61), + [anon_sym_exec] = ACTIONS(63), + [anon_sym_type] = ACTIONS(65), + [anon_sym_class] = ACTIONS(103), + [anon_sym_AT] = ACTIONS(69), + [anon_sym_not] = ACTIONS(71), + [anon_sym_TILDE] = ACTIONS(49), + [anon_sym_lambda] = ACTIONS(73), + [anon_sym_yield] = ACTIONS(75), + [sym_ellipsis] = ACTIONS(77), + [sym_integer] = ACTIONS(79), + [sym_float] = ACTIONS(77), + [anon_sym_await] = ACTIONS(81), + [sym_true] = ACTIONS(79), + [sym_false] = ACTIONS(79), + [sym_none] = ACTIONS(79), [sym_comment] = ACTIONS(3), - [sym__dedent] = ACTIONS(103), - [sym__string_start] = ACTIONS(81), - [sym__template_string_start] = ACTIONS(83), + [sym__dedent] = ACTIONS(105), + [sym__string_start] = ACTIONS(83), + [sym__template_string_start] = ACTIONS(85), }, [STATE(43)] = { - [sym__statement] = STATE(65), - [sym__simple_statements] = STATE(65), - [sym_import_statement] = STATE(1332), + [sym__statement] = STATE(64), + [sym__simple_statements] = STATE(64), + [sym_import_statement] = STATE(1332), [sym_future_import_statement] = STATE(1332), [sym_import_from_statement] = STATE(1332), [sym_print_statement] = STATE(1332), [sym_assert_statement] = STATE(1332), [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1158), + [sym_named_expression] = STATE(1156), [sym_return_statement] = STATE(1332), [sym_delete_statement] = STATE(1332), [sym_raise_statement] = STATE(1332), [sym_pass_statement] = STATE(1332), [sym_break_statement] = STATE(1332), [sym_continue_statement] = STATE(1332), - [sym_if_statement] = STATE(65), - [sym_for_statement] = STATE(65), - [sym_while_statement] = STATE(65), - [sym_try_statement] = STATE(65), - [sym_with_statement] = STATE(65), - [sym_match_statement] = STATE(65), - [sym_function_definition] = STATE(65), - [sym_list_splat] = STATE(1549), - [sym_dictionary_splat] = STATE(1549), + [sym_if_statement] = STATE(64), + [sym_for_statement] = STATE(64), + [sym_while_statement] = STATE(64), + [sym_try_statement] = STATE(64), + [sym_with_statement] = STATE(64), + [sym_match_statement] = STATE(64), + [sym_function_definition] = STATE(64), + [sym_list_splat] = STATE(1520), + [sym_dictionary_splat] = STATE(1520), [sym_global_statement] = STATE(1332), [sym_nonlocal_statement] = STATE(1332), [sym_exec_statement] = STATE(1332), [sym_type_alias_statement] = STATE(1332), - [sym_class_definition] = STATE(65), - [sym_decorated_definition] = STATE(65), - [sym_decorator] = STATE(1113), - [sym_block] = STATE(590), - [sym_expression_list] = STATE(1551), - [sym_pattern] = STATE(1013), - [sym_tuple_pattern] = STATE(999), - [sym_list_pattern] = STATE(999), - [sym_list_splat_pattern] = STATE(999), - [sym_expression] = STATE(1185), - [sym_primary_expression] = STATE(779), - [sym_not_operator] = STATE(1158), - [sym_boolean_operator] = STATE(1158), - [sym_binary_operator] = STATE(908), - [sym_unary_operator] = STATE(908), - [sym_comparison_operator] = STATE(1158), - [sym_lambda] = STATE(1158), - [sym_assignment] = STATE(1551), - [sym_augmented_assignment] = STATE(1551), - [sym_pattern_list] = STATE(1024), - [sym_yield] = STATE(1551), - [sym_attribute] = STATE(494), - [sym_subscript] = STATE(494), - [sym_call] = STATE(908), - [sym_list] = STATE(908), - [sym_set] = STATE(908), - [sym_tuple] = STATE(908), - [sym_dictionary] = STATE(908), - [sym_list_comprehension] = STATE(908), - [sym_dictionary_comprehension] = STATE(908), - [sym_set_comprehension] = STATE(908), - [sym_generator_expression] = STATE(908), - [sym_parenthesized_expression] = STATE(908), - [sym_conditional_expression] = STATE(1158), - [sym_concatenated_string] = STATE(908), - [sym_string] = STATE(782), - [sym_concatenated_template_string] = STATE(908), - [sym_template_string] = STATE(763), - [sym_await] = STATE(908), - [aux_sym_module_repeat1] = STATE(65), - [aux_sym_decorated_definition_repeat1] = STATE(1113), + [sym_class_definition] = STATE(64), + [sym_decorated_definition] = STATE(64), + [sym_decorator] = STATE(1127), + [sym_block] = STATE(549), + [sym_expression_list] = STATE(1522), + [sym_pattern] = STATE(1017), + [sym_tuple_pattern] = STATE(1001), + [sym_list_pattern] = STATE(1001), + [sym_list_splat_pattern] = STATE(1001), + [sym_expression] = STATE(1176), + [sym_primary_expression] = STATE(765), + [sym_not_operator] = STATE(1156), + [sym_boolean_operator] = STATE(1156), + [sym_binary_operator] = STATE(920), + [sym_unary_operator] = STATE(920), + [sym_comparison_operator] = STATE(1156), + [sym_lambda] = STATE(1156), + [sym_assignment] = STATE(1522), + [sym_augmented_assignment] = STATE(1522), + [sym_pattern_list] = STATE(1026), + [sym_yield] = STATE(1522), + [sym_attribute] = STATE(582), + [sym_subscript] = STATE(582), + [sym_call] = STATE(920), + [sym_list] = STATE(920), + [sym_set] = STATE(920), + [sym_tuple] = STATE(920), + [sym_dictionary] = STATE(920), + [sym_list_comprehension] = STATE(920), + [sym_dictionary_comprehension] = STATE(920), + [sym_set_comprehension] = STATE(920), + [sym_generator_expression] = STATE(920), + [sym_parenthesized_expression] = STATE(920), + [sym_conditional_expression] = STATE(1156), + [sym_concatenated_string] = STATE(920), + [sym_string] = STATE(775), + [sym_concatenated_template_string] = STATE(920), + [sym_template_string] = STATE(769), + [sym_await] = STATE(920), + [aux_sym_module_repeat1] = STATE(64), + [aux_sym_decorated_definition_repeat1] = STATE(1127), [sym_identifier] = ACTIONS(7), - [anon_sym_import] = ACTIONS(9), - [anon_sym_from] = ACTIONS(11), - [anon_sym_LPAREN] = ACTIONS(13), - [anon_sym_STAR] = ACTIONS(15), - [anon_sym_print] = ACTIONS(17), - [anon_sym_assert] = ACTIONS(19), - [anon_sym_return] = ACTIONS(21), - [anon_sym_del] = ACTIONS(23), - [anon_sym_raise] = ACTIONS(25), - [anon_sym_pass] = ACTIONS(27), - [anon_sym_break] = ACTIONS(29), - [anon_sym_continue] = ACTIONS(31), - [anon_sym_if] = ACTIONS(85), - [anon_sym_async] = ACTIONS(87), - [anon_sym_for] = ACTIONS(89), - [anon_sym_while] = ACTIONS(91), - [anon_sym_try] = ACTIONS(93), - [anon_sym_with] = ACTIONS(95), - [anon_sym_match] = ACTIONS(97), - [anon_sym_DASH] = ACTIONS(47), - [anon_sym_PLUS] = ACTIONS(47), - [anon_sym_LBRACK] = ACTIONS(49), - [anon_sym_LBRACE] = ACTIONS(51), - [anon_sym_STAR_STAR] = ACTIONS(53), - [anon_sym_def] = ACTIONS(99), - [anon_sym_global] = ACTIONS(57), - [anon_sym_nonlocal] = ACTIONS(59), - [anon_sym_exec] = ACTIONS(61), - [anon_sym_type] = ACTIONS(63), - [anon_sym_class] = ACTIONS(101), - [anon_sym_AT] = ACTIONS(67), - [anon_sym_not] = ACTIONS(69), - [anon_sym_TILDE] = ACTIONS(47), - [anon_sym_lambda] = ACTIONS(71), - [anon_sym_yield] = ACTIONS(73), - [sym_ellipsis] = ACTIONS(75), - [sym_integer] = ACTIONS(77), - [sym_float] = ACTIONS(75), - [anon_sym_await] = ACTIONS(79), - [sym_true] = ACTIONS(77), - [sym_false] = ACTIONS(77), - [sym_none] = ACTIONS(77), + [anon_sym_lazy] = ACTIONS(9), + [anon_sym_import] = ACTIONS(11), + [anon_sym_from] = ACTIONS(13), + [anon_sym_LPAREN] = ACTIONS(15), + [anon_sym_STAR] = ACTIONS(17), + [anon_sym_print] = ACTIONS(19), + [anon_sym_assert] = ACTIONS(21), + [anon_sym_return] = ACTIONS(23), + [anon_sym_del] = ACTIONS(25), + [anon_sym_raise] = ACTIONS(27), + [anon_sym_pass] = ACTIONS(29), + [anon_sym_break] = ACTIONS(31), + [anon_sym_continue] = ACTIONS(33), + [anon_sym_if] = ACTIONS(87), + [anon_sym_async] = ACTIONS(89), + [anon_sym_for] = ACTIONS(91), + [anon_sym_while] = ACTIONS(93), + [anon_sym_try] = ACTIONS(95), + [anon_sym_with] = ACTIONS(97), + [anon_sym_match] = ACTIONS(99), + [anon_sym_DASH] = ACTIONS(49), + [anon_sym_PLUS] = ACTIONS(49), + [anon_sym_LBRACK] = ACTIONS(51), + [anon_sym_LBRACE] = ACTIONS(53), + [anon_sym_STAR_STAR] = ACTIONS(55), + [anon_sym_def] = ACTIONS(101), + [anon_sym_global] = ACTIONS(59), + [anon_sym_nonlocal] = ACTIONS(61), + [anon_sym_exec] = ACTIONS(63), + [anon_sym_type] = ACTIONS(65), + [anon_sym_class] = ACTIONS(103), + [anon_sym_AT] = ACTIONS(69), + [anon_sym_not] = ACTIONS(71), + [anon_sym_TILDE] = ACTIONS(49), + [anon_sym_lambda] = ACTIONS(73), + [anon_sym_yield] = ACTIONS(75), + [sym_ellipsis] = ACTIONS(77), + [sym_integer] = ACTIONS(79), + [sym_float] = ACTIONS(77), + [anon_sym_await] = ACTIONS(81), + [sym_true] = ACTIONS(79), + [sym_false] = ACTIONS(79), + [sym_none] = ACTIONS(79), [sym_comment] = ACTIONS(3), - [sym__dedent] = ACTIONS(103), - [sym__string_start] = ACTIONS(81), - [sym__template_string_start] = ACTIONS(83), + [sym__dedent] = ACTIONS(105), + [sym__string_start] = ACTIONS(83), + [sym__template_string_start] = ACTIONS(85), }, [STATE(44)] = { - [sym__statement] = STATE(65), - [sym__simple_statements] = STATE(65), + [sym__statement] = STATE(64), + [sym__simple_statements] = STATE(64), [sym_import_statement] = STATE(1332), [sym_future_import_statement] = STATE(1332), [sym_import_from_statement] = STATE(1332), [sym_print_statement] = STATE(1332), [sym_assert_statement] = STATE(1332), [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1158), + [sym_named_expression] = STATE(1156), [sym_return_statement] = STATE(1332), [sym_delete_statement] = STATE(1332), [sym_raise_statement] = STATE(1332), [sym_pass_statement] = STATE(1332), [sym_break_statement] = STATE(1332), [sym_continue_statement] = STATE(1332), - [sym_if_statement] = STATE(65), - [sym_for_statement] = STATE(65), - [sym_while_statement] = STATE(65), - [sym_try_statement] = STATE(65), - [sym_with_statement] = STATE(65), - [sym_match_statement] = STATE(65), - [sym_function_definition] = STATE(65), - [sym_list_splat] = STATE(1549), - [sym_dictionary_splat] = STATE(1549), + [sym_if_statement] = STATE(64), + [sym_for_statement] = STATE(64), + [sym_while_statement] = STATE(64), + [sym_try_statement] = STATE(64), + [sym_with_statement] = STATE(64), + [sym_match_statement] = STATE(64), + [sym_function_definition] = STATE(64), + [sym_list_splat] = STATE(1520), + [sym_dictionary_splat] = STATE(1520), [sym_global_statement] = STATE(1332), [sym_nonlocal_statement] = STATE(1332), [sym_exec_statement] = STATE(1332), [sym_type_alias_statement] = STATE(1332), - [sym_class_definition] = STATE(65), - [sym_decorated_definition] = STATE(65), - [sym_decorator] = STATE(1113), - [sym_block] = STATE(591), - [sym_expression_list] = STATE(1551), - [sym_pattern] = STATE(1013), - [sym_tuple_pattern] = STATE(999), - [sym_list_pattern] = STATE(999), - [sym_list_splat_pattern] = STATE(999), - [sym_expression] = STATE(1185), - [sym_primary_expression] = STATE(779), - [sym_not_operator] = STATE(1158), - [sym_boolean_operator] = STATE(1158), - [sym_binary_operator] = STATE(908), - [sym_unary_operator] = STATE(908), - [sym_comparison_operator] = STATE(1158), - [sym_lambda] = STATE(1158), - [sym_assignment] = STATE(1551), - [sym_augmented_assignment] = STATE(1551), - [sym_pattern_list] = STATE(1024), - [sym_yield] = STATE(1551), - [sym_attribute] = STATE(494), - [sym_subscript] = STATE(494), - [sym_call] = STATE(908), - [sym_list] = STATE(908), - [sym_set] = STATE(908), - [sym_tuple] = STATE(908), - [sym_dictionary] = STATE(908), - [sym_list_comprehension] = STATE(908), - [sym_dictionary_comprehension] = STATE(908), - [sym_set_comprehension] = STATE(908), - [sym_generator_expression] = STATE(908), - [sym_parenthesized_expression] = STATE(908), - [sym_conditional_expression] = STATE(1158), - [sym_concatenated_string] = STATE(908), - [sym_string] = STATE(782), - [sym_concatenated_template_string] = STATE(908), - [sym_template_string] = STATE(763), - [sym_await] = STATE(908), - [aux_sym_module_repeat1] = STATE(65), - [aux_sym_decorated_definition_repeat1] = STATE(1113), + [sym_class_definition] = STATE(64), + [sym_decorated_definition] = STATE(64), + [sym_decorator] = STATE(1127), + [sym_block] = STATE(491), + [sym_expression_list] = STATE(1522), + [sym_pattern] = STATE(1017), + [sym_tuple_pattern] = STATE(1001), + [sym_list_pattern] = STATE(1001), + [sym_list_splat_pattern] = STATE(1001), + [sym_expression] = STATE(1176), + [sym_primary_expression] = STATE(765), + [sym_not_operator] = STATE(1156), + [sym_boolean_operator] = STATE(1156), + [sym_binary_operator] = STATE(920), + [sym_unary_operator] = STATE(920), + [sym_comparison_operator] = STATE(1156), + [sym_lambda] = STATE(1156), + [sym_assignment] = STATE(1522), + [sym_augmented_assignment] = STATE(1522), + [sym_pattern_list] = STATE(1026), + [sym_yield] = STATE(1522), + [sym_attribute] = STATE(582), + [sym_subscript] = STATE(582), + [sym_call] = STATE(920), + [sym_list] = STATE(920), + [sym_set] = STATE(920), + [sym_tuple] = STATE(920), + [sym_dictionary] = STATE(920), + [sym_list_comprehension] = STATE(920), + [sym_dictionary_comprehension] = STATE(920), + [sym_set_comprehension] = STATE(920), + [sym_generator_expression] = STATE(920), + [sym_parenthesized_expression] = STATE(920), + [sym_conditional_expression] = STATE(1156), + [sym_concatenated_string] = STATE(920), + [sym_string] = STATE(775), + [sym_concatenated_template_string] = STATE(920), + [sym_template_string] = STATE(769), + [sym_await] = STATE(920), + [aux_sym_module_repeat1] = STATE(64), + [aux_sym_decorated_definition_repeat1] = STATE(1127), [sym_identifier] = ACTIONS(7), - [anon_sym_import] = ACTIONS(9), - [anon_sym_from] = ACTIONS(11), - [anon_sym_LPAREN] = ACTIONS(13), - [anon_sym_STAR] = ACTIONS(15), - [anon_sym_print] = ACTIONS(17), - [anon_sym_assert] = ACTIONS(19), - [anon_sym_return] = ACTIONS(21), - [anon_sym_del] = ACTIONS(23), - [anon_sym_raise] = ACTIONS(25), - [anon_sym_pass] = ACTIONS(27), - [anon_sym_break] = ACTIONS(29), - [anon_sym_continue] = ACTIONS(31), - [anon_sym_if] = ACTIONS(85), - [anon_sym_async] = ACTIONS(87), - [anon_sym_for] = ACTIONS(89), - [anon_sym_while] = ACTIONS(91), - [anon_sym_try] = ACTIONS(93), - [anon_sym_with] = ACTIONS(95), - [anon_sym_match] = ACTIONS(97), - [anon_sym_DASH] = ACTIONS(47), - [anon_sym_PLUS] = ACTIONS(47), - [anon_sym_LBRACK] = ACTIONS(49), - [anon_sym_LBRACE] = ACTIONS(51), - [anon_sym_STAR_STAR] = ACTIONS(53), - [anon_sym_def] = ACTIONS(99), - [anon_sym_global] = ACTIONS(57), - [anon_sym_nonlocal] = ACTIONS(59), - [anon_sym_exec] = ACTIONS(61), - [anon_sym_type] = ACTIONS(63), - [anon_sym_class] = ACTIONS(101), - [anon_sym_AT] = ACTIONS(67), - [anon_sym_not] = ACTIONS(69), - [anon_sym_TILDE] = ACTIONS(47), - [anon_sym_lambda] = ACTIONS(71), - [anon_sym_yield] = ACTIONS(73), - [sym_ellipsis] = ACTIONS(75), - [sym_integer] = ACTIONS(77), - [sym_float] = ACTIONS(75), - [anon_sym_await] = ACTIONS(79), - [sym_true] = ACTIONS(77), - [sym_false] = ACTIONS(77), - [sym_none] = ACTIONS(77), + [anon_sym_lazy] = ACTIONS(9), + [anon_sym_import] = ACTIONS(11), + [anon_sym_from] = ACTIONS(13), + [anon_sym_LPAREN] = ACTIONS(15), + [anon_sym_STAR] = ACTIONS(17), + [anon_sym_print] = ACTIONS(19), + [anon_sym_assert] = ACTIONS(21), + [anon_sym_return] = ACTIONS(23), + [anon_sym_del] = ACTIONS(25), + [anon_sym_raise] = ACTIONS(27), + [anon_sym_pass] = ACTIONS(29), + [anon_sym_break] = ACTIONS(31), + [anon_sym_continue] = ACTIONS(33), + [anon_sym_if] = ACTIONS(87), + [anon_sym_async] = ACTIONS(89), + [anon_sym_for] = ACTIONS(91), + [anon_sym_while] = ACTIONS(93), + [anon_sym_try] = ACTIONS(95), + [anon_sym_with] = ACTIONS(97), + [anon_sym_match] = ACTIONS(99), + [anon_sym_DASH] = ACTIONS(49), + [anon_sym_PLUS] = ACTIONS(49), + [anon_sym_LBRACK] = ACTIONS(51), + [anon_sym_LBRACE] = ACTIONS(53), + [anon_sym_STAR_STAR] = ACTIONS(55), + [anon_sym_def] = ACTIONS(101), + [anon_sym_global] = ACTIONS(59), + [anon_sym_nonlocal] = ACTIONS(61), + [anon_sym_exec] = ACTIONS(63), + [anon_sym_type] = ACTIONS(65), + [anon_sym_class] = ACTIONS(103), + [anon_sym_AT] = ACTIONS(69), + [anon_sym_not] = ACTIONS(71), + [anon_sym_TILDE] = ACTIONS(49), + [anon_sym_lambda] = ACTIONS(73), + [anon_sym_yield] = ACTIONS(75), + [sym_ellipsis] = ACTIONS(77), + [sym_integer] = ACTIONS(79), + [sym_float] = ACTIONS(77), + [anon_sym_await] = ACTIONS(81), + [sym_true] = ACTIONS(79), + [sym_false] = ACTIONS(79), + [sym_none] = ACTIONS(79), [sym_comment] = ACTIONS(3), - [sym__dedent] = ACTIONS(103), - [sym__string_start] = ACTIONS(81), - [sym__template_string_start] = ACTIONS(83), + [sym__dedent] = ACTIONS(105), + [sym__string_start] = ACTIONS(83), + [sym__template_string_start] = ACTIONS(85), }, [STATE(45)] = { - [sym__statement] = STATE(65), - [sym__simple_statements] = STATE(65), + [sym__statement] = STATE(64), + [sym__simple_statements] = STATE(64), [sym_import_statement] = STATE(1332), [sym_future_import_statement] = STATE(1332), [sym_import_from_statement] = STATE(1332), [sym_print_statement] = STATE(1332), [sym_assert_statement] = STATE(1332), [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1158), + [sym_named_expression] = STATE(1156), [sym_return_statement] = STATE(1332), [sym_delete_statement] = STATE(1332), [sym_raise_statement] = STATE(1332), [sym_pass_statement] = STATE(1332), [sym_break_statement] = STATE(1332), [sym_continue_statement] = STATE(1332), - [sym_if_statement] = STATE(65), - [sym_for_statement] = STATE(65), - [sym_while_statement] = STATE(65), - [sym_try_statement] = STATE(65), - [sym_with_statement] = STATE(65), - [sym_match_statement] = STATE(65), - [sym_function_definition] = STATE(65), - [sym_list_splat] = STATE(1549), - [sym_dictionary_splat] = STATE(1549), + [sym_if_statement] = STATE(64), + [sym_for_statement] = STATE(64), + [sym_while_statement] = STATE(64), + [sym_try_statement] = STATE(64), + [sym_with_statement] = STATE(64), + [sym_match_statement] = STATE(64), + [sym_function_definition] = STATE(64), + [sym_list_splat] = STATE(1520), + [sym_dictionary_splat] = STATE(1520), [sym_global_statement] = STATE(1332), [sym_nonlocal_statement] = STATE(1332), [sym_exec_statement] = STATE(1332), [sym_type_alias_statement] = STATE(1332), - [sym_class_definition] = STATE(65), - [sym_decorated_definition] = STATE(65), - [sym_decorator] = STATE(1113), - [sym_block] = STATE(492), - [sym_expression_list] = STATE(1551), - [sym_pattern] = STATE(1013), - [sym_tuple_pattern] = STATE(999), - [sym_list_pattern] = STATE(999), - [sym_list_splat_pattern] = STATE(999), - [sym_expression] = STATE(1185), - [sym_primary_expression] = STATE(779), - [sym_not_operator] = STATE(1158), - [sym_boolean_operator] = STATE(1158), - [sym_binary_operator] = STATE(908), - [sym_unary_operator] = STATE(908), - [sym_comparison_operator] = STATE(1158), - [sym_lambda] = STATE(1158), - [sym_assignment] = STATE(1551), - [sym_augmented_assignment] = STATE(1551), - [sym_pattern_list] = STATE(1024), - [sym_yield] = STATE(1551), - [sym_attribute] = STATE(494), - [sym_subscript] = STATE(494), - [sym_call] = STATE(908), - [sym_list] = STATE(908), - [sym_set] = STATE(908), - [sym_tuple] = STATE(908), - [sym_dictionary] = STATE(908), - [sym_list_comprehension] = STATE(908), - [sym_dictionary_comprehension] = STATE(908), - [sym_set_comprehension] = STATE(908), - [sym_generator_expression] = STATE(908), - [sym_parenthesized_expression] = STATE(908), - [sym_conditional_expression] = STATE(1158), - [sym_concatenated_string] = STATE(908), - [sym_string] = STATE(782), - [sym_concatenated_template_string] = STATE(908), - [sym_template_string] = STATE(763), - [sym_await] = STATE(908), - [aux_sym_module_repeat1] = STATE(65), - [aux_sym_decorated_definition_repeat1] = STATE(1113), + [sym_class_definition] = STATE(64), + [sym_decorated_definition] = STATE(64), + [sym_decorator] = STATE(1127), + [sym_block] = STATE(470), + [sym_expression_list] = STATE(1522), + [sym_pattern] = STATE(1017), + [sym_tuple_pattern] = STATE(1001), + [sym_list_pattern] = STATE(1001), + [sym_list_splat_pattern] = STATE(1001), + [sym_expression] = STATE(1176), + [sym_primary_expression] = STATE(765), + [sym_not_operator] = STATE(1156), + [sym_boolean_operator] = STATE(1156), + [sym_binary_operator] = STATE(920), + [sym_unary_operator] = STATE(920), + [sym_comparison_operator] = STATE(1156), + [sym_lambda] = STATE(1156), + [sym_assignment] = STATE(1522), + [sym_augmented_assignment] = STATE(1522), + [sym_pattern_list] = STATE(1026), + [sym_yield] = STATE(1522), + [sym_attribute] = STATE(582), + [sym_subscript] = STATE(582), + [sym_call] = STATE(920), + [sym_list] = STATE(920), + [sym_set] = STATE(920), + [sym_tuple] = STATE(920), + [sym_dictionary] = STATE(920), + [sym_list_comprehension] = STATE(920), + [sym_dictionary_comprehension] = STATE(920), + [sym_set_comprehension] = STATE(920), + [sym_generator_expression] = STATE(920), + [sym_parenthesized_expression] = STATE(920), + [sym_conditional_expression] = STATE(1156), + [sym_concatenated_string] = STATE(920), + [sym_string] = STATE(775), + [sym_concatenated_template_string] = STATE(920), + [sym_template_string] = STATE(769), + [sym_await] = STATE(920), + [aux_sym_module_repeat1] = STATE(64), + [aux_sym_decorated_definition_repeat1] = STATE(1127), [sym_identifier] = ACTIONS(7), - [anon_sym_import] = ACTIONS(9), - [anon_sym_from] = ACTIONS(11), - [anon_sym_LPAREN] = ACTIONS(13), - [anon_sym_STAR] = ACTIONS(15), - [anon_sym_print] = ACTIONS(17), - [anon_sym_assert] = ACTIONS(19), - [anon_sym_return] = ACTIONS(21), - [anon_sym_del] = ACTIONS(23), - [anon_sym_raise] = ACTIONS(25), - [anon_sym_pass] = ACTIONS(27), - [anon_sym_break] = ACTIONS(29), - [anon_sym_continue] = ACTIONS(31), - [anon_sym_if] = ACTIONS(85), - [anon_sym_async] = ACTIONS(87), - [anon_sym_for] = ACTIONS(89), - [anon_sym_while] = ACTIONS(91), - [anon_sym_try] = ACTIONS(93), - [anon_sym_with] = ACTIONS(95), - [anon_sym_match] = ACTIONS(97), - [anon_sym_DASH] = ACTIONS(47), - [anon_sym_PLUS] = ACTIONS(47), - [anon_sym_LBRACK] = ACTIONS(49), - [anon_sym_LBRACE] = ACTIONS(51), - [anon_sym_STAR_STAR] = ACTIONS(53), - [anon_sym_def] = ACTIONS(99), - [anon_sym_global] = ACTIONS(57), - [anon_sym_nonlocal] = ACTIONS(59), - [anon_sym_exec] = ACTIONS(61), - [anon_sym_type] = ACTIONS(63), - [anon_sym_class] = ACTIONS(101), - [anon_sym_AT] = ACTIONS(67), - [anon_sym_not] = ACTIONS(69), - [anon_sym_TILDE] = ACTIONS(47), - [anon_sym_lambda] = ACTIONS(71), - [anon_sym_yield] = ACTIONS(73), - [sym_ellipsis] = ACTIONS(75), - [sym_integer] = ACTIONS(77), - [sym_float] = ACTIONS(75), - [anon_sym_await] = ACTIONS(79), - [sym_true] = ACTIONS(77), - [sym_false] = ACTIONS(77), - [sym_none] = ACTIONS(77), + [anon_sym_lazy] = ACTIONS(9), + [anon_sym_import] = ACTIONS(11), + [anon_sym_from] = ACTIONS(13), + [anon_sym_LPAREN] = ACTIONS(15), + [anon_sym_STAR] = ACTIONS(17), + [anon_sym_print] = ACTIONS(19), + [anon_sym_assert] = ACTIONS(21), + [anon_sym_return] = ACTIONS(23), + [anon_sym_del] = ACTIONS(25), + [anon_sym_raise] = ACTIONS(27), + [anon_sym_pass] = ACTIONS(29), + [anon_sym_break] = ACTIONS(31), + [anon_sym_continue] = ACTIONS(33), + [anon_sym_if] = ACTIONS(87), + [anon_sym_async] = ACTIONS(89), + [anon_sym_for] = ACTIONS(91), + [anon_sym_while] = ACTIONS(93), + [anon_sym_try] = ACTIONS(95), + [anon_sym_with] = ACTIONS(97), + [anon_sym_match] = ACTIONS(99), + [anon_sym_DASH] = ACTIONS(49), + [anon_sym_PLUS] = ACTIONS(49), + [anon_sym_LBRACK] = ACTIONS(51), + [anon_sym_LBRACE] = ACTIONS(53), + [anon_sym_STAR_STAR] = ACTIONS(55), + [anon_sym_def] = ACTIONS(101), + [anon_sym_global] = ACTIONS(59), + [anon_sym_nonlocal] = ACTIONS(61), + [anon_sym_exec] = ACTIONS(63), + [anon_sym_type] = ACTIONS(65), + [anon_sym_class] = ACTIONS(103), + [anon_sym_AT] = ACTIONS(69), + [anon_sym_not] = ACTIONS(71), + [anon_sym_TILDE] = ACTIONS(49), + [anon_sym_lambda] = ACTIONS(73), + [anon_sym_yield] = ACTIONS(75), + [sym_ellipsis] = ACTIONS(77), + [sym_integer] = ACTIONS(79), + [sym_float] = ACTIONS(77), + [anon_sym_await] = ACTIONS(81), + [sym_true] = ACTIONS(79), + [sym_false] = ACTIONS(79), + [sym_none] = ACTIONS(79), [sym_comment] = ACTIONS(3), - [sym__dedent] = ACTIONS(103), - [sym__string_start] = ACTIONS(81), - [sym__template_string_start] = ACTIONS(83), + [sym__dedent] = ACTIONS(105), + [sym__string_start] = ACTIONS(83), + [sym__template_string_start] = ACTIONS(85), }, [STATE(46)] = { - [sym__statement] = STATE(65), - [sym__simple_statements] = STATE(65), + [sym__statement] = STATE(64), + [sym__simple_statements] = STATE(64), [sym_import_statement] = STATE(1332), [sym_future_import_statement] = STATE(1332), [sym_import_from_statement] = STATE(1332), [sym_print_statement] = STATE(1332), [sym_assert_statement] = STATE(1332), [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1158), + [sym_named_expression] = STATE(1156), [sym_return_statement] = STATE(1332), [sym_delete_statement] = STATE(1332), [sym_raise_statement] = STATE(1332), [sym_pass_statement] = STATE(1332), [sym_break_statement] = STATE(1332), [sym_continue_statement] = STATE(1332), - [sym_if_statement] = STATE(65), - [sym_for_statement] = STATE(65), - [sym_while_statement] = STATE(65), - [sym_try_statement] = STATE(65), - [sym_with_statement] = STATE(65), - [sym_match_statement] = STATE(65), - [sym_function_definition] = STATE(65), - [sym_list_splat] = STATE(1549), - [sym_dictionary_splat] = STATE(1549), + [sym_if_statement] = STATE(64), + [sym_for_statement] = STATE(64), + [sym_while_statement] = STATE(64), + [sym_try_statement] = STATE(64), + [sym_with_statement] = STATE(64), + [sym_match_statement] = STATE(64), + [sym_function_definition] = STATE(64), + [sym_list_splat] = STATE(1520), + [sym_dictionary_splat] = STATE(1520), [sym_global_statement] = STATE(1332), [sym_nonlocal_statement] = STATE(1332), [sym_exec_statement] = STATE(1332), [sym_type_alias_statement] = STATE(1332), - [sym_class_definition] = STATE(65), - [sym_decorated_definition] = STATE(65), - [sym_decorator] = STATE(1113), - [sym_block] = STATE(466), - [sym_expression_list] = STATE(1551), - [sym_pattern] = STATE(1013), - [sym_tuple_pattern] = STATE(999), - [sym_list_pattern] = STATE(999), - [sym_list_splat_pattern] = STATE(999), - [sym_expression] = STATE(1185), - [sym_primary_expression] = STATE(779), - [sym_not_operator] = STATE(1158), - [sym_boolean_operator] = STATE(1158), - [sym_binary_operator] = STATE(908), - [sym_unary_operator] = STATE(908), - [sym_comparison_operator] = STATE(1158), - [sym_lambda] = STATE(1158), - [sym_assignment] = STATE(1551), - [sym_augmented_assignment] = STATE(1551), - [sym_pattern_list] = STATE(1024), - [sym_yield] = STATE(1551), - [sym_attribute] = STATE(494), - [sym_subscript] = STATE(494), - [sym_call] = STATE(908), - [sym_list] = STATE(908), - [sym_set] = STATE(908), - [sym_tuple] = STATE(908), - [sym_dictionary] = STATE(908), - [sym_list_comprehension] = STATE(908), - [sym_dictionary_comprehension] = STATE(908), - [sym_set_comprehension] = STATE(908), - [sym_generator_expression] = STATE(908), - [sym_parenthesized_expression] = STATE(908), - [sym_conditional_expression] = STATE(1158), - [sym_concatenated_string] = STATE(908), - [sym_string] = STATE(782), - [sym_concatenated_template_string] = STATE(908), - [sym_template_string] = STATE(763), - [sym_await] = STATE(908), - [aux_sym_module_repeat1] = STATE(65), - [aux_sym_decorated_definition_repeat1] = STATE(1113), + [sym_class_definition] = STATE(64), + [sym_decorated_definition] = STATE(64), + [sym_decorator] = STATE(1127), + [sym_block] = STATE(554), + [sym_expression_list] = STATE(1522), + [sym_pattern] = STATE(1017), + [sym_tuple_pattern] = STATE(1001), + [sym_list_pattern] = STATE(1001), + [sym_list_splat_pattern] = STATE(1001), + [sym_expression] = STATE(1176), + [sym_primary_expression] = STATE(765), + [sym_not_operator] = STATE(1156), + [sym_boolean_operator] = STATE(1156), + [sym_binary_operator] = STATE(920), + [sym_unary_operator] = STATE(920), + [sym_comparison_operator] = STATE(1156), + [sym_lambda] = STATE(1156), + [sym_assignment] = STATE(1522), + [sym_augmented_assignment] = STATE(1522), + [sym_pattern_list] = STATE(1026), + [sym_yield] = STATE(1522), + [sym_attribute] = STATE(582), + [sym_subscript] = STATE(582), + [sym_call] = STATE(920), + [sym_list] = STATE(920), + [sym_set] = STATE(920), + [sym_tuple] = STATE(920), + [sym_dictionary] = STATE(920), + [sym_list_comprehension] = STATE(920), + [sym_dictionary_comprehension] = STATE(920), + [sym_set_comprehension] = STATE(920), + [sym_generator_expression] = STATE(920), + [sym_parenthesized_expression] = STATE(920), + [sym_conditional_expression] = STATE(1156), + [sym_concatenated_string] = STATE(920), + [sym_string] = STATE(775), + [sym_concatenated_template_string] = STATE(920), + [sym_template_string] = STATE(769), + [sym_await] = STATE(920), + [aux_sym_module_repeat1] = STATE(64), + [aux_sym_decorated_definition_repeat1] = STATE(1127), [sym_identifier] = ACTIONS(7), - [anon_sym_import] = ACTIONS(9), - [anon_sym_from] = ACTIONS(11), - [anon_sym_LPAREN] = ACTIONS(13), - [anon_sym_STAR] = ACTIONS(15), - [anon_sym_print] = ACTIONS(17), - [anon_sym_assert] = ACTIONS(19), - [anon_sym_return] = ACTIONS(21), - [anon_sym_del] = ACTIONS(23), - [anon_sym_raise] = ACTIONS(25), - [anon_sym_pass] = ACTIONS(27), - [anon_sym_break] = ACTIONS(29), - [anon_sym_continue] = ACTIONS(31), - [anon_sym_if] = ACTIONS(85), - [anon_sym_async] = ACTIONS(87), - [anon_sym_for] = ACTIONS(89), - [anon_sym_while] = ACTIONS(91), - [anon_sym_try] = ACTIONS(93), - [anon_sym_with] = ACTIONS(95), - [anon_sym_match] = ACTIONS(97), - [anon_sym_DASH] = ACTIONS(47), - [anon_sym_PLUS] = ACTIONS(47), - [anon_sym_LBRACK] = ACTIONS(49), - [anon_sym_LBRACE] = ACTIONS(51), - [anon_sym_STAR_STAR] = ACTIONS(53), - [anon_sym_def] = ACTIONS(99), - [anon_sym_global] = ACTIONS(57), - [anon_sym_nonlocal] = ACTIONS(59), - [anon_sym_exec] = ACTIONS(61), - [anon_sym_type] = ACTIONS(63), - [anon_sym_class] = ACTIONS(101), - [anon_sym_AT] = ACTIONS(67), - [anon_sym_not] = ACTIONS(69), - [anon_sym_TILDE] = ACTIONS(47), - [anon_sym_lambda] = ACTIONS(71), - [anon_sym_yield] = ACTIONS(73), - [sym_ellipsis] = ACTIONS(75), - [sym_integer] = ACTIONS(77), - [sym_float] = ACTIONS(75), - [anon_sym_await] = ACTIONS(79), - [sym_true] = ACTIONS(77), - [sym_false] = ACTIONS(77), - [sym_none] = ACTIONS(77), + [anon_sym_lazy] = ACTIONS(9), + [anon_sym_import] = ACTIONS(11), + [anon_sym_from] = ACTIONS(13), + [anon_sym_LPAREN] = ACTIONS(15), + [anon_sym_STAR] = ACTIONS(17), + [anon_sym_print] = ACTIONS(19), + [anon_sym_assert] = ACTIONS(21), + [anon_sym_return] = ACTIONS(23), + [anon_sym_del] = ACTIONS(25), + [anon_sym_raise] = ACTIONS(27), + [anon_sym_pass] = ACTIONS(29), + [anon_sym_break] = ACTIONS(31), + [anon_sym_continue] = ACTIONS(33), + [anon_sym_if] = ACTIONS(87), + [anon_sym_async] = ACTIONS(89), + [anon_sym_for] = ACTIONS(91), + [anon_sym_while] = ACTIONS(93), + [anon_sym_try] = ACTIONS(95), + [anon_sym_with] = ACTIONS(97), + [anon_sym_match] = ACTIONS(99), + [anon_sym_DASH] = ACTIONS(49), + [anon_sym_PLUS] = ACTIONS(49), + [anon_sym_LBRACK] = ACTIONS(51), + [anon_sym_LBRACE] = ACTIONS(53), + [anon_sym_STAR_STAR] = ACTIONS(55), + [anon_sym_def] = ACTIONS(101), + [anon_sym_global] = ACTIONS(59), + [anon_sym_nonlocal] = ACTIONS(61), + [anon_sym_exec] = ACTIONS(63), + [anon_sym_type] = ACTIONS(65), + [anon_sym_class] = ACTIONS(103), + [anon_sym_AT] = ACTIONS(69), + [anon_sym_not] = ACTIONS(71), + [anon_sym_TILDE] = ACTIONS(49), + [anon_sym_lambda] = ACTIONS(73), + [anon_sym_yield] = ACTIONS(75), + [sym_ellipsis] = ACTIONS(77), + [sym_integer] = ACTIONS(79), + [sym_float] = ACTIONS(77), + [anon_sym_await] = ACTIONS(81), + [sym_true] = ACTIONS(79), + [sym_false] = ACTIONS(79), + [sym_none] = ACTIONS(79), [sym_comment] = ACTIONS(3), - [sym__dedent] = ACTIONS(103), - [sym__string_start] = ACTIONS(81), - [sym__template_string_start] = ACTIONS(83), + [sym__dedent] = ACTIONS(105), + [sym__string_start] = ACTIONS(83), + [sym__template_string_start] = ACTIONS(85), }, [STATE(47)] = { - [sym__statement] = STATE(65), - [sym__simple_statements] = STATE(65), + [sym__statement] = STATE(64), + [sym__simple_statements] = STATE(64), [sym_import_statement] = STATE(1332), [sym_future_import_statement] = STATE(1332), [sym_import_from_statement] = STATE(1332), [sym_print_statement] = STATE(1332), [sym_assert_statement] = STATE(1332), [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1158), + [sym_named_expression] = STATE(1156), [sym_return_statement] = STATE(1332), [sym_delete_statement] = STATE(1332), [sym_raise_statement] = STATE(1332), [sym_pass_statement] = STATE(1332), [sym_break_statement] = STATE(1332), [sym_continue_statement] = STATE(1332), - [sym_if_statement] = STATE(65), - [sym_for_statement] = STATE(65), - [sym_while_statement] = STATE(65), - [sym_try_statement] = STATE(65), - [sym_with_statement] = STATE(65), - [sym_match_statement] = STATE(65), - [sym_function_definition] = STATE(65), - [sym_list_splat] = STATE(1549), - [sym_dictionary_splat] = STATE(1549), + [sym_if_statement] = STATE(64), + [sym_for_statement] = STATE(64), + [sym_while_statement] = STATE(64), + [sym_try_statement] = STATE(64), + [sym_with_statement] = STATE(64), + [sym_match_statement] = STATE(64), + [sym_function_definition] = STATE(64), + [sym_list_splat] = STATE(1520), + [sym_dictionary_splat] = STATE(1520), [sym_global_statement] = STATE(1332), [sym_nonlocal_statement] = STATE(1332), [sym_exec_statement] = STATE(1332), [sym_type_alias_statement] = STATE(1332), - [sym_class_definition] = STATE(65), - [sym_decorated_definition] = STATE(65), - [sym_decorator] = STATE(1113), - [sym_block] = STATE(594), - [sym_expression_list] = STATE(1551), - [sym_pattern] = STATE(1013), - [sym_tuple_pattern] = STATE(999), - [sym_list_pattern] = STATE(999), - [sym_list_splat_pattern] = STATE(999), - [sym_expression] = STATE(1185), - [sym_primary_expression] = STATE(779), - [sym_not_operator] = STATE(1158), - [sym_boolean_operator] = STATE(1158), - [sym_binary_operator] = STATE(908), - [sym_unary_operator] = STATE(908), - [sym_comparison_operator] = STATE(1158), - [sym_lambda] = STATE(1158), - [sym_assignment] = STATE(1551), - [sym_augmented_assignment] = STATE(1551), - [sym_pattern_list] = STATE(1024), - [sym_yield] = STATE(1551), - [sym_attribute] = STATE(494), - [sym_subscript] = STATE(494), - [sym_call] = STATE(908), - [sym_list] = STATE(908), - [sym_set] = STATE(908), - [sym_tuple] = STATE(908), - [sym_dictionary] = STATE(908), - [sym_list_comprehension] = STATE(908), - [sym_dictionary_comprehension] = STATE(908), - [sym_set_comprehension] = STATE(908), - [sym_generator_expression] = STATE(908), - [sym_parenthesized_expression] = STATE(908), - [sym_conditional_expression] = STATE(1158), - [sym_concatenated_string] = STATE(908), - [sym_string] = STATE(782), - [sym_concatenated_template_string] = STATE(908), - [sym_template_string] = STATE(763), - [sym_await] = STATE(908), - [aux_sym_module_repeat1] = STATE(65), - [aux_sym_decorated_definition_repeat1] = STATE(1113), + [sym_class_definition] = STATE(64), + [sym_decorated_definition] = STATE(64), + [sym_decorator] = STATE(1127), + [sym_block] = STATE(455), + [sym_expression_list] = STATE(1522), + [sym_pattern] = STATE(1017), + [sym_tuple_pattern] = STATE(1001), + [sym_list_pattern] = STATE(1001), + [sym_list_splat_pattern] = STATE(1001), + [sym_expression] = STATE(1176), + [sym_primary_expression] = STATE(765), + [sym_not_operator] = STATE(1156), + [sym_boolean_operator] = STATE(1156), + [sym_binary_operator] = STATE(920), + [sym_unary_operator] = STATE(920), + [sym_comparison_operator] = STATE(1156), + [sym_lambda] = STATE(1156), + [sym_assignment] = STATE(1522), + [sym_augmented_assignment] = STATE(1522), + [sym_pattern_list] = STATE(1026), + [sym_yield] = STATE(1522), + [sym_attribute] = STATE(582), + [sym_subscript] = STATE(582), + [sym_call] = STATE(920), + [sym_list] = STATE(920), + [sym_set] = STATE(920), + [sym_tuple] = STATE(920), + [sym_dictionary] = STATE(920), + [sym_list_comprehension] = STATE(920), + [sym_dictionary_comprehension] = STATE(920), + [sym_set_comprehension] = STATE(920), + [sym_generator_expression] = STATE(920), + [sym_parenthesized_expression] = STATE(920), + [sym_conditional_expression] = STATE(1156), + [sym_concatenated_string] = STATE(920), + [sym_string] = STATE(775), + [sym_concatenated_template_string] = STATE(920), + [sym_template_string] = STATE(769), + [sym_await] = STATE(920), + [aux_sym_module_repeat1] = STATE(64), + [aux_sym_decorated_definition_repeat1] = STATE(1127), [sym_identifier] = ACTIONS(7), - [anon_sym_import] = ACTIONS(9), - [anon_sym_from] = ACTIONS(11), - [anon_sym_LPAREN] = ACTIONS(13), - [anon_sym_STAR] = ACTIONS(15), - [anon_sym_print] = ACTIONS(17), - [anon_sym_assert] = ACTIONS(19), - [anon_sym_return] = ACTIONS(21), - [anon_sym_del] = ACTIONS(23), - [anon_sym_raise] = ACTIONS(25), - [anon_sym_pass] = ACTIONS(27), - [anon_sym_break] = ACTIONS(29), - [anon_sym_continue] = ACTIONS(31), - [anon_sym_if] = ACTIONS(85), - [anon_sym_async] = ACTIONS(87), - [anon_sym_for] = ACTIONS(89), - [anon_sym_while] = ACTIONS(91), - [anon_sym_try] = ACTIONS(93), - [anon_sym_with] = ACTIONS(95), - [anon_sym_match] = ACTIONS(97), - [anon_sym_DASH] = ACTIONS(47), - [anon_sym_PLUS] = ACTIONS(47), - [anon_sym_LBRACK] = ACTIONS(49), - [anon_sym_LBRACE] = ACTIONS(51), - [anon_sym_STAR_STAR] = ACTIONS(53), - [anon_sym_def] = ACTIONS(99), - [anon_sym_global] = ACTIONS(57), - [anon_sym_nonlocal] = ACTIONS(59), - [anon_sym_exec] = ACTIONS(61), - [anon_sym_type] = ACTIONS(63), - [anon_sym_class] = ACTIONS(101), - [anon_sym_AT] = ACTIONS(67), - [anon_sym_not] = ACTIONS(69), - [anon_sym_TILDE] = ACTIONS(47), - [anon_sym_lambda] = ACTIONS(71), - [anon_sym_yield] = ACTIONS(73), - [sym_ellipsis] = ACTIONS(75), - [sym_integer] = ACTIONS(77), - [sym_float] = ACTIONS(75), - [anon_sym_await] = ACTIONS(79), - [sym_true] = ACTIONS(77), - [sym_false] = ACTIONS(77), - [sym_none] = ACTIONS(77), + [anon_sym_lazy] = ACTIONS(9), + [anon_sym_import] = ACTIONS(11), + [anon_sym_from] = ACTIONS(13), + [anon_sym_LPAREN] = ACTIONS(15), + [anon_sym_STAR] = ACTIONS(17), + [anon_sym_print] = ACTIONS(19), + [anon_sym_assert] = ACTIONS(21), + [anon_sym_return] = ACTIONS(23), + [anon_sym_del] = ACTIONS(25), + [anon_sym_raise] = ACTIONS(27), + [anon_sym_pass] = ACTIONS(29), + [anon_sym_break] = ACTIONS(31), + [anon_sym_continue] = ACTIONS(33), + [anon_sym_if] = ACTIONS(87), + [anon_sym_async] = ACTIONS(89), + [anon_sym_for] = ACTIONS(91), + [anon_sym_while] = ACTIONS(93), + [anon_sym_try] = ACTIONS(95), + [anon_sym_with] = ACTIONS(97), + [anon_sym_match] = ACTIONS(99), + [anon_sym_DASH] = ACTIONS(49), + [anon_sym_PLUS] = ACTIONS(49), + [anon_sym_LBRACK] = ACTIONS(51), + [anon_sym_LBRACE] = ACTIONS(53), + [anon_sym_STAR_STAR] = ACTIONS(55), + [anon_sym_def] = ACTIONS(101), + [anon_sym_global] = ACTIONS(59), + [anon_sym_nonlocal] = ACTIONS(61), + [anon_sym_exec] = ACTIONS(63), + [anon_sym_type] = ACTIONS(65), + [anon_sym_class] = ACTIONS(103), + [anon_sym_AT] = ACTIONS(69), + [anon_sym_not] = ACTIONS(71), + [anon_sym_TILDE] = ACTIONS(49), + [anon_sym_lambda] = ACTIONS(73), + [anon_sym_yield] = ACTIONS(75), + [sym_ellipsis] = ACTIONS(77), + [sym_integer] = ACTIONS(79), + [sym_float] = ACTIONS(77), + [anon_sym_await] = ACTIONS(81), + [sym_true] = ACTIONS(79), + [sym_false] = ACTIONS(79), + [sym_none] = ACTIONS(79), [sym_comment] = ACTIONS(3), - [sym__dedent] = ACTIONS(103), - [sym__string_start] = ACTIONS(81), - [sym__template_string_start] = ACTIONS(83), + [sym__dedent] = ACTIONS(105), + [sym__string_start] = ACTIONS(83), + [sym__template_string_start] = ACTIONS(85), }, [STATE(48)] = { - [sym__statement] = STATE(65), - [sym__simple_statements] = STATE(65), + [sym__statement] = STATE(64), + [sym__simple_statements] = STATE(64), [sym_import_statement] = STATE(1332), [sym_future_import_statement] = STATE(1332), [sym_import_from_statement] = STATE(1332), [sym_print_statement] = STATE(1332), [sym_assert_statement] = STATE(1332), [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1158), + [sym_named_expression] = STATE(1156), [sym_return_statement] = STATE(1332), [sym_delete_statement] = STATE(1332), [sym_raise_statement] = STATE(1332), [sym_pass_statement] = STATE(1332), [sym_break_statement] = STATE(1332), [sym_continue_statement] = STATE(1332), - [sym_if_statement] = STATE(65), - [sym_for_statement] = STATE(65), - [sym_while_statement] = STATE(65), - [sym_try_statement] = STATE(65), - [sym_with_statement] = STATE(65), - [sym_match_statement] = STATE(65), - [sym_function_definition] = STATE(65), - [sym_list_splat] = STATE(1549), - [sym_dictionary_splat] = STATE(1549), + [sym_if_statement] = STATE(64), + [sym_for_statement] = STATE(64), + [sym_while_statement] = STATE(64), + [sym_try_statement] = STATE(64), + [sym_with_statement] = STATE(64), + [sym_match_statement] = STATE(64), + [sym_function_definition] = STATE(64), + [sym_list_splat] = STATE(1520), + [sym_dictionary_splat] = STATE(1520), [sym_global_statement] = STATE(1332), [sym_nonlocal_statement] = STATE(1332), [sym_exec_statement] = STATE(1332), [sym_type_alias_statement] = STATE(1332), - [sym_class_definition] = STATE(65), - [sym_decorated_definition] = STATE(65), - [sym_decorator] = STATE(1113), - [sym_block] = STATE(441), - [sym_expression_list] = STATE(1551), - [sym_pattern] = STATE(1013), - [sym_tuple_pattern] = STATE(999), - [sym_list_pattern] = STATE(999), - [sym_list_splat_pattern] = STATE(999), - [sym_expression] = STATE(1185), - [sym_primary_expression] = STATE(779), - [sym_not_operator] = STATE(1158), - [sym_boolean_operator] = STATE(1158), - [sym_binary_operator] = STATE(908), - [sym_unary_operator] = STATE(908), - [sym_comparison_operator] = STATE(1158), - [sym_lambda] = STATE(1158), - [sym_assignment] = STATE(1551), - [sym_augmented_assignment] = STATE(1551), - [sym_pattern_list] = STATE(1024), - [sym_yield] = STATE(1551), - [sym_attribute] = STATE(494), - [sym_subscript] = STATE(494), - [sym_call] = STATE(908), - [sym_list] = STATE(908), - [sym_set] = STATE(908), - [sym_tuple] = STATE(908), - [sym_dictionary] = STATE(908), - [sym_list_comprehension] = STATE(908), - [sym_dictionary_comprehension] = STATE(908), - [sym_set_comprehension] = STATE(908), - [sym_generator_expression] = STATE(908), - [sym_parenthesized_expression] = STATE(908), - [sym_conditional_expression] = STATE(1158), - [sym_concatenated_string] = STATE(908), - [sym_string] = STATE(782), - [sym_concatenated_template_string] = STATE(908), - [sym_template_string] = STATE(763), - [sym_await] = STATE(908), - [aux_sym_module_repeat1] = STATE(65), - [aux_sym_decorated_definition_repeat1] = STATE(1113), + [sym_class_definition] = STATE(64), + [sym_decorated_definition] = STATE(64), + [sym_decorator] = STATE(1127), + [sym_block] = STATE(488), + [sym_expression_list] = STATE(1522), + [sym_pattern] = STATE(1017), + [sym_tuple_pattern] = STATE(1001), + [sym_list_pattern] = STATE(1001), + [sym_list_splat_pattern] = STATE(1001), + [sym_expression] = STATE(1176), + [sym_primary_expression] = STATE(765), + [sym_not_operator] = STATE(1156), + [sym_boolean_operator] = STATE(1156), + [sym_binary_operator] = STATE(920), + [sym_unary_operator] = STATE(920), + [sym_comparison_operator] = STATE(1156), + [sym_lambda] = STATE(1156), + [sym_assignment] = STATE(1522), + [sym_augmented_assignment] = STATE(1522), + [sym_pattern_list] = STATE(1026), + [sym_yield] = STATE(1522), + [sym_attribute] = STATE(582), + [sym_subscript] = STATE(582), + [sym_call] = STATE(920), + [sym_list] = STATE(920), + [sym_set] = STATE(920), + [sym_tuple] = STATE(920), + [sym_dictionary] = STATE(920), + [sym_list_comprehension] = STATE(920), + [sym_dictionary_comprehension] = STATE(920), + [sym_set_comprehension] = STATE(920), + [sym_generator_expression] = STATE(920), + [sym_parenthesized_expression] = STATE(920), + [sym_conditional_expression] = STATE(1156), + [sym_concatenated_string] = STATE(920), + [sym_string] = STATE(775), + [sym_concatenated_template_string] = STATE(920), + [sym_template_string] = STATE(769), + [sym_await] = STATE(920), + [aux_sym_module_repeat1] = STATE(64), + [aux_sym_decorated_definition_repeat1] = STATE(1127), [sym_identifier] = ACTIONS(7), - [anon_sym_import] = ACTIONS(9), - [anon_sym_from] = ACTIONS(11), - [anon_sym_LPAREN] = ACTIONS(13), - [anon_sym_STAR] = ACTIONS(15), - [anon_sym_print] = ACTIONS(17), - [anon_sym_assert] = ACTIONS(19), - [anon_sym_return] = ACTIONS(21), - [anon_sym_del] = ACTIONS(23), - [anon_sym_raise] = ACTIONS(25), - [anon_sym_pass] = ACTIONS(27), - [anon_sym_break] = ACTIONS(29), - [anon_sym_continue] = ACTIONS(31), - [anon_sym_if] = ACTIONS(85), - [anon_sym_async] = ACTIONS(87), - [anon_sym_for] = ACTIONS(89), - [anon_sym_while] = ACTIONS(91), - [anon_sym_try] = ACTIONS(93), - [anon_sym_with] = ACTIONS(95), - [anon_sym_match] = ACTIONS(97), - [anon_sym_DASH] = ACTIONS(47), - [anon_sym_PLUS] = ACTIONS(47), - [anon_sym_LBRACK] = ACTIONS(49), - [anon_sym_LBRACE] = ACTIONS(51), - [anon_sym_STAR_STAR] = ACTIONS(53), - [anon_sym_def] = ACTIONS(99), - [anon_sym_global] = ACTIONS(57), - [anon_sym_nonlocal] = ACTIONS(59), - [anon_sym_exec] = ACTIONS(61), - [anon_sym_type] = ACTIONS(63), - [anon_sym_class] = ACTIONS(101), - [anon_sym_AT] = ACTIONS(67), - [anon_sym_not] = ACTIONS(69), - [anon_sym_TILDE] = ACTIONS(47), - [anon_sym_lambda] = ACTIONS(71), - [anon_sym_yield] = ACTIONS(73), - [sym_ellipsis] = ACTIONS(75), - [sym_integer] = ACTIONS(77), - [sym_float] = ACTIONS(75), - [anon_sym_await] = ACTIONS(79), - [sym_true] = ACTIONS(77), - [sym_false] = ACTIONS(77), - [sym_none] = ACTIONS(77), + [anon_sym_lazy] = ACTIONS(9), + [anon_sym_import] = ACTIONS(11), + [anon_sym_from] = ACTIONS(13), + [anon_sym_LPAREN] = ACTIONS(15), + [anon_sym_STAR] = ACTIONS(17), + [anon_sym_print] = ACTIONS(19), + [anon_sym_assert] = ACTIONS(21), + [anon_sym_return] = ACTIONS(23), + [anon_sym_del] = ACTIONS(25), + [anon_sym_raise] = ACTIONS(27), + [anon_sym_pass] = ACTIONS(29), + [anon_sym_break] = ACTIONS(31), + [anon_sym_continue] = ACTIONS(33), + [anon_sym_if] = ACTIONS(87), + [anon_sym_async] = ACTIONS(89), + [anon_sym_for] = ACTIONS(91), + [anon_sym_while] = ACTIONS(93), + [anon_sym_try] = ACTIONS(95), + [anon_sym_with] = ACTIONS(97), + [anon_sym_match] = ACTIONS(99), + [anon_sym_DASH] = ACTIONS(49), + [anon_sym_PLUS] = ACTIONS(49), + [anon_sym_LBRACK] = ACTIONS(51), + [anon_sym_LBRACE] = ACTIONS(53), + [anon_sym_STAR_STAR] = ACTIONS(55), + [anon_sym_def] = ACTIONS(101), + [anon_sym_global] = ACTIONS(59), + [anon_sym_nonlocal] = ACTIONS(61), + [anon_sym_exec] = ACTIONS(63), + [anon_sym_type] = ACTIONS(65), + [anon_sym_class] = ACTIONS(103), + [anon_sym_AT] = ACTIONS(69), + [anon_sym_not] = ACTIONS(71), + [anon_sym_TILDE] = ACTIONS(49), + [anon_sym_lambda] = ACTIONS(73), + [anon_sym_yield] = ACTIONS(75), + [sym_ellipsis] = ACTIONS(77), + [sym_integer] = ACTIONS(79), + [sym_float] = ACTIONS(77), + [anon_sym_await] = ACTIONS(81), + [sym_true] = ACTIONS(79), + [sym_false] = ACTIONS(79), + [sym_none] = ACTIONS(79), [sym_comment] = ACTIONS(3), - [sym__dedent] = ACTIONS(103), - [sym__string_start] = ACTIONS(81), - [sym__template_string_start] = ACTIONS(83), + [sym__dedent] = ACTIONS(105), + [sym__string_start] = ACTIONS(83), + [sym__template_string_start] = ACTIONS(85), }, [STATE(49)] = { - [sym__statement] = STATE(65), - [sym__simple_statements] = STATE(65), + [sym__statement] = STATE(64), + [sym__simple_statements] = STATE(64), [sym_import_statement] = STATE(1332), [sym_future_import_statement] = STATE(1332), [sym_import_from_statement] = STATE(1332), [sym_print_statement] = STATE(1332), [sym_assert_statement] = STATE(1332), [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1158), + [sym_named_expression] = STATE(1156), [sym_return_statement] = STATE(1332), [sym_delete_statement] = STATE(1332), [sym_raise_statement] = STATE(1332), [sym_pass_statement] = STATE(1332), [sym_break_statement] = STATE(1332), [sym_continue_statement] = STATE(1332), - [sym_if_statement] = STATE(65), - [sym_for_statement] = STATE(65), - [sym_while_statement] = STATE(65), - [sym_try_statement] = STATE(65), - [sym_with_statement] = STATE(65), - [sym_match_statement] = STATE(65), - [sym_function_definition] = STATE(65), - [sym_list_splat] = STATE(1549), - [sym_dictionary_splat] = STATE(1549), + [sym_if_statement] = STATE(64), + [sym_for_statement] = STATE(64), + [sym_while_statement] = STATE(64), + [sym_try_statement] = STATE(64), + [sym_with_statement] = STATE(64), + [sym_match_statement] = STATE(64), + [sym_function_definition] = STATE(64), + [sym_list_splat] = STATE(1520), + [sym_dictionary_splat] = STATE(1520), [sym_global_statement] = STATE(1332), [sym_nonlocal_statement] = STATE(1332), [sym_exec_statement] = STATE(1332), [sym_type_alias_statement] = STATE(1332), - [sym_class_definition] = STATE(65), - [sym_decorated_definition] = STATE(65), - [sym_decorator] = STATE(1113), - [sym_block] = STATE(505), - [sym_expression_list] = STATE(1551), - [sym_pattern] = STATE(1013), - [sym_tuple_pattern] = STATE(999), - [sym_list_pattern] = STATE(999), - [sym_list_splat_pattern] = STATE(999), - [sym_expression] = STATE(1185), - [sym_primary_expression] = STATE(779), - [sym_not_operator] = STATE(1158), - [sym_boolean_operator] = STATE(1158), - [sym_binary_operator] = STATE(908), - [sym_unary_operator] = STATE(908), - [sym_comparison_operator] = STATE(1158), - [sym_lambda] = STATE(1158), - [sym_assignment] = STATE(1551), - [sym_augmented_assignment] = STATE(1551), - [sym_pattern_list] = STATE(1024), - [sym_yield] = STATE(1551), - [sym_attribute] = STATE(494), - [sym_subscript] = STATE(494), - [sym_call] = STATE(908), - [sym_list] = STATE(908), - [sym_set] = STATE(908), - [sym_tuple] = STATE(908), - [sym_dictionary] = STATE(908), - [sym_list_comprehension] = STATE(908), - [sym_dictionary_comprehension] = STATE(908), - [sym_set_comprehension] = STATE(908), - [sym_generator_expression] = STATE(908), - [sym_parenthesized_expression] = STATE(908), - [sym_conditional_expression] = STATE(1158), - [sym_concatenated_string] = STATE(908), - [sym_string] = STATE(782), - [sym_concatenated_template_string] = STATE(908), - [sym_template_string] = STATE(763), - [sym_await] = STATE(908), - [aux_sym_module_repeat1] = STATE(65), - [aux_sym_decorated_definition_repeat1] = STATE(1113), + [sym_class_definition] = STATE(64), + [sym_decorated_definition] = STATE(64), + [sym_decorator] = STATE(1127), + [sym_block] = STATE(558), + [sym_expression_list] = STATE(1522), + [sym_pattern] = STATE(1017), + [sym_tuple_pattern] = STATE(1001), + [sym_list_pattern] = STATE(1001), + [sym_list_splat_pattern] = STATE(1001), + [sym_expression] = STATE(1176), + [sym_primary_expression] = STATE(765), + [sym_not_operator] = STATE(1156), + [sym_boolean_operator] = STATE(1156), + [sym_binary_operator] = STATE(920), + [sym_unary_operator] = STATE(920), + [sym_comparison_operator] = STATE(1156), + [sym_lambda] = STATE(1156), + [sym_assignment] = STATE(1522), + [sym_augmented_assignment] = STATE(1522), + [sym_pattern_list] = STATE(1026), + [sym_yield] = STATE(1522), + [sym_attribute] = STATE(582), + [sym_subscript] = STATE(582), + [sym_call] = STATE(920), + [sym_list] = STATE(920), + [sym_set] = STATE(920), + [sym_tuple] = STATE(920), + [sym_dictionary] = STATE(920), + [sym_list_comprehension] = STATE(920), + [sym_dictionary_comprehension] = STATE(920), + [sym_set_comprehension] = STATE(920), + [sym_generator_expression] = STATE(920), + [sym_parenthesized_expression] = STATE(920), + [sym_conditional_expression] = STATE(1156), + [sym_concatenated_string] = STATE(920), + [sym_string] = STATE(775), + [sym_concatenated_template_string] = STATE(920), + [sym_template_string] = STATE(769), + [sym_await] = STATE(920), + [aux_sym_module_repeat1] = STATE(64), + [aux_sym_decorated_definition_repeat1] = STATE(1127), [sym_identifier] = ACTIONS(7), - [anon_sym_import] = ACTIONS(9), - [anon_sym_from] = ACTIONS(11), - [anon_sym_LPAREN] = ACTIONS(13), - [anon_sym_STAR] = ACTIONS(15), - [anon_sym_print] = ACTIONS(17), - [anon_sym_assert] = ACTIONS(19), - [anon_sym_return] = ACTIONS(21), - [anon_sym_del] = ACTIONS(23), - [anon_sym_raise] = ACTIONS(25), - [anon_sym_pass] = ACTIONS(27), - [anon_sym_break] = ACTIONS(29), - [anon_sym_continue] = ACTIONS(31), - [anon_sym_if] = ACTIONS(85), - [anon_sym_async] = ACTIONS(87), - [anon_sym_for] = ACTIONS(89), - [anon_sym_while] = ACTIONS(91), - [anon_sym_try] = ACTIONS(93), - [anon_sym_with] = ACTIONS(95), - [anon_sym_match] = ACTIONS(97), - [anon_sym_DASH] = ACTIONS(47), - [anon_sym_PLUS] = ACTIONS(47), - [anon_sym_LBRACK] = ACTIONS(49), - [anon_sym_LBRACE] = ACTIONS(51), - [anon_sym_STAR_STAR] = ACTIONS(53), - [anon_sym_def] = ACTIONS(99), - [anon_sym_global] = ACTIONS(57), - [anon_sym_nonlocal] = ACTIONS(59), - [anon_sym_exec] = ACTIONS(61), - [anon_sym_type] = ACTIONS(63), - [anon_sym_class] = ACTIONS(101), - [anon_sym_AT] = ACTIONS(67), - [anon_sym_not] = ACTIONS(69), - [anon_sym_TILDE] = ACTIONS(47), - [anon_sym_lambda] = ACTIONS(71), - [anon_sym_yield] = ACTIONS(73), - [sym_ellipsis] = ACTIONS(75), - [sym_integer] = ACTIONS(77), - [sym_float] = ACTIONS(75), - [anon_sym_await] = ACTIONS(79), - [sym_true] = ACTIONS(77), - [sym_false] = ACTIONS(77), - [sym_none] = ACTIONS(77), + [anon_sym_lazy] = ACTIONS(9), + [anon_sym_import] = ACTIONS(11), + [anon_sym_from] = ACTIONS(13), + [anon_sym_LPAREN] = ACTIONS(15), + [anon_sym_STAR] = ACTIONS(17), + [anon_sym_print] = ACTIONS(19), + [anon_sym_assert] = ACTIONS(21), + [anon_sym_return] = ACTIONS(23), + [anon_sym_del] = ACTIONS(25), + [anon_sym_raise] = ACTIONS(27), + [anon_sym_pass] = ACTIONS(29), + [anon_sym_break] = ACTIONS(31), + [anon_sym_continue] = ACTIONS(33), + [anon_sym_if] = ACTIONS(87), + [anon_sym_async] = ACTIONS(89), + [anon_sym_for] = ACTIONS(91), + [anon_sym_while] = ACTIONS(93), + [anon_sym_try] = ACTIONS(95), + [anon_sym_with] = ACTIONS(97), + [anon_sym_match] = ACTIONS(99), + [anon_sym_DASH] = ACTIONS(49), + [anon_sym_PLUS] = ACTIONS(49), + [anon_sym_LBRACK] = ACTIONS(51), + [anon_sym_LBRACE] = ACTIONS(53), + [anon_sym_STAR_STAR] = ACTIONS(55), + [anon_sym_def] = ACTIONS(101), + [anon_sym_global] = ACTIONS(59), + [anon_sym_nonlocal] = ACTIONS(61), + [anon_sym_exec] = ACTIONS(63), + [anon_sym_type] = ACTIONS(65), + [anon_sym_class] = ACTIONS(103), + [anon_sym_AT] = ACTIONS(69), + [anon_sym_not] = ACTIONS(71), + [anon_sym_TILDE] = ACTIONS(49), + [anon_sym_lambda] = ACTIONS(73), + [anon_sym_yield] = ACTIONS(75), + [sym_ellipsis] = ACTIONS(77), + [sym_integer] = ACTIONS(79), + [sym_float] = ACTIONS(77), + [anon_sym_await] = ACTIONS(81), + [sym_true] = ACTIONS(79), + [sym_false] = ACTIONS(79), + [sym_none] = ACTIONS(79), [sym_comment] = ACTIONS(3), - [sym__dedent] = ACTIONS(103), - [sym__string_start] = ACTIONS(81), - [sym__template_string_start] = ACTIONS(83), + [sym__dedent] = ACTIONS(105), + [sym__string_start] = ACTIONS(83), + [sym__template_string_start] = ACTIONS(85), }, [STATE(50)] = { - [sym__statement] = STATE(65), - [sym__simple_statements] = STATE(65), + [sym__statement] = STATE(64), + [sym__simple_statements] = STATE(64), [sym_import_statement] = STATE(1332), [sym_future_import_statement] = STATE(1332), [sym_import_from_statement] = STATE(1332), [sym_print_statement] = STATE(1332), [sym_assert_statement] = STATE(1332), [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1158), + [sym_named_expression] = STATE(1156), [sym_return_statement] = STATE(1332), [sym_delete_statement] = STATE(1332), [sym_raise_statement] = STATE(1332), [sym_pass_statement] = STATE(1332), [sym_break_statement] = STATE(1332), [sym_continue_statement] = STATE(1332), - [sym_if_statement] = STATE(65), - [sym_for_statement] = STATE(65), - [sym_while_statement] = STATE(65), - [sym_try_statement] = STATE(65), - [sym_with_statement] = STATE(65), - [sym_match_statement] = STATE(65), - [sym_function_definition] = STATE(65), - [sym_list_splat] = STATE(1549), - [sym_dictionary_splat] = STATE(1549), + [sym_if_statement] = STATE(64), + [sym_for_statement] = STATE(64), + [sym_while_statement] = STATE(64), + [sym_try_statement] = STATE(64), + [sym_with_statement] = STATE(64), + [sym_match_statement] = STATE(64), + [sym_function_definition] = STATE(64), + [sym_list_splat] = STATE(1520), + [sym_dictionary_splat] = STATE(1520), [sym_global_statement] = STATE(1332), [sym_nonlocal_statement] = STATE(1332), [sym_exec_statement] = STATE(1332), [sym_type_alias_statement] = STATE(1332), - [sym_class_definition] = STATE(65), - [sym_decorated_definition] = STATE(65), - [sym_decorator] = STATE(1113), - [sym_block] = STATE(598), - [sym_expression_list] = STATE(1551), - [sym_pattern] = STATE(1013), - [sym_tuple_pattern] = STATE(999), - [sym_list_pattern] = STATE(999), - [sym_list_splat_pattern] = STATE(999), - [sym_expression] = STATE(1185), - [sym_primary_expression] = STATE(779), - [sym_not_operator] = STATE(1158), - [sym_boolean_operator] = STATE(1158), - [sym_binary_operator] = STATE(908), - [sym_unary_operator] = STATE(908), - [sym_comparison_operator] = STATE(1158), - [sym_lambda] = STATE(1158), - [sym_assignment] = STATE(1551), - [sym_augmented_assignment] = STATE(1551), - [sym_pattern_list] = STATE(1024), - [sym_yield] = STATE(1551), - [sym_attribute] = STATE(494), - [sym_subscript] = STATE(494), - [sym_call] = STATE(908), - [sym_list] = STATE(908), - [sym_set] = STATE(908), - [sym_tuple] = STATE(908), - [sym_dictionary] = STATE(908), - [sym_list_comprehension] = STATE(908), - [sym_dictionary_comprehension] = STATE(908), - [sym_set_comprehension] = STATE(908), - [sym_generator_expression] = STATE(908), - [sym_parenthesized_expression] = STATE(908), - [sym_conditional_expression] = STATE(1158), - [sym_concatenated_string] = STATE(908), - [sym_string] = STATE(782), - [sym_concatenated_template_string] = STATE(908), - [sym_template_string] = STATE(763), - [sym_await] = STATE(908), - [aux_sym_module_repeat1] = STATE(65), - [aux_sym_decorated_definition_repeat1] = STATE(1113), + [sym_class_definition] = STATE(64), + [sym_decorated_definition] = STATE(64), + [sym_decorator] = STATE(1127), + [sym_block] = STATE(481), + [sym_expression_list] = STATE(1522), + [sym_pattern] = STATE(1017), + [sym_tuple_pattern] = STATE(1001), + [sym_list_pattern] = STATE(1001), + [sym_list_splat_pattern] = STATE(1001), + [sym_expression] = STATE(1176), + [sym_primary_expression] = STATE(765), + [sym_not_operator] = STATE(1156), + [sym_boolean_operator] = STATE(1156), + [sym_binary_operator] = STATE(920), + [sym_unary_operator] = STATE(920), + [sym_comparison_operator] = STATE(1156), + [sym_lambda] = STATE(1156), + [sym_assignment] = STATE(1522), + [sym_augmented_assignment] = STATE(1522), + [sym_pattern_list] = STATE(1026), + [sym_yield] = STATE(1522), + [sym_attribute] = STATE(582), + [sym_subscript] = STATE(582), + [sym_call] = STATE(920), + [sym_list] = STATE(920), + [sym_set] = STATE(920), + [sym_tuple] = STATE(920), + [sym_dictionary] = STATE(920), + [sym_list_comprehension] = STATE(920), + [sym_dictionary_comprehension] = STATE(920), + [sym_set_comprehension] = STATE(920), + [sym_generator_expression] = STATE(920), + [sym_parenthesized_expression] = STATE(920), + [sym_conditional_expression] = STATE(1156), + [sym_concatenated_string] = STATE(920), + [sym_string] = STATE(775), + [sym_concatenated_template_string] = STATE(920), + [sym_template_string] = STATE(769), + [sym_await] = STATE(920), + [aux_sym_module_repeat1] = STATE(64), + [aux_sym_decorated_definition_repeat1] = STATE(1127), [sym_identifier] = ACTIONS(7), - [anon_sym_import] = ACTIONS(9), - [anon_sym_from] = ACTIONS(11), - [anon_sym_LPAREN] = ACTIONS(13), - [anon_sym_STAR] = ACTIONS(15), - [anon_sym_print] = ACTIONS(17), - [anon_sym_assert] = ACTIONS(19), - [anon_sym_return] = ACTIONS(21), - [anon_sym_del] = ACTIONS(23), - [anon_sym_raise] = ACTIONS(25), - [anon_sym_pass] = ACTIONS(27), - [anon_sym_break] = ACTIONS(29), - [anon_sym_continue] = ACTIONS(31), - [anon_sym_if] = ACTIONS(85), - [anon_sym_async] = ACTIONS(87), - [anon_sym_for] = ACTIONS(89), - [anon_sym_while] = ACTIONS(91), - [anon_sym_try] = ACTIONS(93), - [anon_sym_with] = ACTIONS(95), - [anon_sym_match] = ACTIONS(97), - [anon_sym_DASH] = ACTIONS(47), - [anon_sym_PLUS] = ACTIONS(47), - [anon_sym_LBRACK] = ACTIONS(49), - [anon_sym_LBRACE] = ACTIONS(51), - [anon_sym_STAR_STAR] = ACTIONS(53), - [anon_sym_def] = ACTIONS(99), - [anon_sym_global] = ACTIONS(57), - [anon_sym_nonlocal] = ACTIONS(59), - [anon_sym_exec] = ACTIONS(61), - [anon_sym_type] = ACTIONS(63), - [anon_sym_class] = ACTIONS(101), - [anon_sym_AT] = ACTIONS(67), - [anon_sym_not] = ACTIONS(69), - [anon_sym_TILDE] = ACTIONS(47), - [anon_sym_lambda] = ACTIONS(71), - [anon_sym_yield] = ACTIONS(73), - [sym_ellipsis] = ACTIONS(75), - [sym_integer] = ACTIONS(77), - [sym_float] = ACTIONS(75), - [anon_sym_await] = ACTIONS(79), - [sym_true] = ACTIONS(77), - [sym_false] = ACTIONS(77), - [sym_none] = ACTIONS(77), + [anon_sym_lazy] = ACTIONS(9), + [anon_sym_import] = ACTIONS(11), + [anon_sym_from] = ACTIONS(13), + [anon_sym_LPAREN] = ACTIONS(15), + [anon_sym_STAR] = ACTIONS(17), + [anon_sym_print] = ACTIONS(19), + [anon_sym_assert] = ACTIONS(21), + [anon_sym_return] = ACTIONS(23), + [anon_sym_del] = ACTIONS(25), + [anon_sym_raise] = ACTIONS(27), + [anon_sym_pass] = ACTIONS(29), + [anon_sym_break] = ACTIONS(31), + [anon_sym_continue] = ACTIONS(33), + [anon_sym_if] = ACTIONS(87), + [anon_sym_async] = ACTIONS(89), + [anon_sym_for] = ACTIONS(91), + [anon_sym_while] = ACTIONS(93), + [anon_sym_try] = ACTIONS(95), + [anon_sym_with] = ACTIONS(97), + [anon_sym_match] = ACTIONS(99), + [anon_sym_DASH] = ACTIONS(49), + [anon_sym_PLUS] = ACTIONS(49), + [anon_sym_LBRACK] = ACTIONS(51), + [anon_sym_LBRACE] = ACTIONS(53), + [anon_sym_STAR_STAR] = ACTIONS(55), + [anon_sym_def] = ACTIONS(101), + [anon_sym_global] = ACTIONS(59), + [anon_sym_nonlocal] = ACTIONS(61), + [anon_sym_exec] = ACTIONS(63), + [anon_sym_type] = ACTIONS(65), + [anon_sym_class] = ACTIONS(103), + [anon_sym_AT] = ACTIONS(69), + [anon_sym_not] = ACTIONS(71), + [anon_sym_TILDE] = ACTIONS(49), + [anon_sym_lambda] = ACTIONS(73), + [anon_sym_yield] = ACTIONS(75), + [sym_ellipsis] = ACTIONS(77), + [sym_integer] = ACTIONS(79), + [sym_float] = ACTIONS(77), + [anon_sym_await] = ACTIONS(81), + [sym_true] = ACTIONS(79), + [sym_false] = ACTIONS(79), + [sym_none] = ACTIONS(79), [sym_comment] = ACTIONS(3), - [sym__dedent] = ACTIONS(103), - [sym__string_start] = ACTIONS(81), - [sym__template_string_start] = ACTIONS(83), + [sym__dedent] = ACTIONS(105), + [sym__string_start] = ACTIONS(83), + [sym__template_string_start] = ACTIONS(85), }, [STATE(51)] = { - [sym__statement] = STATE(65), - [sym__simple_statements] = STATE(65), + [sym__statement] = STATE(64), + [sym__simple_statements] = STATE(64), [sym_import_statement] = STATE(1332), [sym_future_import_statement] = STATE(1332), [sym_import_from_statement] = STATE(1332), [sym_print_statement] = STATE(1332), [sym_assert_statement] = STATE(1332), [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1158), + [sym_named_expression] = STATE(1156), [sym_return_statement] = STATE(1332), [sym_delete_statement] = STATE(1332), [sym_raise_statement] = STATE(1332), [sym_pass_statement] = STATE(1332), [sym_break_statement] = STATE(1332), [sym_continue_statement] = STATE(1332), - [sym_if_statement] = STATE(65), - [sym_for_statement] = STATE(65), - [sym_while_statement] = STATE(65), - [sym_try_statement] = STATE(65), - [sym_with_statement] = STATE(65), - [sym_match_statement] = STATE(65), - [sym_function_definition] = STATE(65), - [sym_list_splat] = STATE(1549), - [sym_dictionary_splat] = STATE(1549), + [sym_if_statement] = STATE(64), + [sym_for_statement] = STATE(64), + [sym_while_statement] = STATE(64), + [sym_try_statement] = STATE(64), + [sym_with_statement] = STATE(64), + [sym_match_statement] = STATE(64), + [sym_function_definition] = STATE(64), + [sym_list_splat] = STATE(1520), + [sym_dictionary_splat] = STATE(1520), [sym_global_statement] = STATE(1332), [sym_nonlocal_statement] = STATE(1332), [sym_exec_statement] = STATE(1332), [sym_type_alias_statement] = STATE(1332), - [sym_class_definition] = STATE(65), - [sym_decorated_definition] = STATE(65), - [sym_decorator] = STATE(1113), - [sym_block] = STATE(486), - [sym_expression_list] = STATE(1551), - [sym_pattern] = STATE(1013), - [sym_tuple_pattern] = STATE(999), - [sym_list_pattern] = STATE(999), - [sym_list_splat_pattern] = STATE(999), - [sym_expression] = STATE(1185), - [sym_primary_expression] = STATE(779), - [sym_not_operator] = STATE(1158), - [sym_boolean_operator] = STATE(1158), - [sym_binary_operator] = STATE(908), - [sym_unary_operator] = STATE(908), - [sym_comparison_operator] = STATE(1158), - [sym_lambda] = STATE(1158), - [sym_assignment] = STATE(1551), - [sym_augmented_assignment] = STATE(1551), - [sym_pattern_list] = STATE(1024), - [sym_yield] = STATE(1551), - [sym_attribute] = STATE(494), - [sym_subscript] = STATE(494), - [sym_call] = STATE(908), - [sym_list] = STATE(908), - [sym_set] = STATE(908), - [sym_tuple] = STATE(908), - [sym_dictionary] = STATE(908), - [sym_list_comprehension] = STATE(908), - [sym_dictionary_comprehension] = STATE(908), - [sym_set_comprehension] = STATE(908), - [sym_generator_expression] = STATE(908), - [sym_parenthesized_expression] = STATE(908), - [sym_conditional_expression] = STATE(1158), - [sym_concatenated_string] = STATE(908), - [sym_string] = STATE(782), - [sym_concatenated_template_string] = STATE(908), - [sym_template_string] = STATE(763), - [sym_await] = STATE(908), - [aux_sym_module_repeat1] = STATE(65), - [aux_sym_decorated_definition_repeat1] = STATE(1113), + [sym_class_definition] = STATE(64), + [sym_decorated_definition] = STATE(64), + [sym_decorator] = STATE(1127), + [sym_block] = STATE(561), + [sym_expression_list] = STATE(1522), + [sym_pattern] = STATE(1017), + [sym_tuple_pattern] = STATE(1001), + [sym_list_pattern] = STATE(1001), + [sym_list_splat_pattern] = STATE(1001), + [sym_expression] = STATE(1176), + [sym_primary_expression] = STATE(765), + [sym_not_operator] = STATE(1156), + [sym_boolean_operator] = STATE(1156), + [sym_binary_operator] = STATE(920), + [sym_unary_operator] = STATE(920), + [sym_comparison_operator] = STATE(1156), + [sym_lambda] = STATE(1156), + [sym_assignment] = STATE(1522), + [sym_augmented_assignment] = STATE(1522), + [sym_pattern_list] = STATE(1026), + [sym_yield] = STATE(1522), + [sym_attribute] = STATE(582), + [sym_subscript] = STATE(582), + [sym_call] = STATE(920), + [sym_list] = STATE(920), + [sym_set] = STATE(920), + [sym_tuple] = STATE(920), + [sym_dictionary] = STATE(920), + [sym_list_comprehension] = STATE(920), + [sym_dictionary_comprehension] = STATE(920), + [sym_set_comprehension] = STATE(920), + [sym_generator_expression] = STATE(920), + [sym_parenthesized_expression] = STATE(920), + [sym_conditional_expression] = STATE(1156), + [sym_concatenated_string] = STATE(920), + [sym_string] = STATE(775), + [sym_concatenated_template_string] = STATE(920), + [sym_template_string] = STATE(769), + [sym_await] = STATE(920), + [aux_sym_module_repeat1] = STATE(64), + [aux_sym_decorated_definition_repeat1] = STATE(1127), [sym_identifier] = ACTIONS(7), - [anon_sym_import] = ACTIONS(9), - [anon_sym_from] = ACTIONS(11), - [anon_sym_LPAREN] = ACTIONS(13), - [anon_sym_STAR] = ACTIONS(15), - [anon_sym_print] = ACTIONS(17), - [anon_sym_assert] = ACTIONS(19), - [anon_sym_return] = ACTIONS(21), - [anon_sym_del] = ACTIONS(23), - [anon_sym_raise] = ACTIONS(25), - [anon_sym_pass] = ACTIONS(27), - [anon_sym_break] = ACTIONS(29), - [anon_sym_continue] = ACTIONS(31), - [anon_sym_if] = ACTIONS(85), - [anon_sym_async] = ACTIONS(87), - [anon_sym_for] = ACTIONS(89), - [anon_sym_while] = ACTIONS(91), - [anon_sym_try] = ACTIONS(93), - [anon_sym_with] = ACTIONS(95), - [anon_sym_match] = ACTIONS(97), - [anon_sym_DASH] = ACTIONS(47), - [anon_sym_PLUS] = ACTIONS(47), - [anon_sym_LBRACK] = ACTIONS(49), - [anon_sym_LBRACE] = ACTIONS(51), - [anon_sym_STAR_STAR] = ACTIONS(53), - [anon_sym_def] = ACTIONS(99), - [anon_sym_global] = ACTIONS(57), - [anon_sym_nonlocal] = ACTIONS(59), - [anon_sym_exec] = ACTIONS(61), - [anon_sym_type] = ACTIONS(63), - [anon_sym_class] = ACTIONS(101), - [anon_sym_AT] = ACTIONS(67), - [anon_sym_not] = ACTIONS(69), - [anon_sym_TILDE] = ACTIONS(47), - [anon_sym_lambda] = ACTIONS(71), - [anon_sym_yield] = ACTIONS(73), - [sym_ellipsis] = ACTIONS(75), - [sym_integer] = ACTIONS(77), - [sym_float] = ACTIONS(75), - [anon_sym_await] = ACTIONS(79), - [sym_true] = ACTIONS(77), - [sym_false] = ACTIONS(77), - [sym_none] = ACTIONS(77), + [anon_sym_lazy] = ACTIONS(9), + [anon_sym_import] = ACTIONS(11), + [anon_sym_from] = ACTIONS(13), + [anon_sym_LPAREN] = ACTIONS(15), + [anon_sym_STAR] = ACTIONS(17), + [anon_sym_print] = ACTIONS(19), + [anon_sym_assert] = ACTIONS(21), + [anon_sym_return] = ACTIONS(23), + [anon_sym_del] = ACTIONS(25), + [anon_sym_raise] = ACTIONS(27), + [anon_sym_pass] = ACTIONS(29), + [anon_sym_break] = ACTIONS(31), + [anon_sym_continue] = ACTIONS(33), + [anon_sym_if] = ACTIONS(87), + [anon_sym_async] = ACTIONS(89), + [anon_sym_for] = ACTIONS(91), + [anon_sym_while] = ACTIONS(93), + [anon_sym_try] = ACTIONS(95), + [anon_sym_with] = ACTIONS(97), + [anon_sym_match] = ACTIONS(99), + [anon_sym_DASH] = ACTIONS(49), + [anon_sym_PLUS] = ACTIONS(49), + [anon_sym_LBRACK] = ACTIONS(51), + [anon_sym_LBRACE] = ACTIONS(53), + [anon_sym_STAR_STAR] = ACTIONS(55), + [anon_sym_def] = ACTIONS(101), + [anon_sym_global] = ACTIONS(59), + [anon_sym_nonlocal] = ACTIONS(61), + [anon_sym_exec] = ACTIONS(63), + [anon_sym_type] = ACTIONS(65), + [anon_sym_class] = ACTIONS(103), + [anon_sym_AT] = ACTIONS(69), + [anon_sym_not] = ACTIONS(71), + [anon_sym_TILDE] = ACTIONS(49), + [anon_sym_lambda] = ACTIONS(73), + [anon_sym_yield] = ACTIONS(75), + [sym_ellipsis] = ACTIONS(77), + [sym_integer] = ACTIONS(79), + [sym_float] = ACTIONS(77), + [anon_sym_await] = ACTIONS(81), + [sym_true] = ACTIONS(79), + [sym_false] = ACTIONS(79), + [sym_none] = ACTIONS(79), [sym_comment] = ACTIONS(3), - [sym__dedent] = ACTIONS(103), - [sym__string_start] = ACTIONS(81), - [sym__template_string_start] = ACTIONS(83), + [sym__dedent] = ACTIONS(105), + [sym__string_start] = ACTIONS(83), + [sym__template_string_start] = ACTIONS(85), }, [STATE(52)] = { - [sym__statement] = STATE(65), - [sym__simple_statements] = STATE(65), + [sym__statement] = STATE(64), + [sym__simple_statements] = STATE(64), [sym_import_statement] = STATE(1332), [sym_future_import_statement] = STATE(1332), [sym_import_from_statement] = STATE(1332), [sym_print_statement] = STATE(1332), [sym_assert_statement] = STATE(1332), [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1158), + [sym_named_expression] = STATE(1156), [sym_return_statement] = STATE(1332), [sym_delete_statement] = STATE(1332), [sym_raise_statement] = STATE(1332), [sym_pass_statement] = STATE(1332), [sym_break_statement] = STATE(1332), [sym_continue_statement] = STATE(1332), - [sym_if_statement] = STATE(65), - [sym_for_statement] = STATE(65), - [sym_while_statement] = STATE(65), - [sym_try_statement] = STATE(65), - [sym_with_statement] = STATE(65), - [sym_match_statement] = STATE(65), - [sym_function_definition] = STATE(65), - [sym_list_splat] = STATE(1549), - [sym_dictionary_splat] = STATE(1549), + [sym_if_statement] = STATE(64), + [sym_for_statement] = STATE(64), + [sym_while_statement] = STATE(64), + [sym_try_statement] = STATE(64), + [sym_with_statement] = STATE(64), + [sym_match_statement] = STATE(64), + [sym_function_definition] = STATE(64), + [sym_list_splat] = STATE(1520), + [sym_dictionary_splat] = STATE(1520), [sym_global_statement] = STATE(1332), [sym_nonlocal_statement] = STATE(1332), [sym_exec_statement] = STATE(1332), [sym_type_alias_statement] = STATE(1332), - [sym_class_definition] = STATE(65), - [sym_decorated_definition] = STATE(65), - [sym_decorator] = STATE(1113), - [sym_block] = STATE(601), - [sym_expression_list] = STATE(1551), - [sym_pattern] = STATE(1013), - [sym_tuple_pattern] = STATE(999), - [sym_list_pattern] = STATE(999), - [sym_list_splat_pattern] = STATE(999), - [sym_expression] = STATE(1185), - [sym_primary_expression] = STATE(779), - [sym_not_operator] = STATE(1158), - [sym_boolean_operator] = STATE(1158), - [sym_binary_operator] = STATE(908), - [sym_unary_operator] = STATE(908), - [sym_comparison_operator] = STATE(1158), - [sym_lambda] = STATE(1158), - [sym_assignment] = STATE(1551), - [sym_augmented_assignment] = STATE(1551), - [sym_pattern_list] = STATE(1024), - [sym_yield] = STATE(1551), - [sym_attribute] = STATE(494), - [sym_subscript] = STATE(494), - [sym_call] = STATE(908), - [sym_list] = STATE(908), - [sym_set] = STATE(908), - [sym_tuple] = STATE(908), - [sym_dictionary] = STATE(908), - [sym_list_comprehension] = STATE(908), - [sym_dictionary_comprehension] = STATE(908), - [sym_set_comprehension] = STATE(908), - [sym_generator_expression] = STATE(908), - [sym_parenthesized_expression] = STATE(908), - [sym_conditional_expression] = STATE(1158), - [sym_concatenated_string] = STATE(908), - [sym_string] = STATE(782), - [sym_concatenated_template_string] = STATE(908), - [sym_template_string] = STATE(763), - [sym_await] = STATE(908), - [aux_sym_module_repeat1] = STATE(65), - [aux_sym_decorated_definition_repeat1] = STATE(1113), + [sym_class_definition] = STATE(64), + [sym_decorated_definition] = STATE(64), + [sym_decorator] = STATE(1127), + [sym_block] = STATE(435), + [sym_expression_list] = STATE(1522), + [sym_pattern] = STATE(1017), + [sym_tuple_pattern] = STATE(1001), + [sym_list_pattern] = STATE(1001), + [sym_list_splat_pattern] = STATE(1001), + [sym_expression] = STATE(1176), + [sym_primary_expression] = STATE(765), + [sym_not_operator] = STATE(1156), + [sym_boolean_operator] = STATE(1156), + [sym_binary_operator] = STATE(920), + [sym_unary_operator] = STATE(920), + [sym_comparison_operator] = STATE(1156), + [sym_lambda] = STATE(1156), + [sym_assignment] = STATE(1522), + [sym_augmented_assignment] = STATE(1522), + [sym_pattern_list] = STATE(1026), + [sym_yield] = STATE(1522), + [sym_attribute] = STATE(582), + [sym_subscript] = STATE(582), + [sym_call] = STATE(920), + [sym_list] = STATE(920), + [sym_set] = STATE(920), + [sym_tuple] = STATE(920), + [sym_dictionary] = STATE(920), + [sym_list_comprehension] = STATE(920), + [sym_dictionary_comprehension] = STATE(920), + [sym_set_comprehension] = STATE(920), + [sym_generator_expression] = STATE(920), + [sym_parenthesized_expression] = STATE(920), + [sym_conditional_expression] = STATE(1156), + [sym_concatenated_string] = STATE(920), + [sym_string] = STATE(775), + [sym_concatenated_template_string] = STATE(920), + [sym_template_string] = STATE(769), + [sym_await] = STATE(920), + [aux_sym_module_repeat1] = STATE(64), + [aux_sym_decorated_definition_repeat1] = STATE(1127), [sym_identifier] = ACTIONS(7), - [anon_sym_import] = ACTIONS(9), - [anon_sym_from] = ACTIONS(11), - [anon_sym_LPAREN] = ACTIONS(13), - [anon_sym_STAR] = ACTIONS(15), - [anon_sym_print] = ACTIONS(17), - [anon_sym_assert] = ACTIONS(19), - [anon_sym_return] = ACTIONS(21), - [anon_sym_del] = ACTIONS(23), - [anon_sym_raise] = ACTIONS(25), - [anon_sym_pass] = ACTIONS(27), - [anon_sym_break] = ACTIONS(29), - [anon_sym_continue] = ACTIONS(31), - [anon_sym_if] = ACTIONS(85), - [anon_sym_async] = ACTIONS(87), - [anon_sym_for] = ACTIONS(89), - [anon_sym_while] = ACTIONS(91), - [anon_sym_try] = ACTIONS(93), - [anon_sym_with] = ACTIONS(95), - [anon_sym_match] = ACTIONS(97), - [anon_sym_DASH] = ACTIONS(47), - [anon_sym_PLUS] = ACTIONS(47), - [anon_sym_LBRACK] = ACTIONS(49), - [anon_sym_LBRACE] = ACTIONS(51), - [anon_sym_STAR_STAR] = ACTIONS(53), - [anon_sym_def] = ACTIONS(99), - [anon_sym_global] = ACTIONS(57), - [anon_sym_nonlocal] = ACTIONS(59), - [anon_sym_exec] = ACTIONS(61), - [anon_sym_type] = ACTIONS(63), - [anon_sym_class] = ACTIONS(101), - [anon_sym_AT] = ACTIONS(67), - [anon_sym_not] = ACTIONS(69), - [anon_sym_TILDE] = ACTIONS(47), - [anon_sym_lambda] = ACTIONS(71), - [anon_sym_yield] = ACTIONS(73), - [sym_ellipsis] = ACTIONS(75), - [sym_integer] = ACTIONS(77), - [sym_float] = ACTIONS(75), - [anon_sym_await] = ACTIONS(79), - [sym_true] = ACTIONS(77), - [sym_false] = ACTIONS(77), - [sym_none] = ACTIONS(77), + [anon_sym_lazy] = ACTIONS(9), + [anon_sym_import] = ACTIONS(11), + [anon_sym_from] = ACTIONS(13), + [anon_sym_LPAREN] = ACTIONS(15), + [anon_sym_STAR] = ACTIONS(17), + [anon_sym_print] = ACTIONS(19), + [anon_sym_assert] = ACTIONS(21), + [anon_sym_return] = ACTIONS(23), + [anon_sym_del] = ACTIONS(25), + [anon_sym_raise] = ACTIONS(27), + [anon_sym_pass] = ACTIONS(29), + [anon_sym_break] = ACTIONS(31), + [anon_sym_continue] = ACTIONS(33), + [anon_sym_if] = ACTIONS(87), + [anon_sym_async] = ACTIONS(89), + [anon_sym_for] = ACTIONS(91), + [anon_sym_while] = ACTIONS(93), + [anon_sym_try] = ACTIONS(95), + [anon_sym_with] = ACTIONS(97), + [anon_sym_match] = ACTIONS(99), + [anon_sym_DASH] = ACTIONS(49), + [anon_sym_PLUS] = ACTIONS(49), + [anon_sym_LBRACK] = ACTIONS(51), + [anon_sym_LBRACE] = ACTIONS(53), + [anon_sym_STAR_STAR] = ACTIONS(55), + [anon_sym_def] = ACTIONS(101), + [anon_sym_global] = ACTIONS(59), + [anon_sym_nonlocal] = ACTIONS(61), + [anon_sym_exec] = ACTIONS(63), + [anon_sym_type] = ACTIONS(65), + [anon_sym_class] = ACTIONS(103), + [anon_sym_AT] = ACTIONS(69), + [anon_sym_not] = ACTIONS(71), + [anon_sym_TILDE] = ACTIONS(49), + [anon_sym_lambda] = ACTIONS(73), + [anon_sym_yield] = ACTIONS(75), + [sym_ellipsis] = ACTIONS(77), + [sym_integer] = ACTIONS(79), + [sym_float] = ACTIONS(77), + [anon_sym_await] = ACTIONS(81), + [sym_true] = ACTIONS(79), + [sym_false] = ACTIONS(79), + [sym_none] = ACTIONS(79), [sym_comment] = ACTIONS(3), - [sym__dedent] = ACTIONS(103), - [sym__string_start] = ACTIONS(81), - [sym__template_string_start] = ACTIONS(83), + [sym__dedent] = ACTIONS(105), + [sym__string_start] = ACTIONS(83), + [sym__template_string_start] = ACTIONS(85), }, [STATE(53)] = { - [sym__statement] = STATE(65), - [sym__simple_statements] = STATE(65), + [sym__statement] = STATE(64), + [sym__simple_statements] = STATE(64), [sym_import_statement] = STATE(1332), [sym_future_import_statement] = STATE(1332), [sym_import_from_statement] = STATE(1332), [sym_print_statement] = STATE(1332), [sym_assert_statement] = STATE(1332), [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1158), + [sym_named_expression] = STATE(1156), [sym_return_statement] = STATE(1332), [sym_delete_statement] = STATE(1332), [sym_raise_statement] = STATE(1332), [sym_pass_statement] = STATE(1332), [sym_break_statement] = STATE(1332), [sym_continue_statement] = STATE(1332), - [sym_if_statement] = STATE(65), - [sym_for_statement] = STATE(65), - [sym_while_statement] = STATE(65), - [sym_try_statement] = STATE(65), - [sym_with_statement] = STATE(65), - [sym_match_statement] = STATE(65), - [sym_function_definition] = STATE(65), - [sym_list_splat] = STATE(1549), - [sym_dictionary_splat] = STATE(1549), + [sym_if_statement] = STATE(64), + [sym_for_statement] = STATE(64), + [sym_while_statement] = STATE(64), + [sym_try_statement] = STATE(64), + [sym_with_statement] = STATE(64), + [sym_match_statement] = STATE(64), + [sym_function_definition] = STATE(64), + [sym_list_splat] = STATE(1520), + [sym_dictionary_splat] = STATE(1520), [sym_global_statement] = STATE(1332), [sym_nonlocal_statement] = STATE(1332), [sym_exec_statement] = STATE(1332), [sym_type_alias_statement] = STATE(1332), - [sym_class_definition] = STATE(65), - [sym_decorated_definition] = STATE(65), - [sym_decorator] = STATE(1113), - [sym_block] = STATE(443), - [sym_expression_list] = STATE(1551), - [sym_pattern] = STATE(1013), - [sym_tuple_pattern] = STATE(999), - [sym_list_pattern] = STATE(999), - [sym_list_splat_pattern] = STATE(999), - [sym_expression] = STATE(1185), - [sym_primary_expression] = STATE(779), - [sym_not_operator] = STATE(1158), - [sym_boolean_operator] = STATE(1158), - [sym_binary_operator] = STATE(908), - [sym_unary_operator] = STATE(908), - [sym_comparison_operator] = STATE(1158), - [sym_lambda] = STATE(1158), - [sym_assignment] = STATE(1551), - [sym_augmented_assignment] = STATE(1551), - [sym_pattern_list] = STATE(1024), - [sym_yield] = STATE(1551), - [sym_attribute] = STATE(494), - [sym_subscript] = STATE(494), - [sym_call] = STATE(908), - [sym_list] = STATE(908), - [sym_set] = STATE(908), - [sym_tuple] = STATE(908), - [sym_dictionary] = STATE(908), - [sym_list_comprehension] = STATE(908), - [sym_dictionary_comprehension] = STATE(908), - [sym_set_comprehension] = STATE(908), - [sym_generator_expression] = STATE(908), - [sym_parenthesized_expression] = STATE(908), - [sym_conditional_expression] = STATE(1158), - [sym_concatenated_string] = STATE(908), - [sym_string] = STATE(782), - [sym_concatenated_template_string] = STATE(908), - [sym_template_string] = STATE(763), - [sym_await] = STATE(908), - [aux_sym_module_repeat1] = STATE(65), - [aux_sym_decorated_definition_repeat1] = STATE(1113), + [sym_class_definition] = STATE(64), + [sym_decorated_definition] = STATE(64), + [sym_decorator] = STATE(1127), + [sym_block] = STATE(506), + [sym_expression_list] = STATE(1522), + [sym_pattern] = STATE(1017), + [sym_tuple_pattern] = STATE(1001), + [sym_list_pattern] = STATE(1001), + [sym_list_splat_pattern] = STATE(1001), + [sym_expression] = STATE(1176), + [sym_primary_expression] = STATE(765), + [sym_not_operator] = STATE(1156), + [sym_boolean_operator] = STATE(1156), + [sym_binary_operator] = STATE(920), + [sym_unary_operator] = STATE(920), + [sym_comparison_operator] = STATE(1156), + [sym_lambda] = STATE(1156), + [sym_assignment] = STATE(1522), + [sym_augmented_assignment] = STATE(1522), + [sym_pattern_list] = STATE(1026), + [sym_yield] = STATE(1522), + [sym_attribute] = STATE(582), + [sym_subscript] = STATE(582), + [sym_call] = STATE(920), + [sym_list] = STATE(920), + [sym_set] = STATE(920), + [sym_tuple] = STATE(920), + [sym_dictionary] = STATE(920), + [sym_list_comprehension] = STATE(920), + [sym_dictionary_comprehension] = STATE(920), + [sym_set_comprehension] = STATE(920), + [sym_generator_expression] = STATE(920), + [sym_parenthesized_expression] = STATE(920), + [sym_conditional_expression] = STATE(1156), + [sym_concatenated_string] = STATE(920), + [sym_string] = STATE(775), + [sym_concatenated_template_string] = STATE(920), + [sym_template_string] = STATE(769), + [sym_await] = STATE(920), + [aux_sym_module_repeat1] = STATE(64), + [aux_sym_decorated_definition_repeat1] = STATE(1127), [sym_identifier] = ACTIONS(7), - [anon_sym_import] = ACTIONS(9), - [anon_sym_from] = ACTIONS(11), - [anon_sym_LPAREN] = ACTIONS(13), - [anon_sym_STAR] = ACTIONS(15), - [anon_sym_print] = ACTIONS(17), - [anon_sym_assert] = ACTIONS(19), - [anon_sym_return] = ACTIONS(21), - [anon_sym_del] = ACTIONS(23), - [anon_sym_raise] = ACTIONS(25), - [anon_sym_pass] = ACTIONS(27), - [anon_sym_break] = ACTIONS(29), - [anon_sym_continue] = ACTIONS(31), - [anon_sym_if] = ACTIONS(85), - [anon_sym_async] = ACTIONS(87), - [anon_sym_for] = ACTIONS(89), - [anon_sym_while] = ACTIONS(91), - [anon_sym_try] = ACTIONS(93), - [anon_sym_with] = ACTIONS(95), - [anon_sym_match] = ACTIONS(97), - [anon_sym_DASH] = ACTIONS(47), - [anon_sym_PLUS] = ACTIONS(47), - [anon_sym_LBRACK] = ACTIONS(49), - [anon_sym_LBRACE] = ACTIONS(51), - [anon_sym_STAR_STAR] = ACTIONS(53), - [anon_sym_def] = ACTIONS(99), - [anon_sym_global] = ACTIONS(57), - [anon_sym_nonlocal] = ACTIONS(59), - [anon_sym_exec] = ACTIONS(61), - [anon_sym_type] = ACTIONS(63), - [anon_sym_class] = ACTIONS(101), - [anon_sym_AT] = ACTIONS(67), - [anon_sym_not] = ACTIONS(69), - [anon_sym_TILDE] = ACTIONS(47), - [anon_sym_lambda] = ACTIONS(71), - [anon_sym_yield] = ACTIONS(73), - [sym_ellipsis] = ACTIONS(75), - [sym_integer] = ACTIONS(77), - [sym_float] = ACTIONS(75), - [anon_sym_await] = ACTIONS(79), - [sym_true] = ACTIONS(77), - [sym_false] = ACTIONS(77), - [sym_none] = ACTIONS(77), + [anon_sym_lazy] = ACTIONS(9), + [anon_sym_import] = ACTIONS(11), + [anon_sym_from] = ACTIONS(13), + [anon_sym_LPAREN] = ACTIONS(15), + [anon_sym_STAR] = ACTIONS(17), + [anon_sym_print] = ACTIONS(19), + [anon_sym_assert] = ACTIONS(21), + [anon_sym_return] = ACTIONS(23), + [anon_sym_del] = ACTIONS(25), + [anon_sym_raise] = ACTIONS(27), + [anon_sym_pass] = ACTIONS(29), + [anon_sym_break] = ACTIONS(31), + [anon_sym_continue] = ACTIONS(33), + [anon_sym_if] = ACTIONS(87), + [anon_sym_async] = ACTIONS(89), + [anon_sym_for] = ACTIONS(91), + [anon_sym_while] = ACTIONS(93), + [anon_sym_try] = ACTIONS(95), + [anon_sym_with] = ACTIONS(97), + [anon_sym_match] = ACTIONS(99), + [anon_sym_DASH] = ACTIONS(49), + [anon_sym_PLUS] = ACTIONS(49), + [anon_sym_LBRACK] = ACTIONS(51), + [anon_sym_LBRACE] = ACTIONS(53), + [anon_sym_STAR_STAR] = ACTIONS(55), + [anon_sym_def] = ACTIONS(101), + [anon_sym_global] = ACTIONS(59), + [anon_sym_nonlocal] = ACTIONS(61), + [anon_sym_exec] = ACTIONS(63), + [anon_sym_type] = ACTIONS(65), + [anon_sym_class] = ACTIONS(103), + [anon_sym_AT] = ACTIONS(69), + [anon_sym_not] = ACTIONS(71), + [anon_sym_TILDE] = ACTIONS(49), + [anon_sym_lambda] = ACTIONS(73), + [anon_sym_yield] = ACTIONS(75), + [sym_ellipsis] = ACTIONS(77), + [sym_integer] = ACTIONS(79), + [sym_float] = ACTIONS(77), + [anon_sym_await] = ACTIONS(81), + [sym_true] = ACTIONS(79), + [sym_false] = ACTIONS(79), + [sym_none] = ACTIONS(79), [sym_comment] = ACTIONS(3), - [sym__dedent] = ACTIONS(103), - [sym__string_start] = ACTIONS(81), - [sym__template_string_start] = ACTIONS(83), + [sym__dedent] = ACTIONS(105), + [sym__string_start] = ACTIONS(83), + [sym__template_string_start] = ACTIONS(85), }, [STATE(54)] = { - [sym__statement] = STATE(65), - [sym__simple_statements] = STATE(65), + [sym__statement] = STATE(64), + [sym__simple_statements] = STATE(64), [sym_import_statement] = STATE(1332), [sym_future_import_statement] = STATE(1332), [sym_import_from_statement] = STATE(1332), [sym_print_statement] = STATE(1332), [sym_assert_statement] = STATE(1332), [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1158), + [sym_named_expression] = STATE(1156), [sym_return_statement] = STATE(1332), [sym_delete_statement] = STATE(1332), [sym_raise_statement] = STATE(1332), [sym_pass_statement] = STATE(1332), [sym_break_statement] = STATE(1332), [sym_continue_statement] = STATE(1332), - [sym_if_statement] = STATE(65), - [sym_for_statement] = STATE(65), - [sym_while_statement] = STATE(65), - [sym_try_statement] = STATE(65), - [sym_with_statement] = STATE(65), - [sym_match_statement] = STATE(65), - [sym_function_definition] = STATE(65), - [sym_list_splat] = STATE(1549), - [sym_dictionary_splat] = STATE(1549), + [sym_if_statement] = STATE(64), + [sym_for_statement] = STATE(64), + [sym_while_statement] = STATE(64), + [sym_try_statement] = STATE(64), + [sym_with_statement] = STATE(64), + [sym_match_statement] = STATE(64), + [sym_function_definition] = STATE(64), + [sym_list_splat] = STATE(1520), + [sym_dictionary_splat] = STATE(1520), [sym_global_statement] = STATE(1332), [sym_nonlocal_statement] = STATE(1332), [sym_exec_statement] = STATE(1332), [sym_type_alias_statement] = STATE(1332), - [sym_class_definition] = STATE(65), - [sym_decorated_definition] = STATE(65), - [sym_decorator] = STATE(1113), - [sym_block] = STATE(507), - [sym_expression_list] = STATE(1551), - [sym_pattern] = STATE(1013), - [sym_tuple_pattern] = STATE(999), - [sym_list_pattern] = STATE(999), - [sym_list_splat_pattern] = STATE(999), - [sym_expression] = STATE(1185), - [sym_primary_expression] = STATE(779), - [sym_not_operator] = STATE(1158), - [sym_boolean_operator] = STATE(1158), - [sym_binary_operator] = STATE(908), - [sym_unary_operator] = STATE(908), - [sym_comparison_operator] = STATE(1158), - [sym_lambda] = STATE(1158), - [sym_assignment] = STATE(1551), - [sym_augmented_assignment] = STATE(1551), - [sym_pattern_list] = STATE(1024), - [sym_yield] = STATE(1551), - [sym_attribute] = STATE(494), - [sym_subscript] = STATE(494), - [sym_call] = STATE(908), - [sym_list] = STATE(908), - [sym_set] = STATE(908), - [sym_tuple] = STATE(908), - [sym_dictionary] = STATE(908), - [sym_list_comprehension] = STATE(908), - [sym_dictionary_comprehension] = STATE(908), - [sym_set_comprehension] = STATE(908), - [sym_generator_expression] = STATE(908), - [sym_parenthesized_expression] = STATE(908), - [sym_conditional_expression] = STATE(1158), - [sym_concatenated_string] = STATE(908), - [sym_string] = STATE(782), - [sym_concatenated_template_string] = STATE(908), - [sym_template_string] = STATE(763), - [sym_await] = STATE(908), - [aux_sym_module_repeat1] = STATE(65), - [aux_sym_decorated_definition_repeat1] = STATE(1113), + [sym_class_definition] = STATE(64), + [sym_decorated_definition] = STATE(64), + [sym_decorator] = STATE(1127), + [sym_block] = STATE(564), + [sym_expression_list] = STATE(1522), + [sym_pattern] = STATE(1017), + [sym_tuple_pattern] = STATE(1001), + [sym_list_pattern] = STATE(1001), + [sym_list_splat_pattern] = STATE(1001), + [sym_expression] = STATE(1176), + [sym_primary_expression] = STATE(765), + [sym_not_operator] = STATE(1156), + [sym_boolean_operator] = STATE(1156), + [sym_binary_operator] = STATE(920), + [sym_unary_operator] = STATE(920), + [sym_comparison_operator] = STATE(1156), + [sym_lambda] = STATE(1156), + [sym_assignment] = STATE(1522), + [sym_augmented_assignment] = STATE(1522), + [sym_pattern_list] = STATE(1026), + [sym_yield] = STATE(1522), + [sym_attribute] = STATE(582), + [sym_subscript] = STATE(582), + [sym_call] = STATE(920), + [sym_list] = STATE(920), + [sym_set] = STATE(920), + [sym_tuple] = STATE(920), + [sym_dictionary] = STATE(920), + [sym_list_comprehension] = STATE(920), + [sym_dictionary_comprehension] = STATE(920), + [sym_set_comprehension] = STATE(920), + [sym_generator_expression] = STATE(920), + [sym_parenthesized_expression] = STATE(920), + [sym_conditional_expression] = STATE(1156), + [sym_concatenated_string] = STATE(920), + [sym_string] = STATE(775), + [sym_concatenated_template_string] = STATE(920), + [sym_template_string] = STATE(769), + [sym_await] = STATE(920), + [aux_sym_module_repeat1] = STATE(64), + [aux_sym_decorated_definition_repeat1] = STATE(1127), [sym_identifier] = ACTIONS(7), - [anon_sym_import] = ACTIONS(9), - [anon_sym_from] = ACTIONS(11), - [anon_sym_LPAREN] = ACTIONS(13), - [anon_sym_STAR] = ACTIONS(15), - [anon_sym_print] = ACTIONS(17), - [anon_sym_assert] = ACTIONS(19), - [anon_sym_return] = ACTIONS(21), - [anon_sym_del] = ACTIONS(23), - [anon_sym_raise] = ACTIONS(25), - [anon_sym_pass] = ACTIONS(27), - [anon_sym_break] = ACTIONS(29), - [anon_sym_continue] = ACTIONS(31), - [anon_sym_if] = ACTIONS(85), - [anon_sym_async] = ACTIONS(87), - [anon_sym_for] = ACTIONS(89), - [anon_sym_while] = ACTIONS(91), - [anon_sym_try] = ACTIONS(93), - [anon_sym_with] = ACTIONS(95), - [anon_sym_match] = ACTIONS(97), - [anon_sym_DASH] = ACTIONS(47), - [anon_sym_PLUS] = ACTIONS(47), - [anon_sym_LBRACK] = ACTIONS(49), - [anon_sym_LBRACE] = ACTIONS(51), - [anon_sym_STAR_STAR] = ACTIONS(53), - [anon_sym_def] = ACTIONS(99), - [anon_sym_global] = ACTIONS(57), - [anon_sym_nonlocal] = ACTIONS(59), - [anon_sym_exec] = ACTIONS(61), - [anon_sym_type] = ACTIONS(63), - [anon_sym_class] = ACTIONS(101), - [anon_sym_AT] = ACTIONS(67), - [anon_sym_not] = ACTIONS(69), - [anon_sym_TILDE] = ACTIONS(47), - [anon_sym_lambda] = ACTIONS(71), - [anon_sym_yield] = ACTIONS(73), - [sym_ellipsis] = ACTIONS(75), - [sym_integer] = ACTIONS(77), - [sym_float] = ACTIONS(75), - [anon_sym_await] = ACTIONS(79), - [sym_true] = ACTIONS(77), - [sym_false] = ACTIONS(77), - [sym_none] = ACTIONS(77), + [anon_sym_lazy] = ACTIONS(9), + [anon_sym_import] = ACTIONS(11), + [anon_sym_from] = ACTIONS(13), + [anon_sym_LPAREN] = ACTIONS(15), + [anon_sym_STAR] = ACTIONS(17), + [anon_sym_print] = ACTIONS(19), + [anon_sym_assert] = ACTIONS(21), + [anon_sym_return] = ACTIONS(23), + [anon_sym_del] = ACTIONS(25), + [anon_sym_raise] = ACTIONS(27), + [anon_sym_pass] = ACTIONS(29), + [anon_sym_break] = ACTIONS(31), + [anon_sym_continue] = ACTIONS(33), + [anon_sym_if] = ACTIONS(87), + [anon_sym_async] = ACTIONS(89), + [anon_sym_for] = ACTIONS(91), + [anon_sym_while] = ACTIONS(93), + [anon_sym_try] = ACTIONS(95), + [anon_sym_with] = ACTIONS(97), + [anon_sym_match] = ACTIONS(99), + [anon_sym_DASH] = ACTIONS(49), + [anon_sym_PLUS] = ACTIONS(49), + [anon_sym_LBRACK] = ACTIONS(51), + [anon_sym_LBRACE] = ACTIONS(53), + [anon_sym_STAR_STAR] = ACTIONS(55), + [anon_sym_def] = ACTIONS(101), + [anon_sym_global] = ACTIONS(59), + [anon_sym_nonlocal] = ACTIONS(61), + [anon_sym_exec] = ACTIONS(63), + [anon_sym_type] = ACTIONS(65), + [anon_sym_class] = ACTIONS(103), + [anon_sym_AT] = ACTIONS(69), + [anon_sym_not] = ACTIONS(71), + [anon_sym_TILDE] = ACTIONS(49), + [anon_sym_lambda] = ACTIONS(73), + [anon_sym_yield] = ACTIONS(75), + [sym_ellipsis] = ACTIONS(77), + [sym_integer] = ACTIONS(79), + [sym_float] = ACTIONS(77), + [anon_sym_await] = ACTIONS(81), + [sym_true] = ACTIONS(79), + [sym_false] = ACTIONS(79), + [sym_none] = ACTIONS(79), [sym_comment] = ACTIONS(3), - [sym__dedent] = ACTIONS(103), - [sym__string_start] = ACTIONS(81), - [sym__template_string_start] = ACTIONS(83), + [sym__dedent] = ACTIONS(105), + [sym__string_start] = ACTIONS(83), + [sym__template_string_start] = ACTIONS(85), }, [STATE(55)] = { - [sym__statement] = STATE(65), - [sym__simple_statements] = STATE(65), + [sym__statement] = STATE(64), + [sym__simple_statements] = STATE(64), [sym_import_statement] = STATE(1332), [sym_future_import_statement] = STATE(1332), [sym_import_from_statement] = STATE(1332), [sym_print_statement] = STATE(1332), [sym_assert_statement] = STATE(1332), [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1158), + [sym_named_expression] = STATE(1156), [sym_return_statement] = STATE(1332), [sym_delete_statement] = STATE(1332), [sym_raise_statement] = STATE(1332), [sym_pass_statement] = STATE(1332), [sym_break_statement] = STATE(1332), [sym_continue_statement] = STATE(1332), - [sym_if_statement] = STATE(65), - [sym_for_statement] = STATE(65), - [sym_while_statement] = STATE(65), - [sym_try_statement] = STATE(65), - [sym_with_statement] = STATE(65), - [sym_match_statement] = STATE(65), - [sym_function_definition] = STATE(65), - [sym_list_splat] = STATE(1549), - [sym_dictionary_splat] = STATE(1549), + [sym_if_statement] = STATE(64), + [sym_for_statement] = STATE(64), + [sym_while_statement] = STATE(64), + [sym_try_statement] = STATE(64), + [sym_with_statement] = STATE(64), + [sym_match_statement] = STATE(64), + [sym_function_definition] = STATE(64), + [sym_list_splat] = STATE(1520), + [sym_dictionary_splat] = STATE(1520), [sym_global_statement] = STATE(1332), [sym_nonlocal_statement] = STATE(1332), [sym_exec_statement] = STATE(1332), [sym_type_alias_statement] = STATE(1332), - [sym_class_definition] = STATE(65), - [sym_decorated_definition] = STATE(65), - [sym_decorator] = STATE(1113), - [sym_block] = STATE(603), - [sym_expression_list] = STATE(1551), - [sym_pattern] = STATE(1013), - [sym_tuple_pattern] = STATE(999), - [sym_list_pattern] = STATE(999), - [sym_list_splat_pattern] = STATE(999), - [sym_expression] = STATE(1185), - [sym_primary_expression] = STATE(779), - [sym_not_operator] = STATE(1158), - [sym_boolean_operator] = STATE(1158), - [sym_binary_operator] = STATE(908), - [sym_unary_operator] = STATE(908), - [sym_comparison_operator] = STATE(1158), - [sym_lambda] = STATE(1158), - [sym_assignment] = STATE(1551), - [sym_augmented_assignment] = STATE(1551), - [sym_pattern_list] = STATE(1024), - [sym_yield] = STATE(1551), - [sym_attribute] = STATE(494), - [sym_subscript] = STATE(494), - [sym_call] = STATE(908), - [sym_list] = STATE(908), - [sym_set] = STATE(908), - [sym_tuple] = STATE(908), - [sym_dictionary] = STATE(908), - [sym_list_comprehension] = STATE(908), - [sym_dictionary_comprehension] = STATE(908), - [sym_set_comprehension] = STATE(908), - [sym_generator_expression] = STATE(908), - [sym_parenthesized_expression] = STATE(908), - [sym_conditional_expression] = STATE(1158), - [sym_concatenated_string] = STATE(908), - [sym_string] = STATE(782), - [sym_concatenated_template_string] = STATE(908), - [sym_template_string] = STATE(763), - [sym_await] = STATE(908), - [aux_sym_module_repeat1] = STATE(65), - [aux_sym_decorated_definition_repeat1] = STATE(1113), + [sym_class_definition] = STATE(64), + [sym_decorated_definition] = STATE(64), + [sym_decorator] = STATE(1127), + [sym_block] = STATE(565), + [sym_expression_list] = STATE(1522), + [sym_pattern] = STATE(1017), + [sym_tuple_pattern] = STATE(1001), + [sym_list_pattern] = STATE(1001), + [sym_list_splat_pattern] = STATE(1001), + [sym_expression] = STATE(1176), + [sym_primary_expression] = STATE(765), + [sym_not_operator] = STATE(1156), + [sym_boolean_operator] = STATE(1156), + [sym_binary_operator] = STATE(920), + [sym_unary_operator] = STATE(920), + [sym_comparison_operator] = STATE(1156), + [sym_lambda] = STATE(1156), + [sym_assignment] = STATE(1522), + [sym_augmented_assignment] = STATE(1522), + [sym_pattern_list] = STATE(1026), + [sym_yield] = STATE(1522), + [sym_attribute] = STATE(582), + [sym_subscript] = STATE(582), + [sym_call] = STATE(920), + [sym_list] = STATE(920), + [sym_set] = STATE(920), + [sym_tuple] = STATE(920), + [sym_dictionary] = STATE(920), + [sym_list_comprehension] = STATE(920), + [sym_dictionary_comprehension] = STATE(920), + [sym_set_comprehension] = STATE(920), + [sym_generator_expression] = STATE(920), + [sym_parenthesized_expression] = STATE(920), + [sym_conditional_expression] = STATE(1156), + [sym_concatenated_string] = STATE(920), + [sym_string] = STATE(775), + [sym_concatenated_template_string] = STATE(920), + [sym_template_string] = STATE(769), + [sym_await] = STATE(920), + [aux_sym_module_repeat1] = STATE(64), + [aux_sym_decorated_definition_repeat1] = STATE(1127), [sym_identifier] = ACTIONS(7), - [anon_sym_import] = ACTIONS(9), - [anon_sym_from] = ACTIONS(11), - [anon_sym_LPAREN] = ACTIONS(13), - [anon_sym_STAR] = ACTIONS(15), - [anon_sym_print] = ACTIONS(17), - [anon_sym_assert] = ACTIONS(19), - [anon_sym_return] = ACTIONS(21), - [anon_sym_del] = ACTIONS(23), - [anon_sym_raise] = ACTIONS(25), - [anon_sym_pass] = ACTIONS(27), - [anon_sym_break] = ACTIONS(29), - [anon_sym_continue] = ACTIONS(31), - [anon_sym_if] = ACTIONS(85), - [anon_sym_async] = ACTIONS(87), - [anon_sym_for] = ACTIONS(89), - [anon_sym_while] = ACTIONS(91), - [anon_sym_try] = ACTIONS(93), - [anon_sym_with] = ACTIONS(95), - [anon_sym_match] = ACTIONS(97), - [anon_sym_DASH] = ACTIONS(47), - [anon_sym_PLUS] = ACTIONS(47), - [anon_sym_LBRACK] = ACTIONS(49), - [anon_sym_LBRACE] = ACTIONS(51), - [anon_sym_STAR_STAR] = ACTIONS(53), - [anon_sym_def] = ACTIONS(99), - [anon_sym_global] = ACTIONS(57), - [anon_sym_nonlocal] = ACTIONS(59), - [anon_sym_exec] = ACTIONS(61), - [anon_sym_type] = ACTIONS(63), - [anon_sym_class] = ACTIONS(101), - [anon_sym_AT] = ACTIONS(67), - [anon_sym_not] = ACTIONS(69), - [anon_sym_TILDE] = ACTIONS(47), - [anon_sym_lambda] = ACTIONS(71), - [anon_sym_yield] = ACTIONS(73), - [sym_ellipsis] = ACTIONS(75), - [sym_integer] = ACTIONS(77), - [sym_float] = ACTIONS(75), - [anon_sym_await] = ACTIONS(79), - [sym_true] = ACTIONS(77), - [sym_false] = ACTIONS(77), - [sym_none] = ACTIONS(77), + [anon_sym_lazy] = ACTIONS(9), + [anon_sym_import] = ACTIONS(11), + [anon_sym_from] = ACTIONS(13), + [anon_sym_LPAREN] = ACTIONS(15), + [anon_sym_STAR] = ACTIONS(17), + [anon_sym_print] = ACTIONS(19), + [anon_sym_assert] = ACTIONS(21), + [anon_sym_return] = ACTIONS(23), + [anon_sym_del] = ACTIONS(25), + [anon_sym_raise] = ACTIONS(27), + [anon_sym_pass] = ACTIONS(29), + [anon_sym_break] = ACTIONS(31), + [anon_sym_continue] = ACTIONS(33), + [anon_sym_if] = ACTIONS(87), + [anon_sym_async] = ACTIONS(89), + [anon_sym_for] = ACTIONS(91), + [anon_sym_while] = ACTIONS(93), + [anon_sym_try] = ACTIONS(95), + [anon_sym_with] = ACTIONS(97), + [anon_sym_match] = ACTIONS(99), + [anon_sym_DASH] = ACTIONS(49), + [anon_sym_PLUS] = ACTIONS(49), + [anon_sym_LBRACK] = ACTIONS(51), + [anon_sym_LBRACE] = ACTIONS(53), + [anon_sym_STAR_STAR] = ACTIONS(55), + [anon_sym_def] = ACTIONS(101), + [anon_sym_global] = ACTIONS(59), + [anon_sym_nonlocal] = ACTIONS(61), + [anon_sym_exec] = ACTIONS(63), + [anon_sym_type] = ACTIONS(65), + [anon_sym_class] = ACTIONS(103), + [anon_sym_AT] = ACTIONS(69), + [anon_sym_not] = ACTIONS(71), + [anon_sym_TILDE] = ACTIONS(49), + [anon_sym_lambda] = ACTIONS(73), + [anon_sym_yield] = ACTIONS(75), + [sym_ellipsis] = ACTIONS(77), + [sym_integer] = ACTIONS(79), + [sym_float] = ACTIONS(77), + [anon_sym_await] = ACTIONS(81), + [sym_true] = ACTIONS(79), + [sym_false] = ACTIONS(79), + [sym_none] = ACTIONS(79), [sym_comment] = ACTIONS(3), - [sym__dedent] = ACTIONS(103), - [sym__string_start] = ACTIONS(81), - [sym__template_string_start] = ACTIONS(83), + [sym__dedent] = ACTIONS(105), + [sym__string_start] = ACTIONS(83), + [sym__template_string_start] = ACTIONS(85), }, [STATE(56)] = { - [sym__statement] = STATE(65), - [sym__simple_statements] = STATE(65), + [sym__statement] = STATE(64), + [sym__simple_statements] = STATE(64), [sym_import_statement] = STATE(1332), [sym_future_import_statement] = STATE(1332), [sym_import_from_statement] = STATE(1332), [sym_print_statement] = STATE(1332), [sym_assert_statement] = STATE(1332), [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1158), + [sym_named_expression] = STATE(1156), [sym_return_statement] = STATE(1332), [sym_delete_statement] = STATE(1332), [sym_raise_statement] = STATE(1332), [sym_pass_statement] = STATE(1332), [sym_break_statement] = STATE(1332), [sym_continue_statement] = STATE(1332), - [sym_if_statement] = STATE(65), - [sym_for_statement] = STATE(65), - [sym_while_statement] = STATE(65), - [sym_try_statement] = STATE(65), - [sym_with_statement] = STATE(65), - [sym_match_statement] = STATE(65), - [sym_function_definition] = STATE(65), - [sym_list_splat] = STATE(1549), - [sym_dictionary_splat] = STATE(1549), + [sym_if_statement] = STATE(64), + [sym_for_statement] = STATE(64), + [sym_while_statement] = STATE(64), + [sym_try_statement] = STATE(64), + [sym_with_statement] = STATE(64), + [sym_match_statement] = STATE(64), + [sym_function_definition] = STATE(64), + [sym_list_splat] = STATE(1520), + [sym_dictionary_splat] = STATE(1520), [sym_global_statement] = STATE(1332), [sym_nonlocal_statement] = STATE(1332), [sym_exec_statement] = STATE(1332), [sym_type_alias_statement] = STATE(1332), - [sym_class_definition] = STATE(65), - [sym_decorated_definition] = STATE(65), - [sym_decorator] = STATE(1113), - [sym_block] = STATE(604), - [sym_expression_list] = STATE(1551), - [sym_pattern] = STATE(1013), - [sym_tuple_pattern] = STATE(999), - [sym_list_pattern] = STATE(999), - [sym_list_splat_pattern] = STATE(999), - [sym_expression] = STATE(1185), - [sym_primary_expression] = STATE(779), - [sym_not_operator] = STATE(1158), - [sym_boolean_operator] = STATE(1158), - [sym_binary_operator] = STATE(908), - [sym_unary_operator] = STATE(908), - [sym_comparison_operator] = STATE(1158), - [sym_lambda] = STATE(1158), - [sym_assignment] = STATE(1551), - [sym_augmented_assignment] = STATE(1551), - [sym_pattern_list] = STATE(1024), - [sym_yield] = STATE(1551), - [sym_attribute] = STATE(494), - [sym_subscript] = STATE(494), - [sym_call] = STATE(908), - [sym_list] = STATE(908), - [sym_set] = STATE(908), - [sym_tuple] = STATE(908), - [sym_dictionary] = STATE(908), - [sym_list_comprehension] = STATE(908), - [sym_dictionary_comprehension] = STATE(908), - [sym_set_comprehension] = STATE(908), - [sym_generator_expression] = STATE(908), - [sym_parenthesized_expression] = STATE(908), - [sym_conditional_expression] = STATE(1158), - [sym_concatenated_string] = STATE(908), - [sym_string] = STATE(782), - [sym_concatenated_template_string] = STATE(908), - [sym_template_string] = STATE(763), - [sym_await] = STATE(908), - [aux_sym_module_repeat1] = STATE(65), - [aux_sym_decorated_definition_repeat1] = STATE(1113), + [sym_class_definition] = STATE(64), + [sym_decorated_definition] = STATE(64), + [sym_decorator] = STATE(1127), + [sym_block] = STATE(441), + [sym_expression_list] = STATE(1522), + [sym_pattern] = STATE(1017), + [sym_tuple_pattern] = STATE(1001), + [sym_list_pattern] = STATE(1001), + [sym_list_splat_pattern] = STATE(1001), + [sym_expression] = STATE(1176), + [sym_primary_expression] = STATE(765), + [sym_not_operator] = STATE(1156), + [sym_boolean_operator] = STATE(1156), + [sym_binary_operator] = STATE(920), + [sym_unary_operator] = STATE(920), + [sym_comparison_operator] = STATE(1156), + [sym_lambda] = STATE(1156), + [sym_assignment] = STATE(1522), + [sym_augmented_assignment] = STATE(1522), + [sym_pattern_list] = STATE(1026), + [sym_yield] = STATE(1522), + [sym_attribute] = STATE(582), + [sym_subscript] = STATE(582), + [sym_call] = STATE(920), + [sym_list] = STATE(920), + [sym_set] = STATE(920), + [sym_tuple] = STATE(920), + [sym_dictionary] = STATE(920), + [sym_list_comprehension] = STATE(920), + [sym_dictionary_comprehension] = STATE(920), + [sym_set_comprehension] = STATE(920), + [sym_generator_expression] = STATE(920), + [sym_parenthesized_expression] = STATE(920), + [sym_conditional_expression] = STATE(1156), + [sym_concatenated_string] = STATE(920), + [sym_string] = STATE(775), + [sym_concatenated_template_string] = STATE(920), + [sym_template_string] = STATE(769), + [sym_await] = STATE(920), + [aux_sym_module_repeat1] = STATE(64), + [aux_sym_decorated_definition_repeat1] = STATE(1127), [sym_identifier] = ACTIONS(7), - [anon_sym_import] = ACTIONS(9), - [anon_sym_from] = ACTIONS(11), - [anon_sym_LPAREN] = ACTIONS(13), - [anon_sym_STAR] = ACTIONS(15), - [anon_sym_print] = ACTIONS(17), - [anon_sym_assert] = ACTIONS(19), - [anon_sym_return] = ACTIONS(21), - [anon_sym_del] = ACTIONS(23), - [anon_sym_raise] = ACTIONS(25), - [anon_sym_pass] = ACTIONS(27), - [anon_sym_break] = ACTIONS(29), - [anon_sym_continue] = ACTIONS(31), - [anon_sym_if] = ACTIONS(85), - [anon_sym_async] = ACTIONS(87), - [anon_sym_for] = ACTIONS(89), - [anon_sym_while] = ACTIONS(91), - [anon_sym_try] = ACTIONS(93), - [anon_sym_with] = ACTIONS(95), - [anon_sym_match] = ACTIONS(97), - [anon_sym_DASH] = ACTIONS(47), - [anon_sym_PLUS] = ACTIONS(47), - [anon_sym_LBRACK] = ACTIONS(49), - [anon_sym_LBRACE] = ACTIONS(51), - [anon_sym_STAR_STAR] = ACTIONS(53), - [anon_sym_def] = ACTIONS(99), - [anon_sym_global] = ACTIONS(57), - [anon_sym_nonlocal] = ACTIONS(59), - [anon_sym_exec] = ACTIONS(61), - [anon_sym_type] = ACTIONS(63), - [anon_sym_class] = ACTIONS(101), - [anon_sym_AT] = ACTIONS(67), - [anon_sym_not] = ACTIONS(69), - [anon_sym_TILDE] = ACTIONS(47), - [anon_sym_lambda] = ACTIONS(71), - [anon_sym_yield] = ACTIONS(73), - [sym_ellipsis] = ACTIONS(75), - [sym_integer] = ACTIONS(77), - [sym_float] = ACTIONS(75), - [anon_sym_await] = ACTIONS(79), - [sym_true] = ACTIONS(77), - [sym_false] = ACTIONS(77), - [sym_none] = ACTIONS(77), + [anon_sym_lazy] = ACTIONS(9), + [anon_sym_import] = ACTIONS(11), + [anon_sym_from] = ACTIONS(13), + [anon_sym_LPAREN] = ACTIONS(15), + [anon_sym_STAR] = ACTIONS(17), + [anon_sym_print] = ACTIONS(19), + [anon_sym_assert] = ACTIONS(21), + [anon_sym_return] = ACTIONS(23), + [anon_sym_del] = ACTIONS(25), + [anon_sym_raise] = ACTIONS(27), + [anon_sym_pass] = ACTIONS(29), + [anon_sym_break] = ACTIONS(31), + [anon_sym_continue] = ACTIONS(33), + [anon_sym_if] = ACTIONS(87), + [anon_sym_async] = ACTIONS(89), + [anon_sym_for] = ACTIONS(91), + [anon_sym_while] = ACTIONS(93), + [anon_sym_try] = ACTIONS(95), + [anon_sym_with] = ACTIONS(97), + [anon_sym_match] = ACTIONS(99), + [anon_sym_DASH] = ACTIONS(49), + [anon_sym_PLUS] = ACTIONS(49), + [anon_sym_LBRACK] = ACTIONS(51), + [anon_sym_LBRACE] = ACTIONS(53), + [anon_sym_STAR_STAR] = ACTIONS(55), + [anon_sym_def] = ACTIONS(101), + [anon_sym_global] = ACTIONS(59), + [anon_sym_nonlocal] = ACTIONS(61), + [anon_sym_exec] = ACTIONS(63), + [anon_sym_type] = ACTIONS(65), + [anon_sym_class] = ACTIONS(103), + [anon_sym_AT] = ACTIONS(69), + [anon_sym_not] = ACTIONS(71), + [anon_sym_TILDE] = ACTIONS(49), + [anon_sym_lambda] = ACTIONS(73), + [anon_sym_yield] = ACTIONS(75), + [sym_ellipsis] = ACTIONS(77), + [sym_integer] = ACTIONS(79), + [sym_float] = ACTIONS(77), + [anon_sym_await] = ACTIONS(81), + [sym_true] = ACTIONS(79), + [sym_false] = ACTIONS(79), + [sym_none] = ACTIONS(79), [sym_comment] = ACTIONS(3), - [sym__dedent] = ACTIONS(103), - [sym__string_start] = ACTIONS(81), - [sym__template_string_start] = ACTIONS(83), + [sym__dedent] = ACTIONS(105), + [sym__string_start] = ACTIONS(83), + [sym__template_string_start] = ACTIONS(85), }, [STATE(57)] = { - [sym__statement] = STATE(65), - [sym__simple_statements] = STATE(65), + [sym__statement] = STATE(64), + [sym__simple_statements] = STATE(64), [sym_import_statement] = STATE(1332), [sym_future_import_statement] = STATE(1332), [sym_import_from_statement] = STATE(1332), [sym_print_statement] = STATE(1332), [sym_assert_statement] = STATE(1332), [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1158), + [sym_named_expression] = STATE(1156), [sym_return_statement] = STATE(1332), [sym_delete_statement] = STATE(1332), [sym_raise_statement] = STATE(1332), [sym_pass_statement] = STATE(1332), [sym_break_statement] = STATE(1332), [sym_continue_statement] = STATE(1332), - [sym_if_statement] = STATE(65), - [sym_for_statement] = STATE(65), - [sym_while_statement] = STATE(65), - [sym_try_statement] = STATE(65), - [sym_with_statement] = STATE(65), - [sym_match_statement] = STATE(65), - [sym_function_definition] = STATE(65), - [sym_list_splat] = STATE(1549), - [sym_dictionary_splat] = STATE(1549), + [sym_if_statement] = STATE(64), + [sym_for_statement] = STATE(64), + [sym_while_statement] = STATE(64), + [sym_try_statement] = STATE(64), + [sym_with_statement] = STATE(64), + [sym_match_statement] = STATE(64), + [sym_function_definition] = STATE(64), + [sym_list_splat] = STATE(1520), + [sym_dictionary_splat] = STATE(1520), [sym_global_statement] = STATE(1332), [sym_nonlocal_statement] = STATE(1332), [sym_exec_statement] = STATE(1332), [sym_type_alias_statement] = STATE(1332), - [sym_class_definition] = STATE(65), - [sym_decorated_definition] = STATE(65), - [sym_decorator] = STATE(1113), - [sym_block] = STATE(446), - [sym_expression_list] = STATE(1551), - [sym_pattern] = STATE(1013), - [sym_tuple_pattern] = STATE(999), - [sym_list_pattern] = STATE(999), - [sym_list_splat_pattern] = STATE(999), - [sym_expression] = STATE(1185), - [sym_primary_expression] = STATE(779), - [sym_not_operator] = STATE(1158), - [sym_boolean_operator] = STATE(1158), - [sym_binary_operator] = STATE(908), - [sym_unary_operator] = STATE(908), - [sym_comparison_operator] = STATE(1158), - [sym_lambda] = STATE(1158), - [sym_assignment] = STATE(1551), - [sym_augmented_assignment] = STATE(1551), - [sym_pattern_list] = STATE(1024), - [sym_yield] = STATE(1551), - [sym_attribute] = STATE(494), - [sym_subscript] = STATE(494), - [sym_call] = STATE(908), - [sym_list] = STATE(908), - [sym_set] = STATE(908), - [sym_tuple] = STATE(908), - [sym_dictionary] = STATE(908), - [sym_list_comprehension] = STATE(908), - [sym_dictionary_comprehension] = STATE(908), - [sym_set_comprehension] = STATE(908), - [sym_generator_expression] = STATE(908), - [sym_parenthesized_expression] = STATE(908), - [sym_conditional_expression] = STATE(1158), - [sym_concatenated_string] = STATE(908), - [sym_string] = STATE(782), - [sym_concatenated_template_string] = STATE(908), - [sym_template_string] = STATE(763), - [sym_await] = STATE(908), - [aux_sym_module_repeat1] = STATE(65), - [aux_sym_decorated_definition_repeat1] = STATE(1113), + [sym_class_definition] = STATE(64), + [sym_decorated_definition] = STATE(64), + [sym_decorator] = STATE(1127), + [sym_block] = STATE(443), + [sym_expression_list] = STATE(1522), + [sym_pattern] = STATE(1017), + [sym_tuple_pattern] = STATE(1001), + [sym_list_pattern] = STATE(1001), + [sym_list_splat_pattern] = STATE(1001), + [sym_expression] = STATE(1176), + [sym_primary_expression] = STATE(765), + [sym_not_operator] = STATE(1156), + [sym_boolean_operator] = STATE(1156), + [sym_binary_operator] = STATE(920), + [sym_unary_operator] = STATE(920), + [sym_comparison_operator] = STATE(1156), + [sym_lambda] = STATE(1156), + [sym_assignment] = STATE(1522), + [sym_augmented_assignment] = STATE(1522), + [sym_pattern_list] = STATE(1026), + [sym_yield] = STATE(1522), + [sym_attribute] = STATE(582), + [sym_subscript] = STATE(582), + [sym_call] = STATE(920), + [sym_list] = STATE(920), + [sym_set] = STATE(920), + [sym_tuple] = STATE(920), + [sym_dictionary] = STATE(920), + [sym_list_comprehension] = STATE(920), + [sym_dictionary_comprehension] = STATE(920), + [sym_set_comprehension] = STATE(920), + [sym_generator_expression] = STATE(920), + [sym_parenthesized_expression] = STATE(920), + [sym_conditional_expression] = STATE(1156), + [sym_concatenated_string] = STATE(920), + [sym_string] = STATE(775), + [sym_concatenated_template_string] = STATE(920), + [sym_template_string] = STATE(769), + [sym_await] = STATE(920), + [aux_sym_module_repeat1] = STATE(64), + [aux_sym_decorated_definition_repeat1] = STATE(1127), [sym_identifier] = ACTIONS(7), - [anon_sym_import] = ACTIONS(9), - [anon_sym_from] = ACTIONS(11), - [anon_sym_LPAREN] = ACTIONS(13), - [anon_sym_STAR] = ACTIONS(15), - [anon_sym_print] = ACTIONS(17), - [anon_sym_assert] = ACTIONS(19), - [anon_sym_return] = ACTIONS(21), - [anon_sym_del] = ACTIONS(23), - [anon_sym_raise] = ACTIONS(25), - [anon_sym_pass] = ACTIONS(27), - [anon_sym_break] = ACTIONS(29), - [anon_sym_continue] = ACTIONS(31), - [anon_sym_if] = ACTIONS(85), - [anon_sym_async] = ACTIONS(87), - [anon_sym_for] = ACTIONS(89), - [anon_sym_while] = ACTIONS(91), - [anon_sym_try] = ACTIONS(93), - [anon_sym_with] = ACTIONS(95), - [anon_sym_match] = ACTIONS(97), - [anon_sym_DASH] = ACTIONS(47), - [anon_sym_PLUS] = ACTIONS(47), - [anon_sym_LBRACK] = ACTIONS(49), - [anon_sym_LBRACE] = ACTIONS(51), - [anon_sym_STAR_STAR] = ACTIONS(53), - [anon_sym_def] = ACTIONS(99), - [anon_sym_global] = ACTIONS(57), - [anon_sym_nonlocal] = ACTIONS(59), - [anon_sym_exec] = ACTIONS(61), - [anon_sym_type] = ACTIONS(63), - [anon_sym_class] = ACTIONS(101), - [anon_sym_AT] = ACTIONS(67), - [anon_sym_not] = ACTIONS(69), - [anon_sym_TILDE] = ACTIONS(47), - [anon_sym_lambda] = ACTIONS(71), - [anon_sym_yield] = ACTIONS(73), - [sym_ellipsis] = ACTIONS(75), - [sym_integer] = ACTIONS(77), - [sym_float] = ACTIONS(75), - [anon_sym_await] = ACTIONS(79), - [sym_true] = ACTIONS(77), - [sym_false] = ACTIONS(77), - [sym_none] = ACTIONS(77), + [anon_sym_lazy] = ACTIONS(9), + [anon_sym_import] = ACTIONS(11), + [anon_sym_from] = ACTIONS(13), + [anon_sym_LPAREN] = ACTIONS(15), + [anon_sym_STAR] = ACTIONS(17), + [anon_sym_print] = ACTIONS(19), + [anon_sym_assert] = ACTIONS(21), + [anon_sym_return] = ACTIONS(23), + [anon_sym_del] = ACTIONS(25), + [anon_sym_raise] = ACTIONS(27), + [anon_sym_pass] = ACTIONS(29), + [anon_sym_break] = ACTIONS(31), + [anon_sym_continue] = ACTIONS(33), + [anon_sym_if] = ACTIONS(87), + [anon_sym_async] = ACTIONS(89), + [anon_sym_for] = ACTIONS(91), + [anon_sym_while] = ACTIONS(93), + [anon_sym_try] = ACTIONS(95), + [anon_sym_with] = ACTIONS(97), + [anon_sym_match] = ACTIONS(99), + [anon_sym_DASH] = ACTIONS(49), + [anon_sym_PLUS] = ACTIONS(49), + [anon_sym_LBRACK] = ACTIONS(51), + [anon_sym_LBRACE] = ACTIONS(53), + [anon_sym_STAR_STAR] = ACTIONS(55), + [anon_sym_def] = ACTIONS(101), + [anon_sym_global] = ACTIONS(59), + [anon_sym_nonlocal] = ACTIONS(61), + [anon_sym_exec] = ACTIONS(63), + [anon_sym_type] = ACTIONS(65), + [anon_sym_class] = ACTIONS(103), + [anon_sym_AT] = ACTIONS(69), + [anon_sym_not] = ACTIONS(71), + [anon_sym_TILDE] = ACTIONS(49), + [anon_sym_lambda] = ACTIONS(73), + [anon_sym_yield] = ACTIONS(75), + [sym_ellipsis] = ACTIONS(77), + [sym_integer] = ACTIONS(79), + [sym_float] = ACTIONS(77), + [anon_sym_await] = ACTIONS(81), + [sym_true] = ACTIONS(79), + [sym_false] = ACTIONS(79), + [sym_none] = ACTIONS(79), [sym_comment] = ACTIONS(3), - [sym__dedent] = ACTIONS(103), - [sym__string_start] = ACTIONS(81), - [sym__template_string_start] = ACTIONS(83), + [sym__dedent] = ACTIONS(105), + [sym__string_start] = ACTIONS(83), + [sym__template_string_start] = ACTIONS(85), }, [STATE(58)] = { - [sym__statement] = STATE(65), - [sym__simple_statements] = STATE(65), - [sym_import_statement] = STATE(1332), - [sym_future_import_statement] = STATE(1332), - [sym_import_from_statement] = STATE(1332), - [sym_print_statement] = STATE(1332), - [sym_assert_statement] = STATE(1332), - [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1158), - [sym_return_statement] = STATE(1332), - [sym_delete_statement] = STATE(1332), - [sym_raise_statement] = STATE(1332), - [sym_pass_statement] = STATE(1332), - [sym_break_statement] = STATE(1332), - [sym_continue_statement] = STATE(1332), - [sym_if_statement] = STATE(65), - [sym_for_statement] = STATE(65), - [sym_while_statement] = STATE(65), - [sym_try_statement] = STATE(65), - [sym_with_statement] = STATE(65), - [sym_match_statement] = STATE(65), - [sym_function_definition] = STATE(65), - [sym_list_splat] = STATE(1549), - [sym_dictionary_splat] = STATE(1549), - [sym_global_statement] = STATE(1332), - [sym_nonlocal_statement] = STATE(1332), - [sym_exec_statement] = STATE(1332), - [sym_type_alias_statement] = STATE(1332), - [sym_class_definition] = STATE(65), - [sym_decorated_definition] = STATE(65), - [sym_decorator] = STATE(1113), - [sym_block] = STATE(447), - [sym_expression_list] = STATE(1551), - [sym_pattern] = STATE(1013), - [sym_tuple_pattern] = STATE(999), - [sym_list_pattern] = STATE(999), - [sym_list_splat_pattern] = STATE(999), - [sym_expression] = STATE(1185), - [sym_primary_expression] = STATE(779), - [sym_not_operator] = STATE(1158), - [sym_boolean_operator] = STATE(1158), - [sym_binary_operator] = STATE(908), - [sym_unary_operator] = STATE(908), - [sym_comparison_operator] = STATE(1158), - [sym_lambda] = STATE(1158), - [sym_assignment] = STATE(1551), - [sym_augmented_assignment] = STATE(1551), - [sym_pattern_list] = STATE(1024), - [sym_yield] = STATE(1551), - [sym_attribute] = STATE(494), - [sym_subscript] = STATE(494), - [sym_call] = STATE(908), - [sym_list] = STATE(908), - [sym_set] = STATE(908), - [sym_tuple] = STATE(908), - [sym_dictionary] = STATE(908), - [sym_list_comprehension] = STATE(908), - [sym_dictionary_comprehension] = STATE(908), - [sym_set_comprehension] = STATE(908), - [sym_generator_expression] = STATE(908), - [sym_parenthesized_expression] = STATE(908), - [sym_conditional_expression] = STATE(1158), - [sym_concatenated_string] = STATE(908), - [sym_string] = STATE(782), - [sym_concatenated_template_string] = STATE(908), - [sym_template_string] = STATE(763), - [sym_await] = STATE(908), - [aux_sym_module_repeat1] = STATE(65), - [aux_sym_decorated_definition_repeat1] = STATE(1113), - [sym_identifier] = ACTIONS(7), - [anon_sym_import] = ACTIONS(9), - [anon_sym_from] = ACTIONS(11), - [anon_sym_LPAREN] = ACTIONS(13), - [anon_sym_STAR] = ACTIONS(15), - [anon_sym_print] = ACTIONS(17), - [anon_sym_assert] = ACTIONS(19), - [anon_sym_return] = ACTIONS(21), - [anon_sym_del] = ACTIONS(23), - [anon_sym_raise] = ACTIONS(25), - [anon_sym_pass] = ACTIONS(27), - [anon_sym_break] = ACTIONS(29), - [anon_sym_continue] = ACTIONS(31), - [anon_sym_if] = ACTIONS(85), - [anon_sym_async] = ACTIONS(87), - [anon_sym_for] = ACTIONS(89), - [anon_sym_while] = ACTIONS(91), - [anon_sym_try] = ACTIONS(93), - [anon_sym_with] = ACTIONS(95), - [anon_sym_match] = ACTIONS(97), - [anon_sym_DASH] = ACTIONS(47), - [anon_sym_PLUS] = ACTIONS(47), - [anon_sym_LBRACK] = ACTIONS(49), - [anon_sym_LBRACE] = ACTIONS(51), - [anon_sym_STAR_STAR] = ACTIONS(53), - [anon_sym_def] = ACTIONS(99), - [anon_sym_global] = ACTIONS(57), - [anon_sym_nonlocal] = ACTIONS(59), - [anon_sym_exec] = ACTIONS(61), - [anon_sym_type] = ACTIONS(63), - [anon_sym_class] = ACTIONS(101), - [anon_sym_AT] = ACTIONS(67), - [anon_sym_not] = ACTIONS(69), - [anon_sym_TILDE] = ACTIONS(47), - [anon_sym_lambda] = ACTIONS(71), - [anon_sym_yield] = ACTIONS(73), - [sym_ellipsis] = ACTIONS(75), - [sym_integer] = ACTIONS(77), - [sym_float] = ACTIONS(75), - [anon_sym_await] = ACTIONS(79), - [sym_true] = ACTIONS(77), - [sym_false] = ACTIONS(77), - [sym_none] = ACTIONS(77), - [sym_comment] = ACTIONS(3), - [sym__dedent] = ACTIONS(103), - [sym__string_start] = ACTIONS(81), - [sym__template_string_start] = ACTIONS(83), - }, - [STATE(59)] = { - [sym__statement] = STATE(63), - [sym__simple_statements] = STATE(63), + [sym__statement] = STATE(60), + [sym__simple_statements] = STATE(60), [sym_import_statement] = STATE(1332), [sym_future_import_statement] = STATE(1332), [sym_import_from_statement] = STATE(1332), [sym_print_statement] = STATE(1332), [sym_assert_statement] = STATE(1332), [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1158), + [sym_named_expression] = STATE(1156), [sym_return_statement] = STATE(1332), [sym_delete_statement] = STATE(1332), [sym_raise_statement] = STATE(1332), [sym_pass_statement] = STATE(1332), [sym_break_statement] = STATE(1332), [sym_continue_statement] = STATE(1332), - [sym_if_statement] = STATE(63), - [sym_for_statement] = STATE(63), - [sym_while_statement] = STATE(63), - [sym_try_statement] = STATE(63), - [sym_with_statement] = STATE(63), - [sym_match_statement] = STATE(63), - [sym_function_definition] = STATE(63), - [sym_list_splat] = STATE(1549), - [sym_dictionary_splat] = STATE(1549), - [sym_global_statement] = STATE(1332), - [sym_nonlocal_statement] = STATE(1332), - [sym_exec_statement] = STATE(1332), - [sym_type_alias_statement] = STATE(1332), - [sym_class_definition] = STATE(63), - [sym_decorated_definition] = STATE(63), - [sym_decorator] = STATE(1113), - [sym_block] = STATE(549), - [sym_expression_list] = STATE(1551), - [sym_pattern] = STATE(1013), - [sym_tuple_pattern] = STATE(999), - [sym_list_pattern] = STATE(999), - [sym_list_splat_pattern] = STATE(999), - [sym_expression] = STATE(1185), - [sym_primary_expression] = STATE(779), - [sym_not_operator] = STATE(1158), - [sym_boolean_operator] = STATE(1158), - [sym_binary_operator] = STATE(908), - [sym_unary_operator] = STATE(908), - [sym_comparison_operator] = STATE(1158), - [sym_lambda] = STATE(1158), - [sym_assignment] = STATE(1551), - [sym_augmented_assignment] = STATE(1551), - [sym_pattern_list] = STATE(1024), - [sym_yield] = STATE(1551), - [sym_attribute] = STATE(494), - [sym_subscript] = STATE(494), - [sym_call] = STATE(908), - [sym_list] = STATE(908), - [sym_set] = STATE(908), - [sym_tuple] = STATE(908), - [sym_dictionary] = STATE(908), - [sym_list_comprehension] = STATE(908), - [sym_dictionary_comprehension] = STATE(908), - [sym_set_comprehension] = STATE(908), - [sym_generator_expression] = STATE(908), - [sym_parenthesized_expression] = STATE(908), - [sym_conditional_expression] = STATE(1158), - [sym_concatenated_string] = STATE(908), - [sym_string] = STATE(782), - [sym_concatenated_template_string] = STATE(908), - [sym_template_string] = STATE(763), - [sym_await] = STATE(908), - [aux_sym_module_repeat1] = STATE(63), - [aux_sym_decorated_definition_repeat1] = STATE(1113), - [sym_identifier] = ACTIONS(7), - [anon_sym_import] = ACTIONS(9), - [anon_sym_from] = ACTIONS(11), - [anon_sym_LPAREN] = ACTIONS(13), - [anon_sym_STAR] = ACTIONS(15), - [anon_sym_print] = ACTIONS(17), - [anon_sym_assert] = ACTIONS(19), - [anon_sym_return] = ACTIONS(21), - [anon_sym_del] = ACTIONS(23), - [anon_sym_raise] = ACTIONS(25), - [anon_sym_pass] = ACTIONS(27), - [anon_sym_break] = ACTIONS(29), - [anon_sym_continue] = ACTIONS(31), - [anon_sym_if] = ACTIONS(85), - [anon_sym_async] = ACTIONS(87), - [anon_sym_for] = ACTIONS(89), - [anon_sym_while] = ACTIONS(91), - [anon_sym_try] = ACTIONS(93), - [anon_sym_with] = ACTIONS(95), - [anon_sym_match] = ACTIONS(97), - [anon_sym_DASH] = ACTIONS(47), - [anon_sym_PLUS] = ACTIONS(47), - [anon_sym_LBRACK] = ACTIONS(49), - [anon_sym_LBRACE] = ACTIONS(51), - [anon_sym_STAR_STAR] = ACTIONS(53), - [anon_sym_def] = ACTIONS(99), - [anon_sym_global] = ACTIONS(57), - [anon_sym_nonlocal] = ACTIONS(59), - [anon_sym_exec] = ACTIONS(61), - [anon_sym_type] = ACTIONS(63), - [anon_sym_class] = ACTIONS(101), - [anon_sym_AT] = ACTIONS(67), - [anon_sym_not] = ACTIONS(69), - [anon_sym_TILDE] = ACTIONS(47), - [anon_sym_lambda] = ACTIONS(71), - [anon_sym_yield] = ACTIONS(73), - [sym_ellipsis] = ACTIONS(75), - [sym_integer] = ACTIONS(77), - [sym_float] = ACTIONS(75), - [anon_sym_await] = ACTIONS(79), - [sym_true] = ACTIONS(77), - [sym_false] = ACTIONS(77), - [sym_none] = ACTIONS(77), - [sym_comment] = ACTIONS(3), - [sym__dedent] = ACTIONS(107), - [sym__string_start] = ACTIONS(81), - [sym__template_string_start] = ACTIONS(83), - }, - [STATE(60)] = { - [sym__statement] = STATE(60), - [sym__simple_statements] = STATE(60), - [sym_import_statement] = STATE(1348), - [sym_future_import_statement] = STATE(1348), - [sym_import_from_statement] = STATE(1348), - [sym_print_statement] = STATE(1348), - [sym_assert_statement] = STATE(1348), - [sym_expression_statement] = STATE(1348), - [sym_named_expression] = STATE(1158), - [sym_return_statement] = STATE(1348), - [sym_delete_statement] = STATE(1348), - [sym_raise_statement] = STATE(1348), - [sym_pass_statement] = STATE(1348), - [sym_break_statement] = STATE(1348), - [sym_continue_statement] = STATE(1348), [sym_if_statement] = STATE(60), [sym_for_statement] = STATE(60), [sym_while_statement] = STATE(60), @@ -15220,101 +15098,103 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_with_statement] = STATE(60), [sym_match_statement] = STATE(60), [sym_function_definition] = STATE(60), - [sym_list_splat] = STATE(1549), - [sym_dictionary_splat] = STATE(1549), - [sym_global_statement] = STATE(1348), - [sym_nonlocal_statement] = STATE(1348), - [sym_exec_statement] = STATE(1348), - [sym_type_alias_statement] = STATE(1348), + [sym_list_splat] = STATE(1520), + [sym_dictionary_splat] = STATE(1520), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), [sym_class_definition] = STATE(60), [sym_decorated_definition] = STATE(60), - [sym_decorator] = STATE(1118), - [sym_expression_list] = STATE(1551), - [sym_pattern] = STATE(1013), - [sym_tuple_pattern] = STATE(999), - [sym_list_pattern] = STATE(999), - [sym_list_splat_pattern] = STATE(999), - [sym_expression] = STATE(1185), - [sym_primary_expression] = STATE(779), - [sym_not_operator] = STATE(1158), - [sym_boolean_operator] = STATE(1158), - [sym_binary_operator] = STATE(908), - [sym_unary_operator] = STATE(908), - [sym_comparison_operator] = STATE(1158), - [sym_lambda] = STATE(1158), - [sym_assignment] = STATE(1551), - [sym_augmented_assignment] = STATE(1551), - [sym_pattern_list] = STATE(1024), - [sym_yield] = STATE(1551), - [sym_attribute] = STATE(494), - [sym_subscript] = STATE(494), - [sym_call] = STATE(908), - [sym_list] = STATE(908), - [sym_set] = STATE(908), - [sym_tuple] = STATE(908), - [sym_dictionary] = STATE(908), - [sym_list_comprehension] = STATE(908), - [sym_dictionary_comprehension] = STATE(908), - [sym_set_comprehension] = STATE(908), - [sym_generator_expression] = STATE(908), - [sym_parenthesized_expression] = STATE(908), - [sym_conditional_expression] = STATE(1158), - [sym_concatenated_string] = STATE(908), - [sym_string] = STATE(782), - [sym_concatenated_template_string] = STATE(908), - [sym_template_string] = STATE(763), - [sym_await] = STATE(908), + [sym_decorator] = STATE(1127), + [sym_block] = STATE(1175), + [sym_expression_list] = STATE(1522), + [sym_pattern] = STATE(1017), + [sym_tuple_pattern] = STATE(1001), + [sym_list_pattern] = STATE(1001), + [sym_list_splat_pattern] = STATE(1001), + [sym_expression] = STATE(1176), + [sym_primary_expression] = STATE(765), + [sym_not_operator] = STATE(1156), + [sym_boolean_operator] = STATE(1156), + [sym_binary_operator] = STATE(920), + [sym_unary_operator] = STATE(920), + [sym_comparison_operator] = STATE(1156), + [sym_lambda] = STATE(1156), + [sym_assignment] = STATE(1522), + [sym_augmented_assignment] = STATE(1522), + [sym_pattern_list] = STATE(1026), + [sym_yield] = STATE(1522), + [sym_attribute] = STATE(582), + [sym_subscript] = STATE(582), + [sym_call] = STATE(920), + [sym_list] = STATE(920), + [sym_set] = STATE(920), + [sym_tuple] = STATE(920), + [sym_dictionary] = STATE(920), + [sym_list_comprehension] = STATE(920), + [sym_dictionary_comprehension] = STATE(920), + [sym_set_comprehension] = STATE(920), + [sym_generator_expression] = STATE(920), + [sym_parenthesized_expression] = STATE(920), + [sym_conditional_expression] = STATE(1156), + [sym_concatenated_string] = STATE(920), + [sym_string] = STATE(775), + [sym_concatenated_template_string] = STATE(920), + [sym_template_string] = STATE(769), + [sym_await] = STATE(920), [aux_sym_module_repeat1] = STATE(60), - [aux_sym_decorated_definition_repeat1] = STATE(1118), - [ts_builtin_sym_end] = ACTIONS(109), - [sym_identifier] = ACTIONS(111), - [anon_sym_import] = ACTIONS(114), - [anon_sym_from] = ACTIONS(117), - [anon_sym_LPAREN] = ACTIONS(120), - [anon_sym_STAR] = ACTIONS(123), - [anon_sym_print] = ACTIONS(126), - [anon_sym_assert] = ACTIONS(129), - [anon_sym_return] = ACTIONS(132), - [anon_sym_del] = ACTIONS(135), - [anon_sym_raise] = ACTIONS(138), - [anon_sym_pass] = ACTIONS(141), - [anon_sym_break] = ACTIONS(144), - [anon_sym_continue] = ACTIONS(147), - [anon_sym_if] = ACTIONS(150), - [anon_sym_async] = ACTIONS(153), - [anon_sym_for] = ACTIONS(156), - [anon_sym_while] = ACTIONS(159), - [anon_sym_try] = ACTIONS(162), - [anon_sym_with] = ACTIONS(165), - [anon_sym_match] = ACTIONS(168), - [anon_sym_DASH] = ACTIONS(171), - [anon_sym_PLUS] = ACTIONS(171), - [anon_sym_LBRACK] = ACTIONS(174), - [anon_sym_LBRACE] = ACTIONS(177), - [anon_sym_STAR_STAR] = ACTIONS(180), - [anon_sym_def] = ACTIONS(183), - [anon_sym_global] = ACTIONS(186), - [anon_sym_nonlocal] = ACTIONS(189), - [anon_sym_exec] = ACTIONS(192), - [anon_sym_type] = ACTIONS(195), - [anon_sym_class] = ACTIONS(198), - [anon_sym_AT] = ACTIONS(201), - [anon_sym_not] = ACTIONS(204), - [anon_sym_TILDE] = ACTIONS(171), - [anon_sym_lambda] = ACTIONS(207), - [anon_sym_yield] = ACTIONS(210), - [sym_ellipsis] = ACTIONS(213), - [sym_integer] = ACTIONS(216), - [sym_float] = ACTIONS(213), - [anon_sym_await] = ACTIONS(219), - [sym_true] = ACTIONS(216), - [sym_false] = ACTIONS(216), - [sym_none] = ACTIONS(216), + [aux_sym_decorated_definition_repeat1] = STATE(1127), + [sym_identifier] = ACTIONS(7), + [anon_sym_lazy] = ACTIONS(9), + [anon_sym_import] = ACTIONS(11), + [anon_sym_from] = ACTIONS(13), + [anon_sym_LPAREN] = ACTIONS(15), + [anon_sym_STAR] = ACTIONS(17), + [anon_sym_print] = ACTIONS(19), + [anon_sym_assert] = ACTIONS(21), + [anon_sym_return] = ACTIONS(23), + [anon_sym_del] = ACTIONS(25), + [anon_sym_raise] = ACTIONS(27), + [anon_sym_pass] = ACTIONS(29), + [anon_sym_break] = ACTIONS(31), + [anon_sym_continue] = ACTIONS(33), + [anon_sym_if] = ACTIONS(87), + [anon_sym_async] = ACTIONS(89), + [anon_sym_for] = ACTIONS(91), + [anon_sym_while] = ACTIONS(93), + [anon_sym_try] = ACTIONS(95), + [anon_sym_with] = ACTIONS(97), + [anon_sym_match] = ACTIONS(99), + [anon_sym_DASH] = ACTIONS(49), + [anon_sym_PLUS] = ACTIONS(49), + [anon_sym_LBRACK] = ACTIONS(51), + [anon_sym_LBRACE] = ACTIONS(53), + [anon_sym_STAR_STAR] = ACTIONS(55), + [anon_sym_def] = ACTIONS(101), + [anon_sym_global] = ACTIONS(59), + [anon_sym_nonlocal] = ACTIONS(61), + [anon_sym_exec] = ACTIONS(63), + [anon_sym_type] = ACTIONS(65), + [anon_sym_class] = ACTIONS(103), + [anon_sym_AT] = ACTIONS(69), + [anon_sym_not] = ACTIONS(71), + [anon_sym_TILDE] = ACTIONS(49), + [anon_sym_lambda] = ACTIONS(73), + [anon_sym_yield] = ACTIONS(75), + [sym_ellipsis] = ACTIONS(77), + [sym_integer] = ACTIONS(79), + [sym_float] = ACTIONS(77), + [anon_sym_await] = ACTIONS(81), + [sym_true] = ACTIONS(79), + [sym_false] = ACTIONS(79), + [sym_none] = ACTIONS(79), [sym_comment] = ACTIONS(3), - [sym__string_start] = ACTIONS(222), - [sym__template_string_start] = ACTIONS(225), + [sym__dedent] = ACTIONS(107), + [sym__string_start] = ACTIONS(83), + [sym__template_string_start] = ACTIONS(85), }, - [STATE(61)] = { + [STATE(59)] = { [sym__statement] = STATE(64), [sym__simple_statements] = STATE(64), [sym_import_statement] = STATE(1332), @@ -15323,7 +15203,7 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_print_statement] = STATE(1332), [sym_assert_statement] = STATE(1332), [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1158), + [sym_named_expression] = STATE(1156), [sym_return_statement] = STATE(1332), [sym_delete_statement] = STATE(1332), [sym_raise_statement] = STATE(1332), @@ -15337,8875 +15217,9214 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_with_statement] = STATE(64), [sym_match_statement] = STATE(64), [sym_function_definition] = STATE(64), - [sym_list_splat] = STATE(1549), - [sym_dictionary_splat] = STATE(1549), + [sym_list_splat] = STATE(1520), + [sym_dictionary_splat] = STATE(1520), [sym_global_statement] = STATE(1332), [sym_nonlocal_statement] = STATE(1332), [sym_exec_statement] = STATE(1332), [sym_type_alias_statement] = STATE(1332), [sym_class_definition] = STATE(64), [sym_decorated_definition] = STATE(64), - [sym_decorator] = STATE(1113), - [sym_expression_list] = STATE(1551), - [sym_pattern] = STATE(1013), - [sym_tuple_pattern] = STATE(999), - [sym_list_pattern] = STATE(999), - [sym_list_splat_pattern] = STATE(999), - [sym_expression] = STATE(1185), - [sym_primary_expression] = STATE(779), - [sym_not_operator] = STATE(1158), - [sym_boolean_operator] = STATE(1158), - [sym_binary_operator] = STATE(908), - [sym_unary_operator] = STATE(908), - [sym_comparison_operator] = STATE(1158), - [sym_lambda] = STATE(1158), - [sym_assignment] = STATE(1551), - [sym_augmented_assignment] = STATE(1551), - [sym_pattern_list] = STATE(1024), - [sym_yield] = STATE(1551), - [sym_attribute] = STATE(494), - [sym_subscript] = STATE(494), - [sym_call] = STATE(908), - [sym_list] = STATE(908), - [sym_set] = STATE(908), - [sym_tuple] = STATE(908), - [sym_dictionary] = STATE(908), - [sym_list_comprehension] = STATE(908), - [sym_dictionary_comprehension] = STATE(908), - [sym_set_comprehension] = STATE(908), - [sym_generator_expression] = STATE(908), - [sym_parenthesized_expression] = STATE(908), - [sym_conditional_expression] = STATE(1158), - [sym_concatenated_string] = STATE(908), - [sym_string] = STATE(782), - [sym_concatenated_template_string] = STATE(908), - [sym_template_string] = STATE(763), - [sym_await] = STATE(908), + [sym_decorator] = STATE(1127), + [sym_block] = STATE(522), + [sym_expression_list] = STATE(1522), + [sym_pattern] = STATE(1017), + [sym_tuple_pattern] = STATE(1001), + [sym_list_pattern] = STATE(1001), + [sym_list_splat_pattern] = STATE(1001), + [sym_expression] = STATE(1176), + [sym_primary_expression] = STATE(765), + [sym_not_operator] = STATE(1156), + [sym_boolean_operator] = STATE(1156), + [sym_binary_operator] = STATE(920), + [sym_unary_operator] = STATE(920), + [sym_comparison_operator] = STATE(1156), + [sym_lambda] = STATE(1156), + [sym_assignment] = STATE(1522), + [sym_augmented_assignment] = STATE(1522), + [sym_pattern_list] = STATE(1026), + [sym_yield] = STATE(1522), + [sym_attribute] = STATE(582), + [sym_subscript] = STATE(582), + [sym_call] = STATE(920), + [sym_list] = STATE(920), + [sym_set] = STATE(920), + [sym_tuple] = STATE(920), + [sym_dictionary] = STATE(920), + [sym_list_comprehension] = STATE(920), + [sym_dictionary_comprehension] = STATE(920), + [sym_set_comprehension] = STATE(920), + [sym_generator_expression] = STATE(920), + [sym_parenthesized_expression] = STATE(920), + [sym_conditional_expression] = STATE(1156), + [sym_concatenated_string] = STATE(920), + [sym_string] = STATE(775), + [sym_concatenated_template_string] = STATE(920), + [sym_template_string] = STATE(769), + [sym_await] = STATE(920), [aux_sym_module_repeat1] = STATE(64), - [aux_sym_decorated_definition_repeat1] = STATE(1113), - [sym_identifier] = ACTIONS(7), - [anon_sym_import] = ACTIONS(9), - [anon_sym_from] = ACTIONS(11), - [anon_sym_LPAREN] = ACTIONS(13), - [anon_sym_STAR] = ACTIONS(15), - [anon_sym_print] = ACTIONS(17), - [anon_sym_assert] = ACTIONS(19), - [anon_sym_return] = ACTIONS(21), - [anon_sym_del] = ACTIONS(23), - [anon_sym_raise] = ACTIONS(25), - [anon_sym_pass] = ACTIONS(27), - [anon_sym_break] = ACTIONS(29), - [anon_sym_continue] = ACTIONS(31), - [anon_sym_if] = ACTIONS(85), - [anon_sym_async] = ACTIONS(87), - [anon_sym_for] = ACTIONS(89), - [anon_sym_while] = ACTIONS(91), - [anon_sym_try] = ACTIONS(93), - [anon_sym_with] = ACTIONS(95), - [anon_sym_match] = ACTIONS(97), - [anon_sym_DASH] = ACTIONS(47), - [anon_sym_PLUS] = ACTIONS(47), - [anon_sym_LBRACK] = ACTIONS(49), - [anon_sym_LBRACE] = ACTIONS(51), - [anon_sym_STAR_STAR] = ACTIONS(53), - [anon_sym_def] = ACTIONS(99), - [anon_sym_global] = ACTIONS(57), - [anon_sym_nonlocal] = ACTIONS(59), - [anon_sym_exec] = ACTIONS(61), - [anon_sym_type] = ACTIONS(63), - [anon_sym_class] = ACTIONS(101), - [anon_sym_AT] = ACTIONS(67), - [anon_sym_not] = ACTIONS(69), - [anon_sym_TILDE] = ACTIONS(47), - [anon_sym_lambda] = ACTIONS(71), - [anon_sym_yield] = ACTIONS(73), - [sym_ellipsis] = ACTIONS(75), - [sym_integer] = ACTIONS(77), - [sym_float] = ACTIONS(75), - [anon_sym_await] = ACTIONS(79), - [sym_true] = ACTIONS(77), - [sym_false] = ACTIONS(77), - [sym_none] = ACTIONS(77), - [sym_comment] = ACTIONS(3), - [sym__dedent] = ACTIONS(228), - [sym__string_start] = ACTIONS(81), - [sym__template_string_start] = ACTIONS(83), - }, - [STATE(62)] = { - [sym__statement] = STATE(60), - [sym__simple_statements] = STATE(60), - [sym_import_statement] = STATE(1348), - [sym_future_import_statement] = STATE(1348), - [sym_import_from_statement] = STATE(1348), - [sym_print_statement] = STATE(1348), - [sym_assert_statement] = STATE(1348), - [sym_expression_statement] = STATE(1348), - [sym_named_expression] = STATE(1158), - [sym_return_statement] = STATE(1348), - [sym_delete_statement] = STATE(1348), - [sym_raise_statement] = STATE(1348), - [sym_pass_statement] = STATE(1348), - [sym_break_statement] = STATE(1348), - [sym_continue_statement] = STATE(1348), - [sym_if_statement] = STATE(60), - [sym_for_statement] = STATE(60), - [sym_while_statement] = STATE(60), - [sym_try_statement] = STATE(60), - [sym_with_statement] = STATE(60), - [sym_match_statement] = STATE(60), - [sym_function_definition] = STATE(60), - [sym_list_splat] = STATE(1549), - [sym_dictionary_splat] = STATE(1549), - [sym_global_statement] = STATE(1348), - [sym_nonlocal_statement] = STATE(1348), - [sym_exec_statement] = STATE(1348), - [sym_type_alias_statement] = STATE(1348), - [sym_class_definition] = STATE(60), - [sym_decorated_definition] = STATE(60), - [sym_decorator] = STATE(1118), - [sym_expression_list] = STATE(1551), - [sym_pattern] = STATE(1013), - [sym_tuple_pattern] = STATE(999), - [sym_list_pattern] = STATE(999), - [sym_list_splat_pattern] = STATE(999), - [sym_expression] = STATE(1185), - [sym_primary_expression] = STATE(779), - [sym_not_operator] = STATE(1158), - [sym_boolean_operator] = STATE(1158), - [sym_binary_operator] = STATE(908), - [sym_unary_operator] = STATE(908), - [sym_comparison_operator] = STATE(1158), - [sym_lambda] = STATE(1158), - [sym_assignment] = STATE(1551), - [sym_augmented_assignment] = STATE(1551), - [sym_pattern_list] = STATE(1024), - [sym_yield] = STATE(1551), - [sym_attribute] = STATE(494), - [sym_subscript] = STATE(494), - [sym_call] = STATE(908), - [sym_list] = STATE(908), - [sym_set] = STATE(908), - [sym_tuple] = STATE(908), - [sym_dictionary] = STATE(908), - [sym_list_comprehension] = STATE(908), - [sym_dictionary_comprehension] = STATE(908), - [sym_set_comprehension] = STATE(908), - [sym_generator_expression] = STATE(908), - [sym_parenthesized_expression] = STATE(908), - [sym_conditional_expression] = STATE(1158), - [sym_concatenated_string] = STATE(908), - [sym_string] = STATE(782), - [sym_concatenated_template_string] = STATE(908), - [sym_template_string] = STATE(763), - [sym_await] = STATE(908), - [aux_sym_module_repeat1] = STATE(60), - [aux_sym_decorated_definition_repeat1] = STATE(1118), - [ts_builtin_sym_end] = ACTIONS(230), + [aux_sym_decorated_definition_repeat1] = STATE(1127), [sym_identifier] = ACTIONS(7), - [anon_sym_import] = ACTIONS(9), - [anon_sym_from] = ACTIONS(11), - [anon_sym_LPAREN] = ACTIONS(13), - [anon_sym_STAR] = ACTIONS(15), - [anon_sym_print] = ACTIONS(17), - [anon_sym_assert] = ACTIONS(19), - [anon_sym_return] = ACTIONS(21), - [anon_sym_del] = ACTIONS(23), - [anon_sym_raise] = ACTIONS(25), - [anon_sym_pass] = ACTIONS(27), - [anon_sym_break] = ACTIONS(29), - [anon_sym_continue] = ACTIONS(31), - [anon_sym_if] = ACTIONS(33), - [anon_sym_async] = ACTIONS(35), - [anon_sym_for] = ACTIONS(37), - [anon_sym_while] = ACTIONS(39), - [anon_sym_try] = ACTIONS(41), - [anon_sym_with] = ACTIONS(43), - [anon_sym_match] = ACTIONS(45), - [anon_sym_DASH] = ACTIONS(47), - [anon_sym_PLUS] = ACTIONS(47), - [anon_sym_LBRACK] = ACTIONS(49), - [anon_sym_LBRACE] = ACTIONS(51), - [anon_sym_STAR_STAR] = ACTIONS(53), - [anon_sym_def] = ACTIONS(55), - [anon_sym_global] = ACTIONS(57), - [anon_sym_nonlocal] = ACTIONS(59), - [anon_sym_exec] = ACTIONS(61), - [anon_sym_type] = ACTIONS(63), - [anon_sym_class] = ACTIONS(65), - [anon_sym_AT] = ACTIONS(67), - [anon_sym_not] = ACTIONS(69), - [anon_sym_TILDE] = ACTIONS(47), - [anon_sym_lambda] = ACTIONS(71), - [anon_sym_yield] = ACTIONS(73), - [sym_ellipsis] = ACTIONS(75), - [sym_integer] = ACTIONS(77), - [sym_float] = ACTIONS(75), - [anon_sym_await] = ACTIONS(79), - [sym_true] = ACTIONS(77), - [sym_false] = ACTIONS(77), - [sym_none] = ACTIONS(77), + [anon_sym_lazy] = ACTIONS(9), + [anon_sym_import] = ACTIONS(11), + [anon_sym_from] = ACTIONS(13), + [anon_sym_LPAREN] = ACTIONS(15), + [anon_sym_STAR] = ACTIONS(17), + [anon_sym_print] = ACTIONS(19), + [anon_sym_assert] = ACTIONS(21), + [anon_sym_return] = ACTIONS(23), + [anon_sym_del] = ACTIONS(25), + [anon_sym_raise] = ACTIONS(27), + [anon_sym_pass] = ACTIONS(29), + [anon_sym_break] = ACTIONS(31), + [anon_sym_continue] = ACTIONS(33), + [anon_sym_if] = ACTIONS(87), + [anon_sym_async] = ACTIONS(89), + [anon_sym_for] = ACTIONS(91), + [anon_sym_while] = ACTIONS(93), + [anon_sym_try] = ACTIONS(95), + [anon_sym_with] = ACTIONS(97), + [anon_sym_match] = ACTIONS(99), + [anon_sym_DASH] = ACTIONS(49), + [anon_sym_PLUS] = ACTIONS(49), + [anon_sym_LBRACK] = ACTIONS(51), + [anon_sym_LBRACE] = ACTIONS(53), + [anon_sym_STAR_STAR] = ACTIONS(55), + [anon_sym_def] = ACTIONS(101), + [anon_sym_global] = ACTIONS(59), + [anon_sym_nonlocal] = ACTIONS(61), + [anon_sym_exec] = ACTIONS(63), + [anon_sym_type] = ACTIONS(65), + [anon_sym_class] = ACTIONS(103), + [anon_sym_AT] = ACTIONS(69), + [anon_sym_not] = ACTIONS(71), + [anon_sym_TILDE] = ACTIONS(49), + [anon_sym_lambda] = ACTIONS(73), + [anon_sym_yield] = ACTIONS(75), + [sym_ellipsis] = ACTIONS(77), + [sym_integer] = ACTIONS(79), + [sym_float] = ACTIONS(77), + [anon_sym_await] = ACTIONS(81), + [sym_true] = ACTIONS(79), + [sym_false] = ACTIONS(79), + [sym_none] = ACTIONS(79), [sym_comment] = ACTIONS(3), - [sym__string_start] = ACTIONS(81), - [sym__template_string_start] = ACTIONS(83), + [sym__dedent] = ACTIONS(105), + [sym__string_start] = ACTIONS(83), + [sym__template_string_start] = ACTIONS(85), }, - [STATE(63)] = { - [sym__statement] = STATE(64), - [sym__simple_statements] = STATE(64), + [STATE(60)] = { + [sym__statement] = STATE(63), + [sym__simple_statements] = STATE(63), [sym_import_statement] = STATE(1332), [sym_future_import_statement] = STATE(1332), [sym_import_from_statement] = STATE(1332), [sym_print_statement] = STATE(1332), [sym_assert_statement] = STATE(1332), [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1158), + [sym_named_expression] = STATE(1156), [sym_return_statement] = STATE(1332), [sym_delete_statement] = STATE(1332), [sym_raise_statement] = STATE(1332), [sym_pass_statement] = STATE(1332), [sym_break_statement] = STATE(1332), [sym_continue_statement] = STATE(1332), - [sym_if_statement] = STATE(64), - [sym_for_statement] = STATE(64), - [sym_while_statement] = STATE(64), - [sym_try_statement] = STATE(64), - [sym_with_statement] = STATE(64), - [sym_match_statement] = STATE(64), - [sym_function_definition] = STATE(64), - [sym_list_splat] = STATE(1549), - [sym_dictionary_splat] = STATE(1549), + [sym_if_statement] = STATE(63), + [sym_for_statement] = STATE(63), + [sym_while_statement] = STATE(63), + [sym_try_statement] = STATE(63), + [sym_with_statement] = STATE(63), + [sym_match_statement] = STATE(63), + [sym_function_definition] = STATE(63), + [sym_list_splat] = STATE(1520), + [sym_dictionary_splat] = STATE(1520), [sym_global_statement] = STATE(1332), [sym_nonlocal_statement] = STATE(1332), [sym_exec_statement] = STATE(1332), [sym_type_alias_statement] = STATE(1332), - [sym_class_definition] = STATE(64), - [sym_decorated_definition] = STATE(64), - [sym_decorator] = STATE(1113), - [sym_expression_list] = STATE(1551), - [sym_pattern] = STATE(1013), - [sym_tuple_pattern] = STATE(999), - [sym_list_pattern] = STATE(999), - [sym_list_splat_pattern] = STATE(999), - [sym_expression] = STATE(1185), - [sym_primary_expression] = STATE(779), - [sym_not_operator] = STATE(1158), - [sym_boolean_operator] = STATE(1158), - [sym_binary_operator] = STATE(908), - [sym_unary_operator] = STATE(908), - [sym_comparison_operator] = STATE(1158), - [sym_lambda] = STATE(1158), - [sym_assignment] = STATE(1551), - [sym_augmented_assignment] = STATE(1551), - [sym_pattern_list] = STATE(1024), - [sym_yield] = STATE(1551), - [sym_attribute] = STATE(494), - [sym_subscript] = STATE(494), - [sym_call] = STATE(908), - [sym_list] = STATE(908), - [sym_set] = STATE(908), - [sym_tuple] = STATE(908), - [sym_dictionary] = STATE(908), - [sym_list_comprehension] = STATE(908), - [sym_dictionary_comprehension] = STATE(908), - [sym_set_comprehension] = STATE(908), - [sym_generator_expression] = STATE(908), - [sym_parenthesized_expression] = STATE(908), - [sym_conditional_expression] = STATE(1158), - [sym_concatenated_string] = STATE(908), - [sym_string] = STATE(782), - [sym_concatenated_template_string] = STATE(908), - [sym_template_string] = STATE(763), - [sym_await] = STATE(908), - [aux_sym_module_repeat1] = STATE(64), - [aux_sym_decorated_definition_repeat1] = STATE(1113), + [sym_class_definition] = STATE(63), + [sym_decorated_definition] = STATE(63), + [sym_decorator] = STATE(1127), + [sym_expression_list] = STATE(1522), + [sym_pattern] = STATE(1017), + [sym_tuple_pattern] = STATE(1001), + [sym_list_pattern] = STATE(1001), + [sym_list_splat_pattern] = STATE(1001), + [sym_expression] = STATE(1176), + [sym_primary_expression] = STATE(765), + [sym_not_operator] = STATE(1156), + [sym_boolean_operator] = STATE(1156), + [sym_binary_operator] = STATE(920), + [sym_unary_operator] = STATE(920), + [sym_comparison_operator] = STATE(1156), + [sym_lambda] = STATE(1156), + [sym_assignment] = STATE(1522), + [sym_augmented_assignment] = STATE(1522), + [sym_pattern_list] = STATE(1026), + [sym_yield] = STATE(1522), + [sym_attribute] = STATE(582), + [sym_subscript] = STATE(582), + [sym_call] = STATE(920), + [sym_list] = STATE(920), + [sym_set] = STATE(920), + [sym_tuple] = STATE(920), + [sym_dictionary] = STATE(920), + [sym_list_comprehension] = STATE(920), + [sym_dictionary_comprehension] = STATE(920), + [sym_set_comprehension] = STATE(920), + [sym_generator_expression] = STATE(920), + [sym_parenthesized_expression] = STATE(920), + [sym_conditional_expression] = STATE(1156), + [sym_concatenated_string] = STATE(920), + [sym_string] = STATE(775), + [sym_concatenated_template_string] = STATE(920), + [sym_template_string] = STATE(769), + [sym_await] = STATE(920), + [aux_sym_module_repeat1] = STATE(63), + [aux_sym_decorated_definition_repeat1] = STATE(1127), [sym_identifier] = ACTIONS(7), - [anon_sym_import] = ACTIONS(9), - [anon_sym_from] = ACTIONS(11), - [anon_sym_LPAREN] = ACTIONS(13), - [anon_sym_STAR] = ACTIONS(15), - [anon_sym_print] = ACTIONS(17), - [anon_sym_assert] = ACTIONS(19), - [anon_sym_return] = ACTIONS(21), - [anon_sym_del] = ACTIONS(23), - [anon_sym_raise] = ACTIONS(25), - [anon_sym_pass] = ACTIONS(27), - [anon_sym_break] = ACTIONS(29), - [anon_sym_continue] = ACTIONS(31), - [anon_sym_if] = ACTIONS(85), - [anon_sym_async] = ACTIONS(87), - [anon_sym_for] = ACTIONS(89), - [anon_sym_while] = ACTIONS(91), - [anon_sym_try] = ACTIONS(93), - [anon_sym_with] = ACTIONS(95), - [anon_sym_match] = ACTIONS(97), - [anon_sym_DASH] = ACTIONS(47), - [anon_sym_PLUS] = ACTIONS(47), - [anon_sym_LBRACK] = ACTIONS(49), - [anon_sym_LBRACE] = ACTIONS(51), - [anon_sym_STAR_STAR] = ACTIONS(53), - [anon_sym_def] = ACTIONS(99), - [anon_sym_global] = ACTIONS(57), - [anon_sym_nonlocal] = ACTIONS(59), - [anon_sym_exec] = ACTIONS(61), - [anon_sym_type] = ACTIONS(63), - [anon_sym_class] = ACTIONS(101), - [anon_sym_AT] = ACTIONS(67), - [anon_sym_not] = ACTIONS(69), - [anon_sym_TILDE] = ACTIONS(47), - [anon_sym_lambda] = ACTIONS(71), - [anon_sym_yield] = ACTIONS(73), - [sym_ellipsis] = ACTIONS(75), - [sym_integer] = ACTIONS(77), - [sym_float] = ACTIONS(75), - [anon_sym_await] = ACTIONS(79), - [sym_true] = ACTIONS(77), - [sym_false] = ACTIONS(77), - [sym_none] = ACTIONS(77), + [anon_sym_lazy] = ACTIONS(9), + [anon_sym_import] = ACTIONS(11), + [anon_sym_from] = ACTIONS(13), + [anon_sym_LPAREN] = ACTIONS(15), + [anon_sym_STAR] = ACTIONS(17), + [anon_sym_print] = ACTIONS(19), + [anon_sym_assert] = ACTIONS(21), + [anon_sym_return] = ACTIONS(23), + [anon_sym_del] = ACTIONS(25), + [anon_sym_raise] = ACTIONS(27), + [anon_sym_pass] = ACTIONS(29), + [anon_sym_break] = ACTIONS(31), + [anon_sym_continue] = ACTIONS(33), + [anon_sym_if] = ACTIONS(87), + [anon_sym_async] = ACTIONS(89), + [anon_sym_for] = ACTIONS(91), + [anon_sym_while] = ACTIONS(93), + [anon_sym_try] = ACTIONS(95), + [anon_sym_with] = ACTIONS(97), + [anon_sym_match] = ACTIONS(99), + [anon_sym_DASH] = ACTIONS(49), + [anon_sym_PLUS] = ACTIONS(49), + [anon_sym_LBRACK] = ACTIONS(51), + [anon_sym_LBRACE] = ACTIONS(53), + [anon_sym_STAR_STAR] = ACTIONS(55), + [anon_sym_def] = ACTIONS(101), + [anon_sym_global] = ACTIONS(59), + [anon_sym_nonlocal] = ACTIONS(61), + [anon_sym_exec] = ACTIONS(63), + [anon_sym_type] = ACTIONS(65), + [anon_sym_class] = ACTIONS(103), + [anon_sym_AT] = ACTIONS(69), + [anon_sym_not] = ACTIONS(71), + [anon_sym_TILDE] = ACTIONS(49), + [anon_sym_lambda] = ACTIONS(73), + [anon_sym_yield] = ACTIONS(75), + [sym_ellipsis] = ACTIONS(77), + [sym_integer] = ACTIONS(79), + [sym_float] = ACTIONS(77), + [anon_sym_await] = ACTIONS(81), + [sym_true] = ACTIONS(79), + [sym_false] = ACTIONS(79), + [sym_none] = ACTIONS(79), [sym_comment] = ACTIONS(3), - [sym__dedent] = ACTIONS(232), - [sym__string_start] = ACTIONS(81), - [sym__template_string_start] = ACTIONS(83), + [sym__dedent] = ACTIONS(111), + [sym__string_start] = ACTIONS(83), + [sym__template_string_start] = ACTIONS(85), }, - [STATE(64)] = { - [sym__statement] = STATE(64), - [sym__simple_statements] = STATE(64), + [STATE(61)] = { + [sym__statement] = STATE(63), + [sym__simple_statements] = STATE(63), [sym_import_statement] = STATE(1332), [sym_future_import_statement] = STATE(1332), [sym_import_from_statement] = STATE(1332), [sym_print_statement] = STATE(1332), [sym_assert_statement] = STATE(1332), [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1158), + [sym_named_expression] = STATE(1156), [sym_return_statement] = STATE(1332), [sym_delete_statement] = STATE(1332), [sym_raise_statement] = STATE(1332), [sym_pass_statement] = STATE(1332), [sym_break_statement] = STATE(1332), [sym_continue_statement] = STATE(1332), - [sym_if_statement] = STATE(64), - [sym_for_statement] = STATE(64), - [sym_while_statement] = STATE(64), - [sym_try_statement] = STATE(64), - [sym_with_statement] = STATE(64), - [sym_match_statement] = STATE(64), - [sym_function_definition] = STATE(64), - [sym_list_splat] = STATE(1549), - [sym_dictionary_splat] = STATE(1549), - [sym_global_statement] = STATE(1332), - [sym_nonlocal_statement] = STATE(1332), + [sym_if_statement] = STATE(63), + [sym_for_statement] = STATE(63), + [sym_while_statement] = STATE(63), + [sym_try_statement] = STATE(63), + [sym_with_statement] = STATE(63), + [sym_match_statement] = STATE(63), + [sym_function_definition] = STATE(63), + [sym_list_splat] = STATE(1520), + [sym_dictionary_splat] = STATE(1520), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), [sym_exec_statement] = STATE(1332), [sym_type_alias_statement] = STATE(1332), - [sym_class_definition] = STATE(64), - [sym_decorated_definition] = STATE(64), - [sym_decorator] = STATE(1113), - [sym_expression_list] = STATE(1551), - [sym_pattern] = STATE(1013), - [sym_tuple_pattern] = STATE(999), - [sym_list_pattern] = STATE(999), - [sym_list_splat_pattern] = STATE(999), - [sym_expression] = STATE(1185), - [sym_primary_expression] = STATE(779), - [sym_not_operator] = STATE(1158), - [sym_boolean_operator] = STATE(1158), - [sym_binary_operator] = STATE(908), - [sym_unary_operator] = STATE(908), - [sym_comparison_operator] = STATE(1158), - [sym_lambda] = STATE(1158), - [sym_assignment] = STATE(1551), - [sym_augmented_assignment] = STATE(1551), - [sym_pattern_list] = STATE(1024), - [sym_yield] = STATE(1551), - [sym_attribute] = STATE(494), - [sym_subscript] = STATE(494), - [sym_call] = STATE(908), - [sym_list] = STATE(908), - [sym_set] = STATE(908), - [sym_tuple] = STATE(908), - [sym_dictionary] = STATE(908), - [sym_list_comprehension] = STATE(908), - [sym_dictionary_comprehension] = STATE(908), - [sym_set_comprehension] = STATE(908), - [sym_generator_expression] = STATE(908), - [sym_parenthesized_expression] = STATE(908), - [sym_conditional_expression] = STATE(1158), - [sym_concatenated_string] = STATE(908), - [sym_string] = STATE(782), - [sym_concatenated_template_string] = STATE(908), - [sym_template_string] = STATE(763), - [sym_await] = STATE(908), - [aux_sym_module_repeat1] = STATE(64), - [aux_sym_decorated_definition_repeat1] = STATE(1113), - [sym_identifier] = ACTIONS(111), - [anon_sym_import] = ACTIONS(114), - [anon_sym_from] = ACTIONS(117), - [anon_sym_LPAREN] = ACTIONS(120), - [anon_sym_STAR] = ACTIONS(123), - [anon_sym_print] = ACTIONS(126), - [anon_sym_assert] = ACTIONS(129), - [anon_sym_return] = ACTIONS(132), - [anon_sym_del] = ACTIONS(135), - [anon_sym_raise] = ACTIONS(138), - [anon_sym_pass] = ACTIONS(141), - [anon_sym_break] = ACTIONS(144), - [anon_sym_continue] = ACTIONS(147), - [anon_sym_if] = ACTIONS(234), - [anon_sym_async] = ACTIONS(237), - [anon_sym_for] = ACTIONS(240), - [anon_sym_while] = ACTIONS(243), - [anon_sym_try] = ACTIONS(246), - [anon_sym_with] = ACTIONS(249), - [anon_sym_match] = ACTIONS(252), - [anon_sym_DASH] = ACTIONS(171), - [anon_sym_PLUS] = ACTIONS(171), - [anon_sym_LBRACK] = ACTIONS(174), - [anon_sym_LBRACE] = ACTIONS(177), - [anon_sym_STAR_STAR] = ACTIONS(180), - [anon_sym_def] = ACTIONS(255), - [anon_sym_global] = ACTIONS(186), - [anon_sym_nonlocal] = ACTIONS(189), - [anon_sym_exec] = ACTIONS(192), - [anon_sym_type] = ACTIONS(195), - [anon_sym_class] = ACTIONS(258), - [anon_sym_AT] = ACTIONS(201), - [anon_sym_not] = ACTIONS(204), - [anon_sym_TILDE] = ACTIONS(171), - [anon_sym_lambda] = ACTIONS(207), - [anon_sym_yield] = ACTIONS(210), - [sym_ellipsis] = ACTIONS(213), - [sym_integer] = ACTIONS(216), - [sym_float] = ACTIONS(213), - [anon_sym_await] = ACTIONS(219), - [sym_true] = ACTIONS(216), - [sym_false] = ACTIONS(216), - [sym_none] = ACTIONS(216), + [sym_class_definition] = STATE(63), + [sym_decorated_definition] = STATE(63), + [sym_decorator] = STATE(1127), + [sym_expression_list] = STATE(1522), + [sym_pattern] = STATE(1017), + [sym_tuple_pattern] = STATE(1001), + [sym_list_pattern] = STATE(1001), + [sym_list_splat_pattern] = STATE(1001), + [sym_expression] = STATE(1176), + [sym_primary_expression] = STATE(765), + [sym_not_operator] = STATE(1156), + [sym_boolean_operator] = STATE(1156), + [sym_binary_operator] = STATE(920), + [sym_unary_operator] = STATE(920), + [sym_comparison_operator] = STATE(1156), + [sym_lambda] = STATE(1156), + [sym_assignment] = STATE(1522), + [sym_augmented_assignment] = STATE(1522), + [sym_pattern_list] = STATE(1026), + [sym_yield] = STATE(1522), + [sym_attribute] = STATE(582), + [sym_subscript] = STATE(582), + [sym_call] = STATE(920), + [sym_list] = STATE(920), + [sym_set] = STATE(920), + [sym_tuple] = STATE(920), + [sym_dictionary] = STATE(920), + [sym_list_comprehension] = STATE(920), + [sym_dictionary_comprehension] = STATE(920), + [sym_set_comprehension] = STATE(920), + [sym_generator_expression] = STATE(920), + [sym_parenthesized_expression] = STATE(920), + [sym_conditional_expression] = STATE(1156), + [sym_concatenated_string] = STATE(920), + [sym_string] = STATE(775), + [sym_concatenated_template_string] = STATE(920), + [sym_template_string] = STATE(769), + [sym_await] = STATE(920), + [aux_sym_module_repeat1] = STATE(63), + [aux_sym_decorated_definition_repeat1] = STATE(1127), + [sym_identifier] = ACTIONS(7), + [anon_sym_lazy] = ACTIONS(9), + [anon_sym_import] = ACTIONS(11), + [anon_sym_from] = ACTIONS(13), + [anon_sym_LPAREN] = ACTIONS(15), + [anon_sym_STAR] = ACTIONS(17), + [anon_sym_print] = ACTIONS(19), + [anon_sym_assert] = ACTIONS(21), + [anon_sym_return] = ACTIONS(23), + [anon_sym_del] = ACTIONS(25), + [anon_sym_raise] = ACTIONS(27), + [anon_sym_pass] = ACTIONS(29), + [anon_sym_break] = ACTIONS(31), + [anon_sym_continue] = ACTIONS(33), + [anon_sym_if] = ACTIONS(87), + [anon_sym_async] = ACTIONS(89), + [anon_sym_for] = ACTIONS(91), + [anon_sym_while] = ACTIONS(93), + [anon_sym_try] = ACTIONS(95), + [anon_sym_with] = ACTIONS(97), + [anon_sym_match] = ACTIONS(99), + [anon_sym_DASH] = ACTIONS(49), + [anon_sym_PLUS] = ACTIONS(49), + [anon_sym_LBRACK] = ACTIONS(51), + [anon_sym_LBRACE] = ACTIONS(53), + [anon_sym_STAR_STAR] = ACTIONS(55), + [anon_sym_def] = ACTIONS(101), + [anon_sym_global] = ACTIONS(59), + [anon_sym_nonlocal] = ACTIONS(61), + [anon_sym_exec] = ACTIONS(63), + [anon_sym_type] = ACTIONS(65), + [anon_sym_class] = ACTIONS(103), + [anon_sym_AT] = ACTIONS(69), + [anon_sym_not] = ACTIONS(71), + [anon_sym_TILDE] = ACTIONS(49), + [anon_sym_lambda] = ACTIONS(73), + [anon_sym_yield] = ACTIONS(75), + [sym_ellipsis] = ACTIONS(77), + [sym_integer] = ACTIONS(79), + [sym_float] = ACTIONS(77), + [anon_sym_await] = ACTIONS(81), + [sym_true] = ACTIONS(79), + [sym_false] = ACTIONS(79), + [sym_none] = ACTIONS(79), [sym_comment] = ACTIONS(3), - [sym__dedent] = ACTIONS(109), - [sym__string_start] = ACTIONS(222), - [sym__template_string_start] = ACTIONS(225), + [sym__dedent] = ACTIONS(113), + [sym__string_start] = ACTIONS(83), + [sym__template_string_start] = ACTIONS(85), }, - [STATE(65)] = { - [sym__statement] = STATE(64), - [sym__simple_statements] = STATE(64), + [STATE(62)] = { + [sym__statement] = STATE(65), + [sym__simple_statements] = STATE(65), + [sym_import_statement] = STATE(1301), + [sym_future_import_statement] = STATE(1301), + [sym_import_from_statement] = STATE(1301), + [sym_print_statement] = STATE(1301), + [sym_assert_statement] = STATE(1301), + [sym_expression_statement] = STATE(1301), + [sym_named_expression] = STATE(1156), + [sym_return_statement] = STATE(1301), + [sym_delete_statement] = STATE(1301), + [sym_raise_statement] = STATE(1301), + [sym_pass_statement] = STATE(1301), + [sym_break_statement] = STATE(1301), + [sym_continue_statement] = STATE(1301), + [sym_if_statement] = STATE(65), + [sym_for_statement] = STATE(65), + [sym_while_statement] = STATE(65), + [sym_try_statement] = STATE(65), + [sym_with_statement] = STATE(65), + [sym_match_statement] = STATE(65), + [sym_function_definition] = STATE(65), + [sym_list_splat] = STATE(1520), + [sym_dictionary_splat] = STATE(1520), + [sym_global_statement] = STATE(1301), + [sym_nonlocal_statement] = STATE(1301), + [sym_exec_statement] = STATE(1301), + [sym_type_alias_statement] = STATE(1301), + [sym_class_definition] = STATE(65), + [sym_decorated_definition] = STATE(65), + [sym_decorator] = STATE(1128), + [sym_expression_list] = STATE(1522), + [sym_pattern] = STATE(1017), + [sym_tuple_pattern] = STATE(1001), + [sym_list_pattern] = STATE(1001), + [sym_list_splat_pattern] = STATE(1001), + [sym_expression] = STATE(1176), + [sym_primary_expression] = STATE(765), + [sym_not_operator] = STATE(1156), + [sym_boolean_operator] = STATE(1156), + [sym_binary_operator] = STATE(920), + [sym_unary_operator] = STATE(920), + [sym_comparison_operator] = STATE(1156), + [sym_lambda] = STATE(1156), + [sym_assignment] = STATE(1522), + [sym_augmented_assignment] = STATE(1522), + [sym_pattern_list] = STATE(1026), + [sym_yield] = STATE(1522), + [sym_attribute] = STATE(582), + [sym_subscript] = STATE(582), + [sym_call] = STATE(920), + [sym_list] = STATE(920), + [sym_set] = STATE(920), + [sym_tuple] = STATE(920), + [sym_dictionary] = STATE(920), + [sym_list_comprehension] = STATE(920), + [sym_dictionary_comprehension] = STATE(920), + [sym_set_comprehension] = STATE(920), + [sym_generator_expression] = STATE(920), + [sym_parenthesized_expression] = STATE(920), + [sym_conditional_expression] = STATE(1156), + [sym_concatenated_string] = STATE(920), + [sym_string] = STATE(775), + [sym_concatenated_template_string] = STATE(920), + [sym_template_string] = STATE(769), + [sym_await] = STATE(920), + [aux_sym_module_repeat1] = STATE(65), + [aux_sym_decorated_definition_repeat1] = STATE(1128), + [ts_builtin_sym_end] = ACTIONS(115), + [sym_identifier] = ACTIONS(7), + [anon_sym_lazy] = ACTIONS(9), + [anon_sym_import] = ACTIONS(11), + [anon_sym_from] = ACTIONS(13), + [anon_sym_LPAREN] = ACTIONS(15), + [anon_sym_STAR] = ACTIONS(17), + [anon_sym_print] = ACTIONS(19), + [anon_sym_assert] = ACTIONS(21), + [anon_sym_return] = ACTIONS(23), + [anon_sym_del] = ACTIONS(25), + [anon_sym_raise] = ACTIONS(27), + [anon_sym_pass] = ACTIONS(29), + [anon_sym_break] = ACTIONS(31), + [anon_sym_continue] = ACTIONS(33), + [anon_sym_if] = ACTIONS(35), + [anon_sym_async] = ACTIONS(37), + [anon_sym_for] = ACTIONS(39), + [anon_sym_while] = ACTIONS(41), + [anon_sym_try] = ACTIONS(43), + [anon_sym_with] = ACTIONS(45), + [anon_sym_match] = ACTIONS(47), + [anon_sym_DASH] = ACTIONS(49), + [anon_sym_PLUS] = ACTIONS(49), + [anon_sym_LBRACK] = ACTIONS(51), + [anon_sym_LBRACE] = ACTIONS(53), + [anon_sym_STAR_STAR] = ACTIONS(55), + [anon_sym_def] = ACTIONS(57), + [anon_sym_global] = ACTIONS(59), + [anon_sym_nonlocal] = ACTIONS(61), + [anon_sym_exec] = ACTIONS(63), + [anon_sym_type] = ACTIONS(65), + [anon_sym_class] = ACTIONS(67), + [anon_sym_AT] = ACTIONS(69), + [anon_sym_not] = ACTIONS(71), + [anon_sym_TILDE] = ACTIONS(49), + [anon_sym_lambda] = ACTIONS(73), + [anon_sym_yield] = ACTIONS(75), + [sym_ellipsis] = ACTIONS(77), + [sym_integer] = ACTIONS(79), + [sym_float] = ACTIONS(77), + [anon_sym_await] = ACTIONS(81), + [sym_true] = ACTIONS(79), + [sym_false] = ACTIONS(79), + [sym_none] = ACTIONS(79), + [sym_comment] = ACTIONS(3), + [sym__string_start] = ACTIONS(83), + [sym__template_string_start] = ACTIONS(85), + }, + [STATE(63)] = { + [sym__statement] = STATE(63), + [sym__simple_statements] = STATE(63), [sym_import_statement] = STATE(1332), [sym_future_import_statement] = STATE(1332), [sym_import_from_statement] = STATE(1332), [sym_print_statement] = STATE(1332), [sym_assert_statement] = STATE(1332), [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1158), + [sym_named_expression] = STATE(1156), [sym_return_statement] = STATE(1332), [sym_delete_statement] = STATE(1332), [sym_raise_statement] = STATE(1332), [sym_pass_statement] = STATE(1332), [sym_break_statement] = STATE(1332), [sym_continue_statement] = STATE(1332), - [sym_if_statement] = STATE(64), - [sym_for_statement] = STATE(64), - [sym_while_statement] = STATE(64), - [sym_try_statement] = STATE(64), - [sym_with_statement] = STATE(64), - [sym_match_statement] = STATE(64), - [sym_function_definition] = STATE(64), - [sym_list_splat] = STATE(1549), - [sym_dictionary_splat] = STATE(1549), + [sym_if_statement] = STATE(63), + [sym_for_statement] = STATE(63), + [sym_while_statement] = STATE(63), + [sym_try_statement] = STATE(63), + [sym_with_statement] = STATE(63), + [sym_match_statement] = STATE(63), + [sym_function_definition] = STATE(63), + [sym_list_splat] = STATE(1520), + [sym_dictionary_splat] = STATE(1520), [sym_global_statement] = STATE(1332), [sym_nonlocal_statement] = STATE(1332), [sym_exec_statement] = STATE(1332), [sym_type_alias_statement] = STATE(1332), - [sym_class_definition] = STATE(64), - [sym_decorated_definition] = STATE(64), - [sym_decorator] = STATE(1113), - [sym_expression_list] = STATE(1551), - [sym_pattern] = STATE(1013), - [sym_tuple_pattern] = STATE(999), - [sym_list_pattern] = STATE(999), - [sym_list_splat_pattern] = STATE(999), - [sym_expression] = STATE(1185), - [sym_primary_expression] = STATE(779), - [sym_not_operator] = STATE(1158), - [sym_boolean_operator] = STATE(1158), - [sym_binary_operator] = STATE(908), - [sym_unary_operator] = STATE(908), - [sym_comparison_operator] = STATE(1158), - [sym_lambda] = STATE(1158), - [sym_assignment] = STATE(1551), - [sym_augmented_assignment] = STATE(1551), - [sym_pattern_list] = STATE(1024), - [sym_yield] = STATE(1551), - [sym_attribute] = STATE(494), - [sym_subscript] = STATE(494), - [sym_call] = STATE(908), - [sym_list] = STATE(908), - [sym_set] = STATE(908), - [sym_tuple] = STATE(908), - [sym_dictionary] = STATE(908), - [sym_list_comprehension] = STATE(908), - [sym_dictionary_comprehension] = STATE(908), - [sym_set_comprehension] = STATE(908), - [sym_generator_expression] = STATE(908), - [sym_parenthesized_expression] = STATE(908), - [sym_conditional_expression] = STATE(1158), - [sym_concatenated_string] = STATE(908), - [sym_string] = STATE(782), - [sym_concatenated_template_string] = STATE(908), - [sym_template_string] = STATE(763), - [sym_await] = STATE(908), - [aux_sym_module_repeat1] = STATE(64), - [aux_sym_decorated_definition_repeat1] = STATE(1113), + [sym_class_definition] = STATE(63), + [sym_decorated_definition] = STATE(63), + [sym_decorator] = STATE(1127), + [sym_expression_list] = STATE(1522), + [sym_pattern] = STATE(1017), + [sym_tuple_pattern] = STATE(1001), + [sym_list_pattern] = STATE(1001), + [sym_list_splat_pattern] = STATE(1001), + [sym_expression] = STATE(1176), + [sym_primary_expression] = STATE(765), + [sym_not_operator] = STATE(1156), + [sym_boolean_operator] = STATE(1156), + [sym_binary_operator] = STATE(920), + [sym_unary_operator] = STATE(920), + [sym_comparison_operator] = STATE(1156), + [sym_lambda] = STATE(1156), + [sym_assignment] = STATE(1522), + [sym_augmented_assignment] = STATE(1522), + [sym_pattern_list] = STATE(1026), + [sym_yield] = STATE(1522), + [sym_attribute] = STATE(582), + [sym_subscript] = STATE(582), + [sym_call] = STATE(920), + [sym_list] = STATE(920), + [sym_set] = STATE(920), + [sym_tuple] = STATE(920), + [sym_dictionary] = STATE(920), + [sym_list_comprehension] = STATE(920), + [sym_dictionary_comprehension] = STATE(920), + [sym_set_comprehension] = STATE(920), + [sym_generator_expression] = STATE(920), + [sym_parenthesized_expression] = STATE(920), + [sym_conditional_expression] = STATE(1156), + [sym_concatenated_string] = STATE(920), + [sym_string] = STATE(775), + [sym_concatenated_template_string] = STATE(920), + [sym_template_string] = STATE(769), + [sym_await] = STATE(920), + [aux_sym_module_repeat1] = STATE(63), + [aux_sym_decorated_definition_repeat1] = STATE(1127), + [sym_identifier] = ACTIONS(117), + [anon_sym_lazy] = ACTIONS(120), + [anon_sym_import] = ACTIONS(123), + [anon_sym_from] = ACTIONS(126), + [anon_sym_LPAREN] = ACTIONS(129), + [anon_sym_STAR] = ACTIONS(132), + [anon_sym_print] = ACTIONS(135), + [anon_sym_assert] = ACTIONS(138), + [anon_sym_return] = ACTIONS(141), + [anon_sym_del] = ACTIONS(144), + [anon_sym_raise] = ACTIONS(147), + [anon_sym_pass] = ACTIONS(150), + [anon_sym_break] = ACTIONS(153), + [anon_sym_continue] = ACTIONS(156), + [anon_sym_if] = ACTIONS(159), + [anon_sym_async] = ACTIONS(162), + [anon_sym_for] = ACTIONS(165), + [anon_sym_while] = ACTIONS(168), + [anon_sym_try] = ACTIONS(171), + [anon_sym_with] = ACTIONS(174), + [anon_sym_match] = ACTIONS(177), + [anon_sym_DASH] = ACTIONS(180), + [anon_sym_PLUS] = ACTIONS(180), + [anon_sym_LBRACK] = ACTIONS(183), + [anon_sym_LBRACE] = ACTIONS(186), + [anon_sym_STAR_STAR] = ACTIONS(189), + [anon_sym_def] = ACTIONS(192), + [anon_sym_global] = ACTIONS(195), + [anon_sym_nonlocal] = ACTIONS(198), + [anon_sym_exec] = ACTIONS(201), + [anon_sym_type] = ACTIONS(204), + [anon_sym_class] = ACTIONS(207), + [anon_sym_AT] = ACTIONS(210), + [anon_sym_not] = ACTIONS(213), + [anon_sym_TILDE] = ACTIONS(180), + [anon_sym_lambda] = ACTIONS(216), + [anon_sym_yield] = ACTIONS(219), + [sym_ellipsis] = ACTIONS(222), + [sym_integer] = ACTIONS(225), + [sym_float] = ACTIONS(222), + [anon_sym_await] = ACTIONS(228), + [sym_true] = ACTIONS(225), + [sym_false] = ACTIONS(225), + [sym_none] = ACTIONS(225), + [sym_comment] = ACTIONS(3), + [sym__dedent] = ACTIONS(231), + [sym__string_start] = ACTIONS(233), + [sym__template_string_start] = ACTIONS(236), + }, + [STATE(64)] = { + [sym__statement] = STATE(63), + [sym__simple_statements] = STATE(63), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1156), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), + [sym_if_statement] = STATE(63), + [sym_for_statement] = STATE(63), + [sym_while_statement] = STATE(63), + [sym_try_statement] = STATE(63), + [sym_with_statement] = STATE(63), + [sym_match_statement] = STATE(63), + [sym_function_definition] = STATE(63), + [sym_list_splat] = STATE(1520), + [sym_dictionary_splat] = STATE(1520), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), + [sym_class_definition] = STATE(63), + [sym_decorated_definition] = STATE(63), + [sym_decorator] = STATE(1127), + [sym_expression_list] = STATE(1522), + [sym_pattern] = STATE(1017), + [sym_tuple_pattern] = STATE(1001), + [sym_list_pattern] = STATE(1001), + [sym_list_splat_pattern] = STATE(1001), + [sym_expression] = STATE(1176), + [sym_primary_expression] = STATE(765), + [sym_not_operator] = STATE(1156), + [sym_boolean_operator] = STATE(1156), + [sym_binary_operator] = STATE(920), + [sym_unary_operator] = STATE(920), + [sym_comparison_operator] = STATE(1156), + [sym_lambda] = STATE(1156), + [sym_assignment] = STATE(1522), + [sym_augmented_assignment] = STATE(1522), + [sym_pattern_list] = STATE(1026), + [sym_yield] = STATE(1522), + [sym_attribute] = STATE(582), + [sym_subscript] = STATE(582), + [sym_call] = STATE(920), + [sym_list] = STATE(920), + [sym_set] = STATE(920), + [sym_tuple] = STATE(920), + [sym_dictionary] = STATE(920), + [sym_list_comprehension] = STATE(920), + [sym_dictionary_comprehension] = STATE(920), + [sym_set_comprehension] = STATE(920), + [sym_generator_expression] = STATE(920), + [sym_parenthesized_expression] = STATE(920), + [sym_conditional_expression] = STATE(1156), + [sym_concatenated_string] = STATE(920), + [sym_string] = STATE(775), + [sym_concatenated_template_string] = STATE(920), + [sym_template_string] = STATE(769), + [sym_await] = STATE(920), + [aux_sym_module_repeat1] = STATE(63), + [aux_sym_decorated_definition_repeat1] = STATE(1127), [sym_identifier] = ACTIONS(7), - [anon_sym_import] = ACTIONS(9), - [anon_sym_from] = ACTIONS(11), - [anon_sym_LPAREN] = ACTIONS(13), - [anon_sym_STAR] = ACTIONS(15), - [anon_sym_print] = ACTIONS(17), - [anon_sym_assert] = ACTIONS(19), - [anon_sym_return] = ACTIONS(21), - [anon_sym_del] = ACTIONS(23), - [anon_sym_raise] = ACTIONS(25), - [anon_sym_pass] = ACTIONS(27), - [anon_sym_break] = ACTIONS(29), - [anon_sym_continue] = ACTIONS(31), - [anon_sym_if] = ACTIONS(85), - [anon_sym_async] = ACTIONS(87), - [anon_sym_for] = ACTIONS(89), - [anon_sym_while] = ACTIONS(91), - [anon_sym_try] = ACTIONS(93), - [anon_sym_with] = ACTIONS(95), - [anon_sym_match] = ACTIONS(97), - [anon_sym_DASH] = ACTIONS(47), - [anon_sym_PLUS] = ACTIONS(47), - [anon_sym_LBRACK] = ACTIONS(49), - [anon_sym_LBRACE] = ACTIONS(51), - [anon_sym_STAR_STAR] = ACTIONS(53), - [anon_sym_def] = ACTIONS(99), - [anon_sym_global] = ACTIONS(57), - [anon_sym_nonlocal] = ACTIONS(59), - [anon_sym_exec] = ACTIONS(61), - [anon_sym_type] = ACTIONS(63), - [anon_sym_class] = ACTIONS(101), - [anon_sym_AT] = ACTIONS(67), - [anon_sym_not] = ACTIONS(69), - [anon_sym_TILDE] = ACTIONS(47), - [anon_sym_lambda] = ACTIONS(71), - [anon_sym_yield] = ACTIONS(73), - [sym_ellipsis] = ACTIONS(75), - [sym_integer] = ACTIONS(77), - [sym_float] = ACTIONS(75), - [anon_sym_await] = ACTIONS(79), - [sym_true] = ACTIONS(77), - [sym_false] = ACTIONS(77), - [sym_none] = ACTIONS(77), + [anon_sym_lazy] = ACTIONS(9), + [anon_sym_import] = ACTIONS(11), + [anon_sym_from] = ACTIONS(13), + [anon_sym_LPAREN] = ACTIONS(15), + [anon_sym_STAR] = ACTIONS(17), + [anon_sym_print] = ACTIONS(19), + [anon_sym_assert] = ACTIONS(21), + [anon_sym_return] = ACTIONS(23), + [anon_sym_del] = ACTIONS(25), + [anon_sym_raise] = ACTIONS(27), + [anon_sym_pass] = ACTIONS(29), + [anon_sym_break] = ACTIONS(31), + [anon_sym_continue] = ACTIONS(33), + [anon_sym_if] = ACTIONS(87), + [anon_sym_async] = ACTIONS(89), + [anon_sym_for] = ACTIONS(91), + [anon_sym_while] = ACTIONS(93), + [anon_sym_try] = ACTIONS(95), + [anon_sym_with] = ACTIONS(97), + [anon_sym_match] = ACTIONS(99), + [anon_sym_DASH] = ACTIONS(49), + [anon_sym_PLUS] = ACTIONS(49), + [anon_sym_LBRACK] = ACTIONS(51), + [anon_sym_LBRACE] = ACTIONS(53), + [anon_sym_STAR_STAR] = ACTIONS(55), + [anon_sym_def] = ACTIONS(101), + [anon_sym_global] = ACTIONS(59), + [anon_sym_nonlocal] = ACTIONS(61), + [anon_sym_exec] = ACTIONS(63), + [anon_sym_type] = ACTIONS(65), + [anon_sym_class] = ACTIONS(103), + [anon_sym_AT] = ACTIONS(69), + [anon_sym_not] = ACTIONS(71), + [anon_sym_TILDE] = ACTIONS(49), + [anon_sym_lambda] = ACTIONS(73), + [anon_sym_yield] = ACTIONS(75), + [sym_ellipsis] = ACTIONS(77), + [sym_integer] = ACTIONS(79), + [sym_float] = ACTIONS(77), + [anon_sym_await] = ACTIONS(81), + [sym_true] = ACTIONS(79), + [sym_false] = ACTIONS(79), + [sym_none] = ACTIONS(79), + [sym_comment] = ACTIONS(3), + [sym__dedent] = ACTIONS(239), + [sym__string_start] = ACTIONS(83), + [sym__template_string_start] = ACTIONS(85), + }, + [STATE(65)] = { + [sym__statement] = STATE(65), + [sym__simple_statements] = STATE(65), + [sym_import_statement] = STATE(1301), + [sym_future_import_statement] = STATE(1301), + [sym_import_from_statement] = STATE(1301), + [sym_print_statement] = STATE(1301), + [sym_assert_statement] = STATE(1301), + [sym_expression_statement] = STATE(1301), + [sym_named_expression] = STATE(1156), + [sym_return_statement] = STATE(1301), + [sym_delete_statement] = STATE(1301), + [sym_raise_statement] = STATE(1301), + [sym_pass_statement] = STATE(1301), + [sym_break_statement] = STATE(1301), + [sym_continue_statement] = STATE(1301), + [sym_if_statement] = STATE(65), + [sym_for_statement] = STATE(65), + [sym_while_statement] = STATE(65), + [sym_try_statement] = STATE(65), + [sym_with_statement] = STATE(65), + [sym_match_statement] = STATE(65), + [sym_function_definition] = STATE(65), + [sym_list_splat] = STATE(1520), + [sym_dictionary_splat] = STATE(1520), + [sym_global_statement] = STATE(1301), + [sym_nonlocal_statement] = STATE(1301), + [sym_exec_statement] = STATE(1301), + [sym_type_alias_statement] = STATE(1301), + [sym_class_definition] = STATE(65), + [sym_decorated_definition] = STATE(65), + [sym_decorator] = STATE(1128), + [sym_expression_list] = STATE(1522), + [sym_pattern] = STATE(1017), + [sym_tuple_pattern] = STATE(1001), + [sym_list_pattern] = STATE(1001), + [sym_list_splat_pattern] = STATE(1001), + [sym_expression] = STATE(1176), + [sym_primary_expression] = STATE(765), + [sym_not_operator] = STATE(1156), + [sym_boolean_operator] = STATE(1156), + [sym_binary_operator] = STATE(920), + [sym_unary_operator] = STATE(920), + [sym_comparison_operator] = STATE(1156), + [sym_lambda] = STATE(1156), + [sym_assignment] = STATE(1522), + [sym_augmented_assignment] = STATE(1522), + [sym_pattern_list] = STATE(1026), + [sym_yield] = STATE(1522), + [sym_attribute] = STATE(582), + [sym_subscript] = STATE(582), + [sym_call] = STATE(920), + [sym_list] = STATE(920), + [sym_set] = STATE(920), + [sym_tuple] = STATE(920), + [sym_dictionary] = STATE(920), + [sym_list_comprehension] = STATE(920), + [sym_dictionary_comprehension] = STATE(920), + [sym_set_comprehension] = STATE(920), + [sym_generator_expression] = STATE(920), + [sym_parenthesized_expression] = STATE(920), + [sym_conditional_expression] = STATE(1156), + [sym_concatenated_string] = STATE(920), + [sym_string] = STATE(775), + [sym_concatenated_template_string] = STATE(920), + [sym_template_string] = STATE(769), + [sym_await] = STATE(920), + [aux_sym_module_repeat1] = STATE(65), + [aux_sym_decorated_definition_repeat1] = STATE(1128), + [ts_builtin_sym_end] = ACTIONS(231), + [sym_identifier] = ACTIONS(117), + [anon_sym_lazy] = ACTIONS(120), + [anon_sym_import] = ACTIONS(123), + [anon_sym_from] = ACTIONS(126), + [anon_sym_LPAREN] = ACTIONS(129), + [anon_sym_STAR] = ACTIONS(132), + [anon_sym_print] = ACTIONS(135), + [anon_sym_assert] = ACTIONS(138), + [anon_sym_return] = ACTIONS(141), + [anon_sym_del] = ACTIONS(144), + [anon_sym_raise] = ACTIONS(147), + [anon_sym_pass] = ACTIONS(150), + [anon_sym_break] = ACTIONS(153), + [anon_sym_continue] = ACTIONS(156), + [anon_sym_if] = ACTIONS(241), + [anon_sym_async] = ACTIONS(244), + [anon_sym_for] = ACTIONS(247), + [anon_sym_while] = ACTIONS(250), + [anon_sym_try] = ACTIONS(253), + [anon_sym_with] = ACTIONS(256), + [anon_sym_match] = ACTIONS(259), + [anon_sym_DASH] = ACTIONS(180), + [anon_sym_PLUS] = ACTIONS(180), + [anon_sym_LBRACK] = ACTIONS(183), + [anon_sym_LBRACE] = ACTIONS(186), + [anon_sym_STAR_STAR] = ACTIONS(189), + [anon_sym_def] = ACTIONS(262), + [anon_sym_global] = ACTIONS(195), + [anon_sym_nonlocal] = ACTIONS(198), + [anon_sym_exec] = ACTIONS(201), + [anon_sym_type] = ACTIONS(204), + [anon_sym_class] = ACTIONS(265), + [anon_sym_AT] = ACTIONS(210), + [anon_sym_not] = ACTIONS(213), + [anon_sym_TILDE] = ACTIONS(180), + [anon_sym_lambda] = ACTIONS(216), + [anon_sym_yield] = ACTIONS(219), + [sym_ellipsis] = ACTIONS(222), + [sym_integer] = ACTIONS(225), + [sym_float] = ACTIONS(222), + [anon_sym_await] = ACTIONS(228), + [sym_true] = ACTIONS(225), + [sym_false] = ACTIONS(225), + [sym_none] = ACTIONS(225), [sym_comment] = ACTIONS(3), - [sym__dedent] = ACTIONS(261), - [sym__string_start] = ACTIONS(81), - [sym__template_string_start] = ACTIONS(83), + [sym__string_start] = ACTIONS(233), + [sym__template_string_start] = ACTIONS(236), }, [STATE(66)] = { - [sym_named_expression] = STATE(1031), - [sym_list_splat] = STATE(1510), - [sym_dictionary_splat] = STATE(1510), - [sym_expression_list] = STATE(1590), - [sym_expression] = STATE(1254), + [sym_named_expression] = STATE(1032), + [sym_list_splat] = STATE(1518), + [sym_dictionary_splat] = STATE(1518), + [sym_expression_list] = STATE(1654), + [sym_expression] = STATE(1245), [sym_primary_expression] = STATE(719), - [sym_not_operator] = STATE(1031), - [sym_boolean_operator] = STATE(1031), - [sym_binary_operator] = STATE(724), - [sym_unary_operator] = STATE(724), - [sym_comparison_operator] = STATE(1031), - [sym_lambda] = STATE(1031), - [sym_attribute] = STATE(724), - [sym_subscript] = STATE(724), - [sym_call] = STATE(724), - [sym_list] = STATE(724), - [sym_set] = STATE(724), - [sym_tuple] = STATE(724), - [sym_dictionary] = STATE(724), - [sym_list_comprehension] = STATE(724), - [sym_dictionary_comprehension] = STATE(724), - [sym_set_comprehension] = STATE(724), - [sym_generator_expression] = STATE(724), - [sym_parenthesized_expression] = STATE(724), - [sym_conditional_expression] = STATE(1031), - [sym_concatenated_string] = STATE(724), - [sym_string] = STATE(621), - [sym_concatenated_template_string] = STATE(724), - [sym_template_string] = STATE(624), - [sym_await] = STATE(724), - [sym_identifier] = ACTIONS(263), - [anon_sym_DOT] = ACTIONS(265), - [anon_sym_LPAREN] = ACTIONS(267), - [anon_sym_COMMA] = ACTIONS(270), - [anon_sym_STAR] = ACTIONS(273), - [anon_sym_print] = ACTIONS(276), - [anon_sym_GT_GT] = ACTIONS(265), - [anon_sym_COLON_EQ] = ACTIONS(278), - [anon_sym_if] = ACTIONS(265), - [anon_sym_COLON] = ACTIONS(280), - [anon_sym_async] = ACTIONS(276), - [anon_sym_in] = ACTIONS(265), - [anon_sym_match] = ACTIONS(276), - [anon_sym_PIPE] = ACTIONS(265), - [anon_sym_DASH] = ACTIONS(282), - [anon_sym_PLUS] = ACTIONS(282), - [anon_sym_LBRACK] = ACTIONS(285), - [anon_sym_LBRACE] = ACTIONS(288), - [anon_sym_STAR_STAR] = ACTIONS(290), - [anon_sym_EQ] = ACTIONS(280), - [anon_sym_exec] = ACTIONS(276), - [anon_sym_type] = ACTIONS(276), - [anon_sym_AT] = ACTIONS(265), - [anon_sym_not] = ACTIONS(293), - [anon_sym_and] = ACTIONS(265), - [anon_sym_or] = ACTIONS(265), - [anon_sym_SLASH] = ACTIONS(265), - [anon_sym_PERCENT] = ACTIONS(265), - [anon_sym_SLASH_SLASH] = ACTIONS(265), - [anon_sym_AMP] = ACTIONS(265), - [anon_sym_CARET] = ACTIONS(265), - [anon_sym_LT_LT] = ACTIONS(265), - [anon_sym_TILDE] = ACTIONS(296), - [anon_sym_LT] = ACTIONS(265), - [anon_sym_LT_EQ] = ACTIONS(298), - [anon_sym_EQ_EQ] = ACTIONS(298), - [anon_sym_BANG_EQ] = ACTIONS(298), - [anon_sym_GT_EQ] = ACTIONS(298), - [anon_sym_GT] = ACTIONS(265), - [anon_sym_LT_GT] = ACTIONS(298), - [anon_sym_is] = ACTIONS(265), - [anon_sym_lambda] = ACTIONS(300), - [anon_sym_PLUS_EQ] = ACTIONS(302), - [anon_sym_DASH_EQ] = ACTIONS(302), - [anon_sym_STAR_EQ] = ACTIONS(302), - [anon_sym_SLASH_EQ] = ACTIONS(302), - [anon_sym_AT_EQ] = ACTIONS(302), - [anon_sym_SLASH_SLASH_EQ] = ACTIONS(302), - [anon_sym_PERCENT_EQ] = ACTIONS(302), - [anon_sym_STAR_STAR_EQ] = ACTIONS(302), - [anon_sym_GT_GT_EQ] = ACTIONS(302), - [anon_sym_LT_LT_EQ] = ACTIONS(302), - [anon_sym_AMP_EQ] = ACTIONS(302), - [anon_sym_CARET_EQ] = ACTIONS(302), - [anon_sym_PIPE_EQ] = ACTIONS(302), - [sym_ellipsis] = ACTIONS(304), - [sym_integer] = ACTIONS(306), - [sym_float] = ACTIONS(304), - [anon_sym_await] = ACTIONS(308), - [sym_true] = ACTIONS(306), - [sym_false] = ACTIONS(306), - [sym_none] = ACTIONS(306), + [sym_not_operator] = STATE(1032), + [sym_boolean_operator] = STATE(1032), + [sym_binary_operator] = STATE(725), + [sym_unary_operator] = STATE(725), + [sym_comparison_operator] = STATE(1032), + [sym_lambda] = STATE(1032), + [sym_attribute] = STATE(725), + [sym_subscript] = STATE(725), + [sym_call] = STATE(725), + [sym_list] = STATE(725), + [sym_set] = STATE(725), + [sym_tuple] = STATE(725), + [sym_dictionary] = STATE(725), + [sym_list_comprehension] = STATE(725), + [sym_dictionary_comprehension] = STATE(725), + [sym_set_comprehension] = STATE(725), + [sym_generator_expression] = STATE(725), + [sym_parenthesized_expression] = STATE(725), + [sym_conditional_expression] = STATE(1032), + [sym_concatenated_string] = STATE(725), + [sym_string] = STATE(645), + [sym_concatenated_template_string] = STATE(725), + [sym_template_string] = STATE(658), + [sym_await] = STATE(725), + [sym_identifier] = ACTIONS(268), + [anon_sym_lazy] = ACTIONS(270), + [anon_sym_DOT] = ACTIONS(272), + [anon_sym_LPAREN] = ACTIONS(274), + [anon_sym_COMMA] = ACTIONS(277), + [anon_sym_STAR] = ACTIONS(280), + [anon_sym_print] = ACTIONS(270), + [anon_sym_GT_GT] = ACTIONS(272), + [anon_sym_COLON_EQ] = ACTIONS(283), + [anon_sym_if] = ACTIONS(272), + [anon_sym_COLON] = ACTIONS(285), + [anon_sym_async] = ACTIONS(270), + [anon_sym_in] = ACTIONS(272), + [anon_sym_match] = ACTIONS(270), + [anon_sym_PIPE] = ACTIONS(272), + [anon_sym_DASH] = ACTIONS(287), + [anon_sym_PLUS] = ACTIONS(287), + [anon_sym_LBRACK] = ACTIONS(290), + [anon_sym_LBRACE] = ACTIONS(293), + [anon_sym_STAR_STAR] = ACTIONS(295), + [anon_sym_EQ] = ACTIONS(285), + [anon_sym_exec] = ACTIONS(270), + [anon_sym_type] = ACTIONS(270), + [anon_sym_AT] = ACTIONS(272), + [anon_sym_not] = ACTIONS(298), + [anon_sym_and] = ACTIONS(272), + [anon_sym_or] = ACTIONS(272), + [anon_sym_SLASH] = ACTIONS(272), + [anon_sym_PERCENT] = ACTIONS(272), + [anon_sym_SLASH_SLASH] = ACTIONS(272), + [anon_sym_AMP] = ACTIONS(272), + [anon_sym_CARET] = ACTIONS(272), + [anon_sym_LT_LT] = ACTIONS(272), + [anon_sym_TILDE] = ACTIONS(301), + [anon_sym_LT] = ACTIONS(272), + [anon_sym_LT_EQ] = ACTIONS(303), + [anon_sym_EQ_EQ] = ACTIONS(303), + [anon_sym_BANG_EQ] = ACTIONS(303), + [anon_sym_GT_EQ] = ACTIONS(303), + [anon_sym_GT] = ACTIONS(272), + [anon_sym_LT_GT] = ACTIONS(303), + [anon_sym_is] = ACTIONS(272), + [anon_sym_lambda] = ACTIONS(305), + [anon_sym_PLUS_EQ] = ACTIONS(307), + [anon_sym_DASH_EQ] = ACTIONS(307), + [anon_sym_STAR_EQ] = ACTIONS(307), + [anon_sym_SLASH_EQ] = ACTIONS(307), + [anon_sym_AT_EQ] = ACTIONS(307), + [anon_sym_SLASH_SLASH_EQ] = ACTIONS(307), + [anon_sym_PERCENT_EQ] = ACTIONS(307), + [anon_sym_STAR_STAR_EQ] = ACTIONS(307), + [anon_sym_GT_GT_EQ] = ACTIONS(307), + [anon_sym_LT_LT_EQ] = ACTIONS(307), + [anon_sym_AMP_EQ] = ACTIONS(307), + [anon_sym_CARET_EQ] = ACTIONS(307), + [anon_sym_PIPE_EQ] = ACTIONS(307), + [sym_ellipsis] = ACTIONS(309), + [sym_integer] = ACTIONS(311), + [sym_float] = ACTIONS(309), + [anon_sym_await] = ACTIONS(313), + [sym_true] = ACTIONS(311), + [sym_false] = ACTIONS(311), + [sym_none] = ACTIONS(311), [sym_comment] = ACTIONS(3), - [anon_sym_SEMI] = ACTIONS(298), - [sym__newline] = ACTIONS(298), - [sym__string_start] = ACTIONS(310), - [sym__template_string_start] = ACTIONS(312), + [anon_sym_SEMI] = ACTIONS(303), + [sym__newline] = ACTIONS(303), + [sym__string_start] = ACTIONS(315), + [sym__template_string_start] = ACTIONS(317), }, [STATE(67)] = { - [sym_named_expression] = STATE(1031), - [sym_list_splat] = STATE(1510), - [sym_dictionary_splat] = STATE(1510), - [sym_expression_list] = STATE(1676), - [sym_expression] = STATE(1230), + [sym_named_expression] = STATE(1032), + [sym_list_splat] = STATE(1518), + [sym_dictionary_splat] = STATE(1518), + [sym_expression_list] = STATE(1600), + [sym_expression] = STATE(1234), [sym_primary_expression] = STATE(719), - [sym_not_operator] = STATE(1031), - [sym_boolean_operator] = STATE(1031), - [sym_binary_operator] = STATE(724), - [sym_unary_operator] = STATE(724), - [sym_comparison_operator] = STATE(1031), - [sym_lambda] = STATE(1031), - [sym_attribute] = STATE(724), - [sym_subscript] = STATE(724), - [sym_call] = STATE(724), - [sym_list] = STATE(724), - [sym_set] = STATE(724), - [sym_tuple] = STATE(724), - [sym_dictionary] = STATE(724), - [sym_list_comprehension] = STATE(724), - [sym_dictionary_comprehension] = STATE(724), - [sym_set_comprehension] = STATE(724), - [sym_generator_expression] = STATE(724), - [sym_parenthesized_expression] = STATE(724), - [sym_conditional_expression] = STATE(1031), - [sym_concatenated_string] = STATE(724), - [sym_string] = STATE(621), - [sym_concatenated_template_string] = STATE(724), - [sym_template_string] = STATE(624), - [sym_await] = STATE(724), - [sym_identifier] = ACTIONS(263), - [anon_sym_DOT] = ACTIONS(265), - [anon_sym_LPAREN] = ACTIONS(267), - [anon_sym_COMMA] = ACTIONS(270), - [anon_sym_STAR] = ACTIONS(273), - [anon_sym_print] = ACTIONS(276), - [anon_sym_GT_GT] = ACTIONS(265), - [anon_sym_COLON_EQ] = ACTIONS(278), - [anon_sym_if] = ACTIONS(265), - [anon_sym_COLON] = ACTIONS(280), - [anon_sym_async] = ACTIONS(276), - [anon_sym_in] = ACTIONS(265), - [anon_sym_match] = ACTIONS(276), - [anon_sym_PIPE] = ACTIONS(265), - [anon_sym_DASH] = ACTIONS(282), - [anon_sym_PLUS] = ACTIONS(282), - [anon_sym_LBRACK] = ACTIONS(285), - [anon_sym_LBRACE] = ACTIONS(288), - [anon_sym_STAR_STAR] = ACTIONS(290), - [anon_sym_EQ] = ACTIONS(280), - [anon_sym_exec] = ACTIONS(276), - [anon_sym_type] = ACTIONS(276), - [anon_sym_AT] = ACTIONS(265), - [anon_sym_not] = ACTIONS(293), - [anon_sym_and] = ACTIONS(265), - [anon_sym_or] = ACTIONS(265), - [anon_sym_SLASH] = ACTIONS(265), - [anon_sym_PERCENT] = ACTIONS(265), - [anon_sym_SLASH_SLASH] = ACTIONS(265), - [anon_sym_AMP] = ACTIONS(265), - [anon_sym_CARET] = ACTIONS(265), - [anon_sym_LT_LT] = ACTIONS(265), - [anon_sym_TILDE] = ACTIONS(296), - [anon_sym_LT] = ACTIONS(265), - [anon_sym_LT_EQ] = ACTIONS(298), - [anon_sym_EQ_EQ] = ACTIONS(298), - [anon_sym_BANG_EQ] = ACTIONS(298), - [anon_sym_GT_EQ] = ACTIONS(298), - [anon_sym_GT] = ACTIONS(265), - [anon_sym_LT_GT] = ACTIONS(298), - [anon_sym_is] = ACTIONS(265), - [anon_sym_lambda] = ACTIONS(300), - [anon_sym_PLUS_EQ] = ACTIONS(302), - [anon_sym_DASH_EQ] = ACTIONS(302), - [anon_sym_STAR_EQ] = ACTIONS(302), - [anon_sym_SLASH_EQ] = ACTIONS(302), - [anon_sym_AT_EQ] = ACTIONS(302), - [anon_sym_SLASH_SLASH_EQ] = ACTIONS(302), - [anon_sym_PERCENT_EQ] = ACTIONS(302), - [anon_sym_STAR_STAR_EQ] = ACTIONS(302), - [anon_sym_GT_GT_EQ] = ACTIONS(302), - [anon_sym_LT_LT_EQ] = ACTIONS(302), - [anon_sym_AMP_EQ] = ACTIONS(302), - [anon_sym_CARET_EQ] = ACTIONS(302), - [anon_sym_PIPE_EQ] = ACTIONS(302), - [sym_ellipsis] = ACTIONS(304), - [sym_integer] = ACTIONS(306), - [sym_float] = ACTIONS(304), - [anon_sym_await] = ACTIONS(308), - [sym_true] = ACTIONS(306), - [sym_false] = ACTIONS(306), - [sym_none] = ACTIONS(306), + [sym_not_operator] = STATE(1032), + [sym_boolean_operator] = STATE(1032), + [sym_binary_operator] = STATE(725), + [sym_unary_operator] = STATE(725), + [sym_comparison_operator] = STATE(1032), + [sym_lambda] = STATE(1032), + [sym_attribute] = STATE(725), + [sym_subscript] = STATE(725), + [sym_call] = STATE(725), + [sym_list] = STATE(725), + [sym_set] = STATE(725), + [sym_tuple] = STATE(725), + [sym_dictionary] = STATE(725), + [sym_list_comprehension] = STATE(725), + [sym_dictionary_comprehension] = STATE(725), + [sym_set_comprehension] = STATE(725), + [sym_generator_expression] = STATE(725), + [sym_parenthesized_expression] = STATE(725), + [sym_conditional_expression] = STATE(1032), + [sym_concatenated_string] = STATE(725), + [sym_string] = STATE(645), + [sym_concatenated_template_string] = STATE(725), + [sym_template_string] = STATE(658), + [sym_await] = STATE(725), + [sym_identifier] = ACTIONS(268), + [anon_sym_lazy] = ACTIONS(270), + [anon_sym_DOT] = ACTIONS(272), + [anon_sym_LPAREN] = ACTIONS(274), + [anon_sym_COMMA] = ACTIONS(277), + [anon_sym_STAR] = ACTIONS(280), + [anon_sym_print] = ACTIONS(270), + [anon_sym_GT_GT] = ACTIONS(272), + [anon_sym_COLON_EQ] = ACTIONS(283), + [anon_sym_if] = ACTIONS(272), + [anon_sym_COLON] = ACTIONS(285), + [anon_sym_async] = ACTIONS(270), + [anon_sym_in] = ACTIONS(272), + [anon_sym_match] = ACTIONS(270), + [anon_sym_PIPE] = ACTIONS(272), + [anon_sym_DASH] = ACTIONS(287), + [anon_sym_PLUS] = ACTIONS(287), + [anon_sym_LBRACK] = ACTIONS(290), + [anon_sym_LBRACE] = ACTIONS(293), + [anon_sym_STAR_STAR] = ACTIONS(295), + [anon_sym_EQ] = ACTIONS(285), + [anon_sym_exec] = ACTIONS(270), + [anon_sym_type] = ACTIONS(270), + [anon_sym_AT] = ACTIONS(272), + [anon_sym_not] = ACTIONS(298), + [anon_sym_and] = ACTIONS(272), + [anon_sym_or] = ACTIONS(272), + [anon_sym_SLASH] = ACTIONS(272), + [anon_sym_PERCENT] = ACTIONS(272), + [anon_sym_SLASH_SLASH] = ACTIONS(272), + [anon_sym_AMP] = ACTIONS(272), + [anon_sym_CARET] = ACTIONS(272), + [anon_sym_LT_LT] = ACTIONS(272), + [anon_sym_TILDE] = ACTIONS(301), + [anon_sym_LT] = ACTIONS(272), + [anon_sym_LT_EQ] = ACTIONS(303), + [anon_sym_EQ_EQ] = ACTIONS(303), + [anon_sym_BANG_EQ] = ACTIONS(303), + [anon_sym_GT_EQ] = ACTIONS(303), + [anon_sym_GT] = ACTIONS(272), + [anon_sym_LT_GT] = ACTIONS(303), + [anon_sym_is] = ACTIONS(272), + [anon_sym_lambda] = ACTIONS(305), + [anon_sym_PLUS_EQ] = ACTIONS(307), + [anon_sym_DASH_EQ] = ACTIONS(307), + [anon_sym_STAR_EQ] = ACTIONS(307), + [anon_sym_SLASH_EQ] = ACTIONS(307), + [anon_sym_AT_EQ] = ACTIONS(307), + [anon_sym_SLASH_SLASH_EQ] = ACTIONS(307), + [anon_sym_PERCENT_EQ] = ACTIONS(307), + [anon_sym_STAR_STAR_EQ] = ACTIONS(307), + [anon_sym_GT_GT_EQ] = ACTIONS(307), + [anon_sym_LT_LT_EQ] = ACTIONS(307), + [anon_sym_AMP_EQ] = ACTIONS(307), + [anon_sym_CARET_EQ] = ACTIONS(307), + [anon_sym_PIPE_EQ] = ACTIONS(307), + [sym_ellipsis] = ACTIONS(309), + [sym_integer] = ACTIONS(311), + [sym_float] = ACTIONS(309), + [anon_sym_await] = ACTIONS(313), + [sym_true] = ACTIONS(311), + [sym_false] = ACTIONS(311), + [sym_none] = ACTIONS(311), [sym_comment] = ACTIONS(3), - [anon_sym_SEMI] = ACTIONS(298), - [sym__newline] = ACTIONS(298), - [sym__string_start] = ACTIONS(310), - [sym__template_string_start] = ACTIONS(312), + [anon_sym_SEMI] = ACTIONS(303), + [sym__newline] = ACTIONS(303), + [sym__string_start] = ACTIONS(315), + [sym__template_string_start] = ACTIONS(317), }, [STATE(68)] = { - [sym_chevron] = STATE(1316), - [sym_named_expression] = STATE(1158), - [sym_expression] = STATE(1175), - [sym_primary_expression] = STATE(779), - [sym_not_operator] = STATE(1158), - [sym_boolean_operator] = STATE(1158), - [sym_binary_operator] = STATE(908), - [sym_unary_operator] = STATE(908), - [sym_comparison_operator] = STATE(1158), - [sym_lambda] = STATE(1158), - [sym_attribute] = STATE(908), - [sym_subscript] = STATE(908), - [sym_call] = STATE(908), - [sym_list] = STATE(908), - [sym_set] = STATE(908), - [sym_tuple] = STATE(908), - [sym_dictionary] = STATE(908), - [sym_list_comprehension] = STATE(908), - [sym_dictionary_comprehension] = STATE(908), - [sym_set_comprehension] = STATE(908), - [sym_generator_expression] = STATE(908), - [sym_parenthesized_expression] = STATE(908), - [sym_conditional_expression] = STATE(1158), - [sym_concatenated_string] = STATE(908), - [sym_string] = STATE(782), - [sym_concatenated_template_string] = STATE(908), - [sym_template_string] = STATE(763), - [sym_await] = STATE(908), - [sym_identifier] = ACTIONS(314), - [anon_sym_DOT] = ACTIONS(265), - [anon_sym_LPAREN] = ACTIONS(298), - [anon_sym_COMMA] = ACTIONS(270), - [anon_sym_STAR] = ACTIONS(265), - [anon_sym_print] = ACTIONS(316), - [anon_sym_GT_GT] = ACTIONS(318), - [anon_sym_COLON_EQ] = ACTIONS(278), - [anon_sym_if] = ACTIONS(265), - [anon_sym_COLON] = ACTIONS(280), - [anon_sym_async] = ACTIONS(316), - [anon_sym_in] = ACTIONS(265), - [anon_sym_match] = ACTIONS(316), - [anon_sym_PIPE] = ACTIONS(265), - [anon_sym_DASH] = ACTIONS(265), - [anon_sym_PLUS] = ACTIONS(265), - [anon_sym_LBRACK] = ACTIONS(298), - [anon_sym_LBRACE] = ACTIONS(51), - [anon_sym_STAR_STAR] = ACTIONS(265), - [anon_sym_EQ] = ACTIONS(280), - [anon_sym_exec] = ACTIONS(316), - [anon_sym_type] = ACTIONS(316), - [anon_sym_AT] = ACTIONS(265), - [anon_sym_not] = ACTIONS(265), - [anon_sym_and] = ACTIONS(265), - [anon_sym_or] = ACTIONS(265), - [anon_sym_SLASH] = ACTIONS(265), - [anon_sym_PERCENT] = ACTIONS(265), - [anon_sym_SLASH_SLASH] = ACTIONS(265), - [anon_sym_AMP] = ACTIONS(265), - [anon_sym_CARET] = ACTIONS(265), - [anon_sym_LT_LT] = ACTIONS(265), - [anon_sym_TILDE] = ACTIONS(47), - [anon_sym_LT] = ACTIONS(265), - [anon_sym_LT_EQ] = ACTIONS(298), - [anon_sym_EQ_EQ] = ACTIONS(298), - [anon_sym_BANG_EQ] = ACTIONS(298), - [anon_sym_GT_EQ] = ACTIONS(298), - [anon_sym_GT] = ACTIONS(265), - [anon_sym_LT_GT] = ACTIONS(298), - [anon_sym_is] = ACTIONS(265), - [anon_sym_lambda] = ACTIONS(71), - [anon_sym_PLUS_EQ] = ACTIONS(302), - [anon_sym_DASH_EQ] = ACTIONS(302), - [anon_sym_STAR_EQ] = ACTIONS(302), - [anon_sym_SLASH_EQ] = ACTIONS(302), - [anon_sym_AT_EQ] = ACTIONS(302), - [anon_sym_SLASH_SLASH_EQ] = ACTIONS(302), - [anon_sym_PERCENT_EQ] = ACTIONS(302), - [anon_sym_STAR_STAR_EQ] = ACTIONS(302), - [anon_sym_GT_GT_EQ] = ACTIONS(302), - [anon_sym_LT_LT_EQ] = ACTIONS(302), - [anon_sym_AMP_EQ] = ACTIONS(302), - [anon_sym_CARET_EQ] = ACTIONS(302), - [anon_sym_PIPE_EQ] = ACTIONS(302), - [sym_ellipsis] = ACTIONS(75), - [sym_integer] = ACTIONS(77), - [sym_float] = ACTIONS(75), - [anon_sym_await] = ACTIONS(320), - [sym_true] = ACTIONS(77), - [sym_false] = ACTIONS(77), - [sym_none] = ACTIONS(77), + [sym__simple_statements] = STATE(614), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1156), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), + [sym_list_splat] = STATE(1520), + [sym_dictionary_splat] = STATE(1520), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), + [sym_expression_list] = STATE(1522), + [sym_pattern] = STATE(1017), + [sym_tuple_pattern] = STATE(1001), + [sym_list_pattern] = STATE(1001), + [sym_list_splat_pattern] = STATE(1001), + [sym_expression] = STATE(1176), + [sym_primary_expression] = STATE(765), + [sym_not_operator] = STATE(1156), + [sym_boolean_operator] = STATE(1156), + [sym_binary_operator] = STATE(920), + [sym_unary_operator] = STATE(920), + [sym_comparison_operator] = STATE(1156), + [sym_lambda] = STATE(1156), + [sym_assignment] = STATE(1522), + [sym_augmented_assignment] = STATE(1522), + [sym_pattern_list] = STATE(1026), + [sym_yield] = STATE(1522), + [sym_attribute] = STATE(582), + [sym_subscript] = STATE(582), + [sym_call] = STATE(920), + [sym_list] = STATE(920), + [sym_set] = STATE(920), + [sym_tuple] = STATE(920), + [sym_dictionary] = STATE(920), + [sym_list_comprehension] = STATE(920), + [sym_dictionary_comprehension] = STATE(920), + [sym_set_comprehension] = STATE(920), + [sym_generator_expression] = STATE(920), + [sym_parenthesized_expression] = STATE(920), + [sym_conditional_expression] = STATE(1156), + [sym_concatenated_string] = STATE(920), + [sym_string] = STATE(775), + [sym_concatenated_template_string] = STATE(920), + [sym_template_string] = STATE(769), + [sym_await] = STATE(920), + [sym_identifier] = ACTIONS(7), + [anon_sym_lazy] = ACTIONS(9), + [anon_sym_import] = ACTIONS(11), + [anon_sym_from] = ACTIONS(13), + [anon_sym_LPAREN] = ACTIONS(15), + [anon_sym_STAR] = ACTIONS(17), + [anon_sym_print] = ACTIONS(19), + [anon_sym_assert] = ACTIONS(21), + [anon_sym_return] = ACTIONS(23), + [anon_sym_del] = ACTIONS(25), + [anon_sym_raise] = ACTIONS(27), + [anon_sym_pass] = ACTIONS(29), + [anon_sym_break] = ACTIONS(31), + [anon_sym_continue] = ACTIONS(33), + [anon_sym_async] = ACTIONS(319), + [anon_sym_match] = ACTIONS(319), + [anon_sym_DASH] = ACTIONS(49), + [anon_sym_PLUS] = ACTIONS(49), + [anon_sym_LBRACK] = ACTIONS(51), + [anon_sym_LBRACE] = ACTIONS(53), + [anon_sym_STAR_STAR] = ACTIONS(55), + [anon_sym_global] = ACTIONS(59), + [anon_sym_nonlocal] = ACTIONS(61), + [anon_sym_exec] = ACTIONS(63), + [anon_sym_type] = ACTIONS(65), + [anon_sym_not] = ACTIONS(71), + [anon_sym_TILDE] = ACTIONS(49), + [anon_sym_lambda] = ACTIONS(73), + [anon_sym_yield] = ACTIONS(75), + [sym_ellipsis] = ACTIONS(77), + [sym_integer] = ACTIONS(79), + [sym_float] = ACTIONS(77), + [anon_sym_await] = ACTIONS(81), + [sym_true] = ACTIONS(79), + [sym_false] = ACTIONS(79), + [sym_none] = ACTIONS(79), [sym_comment] = ACTIONS(3), - [anon_sym_SEMI] = ACTIONS(298), - [sym__newline] = ACTIONS(298), - [sym__string_start] = ACTIONS(81), - [sym__template_string_start] = ACTIONS(83), + [sym__newline] = ACTIONS(321), + [sym__indent] = ACTIONS(323), + [sym__string_start] = ACTIONS(83), + [sym__template_string_start] = ACTIONS(85), }, [STATE(69)] = { - [sym__simple_statements] = STATE(1171), - [sym_import_statement] = STATE(1373), - [sym_future_import_statement] = STATE(1373), - [sym_import_from_statement] = STATE(1373), - [sym_print_statement] = STATE(1373), - [sym_assert_statement] = STATE(1373), - [sym_expression_statement] = STATE(1373), - [sym_named_expression] = STATE(1158), - [sym_return_statement] = STATE(1373), - [sym_delete_statement] = STATE(1373), - [sym_raise_statement] = STATE(1373), - [sym_pass_statement] = STATE(1373), - [sym_break_statement] = STATE(1373), - [sym_continue_statement] = STATE(1373), - [sym_list_splat] = STATE(1549), - [sym_dictionary_splat] = STATE(1549), - [sym_global_statement] = STATE(1373), - [sym_nonlocal_statement] = STATE(1373), - [sym_exec_statement] = STATE(1373), - [sym_type_alias_statement] = STATE(1373), - [sym_expression_list] = STATE(1551), - [sym_pattern] = STATE(1013), - [sym_tuple_pattern] = STATE(999), - [sym_list_pattern] = STATE(999), - [sym_list_splat_pattern] = STATE(999), - [sym_expression] = STATE(1185), - [sym_primary_expression] = STATE(779), - [sym_not_operator] = STATE(1158), - [sym_boolean_operator] = STATE(1158), - [sym_binary_operator] = STATE(908), - [sym_unary_operator] = STATE(908), - [sym_comparison_operator] = STATE(1158), - [sym_lambda] = STATE(1158), - [sym_assignment] = STATE(1551), - [sym_augmented_assignment] = STATE(1551), - [sym_pattern_list] = STATE(1024), - [sym_yield] = STATE(1551), - [sym_attribute] = STATE(494), - [sym_subscript] = STATE(494), - [sym_call] = STATE(908), - [sym_list] = STATE(908), - [sym_set] = STATE(908), - [sym_tuple] = STATE(908), - [sym_dictionary] = STATE(908), - [sym_list_comprehension] = STATE(908), - [sym_dictionary_comprehension] = STATE(908), - [sym_set_comprehension] = STATE(908), - [sym_generator_expression] = STATE(908), - [sym_parenthesized_expression] = STATE(908), - [sym_conditional_expression] = STATE(1158), - [sym_concatenated_string] = STATE(908), - [sym_string] = STATE(782), - [sym_concatenated_template_string] = STATE(908), - [sym_template_string] = STATE(763), - [sym_await] = STATE(908), + [sym__simple_statements] = STATE(567), + [sym_import_statement] = STATE(1301), + [sym_future_import_statement] = STATE(1301), + [sym_import_from_statement] = STATE(1301), + [sym_print_statement] = STATE(1301), + [sym_assert_statement] = STATE(1301), + [sym_expression_statement] = STATE(1301), + [sym_named_expression] = STATE(1156), + [sym_return_statement] = STATE(1301), + [sym_delete_statement] = STATE(1301), + [sym_raise_statement] = STATE(1301), + [sym_pass_statement] = STATE(1301), + [sym_break_statement] = STATE(1301), + [sym_continue_statement] = STATE(1301), + [sym_list_splat] = STATE(1520), + [sym_dictionary_splat] = STATE(1520), + [sym_global_statement] = STATE(1301), + [sym_nonlocal_statement] = STATE(1301), + [sym_exec_statement] = STATE(1301), + [sym_type_alias_statement] = STATE(1301), + [sym_expression_list] = STATE(1522), + [sym_pattern] = STATE(1017), + [sym_tuple_pattern] = STATE(1001), + [sym_list_pattern] = STATE(1001), + [sym_list_splat_pattern] = STATE(1001), + [sym_expression] = STATE(1176), + [sym_primary_expression] = STATE(765), + [sym_not_operator] = STATE(1156), + [sym_boolean_operator] = STATE(1156), + [sym_binary_operator] = STATE(920), + [sym_unary_operator] = STATE(920), + [sym_comparison_operator] = STATE(1156), + [sym_lambda] = STATE(1156), + [sym_assignment] = STATE(1522), + [sym_augmented_assignment] = STATE(1522), + [sym_pattern_list] = STATE(1026), + [sym_yield] = STATE(1522), + [sym_attribute] = STATE(582), + [sym_subscript] = STATE(582), + [sym_call] = STATE(920), + [sym_list] = STATE(920), + [sym_set] = STATE(920), + [sym_tuple] = STATE(920), + [sym_dictionary] = STATE(920), + [sym_list_comprehension] = STATE(920), + [sym_dictionary_comprehension] = STATE(920), + [sym_set_comprehension] = STATE(920), + [sym_generator_expression] = STATE(920), + [sym_parenthesized_expression] = STATE(920), + [sym_conditional_expression] = STATE(1156), + [sym_concatenated_string] = STATE(920), + [sym_string] = STATE(775), + [sym_concatenated_template_string] = STATE(920), + [sym_template_string] = STATE(769), + [sym_await] = STATE(920), [sym_identifier] = ACTIONS(7), - [anon_sym_import] = ACTIONS(9), - [anon_sym_from] = ACTIONS(11), - [anon_sym_LPAREN] = ACTIONS(13), - [anon_sym_STAR] = ACTIONS(15), - [anon_sym_print] = ACTIONS(17), - [anon_sym_assert] = ACTIONS(19), - [anon_sym_return] = ACTIONS(21), - [anon_sym_del] = ACTIONS(23), - [anon_sym_raise] = ACTIONS(25), - [anon_sym_pass] = ACTIONS(27), - [anon_sym_break] = ACTIONS(29), - [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(322), - [anon_sym_match] = ACTIONS(322), - [anon_sym_DASH] = ACTIONS(47), - [anon_sym_PLUS] = ACTIONS(47), - [anon_sym_LBRACK] = ACTIONS(49), - [anon_sym_LBRACE] = ACTIONS(51), - [anon_sym_STAR_STAR] = ACTIONS(53), - [anon_sym_global] = ACTIONS(57), - [anon_sym_nonlocal] = ACTIONS(59), - [anon_sym_exec] = ACTIONS(61), - [anon_sym_type] = ACTIONS(63), - [anon_sym_not] = ACTIONS(69), - [anon_sym_TILDE] = ACTIONS(47), - [anon_sym_lambda] = ACTIONS(71), - [anon_sym_yield] = ACTIONS(73), - [sym_ellipsis] = ACTIONS(75), - [sym_integer] = ACTIONS(77), - [sym_float] = ACTIONS(75), - [anon_sym_await] = ACTIONS(79), - [sym_true] = ACTIONS(77), - [sym_false] = ACTIONS(77), - [sym_none] = ACTIONS(77), + [anon_sym_lazy] = ACTIONS(9), + [anon_sym_import] = ACTIONS(11), + [anon_sym_from] = ACTIONS(13), + [anon_sym_LPAREN] = ACTIONS(15), + [anon_sym_STAR] = ACTIONS(17), + [anon_sym_print] = ACTIONS(19), + [anon_sym_assert] = ACTIONS(21), + [anon_sym_return] = ACTIONS(23), + [anon_sym_del] = ACTIONS(25), + [anon_sym_raise] = ACTIONS(27), + [anon_sym_pass] = ACTIONS(29), + [anon_sym_break] = ACTIONS(31), + [anon_sym_continue] = ACTIONS(33), + [anon_sym_async] = ACTIONS(319), + [anon_sym_match] = ACTIONS(319), + [anon_sym_DASH] = ACTIONS(49), + [anon_sym_PLUS] = ACTIONS(49), + [anon_sym_LBRACK] = ACTIONS(51), + [anon_sym_LBRACE] = ACTIONS(53), + [anon_sym_STAR_STAR] = ACTIONS(55), + [anon_sym_global] = ACTIONS(59), + [anon_sym_nonlocal] = ACTIONS(61), + [anon_sym_exec] = ACTIONS(63), + [anon_sym_type] = ACTIONS(65), + [anon_sym_not] = ACTIONS(71), + [anon_sym_TILDE] = ACTIONS(49), + [anon_sym_lambda] = ACTIONS(73), + [anon_sym_yield] = ACTIONS(75), + [sym_ellipsis] = ACTIONS(77), + [sym_integer] = ACTIONS(79), + [sym_float] = ACTIONS(77), + [anon_sym_await] = ACTIONS(81), + [sym_true] = ACTIONS(79), + [sym_false] = ACTIONS(79), + [sym_none] = ACTIONS(79), [sym_comment] = ACTIONS(3), - [sym__newline] = ACTIONS(324), - [sym__indent] = ACTIONS(326), - [sym__string_start] = ACTIONS(81), - [sym__template_string_start] = ACTIONS(83), + [sym__newline] = ACTIONS(325), + [sym__indent] = ACTIONS(327), + [sym__string_start] = ACTIONS(83), + [sym__template_string_start] = ACTIONS(85), }, [STATE(70)] = { - [sym__simple_statements] = STATE(436), - [sym_import_statement] = STATE(1348), - [sym_future_import_statement] = STATE(1348), - [sym_import_from_statement] = STATE(1348), - [sym_print_statement] = STATE(1348), - [sym_assert_statement] = STATE(1348), - [sym_expression_statement] = STATE(1348), - [sym_named_expression] = STATE(1158), - [sym_return_statement] = STATE(1348), - [sym_delete_statement] = STATE(1348), - [sym_raise_statement] = STATE(1348), - [sym_pass_statement] = STATE(1348), - [sym_break_statement] = STATE(1348), - [sym_continue_statement] = STATE(1348), - [sym_list_splat] = STATE(1549), - [sym_dictionary_splat] = STATE(1549), - [sym_global_statement] = STATE(1348), - [sym_nonlocal_statement] = STATE(1348), - [sym_exec_statement] = STATE(1348), - [sym_type_alias_statement] = STATE(1348), - [sym_expression_list] = STATE(1551), - [sym_pattern] = STATE(1013), - [sym_tuple_pattern] = STATE(999), - [sym_list_pattern] = STATE(999), - [sym_list_splat_pattern] = STATE(999), - [sym_expression] = STATE(1185), - [sym_primary_expression] = STATE(779), - [sym_not_operator] = STATE(1158), - [sym_boolean_operator] = STATE(1158), - [sym_binary_operator] = STATE(908), - [sym_unary_operator] = STATE(908), - [sym_comparison_operator] = STATE(1158), - [sym_lambda] = STATE(1158), - [sym_assignment] = STATE(1551), - [sym_augmented_assignment] = STATE(1551), - [sym_pattern_list] = STATE(1024), - [sym_yield] = STATE(1551), - [sym_attribute] = STATE(494), - [sym_subscript] = STATE(494), - [sym_call] = STATE(908), - [sym_list] = STATE(908), - [sym_set] = STATE(908), - [sym_tuple] = STATE(908), - [sym_dictionary] = STATE(908), - [sym_list_comprehension] = STATE(908), - [sym_dictionary_comprehension] = STATE(908), - [sym_set_comprehension] = STATE(908), - [sym_generator_expression] = STATE(908), - [sym_parenthesized_expression] = STATE(908), - [sym_conditional_expression] = STATE(1158), - [sym_concatenated_string] = STATE(908), - [sym_string] = STATE(782), - [sym_concatenated_template_string] = STATE(908), - [sym_template_string] = STATE(763), - [sym_await] = STATE(908), + [sym__simple_statements] = STATE(573), + [sym_import_statement] = STATE(1301), + [sym_future_import_statement] = STATE(1301), + [sym_import_from_statement] = STATE(1301), + [sym_print_statement] = STATE(1301), + [sym_assert_statement] = STATE(1301), + [sym_expression_statement] = STATE(1301), + [sym_named_expression] = STATE(1156), + [sym_return_statement] = STATE(1301), + [sym_delete_statement] = STATE(1301), + [sym_raise_statement] = STATE(1301), + [sym_pass_statement] = STATE(1301), + [sym_break_statement] = STATE(1301), + [sym_continue_statement] = STATE(1301), + [sym_list_splat] = STATE(1520), + [sym_dictionary_splat] = STATE(1520), + [sym_global_statement] = STATE(1301), + [sym_nonlocal_statement] = STATE(1301), + [sym_exec_statement] = STATE(1301), + [sym_type_alias_statement] = STATE(1301), + [sym_expression_list] = STATE(1522), + [sym_pattern] = STATE(1017), + [sym_tuple_pattern] = STATE(1001), + [sym_list_pattern] = STATE(1001), + [sym_list_splat_pattern] = STATE(1001), + [sym_expression] = STATE(1176), + [sym_primary_expression] = STATE(765), + [sym_not_operator] = STATE(1156), + [sym_boolean_operator] = STATE(1156), + [sym_binary_operator] = STATE(920), + [sym_unary_operator] = STATE(920), + [sym_comparison_operator] = STATE(1156), + [sym_lambda] = STATE(1156), + [sym_assignment] = STATE(1522), + [sym_augmented_assignment] = STATE(1522), + [sym_pattern_list] = STATE(1026), + [sym_yield] = STATE(1522), + [sym_attribute] = STATE(582), + [sym_subscript] = STATE(582), + [sym_call] = STATE(920), + [sym_list] = STATE(920), + [sym_set] = STATE(920), + [sym_tuple] = STATE(920), + [sym_dictionary] = STATE(920), + [sym_list_comprehension] = STATE(920), + [sym_dictionary_comprehension] = STATE(920), + [sym_set_comprehension] = STATE(920), + [sym_generator_expression] = STATE(920), + [sym_parenthesized_expression] = STATE(920), + [sym_conditional_expression] = STATE(1156), + [sym_concatenated_string] = STATE(920), + [sym_string] = STATE(775), + [sym_concatenated_template_string] = STATE(920), + [sym_template_string] = STATE(769), + [sym_await] = STATE(920), [sym_identifier] = ACTIONS(7), - [anon_sym_import] = ACTIONS(9), - [anon_sym_from] = ACTIONS(11), - [anon_sym_LPAREN] = ACTIONS(13), - [anon_sym_STAR] = ACTIONS(15), - [anon_sym_print] = ACTIONS(17), - [anon_sym_assert] = ACTIONS(19), - [anon_sym_return] = ACTIONS(21), - [anon_sym_del] = ACTIONS(23), - [anon_sym_raise] = ACTIONS(25), - [anon_sym_pass] = ACTIONS(27), - [anon_sym_break] = ACTIONS(29), - [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(322), - [anon_sym_match] = ACTIONS(322), - [anon_sym_DASH] = ACTIONS(47), - [anon_sym_PLUS] = ACTIONS(47), - [anon_sym_LBRACK] = ACTIONS(49), - [anon_sym_LBRACE] = ACTIONS(51), - [anon_sym_STAR_STAR] = ACTIONS(53), - [anon_sym_global] = ACTIONS(57), - [anon_sym_nonlocal] = ACTIONS(59), - [anon_sym_exec] = ACTIONS(61), - [anon_sym_type] = ACTIONS(63), - [anon_sym_not] = ACTIONS(69), - [anon_sym_TILDE] = ACTIONS(47), - [anon_sym_lambda] = ACTIONS(71), - [anon_sym_yield] = ACTIONS(73), - [sym_ellipsis] = ACTIONS(75), - [sym_integer] = ACTIONS(77), - [sym_float] = ACTIONS(75), - [anon_sym_await] = ACTIONS(79), - [sym_true] = ACTIONS(77), - [sym_false] = ACTIONS(77), - [sym_none] = ACTIONS(77), + [anon_sym_lazy] = ACTIONS(9), + [anon_sym_import] = ACTIONS(11), + [anon_sym_from] = ACTIONS(13), + [anon_sym_LPAREN] = ACTIONS(15), + [anon_sym_STAR] = ACTIONS(17), + [anon_sym_print] = ACTIONS(19), + [anon_sym_assert] = ACTIONS(21), + [anon_sym_return] = ACTIONS(23), + [anon_sym_del] = ACTIONS(25), + [anon_sym_raise] = ACTIONS(27), + [anon_sym_pass] = ACTIONS(29), + [anon_sym_break] = ACTIONS(31), + [anon_sym_continue] = ACTIONS(33), + [anon_sym_async] = ACTIONS(319), + [anon_sym_match] = ACTIONS(319), + [anon_sym_DASH] = ACTIONS(49), + [anon_sym_PLUS] = ACTIONS(49), + [anon_sym_LBRACK] = ACTIONS(51), + [anon_sym_LBRACE] = ACTIONS(53), + [anon_sym_STAR_STAR] = ACTIONS(55), + [anon_sym_global] = ACTIONS(59), + [anon_sym_nonlocal] = ACTIONS(61), + [anon_sym_exec] = ACTIONS(63), + [anon_sym_type] = ACTIONS(65), + [anon_sym_not] = ACTIONS(71), + [anon_sym_TILDE] = ACTIONS(49), + [anon_sym_lambda] = ACTIONS(73), + [anon_sym_yield] = ACTIONS(75), + [sym_ellipsis] = ACTIONS(77), + [sym_integer] = ACTIONS(79), + [sym_float] = ACTIONS(77), + [anon_sym_await] = ACTIONS(81), + [sym_true] = ACTIONS(79), + [sym_false] = ACTIONS(79), + [sym_none] = ACTIONS(79), [sym_comment] = ACTIONS(3), - [sym__newline] = ACTIONS(328), - [sym__indent] = ACTIONS(330), - [sym__string_start] = ACTIONS(81), - [sym__template_string_start] = ACTIONS(83), + [sym__newline] = ACTIONS(329), + [sym__indent] = ACTIONS(331), + [sym__string_start] = ACTIONS(83), + [sym__template_string_start] = ACTIONS(85), }, [STATE(71)] = { - [sym__simple_statements] = STATE(550), - [sym_import_statement] = STATE(1348), - [sym_future_import_statement] = STATE(1348), - [sym_import_from_statement] = STATE(1348), - [sym_print_statement] = STATE(1348), - [sym_assert_statement] = STATE(1348), - [sym_expression_statement] = STATE(1348), - [sym_named_expression] = STATE(1158), - [sym_return_statement] = STATE(1348), - [sym_delete_statement] = STATE(1348), - [sym_raise_statement] = STATE(1348), - [sym_pass_statement] = STATE(1348), - [sym_break_statement] = STATE(1348), - [sym_continue_statement] = STATE(1348), - [sym_list_splat] = STATE(1549), - [sym_dictionary_splat] = STATE(1549), - [sym_global_statement] = STATE(1348), - [sym_nonlocal_statement] = STATE(1348), - [sym_exec_statement] = STATE(1348), - [sym_type_alias_statement] = STATE(1348), - [sym_expression_list] = STATE(1551), - [sym_pattern] = STATE(1013), - [sym_tuple_pattern] = STATE(999), - [sym_list_pattern] = STATE(999), - [sym_list_splat_pattern] = STATE(999), - [sym_expression] = STATE(1185), - [sym_primary_expression] = STATE(779), - [sym_not_operator] = STATE(1158), - [sym_boolean_operator] = STATE(1158), - [sym_binary_operator] = STATE(908), - [sym_unary_operator] = STATE(908), - [sym_comparison_operator] = STATE(1158), - [sym_lambda] = STATE(1158), - [sym_assignment] = STATE(1551), - [sym_augmented_assignment] = STATE(1551), - [sym_pattern_list] = STATE(1024), - [sym_yield] = STATE(1551), - [sym_attribute] = STATE(494), - [sym_subscript] = STATE(494), - [sym_call] = STATE(908), - [sym_list] = STATE(908), - [sym_set] = STATE(908), - [sym_tuple] = STATE(908), - [sym_dictionary] = STATE(908), - [sym_list_comprehension] = STATE(908), - [sym_dictionary_comprehension] = STATE(908), - [sym_set_comprehension] = STATE(908), - [sym_generator_expression] = STATE(908), - [sym_parenthesized_expression] = STATE(908), - [sym_conditional_expression] = STATE(1158), - [sym_concatenated_string] = STATE(908), - [sym_string] = STATE(782), - [sym_concatenated_template_string] = STATE(908), - [sym_template_string] = STATE(763), - [sym_await] = STATE(908), + [sym__simple_statements] = STATE(477), + [sym_import_statement] = STATE(1301), + [sym_future_import_statement] = STATE(1301), + [sym_import_from_statement] = STATE(1301), + [sym_print_statement] = STATE(1301), + [sym_assert_statement] = STATE(1301), + [sym_expression_statement] = STATE(1301), + [sym_named_expression] = STATE(1156), + [sym_return_statement] = STATE(1301), + [sym_delete_statement] = STATE(1301), + [sym_raise_statement] = STATE(1301), + [sym_pass_statement] = STATE(1301), + [sym_break_statement] = STATE(1301), + [sym_continue_statement] = STATE(1301), + [sym_list_splat] = STATE(1520), + [sym_dictionary_splat] = STATE(1520), + [sym_global_statement] = STATE(1301), + [sym_nonlocal_statement] = STATE(1301), + [sym_exec_statement] = STATE(1301), + [sym_type_alias_statement] = STATE(1301), + [sym_expression_list] = STATE(1522), + [sym_pattern] = STATE(1017), + [sym_tuple_pattern] = STATE(1001), + [sym_list_pattern] = STATE(1001), + [sym_list_splat_pattern] = STATE(1001), + [sym_expression] = STATE(1176), + [sym_primary_expression] = STATE(765), + [sym_not_operator] = STATE(1156), + [sym_boolean_operator] = STATE(1156), + [sym_binary_operator] = STATE(920), + [sym_unary_operator] = STATE(920), + [sym_comparison_operator] = STATE(1156), + [sym_lambda] = STATE(1156), + [sym_assignment] = STATE(1522), + [sym_augmented_assignment] = STATE(1522), + [sym_pattern_list] = STATE(1026), + [sym_yield] = STATE(1522), + [sym_attribute] = STATE(582), + [sym_subscript] = STATE(582), + [sym_call] = STATE(920), + [sym_list] = STATE(920), + [sym_set] = STATE(920), + [sym_tuple] = STATE(920), + [sym_dictionary] = STATE(920), + [sym_list_comprehension] = STATE(920), + [sym_dictionary_comprehension] = STATE(920), + [sym_set_comprehension] = STATE(920), + [sym_generator_expression] = STATE(920), + [sym_parenthesized_expression] = STATE(920), + [sym_conditional_expression] = STATE(1156), + [sym_concatenated_string] = STATE(920), + [sym_string] = STATE(775), + [sym_concatenated_template_string] = STATE(920), + [sym_template_string] = STATE(769), + [sym_await] = STATE(920), [sym_identifier] = ACTIONS(7), - [anon_sym_import] = ACTIONS(9), - [anon_sym_from] = ACTIONS(11), - [anon_sym_LPAREN] = ACTIONS(13), - [anon_sym_STAR] = ACTIONS(15), - [anon_sym_print] = ACTIONS(17), - [anon_sym_assert] = ACTIONS(19), - [anon_sym_return] = ACTIONS(21), - [anon_sym_del] = ACTIONS(23), - [anon_sym_raise] = ACTIONS(25), - [anon_sym_pass] = ACTIONS(27), - [anon_sym_break] = ACTIONS(29), - [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(322), - [anon_sym_match] = ACTIONS(322), - [anon_sym_DASH] = ACTIONS(47), - [anon_sym_PLUS] = ACTIONS(47), - [anon_sym_LBRACK] = ACTIONS(49), - [anon_sym_LBRACE] = ACTIONS(51), - [anon_sym_STAR_STAR] = ACTIONS(53), - [anon_sym_global] = ACTIONS(57), - [anon_sym_nonlocal] = ACTIONS(59), - [anon_sym_exec] = ACTIONS(61), - [anon_sym_type] = ACTIONS(63), - [anon_sym_not] = ACTIONS(69), - [anon_sym_TILDE] = ACTIONS(47), - [anon_sym_lambda] = ACTIONS(71), - [anon_sym_yield] = ACTIONS(73), - [sym_ellipsis] = ACTIONS(75), - [sym_integer] = ACTIONS(77), - [sym_float] = ACTIONS(75), - [anon_sym_await] = ACTIONS(79), - [sym_true] = ACTIONS(77), - [sym_false] = ACTIONS(77), - [sym_none] = ACTIONS(77), + [anon_sym_lazy] = ACTIONS(9), + [anon_sym_import] = ACTIONS(11), + [anon_sym_from] = ACTIONS(13), + [anon_sym_LPAREN] = ACTIONS(15), + [anon_sym_STAR] = ACTIONS(17), + [anon_sym_print] = ACTIONS(19), + [anon_sym_assert] = ACTIONS(21), + [anon_sym_return] = ACTIONS(23), + [anon_sym_del] = ACTIONS(25), + [anon_sym_raise] = ACTIONS(27), + [anon_sym_pass] = ACTIONS(29), + [anon_sym_break] = ACTIONS(31), + [anon_sym_continue] = ACTIONS(33), + [anon_sym_async] = ACTIONS(319), + [anon_sym_match] = ACTIONS(319), + [anon_sym_DASH] = ACTIONS(49), + [anon_sym_PLUS] = ACTIONS(49), + [anon_sym_LBRACK] = ACTIONS(51), + [anon_sym_LBRACE] = ACTIONS(53), + [anon_sym_STAR_STAR] = ACTIONS(55), + [anon_sym_global] = ACTIONS(59), + [anon_sym_nonlocal] = ACTIONS(61), + [anon_sym_exec] = ACTIONS(63), + [anon_sym_type] = ACTIONS(65), + [anon_sym_not] = ACTIONS(71), + [anon_sym_TILDE] = ACTIONS(49), + [anon_sym_lambda] = ACTIONS(73), + [anon_sym_yield] = ACTIONS(75), + [sym_ellipsis] = ACTIONS(77), + [sym_integer] = ACTIONS(79), + [sym_float] = ACTIONS(77), + [anon_sym_await] = ACTIONS(81), + [sym_true] = ACTIONS(79), + [sym_false] = ACTIONS(79), + [sym_none] = ACTIONS(79), [sym_comment] = ACTIONS(3), - [sym__newline] = ACTIONS(332), - [sym__indent] = ACTIONS(334), - [sym__string_start] = ACTIONS(81), - [sym__template_string_start] = ACTIONS(83), + [sym__newline] = ACTIONS(333), + [sym__indent] = ACTIONS(335), + [sym__string_start] = ACTIONS(83), + [sym__template_string_start] = ACTIONS(85), }, [STATE(72)] = { - [sym__simple_statements] = STATE(581), - [sym_import_statement] = STATE(1348), - [sym_future_import_statement] = STATE(1348), - [sym_import_from_statement] = STATE(1348), - [sym_print_statement] = STATE(1348), - [sym_assert_statement] = STATE(1348), - [sym_expression_statement] = STATE(1348), - [sym_named_expression] = STATE(1158), - [sym_return_statement] = STATE(1348), - [sym_delete_statement] = STATE(1348), - [sym_raise_statement] = STATE(1348), - [sym_pass_statement] = STATE(1348), - [sym_break_statement] = STATE(1348), - [sym_continue_statement] = STATE(1348), - [sym_list_splat] = STATE(1549), - [sym_dictionary_splat] = STATE(1549), - [sym_global_statement] = STATE(1348), - [sym_nonlocal_statement] = STATE(1348), - [sym_exec_statement] = STATE(1348), - [sym_type_alias_statement] = STATE(1348), - [sym_expression_list] = STATE(1551), - [sym_pattern] = STATE(1013), - [sym_tuple_pattern] = STATE(999), - [sym_list_pattern] = STATE(999), - [sym_list_splat_pattern] = STATE(999), - [sym_expression] = STATE(1185), - [sym_primary_expression] = STATE(779), - [sym_not_operator] = STATE(1158), - [sym_boolean_operator] = STATE(1158), - [sym_binary_operator] = STATE(908), - [sym_unary_operator] = STATE(908), - [sym_comparison_operator] = STATE(1158), - [sym_lambda] = STATE(1158), - [sym_assignment] = STATE(1551), - [sym_augmented_assignment] = STATE(1551), - [sym_pattern_list] = STATE(1024), - [sym_yield] = STATE(1551), - [sym_attribute] = STATE(494), - [sym_subscript] = STATE(494), - [sym_call] = STATE(908), - [sym_list] = STATE(908), - [sym_set] = STATE(908), - [sym_tuple] = STATE(908), - [sym_dictionary] = STATE(908), - [sym_list_comprehension] = STATE(908), - [sym_dictionary_comprehension] = STATE(908), - [sym_set_comprehension] = STATE(908), - [sym_generator_expression] = STATE(908), - [sym_parenthesized_expression] = STATE(908), - [sym_conditional_expression] = STATE(1158), - [sym_concatenated_string] = STATE(908), - [sym_string] = STATE(782), - [sym_concatenated_template_string] = STATE(908), - [sym_template_string] = STATE(763), - [sym_await] = STATE(908), + [sym__simple_statements] = STATE(576), + [sym_import_statement] = STATE(1301), + [sym_future_import_statement] = STATE(1301), + [sym_import_from_statement] = STATE(1301), + [sym_print_statement] = STATE(1301), + [sym_assert_statement] = STATE(1301), + [sym_expression_statement] = STATE(1301), + [sym_named_expression] = STATE(1156), + [sym_return_statement] = STATE(1301), + [sym_delete_statement] = STATE(1301), + [sym_raise_statement] = STATE(1301), + [sym_pass_statement] = STATE(1301), + [sym_break_statement] = STATE(1301), + [sym_continue_statement] = STATE(1301), + [sym_list_splat] = STATE(1520), + [sym_dictionary_splat] = STATE(1520), + [sym_global_statement] = STATE(1301), + [sym_nonlocal_statement] = STATE(1301), + [sym_exec_statement] = STATE(1301), + [sym_type_alias_statement] = STATE(1301), + [sym_expression_list] = STATE(1522), + [sym_pattern] = STATE(1017), + [sym_tuple_pattern] = STATE(1001), + [sym_list_pattern] = STATE(1001), + [sym_list_splat_pattern] = STATE(1001), + [sym_expression] = STATE(1176), + [sym_primary_expression] = STATE(765), + [sym_not_operator] = STATE(1156), + [sym_boolean_operator] = STATE(1156), + [sym_binary_operator] = STATE(920), + [sym_unary_operator] = STATE(920), + [sym_comparison_operator] = STATE(1156), + [sym_lambda] = STATE(1156), + [sym_assignment] = STATE(1522), + [sym_augmented_assignment] = STATE(1522), + [sym_pattern_list] = STATE(1026), + [sym_yield] = STATE(1522), + [sym_attribute] = STATE(582), + [sym_subscript] = STATE(582), + [sym_call] = STATE(920), + [sym_list] = STATE(920), + [sym_set] = STATE(920), + [sym_tuple] = STATE(920), + [sym_dictionary] = STATE(920), + [sym_list_comprehension] = STATE(920), + [sym_dictionary_comprehension] = STATE(920), + [sym_set_comprehension] = STATE(920), + [sym_generator_expression] = STATE(920), + [sym_parenthesized_expression] = STATE(920), + [sym_conditional_expression] = STATE(1156), + [sym_concatenated_string] = STATE(920), + [sym_string] = STATE(775), + [sym_concatenated_template_string] = STATE(920), + [sym_template_string] = STATE(769), + [sym_await] = STATE(920), [sym_identifier] = ACTIONS(7), - [anon_sym_import] = ACTIONS(9), - [anon_sym_from] = ACTIONS(11), - [anon_sym_LPAREN] = ACTIONS(13), - [anon_sym_STAR] = ACTIONS(15), - [anon_sym_print] = ACTIONS(17), - [anon_sym_assert] = ACTIONS(19), - [anon_sym_return] = ACTIONS(21), - [anon_sym_del] = ACTIONS(23), - [anon_sym_raise] = ACTIONS(25), - [anon_sym_pass] = ACTIONS(27), - [anon_sym_break] = ACTIONS(29), - [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(322), - [anon_sym_match] = ACTIONS(322), - [anon_sym_DASH] = ACTIONS(47), - [anon_sym_PLUS] = ACTIONS(47), - [anon_sym_LBRACK] = ACTIONS(49), - [anon_sym_LBRACE] = ACTIONS(51), - [anon_sym_STAR_STAR] = ACTIONS(53), - [anon_sym_global] = ACTIONS(57), - [anon_sym_nonlocal] = ACTIONS(59), - [anon_sym_exec] = ACTIONS(61), - [anon_sym_type] = ACTIONS(63), - [anon_sym_not] = ACTIONS(69), - [anon_sym_TILDE] = ACTIONS(47), - [anon_sym_lambda] = ACTIONS(71), - [anon_sym_yield] = ACTIONS(73), - [sym_ellipsis] = ACTIONS(75), - [sym_integer] = ACTIONS(77), - [sym_float] = ACTIONS(75), - [anon_sym_await] = ACTIONS(79), - [sym_true] = ACTIONS(77), - [sym_false] = ACTIONS(77), - [sym_none] = ACTIONS(77), + [anon_sym_lazy] = ACTIONS(9), + [anon_sym_import] = ACTIONS(11), + [anon_sym_from] = ACTIONS(13), + [anon_sym_LPAREN] = ACTIONS(15), + [anon_sym_STAR] = ACTIONS(17), + [anon_sym_print] = ACTIONS(19), + [anon_sym_assert] = ACTIONS(21), + [anon_sym_return] = ACTIONS(23), + [anon_sym_del] = ACTIONS(25), + [anon_sym_raise] = ACTIONS(27), + [anon_sym_pass] = ACTIONS(29), + [anon_sym_break] = ACTIONS(31), + [anon_sym_continue] = ACTIONS(33), + [anon_sym_async] = ACTIONS(319), + [anon_sym_match] = ACTIONS(319), + [anon_sym_DASH] = ACTIONS(49), + [anon_sym_PLUS] = ACTIONS(49), + [anon_sym_LBRACK] = ACTIONS(51), + [anon_sym_LBRACE] = ACTIONS(53), + [anon_sym_STAR_STAR] = ACTIONS(55), + [anon_sym_global] = ACTIONS(59), + [anon_sym_nonlocal] = ACTIONS(61), + [anon_sym_exec] = ACTIONS(63), + [anon_sym_type] = ACTIONS(65), + [anon_sym_not] = ACTIONS(71), + [anon_sym_TILDE] = ACTIONS(49), + [anon_sym_lambda] = ACTIONS(73), + [anon_sym_yield] = ACTIONS(75), + [sym_ellipsis] = ACTIONS(77), + [sym_integer] = ACTIONS(79), + [sym_float] = ACTIONS(77), + [anon_sym_await] = ACTIONS(81), + [sym_true] = ACTIONS(79), + [sym_false] = ACTIONS(79), + [sym_none] = ACTIONS(79), [sym_comment] = ACTIONS(3), - [sym__newline] = ACTIONS(336), - [sym__indent] = ACTIONS(338), - [sym__string_start] = ACTIONS(81), - [sym__template_string_start] = ACTIONS(83), + [sym__newline] = ACTIONS(337), + [sym__indent] = ACTIONS(339), + [sym__string_start] = ACTIONS(83), + [sym__template_string_start] = ACTIONS(85), }, [STATE(73)] = { - [sym__simple_statements] = STATE(442), - [sym_import_statement] = STATE(1348), - [sym_future_import_statement] = STATE(1348), - [sym_import_from_statement] = STATE(1348), - [sym_print_statement] = STATE(1348), - [sym_assert_statement] = STATE(1348), - [sym_expression_statement] = STATE(1348), - [sym_named_expression] = STATE(1158), - [sym_return_statement] = STATE(1348), - [sym_delete_statement] = STATE(1348), - [sym_raise_statement] = STATE(1348), - [sym_pass_statement] = STATE(1348), - [sym_break_statement] = STATE(1348), - [sym_continue_statement] = STATE(1348), - [sym_list_splat] = STATE(1549), - [sym_dictionary_splat] = STATE(1549), - [sym_global_statement] = STATE(1348), - [sym_nonlocal_statement] = STATE(1348), - [sym_exec_statement] = STATE(1348), - [sym_type_alias_statement] = STATE(1348), - [sym_expression_list] = STATE(1551), - [sym_pattern] = STATE(1013), - [sym_tuple_pattern] = STATE(999), - [sym_list_pattern] = STATE(999), - [sym_list_splat_pattern] = STATE(999), - [sym_expression] = STATE(1185), - [sym_primary_expression] = STATE(779), - [sym_not_operator] = STATE(1158), - [sym_boolean_operator] = STATE(1158), - [sym_binary_operator] = STATE(908), - [sym_unary_operator] = STATE(908), - [sym_comparison_operator] = STATE(1158), - [sym_lambda] = STATE(1158), - [sym_assignment] = STATE(1551), - [sym_augmented_assignment] = STATE(1551), - [sym_pattern_list] = STATE(1024), - [sym_yield] = STATE(1551), - [sym_attribute] = STATE(494), - [sym_subscript] = STATE(494), - [sym_call] = STATE(908), - [sym_list] = STATE(908), - [sym_set] = STATE(908), - [sym_tuple] = STATE(908), - [sym_dictionary] = STATE(908), - [sym_list_comprehension] = STATE(908), - [sym_dictionary_comprehension] = STATE(908), - [sym_set_comprehension] = STATE(908), - [sym_generator_expression] = STATE(908), - [sym_parenthesized_expression] = STATE(908), - [sym_conditional_expression] = STATE(1158), - [sym_concatenated_string] = STATE(908), - [sym_string] = STATE(782), - [sym_concatenated_template_string] = STATE(908), - [sym_template_string] = STATE(763), - [sym_await] = STATE(908), - [sym_identifier] = ACTIONS(7), - [anon_sym_import] = ACTIONS(9), - [anon_sym_from] = ACTIONS(11), - [anon_sym_LPAREN] = ACTIONS(13), - [anon_sym_STAR] = ACTIONS(15), - [anon_sym_print] = ACTIONS(17), - [anon_sym_assert] = ACTIONS(19), - [anon_sym_return] = ACTIONS(21), - [anon_sym_del] = ACTIONS(23), - [anon_sym_raise] = ACTIONS(25), - [anon_sym_pass] = ACTIONS(27), - [anon_sym_break] = ACTIONS(29), - [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(322), - [anon_sym_match] = ACTIONS(322), - [anon_sym_DASH] = ACTIONS(47), - [anon_sym_PLUS] = ACTIONS(47), - [anon_sym_LBRACK] = ACTIONS(49), - [anon_sym_LBRACE] = ACTIONS(51), - [anon_sym_STAR_STAR] = ACTIONS(53), - [anon_sym_global] = ACTIONS(57), - [anon_sym_nonlocal] = ACTIONS(59), - [anon_sym_exec] = ACTIONS(61), - [anon_sym_type] = ACTIONS(63), - [anon_sym_not] = ACTIONS(69), - [anon_sym_TILDE] = ACTIONS(47), - [anon_sym_lambda] = ACTIONS(71), - [anon_sym_yield] = ACTIONS(73), - [sym_ellipsis] = ACTIONS(75), - [sym_integer] = ACTIONS(77), - [sym_float] = ACTIONS(75), - [anon_sym_await] = ACTIONS(79), - [sym_true] = ACTIONS(77), - [sym_false] = ACTIONS(77), - [sym_none] = ACTIONS(77), - [sym_comment] = ACTIONS(3), - [sym__newline] = ACTIONS(340), - [sym__indent] = ACTIONS(342), - [sym__string_start] = ACTIONS(81), - [sym__template_string_start] = ACTIONS(83), - }, - [STATE(74)] = { - [sym__simple_statements] = STATE(606), - [sym_import_statement] = STATE(1348), - [sym_future_import_statement] = STATE(1348), - [sym_import_from_statement] = STATE(1348), - [sym_print_statement] = STATE(1348), - [sym_assert_statement] = STATE(1348), - [sym_expression_statement] = STATE(1348), - [sym_named_expression] = STATE(1158), - [sym_return_statement] = STATE(1348), - [sym_delete_statement] = STATE(1348), - [sym_raise_statement] = STATE(1348), - [sym_pass_statement] = STATE(1348), - [sym_break_statement] = STATE(1348), - [sym_continue_statement] = STATE(1348), - [sym_list_splat] = STATE(1549), - [sym_dictionary_splat] = STATE(1549), - [sym_global_statement] = STATE(1348), - [sym_nonlocal_statement] = STATE(1348), - [sym_exec_statement] = STATE(1348), - [sym_type_alias_statement] = STATE(1348), - [sym_expression_list] = STATE(1551), - [sym_pattern] = STATE(1013), - [sym_tuple_pattern] = STATE(999), - [sym_list_pattern] = STATE(999), - [sym_list_splat_pattern] = STATE(999), - [sym_expression] = STATE(1185), - [sym_primary_expression] = STATE(779), - [sym_not_operator] = STATE(1158), - [sym_boolean_operator] = STATE(1158), - [sym_binary_operator] = STATE(908), - [sym_unary_operator] = STATE(908), - [sym_comparison_operator] = STATE(1158), - [sym_lambda] = STATE(1158), - [sym_assignment] = STATE(1551), - [sym_augmented_assignment] = STATE(1551), - [sym_pattern_list] = STATE(1024), - [sym_yield] = STATE(1551), - [sym_attribute] = STATE(494), - [sym_subscript] = STATE(494), - [sym_call] = STATE(908), - [sym_list] = STATE(908), - [sym_set] = STATE(908), - [sym_tuple] = STATE(908), - [sym_dictionary] = STATE(908), - [sym_list_comprehension] = STATE(908), - [sym_dictionary_comprehension] = STATE(908), - [sym_set_comprehension] = STATE(908), - [sym_generator_expression] = STATE(908), - [sym_parenthesized_expression] = STATE(908), - [sym_conditional_expression] = STATE(1158), - [sym_concatenated_string] = STATE(908), - [sym_string] = STATE(782), - [sym_concatenated_template_string] = STATE(908), - [sym_template_string] = STATE(763), - [sym_await] = STATE(908), - [sym_identifier] = ACTIONS(7), - [anon_sym_import] = ACTIONS(9), - [anon_sym_from] = ACTIONS(11), - [anon_sym_LPAREN] = ACTIONS(13), - [anon_sym_STAR] = ACTIONS(15), - [anon_sym_print] = ACTIONS(17), - [anon_sym_assert] = ACTIONS(19), - [anon_sym_return] = ACTIONS(21), - [anon_sym_del] = ACTIONS(23), - [anon_sym_raise] = ACTIONS(25), - [anon_sym_pass] = ACTIONS(27), - [anon_sym_break] = ACTIONS(29), - [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(322), - [anon_sym_match] = ACTIONS(322), - [anon_sym_DASH] = ACTIONS(47), - [anon_sym_PLUS] = ACTIONS(47), - [anon_sym_LBRACK] = ACTIONS(49), - [anon_sym_LBRACE] = ACTIONS(51), - [anon_sym_STAR_STAR] = ACTIONS(53), - [anon_sym_global] = ACTIONS(57), - [anon_sym_nonlocal] = ACTIONS(59), - [anon_sym_exec] = ACTIONS(61), - [anon_sym_type] = ACTIONS(63), - [anon_sym_not] = ACTIONS(69), - [anon_sym_TILDE] = ACTIONS(47), - [anon_sym_lambda] = ACTIONS(71), - [anon_sym_yield] = ACTIONS(73), - [sym_ellipsis] = ACTIONS(75), - [sym_integer] = ACTIONS(77), - [sym_float] = ACTIONS(75), - [anon_sym_await] = ACTIONS(79), - [sym_true] = ACTIONS(77), - [sym_false] = ACTIONS(77), - [sym_none] = ACTIONS(77), - [sym_comment] = ACTIONS(3), - [sym__newline] = ACTIONS(344), - [sym__indent] = ACTIONS(346), - [sym__string_start] = ACTIONS(81), - [sym__template_string_start] = ACTIONS(83), - }, - [STATE(75)] = { - [sym__simple_statements] = STATE(482), - [sym_import_statement] = STATE(1348), - [sym_future_import_statement] = STATE(1348), - [sym_import_from_statement] = STATE(1348), - [sym_print_statement] = STATE(1348), - [sym_assert_statement] = STATE(1348), - [sym_expression_statement] = STATE(1348), - [sym_named_expression] = STATE(1158), - [sym_return_statement] = STATE(1348), - [sym_delete_statement] = STATE(1348), - [sym_raise_statement] = STATE(1348), - [sym_pass_statement] = STATE(1348), - [sym_break_statement] = STATE(1348), - [sym_continue_statement] = STATE(1348), - [sym_list_splat] = STATE(1549), - [sym_dictionary_splat] = STATE(1549), - [sym_global_statement] = STATE(1348), - [sym_nonlocal_statement] = STATE(1348), - [sym_exec_statement] = STATE(1348), - [sym_type_alias_statement] = STATE(1348), - [sym_expression_list] = STATE(1551), - [sym_pattern] = STATE(1013), - [sym_tuple_pattern] = STATE(999), - [sym_list_pattern] = STATE(999), - [sym_list_splat_pattern] = STATE(999), - [sym_expression] = STATE(1185), - [sym_primary_expression] = STATE(779), - [sym_not_operator] = STATE(1158), - [sym_boolean_operator] = STATE(1158), - [sym_binary_operator] = STATE(908), - [sym_unary_operator] = STATE(908), - [sym_comparison_operator] = STATE(1158), - [sym_lambda] = STATE(1158), - [sym_assignment] = STATE(1551), - [sym_augmented_assignment] = STATE(1551), - [sym_pattern_list] = STATE(1024), - [sym_yield] = STATE(1551), - [sym_attribute] = STATE(494), - [sym_subscript] = STATE(494), - [sym_call] = STATE(908), - [sym_list] = STATE(908), - [sym_set] = STATE(908), - [sym_tuple] = STATE(908), - [sym_dictionary] = STATE(908), - [sym_list_comprehension] = STATE(908), - [sym_dictionary_comprehension] = STATE(908), - [sym_set_comprehension] = STATE(908), - [sym_generator_expression] = STATE(908), - [sym_parenthesized_expression] = STATE(908), - [sym_conditional_expression] = STATE(1158), - [sym_concatenated_string] = STATE(908), - [sym_string] = STATE(782), - [sym_concatenated_template_string] = STATE(908), - [sym_template_string] = STATE(763), - [sym_await] = STATE(908), - [sym_identifier] = ACTIONS(7), - [anon_sym_import] = ACTIONS(9), - [anon_sym_from] = ACTIONS(11), - [anon_sym_LPAREN] = ACTIONS(13), - [anon_sym_STAR] = ACTIONS(15), - [anon_sym_print] = ACTIONS(17), - [anon_sym_assert] = ACTIONS(19), - [anon_sym_return] = ACTIONS(21), - [anon_sym_del] = ACTIONS(23), - [anon_sym_raise] = ACTIONS(25), - [anon_sym_pass] = ACTIONS(27), - [anon_sym_break] = ACTIONS(29), - [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(322), - [anon_sym_match] = ACTIONS(322), - [anon_sym_DASH] = ACTIONS(47), - [anon_sym_PLUS] = ACTIONS(47), - [anon_sym_LBRACK] = ACTIONS(49), - [anon_sym_LBRACE] = ACTIONS(51), - [anon_sym_STAR_STAR] = ACTIONS(53), - [anon_sym_global] = ACTIONS(57), - [anon_sym_nonlocal] = ACTIONS(59), - [anon_sym_exec] = ACTIONS(61), - [anon_sym_type] = ACTIONS(63), - [anon_sym_not] = ACTIONS(69), - [anon_sym_TILDE] = ACTIONS(47), - [anon_sym_lambda] = ACTIONS(71), - [anon_sym_yield] = ACTIONS(73), - [sym_ellipsis] = ACTIONS(75), - [sym_integer] = ACTIONS(77), - [sym_float] = ACTIONS(75), - [anon_sym_await] = ACTIONS(79), - [sym_true] = ACTIONS(77), - [sym_false] = ACTIONS(77), - [sym_none] = ACTIONS(77), - [sym_comment] = ACTIONS(3), - [sym__newline] = ACTIONS(348), - [sym__indent] = ACTIONS(350), - [sym__string_start] = ACTIONS(81), - [sym__template_string_start] = ACTIONS(83), - }, - [STATE(76)] = { - [sym__simple_statements] = STATE(319), + [sym__simple_statements] = STATE(325), [sym_import_statement] = STATE(1332), [sym_future_import_statement] = STATE(1332), [sym_import_from_statement] = STATE(1332), [sym_print_statement] = STATE(1332), [sym_assert_statement] = STATE(1332), [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1158), + [sym_named_expression] = STATE(1156), [sym_return_statement] = STATE(1332), [sym_delete_statement] = STATE(1332), [sym_raise_statement] = STATE(1332), [sym_pass_statement] = STATE(1332), [sym_break_statement] = STATE(1332), [sym_continue_statement] = STATE(1332), - [sym_list_splat] = STATE(1549), - [sym_dictionary_splat] = STATE(1549), + [sym_list_splat] = STATE(1520), + [sym_dictionary_splat] = STATE(1520), [sym_global_statement] = STATE(1332), [sym_nonlocal_statement] = STATE(1332), [sym_exec_statement] = STATE(1332), [sym_type_alias_statement] = STATE(1332), - [sym_expression_list] = STATE(1551), - [sym_pattern] = STATE(1013), - [sym_tuple_pattern] = STATE(999), - [sym_list_pattern] = STATE(999), - [sym_list_splat_pattern] = STATE(999), - [sym_expression] = STATE(1185), - [sym_primary_expression] = STATE(779), - [sym_not_operator] = STATE(1158), - [sym_boolean_operator] = STATE(1158), - [sym_binary_operator] = STATE(908), - [sym_unary_operator] = STATE(908), - [sym_comparison_operator] = STATE(1158), - [sym_lambda] = STATE(1158), - [sym_assignment] = STATE(1551), - [sym_augmented_assignment] = STATE(1551), - [sym_pattern_list] = STATE(1024), - [sym_yield] = STATE(1551), - [sym_attribute] = STATE(494), - [sym_subscript] = STATE(494), - [sym_call] = STATE(908), - [sym_list] = STATE(908), - [sym_set] = STATE(908), - [sym_tuple] = STATE(908), - [sym_dictionary] = STATE(908), - [sym_list_comprehension] = STATE(908), - [sym_dictionary_comprehension] = STATE(908), - [sym_set_comprehension] = STATE(908), - [sym_generator_expression] = STATE(908), - [sym_parenthesized_expression] = STATE(908), - [sym_conditional_expression] = STATE(1158), - [sym_concatenated_string] = STATE(908), - [sym_string] = STATE(782), - [sym_concatenated_template_string] = STATE(908), - [sym_template_string] = STATE(763), - [sym_await] = STATE(908), + [sym_expression_list] = STATE(1522), + [sym_pattern] = STATE(1017), + [sym_tuple_pattern] = STATE(1001), + [sym_list_pattern] = STATE(1001), + [sym_list_splat_pattern] = STATE(1001), + [sym_expression] = STATE(1176), + [sym_primary_expression] = STATE(765), + [sym_not_operator] = STATE(1156), + [sym_boolean_operator] = STATE(1156), + [sym_binary_operator] = STATE(920), + [sym_unary_operator] = STATE(920), + [sym_comparison_operator] = STATE(1156), + [sym_lambda] = STATE(1156), + [sym_assignment] = STATE(1522), + [sym_augmented_assignment] = STATE(1522), + [sym_pattern_list] = STATE(1026), + [sym_yield] = STATE(1522), + [sym_attribute] = STATE(582), + [sym_subscript] = STATE(582), + [sym_call] = STATE(920), + [sym_list] = STATE(920), + [sym_set] = STATE(920), + [sym_tuple] = STATE(920), + [sym_dictionary] = STATE(920), + [sym_list_comprehension] = STATE(920), + [sym_dictionary_comprehension] = STATE(920), + [sym_set_comprehension] = STATE(920), + [sym_generator_expression] = STATE(920), + [sym_parenthesized_expression] = STATE(920), + [sym_conditional_expression] = STATE(1156), + [sym_concatenated_string] = STATE(920), + [sym_string] = STATE(775), + [sym_concatenated_template_string] = STATE(920), + [sym_template_string] = STATE(769), + [sym_await] = STATE(920), [sym_identifier] = ACTIONS(7), - [anon_sym_import] = ACTIONS(9), - [anon_sym_from] = ACTIONS(11), - [anon_sym_LPAREN] = ACTIONS(13), - [anon_sym_STAR] = ACTIONS(15), - [anon_sym_print] = ACTIONS(17), - [anon_sym_assert] = ACTIONS(19), - [anon_sym_return] = ACTIONS(21), - [anon_sym_del] = ACTIONS(23), - [anon_sym_raise] = ACTIONS(25), - [anon_sym_pass] = ACTIONS(27), - [anon_sym_break] = ACTIONS(29), - [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(322), - [anon_sym_match] = ACTIONS(322), - [anon_sym_DASH] = ACTIONS(47), - [anon_sym_PLUS] = ACTIONS(47), - [anon_sym_LBRACK] = ACTIONS(49), - [anon_sym_LBRACE] = ACTIONS(51), - [anon_sym_STAR_STAR] = ACTIONS(53), - [anon_sym_global] = ACTIONS(57), - [anon_sym_nonlocal] = ACTIONS(59), - [anon_sym_exec] = ACTIONS(61), - [anon_sym_type] = ACTIONS(63), - [anon_sym_not] = ACTIONS(69), - [anon_sym_TILDE] = ACTIONS(47), - [anon_sym_lambda] = ACTIONS(71), - [anon_sym_yield] = ACTIONS(73), - [sym_ellipsis] = ACTIONS(75), - [sym_integer] = ACTIONS(77), - [sym_float] = ACTIONS(75), - [anon_sym_await] = ACTIONS(79), - [sym_true] = ACTIONS(77), - [sym_false] = ACTIONS(77), - [sym_none] = ACTIONS(77), + [anon_sym_lazy] = ACTIONS(9), + [anon_sym_import] = ACTIONS(11), + [anon_sym_from] = ACTIONS(13), + [anon_sym_LPAREN] = ACTIONS(15), + [anon_sym_STAR] = ACTIONS(17), + [anon_sym_print] = ACTIONS(19), + [anon_sym_assert] = ACTIONS(21), + [anon_sym_return] = ACTIONS(23), + [anon_sym_del] = ACTIONS(25), + [anon_sym_raise] = ACTIONS(27), + [anon_sym_pass] = ACTIONS(29), + [anon_sym_break] = ACTIONS(31), + [anon_sym_continue] = ACTIONS(33), + [anon_sym_async] = ACTIONS(319), + [anon_sym_match] = ACTIONS(319), + [anon_sym_DASH] = ACTIONS(49), + [anon_sym_PLUS] = ACTIONS(49), + [anon_sym_LBRACK] = ACTIONS(51), + [anon_sym_LBRACE] = ACTIONS(53), + [anon_sym_STAR_STAR] = ACTIONS(55), + [anon_sym_global] = ACTIONS(59), + [anon_sym_nonlocal] = ACTIONS(61), + [anon_sym_exec] = ACTIONS(63), + [anon_sym_type] = ACTIONS(65), + [anon_sym_not] = ACTIONS(71), + [anon_sym_TILDE] = ACTIONS(49), + [anon_sym_lambda] = ACTIONS(73), + [anon_sym_yield] = ACTIONS(75), + [sym_ellipsis] = ACTIONS(77), + [sym_integer] = ACTIONS(79), + [sym_float] = ACTIONS(77), + [anon_sym_await] = ACTIONS(81), + [sym_true] = ACTIONS(79), + [sym_false] = ACTIONS(79), + [sym_none] = ACTIONS(79), [sym_comment] = ACTIONS(3), - [sym__newline] = ACTIONS(352), - [sym__indent] = ACTIONS(354), - [sym__string_start] = ACTIONS(81), - [sym__template_string_start] = ACTIONS(83), + [sym__newline] = ACTIONS(341), + [sym__indent] = ACTIONS(343), + [sym__string_start] = ACTIONS(83), + [sym__template_string_start] = ACTIONS(85), }, - [STATE(77)] = { - [sym__simple_statements] = STATE(489), + [STATE(74)] = { + [sym__simple_statements] = STATE(463), [sym_import_statement] = STATE(1332), [sym_future_import_statement] = STATE(1332), [sym_import_from_statement] = STATE(1332), [sym_print_statement] = STATE(1332), [sym_assert_statement] = STATE(1332), [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1158), + [sym_named_expression] = STATE(1156), [sym_return_statement] = STATE(1332), [sym_delete_statement] = STATE(1332), [sym_raise_statement] = STATE(1332), [sym_pass_statement] = STATE(1332), [sym_break_statement] = STATE(1332), [sym_continue_statement] = STATE(1332), - [sym_list_splat] = STATE(1549), - [sym_dictionary_splat] = STATE(1549), + [sym_list_splat] = STATE(1520), + [sym_dictionary_splat] = STATE(1520), [sym_global_statement] = STATE(1332), [sym_nonlocal_statement] = STATE(1332), [sym_exec_statement] = STATE(1332), [sym_type_alias_statement] = STATE(1332), - [sym_expression_list] = STATE(1551), - [sym_pattern] = STATE(1013), - [sym_tuple_pattern] = STATE(999), - [sym_list_pattern] = STATE(999), - [sym_list_splat_pattern] = STATE(999), - [sym_expression] = STATE(1185), - [sym_primary_expression] = STATE(779), - [sym_not_operator] = STATE(1158), - [sym_boolean_operator] = STATE(1158), - [sym_binary_operator] = STATE(908), - [sym_unary_operator] = STATE(908), - [sym_comparison_operator] = STATE(1158), - [sym_lambda] = STATE(1158), - [sym_assignment] = STATE(1551), - [sym_augmented_assignment] = STATE(1551), - [sym_pattern_list] = STATE(1024), - [sym_yield] = STATE(1551), - [sym_attribute] = STATE(494), - [sym_subscript] = STATE(494), - [sym_call] = STATE(908), - [sym_list] = STATE(908), - [sym_set] = STATE(908), - [sym_tuple] = STATE(908), - [sym_dictionary] = STATE(908), - [sym_list_comprehension] = STATE(908), - [sym_dictionary_comprehension] = STATE(908), - [sym_set_comprehension] = STATE(908), - [sym_generator_expression] = STATE(908), - [sym_parenthesized_expression] = STATE(908), - [sym_conditional_expression] = STATE(1158), - [sym_concatenated_string] = STATE(908), - [sym_string] = STATE(782), - [sym_concatenated_template_string] = STATE(908), - [sym_template_string] = STATE(763), - [sym_await] = STATE(908), + [sym_expression_list] = STATE(1522), + [sym_pattern] = STATE(1017), + [sym_tuple_pattern] = STATE(1001), + [sym_list_pattern] = STATE(1001), + [sym_list_splat_pattern] = STATE(1001), + [sym_expression] = STATE(1176), + [sym_primary_expression] = STATE(765), + [sym_not_operator] = STATE(1156), + [sym_boolean_operator] = STATE(1156), + [sym_binary_operator] = STATE(920), + [sym_unary_operator] = STATE(920), + [sym_comparison_operator] = STATE(1156), + [sym_lambda] = STATE(1156), + [sym_assignment] = STATE(1522), + [sym_augmented_assignment] = STATE(1522), + [sym_pattern_list] = STATE(1026), + [sym_yield] = STATE(1522), + [sym_attribute] = STATE(582), + [sym_subscript] = STATE(582), + [sym_call] = STATE(920), + [sym_list] = STATE(920), + [sym_set] = STATE(920), + [sym_tuple] = STATE(920), + [sym_dictionary] = STATE(920), + [sym_list_comprehension] = STATE(920), + [sym_dictionary_comprehension] = STATE(920), + [sym_set_comprehension] = STATE(920), + [sym_generator_expression] = STATE(920), + [sym_parenthesized_expression] = STATE(920), + [sym_conditional_expression] = STATE(1156), + [sym_concatenated_string] = STATE(920), + [sym_string] = STATE(775), + [sym_concatenated_template_string] = STATE(920), + [sym_template_string] = STATE(769), + [sym_await] = STATE(920), [sym_identifier] = ACTIONS(7), - [anon_sym_import] = ACTIONS(9), - [anon_sym_from] = ACTIONS(11), - [anon_sym_LPAREN] = ACTIONS(13), - [anon_sym_STAR] = ACTIONS(15), - [anon_sym_print] = ACTIONS(17), - [anon_sym_assert] = ACTIONS(19), - [anon_sym_return] = ACTIONS(21), - [anon_sym_del] = ACTIONS(23), - [anon_sym_raise] = ACTIONS(25), - [anon_sym_pass] = ACTIONS(27), - [anon_sym_break] = ACTIONS(29), - [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(322), - [anon_sym_match] = ACTIONS(322), - [anon_sym_DASH] = ACTIONS(47), - [anon_sym_PLUS] = ACTIONS(47), - [anon_sym_LBRACK] = ACTIONS(49), - [anon_sym_LBRACE] = ACTIONS(51), - [anon_sym_STAR_STAR] = ACTIONS(53), - [anon_sym_global] = ACTIONS(57), - [anon_sym_nonlocal] = ACTIONS(59), - [anon_sym_exec] = ACTIONS(61), - [anon_sym_type] = ACTIONS(63), - [anon_sym_not] = ACTIONS(69), - [anon_sym_TILDE] = ACTIONS(47), - [anon_sym_lambda] = ACTIONS(71), - [anon_sym_yield] = ACTIONS(73), - [sym_ellipsis] = ACTIONS(75), - [sym_integer] = ACTIONS(77), - [sym_float] = ACTIONS(75), - [anon_sym_await] = ACTIONS(79), - [sym_true] = ACTIONS(77), - [sym_false] = ACTIONS(77), - [sym_none] = ACTIONS(77), + [anon_sym_lazy] = ACTIONS(9), + [anon_sym_import] = ACTIONS(11), + [anon_sym_from] = ACTIONS(13), + [anon_sym_LPAREN] = ACTIONS(15), + [anon_sym_STAR] = ACTIONS(17), + [anon_sym_print] = ACTIONS(19), + [anon_sym_assert] = ACTIONS(21), + [anon_sym_return] = ACTIONS(23), + [anon_sym_del] = ACTIONS(25), + [anon_sym_raise] = ACTIONS(27), + [anon_sym_pass] = ACTIONS(29), + [anon_sym_break] = ACTIONS(31), + [anon_sym_continue] = ACTIONS(33), + [anon_sym_async] = ACTIONS(319), + [anon_sym_match] = ACTIONS(319), + [anon_sym_DASH] = ACTIONS(49), + [anon_sym_PLUS] = ACTIONS(49), + [anon_sym_LBRACK] = ACTIONS(51), + [anon_sym_LBRACE] = ACTIONS(53), + [anon_sym_STAR_STAR] = ACTIONS(55), + [anon_sym_global] = ACTIONS(59), + [anon_sym_nonlocal] = ACTIONS(61), + [anon_sym_exec] = ACTIONS(63), + [anon_sym_type] = ACTIONS(65), + [anon_sym_not] = ACTIONS(71), + [anon_sym_TILDE] = ACTIONS(49), + [anon_sym_lambda] = ACTIONS(73), + [anon_sym_yield] = ACTIONS(75), + [sym_ellipsis] = ACTIONS(77), + [sym_integer] = ACTIONS(79), + [sym_float] = ACTIONS(77), + [anon_sym_await] = ACTIONS(81), + [sym_true] = ACTIONS(79), + [sym_false] = ACTIONS(79), + [sym_none] = ACTIONS(79), [sym_comment] = ACTIONS(3), - [sym__newline] = ACTIONS(356), - [sym__indent] = ACTIONS(358), - [sym__string_start] = ACTIONS(81), - [sym__template_string_start] = ACTIONS(83), + [sym__newline] = ACTIONS(345), + [sym__indent] = ACTIONS(347), + [sym__string_start] = ACTIONS(83), + [sym__template_string_start] = ACTIONS(85), }, - [STATE(78)] = { - [sym__simple_statements] = STATE(554), + [STATE(75)] = { + [sym_chevron] = STATE(1370), + [sym_named_expression] = STATE(1156), + [sym_expression] = STATE(1181), + [sym_primary_expression] = STATE(765), + [sym_not_operator] = STATE(1156), + [sym_boolean_operator] = STATE(1156), + [sym_binary_operator] = STATE(920), + [sym_unary_operator] = STATE(920), + [sym_comparison_operator] = STATE(1156), + [sym_lambda] = STATE(1156), + [sym_attribute] = STATE(920), + [sym_subscript] = STATE(920), + [sym_call] = STATE(920), + [sym_list] = STATE(920), + [sym_set] = STATE(920), + [sym_tuple] = STATE(920), + [sym_dictionary] = STATE(920), + [sym_list_comprehension] = STATE(920), + [sym_dictionary_comprehension] = STATE(920), + [sym_set_comprehension] = STATE(920), + [sym_generator_expression] = STATE(920), + [sym_parenthesized_expression] = STATE(920), + [sym_conditional_expression] = STATE(1156), + [sym_concatenated_string] = STATE(920), + [sym_string] = STATE(775), + [sym_concatenated_template_string] = STATE(920), + [sym_template_string] = STATE(769), + [sym_await] = STATE(920), + [sym_identifier] = ACTIONS(349), + [anon_sym_lazy] = ACTIONS(351), + [anon_sym_DOT] = ACTIONS(272), + [anon_sym_LPAREN] = ACTIONS(303), + [anon_sym_COMMA] = ACTIONS(277), + [anon_sym_STAR] = ACTIONS(272), + [anon_sym_print] = ACTIONS(351), + [anon_sym_GT_GT] = ACTIONS(353), + [anon_sym_COLON_EQ] = ACTIONS(283), + [anon_sym_if] = ACTIONS(272), + [anon_sym_COLON] = ACTIONS(285), + [anon_sym_async] = ACTIONS(351), + [anon_sym_in] = ACTIONS(272), + [anon_sym_match] = ACTIONS(351), + [anon_sym_PIPE] = ACTIONS(272), + [anon_sym_DASH] = ACTIONS(272), + [anon_sym_PLUS] = ACTIONS(272), + [anon_sym_LBRACK] = ACTIONS(303), + [anon_sym_LBRACE] = ACTIONS(53), + [anon_sym_STAR_STAR] = ACTIONS(272), + [anon_sym_EQ] = ACTIONS(285), + [anon_sym_exec] = ACTIONS(351), + [anon_sym_type] = ACTIONS(351), + [anon_sym_AT] = ACTIONS(272), + [anon_sym_not] = ACTIONS(272), + [anon_sym_and] = ACTIONS(272), + [anon_sym_or] = ACTIONS(272), + [anon_sym_SLASH] = ACTIONS(272), + [anon_sym_PERCENT] = ACTIONS(272), + [anon_sym_SLASH_SLASH] = ACTIONS(272), + [anon_sym_AMP] = ACTIONS(272), + [anon_sym_CARET] = ACTIONS(272), + [anon_sym_LT_LT] = ACTIONS(272), + [anon_sym_TILDE] = ACTIONS(49), + [anon_sym_LT] = ACTIONS(272), + [anon_sym_LT_EQ] = ACTIONS(303), + [anon_sym_EQ_EQ] = ACTIONS(303), + [anon_sym_BANG_EQ] = ACTIONS(303), + [anon_sym_GT_EQ] = ACTIONS(303), + [anon_sym_GT] = ACTIONS(272), + [anon_sym_LT_GT] = ACTIONS(303), + [anon_sym_is] = ACTIONS(272), + [anon_sym_lambda] = ACTIONS(73), + [anon_sym_PLUS_EQ] = ACTIONS(307), + [anon_sym_DASH_EQ] = ACTIONS(307), + [anon_sym_STAR_EQ] = ACTIONS(307), + [anon_sym_SLASH_EQ] = ACTIONS(307), + [anon_sym_AT_EQ] = ACTIONS(307), + [anon_sym_SLASH_SLASH_EQ] = ACTIONS(307), + [anon_sym_PERCENT_EQ] = ACTIONS(307), + [anon_sym_STAR_STAR_EQ] = ACTIONS(307), + [anon_sym_GT_GT_EQ] = ACTIONS(307), + [anon_sym_LT_LT_EQ] = ACTIONS(307), + [anon_sym_AMP_EQ] = ACTIONS(307), + [anon_sym_CARET_EQ] = ACTIONS(307), + [anon_sym_PIPE_EQ] = ACTIONS(307), + [sym_ellipsis] = ACTIONS(77), + [sym_integer] = ACTIONS(79), + [sym_float] = ACTIONS(77), + [anon_sym_await] = ACTIONS(355), + [sym_true] = ACTIONS(79), + [sym_false] = ACTIONS(79), + [sym_none] = ACTIONS(79), + [sym_comment] = ACTIONS(3), + [anon_sym_SEMI] = ACTIONS(303), + [sym__newline] = ACTIONS(303), + [sym__string_start] = ACTIONS(83), + [sym__template_string_start] = ACTIONS(85), + }, + [STATE(76)] = { + [sym__simple_statements] = STATE(513), [sym_import_statement] = STATE(1332), [sym_future_import_statement] = STATE(1332), [sym_import_from_statement] = STATE(1332), [sym_print_statement] = STATE(1332), [sym_assert_statement] = STATE(1332), [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1158), + [sym_named_expression] = STATE(1156), [sym_return_statement] = STATE(1332), [sym_delete_statement] = STATE(1332), [sym_raise_statement] = STATE(1332), [sym_pass_statement] = STATE(1332), [sym_break_statement] = STATE(1332), [sym_continue_statement] = STATE(1332), - [sym_list_splat] = STATE(1549), - [sym_dictionary_splat] = STATE(1549), + [sym_list_splat] = STATE(1520), + [sym_dictionary_splat] = STATE(1520), [sym_global_statement] = STATE(1332), [sym_nonlocal_statement] = STATE(1332), [sym_exec_statement] = STATE(1332), [sym_type_alias_statement] = STATE(1332), - [sym_expression_list] = STATE(1551), - [sym_pattern] = STATE(1013), - [sym_tuple_pattern] = STATE(999), - [sym_list_pattern] = STATE(999), - [sym_list_splat_pattern] = STATE(999), - [sym_expression] = STATE(1185), - [sym_primary_expression] = STATE(779), - [sym_not_operator] = STATE(1158), - [sym_boolean_operator] = STATE(1158), - [sym_binary_operator] = STATE(908), - [sym_unary_operator] = STATE(908), - [sym_comparison_operator] = STATE(1158), - [sym_lambda] = STATE(1158), - [sym_assignment] = STATE(1551), - [sym_augmented_assignment] = STATE(1551), - [sym_pattern_list] = STATE(1024), - [sym_yield] = STATE(1551), - [sym_attribute] = STATE(494), - [sym_subscript] = STATE(494), - [sym_call] = STATE(908), - [sym_list] = STATE(908), - [sym_set] = STATE(908), - [sym_tuple] = STATE(908), - [sym_dictionary] = STATE(908), - [sym_list_comprehension] = STATE(908), - [sym_dictionary_comprehension] = STATE(908), - [sym_set_comprehension] = STATE(908), - [sym_generator_expression] = STATE(908), - [sym_parenthesized_expression] = STATE(908), - [sym_conditional_expression] = STATE(1158), - [sym_concatenated_string] = STATE(908), - [sym_string] = STATE(782), - [sym_concatenated_template_string] = STATE(908), - [sym_template_string] = STATE(763), - [sym_await] = STATE(908), + [sym_expression_list] = STATE(1522), + [sym_pattern] = STATE(1017), + [sym_tuple_pattern] = STATE(1001), + [sym_list_pattern] = STATE(1001), + [sym_list_splat_pattern] = STATE(1001), + [sym_expression] = STATE(1176), + [sym_primary_expression] = STATE(765), + [sym_not_operator] = STATE(1156), + [sym_boolean_operator] = STATE(1156), + [sym_binary_operator] = STATE(920), + [sym_unary_operator] = STATE(920), + [sym_comparison_operator] = STATE(1156), + [sym_lambda] = STATE(1156), + [sym_assignment] = STATE(1522), + [sym_augmented_assignment] = STATE(1522), + [sym_pattern_list] = STATE(1026), + [sym_yield] = STATE(1522), + [sym_attribute] = STATE(582), + [sym_subscript] = STATE(582), + [sym_call] = STATE(920), + [sym_list] = STATE(920), + [sym_set] = STATE(920), + [sym_tuple] = STATE(920), + [sym_dictionary] = STATE(920), + [sym_list_comprehension] = STATE(920), + [sym_dictionary_comprehension] = STATE(920), + [sym_set_comprehension] = STATE(920), + [sym_generator_expression] = STATE(920), + [sym_parenthesized_expression] = STATE(920), + [sym_conditional_expression] = STATE(1156), + [sym_concatenated_string] = STATE(920), + [sym_string] = STATE(775), + [sym_concatenated_template_string] = STATE(920), + [sym_template_string] = STATE(769), + [sym_await] = STATE(920), [sym_identifier] = ACTIONS(7), - [anon_sym_import] = ACTIONS(9), - [anon_sym_from] = ACTIONS(11), - [anon_sym_LPAREN] = ACTIONS(13), - [anon_sym_STAR] = ACTIONS(15), - [anon_sym_print] = ACTIONS(17), - [anon_sym_assert] = ACTIONS(19), - [anon_sym_return] = ACTIONS(21), - [anon_sym_del] = ACTIONS(23), - [anon_sym_raise] = ACTIONS(25), - [anon_sym_pass] = ACTIONS(27), - [anon_sym_break] = ACTIONS(29), - [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(322), - [anon_sym_match] = ACTIONS(322), - [anon_sym_DASH] = ACTIONS(47), - [anon_sym_PLUS] = ACTIONS(47), - [anon_sym_LBRACK] = ACTIONS(49), - [anon_sym_LBRACE] = ACTIONS(51), - [anon_sym_STAR_STAR] = ACTIONS(53), - [anon_sym_global] = ACTIONS(57), - [anon_sym_nonlocal] = ACTIONS(59), - [anon_sym_exec] = ACTIONS(61), - [anon_sym_type] = ACTIONS(63), - [anon_sym_not] = ACTIONS(69), - [anon_sym_TILDE] = ACTIONS(47), - [anon_sym_lambda] = ACTIONS(71), - [anon_sym_yield] = ACTIONS(73), - [sym_ellipsis] = ACTIONS(75), - [sym_integer] = ACTIONS(77), - [sym_float] = ACTIONS(75), - [anon_sym_await] = ACTIONS(79), - [sym_true] = ACTIONS(77), - [sym_false] = ACTIONS(77), - [sym_none] = ACTIONS(77), + [anon_sym_lazy] = ACTIONS(9), + [anon_sym_import] = ACTIONS(11), + [anon_sym_from] = ACTIONS(13), + [anon_sym_LPAREN] = ACTIONS(15), + [anon_sym_STAR] = ACTIONS(17), + [anon_sym_print] = ACTIONS(19), + [anon_sym_assert] = ACTIONS(21), + [anon_sym_return] = ACTIONS(23), + [anon_sym_del] = ACTIONS(25), + [anon_sym_raise] = ACTIONS(27), + [anon_sym_pass] = ACTIONS(29), + [anon_sym_break] = ACTIONS(31), + [anon_sym_continue] = ACTIONS(33), + [anon_sym_async] = ACTIONS(319), + [anon_sym_match] = ACTIONS(319), + [anon_sym_DASH] = ACTIONS(49), + [anon_sym_PLUS] = ACTIONS(49), + [anon_sym_LBRACK] = ACTIONS(51), + [anon_sym_LBRACE] = ACTIONS(53), + [anon_sym_STAR_STAR] = ACTIONS(55), + [anon_sym_global] = ACTIONS(59), + [anon_sym_nonlocal] = ACTIONS(61), + [anon_sym_exec] = ACTIONS(63), + [anon_sym_type] = ACTIONS(65), + [anon_sym_not] = ACTIONS(71), + [anon_sym_TILDE] = ACTIONS(49), + [anon_sym_lambda] = ACTIONS(73), + [anon_sym_yield] = ACTIONS(75), + [sym_ellipsis] = ACTIONS(77), + [sym_integer] = ACTIONS(79), + [sym_float] = ACTIONS(77), + [anon_sym_await] = ACTIONS(81), + [sym_true] = ACTIONS(79), + [sym_false] = ACTIONS(79), + [sym_none] = ACTIONS(79), [sym_comment] = ACTIONS(3), - [sym__newline] = ACTIONS(360), - [sym__indent] = ACTIONS(362), - [sym__string_start] = ACTIONS(81), - [sym__template_string_start] = ACTIONS(83), + [sym__newline] = ACTIONS(357), + [sym__indent] = ACTIONS(359), + [sym__string_start] = ACTIONS(83), + [sym__template_string_start] = ACTIONS(85), }, - [STATE(79)] = { - [sym__simple_statements] = STATE(557), + [STATE(77)] = { + [sym__simple_statements] = STATE(518), [sym_import_statement] = STATE(1332), [sym_future_import_statement] = STATE(1332), [sym_import_from_statement] = STATE(1332), [sym_print_statement] = STATE(1332), [sym_assert_statement] = STATE(1332), [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1158), + [sym_named_expression] = STATE(1156), [sym_return_statement] = STATE(1332), [sym_delete_statement] = STATE(1332), [sym_raise_statement] = STATE(1332), [sym_pass_statement] = STATE(1332), [sym_break_statement] = STATE(1332), [sym_continue_statement] = STATE(1332), - [sym_list_splat] = STATE(1549), - [sym_dictionary_splat] = STATE(1549), + [sym_list_splat] = STATE(1520), + [sym_dictionary_splat] = STATE(1520), [sym_global_statement] = STATE(1332), [sym_nonlocal_statement] = STATE(1332), [sym_exec_statement] = STATE(1332), [sym_type_alias_statement] = STATE(1332), - [sym_expression_list] = STATE(1551), - [sym_pattern] = STATE(1013), - [sym_tuple_pattern] = STATE(999), - [sym_list_pattern] = STATE(999), - [sym_list_splat_pattern] = STATE(999), - [sym_expression] = STATE(1185), - [sym_primary_expression] = STATE(779), - [sym_not_operator] = STATE(1158), - [sym_boolean_operator] = STATE(1158), - [sym_binary_operator] = STATE(908), - [sym_unary_operator] = STATE(908), - [sym_comparison_operator] = STATE(1158), - [sym_lambda] = STATE(1158), - [sym_assignment] = STATE(1551), - [sym_augmented_assignment] = STATE(1551), - [sym_pattern_list] = STATE(1024), - [sym_yield] = STATE(1551), - [sym_attribute] = STATE(494), - [sym_subscript] = STATE(494), - [sym_call] = STATE(908), - [sym_list] = STATE(908), - [sym_set] = STATE(908), - [sym_tuple] = STATE(908), - [sym_dictionary] = STATE(908), - [sym_list_comprehension] = STATE(908), - [sym_dictionary_comprehension] = STATE(908), - [sym_set_comprehension] = STATE(908), - [sym_generator_expression] = STATE(908), - [sym_parenthesized_expression] = STATE(908), - [sym_conditional_expression] = STATE(1158), - [sym_concatenated_string] = STATE(908), - [sym_string] = STATE(782), - [sym_concatenated_template_string] = STATE(908), - [sym_template_string] = STATE(763), - [sym_await] = STATE(908), + [sym_expression_list] = STATE(1522), + [sym_pattern] = STATE(1017), + [sym_tuple_pattern] = STATE(1001), + [sym_list_pattern] = STATE(1001), + [sym_list_splat_pattern] = STATE(1001), + [sym_expression] = STATE(1176), + [sym_primary_expression] = STATE(765), + [sym_not_operator] = STATE(1156), + [sym_boolean_operator] = STATE(1156), + [sym_binary_operator] = STATE(920), + [sym_unary_operator] = STATE(920), + [sym_comparison_operator] = STATE(1156), + [sym_lambda] = STATE(1156), + [sym_assignment] = STATE(1522), + [sym_augmented_assignment] = STATE(1522), + [sym_pattern_list] = STATE(1026), + [sym_yield] = STATE(1522), + [sym_attribute] = STATE(582), + [sym_subscript] = STATE(582), + [sym_call] = STATE(920), + [sym_list] = STATE(920), + [sym_set] = STATE(920), + [sym_tuple] = STATE(920), + [sym_dictionary] = STATE(920), + [sym_list_comprehension] = STATE(920), + [sym_dictionary_comprehension] = STATE(920), + [sym_set_comprehension] = STATE(920), + [sym_generator_expression] = STATE(920), + [sym_parenthesized_expression] = STATE(920), + [sym_conditional_expression] = STATE(1156), + [sym_concatenated_string] = STATE(920), + [sym_string] = STATE(775), + [sym_concatenated_template_string] = STATE(920), + [sym_template_string] = STATE(769), + [sym_await] = STATE(920), [sym_identifier] = ACTIONS(7), - [anon_sym_import] = ACTIONS(9), - [anon_sym_from] = ACTIONS(11), - [anon_sym_LPAREN] = ACTIONS(13), - [anon_sym_STAR] = ACTIONS(15), - [anon_sym_print] = ACTIONS(17), - [anon_sym_assert] = ACTIONS(19), - [anon_sym_return] = ACTIONS(21), - [anon_sym_del] = ACTIONS(23), - [anon_sym_raise] = ACTIONS(25), - [anon_sym_pass] = ACTIONS(27), - [anon_sym_break] = ACTIONS(29), - [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(322), - [anon_sym_match] = ACTIONS(322), - [anon_sym_DASH] = ACTIONS(47), - [anon_sym_PLUS] = ACTIONS(47), - [anon_sym_LBRACK] = ACTIONS(49), - [anon_sym_LBRACE] = ACTIONS(51), - [anon_sym_STAR_STAR] = ACTIONS(53), - [anon_sym_global] = ACTIONS(57), - [anon_sym_nonlocal] = ACTIONS(59), - [anon_sym_exec] = ACTIONS(61), - [anon_sym_type] = ACTIONS(63), - [anon_sym_not] = ACTIONS(69), - [anon_sym_TILDE] = ACTIONS(47), - [anon_sym_lambda] = ACTIONS(71), - [anon_sym_yield] = ACTIONS(73), - [sym_ellipsis] = ACTIONS(75), - [sym_integer] = ACTIONS(77), - [sym_float] = ACTIONS(75), - [anon_sym_await] = ACTIONS(79), - [sym_true] = ACTIONS(77), - [sym_false] = ACTIONS(77), - [sym_none] = ACTIONS(77), + [anon_sym_lazy] = ACTIONS(9), + [anon_sym_import] = ACTIONS(11), + [anon_sym_from] = ACTIONS(13), + [anon_sym_LPAREN] = ACTIONS(15), + [anon_sym_STAR] = ACTIONS(17), + [anon_sym_print] = ACTIONS(19), + [anon_sym_assert] = ACTIONS(21), + [anon_sym_return] = ACTIONS(23), + [anon_sym_del] = ACTIONS(25), + [anon_sym_raise] = ACTIONS(27), + [anon_sym_pass] = ACTIONS(29), + [anon_sym_break] = ACTIONS(31), + [anon_sym_continue] = ACTIONS(33), + [anon_sym_async] = ACTIONS(319), + [anon_sym_match] = ACTIONS(319), + [anon_sym_DASH] = ACTIONS(49), + [anon_sym_PLUS] = ACTIONS(49), + [anon_sym_LBRACK] = ACTIONS(51), + [anon_sym_LBRACE] = ACTIONS(53), + [anon_sym_STAR_STAR] = ACTIONS(55), + [anon_sym_global] = ACTIONS(59), + [anon_sym_nonlocal] = ACTIONS(61), + [anon_sym_exec] = ACTIONS(63), + [anon_sym_type] = ACTIONS(65), + [anon_sym_not] = ACTIONS(71), + [anon_sym_TILDE] = ACTIONS(49), + [anon_sym_lambda] = ACTIONS(73), + [anon_sym_yield] = ACTIONS(75), + [sym_ellipsis] = ACTIONS(77), + [sym_integer] = ACTIONS(79), + [sym_float] = ACTIONS(77), + [anon_sym_await] = ACTIONS(81), + [sym_true] = ACTIONS(79), + [sym_false] = ACTIONS(79), + [sym_none] = ACTIONS(79), [sym_comment] = ACTIONS(3), - [sym__newline] = ACTIONS(364), - [sym__indent] = ACTIONS(366), - [sym__string_start] = ACTIONS(81), - [sym__template_string_start] = ACTIONS(83), + [sym__newline] = ACTIONS(361), + [sym__indent] = ACTIONS(363), + [sym__string_start] = ACTIONS(83), + [sym__template_string_start] = ACTIONS(85), + }, + [STATE(78)] = { + [sym__simple_statements] = STATE(500), + [sym_import_statement] = STATE(1301), + [sym_future_import_statement] = STATE(1301), + [sym_import_from_statement] = STATE(1301), + [sym_print_statement] = STATE(1301), + [sym_assert_statement] = STATE(1301), + [sym_expression_statement] = STATE(1301), + [sym_named_expression] = STATE(1156), + [sym_return_statement] = STATE(1301), + [sym_delete_statement] = STATE(1301), + [sym_raise_statement] = STATE(1301), + [sym_pass_statement] = STATE(1301), + [sym_break_statement] = STATE(1301), + [sym_continue_statement] = STATE(1301), + [sym_list_splat] = STATE(1520), + [sym_dictionary_splat] = STATE(1520), + [sym_global_statement] = STATE(1301), + [sym_nonlocal_statement] = STATE(1301), + [sym_exec_statement] = STATE(1301), + [sym_type_alias_statement] = STATE(1301), + [sym_expression_list] = STATE(1522), + [sym_pattern] = STATE(1017), + [sym_tuple_pattern] = STATE(1001), + [sym_list_pattern] = STATE(1001), + [sym_list_splat_pattern] = STATE(1001), + [sym_expression] = STATE(1176), + [sym_primary_expression] = STATE(765), + [sym_not_operator] = STATE(1156), + [sym_boolean_operator] = STATE(1156), + [sym_binary_operator] = STATE(920), + [sym_unary_operator] = STATE(920), + [sym_comparison_operator] = STATE(1156), + [sym_lambda] = STATE(1156), + [sym_assignment] = STATE(1522), + [sym_augmented_assignment] = STATE(1522), + [sym_pattern_list] = STATE(1026), + [sym_yield] = STATE(1522), + [sym_attribute] = STATE(582), + [sym_subscript] = STATE(582), + [sym_call] = STATE(920), + [sym_list] = STATE(920), + [sym_set] = STATE(920), + [sym_tuple] = STATE(920), + [sym_dictionary] = STATE(920), + [sym_list_comprehension] = STATE(920), + [sym_dictionary_comprehension] = STATE(920), + [sym_set_comprehension] = STATE(920), + [sym_generator_expression] = STATE(920), + [sym_parenthesized_expression] = STATE(920), + [sym_conditional_expression] = STATE(1156), + [sym_concatenated_string] = STATE(920), + [sym_string] = STATE(775), + [sym_concatenated_template_string] = STATE(920), + [sym_template_string] = STATE(769), + [sym_await] = STATE(920), + [sym_identifier] = ACTIONS(7), + [anon_sym_lazy] = ACTIONS(9), + [anon_sym_import] = ACTIONS(11), + [anon_sym_from] = ACTIONS(13), + [anon_sym_LPAREN] = ACTIONS(15), + [anon_sym_STAR] = ACTIONS(17), + [anon_sym_print] = ACTIONS(19), + [anon_sym_assert] = ACTIONS(21), + [anon_sym_return] = ACTIONS(23), + [anon_sym_del] = ACTIONS(25), + [anon_sym_raise] = ACTIONS(27), + [anon_sym_pass] = ACTIONS(29), + [anon_sym_break] = ACTIONS(31), + [anon_sym_continue] = ACTIONS(33), + [anon_sym_async] = ACTIONS(319), + [anon_sym_match] = ACTIONS(319), + [anon_sym_DASH] = ACTIONS(49), + [anon_sym_PLUS] = ACTIONS(49), + [anon_sym_LBRACK] = ACTIONS(51), + [anon_sym_LBRACE] = ACTIONS(53), + [anon_sym_STAR_STAR] = ACTIONS(55), + [anon_sym_global] = ACTIONS(59), + [anon_sym_nonlocal] = ACTIONS(61), + [anon_sym_exec] = ACTIONS(63), + [anon_sym_type] = ACTIONS(65), + [anon_sym_not] = ACTIONS(71), + [anon_sym_TILDE] = ACTIONS(49), + [anon_sym_lambda] = ACTIONS(73), + [anon_sym_yield] = ACTIONS(75), + [sym_ellipsis] = ACTIONS(77), + [sym_integer] = ACTIONS(79), + [sym_float] = ACTIONS(77), + [anon_sym_await] = ACTIONS(81), + [sym_true] = ACTIONS(79), + [sym_false] = ACTIONS(79), + [sym_none] = ACTIONS(79), + [sym_comment] = ACTIONS(3), + [sym__newline] = ACTIONS(365), + [sym__indent] = ACTIONS(367), + [sym__string_start] = ACTIONS(83), + [sym__template_string_start] = ACTIONS(85), + }, + [STATE(79)] = { + [sym__simple_statements] = STATE(465), + [sym_import_statement] = STATE(1301), + [sym_future_import_statement] = STATE(1301), + [sym_import_from_statement] = STATE(1301), + [sym_print_statement] = STATE(1301), + [sym_assert_statement] = STATE(1301), + [sym_expression_statement] = STATE(1301), + [sym_named_expression] = STATE(1156), + [sym_return_statement] = STATE(1301), + [sym_delete_statement] = STATE(1301), + [sym_raise_statement] = STATE(1301), + [sym_pass_statement] = STATE(1301), + [sym_break_statement] = STATE(1301), + [sym_continue_statement] = STATE(1301), + [sym_list_splat] = STATE(1520), + [sym_dictionary_splat] = STATE(1520), + [sym_global_statement] = STATE(1301), + [sym_nonlocal_statement] = STATE(1301), + [sym_exec_statement] = STATE(1301), + [sym_type_alias_statement] = STATE(1301), + [sym_expression_list] = STATE(1522), + [sym_pattern] = STATE(1017), + [sym_tuple_pattern] = STATE(1001), + [sym_list_pattern] = STATE(1001), + [sym_list_splat_pattern] = STATE(1001), + [sym_expression] = STATE(1176), + [sym_primary_expression] = STATE(765), + [sym_not_operator] = STATE(1156), + [sym_boolean_operator] = STATE(1156), + [sym_binary_operator] = STATE(920), + [sym_unary_operator] = STATE(920), + [sym_comparison_operator] = STATE(1156), + [sym_lambda] = STATE(1156), + [sym_assignment] = STATE(1522), + [sym_augmented_assignment] = STATE(1522), + [sym_pattern_list] = STATE(1026), + [sym_yield] = STATE(1522), + [sym_attribute] = STATE(582), + [sym_subscript] = STATE(582), + [sym_call] = STATE(920), + [sym_list] = STATE(920), + [sym_set] = STATE(920), + [sym_tuple] = STATE(920), + [sym_dictionary] = STATE(920), + [sym_list_comprehension] = STATE(920), + [sym_dictionary_comprehension] = STATE(920), + [sym_set_comprehension] = STATE(920), + [sym_generator_expression] = STATE(920), + [sym_parenthesized_expression] = STATE(920), + [sym_conditional_expression] = STATE(1156), + [sym_concatenated_string] = STATE(920), + [sym_string] = STATE(775), + [sym_concatenated_template_string] = STATE(920), + [sym_template_string] = STATE(769), + [sym_await] = STATE(920), + [sym_identifier] = ACTIONS(7), + [anon_sym_lazy] = ACTIONS(9), + [anon_sym_import] = ACTIONS(11), + [anon_sym_from] = ACTIONS(13), + [anon_sym_LPAREN] = ACTIONS(15), + [anon_sym_STAR] = ACTIONS(17), + [anon_sym_print] = ACTIONS(19), + [anon_sym_assert] = ACTIONS(21), + [anon_sym_return] = ACTIONS(23), + [anon_sym_del] = ACTIONS(25), + [anon_sym_raise] = ACTIONS(27), + [anon_sym_pass] = ACTIONS(29), + [anon_sym_break] = ACTIONS(31), + [anon_sym_continue] = ACTIONS(33), + [anon_sym_async] = ACTIONS(319), + [anon_sym_match] = ACTIONS(319), + [anon_sym_DASH] = ACTIONS(49), + [anon_sym_PLUS] = ACTIONS(49), + [anon_sym_LBRACK] = ACTIONS(51), + [anon_sym_LBRACE] = ACTIONS(53), + [anon_sym_STAR_STAR] = ACTIONS(55), + [anon_sym_global] = ACTIONS(59), + [anon_sym_nonlocal] = ACTIONS(61), + [anon_sym_exec] = ACTIONS(63), + [anon_sym_type] = ACTIONS(65), + [anon_sym_not] = ACTIONS(71), + [anon_sym_TILDE] = ACTIONS(49), + [anon_sym_lambda] = ACTIONS(73), + [anon_sym_yield] = ACTIONS(75), + [sym_ellipsis] = ACTIONS(77), + [sym_integer] = ACTIONS(79), + [sym_float] = ACTIONS(77), + [anon_sym_await] = ACTIONS(81), + [sym_true] = ACTIONS(79), + [sym_false] = ACTIONS(79), + [sym_none] = ACTIONS(79), + [sym_comment] = ACTIONS(3), + [sym__newline] = ACTIONS(369), + [sym__indent] = ACTIONS(371), + [sym__string_start] = ACTIONS(83), + [sym__template_string_start] = ACTIONS(85), }, [STATE(80)] = { - [sym__simple_statements] = STATE(454), - [sym_import_statement] = STATE(1348), - [sym_future_import_statement] = STATE(1348), - [sym_import_from_statement] = STATE(1348), - [sym_print_statement] = STATE(1348), - [sym_assert_statement] = STATE(1348), - [sym_expression_statement] = STATE(1348), - [sym_named_expression] = STATE(1158), - [sym_return_statement] = STATE(1348), - [sym_delete_statement] = STATE(1348), - [sym_raise_statement] = STATE(1348), - [sym_pass_statement] = STATE(1348), - [sym_break_statement] = STATE(1348), - [sym_continue_statement] = STATE(1348), - [sym_list_splat] = STATE(1549), - [sym_dictionary_splat] = STATE(1549), - [sym_global_statement] = STATE(1348), - [sym_nonlocal_statement] = STATE(1348), - [sym_exec_statement] = STATE(1348), - [sym_type_alias_statement] = STATE(1348), - [sym_expression_list] = STATE(1551), - [sym_pattern] = STATE(1013), - [sym_tuple_pattern] = STATE(999), - [sym_list_pattern] = STATE(999), - [sym_list_splat_pattern] = STATE(999), - [sym_expression] = STATE(1185), - [sym_primary_expression] = STATE(779), - [sym_not_operator] = STATE(1158), - [sym_boolean_operator] = STATE(1158), - [sym_binary_operator] = STATE(908), - [sym_unary_operator] = STATE(908), - [sym_comparison_operator] = STATE(1158), - [sym_lambda] = STATE(1158), - [sym_assignment] = STATE(1551), - [sym_augmented_assignment] = STATE(1551), - [sym_pattern_list] = STATE(1024), - [sym_yield] = STATE(1551), - [sym_attribute] = STATE(494), - [sym_subscript] = STATE(494), - [sym_call] = STATE(908), - [sym_list] = STATE(908), - [sym_set] = STATE(908), - [sym_tuple] = STATE(908), - [sym_dictionary] = STATE(908), - [sym_list_comprehension] = STATE(908), - [sym_dictionary_comprehension] = STATE(908), - [sym_set_comprehension] = STATE(908), - [sym_generator_expression] = STATE(908), - [sym_parenthesized_expression] = STATE(908), - [sym_conditional_expression] = STATE(1158), - [sym_concatenated_string] = STATE(908), - [sym_string] = STATE(782), - [sym_concatenated_template_string] = STATE(908), - [sym_template_string] = STATE(763), - [sym_await] = STATE(908), + [sym__simple_statements] = STATE(570), + [sym_import_statement] = STATE(1301), + [sym_future_import_statement] = STATE(1301), + [sym_import_from_statement] = STATE(1301), + [sym_print_statement] = STATE(1301), + [sym_assert_statement] = STATE(1301), + [sym_expression_statement] = STATE(1301), + [sym_named_expression] = STATE(1156), + [sym_return_statement] = STATE(1301), + [sym_delete_statement] = STATE(1301), + [sym_raise_statement] = STATE(1301), + [sym_pass_statement] = STATE(1301), + [sym_break_statement] = STATE(1301), + [sym_continue_statement] = STATE(1301), + [sym_list_splat] = STATE(1520), + [sym_dictionary_splat] = STATE(1520), + [sym_global_statement] = STATE(1301), + [sym_nonlocal_statement] = STATE(1301), + [sym_exec_statement] = STATE(1301), + [sym_type_alias_statement] = STATE(1301), + [sym_expression_list] = STATE(1522), + [sym_pattern] = STATE(1017), + [sym_tuple_pattern] = STATE(1001), + [sym_list_pattern] = STATE(1001), + [sym_list_splat_pattern] = STATE(1001), + [sym_expression] = STATE(1176), + [sym_primary_expression] = STATE(765), + [sym_not_operator] = STATE(1156), + [sym_boolean_operator] = STATE(1156), + [sym_binary_operator] = STATE(920), + [sym_unary_operator] = STATE(920), + [sym_comparison_operator] = STATE(1156), + [sym_lambda] = STATE(1156), + [sym_assignment] = STATE(1522), + [sym_augmented_assignment] = STATE(1522), + [sym_pattern_list] = STATE(1026), + [sym_yield] = STATE(1522), + [sym_attribute] = STATE(582), + [sym_subscript] = STATE(582), + [sym_call] = STATE(920), + [sym_list] = STATE(920), + [sym_set] = STATE(920), + [sym_tuple] = STATE(920), + [sym_dictionary] = STATE(920), + [sym_list_comprehension] = STATE(920), + [sym_dictionary_comprehension] = STATE(920), + [sym_set_comprehension] = STATE(920), + [sym_generator_expression] = STATE(920), + [sym_parenthesized_expression] = STATE(920), + [sym_conditional_expression] = STATE(1156), + [sym_concatenated_string] = STATE(920), + [sym_string] = STATE(775), + [sym_concatenated_template_string] = STATE(920), + [sym_template_string] = STATE(769), + [sym_await] = STATE(920), [sym_identifier] = ACTIONS(7), - [anon_sym_import] = ACTIONS(9), - [anon_sym_from] = ACTIONS(11), - [anon_sym_LPAREN] = ACTIONS(13), - [anon_sym_STAR] = ACTIONS(15), - [anon_sym_print] = ACTIONS(17), - [anon_sym_assert] = ACTIONS(19), - [anon_sym_return] = ACTIONS(21), - [anon_sym_del] = ACTIONS(23), - [anon_sym_raise] = ACTIONS(25), - [anon_sym_pass] = ACTIONS(27), - [anon_sym_break] = ACTIONS(29), - [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(322), - [anon_sym_match] = ACTIONS(322), - [anon_sym_DASH] = ACTIONS(47), - [anon_sym_PLUS] = ACTIONS(47), - [anon_sym_LBRACK] = ACTIONS(49), - [anon_sym_LBRACE] = ACTIONS(51), - [anon_sym_STAR_STAR] = ACTIONS(53), - [anon_sym_global] = ACTIONS(57), - [anon_sym_nonlocal] = ACTIONS(59), - [anon_sym_exec] = ACTIONS(61), - [anon_sym_type] = ACTIONS(63), - [anon_sym_not] = ACTIONS(69), - [anon_sym_TILDE] = ACTIONS(47), - [anon_sym_lambda] = ACTIONS(71), - [anon_sym_yield] = ACTIONS(73), - [sym_ellipsis] = ACTIONS(75), - [sym_integer] = ACTIONS(77), - [sym_float] = ACTIONS(75), - [anon_sym_await] = ACTIONS(79), - [sym_true] = ACTIONS(77), - [sym_false] = ACTIONS(77), - [sym_none] = ACTIONS(77), + [anon_sym_lazy] = ACTIONS(9), + [anon_sym_import] = ACTIONS(11), + [anon_sym_from] = ACTIONS(13), + [anon_sym_LPAREN] = ACTIONS(15), + [anon_sym_STAR] = ACTIONS(17), + [anon_sym_print] = ACTIONS(19), + [anon_sym_assert] = ACTIONS(21), + [anon_sym_return] = ACTIONS(23), + [anon_sym_del] = ACTIONS(25), + [anon_sym_raise] = ACTIONS(27), + [anon_sym_pass] = ACTIONS(29), + [anon_sym_break] = ACTIONS(31), + [anon_sym_continue] = ACTIONS(33), + [anon_sym_async] = ACTIONS(319), + [anon_sym_match] = ACTIONS(319), + [anon_sym_DASH] = ACTIONS(49), + [anon_sym_PLUS] = ACTIONS(49), + [anon_sym_LBRACK] = ACTIONS(51), + [anon_sym_LBRACE] = ACTIONS(53), + [anon_sym_STAR_STAR] = ACTIONS(55), + [anon_sym_global] = ACTIONS(59), + [anon_sym_nonlocal] = ACTIONS(61), + [anon_sym_exec] = ACTIONS(63), + [anon_sym_type] = ACTIONS(65), + [anon_sym_not] = ACTIONS(71), + [anon_sym_TILDE] = ACTIONS(49), + [anon_sym_lambda] = ACTIONS(73), + [anon_sym_yield] = ACTIONS(75), + [sym_ellipsis] = ACTIONS(77), + [sym_integer] = ACTIONS(79), + [sym_float] = ACTIONS(77), + [anon_sym_await] = ACTIONS(81), + [sym_true] = ACTIONS(79), + [sym_false] = ACTIONS(79), + [sym_none] = ACTIONS(79), [sym_comment] = ACTIONS(3), - [sym__newline] = ACTIONS(368), - [sym__indent] = ACTIONS(370), - [sym__string_start] = ACTIONS(81), - [sym__template_string_start] = ACTIONS(83), + [sym__newline] = ACTIONS(373), + [sym__indent] = ACTIONS(375), + [sym__string_start] = ACTIONS(83), + [sym__template_string_start] = ACTIONS(85), }, [STATE(81)] = { - [sym__simple_statements] = STATE(559), + [sym__simple_statements] = STATE(523), [sym_import_statement] = STATE(1332), [sym_future_import_statement] = STATE(1332), [sym_import_from_statement] = STATE(1332), [sym_print_statement] = STATE(1332), [sym_assert_statement] = STATE(1332), [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1158), + [sym_named_expression] = STATE(1156), [sym_return_statement] = STATE(1332), [sym_delete_statement] = STATE(1332), [sym_raise_statement] = STATE(1332), [sym_pass_statement] = STATE(1332), [sym_break_statement] = STATE(1332), [sym_continue_statement] = STATE(1332), - [sym_list_splat] = STATE(1549), - [sym_dictionary_splat] = STATE(1549), + [sym_list_splat] = STATE(1520), + [sym_dictionary_splat] = STATE(1520), [sym_global_statement] = STATE(1332), [sym_nonlocal_statement] = STATE(1332), [sym_exec_statement] = STATE(1332), [sym_type_alias_statement] = STATE(1332), - [sym_expression_list] = STATE(1551), - [sym_pattern] = STATE(1013), - [sym_tuple_pattern] = STATE(999), - [sym_list_pattern] = STATE(999), - [sym_list_splat_pattern] = STATE(999), - [sym_expression] = STATE(1185), - [sym_primary_expression] = STATE(779), - [sym_not_operator] = STATE(1158), - [sym_boolean_operator] = STATE(1158), - [sym_binary_operator] = STATE(908), - [sym_unary_operator] = STATE(908), - [sym_comparison_operator] = STATE(1158), - [sym_lambda] = STATE(1158), - [sym_assignment] = STATE(1551), - [sym_augmented_assignment] = STATE(1551), - [sym_pattern_list] = STATE(1024), - [sym_yield] = STATE(1551), - [sym_attribute] = STATE(494), - [sym_subscript] = STATE(494), - [sym_call] = STATE(908), - [sym_list] = STATE(908), - [sym_set] = STATE(908), - [sym_tuple] = STATE(908), - [sym_dictionary] = STATE(908), - [sym_list_comprehension] = STATE(908), - [sym_dictionary_comprehension] = STATE(908), - [sym_set_comprehension] = STATE(908), - [sym_generator_expression] = STATE(908), - [sym_parenthesized_expression] = STATE(908), - [sym_conditional_expression] = STATE(1158), - [sym_concatenated_string] = STATE(908), - [sym_string] = STATE(782), - [sym_concatenated_template_string] = STATE(908), - [sym_template_string] = STATE(763), - [sym_await] = STATE(908), + [sym_expression_list] = STATE(1522), + [sym_pattern] = STATE(1017), + [sym_tuple_pattern] = STATE(1001), + [sym_list_pattern] = STATE(1001), + [sym_list_splat_pattern] = STATE(1001), + [sym_expression] = STATE(1176), + [sym_primary_expression] = STATE(765), + [sym_not_operator] = STATE(1156), + [sym_boolean_operator] = STATE(1156), + [sym_binary_operator] = STATE(920), + [sym_unary_operator] = STATE(920), + [sym_comparison_operator] = STATE(1156), + [sym_lambda] = STATE(1156), + [sym_assignment] = STATE(1522), + [sym_augmented_assignment] = STATE(1522), + [sym_pattern_list] = STATE(1026), + [sym_yield] = STATE(1522), + [sym_attribute] = STATE(582), + [sym_subscript] = STATE(582), + [sym_call] = STATE(920), + [sym_list] = STATE(920), + [sym_set] = STATE(920), + [sym_tuple] = STATE(920), + [sym_dictionary] = STATE(920), + [sym_list_comprehension] = STATE(920), + [sym_dictionary_comprehension] = STATE(920), + [sym_set_comprehension] = STATE(920), + [sym_generator_expression] = STATE(920), + [sym_parenthesized_expression] = STATE(920), + [sym_conditional_expression] = STATE(1156), + [sym_concatenated_string] = STATE(920), + [sym_string] = STATE(775), + [sym_concatenated_template_string] = STATE(920), + [sym_template_string] = STATE(769), + [sym_await] = STATE(920), [sym_identifier] = ACTIONS(7), - [anon_sym_import] = ACTIONS(9), - [anon_sym_from] = ACTIONS(11), - [anon_sym_LPAREN] = ACTIONS(13), - [anon_sym_STAR] = ACTIONS(15), - [anon_sym_print] = ACTIONS(17), - [anon_sym_assert] = ACTIONS(19), - [anon_sym_return] = ACTIONS(21), - [anon_sym_del] = ACTIONS(23), - [anon_sym_raise] = ACTIONS(25), - [anon_sym_pass] = ACTIONS(27), - [anon_sym_break] = ACTIONS(29), - [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(322), - [anon_sym_match] = ACTIONS(322), - [anon_sym_DASH] = ACTIONS(47), - [anon_sym_PLUS] = ACTIONS(47), - [anon_sym_LBRACK] = ACTIONS(49), - [anon_sym_LBRACE] = ACTIONS(51), - [anon_sym_STAR_STAR] = ACTIONS(53), - [anon_sym_global] = ACTIONS(57), - [anon_sym_nonlocal] = ACTIONS(59), - [anon_sym_exec] = ACTIONS(61), - [anon_sym_type] = ACTIONS(63), - [anon_sym_not] = ACTIONS(69), - [anon_sym_TILDE] = ACTIONS(47), - [anon_sym_lambda] = ACTIONS(71), - [anon_sym_yield] = ACTIONS(73), - [sym_ellipsis] = ACTIONS(75), - [sym_integer] = ACTIONS(77), - [sym_float] = ACTIONS(75), - [anon_sym_await] = ACTIONS(79), - [sym_true] = ACTIONS(77), - [sym_false] = ACTIONS(77), - [sym_none] = ACTIONS(77), + [anon_sym_lazy] = ACTIONS(9), + [anon_sym_import] = ACTIONS(11), + [anon_sym_from] = ACTIONS(13), + [anon_sym_LPAREN] = ACTIONS(15), + [anon_sym_STAR] = ACTIONS(17), + [anon_sym_print] = ACTIONS(19), + [anon_sym_assert] = ACTIONS(21), + [anon_sym_return] = ACTIONS(23), + [anon_sym_del] = ACTIONS(25), + [anon_sym_raise] = ACTIONS(27), + [anon_sym_pass] = ACTIONS(29), + [anon_sym_break] = ACTIONS(31), + [anon_sym_continue] = ACTIONS(33), + [anon_sym_async] = ACTIONS(319), + [anon_sym_match] = ACTIONS(319), + [anon_sym_DASH] = ACTIONS(49), + [anon_sym_PLUS] = ACTIONS(49), + [anon_sym_LBRACK] = ACTIONS(51), + [anon_sym_LBRACE] = ACTIONS(53), + [anon_sym_STAR_STAR] = ACTIONS(55), + [anon_sym_global] = ACTIONS(59), + [anon_sym_nonlocal] = ACTIONS(61), + [anon_sym_exec] = ACTIONS(63), + [anon_sym_type] = ACTIONS(65), + [anon_sym_not] = ACTIONS(71), + [anon_sym_TILDE] = ACTIONS(49), + [anon_sym_lambda] = ACTIONS(73), + [anon_sym_yield] = ACTIONS(75), + [sym_ellipsis] = ACTIONS(77), + [sym_integer] = ACTIONS(79), + [sym_float] = ACTIONS(77), + [anon_sym_await] = ACTIONS(81), + [sym_true] = ACTIONS(79), + [sym_false] = ACTIONS(79), + [sym_none] = ACTIONS(79), [sym_comment] = ACTIONS(3), - [sym__newline] = ACTIONS(372), - [sym__indent] = ACTIONS(374), - [sym__string_start] = ACTIONS(81), - [sym__template_string_start] = ACTIONS(83), + [sym__newline] = ACTIONS(377), + [sym__indent] = ACTIONS(379), + [sym__string_start] = ACTIONS(83), + [sym__template_string_start] = ACTIONS(85), }, [STATE(82)] = { - [sym__simple_statements] = STATE(516), - [sym_import_statement] = STATE(1348), - [sym_future_import_statement] = STATE(1348), - [sym_import_from_statement] = STATE(1348), - [sym_print_statement] = STATE(1348), - [sym_assert_statement] = STATE(1348), - [sym_expression_statement] = STATE(1348), - [sym_named_expression] = STATE(1158), - [sym_return_statement] = STATE(1348), - [sym_delete_statement] = STATE(1348), - [sym_raise_statement] = STATE(1348), - [sym_pass_statement] = STATE(1348), - [sym_break_statement] = STATE(1348), - [sym_continue_statement] = STATE(1348), - [sym_list_splat] = STATE(1549), - [sym_dictionary_splat] = STATE(1549), - [sym_global_statement] = STATE(1348), - [sym_nonlocal_statement] = STATE(1348), - [sym_exec_statement] = STATE(1348), - [sym_type_alias_statement] = STATE(1348), - [sym_expression_list] = STATE(1551), - [sym_pattern] = STATE(1013), - [sym_tuple_pattern] = STATE(999), - [sym_list_pattern] = STATE(999), - [sym_list_splat_pattern] = STATE(999), - [sym_expression] = STATE(1185), - [sym_primary_expression] = STATE(779), - [sym_not_operator] = STATE(1158), - [sym_boolean_operator] = STATE(1158), - [sym_binary_operator] = STATE(908), - [sym_unary_operator] = STATE(908), - [sym_comparison_operator] = STATE(1158), - [sym_lambda] = STATE(1158), - [sym_assignment] = STATE(1551), - [sym_augmented_assignment] = STATE(1551), - [sym_pattern_list] = STATE(1024), - [sym_yield] = STATE(1551), - [sym_attribute] = STATE(494), - [sym_subscript] = STATE(494), - [sym_call] = STATE(908), - [sym_list] = STATE(908), - [sym_set] = STATE(908), - [sym_tuple] = STATE(908), - [sym_dictionary] = STATE(908), - [sym_list_comprehension] = STATE(908), - [sym_dictionary_comprehension] = STATE(908), - [sym_set_comprehension] = STATE(908), - [sym_generator_expression] = STATE(908), - [sym_parenthesized_expression] = STATE(908), - [sym_conditional_expression] = STATE(1158), - [sym_concatenated_string] = STATE(908), - [sym_string] = STATE(782), - [sym_concatenated_template_string] = STATE(908), - [sym_template_string] = STATE(763), - [sym_await] = STATE(908), + [sym__simple_statements] = STATE(581), + [sym_import_statement] = STATE(1301), + [sym_future_import_statement] = STATE(1301), + [sym_import_from_statement] = STATE(1301), + [sym_print_statement] = STATE(1301), + [sym_assert_statement] = STATE(1301), + [sym_expression_statement] = STATE(1301), + [sym_named_expression] = STATE(1156), + [sym_return_statement] = STATE(1301), + [sym_delete_statement] = STATE(1301), + [sym_raise_statement] = STATE(1301), + [sym_pass_statement] = STATE(1301), + [sym_break_statement] = STATE(1301), + [sym_continue_statement] = STATE(1301), + [sym_list_splat] = STATE(1520), + [sym_dictionary_splat] = STATE(1520), + [sym_global_statement] = STATE(1301), + [sym_nonlocal_statement] = STATE(1301), + [sym_exec_statement] = STATE(1301), + [sym_type_alias_statement] = STATE(1301), + [sym_expression_list] = STATE(1522), + [sym_pattern] = STATE(1017), + [sym_tuple_pattern] = STATE(1001), + [sym_list_pattern] = STATE(1001), + [sym_list_splat_pattern] = STATE(1001), + [sym_expression] = STATE(1176), + [sym_primary_expression] = STATE(765), + [sym_not_operator] = STATE(1156), + [sym_boolean_operator] = STATE(1156), + [sym_binary_operator] = STATE(920), + [sym_unary_operator] = STATE(920), + [sym_comparison_operator] = STATE(1156), + [sym_lambda] = STATE(1156), + [sym_assignment] = STATE(1522), + [sym_augmented_assignment] = STATE(1522), + [sym_pattern_list] = STATE(1026), + [sym_yield] = STATE(1522), + [sym_attribute] = STATE(582), + [sym_subscript] = STATE(582), + [sym_call] = STATE(920), + [sym_list] = STATE(920), + [sym_set] = STATE(920), + [sym_tuple] = STATE(920), + [sym_dictionary] = STATE(920), + [sym_list_comprehension] = STATE(920), + [sym_dictionary_comprehension] = STATE(920), + [sym_set_comprehension] = STATE(920), + [sym_generator_expression] = STATE(920), + [sym_parenthesized_expression] = STATE(920), + [sym_conditional_expression] = STATE(1156), + [sym_concatenated_string] = STATE(920), + [sym_string] = STATE(775), + [sym_concatenated_template_string] = STATE(920), + [sym_template_string] = STATE(769), + [sym_await] = STATE(920), [sym_identifier] = ACTIONS(7), - [anon_sym_import] = ACTIONS(9), - [anon_sym_from] = ACTIONS(11), - [anon_sym_LPAREN] = ACTIONS(13), - [anon_sym_STAR] = ACTIONS(15), - [anon_sym_print] = ACTIONS(17), - [anon_sym_assert] = ACTIONS(19), - [anon_sym_return] = ACTIONS(21), - [anon_sym_del] = ACTIONS(23), - [anon_sym_raise] = ACTIONS(25), - [anon_sym_pass] = ACTIONS(27), - [anon_sym_break] = ACTIONS(29), - [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(322), - [anon_sym_match] = ACTIONS(322), - [anon_sym_DASH] = ACTIONS(47), - [anon_sym_PLUS] = ACTIONS(47), - [anon_sym_LBRACK] = ACTIONS(49), - [anon_sym_LBRACE] = ACTIONS(51), - [anon_sym_STAR_STAR] = ACTIONS(53), - [anon_sym_global] = ACTIONS(57), - [anon_sym_nonlocal] = ACTIONS(59), - [anon_sym_exec] = ACTIONS(61), - [anon_sym_type] = ACTIONS(63), - [anon_sym_not] = ACTIONS(69), - [anon_sym_TILDE] = ACTIONS(47), - [anon_sym_lambda] = ACTIONS(71), - [anon_sym_yield] = ACTIONS(73), - [sym_ellipsis] = ACTIONS(75), - [sym_integer] = ACTIONS(77), - [sym_float] = ACTIONS(75), - [anon_sym_await] = ACTIONS(79), - [sym_true] = ACTIONS(77), - [sym_false] = ACTIONS(77), - [sym_none] = ACTIONS(77), + [anon_sym_lazy] = ACTIONS(9), + [anon_sym_import] = ACTIONS(11), + [anon_sym_from] = ACTIONS(13), + [anon_sym_LPAREN] = ACTIONS(15), + [anon_sym_STAR] = ACTIONS(17), + [anon_sym_print] = ACTIONS(19), + [anon_sym_assert] = ACTIONS(21), + [anon_sym_return] = ACTIONS(23), + [anon_sym_del] = ACTIONS(25), + [anon_sym_raise] = ACTIONS(27), + [anon_sym_pass] = ACTIONS(29), + [anon_sym_break] = ACTIONS(31), + [anon_sym_continue] = ACTIONS(33), + [anon_sym_async] = ACTIONS(319), + [anon_sym_match] = ACTIONS(319), + [anon_sym_DASH] = ACTIONS(49), + [anon_sym_PLUS] = ACTIONS(49), + [anon_sym_LBRACK] = ACTIONS(51), + [anon_sym_LBRACE] = ACTIONS(53), + [anon_sym_STAR_STAR] = ACTIONS(55), + [anon_sym_global] = ACTIONS(59), + [anon_sym_nonlocal] = ACTIONS(61), + [anon_sym_exec] = ACTIONS(63), + [anon_sym_type] = ACTIONS(65), + [anon_sym_not] = ACTIONS(71), + [anon_sym_TILDE] = ACTIONS(49), + [anon_sym_lambda] = ACTIONS(73), + [anon_sym_yield] = ACTIONS(75), + [sym_ellipsis] = ACTIONS(77), + [sym_integer] = ACTIONS(79), + [sym_float] = ACTIONS(77), + [anon_sym_await] = ACTIONS(81), + [sym_true] = ACTIONS(79), + [sym_false] = ACTIONS(79), + [sym_none] = ACTIONS(79), [sym_comment] = ACTIONS(3), - [sym__newline] = ACTIONS(376), - [sym__indent] = ACTIONS(378), - [sym__string_start] = ACTIONS(81), - [sym__template_string_start] = ACTIONS(83), + [sym__newline] = ACTIONS(381), + [sym__indent] = ACTIONS(383), + [sym__string_start] = ACTIONS(83), + [sym__template_string_start] = ACTIONS(85), }, [STATE(83)] = { - [sym__simple_statements] = STATE(520), - [sym_import_statement] = STATE(1348), - [sym_future_import_statement] = STATE(1348), - [sym_import_from_statement] = STATE(1348), - [sym_print_statement] = STATE(1348), - [sym_assert_statement] = STATE(1348), - [sym_expression_statement] = STATE(1348), - [sym_named_expression] = STATE(1158), - [sym_return_statement] = STATE(1348), - [sym_delete_statement] = STATE(1348), - [sym_raise_statement] = STATE(1348), - [sym_pass_statement] = STATE(1348), - [sym_break_statement] = STATE(1348), - [sym_continue_statement] = STATE(1348), - [sym_list_splat] = STATE(1549), - [sym_dictionary_splat] = STATE(1549), - [sym_global_statement] = STATE(1348), - [sym_nonlocal_statement] = STATE(1348), - [sym_exec_statement] = STATE(1348), - [sym_type_alias_statement] = STATE(1348), - [sym_expression_list] = STATE(1551), - [sym_pattern] = STATE(1013), - [sym_tuple_pattern] = STATE(999), - [sym_list_pattern] = STATE(999), - [sym_list_splat_pattern] = STATE(999), - [sym_expression] = STATE(1185), - [sym_primary_expression] = STATE(779), - [sym_not_operator] = STATE(1158), - [sym_boolean_operator] = STATE(1158), - [sym_binary_operator] = STATE(908), - [sym_unary_operator] = STATE(908), - [sym_comparison_operator] = STATE(1158), - [sym_lambda] = STATE(1158), - [sym_assignment] = STATE(1551), - [sym_augmented_assignment] = STATE(1551), - [sym_pattern_list] = STATE(1024), - [sym_yield] = STATE(1551), - [sym_attribute] = STATE(494), - [sym_subscript] = STATE(494), - [sym_call] = STATE(908), - [sym_list] = STATE(908), - [sym_set] = STATE(908), - [sym_tuple] = STATE(908), - [sym_dictionary] = STATE(908), - [sym_list_comprehension] = STATE(908), - [sym_dictionary_comprehension] = STATE(908), - [sym_set_comprehension] = STATE(908), - [sym_generator_expression] = STATE(908), - [sym_parenthesized_expression] = STATE(908), - [sym_conditional_expression] = STATE(1158), - [sym_concatenated_string] = STATE(908), - [sym_string] = STATE(782), - [sym_concatenated_template_string] = STATE(908), - [sym_template_string] = STATE(763), - [sym_await] = STATE(908), - [sym_identifier] = ACTIONS(7), - [anon_sym_import] = ACTIONS(9), - [anon_sym_from] = ACTIONS(11), - [anon_sym_LPAREN] = ACTIONS(13), - [anon_sym_STAR] = ACTIONS(15), - [anon_sym_print] = ACTIONS(17), - [anon_sym_assert] = ACTIONS(19), - [anon_sym_return] = ACTIONS(21), - [anon_sym_del] = ACTIONS(23), - [anon_sym_raise] = ACTIONS(25), - [anon_sym_pass] = ACTIONS(27), - [anon_sym_break] = ACTIONS(29), - [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(322), - [anon_sym_match] = ACTIONS(322), - [anon_sym_DASH] = ACTIONS(47), - [anon_sym_PLUS] = ACTIONS(47), - [anon_sym_LBRACK] = ACTIONS(49), - [anon_sym_LBRACE] = ACTIONS(51), - [anon_sym_STAR_STAR] = ACTIONS(53), - [anon_sym_global] = ACTIONS(57), - [anon_sym_nonlocal] = ACTIONS(59), - [anon_sym_exec] = ACTIONS(61), - [anon_sym_type] = ACTIONS(63), - [anon_sym_not] = ACTIONS(69), - [anon_sym_TILDE] = ACTIONS(47), - [anon_sym_lambda] = ACTIONS(71), - [anon_sym_yield] = ACTIONS(73), - [sym_ellipsis] = ACTIONS(75), - [sym_integer] = ACTIONS(77), - [sym_float] = ACTIONS(75), - [anon_sym_await] = ACTIONS(79), - [sym_true] = ACTIONS(77), - [sym_false] = ACTIONS(77), - [sym_none] = ACTIONS(77), - [sym_comment] = ACTIONS(3), - [sym__newline] = ACTIONS(380), - [sym__indent] = ACTIONS(382), - [sym__string_start] = ACTIONS(81), - [sym__template_string_start] = ACTIONS(83), - }, - [STATE(84)] = { - [sym__simple_statements] = STATE(564), + [sym__simple_statements] = STATE(525), [sym_import_statement] = STATE(1332), [sym_future_import_statement] = STATE(1332), [sym_import_from_statement] = STATE(1332), [sym_print_statement] = STATE(1332), [sym_assert_statement] = STATE(1332), [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1158), + [sym_named_expression] = STATE(1156), [sym_return_statement] = STATE(1332), [sym_delete_statement] = STATE(1332), [sym_raise_statement] = STATE(1332), [sym_pass_statement] = STATE(1332), [sym_break_statement] = STATE(1332), [sym_continue_statement] = STATE(1332), - [sym_list_splat] = STATE(1549), - [sym_dictionary_splat] = STATE(1549), + [sym_list_splat] = STATE(1520), + [sym_dictionary_splat] = STATE(1520), [sym_global_statement] = STATE(1332), [sym_nonlocal_statement] = STATE(1332), [sym_exec_statement] = STATE(1332), [sym_type_alias_statement] = STATE(1332), - [sym_expression_list] = STATE(1551), - [sym_pattern] = STATE(1013), - [sym_tuple_pattern] = STATE(999), - [sym_list_pattern] = STATE(999), - [sym_list_splat_pattern] = STATE(999), - [sym_expression] = STATE(1185), - [sym_primary_expression] = STATE(779), - [sym_not_operator] = STATE(1158), - [sym_boolean_operator] = STATE(1158), - [sym_binary_operator] = STATE(908), - [sym_unary_operator] = STATE(908), - [sym_comparison_operator] = STATE(1158), - [sym_lambda] = STATE(1158), - [sym_assignment] = STATE(1551), - [sym_augmented_assignment] = STATE(1551), - [sym_pattern_list] = STATE(1024), - [sym_yield] = STATE(1551), - [sym_attribute] = STATE(494), - [sym_subscript] = STATE(494), - [sym_call] = STATE(908), - [sym_list] = STATE(908), - [sym_set] = STATE(908), - [sym_tuple] = STATE(908), - [sym_dictionary] = STATE(908), - [sym_list_comprehension] = STATE(908), - [sym_dictionary_comprehension] = STATE(908), - [sym_set_comprehension] = STATE(908), - [sym_generator_expression] = STATE(908), - [sym_parenthesized_expression] = STATE(908), - [sym_conditional_expression] = STATE(1158), - [sym_concatenated_string] = STATE(908), - [sym_string] = STATE(782), - [sym_concatenated_template_string] = STATE(908), - [sym_template_string] = STATE(763), - [sym_await] = STATE(908), + [sym_expression_list] = STATE(1522), + [sym_pattern] = STATE(1017), + [sym_tuple_pattern] = STATE(1001), + [sym_list_pattern] = STATE(1001), + [sym_list_splat_pattern] = STATE(1001), + [sym_expression] = STATE(1176), + [sym_primary_expression] = STATE(765), + [sym_not_operator] = STATE(1156), + [sym_boolean_operator] = STATE(1156), + [sym_binary_operator] = STATE(920), + [sym_unary_operator] = STATE(920), + [sym_comparison_operator] = STATE(1156), + [sym_lambda] = STATE(1156), + [sym_assignment] = STATE(1522), + [sym_augmented_assignment] = STATE(1522), + [sym_pattern_list] = STATE(1026), + [sym_yield] = STATE(1522), + [sym_attribute] = STATE(582), + [sym_subscript] = STATE(582), + [sym_call] = STATE(920), + [sym_list] = STATE(920), + [sym_set] = STATE(920), + [sym_tuple] = STATE(920), + [sym_dictionary] = STATE(920), + [sym_list_comprehension] = STATE(920), + [sym_dictionary_comprehension] = STATE(920), + [sym_set_comprehension] = STATE(920), + [sym_generator_expression] = STATE(920), + [sym_parenthesized_expression] = STATE(920), + [sym_conditional_expression] = STATE(1156), + [sym_concatenated_string] = STATE(920), + [sym_string] = STATE(775), + [sym_concatenated_template_string] = STATE(920), + [sym_template_string] = STATE(769), + [sym_await] = STATE(920), [sym_identifier] = ACTIONS(7), - [anon_sym_import] = ACTIONS(9), - [anon_sym_from] = ACTIONS(11), - [anon_sym_LPAREN] = ACTIONS(13), - [anon_sym_STAR] = ACTIONS(15), - [anon_sym_print] = ACTIONS(17), - [anon_sym_assert] = ACTIONS(19), - [anon_sym_return] = ACTIONS(21), - [anon_sym_del] = ACTIONS(23), - [anon_sym_raise] = ACTIONS(25), - [anon_sym_pass] = ACTIONS(27), - [anon_sym_break] = ACTIONS(29), - [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(322), - [anon_sym_match] = ACTIONS(322), - [anon_sym_DASH] = ACTIONS(47), - [anon_sym_PLUS] = ACTIONS(47), - [anon_sym_LBRACK] = ACTIONS(49), - [anon_sym_LBRACE] = ACTIONS(51), - [anon_sym_STAR_STAR] = ACTIONS(53), - [anon_sym_global] = ACTIONS(57), - [anon_sym_nonlocal] = ACTIONS(59), - [anon_sym_exec] = ACTIONS(61), - [anon_sym_type] = ACTIONS(63), - [anon_sym_not] = ACTIONS(69), - [anon_sym_TILDE] = ACTIONS(47), - [anon_sym_lambda] = ACTIONS(71), - [anon_sym_yield] = ACTIONS(73), - [sym_ellipsis] = ACTIONS(75), - [sym_integer] = ACTIONS(77), - [sym_float] = ACTIONS(75), - [anon_sym_await] = ACTIONS(79), - [sym_true] = ACTIONS(77), - [sym_false] = ACTIONS(77), - [sym_none] = ACTIONS(77), + [anon_sym_lazy] = ACTIONS(9), + [anon_sym_import] = ACTIONS(11), + [anon_sym_from] = ACTIONS(13), + [anon_sym_LPAREN] = ACTIONS(15), + [anon_sym_STAR] = ACTIONS(17), + [anon_sym_print] = ACTIONS(19), + [anon_sym_assert] = ACTIONS(21), + [anon_sym_return] = ACTIONS(23), + [anon_sym_del] = ACTIONS(25), + [anon_sym_raise] = ACTIONS(27), + [anon_sym_pass] = ACTIONS(29), + [anon_sym_break] = ACTIONS(31), + [anon_sym_continue] = ACTIONS(33), + [anon_sym_async] = ACTIONS(319), + [anon_sym_match] = ACTIONS(319), + [anon_sym_DASH] = ACTIONS(49), + [anon_sym_PLUS] = ACTIONS(49), + [anon_sym_LBRACK] = ACTIONS(51), + [anon_sym_LBRACE] = ACTIONS(53), + [anon_sym_STAR_STAR] = ACTIONS(55), + [anon_sym_global] = ACTIONS(59), + [anon_sym_nonlocal] = ACTIONS(61), + [anon_sym_exec] = ACTIONS(63), + [anon_sym_type] = ACTIONS(65), + [anon_sym_not] = ACTIONS(71), + [anon_sym_TILDE] = ACTIONS(49), + [anon_sym_lambda] = ACTIONS(73), + [anon_sym_yield] = ACTIONS(75), + [sym_ellipsis] = ACTIONS(77), + [sym_integer] = ACTIONS(79), + [sym_float] = ACTIONS(77), + [anon_sym_await] = ACTIONS(81), + [sym_true] = ACTIONS(79), + [sym_false] = ACTIONS(79), + [sym_none] = ACTIONS(79), [sym_comment] = ACTIONS(3), - [sym__newline] = ACTIONS(384), - [sym__indent] = ACTIONS(386), - [sym__string_start] = ACTIONS(81), - [sym__template_string_start] = ACTIONS(83), + [sym__newline] = ACTIONS(385), + [sym__indent] = ACTIONS(387), + [sym__string_start] = ACTIONS(83), + [sym__template_string_start] = ACTIONS(85), }, - [STATE(85)] = { - [sym__simple_statements] = STATE(566), + [STATE(84)] = { + [sym__simple_statements] = STATE(526), [sym_import_statement] = STATE(1332), [sym_future_import_statement] = STATE(1332), [sym_import_from_statement] = STATE(1332), [sym_print_statement] = STATE(1332), [sym_assert_statement] = STATE(1332), [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1158), + [sym_named_expression] = STATE(1156), [sym_return_statement] = STATE(1332), [sym_delete_statement] = STATE(1332), [sym_raise_statement] = STATE(1332), [sym_pass_statement] = STATE(1332), [sym_break_statement] = STATE(1332), [sym_continue_statement] = STATE(1332), - [sym_list_splat] = STATE(1549), - [sym_dictionary_splat] = STATE(1549), + [sym_list_splat] = STATE(1520), + [sym_dictionary_splat] = STATE(1520), [sym_global_statement] = STATE(1332), [sym_nonlocal_statement] = STATE(1332), [sym_exec_statement] = STATE(1332), [sym_type_alias_statement] = STATE(1332), - [sym_expression_list] = STATE(1551), - [sym_pattern] = STATE(1013), - [sym_tuple_pattern] = STATE(999), - [sym_list_pattern] = STATE(999), - [sym_list_splat_pattern] = STATE(999), - [sym_expression] = STATE(1185), - [sym_primary_expression] = STATE(779), - [sym_not_operator] = STATE(1158), - [sym_boolean_operator] = STATE(1158), - [sym_binary_operator] = STATE(908), - [sym_unary_operator] = STATE(908), - [sym_comparison_operator] = STATE(1158), - [sym_lambda] = STATE(1158), - [sym_assignment] = STATE(1551), - [sym_augmented_assignment] = STATE(1551), - [sym_pattern_list] = STATE(1024), - [sym_yield] = STATE(1551), - [sym_attribute] = STATE(494), - [sym_subscript] = STATE(494), - [sym_call] = STATE(908), - [sym_list] = STATE(908), - [sym_set] = STATE(908), - [sym_tuple] = STATE(908), - [sym_dictionary] = STATE(908), - [sym_list_comprehension] = STATE(908), - [sym_dictionary_comprehension] = STATE(908), - [sym_set_comprehension] = STATE(908), - [sym_generator_expression] = STATE(908), - [sym_parenthesized_expression] = STATE(908), - [sym_conditional_expression] = STATE(1158), - [sym_concatenated_string] = STATE(908), - [sym_string] = STATE(782), - [sym_concatenated_template_string] = STATE(908), - [sym_template_string] = STATE(763), - [sym_await] = STATE(908), + [sym_expression_list] = STATE(1522), + [sym_pattern] = STATE(1017), + [sym_tuple_pattern] = STATE(1001), + [sym_list_pattern] = STATE(1001), + [sym_list_splat_pattern] = STATE(1001), + [sym_expression] = STATE(1176), + [sym_primary_expression] = STATE(765), + [sym_not_operator] = STATE(1156), + [sym_boolean_operator] = STATE(1156), + [sym_binary_operator] = STATE(920), + [sym_unary_operator] = STATE(920), + [sym_comparison_operator] = STATE(1156), + [sym_lambda] = STATE(1156), + [sym_assignment] = STATE(1522), + [sym_augmented_assignment] = STATE(1522), + [sym_pattern_list] = STATE(1026), + [sym_yield] = STATE(1522), + [sym_attribute] = STATE(582), + [sym_subscript] = STATE(582), + [sym_call] = STATE(920), + [sym_list] = STATE(920), + [sym_set] = STATE(920), + [sym_tuple] = STATE(920), + [sym_dictionary] = STATE(920), + [sym_list_comprehension] = STATE(920), + [sym_dictionary_comprehension] = STATE(920), + [sym_set_comprehension] = STATE(920), + [sym_generator_expression] = STATE(920), + [sym_parenthesized_expression] = STATE(920), + [sym_conditional_expression] = STATE(1156), + [sym_concatenated_string] = STATE(920), + [sym_string] = STATE(775), + [sym_concatenated_template_string] = STATE(920), + [sym_template_string] = STATE(769), + [sym_await] = STATE(920), + [sym_identifier] = ACTIONS(7), + [anon_sym_lazy] = ACTIONS(9), + [anon_sym_import] = ACTIONS(11), + [anon_sym_from] = ACTIONS(13), + [anon_sym_LPAREN] = ACTIONS(15), + [anon_sym_STAR] = ACTIONS(17), + [anon_sym_print] = ACTIONS(19), + [anon_sym_assert] = ACTIONS(21), + [anon_sym_return] = ACTIONS(23), + [anon_sym_del] = ACTIONS(25), + [anon_sym_raise] = ACTIONS(27), + [anon_sym_pass] = ACTIONS(29), + [anon_sym_break] = ACTIONS(31), + [anon_sym_continue] = ACTIONS(33), + [anon_sym_async] = ACTIONS(319), + [anon_sym_match] = ACTIONS(319), + [anon_sym_DASH] = ACTIONS(49), + [anon_sym_PLUS] = ACTIONS(49), + [anon_sym_LBRACK] = ACTIONS(51), + [anon_sym_LBRACE] = ACTIONS(53), + [anon_sym_STAR_STAR] = ACTIONS(55), + [anon_sym_global] = ACTIONS(59), + [anon_sym_nonlocal] = ACTIONS(61), + [anon_sym_exec] = ACTIONS(63), + [anon_sym_type] = ACTIONS(65), + [anon_sym_not] = ACTIONS(71), + [anon_sym_TILDE] = ACTIONS(49), + [anon_sym_lambda] = ACTIONS(73), + [anon_sym_yield] = ACTIONS(75), + [sym_ellipsis] = ACTIONS(77), + [sym_integer] = ACTIONS(79), + [sym_float] = ACTIONS(77), + [anon_sym_await] = ACTIONS(81), + [sym_true] = ACTIONS(79), + [sym_false] = ACTIONS(79), + [sym_none] = ACTIONS(79), + [sym_comment] = ACTIONS(3), + [sym__newline] = ACTIONS(389), + [sym__indent] = ACTIONS(391), + [sym__string_start] = ACTIONS(83), + [sym__template_string_start] = ACTIONS(85), + }, + [STATE(85)] = { + [sym__simple_statements] = STATE(584), + [sym_import_statement] = STATE(1301), + [sym_future_import_statement] = STATE(1301), + [sym_import_from_statement] = STATE(1301), + [sym_print_statement] = STATE(1301), + [sym_assert_statement] = STATE(1301), + [sym_expression_statement] = STATE(1301), + [sym_named_expression] = STATE(1156), + [sym_return_statement] = STATE(1301), + [sym_delete_statement] = STATE(1301), + [sym_raise_statement] = STATE(1301), + [sym_pass_statement] = STATE(1301), + [sym_break_statement] = STATE(1301), + [sym_continue_statement] = STATE(1301), + [sym_list_splat] = STATE(1520), + [sym_dictionary_splat] = STATE(1520), + [sym_global_statement] = STATE(1301), + [sym_nonlocal_statement] = STATE(1301), + [sym_exec_statement] = STATE(1301), + [sym_type_alias_statement] = STATE(1301), + [sym_expression_list] = STATE(1522), + [sym_pattern] = STATE(1017), + [sym_tuple_pattern] = STATE(1001), + [sym_list_pattern] = STATE(1001), + [sym_list_splat_pattern] = STATE(1001), + [sym_expression] = STATE(1176), + [sym_primary_expression] = STATE(765), + [sym_not_operator] = STATE(1156), + [sym_boolean_operator] = STATE(1156), + [sym_binary_operator] = STATE(920), + [sym_unary_operator] = STATE(920), + [sym_comparison_operator] = STATE(1156), + [sym_lambda] = STATE(1156), + [sym_assignment] = STATE(1522), + [sym_augmented_assignment] = STATE(1522), + [sym_pattern_list] = STATE(1026), + [sym_yield] = STATE(1522), + [sym_attribute] = STATE(582), + [sym_subscript] = STATE(582), + [sym_call] = STATE(920), + [sym_list] = STATE(920), + [sym_set] = STATE(920), + [sym_tuple] = STATE(920), + [sym_dictionary] = STATE(920), + [sym_list_comprehension] = STATE(920), + [sym_dictionary_comprehension] = STATE(920), + [sym_set_comprehension] = STATE(920), + [sym_generator_expression] = STATE(920), + [sym_parenthesized_expression] = STATE(920), + [sym_conditional_expression] = STATE(1156), + [sym_concatenated_string] = STATE(920), + [sym_string] = STATE(775), + [sym_concatenated_template_string] = STATE(920), + [sym_template_string] = STATE(769), + [sym_await] = STATE(920), [sym_identifier] = ACTIONS(7), - [anon_sym_import] = ACTIONS(9), - [anon_sym_from] = ACTIONS(11), - [anon_sym_LPAREN] = ACTIONS(13), - [anon_sym_STAR] = ACTIONS(15), - [anon_sym_print] = ACTIONS(17), - [anon_sym_assert] = ACTIONS(19), - [anon_sym_return] = ACTIONS(21), - [anon_sym_del] = ACTIONS(23), - [anon_sym_raise] = ACTIONS(25), - [anon_sym_pass] = ACTIONS(27), - [anon_sym_break] = ACTIONS(29), - [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(322), - [anon_sym_match] = ACTIONS(322), - [anon_sym_DASH] = ACTIONS(47), - [anon_sym_PLUS] = ACTIONS(47), - [anon_sym_LBRACK] = ACTIONS(49), - [anon_sym_LBRACE] = ACTIONS(51), - [anon_sym_STAR_STAR] = ACTIONS(53), - [anon_sym_global] = ACTIONS(57), - [anon_sym_nonlocal] = ACTIONS(59), - [anon_sym_exec] = ACTIONS(61), - [anon_sym_type] = ACTIONS(63), - [anon_sym_not] = ACTIONS(69), - [anon_sym_TILDE] = ACTIONS(47), - [anon_sym_lambda] = ACTIONS(71), - [anon_sym_yield] = ACTIONS(73), - [sym_ellipsis] = ACTIONS(75), - [sym_integer] = ACTIONS(77), - [sym_float] = ACTIONS(75), - [anon_sym_await] = ACTIONS(79), - [sym_true] = ACTIONS(77), - [sym_false] = ACTIONS(77), - [sym_none] = ACTIONS(77), + [anon_sym_lazy] = ACTIONS(9), + [anon_sym_import] = ACTIONS(11), + [anon_sym_from] = ACTIONS(13), + [anon_sym_LPAREN] = ACTIONS(15), + [anon_sym_STAR] = ACTIONS(17), + [anon_sym_print] = ACTIONS(19), + [anon_sym_assert] = ACTIONS(21), + [anon_sym_return] = ACTIONS(23), + [anon_sym_del] = ACTIONS(25), + [anon_sym_raise] = ACTIONS(27), + [anon_sym_pass] = ACTIONS(29), + [anon_sym_break] = ACTIONS(31), + [anon_sym_continue] = ACTIONS(33), + [anon_sym_async] = ACTIONS(319), + [anon_sym_match] = ACTIONS(319), + [anon_sym_DASH] = ACTIONS(49), + [anon_sym_PLUS] = ACTIONS(49), + [anon_sym_LBRACK] = ACTIONS(51), + [anon_sym_LBRACE] = ACTIONS(53), + [anon_sym_STAR_STAR] = ACTIONS(55), + [anon_sym_global] = ACTIONS(59), + [anon_sym_nonlocal] = ACTIONS(61), + [anon_sym_exec] = ACTIONS(63), + [anon_sym_type] = ACTIONS(65), + [anon_sym_not] = ACTIONS(71), + [anon_sym_TILDE] = ACTIONS(49), + [anon_sym_lambda] = ACTIONS(73), + [anon_sym_yield] = ACTIONS(75), + [sym_ellipsis] = ACTIONS(77), + [sym_integer] = ACTIONS(79), + [sym_float] = ACTIONS(77), + [anon_sym_await] = ACTIONS(81), + [sym_true] = ACTIONS(79), + [sym_false] = ACTIONS(79), + [sym_none] = ACTIONS(79), [sym_comment] = ACTIONS(3), - [sym__newline] = ACTIONS(388), - [sym__indent] = ACTIONS(390), - [sym__string_start] = ACTIONS(81), - [sym__template_string_start] = ACTIONS(83), + [sym__newline] = ACTIONS(393), + [sym__indent] = ACTIONS(395), + [sym__string_start] = ACTIONS(83), + [sym__template_string_start] = ACTIONS(85), }, [STATE(86)] = { - [sym__simple_statements] = STATE(567), + [sym__simple_statements] = STATE(530), [sym_import_statement] = STATE(1332), [sym_future_import_statement] = STATE(1332), [sym_import_from_statement] = STATE(1332), [sym_print_statement] = STATE(1332), [sym_assert_statement] = STATE(1332), [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1158), + [sym_named_expression] = STATE(1156), [sym_return_statement] = STATE(1332), [sym_delete_statement] = STATE(1332), [sym_raise_statement] = STATE(1332), [sym_pass_statement] = STATE(1332), [sym_break_statement] = STATE(1332), [sym_continue_statement] = STATE(1332), - [sym_list_splat] = STATE(1549), - [sym_dictionary_splat] = STATE(1549), + [sym_list_splat] = STATE(1520), + [sym_dictionary_splat] = STATE(1520), [sym_global_statement] = STATE(1332), [sym_nonlocal_statement] = STATE(1332), [sym_exec_statement] = STATE(1332), [sym_type_alias_statement] = STATE(1332), - [sym_expression_list] = STATE(1551), - [sym_pattern] = STATE(1013), - [sym_tuple_pattern] = STATE(999), - [sym_list_pattern] = STATE(999), - [sym_list_splat_pattern] = STATE(999), - [sym_expression] = STATE(1185), - [sym_primary_expression] = STATE(779), - [sym_not_operator] = STATE(1158), - [sym_boolean_operator] = STATE(1158), - [sym_binary_operator] = STATE(908), - [sym_unary_operator] = STATE(908), - [sym_comparison_operator] = STATE(1158), - [sym_lambda] = STATE(1158), - [sym_assignment] = STATE(1551), - [sym_augmented_assignment] = STATE(1551), - [sym_pattern_list] = STATE(1024), - [sym_yield] = STATE(1551), - [sym_attribute] = STATE(494), - [sym_subscript] = STATE(494), - [sym_call] = STATE(908), - [sym_list] = STATE(908), - [sym_set] = STATE(908), - [sym_tuple] = STATE(908), - [sym_dictionary] = STATE(908), - [sym_list_comprehension] = STATE(908), - [sym_dictionary_comprehension] = STATE(908), - [sym_set_comprehension] = STATE(908), - [sym_generator_expression] = STATE(908), - [sym_parenthesized_expression] = STATE(908), - [sym_conditional_expression] = STATE(1158), - [sym_concatenated_string] = STATE(908), - [sym_string] = STATE(782), - [sym_concatenated_template_string] = STATE(908), - [sym_template_string] = STATE(763), - [sym_await] = STATE(908), + [sym_expression_list] = STATE(1522), + [sym_pattern] = STATE(1017), + [sym_tuple_pattern] = STATE(1001), + [sym_list_pattern] = STATE(1001), + [sym_list_splat_pattern] = STATE(1001), + [sym_expression] = STATE(1176), + [sym_primary_expression] = STATE(765), + [sym_not_operator] = STATE(1156), + [sym_boolean_operator] = STATE(1156), + [sym_binary_operator] = STATE(920), + [sym_unary_operator] = STATE(920), + [sym_comparison_operator] = STATE(1156), + [sym_lambda] = STATE(1156), + [sym_assignment] = STATE(1522), + [sym_augmented_assignment] = STATE(1522), + [sym_pattern_list] = STATE(1026), + [sym_yield] = STATE(1522), + [sym_attribute] = STATE(582), + [sym_subscript] = STATE(582), + [sym_call] = STATE(920), + [sym_list] = STATE(920), + [sym_set] = STATE(920), + [sym_tuple] = STATE(920), + [sym_dictionary] = STATE(920), + [sym_list_comprehension] = STATE(920), + [sym_dictionary_comprehension] = STATE(920), + [sym_set_comprehension] = STATE(920), + [sym_generator_expression] = STATE(920), + [sym_parenthesized_expression] = STATE(920), + [sym_conditional_expression] = STATE(1156), + [sym_concatenated_string] = STATE(920), + [sym_string] = STATE(775), + [sym_concatenated_template_string] = STATE(920), + [sym_template_string] = STATE(769), + [sym_await] = STATE(920), [sym_identifier] = ACTIONS(7), - [anon_sym_import] = ACTIONS(9), - [anon_sym_from] = ACTIONS(11), - [anon_sym_LPAREN] = ACTIONS(13), - [anon_sym_STAR] = ACTIONS(15), - [anon_sym_print] = ACTIONS(17), - [anon_sym_assert] = ACTIONS(19), - [anon_sym_return] = ACTIONS(21), - [anon_sym_del] = ACTIONS(23), - [anon_sym_raise] = ACTIONS(25), - [anon_sym_pass] = ACTIONS(27), - [anon_sym_break] = ACTIONS(29), - [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(322), - [anon_sym_match] = ACTIONS(322), - [anon_sym_DASH] = ACTIONS(47), - [anon_sym_PLUS] = ACTIONS(47), - [anon_sym_LBRACK] = ACTIONS(49), - [anon_sym_LBRACE] = ACTIONS(51), - [anon_sym_STAR_STAR] = ACTIONS(53), - [anon_sym_global] = ACTIONS(57), - [anon_sym_nonlocal] = ACTIONS(59), - [anon_sym_exec] = ACTIONS(61), - [anon_sym_type] = ACTIONS(63), - [anon_sym_not] = ACTIONS(69), - [anon_sym_TILDE] = ACTIONS(47), - [anon_sym_lambda] = ACTIONS(71), - [anon_sym_yield] = ACTIONS(73), - [sym_ellipsis] = ACTIONS(75), - [sym_integer] = ACTIONS(77), - [sym_float] = ACTIONS(75), - [anon_sym_await] = ACTIONS(79), - [sym_true] = ACTIONS(77), - [sym_false] = ACTIONS(77), - [sym_none] = ACTIONS(77), + [anon_sym_lazy] = ACTIONS(9), + [anon_sym_import] = ACTIONS(11), + [anon_sym_from] = ACTIONS(13), + [anon_sym_LPAREN] = ACTIONS(15), + [anon_sym_STAR] = ACTIONS(17), + [anon_sym_print] = ACTIONS(19), + [anon_sym_assert] = ACTIONS(21), + [anon_sym_return] = ACTIONS(23), + [anon_sym_del] = ACTIONS(25), + [anon_sym_raise] = ACTIONS(27), + [anon_sym_pass] = ACTIONS(29), + [anon_sym_break] = ACTIONS(31), + [anon_sym_continue] = ACTIONS(33), + [anon_sym_async] = ACTIONS(319), + [anon_sym_match] = ACTIONS(319), + [anon_sym_DASH] = ACTIONS(49), + [anon_sym_PLUS] = ACTIONS(49), + [anon_sym_LBRACK] = ACTIONS(51), + [anon_sym_LBRACE] = ACTIONS(53), + [anon_sym_STAR_STAR] = ACTIONS(55), + [anon_sym_global] = ACTIONS(59), + [anon_sym_nonlocal] = ACTIONS(61), + [anon_sym_exec] = ACTIONS(63), + [anon_sym_type] = ACTIONS(65), + [anon_sym_not] = ACTIONS(71), + [anon_sym_TILDE] = ACTIONS(49), + [anon_sym_lambda] = ACTIONS(73), + [anon_sym_yield] = ACTIONS(75), + [sym_ellipsis] = ACTIONS(77), + [sym_integer] = ACTIONS(79), + [sym_float] = ACTIONS(77), + [anon_sym_await] = ACTIONS(81), + [sym_true] = ACTIONS(79), + [sym_false] = ACTIONS(79), + [sym_none] = ACTIONS(79), [sym_comment] = ACTIONS(3), - [sym__newline] = ACTIONS(392), - [sym__indent] = ACTIONS(394), - [sym__string_start] = ACTIONS(81), - [sym__template_string_start] = ACTIONS(83), + [sym__newline] = ACTIONS(397), + [sym__indent] = ACTIONS(399), + [sym__string_start] = ACTIONS(83), + [sym__template_string_start] = ACTIONS(85), }, [STATE(87)] = { - [sym__simple_statements] = STATE(523), - [sym_import_statement] = STATE(1348), - [sym_future_import_statement] = STATE(1348), - [sym_import_from_statement] = STATE(1348), - [sym_print_statement] = STATE(1348), - [sym_assert_statement] = STATE(1348), - [sym_expression_statement] = STATE(1348), - [sym_named_expression] = STATE(1158), - [sym_return_statement] = STATE(1348), - [sym_delete_statement] = STATE(1348), - [sym_raise_statement] = STATE(1348), - [sym_pass_statement] = STATE(1348), - [sym_break_statement] = STATE(1348), - [sym_continue_statement] = STATE(1348), - [sym_list_splat] = STATE(1549), - [sym_dictionary_splat] = STATE(1549), - [sym_global_statement] = STATE(1348), - [sym_nonlocal_statement] = STATE(1348), - [sym_exec_statement] = STATE(1348), - [sym_type_alias_statement] = STATE(1348), - [sym_expression_list] = STATE(1551), - [sym_pattern] = STATE(1013), - [sym_tuple_pattern] = STATE(999), - [sym_list_pattern] = STATE(999), - [sym_list_splat_pattern] = STATE(999), - [sym_expression] = STATE(1185), - [sym_primary_expression] = STATE(779), - [sym_not_operator] = STATE(1158), - [sym_boolean_operator] = STATE(1158), - [sym_binary_operator] = STATE(908), - [sym_unary_operator] = STATE(908), - [sym_comparison_operator] = STATE(1158), - [sym_lambda] = STATE(1158), - [sym_assignment] = STATE(1551), - [sym_augmented_assignment] = STATE(1551), - [sym_pattern_list] = STATE(1024), - [sym_yield] = STATE(1551), - [sym_attribute] = STATE(494), - [sym_subscript] = STATE(494), - [sym_call] = STATE(908), - [sym_list] = STATE(908), - [sym_set] = STATE(908), - [sym_tuple] = STATE(908), - [sym_dictionary] = STATE(908), - [sym_list_comprehension] = STATE(908), - [sym_dictionary_comprehension] = STATE(908), - [sym_set_comprehension] = STATE(908), - [sym_generator_expression] = STATE(908), - [sym_parenthesized_expression] = STATE(908), - [sym_conditional_expression] = STATE(1158), - [sym_concatenated_string] = STATE(908), - [sym_string] = STATE(782), - [sym_concatenated_template_string] = STATE(908), - [sym_template_string] = STATE(763), - [sym_await] = STATE(908), + [sym__simple_statements] = STATE(486), + [sym_import_statement] = STATE(1332), + [sym_future_import_statement] = STATE(1332), + [sym_import_from_statement] = STATE(1332), + [sym_print_statement] = STATE(1332), + [sym_assert_statement] = STATE(1332), + [sym_expression_statement] = STATE(1332), + [sym_named_expression] = STATE(1156), + [sym_return_statement] = STATE(1332), + [sym_delete_statement] = STATE(1332), + [sym_raise_statement] = STATE(1332), + [sym_pass_statement] = STATE(1332), + [sym_break_statement] = STATE(1332), + [sym_continue_statement] = STATE(1332), + [sym_list_splat] = STATE(1520), + [sym_dictionary_splat] = STATE(1520), + [sym_global_statement] = STATE(1332), + [sym_nonlocal_statement] = STATE(1332), + [sym_exec_statement] = STATE(1332), + [sym_type_alias_statement] = STATE(1332), + [sym_expression_list] = STATE(1522), + [sym_pattern] = STATE(1017), + [sym_tuple_pattern] = STATE(1001), + [sym_list_pattern] = STATE(1001), + [sym_list_splat_pattern] = STATE(1001), + [sym_expression] = STATE(1176), + [sym_primary_expression] = STATE(765), + [sym_not_operator] = STATE(1156), + [sym_boolean_operator] = STATE(1156), + [sym_binary_operator] = STATE(920), + [sym_unary_operator] = STATE(920), + [sym_comparison_operator] = STATE(1156), + [sym_lambda] = STATE(1156), + [sym_assignment] = STATE(1522), + [sym_augmented_assignment] = STATE(1522), + [sym_pattern_list] = STATE(1026), + [sym_yield] = STATE(1522), + [sym_attribute] = STATE(582), + [sym_subscript] = STATE(582), + [sym_call] = STATE(920), + [sym_list] = STATE(920), + [sym_set] = STATE(920), + [sym_tuple] = STATE(920), + [sym_dictionary] = STATE(920), + [sym_list_comprehension] = STATE(920), + [sym_dictionary_comprehension] = STATE(920), + [sym_set_comprehension] = STATE(920), + [sym_generator_expression] = STATE(920), + [sym_parenthesized_expression] = STATE(920), + [sym_conditional_expression] = STATE(1156), + [sym_concatenated_string] = STATE(920), + [sym_string] = STATE(775), + [sym_concatenated_template_string] = STATE(920), + [sym_template_string] = STATE(769), + [sym_await] = STATE(920), [sym_identifier] = ACTIONS(7), - [anon_sym_import] = ACTIONS(9), - [anon_sym_from] = ACTIONS(11), - [anon_sym_LPAREN] = ACTIONS(13), - [anon_sym_STAR] = ACTIONS(15), - [anon_sym_print] = ACTIONS(17), - [anon_sym_assert] = ACTIONS(19), - [anon_sym_return] = ACTIONS(21), - [anon_sym_del] = ACTIONS(23), - [anon_sym_raise] = ACTIONS(25), - [anon_sym_pass] = ACTIONS(27), - [anon_sym_break] = ACTIONS(29), - [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(322), - [anon_sym_match] = ACTIONS(322), - [anon_sym_DASH] = ACTIONS(47), - [anon_sym_PLUS] = ACTIONS(47), - [anon_sym_LBRACK] = ACTIONS(49), - [anon_sym_LBRACE] = ACTIONS(51), - [anon_sym_STAR_STAR] = ACTIONS(53), - [anon_sym_global] = ACTIONS(57), - [anon_sym_nonlocal] = ACTIONS(59), - [anon_sym_exec] = ACTIONS(61), - [anon_sym_type] = ACTIONS(63), - [anon_sym_not] = ACTIONS(69), - [anon_sym_TILDE] = ACTIONS(47), - [anon_sym_lambda] = ACTIONS(71), - [anon_sym_yield] = ACTIONS(73), - [sym_ellipsis] = ACTIONS(75), - [sym_integer] = ACTIONS(77), - [sym_float] = ACTIONS(75), - [anon_sym_await] = ACTIONS(79), - [sym_true] = ACTIONS(77), - [sym_false] = ACTIONS(77), - [sym_none] = ACTIONS(77), + [anon_sym_lazy] = ACTIONS(9), + [anon_sym_import] = ACTIONS(11), + [anon_sym_from] = ACTIONS(13), + [anon_sym_LPAREN] = ACTIONS(15), + [anon_sym_STAR] = ACTIONS(17), + [anon_sym_print] = ACTIONS(19), + [anon_sym_assert] = ACTIONS(21), + [anon_sym_return] = ACTIONS(23), + [anon_sym_del] = ACTIONS(25), + [anon_sym_raise] = ACTIONS(27), + [anon_sym_pass] = ACTIONS(29), + [anon_sym_break] = ACTIONS(31), + [anon_sym_continue] = ACTIONS(33), + [anon_sym_async] = ACTIONS(319), + [anon_sym_match] = ACTIONS(319), + [anon_sym_DASH] = ACTIONS(49), + [anon_sym_PLUS] = ACTIONS(49), + [anon_sym_LBRACK] = ACTIONS(51), + [anon_sym_LBRACE] = ACTIONS(53), + [anon_sym_STAR_STAR] = ACTIONS(55), + [anon_sym_global] = ACTIONS(59), + [anon_sym_nonlocal] = ACTIONS(61), + [anon_sym_exec] = ACTIONS(63), + [anon_sym_type] = ACTIONS(65), + [anon_sym_not] = ACTIONS(71), + [anon_sym_TILDE] = ACTIONS(49), + [anon_sym_lambda] = ACTIONS(73), + [anon_sym_yield] = ACTIONS(75), + [sym_ellipsis] = ACTIONS(77), + [sym_integer] = ACTIONS(79), + [sym_float] = ACTIONS(77), + [anon_sym_await] = ACTIONS(81), + [sym_true] = ACTIONS(79), + [sym_false] = ACTIONS(79), + [sym_none] = ACTIONS(79), [sym_comment] = ACTIONS(3), - [sym__newline] = ACTIONS(396), - [sym__indent] = ACTIONS(398), - [sym__string_start] = ACTIONS(81), - [sym__template_string_start] = ACTIONS(83), + [sym__newline] = ACTIONS(401), + [sym__indent] = ACTIONS(403), + [sym__string_start] = ACTIONS(83), + [sym__template_string_start] = ACTIONS(85), }, [STATE(88)] = { - [sym__simple_statements] = STATE(571), + [sym__simple_statements] = STATE(444), [sym_import_statement] = STATE(1332), [sym_future_import_statement] = STATE(1332), [sym_import_from_statement] = STATE(1332), [sym_print_statement] = STATE(1332), [sym_assert_statement] = STATE(1332), [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1158), + [sym_named_expression] = STATE(1156), [sym_return_statement] = STATE(1332), [sym_delete_statement] = STATE(1332), [sym_raise_statement] = STATE(1332), [sym_pass_statement] = STATE(1332), [sym_break_statement] = STATE(1332), [sym_continue_statement] = STATE(1332), - [sym_list_splat] = STATE(1549), - [sym_dictionary_splat] = STATE(1549), + [sym_list_splat] = STATE(1520), + [sym_dictionary_splat] = STATE(1520), [sym_global_statement] = STATE(1332), [sym_nonlocal_statement] = STATE(1332), [sym_exec_statement] = STATE(1332), [sym_type_alias_statement] = STATE(1332), - [sym_expression_list] = STATE(1551), - [sym_pattern] = STATE(1013), - [sym_tuple_pattern] = STATE(999), - [sym_list_pattern] = STATE(999), - [sym_list_splat_pattern] = STATE(999), - [sym_expression] = STATE(1185), - [sym_primary_expression] = STATE(779), - [sym_not_operator] = STATE(1158), - [sym_boolean_operator] = STATE(1158), - [sym_binary_operator] = STATE(908), - [sym_unary_operator] = STATE(908), - [sym_comparison_operator] = STATE(1158), - [sym_lambda] = STATE(1158), - [sym_assignment] = STATE(1551), - [sym_augmented_assignment] = STATE(1551), - [sym_pattern_list] = STATE(1024), - [sym_yield] = STATE(1551), - [sym_attribute] = STATE(494), - [sym_subscript] = STATE(494), - [sym_call] = STATE(908), - [sym_list] = STATE(908), - [sym_set] = STATE(908), - [sym_tuple] = STATE(908), - [sym_dictionary] = STATE(908), - [sym_list_comprehension] = STATE(908), - [sym_dictionary_comprehension] = STATE(908), - [sym_set_comprehension] = STATE(908), - [sym_generator_expression] = STATE(908), - [sym_parenthesized_expression] = STATE(908), - [sym_conditional_expression] = STATE(1158), - [sym_concatenated_string] = STATE(908), - [sym_string] = STATE(782), - [sym_concatenated_template_string] = STATE(908), - [sym_template_string] = STATE(763), - [sym_await] = STATE(908), + [sym_expression_list] = STATE(1522), + [sym_pattern] = STATE(1017), + [sym_tuple_pattern] = STATE(1001), + [sym_list_pattern] = STATE(1001), + [sym_list_splat_pattern] = STATE(1001), + [sym_expression] = STATE(1176), + [sym_primary_expression] = STATE(765), + [sym_not_operator] = STATE(1156), + [sym_boolean_operator] = STATE(1156), + [sym_binary_operator] = STATE(920), + [sym_unary_operator] = STATE(920), + [sym_comparison_operator] = STATE(1156), + [sym_lambda] = STATE(1156), + [sym_assignment] = STATE(1522), + [sym_augmented_assignment] = STATE(1522), + [sym_pattern_list] = STATE(1026), + [sym_yield] = STATE(1522), + [sym_attribute] = STATE(582), + [sym_subscript] = STATE(582), + [sym_call] = STATE(920), + [sym_list] = STATE(920), + [sym_set] = STATE(920), + [sym_tuple] = STATE(920), + [sym_dictionary] = STATE(920), + [sym_list_comprehension] = STATE(920), + [sym_dictionary_comprehension] = STATE(920), + [sym_set_comprehension] = STATE(920), + [sym_generator_expression] = STATE(920), + [sym_parenthesized_expression] = STATE(920), + [sym_conditional_expression] = STATE(1156), + [sym_concatenated_string] = STATE(920), + [sym_string] = STATE(775), + [sym_concatenated_template_string] = STATE(920), + [sym_template_string] = STATE(769), + [sym_await] = STATE(920), [sym_identifier] = ACTIONS(7), - [anon_sym_import] = ACTIONS(9), - [anon_sym_from] = ACTIONS(11), - [anon_sym_LPAREN] = ACTIONS(13), - [anon_sym_STAR] = ACTIONS(15), - [anon_sym_print] = ACTIONS(17), - [anon_sym_assert] = ACTIONS(19), - [anon_sym_return] = ACTIONS(21), - [anon_sym_del] = ACTIONS(23), - [anon_sym_raise] = ACTIONS(25), - [anon_sym_pass] = ACTIONS(27), - [anon_sym_break] = ACTIONS(29), - [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(322), - [anon_sym_match] = ACTIONS(322), - [anon_sym_DASH] = ACTIONS(47), - [anon_sym_PLUS] = ACTIONS(47), - [anon_sym_LBRACK] = ACTIONS(49), - [anon_sym_LBRACE] = ACTIONS(51), - [anon_sym_STAR_STAR] = ACTIONS(53), - [anon_sym_global] = ACTIONS(57), - [anon_sym_nonlocal] = ACTIONS(59), - [anon_sym_exec] = ACTIONS(61), - [anon_sym_type] = ACTIONS(63), - [anon_sym_not] = ACTIONS(69), - [anon_sym_TILDE] = ACTIONS(47), - [anon_sym_lambda] = ACTIONS(71), - [anon_sym_yield] = ACTIONS(73), - [sym_ellipsis] = ACTIONS(75), - [sym_integer] = ACTIONS(77), - [sym_float] = ACTIONS(75), - [anon_sym_await] = ACTIONS(79), - [sym_true] = ACTIONS(77), - [sym_false] = ACTIONS(77), - [sym_none] = ACTIONS(77), + [anon_sym_lazy] = ACTIONS(9), + [anon_sym_import] = ACTIONS(11), + [anon_sym_from] = ACTIONS(13), + [anon_sym_LPAREN] = ACTIONS(15), + [anon_sym_STAR] = ACTIONS(17), + [anon_sym_print] = ACTIONS(19), + [anon_sym_assert] = ACTIONS(21), + [anon_sym_return] = ACTIONS(23), + [anon_sym_del] = ACTIONS(25), + [anon_sym_raise] = ACTIONS(27), + [anon_sym_pass] = ACTIONS(29), + [anon_sym_break] = ACTIONS(31), + [anon_sym_continue] = ACTIONS(33), + [anon_sym_async] = ACTIONS(319), + [anon_sym_match] = ACTIONS(319), + [anon_sym_DASH] = ACTIONS(49), + [anon_sym_PLUS] = ACTIONS(49), + [anon_sym_LBRACK] = ACTIONS(51), + [anon_sym_LBRACE] = ACTIONS(53), + [anon_sym_STAR_STAR] = ACTIONS(55), + [anon_sym_global] = ACTIONS(59), + [anon_sym_nonlocal] = ACTIONS(61), + [anon_sym_exec] = ACTIONS(63), + [anon_sym_type] = ACTIONS(65), + [anon_sym_not] = ACTIONS(71), + [anon_sym_TILDE] = ACTIONS(49), + [anon_sym_lambda] = ACTIONS(73), + [anon_sym_yield] = ACTIONS(75), + [sym_ellipsis] = ACTIONS(77), + [sym_integer] = ACTIONS(79), + [sym_float] = ACTIONS(77), + [anon_sym_await] = ACTIONS(81), + [sym_true] = ACTIONS(79), + [sym_false] = ACTIONS(79), + [sym_none] = ACTIONS(79), [sym_comment] = ACTIONS(3), - [sym__newline] = ACTIONS(400), - [sym__indent] = ACTIONS(402), - [sym__string_start] = ACTIONS(81), - [sym__template_string_start] = ACTIONS(83), + [sym__newline] = ACTIONS(405), + [sym__indent] = ACTIONS(407), + [sym__string_start] = ACTIONS(83), + [sym__template_string_start] = ACTIONS(85), }, [STATE(89)] = { - [sym__simple_statements] = STATE(491), + [sym__simple_statements] = STATE(532), [sym_import_statement] = STATE(1332), [sym_future_import_statement] = STATE(1332), [sym_import_from_statement] = STATE(1332), [sym_print_statement] = STATE(1332), [sym_assert_statement] = STATE(1332), [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1158), + [sym_named_expression] = STATE(1156), [sym_return_statement] = STATE(1332), [sym_delete_statement] = STATE(1332), [sym_raise_statement] = STATE(1332), [sym_pass_statement] = STATE(1332), [sym_break_statement] = STATE(1332), [sym_continue_statement] = STATE(1332), - [sym_list_splat] = STATE(1549), - [sym_dictionary_splat] = STATE(1549), + [sym_list_splat] = STATE(1520), + [sym_dictionary_splat] = STATE(1520), [sym_global_statement] = STATE(1332), [sym_nonlocal_statement] = STATE(1332), [sym_exec_statement] = STATE(1332), [sym_type_alias_statement] = STATE(1332), - [sym_expression_list] = STATE(1551), - [sym_pattern] = STATE(1013), - [sym_tuple_pattern] = STATE(999), - [sym_list_pattern] = STATE(999), - [sym_list_splat_pattern] = STATE(999), - [sym_expression] = STATE(1185), - [sym_primary_expression] = STATE(779), - [sym_not_operator] = STATE(1158), - [sym_boolean_operator] = STATE(1158), - [sym_binary_operator] = STATE(908), - [sym_unary_operator] = STATE(908), - [sym_comparison_operator] = STATE(1158), - [sym_lambda] = STATE(1158), - [sym_assignment] = STATE(1551), - [sym_augmented_assignment] = STATE(1551), - [sym_pattern_list] = STATE(1024), - [sym_yield] = STATE(1551), - [sym_attribute] = STATE(494), - [sym_subscript] = STATE(494), - [sym_call] = STATE(908), - [sym_list] = STATE(908), - [sym_set] = STATE(908), - [sym_tuple] = STATE(908), - [sym_dictionary] = STATE(908), - [sym_list_comprehension] = STATE(908), - [sym_dictionary_comprehension] = STATE(908), - [sym_set_comprehension] = STATE(908), - [sym_generator_expression] = STATE(908), - [sym_parenthesized_expression] = STATE(908), - [sym_conditional_expression] = STATE(1158), - [sym_concatenated_string] = STATE(908), - [sym_string] = STATE(782), - [sym_concatenated_template_string] = STATE(908), - [sym_template_string] = STATE(763), - [sym_await] = STATE(908), + [sym_expression_list] = STATE(1522), + [sym_pattern] = STATE(1017), + [sym_tuple_pattern] = STATE(1001), + [sym_list_pattern] = STATE(1001), + [sym_list_splat_pattern] = STATE(1001), + [sym_expression] = STATE(1176), + [sym_primary_expression] = STATE(765), + [sym_not_operator] = STATE(1156), + [sym_boolean_operator] = STATE(1156), + [sym_binary_operator] = STATE(920), + [sym_unary_operator] = STATE(920), + [sym_comparison_operator] = STATE(1156), + [sym_lambda] = STATE(1156), + [sym_assignment] = STATE(1522), + [sym_augmented_assignment] = STATE(1522), + [sym_pattern_list] = STATE(1026), + [sym_yield] = STATE(1522), + [sym_attribute] = STATE(582), + [sym_subscript] = STATE(582), + [sym_call] = STATE(920), + [sym_list] = STATE(920), + [sym_set] = STATE(920), + [sym_tuple] = STATE(920), + [sym_dictionary] = STATE(920), + [sym_list_comprehension] = STATE(920), + [sym_dictionary_comprehension] = STATE(920), + [sym_set_comprehension] = STATE(920), + [sym_generator_expression] = STATE(920), + [sym_parenthesized_expression] = STATE(920), + [sym_conditional_expression] = STATE(1156), + [sym_concatenated_string] = STATE(920), + [sym_string] = STATE(775), + [sym_concatenated_template_string] = STATE(920), + [sym_template_string] = STATE(769), + [sym_await] = STATE(920), [sym_identifier] = ACTIONS(7), - [anon_sym_import] = ACTIONS(9), - [anon_sym_from] = ACTIONS(11), - [anon_sym_LPAREN] = ACTIONS(13), - [anon_sym_STAR] = ACTIONS(15), - [anon_sym_print] = ACTIONS(17), - [anon_sym_assert] = ACTIONS(19), - [anon_sym_return] = ACTIONS(21), - [anon_sym_del] = ACTIONS(23), - [anon_sym_raise] = ACTIONS(25), - [anon_sym_pass] = ACTIONS(27), - [anon_sym_break] = ACTIONS(29), - [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(322), - [anon_sym_match] = ACTIONS(322), - [anon_sym_DASH] = ACTIONS(47), - [anon_sym_PLUS] = ACTIONS(47), - [anon_sym_LBRACK] = ACTIONS(49), - [anon_sym_LBRACE] = ACTIONS(51), - [anon_sym_STAR_STAR] = ACTIONS(53), - [anon_sym_global] = ACTIONS(57), - [anon_sym_nonlocal] = ACTIONS(59), - [anon_sym_exec] = ACTIONS(61), - [anon_sym_type] = ACTIONS(63), - [anon_sym_not] = ACTIONS(69), - [anon_sym_TILDE] = ACTIONS(47), - [anon_sym_lambda] = ACTIONS(71), - [anon_sym_yield] = ACTIONS(73), - [sym_ellipsis] = ACTIONS(75), - [sym_integer] = ACTIONS(77), - [sym_float] = ACTIONS(75), - [anon_sym_await] = ACTIONS(79), - [sym_true] = ACTIONS(77), - [sym_false] = ACTIONS(77), - [sym_none] = ACTIONS(77), + [anon_sym_lazy] = ACTIONS(9), + [anon_sym_import] = ACTIONS(11), + [anon_sym_from] = ACTIONS(13), + [anon_sym_LPAREN] = ACTIONS(15), + [anon_sym_STAR] = ACTIONS(17), + [anon_sym_print] = ACTIONS(19), + [anon_sym_assert] = ACTIONS(21), + [anon_sym_return] = ACTIONS(23), + [anon_sym_del] = ACTIONS(25), + [anon_sym_raise] = ACTIONS(27), + [anon_sym_pass] = ACTIONS(29), + [anon_sym_break] = ACTIONS(31), + [anon_sym_continue] = ACTIONS(33), + [anon_sym_async] = ACTIONS(319), + [anon_sym_match] = ACTIONS(319), + [anon_sym_DASH] = ACTIONS(49), + [anon_sym_PLUS] = ACTIONS(49), + [anon_sym_LBRACK] = ACTIONS(51), + [anon_sym_LBRACE] = ACTIONS(53), + [anon_sym_STAR_STAR] = ACTIONS(55), + [anon_sym_global] = ACTIONS(59), + [anon_sym_nonlocal] = ACTIONS(61), + [anon_sym_exec] = ACTIONS(63), + [anon_sym_type] = ACTIONS(65), + [anon_sym_not] = ACTIONS(71), + [anon_sym_TILDE] = ACTIONS(49), + [anon_sym_lambda] = ACTIONS(73), + [anon_sym_yield] = ACTIONS(75), + [sym_ellipsis] = ACTIONS(77), + [sym_integer] = ACTIONS(79), + [sym_float] = ACTIONS(77), + [anon_sym_await] = ACTIONS(81), + [sym_true] = ACTIONS(79), + [sym_false] = ACTIONS(79), + [sym_none] = ACTIONS(79), [sym_comment] = ACTIONS(3), - [sym__newline] = ACTIONS(404), - [sym__indent] = ACTIONS(406), - [sym__string_start] = ACTIONS(81), - [sym__template_string_start] = ACTIONS(83), + [sym__newline] = ACTIONS(409), + [sym__indent] = ACTIONS(411), + [sym__string_start] = ACTIONS(83), + [sym__template_string_start] = ACTIONS(85), }, [STATE(90)] = { - [sym__simple_statements] = STATE(437), + [sym__simple_statements] = STATE(536), [sym_import_statement] = STATE(1332), [sym_future_import_statement] = STATE(1332), [sym_import_from_statement] = STATE(1332), [sym_print_statement] = STATE(1332), [sym_assert_statement] = STATE(1332), [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1158), + [sym_named_expression] = STATE(1156), [sym_return_statement] = STATE(1332), [sym_delete_statement] = STATE(1332), [sym_raise_statement] = STATE(1332), [sym_pass_statement] = STATE(1332), [sym_break_statement] = STATE(1332), [sym_continue_statement] = STATE(1332), - [sym_list_splat] = STATE(1549), - [sym_dictionary_splat] = STATE(1549), + [sym_list_splat] = STATE(1520), + [sym_dictionary_splat] = STATE(1520), [sym_global_statement] = STATE(1332), [sym_nonlocal_statement] = STATE(1332), [sym_exec_statement] = STATE(1332), [sym_type_alias_statement] = STATE(1332), - [sym_expression_list] = STATE(1551), - [sym_pattern] = STATE(1013), - [sym_tuple_pattern] = STATE(999), - [sym_list_pattern] = STATE(999), - [sym_list_splat_pattern] = STATE(999), - [sym_expression] = STATE(1185), - [sym_primary_expression] = STATE(779), - [sym_not_operator] = STATE(1158), - [sym_boolean_operator] = STATE(1158), - [sym_binary_operator] = STATE(908), - [sym_unary_operator] = STATE(908), - [sym_comparison_operator] = STATE(1158), - [sym_lambda] = STATE(1158), - [sym_assignment] = STATE(1551), - [sym_augmented_assignment] = STATE(1551), - [sym_pattern_list] = STATE(1024), - [sym_yield] = STATE(1551), - [sym_attribute] = STATE(494), - [sym_subscript] = STATE(494), - [sym_call] = STATE(908), - [sym_list] = STATE(908), - [sym_set] = STATE(908), - [sym_tuple] = STATE(908), - [sym_dictionary] = STATE(908), - [sym_list_comprehension] = STATE(908), - [sym_dictionary_comprehension] = STATE(908), - [sym_set_comprehension] = STATE(908), - [sym_generator_expression] = STATE(908), - [sym_parenthesized_expression] = STATE(908), - [sym_conditional_expression] = STATE(1158), - [sym_concatenated_string] = STATE(908), - [sym_string] = STATE(782), - [sym_concatenated_template_string] = STATE(908), - [sym_template_string] = STATE(763), - [sym_await] = STATE(908), + [sym_expression_list] = STATE(1522), + [sym_pattern] = STATE(1017), + [sym_tuple_pattern] = STATE(1001), + [sym_list_pattern] = STATE(1001), + [sym_list_splat_pattern] = STATE(1001), + [sym_expression] = STATE(1176), + [sym_primary_expression] = STATE(765), + [sym_not_operator] = STATE(1156), + [sym_boolean_operator] = STATE(1156), + [sym_binary_operator] = STATE(920), + [sym_unary_operator] = STATE(920), + [sym_comparison_operator] = STATE(1156), + [sym_lambda] = STATE(1156), + [sym_assignment] = STATE(1522), + [sym_augmented_assignment] = STATE(1522), + [sym_pattern_list] = STATE(1026), + [sym_yield] = STATE(1522), + [sym_attribute] = STATE(582), + [sym_subscript] = STATE(582), + [sym_call] = STATE(920), + [sym_list] = STATE(920), + [sym_set] = STATE(920), + [sym_tuple] = STATE(920), + [sym_dictionary] = STATE(920), + [sym_list_comprehension] = STATE(920), + [sym_dictionary_comprehension] = STATE(920), + [sym_set_comprehension] = STATE(920), + [sym_generator_expression] = STATE(920), + [sym_parenthesized_expression] = STATE(920), + [sym_conditional_expression] = STATE(1156), + [sym_concatenated_string] = STATE(920), + [sym_string] = STATE(775), + [sym_concatenated_template_string] = STATE(920), + [sym_template_string] = STATE(769), + [sym_await] = STATE(920), [sym_identifier] = ACTIONS(7), - [anon_sym_import] = ACTIONS(9), - [anon_sym_from] = ACTIONS(11), - [anon_sym_LPAREN] = ACTIONS(13), - [anon_sym_STAR] = ACTIONS(15), - [anon_sym_print] = ACTIONS(17), - [anon_sym_assert] = ACTIONS(19), - [anon_sym_return] = ACTIONS(21), - [anon_sym_del] = ACTIONS(23), - [anon_sym_raise] = ACTIONS(25), - [anon_sym_pass] = ACTIONS(27), - [anon_sym_break] = ACTIONS(29), - [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(322), - [anon_sym_match] = ACTIONS(322), - [anon_sym_DASH] = ACTIONS(47), - [anon_sym_PLUS] = ACTIONS(47), - [anon_sym_LBRACK] = ACTIONS(49), - [anon_sym_LBRACE] = ACTIONS(51), - [anon_sym_STAR_STAR] = ACTIONS(53), - [anon_sym_global] = ACTIONS(57), - [anon_sym_nonlocal] = ACTIONS(59), - [anon_sym_exec] = ACTIONS(61), - [anon_sym_type] = ACTIONS(63), - [anon_sym_not] = ACTIONS(69), - [anon_sym_TILDE] = ACTIONS(47), - [anon_sym_lambda] = ACTIONS(71), - [anon_sym_yield] = ACTIONS(73), - [sym_ellipsis] = ACTIONS(75), - [sym_integer] = ACTIONS(77), - [sym_float] = ACTIONS(75), - [anon_sym_await] = ACTIONS(79), - [sym_true] = ACTIONS(77), - [sym_false] = ACTIONS(77), - [sym_none] = ACTIONS(77), + [anon_sym_lazy] = ACTIONS(9), + [anon_sym_import] = ACTIONS(11), + [anon_sym_from] = ACTIONS(13), + [anon_sym_LPAREN] = ACTIONS(15), + [anon_sym_STAR] = ACTIONS(17), + [anon_sym_print] = ACTIONS(19), + [anon_sym_assert] = ACTIONS(21), + [anon_sym_return] = ACTIONS(23), + [anon_sym_del] = ACTIONS(25), + [anon_sym_raise] = ACTIONS(27), + [anon_sym_pass] = ACTIONS(29), + [anon_sym_break] = ACTIONS(31), + [anon_sym_continue] = ACTIONS(33), + [anon_sym_async] = ACTIONS(319), + [anon_sym_match] = ACTIONS(319), + [anon_sym_DASH] = ACTIONS(49), + [anon_sym_PLUS] = ACTIONS(49), + [anon_sym_LBRACK] = ACTIONS(51), + [anon_sym_LBRACE] = ACTIONS(53), + [anon_sym_STAR_STAR] = ACTIONS(55), + [anon_sym_global] = ACTIONS(59), + [anon_sym_nonlocal] = ACTIONS(61), + [anon_sym_exec] = ACTIONS(63), + [anon_sym_type] = ACTIONS(65), + [anon_sym_not] = ACTIONS(71), + [anon_sym_TILDE] = ACTIONS(49), + [anon_sym_lambda] = ACTIONS(73), + [anon_sym_yield] = ACTIONS(75), + [sym_ellipsis] = ACTIONS(77), + [sym_integer] = ACTIONS(79), + [sym_float] = ACTIONS(77), + [anon_sym_await] = ACTIONS(81), + [sym_true] = ACTIONS(79), + [sym_false] = ACTIONS(79), + [sym_none] = ACTIONS(79), [sym_comment] = ACTIONS(3), - [sym__newline] = ACTIONS(408), - [sym__indent] = ACTIONS(410), - [sym__string_start] = ACTIONS(81), - [sym__template_string_start] = ACTIONS(83), + [sym__newline] = ACTIONS(413), + [sym__indent] = ACTIONS(415), + [sym__string_start] = ACTIONS(83), + [sym__template_string_start] = ACTIONS(85), }, [STATE(91)] = { - [sym__simple_statements] = STATE(573), + [sym__simple_statements] = STATE(449), + [sym_import_statement] = STATE(1301), + [sym_future_import_statement] = STATE(1301), + [sym_import_from_statement] = STATE(1301), + [sym_print_statement] = STATE(1301), + [sym_assert_statement] = STATE(1301), + [sym_expression_statement] = STATE(1301), + [sym_named_expression] = STATE(1156), + [sym_return_statement] = STATE(1301), + [sym_delete_statement] = STATE(1301), + [sym_raise_statement] = STATE(1301), + [sym_pass_statement] = STATE(1301), + [sym_break_statement] = STATE(1301), + [sym_continue_statement] = STATE(1301), + [sym_list_splat] = STATE(1520), + [sym_dictionary_splat] = STATE(1520), + [sym_global_statement] = STATE(1301), + [sym_nonlocal_statement] = STATE(1301), + [sym_exec_statement] = STATE(1301), + [sym_type_alias_statement] = STATE(1301), + [sym_expression_list] = STATE(1522), + [sym_pattern] = STATE(1017), + [sym_tuple_pattern] = STATE(1001), + [sym_list_pattern] = STATE(1001), + [sym_list_splat_pattern] = STATE(1001), + [sym_expression] = STATE(1176), + [sym_primary_expression] = STATE(765), + [sym_not_operator] = STATE(1156), + [sym_boolean_operator] = STATE(1156), + [sym_binary_operator] = STATE(920), + [sym_unary_operator] = STATE(920), + [sym_comparison_operator] = STATE(1156), + [sym_lambda] = STATE(1156), + [sym_assignment] = STATE(1522), + [sym_augmented_assignment] = STATE(1522), + [sym_pattern_list] = STATE(1026), + [sym_yield] = STATE(1522), + [sym_attribute] = STATE(582), + [sym_subscript] = STATE(582), + [sym_call] = STATE(920), + [sym_list] = STATE(920), + [sym_set] = STATE(920), + [sym_tuple] = STATE(920), + [sym_dictionary] = STATE(920), + [sym_list_comprehension] = STATE(920), + [sym_dictionary_comprehension] = STATE(920), + [sym_set_comprehension] = STATE(920), + [sym_generator_expression] = STATE(920), + [sym_parenthesized_expression] = STATE(920), + [sym_conditional_expression] = STATE(1156), + [sym_concatenated_string] = STATE(920), + [sym_string] = STATE(775), + [sym_concatenated_template_string] = STATE(920), + [sym_template_string] = STATE(769), + [sym_await] = STATE(920), + [sym_identifier] = ACTIONS(7), + [anon_sym_lazy] = ACTIONS(9), + [anon_sym_import] = ACTIONS(11), + [anon_sym_from] = ACTIONS(13), + [anon_sym_LPAREN] = ACTIONS(15), + [anon_sym_STAR] = ACTIONS(17), + [anon_sym_print] = ACTIONS(19), + [anon_sym_assert] = ACTIONS(21), + [anon_sym_return] = ACTIONS(23), + [anon_sym_del] = ACTIONS(25), + [anon_sym_raise] = ACTIONS(27), + [anon_sym_pass] = ACTIONS(29), + [anon_sym_break] = ACTIONS(31), + [anon_sym_continue] = ACTIONS(33), + [anon_sym_async] = ACTIONS(319), + [anon_sym_match] = ACTIONS(319), + [anon_sym_DASH] = ACTIONS(49), + [anon_sym_PLUS] = ACTIONS(49), + [anon_sym_LBRACK] = ACTIONS(51), + [anon_sym_LBRACE] = ACTIONS(53), + [anon_sym_STAR_STAR] = ACTIONS(55), + [anon_sym_global] = ACTIONS(59), + [anon_sym_nonlocal] = ACTIONS(61), + [anon_sym_exec] = ACTIONS(63), + [anon_sym_type] = ACTIONS(65), + [anon_sym_not] = ACTIONS(71), + [anon_sym_TILDE] = ACTIONS(49), + [anon_sym_lambda] = ACTIONS(73), + [anon_sym_yield] = ACTIONS(75), + [sym_ellipsis] = ACTIONS(77), + [sym_integer] = ACTIONS(79), + [sym_float] = ACTIONS(77), + [anon_sym_await] = ACTIONS(81), + [sym_true] = ACTIONS(79), + [sym_false] = ACTIONS(79), + [sym_none] = ACTIONS(79), + [sym_comment] = ACTIONS(3), + [sym__newline] = ACTIONS(417), + [sym__indent] = ACTIONS(419), + [sym__string_start] = ACTIONS(83), + [sym__template_string_start] = ACTIONS(85), + }, + [STATE(92)] = { + [sym__simple_statements] = STATE(538), [sym_import_statement] = STATE(1332), [sym_future_import_statement] = STATE(1332), [sym_import_from_statement] = STATE(1332), [sym_print_statement] = STATE(1332), [sym_assert_statement] = STATE(1332), [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1158), + [sym_named_expression] = STATE(1156), [sym_return_statement] = STATE(1332), [sym_delete_statement] = STATE(1332), [sym_raise_statement] = STATE(1332), [sym_pass_statement] = STATE(1332), [sym_break_statement] = STATE(1332), [sym_continue_statement] = STATE(1332), - [sym_list_splat] = STATE(1549), - [sym_dictionary_splat] = STATE(1549), + [sym_list_splat] = STATE(1520), + [sym_dictionary_splat] = STATE(1520), [sym_global_statement] = STATE(1332), [sym_nonlocal_statement] = STATE(1332), [sym_exec_statement] = STATE(1332), [sym_type_alias_statement] = STATE(1332), - [sym_expression_list] = STATE(1551), - [sym_pattern] = STATE(1013), - [sym_tuple_pattern] = STATE(999), - [sym_list_pattern] = STATE(999), - [sym_list_splat_pattern] = STATE(999), - [sym_expression] = STATE(1185), - [sym_primary_expression] = STATE(779), - [sym_not_operator] = STATE(1158), - [sym_boolean_operator] = STATE(1158), - [sym_binary_operator] = STATE(908), - [sym_unary_operator] = STATE(908), - [sym_comparison_operator] = STATE(1158), - [sym_lambda] = STATE(1158), - [sym_assignment] = STATE(1551), - [sym_augmented_assignment] = STATE(1551), - [sym_pattern_list] = STATE(1024), - [sym_yield] = STATE(1551), - [sym_attribute] = STATE(494), - [sym_subscript] = STATE(494), - [sym_call] = STATE(908), - [sym_list] = STATE(908), - [sym_set] = STATE(908), - [sym_tuple] = STATE(908), - [sym_dictionary] = STATE(908), - [sym_list_comprehension] = STATE(908), - [sym_dictionary_comprehension] = STATE(908), - [sym_set_comprehension] = STATE(908), - [sym_generator_expression] = STATE(908), - [sym_parenthesized_expression] = STATE(908), - [sym_conditional_expression] = STATE(1158), - [sym_concatenated_string] = STATE(908), - [sym_string] = STATE(782), - [sym_concatenated_template_string] = STATE(908), - [sym_template_string] = STATE(763), - [sym_await] = STATE(908), + [sym_expression_list] = STATE(1522), + [sym_pattern] = STATE(1017), + [sym_tuple_pattern] = STATE(1001), + [sym_list_pattern] = STATE(1001), + [sym_list_splat_pattern] = STATE(1001), + [sym_expression] = STATE(1176), + [sym_primary_expression] = STATE(765), + [sym_not_operator] = STATE(1156), + [sym_boolean_operator] = STATE(1156), + [sym_binary_operator] = STATE(920), + [sym_unary_operator] = STATE(920), + [sym_comparison_operator] = STATE(1156), + [sym_lambda] = STATE(1156), + [sym_assignment] = STATE(1522), + [sym_augmented_assignment] = STATE(1522), + [sym_pattern_list] = STATE(1026), + [sym_yield] = STATE(1522), + [sym_attribute] = STATE(582), + [sym_subscript] = STATE(582), + [sym_call] = STATE(920), + [sym_list] = STATE(920), + [sym_set] = STATE(920), + [sym_tuple] = STATE(920), + [sym_dictionary] = STATE(920), + [sym_list_comprehension] = STATE(920), + [sym_dictionary_comprehension] = STATE(920), + [sym_set_comprehension] = STATE(920), + [sym_generator_expression] = STATE(920), + [sym_parenthesized_expression] = STATE(920), + [sym_conditional_expression] = STATE(1156), + [sym_concatenated_string] = STATE(920), + [sym_string] = STATE(775), + [sym_concatenated_template_string] = STATE(920), + [sym_template_string] = STATE(769), + [sym_await] = STATE(920), [sym_identifier] = ACTIONS(7), - [anon_sym_import] = ACTIONS(9), - [anon_sym_from] = ACTIONS(11), - [anon_sym_LPAREN] = ACTIONS(13), - [anon_sym_STAR] = ACTIONS(15), - [anon_sym_print] = ACTIONS(17), - [anon_sym_assert] = ACTIONS(19), - [anon_sym_return] = ACTIONS(21), - [anon_sym_del] = ACTIONS(23), - [anon_sym_raise] = ACTIONS(25), - [anon_sym_pass] = ACTIONS(27), - [anon_sym_break] = ACTIONS(29), - [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(322), - [anon_sym_match] = ACTIONS(322), - [anon_sym_DASH] = ACTIONS(47), - [anon_sym_PLUS] = ACTIONS(47), - [anon_sym_LBRACK] = ACTIONS(49), - [anon_sym_LBRACE] = ACTIONS(51), - [anon_sym_STAR_STAR] = ACTIONS(53), - [anon_sym_global] = ACTIONS(57), - [anon_sym_nonlocal] = ACTIONS(59), - [anon_sym_exec] = ACTIONS(61), - [anon_sym_type] = ACTIONS(63), - [anon_sym_not] = ACTIONS(69), - [anon_sym_TILDE] = ACTIONS(47), - [anon_sym_lambda] = ACTIONS(71), - [anon_sym_yield] = ACTIONS(73), - [sym_ellipsis] = ACTIONS(75), - [sym_integer] = ACTIONS(77), - [sym_float] = ACTIONS(75), - [anon_sym_await] = ACTIONS(79), - [sym_true] = ACTIONS(77), - [sym_false] = ACTIONS(77), - [sym_none] = ACTIONS(77), + [anon_sym_lazy] = ACTIONS(9), + [anon_sym_import] = ACTIONS(11), + [anon_sym_from] = ACTIONS(13), + [anon_sym_LPAREN] = ACTIONS(15), + [anon_sym_STAR] = ACTIONS(17), + [anon_sym_print] = ACTIONS(19), + [anon_sym_assert] = ACTIONS(21), + [anon_sym_return] = ACTIONS(23), + [anon_sym_del] = ACTIONS(25), + [anon_sym_raise] = ACTIONS(27), + [anon_sym_pass] = ACTIONS(29), + [anon_sym_break] = ACTIONS(31), + [anon_sym_continue] = ACTIONS(33), + [anon_sym_async] = ACTIONS(319), + [anon_sym_match] = ACTIONS(319), + [anon_sym_DASH] = ACTIONS(49), + [anon_sym_PLUS] = ACTIONS(49), + [anon_sym_LBRACK] = ACTIONS(51), + [anon_sym_LBRACE] = ACTIONS(53), + [anon_sym_STAR_STAR] = ACTIONS(55), + [anon_sym_global] = ACTIONS(59), + [anon_sym_nonlocal] = ACTIONS(61), + [anon_sym_exec] = ACTIONS(63), + [anon_sym_type] = ACTIONS(65), + [anon_sym_not] = ACTIONS(71), + [anon_sym_TILDE] = ACTIONS(49), + [anon_sym_lambda] = ACTIONS(73), + [anon_sym_yield] = ACTIONS(75), + [sym_ellipsis] = ACTIONS(77), + [sym_integer] = ACTIONS(79), + [sym_float] = ACTIONS(77), + [anon_sym_await] = ACTIONS(81), + [sym_true] = ACTIONS(79), + [sym_false] = ACTIONS(79), + [sym_none] = ACTIONS(79), [sym_comment] = ACTIONS(3), - [sym__newline] = ACTIONS(412), - [sym__indent] = ACTIONS(414), - [sym__string_start] = ACTIONS(81), - [sym__template_string_start] = ACTIONS(83), - }, - [STATE(92)] = { - [sym__simple_statements] = STATE(546), - [sym_import_statement] = STATE(1348), - [sym_future_import_statement] = STATE(1348), - [sym_import_from_statement] = STATE(1348), - [sym_print_statement] = STATE(1348), - [sym_assert_statement] = STATE(1348), - [sym_expression_statement] = STATE(1348), - [sym_named_expression] = STATE(1158), - [sym_return_statement] = STATE(1348), - [sym_delete_statement] = STATE(1348), - [sym_raise_statement] = STATE(1348), - [sym_pass_statement] = STATE(1348), - [sym_break_statement] = STATE(1348), - [sym_continue_statement] = STATE(1348), - [sym_list_splat] = STATE(1549), - [sym_dictionary_splat] = STATE(1549), - [sym_global_statement] = STATE(1348), - [sym_nonlocal_statement] = STATE(1348), - [sym_exec_statement] = STATE(1348), - [sym_type_alias_statement] = STATE(1348), - [sym_expression_list] = STATE(1551), - [sym_pattern] = STATE(1013), - [sym_tuple_pattern] = STATE(999), - [sym_list_pattern] = STATE(999), - [sym_list_splat_pattern] = STATE(999), - [sym_expression] = STATE(1185), - [sym_primary_expression] = STATE(779), - [sym_not_operator] = STATE(1158), - [sym_boolean_operator] = STATE(1158), - [sym_binary_operator] = STATE(908), - [sym_unary_operator] = STATE(908), - [sym_comparison_operator] = STATE(1158), - [sym_lambda] = STATE(1158), - [sym_assignment] = STATE(1551), - [sym_augmented_assignment] = STATE(1551), - [sym_pattern_list] = STATE(1024), - [sym_yield] = STATE(1551), - [sym_attribute] = STATE(494), - [sym_subscript] = STATE(494), - [sym_call] = STATE(908), - [sym_list] = STATE(908), - [sym_set] = STATE(908), - [sym_tuple] = STATE(908), - [sym_dictionary] = STATE(908), - [sym_list_comprehension] = STATE(908), - [sym_dictionary_comprehension] = STATE(908), - [sym_set_comprehension] = STATE(908), - [sym_generator_expression] = STATE(908), - [sym_parenthesized_expression] = STATE(908), - [sym_conditional_expression] = STATE(1158), - [sym_concatenated_string] = STATE(908), - [sym_string] = STATE(782), - [sym_concatenated_template_string] = STATE(908), - [sym_template_string] = STATE(763), - [sym_await] = STATE(908), - [sym_identifier] = ACTIONS(7), - [anon_sym_import] = ACTIONS(9), - [anon_sym_from] = ACTIONS(11), - [anon_sym_LPAREN] = ACTIONS(13), - [anon_sym_STAR] = ACTIONS(15), - [anon_sym_print] = ACTIONS(17), - [anon_sym_assert] = ACTIONS(19), - [anon_sym_return] = ACTIONS(21), - [anon_sym_del] = ACTIONS(23), - [anon_sym_raise] = ACTIONS(25), - [anon_sym_pass] = ACTIONS(27), - [anon_sym_break] = ACTIONS(29), - [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(322), - [anon_sym_match] = ACTIONS(322), - [anon_sym_DASH] = ACTIONS(47), - [anon_sym_PLUS] = ACTIONS(47), - [anon_sym_LBRACK] = ACTIONS(49), - [anon_sym_LBRACE] = ACTIONS(51), - [anon_sym_STAR_STAR] = ACTIONS(53), - [anon_sym_global] = ACTIONS(57), - [anon_sym_nonlocal] = ACTIONS(59), - [anon_sym_exec] = ACTIONS(61), - [anon_sym_type] = ACTIONS(63), - [anon_sym_not] = ACTIONS(69), - [anon_sym_TILDE] = ACTIONS(47), - [anon_sym_lambda] = ACTIONS(71), - [anon_sym_yield] = ACTIONS(73), - [sym_ellipsis] = ACTIONS(75), - [sym_integer] = ACTIONS(77), - [sym_float] = ACTIONS(75), - [anon_sym_await] = ACTIONS(79), - [sym_true] = ACTIONS(77), - [sym_false] = ACTIONS(77), - [sym_none] = ACTIONS(77), - [sym_comment] = ACTIONS(3), - [sym__newline] = ACTIONS(416), - [sym__indent] = ACTIONS(418), - [sym__string_start] = ACTIONS(81), - [sym__template_string_start] = ACTIONS(83), + [sym__newline] = ACTIONS(421), + [sym__indent] = ACTIONS(423), + [sym__string_start] = ACTIONS(83), + [sym__template_string_start] = ACTIONS(85), }, [STATE(93)] = { - [sym__simple_statements] = STATE(577), + [sym__simple_statements] = STATE(497), [sym_import_statement] = STATE(1332), [sym_future_import_statement] = STATE(1332), [sym_import_from_statement] = STATE(1332), [sym_print_statement] = STATE(1332), [sym_assert_statement] = STATE(1332), [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1158), + [sym_named_expression] = STATE(1156), [sym_return_statement] = STATE(1332), [sym_delete_statement] = STATE(1332), [sym_raise_statement] = STATE(1332), [sym_pass_statement] = STATE(1332), [sym_break_statement] = STATE(1332), [sym_continue_statement] = STATE(1332), - [sym_list_splat] = STATE(1549), - [sym_dictionary_splat] = STATE(1549), + [sym_list_splat] = STATE(1520), + [sym_dictionary_splat] = STATE(1520), [sym_global_statement] = STATE(1332), [sym_nonlocal_statement] = STATE(1332), [sym_exec_statement] = STATE(1332), [sym_type_alias_statement] = STATE(1332), - [sym_expression_list] = STATE(1551), - [sym_pattern] = STATE(1013), - [sym_tuple_pattern] = STATE(999), - [sym_list_pattern] = STATE(999), - [sym_list_splat_pattern] = STATE(999), - [sym_expression] = STATE(1185), - [sym_primary_expression] = STATE(779), - [sym_not_operator] = STATE(1158), - [sym_boolean_operator] = STATE(1158), - [sym_binary_operator] = STATE(908), - [sym_unary_operator] = STATE(908), - [sym_comparison_operator] = STATE(1158), - [sym_lambda] = STATE(1158), - [sym_assignment] = STATE(1551), - [sym_augmented_assignment] = STATE(1551), - [sym_pattern_list] = STATE(1024), - [sym_yield] = STATE(1551), - [sym_attribute] = STATE(494), - [sym_subscript] = STATE(494), - [sym_call] = STATE(908), - [sym_list] = STATE(908), - [sym_set] = STATE(908), - [sym_tuple] = STATE(908), - [sym_dictionary] = STATE(908), - [sym_list_comprehension] = STATE(908), - [sym_dictionary_comprehension] = STATE(908), - [sym_set_comprehension] = STATE(908), - [sym_generator_expression] = STATE(908), - [sym_parenthesized_expression] = STATE(908), - [sym_conditional_expression] = STATE(1158), - [sym_concatenated_string] = STATE(908), - [sym_string] = STATE(782), - [sym_concatenated_template_string] = STATE(908), - [sym_template_string] = STATE(763), - [sym_await] = STATE(908), + [sym_expression_list] = STATE(1522), + [sym_pattern] = STATE(1017), + [sym_tuple_pattern] = STATE(1001), + [sym_list_pattern] = STATE(1001), + [sym_list_splat_pattern] = STATE(1001), + [sym_expression] = STATE(1176), + [sym_primary_expression] = STATE(765), + [sym_not_operator] = STATE(1156), + [sym_boolean_operator] = STATE(1156), + [sym_binary_operator] = STATE(920), + [sym_unary_operator] = STATE(920), + [sym_comparison_operator] = STATE(1156), + [sym_lambda] = STATE(1156), + [sym_assignment] = STATE(1522), + [sym_augmented_assignment] = STATE(1522), + [sym_pattern_list] = STATE(1026), + [sym_yield] = STATE(1522), + [sym_attribute] = STATE(582), + [sym_subscript] = STATE(582), + [sym_call] = STATE(920), + [sym_list] = STATE(920), + [sym_set] = STATE(920), + [sym_tuple] = STATE(920), + [sym_dictionary] = STATE(920), + [sym_list_comprehension] = STATE(920), + [sym_dictionary_comprehension] = STATE(920), + [sym_set_comprehension] = STATE(920), + [sym_generator_expression] = STATE(920), + [sym_parenthesized_expression] = STATE(920), + [sym_conditional_expression] = STATE(1156), + [sym_concatenated_string] = STATE(920), + [sym_string] = STATE(775), + [sym_concatenated_template_string] = STATE(920), + [sym_template_string] = STATE(769), + [sym_await] = STATE(920), [sym_identifier] = ACTIONS(7), - [anon_sym_import] = ACTIONS(9), - [anon_sym_from] = ACTIONS(11), - [anon_sym_LPAREN] = ACTIONS(13), - [anon_sym_STAR] = ACTIONS(15), - [anon_sym_print] = ACTIONS(17), - [anon_sym_assert] = ACTIONS(19), - [anon_sym_return] = ACTIONS(21), - [anon_sym_del] = ACTIONS(23), - [anon_sym_raise] = ACTIONS(25), - [anon_sym_pass] = ACTIONS(27), - [anon_sym_break] = ACTIONS(29), - [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(322), - [anon_sym_match] = ACTIONS(322), - [anon_sym_DASH] = ACTIONS(47), - [anon_sym_PLUS] = ACTIONS(47), - [anon_sym_LBRACK] = ACTIONS(49), - [anon_sym_LBRACE] = ACTIONS(51), - [anon_sym_STAR_STAR] = ACTIONS(53), - [anon_sym_global] = ACTIONS(57), - [anon_sym_nonlocal] = ACTIONS(59), - [anon_sym_exec] = ACTIONS(61), - [anon_sym_type] = ACTIONS(63), - [anon_sym_not] = ACTIONS(69), - [anon_sym_TILDE] = ACTIONS(47), - [anon_sym_lambda] = ACTIONS(71), - [anon_sym_yield] = ACTIONS(73), - [sym_ellipsis] = ACTIONS(75), - [sym_integer] = ACTIONS(77), - [sym_float] = ACTIONS(75), - [anon_sym_await] = ACTIONS(79), - [sym_true] = ACTIONS(77), - [sym_false] = ACTIONS(77), - [sym_none] = ACTIONS(77), + [anon_sym_lazy] = ACTIONS(9), + [anon_sym_import] = ACTIONS(11), + [anon_sym_from] = ACTIONS(13), + [anon_sym_LPAREN] = ACTIONS(15), + [anon_sym_STAR] = ACTIONS(17), + [anon_sym_print] = ACTIONS(19), + [anon_sym_assert] = ACTIONS(21), + [anon_sym_return] = ACTIONS(23), + [anon_sym_del] = ACTIONS(25), + [anon_sym_raise] = ACTIONS(27), + [anon_sym_pass] = ACTIONS(29), + [anon_sym_break] = ACTIONS(31), + [anon_sym_continue] = ACTIONS(33), + [anon_sym_async] = ACTIONS(319), + [anon_sym_match] = ACTIONS(319), + [anon_sym_DASH] = ACTIONS(49), + [anon_sym_PLUS] = ACTIONS(49), + [anon_sym_LBRACK] = ACTIONS(51), + [anon_sym_LBRACE] = ACTIONS(53), + [anon_sym_STAR_STAR] = ACTIONS(55), + [anon_sym_global] = ACTIONS(59), + [anon_sym_nonlocal] = ACTIONS(61), + [anon_sym_exec] = ACTIONS(63), + [anon_sym_type] = ACTIONS(65), + [anon_sym_not] = ACTIONS(71), + [anon_sym_TILDE] = ACTIONS(49), + [anon_sym_lambda] = ACTIONS(73), + [anon_sym_yield] = ACTIONS(75), + [sym_ellipsis] = ACTIONS(77), + [sym_integer] = ACTIONS(79), + [sym_float] = ACTIONS(77), + [anon_sym_await] = ACTIONS(81), + [sym_true] = ACTIONS(79), + [sym_false] = ACTIONS(79), + [sym_none] = ACTIONS(79), [sym_comment] = ACTIONS(3), - [sym__newline] = ACTIONS(420), - [sym__indent] = ACTIONS(422), - [sym__string_start] = ACTIONS(81), - [sym__template_string_start] = ACTIONS(83), + [sym__newline] = ACTIONS(425), + [sym__indent] = ACTIONS(427), + [sym__string_start] = ACTIONS(83), + [sym__template_string_start] = ACTIONS(85), }, [STATE(94)] = { - [sym__simple_statements] = STATE(495), - [sym_import_statement] = STATE(1348), - [sym_future_import_statement] = STATE(1348), - [sym_import_from_statement] = STATE(1348), - [sym_print_statement] = STATE(1348), - [sym_assert_statement] = STATE(1348), - [sym_expression_statement] = STATE(1348), - [sym_named_expression] = STATE(1158), - [sym_return_statement] = STATE(1348), - [sym_delete_statement] = STATE(1348), - [sym_raise_statement] = STATE(1348), - [sym_pass_statement] = STATE(1348), - [sym_break_statement] = STATE(1348), - [sym_continue_statement] = STATE(1348), - [sym_list_splat] = STATE(1549), - [sym_dictionary_splat] = STATE(1549), - [sym_global_statement] = STATE(1348), - [sym_nonlocal_statement] = STATE(1348), - [sym_exec_statement] = STATE(1348), - [sym_type_alias_statement] = STATE(1348), - [sym_expression_list] = STATE(1551), - [sym_pattern] = STATE(1013), - [sym_tuple_pattern] = STATE(999), - [sym_list_pattern] = STATE(999), - [sym_list_splat_pattern] = STATE(999), - [sym_expression] = STATE(1185), - [sym_primary_expression] = STATE(779), - [sym_not_operator] = STATE(1158), - [sym_boolean_operator] = STATE(1158), - [sym_binary_operator] = STATE(908), - [sym_unary_operator] = STATE(908), - [sym_comparison_operator] = STATE(1158), - [sym_lambda] = STATE(1158), - [sym_assignment] = STATE(1551), - [sym_augmented_assignment] = STATE(1551), - [sym_pattern_list] = STATE(1024), - [sym_yield] = STATE(1551), - [sym_attribute] = STATE(494), - [sym_subscript] = STATE(494), - [sym_call] = STATE(908), - [sym_list] = STATE(908), - [sym_set] = STATE(908), - [sym_tuple] = STATE(908), - [sym_dictionary] = STATE(908), - [sym_list_comprehension] = STATE(908), - [sym_dictionary_comprehension] = STATE(908), - [sym_set_comprehension] = STATE(908), - [sym_generator_expression] = STATE(908), - [sym_parenthesized_expression] = STATE(908), - [sym_conditional_expression] = STATE(1158), - [sym_concatenated_string] = STATE(908), - [sym_string] = STATE(782), - [sym_concatenated_template_string] = STATE(908), - [sym_template_string] = STATE(763), - [sym_await] = STATE(908), - [sym_identifier] = ACTIONS(7), - [anon_sym_import] = ACTIONS(9), - [anon_sym_from] = ACTIONS(11), - [anon_sym_LPAREN] = ACTIONS(13), - [anon_sym_STAR] = ACTIONS(15), - [anon_sym_print] = ACTIONS(17), - [anon_sym_assert] = ACTIONS(19), - [anon_sym_return] = ACTIONS(21), - [anon_sym_del] = ACTIONS(23), - [anon_sym_raise] = ACTIONS(25), - [anon_sym_pass] = ACTIONS(27), - [anon_sym_break] = ACTIONS(29), - [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(322), - [anon_sym_match] = ACTIONS(322), - [anon_sym_DASH] = ACTIONS(47), - [anon_sym_PLUS] = ACTIONS(47), - [anon_sym_LBRACK] = ACTIONS(49), - [anon_sym_LBRACE] = ACTIONS(51), - [anon_sym_STAR_STAR] = ACTIONS(53), - [anon_sym_global] = ACTIONS(57), - [anon_sym_nonlocal] = ACTIONS(59), - [anon_sym_exec] = ACTIONS(61), - [anon_sym_type] = ACTIONS(63), - [anon_sym_not] = ACTIONS(69), - [anon_sym_TILDE] = ACTIONS(47), - [anon_sym_lambda] = ACTIONS(71), - [anon_sym_yield] = ACTIONS(73), - [sym_ellipsis] = ACTIONS(75), - [sym_integer] = ACTIONS(77), - [sym_float] = ACTIONS(75), - [anon_sym_await] = ACTIONS(79), - [sym_true] = ACTIONS(77), - [sym_false] = ACTIONS(77), - [sym_none] = ACTIONS(77), - [sym_comment] = ACTIONS(3), - [sym__newline] = ACTIONS(424), - [sym__indent] = ACTIONS(426), - [sym__string_start] = ACTIONS(81), - [sym__template_string_start] = ACTIONS(83), - }, - [STATE(95)] = { - [sym__simple_statements] = STATE(579), + [sym__simple_statements] = STATE(472), [sym_import_statement] = STATE(1332), [sym_future_import_statement] = STATE(1332), [sym_import_from_statement] = STATE(1332), [sym_print_statement] = STATE(1332), [sym_assert_statement] = STATE(1332), [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1158), + [sym_named_expression] = STATE(1156), [sym_return_statement] = STATE(1332), [sym_delete_statement] = STATE(1332), [sym_raise_statement] = STATE(1332), [sym_pass_statement] = STATE(1332), [sym_break_statement] = STATE(1332), [sym_continue_statement] = STATE(1332), - [sym_list_splat] = STATE(1549), - [sym_dictionary_splat] = STATE(1549), + [sym_list_splat] = STATE(1520), + [sym_dictionary_splat] = STATE(1520), [sym_global_statement] = STATE(1332), [sym_nonlocal_statement] = STATE(1332), [sym_exec_statement] = STATE(1332), [sym_type_alias_statement] = STATE(1332), - [sym_expression_list] = STATE(1551), - [sym_pattern] = STATE(1013), - [sym_tuple_pattern] = STATE(999), - [sym_list_pattern] = STATE(999), - [sym_list_splat_pattern] = STATE(999), - [sym_expression] = STATE(1185), - [sym_primary_expression] = STATE(779), - [sym_not_operator] = STATE(1158), - [sym_boolean_operator] = STATE(1158), - [sym_binary_operator] = STATE(908), - [sym_unary_operator] = STATE(908), - [sym_comparison_operator] = STATE(1158), - [sym_lambda] = STATE(1158), - [sym_assignment] = STATE(1551), - [sym_augmented_assignment] = STATE(1551), - [sym_pattern_list] = STATE(1024), - [sym_yield] = STATE(1551), - [sym_attribute] = STATE(494), - [sym_subscript] = STATE(494), - [sym_call] = STATE(908), - [sym_list] = STATE(908), - [sym_set] = STATE(908), - [sym_tuple] = STATE(908), - [sym_dictionary] = STATE(908), - [sym_list_comprehension] = STATE(908), - [sym_dictionary_comprehension] = STATE(908), - [sym_set_comprehension] = STATE(908), - [sym_generator_expression] = STATE(908), - [sym_parenthesized_expression] = STATE(908), - [sym_conditional_expression] = STATE(1158), - [sym_concatenated_string] = STATE(908), - [sym_string] = STATE(782), - [sym_concatenated_template_string] = STATE(908), - [sym_template_string] = STATE(763), - [sym_await] = STATE(908), + [sym_expression_list] = STATE(1522), + [sym_pattern] = STATE(1017), + [sym_tuple_pattern] = STATE(1001), + [sym_list_pattern] = STATE(1001), + [sym_list_splat_pattern] = STATE(1001), + [sym_expression] = STATE(1176), + [sym_primary_expression] = STATE(765), + [sym_not_operator] = STATE(1156), + [sym_boolean_operator] = STATE(1156), + [sym_binary_operator] = STATE(920), + [sym_unary_operator] = STATE(920), + [sym_comparison_operator] = STATE(1156), + [sym_lambda] = STATE(1156), + [sym_assignment] = STATE(1522), + [sym_augmented_assignment] = STATE(1522), + [sym_pattern_list] = STATE(1026), + [sym_yield] = STATE(1522), + [sym_attribute] = STATE(582), + [sym_subscript] = STATE(582), + [sym_call] = STATE(920), + [sym_list] = STATE(920), + [sym_set] = STATE(920), + [sym_tuple] = STATE(920), + [sym_dictionary] = STATE(920), + [sym_list_comprehension] = STATE(920), + [sym_dictionary_comprehension] = STATE(920), + [sym_set_comprehension] = STATE(920), + [sym_generator_expression] = STATE(920), + [sym_parenthesized_expression] = STATE(920), + [sym_conditional_expression] = STATE(1156), + [sym_concatenated_string] = STATE(920), + [sym_string] = STATE(775), + [sym_concatenated_template_string] = STATE(920), + [sym_template_string] = STATE(769), + [sym_await] = STATE(920), [sym_identifier] = ACTIONS(7), - [anon_sym_import] = ACTIONS(9), - [anon_sym_from] = ACTIONS(11), - [anon_sym_LPAREN] = ACTIONS(13), - [anon_sym_STAR] = ACTIONS(15), - [anon_sym_print] = ACTIONS(17), - [anon_sym_assert] = ACTIONS(19), - [anon_sym_return] = ACTIONS(21), - [anon_sym_del] = ACTIONS(23), - [anon_sym_raise] = ACTIONS(25), - [anon_sym_pass] = ACTIONS(27), - [anon_sym_break] = ACTIONS(29), - [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(322), - [anon_sym_match] = ACTIONS(322), - [anon_sym_DASH] = ACTIONS(47), - [anon_sym_PLUS] = ACTIONS(47), - [anon_sym_LBRACK] = ACTIONS(49), - [anon_sym_LBRACE] = ACTIONS(51), - [anon_sym_STAR_STAR] = ACTIONS(53), - [anon_sym_global] = ACTIONS(57), - [anon_sym_nonlocal] = ACTIONS(59), - [anon_sym_exec] = ACTIONS(61), - [anon_sym_type] = ACTIONS(63), - [anon_sym_not] = ACTIONS(69), - [anon_sym_TILDE] = ACTIONS(47), - [anon_sym_lambda] = ACTIONS(71), - [anon_sym_yield] = ACTIONS(73), - [sym_ellipsis] = ACTIONS(75), - [sym_integer] = ACTIONS(77), - [sym_float] = ACTIONS(75), - [anon_sym_await] = ACTIONS(79), - [sym_true] = ACTIONS(77), - [sym_false] = ACTIONS(77), - [sym_none] = ACTIONS(77), + [anon_sym_lazy] = ACTIONS(9), + [anon_sym_import] = ACTIONS(11), + [anon_sym_from] = ACTIONS(13), + [anon_sym_LPAREN] = ACTIONS(15), + [anon_sym_STAR] = ACTIONS(17), + [anon_sym_print] = ACTIONS(19), + [anon_sym_assert] = ACTIONS(21), + [anon_sym_return] = ACTIONS(23), + [anon_sym_del] = ACTIONS(25), + [anon_sym_raise] = ACTIONS(27), + [anon_sym_pass] = ACTIONS(29), + [anon_sym_break] = ACTIONS(31), + [anon_sym_continue] = ACTIONS(33), + [anon_sym_async] = ACTIONS(319), + [anon_sym_match] = ACTIONS(319), + [anon_sym_DASH] = ACTIONS(49), + [anon_sym_PLUS] = ACTIONS(49), + [anon_sym_LBRACK] = ACTIONS(51), + [anon_sym_LBRACE] = ACTIONS(53), + [anon_sym_STAR_STAR] = ACTIONS(55), + [anon_sym_global] = ACTIONS(59), + [anon_sym_nonlocal] = ACTIONS(61), + [anon_sym_exec] = ACTIONS(63), + [anon_sym_type] = ACTIONS(65), + [anon_sym_not] = ACTIONS(71), + [anon_sym_TILDE] = ACTIONS(49), + [anon_sym_lambda] = ACTIONS(73), + [anon_sym_yield] = ACTIONS(75), + [sym_ellipsis] = ACTIONS(77), + [sym_integer] = ACTIONS(79), + [sym_float] = ACTIONS(77), + [anon_sym_await] = ACTIONS(81), + [sym_true] = ACTIONS(79), + [sym_false] = ACTIONS(79), + [sym_none] = ACTIONS(79), [sym_comment] = ACTIONS(3), - [sym__newline] = ACTIONS(428), - [sym__indent] = ACTIONS(430), - [sym__string_start] = ACTIONS(81), - [sym__template_string_start] = ACTIONS(83), + [sym__newline] = ACTIONS(429), + [sym__indent] = ACTIONS(431), + [sym__string_start] = ACTIONS(83), + [sym__template_string_start] = ACTIONS(85), }, - [STATE(96)] = { - [sym__simple_statements] = STATE(541), - [sym_import_statement] = STATE(1348), - [sym_future_import_statement] = STATE(1348), - [sym_import_from_statement] = STATE(1348), - [sym_print_statement] = STATE(1348), - [sym_assert_statement] = STATE(1348), - [sym_expression_statement] = STATE(1348), - [sym_named_expression] = STATE(1158), - [sym_return_statement] = STATE(1348), - [sym_delete_statement] = STATE(1348), - [sym_raise_statement] = STATE(1348), - [sym_pass_statement] = STATE(1348), - [sym_break_statement] = STATE(1348), - [sym_continue_statement] = STATE(1348), - [sym_list_splat] = STATE(1549), - [sym_dictionary_splat] = STATE(1549), - [sym_global_statement] = STATE(1348), - [sym_nonlocal_statement] = STATE(1348), - [sym_exec_statement] = STATE(1348), - [sym_type_alias_statement] = STATE(1348), - [sym_expression_list] = STATE(1551), - [sym_pattern] = STATE(1013), - [sym_tuple_pattern] = STATE(999), - [sym_list_pattern] = STATE(999), - [sym_list_splat_pattern] = STATE(999), - [sym_expression] = STATE(1185), - [sym_primary_expression] = STATE(779), - [sym_not_operator] = STATE(1158), - [sym_boolean_operator] = STATE(1158), - [sym_binary_operator] = STATE(908), - [sym_unary_operator] = STATE(908), - [sym_comparison_operator] = STATE(1158), - [sym_lambda] = STATE(1158), - [sym_assignment] = STATE(1551), - [sym_augmented_assignment] = STATE(1551), - [sym_pattern_list] = STATE(1024), - [sym_yield] = STATE(1551), - [sym_attribute] = STATE(494), - [sym_subscript] = STATE(494), - [sym_call] = STATE(908), - [sym_list] = STATE(908), - [sym_set] = STATE(908), - [sym_tuple] = STATE(908), - [sym_dictionary] = STATE(908), - [sym_list_comprehension] = STATE(908), - [sym_dictionary_comprehension] = STATE(908), - [sym_set_comprehension] = STATE(908), - [sym_generator_expression] = STATE(908), - [sym_parenthesized_expression] = STATE(908), - [sym_conditional_expression] = STATE(1158), - [sym_concatenated_string] = STATE(908), - [sym_string] = STATE(782), - [sym_concatenated_template_string] = STATE(908), - [sym_template_string] = STATE(763), - [sym_await] = STATE(908), + [STATE(95)] = { + [sym__simple_statements] = STATE(508), + [sym_import_statement] = STATE(1301), + [sym_future_import_statement] = STATE(1301), + [sym_import_from_statement] = STATE(1301), + [sym_print_statement] = STATE(1301), + [sym_assert_statement] = STATE(1301), + [sym_expression_statement] = STATE(1301), + [sym_named_expression] = STATE(1156), + [sym_return_statement] = STATE(1301), + [sym_delete_statement] = STATE(1301), + [sym_raise_statement] = STATE(1301), + [sym_pass_statement] = STATE(1301), + [sym_break_statement] = STATE(1301), + [sym_continue_statement] = STATE(1301), + [sym_list_splat] = STATE(1520), + [sym_dictionary_splat] = STATE(1520), + [sym_global_statement] = STATE(1301), + [sym_nonlocal_statement] = STATE(1301), + [sym_exec_statement] = STATE(1301), + [sym_type_alias_statement] = STATE(1301), + [sym_expression_list] = STATE(1522), + [sym_pattern] = STATE(1017), + [sym_tuple_pattern] = STATE(1001), + [sym_list_pattern] = STATE(1001), + [sym_list_splat_pattern] = STATE(1001), + [sym_expression] = STATE(1176), + [sym_primary_expression] = STATE(765), + [sym_not_operator] = STATE(1156), + [sym_boolean_operator] = STATE(1156), + [sym_binary_operator] = STATE(920), + [sym_unary_operator] = STATE(920), + [sym_comparison_operator] = STATE(1156), + [sym_lambda] = STATE(1156), + [sym_assignment] = STATE(1522), + [sym_augmented_assignment] = STATE(1522), + [sym_pattern_list] = STATE(1026), + [sym_yield] = STATE(1522), + [sym_attribute] = STATE(582), + [sym_subscript] = STATE(582), + [sym_call] = STATE(920), + [sym_list] = STATE(920), + [sym_set] = STATE(920), + [sym_tuple] = STATE(920), + [sym_dictionary] = STATE(920), + [sym_list_comprehension] = STATE(920), + [sym_dictionary_comprehension] = STATE(920), + [sym_set_comprehension] = STATE(920), + [sym_generator_expression] = STATE(920), + [sym_parenthesized_expression] = STATE(920), + [sym_conditional_expression] = STATE(1156), + [sym_concatenated_string] = STATE(920), + [sym_string] = STATE(775), + [sym_concatenated_template_string] = STATE(920), + [sym_template_string] = STATE(769), + [sym_await] = STATE(920), [sym_identifier] = ACTIONS(7), - [anon_sym_import] = ACTIONS(9), - [anon_sym_from] = ACTIONS(11), - [anon_sym_LPAREN] = ACTIONS(13), - [anon_sym_STAR] = ACTIONS(15), - [anon_sym_print] = ACTIONS(17), - [anon_sym_assert] = ACTIONS(19), - [anon_sym_return] = ACTIONS(21), - [anon_sym_del] = ACTIONS(23), - [anon_sym_raise] = ACTIONS(25), - [anon_sym_pass] = ACTIONS(27), - [anon_sym_break] = ACTIONS(29), - [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(322), - [anon_sym_match] = ACTIONS(322), - [anon_sym_DASH] = ACTIONS(47), - [anon_sym_PLUS] = ACTIONS(47), - [anon_sym_LBRACK] = ACTIONS(49), - [anon_sym_LBRACE] = ACTIONS(51), - [anon_sym_STAR_STAR] = ACTIONS(53), - [anon_sym_global] = ACTIONS(57), - [anon_sym_nonlocal] = ACTIONS(59), - [anon_sym_exec] = ACTIONS(61), - [anon_sym_type] = ACTIONS(63), - [anon_sym_not] = ACTIONS(69), - [anon_sym_TILDE] = ACTIONS(47), - [anon_sym_lambda] = ACTIONS(71), - [anon_sym_yield] = ACTIONS(73), - [sym_ellipsis] = ACTIONS(75), - [sym_integer] = ACTIONS(77), - [sym_float] = ACTIONS(75), - [anon_sym_await] = ACTIONS(79), - [sym_true] = ACTIONS(77), - [sym_false] = ACTIONS(77), - [sym_none] = ACTIONS(77), + [anon_sym_lazy] = ACTIONS(9), + [anon_sym_import] = ACTIONS(11), + [anon_sym_from] = ACTIONS(13), + [anon_sym_LPAREN] = ACTIONS(15), + [anon_sym_STAR] = ACTIONS(17), + [anon_sym_print] = ACTIONS(19), + [anon_sym_assert] = ACTIONS(21), + [anon_sym_return] = ACTIONS(23), + [anon_sym_del] = ACTIONS(25), + [anon_sym_raise] = ACTIONS(27), + [anon_sym_pass] = ACTIONS(29), + [anon_sym_break] = ACTIONS(31), + [anon_sym_continue] = ACTIONS(33), + [anon_sym_async] = ACTIONS(319), + [anon_sym_match] = ACTIONS(319), + [anon_sym_DASH] = ACTIONS(49), + [anon_sym_PLUS] = ACTIONS(49), + [anon_sym_LBRACK] = ACTIONS(51), + [anon_sym_LBRACE] = ACTIONS(53), + [anon_sym_STAR_STAR] = ACTIONS(55), + [anon_sym_global] = ACTIONS(59), + [anon_sym_nonlocal] = ACTIONS(61), + [anon_sym_exec] = ACTIONS(63), + [anon_sym_type] = ACTIONS(65), + [anon_sym_not] = ACTIONS(71), + [anon_sym_TILDE] = ACTIONS(49), + [anon_sym_lambda] = ACTIONS(73), + [anon_sym_yield] = ACTIONS(75), + [sym_ellipsis] = ACTIONS(77), + [sym_integer] = ACTIONS(79), + [sym_float] = ACTIONS(77), + [anon_sym_await] = ACTIONS(81), + [sym_true] = ACTIONS(79), + [sym_false] = ACTIONS(79), + [sym_none] = ACTIONS(79), [sym_comment] = ACTIONS(3), - [sym__newline] = ACTIONS(432), - [sym__indent] = ACTIONS(434), - [sym__string_start] = ACTIONS(81), - [sym__template_string_start] = ACTIONS(83), + [sym__newline] = ACTIONS(433), + [sym__indent] = ACTIONS(435), + [sym__string_start] = ACTIONS(83), + [sym__template_string_start] = ACTIONS(85), }, - [STATE(97)] = { - [sym__simple_statements] = STATE(503), + [STATE(96)] = { + [sym__simple_statements] = STATE(542), [sym_import_statement] = STATE(1332), [sym_future_import_statement] = STATE(1332), [sym_import_from_statement] = STATE(1332), [sym_print_statement] = STATE(1332), [sym_assert_statement] = STATE(1332), [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1158), + [sym_named_expression] = STATE(1156), [sym_return_statement] = STATE(1332), [sym_delete_statement] = STATE(1332), [sym_raise_statement] = STATE(1332), [sym_pass_statement] = STATE(1332), [sym_break_statement] = STATE(1332), [sym_continue_statement] = STATE(1332), - [sym_list_splat] = STATE(1549), - [sym_dictionary_splat] = STATE(1549), + [sym_list_splat] = STATE(1520), + [sym_dictionary_splat] = STATE(1520), [sym_global_statement] = STATE(1332), [sym_nonlocal_statement] = STATE(1332), [sym_exec_statement] = STATE(1332), [sym_type_alias_statement] = STATE(1332), - [sym_expression_list] = STATE(1551), - [sym_pattern] = STATE(1013), - [sym_tuple_pattern] = STATE(999), - [sym_list_pattern] = STATE(999), - [sym_list_splat_pattern] = STATE(999), - [sym_expression] = STATE(1185), - [sym_primary_expression] = STATE(779), - [sym_not_operator] = STATE(1158), - [sym_boolean_operator] = STATE(1158), - [sym_binary_operator] = STATE(908), - [sym_unary_operator] = STATE(908), - [sym_comparison_operator] = STATE(1158), - [sym_lambda] = STATE(1158), - [sym_assignment] = STATE(1551), - [sym_augmented_assignment] = STATE(1551), - [sym_pattern_list] = STATE(1024), - [sym_yield] = STATE(1551), - [sym_attribute] = STATE(494), - [sym_subscript] = STATE(494), - [sym_call] = STATE(908), - [sym_list] = STATE(908), - [sym_set] = STATE(908), - [sym_tuple] = STATE(908), - [sym_dictionary] = STATE(908), - [sym_list_comprehension] = STATE(908), - [sym_dictionary_comprehension] = STATE(908), - [sym_set_comprehension] = STATE(908), - [sym_generator_expression] = STATE(908), - [sym_parenthesized_expression] = STATE(908), - [sym_conditional_expression] = STATE(1158), - [sym_concatenated_string] = STATE(908), - [sym_string] = STATE(782), - [sym_concatenated_template_string] = STATE(908), - [sym_template_string] = STATE(763), - [sym_await] = STATE(908), + [sym_expression_list] = STATE(1522), + [sym_pattern] = STATE(1017), + [sym_tuple_pattern] = STATE(1001), + [sym_list_pattern] = STATE(1001), + [sym_list_splat_pattern] = STATE(1001), + [sym_expression] = STATE(1176), + [sym_primary_expression] = STATE(765), + [sym_not_operator] = STATE(1156), + [sym_boolean_operator] = STATE(1156), + [sym_binary_operator] = STATE(920), + [sym_unary_operator] = STATE(920), + [sym_comparison_operator] = STATE(1156), + [sym_lambda] = STATE(1156), + [sym_assignment] = STATE(1522), + [sym_augmented_assignment] = STATE(1522), + [sym_pattern_list] = STATE(1026), + [sym_yield] = STATE(1522), + [sym_attribute] = STATE(582), + [sym_subscript] = STATE(582), + [sym_call] = STATE(920), + [sym_list] = STATE(920), + [sym_set] = STATE(920), + [sym_tuple] = STATE(920), + [sym_dictionary] = STATE(920), + [sym_list_comprehension] = STATE(920), + [sym_dictionary_comprehension] = STATE(920), + [sym_set_comprehension] = STATE(920), + [sym_generator_expression] = STATE(920), + [sym_parenthesized_expression] = STATE(920), + [sym_conditional_expression] = STATE(1156), + [sym_concatenated_string] = STATE(920), + [sym_string] = STATE(775), + [sym_concatenated_template_string] = STATE(920), + [sym_template_string] = STATE(769), + [sym_await] = STATE(920), + [sym_identifier] = ACTIONS(7), + [anon_sym_lazy] = ACTIONS(9), + [anon_sym_import] = ACTIONS(11), + [anon_sym_from] = ACTIONS(13), + [anon_sym_LPAREN] = ACTIONS(15), + [anon_sym_STAR] = ACTIONS(17), + [anon_sym_print] = ACTIONS(19), + [anon_sym_assert] = ACTIONS(21), + [anon_sym_return] = ACTIONS(23), + [anon_sym_del] = ACTIONS(25), + [anon_sym_raise] = ACTIONS(27), + [anon_sym_pass] = ACTIONS(29), + [anon_sym_break] = ACTIONS(31), + [anon_sym_continue] = ACTIONS(33), + [anon_sym_async] = ACTIONS(319), + [anon_sym_match] = ACTIONS(319), + [anon_sym_DASH] = ACTIONS(49), + [anon_sym_PLUS] = ACTIONS(49), + [anon_sym_LBRACK] = ACTIONS(51), + [anon_sym_LBRACE] = ACTIONS(53), + [anon_sym_STAR_STAR] = ACTIONS(55), + [anon_sym_global] = ACTIONS(59), + [anon_sym_nonlocal] = ACTIONS(61), + [anon_sym_exec] = ACTIONS(63), + [anon_sym_type] = ACTIONS(65), + [anon_sym_not] = ACTIONS(71), + [anon_sym_TILDE] = ACTIONS(49), + [anon_sym_lambda] = ACTIONS(73), + [anon_sym_yield] = ACTIONS(75), + [sym_ellipsis] = ACTIONS(77), + [sym_integer] = ACTIONS(79), + [sym_float] = ACTIONS(77), + [anon_sym_await] = ACTIONS(81), + [sym_true] = ACTIONS(79), + [sym_false] = ACTIONS(79), + [sym_none] = ACTIONS(79), + [sym_comment] = ACTIONS(3), + [sym__newline] = ACTIONS(437), + [sym__indent] = ACTIONS(439), + [sym__string_start] = ACTIONS(83), + [sym__template_string_start] = ACTIONS(85), + }, + [STATE(97)] = { + [sym__simple_statements] = STATE(589), + [sym_import_statement] = STATE(1301), + [sym_future_import_statement] = STATE(1301), + [sym_import_from_statement] = STATE(1301), + [sym_print_statement] = STATE(1301), + [sym_assert_statement] = STATE(1301), + [sym_expression_statement] = STATE(1301), + [sym_named_expression] = STATE(1156), + [sym_return_statement] = STATE(1301), + [sym_delete_statement] = STATE(1301), + [sym_raise_statement] = STATE(1301), + [sym_pass_statement] = STATE(1301), + [sym_break_statement] = STATE(1301), + [sym_continue_statement] = STATE(1301), + [sym_list_splat] = STATE(1520), + [sym_dictionary_splat] = STATE(1520), + [sym_global_statement] = STATE(1301), + [sym_nonlocal_statement] = STATE(1301), + [sym_exec_statement] = STATE(1301), + [sym_type_alias_statement] = STATE(1301), + [sym_expression_list] = STATE(1522), + [sym_pattern] = STATE(1017), + [sym_tuple_pattern] = STATE(1001), + [sym_list_pattern] = STATE(1001), + [sym_list_splat_pattern] = STATE(1001), + [sym_expression] = STATE(1176), + [sym_primary_expression] = STATE(765), + [sym_not_operator] = STATE(1156), + [sym_boolean_operator] = STATE(1156), + [sym_binary_operator] = STATE(920), + [sym_unary_operator] = STATE(920), + [sym_comparison_operator] = STATE(1156), + [sym_lambda] = STATE(1156), + [sym_assignment] = STATE(1522), + [sym_augmented_assignment] = STATE(1522), + [sym_pattern_list] = STATE(1026), + [sym_yield] = STATE(1522), + [sym_attribute] = STATE(582), + [sym_subscript] = STATE(582), + [sym_call] = STATE(920), + [sym_list] = STATE(920), + [sym_set] = STATE(920), + [sym_tuple] = STATE(920), + [sym_dictionary] = STATE(920), + [sym_list_comprehension] = STATE(920), + [sym_dictionary_comprehension] = STATE(920), + [sym_set_comprehension] = STATE(920), + [sym_generator_expression] = STATE(920), + [sym_parenthesized_expression] = STATE(920), + [sym_conditional_expression] = STATE(1156), + [sym_concatenated_string] = STATE(920), + [sym_string] = STATE(775), + [sym_concatenated_template_string] = STATE(920), + [sym_template_string] = STATE(769), + [sym_await] = STATE(920), [sym_identifier] = ACTIONS(7), - [anon_sym_import] = ACTIONS(9), - [anon_sym_from] = ACTIONS(11), - [anon_sym_LPAREN] = ACTIONS(13), - [anon_sym_STAR] = ACTIONS(15), - [anon_sym_print] = ACTIONS(17), - [anon_sym_assert] = ACTIONS(19), - [anon_sym_return] = ACTIONS(21), - [anon_sym_del] = ACTIONS(23), - [anon_sym_raise] = ACTIONS(25), - [anon_sym_pass] = ACTIONS(27), - [anon_sym_break] = ACTIONS(29), - [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(322), - [anon_sym_match] = ACTIONS(322), - [anon_sym_DASH] = ACTIONS(47), - [anon_sym_PLUS] = ACTIONS(47), - [anon_sym_LBRACK] = ACTIONS(49), - [anon_sym_LBRACE] = ACTIONS(51), - [anon_sym_STAR_STAR] = ACTIONS(53), - [anon_sym_global] = ACTIONS(57), - [anon_sym_nonlocal] = ACTIONS(59), - [anon_sym_exec] = ACTIONS(61), - [anon_sym_type] = ACTIONS(63), - [anon_sym_not] = ACTIONS(69), - [anon_sym_TILDE] = ACTIONS(47), - [anon_sym_lambda] = ACTIONS(71), - [anon_sym_yield] = ACTIONS(73), - [sym_ellipsis] = ACTIONS(75), - [sym_integer] = ACTIONS(77), - [sym_float] = ACTIONS(75), - [anon_sym_await] = ACTIONS(79), - [sym_true] = ACTIONS(77), - [sym_false] = ACTIONS(77), - [sym_none] = ACTIONS(77), + [anon_sym_lazy] = ACTIONS(9), + [anon_sym_import] = ACTIONS(11), + [anon_sym_from] = ACTIONS(13), + [anon_sym_LPAREN] = ACTIONS(15), + [anon_sym_STAR] = ACTIONS(17), + [anon_sym_print] = ACTIONS(19), + [anon_sym_assert] = ACTIONS(21), + [anon_sym_return] = ACTIONS(23), + [anon_sym_del] = ACTIONS(25), + [anon_sym_raise] = ACTIONS(27), + [anon_sym_pass] = ACTIONS(29), + [anon_sym_break] = ACTIONS(31), + [anon_sym_continue] = ACTIONS(33), + [anon_sym_async] = ACTIONS(319), + [anon_sym_match] = ACTIONS(319), + [anon_sym_DASH] = ACTIONS(49), + [anon_sym_PLUS] = ACTIONS(49), + [anon_sym_LBRACK] = ACTIONS(51), + [anon_sym_LBRACE] = ACTIONS(53), + [anon_sym_STAR_STAR] = ACTIONS(55), + [anon_sym_global] = ACTIONS(59), + [anon_sym_nonlocal] = ACTIONS(61), + [anon_sym_exec] = ACTIONS(63), + [anon_sym_type] = ACTIONS(65), + [anon_sym_not] = ACTIONS(71), + [anon_sym_TILDE] = ACTIONS(49), + [anon_sym_lambda] = ACTIONS(73), + [anon_sym_yield] = ACTIONS(75), + [sym_ellipsis] = ACTIONS(77), + [sym_integer] = ACTIONS(79), + [sym_float] = ACTIONS(77), + [anon_sym_await] = ACTIONS(81), + [sym_true] = ACTIONS(79), + [sym_false] = ACTIONS(79), + [sym_none] = ACTIONS(79), [sym_comment] = ACTIONS(3), - [sym__newline] = ACTIONS(436), - [sym__indent] = ACTIONS(438), - [sym__string_start] = ACTIONS(81), - [sym__template_string_start] = ACTIONS(83), + [sym__newline] = ACTIONS(441), + [sym__indent] = ACTIONS(443), + [sym__string_start] = ACTIONS(83), + [sym__template_string_start] = ACTIONS(85), }, [STATE(98)] = { - [sym__simple_statements] = STATE(480), + [sym__simple_statements] = STATE(603), + [sym_import_statement] = STATE(1301), + [sym_future_import_statement] = STATE(1301), + [sym_import_from_statement] = STATE(1301), + [sym_print_statement] = STATE(1301), + [sym_assert_statement] = STATE(1301), + [sym_expression_statement] = STATE(1301), + [sym_named_expression] = STATE(1156), + [sym_return_statement] = STATE(1301), + [sym_delete_statement] = STATE(1301), + [sym_raise_statement] = STATE(1301), + [sym_pass_statement] = STATE(1301), + [sym_break_statement] = STATE(1301), + [sym_continue_statement] = STATE(1301), + [sym_list_splat] = STATE(1520), + [sym_dictionary_splat] = STATE(1520), + [sym_global_statement] = STATE(1301), + [sym_nonlocal_statement] = STATE(1301), + [sym_exec_statement] = STATE(1301), + [sym_type_alias_statement] = STATE(1301), + [sym_expression_list] = STATE(1522), + [sym_pattern] = STATE(1017), + [sym_tuple_pattern] = STATE(1001), + [sym_list_pattern] = STATE(1001), + [sym_list_splat_pattern] = STATE(1001), + [sym_expression] = STATE(1176), + [sym_primary_expression] = STATE(765), + [sym_not_operator] = STATE(1156), + [sym_boolean_operator] = STATE(1156), + [sym_binary_operator] = STATE(920), + [sym_unary_operator] = STATE(920), + [sym_comparison_operator] = STATE(1156), + [sym_lambda] = STATE(1156), + [sym_assignment] = STATE(1522), + [sym_augmented_assignment] = STATE(1522), + [sym_pattern_list] = STATE(1026), + [sym_yield] = STATE(1522), + [sym_attribute] = STATE(582), + [sym_subscript] = STATE(582), + [sym_call] = STATE(920), + [sym_list] = STATE(920), + [sym_set] = STATE(920), + [sym_tuple] = STATE(920), + [sym_dictionary] = STATE(920), + [sym_list_comprehension] = STATE(920), + [sym_dictionary_comprehension] = STATE(920), + [sym_set_comprehension] = STATE(920), + [sym_generator_expression] = STATE(920), + [sym_parenthesized_expression] = STATE(920), + [sym_conditional_expression] = STATE(1156), + [sym_concatenated_string] = STATE(920), + [sym_string] = STATE(775), + [sym_concatenated_template_string] = STATE(920), + [sym_template_string] = STATE(769), + [sym_await] = STATE(920), + [sym_identifier] = ACTIONS(7), + [anon_sym_lazy] = ACTIONS(9), + [anon_sym_import] = ACTIONS(11), + [anon_sym_from] = ACTIONS(13), + [anon_sym_LPAREN] = ACTIONS(15), + [anon_sym_STAR] = ACTIONS(17), + [anon_sym_print] = ACTIONS(19), + [anon_sym_assert] = ACTIONS(21), + [anon_sym_return] = ACTIONS(23), + [anon_sym_del] = ACTIONS(25), + [anon_sym_raise] = ACTIONS(27), + [anon_sym_pass] = ACTIONS(29), + [anon_sym_break] = ACTIONS(31), + [anon_sym_continue] = ACTIONS(33), + [anon_sym_async] = ACTIONS(319), + [anon_sym_match] = ACTIONS(319), + [anon_sym_DASH] = ACTIONS(49), + [anon_sym_PLUS] = ACTIONS(49), + [anon_sym_LBRACK] = ACTIONS(51), + [anon_sym_LBRACE] = ACTIONS(53), + [anon_sym_STAR_STAR] = ACTIONS(55), + [anon_sym_global] = ACTIONS(59), + [anon_sym_nonlocal] = ACTIONS(61), + [anon_sym_exec] = ACTIONS(63), + [anon_sym_type] = ACTIONS(65), + [anon_sym_not] = ACTIONS(71), + [anon_sym_TILDE] = ACTIONS(49), + [anon_sym_lambda] = ACTIONS(73), + [anon_sym_yield] = ACTIONS(75), + [sym_ellipsis] = ACTIONS(77), + [sym_integer] = ACTIONS(79), + [sym_float] = ACTIONS(77), + [anon_sym_await] = ACTIONS(81), + [sym_true] = ACTIONS(79), + [sym_false] = ACTIONS(79), + [sym_none] = ACTIONS(79), + [sym_comment] = ACTIONS(3), + [sym__newline] = ACTIONS(445), + [sym__indent] = ACTIONS(447), + [sym__string_start] = ACTIONS(83), + [sym__template_string_start] = ACTIONS(85), + }, + [STATE(99)] = { + [sym__simple_statements] = STATE(447), [sym_import_statement] = STATE(1332), [sym_future_import_statement] = STATE(1332), [sym_import_from_statement] = STATE(1332), [sym_print_statement] = STATE(1332), [sym_assert_statement] = STATE(1332), [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1158), + [sym_named_expression] = STATE(1156), [sym_return_statement] = STATE(1332), [sym_delete_statement] = STATE(1332), [sym_raise_statement] = STATE(1332), [sym_pass_statement] = STATE(1332), [sym_break_statement] = STATE(1332), [sym_continue_statement] = STATE(1332), - [sym_list_splat] = STATE(1549), - [sym_dictionary_splat] = STATE(1549), + [sym_list_splat] = STATE(1520), + [sym_dictionary_splat] = STATE(1520), [sym_global_statement] = STATE(1332), [sym_nonlocal_statement] = STATE(1332), [sym_exec_statement] = STATE(1332), [sym_type_alias_statement] = STATE(1332), - [sym_expression_list] = STATE(1551), - [sym_pattern] = STATE(1013), - [sym_tuple_pattern] = STATE(999), - [sym_list_pattern] = STATE(999), - [sym_list_splat_pattern] = STATE(999), - [sym_expression] = STATE(1185), - [sym_primary_expression] = STATE(779), - [sym_not_operator] = STATE(1158), - [sym_boolean_operator] = STATE(1158), - [sym_binary_operator] = STATE(908), - [sym_unary_operator] = STATE(908), - [sym_comparison_operator] = STATE(1158), - [sym_lambda] = STATE(1158), - [sym_assignment] = STATE(1551), - [sym_augmented_assignment] = STATE(1551), - [sym_pattern_list] = STATE(1024), - [sym_yield] = STATE(1551), - [sym_attribute] = STATE(494), - [sym_subscript] = STATE(494), - [sym_call] = STATE(908), - [sym_list] = STATE(908), - [sym_set] = STATE(908), - [sym_tuple] = STATE(908), - [sym_dictionary] = STATE(908), - [sym_list_comprehension] = STATE(908), - [sym_dictionary_comprehension] = STATE(908), - [sym_set_comprehension] = STATE(908), - [sym_generator_expression] = STATE(908), - [sym_parenthesized_expression] = STATE(908), - [sym_conditional_expression] = STATE(1158), - [sym_concatenated_string] = STATE(908), - [sym_string] = STATE(782), - [sym_concatenated_template_string] = STATE(908), - [sym_template_string] = STATE(763), - [sym_await] = STATE(908), + [sym_expression_list] = STATE(1522), + [sym_pattern] = STATE(1017), + [sym_tuple_pattern] = STATE(1001), + [sym_list_pattern] = STATE(1001), + [sym_list_splat_pattern] = STATE(1001), + [sym_expression] = STATE(1176), + [sym_primary_expression] = STATE(765), + [sym_not_operator] = STATE(1156), + [sym_boolean_operator] = STATE(1156), + [sym_binary_operator] = STATE(920), + [sym_unary_operator] = STATE(920), + [sym_comparison_operator] = STATE(1156), + [sym_lambda] = STATE(1156), + [sym_assignment] = STATE(1522), + [sym_augmented_assignment] = STATE(1522), + [sym_pattern_list] = STATE(1026), + [sym_yield] = STATE(1522), + [sym_attribute] = STATE(582), + [sym_subscript] = STATE(582), + [sym_call] = STATE(920), + [sym_list] = STATE(920), + [sym_set] = STATE(920), + [sym_tuple] = STATE(920), + [sym_dictionary] = STATE(920), + [sym_list_comprehension] = STATE(920), + [sym_dictionary_comprehension] = STATE(920), + [sym_set_comprehension] = STATE(920), + [sym_generator_expression] = STATE(920), + [sym_parenthesized_expression] = STATE(920), + [sym_conditional_expression] = STATE(1156), + [sym_concatenated_string] = STATE(920), + [sym_string] = STATE(775), + [sym_concatenated_template_string] = STATE(920), + [sym_template_string] = STATE(769), + [sym_await] = STATE(920), [sym_identifier] = ACTIONS(7), - [anon_sym_import] = ACTIONS(9), - [anon_sym_from] = ACTIONS(11), - [anon_sym_LPAREN] = ACTIONS(13), - [anon_sym_STAR] = ACTIONS(15), - [anon_sym_print] = ACTIONS(17), - [anon_sym_assert] = ACTIONS(19), - [anon_sym_return] = ACTIONS(21), - [anon_sym_del] = ACTIONS(23), - [anon_sym_raise] = ACTIONS(25), - [anon_sym_pass] = ACTIONS(27), - [anon_sym_break] = ACTIONS(29), - [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(322), - [anon_sym_match] = ACTIONS(322), - [anon_sym_DASH] = ACTIONS(47), - [anon_sym_PLUS] = ACTIONS(47), - [anon_sym_LBRACK] = ACTIONS(49), - [anon_sym_LBRACE] = ACTIONS(51), - [anon_sym_STAR_STAR] = ACTIONS(53), - [anon_sym_global] = ACTIONS(57), - [anon_sym_nonlocal] = ACTIONS(59), - [anon_sym_exec] = ACTIONS(61), - [anon_sym_type] = ACTIONS(63), - [anon_sym_not] = ACTIONS(69), - [anon_sym_TILDE] = ACTIONS(47), - [anon_sym_lambda] = ACTIONS(71), - [anon_sym_yield] = ACTIONS(73), - [sym_ellipsis] = ACTIONS(75), - [sym_integer] = ACTIONS(77), - [sym_float] = ACTIONS(75), - [anon_sym_await] = ACTIONS(79), - [sym_true] = ACTIONS(77), - [sym_false] = ACTIONS(77), - [sym_none] = ACTIONS(77), + [anon_sym_lazy] = ACTIONS(9), + [anon_sym_import] = ACTIONS(11), + [anon_sym_from] = ACTIONS(13), + [anon_sym_LPAREN] = ACTIONS(15), + [anon_sym_STAR] = ACTIONS(17), + [anon_sym_print] = ACTIONS(19), + [anon_sym_assert] = ACTIONS(21), + [anon_sym_return] = ACTIONS(23), + [anon_sym_del] = ACTIONS(25), + [anon_sym_raise] = ACTIONS(27), + [anon_sym_pass] = ACTIONS(29), + [anon_sym_break] = ACTIONS(31), + [anon_sym_continue] = ACTIONS(33), + [anon_sym_async] = ACTIONS(319), + [anon_sym_match] = ACTIONS(319), + [anon_sym_DASH] = ACTIONS(49), + [anon_sym_PLUS] = ACTIONS(49), + [anon_sym_LBRACK] = ACTIONS(51), + [anon_sym_LBRACE] = ACTIONS(53), + [anon_sym_STAR_STAR] = ACTIONS(55), + [anon_sym_global] = ACTIONS(59), + [anon_sym_nonlocal] = ACTIONS(61), + [anon_sym_exec] = ACTIONS(63), + [anon_sym_type] = ACTIONS(65), + [anon_sym_not] = ACTIONS(71), + [anon_sym_TILDE] = ACTIONS(49), + [anon_sym_lambda] = ACTIONS(73), + [anon_sym_yield] = ACTIONS(75), + [sym_ellipsis] = ACTIONS(77), + [sym_integer] = ACTIONS(79), + [sym_float] = ACTIONS(77), + [anon_sym_await] = ACTIONS(81), + [sym_true] = ACTIONS(79), + [sym_false] = ACTIONS(79), + [sym_none] = ACTIONS(79), [sym_comment] = ACTIONS(3), - [sym__newline] = ACTIONS(440), - [sym__indent] = ACTIONS(442), - [sym__string_start] = ACTIONS(81), - [sym__template_string_start] = ACTIONS(83), + [sym__newline] = ACTIONS(449), + [sym__indent] = ACTIONS(451), + [sym__string_start] = ACTIONS(83), + [sym__template_string_start] = ACTIONS(85), }, - [STATE(99)] = { - [sym__simple_statements] = STATE(312), - [sym_import_statement] = STATE(1348), - [sym_future_import_statement] = STATE(1348), - [sym_import_from_statement] = STATE(1348), - [sym_print_statement] = STATE(1348), - [sym_assert_statement] = STATE(1348), - [sym_expression_statement] = STATE(1348), - [sym_named_expression] = STATE(1158), - [sym_return_statement] = STATE(1348), - [sym_delete_statement] = STATE(1348), - [sym_raise_statement] = STATE(1348), - [sym_pass_statement] = STATE(1348), - [sym_break_statement] = STATE(1348), - [sym_continue_statement] = STATE(1348), - [sym_list_splat] = STATE(1549), - [sym_dictionary_splat] = STATE(1549), - [sym_global_statement] = STATE(1348), - [sym_nonlocal_statement] = STATE(1348), - [sym_exec_statement] = STATE(1348), - [sym_type_alias_statement] = STATE(1348), - [sym_expression_list] = STATE(1551), - [sym_pattern] = STATE(1013), - [sym_tuple_pattern] = STATE(999), - [sym_list_pattern] = STATE(999), - [sym_list_splat_pattern] = STATE(999), - [sym_expression] = STATE(1185), - [sym_primary_expression] = STATE(779), - [sym_not_operator] = STATE(1158), - [sym_boolean_operator] = STATE(1158), - [sym_binary_operator] = STATE(908), - [sym_unary_operator] = STATE(908), - [sym_comparison_operator] = STATE(1158), - [sym_lambda] = STATE(1158), - [sym_assignment] = STATE(1551), - [sym_augmented_assignment] = STATE(1551), - [sym_pattern_list] = STATE(1024), - [sym_yield] = STATE(1551), - [sym_attribute] = STATE(494), - [sym_subscript] = STATE(494), - [sym_call] = STATE(908), - [sym_list] = STATE(908), - [sym_set] = STATE(908), - [sym_tuple] = STATE(908), - [sym_dictionary] = STATE(908), - [sym_list_comprehension] = STATE(908), - [sym_dictionary_comprehension] = STATE(908), - [sym_set_comprehension] = STATE(908), - [sym_generator_expression] = STATE(908), - [sym_parenthesized_expression] = STATE(908), - [sym_conditional_expression] = STATE(1158), - [sym_concatenated_string] = STATE(908), - [sym_string] = STATE(782), - [sym_concatenated_template_string] = STATE(908), - [sym_template_string] = STATE(763), - [sym_await] = STATE(908), + [STATE(100)] = { + [sym__simple_statements] = STATE(460), + [sym_import_statement] = STATE(1301), + [sym_future_import_statement] = STATE(1301), + [sym_import_from_statement] = STATE(1301), + [sym_print_statement] = STATE(1301), + [sym_assert_statement] = STATE(1301), + [sym_expression_statement] = STATE(1301), + [sym_named_expression] = STATE(1156), + [sym_return_statement] = STATE(1301), + [sym_delete_statement] = STATE(1301), + [sym_raise_statement] = STATE(1301), + [sym_pass_statement] = STATE(1301), + [sym_break_statement] = STATE(1301), + [sym_continue_statement] = STATE(1301), + [sym_list_splat] = STATE(1520), + [sym_dictionary_splat] = STATE(1520), + [sym_global_statement] = STATE(1301), + [sym_nonlocal_statement] = STATE(1301), + [sym_exec_statement] = STATE(1301), + [sym_type_alias_statement] = STATE(1301), + [sym_expression_list] = STATE(1522), + [sym_pattern] = STATE(1017), + [sym_tuple_pattern] = STATE(1001), + [sym_list_pattern] = STATE(1001), + [sym_list_splat_pattern] = STATE(1001), + [sym_expression] = STATE(1176), + [sym_primary_expression] = STATE(765), + [sym_not_operator] = STATE(1156), + [sym_boolean_operator] = STATE(1156), + [sym_binary_operator] = STATE(920), + [sym_unary_operator] = STATE(920), + [sym_comparison_operator] = STATE(1156), + [sym_lambda] = STATE(1156), + [sym_assignment] = STATE(1522), + [sym_augmented_assignment] = STATE(1522), + [sym_pattern_list] = STATE(1026), + [sym_yield] = STATE(1522), + [sym_attribute] = STATE(582), + [sym_subscript] = STATE(582), + [sym_call] = STATE(920), + [sym_list] = STATE(920), + [sym_set] = STATE(920), + [sym_tuple] = STATE(920), + [sym_dictionary] = STATE(920), + [sym_list_comprehension] = STATE(920), + [sym_dictionary_comprehension] = STATE(920), + [sym_set_comprehension] = STATE(920), + [sym_generator_expression] = STATE(920), + [sym_parenthesized_expression] = STATE(920), + [sym_conditional_expression] = STATE(1156), + [sym_concatenated_string] = STATE(920), + [sym_string] = STATE(775), + [sym_concatenated_template_string] = STATE(920), + [sym_template_string] = STATE(769), + [sym_await] = STATE(920), [sym_identifier] = ACTIONS(7), - [anon_sym_import] = ACTIONS(9), - [anon_sym_from] = ACTIONS(11), - [anon_sym_LPAREN] = ACTIONS(13), - [anon_sym_STAR] = ACTIONS(15), - [anon_sym_print] = ACTIONS(17), - [anon_sym_assert] = ACTIONS(19), - [anon_sym_return] = ACTIONS(21), - [anon_sym_del] = ACTIONS(23), - [anon_sym_raise] = ACTIONS(25), - [anon_sym_pass] = ACTIONS(27), - [anon_sym_break] = ACTIONS(29), - [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(322), - [anon_sym_match] = ACTIONS(322), - [anon_sym_DASH] = ACTIONS(47), - [anon_sym_PLUS] = ACTIONS(47), - [anon_sym_LBRACK] = ACTIONS(49), - [anon_sym_LBRACE] = ACTIONS(51), - [anon_sym_STAR_STAR] = ACTIONS(53), - [anon_sym_global] = ACTIONS(57), - [anon_sym_nonlocal] = ACTIONS(59), - [anon_sym_exec] = ACTIONS(61), - [anon_sym_type] = ACTIONS(63), - [anon_sym_not] = ACTIONS(69), - [anon_sym_TILDE] = ACTIONS(47), - [anon_sym_lambda] = ACTIONS(71), - [anon_sym_yield] = ACTIONS(73), - [sym_ellipsis] = ACTIONS(75), - [sym_integer] = ACTIONS(77), - [sym_float] = ACTIONS(75), - [anon_sym_await] = ACTIONS(79), - [sym_true] = ACTIONS(77), - [sym_false] = ACTIONS(77), - [sym_none] = ACTIONS(77), + [anon_sym_lazy] = ACTIONS(9), + [anon_sym_import] = ACTIONS(11), + [anon_sym_from] = ACTIONS(13), + [anon_sym_LPAREN] = ACTIONS(15), + [anon_sym_STAR] = ACTIONS(17), + [anon_sym_print] = ACTIONS(19), + [anon_sym_assert] = ACTIONS(21), + [anon_sym_return] = ACTIONS(23), + [anon_sym_del] = ACTIONS(25), + [anon_sym_raise] = ACTIONS(27), + [anon_sym_pass] = ACTIONS(29), + [anon_sym_break] = ACTIONS(31), + [anon_sym_continue] = ACTIONS(33), + [anon_sym_async] = ACTIONS(319), + [anon_sym_match] = ACTIONS(319), + [anon_sym_DASH] = ACTIONS(49), + [anon_sym_PLUS] = ACTIONS(49), + [anon_sym_LBRACK] = ACTIONS(51), + [anon_sym_LBRACE] = ACTIONS(53), + [anon_sym_STAR_STAR] = ACTIONS(55), + [anon_sym_global] = ACTIONS(59), + [anon_sym_nonlocal] = ACTIONS(61), + [anon_sym_exec] = ACTIONS(63), + [anon_sym_type] = ACTIONS(65), + [anon_sym_not] = ACTIONS(71), + [anon_sym_TILDE] = ACTIONS(49), + [anon_sym_lambda] = ACTIONS(73), + [anon_sym_yield] = ACTIONS(75), + [sym_ellipsis] = ACTIONS(77), + [sym_integer] = ACTIONS(79), + [sym_float] = ACTIONS(77), + [anon_sym_await] = ACTIONS(81), + [sym_true] = ACTIONS(79), + [sym_false] = ACTIONS(79), + [sym_none] = ACTIONS(79), [sym_comment] = ACTIONS(3), - [sym__newline] = ACTIONS(444), - [sym__indent] = ACTIONS(446), - [sym__string_start] = ACTIONS(81), - [sym__template_string_start] = ACTIONS(83), + [sym__newline] = ACTIONS(453), + [sym__indent] = ACTIONS(455), + [sym__string_start] = ACTIONS(83), + [sym__template_string_start] = ACTIONS(85), }, - [STATE(100)] = { - [sym__simple_statements] = STATE(584), + [STATE(101)] = { + [sym__simple_statements] = STATE(502), [sym_import_statement] = STATE(1332), [sym_future_import_statement] = STATE(1332), [sym_import_from_statement] = STATE(1332), [sym_print_statement] = STATE(1332), [sym_assert_statement] = STATE(1332), [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1158), + [sym_named_expression] = STATE(1156), [sym_return_statement] = STATE(1332), [sym_delete_statement] = STATE(1332), [sym_raise_statement] = STATE(1332), [sym_pass_statement] = STATE(1332), [sym_break_statement] = STATE(1332), [sym_continue_statement] = STATE(1332), - [sym_list_splat] = STATE(1549), - [sym_dictionary_splat] = STATE(1549), + [sym_list_splat] = STATE(1520), + [sym_dictionary_splat] = STATE(1520), [sym_global_statement] = STATE(1332), [sym_nonlocal_statement] = STATE(1332), [sym_exec_statement] = STATE(1332), [sym_type_alias_statement] = STATE(1332), - [sym_expression_list] = STATE(1551), - [sym_pattern] = STATE(1013), - [sym_tuple_pattern] = STATE(999), - [sym_list_pattern] = STATE(999), - [sym_list_splat_pattern] = STATE(999), - [sym_expression] = STATE(1185), - [sym_primary_expression] = STATE(779), - [sym_not_operator] = STATE(1158), - [sym_boolean_operator] = STATE(1158), - [sym_binary_operator] = STATE(908), - [sym_unary_operator] = STATE(908), - [sym_comparison_operator] = STATE(1158), - [sym_lambda] = STATE(1158), - [sym_assignment] = STATE(1551), - [sym_augmented_assignment] = STATE(1551), - [sym_pattern_list] = STATE(1024), - [sym_yield] = STATE(1551), - [sym_attribute] = STATE(494), - [sym_subscript] = STATE(494), - [sym_call] = STATE(908), - [sym_list] = STATE(908), - [sym_set] = STATE(908), - [sym_tuple] = STATE(908), - [sym_dictionary] = STATE(908), - [sym_list_comprehension] = STATE(908), - [sym_dictionary_comprehension] = STATE(908), - [sym_set_comprehension] = STATE(908), - [sym_generator_expression] = STATE(908), - [sym_parenthesized_expression] = STATE(908), - [sym_conditional_expression] = STATE(1158), - [sym_concatenated_string] = STATE(908), - [sym_string] = STATE(782), - [sym_concatenated_template_string] = STATE(908), - [sym_template_string] = STATE(763), - [sym_await] = STATE(908), - [sym_identifier] = ACTIONS(7), - [anon_sym_import] = ACTIONS(9), - [anon_sym_from] = ACTIONS(11), - [anon_sym_LPAREN] = ACTIONS(13), - [anon_sym_STAR] = ACTIONS(15), - [anon_sym_print] = ACTIONS(17), - [anon_sym_assert] = ACTIONS(19), - [anon_sym_return] = ACTIONS(21), - [anon_sym_del] = ACTIONS(23), - [anon_sym_raise] = ACTIONS(25), - [anon_sym_pass] = ACTIONS(27), - [anon_sym_break] = ACTIONS(29), - [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(322), - [anon_sym_match] = ACTIONS(322), - [anon_sym_DASH] = ACTIONS(47), - [anon_sym_PLUS] = ACTIONS(47), - [anon_sym_LBRACK] = ACTIONS(49), - [anon_sym_LBRACE] = ACTIONS(51), - [anon_sym_STAR_STAR] = ACTIONS(53), - [anon_sym_global] = ACTIONS(57), - [anon_sym_nonlocal] = ACTIONS(59), - [anon_sym_exec] = ACTIONS(61), - [anon_sym_type] = ACTIONS(63), - [anon_sym_not] = ACTIONS(69), - [anon_sym_TILDE] = ACTIONS(47), - [anon_sym_lambda] = ACTIONS(71), - [anon_sym_yield] = ACTIONS(73), - [sym_ellipsis] = ACTIONS(75), - [sym_integer] = ACTIONS(77), - [sym_float] = ACTIONS(75), - [anon_sym_await] = ACTIONS(79), - [sym_true] = ACTIONS(77), - [sym_false] = ACTIONS(77), - [sym_none] = ACTIONS(77), - [sym_comment] = ACTIONS(3), - [sym__newline] = ACTIONS(448), - [sym__indent] = ACTIONS(450), - [sym__string_start] = ACTIONS(81), - [sym__template_string_start] = ACTIONS(83), - }, - [STATE(101)] = { - [sym__simple_statements] = STATE(527), - [sym_import_statement] = STATE(1348), - [sym_future_import_statement] = STATE(1348), - [sym_import_from_statement] = STATE(1348), - [sym_print_statement] = STATE(1348), - [sym_assert_statement] = STATE(1348), - [sym_expression_statement] = STATE(1348), - [sym_named_expression] = STATE(1158), - [sym_return_statement] = STATE(1348), - [sym_delete_statement] = STATE(1348), - [sym_raise_statement] = STATE(1348), - [sym_pass_statement] = STATE(1348), - [sym_break_statement] = STATE(1348), - [sym_continue_statement] = STATE(1348), - [sym_list_splat] = STATE(1549), - [sym_dictionary_splat] = STATE(1549), - [sym_global_statement] = STATE(1348), - [sym_nonlocal_statement] = STATE(1348), - [sym_exec_statement] = STATE(1348), - [sym_type_alias_statement] = STATE(1348), - [sym_expression_list] = STATE(1551), - [sym_pattern] = STATE(1013), - [sym_tuple_pattern] = STATE(999), - [sym_list_pattern] = STATE(999), - [sym_list_splat_pattern] = STATE(999), - [sym_expression] = STATE(1185), - [sym_primary_expression] = STATE(779), - [sym_not_operator] = STATE(1158), - [sym_boolean_operator] = STATE(1158), - [sym_binary_operator] = STATE(908), - [sym_unary_operator] = STATE(908), - [sym_comparison_operator] = STATE(1158), - [sym_lambda] = STATE(1158), - [sym_assignment] = STATE(1551), - [sym_augmented_assignment] = STATE(1551), - [sym_pattern_list] = STATE(1024), - [sym_yield] = STATE(1551), - [sym_attribute] = STATE(494), - [sym_subscript] = STATE(494), - [sym_call] = STATE(908), - [sym_list] = STATE(908), - [sym_set] = STATE(908), - [sym_tuple] = STATE(908), - [sym_dictionary] = STATE(908), - [sym_list_comprehension] = STATE(908), - [sym_dictionary_comprehension] = STATE(908), - [sym_set_comprehension] = STATE(908), - [sym_generator_expression] = STATE(908), - [sym_parenthesized_expression] = STATE(908), - [sym_conditional_expression] = STATE(1158), - [sym_concatenated_string] = STATE(908), - [sym_string] = STATE(782), - [sym_concatenated_template_string] = STATE(908), - [sym_template_string] = STATE(763), - [sym_await] = STATE(908), + [sym_expression_list] = STATE(1522), + [sym_pattern] = STATE(1017), + [sym_tuple_pattern] = STATE(1001), + [sym_list_pattern] = STATE(1001), + [sym_list_splat_pattern] = STATE(1001), + [sym_expression] = STATE(1176), + [sym_primary_expression] = STATE(765), + [sym_not_operator] = STATE(1156), + [sym_boolean_operator] = STATE(1156), + [sym_binary_operator] = STATE(920), + [sym_unary_operator] = STATE(920), + [sym_comparison_operator] = STATE(1156), + [sym_lambda] = STATE(1156), + [sym_assignment] = STATE(1522), + [sym_augmented_assignment] = STATE(1522), + [sym_pattern_list] = STATE(1026), + [sym_yield] = STATE(1522), + [sym_attribute] = STATE(582), + [sym_subscript] = STATE(582), + [sym_call] = STATE(920), + [sym_list] = STATE(920), + [sym_set] = STATE(920), + [sym_tuple] = STATE(920), + [sym_dictionary] = STATE(920), + [sym_list_comprehension] = STATE(920), + [sym_dictionary_comprehension] = STATE(920), + [sym_set_comprehension] = STATE(920), + [sym_generator_expression] = STATE(920), + [sym_parenthesized_expression] = STATE(920), + [sym_conditional_expression] = STATE(1156), + [sym_concatenated_string] = STATE(920), + [sym_string] = STATE(775), + [sym_concatenated_template_string] = STATE(920), + [sym_template_string] = STATE(769), + [sym_await] = STATE(920), [sym_identifier] = ACTIONS(7), - [anon_sym_import] = ACTIONS(9), - [anon_sym_from] = ACTIONS(11), - [anon_sym_LPAREN] = ACTIONS(13), - [anon_sym_STAR] = ACTIONS(15), - [anon_sym_print] = ACTIONS(17), - [anon_sym_assert] = ACTIONS(19), - [anon_sym_return] = ACTIONS(21), - [anon_sym_del] = ACTIONS(23), - [anon_sym_raise] = ACTIONS(25), - [anon_sym_pass] = ACTIONS(27), - [anon_sym_break] = ACTIONS(29), - [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(322), - [anon_sym_match] = ACTIONS(322), - [anon_sym_DASH] = ACTIONS(47), - [anon_sym_PLUS] = ACTIONS(47), - [anon_sym_LBRACK] = ACTIONS(49), - [anon_sym_LBRACE] = ACTIONS(51), - [anon_sym_STAR_STAR] = ACTIONS(53), - [anon_sym_global] = ACTIONS(57), - [anon_sym_nonlocal] = ACTIONS(59), - [anon_sym_exec] = ACTIONS(61), - [anon_sym_type] = ACTIONS(63), - [anon_sym_not] = ACTIONS(69), - [anon_sym_TILDE] = ACTIONS(47), - [anon_sym_lambda] = ACTIONS(71), - [anon_sym_yield] = ACTIONS(73), - [sym_ellipsis] = ACTIONS(75), - [sym_integer] = ACTIONS(77), - [sym_float] = ACTIONS(75), - [anon_sym_await] = ACTIONS(79), - [sym_true] = ACTIONS(77), - [sym_false] = ACTIONS(77), - [sym_none] = ACTIONS(77), + [anon_sym_lazy] = ACTIONS(9), + [anon_sym_import] = ACTIONS(11), + [anon_sym_from] = ACTIONS(13), + [anon_sym_LPAREN] = ACTIONS(15), + [anon_sym_STAR] = ACTIONS(17), + [anon_sym_print] = ACTIONS(19), + [anon_sym_assert] = ACTIONS(21), + [anon_sym_return] = ACTIONS(23), + [anon_sym_del] = ACTIONS(25), + [anon_sym_raise] = ACTIONS(27), + [anon_sym_pass] = ACTIONS(29), + [anon_sym_break] = ACTIONS(31), + [anon_sym_continue] = ACTIONS(33), + [anon_sym_async] = ACTIONS(319), + [anon_sym_match] = ACTIONS(319), + [anon_sym_DASH] = ACTIONS(49), + [anon_sym_PLUS] = ACTIONS(49), + [anon_sym_LBRACK] = ACTIONS(51), + [anon_sym_LBRACE] = ACTIONS(53), + [anon_sym_STAR_STAR] = ACTIONS(55), + [anon_sym_global] = ACTIONS(59), + [anon_sym_nonlocal] = ACTIONS(61), + [anon_sym_exec] = ACTIONS(63), + [anon_sym_type] = ACTIONS(65), + [anon_sym_not] = ACTIONS(71), + [anon_sym_TILDE] = ACTIONS(49), + [anon_sym_lambda] = ACTIONS(73), + [anon_sym_yield] = ACTIONS(75), + [sym_ellipsis] = ACTIONS(77), + [sym_integer] = ACTIONS(79), + [sym_float] = ACTIONS(77), + [anon_sym_await] = ACTIONS(81), + [sym_true] = ACTIONS(79), + [sym_false] = ACTIONS(79), + [sym_none] = ACTIONS(79), [sym_comment] = ACTIONS(3), - [sym__newline] = ACTIONS(452), - [sym__indent] = ACTIONS(454), - [sym__string_start] = ACTIONS(81), - [sym__template_string_start] = ACTIONS(83), + [sym__newline] = ACTIONS(457), + [sym__indent] = ACTIONS(459), + [sym__string_start] = ACTIONS(83), + [sym__template_string_start] = ACTIONS(85), }, [STATE(102)] = { - [sym__simple_statements] = STATE(439), + [sym__simple_statements] = STATE(547), [sym_import_statement] = STATE(1332), [sym_future_import_statement] = STATE(1332), [sym_import_from_statement] = STATE(1332), [sym_print_statement] = STATE(1332), [sym_assert_statement] = STATE(1332), [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1158), + [sym_named_expression] = STATE(1156), [sym_return_statement] = STATE(1332), [sym_delete_statement] = STATE(1332), [sym_raise_statement] = STATE(1332), [sym_pass_statement] = STATE(1332), [sym_break_statement] = STATE(1332), [sym_continue_statement] = STATE(1332), - [sym_list_splat] = STATE(1549), - [sym_dictionary_splat] = STATE(1549), + [sym_list_splat] = STATE(1520), + [sym_dictionary_splat] = STATE(1520), [sym_global_statement] = STATE(1332), [sym_nonlocal_statement] = STATE(1332), [sym_exec_statement] = STATE(1332), [sym_type_alias_statement] = STATE(1332), - [sym_expression_list] = STATE(1551), - [sym_pattern] = STATE(1013), - [sym_tuple_pattern] = STATE(999), - [sym_list_pattern] = STATE(999), - [sym_list_splat_pattern] = STATE(999), - [sym_expression] = STATE(1185), - [sym_primary_expression] = STATE(779), - [sym_not_operator] = STATE(1158), - [sym_boolean_operator] = STATE(1158), - [sym_binary_operator] = STATE(908), - [sym_unary_operator] = STATE(908), - [sym_comparison_operator] = STATE(1158), - [sym_lambda] = STATE(1158), - [sym_assignment] = STATE(1551), - [sym_augmented_assignment] = STATE(1551), - [sym_pattern_list] = STATE(1024), - [sym_yield] = STATE(1551), - [sym_attribute] = STATE(494), - [sym_subscript] = STATE(494), - [sym_call] = STATE(908), - [sym_list] = STATE(908), - [sym_set] = STATE(908), - [sym_tuple] = STATE(908), - [sym_dictionary] = STATE(908), - [sym_list_comprehension] = STATE(908), - [sym_dictionary_comprehension] = STATE(908), - [sym_set_comprehension] = STATE(908), - [sym_generator_expression] = STATE(908), - [sym_parenthesized_expression] = STATE(908), - [sym_conditional_expression] = STATE(1158), - [sym_concatenated_string] = STATE(908), - [sym_string] = STATE(782), - [sym_concatenated_template_string] = STATE(908), - [sym_template_string] = STATE(763), - [sym_await] = STATE(908), + [sym_expression_list] = STATE(1522), + [sym_pattern] = STATE(1017), + [sym_tuple_pattern] = STATE(1001), + [sym_list_pattern] = STATE(1001), + [sym_list_splat_pattern] = STATE(1001), + [sym_expression] = STATE(1176), + [sym_primary_expression] = STATE(765), + [sym_not_operator] = STATE(1156), + [sym_boolean_operator] = STATE(1156), + [sym_binary_operator] = STATE(920), + [sym_unary_operator] = STATE(920), + [sym_comparison_operator] = STATE(1156), + [sym_lambda] = STATE(1156), + [sym_assignment] = STATE(1522), + [sym_augmented_assignment] = STATE(1522), + [sym_pattern_list] = STATE(1026), + [sym_yield] = STATE(1522), + [sym_attribute] = STATE(582), + [sym_subscript] = STATE(582), + [sym_call] = STATE(920), + [sym_list] = STATE(920), + [sym_set] = STATE(920), + [sym_tuple] = STATE(920), + [sym_dictionary] = STATE(920), + [sym_list_comprehension] = STATE(920), + [sym_dictionary_comprehension] = STATE(920), + [sym_set_comprehension] = STATE(920), + [sym_generator_expression] = STATE(920), + [sym_parenthesized_expression] = STATE(920), + [sym_conditional_expression] = STATE(1156), + [sym_concatenated_string] = STATE(920), + [sym_string] = STATE(775), + [sym_concatenated_template_string] = STATE(920), + [sym_template_string] = STATE(769), + [sym_await] = STATE(920), [sym_identifier] = ACTIONS(7), - [anon_sym_import] = ACTIONS(9), - [anon_sym_from] = ACTIONS(11), - [anon_sym_LPAREN] = ACTIONS(13), - [anon_sym_STAR] = ACTIONS(15), - [anon_sym_print] = ACTIONS(17), - [anon_sym_assert] = ACTIONS(19), - [anon_sym_return] = ACTIONS(21), - [anon_sym_del] = ACTIONS(23), - [anon_sym_raise] = ACTIONS(25), - [anon_sym_pass] = ACTIONS(27), - [anon_sym_break] = ACTIONS(29), - [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(322), - [anon_sym_match] = ACTIONS(322), - [anon_sym_DASH] = ACTIONS(47), - [anon_sym_PLUS] = ACTIONS(47), - [anon_sym_LBRACK] = ACTIONS(49), - [anon_sym_LBRACE] = ACTIONS(51), - [anon_sym_STAR_STAR] = ACTIONS(53), - [anon_sym_global] = ACTIONS(57), - [anon_sym_nonlocal] = ACTIONS(59), - [anon_sym_exec] = ACTIONS(61), - [anon_sym_type] = ACTIONS(63), - [anon_sym_not] = ACTIONS(69), - [anon_sym_TILDE] = ACTIONS(47), - [anon_sym_lambda] = ACTIONS(71), - [anon_sym_yield] = ACTIONS(73), - [sym_ellipsis] = ACTIONS(75), - [sym_integer] = ACTIONS(77), - [sym_float] = ACTIONS(75), - [anon_sym_await] = ACTIONS(79), - [sym_true] = ACTIONS(77), - [sym_false] = ACTIONS(77), - [sym_none] = ACTIONS(77), + [anon_sym_lazy] = ACTIONS(9), + [anon_sym_import] = ACTIONS(11), + [anon_sym_from] = ACTIONS(13), + [anon_sym_LPAREN] = ACTIONS(15), + [anon_sym_STAR] = ACTIONS(17), + [anon_sym_print] = ACTIONS(19), + [anon_sym_assert] = ACTIONS(21), + [anon_sym_return] = ACTIONS(23), + [anon_sym_del] = ACTIONS(25), + [anon_sym_raise] = ACTIONS(27), + [anon_sym_pass] = ACTIONS(29), + [anon_sym_break] = ACTIONS(31), + [anon_sym_continue] = ACTIONS(33), + [anon_sym_async] = ACTIONS(319), + [anon_sym_match] = ACTIONS(319), + [anon_sym_DASH] = ACTIONS(49), + [anon_sym_PLUS] = ACTIONS(49), + [anon_sym_LBRACK] = ACTIONS(51), + [anon_sym_LBRACE] = ACTIONS(53), + [anon_sym_STAR_STAR] = ACTIONS(55), + [anon_sym_global] = ACTIONS(59), + [anon_sym_nonlocal] = ACTIONS(61), + [anon_sym_exec] = ACTIONS(63), + [anon_sym_type] = ACTIONS(65), + [anon_sym_not] = ACTIONS(71), + [anon_sym_TILDE] = ACTIONS(49), + [anon_sym_lambda] = ACTIONS(73), + [anon_sym_yield] = ACTIONS(75), + [sym_ellipsis] = ACTIONS(77), + [sym_integer] = ACTIONS(79), + [sym_float] = ACTIONS(77), + [anon_sym_await] = ACTIONS(81), + [sym_true] = ACTIONS(79), + [sym_false] = ACTIONS(79), + [sym_none] = ACTIONS(79), [sym_comment] = ACTIONS(3), - [sym__newline] = ACTIONS(456), - [sym__indent] = ACTIONS(458), - [sym__string_start] = ACTIONS(81), - [sym__template_string_start] = ACTIONS(83), + [sym__newline] = ACTIONS(461), + [sym__indent] = ACTIONS(463), + [sym__string_start] = ACTIONS(83), + [sym__template_string_start] = ACTIONS(85), }, [STATE(103)] = { - [sym__simple_statements] = STATE(485), - [sym_import_statement] = STATE(1348), - [sym_future_import_statement] = STATE(1348), - [sym_import_from_statement] = STATE(1348), - [sym_print_statement] = STATE(1348), - [sym_assert_statement] = STATE(1348), - [sym_expression_statement] = STATE(1348), - [sym_named_expression] = STATE(1158), - [sym_return_statement] = STATE(1348), - [sym_delete_statement] = STATE(1348), - [sym_raise_statement] = STATE(1348), - [sym_pass_statement] = STATE(1348), - [sym_break_statement] = STATE(1348), - [sym_continue_statement] = STATE(1348), - [sym_list_splat] = STATE(1549), - [sym_dictionary_splat] = STATE(1549), - [sym_global_statement] = STATE(1348), - [sym_nonlocal_statement] = STATE(1348), - [sym_exec_statement] = STATE(1348), - [sym_type_alias_statement] = STATE(1348), - [sym_expression_list] = STATE(1551), - [sym_pattern] = STATE(1013), - [sym_tuple_pattern] = STATE(999), - [sym_list_pattern] = STATE(999), - [sym_list_splat_pattern] = STATE(999), - [sym_expression] = STATE(1185), - [sym_primary_expression] = STATE(779), - [sym_not_operator] = STATE(1158), - [sym_boolean_operator] = STATE(1158), - [sym_binary_operator] = STATE(908), - [sym_unary_operator] = STATE(908), - [sym_comparison_operator] = STATE(1158), - [sym_lambda] = STATE(1158), - [sym_assignment] = STATE(1551), - [sym_augmented_assignment] = STATE(1551), - [sym_pattern_list] = STATE(1024), - [sym_yield] = STATE(1551), - [sym_attribute] = STATE(494), - [sym_subscript] = STATE(494), - [sym_call] = STATE(908), - [sym_list] = STATE(908), - [sym_set] = STATE(908), - [sym_tuple] = STATE(908), - [sym_dictionary] = STATE(908), - [sym_list_comprehension] = STATE(908), - [sym_dictionary_comprehension] = STATE(908), - [sym_set_comprehension] = STATE(908), - [sym_generator_expression] = STATE(908), - [sym_parenthesized_expression] = STATE(908), - [sym_conditional_expression] = STATE(1158), - [sym_concatenated_string] = STATE(908), - [sym_string] = STATE(782), - [sym_concatenated_template_string] = STATE(908), - [sym_template_string] = STATE(763), - [sym_await] = STATE(908), + [sym__simple_statements] = STATE(461), + [sym_import_statement] = STATE(1301), + [sym_future_import_statement] = STATE(1301), + [sym_import_from_statement] = STATE(1301), + [sym_print_statement] = STATE(1301), + [sym_assert_statement] = STATE(1301), + [sym_expression_statement] = STATE(1301), + [sym_named_expression] = STATE(1156), + [sym_return_statement] = STATE(1301), + [sym_delete_statement] = STATE(1301), + [sym_raise_statement] = STATE(1301), + [sym_pass_statement] = STATE(1301), + [sym_break_statement] = STATE(1301), + [sym_continue_statement] = STATE(1301), + [sym_list_splat] = STATE(1520), + [sym_dictionary_splat] = STATE(1520), + [sym_global_statement] = STATE(1301), + [sym_nonlocal_statement] = STATE(1301), + [sym_exec_statement] = STATE(1301), + [sym_type_alias_statement] = STATE(1301), + [sym_expression_list] = STATE(1522), + [sym_pattern] = STATE(1017), + [sym_tuple_pattern] = STATE(1001), + [sym_list_pattern] = STATE(1001), + [sym_list_splat_pattern] = STATE(1001), + [sym_expression] = STATE(1176), + [sym_primary_expression] = STATE(765), + [sym_not_operator] = STATE(1156), + [sym_boolean_operator] = STATE(1156), + [sym_binary_operator] = STATE(920), + [sym_unary_operator] = STATE(920), + [sym_comparison_operator] = STATE(1156), + [sym_lambda] = STATE(1156), + [sym_assignment] = STATE(1522), + [sym_augmented_assignment] = STATE(1522), + [sym_pattern_list] = STATE(1026), + [sym_yield] = STATE(1522), + [sym_attribute] = STATE(582), + [sym_subscript] = STATE(582), + [sym_call] = STATE(920), + [sym_list] = STATE(920), + [sym_set] = STATE(920), + [sym_tuple] = STATE(920), + [sym_dictionary] = STATE(920), + [sym_list_comprehension] = STATE(920), + [sym_dictionary_comprehension] = STATE(920), + [sym_set_comprehension] = STATE(920), + [sym_generator_expression] = STATE(920), + [sym_parenthesized_expression] = STATE(920), + [sym_conditional_expression] = STATE(1156), + [sym_concatenated_string] = STATE(920), + [sym_string] = STATE(775), + [sym_concatenated_template_string] = STATE(920), + [sym_template_string] = STATE(769), + [sym_await] = STATE(920), [sym_identifier] = ACTIONS(7), - [anon_sym_import] = ACTIONS(9), - [anon_sym_from] = ACTIONS(11), - [anon_sym_LPAREN] = ACTIONS(13), - [anon_sym_STAR] = ACTIONS(15), - [anon_sym_print] = ACTIONS(17), - [anon_sym_assert] = ACTIONS(19), - [anon_sym_return] = ACTIONS(21), - [anon_sym_del] = ACTIONS(23), - [anon_sym_raise] = ACTIONS(25), - [anon_sym_pass] = ACTIONS(27), - [anon_sym_break] = ACTIONS(29), - [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(322), - [anon_sym_match] = ACTIONS(322), - [anon_sym_DASH] = ACTIONS(47), - [anon_sym_PLUS] = ACTIONS(47), - [anon_sym_LBRACK] = ACTIONS(49), - [anon_sym_LBRACE] = ACTIONS(51), - [anon_sym_STAR_STAR] = ACTIONS(53), - [anon_sym_global] = ACTIONS(57), - [anon_sym_nonlocal] = ACTIONS(59), - [anon_sym_exec] = ACTIONS(61), - [anon_sym_type] = ACTIONS(63), - [anon_sym_not] = ACTIONS(69), - [anon_sym_TILDE] = ACTIONS(47), - [anon_sym_lambda] = ACTIONS(71), - [anon_sym_yield] = ACTIONS(73), - [sym_ellipsis] = ACTIONS(75), - [sym_integer] = ACTIONS(77), - [sym_float] = ACTIONS(75), - [anon_sym_await] = ACTIONS(79), - [sym_true] = ACTIONS(77), - [sym_false] = ACTIONS(77), - [sym_none] = ACTIONS(77), + [anon_sym_lazy] = ACTIONS(9), + [anon_sym_import] = ACTIONS(11), + [anon_sym_from] = ACTIONS(13), + [anon_sym_LPAREN] = ACTIONS(15), + [anon_sym_STAR] = ACTIONS(17), + [anon_sym_print] = ACTIONS(19), + [anon_sym_assert] = ACTIONS(21), + [anon_sym_return] = ACTIONS(23), + [anon_sym_del] = ACTIONS(25), + [anon_sym_raise] = ACTIONS(27), + [anon_sym_pass] = ACTIONS(29), + [anon_sym_break] = ACTIONS(31), + [anon_sym_continue] = ACTIONS(33), + [anon_sym_async] = ACTIONS(319), + [anon_sym_match] = ACTIONS(319), + [anon_sym_DASH] = ACTIONS(49), + [anon_sym_PLUS] = ACTIONS(49), + [anon_sym_LBRACK] = ACTIONS(51), + [anon_sym_LBRACE] = ACTIONS(53), + [anon_sym_STAR_STAR] = ACTIONS(55), + [anon_sym_global] = ACTIONS(59), + [anon_sym_nonlocal] = ACTIONS(61), + [anon_sym_exec] = ACTIONS(63), + [anon_sym_type] = ACTIONS(65), + [anon_sym_not] = ACTIONS(71), + [anon_sym_TILDE] = ACTIONS(49), + [anon_sym_lambda] = ACTIONS(73), + [anon_sym_yield] = ACTIONS(75), + [sym_ellipsis] = ACTIONS(77), + [sym_integer] = ACTIONS(79), + [sym_float] = ACTIONS(77), + [anon_sym_await] = ACTIONS(81), + [sym_true] = ACTIONS(79), + [sym_false] = ACTIONS(79), + [sym_none] = ACTIONS(79), [sym_comment] = ACTIONS(3), - [sym__newline] = ACTIONS(460), - [sym__indent] = ACTIONS(462), - [sym__string_start] = ACTIONS(81), - [sym__template_string_start] = ACTIONS(83), + [sym__newline] = ACTIONS(465), + [sym__indent] = ACTIONS(467), + [sym__string_start] = ACTIONS(83), + [sym__template_string_start] = ACTIONS(85), }, [STATE(104)] = { - [sym__simple_statements] = STATE(504), + [sym__simple_statements] = STATE(468), [sym_import_statement] = STATE(1332), [sym_future_import_statement] = STATE(1332), [sym_import_from_statement] = STATE(1332), [sym_print_statement] = STATE(1332), [sym_assert_statement] = STATE(1332), [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1158), + [sym_named_expression] = STATE(1156), [sym_return_statement] = STATE(1332), [sym_delete_statement] = STATE(1332), [sym_raise_statement] = STATE(1332), [sym_pass_statement] = STATE(1332), [sym_break_statement] = STATE(1332), [sym_continue_statement] = STATE(1332), - [sym_list_splat] = STATE(1549), - [sym_dictionary_splat] = STATE(1549), + [sym_list_splat] = STATE(1520), + [sym_dictionary_splat] = STATE(1520), [sym_global_statement] = STATE(1332), [sym_nonlocal_statement] = STATE(1332), [sym_exec_statement] = STATE(1332), [sym_type_alias_statement] = STATE(1332), - [sym_expression_list] = STATE(1551), - [sym_pattern] = STATE(1013), - [sym_tuple_pattern] = STATE(999), - [sym_list_pattern] = STATE(999), - [sym_list_splat_pattern] = STATE(999), - [sym_expression] = STATE(1185), - [sym_primary_expression] = STATE(779), - [sym_not_operator] = STATE(1158), - [sym_boolean_operator] = STATE(1158), - [sym_binary_operator] = STATE(908), - [sym_unary_operator] = STATE(908), - [sym_comparison_operator] = STATE(1158), - [sym_lambda] = STATE(1158), - [sym_assignment] = STATE(1551), - [sym_augmented_assignment] = STATE(1551), - [sym_pattern_list] = STATE(1024), - [sym_yield] = STATE(1551), - [sym_attribute] = STATE(494), - [sym_subscript] = STATE(494), - [sym_call] = STATE(908), - [sym_list] = STATE(908), - [sym_set] = STATE(908), - [sym_tuple] = STATE(908), - [sym_dictionary] = STATE(908), - [sym_list_comprehension] = STATE(908), - [sym_dictionary_comprehension] = STATE(908), - [sym_set_comprehension] = STATE(908), - [sym_generator_expression] = STATE(908), - [sym_parenthesized_expression] = STATE(908), - [sym_conditional_expression] = STATE(1158), - [sym_concatenated_string] = STATE(908), - [sym_string] = STATE(782), - [sym_concatenated_template_string] = STATE(908), - [sym_template_string] = STATE(763), - [sym_await] = STATE(908), + [sym_expression_list] = STATE(1522), + [sym_pattern] = STATE(1017), + [sym_tuple_pattern] = STATE(1001), + [sym_list_pattern] = STATE(1001), + [sym_list_splat_pattern] = STATE(1001), + [sym_expression] = STATE(1176), + [sym_primary_expression] = STATE(765), + [sym_not_operator] = STATE(1156), + [sym_boolean_operator] = STATE(1156), + [sym_binary_operator] = STATE(920), + [sym_unary_operator] = STATE(920), + [sym_comparison_operator] = STATE(1156), + [sym_lambda] = STATE(1156), + [sym_assignment] = STATE(1522), + [sym_augmented_assignment] = STATE(1522), + [sym_pattern_list] = STATE(1026), + [sym_yield] = STATE(1522), + [sym_attribute] = STATE(582), + [sym_subscript] = STATE(582), + [sym_call] = STATE(920), + [sym_list] = STATE(920), + [sym_set] = STATE(920), + [sym_tuple] = STATE(920), + [sym_dictionary] = STATE(920), + [sym_list_comprehension] = STATE(920), + [sym_dictionary_comprehension] = STATE(920), + [sym_set_comprehension] = STATE(920), + [sym_generator_expression] = STATE(920), + [sym_parenthesized_expression] = STATE(920), + [sym_conditional_expression] = STATE(1156), + [sym_concatenated_string] = STATE(920), + [sym_string] = STATE(775), + [sym_concatenated_template_string] = STATE(920), + [sym_template_string] = STATE(769), + [sym_await] = STATE(920), [sym_identifier] = ACTIONS(7), - [anon_sym_import] = ACTIONS(9), - [anon_sym_from] = ACTIONS(11), - [anon_sym_LPAREN] = ACTIONS(13), - [anon_sym_STAR] = ACTIONS(15), - [anon_sym_print] = ACTIONS(17), - [anon_sym_assert] = ACTIONS(19), - [anon_sym_return] = ACTIONS(21), - [anon_sym_del] = ACTIONS(23), - [anon_sym_raise] = ACTIONS(25), - [anon_sym_pass] = ACTIONS(27), - [anon_sym_break] = ACTIONS(29), - [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(322), - [anon_sym_match] = ACTIONS(322), - [anon_sym_DASH] = ACTIONS(47), - [anon_sym_PLUS] = ACTIONS(47), - [anon_sym_LBRACK] = ACTIONS(49), - [anon_sym_LBRACE] = ACTIONS(51), - [anon_sym_STAR_STAR] = ACTIONS(53), - [anon_sym_global] = ACTIONS(57), - [anon_sym_nonlocal] = ACTIONS(59), - [anon_sym_exec] = ACTIONS(61), - [anon_sym_type] = ACTIONS(63), - [anon_sym_not] = ACTIONS(69), - [anon_sym_TILDE] = ACTIONS(47), - [anon_sym_lambda] = ACTIONS(71), - [anon_sym_yield] = ACTIONS(73), - [sym_ellipsis] = ACTIONS(75), - [sym_integer] = ACTIONS(77), - [sym_float] = ACTIONS(75), - [anon_sym_await] = ACTIONS(79), - [sym_true] = ACTIONS(77), - [sym_false] = ACTIONS(77), - [sym_none] = ACTIONS(77), + [anon_sym_lazy] = ACTIONS(9), + [anon_sym_import] = ACTIONS(11), + [anon_sym_from] = ACTIONS(13), + [anon_sym_LPAREN] = ACTIONS(15), + [anon_sym_STAR] = ACTIONS(17), + [anon_sym_print] = ACTIONS(19), + [anon_sym_assert] = ACTIONS(21), + [anon_sym_return] = ACTIONS(23), + [anon_sym_del] = ACTIONS(25), + [anon_sym_raise] = ACTIONS(27), + [anon_sym_pass] = ACTIONS(29), + [anon_sym_break] = ACTIONS(31), + [anon_sym_continue] = ACTIONS(33), + [anon_sym_async] = ACTIONS(319), + [anon_sym_match] = ACTIONS(319), + [anon_sym_DASH] = ACTIONS(49), + [anon_sym_PLUS] = ACTIONS(49), + [anon_sym_LBRACK] = ACTIONS(51), + [anon_sym_LBRACE] = ACTIONS(53), + [anon_sym_STAR_STAR] = ACTIONS(55), + [anon_sym_global] = ACTIONS(59), + [anon_sym_nonlocal] = ACTIONS(61), + [anon_sym_exec] = ACTIONS(63), + [anon_sym_type] = ACTIONS(65), + [anon_sym_not] = ACTIONS(71), + [anon_sym_TILDE] = ACTIONS(49), + [anon_sym_lambda] = ACTIONS(73), + [anon_sym_yield] = ACTIONS(75), + [sym_ellipsis] = ACTIONS(77), + [sym_integer] = ACTIONS(79), + [sym_float] = ACTIONS(77), + [anon_sym_await] = ACTIONS(81), + [sym_true] = ACTIONS(79), + [sym_false] = ACTIONS(79), + [sym_none] = ACTIONS(79), [sym_comment] = ACTIONS(3), - [sym__newline] = ACTIONS(464), - [sym__indent] = ACTIONS(466), - [sym__string_start] = ACTIONS(81), - [sym__template_string_start] = ACTIONS(83), + [sym__newline] = ACTIONS(469), + [sym__indent] = ACTIONS(471), + [sym__string_start] = ACTIONS(83), + [sym__template_string_start] = ACTIONS(85), }, [STATE(105)] = { - [sym__simple_statements] = STATE(589), + [sym__simple_statements] = STATE(594), + [sym_import_statement] = STATE(1301), + [sym_future_import_statement] = STATE(1301), + [sym_import_from_statement] = STATE(1301), + [sym_print_statement] = STATE(1301), + [sym_assert_statement] = STATE(1301), + [sym_expression_statement] = STATE(1301), + [sym_named_expression] = STATE(1156), + [sym_return_statement] = STATE(1301), + [sym_delete_statement] = STATE(1301), + [sym_raise_statement] = STATE(1301), + [sym_pass_statement] = STATE(1301), + [sym_break_statement] = STATE(1301), + [sym_continue_statement] = STATE(1301), + [sym_list_splat] = STATE(1520), + [sym_dictionary_splat] = STATE(1520), + [sym_global_statement] = STATE(1301), + [sym_nonlocal_statement] = STATE(1301), + [sym_exec_statement] = STATE(1301), + [sym_type_alias_statement] = STATE(1301), + [sym_expression_list] = STATE(1522), + [sym_pattern] = STATE(1017), + [sym_tuple_pattern] = STATE(1001), + [sym_list_pattern] = STATE(1001), + [sym_list_splat_pattern] = STATE(1001), + [sym_expression] = STATE(1176), + [sym_primary_expression] = STATE(765), + [sym_not_operator] = STATE(1156), + [sym_boolean_operator] = STATE(1156), + [sym_binary_operator] = STATE(920), + [sym_unary_operator] = STATE(920), + [sym_comparison_operator] = STATE(1156), + [sym_lambda] = STATE(1156), + [sym_assignment] = STATE(1522), + [sym_augmented_assignment] = STATE(1522), + [sym_pattern_list] = STATE(1026), + [sym_yield] = STATE(1522), + [sym_attribute] = STATE(582), + [sym_subscript] = STATE(582), + [sym_call] = STATE(920), + [sym_list] = STATE(920), + [sym_set] = STATE(920), + [sym_tuple] = STATE(920), + [sym_dictionary] = STATE(920), + [sym_list_comprehension] = STATE(920), + [sym_dictionary_comprehension] = STATE(920), + [sym_set_comprehension] = STATE(920), + [sym_generator_expression] = STATE(920), + [sym_parenthesized_expression] = STATE(920), + [sym_conditional_expression] = STATE(1156), + [sym_concatenated_string] = STATE(920), + [sym_string] = STATE(775), + [sym_concatenated_template_string] = STATE(920), + [sym_template_string] = STATE(769), + [sym_await] = STATE(920), + [sym_identifier] = ACTIONS(7), + [anon_sym_lazy] = ACTIONS(9), + [anon_sym_import] = ACTIONS(11), + [anon_sym_from] = ACTIONS(13), + [anon_sym_LPAREN] = ACTIONS(15), + [anon_sym_STAR] = ACTIONS(17), + [anon_sym_print] = ACTIONS(19), + [anon_sym_assert] = ACTIONS(21), + [anon_sym_return] = ACTIONS(23), + [anon_sym_del] = ACTIONS(25), + [anon_sym_raise] = ACTIONS(27), + [anon_sym_pass] = ACTIONS(29), + [anon_sym_break] = ACTIONS(31), + [anon_sym_continue] = ACTIONS(33), + [anon_sym_async] = ACTIONS(319), + [anon_sym_match] = ACTIONS(319), + [anon_sym_DASH] = ACTIONS(49), + [anon_sym_PLUS] = ACTIONS(49), + [anon_sym_LBRACK] = ACTIONS(51), + [anon_sym_LBRACE] = ACTIONS(53), + [anon_sym_STAR_STAR] = ACTIONS(55), + [anon_sym_global] = ACTIONS(59), + [anon_sym_nonlocal] = ACTIONS(61), + [anon_sym_exec] = ACTIONS(63), + [anon_sym_type] = ACTIONS(65), + [anon_sym_not] = ACTIONS(71), + [anon_sym_TILDE] = ACTIONS(49), + [anon_sym_lambda] = ACTIONS(73), + [anon_sym_yield] = ACTIONS(75), + [sym_ellipsis] = ACTIONS(77), + [sym_integer] = ACTIONS(79), + [sym_float] = ACTIONS(77), + [anon_sym_await] = ACTIONS(81), + [sym_true] = ACTIONS(79), + [sym_false] = ACTIONS(79), + [sym_none] = ACTIONS(79), + [sym_comment] = ACTIONS(3), + [sym__newline] = ACTIONS(473), + [sym__indent] = ACTIONS(475), + [sym__string_start] = ACTIONS(83), + [sym__template_string_start] = ACTIONS(85), + }, + [STATE(106)] = { + [sym__simple_statements] = STATE(553), [sym_import_statement] = STATE(1332), [sym_future_import_statement] = STATE(1332), [sym_import_from_statement] = STATE(1332), [sym_print_statement] = STATE(1332), [sym_assert_statement] = STATE(1332), [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1158), + [sym_named_expression] = STATE(1156), [sym_return_statement] = STATE(1332), [sym_delete_statement] = STATE(1332), [sym_raise_statement] = STATE(1332), [sym_pass_statement] = STATE(1332), [sym_break_statement] = STATE(1332), [sym_continue_statement] = STATE(1332), - [sym_list_splat] = STATE(1549), - [sym_dictionary_splat] = STATE(1549), + [sym_list_splat] = STATE(1520), + [sym_dictionary_splat] = STATE(1520), [sym_global_statement] = STATE(1332), [sym_nonlocal_statement] = STATE(1332), [sym_exec_statement] = STATE(1332), [sym_type_alias_statement] = STATE(1332), - [sym_expression_list] = STATE(1551), - [sym_pattern] = STATE(1013), - [sym_tuple_pattern] = STATE(999), - [sym_list_pattern] = STATE(999), - [sym_list_splat_pattern] = STATE(999), - [sym_expression] = STATE(1185), - [sym_primary_expression] = STATE(779), - [sym_not_operator] = STATE(1158), - [sym_boolean_operator] = STATE(1158), - [sym_binary_operator] = STATE(908), - [sym_unary_operator] = STATE(908), - [sym_comparison_operator] = STATE(1158), - [sym_lambda] = STATE(1158), - [sym_assignment] = STATE(1551), - [sym_augmented_assignment] = STATE(1551), - [sym_pattern_list] = STATE(1024), - [sym_yield] = STATE(1551), - [sym_attribute] = STATE(494), - [sym_subscript] = STATE(494), - [sym_call] = STATE(908), - [sym_list] = STATE(908), - [sym_set] = STATE(908), - [sym_tuple] = STATE(908), - [sym_dictionary] = STATE(908), - [sym_list_comprehension] = STATE(908), - [sym_dictionary_comprehension] = STATE(908), - [sym_set_comprehension] = STATE(908), - [sym_generator_expression] = STATE(908), - [sym_parenthesized_expression] = STATE(908), - [sym_conditional_expression] = STATE(1158), - [sym_concatenated_string] = STATE(908), - [sym_string] = STATE(782), - [sym_concatenated_template_string] = STATE(908), - [sym_template_string] = STATE(763), - [sym_await] = STATE(908), + [sym_expression_list] = STATE(1522), + [sym_pattern] = STATE(1017), + [sym_tuple_pattern] = STATE(1001), + [sym_list_pattern] = STATE(1001), + [sym_list_splat_pattern] = STATE(1001), + [sym_expression] = STATE(1176), + [sym_primary_expression] = STATE(765), + [sym_not_operator] = STATE(1156), + [sym_boolean_operator] = STATE(1156), + [sym_binary_operator] = STATE(920), + [sym_unary_operator] = STATE(920), + [sym_comparison_operator] = STATE(1156), + [sym_lambda] = STATE(1156), + [sym_assignment] = STATE(1522), + [sym_augmented_assignment] = STATE(1522), + [sym_pattern_list] = STATE(1026), + [sym_yield] = STATE(1522), + [sym_attribute] = STATE(582), + [sym_subscript] = STATE(582), + [sym_call] = STATE(920), + [sym_list] = STATE(920), + [sym_set] = STATE(920), + [sym_tuple] = STATE(920), + [sym_dictionary] = STATE(920), + [sym_list_comprehension] = STATE(920), + [sym_dictionary_comprehension] = STATE(920), + [sym_set_comprehension] = STATE(920), + [sym_generator_expression] = STATE(920), + [sym_parenthesized_expression] = STATE(920), + [sym_conditional_expression] = STATE(1156), + [sym_concatenated_string] = STATE(920), + [sym_string] = STATE(775), + [sym_concatenated_template_string] = STATE(920), + [sym_template_string] = STATE(769), + [sym_await] = STATE(920), [sym_identifier] = ACTIONS(7), - [anon_sym_import] = ACTIONS(9), - [anon_sym_from] = ACTIONS(11), - [anon_sym_LPAREN] = ACTIONS(13), - [anon_sym_STAR] = ACTIONS(15), - [anon_sym_print] = ACTIONS(17), - [anon_sym_assert] = ACTIONS(19), - [anon_sym_return] = ACTIONS(21), - [anon_sym_del] = ACTIONS(23), - [anon_sym_raise] = ACTIONS(25), - [anon_sym_pass] = ACTIONS(27), - [anon_sym_break] = ACTIONS(29), - [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(322), - [anon_sym_match] = ACTIONS(322), - [anon_sym_DASH] = ACTIONS(47), - [anon_sym_PLUS] = ACTIONS(47), - [anon_sym_LBRACK] = ACTIONS(49), - [anon_sym_LBRACE] = ACTIONS(51), - [anon_sym_STAR_STAR] = ACTIONS(53), - [anon_sym_global] = ACTIONS(57), - [anon_sym_nonlocal] = ACTIONS(59), - [anon_sym_exec] = ACTIONS(61), - [anon_sym_type] = ACTIONS(63), - [anon_sym_not] = ACTIONS(69), - [anon_sym_TILDE] = ACTIONS(47), - [anon_sym_lambda] = ACTIONS(71), - [anon_sym_yield] = ACTIONS(73), - [sym_ellipsis] = ACTIONS(75), - [sym_integer] = ACTIONS(77), - [sym_float] = ACTIONS(75), - [anon_sym_await] = ACTIONS(79), - [sym_true] = ACTIONS(77), - [sym_false] = ACTIONS(77), - [sym_none] = ACTIONS(77), + [anon_sym_lazy] = ACTIONS(9), + [anon_sym_import] = ACTIONS(11), + [anon_sym_from] = ACTIONS(13), + [anon_sym_LPAREN] = ACTIONS(15), + [anon_sym_STAR] = ACTIONS(17), + [anon_sym_print] = ACTIONS(19), + [anon_sym_assert] = ACTIONS(21), + [anon_sym_return] = ACTIONS(23), + [anon_sym_del] = ACTIONS(25), + [anon_sym_raise] = ACTIONS(27), + [anon_sym_pass] = ACTIONS(29), + [anon_sym_break] = ACTIONS(31), + [anon_sym_continue] = ACTIONS(33), + [anon_sym_async] = ACTIONS(319), + [anon_sym_match] = ACTIONS(319), + [anon_sym_DASH] = ACTIONS(49), + [anon_sym_PLUS] = ACTIONS(49), + [anon_sym_LBRACK] = ACTIONS(51), + [anon_sym_LBRACE] = ACTIONS(53), + [anon_sym_STAR_STAR] = ACTIONS(55), + [anon_sym_global] = ACTIONS(59), + [anon_sym_nonlocal] = ACTIONS(61), + [anon_sym_exec] = ACTIONS(63), + [anon_sym_type] = ACTIONS(65), + [anon_sym_not] = ACTIONS(71), + [anon_sym_TILDE] = ACTIONS(49), + [anon_sym_lambda] = ACTIONS(73), + [anon_sym_yield] = ACTIONS(75), + [sym_ellipsis] = ACTIONS(77), + [sym_integer] = ACTIONS(79), + [sym_float] = ACTIONS(77), + [anon_sym_await] = ACTIONS(81), + [sym_true] = ACTIONS(79), + [sym_false] = ACTIONS(79), + [sym_none] = ACTIONS(79), [sym_comment] = ACTIONS(3), - [sym__newline] = ACTIONS(468), - [sym__indent] = ACTIONS(470), - [sym__string_start] = ACTIONS(81), - [sym__template_string_start] = ACTIONS(83), + [sym__newline] = ACTIONS(477), + [sym__indent] = ACTIONS(479), + [sym__string_start] = ACTIONS(83), + [sym__template_string_start] = ACTIONS(85), }, - [STATE(106)] = { - [sym__simple_statements] = STATE(459), - [sym_import_statement] = STATE(1348), - [sym_future_import_statement] = STATE(1348), - [sym_import_from_statement] = STATE(1348), - [sym_print_statement] = STATE(1348), - [sym_assert_statement] = STATE(1348), - [sym_expression_statement] = STATE(1348), - [sym_named_expression] = STATE(1158), - [sym_return_statement] = STATE(1348), - [sym_delete_statement] = STATE(1348), - [sym_raise_statement] = STATE(1348), - [sym_pass_statement] = STATE(1348), - [sym_break_statement] = STATE(1348), - [sym_continue_statement] = STATE(1348), - [sym_list_splat] = STATE(1549), - [sym_dictionary_splat] = STATE(1549), - [sym_global_statement] = STATE(1348), - [sym_nonlocal_statement] = STATE(1348), - [sym_exec_statement] = STATE(1348), - [sym_type_alias_statement] = STATE(1348), - [sym_expression_list] = STATE(1551), - [sym_pattern] = STATE(1013), - [sym_tuple_pattern] = STATE(999), - [sym_list_pattern] = STATE(999), - [sym_list_splat_pattern] = STATE(999), - [sym_expression] = STATE(1185), - [sym_primary_expression] = STATE(779), - [sym_not_operator] = STATE(1158), - [sym_boolean_operator] = STATE(1158), - [sym_binary_operator] = STATE(908), - [sym_unary_operator] = STATE(908), - [sym_comparison_operator] = STATE(1158), - [sym_lambda] = STATE(1158), - [sym_assignment] = STATE(1551), - [sym_augmented_assignment] = STATE(1551), - [sym_pattern_list] = STATE(1024), - [sym_yield] = STATE(1551), - [sym_attribute] = STATE(494), - [sym_subscript] = STATE(494), - [sym_call] = STATE(908), - [sym_list] = STATE(908), - [sym_set] = STATE(908), - [sym_tuple] = STATE(908), - [sym_dictionary] = STATE(908), - [sym_list_comprehension] = STATE(908), - [sym_dictionary_comprehension] = STATE(908), - [sym_set_comprehension] = STATE(908), - [sym_generator_expression] = STATE(908), - [sym_parenthesized_expression] = STATE(908), - [sym_conditional_expression] = STATE(1158), - [sym_concatenated_string] = STATE(908), - [sym_string] = STATE(782), - [sym_concatenated_template_string] = STATE(908), - [sym_template_string] = STATE(763), - [sym_await] = STATE(908), + [STATE(107)] = { + [sym__simple_statements] = STATE(613), + [sym_import_statement] = STATE(1301), + [sym_future_import_statement] = STATE(1301), + [sym_import_from_statement] = STATE(1301), + [sym_print_statement] = STATE(1301), + [sym_assert_statement] = STATE(1301), + [sym_expression_statement] = STATE(1301), + [sym_named_expression] = STATE(1156), + [sym_return_statement] = STATE(1301), + [sym_delete_statement] = STATE(1301), + [sym_raise_statement] = STATE(1301), + [sym_pass_statement] = STATE(1301), + [sym_break_statement] = STATE(1301), + [sym_continue_statement] = STATE(1301), + [sym_list_splat] = STATE(1520), + [sym_dictionary_splat] = STATE(1520), + [sym_global_statement] = STATE(1301), + [sym_nonlocal_statement] = STATE(1301), + [sym_exec_statement] = STATE(1301), + [sym_type_alias_statement] = STATE(1301), + [sym_expression_list] = STATE(1522), + [sym_pattern] = STATE(1017), + [sym_tuple_pattern] = STATE(1001), + [sym_list_pattern] = STATE(1001), + [sym_list_splat_pattern] = STATE(1001), + [sym_expression] = STATE(1176), + [sym_primary_expression] = STATE(765), + [sym_not_operator] = STATE(1156), + [sym_boolean_operator] = STATE(1156), + [sym_binary_operator] = STATE(920), + [sym_unary_operator] = STATE(920), + [sym_comparison_operator] = STATE(1156), + [sym_lambda] = STATE(1156), + [sym_assignment] = STATE(1522), + [sym_augmented_assignment] = STATE(1522), + [sym_pattern_list] = STATE(1026), + [sym_yield] = STATE(1522), + [sym_attribute] = STATE(582), + [sym_subscript] = STATE(582), + [sym_call] = STATE(920), + [sym_list] = STATE(920), + [sym_set] = STATE(920), + [sym_tuple] = STATE(920), + [sym_dictionary] = STATE(920), + [sym_list_comprehension] = STATE(920), + [sym_dictionary_comprehension] = STATE(920), + [sym_set_comprehension] = STATE(920), + [sym_generator_expression] = STATE(920), + [sym_parenthesized_expression] = STATE(920), + [sym_conditional_expression] = STATE(1156), + [sym_concatenated_string] = STATE(920), + [sym_string] = STATE(775), + [sym_concatenated_template_string] = STATE(920), + [sym_template_string] = STATE(769), + [sym_await] = STATE(920), [sym_identifier] = ACTIONS(7), - [anon_sym_import] = ACTIONS(9), - [anon_sym_from] = ACTIONS(11), - [anon_sym_LPAREN] = ACTIONS(13), - [anon_sym_STAR] = ACTIONS(15), - [anon_sym_print] = ACTIONS(17), - [anon_sym_assert] = ACTIONS(19), - [anon_sym_return] = ACTIONS(21), - [anon_sym_del] = ACTIONS(23), - [anon_sym_raise] = ACTIONS(25), - [anon_sym_pass] = ACTIONS(27), - [anon_sym_break] = ACTIONS(29), - [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(322), - [anon_sym_match] = ACTIONS(322), - [anon_sym_DASH] = ACTIONS(47), - [anon_sym_PLUS] = ACTIONS(47), - [anon_sym_LBRACK] = ACTIONS(49), - [anon_sym_LBRACE] = ACTIONS(51), - [anon_sym_STAR_STAR] = ACTIONS(53), - [anon_sym_global] = ACTIONS(57), - [anon_sym_nonlocal] = ACTIONS(59), - [anon_sym_exec] = ACTIONS(61), - [anon_sym_type] = ACTIONS(63), - [anon_sym_not] = ACTIONS(69), - [anon_sym_TILDE] = ACTIONS(47), - [anon_sym_lambda] = ACTIONS(71), - [anon_sym_yield] = ACTIONS(73), - [sym_ellipsis] = ACTIONS(75), - [sym_integer] = ACTIONS(77), - [sym_float] = ACTIONS(75), - [anon_sym_await] = ACTIONS(79), - [sym_true] = ACTIONS(77), - [sym_false] = ACTIONS(77), - [sym_none] = ACTIONS(77), + [anon_sym_lazy] = ACTIONS(9), + [anon_sym_import] = ACTIONS(11), + [anon_sym_from] = ACTIONS(13), + [anon_sym_LPAREN] = ACTIONS(15), + [anon_sym_STAR] = ACTIONS(17), + [anon_sym_print] = ACTIONS(19), + [anon_sym_assert] = ACTIONS(21), + [anon_sym_return] = ACTIONS(23), + [anon_sym_del] = ACTIONS(25), + [anon_sym_raise] = ACTIONS(27), + [anon_sym_pass] = ACTIONS(29), + [anon_sym_break] = ACTIONS(31), + [anon_sym_continue] = ACTIONS(33), + [anon_sym_async] = ACTIONS(319), + [anon_sym_match] = ACTIONS(319), + [anon_sym_DASH] = ACTIONS(49), + [anon_sym_PLUS] = ACTIONS(49), + [anon_sym_LBRACK] = ACTIONS(51), + [anon_sym_LBRACE] = ACTIONS(53), + [anon_sym_STAR_STAR] = ACTIONS(55), + [anon_sym_global] = ACTIONS(59), + [anon_sym_nonlocal] = ACTIONS(61), + [anon_sym_exec] = ACTIONS(63), + [anon_sym_type] = ACTIONS(65), + [anon_sym_not] = ACTIONS(71), + [anon_sym_TILDE] = ACTIONS(49), + [anon_sym_lambda] = ACTIONS(73), + [anon_sym_yield] = ACTIONS(75), + [sym_ellipsis] = ACTIONS(77), + [sym_integer] = ACTIONS(79), + [sym_float] = ACTIONS(77), + [anon_sym_await] = ACTIONS(81), + [sym_true] = ACTIONS(79), + [sym_false] = ACTIONS(79), + [sym_none] = ACTIONS(79), [sym_comment] = ACTIONS(3), - [sym__newline] = ACTIONS(472), - [sym__indent] = ACTIONS(474), - [sym__string_start] = ACTIONS(81), - [sym__template_string_start] = ACTIONS(83), + [sym__newline] = ACTIONS(481), + [sym__indent] = ACTIONS(483), + [sym__string_start] = ACTIONS(83), + [sym__template_string_start] = ACTIONS(85), }, - [STATE(107)] = { - [sym__simple_statements] = STATE(488), + [STATE(108)] = { + [sym__simple_statements] = STATE(453), [sym_import_statement] = STATE(1332), [sym_future_import_statement] = STATE(1332), [sym_import_from_statement] = STATE(1332), [sym_print_statement] = STATE(1332), [sym_assert_statement] = STATE(1332), [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1158), + [sym_named_expression] = STATE(1156), [sym_return_statement] = STATE(1332), [sym_delete_statement] = STATE(1332), [sym_raise_statement] = STATE(1332), [sym_pass_statement] = STATE(1332), [sym_break_statement] = STATE(1332), [sym_continue_statement] = STATE(1332), - [sym_list_splat] = STATE(1549), - [sym_dictionary_splat] = STATE(1549), + [sym_list_splat] = STATE(1520), + [sym_dictionary_splat] = STATE(1520), [sym_global_statement] = STATE(1332), [sym_nonlocal_statement] = STATE(1332), [sym_exec_statement] = STATE(1332), [sym_type_alias_statement] = STATE(1332), - [sym_expression_list] = STATE(1551), - [sym_pattern] = STATE(1013), - [sym_tuple_pattern] = STATE(999), - [sym_list_pattern] = STATE(999), - [sym_list_splat_pattern] = STATE(999), - [sym_expression] = STATE(1185), - [sym_primary_expression] = STATE(779), - [sym_not_operator] = STATE(1158), - [sym_boolean_operator] = STATE(1158), - [sym_binary_operator] = STATE(908), - [sym_unary_operator] = STATE(908), - [sym_comparison_operator] = STATE(1158), - [sym_lambda] = STATE(1158), - [sym_assignment] = STATE(1551), - [sym_augmented_assignment] = STATE(1551), - [sym_pattern_list] = STATE(1024), - [sym_yield] = STATE(1551), - [sym_attribute] = STATE(494), - [sym_subscript] = STATE(494), - [sym_call] = STATE(908), - [sym_list] = STATE(908), - [sym_set] = STATE(908), - [sym_tuple] = STATE(908), - [sym_dictionary] = STATE(908), - [sym_list_comprehension] = STATE(908), - [sym_dictionary_comprehension] = STATE(908), - [sym_set_comprehension] = STATE(908), - [sym_generator_expression] = STATE(908), - [sym_parenthesized_expression] = STATE(908), - [sym_conditional_expression] = STATE(1158), - [sym_concatenated_string] = STATE(908), - [sym_string] = STATE(782), - [sym_concatenated_template_string] = STATE(908), - [sym_template_string] = STATE(763), - [sym_await] = STATE(908), - [sym_identifier] = ACTIONS(7), - [anon_sym_import] = ACTIONS(9), - [anon_sym_from] = ACTIONS(11), - [anon_sym_LPAREN] = ACTIONS(13), - [anon_sym_STAR] = ACTIONS(15), - [anon_sym_print] = ACTIONS(17), - [anon_sym_assert] = ACTIONS(19), - [anon_sym_return] = ACTIONS(21), - [anon_sym_del] = ACTIONS(23), - [anon_sym_raise] = ACTIONS(25), - [anon_sym_pass] = ACTIONS(27), - [anon_sym_break] = ACTIONS(29), - [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(322), - [anon_sym_match] = ACTIONS(322), - [anon_sym_DASH] = ACTIONS(47), - [anon_sym_PLUS] = ACTIONS(47), - [anon_sym_LBRACK] = ACTIONS(49), - [anon_sym_LBRACE] = ACTIONS(51), - [anon_sym_STAR_STAR] = ACTIONS(53), - [anon_sym_global] = ACTIONS(57), - [anon_sym_nonlocal] = ACTIONS(59), - [anon_sym_exec] = ACTIONS(61), - [anon_sym_type] = ACTIONS(63), - [anon_sym_not] = ACTIONS(69), - [anon_sym_TILDE] = ACTIONS(47), - [anon_sym_lambda] = ACTIONS(71), - [anon_sym_yield] = ACTIONS(73), - [sym_ellipsis] = ACTIONS(75), - [sym_integer] = ACTIONS(77), - [sym_float] = ACTIONS(75), - [anon_sym_await] = ACTIONS(79), - [sym_true] = ACTIONS(77), - [sym_false] = ACTIONS(77), - [sym_none] = ACTIONS(77), - [sym_comment] = ACTIONS(3), - [sym__newline] = ACTIONS(476), - [sym__indent] = ACTIONS(478), - [sym__string_start] = ACTIONS(81), - [sym__template_string_start] = ACTIONS(83), - }, - [STATE(108)] = { - [sym__simple_statements] = STATE(496), - [sym_import_statement] = STATE(1348), - [sym_future_import_statement] = STATE(1348), - [sym_import_from_statement] = STATE(1348), - [sym_print_statement] = STATE(1348), - [sym_assert_statement] = STATE(1348), - [sym_expression_statement] = STATE(1348), - [sym_named_expression] = STATE(1158), - [sym_return_statement] = STATE(1348), - [sym_delete_statement] = STATE(1348), - [sym_raise_statement] = STATE(1348), - [sym_pass_statement] = STATE(1348), - [sym_break_statement] = STATE(1348), - [sym_continue_statement] = STATE(1348), - [sym_list_splat] = STATE(1549), - [sym_dictionary_splat] = STATE(1549), - [sym_global_statement] = STATE(1348), - [sym_nonlocal_statement] = STATE(1348), - [sym_exec_statement] = STATE(1348), - [sym_type_alias_statement] = STATE(1348), - [sym_expression_list] = STATE(1551), - [sym_pattern] = STATE(1013), - [sym_tuple_pattern] = STATE(999), - [sym_list_pattern] = STATE(999), - [sym_list_splat_pattern] = STATE(999), - [sym_expression] = STATE(1185), - [sym_primary_expression] = STATE(779), - [sym_not_operator] = STATE(1158), - [sym_boolean_operator] = STATE(1158), - [sym_binary_operator] = STATE(908), - [sym_unary_operator] = STATE(908), - [sym_comparison_operator] = STATE(1158), - [sym_lambda] = STATE(1158), - [sym_assignment] = STATE(1551), - [sym_augmented_assignment] = STATE(1551), - [sym_pattern_list] = STATE(1024), - [sym_yield] = STATE(1551), - [sym_attribute] = STATE(494), - [sym_subscript] = STATE(494), - [sym_call] = STATE(908), - [sym_list] = STATE(908), - [sym_set] = STATE(908), - [sym_tuple] = STATE(908), - [sym_dictionary] = STATE(908), - [sym_list_comprehension] = STATE(908), - [sym_dictionary_comprehension] = STATE(908), - [sym_set_comprehension] = STATE(908), - [sym_generator_expression] = STATE(908), - [sym_parenthesized_expression] = STATE(908), - [sym_conditional_expression] = STATE(1158), - [sym_concatenated_string] = STATE(908), - [sym_string] = STATE(782), - [sym_concatenated_template_string] = STATE(908), - [sym_template_string] = STATE(763), - [sym_await] = STATE(908), + [sym_expression_list] = STATE(1522), + [sym_pattern] = STATE(1017), + [sym_tuple_pattern] = STATE(1001), + [sym_list_pattern] = STATE(1001), + [sym_list_splat_pattern] = STATE(1001), + [sym_expression] = STATE(1176), + [sym_primary_expression] = STATE(765), + [sym_not_operator] = STATE(1156), + [sym_boolean_operator] = STATE(1156), + [sym_binary_operator] = STATE(920), + [sym_unary_operator] = STATE(920), + [sym_comparison_operator] = STATE(1156), + [sym_lambda] = STATE(1156), + [sym_assignment] = STATE(1522), + [sym_augmented_assignment] = STATE(1522), + [sym_pattern_list] = STATE(1026), + [sym_yield] = STATE(1522), + [sym_attribute] = STATE(582), + [sym_subscript] = STATE(582), + [sym_call] = STATE(920), + [sym_list] = STATE(920), + [sym_set] = STATE(920), + [sym_tuple] = STATE(920), + [sym_dictionary] = STATE(920), + [sym_list_comprehension] = STATE(920), + [sym_dictionary_comprehension] = STATE(920), + [sym_set_comprehension] = STATE(920), + [sym_generator_expression] = STATE(920), + [sym_parenthesized_expression] = STATE(920), + [sym_conditional_expression] = STATE(1156), + [sym_concatenated_string] = STATE(920), + [sym_string] = STATE(775), + [sym_concatenated_template_string] = STATE(920), + [sym_template_string] = STATE(769), + [sym_await] = STATE(920), [sym_identifier] = ACTIONS(7), - [anon_sym_import] = ACTIONS(9), - [anon_sym_from] = ACTIONS(11), - [anon_sym_LPAREN] = ACTIONS(13), - [anon_sym_STAR] = ACTIONS(15), - [anon_sym_print] = ACTIONS(17), - [anon_sym_assert] = ACTIONS(19), - [anon_sym_return] = ACTIONS(21), - [anon_sym_del] = ACTIONS(23), - [anon_sym_raise] = ACTIONS(25), - [anon_sym_pass] = ACTIONS(27), - [anon_sym_break] = ACTIONS(29), - [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(322), - [anon_sym_match] = ACTIONS(322), - [anon_sym_DASH] = ACTIONS(47), - [anon_sym_PLUS] = ACTIONS(47), - [anon_sym_LBRACK] = ACTIONS(49), - [anon_sym_LBRACE] = ACTIONS(51), - [anon_sym_STAR_STAR] = ACTIONS(53), - [anon_sym_global] = ACTIONS(57), - [anon_sym_nonlocal] = ACTIONS(59), - [anon_sym_exec] = ACTIONS(61), - [anon_sym_type] = ACTIONS(63), - [anon_sym_not] = ACTIONS(69), - [anon_sym_TILDE] = ACTIONS(47), - [anon_sym_lambda] = ACTIONS(71), - [anon_sym_yield] = ACTIONS(73), - [sym_ellipsis] = ACTIONS(75), - [sym_integer] = ACTIONS(77), - [sym_float] = ACTIONS(75), - [anon_sym_await] = ACTIONS(79), - [sym_true] = ACTIONS(77), - [sym_false] = ACTIONS(77), - [sym_none] = ACTIONS(77), + [anon_sym_lazy] = ACTIONS(9), + [anon_sym_import] = ACTIONS(11), + [anon_sym_from] = ACTIONS(13), + [anon_sym_LPAREN] = ACTIONS(15), + [anon_sym_STAR] = ACTIONS(17), + [anon_sym_print] = ACTIONS(19), + [anon_sym_assert] = ACTIONS(21), + [anon_sym_return] = ACTIONS(23), + [anon_sym_del] = ACTIONS(25), + [anon_sym_raise] = ACTIONS(27), + [anon_sym_pass] = ACTIONS(29), + [anon_sym_break] = ACTIONS(31), + [anon_sym_continue] = ACTIONS(33), + [anon_sym_async] = ACTIONS(319), + [anon_sym_match] = ACTIONS(319), + [anon_sym_DASH] = ACTIONS(49), + [anon_sym_PLUS] = ACTIONS(49), + [anon_sym_LBRACK] = ACTIONS(51), + [anon_sym_LBRACE] = ACTIONS(53), + [anon_sym_STAR_STAR] = ACTIONS(55), + [anon_sym_global] = ACTIONS(59), + [anon_sym_nonlocal] = ACTIONS(61), + [anon_sym_exec] = ACTIONS(63), + [anon_sym_type] = ACTIONS(65), + [anon_sym_not] = ACTIONS(71), + [anon_sym_TILDE] = ACTIONS(49), + [anon_sym_lambda] = ACTIONS(73), + [anon_sym_yield] = ACTIONS(75), + [sym_ellipsis] = ACTIONS(77), + [sym_integer] = ACTIONS(79), + [sym_float] = ACTIONS(77), + [anon_sym_await] = ACTIONS(81), + [sym_true] = ACTIONS(79), + [sym_false] = ACTIONS(79), + [sym_none] = ACTIONS(79), [sym_comment] = ACTIONS(3), - [sym__newline] = ACTIONS(480), - [sym__indent] = ACTIONS(482), - [sym__string_start] = ACTIONS(81), - [sym__template_string_start] = ACTIONS(83), + [sym__newline] = ACTIONS(485), + [sym__indent] = ACTIONS(487), + [sym__string_start] = ACTIONS(83), + [sym__template_string_start] = ACTIONS(85), }, [STATE(109)] = { - [sym__simple_statements] = STATE(531), - [sym_import_statement] = STATE(1348), - [sym_future_import_statement] = STATE(1348), - [sym_import_from_statement] = STATE(1348), - [sym_print_statement] = STATE(1348), - [sym_assert_statement] = STATE(1348), - [sym_expression_statement] = STATE(1348), - [sym_named_expression] = STATE(1158), - [sym_return_statement] = STATE(1348), - [sym_delete_statement] = STATE(1348), - [sym_raise_statement] = STATE(1348), - [sym_pass_statement] = STATE(1348), - [sym_break_statement] = STATE(1348), - [sym_continue_statement] = STATE(1348), - [sym_list_splat] = STATE(1549), - [sym_dictionary_splat] = STATE(1549), - [sym_global_statement] = STATE(1348), - [sym_nonlocal_statement] = STATE(1348), - [sym_exec_statement] = STATE(1348), - [sym_type_alias_statement] = STATE(1348), - [sym_expression_list] = STATE(1551), - [sym_pattern] = STATE(1013), - [sym_tuple_pattern] = STATE(999), - [sym_list_pattern] = STATE(999), - [sym_list_splat_pattern] = STATE(999), - [sym_expression] = STATE(1185), - [sym_primary_expression] = STATE(779), - [sym_not_operator] = STATE(1158), - [sym_boolean_operator] = STATE(1158), - [sym_binary_operator] = STATE(908), - [sym_unary_operator] = STATE(908), - [sym_comparison_operator] = STATE(1158), - [sym_lambda] = STATE(1158), - [sym_assignment] = STATE(1551), - [sym_augmented_assignment] = STATE(1551), - [sym_pattern_list] = STATE(1024), - [sym_yield] = STATE(1551), - [sym_attribute] = STATE(494), - [sym_subscript] = STATE(494), - [sym_call] = STATE(908), - [sym_list] = STATE(908), - [sym_set] = STATE(908), - [sym_tuple] = STATE(908), - [sym_dictionary] = STATE(908), - [sym_list_comprehension] = STATE(908), - [sym_dictionary_comprehension] = STATE(908), - [sym_set_comprehension] = STATE(908), - [sym_generator_expression] = STATE(908), - [sym_parenthesized_expression] = STATE(908), - [sym_conditional_expression] = STATE(1158), - [sym_concatenated_string] = STATE(908), - [sym_string] = STATE(782), - [sym_concatenated_template_string] = STATE(908), - [sym_template_string] = STATE(763), - [sym_await] = STATE(908), + [sym__simple_statements] = STATE(442), + [sym_import_statement] = STATE(1301), + [sym_future_import_statement] = STATE(1301), + [sym_import_from_statement] = STATE(1301), + [sym_print_statement] = STATE(1301), + [sym_assert_statement] = STATE(1301), + [sym_expression_statement] = STATE(1301), + [sym_named_expression] = STATE(1156), + [sym_return_statement] = STATE(1301), + [sym_delete_statement] = STATE(1301), + [sym_raise_statement] = STATE(1301), + [sym_pass_statement] = STATE(1301), + [sym_break_statement] = STATE(1301), + [sym_continue_statement] = STATE(1301), + [sym_list_splat] = STATE(1520), + [sym_dictionary_splat] = STATE(1520), + [sym_global_statement] = STATE(1301), + [sym_nonlocal_statement] = STATE(1301), + [sym_exec_statement] = STATE(1301), + [sym_type_alias_statement] = STATE(1301), + [sym_expression_list] = STATE(1522), + [sym_pattern] = STATE(1017), + [sym_tuple_pattern] = STATE(1001), + [sym_list_pattern] = STATE(1001), + [sym_list_splat_pattern] = STATE(1001), + [sym_expression] = STATE(1176), + [sym_primary_expression] = STATE(765), + [sym_not_operator] = STATE(1156), + [sym_boolean_operator] = STATE(1156), + [sym_binary_operator] = STATE(920), + [sym_unary_operator] = STATE(920), + [sym_comparison_operator] = STATE(1156), + [sym_lambda] = STATE(1156), + [sym_assignment] = STATE(1522), + [sym_augmented_assignment] = STATE(1522), + [sym_pattern_list] = STATE(1026), + [sym_yield] = STATE(1522), + [sym_attribute] = STATE(582), + [sym_subscript] = STATE(582), + [sym_call] = STATE(920), + [sym_list] = STATE(920), + [sym_set] = STATE(920), + [sym_tuple] = STATE(920), + [sym_dictionary] = STATE(920), + [sym_list_comprehension] = STATE(920), + [sym_dictionary_comprehension] = STATE(920), + [sym_set_comprehension] = STATE(920), + [sym_generator_expression] = STATE(920), + [sym_parenthesized_expression] = STATE(920), + [sym_conditional_expression] = STATE(1156), + [sym_concatenated_string] = STATE(920), + [sym_string] = STATE(775), + [sym_concatenated_template_string] = STATE(920), + [sym_template_string] = STATE(769), + [sym_await] = STATE(920), [sym_identifier] = ACTIONS(7), - [anon_sym_import] = ACTIONS(9), - [anon_sym_from] = ACTIONS(11), - [anon_sym_LPAREN] = ACTIONS(13), - [anon_sym_STAR] = ACTIONS(15), - [anon_sym_print] = ACTIONS(17), - [anon_sym_assert] = ACTIONS(19), - [anon_sym_return] = ACTIONS(21), - [anon_sym_del] = ACTIONS(23), - [anon_sym_raise] = ACTIONS(25), - [anon_sym_pass] = ACTIONS(27), - [anon_sym_break] = ACTIONS(29), - [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(322), - [anon_sym_match] = ACTIONS(322), - [anon_sym_DASH] = ACTIONS(47), - [anon_sym_PLUS] = ACTIONS(47), - [anon_sym_LBRACK] = ACTIONS(49), - [anon_sym_LBRACE] = ACTIONS(51), - [anon_sym_STAR_STAR] = ACTIONS(53), - [anon_sym_global] = ACTIONS(57), - [anon_sym_nonlocal] = ACTIONS(59), - [anon_sym_exec] = ACTIONS(61), - [anon_sym_type] = ACTIONS(63), - [anon_sym_not] = ACTIONS(69), - [anon_sym_TILDE] = ACTIONS(47), - [anon_sym_lambda] = ACTIONS(71), - [anon_sym_yield] = ACTIONS(73), - [sym_ellipsis] = ACTIONS(75), - [sym_integer] = ACTIONS(77), - [sym_float] = ACTIONS(75), - [anon_sym_await] = ACTIONS(79), - [sym_true] = ACTIONS(77), - [sym_false] = ACTIONS(77), - [sym_none] = ACTIONS(77), + [anon_sym_lazy] = ACTIONS(9), + [anon_sym_import] = ACTIONS(11), + [anon_sym_from] = ACTIONS(13), + [anon_sym_LPAREN] = ACTIONS(15), + [anon_sym_STAR] = ACTIONS(17), + [anon_sym_print] = ACTIONS(19), + [anon_sym_assert] = ACTIONS(21), + [anon_sym_return] = ACTIONS(23), + [anon_sym_del] = ACTIONS(25), + [anon_sym_raise] = ACTIONS(27), + [anon_sym_pass] = ACTIONS(29), + [anon_sym_break] = ACTIONS(31), + [anon_sym_continue] = ACTIONS(33), + [anon_sym_async] = ACTIONS(319), + [anon_sym_match] = ACTIONS(319), + [anon_sym_DASH] = ACTIONS(49), + [anon_sym_PLUS] = ACTIONS(49), + [anon_sym_LBRACK] = ACTIONS(51), + [anon_sym_LBRACE] = ACTIONS(53), + [anon_sym_STAR_STAR] = ACTIONS(55), + [anon_sym_global] = ACTIONS(59), + [anon_sym_nonlocal] = ACTIONS(61), + [anon_sym_exec] = ACTIONS(63), + [anon_sym_type] = ACTIONS(65), + [anon_sym_not] = ACTIONS(71), + [anon_sym_TILDE] = ACTIONS(49), + [anon_sym_lambda] = ACTIONS(73), + [anon_sym_yield] = ACTIONS(75), + [sym_ellipsis] = ACTIONS(77), + [sym_integer] = ACTIONS(79), + [sym_float] = ACTIONS(77), + [anon_sym_await] = ACTIONS(81), + [sym_true] = ACTIONS(79), + [sym_false] = ACTIONS(79), + [sym_none] = ACTIONS(79), [sym_comment] = ACTIONS(3), - [sym__newline] = ACTIONS(484), - [sym__indent] = ACTIONS(486), - [sym__string_start] = ACTIONS(81), - [sym__template_string_start] = ACTIONS(83), + [sym__newline] = ACTIONS(489), + [sym__indent] = ACTIONS(491), + [sym__string_start] = ACTIONS(83), + [sym__template_string_start] = ACTIONS(85), }, [STATE(110)] = { - [sym__simple_statements] = STATE(593), + [sym__simple_statements] = STATE(495), [sym_import_statement] = STATE(1332), [sym_future_import_statement] = STATE(1332), [sym_import_from_statement] = STATE(1332), [sym_print_statement] = STATE(1332), [sym_assert_statement] = STATE(1332), [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1158), + [sym_named_expression] = STATE(1156), [sym_return_statement] = STATE(1332), [sym_delete_statement] = STATE(1332), [sym_raise_statement] = STATE(1332), [sym_pass_statement] = STATE(1332), [sym_break_statement] = STATE(1332), [sym_continue_statement] = STATE(1332), - [sym_list_splat] = STATE(1549), - [sym_dictionary_splat] = STATE(1549), + [sym_list_splat] = STATE(1520), + [sym_dictionary_splat] = STATE(1520), [sym_global_statement] = STATE(1332), [sym_nonlocal_statement] = STATE(1332), [sym_exec_statement] = STATE(1332), [sym_type_alias_statement] = STATE(1332), - [sym_expression_list] = STATE(1551), - [sym_pattern] = STATE(1013), - [sym_tuple_pattern] = STATE(999), - [sym_list_pattern] = STATE(999), - [sym_list_splat_pattern] = STATE(999), - [sym_expression] = STATE(1185), - [sym_primary_expression] = STATE(779), - [sym_not_operator] = STATE(1158), - [sym_boolean_operator] = STATE(1158), - [sym_binary_operator] = STATE(908), - [sym_unary_operator] = STATE(908), - [sym_comparison_operator] = STATE(1158), - [sym_lambda] = STATE(1158), - [sym_assignment] = STATE(1551), - [sym_augmented_assignment] = STATE(1551), - [sym_pattern_list] = STATE(1024), - [sym_yield] = STATE(1551), - [sym_attribute] = STATE(494), - [sym_subscript] = STATE(494), - [sym_call] = STATE(908), - [sym_list] = STATE(908), - [sym_set] = STATE(908), - [sym_tuple] = STATE(908), - [sym_dictionary] = STATE(908), - [sym_list_comprehension] = STATE(908), - [sym_dictionary_comprehension] = STATE(908), - [sym_set_comprehension] = STATE(908), - [sym_generator_expression] = STATE(908), - [sym_parenthesized_expression] = STATE(908), - [sym_conditional_expression] = STATE(1158), - [sym_concatenated_string] = STATE(908), - [sym_string] = STATE(782), - [sym_concatenated_template_string] = STATE(908), - [sym_template_string] = STATE(763), - [sym_await] = STATE(908), + [sym_expression_list] = STATE(1522), + [sym_pattern] = STATE(1017), + [sym_tuple_pattern] = STATE(1001), + [sym_list_pattern] = STATE(1001), + [sym_list_splat_pattern] = STATE(1001), + [sym_expression] = STATE(1176), + [sym_primary_expression] = STATE(765), + [sym_not_operator] = STATE(1156), + [sym_boolean_operator] = STATE(1156), + [sym_binary_operator] = STATE(920), + [sym_unary_operator] = STATE(920), + [sym_comparison_operator] = STATE(1156), + [sym_lambda] = STATE(1156), + [sym_assignment] = STATE(1522), + [sym_augmented_assignment] = STATE(1522), + [sym_pattern_list] = STATE(1026), + [sym_yield] = STATE(1522), + [sym_attribute] = STATE(582), + [sym_subscript] = STATE(582), + [sym_call] = STATE(920), + [sym_list] = STATE(920), + [sym_set] = STATE(920), + [sym_tuple] = STATE(920), + [sym_dictionary] = STATE(920), + [sym_list_comprehension] = STATE(920), + [sym_dictionary_comprehension] = STATE(920), + [sym_set_comprehension] = STATE(920), + [sym_generator_expression] = STATE(920), + [sym_parenthesized_expression] = STATE(920), + [sym_conditional_expression] = STATE(1156), + [sym_concatenated_string] = STATE(920), + [sym_string] = STATE(775), + [sym_concatenated_template_string] = STATE(920), + [sym_template_string] = STATE(769), + [sym_await] = STATE(920), [sym_identifier] = ACTIONS(7), - [anon_sym_import] = ACTIONS(9), - [anon_sym_from] = ACTIONS(11), - [anon_sym_LPAREN] = ACTIONS(13), - [anon_sym_STAR] = ACTIONS(15), - [anon_sym_print] = ACTIONS(17), - [anon_sym_assert] = ACTIONS(19), - [anon_sym_return] = ACTIONS(21), - [anon_sym_del] = ACTIONS(23), - [anon_sym_raise] = ACTIONS(25), - [anon_sym_pass] = ACTIONS(27), - [anon_sym_break] = ACTIONS(29), - [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(322), - [anon_sym_match] = ACTIONS(322), - [anon_sym_DASH] = ACTIONS(47), - [anon_sym_PLUS] = ACTIONS(47), - [anon_sym_LBRACK] = ACTIONS(49), - [anon_sym_LBRACE] = ACTIONS(51), - [anon_sym_STAR_STAR] = ACTIONS(53), - [anon_sym_global] = ACTIONS(57), - [anon_sym_nonlocal] = ACTIONS(59), - [anon_sym_exec] = ACTIONS(61), - [anon_sym_type] = ACTIONS(63), - [anon_sym_not] = ACTIONS(69), - [anon_sym_TILDE] = ACTIONS(47), - [anon_sym_lambda] = ACTIONS(71), - [anon_sym_yield] = ACTIONS(73), - [sym_ellipsis] = ACTIONS(75), - [sym_integer] = ACTIONS(77), - [sym_float] = ACTIONS(75), - [anon_sym_await] = ACTIONS(79), - [sym_true] = ACTIONS(77), - [sym_false] = ACTIONS(77), - [sym_none] = ACTIONS(77), + [anon_sym_lazy] = ACTIONS(9), + [anon_sym_import] = ACTIONS(11), + [anon_sym_from] = ACTIONS(13), + [anon_sym_LPAREN] = ACTIONS(15), + [anon_sym_STAR] = ACTIONS(17), + [anon_sym_print] = ACTIONS(19), + [anon_sym_assert] = ACTIONS(21), + [anon_sym_return] = ACTIONS(23), + [anon_sym_del] = ACTIONS(25), + [anon_sym_raise] = ACTIONS(27), + [anon_sym_pass] = ACTIONS(29), + [anon_sym_break] = ACTIONS(31), + [anon_sym_continue] = ACTIONS(33), + [anon_sym_async] = ACTIONS(319), + [anon_sym_match] = ACTIONS(319), + [anon_sym_DASH] = ACTIONS(49), + [anon_sym_PLUS] = ACTIONS(49), + [anon_sym_LBRACK] = ACTIONS(51), + [anon_sym_LBRACE] = ACTIONS(53), + [anon_sym_STAR_STAR] = ACTIONS(55), + [anon_sym_global] = ACTIONS(59), + [anon_sym_nonlocal] = ACTIONS(61), + [anon_sym_exec] = ACTIONS(63), + [anon_sym_type] = ACTIONS(65), + [anon_sym_not] = ACTIONS(71), + [anon_sym_TILDE] = ACTIONS(49), + [anon_sym_lambda] = ACTIONS(73), + [anon_sym_yield] = ACTIONS(75), + [sym_ellipsis] = ACTIONS(77), + [sym_integer] = ACTIONS(79), + [sym_float] = ACTIONS(77), + [anon_sym_await] = ACTIONS(81), + [sym_true] = ACTIONS(79), + [sym_false] = ACTIONS(79), + [sym_none] = ACTIONS(79), [sym_comment] = ACTIONS(3), - [sym__newline] = ACTIONS(488), - [sym__indent] = ACTIONS(490), - [sym__string_start] = ACTIONS(81), - [sym__template_string_start] = ACTIONS(83), + [sym__newline] = ACTIONS(493), + [sym__indent] = ACTIONS(495), + [sym__string_start] = ACTIONS(83), + [sym__template_string_start] = ACTIONS(85), }, [STATE(111)] = { - [sym__simple_statements] = STATE(608), - [sym_import_statement] = STATE(1348), - [sym_future_import_statement] = STATE(1348), - [sym_import_from_statement] = STATE(1348), - [sym_print_statement] = STATE(1348), - [sym_assert_statement] = STATE(1348), - [sym_expression_statement] = STATE(1348), - [sym_named_expression] = STATE(1158), - [sym_return_statement] = STATE(1348), - [sym_delete_statement] = STATE(1348), - [sym_raise_statement] = STATE(1348), - [sym_pass_statement] = STATE(1348), - [sym_break_statement] = STATE(1348), - [sym_continue_statement] = STATE(1348), - [sym_list_splat] = STATE(1549), - [sym_dictionary_splat] = STATE(1549), - [sym_global_statement] = STATE(1348), - [sym_nonlocal_statement] = STATE(1348), - [sym_exec_statement] = STATE(1348), - [sym_type_alias_statement] = STATE(1348), - [sym_expression_list] = STATE(1551), - [sym_pattern] = STATE(1013), - [sym_tuple_pattern] = STATE(999), - [sym_list_pattern] = STATE(999), - [sym_list_splat_pattern] = STATE(999), - [sym_expression] = STATE(1185), - [sym_primary_expression] = STATE(779), - [sym_not_operator] = STATE(1158), - [sym_boolean_operator] = STATE(1158), - [sym_binary_operator] = STATE(908), - [sym_unary_operator] = STATE(908), - [sym_comparison_operator] = STATE(1158), - [sym_lambda] = STATE(1158), - [sym_assignment] = STATE(1551), - [sym_augmented_assignment] = STATE(1551), - [sym_pattern_list] = STATE(1024), - [sym_yield] = STATE(1551), - [sym_attribute] = STATE(494), - [sym_subscript] = STATE(494), - [sym_call] = STATE(908), - [sym_list] = STATE(908), - [sym_set] = STATE(908), - [sym_tuple] = STATE(908), - [sym_dictionary] = STATE(908), - [sym_list_comprehension] = STATE(908), - [sym_dictionary_comprehension] = STATE(908), - [sym_set_comprehension] = STATE(908), - [sym_generator_expression] = STATE(908), - [sym_parenthesized_expression] = STATE(908), - [sym_conditional_expression] = STATE(1158), - [sym_concatenated_string] = STATE(908), - [sym_string] = STATE(782), - [sym_concatenated_template_string] = STATE(908), - [sym_template_string] = STATE(763), - [sym_await] = STATE(908), + [sym__simple_statements] = STATE(515), + [sym_import_statement] = STATE(1301), + [sym_future_import_statement] = STATE(1301), + [sym_import_from_statement] = STATE(1301), + [sym_print_statement] = STATE(1301), + [sym_assert_statement] = STATE(1301), + [sym_expression_statement] = STATE(1301), + [sym_named_expression] = STATE(1156), + [sym_return_statement] = STATE(1301), + [sym_delete_statement] = STATE(1301), + [sym_raise_statement] = STATE(1301), + [sym_pass_statement] = STATE(1301), + [sym_break_statement] = STATE(1301), + [sym_continue_statement] = STATE(1301), + [sym_list_splat] = STATE(1520), + [sym_dictionary_splat] = STATE(1520), + [sym_global_statement] = STATE(1301), + [sym_nonlocal_statement] = STATE(1301), + [sym_exec_statement] = STATE(1301), + [sym_type_alias_statement] = STATE(1301), + [sym_expression_list] = STATE(1522), + [sym_pattern] = STATE(1017), + [sym_tuple_pattern] = STATE(1001), + [sym_list_pattern] = STATE(1001), + [sym_list_splat_pattern] = STATE(1001), + [sym_expression] = STATE(1176), + [sym_primary_expression] = STATE(765), + [sym_not_operator] = STATE(1156), + [sym_boolean_operator] = STATE(1156), + [sym_binary_operator] = STATE(920), + [sym_unary_operator] = STATE(920), + [sym_comparison_operator] = STATE(1156), + [sym_lambda] = STATE(1156), + [sym_assignment] = STATE(1522), + [sym_augmented_assignment] = STATE(1522), + [sym_pattern_list] = STATE(1026), + [sym_yield] = STATE(1522), + [sym_attribute] = STATE(582), + [sym_subscript] = STATE(582), + [sym_call] = STATE(920), + [sym_list] = STATE(920), + [sym_set] = STATE(920), + [sym_tuple] = STATE(920), + [sym_dictionary] = STATE(920), + [sym_list_comprehension] = STATE(920), + [sym_dictionary_comprehension] = STATE(920), + [sym_set_comprehension] = STATE(920), + [sym_generator_expression] = STATE(920), + [sym_parenthesized_expression] = STATE(920), + [sym_conditional_expression] = STATE(1156), + [sym_concatenated_string] = STATE(920), + [sym_string] = STATE(775), + [sym_concatenated_template_string] = STATE(920), + [sym_template_string] = STATE(769), + [sym_await] = STATE(920), [sym_identifier] = ACTIONS(7), - [anon_sym_import] = ACTIONS(9), - [anon_sym_from] = ACTIONS(11), - [anon_sym_LPAREN] = ACTIONS(13), - [anon_sym_STAR] = ACTIONS(15), - [anon_sym_print] = ACTIONS(17), - [anon_sym_assert] = ACTIONS(19), - [anon_sym_return] = ACTIONS(21), - [anon_sym_del] = ACTIONS(23), - [anon_sym_raise] = ACTIONS(25), - [anon_sym_pass] = ACTIONS(27), - [anon_sym_break] = ACTIONS(29), - [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(322), - [anon_sym_match] = ACTIONS(322), - [anon_sym_DASH] = ACTIONS(47), - [anon_sym_PLUS] = ACTIONS(47), - [anon_sym_LBRACK] = ACTIONS(49), - [anon_sym_LBRACE] = ACTIONS(51), - [anon_sym_STAR_STAR] = ACTIONS(53), - [anon_sym_global] = ACTIONS(57), - [anon_sym_nonlocal] = ACTIONS(59), - [anon_sym_exec] = ACTIONS(61), - [anon_sym_type] = ACTIONS(63), - [anon_sym_not] = ACTIONS(69), - [anon_sym_TILDE] = ACTIONS(47), - [anon_sym_lambda] = ACTIONS(71), - [anon_sym_yield] = ACTIONS(73), - [sym_ellipsis] = ACTIONS(75), - [sym_integer] = ACTIONS(77), - [sym_float] = ACTIONS(75), - [anon_sym_await] = ACTIONS(79), - [sym_true] = ACTIONS(77), - [sym_false] = ACTIONS(77), - [sym_none] = ACTIONS(77), + [anon_sym_lazy] = ACTIONS(9), + [anon_sym_import] = ACTIONS(11), + [anon_sym_from] = ACTIONS(13), + [anon_sym_LPAREN] = ACTIONS(15), + [anon_sym_STAR] = ACTIONS(17), + [anon_sym_print] = ACTIONS(19), + [anon_sym_assert] = ACTIONS(21), + [anon_sym_return] = ACTIONS(23), + [anon_sym_del] = ACTIONS(25), + [anon_sym_raise] = ACTIONS(27), + [anon_sym_pass] = ACTIONS(29), + [anon_sym_break] = ACTIONS(31), + [anon_sym_continue] = ACTIONS(33), + [anon_sym_async] = ACTIONS(319), + [anon_sym_match] = ACTIONS(319), + [anon_sym_DASH] = ACTIONS(49), + [anon_sym_PLUS] = ACTIONS(49), + [anon_sym_LBRACK] = ACTIONS(51), + [anon_sym_LBRACE] = ACTIONS(53), + [anon_sym_STAR_STAR] = ACTIONS(55), + [anon_sym_global] = ACTIONS(59), + [anon_sym_nonlocal] = ACTIONS(61), + [anon_sym_exec] = ACTIONS(63), + [anon_sym_type] = ACTIONS(65), + [anon_sym_not] = ACTIONS(71), + [anon_sym_TILDE] = ACTIONS(49), + [anon_sym_lambda] = ACTIONS(73), + [anon_sym_yield] = ACTIONS(75), + [sym_ellipsis] = ACTIONS(77), + [sym_integer] = ACTIONS(79), + [sym_float] = ACTIONS(77), + [anon_sym_await] = ACTIONS(81), + [sym_true] = ACTIONS(79), + [sym_false] = ACTIONS(79), + [sym_none] = ACTIONS(79), [sym_comment] = ACTIONS(3), - [sym__newline] = ACTIONS(492), - [sym__indent] = ACTIONS(494), - [sym__string_start] = ACTIONS(81), - [sym__template_string_start] = ACTIONS(83), + [sym__newline] = ACTIONS(497), + [sym__indent] = ACTIONS(499), + [sym__string_start] = ACTIONS(83), + [sym__template_string_start] = ACTIONS(85), }, [STATE(112)] = { - [sym__simple_statements] = STATE(440), + [sym__simple_statements] = STATE(559), [sym_import_statement] = STATE(1332), [sym_future_import_statement] = STATE(1332), [sym_import_from_statement] = STATE(1332), [sym_print_statement] = STATE(1332), [sym_assert_statement] = STATE(1332), [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1158), + [sym_named_expression] = STATE(1156), [sym_return_statement] = STATE(1332), [sym_delete_statement] = STATE(1332), [sym_raise_statement] = STATE(1332), [sym_pass_statement] = STATE(1332), [sym_break_statement] = STATE(1332), [sym_continue_statement] = STATE(1332), - [sym_list_splat] = STATE(1549), - [sym_dictionary_splat] = STATE(1549), + [sym_list_splat] = STATE(1520), + [sym_dictionary_splat] = STATE(1520), [sym_global_statement] = STATE(1332), [sym_nonlocal_statement] = STATE(1332), [sym_exec_statement] = STATE(1332), [sym_type_alias_statement] = STATE(1332), - [sym_expression_list] = STATE(1551), - [sym_pattern] = STATE(1013), - [sym_tuple_pattern] = STATE(999), - [sym_list_pattern] = STATE(999), - [sym_list_splat_pattern] = STATE(999), - [sym_expression] = STATE(1185), - [sym_primary_expression] = STATE(779), - [sym_not_operator] = STATE(1158), - [sym_boolean_operator] = STATE(1158), - [sym_binary_operator] = STATE(908), - [sym_unary_operator] = STATE(908), - [sym_comparison_operator] = STATE(1158), - [sym_lambda] = STATE(1158), - [sym_assignment] = STATE(1551), - [sym_augmented_assignment] = STATE(1551), - [sym_pattern_list] = STATE(1024), - [sym_yield] = STATE(1551), - [sym_attribute] = STATE(494), - [sym_subscript] = STATE(494), - [sym_call] = STATE(908), - [sym_list] = STATE(908), - [sym_set] = STATE(908), - [sym_tuple] = STATE(908), - [sym_dictionary] = STATE(908), - [sym_list_comprehension] = STATE(908), - [sym_dictionary_comprehension] = STATE(908), - [sym_set_comprehension] = STATE(908), - [sym_generator_expression] = STATE(908), - [sym_parenthesized_expression] = STATE(908), - [sym_conditional_expression] = STATE(1158), - [sym_concatenated_string] = STATE(908), - [sym_string] = STATE(782), - [sym_concatenated_template_string] = STATE(908), - [sym_template_string] = STATE(763), - [sym_await] = STATE(908), + [sym_expression_list] = STATE(1522), + [sym_pattern] = STATE(1017), + [sym_tuple_pattern] = STATE(1001), + [sym_list_pattern] = STATE(1001), + [sym_list_splat_pattern] = STATE(1001), + [sym_expression] = STATE(1176), + [sym_primary_expression] = STATE(765), + [sym_not_operator] = STATE(1156), + [sym_boolean_operator] = STATE(1156), + [sym_binary_operator] = STATE(920), + [sym_unary_operator] = STATE(920), + [sym_comparison_operator] = STATE(1156), + [sym_lambda] = STATE(1156), + [sym_assignment] = STATE(1522), + [sym_augmented_assignment] = STATE(1522), + [sym_pattern_list] = STATE(1026), + [sym_yield] = STATE(1522), + [sym_attribute] = STATE(582), + [sym_subscript] = STATE(582), + [sym_call] = STATE(920), + [sym_list] = STATE(920), + [sym_set] = STATE(920), + [sym_tuple] = STATE(920), + [sym_dictionary] = STATE(920), + [sym_list_comprehension] = STATE(920), + [sym_dictionary_comprehension] = STATE(920), + [sym_set_comprehension] = STATE(920), + [sym_generator_expression] = STATE(920), + [sym_parenthesized_expression] = STATE(920), + [sym_conditional_expression] = STATE(1156), + [sym_concatenated_string] = STATE(920), + [sym_string] = STATE(775), + [sym_concatenated_template_string] = STATE(920), + [sym_template_string] = STATE(769), + [sym_await] = STATE(920), [sym_identifier] = ACTIONS(7), - [anon_sym_import] = ACTIONS(9), - [anon_sym_from] = ACTIONS(11), - [anon_sym_LPAREN] = ACTIONS(13), - [anon_sym_STAR] = ACTIONS(15), - [anon_sym_print] = ACTIONS(17), - [anon_sym_assert] = ACTIONS(19), - [anon_sym_return] = ACTIONS(21), - [anon_sym_del] = ACTIONS(23), - [anon_sym_raise] = ACTIONS(25), - [anon_sym_pass] = ACTIONS(27), - [anon_sym_break] = ACTIONS(29), - [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(322), - [anon_sym_match] = ACTIONS(322), - [anon_sym_DASH] = ACTIONS(47), - [anon_sym_PLUS] = ACTIONS(47), - [anon_sym_LBRACK] = ACTIONS(49), - [anon_sym_LBRACE] = ACTIONS(51), - [anon_sym_STAR_STAR] = ACTIONS(53), - [anon_sym_global] = ACTIONS(57), - [anon_sym_nonlocal] = ACTIONS(59), - [anon_sym_exec] = ACTIONS(61), - [anon_sym_type] = ACTIONS(63), - [anon_sym_not] = ACTIONS(69), - [anon_sym_TILDE] = ACTIONS(47), - [anon_sym_lambda] = ACTIONS(71), - [anon_sym_yield] = ACTIONS(73), - [sym_ellipsis] = ACTIONS(75), - [sym_integer] = ACTIONS(77), - [sym_float] = ACTIONS(75), - [anon_sym_await] = ACTIONS(79), - [sym_true] = ACTIONS(77), - [sym_false] = ACTIONS(77), - [sym_none] = ACTIONS(77), + [anon_sym_lazy] = ACTIONS(9), + [anon_sym_import] = ACTIONS(11), + [anon_sym_from] = ACTIONS(13), + [anon_sym_LPAREN] = ACTIONS(15), + [anon_sym_STAR] = ACTIONS(17), + [anon_sym_print] = ACTIONS(19), + [anon_sym_assert] = ACTIONS(21), + [anon_sym_return] = ACTIONS(23), + [anon_sym_del] = ACTIONS(25), + [anon_sym_raise] = ACTIONS(27), + [anon_sym_pass] = ACTIONS(29), + [anon_sym_break] = ACTIONS(31), + [anon_sym_continue] = ACTIONS(33), + [anon_sym_async] = ACTIONS(319), + [anon_sym_match] = ACTIONS(319), + [anon_sym_DASH] = ACTIONS(49), + [anon_sym_PLUS] = ACTIONS(49), + [anon_sym_LBRACK] = ACTIONS(51), + [anon_sym_LBRACE] = ACTIONS(53), + [anon_sym_STAR_STAR] = ACTIONS(55), + [anon_sym_global] = ACTIONS(59), + [anon_sym_nonlocal] = ACTIONS(61), + [anon_sym_exec] = ACTIONS(63), + [anon_sym_type] = ACTIONS(65), + [anon_sym_not] = ACTIONS(71), + [anon_sym_TILDE] = ACTIONS(49), + [anon_sym_lambda] = ACTIONS(73), + [anon_sym_yield] = ACTIONS(75), + [sym_ellipsis] = ACTIONS(77), + [sym_integer] = ACTIONS(79), + [sym_float] = ACTIONS(77), + [anon_sym_await] = ACTIONS(81), + [sym_true] = ACTIONS(79), + [sym_false] = ACTIONS(79), + [sym_none] = ACTIONS(79), [sym_comment] = ACTIONS(3), - [sym__newline] = ACTIONS(496), - [sym__indent] = ACTIONS(498), - [sym__string_start] = ACTIONS(81), - [sym__template_string_start] = ACTIONS(83), + [sym__newline] = ACTIONS(501), + [sym__indent] = ACTIONS(503), + [sym__string_start] = ACTIONS(83), + [sym__template_string_start] = ACTIONS(85), }, [STATE(113)] = { - [sym__simple_statements] = STATE(611), - [sym_import_statement] = STATE(1348), - [sym_future_import_statement] = STATE(1348), - [sym_import_from_statement] = STATE(1348), - [sym_print_statement] = STATE(1348), - [sym_assert_statement] = STATE(1348), - [sym_expression_statement] = STATE(1348), - [sym_named_expression] = STATE(1158), - [sym_return_statement] = STATE(1348), - [sym_delete_statement] = STATE(1348), - [sym_raise_statement] = STATE(1348), - [sym_pass_statement] = STATE(1348), - [sym_break_statement] = STATE(1348), - [sym_continue_statement] = STATE(1348), - [sym_list_splat] = STATE(1549), - [sym_dictionary_splat] = STATE(1549), - [sym_global_statement] = STATE(1348), - [sym_nonlocal_statement] = STATE(1348), - [sym_exec_statement] = STATE(1348), - [sym_type_alias_statement] = STATE(1348), - [sym_expression_list] = STATE(1551), - [sym_pattern] = STATE(1013), - [sym_tuple_pattern] = STATE(999), - [sym_list_pattern] = STATE(999), - [sym_list_splat_pattern] = STATE(999), - [sym_expression] = STATE(1185), - [sym_primary_expression] = STATE(779), - [sym_not_operator] = STATE(1158), - [sym_boolean_operator] = STATE(1158), - [sym_binary_operator] = STATE(908), - [sym_unary_operator] = STATE(908), - [sym_comparison_operator] = STATE(1158), - [sym_lambda] = STATE(1158), - [sym_assignment] = STATE(1551), - [sym_augmented_assignment] = STATE(1551), - [sym_pattern_list] = STATE(1024), - [sym_yield] = STATE(1551), - [sym_attribute] = STATE(494), - [sym_subscript] = STATE(494), - [sym_call] = STATE(908), - [sym_list] = STATE(908), - [sym_set] = STATE(908), - [sym_tuple] = STATE(908), - [sym_dictionary] = STATE(908), - [sym_list_comprehension] = STATE(908), - [sym_dictionary_comprehension] = STATE(908), - [sym_set_comprehension] = STATE(908), - [sym_generator_expression] = STATE(908), - [sym_parenthesized_expression] = STATE(908), - [sym_conditional_expression] = STATE(1158), - [sym_concatenated_string] = STATE(908), - [sym_string] = STATE(782), - [sym_concatenated_template_string] = STATE(908), - [sym_template_string] = STATE(763), - [sym_await] = STATE(908), + [sym__simple_statements] = STATE(489), + [sym_import_statement] = STATE(1301), + [sym_future_import_statement] = STATE(1301), + [sym_import_from_statement] = STATE(1301), + [sym_print_statement] = STATE(1301), + [sym_assert_statement] = STATE(1301), + [sym_expression_statement] = STATE(1301), + [sym_named_expression] = STATE(1156), + [sym_return_statement] = STATE(1301), + [sym_delete_statement] = STATE(1301), + [sym_raise_statement] = STATE(1301), + [sym_pass_statement] = STATE(1301), + [sym_break_statement] = STATE(1301), + [sym_continue_statement] = STATE(1301), + [sym_list_splat] = STATE(1520), + [sym_dictionary_splat] = STATE(1520), + [sym_global_statement] = STATE(1301), + [sym_nonlocal_statement] = STATE(1301), + [sym_exec_statement] = STATE(1301), + [sym_type_alias_statement] = STATE(1301), + [sym_expression_list] = STATE(1522), + [sym_pattern] = STATE(1017), + [sym_tuple_pattern] = STATE(1001), + [sym_list_pattern] = STATE(1001), + [sym_list_splat_pattern] = STATE(1001), + [sym_expression] = STATE(1176), + [sym_primary_expression] = STATE(765), + [sym_not_operator] = STATE(1156), + [sym_boolean_operator] = STATE(1156), + [sym_binary_operator] = STATE(920), + [sym_unary_operator] = STATE(920), + [sym_comparison_operator] = STATE(1156), + [sym_lambda] = STATE(1156), + [sym_assignment] = STATE(1522), + [sym_augmented_assignment] = STATE(1522), + [sym_pattern_list] = STATE(1026), + [sym_yield] = STATE(1522), + [sym_attribute] = STATE(582), + [sym_subscript] = STATE(582), + [sym_call] = STATE(920), + [sym_list] = STATE(920), + [sym_set] = STATE(920), + [sym_tuple] = STATE(920), + [sym_dictionary] = STATE(920), + [sym_list_comprehension] = STATE(920), + [sym_dictionary_comprehension] = STATE(920), + [sym_set_comprehension] = STATE(920), + [sym_generator_expression] = STATE(920), + [sym_parenthesized_expression] = STATE(920), + [sym_conditional_expression] = STATE(1156), + [sym_concatenated_string] = STATE(920), + [sym_string] = STATE(775), + [sym_concatenated_template_string] = STATE(920), + [sym_template_string] = STATE(769), + [sym_await] = STATE(920), [sym_identifier] = ACTIONS(7), - [anon_sym_import] = ACTIONS(9), - [anon_sym_from] = ACTIONS(11), - [anon_sym_LPAREN] = ACTIONS(13), - [anon_sym_STAR] = ACTIONS(15), - [anon_sym_print] = ACTIONS(17), - [anon_sym_assert] = ACTIONS(19), - [anon_sym_return] = ACTIONS(21), - [anon_sym_del] = ACTIONS(23), - [anon_sym_raise] = ACTIONS(25), - [anon_sym_pass] = ACTIONS(27), - [anon_sym_break] = ACTIONS(29), - [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(322), - [anon_sym_match] = ACTIONS(322), - [anon_sym_DASH] = ACTIONS(47), - [anon_sym_PLUS] = ACTIONS(47), - [anon_sym_LBRACK] = ACTIONS(49), - [anon_sym_LBRACE] = ACTIONS(51), - [anon_sym_STAR_STAR] = ACTIONS(53), - [anon_sym_global] = ACTIONS(57), - [anon_sym_nonlocal] = ACTIONS(59), - [anon_sym_exec] = ACTIONS(61), - [anon_sym_type] = ACTIONS(63), - [anon_sym_not] = ACTIONS(69), - [anon_sym_TILDE] = ACTIONS(47), - [anon_sym_lambda] = ACTIONS(71), - [anon_sym_yield] = ACTIONS(73), - [sym_ellipsis] = ACTIONS(75), - [sym_integer] = ACTIONS(77), - [sym_float] = ACTIONS(75), - [anon_sym_await] = ACTIONS(79), - [sym_true] = ACTIONS(77), - [sym_false] = ACTIONS(77), - [sym_none] = ACTIONS(77), + [anon_sym_lazy] = ACTIONS(9), + [anon_sym_import] = ACTIONS(11), + [anon_sym_from] = ACTIONS(13), + [anon_sym_LPAREN] = ACTIONS(15), + [anon_sym_STAR] = ACTIONS(17), + [anon_sym_print] = ACTIONS(19), + [anon_sym_assert] = ACTIONS(21), + [anon_sym_return] = ACTIONS(23), + [anon_sym_del] = ACTIONS(25), + [anon_sym_raise] = ACTIONS(27), + [anon_sym_pass] = ACTIONS(29), + [anon_sym_break] = ACTIONS(31), + [anon_sym_continue] = ACTIONS(33), + [anon_sym_async] = ACTIONS(319), + [anon_sym_match] = ACTIONS(319), + [anon_sym_DASH] = ACTIONS(49), + [anon_sym_PLUS] = ACTIONS(49), + [anon_sym_LBRACK] = ACTIONS(51), + [anon_sym_LBRACE] = ACTIONS(53), + [anon_sym_STAR_STAR] = ACTIONS(55), + [anon_sym_global] = ACTIONS(59), + [anon_sym_nonlocal] = ACTIONS(61), + [anon_sym_exec] = ACTIONS(63), + [anon_sym_type] = ACTIONS(65), + [anon_sym_not] = ACTIONS(71), + [anon_sym_TILDE] = ACTIONS(49), + [anon_sym_lambda] = ACTIONS(73), + [anon_sym_yield] = ACTIONS(75), + [sym_ellipsis] = ACTIONS(77), + [sym_integer] = ACTIONS(79), + [sym_float] = ACTIONS(77), + [anon_sym_await] = ACTIONS(81), + [sym_true] = ACTIONS(79), + [sym_false] = ACTIONS(79), + [sym_none] = ACTIONS(79), [sym_comment] = ACTIONS(3), - [sym__newline] = ACTIONS(500), - [sym__indent] = ACTIONS(502), - [sym__string_start] = ACTIONS(81), - [sym__template_string_start] = ACTIONS(83), + [sym__newline] = ACTIONS(505), + [sym__indent] = ACTIONS(507), + [sym__string_start] = ACTIONS(83), + [sym__template_string_start] = ACTIONS(85), }, [STATE(114)] = { - [sym__simple_statements] = STATE(464), - [sym_import_statement] = STATE(1348), - [sym_future_import_statement] = STATE(1348), - [sym_import_from_statement] = STATE(1348), - [sym_print_statement] = STATE(1348), - [sym_assert_statement] = STATE(1348), - [sym_expression_statement] = STATE(1348), - [sym_named_expression] = STATE(1158), - [sym_return_statement] = STATE(1348), - [sym_delete_statement] = STATE(1348), - [sym_raise_statement] = STATE(1348), - [sym_pass_statement] = STATE(1348), - [sym_break_statement] = STATE(1348), - [sym_continue_statement] = STATE(1348), - [sym_list_splat] = STATE(1549), - [sym_dictionary_splat] = STATE(1549), - [sym_global_statement] = STATE(1348), - [sym_nonlocal_statement] = STATE(1348), - [sym_exec_statement] = STATE(1348), - [sym_type_alias_statement] = STATE(1348), - [sym_expression_list] = STATE(1551), - [sym_pattern] = STATE(1013), - [sym_tuple_pattern] = STATE(999), - [sym_list_pattern] = STATE(999), - [sym_list_splat_pattern] = STATE(999), - [sym_expression] = STATE(1185), - [sym_primary_expression] = STATE(779), - [sym_not_operator] = STATE(1158), - [sym_boolean_operator] = STATE(1158), - [sym_binary_operator] = STATE(908), - [sym_unary_operator] = STATE(908), - [sym_comparison_operator] = STATE(1158), - [sym_lambda] = STATE(1158), - [sym_assignment] = STATE(1551), - [sym_augmented_assignment] = STATE(1551), - [sym_pattern_list] = STATE(1024), - [sym_yield] = STATE(1551), - [sym_attribute] = STATE(494), - [sym_subscript] = STATE(494), - [sym_call] = STATE(908), - [sym_list] = STATE(908), - [sym_set] = STATE(908), - [sym_tuple] = STATE(908), - [sym_dictionary] = STATE(908), - [sym_list_comprehension] = STATE(908), - [sym_dictionary_comprehension] = STATE(908), - [sym_set_comprehension] = STATE(908), - [sym_generator_expression] = STATE(908), - [sym_parenthesized_expression] = STATE(908), - [sym_conditional_expression] = STATE(1158), - [sym_concatenated_string] = STATE(908), - [sym_string] = STATE(782), - [sym_concatenated_template_string] = STATE(908), - [sym_template_string] = STATE(763), - [sym_await] = STATE(908), + [sym__simple_statements] = STATE(517), + [sym_import_statement] = STATE(1301), + [sym_future_import_statement] = STATE(1301), + [sym_import_from_statement] = STATE(1301), + [sym_print_statement] = STATE(1301), + [sym_assert_statement] = STATE(1301), + [sym_expression_statement] = STATE(1301), + [sym_named_expression] = STATE(1156), + [sym_return_statement] = STATE(1301), + [sym_delete_statement] = STATE(1301), + [sym_raise_statement] = STATE(1301), + [sym_pass_statement] = STATE(1301), + [sym_break_statement] = STATE(1301), + [sym_continue_statement] = STATE(1301), + [sym_list_splat] = STATE(1520), + [sym_dictionary_splat] = STATE(1520), + [sym_global_statement] = STATE(1301), + [sym_nonlocal_statement] = STATE(1301), + [sym_exec_statement] = STATE(1301), + [sym_type_alias_statement] = STATE(1301), + [sym_expression_list] = STATE(1522), + [sym_pattern] = STATE(1017), + [sym_tuple_pattern] = STATE(1001), + [sym_list_pattern] = STATE(1001), + [sym_list_splat_pattern] = STATE(1001), + [sym_expression] = STATE(1176), + [sym_primary_expression] = STATE(765), + [sym_not_operator] = STATE(1156), + [sym_boolean_operator] = STATE(1156), + [sym_binary_operator] = STATE(920), + [sym_unary_operator] = STATE(920), + [sym_comparison_operator] = STATE(1156), + [sym_lambda] = STATE(1156), + [sym_assignment] = STATE(1522), + [sym_augmented_assignment] = STATE(1522), + [sym_pattern_list] = STATE(1026), + [sym_yield] = STATE(1522), + [sym_attribute] = STATE(582), + [sym_subscript] = STATE(582), + [sym_call] = STATE(920), + [sym_list] = STATE(920), + [sym_set] = STATE(920), + [sym_tuple] = STATE(920), + [sym_dictionary] = STATE(920), + [sym_list_comprehension] = STATE(920), + [sym_dictionary_comprehension] = STATE(920), + [sym_set_comprehension] = STATE(920), + [sym_generator_expression] = STATE(920), + [sym_parenthesized_expression] = STATE(920), + [sym_conditional_expression] = STATE(1156), + [sym_concatenated_string] = STATE(920), + [sym_string] = STATE(775), + [sym_concatenated_template_string] = STATE(920), + [sym_template_string] = STATE(769), + [sym_await] = STATE(920), [sym_identifier] = ACTIONS(7), - [anon_sym_import] = ACTIONS(9), - [anon_sym_from] = ACTIONS(11), - [anon_sym_LPAREN] = ACTIONS(13), - [anon_sym_STAR] = ACTIONS(15), - [anon_sym_print] = ACTIONS(17), - [anon_sym_assert] = ACTIONS(19), - [anon_sym_return] = ACTIONS(21), - [anon_sym_del] = ACTIONS(23), - [anon_sym_raise] = ACTIONS(25), - [anon_sym_pass] = ACTIONS(27), - [anon_sym_break] = ACTIONS(29), - [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(322), - [anon_sym_match] = ACTIONS(322), - [anon_sym_DASH] = ACTIONS(47), - [anon_sym_PLUS] = ACTIONS(47), - [anon_sym_LBRACK] = ACTIONS(49), - [anon_sym_LBRACE] = ACTIONS(51), - [anon_sym_STAR_STAR] = ACTIONS(53), - [anon_sym_global] = ACTIONS(57), - [anon_sym_nonlocal] = ACTIONS(59), - [anon_sym_exec] = ACTIONS(61), - [anon_sym_type] = ACTIONS(63), - [anon_sym_not] = ACTIONS(69), - [anon_sym_TILDE] = ACTIONS(47), - [anon_sym_lambda] = ACTIONS(71), - [anon_sym_yield] = ACTIONS(73), - [sym_ellipsis] = ACTIONS(75), - [sym_integer] = ACTIONS(77), - [sym_float] = ACTIONS(75), - [anon_sym_await] = ACTIONS(79), - [sym_true] = ACTIONS(77), - [sym_false] = ACTIONS(77), - [sym_none] = ACTIONS(77), + [anon_sym_lazy] = ACTIONS(9), + [anon_sym_import] = ACTIONS(11), + [anon_sym_from] = ACTIONS(13), + [anon_sym_LPAREN] = ACTIONS(15), + [anon_sym_STAR] = ACTIONS(17), + [anon_sym_print] = ACTIONS(19), + [anon_sym_assert] = ACTIONS(21), + [anon_sym_return] = ACTIONS(23), + [anon_sym_del] = ACTIONS(25), + [anon_sym_raise] = ACTIONS(27), + [anon_sym_pass] = ACTIONS(29), + [anon_sym_break] = ACTIONS(31), + [anon_sym_continue] = ACTIONS(33), + [anon_sym_async] = ACTIONS(319), + [anon_sym_match] = ACTIONS(319), + [anon_sym_DASH] = ACTIONS(49), + [anon_sym_PLUS] = ACTIONS(49), + [anon_sym_LBRACK] = ACTIONS(51), + [anon_sym_LBRACE] = ACTIONS(53), + [anon_sym_STAR_STAR] = ACTIONS(55), + [anon_sym_global] = ACTIONS(59), + [anon_sym_nonlocal] = ACTIONS(61), + [anon_sym_exec] = ACTIONS(63), + [anon_sym_type] = ACTIONS(65), + [anon_sym_not] = ACTIONS(71), + [anon_sym_TILDE] = ACTIONS(49), + [anon_sym_lambda] = ACTIONS(73), + [anon_sym_yield] = ACTIONS(75), + [sym_ellipsis] = ACTIONS(77), + [sym_integer] = ACTIONS(79), + [sym_float] = ACTIONS(77), + [anon_sym_await] = ACTIONS(81), + [sym_true] = ACTIONS(79), + [sym_false] = ACTIONS(79), + [sym_none] = ACTIONS(79), [sym_comment] = ACTIONS(3), - [sym__newline] = ACTIONS(504), - [sym__indent] = ACTIONS(506), - [sym__string_start] = ACTIONS(81), - [sym__template_string_start] = ACTIONS(83), + [sym__newline] = ACTIONS(509), + [sym__indent] = ACTIONS(511), + [sym__string_start] = ACTIONS(83), + [sym__template_string_start] = ACTIONS(85), }, [STATE(115)] = { - [sym__simple_statements] = STATE(506), + [sym__simple_statements] = STATE(562), [sym_import_statement] = STATE(1332), [sym_future_import_statement] = STATE(1332), [sym_import_from_statement] = STATE(1332), [sym_print_statement] = STATE(1332), [sym_assert_statement] = STATE(1332), [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1158), + [sym_named_expression] = STATE(1156), [sym_return_statement] = STATE(1332), [sym_delete_statement] = STATE(1332), [sym_raise_statement] = STATE(1332), [sym_pass_statement] = STATE(1332), [sym_break_statement] = STATE(1332), [sym_continue_statement] = STATE(1332), - [sym_list_splat] = STATE(1549), - [sym_dictionary_splat] = STATE(1549), + [sym_list_splat] = STATE(1520), + [sym_dictionary_splat] = STATE(1520), [sym_global_statement] = STATE(1332), [sym_nonlocal_statement] = STATE(1332), [sym_exec_statement] = STATE(1332), [sym_type_alias_statement] = STATE(1332), - [sym_expression_list] = STATE(1551), - [sym_pattern] = STATE(1013), - [sym_tuple_pattern] = STATE(999), - [sym_list_pattern] = STATE(999), - [sym_list_splat_pattern] = STATE(999), - [sym_expression] = STATE(1185), - [sym_primary_expression] = STATE(779), - [sym_not_operator] = STATE(1158), - [sym_boolean_operator] = STATE(1158), - [sym_binary_operator] = STATE(908), - [sym_unary_operator] = STATE(908), - [sym_comparison_operator] = STATE(1158), - [sym_lambda] = STATE(1158), - [sym_assignment] = STATE(1551), - [sym_augmented_assignment] = STATE(1551), - [sym_pattern_list] = STATE(1024), - [sym_yield] = STATE(1551), - [sym_attribute] = STATE(494), - [sym_subscript] = STATE(494), - [sym_call] = STATE(908), - [sym_list] = STATE(908), - [sym_set] = STATE(908), - [sym_tuple] = STATE(908), - [sym_dictionary] = STATE(908), - [sym_list_comprehension] = STATE(908), - [sym_dictionary_comprehension] = STATE(908), - [sym_set_comprehension] = STATE(908), - [sym_generator_expression] = STATE(908), - [sym_parenthesized_expression] = STATE(908), - [sym_conditional_expression] = STATE(1158), - [sym_concatenated_string] = STATE(908), - [sym_string] = STATE(782), - [sym_concatenated_template_string] = STATE(908), - [sym_template_string] = STATE(763), - [sym_await] = STATE(908), + [sym_expression_list] = STATE(1522), + [sym_pattern] = STATE(1017), + [sym_tuple_pattern] = STATE(1001), + [sym_list_pattern] = STATE(1001), + [sym_list_splat_pattern] = STATE(1001), + [sym_expression] = STATE(1176), + [sym_primary_expression] = STATE(765), + [sym_not_operator] = STATE(1156), + [sym_boolean_operator] = STATE(1156), + [sym_binary_operator] = STATE(920), + [sym_unary_operator] = STATE(920), + [sym_comparison_operator] = STATE(1156), + [sym_lambda] = STATE(1156), + [sym_assignment] = STATE(1522), + [sym_augmented_assignment] = STATE(1522), + [sym_pattern_list] = STATE(1026), + [sym_yield] = STATE(1522), + [sym_attribute] = STATE(582), + [sym_subscript] = STATE(582), + [sym_call] = STATE(920), + [sym_list] = STATE(920), + [sym_set] = STATE(920), + [sym_tuple] = STATE(920), + [sym_dictionary] = STATE(920), + [sym_list_comprehension] = STATE(920), + [sym_dictionary_comprehension] = STATE(920), + [sym_set_comprehension] = STATE(920), + [sym_generator_expression] = STATE(920), + [sym_parenthesized_expression] = STATE(920), + [sym_conditional_expression] = STATE(1156), + [sym_concatenated_string] = STATE(920), + [sym_string] = STATE(775), + [sym_concatenated_template_string] = STATE(920), + [sym_template_string] = STATE(769), + [sym_await] = STATE(920), [sym_identifier] = ACTIONS(7), - [anon_sym_import] = ACTIONS(9), - [anon_sym_from] = ACTIONS(11), - [anon_sym_LPAREN] = ACTIONS(13), - [anon_sym_STAR] = ACTIONS(15), - [anon_sym_print] = ACTIONS(17), - [anon_sym_assert] = ACTIONS(19), - [anon_sym_return] = ACTIONS(21), - [anon_sym_del] = ACTIONS(23), - [anon_sym_raise] = ACTIONS(25), - [anon_sym_pass] = ACTIONS(27), - [anon_sym_break] = ACTIONS(29), - [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(322), - [anon_sym_match] = ACTIONS(322), - [anon_sym_DASH] = ACTIONS(47), - [anon_sym_PLUS] = ACTIONS(47), - [anon_sym_LBRACK] = ACTIONS(49), - [anon_sym_LBRACE] = ACTIONS(51), - [anon_sym_STAR_STAR] = ACTIONS(53), - [anon_sym_global] = ACTIONS(57), - [anon_sym_nonlocal] = ACTIONS(59), - [anon_sym_exec] = ACTIONS(61), - [anon_sym_type] = ACTIONS(63), - [anon_sym_not] = ACTIONS(69), - [anon_sym_TILDE] = ACTIONS(47), - [anon_sym_lambda] = ACTIONS(71), - [anon_sym_yield] = ACTIONS(73), - [sym_ellipsis] = ACTIONS(75), - [sym_integer] = ACTIONS(77), - [sym_float] = ACTIONS(75), - [anon_sym_await] = ACTIONS(79), - [sym_true] = ACTIONS(77), - [sym_false] = ACTIONS(77), - [sym_none] = ACTIONS(77), + [anon_sym_lazy] = ACTIONS(9), + [anon_sym_import] = ACTIONS(11), + [anon_sym_from] = ACTIONS(13), + [anon_sym_LPAREN] = ACTIONS(15), + [anon_sym_STAR] = ACTIONS(17), + [anon_sym_print] = ACTIONS(19), + [anon_sym_assert] = ACTIONS(21), + [anon_sym_return] = ACTIONS(23), + [anon_sym_del] = ACTIONS(25), + [anon_sym_raise] = ACTIONS(27), + [anon_sym_pass] = ACTIONS(29), + [anon_sym_break] = ACTIONS(31), + [anon_sym_continue] = ACTIONS(33), + [anon_sym_async] = ACTIONS(319), + [anon_sym_match] = ACTIONS(319), + [anon_sym_DASH] = ACTIONS(49), + [anon_sym_PLUS] = ACTIONS(49), + [anon_sym_LBRACK] = ACTIONS(51), + [anon_sym_LBRACE] = ACTIONS(53), + [anon_sym_STAR_STAR] = ACTIONS(55), + [anon_sym_global] = ACTIONS(59), + [anon_sym_nonlocal] = ACTIONS(61), + [anon_sym_exec] = ACTIONS(63), + [anon_sym_type] = ACTIONS(65), + [anon_sym_not] = ACTIONS(71), + [anon_sym_TILDE] = ACTIONS(49), + [anon_sym_lambda] = ACTIONS(73), + [anon_sym_yield] = ACTIONS(75), + [sym_ellipsis] = ACTIONS(77), + [sym_integer] = ACTIONS(79), + [sym_float] = ACTIONS(77), + [anon_sym_await] = ACTIONS(81), + [sym_true] = ACTIONS(79), + [sym_false] = ACTIONS(79), + [sym_none] = ACTIONS(79), [sym_comment] = ACTIONS(3), - [sym__newline] = ACTIONS(508), - [sym__indent] = ACTIONS(510), - [sym__string_start] = ACTIONS(81), - [sym__template_string_start] = ACTIONS(83), + [sym__newline] = ACTIONS(513), + [sym__indent] = ACTIONS(515), + [sym__string_start] = ACTIONS(83), + [sym__template_string_start] = ACTIONS(85), }, [STATE(116)] = { - [sym__simple_statements] = STATE(599), + [sym__simple_statements] = STATE(598), + [sym_import_statement] = STATE(1301), + [sym_future_import_statement] = STATE(1301), + [sym_import_from_statement] = STATE(1301), + [sym_print_statement] = STATE(1301), + [sym_assert_statement] = STATE(1301), + [sym_expression_statement] = STATE(1301), + [sym_named_expression] = STATE(1156), + [sym_return_statement] = STATE(1301), + [sym_delete_statement] = STATE(1301), + [sym_raise_statement] = STATE(1301), + [sym_pass_statement] = STATE(1301), + [sym_break_statement] = STATE(1301), + [sym_continue_statement] = STATE(1301), + [sym_list_splat] = STATE(1520), + [sym_dictionary_splat] = STATE(1520), + [sym_global_statement] = STATE(1301), + [sym_nonlocal_statement] = STATE(1301), + [sym_exec_statement] = STATE(1301), + [sym_type_alias_statement] = STATE(1301), + [sym_expression_list] = STATE(1522), + [sym_pattern] = STATE(1017), + [sym_tuple_pattern] = STATE(1001), + [sym_list_pattern] = STATE(1001), + [sym_list_splat_pattern] = STATE(1001), + [sym_expression] = STATE(1176), + [sym_primary_expression] = STATE(765), + [sym_not_operator] = STATE(1156), + [sym_boolean_operator] = STATE(1156), + [sym_binary_operator] = STATE(920), + [sym_unary_operator] = STATE(920), + [sym_comparison_operator] = STATE(1156), + [sym_lambda] = STATE(1156), + [sym_assignment] = STATE(1522), + [sym_augmented_assignment] = STATE(1522), + [sym_pattern_list] = STATE(1026), + [sym_yield] = STATE(1522), + [sym_attribute] = STATE(582), + [sym_subscript] = STATE(582), + [sym_call] = STATE(920), + [sym_list] = STATE(920), + [sym_set] = STATE(920), + [sym_tuple] = STATE(920), + [sym_dictionary] = STATE(920), + [sym_list_comprehension] = STATE(920), + [sym_dictionary_comprehension] = STATE(920), + [sym_set_comprehension] = STATE(920), + [sym_generator_expression] = STATE(920), + [sym_parenthesized_expression] = STATE(920), + [sym_conditional_expression] = STATE(1156), + [sym_concatenated_string] = STATE(920), + [sym_string] = STATE(775), + [sym_concatenated_template_string] = STATE(920), + [sym_template_string] = STATE(769), + [sym_await] = STATE(920), + [sym_identifier] = ACTIONS(7), + [anon_sym_lazy] = ACTIONS(9), + [anon_sym_import] = ACTIONS(11), + [anon_sym_from] = ACTIONS(13), + [anon_sym_LPAREN] = ACTIONS(15), + [anon_sym_STAR] = ACTIONS(17), + [anon_sym_print] = ACTIONS(19), + [anon_sym_assert] = ACTIONS(21), + [anon_sym_return] = ACTIONS(23), + [anon_sym_del] = ACTIONS(25), + [anon_sym_raise] = ACTIONS(27), + [anon_sym_pass] = ACTIONS(29), + [anon_sym_break] = ACTIONS(31), + [anon_sym_continue] = ACTIONS(33), + [anon_sym_async] = ACTIONS(319), + [anon_sym_match] = ACTIONS(319), + [anon_sym_DASH] = ACTIONS(49), + [anon_sym_PLUS] = ACTIONS(49), + [anon_sym_LBRACK] = ACTIONS(51), + [anon_sym_LBRACE] = ACTIONS(53), + [anon_sym_STAR_STAR] = ACTIONS(55), + [anon_sym_global] = ACTIONS(59), + [anon_sym_nonlocal] = ACTIONS(61), + [anon_sym_exec] = ACTIONS(63), + [anon_sym_type] = ACTIONS(65), + [anon_sym_not] = ACTIONS(71), + [anon_sym_TILDE] = ACTIONS(49), + [anon_sym_lambda] = ACTIONS(73), + [anon_sym_yield] = ACTIONS(75), + [sym_ellipsis] = ACTIONS(77), + [sym_integer] = ACTIONS(79), + [sym_float] = ACTIONS(77), + [anon_sym_await] = ACTIONS(81), + [sym_true] = ACTIONS(79), + [sym_false] = ACTIONS(79), + [sym_none] = ACTIONS(79), + [sym_comment] = ACTIONS(3), + [sym__newline] = ACTIONS(517), + [sym__indent] = ACTIONS(519), + [sym__string_start] = ACTIONS(83), + [sym__template_string_start] = ACTIONS(85), + }, + [STATE(117)] = { + [sym__simple_statements] = STATE(459), [sym_import_statement] = STATE(1332), [sym_future_import_statement] = STATE(1332), [sym_import_from_statement] = STATE(1332), [sym_print_statement] = STATE(1332), [sym_assert_statement] = STATE(1332), [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1158), + [sym_named_expression] = STATE(1156), [sym_return_statement] = STATE(1332), [sym_delete_statement] = STATE(1332), [sym_raise_statement] = STATE(1332), [sym_pass_statement] = STATE(1332), [sym_break_statement] = STATE(1332), [sym_continue_statement] = STATE(1332), - [sym_list_splat] = STATE(1549), - [sym_dictionary_splat] = STATE(1549), + [sym_list_splat] = STATE(1520), + [sym_dictionary_splat] = STATE(1520), [sym_global_statement] = STATE(1332), [sym_nonlocal_statement] = STATE(1332), [sym_exec_statement] = STATE(1332), [sym_type_alias_statement] = STATE(1332), - [sym_expression_list] = STATE(1551), - [sym_pattern] = STATE(1013), - [sym_tuple_pattern] = STATE(999), - [sym_list_pattern] = STATE(999), - [sym_list_splat_pattern] = STATE(999), - [sym_expression] = STATE(1185), - [sym_primary_expression] = STATE(779), - [sym_not_operator] = STATE(1158), - [sym_boolean_operator] = STATE(1158), - [sym_binary_operator] = STATE(908), - [sym_unary_operator] = STATE(908), - [sym_comparison_operator] = STATE(1158), - [sym_lambda] = STATE(1158), - [sym_assignment] = STATE(1551), - [sym_augmented_assignment] = STATE(1551), - [sym_pattern_list] = STATE(1024), - [sym_yield] = STATE(1551), - [sym_attribute] = STATE(494), - [sym_subscript] = STATE(494), - [sym_call] = STATE(908), - [sym_list] = STATE(908), - [sym_set] = STATE(908), - [sym_tuple] = STATE(908), - [sym_dictionary] = STATE(908), - [sym_list_comprehension] = STATE(908), - [sym_dictionary_comprehension] = STATE(908), - [sym_set_comprehension] = STATE(908), - [sym_generator_expression] = STATE(908), - [sym_parenthesized_expression] = STATE(908), - [sym_conditional_expression] = STATE(1158), - [sym_concatenated_string] = STATE(908), - [sym_string] = STATE(782), - [sym_concatenated_template_string] = STATE(908), - [sym_template_string] = STATE(763), - [sym_await] = STATE(908), + [sym_expression_list] = STATE(1522), + [sym_pattern] = STATE(1017), + [sym_tuple_pattern] = STATE(1001), + [sym_list_pattern] = STATE(1001), + [sym_list_splat_pattern] = STATE(1001), + [sym_expression] = STATE(1176), + [sym_primary_expression] = STATE(765), + [sym_not_operator] = STATE(1156), + [sym_boolean_operator] = STATE(1156), + [sym_binary_operator] = STATE(920), + [sym_unary_operator] = STATE(920), + [sym_comparison_operator] = STATE(1156), + [sym_lambda] = STATE(1156), + [sym_assignment] = STATE(1522), + [sym_augmented_assignment] = STATE(1522), + [sym_pattern_list] = STATE(1026), + [sym_yield] = STATE(1522), + [sym_attribute] = STATE(582), + [sym_subscript] = STATE(582), + [sym_call] = STATE(920), + [sym_list] = STATE(920), + [sym_set] = STATE(920), + [sym_tuple] = STATE(920), + [sym_dictionary] = STATE(920), + [sym_list_comprehension] = STATE(920), + [sym_dictionary_comprehension] = STATE(920), + [sym_set_comprehension] = STATE(920), + [sym_generator_expression] = STATE(920), + [sym_parenthesized_expression] = STATE(920), + [sym_conditional_expression] = STATE(1156), + [sym_concatenated_string] = STATE(920), + [sym_string] = STATE(775), + [sym_concatenated_template_string] = STATE(920), + [sym_template_string] = STATE(769), + [sym_await] = STATE(920), [sym_identifier] = ACTIONS(7), - [anon_sym_import] = ACTIONS(9), - [anon_sym_from] = ACTIONS(11), - [anon_sym_LPAREN] = ACTIONS(13), - [anon_sym_STAR] = ACTIONS(15), - [anon_sym_print] = ACTIONS(17), - [anon_sym_assert] = ACTIONS(19), - [anon_sym_return] = ACTIONS(21), - [anon_sym_del] = ACTIONS(23), - [anon_sym_raise] = ACTIONS(25), - [anon_sym_pass] = ACTIONS(27), - [anon_sym_break] = ACTIONS(29), - [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(322), - [anon_sym_match] = ACTIONS(322), - [anon_sym_DASH] = ACTIONS(47), - [anon_sym_PLUS] = ACTIONS(47), - [anon_sym_LBRACK] = ACTIONS(49), - [anon_sym_LBRACE] = ACTIONS(51), - [anon_sym_STAR_STAR] = ACTIONS(53), - [anon_sym_global] = ACTIONS(57), - [anon_sym_nonlocal] = ACTIONS(59), - [anon_sym_exec] = ACTIONS(61), - [anon_sym_type] = ACTIONS(63), - [anon_sym_not] = ACTIONS(69), - [anon_sym_TILDE] = ACTIONS(47), - [anon_sym_lambda] = ACTIONS(71), - [anon_sym_yield] = ACTIONS(73), - [sym_ellipsis] = ACTIONS(75), - [sym_integer] = ACTIONS(77), - [sym_float] = ACTIONS(75), - [anon_sym_await] = ACTIONS(79), - [sym_true] = ACTIONS(77), - [sym_false] = ACTIONS(77), - [sym_none] = ACTIONS(77), + [anon_sym_lazy] = ACTIONS(9), + [anon_sym_import] = ACTIONS(11), + [anon_sym_from] = ACTIONS(13), + [anon_sym_LPAREN] = ACTIONS(15), + [anon_sym_STAR] = ACTIONS(17), + [anon_sym_print] = ACTIONS(19), + [anon_sym_assert] = ACTIONS(21), + [anon_sym_return] = ACTIONS(23), + [anon_sym_del] = ACTIONS(25), + [anon_sym_raise] = ACTIONS(27), + [anon_sym_pass] = ACTIONS(29), + [anon_sym_break] = ACTIONS(31), + [anon_sym_continue] = ACTIONS(33), + [anon_sym_async] = ACTIONS(319), + [anon_sym_match] = ACTIONS(319), + [anon_sym_DASH] = ACTIONS(49), + [anon_sym_PLUS] = ACTIONS(49), + [anon_sym_LBRACK] = ACTIONS(51), + [anon_sym_LBRACE] = ACTIONS(53), + [anon_sym_STAR_STAR] = ACTIONS(55), + [anon_sym_global] = ACTIONS(59), + [anon_sym_nonlocal] = ACTIONS(61), + [anon_sym_exec] = ACTIONS(63), + [anon_sym_type] = ACTIONS(65), + [anon_sym_not] = ACTIONS(71), + [anon_sym_TILDE] = ACTIONS(49), + [anon_sym_lambda] = ACTIONS(73), + [anon_sym_yield] = ACTIONS(75), + [sym_ellipsis] = ACTIONS(77), + [sym_integer] = ACTIONS(79), + [sym_float] = ACTIONS(77), + [anon_sym_await] = ACTIONS(81), + [sym_true] = ACTIONS(79), + [sym_false] = ACTIONS(79), + [sym_none] = ACTIONS(79), [sym_comment] = ACTIONS(3), - [sym__newline] = ACTIONS(512), - [sym__indent] = ACTIONS(514), - [sym__string_start] = ACTIONS(81), - [sym__template_string_start] = ACTIONS(83), + [sym__newline] = ACTIONS(521), + [sym__indent] = ACTIONS(523), + [sym__string_start] = ACTIONS(83), + [sym__template_string_start] = ACTIONS(85), }, - [STATE(117)] = { - [sym__simple_statements] = STATE(537), - [sym_import_statement] = STATE(1348), - [sym_future_import_statement] = STATE(1348), - [sym_import_from_statement] = STATE(1348), - [sym_print_statement] = STATE(1348), - [sym_assert_statement] = STATE(1348), - [sym_expression_statement] = STATE(1348), - [sym_named_expression] = STATE(1158), - [sym_return_statement] = STATE(1348), - [sym_delete_statement] = STATE(1348), - [sym_raise_statement] = STATE(1348), - [sym_pass_statement] = STATE(1348), - [sym_break_statement] = STATE(1348), - [sym_continue_statement] = STATE(1348), - [sym_list_splat] = STATE(1549), - [sym_dictionary_splat] = STATE(1549), - [sym_global_statement] = STATE(1348), - [sym_nonlocal_statement] = STATE(1348), - [sym_exec_statement] = STATE(1348), - [sym_type_alias_statement] = STATE(1348), - [sym_expression_list] = STATE(1551), - [sym_pattern] = STATE(1013), - [sym_tuple_pattern] = STATE(999), - [sym_list_pattern] = STATE(999), - [sym_list_splat_pattern] = STATE(999), - [sym_expression] = STATE(1185), - [sym_primary_expression] = STATE(779), - [sym_not_operator] = STATE(1158), - [sym_boolean_operator] = STATE(1158), - [sym_binary_operator] = STATE(908), - [sym_unary_operator] = STATE(908), - [sym_comparison_operator] = STATE(1158), - [sym_lambda] = STATE(1158), - [sym_assignment] = STATE(1551), - [sym_augmented_assignment] = STATE(1551), - [sym_pattern_list] = STATE(1024), - [sym_yield] = STATE(1551), - [sym_attribute] = STATE(494), - [sym_subscript] = STATE(494), - [sym_call] = STATE(908), - [sym_list] = STATE(908), - [sym_set] = STATE(908), - [sym_tuple] = STATE(908), - [sym_dictionary] = STATE(908), - [sym_list_comprehension] = STATE(908), - [sym_dictionary_comprehension] = STATE(908), - [sym_set_comprehension] = STATE(908), - [sym_generator_expression] = STATE(908), - [sym_parenthesized_expression] = STATE(908), - [sym_conditional_expression] = STATE(1158), - [sym_concatenated_string] = STATE(908), - [sym_string] = STATE(782), - [sym_concatenated_template_string] = STATE(908), - [sym_template_string] = STATE(763), - [sym_await] = STATE(908), + [STATE(118)] = { + [sym__simple_statements] = STATE(331), + [sym_import_statement] = STATE(1301), + [sym_future_import_statement] = STATE(1301), + [sym_import_from_statement] = STATE(1301), + [sym_print_statement] = STATE(1301), + [sym_assert_statement] = STATE(1301), + [sym_expression_statement] = STATE(1301), + [sym_named_expression] = STATE(1156), + [sym_return_statement] = STATE(1301), + [sym_delete_statement] = STATE(1301), + [sym_raise_statement] = STATE(1301), + [sym_pass_statement] = STATE(1301), + [sym_break_statement] = STATE(1301), + [sym_continue_statement] = STATE(1301), + [sym_list_splat] = STATE(1520), + [sym_dictionary_splat] = STATE(1520), + [sym_global_statement] = STATE(1301), + [sym_nonlocal_statement] = STATE(1301), + [sym_exec_statement] = STATE(1301), + [sym_type_alias_statement] = STATE(1301), + [sym_expression_list] = STATE(1522), + [sym_pattern] = STATE(1017), + [sym_tuple_pattern] = STATE(1001), + [sym_list_pattern] = STATE(1001), + [sym_list_splat_pattern] = STATE(1001), + [sym_expression] = STATE(1176), + [sym_primary_expression] = STATE(765), + [sym_not_operator] = STATE(1156), + [sym_boolean_operator] = STATE(1156), + [sym_binary_operator] = STATE(920), + [sym_unary_operator] = STATE(920), + [sym_comparison_operator] = STATE(1156), + [sym_lambda] = STATE(1156), + [sym_assignment] = STATE(1522), + [sym_augmented_assignment] = STATE(1522), + [sym_pattern_list] = STATE(1026), + [sym_yield] = STATE(1522), + [sym_attribute] = STATE(582), + [sym_subscript] = STATE(582), + [sym_call] = STATE(920), + [sym_list] = STATE(920), + [sym_set] = STATE(920), + [sym_tuple] = STATE(920), + [sym_dictionary] = STATE(920), + [sym_list_comprehension] = STATE(920), + [sym_dictionary_comprehension] = STATE(920), + [sym_set_comprehension] = STATE(920), + [sym_generator_expression] = STATE(920), + [sym_parenthesized_expression] = STATE(920), + [sym_conditional_expression] = STATE(1156), + [sym_concatenated_string] = STATE(920), + [sym_string] = STATE(775), + [sym_concatenated_template_string] = STATE(920), + [sym_template_string] = STATE(769), + [sym_await] = STATE(920), [sym_identifier] = ACTIONS(7), - [anon_sym_import] = ACTIONS(9), - [anon_sym_from] = ACTIONS(11), - [anon_sym_LPAREN] = ACTIONS(13), - [anon_sym_STAR] = ACTIONS(15), - [anon_sym_print] = ACTIONS(17), - [anon_sym_assert] = ACTIONS(19), - [anon_sym_return] = ACTIONS(21), - [anon_sym_del] = ACTIONS(23), - [anon_sym_raise] = ACTIONS(25), - [anon_sym_pass] = ACTIONS(27), - [anon_sym_break] = ACTIONS(29), - [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(322), - [anon_sym_match] = ACTIONS(322), - [anon_sym_DASH] = ACTIONS(47), - [anon_sym_PLUS] = ACTIONS(47), - [anon_sym_LBRACK] = ACTIONS(49), - [anon_sym_LBRACE] = ACTIONS(51), - [anon_sym_STAR_STAR] = ACTIONS(53), - [anon_sym_global] = ACTIONS(57), - [anon_sym_nonlocal] = ACTIONS(59), - [anon_sym_exec] = ACTIONS(61), - [anon_sym_type] = ACTIONS(63), - [anon_sym_not] = ACTIONS(69), - [anon_sym_TILDE] = ACTIONS(47), - [anon_sym_lambda] = ACTIONS(71), - [anon_sym_yield] = ACTIONS(73), - [sym_ellipsis] = ACTIONS(75), - [sym_integer] = ACTIONS(77), - [sym_float] = ACTIONS(75), - [anon_sym_await] = ACTIONS(79), - [sym_true] = ACTIONS(77), - [sym_false] = ACTIONS(77), - [sym_none] = ACTIONS(77), + [anon_sym_lazy] = ACTIONS(9), + [anon_sym_import] = ACTIONS(11), + [anon_sym_from] = ACTIONS(13), + [anon_sym_LPAREN] = ACTIONS(15), + [anon_sym_STAR] = ACTIONS(17), + [anon_sym_print] = ACTIONS(19), + [anon_sym_assert] = ACTIONS(21), + [anon_sym_return] = ACTIONS(23), + [anon_sym_del] = ACTIONS(25), + [anon_sym_raise] = ACTIONS(27), + [anon_sym_pass] = ACTIONS(29), + [anon_sym_break] = ACTIONS(31), + [anon_sym_continue] = ACTIONS(33), + [anon_sym_async] = ACTIONS(319), + [anon_sym_match] = ACTIONS(319), + [anon_sym_DASH] = ACTIONS(49), + [anon_sym_PLUS] = ACTIONS(49), + [anon_sym_LBRACK] = ACTIONS(51), + [anon_sym_LBRACE] = ACTIONS(53), + [anon_sym_STAR_STAR] = ACTIONS(55), + [anon_sym_global] = ACTIONS(59), + [anon_sym_nonlocal] = ACTIONS(61), + [anon_sym_exec] = ACTIONS(63), + [anon_sym_type] = ACTIONS(65), + [anon_sym_not] = ACTIONS(71), + [anon_sym_TILDE] = ACTIONS(49), + [anon_sym_lambda] = ACTIONS(73), + [anon_sym_yield] = ACTIONS(75), + [sym_ellipsis] = ACTIONS(77), + [sym_integer] = ACTIONS(79), + [sym_float] = ACTIONS(77), + [anon_sym_await] = ACTIONS(81), + [sym_true] = ACTIONS(79), + [sym_false] = ACTIONS(79), + [sym_none] = ACTIONS(79), [sym_comment] = ACTIONS(3), - [sym__newline] = ACTIONS(516), - [sym__indent] = ACTIONS(518), - [sym__string_start] = ACTIONS(81), - [sym__template_string_start] = ACTIONS(83), + [sym__newline] = ACTIONS(525), + [sym__indent] = ACTIONS(527), + [sym__string_start] = ACTIONS(83), + [sym__template_string_start] = ACTIONS(85), }, - [STATE(118)] = { + [STATE(119)] = { [sym__simple_statements] = STATE(602), - [sym_import_statement] = STATE(1332), - [sym_future_import_statement] = STATE(1332), - [sym_import_from_statement] = STATE(1332), - [sym_print_statement] = STATE(1332), - [sym_assert_statement] = STATE(1332), - [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1158), - [sym_return_statement] = STATE(1332), - [sym_delete_statement] = STATE(1332), - [sym_raise_statement] = STATE(1332), - [sym_pass_statement] = STATE(1332), - [sym_break_statement] = STATE(1332), - [sym_continue_statement] = STATE(1332), - [sym_list_splat] = STATE(1549), - [sym_dictionary_splat] = STATE(1549), - [sym_global_statement] = STATE(1332), - [sym_nonlocal_statement] = STATE(1332), - [sym_exec_statement] = STATE(1332), - [sym_type_alias_statement] = STATE(1332), - [sym_expression_list] = STATE(1551), - [sym_pattern] = STATE(1013), - [sym_tuple_pattern] = STATE(999), - [sym_list_pattern] = STATE(999), - [sym_list_splat_pattern] = STATE(999), - [sym_expression] = STATE(1185), - [sym_primary_expression] = STATE(779), - [sym_not_operator] = STATE(1158), - [sym_boolean_operator] = STATE(1158), - [sym_binary_operator] = STATE(908), - [sym_unary_operator] = STATE(908), - [sym_comparison_operator] = STATE(1158), - [sym_lambda] = STATE(1158), - [sym_assignment] = STATE(1551), - [sym_augmented_assignment] = STATE(1551), - [sym_pattern_list] = STATE(1024), - [sym_yield] = STATE(1551), - [sym_attribute] = STATE(494), - [sym_subscript] = STATE(494), - [sym_call] = STATE(908), - [sym_list] = STATE(908), - [sym_set] = STATE(908), - [sym_tuple] = STATE(908), - [sym_dictionary] = STATE(908), - [sym_list_comprehension] = STATE(908), - [sym_dictionary_comprehension] = STATE(908), - [sym_set_comprehension] = STATE(908), - [sym_generator_expression] = STATE(908), - [sym_parenthesized_expression] = STATE(908), - [sym_conditional_expression] = STATE(1158), - [sym_concatenated_string] = STATE(908), - [sym_string] = STATE(782), - [sym_concatenated_template_string] = STATE(908), - [sym_template_string] = STATE(763), - [sym_await] = STATE(908), + [sym_import_statement] = STATE(1301), + [sym_future_import_statement] = STATE(1301), + [sym_import_from_statement] = STATE(1301), + [sym_print_statement] = STATE(1301), + [sym_assert_statement] = STATE(1301), + [sym_expression_statement] = STATE(1301), + [sym_named_expression] = STATE(1156), + [sym_return_statement] = STATE(1301), + [sym_delete_statement] = STATE(1301), + [sym_raise_statement] = STATE(1301), + [sym_pass_statement] = STATE(1301), + [sym_break_statement] = STATE(1301), + [sym_continue_statement] = STATE(1301), + [sym_list_splat] = STATE(1520), + [sym_dictionary_splat] = STATE(1520), + [sym_global_statement] = STATE(1301), + [sym_nonlocal_statement] = STATE(1301), + [sym_exec_statement] = STATE(1301), + [sym_type_alias_statement] = STATE(1301), + [sym_expression_list] = STATE(1522), + [sym_pattern] = STATE(1017), + [sym_tuple_pattern] = STATE(1001), + [sym_list_pattern] = STATE(1001), + [sym_list_splat_pattern] = STATE(1001), + [sym_expression] = STATE(1176), + [sym_primary_expression] = STATE(765), + [sym_not_operator] = STATE(1156), + [sym_boolean_operator] = STATE(1156), + [sym_binary_operator] = STATE(920), + [sym_unary_operator] = STATE(920), + [sym_comparison_operator] = STATE(1156), + [sym_lambda] = STATE(1156), + [sym_assignment] = STATE(1522), + [sym_augmented_assignment] = STATE(1522), + [sym_pattern_list] = STATE(1026), + [sym_yield] = STATE(1522), + [sym_attribute] = STATE(582), + [sym_subscript] = STATE(582), + [sym_call] = STATE(920), + [sym_list] = STATE(920), + [sym_set] = STATE(920), + [sym_tuple] = STATE(920), + [sym_dictionary] = STATE(920), + [sym_list_comprehension] = STATE(920), + [sym_dictionary_comprehension] = STATE(920), + [sym_set_comprehension] = STATE(920), + [sym_generator_expression] = STATE(920), + [sym_parenthesized_expression] = STATE(920), + [sym_conditional_expression] = STATE(1156), + [sym_concatenated_string] = STATE(920), + [sym_string] = STATE(775), + [sym_concatenated_template_string] = STATE(920), + [sym_template_string] = STATE(769), + [sym_await] = STATE(920), [sym_identifier] = ACTIONS(7), - [anon_sym_import] = ACTIONS(9), - [anon_sym_from] = ACTIONS(11), - [anon_sym_LPAREN] = ACTIONS(13), - [anon_sym_STAR] = ACTIONS(15), - [anon_sym_print] = ACTIONS(17), - [anon_sym_assert] = ACTIONS(19), - [anon_sym_return] = ACTIONS(21), - [anon_sym_del] = ACTIONS(23), - [anon_sym_raise] = ACTIONS(25), - [anon_sym_pass] = ACTIONS(27), - [anon_sym_break] = ACTIONS(29), - [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(322), - [anon_sym_match] = ACTIONS(322), - [anon_sym_DASH] = ACTIONS(47), - [anon_sym_PLUS] = ACTIONS(47), - [anon_sym_LBRACK] = ACTIONS(49), - [anon_sym_LBRACE] = ACTIONS(51), - [anon_sym_STAR_STAR] = ACTIONS(53), - [anon_sym_global] = ACTIONS(57), - [anon_sym_nonlocal] = ACTIONS(59), - [anon_sym_exec] = ACTIONS(61), - [anon_sym_type] = ACTIONS(63), - [anon_sym_not] = ACTIONS(69), - [anon_sym_TILDE] = ACTIONS(47), - [anon_sym_lambda] = ACTIONS(71), - [anon_sym_yield] = ACTIONS(73), - [sym_ellipsis] = ACTIONS(75), - [sym_integer] = ACTIONS(77), - [sym_float] = ACTIONS(75), - [anon_sym_await] = ACTIONS(79), - [sym_true] = ACTIONS(77), - [sym_false] = ACTIONS(77), - [sym_none] = ACTIONS(77), + [anon_sym_lazy] = ACTIONS(9), + [anon_sym_import] = ACTIONS(11), + [anon_sym_from] = ACTIONS(13), + [anon_sym_LPAREN] = ACTIONS(15), + [anon_sym_STAR] = ACTIONS(17), + [anon_sym_print] = ACTIONS(19), + [anon_sym_assert] = ACTIONS(21), + [anon_sym_return] = ACTIONS(23), + [anon_sym_del] = ACTIONS(25), + [anon_sym_raise] = ACTIONS(27), + [anon_sym_pass] = ACTIONS(29), + [anon_sym_break] = ACTIONS(31), + [anon_sym_continue] = ACTIONS(33), + [anon_sym_async] = ACTIONS(319), + [anon_sym_match] = ACTIONS(319), + [anon_sym_DASH] = ACTIONS(49), + [anon_sym_PLUS] = ACTIONS(49), + [anon_sym_LBRACK] = ACTIONS(51), + [anon_sym_LBRACE] = ACTIONS(53), + [anon_sym_STAR_STAR] = ACTIONS(55), + [anon_sym_global] = ACTIONS(59), + [anon_sym_nonlocal] = ACTIONS(61), + [anon_sym_exec] = ACTIONS(63), + [anon_sym_type] = ACTIONS(65), + [anon_sym_not] = ACTIONS(71), + [anon_sym_TILDE] = ACTIONS(49), + [anon_sym_lambda] = ACTIONS(73), + [anon_sym_yield] = ACTIONS(75), + [sym_ellipsis] = ACTIONS(77), + [sym_integer] = ACTIONS(79), + [sym_float] = ACTIONS(77), + [anon_sym_await] = ACTIONS(81), + [sym_true] = ACTIONS(79), + [sym_false] = ACTIONS(79), + [sym_none] = ACTIONS(79), [sym_comment] = ACTIONS(3), - [sym__newline] = ACTIONS(520), - [sym__indent] = ACTIONS(522), - [sym__string_start] = ACTIONS(81), - [sym__template_string_start] = ACTIONS(83), + [sym__newline] = ACTIONS(529), + [sym__indent] = ACTIONS(531), + [sym__string_start] = ACTIONS(83), + [sym__template_string_start] = ACTIONS(85), }, - [STATE(119)] = { - [sym__simple_statements] = STATE(444), + [STATE(120)] = { + [sym__simple_statements] = STATE(440), [sym_import_statement] = STATE(1332), [sym_future_import_statement] = STATE(1332), [sym_import_from_statement] = STATE(1332), [sym_print_statement] = STATE(1332), [sym_assert_statement] = STATE(1332), [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1158), + [sym_named_expression] = STATE(1156), [sym_return_statement] = STATE(1332), [sym_delete_statement] = STATE(1332), [sym_raise_statement] = STATE(1332), [sym_pass_statement] = STATE(1332), [sym_break_statement] = STATE(1332), [sym_continue_statement] = STATE(1332), - [sym_list_splat] = STATE(1549), - [sym_dictionary_splat] = STATE(1549), + [sym_list_splat] = STATE(1520), + [sym_dictionary_splat] = STATE(1520), [sym_global_statement] = STATE(1332), [sym_nonlocal_statement] = STATE(1332), [sym_exec_statement] = STATE(1332), [sym_type_alias_statement] = STATE(1332), - [sym_expression_list] = STATE(1551), - [sym_pattern] = STATE(1013), - [sym_tuple_pattern] = STATE(999), - [sym_list_pattern] = STATE(999), - [sym_list_splat_pattern] = STATE(999), - [sym_expression] = STATE(1185), - [sym_primary_expression] = STATE(779), - [sym_not_operator] = STATE(1158), - [sym_boolean_operator] = STATE(1158), - [sym_binary_operator] = STATE(908), - [sym_unary_operator] = STATE(908), - [sym_comparison_operator] = STATE(1158), - [sym_lambda] = STATE(1158), - [sym_assignment] = STATE(1551), - [sym_augmented_assignment] = STATE(1551), - [sym_pattern_list] = STATE(1024), - [sym_yield] = STATE(1551), - [sym_attribute] = STATE(494), - [sym_subscript] = STATE(494), - [sym_call] = STATE(908), - [sym_list] = STATE(908), - [sym_set] = STATE(908), - [sym_tuple] = STATE(908), - [sym_dictionary] = STATE(908), - [sym_list_comprehension] = STATE(908), - [sym_dictionary_comprehension] = STATE(908), - [sym_set_comprehension] = STATE(908), - [sym_generator_expression] = STATE(908), - [sym_parenthesized_expression] = STATE(908), - [sym_conditional_expression] = STATE(1158), - [sym_concatenated_string] = STATE(908), - [sym_string] = STATE(782), - [sym_concatenated_template_string] = STATE(908), - [sym_template_string] = STATE(763), - [sym_await] = STATE(908), + [sym_expression_list] = STATE(1522), + [sym_pattern] = STATE(1017), + [sym_tuple_pattern] = STATE(1001), + [sym_list_pattern] = STATE(1001), + [sym_list_splat_pattern] = STATE(1001), + [sym_expression] = STATE(1176), + [sym_primary_expression] = STATE(765), + [sym_not_operator] = STATE(1156), + [sym_boolean_operator] = STATE(1156), + [sym_binary_operator] = STATE(920), + [sym_unary_operator] = STATE(920), + [sym_comparison_operator] = STATE(1156), + [sym_lambda] = STATE(1156), + [sym_assignment] = STATE(1522), + [sym_augmented_assignment] = STATE(1522), + [sym_pattern_list] = STATE(1026), + [sym_yield] = STATE(1522), + [sym_attribute] = STATE(582), + [sym_subscript] = STATE(582), + [sym_call] = STATE(920), + [sym_list] = STATE(920), + [sym_set] = STATE(920), + [sym_tuple] = STATE(920), + [sym_dictionary] = STATE(920), + [sym_list_comprehension] = STATE(920), + [sym_dictionary_comprehension] = STATE(920), + [sym_set_comprehension] = STATE(920), + [sym_generator_expression] = STATE(920), + [sym_parenthesized_expression] = STATE(920), + [sym_conditional_expression] = STATE(1156), + [sym_concatenated_string] = STATE(920), + [sym_string] = STATE(775), + [sym_concatenated_template_string] = STATE(920), + [sym_template_string] = STATE(769), + [sym_await] = STATE(920), [sym_identifier] = ACTIONS(7), - [anon_sym_import] = ACTIONS(9), - [anon_sym_from] = ACTIONS(11), - [anon_sym_LPAREN] = ACTIONS(13), - [anon_sym_STAR] = ACTIONS(15), - [anon_sym_print] = ACTIONS(17), - [anon_sym_assert] = ACTIONS(19), - [anon_sym_return] = ACTIONS(21), - [anon_sym_del] = ACTIONS(23), - [anon_sym_raise] = ACTIONS(25), - [anon_sym_pass] = ACTIONS(27), - [anon_sym_break] = ACTIONS(29), - [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(322), - [anon_sym_match] = ACTIONS(322), - [anon_sym_DASH] = ACTIONS(47), - [anon_sym_PLUS] = ACTIONS(47), - [anon_sym_LBRACK] = ACTIONS(49), - [anon_sym_LBRACE] = ACTIONS(51), - [anon_sym_STAR_STAR] = ACTIONS(53), - [anon_sym_global] = ACTIONS(57), - [anon_sym_nonlocal] = ACTIONS(59), - [anon_sym_exec] = ACTIONS(61), - [anon_sym_type] = ACTIONS(63), - [anon_sym_not] = ACTIONS(69), - [anon_sym_TILDE] = ACTIONS(47), - [anon_sym_lambda] = ACTIONS(71), - [anon_sym_yield] = ACTIONS(73), - [sym_ellipsis] = ACTIONS(75), - [sym_integer] = ACTIONS(77), - [sym_float] = ACTIONS(75), - [anon_sym_await] = ACTIONS(79), - [sym_true] = ACTIONS(77), - [sym_false] = ACTIONS(77), - [sym_none] = ACTIONS(77), + [anon_sym_lazy] = ACTIONS(9), + [anon_sym_import] = ACTIONS(11), + [anon_sym_from] = ACTIONS(13), + [anon_sym_LPAREN] = ACTIONS(15), + [anon_sym_STAR] = ACTIONS(17), + [anon_sym_print] = ACTIONS(19), + [anon_sym_assert] = ACTIONS(21), + [anon_sym_return] = ACTIONS(23), + [anon_sym_del] = ACTIONS(25), + [anon_sym_raise] = ACTIONS(27), + [anon_sym_pass] = ACTIONS(29), + [anon_sym_break] = ACTIONS(31), + [anon_sym_continue] = ACTIONS(33), + [anon_sym_async] = ACTIONS(319), + [anon_sym_match] = ACTIONS(319), + [anon_sym_DASH] = ACTIONS(49), + [anon_sym_PLUS] = ACTIONS(49), + [anon_sym_LBRACK] = ACTIONS(51), + [anon_sym_LBRACE] = ACTIONS(53), + [anon_sym_STAR_STAR] = ACTIONS(55), + [anon_sym_global] = ACTIONS(59), + [anon_sym_nonlocal] = ACTIONS(61), + [anon_sym_exec] = ACTIONS(63), + [anon_sym_type] = ACTIONS(65), + [anon_sym_not] = ACTIONS(71), + [anon_sym_TILDE] = ACTIONS(49), + [anon_sym_lambda] = ACTIONS(73), + [anon_sym_yield] = ACTIONS(75), + [sym_ellipsis] = ACTIONS(77), + [sym_integer] = ACTIONS(79), + [sym_float] = ACTIONS(77), + [anon_sym_await] = ACTIONS(81), + [sym_true] = ACTIONS(79), + [sym_false] = ACTIONS(79), + [sym_none] = ACTIONS(79), [sym_comment] = ACTIONS(3), - [sym__newline] = ACTIONS(524), - [sym__indent] = ACTIONS(526), - [sym__string_start] = ACTIONS(81), - [sym__template_string_start] = ACTIONS(83), - }, - [STATE(120)] = { - [sym__simple_statements] = STATE(451), - [sym_import_statement] = STATE(1348), - [sym_future_import_statement] = STATE(1348), - [sym_import_from_statement] = STATE(1348), - [sym_print_statement] = STATE(1348), - [sym_assert_statement] = STATE(1348), - [sym_expression_statement] = STATE(1348), - [sym_named_expression] = STATE(1158), - [sym_return_statement] = STATE(1348), - [sym_delete_statement] = STATE(1348), - [sym_raise_statement] = STATE(1348), - [sym_pass_statement] = STATE(1348), - [sym_break_statement] = STATE(1348), - [sym_continue_statement] = STATE(1348), - [sym_list_splat] = STATE(1549), - [sym_dictionary_splat] = STATE(1549), - [sym_global_statement] = STATE(1348), - [sym_nonlocal_statement] = STATE(1348), - [sym_exec_statement] = STATE(1348), - [sym_type_alias_statement] = STATE(1348), - [sym_expression_list] = STATE(1551), - [sym_pattern] = STATE(1013), - [sym_tuple_pattern] = STATE(999), - [sym_list_pattern] = STATE(999), - [sym_list_splat_pattern] = STATE(999), - [sym_expression] = STATE(1185), - [sym_primary_expression] = STATE(779), - [sym_not_operator] = STATE(1158), - [sym_boolean_operator] = STATE(1158), - [sym_binary_operator] = STATE(908), - [sym_unary_operator] = STATE(908), - [sym_comparison_operator] = STATE(1158), - [sym_lambda] = STATE(1158), - [sym_assignment] = STATE(1551), - [sym_augmented_assignment] = STATE(1551), - [sym_pattern_list] = STATE(1024), - [sym_yield] = STATE(1551), - [sym_attribute] = STATE(494), - [sym_subscript] = STATE(494), - [sym_call] = STATE(908), - [sym_list] = STATE(908), - [sym_set] = STATE(908), - [sym_tuple] = STATE(908), - [sym_dictionary] = STATE(908), - [sym_list_comprehension] = STATE(908), - [sym_dictionary_comprehension] = STATE(908), - [sym_set_comprehension] = STATE(908), - [sym_generator_expression] = STATE(908), - [sym_parenthesized_expression] = STATE(908), - [sym_conditional_expression] = STATE(1158), - [sym_concatenated_string] = STATE(908), - [sym_string] = STATE(782), - [sym_concatenated_template_string] = STATE(908), - [sym_template_string] = STATE(763), - [sym_await] = STATE(908), - [sym_identifier] = ACTIONS(7), - [anon_sym_import] = ACTIONS(9), - [anon_sym_from] = ACTIONS(11), - [anon_sym_LPAREN] = ACTIONS(13), - [anon_sym_STAR] = ACTIONS(15), - [anon_sym_print] = ACTIONS(17), - [anon_sym_assert] = ACTIONS(19), - [anon_sym_return] = ACTIONS(21), - [anon_sym_del] = ACTIONS(23), - [anon_sym_raise] = ACTIONS(25), - [anon_sym_pass] = ACTIONS(27), - [anon_sym_break] = ACTIONS(29), - [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(322), - [anon_sym_match] = ACTIONS(322), - [anon_sym_DASH] = ACTIONS(47), - [anon_sym_PLUS] = ACTIONS(47), - [anon_sym_LBRACK] = ACTIONS(49), - [anon_sym_LBRACE] = ACTIONS(51), - [anon_sym_STAR_STAR] = ACTIONS(53), - [anon_sym_global] = ACTIONS(57), - [anon_sym_nonlocal] = ACTIONS(59), - [anon_sym_exec] = ACTIONS(61), - [anon_sym_type] = ACTIONS(63), - [anon_sym_not] = ACTIONS(69), - [anon_sym_TILDE] = ACTIONS(47), - [anon_sym_lambda] = ACTIONS(71), - [anon_sym_yield] = ACTIONS(73), - [sym_ellipsis] = ACTIONS(75), - [sym_integer] = ACTIONS(77), - [sym_float] = ACTIONS(75), - [anon_sym_await] = ACTIONS(79), - [sym_true] = ACTIONS(77), - [sym_false] = ACTIONS(77), - [sym_none] = ACTIONS(77), - [sym_comment] = ACTIONS(3), - [sym__newline] = ACTIONS(528), - [sym__indent] = ACTIONS(530), - [sym__string_start] = ACTIONS(81), - [sym__template_string_start] = ACTIONS(83), + [sym__newline] = ACTIONS(533), + [sym__indent] = ACTIONS(535), + [sym__string_start] = ACTIONS(83), + [sym__template_string_start] = ACTIONS(85), }, [STATE(121)] = { - [sym__simple_statements] = STATE(613), - [sym_import_statement] = STATE(1348), - [sym_future_import_statement] = STATE(1348), - [sym_import_from_statement] = STATE(1348), - [sym_print_statement] = STATE(1348), - [sym_assert_statement] = STATE(1348), - [sym_expression_statement] = STATE(1348), - [sym_named_expression] = STATE(1158), - [sym_return_statement] = STATE(1348), - [sym_delete_statement] = STATE(1348), - [sym_raise_statement] = STATE(1348), - [sym_pass_statement] = STATE(1348), - [sym_break_statement] = STATE(1348), - [sym_continue_statement] = STATE(1348), - [sym_list_splat] = STATE(1549), - [sym_dictionary_splat] = STATE(1549), - [sym_global_statement] = STATE(1348), - [sym_nonlocal_statement] = STATE(1348), - [sym_exec_statement] = STATE(1348), - [sym_type_alias_statement] = STATE(1348), - [sym_expression_list] = STATE(1551), - [sym_pattern] = STATE(1013), - [sym_tuple_pattern] = STATE(999), - [sym_list_pattern] = STATE(999), - [sym_list_splat_pattern] = STATE(999), - [sym_expression] = STATE(1185), - [sym_primary_expression] = STATE(779), - [sym_not_operator] = STATE(1158), - [sym_boolean_operator] = STATE(1158), - [sym_binary_operator] = STATE(908), - [sym_unary_operator] = STATE(908), - [sym_comparison_operator] = STATE(1158), - [sym_lambda] = STATE(1158), - [sym_assignment] = STATE(1551), - [sym_augmented_assignment] = STATE(1551), - [sym_pattern_list] = STATE(1024), - [sym_yield] = STATE(1551), - [sym_attribute] = STATE(494), - [sym_subscript] = STATE(494), - [sym_call] = STATE(908), - [sym_list] = STATE(908), - [sym_set] = STATE(908), - [sym_tuple] = STATE(908), - [sym_dictionary] = STATE(908), - [sym_list_comprehension] = STATE(908), - [sym_dictionary_comprehension] = STATE(908), - [sym_set_comprehension] = STATE(908), - [sym_generator_expression] = STATE(908), - [sym_parenthesized_expression] = STATE(908), - [sym_conditional_expression] = STATE(1158), - [sym_concatenated_string] = STATE(908), - [sym_string] = STATE(782), - [sym_concatenated_template_string] = STATE(908), - [sym_template_string] = STATE(763), - [sym_await] = STATE(908), + [sym__simple_statements] = STATE(556), + [sym_import_statement] = STATE(1301), + [sym_future_import_statement] = STATE(1301), + [sym_import_from_statement] = STATE(1301), + [sym_print_statement] = STATE(1301), + [sym_assert_statement] = STATE(1301), + [sym_expression_statement] = STATE(1301), + [sym_named_expression] = STATE(1156), + [sym_return_statement] = STATE(1301), + [sym_delete_statement] = STATE(1301), + [sym_raise_statement] = STATE(1301), + [sym_pass_statement] = STATE(1301), + [sym_break_statement] = STATE(1301), + [sym_continue_statement] = STATE(1301), + [sym_list_splat] = STATE(1520), + [sym_dictionary_splat] = STATE(1520), + [sym_global_statement] = STATE(1301), + [sym_nonlocal_statement] = STATE(1301), + [sym_exec_statement] = STATE(1301), + [sym_type_alias_statement] = STATE(1301), + [sym_expression_list] = STATE(1522), + [sym_pattern] = STATE(1017), + [sym_tuple_pattern] = STATE(1001), + [sym_list_pattern] = STATE(1001), + [sym_list_splat_pattern] = STATE(1001), + [sym_expression] = STATE(1176), + [sym_primary_expression] = STATE(765), + [sym_not_operator] = STATE(1156), + [sym_boolean_operator] = STATE(1156), + [sym_binary_operator] = STATE(920), + [sym_unary_operator] = STATE(920), + [sym_comparison_operator] = STATE(1156), + [sym_lambda] = STATE(1156), + [sym_assignment] = STATE(1522), + [sym_augmented_assignment] = STATE(1522), + [sym_pattern_list] = STATE(1026), + [sym_yield] = STATE(1522), + [sym_attribute] = STATE(582), + [sym_subscript] = STATE(582), + [sym_call] = STATE(920), + [sym_list] = STATE(920), + [sym_set] = STATE(920), + [sym_tuple] = STATE(920), + [sym_dictionary] = STATE(920), + [sym_list_comprehension] = STATE(920), + [sym_dictionary_comprehension] = STATE(920), + [sym_set_comprehension] = STATE(920), + [sym_generator_expression] = STATE(920), + [sym_parenthesized_expression] = STATE(920), + [sym_conditional_expression] = STATE(1156), + [sym_concatenated_string] = STATE(920), + [sym_string] = STATE(775), + [sym_concatenated_template_string] = STATE(920), + [sym_template_string] = STATE(769), + [sym_await] = STATE(920), [sym_identifier] = ACTIONS(7), - [anon_sym_import] = ACTIONS(9), - [anon_sym_from] = ACTIONS(11), - [anon_sym_LPAREN] = ACTIONS(13), - [anon_sym_STAR] = ACTIONS(15), - [anon_sym_print] = ACTIONS(17), - [anon_sym_assert] = ACTIONS(19), - [anon_sym_return] = ACTIONS(21), - [anon_sym_del] = ACTIONS(23), - [anon_sym_raise] = ACTIONS(25), - [anon_sym_pass] = ACTIONS(27), - [anon_sym_break] = ACTIONS(29), - [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(322), - [anon_sym_match] = ACTIONS(322), - [anon_sym_DASH] = ACTIONS(47), - [anon_sym_PLUS] = ACTIONS(47), - [anon_sym_LBRACK] = ACTIONS(49), - [anon_sym_LBRACE] = ACTIONS(51), - [anon_sym_STAR_STAR] = ACTIONS(53), - [anon_sym_global] = ACTIONS(57), - [anon_sym_nonlocal] = ACTIONS(59), - [anon_sym_exec] = ACTIONS(61), - [anon_sym_type] = ACTIONS(63), - [anon_sym_not] = ACTIONS(69), - [anon_sym_TILDE] = ACTIONS(47), - [anon_sym_lambda] = ACTIONS(71), - [anon_sym_yield] = ACTIONS(73), - [sym_ellipsis] = ACTIONS(75), - [sym_integer] = ACTIONS(77), - [sym_float] = ACTIONS(75), - [anon_sym_await] = ACTIONS(79), - [sym_true] = ACTIONS(77), - [sym_false] = ACTIONS(77), - [sym_none] = ACTIONS(77), + [anon_sym_lazy] = ACTIONS(9), + [anon_sym_import] = ACTIONS(11), + [anon_sym_from] = ACTIONS(13), + [anon_sym_LPAREN] = ACTIONS(15), + [anon_sym_STAR] = ACTIONS(17), + [anon_sym_print] = ACTIONS(19), + [anon_sym_assert] = ACTIONS(21), + [anon_sym_return] = ACTIONS(23), + [anon_sym_del] = ACTIONS(25), + [anon_sym_raise] = ACTIONS(27), + [anon_sym_pass] = ACTIONS(29), + [anon_sym_break] = ACTIONS(31), + [anon_sym_continue] = ACTIONS(33), + [anon_sym_async] = ACTIONS(319), + [anon_sym_match] = ACTIONS(319), + [anon_sym_DASH] = ACTIONS(49), + [anon_sym_PLUS] = ACTIONS(49), + [anon_sym_LBRACK] = ACTIONS(51), + [anon_sym_LBRACE] = ACTIONS(53), + [anon_sym_STAR_STAR] = ACTIONS(55), + [anon_sym_global] = ACTIONS(59), + [anon_sym_nonlocal] = ACTIONS(61), + [anon_sym_exec] = ACTIONS(63), + [anon_sym_type] = ACTIONS(65), + [anon_sym_not] = ACTIONS(71), + [anon_sym_TILDE] = ACTIONS(49), + [anon_sym_lambda] = ACTIONS(73), + [anon_sym_yield] = ACTIONS(75), + [sym_ellipsis] = ACTIONS(77), + [sym_integer] = ACTIONS(79), + [sym_float] = ACTIONS(77), + [anon_sym_await] = ACTIONS(81), + [sym_true] = ACTIONS(79), + [sym_false] = ACTIONS(79), + [sym_none] = ACTIONS(79), [sym_comment] = ACTIONS(3), - [sym__newline] = ACTIONS(532), - [sym__indent] = ACTIONS(534), - [sym__string_start] = ACTIONS(81), - [sym__template_string_start] = ACTIONS(83), + [sym__newline] = ACTIONS(537), + [sym__indent] = ACTIONS(539), + [sym__string_start] = ACTIONS(83), + [sym__template_string_start] = ACTIONS(85), }, [STATE(122)] = { - [sym__simple_statements] = STATE(445), - [sym_import_statement] = STATE(1332), - [sym_future_import_statement] = STATE(1332), - [sym_import_from_statement] = STATE(1332), - [sym_print_statement] = STATE(1332), - [sym_assert_statement] = STATE(1332), - [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1158), - [sym_return_statement] = STATE(1332), - [sym_delete_statement] = STATE(1332), - [sym_raise_statement] = STATE(1332), - [sym_pass_statement] = STATE(1332), - [sym_break_statement] = STATE(1332), - [sym_continue_statement] = STATE(1332), - [sym_list_splat] = STATE(1549), - [sym_dictionary_splat] = STATE(1549), - [sym_global_statement] = STATE(1332), - [sym_nonlocal_statement] = STATE(1332), - [sym_exec_statement] = STATE(1332), - [sym_type_alias_statement] = STATE(1332), - [sym_expression_list] = STATE(1551), - [sym_pattern] = STATE(1013), - [sym_tuple_pattern] = STATE(999), - [sym_list_pattern] = STATE(999), - [sym_list_splat_pattern] = STATE(999), - [sym_expression] = STATE(1185), - [sym_primary_expression] = STATE(779), - [sym_not_operator] = STATE(1158), - [sym_boolean_operator] = STATE(1158), - [sym_binary_operator] = STATE(908), - [sym_unary_operator] = STATE(908), - [sym_comparison_operator] = STATE(1158), - [sym_lambda] = STATE(1158), - [sym_assignment] = STATE(1551), - [sym_augmented_assignment] = STATE(1551), - [sym_pattern_list] = STATE(1024), - [sym_yield] = STATE(1551), - [sym_attribute] = STATE(494), - [sym_subscript] = STATE(494), - [sym_call] = STATE(908), - [sym_list] = STATE(908), - [sym_set] = STATE(908), - [sym_tuple] = STATE(908), - [sym_dictionary] = STATE(908), - [sym_list_comprehension] = STATE(908), - [sym_dictionary_comprehension] = STATE(908), - [sym_set_comprehension] = STATE(908), - [sym_generator_expression] = STATE(908), - [sym_parenthesized_expression] = STATE(908), - [sym_conditional_expression] = STATE(1158), - [sym_concatenated_string] = STATE(908), - [sym_string] = STATE(782), - [sym_concatenated_template_string] = STATE(908), - [sym_template_string] = STATE(763), - [sym_await] = STATE(908), + [sym__simple_statements] = STATE(457), + [sym_import_statement] = STATE(1301), + [sym_future_import_statement] = STATE(1301), + [sym_import_from_statement] = STATE(1301), + [sym_print_statement] = STATE(1301), + [sym_assert_statement] = STATE(1301), + [sym_expression_statement] = STATE(1301), + [sym_named_expression] = STATE(1156), + [sym_return_statement] = STATE(1301), + [sym_delete_statement] = STATE(1301), + [sym_raise_statement] = STATE(1301), + [sym_pass_statement] = STATE(1301), + [sym_break_statement] = STATE(1301), + [sym_continue_statement] = STATE(1301), + [sym_list_splat] = STATE(1520), + [sym_dictionary_splat] = STATE(1520), + [sym_global_statement] = STATE(1301), + [sym_nonlocal_statement] = STATE(1301), + [sym_exec_statement] = STATE(1301), + [sym_type_alias_statement] = STATE(1301), + [sym_expression_list] = STATE(1522), + [sym_pattern] = STATE(1017), + [sym_tuple_pattern] = STATE(1001), + [sym_list_pattern] = STATE(1001), + [sym_list_splat_pattern] = STATE(1001), + [sym_expression] = STATE(1176), + [sym_primary_expression] = STATE(765), + [sym_not_operator] = STATE(1156), + [sym_boolean_operator] = STATE(1156), + [sym_binary_operator] = STATE(920), + [sym_unary_operator] = STATE(920), + [sym_comparison_operator] = STATE(1156), + [sym_lambda] = STATE(1156), + [sym_assignment] = STATE(1522), + [sym_augmented_assignment] = STATE(1522), + [sym_pattern_list] = STATE(1026), + [sym_yield] = STATE(1522), + [sym_attribute] = STATE(582), + [sym_subscript] = STATE(582), + [sym_call] = STATE(920), + [sym_list] = STATE(920), + [sym_set] = STATE(920), + [sym_tuple] = STATE(920), + [sym_dictionary] = STATE(920), + [sym_list_comprehension] = STATE(920), + [sym_dictionary_comprehension] = STATE(920), + [sym_set_comprehension] = STATE(920), + [sym_generator_expression] = STATE(920), + [sym_parenthesized_expression] = STATE(920), + [sym_conditional_expression] = STATE(1156), + [sym_concatenated_string] = STATE(920), + [sym_string] = STATE(775), + [sym_concatenated_template_string] = STATE(920), + [sym_template_string] = STATE(769), + [sym_await] = STATE(920), [sym_identifier] = ACTIONS(7), - [anon_sym_import] = ACTIONS(9), - [anon_sym_from] = ACTIONS(11), - [anon_sym_LPAREN] = ACTIONS(13), - [anon_sym_STAR] = ACTIONS(15), - [anon_sym_print] = ACTIONS(17), - [anon_sym_assert] = ACTIONS(19), - [anon_sym_return] = ACTIONS(21), - [anon_sym_del] = ACTIONS(23), - [anon_sym_raise] = ACTIONS(25), - [anon_sym_pass] = ACTIONS(27), - [anon_sym_break] = ACTIONS(29), - [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(322), - [anon_sym_match] = ACTIONS(322), - [anon_sym_DASH] = ACTIONS(47), - [anon_sym_PLUS] = ACTIONS(47), - [anon_sym_LBRACK] = ACTIONS(49), - [anon_sym_LBRACE] = ACTIONS(51), - [anon_sym_STAR_STAR] = ACTIONS(53), - [anon_sym_global] = ACTIONS(57), - [anon_sym_nonlocal] = ACTIONS(59), - [anon_sym_exec] = ACTIONS(61), - [anon_sym_type] = ACTIONS(63), - [anon_sym_not] = ACTIONS(69), - [anon_sym_TILDE] = ACTIONS(47), - [anon_sym_lambda] = ACTIONS(71), - [anon_sym_yield] = ACTIONS(73), - [sym_ellipsis] = ACTIONS(75), - [sym_integer] = ACTIONS(77), - [sym_float] = ACTIONS(75), - [anon_sym_await] = ACTIONS(79), - [sym_true] = ACTIONS(77), - [sym_false] = ACTIONS(77), - [sym_none] = ACTIONS(77), + [anon_sym_lazy] = ACTIONS(9), + [anon_sym_import] = ACTIONS(11), + [anon_sym_from] = ACTIONS(13), + [anon_sym_LPAREN] = ACTIONS(15), + [anon_sym_STAR] = ACTIONS(17), + [anon_sym_print] = ACTIONS(19), + [anon_sym_assert] = ACTIONS(21), + [anon_sym_return] = ACTIONS(23), + [anon_sym_del] = ACTIONS(25), + [anon_sym_raise] = ACTIONS(27), + [anon_sym_pass] = ACTIONS(29), + [anon_sym_break] = ACTIONS(31), + [anon_sym_continue] = ACTIONS(33), + [anon_sym_async] = ACTIONS(319), + [anon_sym_match] = ACTIONS(319), + [anon_sym_DASH] = ACTIONS(49), + [anon_sym_PLUS] = ACTIONS(49), + [anon_sym_LBRACK] = ACTIONS(51), + [anon_sym_LBRACE] = ACTIONS(53), + [anon_sym_STAR_STAR] = ACTIONS(55), + [anon_sym_global] = ACTIONS(59), + [anon_sym_nonlocal] = ACTIONS(61), + [anon_sym_exec] = ACTIONS(63), + [anon_sym_type] = ACTIONS(65), + [anon_sym_not] = ACTIONS(71), + [anon_sym_TILDE] = ACTIONS(49), + [anon_sym_lambda] = ACTIONS(73), + [anon_sym_yield] = ACTIONS(75), + [sym_ellipsis] = ACTIONS(77), + [sym_integer] = ACTIONS(79), + [sym_float] = ACTIONS(77), + [anon_sym_await] = ACTIONS(81), + [sym_true] = ACTIONS(79), + [sym_false] = ACTIONS(79), + [sym_none] = ACTIONS(79), [sym_comment] = ACTIONS(3), - [sym__newline] = ACTIONS(536), - [sym__indent] = ACTIONS(538), - [sym__string_start] = ACTIONS(81), - [sym__template_string_start] = ACTIONS(83), + [sym__newline] = ACTIONS(541), + [sym__indent] = ACTIONS(543), + [sym__string_start] = ACTIONS(83), + [sym__template_string_start] = ACTIONS(85), }, [STATE(123)] = { - [sym__simple_statements] = STATE(500), - [sym_import_statement] = STATE(1348), - [sym_future_import_statement] = STATE(1348), - [sym_import_from_statement] = STATE(1348), - [sym_print_statement] = STATE(1348), - [sym_assert_statement] = STATE(1348), - [sym_expression_statement] = STATE(1348), - [sym_named_expression] = STATE(1158), - [sym_return_statement] = STATE(1348), - [sym_delete_statement] = STATE(1348), - [sym_raise_statement] = STATE(1348), - [sym_pass_statement] = STATE(1348), - [sym_break_statement] = STATE(1348), - [sym_continue_statement] = STATE(1348), - [sym_list_splat] = STATE(1549), - [sym_dictionary_splat] = STATE(1549), - [sym_global_statement] = STATE(1348), - [sym_nonlocal_statement] = STATE(1348), - [sym_exec_statement] = STATE(1348), - [sym_type_alias_statement] = STATE(1348), - [sym_expression_list] = STATE(1551), - [sym_pattern] = STATE(1013), - [sym_tuple_pattern] = STATE(999), - [sym_list_pattern] = STATE(999), - [sym_list_splat_pattern] = STATE(999), - [sym_expression] = STATE(1185), - [sym_primary_expression] = STATE(779), - [sym_not_operator] = STATE(1158), - [sym_boolean_operator] = STATE(1158), - [sym_binary_operator] = STATE(908), - [sym_unary_operator] = STATE(908), - [sym_comparison_operator] = STATE(1158), - [sym_lambda] = STATE(1158), - [sym_assignment] = STATE(1551), - [sym_augmented_assignment] = STATE(1551), - [sym_pattern_list] = STATE(1024), - [sym_yield] = STATE(1551), - [sym_attribute] = STATE(494), - [sym_subscript] = STATE(494), - [sym_call] = STATE(908), - [sym_list] = STATE(908), - [sym_set] = STATE(908), - [sym_tuple] = STATE(908), - [sym_dictionary] = STATE(908), - [sym_list_comprehension] = STATE(908), - [sym_dictionary_comprehension] = STATE(908), - [sym_set_comprehension] = STATE(908), - [sym_generator_expression] = STATE(908), - [sym_parenthesized_expression] = STATE(908), - [sym_conditional_expression] = STATE(1158), - [sym_concatenated_string] = STATE(908), - [sym_string] = STATE(782), - [sym_concatenated_template_string] = STATE(908), - [sym_template_string] = STATE(763), - [sym_await] = STATE(908), + [sym__simple_statements] = STATE(464), + [sym_import_statement] = STATE(1301), + [sym_future_import_statement] = STATE(1301), + [sym_import_from_statement] = STATE(1301), + [sym_print_statement] = STATE(1301), + [sym_assert_statement] = STATE(1301), + [sym_expression_statement] = STATE(1301), + [sym_named_expression] = STATE(1156), + [sym_return_statement] = STATE(1301), + [sym_delete_statement] = STATE(1301), + [sym_raise_statement] = STATE(1301), + [sym_pass_statement] = STATE(1301), + [sym_break_statement] = STATE(1301), + [sym_continue_statement] = STATE(1301), + [sym_list_splat] = STATE(1520), + [sym_dictionary_splat] = STATE(1520), + [sym_global_statement] = STATE(1301), + [sym_nonlocal_statement] = STATE(1301), + [sym_exec_statement] = STATE(1301), + [sym_type_alias_statement] = STATE(1301), + [sym_expression_list] = STATE(1522), + [sym_pattern] = STATE(1017), + [sym_tuple_pattern] = STATE(1001), + [sym_list_pattern] = STATE(1001), + [sym_list_splat_pattern] = STATE(1001), + [sym_expression] = STATE(1176), + [sym_primary_expression] = STATE(765), + [sym_not_operator] = STATE(1156), + [sym_boolean_operator] = STATE(1156), + [sym_binary_operator] = STATE(920), + [sym_unary_operator] = STATE(920), + [sym_comparison_operator] = STATE(1156), + [sym_lambda] = STATE(1156), + [sym_assignment] = STATE(1522), + [sym_augmented_assignment] = STATE(1522), + [sym_pattern_list] = STATE(1026), + [sym_yield] = STATE(1522), + [sym_attribute] = STATE(582), + [sym_subscript] = STATE(582), + [sym_call] = STATE(920), + [sym_list] = STATE(920), + [sym_set] = STATE(920), + [sym_tuple] = STATE(920), + [sym_dictionary] = STATE(920), + [sym_list_comprehension] = STATE(920), + [sym_dictionary_comprehension] = STATE(920), + [sym_set_comprehension] = STATE(920), + [sym_generator_expression] = STATE(920), + [sym_parenthesized_expression] = STATE(920), + [sym_conditional_expression] = STATE(1156), + [sym_concatenated_string] = STATE(920), + [sym_string] = STATE(775), + [sym_concatenated_template_string] = STATE(920), + [sym_template_string] = STATE(769), + [sym_await] = STATE(920), [sym_identifier] = ACTIONS(7), - [anon_sym_import] = ACTIONS(9), - [anon_sym_from] = ACTIONS(11), - [anon_sym_LPAREN] = ACTIONS(13), - [anon_sym_STAR] = ACTIONS(15), - [anon_sym_print] = ACTIONS(17), - [anon_sym_assert] = ACTIONS(19), - [anon_sym_return] = ACTIONS(21), - [anon_sym_del] = ACTIONS(23), - [anon_sym_raise] = ACTIONS(25), - [anon_sym_pass] = ACTIONS(27), - [anon_sym_break] = ACTIONS(29), - [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(322), - [anon_sym_match] = ACTIONS(322), - [anon_sym_DASH] = ACTIONS(47), - [anon_sym_PLUS] = ACTIONS(47), - [anon_sym_LBRACK] = ACTIONS(49), - [anon_sym_LBRACE] = ACTIONS(51), - [anon_sym_STAR_STAR] = ACTIONS(53), - [anon_sym_global] = ACTIONS(57), - [anon_sym_nonlocal] = ACTIONS(59), - [anon_sym_exec] = ACTIONS(61), - [anon_sym_type] = ACTIONS(63), - [anon_sym_not] = ACTIONS(69), - [anon_sym_TILDE] = ACTIONS(47), - [anon_sym_lambda] = ACTIONS(71), - [anon_sym_yield] = ACTIONS(73), - [sym_ellipsis] = ACTIONS(75), - [sym_integer] = ACTIONS(77), - [sym_float] = ACTIONS(75), - [anon_sym_await] = ACTIONS(79), - [sym_true] = ACTIONS(77), - [sym_false] = ACTIONS(77), - [sym_none] = ACTIONS(77), + [anon_sym_lazy] = ACTIONS(9), + [anon_sym_import] = ACTIONS(11), + [anon_sym_from] = ACTIONS(13), + [anon_sym_LPAREN] = ACTIONS(15), + [anon_sym_STAR] = ACTIONS(17), + [anon_sym_print] = ACTIONS(19), + [anon_sym_assert] = ACTIONS(21), + [anon_sym_return] = ACTIONS(23), + [anon_sym_del] = ACTIONS(25), + [anon_sym_raise] = ACTIONS(27), + [anon_sym_pass] = ACTIONS(29), + [anon_sym_break] = ACTIONS(31), + [anon_sym_continue] = ACTIONS(33), + [anon_sym_async] = ACTIONS(319), + [anon_sym_match] = ACTIONS(319), + [anon_sym_DASH] = ACTIONS(49), + [anon_sym_PLUS] = ACTIONS(49), + [anon_sym_LBRACK] = ACTIONS(51), + [anon_sym_LBRACE] = ACTIONS(53), + [anon_sym_STAR_STAR] = ACTIONS(55), + [anon_sym_global] = ACTIONS(59), + [anon_sym_nonlocal] = ACTIONS(61), + [anon_sym_exec] = ACTIONS(63), + [anon_sym_type] = ACTIONS(65), + [anon_sym_not] = ACTIONS(71), + [anon_sym_TILDE] = ACTIONS(49), + [anon_sym_lambda] = ACTIONS(73), + [anon_sym_yield] = ACTIONS(75), + [sym_ellipsis] = ACTIONS(77), + [sym_integer] = ACTIONS(79), + [sym_float] = ACTIONS(77), + [anon_sym_await] = ACTIONS(81), + [sym_true] = ACTIONS(79), + [sym_false] = ACTIONS(79), + [sym_none] = ACTIONS(79), [sym_comment] = ACTIONS(3), - [sym__newline] = ACTIONS(540), - [sym__indent] = ACTIONS(542), - [sym__string_start] = ACTIONS(81), - [sym__template_string_start] = ACTIONS(83), + [sym__newline] = ACTIONS(545), + [sym__indent] = ACTIONS(547), + [sym__string_start] = ACTIONS(83), + [sym__template_string_start] = ACTIONS(85), }, [STATE(124)] = { - [sym__simple_statements] = STATE(1187), - [sym_import_statement] = STATE(1373), - [sym_future_import_statement] = STATE(1373), - [sym_import_from_statement] = STATE(1373), - [sym_print_statement] = STATE(1373), - [sym_assert_statement] = STATE(1373), - [sym_expression_statement] = STATE(1373), - [sym_named_expression] = STATE(1158), - [sym_return_statement] = STATE(1373), - [sym_delete_statement] = STATE(1373), - [sym_raise_statement] = STATE(1373), - [sym_pass_statement] = STATE(1373), - [sym_break_statement] = STATE(1373), - [sym_continue_statement] = STATE(1373), - [sym_list_splat] = STATE(1549), - [sym_dictionary_splat] = STATE(1549), - [sym_global_statement] = STATE(1373), - [sym_nonlocal_statement] = STATE(1373), - [sym_exec_statement] = STATE(1373), - [sym_type_alias_statement] = STATE(1373), - [sym_expression_list] = STATE(1551), - [sym_pattern] = STATE(1013), - [sym_tuple_pattern] = STATE(999), - [sym_list_pattern] = STATE(999), - [sym_list_splat_pattern] = STATE(999), - [sym_expression] = STATE(1185), - [sym_primary_expression] = STATE(779), - [sym_not_operator] = STATE(1158), - [sym_boolean_operator] = STATE(1158), - [sym_binary_operator] = STATE(908), - [sym_unary_operator] = STATE(908), - [sym_comparison_operator] = STATE(1158), - [sym_lambda] = STATE(1158), - [sym_assignment] = STATE(1551), - [sym_augmented_assignment] = STATE(1551), - [sym_pattern_list] = STATE(1024), - [sym_yield] = STATE(1551), - [sym_attribute] = STATE(494), - [sym_subscript] = STATE(494), - [sym_call] = STATE(908), - [sym_list] = STATE(908), - [sym_set] = STATE(908), - [sym_tuple] = STATE(908), - [sym_dictionary] = STATE(908), - [sym_list_comprehension] = STATE(908), - [sym_dictionary_comprehension] = STATE(908), - [sym_set_comprehension] = STATE(908), - [sym_generator_expression] = STATE(908), - [sym_parenthesized_expression] = STATE(908), - [sym_conditional_expression] = STATE(1158), - [sym_concatenated_string] = STATE(908), - [sym_string] = STATE(782), - [sym_concatenated_template_string] = STATE(908), - [sym_template_string] = STATE(763), - [sym_await] = STATE(908), + [sym__simple_statements] = STATE(1171), + [sym_import_statement] = STATE(1299), + [sym_future_import_statement] = STATE(1299), + [sym_import_from_statement] = STATE(1299), + [sym_print_statement] = STATE(1299), + [sym_assert_statement] = STATE(1299), + [sym_expression_statement] = STATE(1299), + [sym_named_expression] = STATE(1156), + [sym_return_statement] = STATE(1299), + [sym_delete_statement] = STATE(1299), + [sym_raise_statement] = STATE(1299), + [sym_pass_statement] = STATE(1299), + [sym_break_statement] = STATE(1299), + [sym_continue_statement] = STATE(1299), + [sym_list_splat] = STATE(1520), + [sym_dictionary_splat] = STATE(1520), + [sym_global_statement] = STATE(1299), + [sym_nonlocal_statement] = STATE(1299), + [sym_exec_statement] = STATE(1299), + [sym_type_alias_statement] = STATE(1299), + [sym_expression_list] = STATE(1522), + [sym_pattern] = STATE(1017), + [sym_tuple_pattern] = STATE(1001), + [sym_list_pattern] = STATE(1001), + [sym_list_splat_pattern] = STATE(1001), + [sym_expression] = STATE(1176), + [sym_primary_expression] = STATE(765), + [sym_not_operator] = STATE(1156), + [sym_boolean_operator] = STATE(1156), + [sym_binary_operator] = STATE(920), + [sym_unary_operator] = STATE(920), + [sym_comparison_operator] = STATE(1156), + [sym_lambda] = STATE(1156), + [sym_assignment] = STATE(1522), + [sym_augmented_assignment] = STATE(1522), + [sym_pattern_list] = STATE(1026), + [sym_yield] = STATE(1522), + [sym_attribute] = STATE(582), + [sym_subscript] = STATE(582), + [sym_call] = STATE(920), + [sym_list] = STATE(920), + [sym_set] = STATE(920), + [sym_tuple] = STATE(920), + [sym_dictionary] = STATE(920), + [sym_list_comprehension] = STATE(920), + [sym_dictionary_comprehension] = STATE(920), + [sym_set_comprehension] = STATE(920), + [sym_generator_expression] = STATE(920), + [sym_parenthesized_expression] = STATE(920), + [sym_conditional_expression] = STATE(1156), + [sym_concatenated_string] = STATE(920), + [sym_string] = STATE(775), + [sym_concatenated_template_string] = STATE(920), + [sym_template_string] = STATE(769), + [sym_await] = STATE(920), [sym_identifier] = ACTIONS(7), - [anon_sym_import] = ACTIONS(9), - [anon_sym_from] = ACTIONS(11), - [anon_sym_LPAREN] = ACTIONS(13), - [anon_sym_STAR] = ACTIONS(15), - [anon_sym_print] = ACTIONS(17), - [anon_sym_assert] = ACTIONS(19), - [anon_sym_return] = ACTIONS(21), - [anon_sym_del] = ACTIONS(23), - [anon_sym_raise] = ACTIONS(25), - [anon_sym_pass] = ACTIONS(27), - [anon_sym_break] = ACTIONS(29), - [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(322), - [anon_sym_match] = ACTIONS(322), - [anon_sym_DASH] = ACTIONS(47), - [anon_sym_PLUS] = ACTIONS(47), - [anon_sym_LBRACK] = ACTIONS(49), - [anon_sym_LBRACE] = ACTIONS(51), - [anon_sym_STAR_STAR] = ACTIONS(53), - [anon_sym_global] = ACTIONS(57), - [anon_sym_nonlocal] = ACTIONS(59), - [anon_sym_exec] = ACTIONS(61), - [anon_sym_type] = ACTIONS(63), - [anon_sym_not] = ACTIONS(69), - [anon_sym_TILDE] = ACTIONS(47), - [anon_sym_lambda] = ACTIONS(71), - [anon_sym_yield] = ACTIONS(73), - [sym_ellipsis] = ACTIONS(75), - [sym_integer] = ACTIONS(77), - [sym_float] = ACTIONS(75), - [anon_sym_await] = ACTIONS(79), - [sym_true] = ACTIONS(77), - [sym_false] = ACTIONS(77), - [sym_none] = ACTIONS(77), + [anon_sym_lazy] = ACTIONS(9), + [anon_sym_import] = ACTIONS(11), + [anon_sym_from] = ACTIONS(13), + [anon_sym_LPAREN] = ACTIONS(15), + [anon_sym_STAR] = ACTIONS(17), + [anon_sym_print] = ACTIONS(19), + [anon_sym_assert] = ACTIONS(21), + [anon_sym_return] = ACTIONS(23), + [anon_sym_del] = ACTIONS(25), + [anon_sym_raise] = ACTIONS(27), + [anon_sym_pass] = ACTIONS(29), + [anon_sym_break] = ACTIONS(31), + [anon_sym_continue] = ACTIONS(33), + [anon_sym_async] = ACTIONS(319), + [anon_sym_match] = ACTIONS(319), + [anon_sym_DASH] = ACTIONS(49), + [anon_sym_PLUS] = ACTIONS(49), + [anon_sym_LBRACK] = ACTIONS(51), + [anon_sym_LBRACE] = ACTIONS(53), + [anon_sym_STAR_STAR] = ACTIONS(55), + [anon_sym_global] = ACTIONS(59), + [anon_sym_nonlocal] = ACTIONS(61), + [anon_sym_exec] = ACTIONS(63), + [anon_sym_type] = ACTIONS(65), + [anon_sym_not] = ACTIONS(71), + [anon_sym_TILDE] = ACTIONS(49), + [anon_sym_lambda] = ACTIONS(73), + [anon_sym_yield] = ACTIONS(75), + [sym_ellipsis] = ACTIONS(77), + [sym_integer] = ACTIONS(79), + [sym_float] = ACTIONS(77), + [anon_sym_await] = ACTIONS(81), + [sym_true] = ACTIONS(79), + [sym_false] = ACTIONS(79), + [sym_none] = ACTIONS(79), [sym_comment] = ACTIONS(3), - [sym__newline] = ACTIONS(544), - [sym__indent] = ACTIONS(546), - [sym__string_start] = ACTIONS(81), - [sym__template_string_start] = ACTIONS(83), + [sym__newline] = ACTIONS(549), + [sym__indent] = ACTIONS(551), + [sym__string_start] = ACTIONS(83), + [sym__template_string_start] = ACTIONS(85), }, [STATE(125)] = { - [sym__simple_statements] = STATE(543), - [sym_import_statement] = STATE(1348), - [sym_future_import_statement] = STATE(1348), - [sym_import_from_statement] = STATE(1348), - [sym_print_statement] = STATE(1348), - [sym_assert_statement] = STATE(1348), - [sym_expression_statement] = STATE(1348), - [sym_named_expression] = STATE(1158), - [sym_return_statement] = STATE(1348), - [sym_delete_statement] = STATE(1348), - [sym_raise_statement] = STATE(1348), - [sym_pass_statement] = STATE(1348), - [sym_break_statement] = STATE(1348), - [sym_continue_statement] = STATE(1348), - [sym_list_splat] = STATE(1549), - [sym_dictionary_splat] = STATE(1549), - [sym_global_statement] = STATE(1348), - [sym_nonlocal_statement] = STATE(1348), - [sym_exec_statement] = STATE(1348), - [sym_type_alias_statement] = STATE(1348), - [sym_expression_list] = STATE(1551), - [sym_pattern] = STATE(1013), - [sym_tuple_pattern] = STATE(999), - [sym_list_pattern] = STATE(999), - [sym_list_splat_pattern] = STATE(999), - [sym_expression] = STATE(1185), - [sym_primary_expression] = STATE(779), - [sym_not_operator] = STATE(1158), - [sym_boolean_operator] = STATE(1158), - [sym_binary_operator] = STATE(908), - [sym_unary_operator] = STATE(908), - [sym_comparison_operator] = STATE(1158), - [sym_lambda] = STATE(1158), - [sym_assignment] = STATE(1551), - [sym_augmented_assignment] = STATE(1551), - [sym_pattern_list] = STATE(1024), - [sym_yield] = STATE(1551), - [sym_attribute] = STATE(494), - [sym_subscript] = STATE(494), - [sym_call] = STATE(908), - [sym_list] = STATE(908), - [sym_set] = STATE(908), - [sym_tuple] = STATE(908), - [sym_dictionary] = STATE(908), - [sym_list_comprehension] = STATE(908), - [sym_dictionary_comprehension] = STATE(908), - [sym_set_comprehension] = STATE(908), - [sym_generator_expression] = STATE(908), - [sym_parenthesized_expression] = STATE(908), - [sym_conditional_expression] = STATE(1158), - [sym_concatenated_string] = STATE(908), - [sym_string] = STATE(782), - [sym_concatenated_template_string] = STATE(908), - [sym_template_string] = STATE(763), - [sym_await] = STATE(908), + [sym__simple_statements] = STATE(454), + [sym_import_statement] = STATE(1301), + [sym_future_import_statement] = STATE(1301), + [sym_import_from_statement] = STATE(1301), + [sym_print_statement] = STATE(1301), + [sym_assert_statement] = STATE(1301), + [sym_expression_statement] = STATE(1301), + [sym_named_expression] = STATE(1156), + [sym_return_statement] = STATE(1301), + [sym_delete_statement] = STATE(1301), + [sym_raise_statement] = STATE(1301), + [sym_pass_statement] = STATE(1301), + [sym_break_statement] = STATE(1301), + [sym_continue_statement] = STATE(1301), + [sym_list_splat] = STATE(1520), + [sym_dictionary_splat] = STATE(1520), + [sym_global_statement] = STATE(1301), + [sym_nonlocal_statement] = STATE(1301), + [sym_exec_statement] = STATE(1301), + [sym_type_alias_statement] = STATE(1301), + [sym_expression_list] = STATE(1522), + [sym_pattern] = STATE(1017), + [sym_tuple_pattern] = STATE(1001), + [sym_list_pattern] = STATE(1001), + [sym_list_splat_pattern] = STATE(1001), + [sym_expression] = STATE(1176), + [sym_primary_expression] = STATE(765), + [sym_not_operator] = STATE(1156), + [sym_boolean_operator] = STATE(1156), + [sym_binary_operator] = STATE(920), + [sym_unary_operator] = STATE(920), + [sym_comparison_operator] = STATE(1156), + [sym_lambda] = STATE(1156), + [sym_assignment] = STATE(1522), + [sym_augmented_assignment] = STATE(1522), + [sym_pattern_list] = STATE(1026), + [sym_yield] = STATE(1522), + [sym_attribute] = STATE(582), + [sym_subscript] = STATE(582), + [sym_call] = STATE(920), + [sym_list] = STATE(920), + [sym_set] = STATE(920), + [sym_tuple] = STATE(920), + [sym_dictionary] = STATE(920), + [sym_list_comprehension] = STATE(920), + [sym_dictionary_comprehension] = STATE(920), + [sym_set_comprehension] = STATE(920), + [sym_generator_expression] = STATE(920), + [sym_parenthesized_expression] = STATE(920), + [sym_conditional_expression] = STATE(1156), + [sym_concatenated_string] = STATE(920), + [sym_string] = STATE(775), + [sym_concatenated_template_string] = STATE(920), + [sym_template_string] = STATE(769), + [sym_await] = STATE(920), [sym_identifier] = ACTIONS(7), - [anon_sym_import] = ACTIONS(9), - [anon_sym_from] = ACTIONS(11), - [anon_sym_LPAREN] = ACTIONS(13), - [anon_sym_STAR] = ACTIONS(15), - [anon_sym_print] = ACTIONS(17), - [anon_sym_assert] = ACTIONS(19), - [anon_sym_return] = ACTIONS(21), - [anon_sym_del] = ACTIONS(23), - [anon_sym_raise] = ACTIONS(25), - [anon_sym_pass] = ACTIONS(27), - [anon_sym_break] = ACTIONS(29), - [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(322), - [anon_sym_match] = ACTIONS(322), - [anon_sym_DASH] = ACTIONS(47), - [anon_sym_PLUS] = ACTIONS(47), - [anon_sym_LBRACK] = ACTIONS(49), - [anon_sym_LBRACE] = ACTIONS(51), - [anon_sym_STAR_STAR] = ACTIONS(53), - [anon_sym_global] = ACTIONS(57), - [anon_sym_nonlocal] = ACTIONS(59), - [anon_sym_exec] = ACTIONS(61), - [anon_sym_type] = ACTIONS(63), - [anon_sym_not] = ACTIONS(69), - [anon_sym_TILDE] = ACTIONS(47), - [anon_sym_lambda] = ACTIONS(71), - [anon_sym_yield] = ACTIONS(73), - [sym_ellipsis] = ACTIONS(75), - [sym_integer] = ACTIONS(77), - [sym_float] = ACTIONS(75), - [anon_sym_await] = ACTIONS(79), - [sym_true] = ACTIONS(77), - [sym_false] = ACTIONS(77), - [sym_none] = ACTIONS(77), + [anon_sym_lazy] = ACTIONS(9), + [anon_sym_import] = ACTIONS(11), + [anon_sym_from] = ACTIONS(13), + [anon_sym_LPAREN] = ACTIONS(15), + [anon_sym_STAR] = ACTIONS(17), + [anon_sym_print] = ACTIONS(19), + [anon_sym_assert] = ACTIONS(21), + [anon_sym_return] = ACTIONS(23), + [anon_sym_del] = ACTIONS(25), + [anon_sym_raise] = ACTIONS(27), + [anon_sym_pass] = ACTIONS(29), + [anon_sym_break] = ACTIONS(31), + [anon_sym_continue] = ACTIONS(33), + [anon_sym_async] = ACTIONS(319), + [anon_sym_match] = ACTIONS(319), + [anon_sym_DASH] = ACTIONS(49), + [anon_sym_PLUS] = ACTIONS(49), + [anon_sym_LBRACK] = ACTIONS(51), + [anon_sym_LBRACE] = ACTIONS(53), + [anon_sym_STAR_STAR] = ACTIONS(55), + [anon_sym_global] = ACTIONS(59), + [anon_sym_nonlocal] = ACTIONS(61), + [anon_sym_exec] = ACTIONS(63), + [anon_sym_type] = ACTIONS(65), + [anon_sym_not] = ACTIONS(71), + [anon_sym_TILDE] = ACTIONS(49), + [anon_sym_lambda] = ACTIONS(73), + [anon_sym_yield] = ACTIONS(75), + [sym_ellipsis] = ACTIONS(77), + [sym_integer] = ACTIONS(79), + [sym_float] = ACTIONS(77), + [anon_sym_await] = ACTIONS(81), + [sym_true] = ACTIONS(79), + [sym_false] = ACTIONS(79), + [sym_none] = ACTIONS(79), [sym_comment] = ACTIONS(3), - [sym__newline] = ACTIONS(548), - [sym__indent] = ACTIONS(550), - [sym__string_start] = ACTIONS(81), - [sym__template_string_start] = ACTIONS(83), + [sym__newline] = ACTIONS(553), + [sym__indent] = ACTIONS(555), + [sym__string_start] = ACTIONS(83), + [sym__template_string_start] = ACTIONS(85), }, [STATE(126)] = { - [sym__simple_statements] = STATE(481), - [sym_import_statement] = STATE(1348), - [sym_future_import_statement] = STATE(1348), - [sym_import_from_statement] = STATE(1348), - [sym_print_statement] = STATE(1348), - [sym_assert_statement] = STATE(1348), - [sym_expression_statement] = STATE(1348), - [sym_named_expression] = STATE(1158), - [sym_return_statement] = STATE(1348), - [sym_delete_statement] = STATE(1348), - [sym_raise_statement] = STATE(1348), - [sym_pass_statement] = STATE(1348), - [sym_break_statement] = STATE(1348), - [sym_continue_statement] = STATE(1348), - [sym_list_splat] = STATE(1549), - [sym_dictionary_splat] = STATE(1549), - [sym_global_statement] = STATE(1348), - [sym_nonlocal_statement] = STATE(1348), - [sym_exec_statement] = STATE(1348), - [sym_type_alias_statement] = STATE(1348), - [sym_expression_list] = STATE(1551), - [sym_pattern] = STATE(1013), - [sym_tuple_pattern] = STATE(999), - [sym_list_pattern] = STATE(999), - [sym_list_splat_pattern] = STATE(999), - [sym_expression] = STATE(1185), - [sym_primary_expression] = STATE(779), - [sym_not_operator] = STATE(1158), - [sym_boolean_operator] = STATE(1158), - [sym_binary_operator] = STATE(908), - [sym_unary_operator] = STATE(908), - [sym_comparison_operator] = STATE(1158), - [sym_lambda] = STATE(1158), - [sym_assignment] = STATE(1551), - [sym_augmented_assignment] = STATE(1551), - [sym_pattern_list] = STATE(1024), - [sym_yield] = STATE(1551), - [sym_attribute] = STATE(494), - [sym_subscript] = STATE(494), - [sym_call] = STATE(908), - [sym_list] = STATE(908), - [sym_set] = STATE(908), - [sym_tuple] = STATE(908), - [sym_dictionary] = STATE(908), - [sym_list_comprehension] = STATE(908), - [sym_dictionary_comprehension] = STATE(908), - [sym_set_comprehension] = STATE(908), - [sym_generator_expression] = STATE(908), - [sym_parenthesized_expression] = STATE(908), - [sym_conditional_expression] = STATE(1158), - [sym_concatenated_string] = STATE(908), - [sym_string] = STATE(782), - [sym_concatenated_template_string] = STATE(908), - [sym_template_string] = STATE(763), - [sym_await] = STATE(908), + [sym__simple_statements] = STATE(1209), + [sym_import_statement] = STATE(1299), + [sym_future_import_statement] = STATE(1299), + [sym_import_from_statement] = STATE(1299), + [sym_print_statement] = STATE(1299), + [sym_assert_statement] = STATE(1299), + [sym_expression_statement] = STATE(1299), + [sym_named_expression] = STATE(1156), + [sym_return_statement] = STATE(1299), + [sym_delete_statement] = STATE(1299), + [sym_raise_statement] = STATE(1299), + [sym_pass_statement] = STATE(1299), + [sym_break_statement] = STATE(1299), + [sym_continue_statement] = STATE(1299), + [sym_list_splat] = STATE(1520), + [sym_dictionary_splat] = STATE(1520), + [sym_global_statement] = STATE(1299), + [sym_nonlocal_statement] = STATE(1299), + [sym_exec_statement] = STATE(1299), + [sym_type_alias_statement] = STATE(1299), + [sym_expression_list] = STATE(1522), + [sym_pattern] = STATE(1017), + [sym_tuple_pattern] = STATE(1001), + [sym_list_pattern] = STATE(1001), + [sym_list_splat_pattern] = STATE(1001), + [sym_expression] = STATE(1176), + [sym_primary_expression] = STATE(765), + [sym_not_operator] = STATE(1156), + [sym_boolean_operator] = STATE(1156), + [sym_binary_operator] = STATE(920), + [sym_unary_operator] = STATE(920), + [sym_comparison_operator] = STATE(1156), + [sym_lambda] = STATE(1156), + [sym_assignment] = STATE(1522), + [sym_augmented_assignment] = STATE(1522), + [sym_pattern_list] = STATE(1026), + [sym_yield] = STATE(1522), + [sym_attribute] = STATE(582), + [sym_subscript] = STATE(582), + [sym_call] = STATE(920), + [sym_list] = STATE(920), + [sym_set] = STATE(920), + [sym_tuple] = STATE(920), + [sym_dictionary] = STATE(920), + [sym_list_comprehension] = STATE(920), + [sym_dictionary_comprehension] = STATE(920), + [sym_set_comprehension] = STATE(920), + [sym_generator_expression] = STATE(920), + [sym_parenthesized_expression] = STATE(920), + [sym_conditional_expression] = STATE(1156), + [sym_concatenated_string] = STATE(920), + [sym_string] = STATE(775), + [sym_concatenated_template_string] = STATE(920), + [sym_template_string] = STATE(769), + [sym_await] = STATE(920), [sym_identifier] = ACTIONS(7), - [anon_sym_import] = ACTIONS(9), - [anon_sym_from] = ACTIONS(11), - [anon_sym_LPAREN] = ACTIONS(13), - [anon_sym_STAR] = ACTIONS(15), - [anon_sym_print] = ACTIONS(17), - [anon_sym_assert] = ACTIONS(19), - [anon_sym_return] = ACTIONS(21), - [anon_sym_del] = ACTIONS(23), - [anon_sym_raise] = ACTIONS(25), - [anon_sym_pass] = ACTIONS(27), - [anon_sym_break] = ACTIONS(29), - [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(322), - [anon_sym_match] = ACTIONS(322), - [anon_sym_DASH] = ACTIONS(47), - [anon_sym_PLUS] = ACTIONS(47), - [anon_sym_LBRACK] = ACTIONS(49), - [anon_sym_LBRACE] = ACTIONS(51), - [anon_sym_STAR_STAR] = ACTIONS(53), - [anon_sym_global] = ACTIONS(57), - [anon_sym_nonlocal] = ACTIONS(59), - [anon_sym_exec] = ACTIONS(61), - [anon_sym_type] = ACTIONS(63), - [anon_sym_not] = ACTIONS(69), - [anon_sym_TILDE] = ACTIONS(47), - [anon_sym_lambda] = ACTIONS(71), - [anon_sym_yield] = ACTIONS(73), - [sym_ellipsis] = ACTIONS(75), - [sym_integer] = ACTIONS(77), - [sym_float] = ACTIONS(75), - [anon_sym_await] = ACTIONS(79), - [sym_true] = ACTIONS(77), - [sym_false] = ACTIONS(77), - [sym_none] = ACTIONS(77), + [anon_sym_lazy] = ACTIONS(9), + [anon_sym_import] = ACTIONS(11), + [anon_sym_from] = ACTIONS(13), + [anon_sym_LPAREN] = ACTIONS(15), + [anon_sym_STAR] = ACTIONS(17), + [anon_sym_print] = ACTIONS(19), + [anon_sym_assert] = ACTIONS(21), + [anon_sym_return] = ACTIONS(23), + [anon_sym_del] = ACTIONS(25), + [anon_sym_raise] = ACTIONS(27), + [anon_sym_pass] = ACTIONS(29), + [anon_sym_break] = ACTIONS(31), + [anon_sym_continue] = ACTIONS(33), + [anon_sym_async] = ACTIONS(319), + [anon_sym_match] = ACTIONS(319), + [anon_sym_DASH] = ACTIONS(49), + [anon_sym_PLUS] = ACTIONS(49), + [anon_sym_LBRACK] = ACTIONS(51), + [anon_sym_LBRACE] = ACTIONS(53), + [anon_sym_STAR_STAR] = ACTIONS(55), + [anon_sym_global] = ACTIONS(59), + [anon_sym_nonlocal] = ACTIONS(61), + [anon_sym_exec] = ACTIONS(63), + [anon_sym_type] = ACTIONS(65), + [anon_sym_not] = ACTIONS(71), + [anon_sym_TILDE] = ACTIONS(49), + [anon_sym_lambda] = ACTIONS(73), + [anon_sym_yield] = ACTIONS(75), + [sym_ellipsis] = ACTIONS(77), + [sym_integer] = ACTIONS(79), + [sym_float] = ACTIONS(77), + [anon_sym_await] = ACTIONS(81), + [sym_true] = ACTIONS(79), + [sym_false] = ACTIONS(79), + [sym_none] = ACTIONS(79), [sym_comment] = ACTIONS(3), - [sym__newline] = ACTIONS(552), - [sym__indent] = ACTIONS(554), - [sym__string_start] = ACTIONS(81), - [sym__template_string_start] = ACTIONS(83), + [sym__newline] = ACTIONS(557), + [sym__indent] = ACTIONS(559), + [sym__string_start] = ACTIONS(83), + [sym__template_string_start] = ACTIONS(85), }, [STATE(127)] = { - [sym_import_statement] = STATE(1517), - [sym_future_import_statement] = STATE(1517), - [sym_import_from_statement] = STATE(1517), - [sym_print_statement] = STATE(1517), - [sym_assert_statement] = STATE(1517), - [sym_expression_statement] = STATE(1517), - [sym_named_expression] = STATE(1158), - [sym_return_statement] = STATE(1517), - [sym_delete_statement] = STATE(1517), - [sym_raise_statement] = STATE(1517), - [sym_pass_statement] = STATE(1517), - [sym_break_statement] = STATE(1517), - [sym_continue_statement] = STATE(1517), - [sym_list_splat] = STATE(1549), - [sym_dictionary_splat] = STATE(1549), - [sym_global_statement] = STATE(1517), - [sym_nonlocal_statement] = STATE(1517), - [sym_exec_statement] = STATE(1517), - [sym_type_alias_statement] = STATE(1517), - [sym_expression_list] = STATE(1551), - [sym_pattern] = STATE(1013), - [sym_tuple_pattern] = STATE(999), - [sym_list_pattern] = STATE(999), - [sym_list_splat_pattern] = STATE(999), - [sym_expression] = STATE(1185), - [sym_primary_expression] = STATE(779), - [sym_not_operator] = STATE(1158), - [sym_boolean_operator] = STATE(1158), - [sym_binary_operator] = STATE(908), - [sym_unary_operator] = STATE(908), - [sym_comparison_operator] = STATE(1158), - [sym_lambda] = STATE(1158), - [sym_assignment] = STATE(1551), - [sym_augmented_assignment] = STATE(1551), - [sym_pattern_list] = STATE(1024), - [sym_yield] = STATE(1551), - [sym_attribute] = STATE(494), - [sym_subscript] = STATE(494), - [sym_call] = STATE(908), - [sym_list] = STATE(908), - [sym_set] = STATE(908), - [sym_tuple] = STATE(908), - [sym_dictionary] = STATE(908), - [sym_list_comprehension] = STATE(908), - [sym_dictionary_comprehension] = STATE(908), - [sym_set_comprehension] = STATE(908), - [sym_generator_expression] = STATE(908), - [sym_parenthesized_expression] = STATE(908), - [sym_conditional_expression] = STATE(1158), - [sym_concatenated_string] = STATE(908), - [sym_string] = STATE(782), - [sym_concatenated_template_string] = STATE(908), - [sym_template_string] = STATE(763), - [sym_await] = STATE(908), + [sym_import_statement] = STATE(1566), + [sym_future_import_statement] = STATE(1566), + [sym_import_from_statement] = STATE(1566), + [sym_print_statement] = STATE(1566), + [sym_assert_statement] = STATE(1566), + [sym_expression_statement] = STATE(1566), + [sym_named_expression] = STATE(1156), + [sym_return_statement] = STATE(1566), + [sym_delete_statement] = STATE(1566), + [sym_raise_statement] = STATE(1566), + [sym_pass_statement] = STATE(1566), + [sym_break_statement] = STATE(1566), + [sym_continue_statement] = STATE(1566), + [sym_list_splat] = STATE(1520), + [sym_dictionary_splat] = STATE(1520), + [sym_global_statement] = STATE(1566), + [sym_nonlocal_statement] = STATE(1566), + [sym_exec_statement] = STATE(1566), + [sym_type_alias_statement] = STATE(1566), + [sym_expression_list] = STATE(1522), + [sym_pattern] = STATE(1017), + [sym_tuple_pattern] = STATE(1001), + [sym_list_pattern] = STATE(1001), + [sym_list_splat_pattern] = STATE(1001), + [sym_expression] = STATE(1176), + [sym_primary_expression] = STATE(765), + [sym_not_operator] = STATE(1156), + [sym_boolean_operator] = STATE(1156), + [sym_binary_operator] = STATE(920), + [sym_unary_operator] = STATE(920), + [sym_comparison_operator] = STATE(1156), + [sym_lambda] = STATE(1156), + [sym_assignment] = STATE(1522), + [sym_augmented_assignment] = STATE(1522), + [sym_pattern_list] = STATE(1026), + [sym_yield] = STATE(1522), + [sym_attribute] = STATE(582), + [sym_subscript] = STATE(582), + [sym_call] = STATE(920), + [sym_list] = STATE(920), + [sym_set] = STATE(920), + [sym_tuple] = STATE(920), + [sym_dictionary] = STATE(920), + [sym_list_comprehension] = STATE(920), + [sym_dictionary_comprehension] = STATE(920), + [sym_set_comprehension] = STATE(920), + [sym_generator_expression] = STATE(920), + [sym_parenthesized_expression] = STATE(920), + [sym_conditional_expression] = STATE(1156), + [sym_concatenated_string] = STATE(920), + [sym_string] = STATE(775), + [sym_concatenated_template_string] = STATE(920), + [sym_template_string] = STATE(769), + [sym_await] = STATE(920), [sym_identifier] = ACTIONS(7), - [anon_sym_import] = ACTIONS(9), - [anon_sym_from] = ACTIONS(11), - [anon_sym_LPAREN] = ACTIONS(13), - [anon_sym_STAR] = ACTIONS(15), - [anon_sym_print] = ACTIONS(17), - [anon_sym_assert] = ACTIONS(19), - [anon_sym_return] = ACTIONS(21), - [anon_sym_del] = ACTIONS(23), - [anon_sym_raise] = ACTIONS(25), - [anon_sym_pass] = ACTIONS(27), - [anon_sym_break] = ACTIONS(29), - [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(322), - [anon_sym_match] = ACTIONS(322), - [anon_sym_DASH] = ACTIONS(47), - [anon_sym_PLUS] = ACTIONS(47), - [anon_sym_LBRACK] = ACTIONS(49), - [anon_sym_LBRACE] = ACTIONS(51), - [anon_sym_STAR_STAR] = ACTIONS(53), - [anon_sym_global] = ACTIONS(57), - [anon_sym_nonlocal] = ACTIONS(59), - [anon_sym_exec] = ACTIONS(61), - [anon_sym_type] = ACTIONS(63), - [anon_sym_not] = ACTIONS(69), - [anon_sym_TILDE] = ACTIONS(47), - [anon_sym_lambda] = ACTIONS(71), - [anon_sym_yield] = ACTIONS(73), - [sym_ellipsis] = ACTIONS(75), - [sym_integer] = ACTIONS(77), - [sym_float] = ACTIONS(75), - [anon_sym_await] = ACTIONS(79), - [sym_true] = ACTIONS(77), - [sym_false] = ACTIONS(77), - [sym_none] = ACTIONS(77), + [anon_sym_lazy] = ACTIONS(9), + [anon_sym_import] = ACTIONS(11), + [anon_sym_from] = ACTIONS(13), + [anon_sym_LPAREN] = ACTIONS(15), + [anon_sym_STAR] = ACTIONS(17), + [anon_sym_print] = ACTIONS(19), + [anon_sym_assert] = ACTIONS(21), + [anon_sym_return] = ACTIONS(23), + [anon_sym_del] = ACTIONS(25), + [anon_sym_raise] = ACTIONS(27), + [anon_sym_pass] = ACTIONS(29), + [anon_sym_break] = ACTIONS(31), + [anon_sym_continue] = ACTIONS(33), + [anon_sym_async] = ACTIONS(319), + [anon_sym_match] = ACTIONS(319), + [anon_sym_DASH] = ACTIONS(49), + [anon_sym_PLUS] = ACTIONS(49), + [anon_sym_LBRACK] = ACTIONS(51), + [anon_sym_LBRACE] = ACTIONS(53), + [anon_sym_STAR_STAR] = ACTIONS(55), + [anon_sym_global] = ACTIONS(59), + [anon_sym_nonlocal] = ACTIONS(61), + [anon_sym_exec] = ACTIONS(63), + [anon_sym_type] = ACTIONS(65), + [anon_sym_not] = ACTIONS(71), + [anon_sym_TILDE] = ACTIONS(49), + [anon_sym_lambda] = ACTIONS(73), + [anon_sym_yield] = ACTIONS(75), + [sym_ellipsis] = ACTIONS(77), + [sym_integer] = ACTIONS(79), + [sym_float] = ACTIONS(77), + [anon_sym_await] = ACTIONS(81), + [sym_true] = ACTIONS(79), + [sym_false] = ACTIONS(79), + [sym_none] = ACTIONS(79), [sym_comment] = ACTIONS(3), - [sym__newline] = ACTIONS(556), - [sym__string_start] = ACTIONS(81), - [sym__template_string_start] = ACTIONS(83), + [sym__newline] = ACTIONS(561), + [sym__string_start] = ACTIONS(83), + [sym__template_string_start] = ACTIONS(85), }, [STATE(128)] = { - [sym_import_statement] = STATE(1517), - [sym_future_import_statement] = STATE(1517), - [sym_import_from_statement] = STATE(1517), - [sym_print_statement] = STATE(1517), - [sym_assert_statement] = STATE(1517), - [sym_expression_statement] = STATE(1517), - [sym_named_expression] = STATE(1158), - [sym_return_statement] = STATE(1517), - [sym_delete_statement] = STATE(1517), - [sym_raise_statement] = STATE(1517), - [sym_pass_statement] = STATE(1517), - [sym_break_statement] = STATE(1517), - [sym_continue_statement] = STATE(1517), - [sym_list_splat] = STATE(1549), - [sym_dictionary_splat] = STATE(1549), - [sym_global_statement] = STATE(1517), - [sym_nonlocal_statement] = STATE(1517), - [sym_exec_statement] = STATE(1517), - [sym_type_alias_statement] = STATE(1517), - [sym_expression_list] = STATE(1551), - [sym_pattern] = STATE(1013), - [sym_tuple_pattern] = STATE(999), - [sym_list_pattern] = STATE(999), - [sym_list_splat_pattern] = STATE(999), - [sym_expression] = STATE(1185), - [sym_primary_expression] = STATE(779), - [sym_not_operator] = STATE(1158), - [sym_boolean_operator] = STATE(1158), - [sym_binary_operator] = STATE(908), - [sym_unary_operator] = STATE(908), - [sym_comparison_operator] = STATE(1158), - [sym_lambda] = STATE(1158), - [sym_assignment] = STATE(1551), - [sym_augmented_assignment] = STATE(1551), - [sym_pattern_list] = STATE(1024), - [sym_yield] = STATE(1551), - [sym_attribute] = STATE(494), - [sym_subscript] = STATE(494), - [sym_call] = STATE(908), - [sym_list] = STATE(908), - [sym_set] = STATE(908), - [sym_tuple] = STATE(908), - [sym_dictionary] = STATE(908), - [sym_list_comprehension] = STATE(908), - [sym_dictionary_comprehension] = STATE(908), - [sym_set_comprehension] = STATE(908), - [sym_generator_expression] = STATE(908), - [sym_parenthesized_expression] = STATE(908), - [sym_conditional_expression] = STATE(1158), - [sym_concatenated_string] = STATE(908), - [sym_string] = STATE(782), - [sym_concatenated_template_string] = STATE(908), - [sym_template_string] = STATE(763), - [sym_await] = STATE(908), + [sym_import_statement] = STATE(1566), + [sym_future_import_statement] = STATE(1566), + [sym_import_from_statement] = STATE(1566), + [sym_print_statement] = STATE(1566), + [sym_assert_statement] = STATE(1566), + [sym_expression_statement] = STATE(1566), + [sym_named_expression] = STATE(1156), + [sym_return_statement] = STATE(1566), + [sym_delete_statement] = STATE(1566), + [sym_raise_statement] = STATE(1566), + [sym_pass_statement] = STATE(1566), + [sym_break_statement] = STATE(1566), + [sym_continue_statement] = STATE(1566), + [sym_list_splat] = STATE(1520), + [sym_dictionary_splat] = STATE(1520), + [sym_global_statement] = STATE(1566), + [sym_nonlocal_statement] = STATE(1566), + [sym_exec_statement] = STATE(1566), + [sym_type_alias_statement] = STATE(1566), + [sym_expression_list] = STATE(1522), + [sym_pattern] = STATE(1017), + [sym_tuple_pattern] = STATE(1001), + [sym_list_pattern] = STATE(1001), + [sym_list_splat_pattern] = STATE(1001), + [sym_expression] = STATE(1176), + [sym_primary_expression] = STATE(765), + [sym_not_operator] = STATE(1156), + [sym_boolean_operator] = STATE(1156), + [sym_binary_operator] = STATE(920), + [sym_unary_operator] = STATE(920), + [sym_comparison_operator] = STATE(1156), + [sym_lambda] = STATE(1156), + [sym_assignment] = STATE(1522), + [sym_augmented_assignment] = STATE(1522), + [sym_pattern_list] = STATE(1026), + [sym_yield] = STATE(1522), + [sym_attribute] = STATE(582), + [sym_subscript] = STATE(582), + [sym_call] = STATE(920), + [sym_list] = STATE(920), + [sym_set] = STATE(920), + [sym_tuple] = STATE(920), + [sym_dictionary] = STATE(920), + [sym_list_comprehension] = STATE(920), + [sym_dictionary_comprehension] = STATE(920), + [sym_set_comprehension] = STATE(920), + [sym_generator_expression] = STATE(920), + [sym_parenthesized_expression] = STATE(920), + [sym_conditional_expression] = STATE(1156), + [sym_concatenated_string] = STATE(920), + [sym_string] = STATE(775), + [sym_concatenated_template_string] = STATE(920), + [sym_template_string] = STATE(769), + [sym_await] = STATE(920), [sym_identifier] = ACTIONS(7), - [anon_sym_import] = ACTIONS(9), - [anon_sym_from] = ACTIONS(11), - [anon_sym_LPAREN] = ACTIONS(13), - [anon_sym_STAR] = ACTIONS(15), - [anon_sym_print] = ACTIONS(17), - [anon_sym_assert] = ACTIONS(19), - [anon_sym_return] = ACTIONS(21), - [anon_sym_del] = ACTIONS(23), - [anon_sym_raise] = ACTIONS(25), - [anon_sym_pass] = ACTIONS(27), - [anon_sym_break] = ACTIONS(29), - [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(322), - [anon_sym_match] = ACTIONS(322), - [anon_sym_DASH] = ACTIONS(47), - [anon_sym_PLUS] = ACTIONS(47), - [anon_sym_LBRACK] = ACTIONS(49), - [anon_sym_LBRACE] = ACTIONS(51), - [anon_sym_STAR_STAR] = ACTIONS(53), - [anon_sym_global] = ACTIONS(57), - [anon_sym_nonlocal] = ACTIONS(59), - [anon_sym_exec] = ACTIONS(61), - [anon_sym_type] = ACTIONS(63), - [anon_sym_not] = ACTIONS(69), - [anon_sym_TILDE] = ACTIONS(47), - [anon_sym_lambda] = ACTIONS(71), - [anon_sym_yield] = ACTIONS(73), - [sym_ellipsis] = ACTIONS(75), - [sym_integer] = ACTIONS(77), - [sym_float] = ACTIONS(75), - [anon_sym_await] = ACTIONS(79), - [sym_true] = ACTIONS(77), - [sym_false] = ACTIONS(77), - [sym_none] = ACTIONS(77), + [anon_sym_lazy] = ACTIONS(9), + [anon_sym_import] = ACTIONS(11), + [anon_sym_from] = ACTIONS(13), + [anon_sym_LPAREN] = ACTIONS(15), + [anon_sym_STAR] = ACTIONS(17), + [anon_sym_print] = ACTIONS(19), + [anon_sym_assert] = ACTIONS(21), + [anon_sym_return] = ACTIONS(23), + [anon_sym_del] = ACTIONS(25), + [anon_sym_raise] = ACTIONS(27), + [anon_sym_pass] = ACTIONS(29), + [anon_sym_break] = ACTIONS(31), + [anon_sym_continue] = ACTIONS(33), + [anon_sym_async] = ACTIONS(319), + [anon_sym_match] = ACTIONS(319), + [anon_sym_DASH] = ACTIONS(49), + [anon_sym_PLUS] = ACTIONS(49), + [anon_sym_LBRACK] = ACTIONS(51), + [anon_sym_LBRACE] = ACTIONS(53), + [anon_sym_STAR_STAR] = ACTIONS(55), + [anon_sym_global] = ACTIONS(59), + [anon_sym_nonlocal] = ACTIONS(61), + [anon_sym_exec] = ACTIONS(63), + [anon_sym_type] = ACTIONS(65), + [anon_sym_not] = ACTIONS(71), + [anon_sym_TILDE] = ACTIONS(49), + [anon_sym_lambda] = ACTIONS(73), + [anon_sym_yield] = ACTIONS(75), + [sym_ellipsis] = ACTIONS(77), + [sym_integer] = ACTIONS(79), + [sym_float] = ACTIONS(77), + [anon_sym_await] = ACTIONS(81), + [sym_true] = ACTIONS(79), + [sym_false] = ACTIONS(79), + [sym_none] = ACTIONS(79), [sym_comment] = ACTIONS(3), - [sym__newline] = ACTIONS(558), - [sym__string_start] = ACTIONS(81), - [sym__template_string_start] = ACTIONS(83), + [sym__newline] = ACTIONS(563), + [sym__string_start] = ACTIONS(83), + [sym__template_string_start] = ACTIONS(85), }, [STATE(129)] = { - [sym_import_statement] = STATE(1517), - [sym_future_import_statement] = STATE(1517), - [sym_import_from_statement] = STATE(1517), - [sym_print_statement] = STATE(1517), - [sym_assert_statement] = STATE(1517), - [sym_expression_statement] = STATE(1517), - [sym_named_expression] = STATE(1158), - [sym_return_statement] = STATE(1517), - [sym_delete_statement] = STATE(1517), - [sym_raise_statement] = STATE(1517), - [sym_pass_statement] = STATE(1517), - [sym_break_statement] = STATE(1517), - [sym_continue_statement] = STATE(1517), - [sym_list_splat] = STATE(1549), - [sym_dictionary_splat] = STATE(1549), - [sym_global_statement] = STATE(1517), - [sym_nonlocal_statement] = STATE(1517), - [sym_exec_statement] = STATE(1517), - [sym_type_alias_statement] = STATE(1517), - [sym_expression_list] = STATE(1551), - [sym_pattern] = STATE(1013), - [sym_tuple_pattern] = STATE(999), - [sym_list_pattern] = STATE(999), - [sym_list_splat_pattern] = STATE(999), - [sym_expression] = STATE(1185), - [sym_primary_expression] = STATE(779), - [sym_not_operator] = STATE(1158), - [sym_boolean_operator] = STATE(1158), - [sym_binary_operator] = STATE(908), - [sym_unary_operator] = STATE(908), - [sym_comparison_operator] = STATE(1158), - [sym_lambda] = STATE(1158), - [sym_assignment] = STATE(1551), - [sym_augmented_assignment] = STATE(1551), - [sym_pattern_list] = STATE(1024), - [sym_yield] = STATE(1551), - [sym_attribute] = STATE(494), - [sym_subscript] = STATE(494), - [sym_call] = STATE(908), - [sym_list] = STATE(908), - [sym_set] = STATE(908), - [sym_tuple] = STATE(908), - [sym_dictionary] = STATE(908), - [sym_list_comprehension] = STATE(908), - [sym_dictionary_comprehension] = STATE(908), - [sym_set_comprehension] = STATE(908), - [sym_generator_expression] = STATE(908), - [sym_parenthesized_expression] = STATE(908), - [sym_conditional_expression] = STATE(1158), - [sym_concatenated_string] = STATE(908), - [sym_string] = STATE(782), - [sym_concatenated_template_string] = STATE(908), - [sym_template_string] = STATE(763), - [sym_await] = STATE(908), + [sym_import_statement] = STATE(1566), + [sym_future_import_statement] = STATE(1566), + [sym_import_from_statement] = STATE(1566), + [sym_print_statement] = STATE(1566), + [sym_assert_statement] = STATE(1566), + [sym_expression_statement] = STATE(1566), + [sym_named_expression] = STATE(1156), + [sym_return_statement] = STATE(1566), + [sym_delete_statement] = STATE(1566), + [sym_raise_statement] = STATE(1566), + [sym_pass_statement] = STATE(1566), + [sym_break_statement] = STATE(1566), + [sym_continue_statement] = STATE(1566), + [sym_list_splat] = STATE(1520), + [sym_dictionary_splat] = STATE(1520), + [sym_global_statement] = STATE(1566), + [sym_nonlocal_statement] = STATE(1566), + [sym_exec_statement] = STATE(1566), + [sym_type_alias_statement] = STATE(1566), + [sym_expression_list] = STATE(1522), + [sym_pattern] = STATE(1017), + [sym_tuple_pattern] = STATE(1001), + [sym_list_pattern] = STATE(1001), + [sym_list_splat_pattern] = STATE(1001), + [sym_expression] = STATE(1176), + [sym_primary_expression] = STATE(765), + [sym_not_operator] = STATE(1156), + [sym_boolean_operator] = STATE(1156), + [sym_binary_operator] = STATE(920), + [sym_unary_operator] = STATE(920), + [sym_comparison_operator] = STATE(1156), + [sym_lambda] = STATE(1156), + [sym_assignment] = STATE(1522), + [sym_augmented_assignment] = STATE(1522), + [sym_pattern_list] = STATE(1026), + [sym_yield] = STATE(1522), + [sym_attribute] = STATE(582), + [sym_subscript] = STATE(582), + [sym_call] = STATE(920), + [sym_list] = STATE(920), + [sym_set] = STATE(920), + [sym_tuple] = STATE(920), + [sym_dictionary] = STATE(920), + [sym_list_comprehension] = STATE(920), + [sym_dictionary_comprehension] = STATE(920), + [sym_set_comprehension] = STATE(920), + [sym_generator_expression] = STATE(920), + [sym_parenthesized_expression] = STATE(920), + [sym_conditional_expression] = STATE(1156), + [sym_concatenated_string] = STATE(920), + [sym_string] = STATE(775), + [sym_concatenated_template_string] = STATE(920), + [sym_template_string] = STATE(769), + [sym_await] = STATE(920), [sym_identifier] = ACTIONS(7), - [anon_sym_import] = ACTIONS(9), - [anon_sym_from] = ACTIONS(11), - [anon_sym_LPAREN] = ACTIONS(13), - [anon_sym_STAR] = ACTIONS(15), - [anon_sym_print] = ACTIONS(17), - [anon_sym_assert] = ACTIONS(19), - [anon_sym_return] = ACTIONS(21), - [anon_sym_del] = ACTIONS(23), - [anon_sym_raise] = ACTIONS(25), - [anon_sym_pass] = ACTIONS(27), - [anon_sym_break] = ACTIONS(29), - [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(322), - [anon_sym_match] = ACTIONS(322), - [anon_sym_DASH] = ACTIONS(47), - [anon_sym_PLUS] = ACTIONS(47), - [anon_sym_LBRACK] = ACTIONS(49), - [anon_sym_LBRACE] = ACTIONS(51), - [anon_sym_STAR_STAR] = ACTIONS(53), - [anon_sym_global] = ACTIONS(57), - [anon_sym_nonlocal] = ACTIONS(59), - [anon_sym_exec] = ACTIONS(61), - [anon_sym_type] = ACTIONS(63), - [anon_sym_not] = ACTIONS(69), - [anon_sym_TILDE] = ACTIONS(47), - [anon_sym_lambda] = ACTIONS(71), - [anon_sym_yield] = ACTIONS(73), - [sym_ellipsis] = ACTIONS(75), - [sym_integer] = ACTIONS(77), - [sym_float] = ACTIONS(75), - [anon_sym_await] = ACTIONS(79), - [sym_true] = ACTIONS(77), - [sym_false] = ACTIONS(77), - [sym_none] = ACTIONS(77), + [anon_sym_lazy] = ACTIONS(9), + [anon_sym_import] = ACTIONS(11), + [anon_sym_from] = ACTIONS(13), + [anon_sym_LPAREN] = ACTIONS(15), + [anon_sym_STAR] = ACTIONS(17), + [anon_sym_print] = ACTIONS(19), + [anon_sym_assert] = ACTIONS(21), + [anon_sym_return] = ACTIONS(23), + [anon_sym_del] = ACTIONS(25), + [anon_sym_raise] = ACTIONS(27), + [anon_sym_pass] = ACTIONS(29), + [anon_sym_break] = ACTIONS(31), + [anon_sym_continue] = ACTIONS(33), + [anon_sym_async] = ACTIONS(319), + [anon_sym_match] = ACTIONS(319), + [anon_sym_DASH] = ACTIONS(49), + [anon_sym_PLUS] = ACTIONS(49), + [anon_sym_LBRACK] = ACTIONS(51), + [anon_sym_LBRACE] = ACTIONS(53), + [anon_sym_STAR_STAR] = ACTIONS(55), + [anon_sym_global] = ACTIONS(59), + [anon_sym_nonlocal] = ACTIONS(61), + [anon_sym_exec] = ACTIONS(63), + [anon_sym_type] = ACTIONS(65), + [anon_sym_not] = ACTIONS(71), + [anon_sym_TILDE] = ACTIONS(49), + [anon_sym_lambda] = ACTIONS(73), + [anon_sym_yield] = ACTIONS(75), + [sym_ellipsis] = ACTIONS(77), + [sym_integer] = ACTIONS(79), + [sym_float] = ACTIONS(77), + [anon_sym_await] = ACTIONS(81), + [sym_true] = ACTIONS(79), + [sym_false] = ACTIONS(79), + [sym_none] = ACTIONS(79), [sym_comment] = ACTIONS(3), - [sym__newline] = ACTIONS(560), - [sym__string_start] = ACTIONS(81), - [sym__template_string_start] = ACTIONS(83), + [sym__newline] = ACTIONS(565), + [sym__string_start] = ACTIONS(83), + [sym__template_string_start] = ACTIONS(85), }, [STATE(130)] = { - [sym_import_statement] = STATE(1517), - [sym_future_import_statement] = STATE(1517), - [sym_import_from_statement] = STATE(1517), - [sym_print_statement] = STATE(1517), - [sym_assert_statement] = STATE(1517), - [sym_expression_statement] = STATE(1517), - [sym_named_expression] = STATE(1158), - [sym_return_statement] = STATE(1517), - [sym_delete_statement] = STATE(1517), - [sym_raise_statement] = STATE(1517), - [sym_pass_statement] = STATE(1517), - [sym_break_statement] = STATE(1517), - [sym_continue_statement] = STATE(1517), - [sym_list_splat] = STATE(1549), - [sym_dictionary_splat] = STATE(1549), - [sym_global_statement] = STATE(1517), - [sym_nonlocal_statement] = STATE(1517), - [sym_exec_statement] = STATE(1517), - [sym_type_alias_statement] = STATE(1517), - [sym_expression_list] = STATE(1551), - [sym_pattern] = STATE(1013), - [sym_tuple_pattern] = STATE(999), - [sym_list_pattern] = STATE(999), - [sym_list_splat_pattern] = STATE(999), - [sym_expression] = STATE(1185), - [sym_primary_expression] = STATE(779), - [sym_not_operator] = STATE(1158), - [sym_boolean_operator] = STATE(1158), - [sym_binary_operator] = STATE(908), - [sym_unary_operator] = STATE(908), - [sym_comparison_operator] = STATE(1158), - [sym_lambda] = STATE(1158), - [sym_assignment] = STATE(1551), - [sym_augmented_assignment] = STATE(1551), - [sym_pattern_list] = STATE(1024), - [sym_yield] = STATE(1551), - [sym_attribute] = STATE(494), - [sym_subscript] = STATE(494), - [sym_call] = STATE(908), - [sym_list] = STATE(908), - [sym_set] = STATE(908), - [sym_tuple] = STATE(908), - [sym_dictionary] = STATE(908), - [sym_list_comprehension] = STATE(908), - [sym_dictionary_comprehension] = STATE(908), - [sym_set_comprehension] = STATE(908), - [sym_generator_expression] = STATE(908), - [sym_parenthesized_expression] = STATE(908), - [sym_conditional_expression] = STATE(1158), - [sym_concatenated_string] = STATE(908), - [sym_string] = STATE(782), - [sym_concatenated_template_string] = STATE(908), - [sym_template_string] = STATE(763), - [sym_await] = STATE(908), + [sym_import_statement] = STATE(1566), + [sym_future_import_statement] = STATE(1566), + [sym_import_from_statement] = STATE(1566), + [sym_print_statement] = STATE(1566), + [sym_assert_statement] = STATE(1566), + [sym_expression_statement] = STATE(1566), + [sym_named_expression] = STATE(1156), + [sym_return_statement] = STATE(1566), + [sym_delete_statement] = STATE(1566), + [sym_raise_statement] = STATE(1566), + [sym_pass_statement] = STATE(1566), + [sym_break_statement] = STATE(1566), + [sym_continue_statement] = STATE(1566), + [sym_list_splat] = STATE(1520), + [sym_dictionary_splat] = STATE(1520), + [sym_global_statement] = STATE(1566), + [sym_nonlocal_statement] = STATE(1566), + [sym_exec_statement] = STATE(1566), + [sym_type_alias_statement] = STATE(1566), + [sym_expression_list] = STATE(1522), + [sym_pattern] = STATE(1017), + [sym_tuple_pattern] = STATE(1001), + [sym_list_pattern] = STATE(1001), + [sym_list_splat_pattern] = STATE(1001), + [sym_expression] = STATE(1176), + [sym_primary_expression] = STATE(765), + [sym_not_operator] = STATE(1156), + [sym_boolean_operator] = STATE(1156), + [sym_binary_operator] = STATE(920), + [sym_unary_operator] = STATE(920), + [sym_comparison_operator] = STATE(1156), + [sym_lambda] = STATE(1156), + [sym_assignment] = STATE(1522), + [sym_augmented_assignment] = STATE(1522), + [sym_pattern_list] = STATE(1026), + [sym_yield] = STATE(1522), + [sym_attribute] = STATE(582), + [sym_subscript] = STATE(582), + [sym_call] = STATE(920), + [sym_list] = STATE(920), + [sym_set] = STATE(920), + [sym_tuple] = STATE(920), + [sym_dictionary] = STATE(920), + [sym_list_comprehension] = STATE(920), + [sym_dictionary_comprehension] = STATE(920), + [sym_set_comprehension] = STATE(920), + [sym_generator_expression] = STATE(920), + [sym_parenthesized_expression] = STATE(920), + [sym_conditional_expression] = STATE(1156), + [sym_concatenated_string] = STATE(920), + [sym_string] = STATE(775), + [sym_concatenated_template_string] = STATE(920), + [sym_template_string] = STATE(769), + [sym_await] = STATE(920), [sym_identifier] = ACTIONS(7), - [anon_sym_import] = ACTIONS(9), - [anon_sym_from] = ACTIONS(11), - [anon_sym_LPAREN] = ACTIONS(13), - [anon_sym_STAR] = ACTIONS(15), - [anon_sym_print] = ACTIONS(17), - [anon_sym_assert] = ACTIONS(19), - [anon_sym_return] = ACTIONS(21), - [anon_sym_del] = ACTIONS(23), - [anon_sym_raise] = ACTIONS(25), - [anon_sym_pass] = ACTIONS(27), - [anon_sym_break] = ACTIONS(29), - [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(322), - [anon_sym_match] = ACTIONS(322), - [anon_sym_DASH] = ACTIONS(47), - [anon_sym_PLUS] = ACTIONS(47), - [anon_sym_LBRACK] = ACTIONS(49), - [anon_sym_LBRACE] = ACTIONS(51), - [anon_sym_STAR_STAR] = ACTIONS(53), - [anon_sym_global] = ACTIONS(57), - [anon_sym_nonlocal] = ACTIONS(59), - [anon_sym_exec] = ACTIONS(61), - [anon_sym_type] = ACTIONS(63), - [anon_sym_not] = ACTIONS(69), - [anon_sym_TILDE] = ACTIONS(47), - [anon_sym_lambda] = ACTIONS(71), - [anon_sym_yield] = ACTIONS(73), - [sym_ellipsis] = ACTIONS(75), - [sym_integer] = ACTIONS(77), - [sym_float] = ACTIONS(75), - [anon_sym_await] = ACTIONS(79), - [sym_true] = ACTIONS(77), - [sym_false] = ACTIONS(77), - [sym_none] = ACTIONS(77), + [anon_sym_lazy] = ACTIONS(9), + [anon_sym_import] = ACTIONS(11), + [anon_sym_from] = ACTIONS(13), + [anon_sym_LPAREN] = ACTIONS(15), + [anon_sym_STAR] = ACTIONS(17), + [anon_sym_print] = ACTIONS(19), + [anon_sym_assert] = ACTIONS(21), + [anon_sym_return] = ACTIONS(23), + [anon_sym_del] = ACTIONS(25), + [anon_sym_raise] = ACTIONS(27), + [anon_sym_pass] = ACTIONS(29), + [anon_sym_break] = ACTIONS(31), + [anon_sym_continue] = ACTIONS(33), + [anon_sym_async] = ACTIONS(319), + [anon_sym_match] = ACTIONS(319), + [anon_sym_DASH] = ACTIONS(49), + [anon_sym_PLUS] = ACTIONS(49), + [anon_sym_LBRACK] = ACTIONS(51), + [anon_sym_LBRACE] = ACTIONS(53), + [anon_sym_STAR_STAR] = ACTIONS(55), + [anon_sym_global] = ACTIONS(59), + [anon_sym_nonlocal] = ACTIONS(61), + [anon_sym_exec] = ACTIONS(63), + [anon_sym_type] = ACTIONS(65), + [anon_sym_not] = ACTIONS(71), + [anon_sym_TILDE] = ACTIONS(49), + [anon_sym_lambda] = ACTIONS(73), + [anon_sym_yield] = ACTIONS(75), + [sym_ellipsis] = ACTIONS(77), + [sym_integer] = ACTIONS(79), + [sym_float] = ACTIONS(77), + [anon_sym_await] = ACTIONS(81), + [sym_true] = ACTIONS(79), + [sym_false] = ACTIONS(79), + [sym_none] = ACTIONS(79), [sym_comment] = ACTIONS(3), - [sym__newline] = ACTIONS(562), - [sym__string_start] = ACTIONS(81), - [sym__template_string_start] = ACTIONS(83), + [sym__newline] = ACTIONS(567), + [sym__string_start] = ACTIONS(83), + [sym__template_string_start] = ACTIONS(85), }, [STATE(131)] = { - [sym_import_statement] = STATE(1517), - [sym_future_import_statement] = STATE(1517), - [sym_import_from_statement] = STATE(1517), - [sym_print_statement] = STATE(1517), - [sym_assert_statement] = STATE(1517), - [sym_expression_statement] = STATE(1517), - [sym_named_expression] = STATE(1158), - [sym_return_statement] = STATE(1517), - [sym_delete_statement] = STATE(1517), - [sym_raise_statement] = STATE(1517), - [sym_pass_statement] = STATE(1517), - [sym_break_statement] = STATE(1517), - [sym_continue_statement] = STATE(1517), - [sym_list_splat] = STATE(1549), - [sym_dictionary_splat] = STATE(1549), - [sym_global_statement] = STATE(1517), - [sym_nonlocal_statement] = STATE(1517), - [sym_exec_statement] = STATE(1517), - [sym_type_alias_statement] = STATE(1517), - [sym_expression_list] = STATE(1551), - [sym_pattern] = STATE(1013), - [sym_tuple_pattern] = STATE(999), - [sym_list_pattern] = STATE(999), - [sym_list_splat_pattern] = STATE(999), - [sym_expression] = STATE(1185), - [sym_primary_expression] = STATE(779), - [sym_not_operator] = STATE(1158), - [sym_boolean_operator] = STATE(1158), - [sym_binary_operator] = STATE(908), - [sym_unary_operator] = STATE(908), - [sym_comparison_operator] = STATE(1158), - [sym_lambda] = STATE(1158), - [sym_assignment] = STATE(1551), - [sym_augmented_assignment] = STATE(1551), - [sym_pattern_list] = STATE(1024), - [sym_yield] = STATE(1551), - [sym_attribute] = STATE(494), - [sym_subscript] = STATE(494), - [sym_call] = STATE(908), - [sym_list] = STATE(908), - [sym_set] = STATE(908), - [sym_tuple] = STATE(908), - [sym_dictionary] = STATE(908), - [sym_list_comprehension] = STATE(908), - [sym_dictionary_comprehension] = STATE(908), - [sym_set_comprehension] = STATE(908), - [sym_generator_expression] = STATE(908), - [sym_parenthesized_expression] = STATE(908), - [sym_conditional_expression] = STATE(1158), - [sym_concatenated_string] = STATE(908), - [sym_string] = STATE(782), - [sym_concatenated_template_string] = STATE(908), - [sym_template_string] = STATE(763), - [sym_await] = STATE(908), + [sym_import_statement] = STATE(1566), + [sym_future_import_statement] = STATE(1566), + [sym_import_from_statement] = STATE(1566), + [sym_print_statement] = STATE(1566), + [sym_assert_statement] = STATE(1566), + [sym_expression_statement] = STATE(1566), + [sym_named_expression] = STATE(1156), + [sym_return_statement] = STATE(1566), + [sym_delete_statement] = STATE(1566), + [sym_raise_statement] = STATE(1566), + [sym_pass_statement] = STATE(1566), + [sym_break_statement] = STATE(1566), + [sym_continue_statement] = STATE(1566), + [sym_list_splat] = STATE(1520), + [sym_dictionary_splat] = STATE(1520), + [sym_global_statement] = STATE(1566), + [sym_nonlocal_statement] = STATE(1566), + [sym_exec_statement] = STATE(1566), + [sym_type_alias_statement] = STATE(1566), + [sym_expression_list] = STATE(1522), + [sym_pattern] = STATE(1017), + [sym_tuple_pattern] = STATE(1001), + [sym_list_pattern] = STATE(1001), + [sym_list_splat_pattern] = STATE(1001), + [sym_expression] = STATE(1176), + [sym_primary_expression] = STATE(765), + [sym_not_operator] = STATE(1156), + [sym_boolean_operator] = STATE(1156), + [sym_binary_operator] = STATE(920), + [sym_unary_operator] = STATE(920), + [sym_comparison_operator] = STATE(1156), + [sym_lambda] = STATE(1156), + [sym_assignment] = STATE(1522), + [sym_augmented_assignment] = STATE(1522), + [sym_pattern_list] = STATE(1026), + [sym_yield] = STATE(1522), + [sym_attribute] = STATE(582), + [sym_subscript] = STATE(582), + [sym_call] = STATE(920), + [sym_list] = STATE(920), + [sym_set] = STATE(920), + [sym_tuple] = STATE(920), + [sym_dictionary] = STATE(920), + [sym_list_comprehension] = STATE(920), + [sym_dictionary_comprehension] = STATE(920), + [sym_set_comprehension] = STATE(920), + [sym_generator_expression] = STATE(920), + [sym_parenthesized_expression] = STATE(920), + [sym_conditional_expression] = STATE(1156), + [sym_concatenated_string] = STATE(920), + [sym_string] = STATE(775), + [sym_concatenated_template_string] = STATE(920), + [sym_template_string] = STATE(769), + [sym_await] = STATE(920), [sym_identifier] = ACTIONS(7), - [anon_sym_import] = ACTIONS(9), - [anon_sym_from] = ACTIONS(11), - [anon_sym_LPAREN] = ACTIONS(13), - [anon_sym_STAR] = ACTIONS(15), - [anon_sym_print] = ACTIONS(17), - [anon_sym_assert] = ACTIONS(19), - [anon_sym_return] = ACTIONS(21), - [anon_sym_del] = ACTIONS(23), - [anon_sym_raise] = ACTIONS(25), - [anon_sym_pass] = ACTIONS(27), - [anon_sym_break] = ACTIONS(29), - [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(322), - [anon_sym_match] = ACTIONS(322), - [anon_sym_DASH] = ACTIONS(47), - [anon_sym_PLUS] = ACTIONS(47), - [anon_sym_LBRACK] = ACTIONS(49), - [anon_sym_LBRACE] = ACTIONS(51), - [anon_sym_STAR_STAR] = ACTIONS(53), - [anon_sym_global] = ACTIONS(57), - [anon_sym_nonlocal] = ACTIONS(59), - [anon_sym_exec] = ACTIONS(61), - [anon_sym_type] = ACTIONS(63), - [anon_sym_not] = ACTIONS(69), - [anon_sym_TILDE] = ACTIONS(47), - [anon_sym_lambda] = ACTIONS(71), - [anon_sym_yield] = ACTIONS(73), - [sym_ellipsis] = ACTIONS(75), - [sym_integer] = ACTIONS(77), - [sym_float] = ACTIONS(75), - [anon_sym_await] = ACTIONS(79), - [sym_true] = ACTIONS(77), - [sym_false] = ACTIONS(77), - [sym_none] = ACTIONS(77), + [anon_sym_lazy] = ACTIONS(9), + [anon_sym_import] = ACTIONS(11), + [anon_sym_from] = ACTIONS(13), + [anon_sym_LPAREN] = ACTIONS(15), + [anon_sym_STAR] = ACTIONS(17), + [anon_sym_print] = ACTIONS(19), + [anon_sym_assert] = ACTIONS(21), + [anon_sym_return] = ACTIONS(23), + [anon_sym_del] = ACTIONS(25), + [anon_sym_raise] = ACTIONS(27), + [anon_sym_pass] = ACTIONS(29), + [anon_sym_break] = ACTIONS(31), + [anon_sym_continue] = ACTIONS(33), + [anon_sym_async] = ACTIONS(319), + [anon_sym_match] = ACTIONS(319), + [anon_sym_DASH] = ACTIONS(49), + [anon_sym_PLUS] = ACTIONS(49), + [anon_sym_LBRACK] = ACTIONS(51), + [anon_sym_LBRACE] = ACTIONS(53), + [anon_sym_STAR_STAR] = ACTIONS(55), + [anon_sym_global] = ACTIONS(59), + [anon_sym_nonlocal] = ACTIONS(61), + [anon_sym_exec] = ACTIONS(63), + [anon_sym_type] = ACTIONS(65), + [anon_sym_not] = ACTIONS(71), + [anon_sym_TILDE] = ACTIONS(49), + [anon_sym_lambda] = ACTIONS(73), + [anon_sym_yield] = ACTIONS(75), + [sym_ellipsis] = ACTIONS(77), + [sym_integer] = ACTIONS(79), + [sym_float] = ACTIONS(77), + [anon_sym_await] = ACTIONS(81), + [sym_true] = ACTIONS(79), + [sym_false] = ACTIONS(79), + [sym_none] = ACTIONS(79), [sym_comment] = ACTIONS(3), - [sym__newline] = ACTIONS(564), - [sym__string_start] = ACTIONS(81), - [sym__template_string_start] = ACTIONS(83), + [sym__newline] = ACTIONS(569), + [sym__string_start] = ACTIONS(83), + [sym__template_string_start] = ACTIONS(85), }, [STATE(132)] = { - [sym_import_statement] = STATE(1517), - [sym_future_import_statement] = STATE(1517), - [sym_import_from_statement] = STATE(1517), - [sym_print_statement] = STATE(1517), - [sym_assert_statement] = STATE(1517), - [sym_expression_statement] = STATE(1517), - [sym_named_expression] = STATE(1158), - [sym_return_statement] = STATE(1517), - [sym_delete_statement] = STATE(1517), - [sym_raise_statement] = STATE(1517), - [sym_pass_statement] = STATE(1517), - [sym_break_statement] = STATE(1517), - [sym_continue_statement] = STATE(1517), - [sym_list_splat] = STATE(1549), - [sym_dictionary_splat] = STATE(1549), - [sym_global_statement] = STATE(1517), - [sym_nonlocal_statement] = STATE(1517), - [sym_exec_statement] = STATE(1517), - [sym_type_alias_statement] = STATE(1517), - [sym_expression_list] = STATE(1551), - [sym_pattern] = STATE(1013), - [sym_tuple_pattern] = STATE(999), - [sym_list_pattern] = STATE(999), - [sym_list_splat_pattern] = STATE(999), - [sym_expression] = STATE(1185), - [sym_primary_expression] = STATE(779), - [sym_not_operator] = STATE(1158), - [sym_boolean_operator] = STATE(1158), - [sym_binary_operator] = STATE(908), - [sym_unary_operator] = STATE(908), - [sym_comparison_operator] = STATE(1158), - [sym_lambda] = STATE(1158), - [sym_assignment] = STATE(1551), - [sym_augmented_assignment] = STATE(1551), - [sym_pattern_list] = STATE(1024), - [sym_yield] = STATE(1551), - [sym_attribute] = STATE(494), - [sym_subscript] = STATE(494), - [sym_call] = STATE(908), - [sym_list] = STATE(908), - [sym_set] = STATE(908), - [sym_tuple] = STATE(908), - [sym_dictionary] = STATE(908), - [sym_list_comprehension] = STATE(908), - [sym_dictionary_comprehension] = STATE(908), - [sym_set_comprehension] = STATE(908), - [sym_generator_expression] = STATE(908), - [sym_parenthesized_expression] = STATE(908), - [sym_conditional_expression] = STATE(1158), - [sym_concatenated_string] = STATE(908), - [sym_string] = STATE(782), - [sym_concatenated_template_string] = STATE(908), - [sym_template_string] = STATE(763), - [sym_await] = STATE(908), + [sym_import_statement] = STATE(1566), + [sym_future_import_statement] = STATE(1566), + [sym_import_from_statement] = STATE(1566), + [sym_print_statement] = STATE(1566), + [sym_assert_statement] = STATE(1566), + [sym_expression_statement] = STATE(1566), + [sym_named_expression] = STATE(1156), + [sym_return_statement] = STATE(1566), + [sym_delete_statement] = STATE(1566), + [sym_raise_statement] = STATE(1566), + [sym_pass_statement] = STATE(1566), + [sym_break_statement] = STATE(1566), + [sym_continue_statement] = STATE(1566), + [sym_list_splat] = STATE(1520), + [sym_dictionary_splat] = STATE(1520), + [sym_global_statement] = STATE(1566), + [sym_nonlocal_statement] = STATE(1566), + [sym_exec_statement] = STATE(1566), + [sym_type_alias_statement] = STATE(1566), + [sym_expression_list] = STATE(1522), + [sym_pattern] = STATE(1017), + [sym_tuple_pattern] = STATE(1001), + [sym_list_pattern] = STATE(1001), + [sym_list_splat_pattern] = STATE(1001), + [sym_expression] = STATE(1176), + [sym_primary_expression] = STATE(765), + [sym_not_operator] = STATE(1156), + [sym_boolean_operator] = STATE(1156), + [sym_binary_operator] = STATE(920), + [sym_unary_operator] = STATE(920), + [sym_comparison_operator] = STATE(1156), + [sym_lambda] = STATE(1156), + [sym_assignment] = STATE(1522), + [sym_augmented_assignment] = STATE(1522), + [sym_pattern_list] = STATE(1026), + [sym_yield] = STATE(1522), + [sym_attribute] = STATE(582), + [sym_subscript] = STATE(582), + [sym_call] = STATE(920), + [sym_list] = STATE(920), + [sym_set] = STATE(920), + [sym_tuple] = STATE(920), + [sym_dictionary] = STATE(920), + [sym_list_comprehension] = STATE(920), + [sym_dictionary_comprehension] = STATE(920), + [sym_set_comprehension] = STATE(920), + [sym_generator_expression] = STATE(920), + [sym_parenthesized_expression] = STATE(920), + [sym_conditional_expression] = STATE(1156), + [sym_concatenated_string] = STATE(920), + [sym_string] = STATE(775), + [sym_concatenated_template_string] = STATE(920), + [sym_template_string] = STATE(769), + [sym_await] = STATE(920), [sym_identifier] = ACTIONS(7), - [anon_sym_import] = ACTIONS(9), - [anon_sym_from] = ACTIONS(11), - [anon_sym_LPAREN] = ACTIONS(13), - [anon_sym_STAR] = ACTIONS(15), - [anon_sym_print] = ACTIONS(17), - [anon_sym_assert] = ACTIONS(19), - [anon_sym_return] = ACTIONS(21), - [anon_sym_del] = ACTIONS(23), - [anon_sym_raise] = ACTIONS(25), - [anon_sym_pass] = ACTIONS(27), - [anon_sym_break] = ACTIONS(29), - [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(322), - [anon_sym_match] = ACTIONS(322), - [anon_sym_DASH] = ACTIONS(47), - [anon_sym_PLUS] = ACTIONS(47), - [anon_sym_LBRACK] = ACTIONS(49), - [anon_sym_LBRACE] = ACTIONS(51), - [anon_sym_STAR_STAR] = ACTIONS(53), - [anon_sym_global] = ACTIONS(57), - [anon_sym_nonlocal] = ACTIONS(59), - [anon_sym_exec] = ACTIONS(61), - [anon_sym_type] = ACTIONS(63), - [anon_sym_not] = ACTIONS(69), - [anon_sym_TILDE] = ACTIONS(47), - [anon_sym_lambda] = ACTIONS(71), - [anon_sym_yield] = ACTIONS(73), - [sym_ellipsis] = ACTIONS(75), - [sym_integer] = ACTIONS(77), - [sym_float] = ACTIONS(75), - [anon_sym_await] = ACTIONS(79), - [sym_true] = ACTIONS(77), - [sym_false] = ACTIONS(77), - [sym_none] = ACTIONS(77), + [anon_sym_lazy] = ACTIONS(9), + [anon_sym_import] = ACTIONS(11), + [anon_sym_from] = ACTIONS(13), + [anon_sym_LPAREN] = ACTIONS(15), + [anon_sym_STAR] = ACTIONS(17), + [anon_sym_print] = ACTIONS(19), + [anon_sym_assert] = ACTIONS(21), + [anon_sym_return] = ACTIONS(23), + [anon_sym_del] = ACTIONS(25), + [anon_sym_raise] = ACTIONS(27), + [anon_sym_pass] = ACTIONS(29), + [anon_sym_break] = ACTIONS(31), + [anon_sym_continue] = ACTIONS(33), + [anon_sym_async] = ACTIONS(319), + [anon_sym_match] = ACTIONS(319), + [anon_sym_DASH] = ACTIONS(49), + [anon_sym_PLUS] = ACTIONS(49), + [anon_sym_LBRACK] = ACTIONS(51), + [anon_sym_LBRACE] = ACTIONS(53), + [anon_sym_STAR_STAR] = ACTIONS(55), + [anon_sym_global] = ACTIONS(59), + [anon_sym_nonlocal] = ACTIONS(61), + [anon_sym_exec] = ACTIONS(63), + [anon_sym_type] = ACTIONS(65), + [anon_sym_not] = ACTIONS(71), + [anon_sym_TILDE] = ACTIONS(49), + [anon_sym_lambda] = ACTIONS(73), + [anon_sym_yield] = ACTIONS(75), + [sym_ellipsis] = ACTIONS(77), + [sym_integer] = ACTIONS(79), + [sym_float] = ACTIONS(77), + [anon_sym_await] = ACTIONS(81), + [sym_true] = ACTIONS(79), + [sym_false] = ACTIONS(79), + [sym_none] = ACTIONS(79), [sym_comment] = ACTIONS(3), - [sym__newline] = ACTIONS(566), - [sym__string_start] = ACTIONS(81), - [sym__template_string_start] = ACTIONS(83), + [sym__newline] = ACTIONS(571), + [sym__string_start] = ACTIONS(83), + [sym__template_string_start] = ACTIONS(85), }, [STATE(133)] = { - [sym_import_statement] = STATE(1517), - [sym_future_import_statement] = STATE(1517), - [sym_import_from_statement] = STATE(1517), - [sym_print_statement] = STATE(1517), - [sym_assert_statement] = STATE(1517), - [sym_expression_statement] = STATE(1517), - [sym_named_expression] = STATE(1158), - [sym_return_statement] = STATE(1517), - [sym_delete_statement] = STATE(1517), - [sym_raise_statement] = STATE(1517), - [sym_pass_statement] = STATE(1517), - [sym_break_statement] = STATE(1517), - [sym_continue_statement] = STATE(1517), - [sym_list_splat] = STATE(1549), - [sym_dictionary_splat] = STATE(1549), - [sym_global_statement] = STATE(1517), - [sym_nonlocal_statement] = STATE(1517), - [sym_exec_statement] = STATE(1517), - [sym_type_alias_statement] = STATE(1517), - [sym_expression_list] = STATE(1551), - [sym_pattern] = STATE(1013), - [sym_tuple_pattern] = STATE(999), - [sym_list_pattern] = STATE(999), - [sym_list_splat_pattern] = STATE(999), - [sym_expression] = STATE(1185), - [sym_primary_expression] = STATE(779), - [sym_not_operator] = STATE(1158), - [sym_boolean_operator] = STATE(1158), - [sym_binary_operator] = STATE(908), - [sym_unary_operator] = STATE(908), - [sym_comparison_operator] = STATE(1158), - [sym_lambda] = STATE(1158), - [sym_assignment] = STATE(1551), - [sym_augmented_assignment] = STATE(1551), - [sym_pattern_list] = STATE(1024), - [sym_yield] = STATE(1551), - [sym_attribute] = STATE(494), - [sym_subscript] = STATE(494), - [sym_call] = STATE(908), - [sym_list] = STATE(908), - [sym_set] = STATE(908), - [sym_tuple] = STATE(908), - [sym_dictionary] = STATE(908), - [sym_list_comprehension] = STATE(908), - [sym_dictionary_comprehension] = STATE(908), - [sym_set_comprehension] = STATE(908), - [sym_generator_expression] = STATE(908), - [sym_parenthesized_expression] = STATE(908), - [sym_conditional_expression] = STATE(1158), - [sym_concatenated_string] = STATE(908), - [sym_string] = STATE(782), - [sym_concatenated_template_string] = STATE(908), - [sym_template_string] = STATE(763), - [sym_await] = STATE(908), + [sym_import_statement] = STATE(1566), + [sym_future_import_statement] = STATE(1566), + [sym_import_from_statement] = STATE(1566), + [sym_print_statement] = STATE(1566), + [sym_assert_statement] = STATE(1566), + [sym_expression_statement] = STATE(1566), + [sym_named_expression] = STATE(1156), + [sym_return_statement] = STATE(1566), + [sym_delete_statement] = STATE(1566), + [sym_raise_statement] = STATE(1566), + [sym_pass_statement] = STATE(1566), + [sym_break_statement] = STATE(1566), + [sym_continue_statement] = STATE(1566), + [sym_list_splat] = STATE(1520), + [sym_dictionary_splat] = STATE(1520), + [sym_global_statement] = STATE(1566), + [sym_nonlocal_statement] = STATE(1566), + [sym_exec_statement] = STATE(1566), + [sym_type_alias_statement] = STATE(1566), + [sym_expression_list] = STATE(1522), + [sym_pattern] = STATE(1017), + [sym_tuple_pattern] = STATE(1001), + [sym_list_pattern] = STATE(1001), + [sym_list_splat_pattern] = STATE(1001), + [sym_expression] = STATE(1176), + [sym_primary_expression] = STATE(765), + [sym_not_operator] = STATE(1156), + [sym_boolean_operator] = STATE(1156), + [sym_binary_operator] = STATE(920), + [sym_unary_operator] = STATE(920), + [sym_comparison_operator] = STATE(1156), + [sym_lambda] = STATE(1156), + [sym_assignment] = STATE(1522), + [sym_augmented_assignment] = STATE(1522), + [sym_pattern_list] = STATE(1026), + [sym_yield] = STATE(1522), + [sym_attribute] = STATE(582), + [sym_subscript] = STATE(582), + [sym_call] = STATE(920), + [sym_list] = STATE(920), + [sym_set] = STATE(920), + [sym_tuple] = STATE(920), + [sym_dictionary] = STATE(920), + [sym_list_comprehension] = STATE(920), + [sym_dictionary_comprehension] = STATE(920), + [sym_set_comprehension] = STATE(920), + [sym_generator_expression] = STATE(920), + [sym_parenthesized_expression] = STATE(920), + [sym_conditional_expression] = STATE(1156), + [sym_concatenated_string] = STATE(920), + [sym_string] = STATE(775), + [sym_concatenated_template_string] = STATE(920), + [sym_template_string] = STATE(769), + [sym_await] = STATE(920), [sym_identifier] = ACTIONS(7), - [anon_sym_import] = ACTIONS(9), - [anon_sym_from] = ACTIONS(11), - [anon_sym_LPAREN] = ACTIONS(13), - [anon_sym_STAR] = ACTIONS(15), - [anon_sym_print] = ACTIONS(17), - [anon_sym_assert] = ACTIONS(19), - [anon_sym_return] = ACTIONS(21), - [anon_sym_del] = ACTIONS(23), - [anon_sym_raise] = ACTIONS(25), - [anon_sym_pass] = ACTIONS(27), - [anon_sym_break] = ACTIONS(29), - [anon_sym_continue] = ACTIONS(31), - [anon_sym_async] = ACTIONS(322), - [anon_sym_match] = ACTIONS(322), - [anon_sym_DASH] = ACTIONS(47), - [anon_sym_PLUS] = ACTIONS(47), - [anon_sym_LBRACK] = ACTIONS(49), - [anon_sym_LBRACE] = ACTIONS(51), - [anon_sym_STAR_STAR] = ACTIONS(53), - [anon_sym_global] = ACTIONS(57), - [anon_sym_nonlocal] = ACTIONS(59), - [anon_sym_exec] = ACTIONS(61), - [anon_sym_type] = ACTIONS(63), - [anon_sym_not] = ACTIONS(69), - [anon_sym_TILDE] = ACTIONS(47), - [anon_sym_lambda] = ACTIONS(71), - [anon_sym_yield] = ACTIONS(73), - [sym_ellipsis] = ACTIONS(75), - [sym_integer] = ACTIONS(77), - [sym_float] = ACTIONS(75), - [anon_sym_await] = ACTIONS(79), - [sym_true] = ACTIONS(77), - [sym_false] = ACTIONS(77), - [sym_none] = ACTIONS(77), + [anon_sym_lazy] = ACTIONS(9), + [anon_sym_import] = ACTIONS(11), + [anon_sym_from] = ACTIONS(13), + [anon_sym_LPAREN] = ACTIONS(15), + [anon_sym_STAR] = ACTIONS(17), + [anon_sym_print] = ACTIONS(19), + [anon_sym_assert] = ACTIONS(21), + [anon_sym_return] = ACTIONS(23), + [anon_sym_del] = ACTIONS(25), + [anon_sym_raise] = ACTIONS(27), + [anon_sym_pass] = ACTIONS(29), + [anon_sym_break] = ACTIONS(31), + [anon_sym_continue] = ACTIONS(33), + [anon_sym_async] = ACTIONS(319), + [anon_sym_match] = ACTIONS(319), + [anon_sym_DASH] = ACTIONS(49), + [anon_sym_PLUS] = ACTIONS(49), + [anon_sym_LBRACK] = ACTIONS(51), + [anon_sym_LBRACE] = ACTIONS(53), + [anon_sym_STAR_STAR] = ACTIONS(55), + [anon_sym_global] = ACTIONS(59), + [anon_sym_nonlocal] = ACTIONS(61), + [anon_sym_exec] = ACTIONS(63), + [anon_sym_type] = ACTIONS(65), + [anon_sym_not] = ACTIONS(71), + [anon_sym_TILDE] = ACTIONS(49), + [anon_sym_lambda] = ACTIONS(73), + [anon_sym_yield] = ACTIONS(75), + [sym_ellipsis] = ACTIONS(77), + [sym_integer] = ACTIONS(79), + [sym_float] = ACTIONS(77), + [anon_sym_await] = ACTIONS(81), + [sym_true] = ACTIONS(79), + [sym_false] = ACTIONS(79), + [sym_none] = ACTIONS(79), [sym_comment] = ACTIONS(3), - [sym__string_start] = ACTIONS(81), - [sym__template_string_start] = ACTIONS(83), + [sym__string_start] = ACTIONS(83), + [sym__template_string_start] = ACTIONS(85), }, [STATE(134)] = { - [sym_primary_expression] = STATE(810), - [sym_binary_operator] = STATE(908), - [sym_unary_operator] = STATE(908), - [sym_attribute] = STATE(908), - [sym_subscript] = STATE(908), - [sym_call] = STATE(908), - [sym_list] = STATE(908), - [sym_set] = STATE(908), - [sym_tuple] = STATE(908), - [sym_dictionary] = STATE(908), - [sym_list_comprehension] = STATE(908), - [sym_dictionary_comprehension] = STATE(908), - [sym_set_comprehension] = STATE(908), - [sym_generator_expression] = STATE(908), - [sym_parenthesized_expression] = STATE(908), - [sym_concatenated_string] = STATE(908), - [sym_string] = STATE(782), - [sym_concatenated_template_string] = STATE(908), - [sym_template_string] = STATE(763), - [sym_await] = STATE(908), - [sym_identifier] = ACTIONS(77), - [anon_sym_DOT] = ACTIONS(265), - [anon_sym_LPAREN] = ACTIONS(568), - [anon_sym_COMMA] = ACTIONS(270), - [anon_sym_STAR] = ACTIONS(265), - [anon_sym_print] = ACTIONS(570), - [anon_sym_GT_GT] = ACTIONS(265), - [anon_sym_COLON_EQ] = ACTIONS(278), - [anon_sym_if] = ACTIONS(265), - [anon_sym_COLON] = ACTIONS(280), - [anon_sym_async] = ACTIONS(570), - [anon_sym_in] = ACTIONS(265), - [anon_sym_match] = ACTIONS(570), - [anon_sym_PIPE] = ACTIONS(265), - [anon_sym_DASH] = ACTIONS(572), - [anon_sym_PLUS] = ACTIONS(572), - [anon_sym_LBRACK] = ACTIONS(574), - [anon_sym_LBRACE] = ACTIONS(51), - [anon_sym_STAR_STAR] = ACTIONS(265), - [anon_sym_EQ] = ACTIONS(280), - [anon_sym_exec] = ACTIONS(570), - [anon_sym_type] = ACTIONS(570), - [anon_sym_AT] = ACTIONS(265), - [anon_sym_not] = ACTIONS(265), - [anon_sym_and] = ACTIONS(265), - [anon_sym_or] = ACTIONS(265), - [anon_sym_SLASH] = ACTIONS(265), - [anon_sym_PERCENT] = ACTIONS(265), - [anon_sym_SLASH_SLASH] = ACTIONS(265), - [anon_sym_AMP] = ACTIONS(265), - [anon_sym_CARET] = ACTIONS(265), - [anon_sym_LT_LT] = ACTIONS(265), - [anon_sym_TILDE] = ACTIONS(47), - [anon_sym_LT] = ACTIONS(265), - [anon_sym_LT_EQ] = ACTIONS(298), - [anon_sym_EQ_EQ] = ACTIONS(298), - [anon_sym_BANG_EQ] = ACTIONS(298), - [anon_sym_GT_EQ] = ACTIONS(298), - [anon_sym_GT] = ACTIONS(265), - [anon_sym_LT_GT] = ACTIONS(298), - [anon_sym_is] = ACTIONS(265), - [anon_sym_PLUS_EQ] = ACTIONS(302), - [anon_sym_DASH_EQ] = ACTIONS(302), - [anon_sym_STAR_EQ] = ACTIONS(302), - [anon_sym_SLASH_EQ] = ACTIONS(302), - [anon_sym_AT_EQ] = ACTIONS(302), - [anon_sym_SLASH_SLASH_EQ] = ACTIONS(302), - [anon_sym_PERCENT_EQ] = ACTIONS(302), - [anon_sym_STAR_STAR_EQ] = ACTIONS(302), - [anon_sym_GT_GT_EQ] = ACTIONS(302), - [anon_sym_LT_LT_EQ] = ACTIONS(302), - [anon_sym_AMP_EQ] = ACTIONS(302), - [anon_sym_CARET_EQ] = ACTIONS(302), - [anon_sym_PIPE_EQ] = ACTIONS(302), - [sym_ellipsis] = ACTIONS(75), - [sym_integer] = ACTIONS(77), - [sym_float] = ACTIONS(75), - [anon_sym_await] = ACTIONS(576), - [sym_true] = ACTIONS(77), - [sym_false] = ACTIONS(77), - [sym_none] = ACTIONS(77), + [sym_primary_expression] = STATE(741), + [sym_binary_operator] = STATE(725), + [sym_unary_operator] = STATE(725), + [sym_attribute] = STATE(725), + [sym_subscript] = STATE(725), + [sym_call] = STATE(725), + [sym_list] = STATE(725), + [sym_set] = STATE(725), + [sym_tuple] = STATE(725), + [sym_dictionary] = STATE(725), + [sym_list_comprehension] = STATE(725), + [sym_dictionary_comprehension] = STATE(725), + [sym_set_comprehension] = STATE(725), + [sym_generator_expression] = STATE(725), + [sym_parenthesized_expression] = STATE(725), + [sym_concatenated_string] = STATE(725), + [sym_string] = STATE(645), + [sym_concatenated_template_string] = STATE(725), + [sym_template_string] = STATE(658), + [sym_await] = STATE(725), + [sym_identifier] = ACTIONS(311), + [anon_sym_lazy] = ACTIONS(573), + [anon_sym_DOT] = ACTIONS(272), + [anon_sym_LPAREN] = ACTIONS(575), + [anon_sym_RPAREN] = ACTIONS(577), + [anon_sym_COMMA] = ACTIONS(577), + [anon_sym_STAR] = ACTIONS(272), + [anon_sym_print] = ACTIONS(573), + [anon_sym_GT_GT] = ACTIONS(272), + [anon_sym_COLON_EQ] = ACTIONS(580), + [anon_sym_if] = ACTIONS(272), + [anon_sym_COLON] = ACTIONS(582), + [anon_sym_async] = ACTIONS(573), + [anon_sym_in] = ACTIONS(272), + [anon_sym_match] = ACTIONS(573), + [anon_sym_PIPE] = ACTIONS(272), + [anon_sym_DASH] = ACTIONS(584), + [anon_sym_PLUS] = ACTIONS(584), + [anon_sym_LBRACK] = ACTIONS(586), + [anon_sym_RBRACK] = ACTIONS(577), + [anon_sym_LBRACE] = ACTIONS(293), + [anon_sym_STAR_STAR] = ACTIONS(272), + [anon_sym_EQ] = ACTIONS(582), + [anon_sym_exec] = ACTIONS(573), + [anon_sym_type] = ACTIONS(573), + [anon_sym_AT] = ACTIONS(272), + [anon_sym_not] = ACTIONS(272), + [anon_sym_and] = ACTIONS(272), + [anon_sym_or] = ACTIONS(272), + [anon_sym_SLASH] = ACTIONS(272), + [anon_sym_PERCENT] = ACTIONS(272), + [anon_sym_SLASH_SLASH] = ACTIONS(272), + [anon_sym_AMP] = ACTIONS(272), + [anon_sym_CARET] = ACTIONS(272), + [anon_sym_LT_LT] = ACTIONS(272), + [anon_sym_TILDE] = ACTIONS(301), + [anon_sym_LT] = ACTIONS(272), + [anon_sym_LT_EQ] = ACTIONS(303), + [anon_sym_EQ_EQ] = ACTIONS(303), + [anon_sym_BANG_EQ] = ACTIONS(303), + [anon_sym_GT_EQ] = ACTIONS(303), + [anon_sym_GT] = ACTIONS(272), + [anon_sym_LT_GT] = ACTIONS(303), + [anon_sym_is] = ACTIONS(272), + [anon_sym_PLUS_EQ] = ACTIONS(588), + [anon_sym_DASH_EQ] = ACTIONS(588), + [anon_sym_STAR_EQ] = ACTIONS(588), + [anon_sym_SLASH_EQ] = ACTIONS(588), + [anon_sym_AT_EQ] = ACTIONS(588), + [anon_sym_SLASH_SLASH_EQ] = ACTIONS(588), + [anon_sym_PERCENT_EQ] = ACTIONS(588), + [anon_sym_STAR_STAR_EQ] = ACTIONS(588), + [anon_sym_GT_GT_EQ] = ACTIONS(588), + [anon_sym_LT_LT_EQ] = ACTIONS(588), + [anon_sym_AMP_EQ] = ACTIONS(588), + [anon_sym_CARET_EQ] = ACTIONS(588), + [anon_sym_PIPE_EQ] = ACTIONS(588), + [sym_ellipsis] = ACTIONS(309), + [sym_integer] = ACTIONS(311), + [sym_float] = ACTIONS(309), + [anon_sym_await] = ACTIONS(590), + [sym_true] = ACTIONS(311), + [sym_false] = ACTIONS(311), + [sym_none] = ACTIONS(311), [sym_comment] = ACTIONS(3), - [anon_sym_SEMI] = ACTIONS(298), - [sym__newline] = ACTIONS(298), - [sym__string_start] = ACTIONS(81), - [sym__template_string_start] = ACTIONS(83), + [sym__string_start] = ACTIONS(315), + [sym__template_string_start] = ACTIONS(317), }, [STATE(135)] = { - [sym_primary_expression] = STATE(735), - [sym_binary_operator] = STATE(724), - [sym_unary_operator] = STATE(724), - [sym_attribute] = STATE(724), - [sym_subscript] = STATE(724), - [sym_call] = STATE(724), - [sym_list] = STATE(724), - [sym_set] = STATE(724), - [sym_tuple] = STATE(724), - [sym_dictionary] = STATE(724), - [sym_list_comprehension] = STATE(724), - [sym_dictionary_comprehension] = STATE(724), - [sym_set_comprehension] = STATE(724), - [sym_generator_expression] = STATE(724), - [sym_parenthesized_expression] = STATE(724), - [sym_concatenated_string] = STATE(724), - [sym_string] = STATE(621), - [sym_concatenated_template_string] = STATE(724), - [sym_template_string] = STATE(624), - [sym_await] = STATE(724), - [sym_identifier] = ACTIONS(306), - [anon_sym_DOT] = ACTIONS(265), - [anon_sym_LPAREN] = ACTIONS(578), - [anon_sym_RPAREN] = ACTIONS(580), - [anon_sym_COMMA] = ACTIONS(580), - [anon_sym_STAR] = ACTIONS(265), - [anon_sym_print] = ACTIONS(583), - [anon_sym_GT_GT] = ACTIONS(265), - [anon_sym_COLON_EQ] = ACTIONS(585), - [anon_sym_if] = ACTIONS(265), - [anon_sym_COLON] = ACTIONS(587), - [anon_sym_async] = ACTIONS(583), - [anon_sym_in] = ACTIONS(265), - [anon_sym_match] = ACTIONS(583), - [anon_sym_PIPE] = ACTIONS(265), - [anon_sym_DASH] = ACTIONS(589), - [anon_sym_PLUS] = ACTIONS(589), - [anon_sym_LBRACK] = ACTIONS(591), - [anon_sym_RBRACK] = ACTIONS(580), - [anon_sym_LBRACE] = ACTIONS(288), - [anon_sym_STAR_STAR] = ACTIONS(265), - [anon_sym_EQ] = ACTIONS(587), - [anon_sym_exec] = ACTIONS(583), - [anon_sym_type] = ACTIONS(583), - [anon_sym_AT] = ACTIONS(265), - [anon_sym_not] = ACTIONS(265), - [anon_sym_and] = ACTIONS(265), - [anon_sym_or] = ACTIONS(265), - [anon_sym_SLASH] = ACTIONS(265), - [anon_sym_PERCENT] = ACTIONS(265), - [anon_sym_SLASH_SLASH] = ACTIONS(265), - [anon_sym_AMP] = ACTIONS(265), - [anon_sym_CARET] = ACTIONS(265), - [anon_sym_LT_LT] = ACTIONS(265), - [anon_sym_TILDE] = ACTIONS(296), - [anon_sym_LT] = ACTIONS(265), - [anon_sym_LT_EQ] = ACTIONS(298), - [anon_sym_EQ_EQ] = ACTIONS(298), - [anon_sym_BANG_EQ] = ACTIONS(298), - [anon_sym_GT_EQ] = ACTIONS(298), - [anon_sym_GT] = ACTIONS(265), - [anon_sym_LT_GT] = ACTIONS(298), - [anon_sym_is] = ACTIONS(265), - [anon_sym_PLUS_EQ] = ACTIONS(593), - [anon_sym_DASH_EQ] = ACTIONS(593), - [anon_sym_STAR_EQ] = ACTIONS(593), - [anon_sym_SLASH_EQ] = ACTIONS(593), - [anon_sym_AT_EQ] = ACTIONS(593), - [anon_sym_SLASH_SLASH_EQ] = ACTIONS(593), - [anon_sym_PERCENT_EQ] = ACTIONS(593), - [anon_sym_STAR_STAR_EQ] = ACTIONS(593), - [anon_sym_GT_GT_EQ] = ACTIONS(593), - [anon_sym_LT_LT_EQ] = ACTIONS(593), - [anon_sym_AMP_EQ] = ACTIONS(593), - [anon_sym_CARET_EQ] = ACTIONS(593), - [anon_sym_PIPE_EQ] = ACTIONS(593), - [sym_ellipsis] = ACTIONS(304), - [sym_integer] = ACTIONS(306), - [sym_float] = ACTIONS(304), - [anon_sym_await] = ACTIONS(595), - [sym_true] = ACTIONS(306), - [sym_false] = ACTIONS(306), - [sym_none] = ACTIONS(306), + [sym_primary_expression] = STATE(786), + [sym_binary_operator] = STATE(920), + [sym_unary_operator] = STATE(920), + [sym_attribute] = STATE(920), + [sym_subscript] = STATE(920), + [sym_call] = STATE(920), + [sym_list] = STATE(920), + [sym_set] = STATE(920), + [sym_tuple] = STATE(920), + [sym_dictionary] = STATE(920), + [sym_list_comprehension] = STATE(920), + [sym_dictionary_comprehension] = STATE(920), + [sym_set_comprehension] = STATE(920), + [sym_generator_expression] = STATE(920), + [sym_parenthesized_expression] = STATE(920), + [sym_concatenated_string] = STATE(920), + [sym_string] = STATE(775), + [sym_concatenated_template_string] = STATE(920), + [sym_template_string] = STATE(769), + [sym_await] = STATE(920), + [sym_identifier] = ACTIONS(79), + [anon_sym_lazy] = ACTIONS(592), + [anon_sym_DOT] = ACTIONS(272), + [anon_sym_LPAREN] = ACTIONS(594), + [anon_sym_COMMA] = ACTIONS(277), + [anon_sym_STAR] = ACTIONS(272), + [anon_sym_print] = ACTIONS(592), + [anon_sym_GT_GT] = ACTIONS(272), + [anon_sym_COLON_EQ] = ACTIONS(283), + [anon_sym_if] = ACTIONS(272), + [anon_sym_COLON] = ACTIONS(285), + [anon_sym_async] = ACTIONS(592), + [anon_sym_in] = ACTIONS(272), + [anon_sym_match] = ACTIONS(592), + [anon_sym_PIPE] = ACTIONS(272), + [anon_sym_DASH] = ACTIONS(596), + [anon_sym_PLUS] = ACTIONS(596), + [anon_sym_LBRACK] = ACTIONS(598), + [anon_sym_LBRACE] = ACTIONS(53), + [anon_sym_STAR_STAR] = ACTIONS(272), + [anon_sym_EQ] = ACTIONS(285), + [anon_sym_exec] = ACTIONS(592), + [anon_sym_type] = ACTIONS(592), + [anon_sym_AT] = ACTIONS(272), + [anon_sym_not] = ACTIONS(272), + [anon_sym_and] = ACTIONS(272), + [anon_sym_or] = ACTIONS(272), + [anon_sym_SLASH] = ACTIONS(272), + [anon_sym_PERCENT] = ACTIONS(272), + [anon_sym_SLASH_SLASH] = ACTIONS(272), + [anon_sym_AMP] = ACTIONS(272), + [anon_sym_CARET] = ACTIONS(272), + [anon_sym_LT_LT] = ACTIONS(272), + [anon_sym_TILDE] = ACTIONS(49), + [anon_sym_LT] = ACTIONS(272), + [anon_sym_LT_EQ] = ACTIONS(303), + [anon_sym_EQ_EQ] = ACTIONS(303), + [anon_sym_BANG_EQ] = ACTIONS(303), + [anon_sym_GT_EQ] = ACTIONS(303), + [anon_sym_GT] = ACTIONS(272), + [anon_sym_LT_GT] = ACTIONS(303), + [anon_sym_is] = ACTIONS(272), + [anon_sym_PLUS_EQ] = ACTIONS(307), + [anon_sym_DASH_EQ] = ACTIONS(307), + [anon_sym_STAR_EQ] = ACTIONS(307), + [anon_sym_SLASH_EQ] = ACTIONS(307), + [anon_sym_AT_EQ] = ACTIONS(307), + [anon_sym_SLASH_SLASH_EQ] = ACTIONS(307), + [anon_sym_PERCENT_EQ] = ACTIONS(307), + [anon_sym_STAR_STAR_EQ] = ACTIONS(307), + [anon_sym_GT_GT_EQ] = ACTIONS(307), + [anon_sym_LT_LT_EQ] = ACTIONS(307), + [anon_sym_AMP_EQ] = ACTIONS(307), + [anon_sym_CARET_EQ] = ACTIONS(307), + [anon_sym_PIPE_EQ] = ACTIONS(307), + [sym_ellipsis] = ACTIONS(77), + [sym_integer] = ACTIONS(79), + [sym_float] = ACTIONS(77), + [anon_sym_await] = ACTIONS(600), + [sym_true] = ACTIONS(79), + [sym_false] = ACTIONS(79), + [sym_none] = ACTIONS(79), [sym_comment] = ACTIONS(3), - [sym__string_start] = ACTIONS(310), - [sym__template_string_start] = ACTIONS(312), + [anon_sym_SEMI] = ACTIONS(303), + [sym__newline] = ACTIONS(303), + [sym__string_start] = ACTIONS(83), + [sym__template_string_start] = ACTIONS(85), }, [STATE(136)] = { - [sym_primary_expression] = STATE(735), - [sym_binary_operator] = STATE(724), - [sym_unary_operator] = STATE(724), - [sym_attribute] = STATE(724), - [sym_subscript] = STATE(724), - [sym_call] = STATE(724), - [sym_list] = STATE(724), - [sym_set] = STATE(724), - [sym_tuple] = STATE(724), - [sym_dictionary] = STATE(724), - [sym_list_comprehension] = STATE(724), - [sym_dictionary_comprehension] = STATE(724), - [sym_set_comprehension] = STATE(724), - [sym_generator_expression] = STATE(724), - [sym_parenthesized_expression] = STATE(724), - [sym_concatenated_string] = STATE(724), - [sym_string] = STATE(621), - [sym_concatenated_template_string] = STATE(724), - [sym_template_string] = STATE(624), - [sym_await] = STATE(724), - [sym_identifier] = ACTIONS(306), - [anon_sym_DOT] = ACTIONS(265), - [anon_sym_LPAREN] = ACTIONS(578), - [anon_sym_RPAREN] = ACTIONS(298), - [anon_sym_COMMA] = ACTIONS(298), - [anon_sym_STAR] = ACTIONS(265), - [anon_sym_print] = ACTIONS(583), - [anon_sym_GT_GT] = ACTIONS(298), - [anon_sym_COLON_EQ] = ACTIONS(585), - [anon_sym_if] = ACTIONS(265), - [anon_sym_COLON] = ACTIONS(265), - [anon_sym_else] = ACTIONS(265), - [anon_sym_async] = ACTIONS(583), - [anon_sym_in] = ACTIONS(265), - [anon_sym_match] = ACTIONS(583), - [anon_sym_PIPE] = ACTIONS(298), - [anon_sym_DASH] = ACTIONS(296), - [anon_sym_PLUS] = ACTIONS(296), - [anon_sym_LBRACK] = ACTIONS(591), - [anon_sym_RBRACK] = ACTIONS(298), - [anon_sym_LBRACE] = ACTIONS(288), - [anon_sym_RBRACE] = ACTIONS(298), - [anon_sym_STAR_STAR] = ACTIONS(298), - [anon_sym_EQ] = ACTIONS(265), - [anon_sym_exec] = ACTIONS(583), - [anon_sym_type] = ACTIONS(583), - [anon_sym_AT] = ACTIONS(298), - [anon_sym_not] = ACTIONS(265), - [anon_sym_and] = ACTIONS(265), - [anon_sym_or] = ACTIONS(265), - [anon_sym_SLASH] = ACTIONS(265), - [anon_sym_PERCENT] = ACTIONS(298), - [anon_sym_SLASH_SLASH] = ACTIONS(298), - [anon_sym_AMP] = ACTIONS(298), - [anon_sym_CARET] = ACTIONS(298), - [anon_sym_LT_LT] = ACTIONS(298), - [anon_sym_TILDE] = ACTIONS(296), - [anon_sym_LT] = ACTIONS(265), - [anon_sym_LT_EQ] = ACTIONS(298), - [anon_sym_EQ_EQ] = ACTIONS(298), - [anon_sym_BANG_EQ] = ACTIONS(298), - [anon_sym_GT_EQ] = ACTIONS(298), - [anon_sym_GT] = ACTIONS(265), - [anon_sym_LT_GT] = ACTIONS(298), - [anon_sym_is] = ACTIONS(265), - [sym_ellipsis] = ACTIONS(304), - [sym_integer] = ACTIONS(306), - [sym_float] = ACTIONS(304), - [anon_sym_await] = ACTIONS(595), - [sym_true] = ACTIONS(306), - [sym_false] = ACTIONS(306), - [sym_none] = ACTIONS(306), + [sym_primary_expression] = STATE(741), + [sym_binary_operator] = STATE(725), + [sym_unary_operator] = STATE(725), + [sym_attribute] = STATE(725), + [sym_subscript] = STATE(725), + [sym_call] = STATE(725), + [sym_list] = STATE(725), + [sym_set] = STATE(725), + [sym_tuple] = STATE(725), + [sym_dictionary] = STATE(725), + [sym_list_comprehension] = STATE(725), + [sym_dictionary_comprehension] = STATE(725), + [sym_set_comprehension] = STATE(725), + [sym_generator_expression] = STATE(725), + [sym_parenthesized_expression] = STATE(725), + [sym_concatenated_string] = STATE(725), + [sym_string] = STATE(645), + [sym_concatenated_template_string] = STATE(725), + [sym_template_string] = STATE(658), + [sym_await] = STATE(725), + [sym_identifier] = ACTIONS(311), + [anon_sym_lazy] = ACTIONS(573), + [anon_sym_DOT] = ACTIONS(272), + [anon_sym_LPAREN] = ACTIONS(575), + [anon_sym_RPAREN] = ACTIONS(303), + [anon_sym_COMMA] = ACTIONS(303), + [anon_sym_STAR] = ACTIONS(272), + [anon_sym_print] = ACTIONS(573), + [anon_sym_GT_GT] = ACTIONS(303), + [anon_sym_COLON_EQ] = ACTIONS(580), + [anon_sym_if] = ACTIONS(272), + [anon_sym_COLON] = ACTIONS(272), + [anon_sym_else] = ACTIONS(272), + [anon_sym_async] = ACTIONS(573), + [anon_sym_in] = ACTIONS(272), + [anon_sym_match] = ACTIONS(573), + [anon_sym_PIPE] = ACTIONS(303), + [anon_sym_DASH] = ACTIONS(301), + [anon_sym_PLUS] = ACTIONS(301), + [anon_sym_LBRACK] = ACTIONS(586), + [anon_sym_RBRACK] = ACTIONS(303), + [anon_sym_LBRACE] = ACTIONS(293), + [anon_sym_RBRACE] = ACTIONS(303), + [anon_sym_STAR_STAR] = ACTIONS(303), + [anon_sym_EQ] = ACTIONS(272), + [anon_sym_exec] = ACTIONS(573), + [anon_sym_type] = ACTIONS(573), + [anon_sym_AT] = ACTIONS(303), + [anon_sym_not] = ACTIONS(272), + [anon_sym_and] = ACTIONS(272), + [anon_sym_or] = ACTIONS(272), + [anon_sym_SLASH] = ACTIONS(272), + [anon_sym_PERCENT] = ACTIONS(303), + [anon_sym_SLASH_SLASH] = ACTIONS(303), + [anon_sym_AMP] = ACTIONS(303), + [anon_sym_CARET] = ACTIONS(303), + [anon_sym_LT_LT] = ACTIONS(303), + [anon_sym_TILDE] = ACTIONS(301), + [anon_sym_LT] = ACTIONS(272), + [anon_sym_LT_EQ] = ACTIONS(303), + [anon_sym_EQ_EQ] = ACTIONS(303), + [anon_sym_BANG_EQ] = ACTIONS(303), + [anon_sym_GT_EQ] = ACTIONS(303), + [anon_sym_GT] = ACTIONS(272), + [anon_sym_LT_GT] = ACTIONS(303), + [anon_sym_is] = ACTIONS(272), + [sym_ellipsis] = ACTIONS(309), + [sym_integer] = ACTIONS(311), + [sym_float] = ACTIONS(309), + [anon_sym_await] = ACTIONS(590), + [sym_true] = ACTIONS(311), + [sym_false] = ACTIONS(311), + [sym_none] = ACTIONS(311), [sym_comment] = ACTIONS(3), - [sym__string_start] = ACTIONS(310), - [sym__template_string_start] = ACTIONS(312), + [sym__string_start] = ACTIONS(315), + [sym__template_string_start] = ACTIONS(317), }, [STATE(137)] = { - [sym_primary_expression] = STATE(735), - [sym_binary_operator] = STATE(724), - [sym_unary_operator] = STATE(724), - [sym_attribute] = STATE(724), - [sym_subscript] = STATE(724), - [sym_call] = STATE(724), - [sym_list] = STATE(724), - [sym_set] = STATE(724), - [sym_tuple] = STATE(724), - [sym_dictionary] = STATE(724), - [sym_list_comprehension] = STATE(724), - [sym_dictionary_comprehension] = STATE(724), - [sym_set_comprehension] = STATE(724), - [sym_generator_expression] = STATE(724), - [sym_parenthesized_expression] = STATE(724), - [sym_concatenated_string] = STATE(724), - [sym_string] = STATE(621), - [sym_concatenated_template_string] = STATE(724), - [sym_template_string] = STATE(624), - [sym_await] = STATE(724), - [sym_identifier] = ACTIONS(306), - [anon_sym_DOT] = ACTIONS(265), - [anon_sym_LPAREN] = ACTIONS(578), - [anon_sym_RPAREN] = ACTIONS(298), - [anon_sym_COMMA] = ACTIONS(298), - [anon_sym_STAR] = ACTIONS(265), - [anon_sym_print] = ACTIONS(583), - [anon_sym_GT_GT] = ACTIONS(298), - [anon_sym_if] = ACTIONS(265), - [anon_sym_COLON] = ACTIONS(298), - [anon_sym_else] = ACTIONS(265), - [anon_sym_async] = ACTIONS(583), - [anon_sym_in] = ACTIONS(265), - [anon_sym_match] = ACTIONS(583), - [anon_sym_PIPE] = ACTIONS(298), - [anon_sym_DASH] = ACTIONS(296), - [anon_sym_PLUS] = ACTIONS(296), - [anon_sym_LBRACK] = ACTIONS(591), - [anon_sym_RBRACK] = ACTIONS(298), - [anon_sym_LBRACE] = ACTIONS(288), - [anon_sym_RBRACE] = ACTIONS(298), - [anon_sym_STAR_STAR] = ACTIONS(298), - [anon_sym_EQ] = ACTIONS(265), - [anon_sym_exec] = ACTIONS(583), - [anon_sym_type] = ACTIONS(583), - [anon_sym_AT] = ACTIONS(298), - [anon_sym_not] = ACTIONS(265), - [anon_sym_and] = ACTIONS(265), - [anon_sym_or] = ACTIONS(265), - [anon_sym_SLASH] = ACTIONS(265), - [anon_sym_PERCENT] = ACTIONS(298), - [anon_sym_SLASH_SLASH] = ACTIONS(298), - [anon_sym_AMP] = ACTIONS(298), - [anon_sym_CARET] = ACTIONS(298), - [anon_sym_LT_LT] = ACTIONS(298), - [anon_sym_TILDE] = ACTIONS(296), - [anon_sym_LT] = ACTIONS(265), - [anon_sym_LT_EQ] = ACTIONS(298), - [anon_sym_EQ_EQ] = ACTIONS(298), - [anon_sym_BANG_EQ] = ACTIONS(298), - [anon_sym_GT_EQ] = ACTIONS(298), - [anon_sym_GT] = ACTIONS(265), - [anon_sym_LT_GT] = ACTIONS(298), - [anon_sym_is] = ACTIONS(265), - [sym_ellipsis] = ACTIONS(304), - [sym_integer] = ACTIONS(306), - [sym_float] = ACTIONS(304), - [anon_sym_await] = ACTIONS(595), - [sym_true] = ACTIONS(306), - [sym_false] = ACTIONS(306), - [sym_none] = ACTIONS(306), + [sym_primary_expression] = STATE(741), + [sym_binary_operator] = STATE(725), + [sym_unary_operator] = STATE(725), + [sym_attribute] = STATE(725), + [sym_subscript] = STATE(725), + [sym_call] = STATE(725), + [sym_list] = STATE(725), + [sym_set] = STATE(725), + [sym_tuple] = STATE(725), + [sym_dictionary] = STATE(725), + [sym_list_comprehension] = STATE(725), + [sym_dictionary_comprehension] = STATE(725), + [sym_set_comprehension] = STATE(725), + [sym_generator_expression] = STATE(725), + [sym_parenthesized_expression] = STATE(725), + [sym_concatenated_string] = STATE(725), + [sym_string] = STATE(645), + [sym_concatenated_template_string] = STATE(725), + [sym_template_string] = STATE(658), + [sym_await] = STATE(725), + [sym_identifier] = ACTIONS(311), + [anon_sym_lazy] = ACTIONS(573), + [anon_sym_DOT] = ACTIONS(272), + [anon_sym_LPAREN] = ACTIONS(575), + [anon_sym_RPAREN] = ACTIONS(303), + [anon_sym_COMMA] = ACTIONS(303), + [anon_sym_STAR] = ACTIONS(272), + [anon_sym_print] = ACTIONS(573), + [anon_sym_GT_GT] = ACTIONS(303), + [anon_sym_if] = ACTIONS(272), + [anon_sym_COLON] = ACTIONS(303), + [anon_sym_else] = ACTIONS(272), + [anon_sym_async] = ACTIONS(573), + [anon_sym_in] = ACTIONS(272), + [anon_sym_match] = ACTIONS(573), + [anon_sym_PIPE] = ACTIONS(303), + [anon_sym_DASH] = ACTIONS(301), + [anon_sym_PLUS] = ACTIONS(301), + [anon_sym_LBRACK] = ACTIONS(586), + [anon_sym_RBRACK] = ACTIONS(303), + [anon_sym_LBRACE] = ACTIONS(293), + [anon_sym_RBRACE] = ACTIONS(303), + [anon_sym_STAR_STAR] = ACTIONS(303), + [anon_sym_EQ] = ACTIONS(272), + [anon_sym_exec] = ACTIONS(573), + [anon_sym_type] = ACTIONS(573), + [anon_sym_AT] = ACTIONS(303), + [anon_sym_not] = ACTIONS(272), + [anon_sym_and] = ACTIONS(272), + [anon_sym_or] = ACTIONS(272), + [anon_sym_SLASH] = ACTIONS(272), + [anon_sym_PERCENT] = ACTIONS(303), + [anon_sym_SLASH_SLASH] = ACTIONS(303), + [anon_sym_AMP] = ACTIONS(303), + [anon_sym_CARET] = ACTIONS(303), + [anon_sym_LT_LT] = ACTIONS(303), + [anon_sym_TILDE] = ACTIONS(301), + [anon_sym_LT] = ACTIONS(272), + [anon_sym_LT_EQ] = ACTIONS(303), + [anon_sym_EQ_EQ] = ACTIONS(303), + [anon_sym_BANG_EQ] = ACTIONS(303), + [anon_sym_GT_EQ] = ACTIONS(303), + [anon_sym_GT] = ACTIONS(272), + [anon_sym_LT_GT] = ACTIONS(303), + [anon_sym_is] = ACTIONS(272), + [sym_ellipsis] = ACTIONS(309), + [sym_integer] = ACTIONS(311), + [sym_float] = ACTIONS(309), + [anon_sym_await] = ACTIONS(590), + [sym_true] = ACTIONS(311), + [sym_false] = ACTIONS(311), + [sym_none] = ACTIONS(311), [sym_comment] = ACTIONS(3), - [sym__string_start] = ACTIONS(310), - [sym__template_string_start] = ACTIONS(312), + [sym__string_start] = ACTIONS(315), + [sym__template_string_start] = ACTIONS(317), }, [STATE(138)] = { - [sym_primary_expression] = STATE(760), - [sym_binary_operator] = STATE(724), - [sym_unary_operator] = STATE(724), - [sym_attribute] = STATE(724), - [sym_subscript] = STATE(724), - [sym_call] = STATE(724), - [sym_list] = STATE(724), - [sym_set] = STATE(724), - [sym_tuple] = STATE(724), - [sym_dictionary] = STATE(724), - [sym_list_comprehension] = STATE(724), - [sym_dictionary_comprehension] = STATE(724), - [sym_set_comprehension] = STATE(724), - [sym_generator_expression] = STATE(724), - [sym_parenthesized_expression] = STATE(724), - [sym_concatenated_string] = STATE(724), - [sym_string] = STATE(621), - [sym_concatenated_template_string] = STATE(724), - [sym_template_string] = STATE(624), - [sym_await] = STATE(724), - [sym_identifier] = ACTIONS(306), - [anon_sym_DOT] = ACTIONS(265), - [anon_sym_LPAREN] = ACTIONS(597), - [anon_sym_RPAREN] = ACTIONS(298), - [anon_sym_COMMA] = ACTIONS(298), - [anon_sym_as] = ACTIONS(265), - [anon_sym_STAR] = ACTIONS(265), - [anon_sym_print] = ACTIONS(583), - [anon_sym_GT_GT] = ACTIONS(298), - [anon_sym_COLON_EQ] = ACTIONS(599), - [anon_sym_if] = ACTIONS(265), - [anon_sym_async] = ACTIONS(583), - [anon_sym_for] = ACTIONS(265), - [anon_sym_in] = ACTIONS(265), - [anon_sym_match] = ACTIONS(583), - [anon_sym_PIPE] = ACTIONS(298), - [anon_sym_DASH] = ACTIONS(601), - [anon_sym_PLUS] = ACTIONS(601), - [anon_sym_LBRACK] = ACTIONS(603), - [anon_sym_RBRACK] = ACTIONS(298), - [anon_sym_LBRACE] = ACTIONS(288), - [anon_sym_RBRACE] = ACTIONS(298), - [anon_sym_STAR_STAR] = ACTIONS(298), - [anon_sym_exec] = ACTIONS(583), - [anon_sym_type] = ACTIONS(583), - [anon_sym_AT] = ACTIONS(298), - [anon_sym_not] = ACTIONS(265), - [anon_sym_and] = ACTIONS(265), - [anon_sym_or] = ACTIONS(265), - [anon_sym_SLASH] = ACTIONS(265), - [anon_sym_PERCENT] = ACTIONS(298), - [anon_sym_SLASH_SLASH] = ACTIONS(298), - [anon_sym_AMP] = ACTIONS(298), - [anon_sym_CARET] = ACTIONS(298), - [anon_sym_LT_LT] = ACTIONS(298), - [anon_sym_TILDE] = ACTIONS(601), - [anon_sym_LT] = ACTIONS(265), - [anon_sym_LT_EQ] = ACTIONS(298), - [anon_sym_EQ_EQ] = ACTIONS(298), - [anon_sym_BANG_EQ] = ACTIONS(298), - [anon_sym_GT_EQ] = ACTIONS(298), - [anon_sym_GT] = ACTIONS(265), - [anon_sym_LT_GT] = ACTIONS(298), - [anon_sym_is] = ACTIONS(265), - [sym_ellipsis] = ACTIONS(304), - [sym_integer] = ACTIONS(306), - [sym_float] = ACTIONS(304), - [anon_sym_await] = ACTIONS(605), - [sym_true] = ACTIONS(306), - [sym_false] = ACTIONS(306), - [sym_none] = ACTIONS(306), + [sym_primary_expression] = STATE(740), + [sym_binary_operator] = STATE(725), + [sym_unary_operator] = STATE(725), + [sym_attribute] = STATE(725), + [sym_subscript] = STATE(725), + [sym_call] = STATE(725), + [sym_list] = STATE(725), + [sym_set] = STATE(725), + [sym_tuple] = STATE(725), + [sym_dictionary] = STATE(725), + [sym_list_comprehension] = STATE(725), + [sym_dictionary_comprehension] = STATE(725), + [sym_set_comprehension] = STATE(725), + [sym_generator_expression] = STATE(725), + [sym_parenthesized_expression] = STATE(725), + [sym_concatenated_string] = STATE(725), + [sym_string] = STATE(645), + [sym_concatenated_template_string] = STATE(725), + [sym_template_string] = STATE(658), + [sym_await] = STATE(725), + [sym_identifier] = ACTIONS(311), + [anon_sym_lazy] = ACTIONS(573), + [anon_sym_DOT] = ACTIONS(272), + [anon_sym_LPAREN] = ACTIONS(602), + [anon_sym_RPAREN] = ACTIONS(303), + [anon_sym_COMMA] = ACTIONS(303), + [anon_sym_as] = ACTIONS(272), + [anon_sym_STAR] = ACTIONS(272), + [anon_sym_print] = ACTIONS(573), + [anon_sym_GT_GT] = ACTIONS(303), + [anon_sym_COLON_EQ] = ACTIONS(604), + [anon_sym_if] = ACTIONS(272), + [anon_sym_async] = ACTIONS(573), + [anon_sym_for] = ACTIONS(272), + [anon_sym_in] = ACTIONS(272), + [anon_sym_match] = ACTIONS(573), + [anon_sym_PIPE] = ACTIONS(303), + [anon_sym_DASH] = ACTIONS(606), + [anon_sym_PLUS] = ACTIONS(606), + [anon_sym_LBRACK] = ACTIONS(608), + [anon_sym_RBRACK] = ACTIONS(303), + [anon_sym_LBRACE] = ACTIONS(293), + [anon_sym_RBRACE] = ACTIONS(303), + [anon_sym_STAR_STAR] = ACTIONS(303), + [anon_sym_exec] = ACTIONS(573), + [anon_sym_type] = ACTIONS(573), + [anon_sym_AT] = ACTIONS(303), + [anon_sym_not] = ACTIONS(272), + [anon_sym_and] = ACTIONS(272), + [anon_sym_or] = ACTIONS(272), + [anon_sym_SLASH] = ACTIONS(272), + [anon_sym_PERCENT] = ACTIONS(303), + [anon_sym_SLASH_SLASH] = ACTIONS(303), + [anon_sym_AMP] = ACTIONS(303), + [anon_sym_CARET] = ACTIONS(303), + [anon_sym_LT_LT] = ACTIONS(303), + [anon_sym_TILDE] = ACTIONS(606), + [anon_sym_LT] = ACTIONS(272), + [anon_sym_LT_EQ] = ACTIONS(303), + [anon_sym_EQ_EQ] = ACTIONS(303), + [anon_sym_BANG_EQ] = ACTIONS(303), + [anon_sym_GT_EQ] = ACTIONS(303), + [anon_sym_GT] = ACTIONS(272), + [anon_sym_LT_GT] = ACTIONS(303), + [anon_sym_is] = ACTIONS(272), + [sym_ellipsis] = ACTIONS(309), + [sym_integer] = ACTIONS(311), + [sym_float] = ACTIONS(309), + [anon_sym_await] = ACTIONS(610), + [sym_true] = ACTIONS(311), + [sym_false] = ACTIONS(311), + [sym_none] = ACTIONS(311), [sym_comment] = ACTIONS(3), - [sym__string_start] = ACTIONS(310), - [sym__template_string_start] = ACTIONS(312), + [sym__string_start] = ACTIONS(315), + [sym__template_string_start] = ACTIONS(317), }, [STATE(139)] = { - [sym_primary_expression] = STATE(735), - [sym_binary_operator] = STATE(724), - [sym_unary_operator] = STATE(724), - [sym_attribute] = STATE(724), - [sym_subscript] = STATE(724), - [sym_call] = STATE(724), - [sym_list] = STATE(724), - [sym_set] = STATE(724), - [sym_tuple] = STATE(724), - [sym_dictionary] = STATE(724), - [sym_list_comprehension] = STATE(724), - [sym_dictionary_comprehension] = STATE(724), - [sym_set_comprehension] = STATE(724), - [sym_generator_expression] = STATE(724), - [sym_parenthesized_expression] = STATE(724), - [sym_concatenated_string] = STATE(724), - [sym_string] = STATE(621), - [sym_concatenated_template_string] = STATE(724), - [sym_template_string] = STATE(624), - [sym_await] = STATE(724), - [sym_identifier] = ACTIONS(306), - [anon_sym_DOT] = ACTIONS(265), - [anon_sym_LPAREN] = ACTIONS(578), - [anon_sym_RPAREN] = ACTIONS(593), - [anon_sym_COMMA] = ACTIONS(593), - [anon_sym_STAR] = ACTIONS(265), - [anon_sym_print] = ACTIONS(583), - [anon_sym_GT_GT] = ACTIONS(265), - [anon_sym_COLON] = ACTIONS(593), - [anon_sym_async] = ACTIONS(583), - [anon_sym_in] = ACTIONS(587), - [anon_sym_match] = ACTIONS(583), - [anon_sym_PIPE] = ACTIONS(265), - [anon_sym_DASH] = ACTIONS(589), - [anon_sym_PLUS] = ACTIONS(589), - [anon_sym_LBRACK] = ACTIONS(591), - [anon_sym_RBRACK] = ACTIONS(593), - [anon_sym_LBRACE] = ACTIONS(288), - [anon_sym_STAR_STAR] = ACTIONS(265), - [anon_sym_EQ] = ACTIONS(593), - [anon_sym_exec] = ACTIONS(583), - [anon_sym_type] = ACTIONS(583), - [anon_sym_AT] = ACTIONS(265), - [anon_sym_SLASH] = ACTIONS(265), - [anon_sym_PERCENT] = ACTIONS(265), - [anon_sym_SLASH_SLASH] = ACTIONS(265), - [anon_sym_AMP] = ACTIONS(265), - [anon_sym_CARET] = ACTIONS(265), - [anon_sym_LT_LT] = ACTIONS(265), - [anon_sym_TILDE] = ACTIONS(296), - [anon_sym_PLUS_EQ] = ACTIONS(593), - [anon_sym_DASH_EQ] = ACTIONS(593), - [anon_sym_STAR_EQ] = ACTIONS(593), - [anon_sym_SLASH_EQ] = ACTIONS(593), - [anon_sym_AT_EQ] = ACTIONS(593), - [anon_sym_SLASH_SLASH_EQ] = ACTIONS(593), - [anon_sym_PERCENT_EQ] = ACTIONS(593), - [anon_sym_STAR_STAR_EQ] = ACTIONS(593), - [anon_sym_GT_GT_EQ] = ACTIONS(593), - [anon_sym_LT_LT_EQ] = ACTIONS(593), - [anon_sym_AMP_EQ] = ACTIONS(593), - [anon_sym_CARET_EQ] = ACTIONS(593), - [anon_sym_PIPE_EQ] = ACTIONS(593), - [sym_ellipsis] = ACTIONS(304), - [sym_integer] = ACTIONS(306), - [sym_float] = ACTIONS(304), - [anon_sym_await] = ACTIONS(595), - [sym_true] = ACTIONS(306), - [sym_false] = ACTIONS(306), - [sym_none] = ACTIONS(306), + [sym_primary_expression] = STATE(786), + [sym_binary_operator] = STATE(920), + [sym_unary_operator] = STATE(920), + [sym_attribute] = STATE(920), + [sym_subscript] = STATE(920), + [sym_call] = STATE(920), + [sym_list] = STATE(920), + [sym_set] = STATE(920), + [sym_tuple] = STATE(920), + [sym_dictionary] = STATE(920), + [sym_list_comprehension] = STATE(920), + [sym_dictionary_comprehension] = STATE(920), + [sym_set_comprehension] = STATE(920), + [sym_generator_expression] = STATE(920), + [sym_parenthesized_expression] = STATE(920), + [sym_concatenated_string] = STATE(920), + [sym_string] = STATE(775), + [sym_concatenated_template_string] = STATE(920), + [sym_template_string] = STATE(769), + [sym_await] = STATE(920), + [sym_identifier] = ACTIONS(79), + [anon_sym_lazy] = ACTIONS(592), + [anon_sym_DOT] = ACTIONS(272), + [anon_sym_from] = ACTIONS(272), + [anon_sym_LPAREN] = ACTIONS(594), + [anon_sym_COMMA] = ACTIONS(303), + [anon_sym_STAR] = ACTIONS(272), + [anon_sym_print] = ACTIONS(592), + [anon_sym_GT_GT] = ACTIONS(303), + [anon_sym_COLON_EQ] = ACTIONS(283), + [anon_sym_if] = ACTIONS(272), + [anon_sym_async] = ACTIONS(592), + [anon_sym_in] = ACTIONS(272), + [anon_sym_match] = ACTIONS(592), + [anon_sym_PIPE] = ACTIONS(303), + [anon_sym_DASH] = ACTIONS(49), + [anon_sym_PLUS] = ACTIONS(49), + [anon_sym_LBRACK] = ACTIONS(598), + [anon_sym_LBRACE] = ACTIONS(53), + [anon_sym_STAR_STAR] = ACTIONS(303), + [anon_sym_EQ] = ACTIONS(272), + [anon_sym_exec] = ACTIONS(592), + [anon_sym_type] = ACTIONS(592), + [anon_sym_AT] = ACTIONS(303), + [anon_sym_not] = ACTIONS(272), + [anon_sym_and] = ACTIONS(272), + [anon_sym_or] = ACTIONS(272), + [anon_sym_SLASH] = ACTIONS(272), + [anon_sym_PERCENT] = ACTIONS(303), + [anon_sym_SLASH_SLASH] = ACTIONS(303), + [anon_sym_AMP] = ACTIONS(303), + [anon_sym_CARET] = ACTIONS(303), + [anon_sym_LT_LT] = ACTIONS(303), + [anon_sym_TILDE] = ACTIONS(49), + [anon_sym_LT] = ACTIONS(272), + [anon_sym_LT_EQ] = ACTIONS(303), + [anon_sym_EQ_EQ] = ACTIONS(303), + [anon_sym_BANG_EQ] = ACTIONS(303), + [anon_sym_GT_EQ] = ACTIONS(303), + [anon_sym_GT] = ACTIONS(272), + [anon_sym_LT_GT] = ACTIONS(303), + [anon_sym_is] = ACTIONS(272), + [sym_ellipsis] = ACTIONS(77), + [sym_integer] = ACTIONS(79), + [sym_float] = ACTIONS(77), + [anon_sym_await] = ACTIONS(600), + [sym_true] = ACTIONS(79), + [sym_false] = ACTIONS(79), + [sym_none] = ACTIONS(79), [sym_comment] = ACTIONS(3), - [sym__string_start] = ACTIONS(310), - [sym__template_string_start] = ACTIONS(312), + [anon_sym_SEMI] = ACTIONS(303), + [sym__newline] = ACTIONS(303), + [sym__string_start] = ACTIONS(83), + [sym__template_string_start] = ACTIONS(85), }, [STATE(140)] = { - [sym_primary_expression] = STATE(810), - [sym_binary_operator] = STATE(908), - [sym_unary_operator] = STATE(908), - [sym_attribute] = STATE(908), - [sym_subscript] = STATE(908), - [sym_call] = STATE(908), - [sym_list] = STATE(908), - [sym_set] = STATE(908), - [sym_tuple] = STATE(908), - [sym_dictionary] = STATE(908), - [sym_list_comprehension] = STATE(908), - [sym_dictionary_comprehension] = STATE(908), - [sym_set_comprehension] = STATE(908), - [sym_generator_expression] = STATE(908), - [sym_parenthesized_expression] = STATE(908), - [sym_concatenated_string] = STATE(908), - [sym_string] = STATE(782), - [sym_concatenated_template_string] = STATE(908), - [sym_template_string] = STATE(763), - [sym_await] = STATE(908), - [sym_identifier] = ACTIONS(77), - [anon_sym_DOT] = ACTIONS(265), - [anon_sym_from] = ACTIONS(265), - [anon_sym_LPAREN] = ACTIONS(568), - [anon_sym_COMMA] = ACTIONS(298), - [anon_sym_STAR] = ACTIONS(265), - [anon_sym_print] = ACTIONS(570), - [anon_sym_GT_GT] = ACTIONS(298), - [anon_sym_COLON_EQ] = ACTIONS(278), - [anon_sym_if] = ACTIONS(265), - [anon_sym_async] = ACTIONS(570), - [anon_sym_in] = ACTIONS(265), - [anon_sym_match] = ACTIONS(570), - [anon_sym_PIPE] = ACTIONS(298), - [anon_sym_DASH] = ACTIONS(47), - [anon_sym_PLUS] = ACTIONS(47), - [anon_sym_LBRACK] = ACTIONS(574), - [anon_sym_LBRACE] = ACTIONS(51), - [anon_sym_STAR_STAR] = ACTIONS(298), - [anon_sym_EQ] = ACTIONS(265), - [anon_sym_exec] = ACTIONS(570), - [anon_sym_type] = ACTIONS(570), - [anon_sym_AT] = ACTIONS(298), - [anon_sym_not] = ACTIONS(265), - [anon_sym_and] = ACTIONS(265), - [anon_sym_or] = ACTIONS(265), - [anon_sym_SLASH] = ACTIONS(265), - [anon_sym_PERCENT] = ACTIONS(298), - [anon_sym_SLASH_SLASH] = ACTIONS(298), - [anon_sym_AMP] = ACTIONS(298), - [anon_sym_CARET] = ACTIONS(298), - [anon_sym_LT_LT] = ACTIONS(298), - [anon_sym_TILDE] = ACTIONS(47), - [anon_sym_LT] = ACTIONS(265), - [anon_sym_LT_EQ] = ACTIONS(298), - [anon_sym_EQ_EQ] = ACTIONS(298), - [anon_sym_BANG_EQ] = ACTIONS(298), - [anon_sym_GT_EQ] = ACTIONS(298), - [anon_sym_GT] = ACTIONS(265), - [anon_sym_LT_GT] = ACTIONS(298), - [anon_sym_is] = ACTIONS(265), - [sym_ellipsis] = ACTIONS(75), - [sym_integer] = ACTIONS(77), - [sym_float] = ACTIONS(75), - [anon_sym_await] = ACTIONS(576), - [sym_true] = ACTIONS(77), - [sym_false] = ACTIONS(77), - [sym_none] = ACTIONS(77), + [sym_primary_expression] = STATE(800), + [sym_binary_operator] = STATE(878), + [sym_unary_operator] = STATE(878), + [sym_attribute] = STATE(878), + [sym_subscript] = STATE(878), + [sym_call] = STATE(878), + [sym_list] = STATE(878), + [sym_set] = STATE(878), + [sym_tuple] = STATE(878), + [sym_dictionary] = STATE(878), + [sym_list_comprehension] = STATE(878), + [sym_dictionary_comprehension] = STATE(878), + [sym_set_comprehension] = STATE(878), + [sym_generator_expression] = STATE(878), + [sym_parenthesized_expression] = STATE(878), + [sym_concatenated_string] = STATE(878), + [sym_string] = STATE(766), + [sym_concatenated_template_string] = STATE(878), + [sym_template_string] = STATE(776), + [sym_await] = STATE(878), + [sym_identifier] = ACTIONS(612), + [anon_sym_lazy] = ACTIONS(614), + [anon_sym_DOT] = ACTIONS(272), + [anon_sym_LPAREN] = ACTIONS(616), + [anon_sym_COMMA] = ACTIONS(303), + [anon_sym_STAR] = ACTIONS(272), + [anon_sym_print] = ACTIONS(614), + [anon_sym_GT_GT] = ACTIONS(303), + [anon_sym_COLON_EQ] = ACTIONS(618), + [anon_sym_if] = ACTIONS(272), + [anon_sym_async] = ACTIONS(614), + [anon_sym_in] = ACTIONS(272), + [anon_sym_match] = ACTIONS(614), + [anon_sym_PIPE] = ACTIONS(303), + [anon_sym_DASH] = ACTIONS(620), + [anon_sym_PLUS] = ACTIONS(620), + [anon_sym_LBRACK] = ACTIONS(622), + [anon_sym_LBRACE] = ACTIONS(624), + [anon_sym_RBRACE] = ACTIONS(303), + [anon_sym_STAR_STAR] = ACTIONS(303), + [anon_sym_EQ] = ACTIONS(272), + [anon_sym_exec] = ACTIONS(614), + [anon_sym_type] = ACTIONS(614), + [anon_sym_AT] = ACTIONS(303), + [anon_sym_not] = ACTIONS(272), + [anon_sym_and] = ACTIONS(272), + [anon_sym_or] = ACTIONS(272), + [anon_sym_SLASH] = ACTIONS(272), + [anon_sym_PERCENT] = ACTIONS(303), + [anon_sym_SLASH_SLASH] = ACTIONS(303), + [anon_sym_AMP] = ACTIONS(303), + [anon_sym_CARET] = ACTIONS(303), + [anon_sym_LT_LT] = ACTIONS(303), + [anon_sym_TILDE] = ACTIONS(620), + [anon_sym_LT] = ACTIONS(272), + [anon_sym_LT_EQ] = ACTIONS(303), + [anon_sym_EQ_EQ] = ACTIONS(303), + [anon_sym_BANG_EQ] = ACTIONS(303), + [anon_sym_GT_EQ] = ACTIONS(303), + [anon_sym_GT] = ACTIONS(272), + [anon_sym_LT_GT] = ACTIONS(303), + [anon_sym_is] = ACTIONS(272), + [sym_ellipsis] = ACTIONS(626), + [anon_sym_COLON2] = ACTIONS(303), + [sym_type_conversion] = ACTIONS(303), + [sym_integer] = ACTIONS(612), + [sym_float] = ACTIONS(626), + [anon_sym_await] = ACTIONS(628), + [sym_true] = ACTIONS(612), + [sym_false] = ACTIONS(612), + [sym_none] = ACTIONS(612), [sym_comment] = ACTIONS(3), - [anon_sym_SEMI] = ACTIONS(298), - [sym__newline] = ACTIONS(298), - [sym__string_start] = ACTIONS(81), - [sym__template_string_start] = ACTIONS(83), + [sym__string_start] = ACTIONS(630), + [sym__template_string_start] = ACTIONS(632), }, [STATE(141)] = { - [sym_primary_expression] = STATE(785), - [sym_binary_operator] = STATE(924), - [sym_unary_operator] = STATE(924), - [sym_attribute] = STATE(924), - [sym_subscript] = STATE(924), - [sym_call] = STATE(924), - [sym_list] = STATE(924), - [sym_set] = STATE(924), - [sym_tuple] = STATE(924), - [sym_dictionary] = STATE(924), - [sym_list_comprehension] = STATE(924), - [sym_dictionary_comprehension] = STATE(924), - [sym_set_comprehension] = STATE(924), - [sym_generator_expression] = STATE(924), - [sym_parenthesized_expression] = STATE(924), - [sym_concatenated_string] = STATE(924), - [sym_string] = STATE(767), - [sym_concatenated_template_string] = STATE(924), - [sym_template_string] = STATE(768), - [sym_await] = STATE(924), - [sym_identifier] = ACTIONS(607), - [anon_sym_DOT] = ACTIONS(265), - [anon_sym_LPAREN] = ACTIONS(609), - [anon_sym_COMMA] = ACTIONS(298), - [anon_sym_STAR] = ACTIONS(265), - [anon_sym_print] = ACTIONS(611), - [anon_sym_GT_GT] = ACTIONS(298), - [anon_sym_COLON_EQ] = ACTIONS(613), - [anon_sym_if] = ACTIONS(265), - [anon_sym_async] = ACTIONS(611), - [anon_sym_in] = ACTIONS(265), - [anon_sym_match] = ACTIONS(611), - [anon_sym_PIPE] = ACTIONS(298), - [anon_sym_DASH] = ACTIONS(615), - [anon_sym_PLUS] = ACTIONS(615), - [anon_sym_LBRACK] = ACTIONS(617), - [anon_sym_LBRACE] = ACTIONS(619), - [anon_sym_RBRACE] = ACTIONS(298), - [anon_sym_STAR_STAR] = ACTIONS(298), - [anon_sym_EQ] = ACTIONS(265), - [anon_sym_exec] = ACTIONS(611), - [anon_sym_type] = ACTIONS(611), - [anon_sym_AT] = ACTIONS(298), - [anon_sym_not] = ACTIONS(265), - [anon_sym_and] = ACTIONS(265), - [anon_sym_or] = ACTIONS(265), - [anon_sym_SLASH] = ACTIONS(265), - [anon_sym_PERCENT] = ACTIONS(298), - [anon_sym_SLASH_SLASH] = ACTIONS(298), - [anon_sym_AMP] = ACTIONS(298), - [anon_sym_CARET] = ACTIONS(298), - [anon_sym_LT_LT] = ACTIONS(298), - [anon_sym_TILDE] = ACTIONS(615), - [anon_sym_LT] = ACTIONS(265), - [anon_sym_LT_EQ] = ACTIONS(298), - [anon_sym_EQ_EQ] = ACTIONS(298), - [anon_sym_BANG_EQ] = ACTIONS(298), - [anon_sym_GT_EQ] = ACTIONS(298), - [anon_sym_GT] = ACTIONS(265), - [anon_sym_LT_GT] = ACTIONS(298), - [anon_sym_is] = ACTIONS(265), - [sym_ellipsis] = ACTIONS(621), - [anon_sym_COLON2] = ACTIONS(298), - [sym_type_conversion] = ACTIONS(298), - [sym_integer] = ACTIONS(607), - [sym_float] = ACTIONS(621), - [anon_sym_await] = ACTIONS(623), - [sym_true] = ACTIONS(607), - [sym_false] = ACTIONS(607), - [sym_none] = ACTIONS(607), + [sym_primary_expression] = STATE(741), + [sym_binary_operator] = STATE(725), + [sym_unary_operator] = STATE(725), + [sym_attribute] = STATE(725), + [sym_subscript] = STATE(725), + [sym_call] = STATE(725), + [sym_list] = STATE(725), + [sym_set] = STATE(725), + [sym_tuple] = STATE(725), + [sym_dictionary] = STATE(725), + [sym_list_comprehension] = STATE(725), + [sym_dictionary_comprehension] = STATE(725), + [sym_set_comprehension] = STATE(725), + [sym_generator_expression] = STATE(725), + [sym_parenthesized_expression] = STATE(725), + [sym_concatenated_string] = STATE(725), + [sym_string] = STATE(645), + [sym_concatenated_template_string] = STATE(725), + [sym_template_string] = STATE(658), + [sym_await] = STATE(725), + [sym_identifier] = ACTIONS(311), + [anon_sym_lazy] = ACTIONS(573), + [anon_sym_DOT] = ACTIONS(272), + [anon_sym_LPAREN] = ACTIONS(575), + [anon_sym_RPAREN] = ACTIONS(307), + [anon_sym_COMMA] = ACTIONS(307), + [anon_sym_STAR] = ACTIONS(272), + [anon_sym_print] = ACTIONS(573), + [anon_sym_GT_GT] = ACTIONS(272), + [anon_sym_COLON] = ACTIONS(307), + [anon_sym_async] = ACTIONS(573), + [anon_sym_in] = ACTIONS(285), + [anon_sym_match] = ACTIONS(573), + [anon_sym_PIPE] = ACTIONS(272), + [anon_sym_DASH] = ACTIONS(584), + [anon_sym_PLUS] = ACTIONS(584), + [anon_sym_LBRACK] = ACTIONS(586), + [anon_sym_RBRACK] = ACTIONS(307), + [anon_sym_LBRACE] = ACTIONS(293), + [anon_sym_STAR_STAR] = ACTIONS(272), + [anon_sym_EQ] = ACTIONS(307), + [anon_sym_exec] = ACTIONS(573), + [anon_sym_type] = ACTIONS(573), + [anon_sym_AT] = ACTIONS(272), + [anon_sym_SLASH] = ACTIONS(272), + [anon_sym_PERCENT] = ACTIONS(272), + [anon_sym_SLASH_SLASH] = ACTIONS(272), + [anon_sym_AMP] = ACTIONS(272), + [anon_sym_CARET] = ACTIONS(272), + [anon_sym_LT_LT] = ACTIONS(272), + [anon_sym_TILDE] = ACTIONS(301), + [anon_sym_PLUS_EQ] = ACTIONS(307), + [anon_sym_DASH_EQ] = ACTIONS(307), + [anon_sym_STAR_EQ] = ACTIONS(307), + [anon_sym_SLASH_EQ] = ACTIONS(307), + [anon_sym_AT_EQ] = ACTIONS(307), + [anon_sym_SLASH_SLASH_EQ] = ACTIONS(307), + [anon_sym_PERCENT_EQ] = ACTIONS(307), + [anon_sym_STAR_STAR_EQ] = ACTIONS(307), + [anon_sym_GT_GT_EQ] = ACTIONS(307), + [anon_sym_LT_LT_EQ] = ACTIONS(307), + [anon_sym_AMP_EQ] = ACTIONS(307), + [anon_sym_CARET_EQ] = ACTIONS(307), + [anon_sym_PIPE_EQ] = ACTIONS(307), + [sym_ellipsis] = ACTIONS(309), + [sym_integer] = ACTIONS(311), + [sym_float] = ACTIONS(309), + [anon_sym_await] = ACTIONS(590), + [sym_true] = ACTIONS(311), + [sym_false] = ACTIONS(311), + [sym_none] = ACTIONS(311), [sym_comment] = ACTIONS(3), - [sym__string_start] = ACTIONS(625), - [sym__template_string_start] = ACTIONS(627), + [sym__string_start] = ACTIONS(315), + [sym__template_string_start] = ACTIONS(317), }, [STATE(142)] = { - [sym_primary_expression] = STATE(735), - [sym_binary_operator] = STATE(724), - [sym_unary_operator] = STATE(724), - [sym_attribute] = STATE(724), - [sym_subscript] = STATE(724), - [sym_call] = STATE(724), - [sym_list] = STATE(724), - [sym_set] = STATE(724), - [sym_tuple] = STATE(724), - [sym_dictionary] = STATE(724), - [sym_list_comprehension] = STATE(724), - [sym_dictionary_comprehension] = STATE(724), - [sym_set_comprehension] = STATE(724), - [sym_generator_expression] = STATE(724), - [sym_parenthesized_expression] = STATE(724), - [sym_concatenated_string] = STATE(724), - [sym_string] = STATE(621), - [sym_concatenated_template_string] = STATE(724), - [sym_template_string] = STATE(624), - [sym_await] = STATE(724), - [sym_identifier] = ACTIONS(306), - [anon_sym_DOT] = ACTIONS(265), - [anon_sym_LPAREN] = ACTIONS(578), - [anon_sym_RPAREN] = ACTIONS(302), - [anon_sym_COMMA] = ACTIONS(302), - [anon_sym_STAR] = ACTIONS(265), - [anon_sym_print] = ACTIONS(583), - [anon_sym_GT_GT] = ACTIONS(265), - [anon_sym_COLON] = ACTIONS(302), - [anon_sym_async] = ACTIONS(583), - [anon_sym_in] = ACTIONS(280), - [anon_sym_match] = ACTIONS(583), - [anon_sym_PIPE] = ACTIONS(265), - [anon_sym_DASH] = ACTIONS(589), - [anon_sym_PLUS] = ACTIONS(589), - [anon_sym_LBRACK] = ACTIONS(591), - [anon_sym_RBRACK] = ACTIONS(302), - [anon_sym_LBRACE] = ACTIONS(288), - [anon_sym_STAR_STAR] = ACTIONS(265), - [anon_sym_EQ] = ACTIONS(302), - [anon_sym_exec] = ACTIONS(583), - [anon_sym_type] = ACTIONS(583), - [anon_sym_AT] = ACTIONS(265), - [anon_sym_SLASH] = ACTIONS(265), - [anon_sym_PERCENT] = ACTIONS(265), - [anon_sym_SLASH_SLASH] = ACTIONS(265), - [anon_sym_AMP] = ACTIONS(265), - [anon_sym_CARET] = ACTIONS(265), - [anon_sym_LT_LT] = ACTIONS(265), - [anon_sym_TILDE] = ACTIONS(296), - [anon_sym_PLUS_EQ] = ACTIONS(302), - [anon_sym_DASH_EQ] = ACTIONS(302), - [anon_sym_STAR_EQ] = ACTIONS(302), - [anon_sym_SLASH_EQ] = ACTIONS(302), - [anon_sym_AT_EQ] = ACTIONS(302), - [anon_sym_SLASH_SLASH_EQ] = ACTIONS(302), - [anon_sym_PERCENT_EQ] = ACTIONS(302), - [anon_sym_STAR_STAR_EQ] = ACTIONS(302), - [anon_sym_GT_GT_EQ] = ACTIONS(302), - [anon_sym_LT_LT_EQ] = ACTIONS(302), - [anon_sym_AMP_EQ] = ACTIONS(302), - [anon_sym_CARET_EQ] = ACTIONS(302), - [anon_sym_PIPE_EQ] = ACTIONS(302), - [sym_ellipsis] = ACTIONS(304), - [sym_integer] = ACTIONS(306), - [sym_float] = ACTIONS(304), - [anon_sym_await] = ACTIONS(595), - [sym_true] = ACTIONS(306), - [sym_false] = ACTIONS(306), - [sym_none] = ACTIONS(306), + [sym_primary_expression] = STATE(741), + [sym_binary_operator] = STATE(725), + [sym_unary_operator] = STATE(725), + [sym_attribute] = STATE(725), + [sym_subscript] = STATE(725), + [sym_call] = STATE(725), + [sym_list] = STATE(725), + [sym_set] = STATE(725), + [sym_tuple] = STATE(725), + [sym_dictionary] = STATE(725), + [sym_list_comprehension] = STATE(725), + [sym_dictionary_comprehension] = STATE(725), + [sym_set_comprehension] = STATE(725), + [sym_generator_expression] = STATE(725), + [sym_parenthesized_expression] = STATE(725), + [sym_concatenated_string] = STATE(725), + [sym_string] = STATE(645), + [sym_concatenated_template_string] = STATE(725), + [sym_template_string] = STATE(658), + [sym_await] = STATE(725), + [sym_identifier] = ACTIONS(311), + [anon_sym_lazy] = ACTIONS(573), + [anon_sym_DOT] = ACTIONS(272), + [anon_sym_LPAREN] = ACTIONS(575), + [anon_sym_RPAREN] = ACTIONS(588), + [anon_sym_COMMA] = ACTIONS(588), + [anon_sym_STAR] = ACTIONS(272), + [anon_sym_print] = ACTIONS(573), + [anon_sym_GT_GT] = ACTIONS(272), + [anon_sym_COLON] = ACTIONS(588), + [anon_sym_async] = ACTIONS(573), + [anon_sym_in] = ACTIONS(582), + [anon_sym_match] = ACTIONS(573), + [anon_sym_PIPE] = ACTIONS(272), + [anon_sym_DASH] = ACTIONS(584), + [anon_sym_PLUS] = ACTIONS(584), + [anon_sym_LBRACK] = ACTIONS(586), + [anon_sym_RBRACK] = ACTIONS(588), + [anon_sym_LBRACE] = ACTIONS(293), + [anon_sym_STAR_STAR] = ACTIONS(272), + [anon_sym_EQ] = ACTIONS(588), + [anon_sym_exec] = ACTIONS(573), + [anon_sym_type] = ACTIONS(573), + [anon_sym_AT] = ACTIONS(272), + [anon_sym_SLASH] = ACTIONS(272), + [anon_sym_PERCENT] = ACTIONS(272), + [anon_sym_SLASH_SLASH] = ACTIONS(272), + [anon_sym_AMP] = ACTIONS(272), + [anon_sym_CARET] = ACTIONS(272), + [anon_sym_LT_LT] = ACTIONS(272), + [anon_sym_TILDE] = ACTIONS(301), + [anon_sym_PLUS_EQ] = ACTIONS(588), + [anon_sym_DASH_EQ] = ACTIONS(588), + [anon_sym_STAR_EQ] = ACTIONS(588), + [anon_sym_SLASH_EQ] = ACTIONS(588), + [anon_sym_AT_EQ] = ACTIONS(588), + [anon_sym_SLASH_SLASH_EQ] = ACTIONS(588), + [anon_sym_PERCENT_EQ] = ACTIONS(588), + [anon_sym_STAR_STAR_EQ] = ACTIONS(588), + [anon_sym_GT_GT_EQ] = ACTIONS(588), + [anon_sym_LT_LT_EQ] = ACTIONS(588), + [anon_sym_AMP_EQ] = ACTIONS(588), + [anon_sym_CARET_EQ] = ACTIONS(588), + [anon_sym_PIPE_EQ] = ACTIONS(588), + [sym_ellipsis] = ACTIONS(309), + [sym_integer] = ACTIONS(311), + [sym_float] = ACTIONS(309), + [anon_sym_await] = ACTIONS(590), + [sym_true] = ACTIONS(311), + [sym_false] = ACTIONS(311), + [sym_none] = ACTIONS(311), [sym_comment] = ACTIONS(3), - [sym__string_start] = ACTIONS(310), - [sym__template_string_start] = ACTIONS(312), + [sym__string_start] = ACTIONS(315), + [sym__template_string_start] = ACTIONS(317), }, [STATE(143)] = { - [sym_primary_expression] = STATE(760), - [sym_binary_operator] = STATE(724), - [sym_unary_operator] = STATE(724), - [sym_attribute] = STATE(724), - [sym_subscript] = STATE(724), - [sym_call] = STATE(724), - [sym_list] = STATE(724), - [sym_set] = STATE(724), - [sym_tuple] = STATE(724), - [sym_dictionary] = STATE(724), - [sym_list_comprehension] = STATE(724), - [sym_dictionary_comprehension] = STATE(724), - [sym_set_comprehension] = STATE(724), - [sym_generator_expression] = STATE(724), - [sym_parenthesized_expression] = STATE(724), - [sym_concatenated_string] = STATE(724), - [sym_string] = STATE(621), - [sym_concatenated_template_string] = STATE(724), - [sym_template_string] = STATE(624), - [sym_await] = STATE(724), - [sym_identifier] = ACTIONS(306), - [anon_sym_DOT] = ACTIONS(265), - [anon_sym_LPAREN] = ACTIONS(597), - [anon_sym_RPAREN] = ACTIONS(298), - [anon_sym_COMMA] = ACTIONS(298), - [anon_sym_as] = ACTIONS(265), - [anon_sym_STAR] = ACTIONS(265), - [anon_sym_print] = ACTIONS(583), - [anon_sym_GT_GT] = ACTIONS(298), - [anon_sym_if] = ACTIONS(265), - [anon_sym_async] = ACTIONS(583), - [anon_sym_for] = ACTIONS(265), - [anon_sym_in] = ACTIONS(265), - [anon_sym_match] = ACTIONS(583), - [anon_sym_PIPE] = ACTIONS(298), - [anon_sym_DASH] = ACTIONS(601), - [anon_sym_PLUS] = ACTIONS(601), - [anon_sym_LBRACK] = ACTIONS(603), - [anon_sym_RBRACK] = ACTIONS(298), - [anon_sym_LBRACE] = ACTIONS(288), - [anon_sym_RBRACE] = ACTIONS(298), - [anon_sym_STAR_STAR] = ACTIONS(298), - [anon_sym_exec] = ACTIONS(583), - [anon_sym_type] = ACTIONS(583), - [anon_sym_AT] = ACTIONS(298), - [anon_sym_not] = ACTIONS(265), - [anon_sym_and] = ACTIONS(265), - [anon_sym_or] = ACTIONS(265), - [anon_sym_SLASH] = ACTIONS(265), - [anon_sym_PERCENT] = ACTIONS(298), - [anon_sym_SLASH_SLASH] = ACTIONS(298), - [anon_sym_AMP] = ACTIONS(298), - [anon_sym_CARET] = ACTIONS(298), - [anon_sym_LT_LT] = ACTIONS(298), - [anon_sym_TILDE] = ACTIONS(601), - [anon_sym_LT] = ACTIONS(265), - [anon_sym_LT_EQ] = ACTIONS(298), - [anon_sym_EQ_EQ] = ACTIONS(298), - [anon_sym_BANG_EQ] = ACTIONS(298), - [anon_sym_GT_EQ] = ACTIONS(298), - [anon_sym_GT] = ACTIONS(265), - [anon_sym_LT_GT] = ACTIONS(298), - [anon_sym_is] = ACTIONS(265), - [sym_ellipsis] = ACTIONS(304), - [sym_integer] = ACTIONS(306), - [sym_float] = ACTIONS(304), - [anon_sym_await] = ACTIONS(605), - [sym_true] = ACTIONS(306), - [sym_false] = ACTIONS(306), - [sym_none] = ACTIONS(306), + [sym_primary_expression] = STATE(740), + [sym_binary_operator] = STATE(725), + [sym_unary_operator] = STATE(725), + [sym_attribute] = STATE(725), + [sym_subscript] = STATE(725), + [sym_call] = STATE(725), + [sym_list] = STATE(725), + [sym_set] = STATE(725), + [sym_tuple] = STATE(725), + [sym_dictionary] = STATE(725), + [sym_list_comprehension] = STATE(725), + [sym_dictionary_comprehension] = STATE(725), + [sym_set_comprehension] = STATE(725), + [sym_generator_expression] = STATE(725), + [sym_parenthesized_expression] = STATE(725), + [sym_concatenated_string] = STATE(725), + [sym_string] = STATE(645), + [sym_concatenated_template_string] = STATE(725), + [sym_template_string] = STATE(658), + [sym_await] = STATE(725), + [sym_identifier] = ACTIONS(311), + [anon_sym_lazy] = ACTIONS(573), + [anon_sym_DOT] = ACTIONS(272), + [anon_sym_LPAREN] = ACTIONS(602), + [anon_sym_RPAREN] = ACTIONS(303), + [anon_sym_COMMA] = ACTIONS(303), + [anon_sym_as] = ACTIONS(272), + [anon_sym_STAR] = ACTIONS(272), + [anon_sym_print] = ACTIONS(573), + [anon_sym_GT_GT] = ACTIONS(303), + [anon_sym_if] = ACTIONS(272), + [anon_sym_async] = ACTIONS(573), + [anon_sym_for] = ACTIONS(272), + [anon_sym_in] = ACTIONS(272), + [anon_sym_match] = ACTIONS(573), + [anon_sym_PIPE] = ACTIONS(303), + [anon_sym_DASH] = ACTIONS(606), + [anon_sym_PLUS] = ACTIONS(606), + [anon_sym_LBRACK] = ACTIONS(608), + [anon_sym_RBRACK] = ACTIONS(303), + [anon_sym_LBRACE] = ACTIONS(293), + [anon_sym_RBRACE] = ACTIONS(303), + [anon_sym_STAR_STAR] = ACTIONS(303), + [anon_sym_exec] = ACTIONS(573), + [anon_sym_type] = ACTIONS(573), + [anon_sym_AT] = ACTIONS(303), + [anon_sym_not] = ACTIONS(272), + [anon_sym_and] = ACTIONS(272), + [anon_sym_or] = ACTIONS(272), + [anon_sym_SLASH] = ACTIONS(272), + [anon_sym_PERCENT] = ACTIONS(303), + [anon_sym_SLASH_SLASH] = ACTIONS(303), + [anon_sym_AMP] = ACTIONS(303), + [anon_sym_CARET] = ACTIONS(303), + [anon_sym_LT_LT] = ACTIONS(303), + [anon_sym_TILDE] = ACTIONS(606), + [anon_sym_LT] = ACTIONS(272), + [anon_sym_LT_EQ] = ACTIONS(303), + [anon_sym_EQ_EQ] = ACTIONS(303), + [anon_sym_BANG_EQ] = ACTIONS(303), + [anon_sym_GT_EQ] = ACTIONS(303), + [anon_sym_GT] = ACTIONS(272), + [anon_sym_LT_GT] = ACTIONS(303), + [anon_sym_is] = ACTIONS(272), + [sym_ellipsis] = ACTIONS(309), + [sym_integer] = ACTIONS(311), + [sym_float] = ACTIONS(309), + [anon_sym_await] = ACTIONS(610), + [sym_true] = ACTIONS(311), + [sym_false] = ACTIONS(311), + [sym_none] = ACTIONS(311), [sym_comment] = ACTIONS(3), - [sym__string_start] = ACTIONS(310), - [sym__template_string_start] = ACTIONS(312), + [sym__string_start] = ACTIONS(315), + [sym__template_string_start] = ACTIONS(317), }, [STATE(144)] = { - [sym_primary_expression] = STATE(848), - [sym_binary_operator] = STATE(953), - [sym_unary_operator] = STATE(953), - [sym_attribute] = STATE(953), - [sym_subscript] = STATE(953), - [sym_call] = STATE(953), - [sym_list] = STATE(953), - [sym_set] = STATE(953), - [sym_tuple] = STATE(953), - [sym_dictionary] = STATE(953), - [sym_list_comprehension] = STATE(953), - [sym_dictionary_comprehension] = STATE(953), - [sym_set_comprehension] = STATE(953), - [sym_generator_expression] = STATE(953), - [sym_parenthesized_expression] = STATE(953), - [sym_concatenated_string] = STATE(953), - [sym_string] = STATE(794), - [sym_concatenated_template_string] = STATE(953), - [sym_template_string] = STATE(795), - [sym_await] = STATE(953), - [sym_identifier] = ACTIONS(629), - [anon_sym_DOT] = ACTIONS(265), - [anon_sym_LPAREN] = ACTIONS(631), - [anon_sym_RPAREN] = ACTIONS(298), - [anon_sym_COMMA] = ACTIONS(298), - [anon_sym_as] = ACTIONS(265), - [anon_sym_STAR] = ACTIONS(265), - [anon_sym_print] = ACTIONS(633), - [anon_sym_GT_GT] = ACTIONS(298), - [anon_sym_COLON_EQ] = ACTIONS(635), - [anon_sym_if] = ACTIONS(265), - [anon_sym_COLON] = ACTIONS(265), - [anon_sym_async] = ACTIONS(633), - [anon_sym_in] = ACTIONS(265), - [anon_sym_match] = ACTIONS(633), - [anon_sym_PIPE] = ACTIONS(298), - [anon_sym_DASH] = ACTIONS(637), - [anon_sym_PLUS] = ACTIONS(637), - [anon_sym_LBRACK] = ACTIONS(639), - [anon_sym_LBRACE] = ACTIONS(641), - [anon_sym_STAR_STAR] = ACTIONS(298), - [anon_sym_exec] = ACTIONS(633), - [anon_sym_type] = ACTIONS(633), - [anon_sym_AT] = ACTIONS(298), - [anon_sym_not] = ACTIONS(265), - [anon_sym_and] = ACTIONS(265), - [anon_sym_or] = ACTIONS(265), - [anon_sym_SLASH] = ACTIONS(265), - [anon_sym_PERCENT] = ACTIONS(298), - [anon_sym_SLASH_SLASH] = ACTIONS(298), - [anon_sym_AMP] = ACTIONS(298), - [anon_sym_CARET] = ACTIONS(298), - [anon_sym_LT_LT] = ACTIONS(298), - [anon_sym_TILDE] = ACTIONS(637), - [anon_sym_LT] = ACTIONS(265), - [anon_sym_LT_EQ] = ACTIONS(298), - [anon_sym_EQ_EQ] = ACTIONS(298), - [anon_sym_BANG_EQ] = ACTIONS(298), - [anon_sym_GT_EQ] = ACTIONS(298), - [anon_sym_GT] = ACTIONS(265), - [anon_sym_LT_GT] = ACTIONS(298), - [anon_sym_is] = ACTIONS(265), - [sym_ellipsis] = ACTIONS(643), - [sym_integer] = ACTIONS(629), - [sym_float] = ACTIONS(643), - [anon_sym_await] = ACTIONS(645), - [sym_true] = ACTIONS(629), - [sym_false] = ACTIONS(629), - [sym_none] = ACTIONS(629), + [sym_primary_expression] = STATE(740), + [sym_binary_operator] = STATE(725), + [sym_unary_operator] = STATE(725), + [sym_attribute] = STATE(725), + [sym_subscript] = STATE(725), + [sym_call] = STATE(725), + [sym_list] = STATE(725), + [sym_set] = STATE(725), + [sym_tuple] = STATE(725), + [sym_dictionary] = STATE(725), + [sym_list_comprehension] = STATE(725), + [sym_dictionary_comprehension] = STATE(725), + [sym_set_comprehension] = STATE(725), + [sym_generator_expression] = STATE(725), + [sym_parenthesized_expression] = STATE(725), + [sym_concatenated_string] = STATE(725), + [sym_string] = STATE(645), + [sym_concatenated_template_string] = STATE(725), + [sym_template_string] = STATE(658), + [sym_await] = STATE(725), + [sym_identifier] = ACTIONS(311), + [anon_sym_lazy] = ACTIONS(573), + [anon_sym_DOT] = ACTIONS(272), + [anon_sym_LPAREN] = ACTIONS(602), + [anon_sym_RPAREN] = ACTIONS(277), + [anon_sym_COMMA] = ACTIONS(277), + [anon_sym_STAR] = ACTIONS(272), + [anon_sym_print] = ACTIONS(573), + [anon_sym_GT_GT] = ACTIONS(303), + [anon_sym_COLON_EQ] = ACTIONS(604), + [anon_sym_if] = ACTIONS(272), + [anon_sym_async] = ACTIONS(573), + [anon_sym_for] = ACTIONS(272), + [anon_sym_in] = ACTIONS(272), + [anon_sym_match] = ACTIONS(573), + [anon_sym_PIPE] = ACTIONS(303), + [anon_sym_DASH] = ACTIONS(606), + [anon_sym_PLUS] = ACTIONS(606), + [anon_sym_LBRACK] = ACTIONS(608), + [anon_sym_RBRACK] = ACTIONS(277), + [anon_sym_LBRACE] = ACTIONS(293), + [anon_sym_STAR_STAR] = ACTIONS(303), + [anon_sym_exec] = ACTIONS(573), + [anon_sym_type] = ACTIONS(573), + [anon_sym_AT] = ACTIONS(303), + [anon_sym_not] = ACTIONS(272), + [anon_sym_and] = ACTIONS(272), + [anon_sym_or] = ACTIONS(272), + [anon_sym_SLASH] = ACTIONS(272), + [anon_sym_PERCENT] = ACTIONS(303), + [anon_sym_SLASH_SLASH] = ACTIONS(303), + [anon_sym_AMP] = ACTIONS(303), + [anon_sym_CARET] = ACTIONS(303), + [anon_sym_LT_LT] = ACTIONS(303), + [anon_sym_TILDE] = ACTIONS(606), + [anon_sym_LT] = ACTIONS(272), + [anon_sym_LT_EQ] = ACTIONS(303), + [anon_sym_EQ_EQ] = ACTIONS(303), + [anon_sym_BANG_EQ] = ACTIONS(303), + [anon_sym_GT_EQ] = ACTIONS(303), + [anon_sym_GT] = ACTIONS(272), + [anon_sym_LT_GT] = ACTIONS(303), + [anon_sym_is] = ACTIONS(272), + [sym_ellipsis] = ACTIONS(309), + [sym_integer] = ACTIONS(311), + [sym_float] = ACTIONS(309), + [anon_sym_await] = ACTIONS(610), + [sym_true] = ACTIONS(311), + [sym_false] = ACTIONS(311), + [sym_none] = ACTIONS(311), [sym_comment] = ACTIONS(3), - [sym__string_start] = ACTIONS(647), - [sym__template_string_start] = ACTIONS(649), + [sym__string_start] = ACTIONS(315), + [sym__template_string_start] = ACTIONS(317), }, [STATE(145)] = { - [sym_primary_expression] = STATE(785), - [sym_binary_operator] = STATE(924), - [sym_unary_operator] = STATE(924), - [sym_attribute] = STATE(924), - [sym_subscript] = STATE(924), - [sym_call] = STATE(924), - [sym_list] = STATE(924), - [sym_set] = STATE(924), - [sym_tuple] = STATE(924), - [sym_dictionary] = STATE(924), - [sym_list_comprehension] = STATE(924), - [sym_dictionary_comprehension] = STATE(924), - [sym_set_comprehension] = STATE(924), - [sym_generator_expression] = STATE(924), - [sym_parenthesized_expression] = STATE(924), - [sym_concatenated_string] = STATE(924), - [sym_string] = STATE(767), - [sym_concatenated_template_string] = STATE(924), - [sym_template_string] = STATE(768), - [sym_await] = STATE(924), - [sym_identifier] = ACTIONS(607), - [anon_sym_DOT] = ACTIONS(265), - [anon_sym_LPAREN] = ACTIONS(609), - [anon_sym_COMMA] = ACTIONS(298), - [anon_sym_STAR] = ACTIONS(265), - [anon_sym_print] = ACTIONS(611), - [anon_sym_GT_GT] = ACTIONS(298), - [anon_sym_if] = ACTIONS(265), - [anon_sym_async] = ACTIONS(611), - [anon_sym_in] = ACTIONS(265), - [anon_sym_match] = ACTIONS(611), - [anon_sym_PIPE] = ACTIONS(298), - [anon_sym_DASH] = ACTIONS(615), - [anon_sym_PLUS] = ACTIONS(615), - [anon_sym_LBRACK] = ACTIONS(617), - [anon_sym_LBRACE] = ACTIONS(619), - [anon_sym_RBRACE] = ACTIONS(298), - [anon_sym_STAR_STAR] = ACTIONS(298), - [anon_sym_EQ] = ACTIONS(265), - [anon_sym_exec] = ACTIONS(611), - [anon_sym_type] = ACTIONS(611), - [anon_sym_AT] = ACTIONS(298), - [anon_sym_not] = ACTIONS(265), - [anon_sym_and] = ACTIONS(265), - [anon_sym_or] = ACTIONS(265), - [anon_sym_SLASH] = ACTIONS(265), - [anon_sym_PERCENT] = ACTIONS(298), - [anon_sym_SLASH_SLASH] = ACTIONS(298), - [anon_sym_AMP] = ACTIONS(298), - [anon_sym_CARET] = ACTIONS(298), - [anon_sym_LT_LT] = ACTIONS(298), - [anon_sym_TILDE] = ACTIONS(615), - [anon_sym_LT] = ACTIONS(265), - [anon_sym_LT_EQ] = ACTIONS(298), - [anon_sym_EQ_EQ] = ACTIONS(298), - [anon_sym_BANG_EQ] = ACTIONS(298), - [anon_sym_GT_EQ] = ACTIONS(298), - [anon_sym_GT] = ACTIONS(265), - [anon_sym_LT_GT] = ACTIONS(298), - [anon_sym_is] = ACTIONS(265), - [sym_ellipsis] = ACTIONS(621), - [anon_sym_COLON2] = ACTIONS(298), - [sym_type_conversion] = ACTIONS(298), - [sym_integer] = ACTIONS(607), - [sym_float] = ACTIONS(621), - [anon_sym_await] = ACTIONS(623), - [sym_true] = ACTIONS(607), - [sym_false] = ACTIONS(607), - [sym_none] = ACTIONS(607), + [sym_primary_expression] = STATE(740), + [sym_binary_operator] = STATE(725), + [sym_unary_operator] = STATE(725), + [sym_attribute] = STATE(725), + [sym_subscript] = STATE(725), + [sym_call] = STATE(725), + [sym_list] = STATE(725), + [sym_set] = STATE(725), + [sym_tuple] = STATE(725), + [sym_dictionary] = STATE(725), + [sym_list_comprehension] = STATE(725), + [sym_dictionary_comprehension] = STATE(725), + [sym_set_comprehension] = STATE(725), + [sym_generator_expression] = STATE(725), + [sym_parenthesized_expression] = STATE(725), + [sym_concatenated_string] = STATE(725), + [sym_string] = STATE(645), + [sym_concatenated_template_string] = STATE(725), + [sym_template_string] = STATE(658), + [sym_await] = STATE(725), + [sym_identifier] = ACTIONS(311), + [anon_sym_lazy] = ACTIONS(573), + [anon_sym_DOT] = ACTIONS(272), + [anon_sym_LPAREN] = ACTIONS(602), + [anon_sym_RPAREN] = ACTIONS(303), + [anon_sym_COMMA] = ACTIONS(303), + [anon_sym_STAR] = ACTIONS(272), + [anon_sym_print] = ACTIONS(573), + [anon_sym_GT_GT] = ACTIONS(303), + [anon_sym_COLON_EQ] = ACTIONS(604), + [anon_sym_if] = ACTIONS(272), + [anon_sym_async] = ACTIONS(573), + [anon_sym_for] = ACTIONS(272), + [anon_sym_in] = ACTIONS(272), + [anon_sym_match] = ACTIONS(573), + [anon_sym_PIPE] = ACTIONS(303), + [anon_sym_DASH] = ACTIONS(606), + [anon_sym_PLUS] = ACTIONS(606), + [anon_sym_LBRACK] = ACTIONS(608), + [anon_sym_LBRACE] = ACTIONS(293), + [anon_sym_STAR_STAR] = ACTIONS(303), + [anon_sym_EQ] = ACTIONS(634), + [anon_sym_exec] = ACTIONS(573), + [anon_sym_type] = ACTIONS(573), + [anon_sym_AT] = ACTIONS(303), + [anon_sym_not] = ACTIONS(272), + [anon_sym_and] = ACTIONS(272), + [anon_sym_or] = ACTIONS(272), + [anon_sym_SLASH] = ACTIONS(272), + [anon_sym_PERCENT] = ACTIONS(303), + [anon_sym_SLASH_SLASH] = ACTIONS(303), + [anon_sym_AMP] = ACTIONS(303), + [anon_sym_CARET] = ACTIONS(303), + [anon_sym_LT_LT] = ACTIONS(303), + [anon_sym_TILDE] = ACTIONS(606), + [anon_sym_LT] = ACTIONS(272), + [anon_sym_LT_EQ] = ACTIONS(303), + [anon_sym_EQ_EQ] = ACTIONS(303), + [anon_sym_BANG_EQ] = ACTIONS(303), + [anon_sym_GT_EQ] = ACTIONS(303), + [anon_sym_GT] = ACTIONS(272), + [anon_sym_LT_GT] = ACTIONS(303), + [anon_sym_is] = ACTIONS(272), + [sym_ellipsis] = ACTIONS(309), + [sym_integer] = ACTIONS(311), + [sym_float] = ACTIONS(309), + [anon_sym_await] = ACTIONS(610), + [sym_true] = ACTIONS(311), + [sym_false] = ACTIONS(311), + [sym_none] = ACTIONS(311), [sym_comment] = ACTIONS(3), - [sym__string_start] = ACTIONS(625), - [sym__template_string_start] = ACTIONS(627), + [sym__string_start] = ACTIONS(315), + [sym__template_string_start] = ACTIONS(317), }, [STATE(146)] = { - [sym_primary_expression] = STATE(760), - [sym_binary_operator] = STATE(724), - [sym_unary_operator] = STATE(724), - [sym_attribute] = STATE(724), - [sym_subscript] = STATE(724), - [sym_call] = STATE(724), - [sym_list] = STATE(724), - [sym_set] = STATE(724), - [sym_tuple] = STATE(724), - [sym_dictionary] = STATE(724), - [sym_list_comprehension] = STATE(724), - [sym_dictionary_comprehension] = STATE(724), - [sym_set_comprehension] = STATE(724), - [sym_generator_expression] = STATE(724), - [sym_parenthesized_expression] = STATE(724), - [sym_concatenated_string] = STATE(724), - [sym_string] = STATE(621), - [sym_concatenated_template_string] = STATE(724), - [sym_template_string] = STATE(624), - [sym_await] = STATE(724), - [sym_identifier] = ACTIONS(306), - [anon_sym_DOT] = ACTIONS(265), - [anon_sym_LPAREN] = ACTIONS(597), - [anon_sym_RPAREN] = ACTIONS(298), - [anon_sym_COMMA] = ACTIONS(298), - [anon_sym_STAR] = ACTIONS(265), - [anon_sym_print] = ACTIONS(583), - [anon_sym_GT_GT] = ACTIONS(298), - [anon_sym_COLON_EQ] = ACTIONS(599), - [anon_sym_if] = ACTIONS(265), - [anon_sym_async] = ACTIONS(583), - [anon_sym_for] = ACTIONS(265), - [anon_sym_in] = ACTIONS(265), - [anon_sym_match] = ACTIONS(583), - [anon_sym_PIPE] = ACTIONS(298), - [anon_sym_DASH] = ACTIONS(601), - [anon_sym_PLUS] = ACTIONS(601), - [anon_sym_LBRACK] = ACTIONS(603), - [anon_sym_LBRACE] = ACTIONS(288), - [anon_sym_STAR_STAR] = ACTIONS(298), - [anon_sym_EQ] = ACTIONS(651), - [anon_sym_exec] = ACTIONS(583), - [anon_sym_type] = ACTIONS(583), - [anon_sym_AT] = ACTIONS(298), - [anon_sym_not] = ACTIONS(265), - [anon_sym_and] = ACTIONS(265), - [anon_sym_or] = ACTIONS(265), - [anon_sym_SLASH] = ACTIONS(265), - [anon_sym_PERCENT] = ACTIONS(298), - [anon_sym_SLASH_SLASH] = ACTIONS(298), - [anon_sym_AMP] = ACTIONS(298), - [anon_sym_CARET] = ACTIONS(298), - [anon_sym_LT_LT] = ACTIONS(298), - [anon_sym_TILDE] = ACTIONS(601), - [anon_sym_LT] = ACTIONS(265), - [anon_sym_LT_EQ] = ACTIONS(298), - [anon_sym_EQ_EQ] = ACTIONS(298), - [anon_sym_BANG_EQ] = ACTIONS(298), - [anon_sym_GT_EQ] = ACTIONS(298), - [anon_sym_GT] = ACTIONS(265), - [anon_sym_LT_GT] = ACTIONS(298), - [anon_sym_is] = ACTIONS(265), - [sym_ellipsis] = ACTIONS(304), - [sym_integer] = ACTIONS(306), - [sym_float] = ACTIONS(304), - [anon_sym_await] = ACTIONS(605), - [sym_true] = ACTIONS(306), - [sym_false] = ACTIONS(306), - [sym_none] = ACTIONS(306), + [sym_primary_expression] = STATE(835), + [sym_binary_operator] = STATE(970), + [sym_unary_operator] = STATE(970), + [sym_attribute] = STATE(970), + [sym_subscript] = STATE(970), + [sym_call] = STATE(970), + [sym_list] = STATE(970), + [sym_set] = STATE(970), + [sym_tuple] = STATE(970), + [sym_dictionary] = STATE(970), + [sym_list_comprehension] = STATE(970), + [sym_dictionary_comprehension] = STATE(970), + [sym_set_comprehension] = STATE(970), + [sym_generator_expression] = STATE(970), + [sym_parenthesized_expression] = STATE(970), + [sym_concatenated_string] = STATE(970), + [sym_string] = STATE(793), + [sym_concatenated_template_string] = STATE(970), + [sym_template_string] = STATE(794), + [sym_await] = STATE(970), + [sym_identifier] = ACTIONS(636), + [anon_sym_lazy] = ACTIONS(638), + [anon_sym_DOT] = ACTIONS(272), + [anon_sym_LPAREN] = ACTIONS(640), + [anon_sym_RPAREN] = ACTIONS(303), + [anon_sym_COMMA] = ACTIONS(303), + [anon_sym_as] = ACTIONS(272), + [anon_sym_STAR] = ACTIONS(272), + [anon_sym_print] = ACTIONS(638), + [anon_sym_GT_GT] = ACTIONS(303), + [anon_sym_COLON_EQ] = ACTIONS(642), + [anon_sym_if] = ACTIONS(272), + [anon_sym_COLON] = ACTIONS(272), + [anon_sym_async] = ACTIONS(638), + [anon_sym_in] = ACTIONS(272), + [anon_sym_match] = ACTIONS(638), + [anon_sym_PIPE] = ACTIONS(303), + [anon_sym_DASH] = ACTIONS(644), + [anon_sym_PLUS] = ACTIONS(644), + [anon_sym_LBRACK] = ACTIONS(646), + [anon_sym_LBRACE] = ACTIONS(648), + [anon_sym_STAR_STAR] = ACTIONS(303), + [anon_sym_exec] = ACTIONS(638), + [anon_sym_type] = ACTIONS(638), + [anon_sym_AT] = ACTIONS(303), + [anon_sym_not] = ACTIONS(272), + [anon_sym_and] = ACTIONS(272), + [anon_sym_or] = ACTIONS(272), + [anon_sym_SLASH] = ACTIONS(272), + [anon_sym_PERCENT] = ACTIONS(303), + [anon_sym_SLASH_SLASH] = ACTIONS(303), + [anon_sym_AMP] = ACTIONS(303), + [anon_sym_CARET] = ACTIONS(303), + [anon_sym_LT_LT] = ACTIONS(303), + [anon_sym_TILDE] = ACTIONS(644), + [anon_sym_LT] = ACTIONS(272), + [anon_sym_LT_EQ] = ACTIONS(303), + [anon_sym_EQ_EQ] = ACTIONS(303), + [anon_sym_BANG_EQ] = ACTIONS(303), + [anon_sym_GT_EQ] = ACTIONS(303), + [anon_sym_GT] = ACTIONS(272), + [anon_sym_LT_GT] = ACTIONS(303), + [anon_sym_is] = ACTIONS(272), + [sym_ellipsis] = ACTIONS(650), + [sym_integer] = ACTIONS(636), + [sym_float] = ACTIONS(650), + [anon_sym_await] = ACTIONS(652), + [sym_true] = ACTIONS(636), + [sym_false] = ACTIONS(636), + [sym_none] = ACTIONS(636), [sym_comment] = ACTIONS(3), - [sym__string_start] = ACTIONS(310), - [sym__template_string_start] = ACTIONS(312), + [sym__string_start] = ACTIONS(654), + [sym__template_string_start] = ACTIONS(656), }, [STATE(147)] = { - [sym_primary_expression] = STATE(790), - [sym_binary_operator] = STATE(724), - [sym_unary_operator] = STATE(724), - [sym_attribute] = STATE(724), - [sym_subscript] = STATE(724), - [sym_call] = STATE(724), - [sym_list] = STATE(724), - [sym_set] = STATE(724), - [sym_tuple] = STATE(724), - [sym_dictionary] = STATE(724), - [sym_list_comprehension] = STATE(724), - [sym_dictionary_comprehension] = STATE(724), - [sym_set_comprehension] = STATE(724), - [sym_generator_expression] = STATE(724), - [sym_parenthesized_expression] = STATE(724), - [sym_concatenated_string] = STATE(724), - [sym_string] = STATE(621), - [sym_concatenated_template_string] = STATE(724), - [sym_template_string] = STATE(624), - [sym_await] = STATE(724), - [sym_identifier] = ACTIONS(306), - [anon_sym_DOT] = ACTIONS(265), - [anon_sym_LPAREN] = ACTIONS(653), - [anon_sym_COMMA] = ACTIONS(298), - [anon_sym_STAR] = ACTIONS(265), - [anon_sym_print] = ACTIONS(583), - [anon_sym_GT_GT] = ACTIONS(298), - [anon_sym_COLON_EQ] = ACTIONS(655), - [anon_sym_if] = ACTIONS(265), - [anon_sym_COLON] = ACTIONS(265), - [anon_sym_async] = ACTIONS(583), - [anon_sym_for] = ACTIONS(265), - [anon_sym_in] = ACTIONS(265), - [anon_sym_match] = ACTIONS(583), - [anon_sym_PIPE] = ACTIONS(298), - [anon_sym_DASH] = ACTIONS(657), - [anon_sym_PLUS] = ACTIONS(657), - [anon_sym_LBRACK] = ACTIONS(659), - [anon_sym_LBRACE] = ACTIONS(288), - [anon_sym_RBRACE] = ACTIONS(298), - [anon_sym_STAR_STAR] = ACTIONS(298), - [anon_sym_exec] = ACTIONS(583), - [anon_sym_type] = ACTIONS(583), - [anon_sym_AT] = ACTIONS(298), - [anon_sym_not] = ACTIONS(265), - [anon_sym_and] = ACTIONS(265), - [anon_sym_or] = ACTIONS(265), - [anon_sym_SLASH] = ACTIONS(265), - [anon_sym_PERCENT] = ACTIONS(298), - [anon_sym_SLASH_SLASH] = ACTIONS(298), - [anon_sym_AMP] = ACTIONS(298), - [anon_sym_CARET] = ACTIONS(298), - [anon_sym_LT_LT] = ACTIONS(298), - [anon_sym_TILDE] = ACTIONS(657), - [anon_sym_LT] = ACTIONS(265), - [anon_sym_LT_EQ] = ACTIONS(298), - [anon_sym_EQ_EQ] = ACTIONS(298), - [anon_sym_BANG_EQ] = ACTIONS(298), - [anon_sym_GT_EQ] = ACTIONS(298), - [anon_sym_GT] = ACTIONS(265), - [anon_sym_LT_GT] = ACTIONS(298), - [anon_sym_is] = ACTIONS(265), - [sym_ellipsis] = ACTIONS(304), - [sym_integer] = ACTIONS(306), - [sym_float] = ACTIONS(304), - [anon_sym_await] = ACTIONS(661), - [sym_true] = ACTIONS(306), - [sym_false] = ACTIONS(306), - [sym_none] = ACTIONS(306), + [sym_primary_expression] = STATE(786), + [sym_binary_operator] = STATE(920), + [sym_unary_operator] = STATE(920), + [sym_attribute] = STATE(920), + [sym_subscript] = STATE(920), + [sym_call] = STATE(920), + [sym_list] = STATE(920), + [sym_set] = STATE(920), + [sym_tuple] = STATE(920), + [sym_dictionary] = STATE(920), + [sym_list_comprehension] = STATE(920), + [sym_dictionary_comprehension] = STATE(920), + [sym_set_comprehension] = STATE(920), + [sym_generator_expression] = STATE(920), + [sym_parenthesized_expression] = STATE(920), + [sym_concatenated_string] = STATE(920), + [sym_string] = STATE(775), + [sym_concatenated_template_string] = STATE(920), + [sym_template_string] = STATE(769), + [sym_await] = STATE(920), + [sym_identifier] = ACTIONS(79), + [anon_sym_lazy] = ACTIONS(592), + [anon_sym_DOT] = ACTIONS(272), + [anon_sym_from] = ACTIONS(272), + [anon_sym_LPAREN] = ACTIONS(594), + [anon_sym_COMMA] = ACTIONS(303), + [anon_sym_STAR] = ACTIONS(272), + [anon_sym_print] = ACTIONS(592), + [anon_sym_GT_GT] = ACTIONS(303), + [anon_sym_if] = ACTIONS(272), + [anon_sym_async] = ACTIONS(592), + [anon_sym_in] = ACTIONS(272), + [anon_sym_match] = ACTIONS(592), + [anon_sym_PIPE] = ACTIONS(303), + [anon_sym_DASH] = ACTIONS(49), + [anon_sym_PLUS] = ACTIONS(49), + [anon_sym_LBRACK] = ACTIONS(598), + [anon_sym_LBRACE] = ACTIONS(53), + [anon_sym_STAR_STAR] = ACTIONS(303), + [anon_sym_EQ] = ACTIONS(272), + [anon_sym_exec] = ACTIONS(592), + [anon_sym_type] = ACTIONS(592), + [anon_sym_AT] = ACTIONS(303), + [anon_sym_not] = ACTIONS(272), + [anon_sym_and] = ACTIONS(272), + [anon_sym_or] = ACTIONS(272), + [anon_sym_SLASH] = ACTIONS(272), + [anon_sym_PERCENT] = ACTIONS(303), + [anon_sym_SLASH_SLASH] = ACTIONS(303), + [anon_sym_AMP] = ACTIONS(303), + [anon_sym_CARET] = ACTIONS(303), + [anon_sym_LT_LT] = ACTIONS(303), + [anon_sym_TILDE] = ACTIONS(49), + [anon_sym_LT] = ACTIONS(272), + [anon_sym_LT_EQ] = ACTIONS(303), + [anon_sym_EQ_EQ] = ACTIONS(303), + [anon_sym_BANG_EQ] = ACTIONS(303), + [anon_sym_GT_EQ] = ACTIONS(303), + [anon_sym_GT] = ACTIONS(272), + [anon_sym_LT_GT] = ACTIONS(303), + [anon_sym_is] = ACTIONS(272), + [sym_ellipsis] = ACTIONS(77), + [sym_integer] = ACTIONS(79), + [sym_float] = ACTIONS(77), + [anon_sym_await] = ACTIONS(600), + [sym_true] = ACTIONS(79), + [sym_false] = ACTIONS(79), + [sym_none] = ACTIONS(79), [sym_comment] = ACTIONS(3), - [sym__string_start] = ACTIONS(310), - [sym__template_string_start] = ACTIONS(312), + [anon_sym_SEMI] = ACTIONS(303), + [sym__newline] = ACTIONS(303), + [sym__string_start] = ACTIONS(83), + [sym__template_string_start] = ACTIONS(85), }, [STATE(148)] = { - [sym_primary_expression] = STATE(760), - [sym_binary_operator] = STATE(724), - [sym_unary_operator] = STATE(724), - [sym_attribute] = STATE(724), - [sym_subscript] = STATE(724), - [sym_call] = STATE(724), - [sym_list] = STATE(724), - [sym_set] = STATE(724), - [sym_tuple] = STATE(724), - [sym_dictionary] = STATE(724), - [sym_list_comprehension] = STATE(724), - [sym_dictionary_comprehension] = STATE(724), - [sym_set_comprehension] = STATE(724), - [sym_generator_expression] = STATE(724), - [sym_parenthesized_expression] = STATE(724), - [sym_concatenated_string] = STATE(724), - [sym_string] = STATE(621), - [sym_concatenated_template_string] = STATE(724), - [sym_template_string] = STATE(624), - [sym_await] = STATE(724), - [sym_identifier] = ACTIONS(306), - [anon_sym_DOT] = ACTIONS(265), - [anon_sym_LPAREN] = ACTIONS(597), - [anon_sym_RPAREN] = ACTIONS(270), - [anon_sym_COMMA] = ACTIONS(270), - [anon_sym_STAR] = ACTIONS(265), - [anon_sym_print] = ACTIONS(583), - [anon_sym_GT_GT] = ACTIONS(298), - [anon_sym_COLON_EQ] = ACTIONS(599), - [anon_sym_if] = ACTIONS(265), - [anon_sym_async] = ACTIONS(583), - [anon_sym_for] = ACTIONS(265), - [anon_sym_in] = ACTIONS(265), - [anon_sym_match] = ACTIONS(583), - [anon_sym_PIPE] = ACTIONS(298), - [anon_sym_DASH] = ACTIONS(601), - [anon_sym_PLUS] = ACTIONS(601), - [anon_sym_LBRACK] = ACTIONS(603), - [anon_sym_RBRACK] = ACTIONS(270), - [anon_sym_LBRACE] = ACTIONS(288), - [anon_sym_STAR_STAR] = ACTIONS(298), - [anon_sym_exec] = ACTIONS(583), - [anon_sym_type] = ACTIONS(583), - [anon_sym_AT] = ACTIONS(298), - [anon_sym_not] = ACTIONS(265), - [anon_sym_and] = ACTIONS(265), - [anon_sym_or] = ACTIONS(265), - [anon_sym_SLASH] = ACTIONS(265), - [anon_sym_PERCENT] = ACTIONS(298), - [anon_sym_SLASH_SLASH] = ACTIONS(298), - [anon_sym_AMP] = ACTIONS(298), - [anon_sym_CARET] = ACTIONS(298), - [anon_sym_LT_LT] = ACTIONS(298), - [anon_sym_TILDE] = ACTIONS(601), - [anon_sym_LT] = ACTIONS(265), - [anon_sym_LT_EQ] = ACTIONS(298), - [anon_sym_EQ_EQ] = ACTIONS(298), - [anon_sym_BANG_EQ] = ACTIONS(298), - [anon_sym_GT_EQ] = ACTIONS(298), - [anon_sym_GT] = ACTIONS(265), - [anon_sym_LT_GT] = ACTIONS(298), - [anon_sym_is] = ACTIONS(265), - [sym_ellipsis] = ACTIONS(304), - [sym_integer] = ACTIONS(306), - [sym_float] = ACTIONS(304), - [anon_sym_await] = ACTIONS(605), - [sym_true] = ACTIONS(306), - [sym_false] = ACTIONS(306), - [sym_none] = ACTIONS(306), + [sym_primary_expression] = STATE(784), + [sym_binary_operator] = STATE(725), + [sym_unary_operator] = STATE(725), + [sym_attribute] = STATE(725), + [sym_subscript] = STATE(725), + [sym_call] = STATE(725), + [sym_list] = STATE(725), + [sym_set] = STATE(725), + [sym_tuple] = STATE(725), + [sym_dictionary] = STATE(725), + [sym_list_comprehension] = STATE(725), + [sym_dictionary_comprehension] = STATE(725), + [sym_set_comprehension] = STATE(725), + [sym_generator_expression] = STATE(725), + [sym_parenthesized_expression] = STATE(725), + [sym_concatenated_string] = STATE(725), + [sym_string] = STATE(645), + [sym_concatenated_template_string] = STATE(725), + [sym_template_string] = STATE(658), + [sym_await] = STATE(725), + [sym_identifier] = ACTIONS(311), + [anon_sym_lazy] = ACTIONS(573), + [anon_sym_DOT] = ACTIONS(272), + [anon_sym_LPAREN] = ACTIONS(658), + [anon_sym_COMMA] = ACTIONS(303), + [anon_sym_STAR] = ACTIONS(272), + [anon_sym_print] = ACTIONS(573), + [anon_sym_GT_GT] = ACTIONS(303), + [anon_sym_COLON_EQ] = ACTIONS(660), + [anon_sym_if] = ACTIONS(272), + [anon_sym_COLON] = ACTIONS(272), + [anon_sym_async] = ACTIONS(573), + [anon_sym_for] = ACTIONS(272), + [anon_sym_in] = ACTIONS(272), + [anon_sym_match] = ACTIONS(573), + [anon_sym_PIPE] = ACTIONS(303), + [anon_sym_DASH] = ACTIONS(662), + [anon_sym_PLUS] = ACTIONS(662), + [anon_sym_LBRACK] = ACTIONS(664), + [anon_sym_LBRACE] = ACTIONS(293), + [anon_sym_RBRACE] = ACTIONS(303), + [anon_sym_STAR_STAR] = ACTIONS(303), + [anon_sym_exec] = ACTIONS(573), + [anon_sym_type] = ACTIONS(573), + [anon_sym_AT] = ACTIONS(303), + [anon_sym_not] = ACTIONS(272), + [anon_sym_and] = ACTIONS(272), + [anon_sym_or] = ACTIONS(272), + [anon_sym_SLASH] = ACTIONS(272), + [anon_sym_PERCENT] = ACTIONS(303), + [anon_sym_SLASH_SLASH] = ACTIONS(303), + [anon_sym_AMP] = ACTIONS(303), + [anon_sym_CARET] = ACTIONS(303), + [anon_sym_LT_LT] = ACTIONS(303), + [anon_sym_TILDE] = ACTIONS(662), + [anon_sym_LT] = ACTIONS(272), + [anon_sym_LT_EQ] = ACTIONS(303), + [anon_sym_EQ_EQ] = ACTIONS(303), + [anon_sym_BANG_EQ] = ACTIONS(303), + [anon_sym_GT_EQ] = ACTIONS(303), + [anon_sym_GT] = ACTIONS(272), + [anon_sym_LT_GT] = ACTIONS(303), + [anon_sym_is] = ACTIONS(272), + [sym_ellipsis] = ACTIONS(309), + [sym_integer] = ACTIONS(311), + [sym_float] = ACTIONS(309), + [anon_sym_await] = ACTIONS(666), + [sym_true] = ACTIONS(311), + [sym_false] = ACTIONS(311), + [sym_none] = ACTIONS(311), [sym_comment] = ACTIONS(3), - [sym__string_start] = ACTIONS(310), - [sym__template_string_start] = ACTIONS(312), + [sym__string_start] = ACTIONS(315), + [sym__template_string_start] = ACTIONS(317), }, [STATE(149)] = { - [sym_primary_expression] = STATE(810), - [sym_binary_operator] = STATE(908), - [sym_unary_operator] = STATE(908), - [sym_attribute] = STATE(908), - [sym_subscript] = STATE(908), - [sym_call] = STATE(908), - [sym_list] = STATE(908), - [sym_set] = STATE(908), - [sym_tuple] = STATE(908), - [sym_dictionary] = STATE(908), - [sym_list_comprehension] = STATE(908), - [sym_dictionary_comprehension] = STATE(908), - [sym_set_comprehension] = STATE(908), - [sym_generator_expression] = STATE(908), - [sym_parenthesized_expression] = STATE(908), - [sym_concatenated_string] = STATE(908), - [sym_string] = STATE(782), - [sym_concatenated_template_string] = STATE(908), - [sym_template_string] = STATE(763), - [sym_await] = STATE(908), - [sym_identifier] = ACTIONS(77), - [anon_sym_DOT] = ACTIONS(265), - [anon_sym_from] = ACTIONS(265), - [anon_sym_LPAREN] = ACTIONS(568), - [anon_sym_COMMA] = ACTIONS(298), - [anon_sym_STAR] = ACTIONS(265), - [anon_sym_print] = ACTIONS(570), - [anon_sym_GT_GT] = ACTIONS(298), - [anon_sym_if] = ACTIONS(265), - [anon_sym_async] = ACTIONS(570), - [anon_sym_in] = ACTIONS(265), - [anon_sym_match] = ACTIONS(570), - [anon_sym_PIPE] = ACTIONS(298), - [anon_sym_DASH] = ACTIONS(47), - [anon_sym_PLUS] = ACTIONS(47), - [anon_sym_LBRACK] = ACTIONS(574), - [anon_sym_LBRACE] = ACTIONS(51), - [anon_sym_STAR_STAR] = ACTIONS(298), - [anon_sym_EQ] = ACTIONS(265), - [anon_sym_exec] = ACTIONS(570), - [anon_sym_type] = ACTIONS(570), - [anon_sym_AT] = ACTIONS(298), - [anon_sym_not] = ACTIONS(265), - [anon_sym_and] = ACTIONS(265), - [anon_sym_or] = ACTIONS(265), - [anon_sym_SLASH] = ACTIONS(265), - [anon_sym_PERCENT] = ACTIONS(298), - [anon_sym_SLASH_SLASH] = ACTIONS(298), - [anon_sym_AMP] = ACTIONS(298), - [anon_sym_CARET] = ACTIONS(298), - [anon_sym_LT_LT] = ACTIONS(298), - [anon_sym_TILDE] = ACTIONS(47), - [anon_sym_LT] = ACTIONS(265), - [anon_sym_LT_EQ] = ACTIONS(298), - [anon_sym_EQ_EQ] = ACTIONS(298), - [anon_sym_BANG_EQ] = ACTIONS(298), - [anon_sym_GT_EQ] = ACTIONS(298), - [anon_sym_GT] = ACTIONS(265), - [anon_sym_LT_GT] = ACTIONS(298), - [anon_sym_is] = ACTIONS(265), - [sym_ellipsis] = ACTIONS(75), - [sym_integer] = ACTIONS(77), - [sym_float] = ACTIONS(75), - [anon_sym_await] = ACTIONS(576), - [sym_true] = ACTIONS(77), - [sym_false] = ACTIONS(77), - [sym_none] = ACTIONS(77), + [sym_primary_expression] = STATE(800), + [sym_binary_operator] = STATE(878), + [sym_unary_operator] = STATE(878), + [sym_attribute] = STATE(878), + [sym_subscript] = STATE(878), + [sym_call] = STATE(878), + [sym_list] = STATE(878), + [sym_set] = STATE(878), + [sym_tuple] = STATE(878), + [sym_dictionary] = STATE(878), + [sym_list_comprehension] = STATE(878), + [sym_dictionary_comprehension] = STATE(878), + [sym_set_comprehension] = STATE(878), + [sym_generator_expression] = STATE(878), + [sym_parenthesized_expression] = STATE(878), + [sym_concatenated_string] = STATE(878), + [sym_string] = STATE(766), + [sym_concatenated_template_string] = STATE(878), + [sym_template_string] = STATE(776), + [sym_await] = STATE(878), + [sym_identifier] = ACTIONS(612), + [anon_sym_lazy] = ACTIONS(614), + [anon_sym_DOT] = ACTIONS(272), + [anon_sym_LPAREN] = ACTIONS(616), + [anon_sym_COMMA] = ACTIONS(303), + [anon_sym_STAR] = ACTIONS(272), + [anon_sym_print] = ACTIONS(614), + [anon_sym_GT_GT] = ACTIONS(303), + [anon_sym_if] = ACTIONS(272), + [anon_sym_async] = ACTIONS(614), + [anon_sym_in] = ACTIONS(272), + [anon_sym_match] = ACTIONS(614), + [anon_sym_PIPE] = ACTIONS(303), + [anon_sym_DASH] = ACTIONS(620), + [anon_sym_PLUS] = ACTIONS(620), + [anon_sym_LBRACK] = ACTIONS(622), + [anon_sym_LBRACE] = ACTIONS(624), + [anon_sym_RBRACE] = ACTIONS(303), + [anon_sym_STAR_STAR] = ACTIONS(303), + [anon_sym_EQ] = ACTIONS(272), + [anon_sym_exec] = ACTIONS(614), + [anon_sym_type] = ACTIONS(614), + [anon_sym_AT] = ACTIONS(303), + [anon_sym_not] = ACTIONS(272), + [anon_sym_and] = ACTIONS(272), + [anon_sym_or] = ACTIONS(272), + [anon_sym_SLASH] = ACTIONS(272), + [anon_sym_PERCENT] = ACTIONS(303), + [anon_sym_SLASH_SLASH] = ACTIONS(303), + [anon_sym_AMP] = ACTIONS(303), + [anon_sym_CARET] = ACTIONS(303), + [anon_sym_LT_LT] = ACTIONS(303), + [anon_sym_TILDE] = ACTIONS(620), + [anon_sym_LT] = ACTIONS(272), + [anon_sym_LT_EQ] = ACTIONS(303), + [anon_sym_EQ_EQ] = ACTIONS(303), + [anon_sym_BANG_EQ] = ACTIONS(303), + [anon_sym_GT_EQ] = ACTIONS(303), + [anon_sym_GT] = ACTIONS(272), + [anon_sym_LT_GT] = ACTIONS(303), + [anon_sym_is] = ACTIONS(272), + [sym_ellipsis] = ACTIONS(626), + [anon_sym_COLON2] = ACTIONS(303), + [sym_type_conversion] = ACTIONS(303), + [sym_integer] = ACTIONS(612), + [sym_float] = ACTIONS(626), + [anon_sym_await] = ACTIONS(628), + [sym_true] = ACTIONS(612), + [sym_false] = ACTIONS(612), + [sym_none] = ACTIONS(612), [sym_comment] = ACTIONS(3), - [anon_sym_SEMI] = ACTIONS(298), - [sym__newline] = ACTIONS(298), - [sym__string_start] = ACTIONS(81), - [sym__template_string_start] = ACTIONS(83), + [sym__string_start] = ACTIONS(630), + [sym__template_string_start] = ACTIONS(632), }, [STATE(150)] = { - [sym_primary_expression] = STATE(848), - [sym_binary_operator] = STATE(953), - [sym_unary_operator] = STATE(953), - [sym_attribute] = STATE(953), - [sym_subscript] = STATE(953), - [sym_call] = STATE(953), - [sym_list] = STATE(953), - [sym_set] = STATE(953), - [sym_tuple] = STATE(953), - [sym_dictionary] = STATE(953), - [sym_list_comprehension] = STATE(953), - [sym_dictionary_comprehension] = STATE(953), - [sym_set_comprehension] = STATE(953), - [sym_generator_expression] = STATE(953), - [sym_parenthesized_expression] = STATE(953), - [sym_concatenated_string] = STATE(953), - [sym_string] = STATE(794), - [sym_concatenated_template_string] = STATE(953), - [sym_template_string] = STATE(795), - [sym_await] = STATE(953), - [sym_identifier] = ACTIONS(629), - [anon_sym_DOT] = ACTIONS(265), - [anon_sym_LPAREN] = ACTIONS(631), - [anon_sym_RPAREN] = ACTIONS(298), - [anon_sym_COMMA] = ACTIONS(298), - [anon_sym_as] = ACTIONS(265), - [anon_sym_STAR] = ACTIONS(265), - [anon_sym_print] = ACTIONS(633), - [anon_sym_GT_GT] = ACTIONS(298), - [anon_sym_if] = ACTIONS(265), - [anon_sym_COLON] = ACTIONS(298), - [anon_sym_async] = ACTIONS(633), - [anon_sym_in] = ACTIONS(265), - [anon_sym_match] = ACTIONS(633), - [anon_sym_PIPE] = ACTIONS(298), - [anon_sym_DASH] = ACTIONS(637), - [anon_sym_PLUS] = ACTIONS(637), - [anon_sym_LBRACK] = ACTIONS(639), - [anon_sym_LBRACE] = ACTIONS(641), - [anon_sym_STAR_STAR] = ACTIONS(298), - [anon_sym_exec] = ACTIONS(633), - [anon_sym_type] = ACTIONS(633), - [anon_sym_AT] = ACTIONS(298), - [anon_sym_not] = ACTIONS(265), - [anon_sym_and] = ACTIONS(265), - [anon_sym_or] = ACTIONS(265), - [anon_sym_SLASH] = ACTIONS(265), - [anon_sym_PERCENT] = ACTIONS(298), - [anon_sym_SLASH_SLASH] = ACTIONS(298), - [anon_sym_AMP] = ACTIONS(298), - [anon_sym_CARET] = ACTIONS(298), - [anon_sym_LT_LT] = ACTIONS(298), - [anon_sym_TILDE] = ACTIONS(637), - [anon_sym_LT] = ACTIONS(265), - [anon_sym_LT_EQ] = ACTIONS(298), - [anon_sym_EQ_EQ] = ACTIONS(298), - [anon_sym_BANG_EQ] = ACTIONS(298), - [anon_sym_GT_EQ] = ACTIONS(298), - [anon_sym_GT] = ACTIONS(265), - [anon_sym_LT_GT] = ACTIONS(298), - [anon_sym_is] = ACTIONS(265), - [sym_ellipsis] = ACTIONS(643), - [sym_integer] = ACTIONS(629), - [sym_float] = ACTIONS(643), - [anon_sym_await] = ACTIONS(645), - [sym_true] = ACTIONS(629), - [sym_false] = ACTIONS(629), - [sym_none] = ACTIONS(629), + [sym_primary_expression] = STATE(741), + [sym_binary_operator] = STATE(725), + [sym_unary_operator] = STATE(725), + [sym_attribute] = STATE(725), + [sym_subscript] = STATE(725), + [sym_call] = STATE(725), + [sym_list] = STATE(725), + [sym_set] = STATE(725), + [sym_tuple] = STATE(725), + [sym_dictionary] = STATE(725), + [sym_list_comprehension] = STATE(725), + [sym_dictionary_comprehension] = STATE(725), + [sym_set_comprehension] = STATE(725), + [sym_generator_expression] = STATE(725), + [sym_parenthesized_expression] = STATE(725), + [sym_concatenated_string] = STATE(725), + [sym_string] = STATE(645), + [sym_concatenated_template_string] = STATE(725), + [sym_template_string] = STATE(658), + [sym_await] = STATE(725), + [sym_identifier] = ACTIONS(311), + [anon_sym_lazy] = ACTIONS(573), + [anon_sym_DOT] = ACTIONS(272), + [anon_sym_LPAREN] = ACTIONS(575), + [anon_sym_RPAREN] = ACTIONS(303), + [anon_sym_COMMA] = ACTIONS(303), + [anon_sym_STAR] = ACTIONS(272), + [anon_sym_print] = ACTIONS(573), + [anon_sym_GT_GT] = ACTIONS(303), + [anon_sym_COLON_EQ] = ACTIONS(580), + [anon_sym_if] = ACTIONS(272), + [anon_sym_async] = ACTIONS(573), + [anon_sym_in] = ACTIONS(272), + [anon_sym_match] = ACTIONS(573), + [anon_sym_PIPE] = ACTIONS(303), + [anon_sym_DASH] = ACTIONS(301), + [anon_sym_PLUS] = ACTIONS(301), + [anon_sym_LBRACK] = ACTIONS(586), + [anon_sym_LBRACE] = ACTIONS(293), + [anon_sym_STAR_STAR] = ACTIONS(303), + [anon_sym_EQ] = ACTIONS(634), + [anon_sym_exec] = ACTIONS(573), + [anon_sym_type] = ACTIONS(573), + [anon_sym_AT] = ACTIONS(303), + [anon_sym_not] = ACTIONS(272), + [anon_sym_and] = ACTIONS(272), + [anon_sym_or] = ACTIONS(272), + [anon_sym_SLASH] = ACTIONS(272), + [anon_sym_PERCENT] = ACTIONS(303), + [anon_sym_SLASH_SLASH] = ACTIONS(303), + [anon_sym_AMP] = ACTIONS(303), + [anon_sym_CARET] = ACTIONS(303), + [anon_sym_LT_LT] = ACTIONS(303), + [anon_sym_TILDE] = ACTIONS(301), + [anon_sym_LT] = ACTIONS(272), + [anon_sym_LT_EQ] = ACTIONS(303), + [anon_sym_EQ_EQ] = ACTIONS(303), + [anon_sym_BANG_EQ] = ACTIONS(303), + [anon_sym_GT_EQ] = ACTIONS(303), + [anon_sym_GT] = ACTIONS(272), + [anon_sym_LT_GT] = ACTIONS(303), + [anon_sym_is] = ACTIONS(272), + [sym_ellipsis] = ACTIONS(309), + [sym_integer] = ACTIONS(311), + [sym_float] = ACTIONS(309), + [anon_sym_await] = ACTIONS(590), + [sym_true] = ACTIONS(311), + [sym_false] = ACTIONS(311), + [sym_none] = ACTIONS(311), [sym_comment] = ACTIONS(3), - [sym__string_start] = ACTIONS(647), - [sym__template_string_start] = ACTIONS(649), + [sym__string_start] = ACTIONS(315), + [sym__template_string_start] = ACTIONS(317), }, [STATE(151)] = { - [sym_primary_expression] = STATE(735), - [sym_binary_operator] = STATE(724), - [sym_unary_operator] = STATE(724), - [sym_attribute] = STATE(724), - [sym_subscript] = STATE(724), - [sym_call] = STATE(724), - [sym_list] = STATE(724), - [sym_set] = STATE(724), - [sym_tuple] = STATE(724), - [sym_dictionary] = STATE(724), - [sym_list_comprehension] = STATE(724), - [sym_dictionary_comprehension] = STATE(724), - [sym_set_comprehension] = STATE(724), - [sym_generator_expression] = STATE(724), - [sym_parenthesized_expression] = STATE(724), - [sym_concatenated_string] = STATE(724), - [sym_string] = STATE(621), - [sym_concatenated_template_string] = STATE(724), - [sym_template_string] = STATE(624), - [sym_await] = STATE(724), - [sym_identifier] = ACTIONS(306), - [anon_sym_DOT] = ACTIONS(265), - [anon_sym_LPAREN] = ACTIONS(578), - [anon_sym_RPAREN] = ACTIONS(298), - [anon_sym_COMMA] = ACTIONS(298), - [anon_sym_STAR] = ACTIONS(265), - [anon_sym_print] = ACTIONS(583), - [anon_sym_GT_GT] = ACTIONS(298), - [anon_sym_COLON_EQ] = ACTIONS(585), - [anon_sym_if] = ACTIONS(265), - [anon_sym_async] = ACTIONS(583), - [anon_sym_in] = ACTIONS(265), - [anon_sym_match] = ACTIONS(583), - [anon_sym_PIPE] = ACTIONS(298), - [anon_sym_DASH] = ACTIONS(296), - [anon_sym_PLUS] = ACTIONS(296), - [anon_sym_LBRACK] = ACTIONS(591), - [anon_sym_LBRACE] = ACTIONS(288), - [anon_sym_STAR_STAR] = ACTIONS(298), - [anon_sym_EQ] = ACTIONS(651), - [anon_sym_exec] = ACTIONS(583), - [anon_sym_type] = ACTIONS(583), - [anon_sym_AT] = ACTIONS(298), - [anon_sym_not] = ACTIONS(265), - [anon_sym_and] = ACTIONS(265), - [anon_sym_or] = ACTIONS(265), - [anon_sym_SLASH] = ACTIONS(265), - [anon_sym_PERCENT] = ACTIONS(298), - [anon_sym_SLASH_SLASH] = ACTIONS(298), - [anon_sym_AMP] = ACTIONS(298), - [anon_sym_CARET] = ACTIONS(298), - [anon_sym_LT_LT] = ACTIONS(298), - [anon_sym_TILDE] = ACTIONS(296), - [anon_sym_LT] = ACTIONS(265), - [anon_sym_LT_EQ] = ACTIONS(298), - [anon_sym_EQ_EQ] = ACTIONS(298), - [anon_sym_BANG_EQ] = ACTIONS(298), - [anon_sym_GT_EQ] = ACTIONS(298), - [anon_sym_GT] = ACTIONS(265), - [anon_sym_LT_GT] = ACTIONS(298), - [anon_sym_is] = ACTIONS(265), - [sym_ellipsis] = ACTIONS(304), - [sym_integer] = ACTIONS(306), - [sym_float] = ACTIONS(304), - [anon_sym_await] = ACTIONS(595), - [sym_true] = ACTIONS(306), - [sym_false] = ACTIONS(306), - [sym_none] = ACTIONS(306), + [sym_primary_expression] = STATE(835), + [sym_binary_operator] = STATE(970), + [sym_unary_operator] = STATE(970), + [sym_attribute] = STATE(970), + [sym_subscript] = STATE(970), + [sym_call] = STATE(970), + [sym_list] = STATE(970), + [sym_set] = STATE(970), + [sym_tuple] = STATE(970), + [sym_dictionary] = STATE(970), + [sym_list_comprehension] = STATE(970), + [sym_dictionary_comprehension] = STATE(970), + [sym_set_comprehension] = STATE(970), + [sym_generator_expression] = STATE(970), + [sym_parenthesized_expression] = STATE(970), + [sym_concatenated_string] = STATE(970), + [sym_string] = STATE(793), + [sym_concatenated_template_string] = STATE(970), + [sym_template_string] = STATE(794), + [sym_await] = STATE(970), + [sym_identifier] = ACTIONS(636), + [anon_sym_lazy] = ACTIONS(638), + [anon_sym_DOT] = ACTIONS(272), + [anon_sym_LPAREN] = ACTIONS(640), + [anon_sym_RPAREN] = ACTIONS(303), + [anon_sym_COMMA] = ACTIONS(303), + [anon_sym_as] = ACTIONS(272), + [anon_sym_STAR] = ACTIONS(272), + [anon_sym_print] = ACTIONS(638), + [anon_sym_GT_GT] = ACTIONS(303), + [anon_sym_if] = ACTIONS(272), + [anon_sym_COLON] = ACTIONS(303), + [anon_sym_async] = ACTIONS(638), + [anon_sym_in] = ACTIONS(272), + [anon_sym_match] = ACTIONS(638), + [anon_sym_PIPE] = ACTIONS(303), + [anon_sym_DASH] = ACTIONS(644), + [anon_sym_PLUS] = ACTIONS(644), + [anon_sym_LBRACK] = ACTIONS(646), + [anon_sym_LBRACE] = ACTIONS(648), + [anon_sym_STAR_STAR] = ACTIONS(303), + [anon_sym_exec] = ACTIONS(638), + [anon_sym_type] = ACTIONS(638), + [anon_sym_AT] = ACTIONS(303), + [anon_sym_not] = ACTIONS(272), + [anon_sym_and] = ACTIONS(272), + [anon_sym_or] = ACTIONS(272), + [anon_sym_SLASH] = ACTIONS(272), + [anon_sym_PERCENT] = ACTIONS(303), + [anon_sym_SLASH_SLASH] = ACTIONS(303), + [anon_sym_AMP] = ACTIONS(303), + [anon_sym_CARET] = ACTIONS(303), + [anon_sym_LT_LT] = ACTIONS(303), + [anon_sym_TILDE] = ACTIONS(644), + [anon_sym_LT] = ACTIONS(272), + [anon_sym_LT_EQ] = ACTIONS(303), + [anon_sym_EQ_EQ] = ACTIONS(303), + [anon_sym_BANG_EQ] = ACTIONS(303), + [anon_sym_GT_EQ] = ACTIONS(303), + [anon_sym_GT] = ACTIONS(272), + [anon_sym_LT_GT] = ACTIONS(303), + [anon_sym_is] = ACTIONS(272), + [sym_ellipsis] = ACTIONS(650), + [sym_integer] = ACTIONS(636), + [sym_float] = ACTIONS(650), + [anon_sym_await] = ACTIONS(652), + [sym_true] = ACTIONS(636), + [sym_false] = ACTIONS(636), + [sym_none] = ACTIONS(636), [sym_comment] = ACTIONS(3), - [sym__string_start] = ACTIONS(310), - [sym__template_string_start] = ACTIONS(312), + [sym__string_start] = ACTIONS(654), + [sym__template_string_start] = ACTIONS(656), }, [STATE(152)] = { - [sym_primary_expression] = STATE(790), - [sym_binary_operator] = STATE(724), - [sym_unary_operator] = STATE(724), - [sym_attribute] = STATE(724), - [sym_subscript] = STATE(724), - [sym_call] = STATE(724), - [sym_list] = STATE(724), - [sym_set] = STATE(724), - [sym_tuple] = STATE(724), - [sym_dictionary] = STATE(724), - [sym_list_comprehension] = STATE(724), - [sym_dictionary_comprehension] = STATE(724), - [sym_set_comprehension] = STATE(724), - [sym_generator_expression] = STATE(724), - [sym_parenthesized_expression] = STATE(724), - [sym_concatenated_string] = STATE(724), - [sym_string] = STATE(621), - [sym_concatenated_template_string] = STATE(724), - [sym_template_string] = STATE(624), - [sym_await] = STATE(724), - [sym_identifier] = ACTIONS(306), - [anon_sym_DOT] = ACTIONS(265), - [anon_sym_LPAREN] = ACTIONS(653), - [anon_sym_COMMA] = ACTIONS(298), - [anon_sym_STAR] = ACTIONS(265), - [anon_sym_print] = ACTIONS(583), - [anon_sym_GT_GT] = ACTIONS(298), - [anon_sym_if] = ACTIONS(265), - [anon_sym_COLON] = ACTIONS(298), - [anon_sym_async] = ACTIONS(583), - [anon_sym_for] = ACTIONS(265), - [anon_sym_in] = ACTIONS(265), - [anon_sym_match] = ACTIONS(583), - [anon_sym_PIPE] = ACTIONS(298), - [anon_sym_DASH] = ACTIONS(657), - [anon_sym_PLUS] = ACTIONS(657), - [anon_sym_LBRACK] = ACTIONS(659), - [anon_sym_LBRACE] = ACTIONS(288), - [anon_sym_RBRACE] = ACTIONS(298), - [anon_sym_STAR_STAR] = ACTIONS(298), - [anon_sym_exec] = ACTIONS(583), - [anon_sym_type] = ACTIONS(583), - [anon_sym_AT] = ACTIONS(298), - [anon_sym_not] = ACTIONS(265), - [anon_sym_and] = ACTIONS(265), - [anon_sym_or] = ACTIONS(265), - [anon_sym_SLASH] = ACTIONS(265), - [anon_sym_PERCENT] = ACTIONS(298), - [anon_sym_SLASH_SLASH] = ACTIONS(298), - [anon_sym_AMP] = ACTIONS(298), - [anon_sym_CARET] = ACTIONS(298), - [anon_sym_LT_LT] = ACTIONS(298), - [anon_sym_TILDE] = ACTIONS(657), - [anon_sym_LT] = ACTIONS(265), - [anon_sym_LT_EQ] = ACTIONS(298), - [anon_sym_EQ_EQ] = ACTIONS(298), - [anon_sym_BANG_EQ] = ACTIONS(298), - [anon_sym_GT_EQ] = ACTIONS(298), - [anon_sym_GT] = ACTIONS(265), - [anon_sym_LT_GT] = ACTIONS(298), - [anon_sym_is] = ACTIONS(265), - [sym_ellipsis] = ACTIONS(304), - [sym_integer] = ACTIONS(306), - [sym_float] = ACTIONS(304), - [anon_sym_await] = ACTIONS(661), - [sym_true] = ACTIONS(306), - [sym_false] = ACTIONS(306), - [sym_none] = ACTIONS(306), + [sym_primary_expression] = STATE(784), + [sym_binary_operator] = STATE(725), + [sym_unary_operator] = STATE(725), + [sym_attribute] = STATE(725), + [sym_subscript] = STATE(725), + [sym_call] = STATE(725), + [sym_list] = STATE(725), + [sym_set] = STATE(725), + [sym_tuple] = STATE(725), + [sym_dictionary] = STATE(725), + [sym_list_comprehension] = STATE(725), + [sym_dictionary_comprehension] = STATE(725), + [sym_set_comprehension] = STATE(725), + [sym_generator_expression] = STATE(725), + [sym_parenthesized_expression] = STATE(725), + [sym_concatenated_string] = STATE(725), + [sym_string] = STATE(645), + [sym_concatenated_template_string] = STATE(725), + [sym_template_string] = STATE(658), + [sym_await] = STATE(725), + [sym_identifier] = ACTIONS(311), + [anon_sym_lazy] = ACTIONS(573), + [anon_sym_DOT] = ACTIONS(272), + [anon_sym_LPAREN] = ACTIONS(658), + [anon_sym_COMMA] = ACTIONS(303), + [anon_sym_STAR] = ACTIONS(272), + [anon_sym_print] = ACTIONS(573), + [anon_sym_GT_GT] = ACTIONS(303), + [anon_sym_if] = ACTIONS(272), + [anon_sym_COLON] = ACTIONS(303), + [anon_sym_async] = ACTIONS(573), + [anon_sym_for] = ACTIONS(272), + [anon_sym_in] = ACTIONS(272), + [anon_sym_match] = ACTIONS(573), + [anon_sym_PIPE] = ACTIONS(303), + [anon_sym_DASH] = ACTIONS(662), + [anon_sym_PLUS] = ACTIONS(662), + [anon_sym_LBRACK] = ACTIONS(664), + [anon_sym_LBRACE] = ACTIONS(293), + [anon_sym_RBRACE] = ACTIONS(303), + [anon_sym_STAR_STAR] = ACTIONS(303), + [anon_sym_exec] = ACTIONS(573), + [anon_sym_type] = ACTIONS(573), + [anon_sym_AT] = ACTIONS(303), + [anon_sym_not] = ACTIONS(272), + [anon_sym_and] = ACTIONS(272), + [anon_sym_or] = ACTIONS(272), + [anon_sym_SLASH] = ACTIONS(272), + [anon_sym_PERCENT] = ACTIONS(303), + [anon_sym_SLASH_SLASH] = ACTIONS(303), + [anon_sym_AMP] = ACTIONS(303), + [anon_sym_CARET] = ACTIONS(303), + [anon_sym_LT_LT] = ACTIONS(303), + [anon_sym_TILDE] = ACTIONS(662), + [anon_sym_LT] = ACTIONS(272), + [anon_sym_LT_EQ] = ACTIONS(303), + [anon_sym_EQ_EQ] = ACTIONS(303), + [anon_sym_BANG_EQ] = ACTIONS(303), + [anon_sym_GT_EQ] = ACTIONS(303), + [anon_sym_GT] = ACTIONS(272), + [anon_sym_LT_GT] = ACTIONS(303), + [anon_sym_is] = ACTIONS(272), + [sym_ellipsis] = ACTIONS(309), + [sym_integer] = ACTIONS(311), + [sym_float] = ACTIONS(309), + [anon_sym_await] = ACTIONS(666), + [sym_true] = ACTIONS(311), + [sym_false] = ACTIONS(311), + [sym_none] = ACTIONS(311), [sym_comment] = ACTIONS(3), - [sym__string_start] = ACTIONS(310), - [sym__template_string_start] = ACTIONS(312), + [sym__string_start] = ACTIONS(315), + [sym__template_string_start] = ACTIONS(317), }, [STATE(153)] = { - [sym_named_expression] = STATE(1158), - [sym_list_splat] = STATE(1549), - [sym_dictionary_splat] = STATE(1549), - [sym_expression_list] = STATE(1535), - [sym_pattern] = STATE(1013), - [sym_tuple_pattern] = STATE(999), - [sym_list_pattern] = STATE(999), - [sym_list_splat_pattern] = STATE(999), - [sym_expression] = STATE(1213), - [sym_primary_expression] = STATE(779), - [sym_not_operator] = STATE(1158), - [sym_boolean_operator] = STATE(1158), - [sym_binary_operator] = STATE(908), - [sym_unary_operator] = STATE(908), - [sym_comparison_operator] = STATE(1158), - [sym_lambda] = STATE(1158), - [sym_assignment] = STATE(1535), - [sym_augmented_assignment] = STATE(1535), - [sym_pattern_list] = STATE(1024), - [sym__right_hand_side] = STATE(1535), - [sym_yield] = STATE(1535), - [sym_attribute] = STATE(494), - [sym_subscript] = STATE(494), - [sym_call] = STATE(908), - [sym_list] = STATE(908), - [sym_set] = STATE(908), - [sym_tuple] = STATE(908), - [sym_dictionary] = STATE(908), - [sym_list_comprehension] = STATE(908), - [sym_dictionary_comprehension] = STATE(908), - [sym_set_comprehension] = STATE(908), - [sym_generator_expression] = STATE(908), - [sym_parenthesized_expression] = STATE(908), - [sym_conditional_expression] = STATE(1158), - [sym_concatenated_string] = STATE(908), - [sym_string] = STATE(782), - [sym_concatenated_template_string] = STATE(908), - [sym_template_string] = STATE(763), - [sym_await] = STATE(908), + [sym_named_expression] = STATE(1156), + [sym_list_splat] = STATE(1520), + [sym_dictionary_splat] = STATE(1520), + [sym_expression_list] = STATE(1570), + [sym_pattern] = STATE(1017), + [sym_tuple_pattern] = STATE(1001), + [sym_list_pattern] = STATE(1001), + [sym_list_splat_pattern] = STATE(1001), + [sym_expression] = STATE(1179), + [sym_primary_expression] = STATE(765), + [sym_not_operator] = STATE(1156), + [sym_boolean_operator] = STATE(1156), + [sym_binary_operator] = STATE(920), + [sym_unary_operator] = STATE(920), + [sym_comparison_operator] = STATE(1156), + [sym_lambda] = STATE(1156), + [sym_assignment] = STATE(1570), + [sym_augmented_assignment] = STATE(1570), + [sym_pattern_list] = STATE(1026), + [sym__right_hand_side] = STATE(1570), + [sym_yield] = STATE(1570), + [sym_attribute] = STATE(582), + [sym_subscript] = STATE(582), + [sym_call] = STATE(920), + [sym_list] = STATE(920), + [sym_set] = STATE(920), + [sym_tuple] = STATE(920), + [sym_dictionary] = STATE(920), + [sym_list_comprehension] = STATE(920), + [sym_dictionary_comprehension] = STATE(920), + [sym_set_comprehension] = STATE(920), + [sym_generator_expression] = STATE(920), + [sym_parenthesized_expression] = STATE(920), + [sym_conditional_expression] = STATE(1156), + [sym_concatenated_string] = STATE(920), + [sym_string] = STATE(775), + [sym_concatenated_template_string] = STATE(920), + [sym_template_string] = STATE(769), + [sym_await] = STATE(920), [sym_identifier] = ACTIONS(7), - [anon_sym_LPAREN] = ACTIONS(13), - [anon_sym_STAR] = ACTIONS(15), - [anon_sym_print] = ACTIONS(322), - [anon_sym_async] = ACTIONS(322), - [anon_sym_match] = ACTIONS(322), - [anon_sym_DASH] = ACTIONS(47), - [anon_sym_PLUS] = ACTIONS(47), - [anon_sym_LBRACK] = ACTIONS(49), - [anon_sym_LBRACE] = ACTIONS(51), - [anon_sym_STAR_STAR] = ACTIONS(53), - [anon_sym_exec] = ACTIONS(322), - [anon_sym_type] = ACTIONS(322), - [anon_sym_not] = ACTIONS(69), - [anon_sym_TILDE] = ACTIONS(47), - [anon_sym_lambda] = ACTIONS(71), - [anon_sym_yield] = ACTIONS(73), - [sym_ellipsis] = ACTIONS(75), - [sym_integer] = ACTIONS(77), - [sym_float] = ACTIONS(75), - [anon_sym_await] = ACTIONS(79), - [sym_true] = ACTIONS(77), - [sym_false] = ACTIONS(77), - [sym_none] = ACTIONS(77), + [anon_sym_lazy] = ACTIONS(319), + [anon_sym_LPAREN] = ACTIONS(15), + [anon_sym_STAR] = ACTIONS(17), + [anon_sym_print] = ACTIONS(319), + [anon_sym_async] = ACTIONS(319), + [anon_sym_match] = ACTIONS(319), + [anon_sym_DASH] = ACTIONS(49), + [anon_sym_PLUS] = ACTIONS(49), + [anon_sym_LBRACK] = ACTIONS(51), + [anon_sym_LBRACE] = ACTIONS(53), + [anon_sym_STAR_STAR] = ACTIONS(55), + [anon_sym_exec] = ACTIONS(319), + [anon_sym_type] = ACTIONS(319), + [anon_sym_not] = ACTIONS(71), + [anon_sym_TILDE] = ACTIONS(49), + [anon_sym_lambda] = ACTIONS(73), + [anon_sym_yield] = ACTIONS(75), + [sym_ellipsis] = ACTIONS(77), + [sym_integer] = ACTIONS(79), + [sym_float] = ACTIONS(77), + [anon_sym_await] = ACTIONS(81), + [sym_true] = ACTIONS(79), + [sym_false] = ACTIONS(79), + [sym_none] = ACTIONS(79), [sym_comment] = ACTIONS(3), - [sym__string_start] = ACTIONS(81), - [sym__template_string_start] = ACTIONS(83), + [sym__string_start] = ACTIONS(83), + [sym__template_string_start] = ACTIONS(85), }, [STATE(154)] = { - [sym_named_expression] = STATE(1158), - [sym_list_splat] = STATE(1549), - [sym_dictionary_splat] = STATE(1549), - [sym_expression_list] = STATE(1518), - [sym_pattern] = STATE(1013), - [sym_tuple_pattern] = STATE(999), - [sym_list_pattern] = STATE(999), - [sym_list_splat_pattern] = STATE(999), - [sym_expression] = STATE(1213), - [sym_primary_expression] = STATE(779), - [sym_not_operator] = STATE(1158), - [sym_boolean_operator] = STATE(1158), - [sym_binary_operator] = STATE(908), - [sym_unary_operator] = STATE(908), - [sym_comparison_operator] = STATE(1158), - [sym_lambda] = STATE(1158), - [sym_assignment] = STATE(1518), - [sym_augmented_assignment] = STATE(1518), - [sym_pattern_list] = STATE(1024), - [sym__right_hand_side] = STATE(1518), - [sym_yield] = STATE(1518), - [sym_attribute] = STATE(494), - [sym_subscript] = STATE(494), - [sym_call] = STATE(908), - [sym_list] = STATE(908), - [sym_set] = STATE(908), - [sym_tuple] = STATE(908), - [sym_dictionary] = STATE(908), - [sym_list_comprehension] = STATE(908), - [sym_dictionary_comprehension] = STATE(908), - [sym_set_comprehension] = STATE(908), - [sym_generator_expression] = STATE(908), - [sym_parenthesized_expression] = STATE(908), - [sym_conditional_expression] = STATE(1158), - [sym_concatenated_string] = STATE(908), - [sym_string] = STATE(782), - [sym_concatenated_template_string] = STATE(908), - [sym_template_string] = STATE(763), - [sym_await] = STATE(908), + [sym_named_expression] = STATE(1156), + [sym_list_splat] = STATE(1520), + [sym_dictionary_splat] = STATE(1520), + [sym_expression_list] = STATE(1516), + [sym_pattern] = STATE(1017), + [sym_tuple_pattern] = STATE(1001), + [sym_list_pattern] = STATE(1001), + [sym_list_splat_pattern] = STATE(1001), + [sym_expression] = STATE(1179), + [sym_primary_expression] = STATE(765), + [sym_not_operator] = STATE(1156), + [sym_boolean_operator] = STATE(1156), + [sym_binary_operator] = STATE(920), + [sym_unary_operator] = STATE(920), + [sym_comparison_operator] = STATE(1156), + [sym_lambda] = STATE(1156), + [sym_assignment] = STATE(1516), + [sym_augmented_assignment] = STATE(1516), + [sym_pattern_list] = STATE(1026), + [sym__right_hand_side] = STATE(1516), + [sym_yield] = STATE(1516), + [sym_attribute] = STATE(582), + [sym_subscript] = STATE(582), + [sym_call] = STATE(920), + [sym_list] = STATE(920), + [sym_set] = STATE(920), + [sym_tuple] = STATE(920), + [sym_dictionary] = STATE(920), + [sym_list_comprehension] = STATE(920), + [sym_dictionary_comprehension] = STATE(920), + [sym_set_comprehension] = STATE(920), + [sym_generator_expression] = STATE(920), + [sym_parenthesized_expression] = STATE(920), + [sym_conditional_expression] = STATE(1156), + [sym_concatenated_string] = STATE(920), + [sym_string] = STATE(775), + [sym_concatenated_template_string] = STATE(920), + [sym_template_string] = STATE(769), + [sym_await] = STATE(920), [sym_identifier] = ACTIONS(7), - [anon_sym_LPAREN] = ACTIONS(13), - [anon_sym_STAR] = ACTIONS(15), - [anon_sym_print] = ACTIONS(322), - [anon_sym_async] = ACTIONS(322), - [anon_sym_match] = ACTIONS(322), - [anon_sym_DASH] = ACTIONS(47), - [anon_sym_PLUS] = ACTIONS(47), - [anon_sym_LBRACK] = ACTIONS(49), - [anon_sym_LBRACE] = ACTIONS(51), - [anon_sym_STAR_STAR] = ACTIONS(53), - [anon_sym_exec] = ACTIONS(322), - [anon_sym_type] = ACTIONS(322), - [anon_sym_not] = ACTIONS(69), - [anon_sym_TILDE] = ACTIONS(47), - [anon_sym_lambda] = ACTIONS(71), - [anon_sym_yield] = ACTIONS(73), - [sym_ellipsis] = ACTIONS(75), - [sym_integer] = ACTIONS(77), - [sym_float] = ACTIONS(75), - [anon_sym_await] = ACTIONS(79), - [sym_true] = ACTIONS(77), - [sym_false] = ACTIONS(77), - [sym_none] = ACTIONS(77), + [anon_sym_lazy] = ACTIONS(319), + [anon_sym_LPAREN] = ACTIONS(15), + [anon_sym_STAR] = ACTIONS(17), + [anon_sym_print] = ACTIONS(319), + [anon_sym_async] = ACTIONS(319), + [anon_sym_match] = ACTIONS(319), + [anon_sym_DASH] = ACTIONS(49), + [anon_sym_PLUS] = ACTIONS(49), + [anon_sym_LBRACK] = ACTIONS(51), + [anon_sym_LBRACE] = ACTIONS(53), + [anon_sym_STAR_STAR] = ACTIONS(55), + [anon_sym_exec] = ACTIONS(319), + [anon_sym_type] = ACTIONS(319), + [anon_sym_not] = ACTIONS(71), + [anon_sym_TILDE] = ACTIONS(49), + [anon_sym_lambda] = ACTIONS(73), + [anon_sym_yield] = ACTIONS(75), + [sym_ellipsis] = ACTIONS(77), + [sym_integer] = ACTIONS(79), + [sym_float] = ACTIONS(77), + [anon_sym_await] = ACTIONS(81), + [sym_true] = ACTIONS(79), + [sym_false] = ACTIONS(79), + [sym_none] = ACTIONS(79), [sym_comment] = ACTIONS(3), - [sym__string_start] = ACTIONS(81), - [sym__template_string_start] = ACTIONS(83), + [sym__string_start] = ACTIONS(83), + [sym__template_string_start] = ACTIONS(85), }, [STATE(155)] = { - [sym_named_expression] = STATE(1158), - [sym_list_splat] = STATE(1549), - [sym_dictionary_splat] = STATE(1549), - [sym_expression_list] = STATE(1530), - [sym_pattern] = STATE(1013), - [sym_tuple_pattern] = STATE(999), - [sym_list_pattern] = STATE(999), - [sym_list_splat_pattern] = STATE(999), - [sym_expression] = STATE(1213), - [sym_primary_expression] = STATE(779), - [sym_not_operator] = STATE(1158), - [sym_boolean_operator] = STATE(1158), - [sym_binary_operator] = STATE(908), - [sym_unary_operator] = STATE(908), - [sym_comparison_operator] = STATE(1158), - [sym_lambda] = STATE(1158), - [sym_assignment] = STATE(1530), - [sym_augmented_assignment] = STATE(1530), - [sym_pattern_list] = STATE(1024), - [sym__right_hand_side] = STATE(1530), - [sym_yield] = STATE(1530), - [sym_attribute] = STATE(494), - [sym_subscript] = STATE(494), - [sym_call] = STATE(908), - [sym_list] = STATE(908), - [sym_set] = STATE(908), - [sym_tuple] = STATE(908), - [sym_dictionary] = STATE(908), - [sym_list_comprehension] = STATE(908), - [sym_dictionary_comprehension] = STATE(908), - [sym_set_comprehension] = STATE(908), - [sym_generator_expression] = STATE(908), - [sym_parenthesized_expression] = STATE(908), - [sym_conditional_expression] = STATE(1158), - [sym_concatenated_string] = STATE(908), - [sym_string] = STATE(782), - [sym_concatenated_template_string] = STATE(908), - [sym_template_string] = STATE(763), - [sym_await] = STATE(908), + [sym_named_expression] = STATE(1156), + [sym_list_splat] = STATE(1520), + [sym_dictionary_splat] = STATE(1520), + [sym_expression_list] = STATE(1526), + [sym_pattern] = STATE(1017), + [sym_tuple_pattern] = STATE(1001), + [sym_list_pattern] = STATE(1001), + [sym_list_splat_pattern] = STATE(1001), + [sym_expression] = STATE(1179), + [sym_primary_expression] = STATE(765), + [sym_not_operator] = STATE(1156), + [sym_boolean_operator] = STATE(1156), + [sym_binary_operator] = STATE(920), + [sym_unary_operator] = STATE(920), + [sym_comparison_operator] = STATE(1156), + [sym_lambda] = STATE(1156), + [sym_assignment] = STATE(1526), + [sym_augmented_assignment] = STATE(1526), + [sym_pattern_list] = STATE(1026), + [sym__right_hand_side] = STATE(1526), + [sym_yield] = STATE(1526), + [sym_attribute] = STATE(582), + [sym_subscript] = STATE(582), + [sym_call] = STATE(920), + [sym_list] = STATE(920), + [sym_set] = STATE(920), + [sym_tuple] = STATE(920), + [sym_dictionary] = STATE(920), + [sym_list_comprehension] = STATE(920), + [sym_dictionary_comprehension] = STATE(920), + [sym_set_comprehension] = STATE(920), + [sym_generator_expression] = STATE(920), + [sym_parenthesized_expression] = STATE(920), + [sym_conditional_expression] = STATE(1156), + [sym_concatenated_string] = STATE(920), + [sym_string] = STATE(775), + [sym_concatenated_template_string] = STATE(920), + [sym_template_string] = STATE(769), + [sym_await] = STATE(920), [sym_identifier] = ACTIONS(7), - [anon_sym_LPAREN] = ACTIONS(13), - [anon_sym_STAR] = ACTIONS(15), - [anon_sym_print] = ACTIONS(322), - [anon_sym_async] = ACTIONS(322), - [anon_sym_match] = ACTIONS(322), - [anon_sym_DASH] = ACTIONS(47), - [anon_sym_PLUS] = ACTIONS(47), - [anon_sym_LBRACK] = ACTIONS(49), - [anon_sym_LBRACE] = ACTIONS(51), - [anon_sym_STAR_STAR] = ACTIONS(53), - [anon_sym_exec] = ACTIONS(322), - [anon_sym_type] = ACTIONS(322), - [anon_sym_not] = ACTIONS(69), - [anon_sym_TILDE] = ACTIONS(47), - [anon_sym_lambda] = ACTIONS(71), - [anon_sym_yield] = ACTIONS(73), - [sym_ellipsis] = ACTIONS(75), - [sym_integer] = ACTIONS(77), - [sym_float] = ACTIONS(75), - [anon_sym_await] = ACTIONS(79), - [sym_true] = ACTIONS(77), - [sym_false] = ACTIONS(77), - [sym_none] = ACTIONS(77), + [anon_sym_lazy] = ACTIONS(319), + [anon_sym_LPAREN] = ACTIONS(15), + [anon_sym_STAR] = ACTIONS(17), + [anon_sym_print] = ACTIONS(319), + [anon_sym_async] = ACTIONS(319), + [anon_sym_match] = ACTIONS(319), + [anon_sym_DASH] = ACTIONS(49), + [anon_sym_PLUS] = ACTIONS(49), + [anon_sym_LBRACK] = ACTIONS(51), + [anon_sym_LBRACE] = ACTIONS(53), + [anon_sym_STAR_STAR] = ACTIONS(55), + [anon_sym_exec] = ACTIONS(319), + [anon_sym_type] = ACTIONS(319), + [anon_sym_not] = ACTIONS(71), + [anon_sym_TILDE] = ACTIONS(49), + [anon_sym_lambda] = ACTIONS(73), + [anon_sym_yield] = ACTIONS(75), + [sym_ellipsis] = ACTIONS(77), + [sym_integer] = ACTIONS(79), + [sym_float] = ACTIONS(77), + [anon_sym_await] = ACTIONS(81), + [sym_true] = ACTIONS(79), + [sym_false] = ACTIONS(79), + [sym_none] = ACTIONS(79), [sym_comment] = ACTIONS(3), - [sym__string_start] = ACTIONS(81), - [sym__template_string_start] = ACTIONS(83), + [sym__string_start] = ACTIONS(83), + [sym__template_string_start] = ACTIONS(85), }, }; static const uint16_t ts_small_parse_table[] = { - [0] = 23, + [0] = 29, ACTIONS(3), 1, sym_comment, - ACTIONS(288), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(296), 1, - anon_sym_TILDE, - ACTIONS(310), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(663), 1, + ACTIONS(668), 1, sym_identifier, - ACTIONS(665), 1, + ACTIONS(672), 1, anon_sym_LPAREN, - ACTIONS(667), 1, + ACTIONS(674), 1, anon_sym_STAR, - ACTIONS(673), 1, - anon_sym_in, - ACTIONS(675), 1, + ACTIONS(676), 1, anon_sym_LBRACK, - ACTIONS(677), 1, + ACTIONS(678), 1, + anon_sym_RBRACK, + ACTIONS(680), 1, + anon_sym_not, + ACTIONS(682), 1, + anon_sym_lambda, + ACTIONS(684), 1, + anon_sym_yield, + ACTIONS(686), 1, anon_sym_await, - STATE(621), 1, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, - STATE(1005), 1, - sym_pattern, - STATE(1012), 1, + STATE(726), 1, sym_primary_expression, - ACTIONS(304), 2, + STATE(1084), 1, + sym_expression, + STATE(1311), 1, + sym_pattern, + STATE(1675), 1, + sym__patterns, + STATE(1693), 1, + sym__collection_elements, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(589), 2, - anon_sym_DASH, - anon_sym_PLUS, - STATE(849), 2, + STATE(872), 2, sym_attribute, sym_subscript, - STATE(999), 3, + ACTIONS(606), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + STATE(1001), 3, sym_tuple_pattern, sym_list_pattern, sym_list_splat_pattern, - ACTIONS(306), 4, + STATE(1290), 3, + sym_list_splat, + sym_parenthesized_list_splat, + sym_yield, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(669), 5, + ACTIONS(670), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - ACTIONS(671), 15, - anon_sym_COLON, - anon_sym_EQ, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_STAR_EQ, - anon_sym_SLASH_EQ, - anon_sym_AT_EQ, - anon_sym_SLASH_SLASH_EQ, - anon_sym_PERCENT_EQ, - anon_sym_STAR_STAR_EQ, - anon_sym_GT_GT_EQ, - anon_sym_LT_LT_EQ, - anon_sym_AMP_EQ, - anon_sym_CARET_EQ, - anon_sym_PIPE_EQ, - STATE(724), 15, + STATE(1032), 6, + sym_named_expression, + sym_not_operator, + sym_boolean_operator, + sym_comparison_operator, + sym_lambda, + sym_conditional_expression, + STATE(725), 15, sym_binary_operator, sym_unary_operator, sym_call, @@ -24221,84 +24440,86 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [110] = 29, + [123] = 30, ACTIONS(3), 1, sym_comment, - ACTIONS(288), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(310), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(679), 1, + ACTIONS(668), 1, sym_identifier, - ACTIONS(681), 1, + ACTIONS(672), 1, anon_sym_LPAREN, - ACTIONS(683), 1, + ACTIONS(674), 1, anon_sym_STAR, - ACTIONS(687), 1, + ACTIONS(676), 1, anon_sym_LBRACK, - ACTIONS(689), 1, - anon_sym_RBRACK, - ACTIONS(691), 1, + ACTIONS(680), 1, anon_sym_not, - ACTIONS(693), 1, + ACTIONS(682), 1, anon_sym_lambda, - ACTIONS(695), 1, + ACTIONS(684), 1, anon_sym_yield, - ACTIONS(697), 1, + ACTIONS(686), 1, anon_sym_await, - STATE(621), 1, + ACTIONS(688), 1, + anon_sym_RPAREN, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, - STATE(725), 1, + STATE(726), 1, sym_primary_expression, - STATE(1083), 1, + STATE(1068), 1, sym_expression, - STATE(1356), 1, + STATE(1311), 1, sym_pattern, - STATE(1628), 1, + STATE(1479), 1, + sym_yield, + STATE(1689), 1, sym__patterns, - STATE(1633), 1, + STATE(1692), 1, sym__collection_elements, - ACTIONS(304), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - STATE(915), 2, + STATE(872), 2, sym_attribute, sym_subscript, - ACTIONS(601), 3, + STATE(1290), 2, + sym_list_splat, + sym_parenthesized_list_splat, + ACTIONS(606), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(999), 3, + STATE(1001), 3, sym_tuple_pattern, sym_list_pattern, sym_list_splat_pattern, - STATE(1257), 3, - sym_list_splat, - sym_parenthesized_list_splat, - sym_yield, - ACTIONS(306), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(685), 5, + ACTIONS(670), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1031), 6, + STATE(1032), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(724), 15, + STATE(725), 15, sym_binary_operator, sym_unary_operator, sym_call, @@ -24314,78 +24535,87 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [232] = 23, + [248] = 31, ACTIONS(3), 1, sym_comment, - ACTIONS(288), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(296), 1, - anon_sym_TILDE, - ACTIONS(310), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(663), 1, + ACTIONS(668), 1, sym_identifier, - ACTIONS(665), 1, + ACTIONS(672), 1, anon_sym_LPAREN, - ACTIONS(667), 1, + ACTIONS(674), 1, anon_sym_STAR, - ACTIONS(675), 1, + ACTIONS(676), 1, anon_sym_LBRACK, - ACTIONS(677), 1, + ACTIONS(680), 1, + anon_sym_not, + ACTIONS(682), 1, + anon_sym_lambda, + ACTIONS(684), 1, + anon_sym_yield, + ACTIONS(686), 1, anon_sym_await, - ACTIONS(701), 1, - anon_sym_in, - STATE(621), 1, + ACTIONS(690), 1, + anon_sym_RPAREN, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, - STATE(1005), 1, - sym_pattern, - STATE(1012), 1, + STATE(726), 1, sym_primary_expression, - ACTIONS(304), 2, + STATE(1083), 1, + sym_expression, + STATE(1311), 1, + sym_pattern, + STATE(1385), 1, + sym_list_splat, + STATE(1390), 1, + sym_parenthesized_list_splat, + STATE(1395), 1, + sym_yield, + STATE(1680), 1, + sym__collection_elements, + STATE(1689), 1, + sym__patterns, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(589), 2, - anon_sym_DASH, - anon_sym_PLUS, - STATE(849), 2, + STATE(872), 2, sym_attribute, sym_subscript, - STATE(999), 3, + ACTIONS(606), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + STATE(1001), 3, sym_tuple_pattern, sym_list_pattern, sym_list_splat_pattern, - ACTIONS(306), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(669), 5, + ACTIONS(670), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - ACTIONS(699), 15, - anon_sym_COLON, - anon_sym_EQ, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_STAR_EQ, - anon_sym_SLASH_EQ, - anon_sym_AT_EQ, - anon_sym_SLASH_SLASH_EQ, - anon_sym_PERCENT_EQ, - anon_sym_STAR_STAR_EQ, - anon_sym_GT_GT_EQ, - anon_sym_LT_LT_EQ, - anon_sym_AMP_EQ, - anon_sym_CARET_EQ, - anon_sym_PIPE_EQ, - STATE(724), 15, + STATE(1032), 6, + sym_named_expression, + sym_not_operator, + sym_boolean_operator, + sym_comparison_operator, + sym_lambda, + sym_conditional_expression, + STATE(725), 15, sym_binary_operator, sym_unary_operator, sym_call, @@ -24401,85 +24631,79 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [342] = 30, + [375] = 23, ACTIONS(3), 1, sym_comment, - ACTIONS(288), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(310), 1, + ACTIONS(301), 1, + anon_sym_TILDE, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(679), 1, + ACTIONS(692), 1, sym_identifier, - ACTIONS(681), 1, + ACTIONS(696), 1, anon_sym_LPAREN, - ACTIONS(683), 1, + ACTIONS(698), 1, anon_sym_STAR, - ACTIONS(687), 1, + ACTIONS(702), 1, + anon_sym_in, + ACTIONS(704), 1, anon_sym_LBRACK, - ACTIONS(691), 1, - anon_sym_not, - ACTIONS(693), 1, - anon_sym_lambda, - ACTIONS(695), 1, - anon_sym_yield, - ACTIONS(697), 1, + ACTIONS(706), 1, anon_sym_await, - ACTIONS(703), 1, - anon_sym_RPAREN, - STATE(621), 1, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, - STATE(725), 1, - sym_primary_expression, - STATE(1066), 1, - sym_expression, - STATE(1356), 1, + STATE(998), 1, sym_pattern, - STATE(1383), 1, - sym_yield, - STATE(1615), 1, - sym__collection_elements, - STATE(1643), 1, - sym__patterns, - ACTIONS(304), 2, + STATE(1013), 1, + sym_primary_expression, + ACTIONS(309), 2, sym_ellipsis, sym_float, - STATE(915), 2, - sym_attribute, - sym_subscript, - STATE(1257), 2, - sym_list_splat, - sym_parenthesized_list_splat, - ACTIONS(601), 3, + ACTIONS(584), 2, anon_sym_DASH, anon_sym_PLUS, - anon_sym_TILDE, - STATE(999), 3, + STATE(848), 2, + sym_attribute, + sym_subscript, + STATE(1001), 3, sym_tuple_pattern, sym_list_pattern, sym_list_splat_pattern, - ACTIONS(306), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(685), 5, + ACTIONS(694), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1031), 6, - sym_named_expression, - sym_not_operator, - sym_boolean_operator, - sym_comparison_operator, - sym_lambda, - sym_conditional_expression, - STATE(724), 15, + ACTIONS(700), 15, + anon_sym_COLON, + anon_sym_EQ, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_AT_EQ, + anon_sym_SLASH_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_STAR_STAR_EQ, + anon_sym_GT_GT_EQ, + anon_sym_LT_LT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + STATE(725), 15, sym_binary_operator, sym_unary_operator, sym_call, @@ -24495,84 +24719,79 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [466] = 29, + [486] = 23, ACTIONS(3), 1, sym_comment, - ACTIONS(288), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(310), 1, + ACTIONS(301), 1, + anon_sym_TILDE, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(679), 1, + ACTIONS(692), 1, sym_identifier, - ACTIONS(681), 1, + ACTIONS(696), 1, anon_sym_LPAREN, - ACTIONS(683), 1, + ACTIONS(698), 1, anon_sym_STAR, - ACTIONS(687), 1, + ACTIONS(704), 1, anon_sym_LBRACK, - ACTIONS(691), 1, - anon_sym_not, - ACTIONS(693), 1, - anon_sym_lambda, - ACTIONS(695), 1, - anon_sym_yield, - ACTIONS(697), 1, + ACTIONS(706), 1, anon_sym_await, - ACTIONS(705), 1, - anon_sym_RBRACK, - STATE(621), 1, + ACTIONS(710), 1, + anon_sym_in, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, - STATE(725), 1, - sym_primary_expression, - STATE(1081), 1, - sym_expression, - STATE(1356), 1, + STATE(998), 1, sym_pattern, - STATE(1628), 1, - sym__patterns, - STATE(1656), 1, - sym__collection_elements, - ACTIONS(304), 2, + STATE(1013), 1, + sym_primary_expression, + ACTIONS(309), 2, sym_ellipsis, sym_float, - STATE(915), 2, - sym_attribute, - sym_subscript, - ACTIONS(601), 3, + ACTIONS(584), 2, anon_sym_DASH, anon_sym_PLUS, - anon_sym_TILDE, - STATE(999), 3, + STATE(848), 2, + sym_attribute, + sym_subscript, + STATE(1001), 3, sym_tuple_pattern, sym_list_pattern, sym_list_splat_pattern, - STATE(1257), 3, - sym_list_splat, - sym_parenthesized_list_splat, - sym_yield, - ACTIONS(306), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(685), 5, + ACTIONS(694), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1031), 6, - sym_named_expression, - sym_not_operator, - sym_boolean_operator, - sym_comparison_operator, - sym_lambda, - sym_conditional_expression, - STATE(724), 15, + ACTIONS(708), 15, + anon_sym_COLON, + anon_sym_EQ, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_AT_EQ, + anon_sym_SLASH_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_STAR_STAR_EQ, + anon_sym_GT_GT_EQ, + anon_sym_LT_LT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + STATE(725), 15, sym_binary_operator, sym_unary_operator, sym_call, @@ -24588,86 +24807,85 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [588] = 31, + [597] = 29, ACTIONS(3), 1, sym_comment, - ACTIONS(288), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(310), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(679), 1, + ACTIONS(668), 1, sym_identifier, - ACTIONS(681), 1, + ACTIONS(672), 1, anon_sym_LPAREN, - ACTIONS(683), 1, + ACTIONS(674), 1, anon_sym_STAR, - ACTIONS(687), 1, + ACTIONS(676), 1, anon_sym_LBRACK, - ACTIONS(691), 1, + ACTIONS(680), 1, anon_sym_not, - ACTIONS(693), 1, + ACTIONS(682), 1, anon_sym_lambda, - ACTIONS(695), 1, + ACTIONS(684), 1, anon_sym_yield, - ACTIONS(697), 1, + ACTIONS(686), 1, anon_sym_await, - ACTIONS(707), 1, - anon_sym_RPAREN, - STATE(621), 1, + ACTIONS(712), 1, + anon_sym_RBRACK, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, - STATE(725), 1, + STATE(726), 1, sym_primary_expression, - STATE(1066), 1, + STATE(1079), 1, sym_expression, - STATE(1356), 1, + STATE(1311), 1, sym_pattern, - STATE(1383), 1, - sym_yield, - STATE(1440), 1, - sym_parenthesized_list_splat, - STATE(1474), 1, - sym_list_splat, - STATE(1615), 1, - sym__collection_elements, - STATE(1643), 1, + STATE(1675), 1, sym__patterns, - ACTIONS(304), 2, + STATE(1716), 1, + sym__collection_elements, + ACTIONS(309), 2, sym_ellipsis, sym_float, - STATE(915), 2, + STATE(872), 2, sym_attribute, sym_subscript, - ACTIONS(601), 3, + ACTIONS(606), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(999), 3, + STATE(1001), 3, sym_tuple_pattern, sym_list_pattern, sym_list_splat_pattern, - ACTIONS(306), 4, + STATE(1290), 3, + sym_list_splat, + sym_parenthesized_list_splat, + sym_yield, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(685), 5, + ACTIONS(670), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1031), 6, + STATE(1032), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(724), 15, + STATE(725), 15, sym_binary_operator, sym_unary_operator, sym_call, @@ -24683,85 +24901,86 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [714] = 30, + [720] = 30, ACTIONS(3), 1, sym_comment, - ACTIONS(288), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(310), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(679), 1, + ACTIONS(668), 1, sym_identifier, - ACTIONS(681), 1, + ACTIONS(672), 1, anon_sym_LPAREN, - ACTIONS(683), 1, + ACTIONS(674), 1, anon_sym_STAR, - ACTIONS(687), 1, + ACTIONS(676), 1, anon_sym_LBRACK, - ACTIONS(691), 1, + ACTIONS(680), 1, anon_sym_not, - ACTIONS(693), 1, + ACTIONS(682), 1, anon_sym_lambda, - ACTIONS(695), 1, + ACTIONS(684), 1, anon_sym_yield, - ACTIONS(697), 1, + ACTIONS(686), 1, anon_sym_await, - ACTIONS(709), 1, + ACTIONS(714), 1, anon_sym_RPAREN, - STATE(621), 1, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, - STATE(725), 1, + STATE(726), 1, sym_primary_expression, - STATE(1084), 1, + STATE(1083), 1, sym_expression, - STATE(1356), 1, + STATE(1311), 1, sym_pattern, - STATE(1489), 1, + STATE(1395), 1, sym_yield, - STATE(1626), 1, + STATE(1680), 1, sym__collection_elements, - STATE(1643), 1, + STATE(1689), 1, sym__patterns, - ACTIONS(304), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - STATE(915), 2, + STATE(872), 2, sym_attribute, sym_subscript, - STATE(1257), 2, + STATE(1290), 2, sym_list_splat, sym_parenthesized_list_splat, - ACTIONS(601), 3, + ACTIONS(606), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(999), 3, + STATE(1001), 3, sym_tuple_pattern, sym_list_pattern, sym_list_splat_pattern, - ACTIONS(306), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(685), 5, + ACTIONS(670), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1031), 6, + STATE(1032), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(724), 15, + STATE(725), 15, sym_binary_operator, sym_unary_operator, sym_call, @@ -24777,84 +24996,85 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [838] = 29, + [845] = 29, ACTIONS(3), 1, sym_comment, - ACTIONS(288), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(310), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(679), 1, + ACTIONS(668), 1, sym_identifier, - ACTIONS(681), 1, + ACTIONS(672), 1, anon_sym_LPAREN, - ACTIONS(683), 1, + ACTIONS(674), 1, anon_sym_STAR, - ACTIONS(687), 1, + ACTIONS(676), 1, anon_sym_LBRACK, - ACTIONS(691), 1, + ACTIONS(680), 1, anon_sym_not, - ACTIONS(693), 1, + ACTIONS(682), 1, anon_sym_lambda, - ACTIONS(695), 1, + ACTIONS(684), 1, anon_sym_yield, - ACTIONS(697), 1, + ACTIONS(686), 1, anon_sym_await, - ACTIONS(711), 1, + ACTIONS(716), 1, anon_sym_RBRACK, - STATE(621), 1, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, - STATE(725), 1, + STATE(726), 1, sym_primary_expression, - STATE(1081), 1, + STATE(1079), 1, sym_expression, - STATE(1356), 1, + STATE(1311), 1, sym_pattern, - STATE(1628), 1, + STATE(1675), 1, sym__patterns, - STATE(1656), 1, + STATE(1716), 1, sym__collection_elements, - ACTIONS(304), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - STATE(915), 2, + STATE(872), 2, sym_attribute, sym_subscript, - ACTIONS(601), 3, + ACTIONS(606), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(999), 3, + STATE(1001), 3, sym_tuple_pattern, sym_list_pattern, sym_list_splat_pattern, - STATE(1257), 3, + STATE(1290), 3, sym_list_splat, sym_parenthesized_list_splat, sym_yield, - ACTIONS(306), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(685), 5, + ACTIONS(670), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1031), 6, + STATE(1032), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(724), 15, + STATE(725), 15, sym_binary_operator, sym_unary_operator, sym_call, @@ -24870,81 +25090,82 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [960] = 29, + [968] = 29, ACTIONS(3), 1, sym_comment, - ACTIONS(53), 1, + ACTIONS(55), 1, anon_sym_STAR_STAR, - ACTIONS(288), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(310), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(659), 1, + ACTIONS(664), 1, anon_sym_LBRACK, - ACTIONS(695), 1, + ACTIONS(684), 1, anon_sym_yield, - ACTIONS(713), 1, + ACTIONS(718), 1, sym_identifier, - ACTIONS(715), 1, + ACTIONS(722), 1, anon_sym_LPAREN, - ACTIONS(717), 1, + ACTIONS(724), 1, anon_sym_COMMA, - ACTIONS(719), 1, + ACTIONS(726), 1, anon_sym_STAR, - ACTIONS(723), 1, + ACTIONS(728), 1, anon_sym_RBRACE, - ACTIONS(725), 1, + ACTIONS(730), 1, anon_sym_not, - ACTIONS(727), 1, + ACTIONS(732), 1, anon_sym_lambda, - ACTIONS(729), 1, + ACTIONS(734), 1, anon_sym_await, - STATE(621), 1, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, - STATE(772), 1, + STATE(780), 1, sym_primary_expression, - STATE(1046), 1, + STATE(1059), 1, sym_expression, - STATE(1212), 1, + STATE(1199), 1, sym_pair, - STATE(1490), 1, + STATE(1432), 1, sym_dictionary_splat, - STATE(1705), 1, + STATE(1638), 1, sym__collection_elements, - ACTIONS(304), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(657), 3, + ACTIONS(662), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1257), 3, + STATE(1290), 3, sym_list_splat, sym_parenthesized_list_splat, sym_yield, - ACTIONS(306), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(721), 5, + ACTIONS(720), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1031), 6, + STATE(1032), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(724), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -24962,81 +25183,82 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [1081] = 29, + [1090] = 29, ACTIONS(3), 1, sym_comment, - ACTIONS(53), 1, + ACTIONS(55), 1, anon_sym_STAR_STAR, - ACTIONS(288), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(310), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(659), 1, + ACTIONS(664), 1, anon_sym_LBRACK, - ACTIONS(695), 1, + ACTIONS(684), 1, anon_sym_yield, - ACTIONS(713), 1, + ACTIONS(718), 1, sym_identifier, - ACTIONS(715), 1, + ACTIONS(722), 1, anon_sym_LPAREN, - ACTIONS(719), 1, + ACTIONS(726), 1, anon_sym_STAR, - ACTIONS(725), 1, + ACTIONS(730), 1, anon_sym_not, - ACTIONS(727), 1, + ACTIONS(732), 1, anon_sym_lambda, - ACTIONS(729), 1, + ACTIONS(734), 1, anon_sym_await, - ACTIONS(731), 1, + ACTIONS(736), 1, anon_sym_COMMA, - ACTIONS(733), 1, + ACTIONS(738), 1, anon_sym_RBRACE, - STATE(621), 1, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, - STATE(772), 1, + STATE(780), 1, sym_primary_expression, - STATE(1061), 1, + STATE(1055), 1, sym_expression, - STATE(1190), 1, + STATE(1214), 1, sym_pair, - STATE(1403), 1, + STATE(1426), 1, sym_dictionary_splat, - STATE(1687), 1, + STATE(1616), 1, sym__collection_elements, - ACTIONS(304), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(657), 3, + ACTIONS(662), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1257), 3, + STATE(1290), 3, sym_list_splat, sym_parenthesized_list_splat, sym_yield, - ACTIONS(306), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(721), 5, + ACTIONS(720), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1031), 6, + STATE(1032), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(724), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -25054,81 +25276,82 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [1202] = 29, + [1212] = 29, ACTIONS(3), 1, sym_comment, - ACTIONS(53), 1, + ACTIONS(55), 1, anon_sym_STAR_STAR, - ACTIONS(288), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(310), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(659), 1, + ACTIONS(664), 1, anon_sym_LBRACK, - ACTIONS(695), 1, + ACTIONS(684), 1, anon_sym_yield, - ACTIONS(713), 1, + ACTIONS(718), 1, sym_identifier, - ACTIONS(715), 1, + ACTIONS(722), 1, anon_sym_LPAREN, - ACTIONS(719), 1, + ACTIONS(726), 1, anon_sym_STAR, - ACTIONS(725), 1, + ACTIONS(730), 1, anon_sym_not, - ACTIONS(727), 1, + ACTIONS(732), 1, anon_sym_lambda, - ACTIONS(729), 1, + ACTIONS(734), 1, anon_sym_await, - ACTIONS(735), 1, + ACTIONS(740), 1, anon_sym_COMMA, - ACTIONS(737), 1, + ACTIONS(742), 1, anon_sym_RBRACE, - STATE(621), 1, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, - STATE(772), 1, + STATE(780), 1, sym_primary_expression, - STATE(1060), 1, + STATE(1058), 1, sym_expression, - STATE(1170), 1, + STATE(1192), 1, sym_pair, - STATE(1410), 1, + STATE(1407), 1, sym_dictionary_splat, - STATE(1600), 1, + STATE(1708), 1, sym__collection_elements, - ACTIONS(304), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(657), 3, + ACTIONS(662), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1257), 3, + STATE(1290), 3, sym_list_splat, sym_parenthesized_list_splat, sym_yield, - ACTIONS(306), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(721), 5, + ACTIONS(720), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1031), 6, + STATE(1032), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(724), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -25146,81 +25369,82 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [1323] = 29, + [1334] = 29, ACTIONS(3), 1, sym_comment, - ACTIONS(53), 1, + ACTIONS(55), 1, anon_sym_STAR_STAR, - ACTIONS(288), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(310), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(659), 1, + ACTIONS(664), 1, anon_sym_LBRACK, - ACTIONS(695), 1, + ACTIONS(684), 1, anon_sym_yield, - ACTIONS(713), 1, + ACTIONS(718), 1, sym_identifier, - ACTIONS(715), 1, + ACTIONS(722), 1, anon_sym_LPAREN, - ACTIONS(719), 1, + ACTIONS(726), 1, anon_sym_STAR, - ACTIONS(725), 1, + ACTIONS(730), 1, anon_sym_not, - ACTIONS(727), 1, + ACTIONS(732), 1, anon_sym_lambda, - ACTIONS(729), 1, + ACTIONS(734), 1, anon_sym_await, - ACTIONS(739), 1, + ACTIONS(744), 1, anon_sym_COMMA, - ACTIONS(741), 1, + ACTIONS(746), 1, anon_sym_RBRACE, - STATE(621), 1, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, - STATE(772), 1, + STATE(780), 1, sym_primary_expression, - STATE(1034), 1, + STATE(1041), 1, sym_expression, - STATE(1198), 1, + STATE(1170), 1, sym_pair, - STATE(1425), 1, + STATE(1505), 1, sym_dictionary_splat, - STATE(1602), 1, + STATE(1684), 1, sym__collection_elements, - ACTIONS(304), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(657), 3, + ACTIONS(662), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1257), 3, + STATE(1290), 3, sym_list_splat, sym_parenthesized_list_splat, sym_yield, - ACTIONS(306), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(721), 5, + ACTIONS(720), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1031), 6, + STATE(1032), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(724), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -25238,77 +25462,78 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [1444] = 26, + [1456] = 26, ACTIONS(3), 1, sym_comment, - ACTIONS(53), 1, + ACTIONS(55), 1, anon_sym_STAR_STAR, - ACTIONS(263), 1, + ACTIONS(268), 1, sym_identifier, - ACTIONS(288), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(300), 1, + ACTIONS(305), 1, anon_sym_lambda, - ACTIONS(308), 1, + ACTIONS(313), 1, anon_sym_await, - ACTIONS(310), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(578), 1, + ACTIONS(575), 1, anon_sym_LPAREN, - ACTIONS(591), 1, + ACTIONS(586), 1, anon_sym_LBRACK, - ACTIONS(719), 1, + ACTIONS(726), 1, anon_sym_STAR, - ACTIONS(743), 1, + ACTIONS(748), 1, anon_sym_from, - ACTIONS(747), 1, + ACTIONS(752), 1, anon_sym_not, - STATE(621), 1, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, STATE(719), 1, sym_primary_expression, - STATE(1148), 1, + STATE(1144), 1, sym_expression, - STATE(1196), 1, + STATE(1186), 1, sym_expression_list, - ACTIONS(304), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - STATE(1510), 2, + STATE(1518), 2, sym_list_splat, sym_dictionary_splat, - ACTIONS(296), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(745), 4, + ACTIONS(750), 4, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_RBRACK, anon_sym_RBRACE, - ACTIONS(276), 5, + ACTIONS(270), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1031), 6, + STATE(1032), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(724), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -25326,77 +25551,78 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [1558] = 26, + [1571] = 26, ACTIONS(3), 1, sym_comment, - ACTIONS(53), 1, + ACTIONS(55), 1, anon_sym_STAR_STAR, - ACTIONS(609), 1, + ACTIONS(616), 1, anon_sym_LPAREN, - ACTIONS(617), 1, + ACTIONS(622), 1, anon_sym_LBRACK, - ACTIONS(619), 1, + ACTIONS(624), 1, anon_sym_LBRACE, - ACTIONS(625), 1, + ACTIONS(630), 1, sym__string_start, - ACTIONS(627), 1, + ACTIONS(632), 1, sym__template_string_start, - ACTIONS(719), 1, + ACTIONS(726), 1, anon_sym_STAR, - ACTIONS(749), 1, + ACTIONS(754), 1, sym_identifier, - ACTIONS(751), 1, + ACTIONS(758), 1, anon_sym_from, - ACTIONS(755), 1, + ACTIONS(760), 1, anon_sym_not, - ACTIONS(757), 1, + ACTIONS(762), 1, anon_sym_lambda, - ACTIONS(759), 1, + ACTIONS(764), 1, anon_sym_await, - STATE(766), 1, + STATE(763), 1, sym_primary_expression, - STATE(767), 1, + STATE(766), 1, sym_string, - STATE(768), 1, + STATE(776), 1, sym_template_string, - STATE(1093), 1, + STATE(1102), 1, sym_expression, - STATE(1196), 1, + STATE(1186), 1, sym_expression_list, - ACTIONS(621), 2, + ACTIONS(626), 2, sym_ellipsis, sym_float, - STATE(1567), 2, + STATE(1568), 2, sym_list_splat, sym_dictionary_splat, - ACTIONS(615), 3, + ACTIONS(620), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(607), 4, + ACTIONS(612), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(745), 4, + ACTIONS(750), 4, anon_sym_RBRACE, anon_sym_EQ, anon_sym_COLON2, sym_type_conversion, - ACTIONS(753), 5, + ACTIONS(756), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1129), 6, + STATE(1104), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(924), 17, + STATE(878), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -25414,74 +25640,75 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [1672] = 24, + [1686] = 24, ACTIONS(3), 1, sym_comment, - ACTIONS(53), 1, + ACTIONS(55), 1, anon_sym_STAR_STAR, - ACTIONS(263), 1, + ACTIONS(268), 1, sym_identifier, - ACTIONS(288), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(300), 1, + ACTIONS(305), 1, anon_sym_lambda, - ACTIONS(308), 1, + ACTIONS(313), 1, anon_sym_await, - ACTIONS(310), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(578), 1, + ACTIONS(575), 1, anon_sym_LPAREN, - ACTIONS(591), 1, + ACTIONS(586), 1, anon_sym_LBRACK, - ACTIONS(719), 1, + ACTIONS(726), 1, anon_sym_STAR, - ACTIONS(747), 1, + ACTIONS(752), 1, anon_sym_not, - STATE(621), 1, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, STATE(719), 1, sym_primary_expression, - STATE(1117), 1, + STATE(1153), 1, sym_expression, - ACTIONS(304), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - STATE(1267), 2, + STATE(1262), 2, sym_list_splat, sym_dictionary_splat, - ACTIONS(296), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(276), 5, - anon_sym_print, - anon_sym_async, - anon_sym_match, - anon_sym_exec, - anon_sym_type, - ACTIONS(761), 5, + ACTIONS(766), 5, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_COLON, anon_sym_RBRACK, anon_sym_RBRACE, - STATE(1031), 6, + ACTIONS(270), 6, + anon_sym_lazy, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(1032), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(724), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -25499,74 +25726,75 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [1781] = 24, + [1796] = 24, ACTIONS(3), 1, sym_comment, - ACTIONS(53), 1, + ACTIONS(55), 1, anon_sym_STAR_STAR, - ACTIONS(263), 1, + ACTIONS(268), 1, sym_identifier, - ACTIONS(288), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(300), 1, + ACTIONS(305), 1, anon_sym_lambda, - ACTIONS(308), 1, + ACTIONS(313), 1, anon_sym_await, - ACTIONS(310), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(578), 1, + ACTIONS(575), 1, anon_sym_LPAREN, - ACTIONS(591), 1, + ACTIONS(586), 1, anon_sym_LBRACK, - ACTIONS(719), 1, + ACTIONS(726), 1, anon_sym_STAR, - ACTIONS(747), 1, + ACTIONS(752), 1, anon_sym_not, - STATE(621), 1, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, STATE(719), 1, sym_primary_expression, - STATE(1117), 1, + STATE(1153), 1, sym_expression, - ACTIONS(304), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - STATE(1267), 2, + STATE(1262), 2, sym_list_splat, sym_dictionary_splat, - ACTIONS(296), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(276), 5, - anon_sym_print, - anon_sym_async, - anon_sym_match, - anon_sym_exec, - anon_sym_type, - ACTIONS(763), 5, + ACTIONS(768), 5, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_COLON, anon_sym_RBRACK, anon_sym_RBRACE, - STATE(1031), 6, + ACTIONS(270), 6, + anon_sym_lazy, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(1032), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(724), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -25584,74 +25812,75 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [1890] = 24, + [1906] = 24, ACTIONS(3), 1, sym_comment, - ACTIONS(53), 1, + ACTIONS(55), 1, anon_sym_STAR_STAR, - ACTIONS(263), 1, + ACTIONS(268), 1, sym_identifier, - ACTIONS(288), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(300), 1, + ACTIONS(305), 1, anon_sym_lambda, - ACTIONS(308), 1, + ACTIONS(313), 1, anon_sym_await, - ACTIONS(310), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(578), 1, + ACTIONS(575), 1, anon_sym_LPAREN, - ACTIONS(591), 1, + ACTIONS(586), 1, anon_sym_LBRACK, - ACTIONS(719), 1, + ACTIONS(726), 1, anon_sym_STAR, - ACTIONS(747), 1, + ACTIONS(752), 1, anon_sym_not, - STATE(621), 1, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, STATE(719), 1, sym_primary_expression, - STATE(1117), 1, + STATE(1153), 1, sym_expression, - ACTIONS(304), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - STATE(1267), 2, + STATE(1262), 2, sym_list_splat, sym_dictionary_splat, - ACTIONS(296), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(276), 5, - anon_sym_print, - anon_sym_async, - anon_sym_match, - anon_sym_exec, - anon_sym_type, - ACTIONS(763), 5, + ACTIONS(766), 5, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_COLON, anon_sym_RBRACK, anon_sym_RBRACE, - STATE(1031), 6, + ACTIONS(270), 6, + anon_sym_lazy, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(1032), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(724), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -25669,74 +25898,75 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [1999] = 25, + [2016] = 25, ACTIONS(3), 1, sym_comment, - ACTIONS(53), 1, + ACTIONS(55), 1, anon_sym_STAR_STAR, - ACTIONS(609), 1, + ACTIONS(616), 1, anon_sym_LPAREN, - ACTIONS(617), 1, + ACTIONS(622), 1, anon_sym_LBRACK, - ACTIONS(619), 1, + ACTIONS(624), 1, anon_sym_LBRACE, - ACTIONS(625), 1, + ACTIONS(630), 1, sym__string_start, - ACTIONS(627), 1, + ACTIONS(632), 1, sym__template_string_start, - ACTIONS(719), 1, + ACTIONS(726), 1, anon_sym_STAR, - ACTIONS(749), 1, + ACTIONS(754), 1, sym_identifier, - ACTIONS(755), 1, + ACTIONS(760), 1, anon_sym_not, - ACTIONS(757), 1, + ACTIONS(762), 1, anon_sym_lambda, - ACTIONS(759), 1, + ACTIONS(764), 1, anon_sym_await, - ACTIONS(765), 1, + ACTIONS(770), 1, anon_sym_yield, - STATE(766), 1, + STATE(763), 1, sym_primary_expression, - STATE(767), 1, + STATE(766), 1, sym_string, - STATE(768), 1, + STATE(776), 1, sym_template_string, - STATE(1095), 1, + STATE(1096), 1, sym_expression, - ACTIONS(621), 2, + ACTIONS(626), 2, sym_ellipsis, sym_float, - STATE(1567), 2, + STATE(1568), 2, sym_list_splat, sym_dictionary_splat, - ACTIONS(615), 3, + ACTIONS(620), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1265), 3, + STATE(1291), 3, sym_expression_list, sym_yield, sym__f_expression, - ACTIONS(607), 4, + ACTIONS(612), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(753), 5, + ACTIONS(756), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1129), 6, + STATE(1104), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(924), 17, + STATE(878), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -25754,75 +25984,163 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [2109] = 26, + [2127] = 26, ACTIONS(3), 1, sym_comment, - ACTIONS(51), 1, - anon_sym_LBRACE, - ACTIONS(53), 1, + ACTIONS(55), 1, anon_sym_STAR_STAR, - ACTIONS(69), 1, - anon_sym_not, - ACTIONS(71), 1, - anon_sym_lambda, - ACTIONS(81), 1, + ACTIONS(293), 1, + anon_sym_LBRACE, + ACTIONS(315), 1, sym__string_start, - ACTIONS(83), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(314), 1, - sym_identifier, - ACTIONS(320), 1, - anon_sym_await, - ACTIONS(568), 1, - anon_sym_LPAREN, - ACTIONS(574), 1, + ACTIONS(608), 1, anon_sym_LBRACK, - ACTIONS(719), 1, + ACTIONS(680), 1, + anon_sym_not, + ACTIONS(682), 1, + anon_sym_lambda, + ACTIONS(726), 1, anon_sym_STAR, - ACTIONS(767), 1, - anon_sym_from, - STATE(763), 1, + ACTIONS(772), 1, + sym_identifier, + ACTIONS(776), 1, + anon_sym_LPAREN, + ACTIONS(778), 1, + anon_sym_RPAREN, + ACTIONS(780), 1, + anon_sym_COMMA, + ACTIONS(782), 1, + anon_sym_await, + STATE(645), 1, + sym_string, + STATE(658), 1, sym_template_string, - STATE(779), 1, + STATE(726), 1, sym_primary_expression, - STATE(782), 1, - sym_string, - STATE(1202), 1, + STATE(1075), 1, sym_expression, - STATE(1537), 1, - sym_expression_list, - ACTIONS(75), 2, + STATE(1440), 1, + sym_parenthesized_list_splat, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(745), 2, - sym__newline, - anon_sym_SEMI, - STATE(1549), 2, + ACTIONS(606), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + STATE(1439), 3, sym_list_splat, sym_dictionary_splat, - ACTIONS(47), 3, + sym_keyword_argument, + ACTIONS(311), 4, + sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(774), 6, + anon_sym_lazy, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(1032), 6, + sym_named_expression, + sym_not_operator, + sym_boolean_operator, + sym_comparison_operator, + sym_lambda, + sym_conditional_expression, + STATE(725), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [2240] = 26, + ACTIONS(3), 1, + sym_comment, + ACTIONS(55), 1, + anon_sym_STAR_STAR, + ACTIONS(293), 1, + anon_sym_LBRACE, + ACTIONS(315), 1, + sym__string_start, + ACTIONS(317), 1, + sym__template_string_start, + ACTIONS(608), 1, + anon_sym_LBRACK, + ACTIONS(680), 1, + anon_sym_not, + ACTIONS(682), 1, + anon_sym_lambda, + ACTIONS(726), 1, + anon_sym_STAR, + ACTIONS(772), 1, + sym_identifier, + ACTIONS(776), 1, + anon_sym_LPAREN, + ACTIONS(782), 1, + anon_sym_await, + ACTIONS(784), 1, + anon_sym_RPAREN, + ACTIONS(786), 1, + anon_sym_COMMA, + STATE(645), 1, + sym_string, + STATE(658), 1, + sym_template_string, + STATE(726), 1, + sym_primary_expression, + STATE(1064), 1, + sym_expression, + STATE(1402), 1, + sym_parenthesized_list_splat, + ACTIONS(309), 2, + sym_ellipsis, + sym_float, + ACTIONS(606), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(77), 4, + STATE(1384), 3, + sym_list_splat, + sym_dictionary_splat, + sym_keyword_argument, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(316), 5, + ACTIONS(774), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1158), 6, + STATE(1032), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(908), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -25840,73 +26158,74 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [2221] = 24, + [2353] = 24, ACTIONS(3), 1, sym_comment, - ACTIONS(263), 1, + ACTIONS(268), 1, sym_identifier, - ACTIONS(288), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(300), 1, + ACTIONS(305), 1, anon_sym_lambda, - ACTIONS(308), 1, + ACTIONS(313), 1, anon_sym_await, - ACTIONS(310), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(591), 1, + ACTIONS(586), 1, anon_sym_LBRACK, - ACTIONS(695), 1, + ACTIONS(684), 1, anon_sym_yield, - ACTIONS(747), 1, + ACTIONS(752), 1, anon_sym_not, - ACTIONS(769), 1, + ACTIONS(788), 1, anon_sym_LPAREN, - ACTIONS(773), 1, + ACTIONS(792), 1, anon_sym_STAR, - STATE(621), 1, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, STATE(719), 1, sym_primary_expression, - STATE(1174), 1, + STATE(1193), 1, sym_expression, - ACTIONS(304), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(296), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(771), 3, + ACTIONS(790), 3, anon_sym_RPAREN, anon_sym_RBRACK, anon_sym_RBRACE, - STATE(1315), 3, + STATE(1348), 3, sym_list_splat, sym_parenthesized_list_splat, sym_yield, - ACTIONS(306), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(276), 5, + ACTIONS(270), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1031), 6, + STATE(1032), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(724), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -25924,75 +26243,163 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [2329] = 26, + [2462] = 26, ACTIONS(3), 1, sym_comment, ACTIONS(53), 1, - anon_sym_STAR_STAR, - ACTIONS(288), 1, anon_sym_LBRACE, - ACTIONS(310), 1, + ACTIONS(55), 1, + anon_sym_STAR_STAR, + ACTIONS(71), 1, + anon_sym_not, + ACTIONS(73), 1, + anon_sym_lambda, + ACTIONS(83), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(85), 1, sym__template_string_start, - ACTIONS(603), 1, + ACTIONS(349), 1, + sym_identifier, + ACTIONS(355), 1, + anon_sym_await, + ACTIONS(594), 1, + anon_sym_LPAREN, + ACTIONS(598), 1, anon_sym_LBRACK, - ACTIONS(691), 1, + ACTIONS(726), 1, + anon_sym_STAR, + ACTIONS(794), 1, + anon_sym_from, + STATE(765), 1, + sym_primary_expression, + STATE(769), 1, + sym_template_string, + STATE(775), 1, + sym_string, + STATE(1195), 1, + sym_expression, + STATE(1533), 1, + sym_expression_list, + ACTIONS(77), 2, + sym_ellipsis, + sym_float, + ACTIONS(750), 2, + sym__newline, + anon_sym_SEMI, + STATE(1520), 2, + sym_list_splat, + sym_dictionary_splat, + ACTIONS(49), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(79), 4, + sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(351), 6, + anon_sym_lazy, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(1156), 6, + sym_named_expression, + sym_not_operator, + sym_boolean_operator, + sym_comparison_operator, + sym_lambda, + sym_conditional_expression, + STATE(920), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [2575] = 26, + ACTIONS(3), 1, + sym_comment, + ACTIONS(53), 1, + anon_sym_LBRACE, + ACTIONS(55), 1, + anon_sym_STAR_STAR, + ACTIONS(71), 1, anon_sym_not, - ACTIONS(693), 1, + ACTIONS(73), 1, anon_sym_lambda, - ACTIONS(719), 1, - anon_sym_STAR, - ACTIONS(775), 1, + ACTIONS(83), 1, + sym__string_start, + ACTIONS(85), 1, + sym__template_string_start, + ACTIONS(349), 1, sym_identifier, - ACTIONS(777), 1, - anon_sym_LPAREN, - ACTIONS(779), 1, - anon_sym_RPAREN, - ACTIONS(781), 1, - anon_sym_COMMA, - ACTIONS(785), 1, + ACTIONS(355), 1, anon_sym_await, - STATE(621), 1, - sym_string, - STATE(624), 1, - sym_template_string, - STATE(725), 1, + ACTIONS(594), 1, + anon_sym_LPAREN, + ACTIONS(598), 1, + anon_sym_LBRACK, + ACTIONS(726), 1, + anon_sym_STAR, + ACTIONS(796), 1, + anon_sym_from, + STATE(765), 1, sym_primary_expression, - STATE(1076), 1, + STATE(769), 1, + sym_template_string, + STATE(775), 1, + sym_string, + STATE(1134), 1, sym_expression, - STATE(1388), 1, - sym_parenthesized_list_splat, - ACTIONS(304), 2, + STATE(1458), 1, + sym_expression_list, + ACTIONS(77), 2, sym_ellipsis, sym_float, - ACTIONS(601), 3, + ACTIONS(798), 2, + sym__newline, + anon_sym_SEMI, + STATE(1520), 2, + sym_list_splat, + sym_dictionary_splat, + ACTIONS(49), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1387), 3, - sym_list_splat, - sym_dictionary_splat, - sym_keyword_argument, - ACTIONS(306), 4, + ACTIONS(79), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(783), 5, + ACTIONS(351), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1031), 6, + STATE(1156), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(724), 17, + STATE(920), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -26010,75 +26417,76 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [2441] = 26, + [2688] = 26, ACTIONS(3), 1, sym_comment, - ACTIONS(53), 1, + ACTIONS(55), 1, anon_sym_STAR_STAR, - ACTIONS(288), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(300), 1, + ACTIONS(305), 1, anon_sym_lambda, - ACTIONS(310), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(591), 1, + ACTIONS(586), 1, anon_sym_LBRACK, - ACTIONS(719), 1, + ACTIONS(726), 1, anon_sym_STAR, - ACTIONS(747), 1, + ACTIONS(752), 1, anon_sym_not, - ACTIONS(769), 1, + ACTIONS(788), 1, anon_sym_LPAREN, - ACTIONS(787), 1, + ACTIONS(800), 1, sym_identifier, - ACTIONS(789), 1, + ACTIONS(804), 1, anon_sym_RPAREN, - ACTIONS(791), 1, + ACTIONS(806), 1, anon_sym_COMMA, - ACTIONS(795), 1, + ACTIONS(808), 1, anon_sym_await, - STATE(621), 1, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, STATE(719), 1, sym_primary_expression, - STATE(1225), 1, + STATE(1232), 1, sym_expression, - STATE(1398), 1, + STATE(1393), 1, sym_parenthesized_list_splat, - ACTIONS(304), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(296), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1397), 3, + STATE(1387), 3, sym_list_splat, sym_dictionary_splat, sym_keyword_argument, - ACTIONS(306), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(793), 5, + ACTIONS(802), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1031), 6, + STATE(1032), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(724), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -26096,73 +26504,75 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [2553] = 24, + [2801] = 25, ACTIONS(3), 1, sym_comment, - ACTIONS(609), 1, + ACTIONS(55), 1, + anon_sym_STAR_STAR, + ACTIONS(616), 1, anon_sym_LPAREN, - ACTIONS(617), 1, + ACTIONS(622), 1, anon_sym_LBRACK, - ACTIONS(619), 1, + ACTIONS(624), 1, anon_sym_LBRACE, - ACTIONS(625), 1, + ACTIONS(630), 1, sym__string_start, - ACTIONS(627), 1, + ACTIONS(632), 1, sym__template_string_start, - ACTIONS(749), 1, + ACTIONS(726), 1, + anon_sym_STAR, + ACTIONS(754), 1, sym_identifier, - ACTIONS(755), 1, + ACTIONS(760), 1, anon_sym_not, - ACTIONS(757), 1, + ACTIONS(762), 1, anon_sym_lambda, - ACTIONS(759), 1, + ACTIONS(764), 1, anon_sym_await, - ACTIONS(797), 1, - anon_sym_STAR, - ACTIONS(799), 1, - anon_sym_STAR_STAR, - STATE(766), 1, + ACTIONS(770), 1, + anon_sym_yield, + STATE(763), 1, sym_primary_expression, - STATE(767), 1, + STATE(766), 1, sym_string, - STATE(768), 1, + STATE(776), 1, sym_template_string, - STATE(1164), 1, + STATE(1096), 1, sym_expression, - ACTIONS(621), 2, + ACTIONS(626), 2, sym_ellipsis, sym_float, - STATE(1273), 2, + STATE(1568), 2, sym_list_splat, sym_dictionary_splat, - ACTIONS(615), 3, + ACTIONS(620), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(607), 4, + STATE(1269), 3, + sym_expression_list, + sym_yield, + sym__f_expression, + ACTIONS(612), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(761), 4, - anon_sym_RBRACE, - anon_sym_EQ, - anon_sym_COLON2, - sym_type_conversion, - ACTIONS(753), 5, + ACTIONS(756), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1129), 6, + STATE(1104), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(924), 17, + STATE(878), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -26180,73 +26590,74 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [2661] = 24, + [2912] = 24, ACTIONS(3), 1, sym_comment, - ACTIONS(609), 1, + ACTIONS(616), 1, anon_sym_LPAREN, - ACTIONS(617), 1, + ACTIONS(622), 1, anon_sym_LBRACK, - ACTIONS(619), 1, + ACTIONS(624), 1, anon_sym_LBRACE, - ACTIONS(625), 1, + ACTIONS(630), 1, sym__string_start, - ACTIONS(627), 1, + ACTIONS(632), 1, sym__template_string_start, - ACTIONS(749), 1, + ACTIONS(754), 1, sym_identifier, - ACTIONS(755), 1, + ACTIONS(760), 1, anon_sym_not, - ACTIONS(757), 1, + ACTIONS(762), 1, anon_sym_lambda, - ACTIONS(759), 1, + ACTIONS(764), 1, anon_sym_await, - ACTIONS(797), 1, + ACTIONS(810), 1, anon_sym_STAR, - ACTIONS(799), 1, + ACTIONS(812), 1, anon_sym_STAR_STAR, - STATE(766), 1, + STATE(763), 1, sym_primary_expression, - STATE(767), 1, + STATE(766), 1, sym_string, - STATE(768), 1, + STATE(776), 1, sym_template_string, - STATE(1164), 1, + STATE(1154), 1, sym_expression, - ACTIONS(621), 2, + ACTIONS(626), 2, sym_ellipsis, sym_float, - STATE(1273), 2, + STATE(1266), 2, sym_list_splat, sym_dictionary_splat, - ACTIONS(615), 3, + ACTIONS(620), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(607), 4, + ACTIONS(612), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(763), 4, + ACTIONS(768), 4, anon_sym_RBRACE, anon_sym_EQ, anon_sym_COLON2, sym_type_conversion, - ACTIONS(753), 5, + ACTIONS(756), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1129), 6, + STATE(1104), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(924), 17, + STATE(878), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -26264,73 +26675,74 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [2769] = 24, + [3021] = 24, ACTIONS(3), 1, sym_comment, - ACTIONS(609), 1, + ACTIONS(616), 1, anon_sym_LPAREN, - ACTIONS(617), 1, + ACTIONS(622), 1, anon_sym_LBRACK, - ACTIONS(619), 1, + ACTIONS(624), 1, anon_sym_LBRACE, - ACTIONS(625), 1, + ACTIONS(630), 1, sym__string_start, - ACTIONS(627), 1, + ACTIONS(632), 1, sym__template_string_start, - ACTIONS(749), 1, + ACTIONS(754), 1, sym_identifier, - ACTIONS(755), 1, + ACTIONS(760), 1, anon_sym_not, - ACTIONS(757), 1, + ACTIONS(762), 1, anon_sym_lambda, - ACTIONS(759), 1, + ACTIONS(764), 1, anon_sym_await, - ACTIONS(797), 1, + ACTIONS(810), 1, anon_sym_STAR, - ACTIONS(799), 1, + ACTIONS(812), 1, anon_sym_STAR_STAR, - STATE(766), 1, + STATE(763), 1, sym_primary_expression, - STATE(767), 1, + STATE(766), 1, sym_string, - STATE(768), 1, + STATE(776), 1, sym_template_string, - STATE(1164), 1, + STATE(1154), 1, sym_expression, - ACTIONS(621), 2, + ACTIONS(626), 2, sym_ellipsis, sym_float, - STATE(1273), 2, + STATE(1266), 2, sym_list_splat, sym_dictionary_splat, - ACTIONS(615), 3, + ACTIONS(620), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(607), 4, + ACTIONS(612), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(763), 4, + ACTIONS(766), 4, anon_sym_RBRACE, anon_sym_EQ, anon_sym_COLON2, sym_type_conversion, - ACTIONS(753), 5, + ACTIONS(756), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1129), 6, + STATE(1104), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(924), 17, + STATE(878), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -26348,74 +26760,74 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [2877] = 25, + [3130] = 24, ACTIONS(3), 1, sym_comment, - ACTIONS(53), 1, - anon_sym_STAR_STAR, - ACTIONS(609), 1, + ACTIONS(616), 1, anon_sym_LPAREN, - ACTIONS(617), 1, + ACTIONS(622), 1, anon_sym_LBRACK, - ACTIONS(619), 1, + ACTIONS(624), 1, anon_sym_LBRACE, - ACTIONS(625), 1, + ACTIONS(630), 1, sym__string_start, - ACTIONS(627), 1, + ACTIONS(632), 1, sym__template_string_start, - ACTIONS(719), 1, - anon_sym_STAR, - ACTIONS(749), 1, + ACTIONS(754), 1, sym_identifier, - ACTIONS(755), 1, + ACTIONS(760), 1, anon_sym_not, - ACTIONS(757), 1, + ACTIONS(762), 1, anon_sym_lambda, - ACTIONS(759), 1, + ACTIONS(764), 1, anon_sym_await, - ACTIONS(765), 1, - anon_sym_yield, - STATE(766), 1, + ACTIONS(810), 1, + anon_sym_STAR, + ACTIONS(812), 1, + anon_sym_STAR_STAR, + STATE(763), 1, sym_primary_expression, - STATE(767), 1, + STATE(766), 1, sym_string, - STATE(768), 1, + STATE(776), 1, sym_template_string, - STATE(1095), 1, + STATE(1154), 1, sym_expression, - ACTIONS(621), 2, + ACTIONS(626), 2, sym_ellipsis, sym_float, - STATE(1567), 2, + STATE(1266), 2, sym_list_splat, sym_dictionary_splat, - ACTIONS(615), 3, + ACTIONS(620), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1287), 3, - sym_expression_list, - sym_yield, - sym__f_expression, - ACTIONS(607), 4, + ACTIONS(612), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(753), 5, + ACTIONS(766), 4, + anon_sym_RBRACE, + anon_sym_EQ, + anon_sym_COLON2, + sym_type_conversion, + ACTIONS(756), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1129), 6, + STATE(1104), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(924), 17, + STATE(878), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -26433,162 +26845,74 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [2987] = 26, + [3239] = 24, ACTIONS(3), 1, sym_comment, - ACTIONS(53), 1, - anon_sym_STAR_STAR, - ACTIONS(288), 1, + ACTIONS(268), 1, + sym_identifier, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(310), 1, + ACTIONS(305), 1, + anon_sym_lambda, + ACTIONS(313), 1, + anon_sym_await, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(603), 1, + ACTIONS(586), 1, anon_sym_LBRACK, - ACTIONS(691), 1, + ACTIONS(684), 1, + anon_sym_yield, + ACTIONS(752), 1, anon_sym_not, - ACTIONS(693), 1, - anon_sym_lambda, - ACTIONS(719), 1, - anon_sym_STAR, - ACTIONS(775), 1, - sym_identifier, - ACTIONS(777), 1, + ACTIONS(788), 1, anon_sym_LPAREN, - ACTIONS(785), 1, - anon_sym_await, - ACTIONS(789), 1, - anon_sym_RPAREN, - ACTIONS(791), 1, - anon_sym_COMMA, - STATE(621), 1, + ACTIONS(792), 1, + anon_sym_STAR, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, - STATE(725), 1, + STATE(719), 1, sym_primary_expression, - STATE(1067), 1, + STATE(1193), 1, sym_expression, - STATE(1398), 1, - sym_parenthesized_list_splat, - ACTIONS(304), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(601), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1397), 3, - sym_list_splat, - sym_dictionary_splat, - sym_keyword_argument, - ACTIONS(306), 4, - sym_integer, - sym_true, - sym_false, - sym_none, - ACTIONS(783), 5, - anon_sym_print, - anon_sym_async, - anon_sym_match, - anon_sym_exec, - anon_sym_type, - STATE(1031), 6, - sym_named_expression, - sym_not_operator, - sym_boolean_operator, - sym_comparison_operator, - sym_lambda, - sym_conditional_expression, - STATE(724), 17, - sym_binary_operator, - sym_unary_operator, - sym_attribute, - sym_subscript, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [3099] = 27, - ACTIONS(3), 1, - sym_comment, - ACTIONS(288), 1, - anon_sym_LBRACE, - ACTIONS(310), 1, - sym__string_start, - ACTIONS(312), 1, - sym__template_string_start, - ACTIONS(603), 1, - anon_sym_LBRACK, - ACTIONS(691), 1, - anon_sym_not, - ACTIONS(693), 1, - anon_sym_lambda, - ACTIONS(695), 1, - anon_sym_yield, - ACTIONS(773), 1, - anon_sym_STAR, - ACTIONS(777), 1, - anon_sym_LPAREN, - ACTIONS(801), 1, - sym_identifier, - ACTIONS(803), 1, + ACTIONS(814), 3, anon_sym_RPAREN, - ACTIONS(807), 1, - anon_sym_await, - STATE(621), 1, - sym_string, - STATE(624), 1, - sym_template_string, - STATE(725), 1, - sym_primary_expression, - STATE(1041), 1, - sym_expression, - STATE(1400), 1, - sym_yield, - STATE(1439), 1, - sym_with_item, - STATE(1675), 1, - sym__collection_elements, - ACTIONS(304), 2, - sym_ellipsis, - sym_float, - STATE(1257), 2, + anon_sym_RBRACK, + anon_sym_RBRACE, + STATE(1348), 3, sym_list_splat, sym_parenthesized_list_splat, - ACTIONS(601), 3, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_TILDE, - ACTIONS(306), 4, + sym_yield, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(805), 5, + ACTIONS(270), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1031), 6, + STATE(1032), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(724), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -26606,75 +26930,74 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [3213] = 26, + [3348] = 24, ACTIONS(3), 1, sym_comment, - ACTIONS(51), 1, + ACTIONS(268), 1, + sym_identifier, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(53), 1, - anon_sym_STAR_STAR, - ACTIONS(69), 1, - anon_sym_not, - ACTIONS(71), 1, + ACTIONS(305), 1, anon_sym_lambda, - ACTIONS(81), 1, + ACTIONS(313), 1, + anon_sym_await, + ACTIONS(315), 1, sym__string_start, - ACTIONS(83), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(314), 1, - sym_identifier, - ACTIONS(320), 1, - anon_sym_await, - ACTIONS(568), 1, - anon_sym_LPAREN, - ACTIONS(574), 1, + ACTIONS(586), 1, anon_sym_LBRACK, - ACTIONS(719), 1, + ACTIONS(684), 1, + anon_sym_yield, + ACTIONS(752), 1, + anon_sym_not, + ACTIONS(788), 1, + anon_sym_LPAREN, + ACTIONS(792), 1, anon_sym_STAR, - ACTIONS(809), 1, - anon_sym_from, - STATE(763), 1, + STATE(645), 1, + sym_string, + STATE(658), 1, sym_template_string, - STATE(779), 1, + STATE(719), 1, sym_primary_expression, - STATE(782), 1, - sym_string, - STATE(1122), 1, + STATE(1193), 1, sym_expression, - STATE(1475), 1, - sym_expression_list, - ACTIONS(75), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(811), 2, - sym__newline, - anon_sym_SEMI, - STATE(1549), 2, - sym_list_splat, - sym_dictionary_splat, - ACTIONS(47), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(77), 4, + ACTIONS(814), 3, + anon_sym_RPAREN, + anon_sym_RBRACK, + anon_sym_RBRACE, + STATE(1348), 3, + sym_list_splat, + sym_parenthesized_list_splat, + sym_yield, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(316), 5, + ACTIONS(270), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1158), 6, + STATE(1032), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(908), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -26692,73 +27015,76 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [3325] = 24, + [3457] = 26, ACTIONS(3), 1, sym_comment, - ACTIONS(263), 1, - sym_identifier, - ACTIONS(288), 1, + ACTIONS(55), 1, + anon_sym_STAR_STAR, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(300), 1, - anon_sym_lambda, - ACTIONS(308), 1, - anon_sym_await, - ACTIONS(310), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(591), 1, + ACTIONS(608), 1, anon_sym_LBRACK, - ACTIONS(695), 1, - anon_sym_yield, - ACTIONS(747), 1, + ACTIONS(680), 1, anon_sym_not, - ACTIONS(769), 1, - anon_sym_LPAREN, - ACTIONS(773), 1, + ACTIONS(682), 1, + anon_sym_lambda, + ACTIONS(726), 1, anon_sym_STAR, - STATE(621), 1, + ACTIONS(772), 1, + sym_identifier, + ACTIONS(776), 1, + anon_sym_LPAREN, + ACTIONS(782), 1, + anon_sym_await, + ACTIONS(804), 1, + anon_sym_RPAREN, + ACTIONS(806), 1, + anon_sym_COMMA, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, - STATE(719), 1, + STATE(726), 1, sym_primary_expression, - STATE(1174), 1, + STATE(1087), 1, sym_expression, - ACTIONS(304), 2, + STATE(1393), 1, + sym_parenthesized_list_splat, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(296), 3, + ACTIONS(606), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(813), 3, - anon_sym_RPAREN, - anon_sym_RBRACK, - anon_sym_RBRACE, - STATE(1315), 3, + STATE(1387), 3, sym_list_splat, - sym_parenthesized_list_splat, - sym_yield, - ACTIONS(306), 4, + sym_dictionary_splat, + sym_keyword_argument, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(276), 5, + ACTIONS(774), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1031), 6, + STATE(1032), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(724), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -26776,73 +27102,77 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [3433] = 24, + [3570] = 27, ACTIONS(3), 1, sym_comment, - ACTIONS(263), 1, - sym_identifier, - ACTIONS(288), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(300), 1, - anon_sym_lambda, - ACTIONS(308), 1, - anon_sym_await, - ACTIONS(310), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(591), 1, + ACTIONS(608), 1, anon_sym_LBRACK, - ACTIONS(695), 1, - anon_sym_yield, - ACTIONS(747), 1, + ACTIONS(680), 1, anon_sym_not, - ACTIONS(769), 1, + ACTIONS(682), 1, + anon_sym_lambda, + ACTIONS(684), 1, + anon_sym_yield, + ACTIONS(776), 1, anon_sym_LPAREN, - ACTIONS(773), 1, + ACTIONS(792), 1, anon_sym_STAR, - STATE(621), 1, + ACTIONS(816), 1, + sym_identifier, + ACTIONS(820), 1, + anon_sym_RPAREN, + ACTIONS(822), 1, + anon_sym_await, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, - STATE(719), 1, + STATE(726), 1, sym_primary_expression, - STATE(1174), 1, + STATE(1057), 1, sym_expression, - ACTIONS(304), 2, + STATE(1404), 1, + sym_yield, + STATE(1484), 1, + sym_with_item, + STATE(1687), 1, + sym__collection_elements, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(296), 3, + STATE(1290), 2, + sym_list_splat, + sym_parenthesized_list_splat, + ACTIONS(606), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(813), 3, - anon_sym_RPAREN, - anon_sym_RBRACK, - anon_sym_RBRACE, - STATE(1315), 3, - sym_list_splat, - sym_parenthesized_list_splat, - sym_yield, - ACTIONS(306), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(276), 5, + ACTIONS(818), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1031), 6, + STATE(1032), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(724), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -26860,75 +27190,76 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [3541] = 26, + [3685] = 26, ACTIONS(3), 1, sym_comment, - ACTIONS(53), 1, + ACTIONS(55), 1, anon_sym_STAR_STAR, - ACTIONS(288), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(310), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(603), 1, + ACTIONS(608), 1, anon_sym_LBRACK, - ACTIONS(691), 1, + ACTIONS(680), 1, anon_sym_not, - ACTIONS(693), 1, + ACTIONS(682), 1, anon_sym_lambda, - ACTIONS(719), 1, + ACTIONS(726), 1, anon_sym_STAR, - ACTIONS(775), 1, + ACTIONS(772), 1, sym_identifier, - ACTIONS(777), 1, + ACTIONS(776), 1, anon_sym_LPAREN, - ACTIONS(785), 1, + ACTIONS(782), 1, anon_sym_await, - ACTIONS(815), 1, + ACTIONS(824), 1, anon_sym_RPAREN, - ACTIONS(817), 1, + ACTIONS(826), 1, anon_sym_COMMA, - STATE(621), 1, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, - STATE(725), 1, + STATE(726), 1, sym_primary_expression, - STATE(1075), 1, + STATE(1071), 1, sym_expression, - STATE(1412), 1, + STATE(1416), 1, sym_parenthesized_list_splat, - ACTIONS(304), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(601), 3, + ACTIONS(606), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1411), 3, + STATE(1415), 3, sym_list_splat, sym_dictionary_splat, sym_keyword_argument, - ACTIONS(306), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(783), 5, + ACTIONS(774), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1031), 6, + STATE(1032), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(724), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -26946,75 +27277,74 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [3653] = 26, + [3798] = 25, ACTIONS(3), 1, sym_comment, - ACTIONS(53), 1, + ACTIONS(55), 1, anon_sym_STAR_STAR, - ACTIONS(288), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(310), 1, + ACTIONS(305), 1, + anon_sym_lambda, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(603), 1, + ACTIONS(586), 1, anon_sym_LBRACK, - ACTIONS(691), 1, - anon_sym_not, - ACTIONS(693), 1, - anon_sym_lambda, - ACTIONS(719), 1, + ACTIONS(726), 1, anon_sym_STAR, - ACTIONS(775), 1, - sym_identifier, - ACTIONS(777), 1, + ACTIONS(752), 1, + anon_sym_not, + ACTIONS(788), 1, anon_sym_LPAREN, - ACTIONS(785), 1, + ACTIONS(800), 1, + sym_identifier, + ACTIONS(808), 1, anon_sym_await, - ACTIONS(819), 1, + ACTIONS(828), 1, anon_sym_RPAREN, - ACTIONS(821), 1, - anon_sym_COMMA, - STATE(621), 1, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, - STATE(725), 1, + STATE(719), 1, sym_primary_expression, - STATE(1080), 1, + STATE(1280), 1, sym_expression, - STATE(1430), 1, + STATE(1524), 1, sym_parenthesized_list_splat, - ACTIONS(304), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(601), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1429), 3, + STATE(1567), 3, sym_list_splat, sym_dictionary_splat, sym_keyword_argument, - ACTIONS(306), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(783), 5, + ACTIONS(802), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1031), 6, + STATE(1032), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(724), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -27032,73 +27362,72 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [3765] = 25, + [3908] = 23, ACTIONS(3), 1, sym_comment, - ACTIONS(53), 1, - anon_sym_STAR_STAR, - ACTIONS(288), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(300), 1, - anon_sym_lambda, - ACTIONS(310), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(591), 1, + ACTIONS(602), 1, + anon_sym_LPAREN, + ACTIONS(608), 1, anon_sym_LBRACK, - ACTIONS(719), 1, - anon_sym_STAR, - ACTIONS(747), 1, + ACTIONS(680), 1, anon_sym_not, - ACTIONS(769), 1, - anon_sym_LPAREN, - ACTIONS(787), 1, + ACTIONS(816), 1, sym_identifier, - ACTIONS(795), 1, + ACTIONS(822), 1, anon_sym_await, - ACTIONS(823), 1, - anon_sym_RPAREN, - STATE(621), 1, + ACTIONS(834), 1, + anon_sym_lambda, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, - STATE(719), 1, + STATE(726), 1, sym_primary_expression, - STATE(1261), 1, + STATE(1092), 1, sym_expression, - STATE(1577), 1, - sym_parenthesized_list_splat, - ACTIONS(304), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(296), 3, + STATE(1173), 2, + sym__expression_within_for_in_clause, + sym_lambda_within_for_in_clause, + ACTIONS(606), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1570), 3, - sym_list_splat, - sym_dictionary_splat, - sym_keyword_argument, - ACTIONS(306), 4, + ACTIONS(830), 3, + anon_sym_RPAREN, + anon_sym_RBRACK, + anon_sym_RBRACE, + ACTIONS(832), 3, + anon_sym_if, + anon_sym_async, + anon_sym_for, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(793), 5, + ACTIONS(818), 5, + anon_sym_lazy, anon_sym_print, - anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1031), 6, + STATE(1032), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(724), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -27116,71 +27445,74 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [3874] = 23, + [4014] = 25, ACTIONS(3), 1, sym_comment, - ACTIONS(288), 1, + ACTIONS(53), 1, anon_sym_LBRACE, - ACTIONS(310), 1, + ACTIONS(71), 1, + anon_sym_not, + ACTIONS(73), 1, + anon_sym_lambda, + ACTIONS(83), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(85), 1, sym__template_string_start, - ACTIONS(597), 1, - anon_sym_LPAREN, - ACTIONS(603), 1, - anon_sym_LBRACK, - ACTIONS(691), 1, - anon_sym_not, - ACTIONS(801), 1, + ACTIONS(349), 1, sym_identifier, - ACTIONS(807), 1, + ACTIONS(355), 1, anon_sym_await, - ACTIONS(829), 1, - anon_sym_lambda, - STATE(621), 1, - sym_string, - STATE(624), 1, - sym_template_string, - STATE(725), 1, + ACTIONS(594), 1, + anon_sym_LPAREN, + ACTIONS(598), 1, + anon_sym_LBRACK, + ACTIONS(836), 1, + anon_sym_from, + ACTIONS(838), 1, + anon_sym_STAR, + ACTIONS(840), 1, + anon_sym_STAR_STAR, + STATE(765), 1, sym_primary_expression, - STATE(1094), 1, + STATE(769), 1, + sym_template_string, + STATE(775), 1, + sym_string, + STATE(1212), 1, sym_expression, - ACTIONS(304), 2, + ACTIONS(77), 2, sym_ellipsis, sym_float, - STATE(1211), 2, - sym__expression_within_for_in_clause, - sym_lambda_within_for_in_clause, - ACTIONS(601), 3, + ACTIONS(768), 2, + sym__newline, + anon_sym_SEMI, + STATE(1317), 2, + sym_list_splat, + sym_dictionary_splat, + ACTIONS(49), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(825), 3, - anon_sym_RPAREN, - anon_sym_RBRACK, - anon_sym_RBRACE, - ACTIONS(827), 3, - anon_sym_if, - anon_sym_async, - anon_sym_for, - ACTIONS(306), 4, + ACTIONS(79), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(805), 4, + ACTIONS(351), 6, + anon_sym_lazy, anon_sym_print, + anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1031), 6, + STATE(1156), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(724), 17, + STATE(920), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -27198,73 +27530,159 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [3979] = 25, + [4124] = 25, ACTIONS(3), 1, sym_comment, - ACTIONS(51), 1, + ACTIONS(53), 1, anon_sym_LBRACE, - ACTIONS(69), 1, - anon_sym_not, ACTIONS(71), 1, + anon_sym_not, + ACTIONS(73), 1, anon_sym_lambda, - ACTIONS(81), 1, - sym__string_start, ACTIONS(83), 1, + sym__string_start, + ACTIONS(85), 1, sym__template_string_start, - ACTIONS(314), 1, + ACTIONS(349), 1, sym_identifier, - ACTIONS(320), 1, + ACTIONS(355), 1, anon_sym_await, - ACTIONS(568), 1, + ACTIONS(594), 1, anon_sym_LPAREN, - ACTIONS(574), 1, + ACTIONS(598), 1, anon_sym_LBRACK, - ACTIONS(831), 1, - anon_sym_from, - ACTIONS(833), 1, + ACTIONS(838), 1, anon_sym_STAR, - ACTIONS(835), 1, + ACTIONS(840), 1, anon_sym_STAR_STAR, - STATE(763), 1, + ACTIONS(842), 1, + anon_sym_from, + STATE(765), 1, + sym_primary_expression, + STATE(769), 1, sym_template_string, - STATE(779), 1, + STATE(775), 1, + sym_string, + STATE(1212), 1, + sym_expression, + ACTIONS(77), 2, + sym_ellipsis, + sym_float, + ACTIONS(766), 2, + sym__newline, + anon_sym_SEMI, + STATE(1317), 2, + sym_list_splat, + sym_dictionary_splat, + ACTIONS(49), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(79), 4, + sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(351), 6, + anon_sym_lazy, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(1156), 6, + sym_named_expression, + sym_not_operator, + sym_boolean_operator, + sym_comparison_operator, + sym_lambda, + sym_conditional_expression, + STATE(920), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [4234] = 25, + ACTIONS(3), 1, + sym_comment, + ACTIONS(53), 1, + anon_sym_LBRACE, + ACTIONS(71), 1, + anon_sym_not, + ACTIONS(73), 1, + anon_sym_lambda, + ACTIONS(83), 1, + sym__string_start, + ACTIONS(85), 1, + sym__template_string_start, + ACTIONS(349), 1, + sym_identifier, + ACTIONS(355), 1, + anon_sym_await, + ACTIONS(594), 1, + anon_sym_LPAREN, + ACTIONS(598), 1, + anon_sym_LBRACK, + ACTIONS(838), 1, + anon_sym_STAR, + ACTIONS(840), 1, + anon_sym_STAR_STAR, + ACTIONS(842), 1, + anon_sym_from, + STATE(765), 1, sym_primary_expression, - STATE(782), 1, + STATE(769), 1, + sym_template_string, + STATE(775), 1, sym_string, - STATE(1199), 1, + STATE(1212), 1, sym_expression, - ACTIONS(75), 2, + ACTIONS(77), 2, sym_ellipsis, sym_float, - ACTIONS(761), 2, + ACTIONS(766), 2, sym__newline, anon_sym_SEMI, - STATE(1358), 2, + STATE(1317), 2, sym_list_splat, sym_dictionary_splat, - ACTIONS(47), 3, + ACTIONS(49), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(77), 4, + ACTIONS(79), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(316), 5, + ACTIONS(351), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1158), 6, + STATE(1156), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(908), 17, + STATE(920), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -27282,71 +27700,72 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [4088] = 23, + [4344] = 23, ACTIONS(3), 1, sym_comment, - ACTIONS(288), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(310), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(597), 1, + ACTIONS(602), 1, anon_sym_LPAREN, - ACTIONS(603), 1, + ACTIONS(608), 1, anon_sym_LBRACK, - ACTIONS(691), 1, + ACTIONS(680), 1, anon_sym_not, - ACTIONS(801), 1, + ACTIONS(816), 1, sym_identifier, - ACTIONS(807), 1, + ACTIONS(822), 1, anon_sym_await, - ACTIONS(829), 1, + ACTIONS(834), 1, anon_sym_lambda, - STATE(621), 1, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, - STATE(725), 1, + STATE(726), 1, sym_primary_expression, - STATE(1094), 1, + STATE(1092), 1, sym_expression, - ACTIONS(304), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - STATE(1211), 2, + STATE(1173), 2, sym__expression_within_for_in_clause, sym_lambda_within_for_in_clause, - ACTIONS(601), 3, + ACTIONS(606), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(837), 3, + ACTIONS(844), 3, anon_sym_RPAREN, anon_sym_RBRACK, anon_sym_RBRACE, - ACTIONS(839), 3, + ACTIONS(846), 3, anon_sym_if, anon_sym_async, anon_sym_for, - ACTIONS(306), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(805), 4, + ACTIONS(818), 5, + anon_sym_lazy, anon_sym_print, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1031), 6, + STATE(1032), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(724), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -27364,73 +27783,74 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [4193] = 25, + [4450] = 25, ACTIONS(3), 1, sym_comment, - ACTIONS(51), 1, + ACTIONS(53), 1, anon_sym_LBRACE, - ACTIONS(69), 1, - anon_sym_not, + ACTIONS(55), 1, + anon_sym_STAR_STAR, ACTIONS(71), 1, + anon_sym_not, + ACTIONS(73), 1, anon_sym_lambda, - ACTIONS(81), 1, - sym__string_start, ACTIONS(83), 1, + sym__string_start, + ACTIONS(85), 1, sym__template_string_start, - ACTIONS(314), 1, + ACTIONS(349), 1, sym_identifier, - ACTIONS(320), 1, + ACTIONS(355), 1, anon_sym_await, - ACTIONS(568), 1, + ACTIONS(594), 1, anon_sym_LPAREN, - ACTIONS(574), 1, + ACTIONS(598), 1, anon_sym_LBRACK, - ACTIONS(833), 1, + ACTIONS(726), 1, anon_sym_STAR, - ACTIONS(835), 1, - anon_sym_STAR_STAR, - ACTIONS(841), 1, - anon_sym_from, - STATE(763), 1, - sym_template_string, - STATE(779), 1, + STATE(765), 1, sym_primary_expression, - STATE(782), 1, + STATE(769), 1, + sym_template_string, + STATE(775), 1, sym_string, - STATE(1199), 1, + STATE(1206), 1, sym_expression, - ACTIONS(75), 2, + STATE(1530), 1, + sym_expression_list, + ACTIONS(77), 2, sym_ellipsis, sym_float, - ACTIONS(763), 2, + ACTIONS(848), 2, sym__newline, anon_sym_SEMI, - STATE(1358), 2, + STATE(1520), 2, sym_list_splat, sym_dictionary_splat, - ACTIONS(47), 3, + ACTIONS(49), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(77), 4, + ACTIONS(79), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(316), 5, + ACTIONS(351), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1158), 6, + STATE(1156), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(908), 17, + STATE(920), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -27448,74 +27868,75 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [4302] = 26, + [4560] = 26, ACTIONS(3), 1, sym_comment, - ACTIONS(288), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(310), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(603), 1, + ACTIONS(608), 1, anon_sym_LBRACK, - ACTIONS(691), 1, + ACTIONS(680), 1, anon_sym_not, - ACTIONS(693), 1, + ACTIONS(682), 1, anon_sym_lambda, - ACTIONS(695), 1, + ACTIONS(684), 1, anon_sym_yield, - ACTIONS(773), 1, - anon_sym_STAR, - ACTIONS(777), 1, + ACTIONS(776), 1, anon_sym_LPAREN, - ACTIONS(801), 1, + ACTIONS(792), 1, + anon_sym_STAR, + ACTIONS(816), 1, sym_identifier, - ACTIONS(803), 1, - anon_sym_RPAREN, - ACTIONS(807), 1, + ACTIONS(822), 1, anon_sym_await, - STATE(621), 1, + ACTIONS(850), 1, + anon_sym_RPAREN, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, - STATE(725), 1, + STATE(726), 1, sym_primary_expression, - STATE(1066), 1, + STATE(1068), 1, sym_expression, - STATE(1383), 1, + STATE(1479), 1, sym_yield, - STATE(1615), 1, + STATE(1692), 1, sym__collection_elements, - ACTIONS(304), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - STATE(1257), 2, + STATE(1290), 2, sym_list_splat, sym_parenthesized_list_splat, - ACTIONS(601), 3, + ACTIONS(606), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(805), 5, + ACTIONS(818), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1031), 6, + STATE(1032), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(724), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -27533,73 +27954,74 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [4413] = 25, + [4672] = 25, ACTIONS(3), 1, sym_comment, - ACTIONS(53), 1, - anon_sym_STAR_STAR, - ACTIONS(288), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(300), 1, - anon_sym_lambda, - ACTIONS(310), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(591), 1, + ACTIONS(608), 1, anon_sym_LBRACK, - ACTIONS(719), 1, - anon_sym_STAR, - ACTIONS(747), 1, + ACTIONS(680), 1, anon_sym_not, - ACTIONS(769), 1, + ACTIONS(682), 1, + anon_sym_lambda, + ACTIONS(684), 1, + anon_sym_yield, + ACTIONS(776), 1, anon_sym_LPAREN, - ACTIONS(787), 1, + ACTIONS(792), 1, + anon_sym_STAR, + ACTIONS(816), 1, sym_identifier, - ACTIONS(795), 1, + ACTIONS(822), 1, anon_sym_await, - ACTIONS(843), 1, - anon_sym_RPAREN, - STATE(621), 1, + ACTIONS(852), 1, + anon_sym_RBRACK, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, - STATE(719), 1, + STATE(726), 1, sym_primary_expression, - STATE(1261), 1, + STATE(1084), 1, sym_expression, - STATE(1577), 1, - sym_parenthesized_list_splat, - ACTIONS(304), 2, + STATE(1693), 1, + sym__collection_elements, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(296), 3, + ACTIONS(606), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1570), 3, + STATE(1290), 3, sym_list_splat, - sym_dictionary_splat, - sym_keyword_argument, - ACTIONS(306), 4, + sym_parenthesized_list_splat, + sym_yield, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(793), 5, + ACTIONS(818), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1031), 6, + STATE(1032), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(724), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -27617,73 +28039,76 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [4522] = 25, + [4782] = 27, ACTIONS(3), 1, sym_comment, - ACTIONS(53), 1, - anon_sym_STAR_STAR, - ACTIONS(288), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(300), 1, - anon_sym_lambda, - ACTIONS(310), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(591), 1, + ACTIONS(608), 1, anon_sym_LBRACK, - ACTIONS(719), 1, - anon_sym_STAR, - ACTIONS(747), 1, + ACTIONS(680), 1, anon_sym_not, - ACTIONS(769), 1, + ACTIONS(682), 1, + anon_sym_lambda, + ACTIONS(684), 1, + anon_sym_yield, + ACTIONS(776), 1, anon_sym_LPAREN, - ACTIONS(787), 1, + ACTIONS(792), 1, + anon_sym_STAR, + ACTIONS(816), 1, sym_identifier, - ACTIONS(795), 1, + ACTIONS(822), 1, anon_sym_await, - ACTIONS(845), 1, + ACTIONS(854), 1, anon_sym_RPAREN, - STATE(621), 1, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, - STATE(719), 1, + STATE(726), 1, sym_primary_expression, - STATE(1261), 1, + STATE(1083), 1, sym_expression, - STATE(1577), 1, + STATE(1385), 1, + sym_list_splat, + STATE(1390), 1, sym_parenthesized_list_splat, - ACTIONS(304), 2, + STATE(1395), 1, + sym_yield, + STATE(1680), 1, + sym__collection_elements, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(296), 3, + ACTIONS(606), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1570), 3, - sym_list_splat, - sym_dictionary_splat, - sym_keyword_argument, - ACTIONS(306), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(793), 5, + ACTIONS(818), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1031), 6, + STATE(1032), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(724), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -27701,73 +28126,75 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [4631] = 25, + [4896] = 26, ACTIONS(3), 1, sym_comment, - ACTIONS(288), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(310), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(603), 1, + ACTIONS(608), 1, anon_sym_LBRACK, - ACTIONS(691), 1, + ACTIONS(680), 1, anon_sym_not, - ACTIONS(693), 1, + ACTIONS(682), 1, anon_sym_lambda, - ACTIONS(695), 1, + ACTIONS(684), 1, anon_sym_yield, - ACTIONS(773), 1, - anon_sym_STAR, - ACTIONS(777), 1, + ACTIONS(776), 1, anon_sym_LPAREN, - ACTIONS(801), 1, + ACTIONS(792), 1, + anon_sym_STAR, + ACTIONS(816), 1, sym_identifier, - ACTIONS(807), 1, + ACTIONS(820), 1, + anon_sym_RPAREN, + ACTIONS(822), 1, anon_sym_await, - ACTIONS(847), 1, - anon_sym_RBRACK, - STATE(621), 1, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, - STATE(725), 1, + STATE(726), 1, sym_primary_expression, - STATE(1081), 1, + STATE(1083), 1, sym_expression, - STATE(1656), 1, + STATE(1395), 1, + sym_yield, + STATE(1680), 1, sym__collection_elements, - ACTIONS(304), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(601), 3, + STATE(1290), 2, + sym_list_splat, + sym_parenthesized_list_splat, + ACTIONS(606), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1257), 3, - sym_list_splat, - sym_parenthesized_list_splat, - sym_yield, - ACTIONS(306), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(805), 5, + ACTIONS(818), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1031), 6, + STATE(1032), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(724), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -27785,73 +28212,74 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [4740] = 25, + [5008] = 25, ACTIONS(3), 1, sym_comment, - ACTIONS(53), 1, - anon_sym_STAR_STAR, - ACTIONS(288), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(300), 1, - anon_sym_lambda, - ACTIONS(310), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(591), 1, + ACTIONS(608), 1, anon_sym_LBRACK, - ACTIONS(719), 1, - anon_sym_STAR, - ACTIONS(747), 1, + ACTIONS(680), 1, anon_sym_not, - ACTIONS(769), 1, + ACTIONS(682), 1, + anon_sym_lambda, + ACTIONS(684), 1, + anon_sym_yield, + ACTIONS(776), 1, anon_sym_LPAREN, - ACTIONS(787), 1, + ACTIONS(792), 1, + anon_sym_STAR, + ACTIONS(816), 1, sym_identifier, - ACTIONS(795), 1, + ACTIONS(822), 1, anon_sym_await, - ACTIONS(849), 1, - anon_sym_RPAREN, - STATE(621), 1, + ACTIONS(856), 1, + anon_sym_RBRACK, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, - STATE(719), 1, + STATE(726), 1, sym_primary_expression, - STATE(1261), 1, + STATE(1079), 1, sym_expression, - STATE(1577), 1, - sym_parenthesized_list_splat, - ACTIONS(304), 2, + STATE(1716), 1, + sym__collection_elements, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(296), 3, + ACTIONS(606), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1570), 3, + STATE(1290), 3, sym_list_splat, - sym_dictionary_splat, - sym_keyword_argument, - ACTIONS(306), 4, + sym_parenthesized_list_splat, + sym_yield, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(793), 5, + ACTIONS(818), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1031), 6, + STATE(1032), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(724), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -27869,75 +28297,74 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [4849] = 27, + [5118] = 25, ACTIONS(3), 1, sym_comment, - ACTIONS(288), 1, + ACTIONS(55), 1, + anon_sym_STAR_STAR, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(310), 1, + ACTIONS(305), 1, + anon_sym_lambda, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(603), 1, + ACTIONS(586), 1, anon_sym_LBRACK, - ACTIONS(691), 1, - anon_sym_not, - ACTIONS(693), 1, - anon_sym_lambda, - ACTIONS(695), 1, - anon_sym_yield, - ACTIONS(773), 1, + ACTIONS(726), 1, anon_sym_STAR, - ACTIONS(777), 1, + ACTIONS(752), 1, + anon_sym_not, + ACTIONS(788), 1, anon_sym_LPAREN, - ACTIONS(801), 1, + ACTIONS(800), 1, sym_identifier, - ACTIONS(807), 1, + ACTIONS(808), 1, anon_sym_await, - ACTIONS(851), 1, + ACTIONS(858), 1, anon_sym_RPAREN, - STATE(621), 1, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, - STATE(725), 1, + STATE(719), 1, sym_primary_expression, - STATE(1066), 1, + STATE(1280), 1, sym_expression, - STATE(1383), 1, - sym_yield, - STATE(1440), 1, + STATE(1524), 1, sym_parenthesized_list_splat, - STATE(1474), 1, - sym_list_splat, - STATE(1615), 1, - sym__collection_elements, - ACTIONS(304), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(601), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 4, + STATE(1567), 3, + sym_list_splat, + sym_dictionary_splat, + sym_keyword_argument, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(805), 5, + ACTIONS(802), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1031), 6, + STATE(1032), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(724), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -27955,73 +28382,74 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [4962] = 25, + [5228] = 25, ACTIONS(3), 1, sym_comment, - ACTIONS(53), 1, + ACTIONS(55), 1, anon_sym_STAR_STAR, - ACTIONS(288), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(300), 1, + ACTIONS(305), 1, anon_sym_lambda, - ACTIONS(310), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(591), 1, + ACTIONS(586), 1, anon_sym_LBRACK, - ACTIONS(719), 1, + ACTIONS(726), 1, anon_sym_STAR, - ACTIONS(747), 1, + ACTIONS(752), 1, anon_sym_not, - ACTIONS(769), 1, + ACTIONS(788), 1, anon_sym_LPAREN, - ACTIONS(787), 1, + ACTIONS(800), 1, sym_identifier, - ACTIONS(795), 1, + ACTIONS(808), 1, anon_sym_await, - ACTIONS(853), 1, + ACTIONS(860), 1, anon_sym_RPAREN, - STATE(621), 1, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, STATE(719), 1, sym_primary_expression, - STATE(1261), 1, + STATE(1280), 1, sym_expression, - STATE(1577), 1, + STATE(1524), 1, sym_parenthesized_list_splat, - ACTIONS(304), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(296), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1570), 3, + STATE(1567), 3, sym_list_splat, sym_dictionary_splat, sym_keyword_argument, - ACTIONS(306), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(793), 5, + ACTIONS(802), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1031), 6, + STATE(1032), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(724), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -28039,73 +28467,74 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [5071] = 25, + [5338] = 25, ACTIONS(3), 1, sym_comment, - ACTIONS(53), 1, + ACTIONS(55), 1, anon_sym_STAR_STAR, - ACTIONS(288), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(300), 1, + ACTIONS(305), 1, anon_sym_lambda, - ACTIONS(310), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(591), 1, + ACTIONS(586), 1, anon_sym_LBRACK, - ACTIONS(719), 1, + ACTIONS(726), 1, anon_sym_STAR, - ACTIONS(747), 1, + ACTIONS(752), 1, anon_sym_not, - ACTIONS(769), 1, + ACTIONS(788), 1, anon_sym_LPAREN, - ACTIONS(787), 1, + ACTIONS(800), 1, sym_identifier, - ACTIONS(795), 1, + ACTIONS(808), 1, anon_sym_await, - ACTIONS(855), 1, + ACTIONS(862), 1, anon_sym_RPAREN, - STATE(621), 1, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, STATE(719), 1, sym_primary_expression, - STATE(1261), 1, + STATE(1280), 1, sym_expression, - STATE(1577), 1, + STATE(1524), 1, sym_parenthesized_list_splat, - ACTIONS(304), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(296), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1570), 3, + STATE(1567), 3, sym_list_splat, sym_dictionary_splat, sym_keyword_argument, - ACTIONS(306), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(793), 5, + ACTIONS(802), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1031), 6, + STATE(1032), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(724), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -28123,73 +28552,74 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [5180] = 25, + [5448] = 25, ACTIONS(3), 1, sym_comment, - ACTIONS(53), 1, + ACTIONS(55), 1, anon_sym_STAR_STAR, - ACTIONS(288), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(300), 1, + ACTIONS(305), 1, anon_sym_lambda, - ACTIONS(310), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(591), 1, + ACTIONS(586), 1, anon_sym_LBRACK, - ACTIONS(719), 1, + ACTIONS(726), 1, anon_sym_STAR, - ACTIONS(747), 1, + ACTIONS(752), 1, anon_sym_not, - ACTIONS(769), 1, + ACTIONS(788), 1, anon_sym_LPAREN, - ACTIONS(787), 1, + ACTIONS(800), 1, sym_identifier, - ACTIONS(795), 1, + ACTIONS(808), 1, anon_sym_await, - ACTIONS(857), 1, + ACTIONS(864), 1, anon_sym_RPAREN, - STATE(621), 1, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, STATE(719), 1, sym_primary_expression, - STATE(1261), 1, + STATE(1280), 1, sym_expression, - STATE(1577), 1, + STATE(1524), 1, sym_parenthesized_list_splat, - ACTIONS(304), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(296), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1570), 3, + STATE(1567), 3, sym_list_splat, sym_dictionary_splat, sym_keyword_argument, - ACTIONS(306), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(793), 5, + ACTIONS(802), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1031), 6, + STATE(1032), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(724), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -28207,73 +28637,74 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [5289] = 25, + [5558] = 25, ACTIONS(3), 1, sym_comment, - ACTIONS(53), 1, + ACTIONS(55), 1, anon_sym_STAR_STAR, - ACTIONS(288), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(300), 1, + ACTIONS(305), 1, anon_sym_lambda, - ACTIONS(310), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(591), 1, + ACTIONS(586), 1, anon_sym_LBRACK, - ACTIONS(719), 1, + ACTIONS(726), 1, anon_sym_STAR, - ACTIONS(747), 1, + ACTIONS(752), 1, anon_sym_not, - ACTIONS(769), 1, + ACTIONS(788), 1, anon_sym_LPAREN, - ACTIONS(787), 1, + ACTIONS(800), 1, sym_identifier, - ACTIONS(795), 1, + ACTIONS(808), 1, anon_sym_await, - ACTIONS(859), 1, + ACTIONS(866), 1, anon_sym_RPAREN, - STATE(621), 1, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, STATE(719), 1, sym_primary_expression, - STATE(1261), 1, + STATE(1280), 1, sym_expression, - STATE(1577), 1, + STATE(1524), 1, sym_parenthesized_list_splat, - ACTIONS(304), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(296), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1570), 3, + STATE(1567), 3, sym_list_splat, sym_dictionary_splat, sym_keyword_argument, - ACTIONS(306), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(793), 5, + ACTIONS(802), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1031), 6, + STATE(1032), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(724), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -28291,71 +28722,74 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [5398] = 23, + [5668] = 25, ACTIONS(3), 1, sym_comment, - ACTIONS(288), 1, + ACTIONS(55), 1, + anon_sym_STAR_STAR, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(310), 1, + ACTIONS(305), 1, + anon_sym_lambda, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(597), 1, - anon_sym_LPAREN, - ACTIONS(603), 1, + ACTIONS(586), 1, anon_sym_LBRACK, - ACTIONS(691), 1, + ACTIONS(726), 1, + anon_sym_STAR, + ACTIONS(752), 1, anon_sym_not, - ACTIONS(801), 1, + ACTIONS(788), 1, + anon_sym_LPAREN, + ACTIONS(800), 1, sym_identifier, - ACTIONS(807), 1, + ACTIONS(808), 1, anon_sym_await, - ACTIONS(829), 1, - anon_sym_lambda, - STATE(621), 1, + ACTIONS(868), 1, + anon_sym_RPAREN, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, - STATE(725), 1, + STATE(719), 1, sym_primary_expression, - STATE(1094), 1, + STATE(1280), 1, sym_expression, - ACTIONS(304), 2, + STATE(1524), 1, + sym_parenthesized_list_splat, + ACTIONS(309), 2, sym_ellipsis, sym_float, - STATE(1211), 2, - sym__expression_within_for_in_clause, - sym_lambda_within_for_in_clause, - ACTIONS(601), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(861), 3, - anon_sym_RPAREN, - anon_sym_RBRACK, - anon_sym_RBRACE, - ACTIONS(863), 3, - anon_sym_if, - anon_sym_async, - anon_sym_for, - ACTIONS(306), 4, + STATE(1567), 3, + sym_list_splat, + sym_dictionary_splat, + sym_keyword_argument, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(805), 4, + ACTIONS(802), 6, + anon_sym_lazy, anon_sym_print, + anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1031), 6, + STATE(1032), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(724), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -28373,71 +28807,72 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [5503] = 23, + [5778] = 23, ACTIONS(3), 1, sym_comment, - ACTIONS(288), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(310), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(597), 1, + ACTIONS(602), 1, anon_sym_LPAREN, - ACTIONS(603), 1, + ACTIONS(608), 1, anon_sym_LBRACK, - ACTIONS(691), 1, + ACTIONS(680), 1, anon_sym_not, - ACTIONS(801), 1, + ACTIONS(816), 1, sym_identifier, - ACTIONS(807), 1, + ACTIONS(822), 1, anon_sym_await, - ACTIONS(829), 1, + ACTIONS(834), 1, anon_sym_lambda, - STATE(621), 1, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, - STATE(725), 1, + STATE(726), 1, sym_primary_expression, - STATE(1094), 1, + STATE(1092), 1, sym_expression, - ACTIONS(304), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - STATE(1211), 2, + STATE(1173), 2, sym__expression_within_for_in_clause, sym_lambda_within_for_in_clause, - ACTIONS(601), 3, + ACTIONS(606), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(865), 3, + ACTIONS(870), 3, anon_sym_RPAREN, anon_sym_RBRACK, anon_sym_RBRACE, - ACTIONS(867), 3, + ACTIONS(872), 3, anon_sym_if, anon_sym_async, anon_sym_for, - ACTIONS(306), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(805), 4, + ACTIONS(818), 5, + anon_sym_lazy, anon_sym_print, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1031), 6, + STATE(1032), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(724), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -28455,74 +28890,76 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [5608] = 26, + [5884] = 27, ACTIONS(3), 1, sym_comment, - ACTIONS(288), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(310), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(603), 1, + ACTIONS(608), 1, anon_sym_LBRACK, - ACTIONS(691), 1, + ACTIONS(680), 1, anon_sym_not, - ACTIONS(693), 1, + ACTIONS(682), 1, anon_sym_lambda, - ACTIONS(695), 1, + ACTIONS(684), 1, anon_sym_yield, - ACTIONS(773), 1, - anon_sym_STAR, - ACTIONS(777), 1, + ACTIONS(776), 1, anon_sym_LPAREN, - ACTIONS(801), 1, + ACTIONS(792), 1, + anon_sym_STAR, + ACTIONS(816), 1, sym_identifier, - ACTIONS(807), 1, + ACTIONS(822), 1, anon_sym_await, - ACTIONS(869), 1, + ACTIONS(874), 1, anon_sym_RPAREN, - STATE(621), 1, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, - STATE(725), 1, + STATE(726), 1, sym_primary_expression, - STATE(1084), 1, + STATE(1083), 1, sym_expression, - STATE(1489), 1, + STATE(1385), 1, + sym_list_splat, + STATE(1390), 1, + sym_parenthesized_list_splat, + STATE(1395), 1, sym_yield, - STATE(1626), 1, + STATE(1680), 1, sym__collection_elements, - ACTIONS(304), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - STATE(1257), 2, - sym_list_splat, - sym_parenthesized_list_splat, - ACTIONS(601), 3, + ACTIONS(606), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(805), 5, + ACTIONS(818), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1031), 6, + STATE(1032), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(724), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -28540,73 +28977,74 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [5719] = 25, + [5998] = 25, ACTIONS(3), 1, sym_comment, - ACTIONS(288), 1, + ACTIONS(55), 1, + anon_sym_STAR_STAR, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(310), 1, + ACTIONS(305), 1, + anon_sym_lambda, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(603), 1, + ACTIONS(586), 1, anon_sym_LBRACK, - ACTIONS(691), 1, - anon_sym_not, - ACTIONS(693), 1, - anon_sym_lambda, - ACTIONS(695), 1, - anon_sym_yield, - ACTIONS(773), 1, + ACTIONS(726), 1, anon_sym_STAR, - ACTIONS(777), 1, + ACTIONS(752), 1, + anon_sym_not, + ACTIONS(788), 1, anon_sym_LPAREN, - ACTIONS(801), 1, + ACTIONS(800), 1, sym_identifier, - ACTIONS(807), 1, + ACTIONS(808), 1, anon_sym_await, - ACTIONS(871), 1, - anon_sym_RBRACK, - STATE(621), 1, + ACTIONS(876), 1, + anon_sym_RPAREN, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, - STATE(725), 1, + STATE(719), 1, sym_primary_expression, - STATE(1083), 1, + STATE(1280), 1, sym_expression, - STATE(1633), 1, - sym__collection_elements, - ACTIONS(304), 2, + STATE(1524), 1, + sym_parenthesized_list_splat, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(601), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1257), 3, + STATE(1567), 3, sym_list_splat, - sym_parenthesized_list_splat, - sym_yield, - ACTIONS(306), 4, + sym_dictionary_splat, + sym_keyword_argument, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(805), 5, + ACTIONS(802), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1031), 6, + STATE(1032), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(724), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -28624,158 +29062,74 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [5828] = 26, + [6108] = 25, ACTIONS(3), 1, sym_comment, - ACTIONS(288), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(310), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(603), 1, + ACTIONS(608), 1, anon_sym_LBRACK, - ACTIONS(691), 1, + ACTIONS(680), 1, anon_sym_not, - ACTIONS(693), 1, + ACTIONS(682), 1, anon_sym_lambda, - ACTIONS(695), 1, + ACTIONS(684), 1, anon_sym_yield, - ACTIONS(773), 1, - anon_sym_STAR, - ACTIONS(777), 1, + ACTIONS(776), 1, anon_sym_LPAREN, - ACTIONS(801), 1, - sym_identifier, - ACTIONS(807), 1, - anon_sym_await, - ACTIONS(873), 1, - anon_sym_RPAREN, - STATE(621), 1, - sym_string, - STATE(624), 1, - sym_template_string, - STATE(725), 1, - sym_primary_expression, - STATE(1073), 1, - sym_expression, - STATE(1423), 1, - sym_yield, - STATE(1591), 1, - sym__collection_elements, - ACTIONS(304), 2, - sym_ellipsis, - sym_float, - STATE(1257), 2, - sym_list_splat, - sym_parenthesized_list_splat, - ACTIONS(601), 3, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_TILDE, - ACTIONS(306), 4, - sym_integer, - sym_true, - sym_false, - sym_none, - ACTIONS(805), 5, - anon_sym_print, - anon_sym_async, - anon_sym_match, - anon_sym_exec, - anon_sym_type, - STATE(1031), 6, - sym_named_expression, - sym_not_operator, - sym_boolean_operator, - sym_comparison_operator, - sym_lambda, - sym_conditional_expression, - STATE(724), 17, - sym_binary_operator, - sym_unary_operator, - sym_attribute, - sym_subscript, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [5939] = 25, - ACTIONS(3), 1, - sym_comment, - ACTIONS(53), 1, - anon_sym_STAR_STAR, - ACTIONS(288), 1, - anon_sym_LBRACE, - ACTIONS(300), 1, - anon_sym_lambda, - ACTIONS(310), 1, - sym__string_start, - ACTIONS(312), 1, - sym__template_string_start, - ACTIONS(591), 1, - anon_sym_LBRACK, - ACTIONS(719), 1, + ACTIONS(792), 1, anon_sym_STAR, - ACTIONS(747), 1, - anon_sym_not, - ACTIONS(769), 1, - anon_sym_LPAREN, - ACTIONS(787), 1, + ACTIONS(816), 1, sym_identifier, - ACTIONS(795), 1, + ACTIONS(822), 1, anon_sym_await, - ACTIONS(875), 1, - anon_sym_RPAREN, - STATE(621), 1, + ACTIONS(878), 1, + anon_sym_RBRACK, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, - STATE(719), 1, + STATE(726), 1, sym_primary_expression, - STATE(1261), 1, + STATE(1079), 1, sym_expression, - STATE(1577), 1, - sym_parenthesized_list_splat, - ACTIONS(304), 2, + STATE(1716), 1, + sym__collection_elements, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(296), 3, + ACTIONS(606), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1570), 3, + STATE(1290), 3, sym_list_splat, - sym_dictionary_splat, - sym_keyword_argument, - ACTIONS(306), 4, + sym_parenthesized_list_splat, + sym_yield, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(793), 5, + ACTIONS(818), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1031), 6, + STATE(1032), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(724), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -28793,75 +29147,76 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [6048] = 27, + [6218] = 27, ACTIONS(3), 1, sym_comment, - ACTIONS(288), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(310), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(603), 1, + ACTIONS(608), 1, anon_sym_LBRACK, - ACTIONS(691), 1, + ACTIONS(680), 1, anon_sym_not, - ACTIONS(693), 1, + ACTIONS(682), 1, anon_sym_lambda, - ACTIONS(695), 1, + ACTIONS(684), 1, anon_sym_yield, - ACTIONS(773), 1, - anon_sym_STAR, - ACTIONS(777), 1, + ACTIONS(776), 1, anon_sym_LPAREN, - ACTIONS(801), 1, + ACTIONS(792), 1, + anon_sym_STAR, + ACTIONS(816), 1, sym_identifier, - ACTIONS(803), 1, + ACTIONS(820), 1, anon_sym_RPAREN, - ACTIONS(807), 1, + ACTIONS(822), 1, anon_sym_await, - STATE(621), 1, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, - STATE(725), 1, + STATE(726), 1, sym_primary_expression, - STATE(1066), 1, + STATE(1083), 1, sym_expression, - STATE(1383), 1, - sym_yield, - STATE(1440), 1, - sym_parenthesized_list_splat, - STATE(1474), 1, + STATE(1385), 1, sym_list_splat, - STATE(1615), 1, + STATE(1390), 1, + sym_parenthesized_list_splat, + STATE(1395), 1, + sym_yield, + STATE(1680), 1, sym__collection_elements, - ACTIONS(304), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(601), 3, + ACTIONS(606), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(805), 5, + ACTIONS(818), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1031), 6, + STATE(1032), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(724), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -28879,75 +29234,72 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [6161] = 27, + [6332] = 23, ACTIONS(3), 1, sym_comment, - ACTIONS(288), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(310), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(603), 1, + ACTIONS(602), 1, + anon_sym_LPAREN, + ACTIONS(608), 1, anon_sym_LBRACK, - ACTIONS(691), 1, + ACTIONS(680), 1, anon_sym_not, - ACTIONS(693), 1, - anon_sym_lambda, - ACTIONS(695), 1, - anon_sym_yield, - ACTIONS(773), 1, - anon_sym_STAR, - ACTIONS(777), 1, - anon_sym_LPAREN, - ACTIONS(801), 1, + ACTIONS(816), 1, sym_identifier, - ACTIONS(807), 1, + ACTIONS(822), 1, anon_sym_await, - ACTIONS(873), 1, - anon_sym_RPAREN, - STATE(621), 1, + ACTIONS(834), 1, + anon_sym_lambda, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, - STATE(725), 1, + STATE(726), 1, sym_primary_expression, - STATE(1066), 1, + STATE(1092), 1, sym_expression, - STATE(1383), 1, - sym_yield, - STATE(1440), 1, - sym_parenthesized_list_splat, - STATE(1474), 1, - sym_list_splat, - STATE(1615), 1, - sym__collection_elements, - ACTIONS(304), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(601), 3, + STATE(1173), 2, + sym__expression_within_for_in_clause, + sym_lambda_within_for_in_clause, + ACTIONS(606), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 4, + ACTIONS(880), 3, + anon_sym_RPAREN, + anon_sym_RBRACK, + anon_sym_RBRACE, + ACTIONS(882), 3, + anon_sym_if, + anon_sym_async, + anon_sym_for, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(805), 5, + ACTIONS(818), 5, + anon_sym_lazy, anon_sym_print, - anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1031), 6, + STATE(1032), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(724), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -28965,73 +29317,74 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [6274] = 25, + [6438] = 25, ACTIONS(3), 1, sym_comment, - ACTIONS(53), 1, + ACTIONS(55), 1, anon_sym_STAR_STAR, - ACTIONS(288), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(300), 1, + ACTIONS(305), 1, anon_sym_lambda, - ACTIONS(310), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(591), 1, + ACTIONS(586), 1, anon_sym_LBRACK, - ACTIONS(719), 1, + ACTIONS(726), 1, anon_sym_STAR, - ACTIONS(747), 1, + ACTIONS(752), 1, anon_sym_not, - ACTIONS(769), 1, + ACTIONS(788), 1, anon_sym_LPAREN, - ACTIONS(787), 1, + ACTIONS(800), 1, sym_identifier, - ACTIONS(795), 1, + ACTIONS(808), 1, anon_sym_await, - ACTIONS(877), 1, + ACTIONS(884), 1, anon_sym_RPAREN, - STATE(621), 1, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, STATE(719), 1, sym_primary_expression, - STATE(1261), 1, + STATE(1280), 1, sym_expression, - STATE(1577), 1, + STATE(1524), 1, sym_parenthesized_list_splat, - ACTIONS(304), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(296), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1570), 3, + STATE(1567), 3, sym_list_splat, sym_dictionary_splat, sym_keyword_argument, - ACTIONS(306), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(793), 5, + ACTIONS(802), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1031), 6, + STATE(1032), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(724), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -29049,73 +29402,74 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [6383] = 25, + [6548] = 25, ACTIONS(3), 1, sym_comment, - ACTIONS(53), 1, + ACTIONS(55), 1, anon_sym_STAR_STAR, - ACTIONS(288), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(300), 1, + ACTIONS(305), 1, anon_sym_lambda, - ACTIONS(310), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(591), 1, + ACTIONS(586), 1, anon_sym_LBRACK, - ACTIONS(719), 1, + ACTIONS(726), 1, anon_sym_STAR, - ACTIONS(747), 1, + ACTIONS(752), 1, anon_sym_not, - ACTIONS(769), 1, + ACTIONS(788), 1, anon_sym_LPAREN, - ACTIONS(787), 1, + ACTIONS(800), 1, sym_identifier, - ACTIONS(795), 1, + ACTIONS(808), 1, anon_sym_await, - ACTIONS(879), 1, + ACTIONS(886), 1, anon_sym_RPAREN, - STATE(621), 1, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, STATE(719), 1, sym_primary_expression, - STATE(1261), 1, + STATE(1280), 1, sym_expression, - STATE(1577), 1, + STATE(1524), 1, sym_parenthesized_list_splat, - ACTIONS(304), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(296), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1570), 3, + STATE(1567), 3, sym_list_splat, sym_dictionary_splat, sym_keyword_argument, - ACTIONS(306), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(793), 5, + ACTIONS(802), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1031), 6, + STATE(1032), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(724), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -29133,73 +29487,74 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [6492] = 25, + [6658] = 25, ACTIONS(3), 1, sym_comment, - ACTIONS(53), 1, + ACTIONS(55), 1, anon_sym_STAR_STAR, - ACTIONS(288), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(300), 1, + ACTIONS(305), 1, anon_sym_lambda, - ACTIONS(310), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(591), 1, + ACTIONS(586), 1, anon_sym_LBRACK, - ACTIONS(719), 1, + ACTIONS(726), 1, anon_sym_STAR, - ACTIONS(747), 1, + ACTIONS(752), 1, anon_sym_not, - ACTIONS(769), 1, + ACTIONS(788), 1, anon_sym_LPAREN, - ACTIONS(787), 1, + ACTIONS(800), 1, sym_identifier, - ACTIONS(795), 1, + ACTIONS(808), 1, anon_sym_await, - ACTIONS(881), 1, + ACTIONS(888), 1, anon_sym_RPAREN, - STATE(621), 1, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, STATE(719), 1, sym_primary_expression, - STATE(1261), 1, + STATE(1280), 1, sym_expression, - STATE(1577), 1, + STATE(1524), 1, sym_parenthesized_list_splat, - ACTIONS(304), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(296), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1570), 3, + STATE(1567), 3, sym_list_splat, sym_dictionary_splat, sym_keyword_argument, - ACTIONS(306), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(793), 5, + ACTIONS(802), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1031), 6, + STATE(1032), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(724), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -29217,73 +29572,74 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [6601] = 25, + [6768] = 25, ACTIONS(3), 1, sym_comment, - ACTIONS(53), 1, + ACTIONS(55), 1, anon_sym_STAR_STAR, - ACTIONS(288), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(300), 1, + ACTIONS(305), 1, anon_sym_lambda, - ACTIONS(310), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(591), 1, + ACTIONS(586), 1, anon_sym_LBRACK, - ACTIONS(719), 1, + ACTIONS(726), 1, anon_sym_STAR, - ACTIONS(747), 1, + ACTIONS(752), 1, anon_sym_not, - ACTIONS(769), 1, + ACTIONS(788), 1, anon_sym_LPAREN, - ACTIONS(787), 1, + ACTIONS(800), 1, sym_identifier, - ACTIONS(795), 1, + ACTIONS(808), 1, anon_sym_await, - ACTIONS(883), 1, + ACTIONS(890), 1, anon_sym_RPAREN, - STATE(621), 1, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, STATE(719), 1, sym_primary_expression, - STATE(1261), 1, + STATE(1280), 1, sym_expression, - STATE(1577), 1, + STATE(1524), 1, sym_parenthesized_list_splat, - ACTIONS(304), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(296), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1570), 3, + STATE(1567), 3, sym_list_splat, sym_dictionary_splat, sym_keyword_argument, - ACTIONS(306), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(793), 5, + ACTIONS(802), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1031), 6, + STATE(1032), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(724), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -29301,157 +29657,74 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [6710] = 25, + [6878] = 25, ACTIONS(3), 1, sym_comment, - ACTIONS(53), 1, + ACTIONS(55), 1, anon_sym_STAR_STAR, - ACTIONS(288), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(300), 1, + ACTIONS(305), 1, anon_sym_lambda, - ACTIONS(310), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(591), 1, + ACTIONS(586), 1, anon_sym_LBRACK, - ACTIONS(719), 1, + ACTIONS(726), 1, anon_sym_STAR, - ACTIONS(747), 1, + ACTIONS(752), 1, anon_sym_not, - ACTIONS(769), 1, + ACTIONS(788), 1, anon_sym_LPAREN, - ACTIONS(787), 1, + ACTIONS(800), 1, sym_identifier, - ACTIONS(795), 1, + ACTIONS(808), 1, anon_sym_await, - ACTIONS(885), 1, + ACTIONS(892), 1, anon_sym_RPAREN, - STATE(621), 1, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, STATE(719), 1, sym_primary_expression, - STATE(1261), 1, + STATE(1280), 1, sym_expression, - STATE(1577), 1, + STATE(1524), 1, sym_parenthesized_list_splat, - ACTIONS(304), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(296), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1570), 3, + STATE(1567), 3, sym_list_splat, sym_dictionary_splat, sym_keyword_argument, - ACTIONS(306), 4, - sym_integer, - sym_true, - sym_false, - sym_none, - ACTIONS(793), 5, - anon_sym_print, - anon_sym_async, - anon_sym_match, - anon_sym_exec, - anon_sym_type, - STATE(1031), 6, - sym_named_expression, - sym_not_operator, - sym_boolean_operator, - sym_comparison_operator, - sym_lambda, - sym_conditional_expression, - STATE(724), 17, - sym_binary_operator, - sym_unary_operator, - sym_attribute, - sym_subscript, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [6819] = 25, - ACTIONS(3), 1, - sym_comment, - ACTIONS(51), 1, - anon_sym_LBRACE, - ACTIONS(53), 1, - anon_sym_STAR_STAR, - ACTIONS(69), 1, - anon_sym_not, - ACTIONS(71), 1, - anon_sym_lambda, - ACTIONS(81), 1, - sym__string_start, - ACTIONS(83), 1, - sym__template_string_start, - ACTIONS(314), 1, - sym_identifier, - ACTIONS(320), 1, - anon_sym_await, - ACTIONS(568), 1, - anon_sym_LPAREN, - ACTIONS(574), 1, - anon_sym_LBRACK, - ACTIONS(719), 1, - anon_sym_STAR, - STATE(763), 1, - sym_template_string, - STATE(779), 1, - sym_primary_expression, - STATE(782), 1, - sym_string, - STATE(1179), 1, - sym_expression, - STATE(1572), 1, - sym_expression_list, - ACTIONS(75), 2, - sym_ellipsis, - sym_float, - ACTIONS(887), 2, - sym__newline, - anon_sym_SEMI, - STATE(1549), 2, - sym_list_splat, - sym_dictionary_splat, - ACTIONS(47), 3, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_TILDE, - ACTIONS(77), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(316), 5, + ACTIONS(802), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1158), 6, + STATE(1032), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(908), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -29469,74 +29742,75 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [6928] = 26, + [6988] = 26, ACTIONS(3), 1, sym_comment, - ACTIONS(288), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(310), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(603), 1, + ACTIONS(608), 1, anon_sym_LBRACK, - ACTIONS(691), 1, + ACTIONS(680), 1, anon_sym_not, - ACTIONS(693), 1, + ACTIONS(682), 1, anon_sym_lambda, - ACTIONS(695), 1, + ACTIONS(684), 1, anon_sym_yield, - ACTIONS(773), 1, - anon_sym_STAR, - ACTIONS(777), 1, + ACTIONS(776), 1, anon_sym_LPAREN, - ACTIONS(801), 1, + ACTIONS(792), 1, + anon_sym_STAR, + ACTIONS(816), 1, sym_identifier, - ACTIONS(807), 1, + ACTIONS(822), 1, anon_sym_await, - ACTIONS(873), 1, + ACTIONS(854), 1, anon_sym_RPAREN, - STATE(621), 1, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, - STATE(725), 1, + STATE(726), 1, sym_primary_expression, - STATE(1066), 1, + STATE(1083), 1, sym_expression, - STATE(1383), 1, + STATE(1395), 1, sym_yield, - STATE(1615), 1, + STATE(1680), 1, sym__collection_elements, - ACTIONS(304), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - STATE(1257), 2, + STATE(1290), 2, sym_list_splat, sym_parenthesized_list_splat, - ACTIONS(601), 3, + ACTIONS(606), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(805), 5, + ACTIONS(818), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1031), 6, + STATE(1032), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(724), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -29554,73 +29828,74 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [7039] = 25, + [7100] = 25, ACTIONS(3), 1, sym_comment, - ACTIONS(288), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(310), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(603), 1, + ACTIONS(608), 1, anon_sym_LBRACK, - ACTIONS(691), 1, + ACTIONS(680), 1, anon_sym_not, - ACTIONS(693), 1, + ACTIONS(682), 1, anon_sym_lambda, - ACTIONS(695), 1, + ACTIONS(684), 1, anon_sym_yield, - ACTIONS(773), 1, - anon_sym_STAR, - ACTIONS(777), 1, + ACTIONS(776), 1, anon_sym_LPAREN, - ACTIONS(801), 1, + ACTIONS(792), 1, + anon_sym_STAR, + ACTIONS(816), 1, sym_identifier, - ACTIONS(807), 1, + ACTIONS(822), 1, anon_sym_await, - ACTIONS(889), 1, + ACTIONS(894), 1, anon_sym_RBRACK, - STATE(621), 1, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, - STATE(725), 1, + STATE(726), 1, sym_primary_expression, - STATE(1088), 1, + STATE(1086), 1, sym_expression, - STATE(1594), 1, + STATE(1626), 1, sym__collection_elements, - ACTIONS(304), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(601), 3, + ACTIONS(606), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1257), 3, + STATE(1290), 3, sym_list_splat, sym_parenthesized_list_splat, sym_yield, - ACTIONS(306), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(805), 5, + ACTIONS(818), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1031), 6, + STATE(1032), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(724), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -29638,73 +29913,74 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [7148] = 25, + [7210] = 25, ACTIONS(3), 1, sym_comment, - ACTIONS(51), 1, + ACTIONS(55), 1, + anon_sym_STAR_STAR, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(69), 1, - anon_sym_not, - ACTIONS(71), 1, + ACTIONS(305), 1, anon_sym_lambda, - ACTIONS(81), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(83), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(314), 1, - sym_identifier, - ACTIONS(320), 1, - anon_sym_await, - ACTIONS(568), 1, - anon_sym_LPAREN, - ACTIONS(574), 1, + ACTIONS(586), 1, anon_sym_LBRACK, - ACTIONS(833), 1, + ACTIONS(726), 1, anon_sym_STAR, - ACTIONS(835), 1, - anon_sym_STAR_STAR, - ACTIONS(841), 1, - anon_sym_from, - STATE(763), 1, + ACTIONS(752), 1, + anon_sym_not, + ACTIONS(788), 1, + anon_sym_LPAREN, + ACTIONS(800), 1, + sym_identifier, + ACTIONS(808), 1, + anon_sym_await, + ACTIONS(896), 1, + anon_sym_RPAREN, + STATE(645), 1, + sym_string, + STATE(658), 1, sym_template_string, - STATE(779), 1, + STATE(719), 1, sym_primary_expression, - STATE(782), 1, - sym_string, - STATE(1199), 1, + STATE(1280), 1, sym_expression, - ACTIONS(75), 2, + STATE(1524), 1, + sym_parenthesized_list_splat, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(763), 2, - sym__newline, - anon_sym_SEMI, - STATE(1358), 2, - sym_list_splat, - sym_dictionary_splat, - ACTIONS(47), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(77), 4, + STATE(1567), 3, + sym_list_splat, + sym_dictionary_splat, + sym_keyword_argument, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(316), 5, + ACTIONS(802), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1158), 6, + STATE(1032), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(908), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -29722,73 +29998,74 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [7257] = 25, + [7320] = 25, ACTIONS(3), 1, sym_comment, - ACTIONS(53), 1, + ACTIONS(55), 1, anon_sym_STAR_STAR, - ACTIONS(288), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(300), 1, + ACTIONS(305), 1, anon_sym_lambda, - ACTIONS(310), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(591), 1, + ACTIONS(586), 1, anon_sym_LBRACK, - ACTIONS(719), 1, + ACTIONS(726), 1, anon_sym_STAR, - ACTIONS(747), 1, + ACTIONS(752), 1, anon_sym_not, - ACTIONS(769), 1, + ACTIONS(788), 1, anon_sym_LPAREN, - ACTIONS(787), 1, + ACTIONS(800), 1, sym_identifier, - ACTIONS(795), 1, + ACTIONS(808), 1, anon_sym_await, - ACTIONS(891), 1, + ACTIONS(898), 1, anon_sym_RPAREN, - STATE(621), 1, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, STATE(719), 1, sym_primary_expression, - STATE(1261), 1, + STATE(1280), 1, sym_expression, - STATE(1577), 1, + STATE(1524), 1, sym_parenthesized_list_splat, - ACTIONS(304), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(296), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1570), 3, + STATE(1567), 3, sym_list_splat, sym_dictionary_splat, sym_keyword_argument, - ACTIONS(306), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(793), 5, + ACTIONS(802), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1031), 6, + STATE(1032), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(724), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -29806,73 +30083,74 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [7366] = 25, + [7430] = 25, ACTIONS(3), 1, sym_comment, - ACTIONS(53), 1, + ACTIONS(55), 1, anon_sym_STAR_STAR, - ACTIONS(288), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(300), 1, + ACTIONS(305), 1, anon_sym_lambda, - ACTIONS(310), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(591), 1, + ACTIONS(586), 1, anon_sym_LBRACK, - ACTIONS(719), 1, + ACTIONS(726), 1, anon_sym_STAR, - ACTIONS(747), 1, + ACTIONS(752), 1, anon_sym_not, - ACTIONS(769), 1, + ACTIONS(788), 1, anon_sym_LPAREN, - ACTIONS(787), 1, + ACTIONS(800), 1, sym_identifier, - ACTIONS(795), 1, + ACTIONS(808), 1, anon_sym_await, - ACTIONS(893), 1, + ACTIONS(900), 1, anon_sym_RPAREN, - STATE(621), 1, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, STATE(719), 1, sym_primary_expression, - STATE(1261), 1, + STATE(1280), 1, sym_expression, - STATE(1577), 1, + STATE(1524), 1, sym_parenthesized_list_splat, - ACTIONS(304), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(296), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1570), 3, + STATE(1567), 3, sym_list_splat, sym_dictionary_splat, sym_keyword_argument, - ACTIONS(306), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(793), 5, + ACTIONS(802), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1031), 6, + STATE(1032), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(724), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -29890,73 +30168,74 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [7475] = 25, + [7540] = 25, ACTIONS(3), 1, sym_comment, - ACTIONS(53), 1, + ACTIONS(55), 1, anon_sym_STAR_STAR, - ACTIONS(288), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(300), 1, + ACTIONS(305), 1, anon_sym_lambda, - ACTIONS(310), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(591), 1, + ACTIONS(586), 1, anon_sym_LBRACK, - ACTIONS(719), 1, + ACTIONS(726), 1, anon_sym_STAR, - ACTIONS(747), 1, + ACTIONS(752), 1, anon_sym_not, - ACTIONS(769), 1, + ACTIONS(788), 1, anon_sym_LPAREN, - ACTIONS(787), 1, + ACTIONS(800), 1, sym_identifier, - ACTIONS(795), 1, + ACTIONS(808), 1, anon_sym_await, - ACTIONS(895), 1, + ACTIONS(902), 1, anon_sym_RPAREN, - STATE(621), 1, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, STATE(719), 1, sym_primary_expression, - STATE(1261), 1, + STATE(1280), 1, sym_expression, - STATE(1577), 1, + STATE(1524), 1, sym_parenthesized_list_splat, - ACTIONS(304), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(296), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1570), 3, + STATE(1567), 3, sym_list_splat, sym_dictionary_splat, sym_keyword_argument, - ACTIONS(306), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(793), 5, + ACTIONS(802), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1031), 6, + STATE(1032), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(724), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -29974,73 +30253,74 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [7584] = 25, + [7650] = 25, ACTIONS(3), 1, sym_comment, - ACTIONS(53), 1, + ACTIONS(55), 1, anon_sym_STAR_STAR, - ACTIONS(288), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(300), 1, + ACTIONS(305), 1, anon_sym_lambda, - ACTIONS(310), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(591), 1, + ACTIONS(586), 1, anon_sym_LBRACK, - ACTIONS(719), 1, + ACTIONS(726), 1, anon_sym_STAR, - ACTIONS(747), 1, + ACTIONS(752), 1, anon_sym_not, - ACTIONS(769), 1, + ACTIONS(788), 1, anon_sym_LPAREN, - ACTIONS(787), 1, + ACTIONS(800), 1, sym_identifier, - ACTIONS(795), 1, + ACTIONS(808), 1, anon_sym_await, - ACTIONS(897), 1, + ACTIONS(904), 1, anon_sym_RPAREN, - STATE(621), 1, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, STATE(719), 1, sym_primary_expression, - STATE(1261), 1, + STATE(1280), 1, sym_expression, - STATE(1577), 1, + STATE(1524), 1, sym_parenthesized_list_splat, - ACTIONS(304), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(296), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1570), 3, + STATE(1567), 3, sym_list_splat, sym_dictionary_splat, sym_keyword_argument, - ACTIONS(306), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(793), 5, + ACTIONS(802), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1031), 6, + STATE(1032), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(724), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -30058,73 +30338,75 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [7693] = 25, + [7760] = 26, ACTIONS(3), 1, sym_comment, - ACTIONS(53), 1, - anon_sym_STAR_STAR, - ACTIONS(288), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(300), 1, - anon_sym_lambda, - ACTIONS(310), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(591), 1, + ACTIONS(608), 1, anon_sym_LBRACK, - ACTIONS(719), 1, - anon_sym_STAR, - ACTIONS(747), 1, + ACTIONS(680), 1, anon_sym_not, - ACTIONS(769), 1, + ACTIONS(682), 1, + anon_sym_lambda, + ACTIONS(684), 1, + anon_sym_yield, + ACTIONS(776), 1, anon_sym_LPAREN, - ACTIONS(787), 1, + ACTIONS(792), 1, + anon_sym_STAR, + ACTIONS(816), 1, sym_identifier, - ACTIONS(795), 1, + ACTIONS(822), 1, anon_sym_await, - ACTIONS(899), 1, + ACTIONS(874), 1, anon_sym_RPAREN, - STATE(621), 1, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, - STATE(719), 1, + STATE(726), 1, sym_primary_expression, - STATE(1261), 1, + STATE(1083), 1, sym_expression, - STATE(1577), 1, - sym_parenthesized_list_splat, - ACTIONS(304), 2, + STATE(1395), 1, + sym_yield, + STATE(1680), 1, + sym__collection_elements, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(296), 3, + STATE(1290), 2, + sym_list_splat, + sym_parenthesized_list_splat, + ACTIONS(606), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1570), 3, - sym_list_splat, - sym_dictionary_splat, - sym_keyword_argument, - ACTIONS(306), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(793), 5, + ACTIONS(818), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1031), 6, + STATE(1032), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(724), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -30142,74 +30424,74 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [7802] = 26, + [7872] = 25, ACTIONS(3), 1, sym_comment, - ACTIONS(288), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(310), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(603), 1, + ACTIONS(608), 1, anon_sym_LBRACK, - ACTIONS(691), 1, + ACTIONS(680), 1, anon_sym_not, - ACTIONS(693), 1, + ACTIONS(682), 1, anon_sym_lambda, - ACTIONS(695), 1, + ACTIONS(684), 1, anon_sym_yield, - ACTIONS(773), 1, - anon_sym_STAR, - ACTIONS(777), 1, + ACTIONS(776), 1, anon_sym_LPAREN, - ACTIONS(801), 1, + ACTIONS(792), 1, + anon_sym_STAR, + ACTIONS(816), 1, sym_identifier, - ACTIONS(807), 1, + ACTIONS(822), 1, anon_sym_await, - ACTIONS(851), 1, - anon_sym_RPAREN, - STATE(621), 1, + ACTIONS(894), 1, + anon_sym_RBRACK, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, - STATE(725), 1, + STATE(726), 1, sym_primary_expression, - STATE(1066), 1, + STATE(1079), 1, sym_expression, - STATE(1383), 1, - sym_yield, - STATE(1615), 1, + STATE(1716), 1, sym__collection_elements, - ACTIONS(304), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - STATE(1257), 2, - sym_list_splat, - sym_parenthesized_list_splat, - ACTIONS(601), 3, + ACTIONS(606), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 4, + STATE(1290), 3, + sym_list_splat, + sym_parenthesized_list_splat, + sym_yield, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(805), 5, + ACTIONS(818), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1031), 6, + STATE(1032), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(724), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -30227,73 +30509,75 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [7913] = 25, + [7982] = 26, ACTIONS(3), 1, sym_comment, - ACTIONS(288), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(310), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(603), 1, + ACTIONS(608), 1, anon_sym_LBRACK, - ACTIONS(691), 1, + ACTIONS(680), 1, anon_sym_not, - ACTIONS(693), 1, + ACTIONS(682), 1, anon_sym_lambda, - ACTIONS(695), 1, + ACTIONS(684), 1, anon_sym_yield, - ACTIONS(773), 1, - anon_sym_STAR, - ACTIONS(777), 1, + ACTIONS(776), 1, anon_sym_LPAREN, - ACTIONS(801), 1, + ACTIONS(792), 1, + anon_sym_STAR, + ACTIONS(816), 1, sym_identifier, - ACTIONS(807), 1, + ACTIONS(820), 1, + anon_sym_RPAREN, + ACTIONS(822), 1, anon_sym_await, - ACTIONS(889), 1, - anon_sym_RBRACK, - STATE(621), 1, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, - STATE(725), 1, + STATE(726), 1, sym_primary_expression, - STATE(1081), 1, + STATE(1090), 1, sym_expression, - STATE(1656), 1, + STATE(1404), 1, + sym_yield, + STATE(1687), 1, sym__collection_elements, - ACTIONS(304), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(601), 3, + STATE(1290), 2, + sym_list_splat, + sym_parenthesized_list_splat, + ACTIONS(606), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1257), 3, - sym_list_splat, - sym_parenthesized_list_splat, - sym_yield, - ACTIONS(306), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(805), 5, + ACTIONS(818), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1031), 6, + STATE(1032), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(724), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -30311,73 +30595,74 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [8022] = 25, + [8094] = 25, ACTIONS(3), 1, sym_comment, - ACTIONS(53), 1, - anon_sym_STAR_STAR, - ACTIONS(288), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(300), 1, - anon_sym_lambda, - ACTIONS(310), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(591), 1, + ACTIONS(608), 1, anon_sym_LBRACK, - ACTIONS(719), 1, - anon_sym_STAR, - ACTIONS(747), 1, + ACTIONS(680), 1, anon_sym_not, - ACTIONS(769), 1, + ACTIONS(682), 1, + anon_sym_lambda, + ACTIONS(684), 1, + anon_sym_yield, + ACTIONS(776), 1, anon_sym_LPAREN, - ACTIONS(787), 1, + ACTIONS(792), 1, + anon_sym_STAR, + ACTIONS(816), 1, sym_identifier, - ACTIONS(795), 1, + ACTIONS(822), 1, anon_sym_await, - ACTIONS(901), 1, - anon_sym_RPAREN, - STATE(621), 1, + ACTIONS(856), 1, + anon_sym_RBRACK, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, - STATE(719), 1, + STATE(726), 1, sym_primary_expression, - STATE(1261), 1, + STATE(1085), 1, sym_expression, - STATE(1577), 1, - sym_parenthesized_list_splat, - ACTIONS(304), 2, + STATE(1698), 1, + sym__collection_elements, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(296), 3, + ACTIONS(606), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1570), 3, + STATE(1290), 3, sym_list_splat, - sym_dictionary_splat, - sym_keyword_argument, - ACTIONS(306), 4, + sym_parenthesized_list_splat, + sym_yield, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(793), 5, + ACTIONS(818), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1031), 6, + STATE(1032), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(724), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -30395,74 +30680,74 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [8131] = 26, + [8204] = 25, ACTIONS(3), 1, sym_comment, - ACTIONS(288), 1, + ACTIONS(55), 1, + anon_sym_STAR_STAR, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(310), 1, + ACTIONS(305), 1, + anon_sym_lambda, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(603), 1, + ACTIONS(586), 1, anon_sym_LBRACK, - ACTIONS(691), 1, - anon_sym_not, - ACTIONS(693), 1, - anon_sym_lambda, - ACTIONS(695), 1, - anon_sym_yield, - ACTIONS(773), 1, + ACTIONS(726), 1, anon_sym_STAR, - ACTIONS(777), 1, + ACTIONS(752), 1, + anon_sym_not, + ACTIONS(788), 1, anon_sym_LPAREN, - ACTIONS(801), 1, + ACTIONS(800), 1, sym_identifier, - ACTIONS(803), 1, - anon_sym_RPAREN, - ACTIONS(807), 1, + ACTIONS(808), 1, anon_sym_await, - STATE(621), 1, + ACTIONS(906), 1, + anon_sym_RPAREN, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, - STATE(725), 1, + STATE(719), 1, sym_primary_expression, - STATE(1079), 1, + STATE(1280), 1, sym_expression, - STATE(1400), 1, - sym_yield, - STATE(1675), 1, - sym__collection_elements, - ACTIONS(304), 2, + STATE(1524), 1, + sym_parenthesized_list_splat, + ACTIONS(309), 2, sym_ellipsis, sym_float, - STATE(1257), 2, - sym_list_splat, - sym_parenthesized_list_splat, - ACTIONS(601), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 4, + STATE(1567), 3, + sym_list_splat, + sym_dictionary_splat, + sym_keyword_argument, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(805), 5, + ACTIONS(802), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1031), 6, + STATE(1032), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(724), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -30480,73 +30765,74 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [8242] = 25, + [8314] = 25, ACTIONS(3), 1, sym_comment, - ACTIONS(288), 1, + ACTIONS(55), 1, + anon_sym_STAR_STAR, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(310), 1, + ACTIONS(305), 1, + anon_sym_lambda, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(603), 1, + ACTIONS(586), 1, anon_sym_LBRACK, - ACTIONS(691), 1, - anon_sym_not, - ACTIONS(693), 1, - anon_sym_lambda, - ACTIONS(695), 1, - anon_sym_yield, - ACTIONS(773), 1, + ACTIONS(726), 1, anon_sym_STAR, - ACTIONS(777), 1, + ACTIONS(752), 1, + anon_sym_not, + ACTIONS(788), 1, anon_sym_LPAREN, - ACTIONS(801), 1, + ACTIONS(800), 1, sym_identifier, - ACTIONS(807), 1, + ACTIONS(808), 1, anon_sym_await, - ACTIONS(847), 1, - anon_sym_RBRACK, - STATE(621), 1, + ACTIONS(908), 1, + anon_sym_RPAREN, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, - STATE(725), 1, + STATE(719), 1, sym_primary_expression, - STATE(1086), 1, + STATE(1280), 1, sym_expression, - STATE(1679), 1, - sym__collection_elements, - ACTIONS(304), 2, + STATE(1524), 1, + sym_parenthesized_list_splat, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(601), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1257), 3, + STATE(1567), 3, sym_list_splat, - sym_parenthesized_list_splat, - sym_yield, - ACTIONS(306), 4, + sym_dictionary_splat, + sym_keyword_argument, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(805), 5, + ACTIONS(802), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1031), 6, + STATE(1032), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(724), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -30564,73 +30850,75 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [8351] = 25, + [8424] = 26, ACTIONS(3), 1, sym_comment, - ACTIONS(288), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(310), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(603), 1, + ACTIONS(608), 1, anon_sym_LBRACK, - ACTIONS(691), 1, + ACTIONS(680), 1, anon_sym_not, - ACTIONS(693), 1, + ACTIONS(682), 1, anon_sym_lambda, - ACTIONS(695), 1, + ACTIONS(684), 1, anon_sym_yield, - ACTIONS(773), 1, - anon_sym_STAR, - ACTIONS(777), 1, + ACTIONS(776), 1, anon_sym_LPAREN, - ACTIONS(801), 1, + ACTIONS(792), 1, + anon_sym_STAR, + ACTIONS(816), 1, sym_identifier, - ACTIONS(807), 1, + ACTIONS(822), 1, anon_sym_await, - ACTIONS(903), 1, - anon_sym_RBRACK, - STATE(621), 1, + ACTIONS(854), 1, + anon_sym_RPAREN, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, - STATE(725), 1, + STATE(726), 1, sym_primary_expression, - STATE(1081), 1, + STATE(1070), 1, sym_expression, - STATE(1656), 1, + STATE(1430), 1, + sym_yield, + STATE(1618), 1, sym__collection_elements, - ACTIONS(304), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(601), 3, + STATE(1290), 2, + sym_list_splat, + sym_parenthesized_list_splat, + ACTIONS(606), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1257), 3, - sym_list_splat, - sym_parenthesized_list_splat, - sym_yield, - ACTIONS(306), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(805), 5, + ACTIONS(818), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1031), 6, + STATE(1032), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(724), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -30648,71 +30936,72 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [8460] = 24, + [8536] = 24, ACTIONS(3), 1, sym_comment, - ACTIONS(263), 1, + ACTIONS(268), 1, sym_identifier, - ACTIONS(288), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(300), 1, + ACTIONS(305), 1, anon_sym_lambda, - ACTIONS(308), 1, + ACTIONS(313), 1, anon_sym_await, - ACTIONS(310), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(578), 1, + ACTIONS(575), 1, anon_sym_LPAREN, - ACTIONS(591), 1, + ACTIONS(586), 1, anon_sym_LBRACK, - ACTIONS(747), 1, + ACTIONS(752), 1, anon_sym_not, - ACTIONS(773), 1, + ACTIONS(792), 1, anon_sym_STAR, - ACTIONS(905), 1, + ACTIONS(910), 1, anon_sym_COLON, - STATE(621), 1, + ACTIONS(912), 1, + anon_sym_RBRACK, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, STATE(719), 1, sym_primary_expression, - STATE(1246), 1, + STATE(1236), 1, sym_expression, - STATE(1693), 1, - sym_index_expression_list, - ACTIONS(304), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(296), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1407), 3, + STATE(1515), 3, sym_list_splat, sym__index_expression, sym_slice, - ACTIONS(306), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(276), 5, + ACTIONS(270), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1031), 6, + STATE(1032), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(724), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -30730,71 +31019,72 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [8566] = 24, + [8643] = 24, ACTIONS(3), 1, sym_comment, - ACTIONS(53), 1, - anon_sym_STAR_STAR, - ACTIONS(288), 1, + ACTIONS(268), 1, + sym_identifier, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(300), 1, + ACTIONS(305), 1, anon_sym_lambda, - ACTIONS(310), 1, + ACTIONS(313), 1, + anon_sym_await, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(591), 1, + ACTIONS(575), 1, + anon_sym_LPAREN, + ACTIONS(586), 1, anon_sym_LBRACK, - ACTIONS(719), 1, - anon_sym_STAR, - ACTIONS(747), 1, + ACTIONS(752), 1, anon_sym_not, - ACTIONS(769), 1, - anon_sym_LPAREN, - ACTIONS(787), 1, - sym_identifier, - ACTIONS(795), 1, - anon_sym_await, - STATE(621), 1, + ACTIONS(792), 1, + anon_sym_STAR, + ACTIONS(910), 1, + anon_sym_COLON, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, STATE(719), 1, sym_primary_expression, - STATE(1261), 1, + STATE(1236), 1, sym_expression, - STATE(1577), 1, - sym_parenthesized_list_splat, - ACTIONS(304), 2, + STATE(1696), 1, + sym_index_expression_list, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(296), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1570), 3, + STATE(1394), 3, sym_list_splat, - sym_dictionary_splat, - sym_keyword_argument, - ACTIONS(306), 4, + sym__index_expression, + sym_slice, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(793), 5, + ACTIONS(270), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1031), 6, + STATE(1032), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(724), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -30812,71 +31102,72 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [8672] = 24, + [8750] = 24, ACTIONS(3), 1, sym_comment, - ACTIONS(263), 1, - sym_identifier, - ACTIONS(288), 1, + ACTIONS(55), 1, + anon_sym_STAR_STAR, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(300), 1, + ACTIONS(305), 1, anon_sym_lambda, - ACTIONS(308), 1, - anon_sym_await, - ACTIONS(310), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(578), 1, - anon_sym_LPAREN, - ACTIONS(591), 1, + ACTIONS(586), 1, anon_sym_LBRACK, - ACTIONS(747), 1, - anon_sym_not, - ACTIONS(773), 1, + ACTIONS(726), 1, anon_sym_STAR, - ACTIONS(905), 1, - anon_sym_COLON, - ACTIONS(907), 1, - anon_sym_RBRACK, - STATE(621), 1, + ACTIONS(752), 1, + anon_sym_not, + ACTIONS(788), 1, + anon_sym_LPAREN, + ACTIONS(800), 1, + sym_identifier, + ACTIONS(808), 1, + anon_sym_await, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, STATE(719), 1, sym_primary_expression, - STATE(1246), 1, + STATE(1280), 1, sym_expression, - ACTIONS(304), 2, + STATE(1524), 1, + sym_parenthesized_list_splat, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(296), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1508), 3, + STATE(1567), 3, sym_list_splat, - sym__index_expression, - sym_slice, - ACTIONS(306), 4, + sym_dictionary_splat, + sym_keyword_argument, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(276), 5, + ACTIONS(802), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1031), 6, + STATE(1032), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(724), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -30894,71 +31185,72 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [8778] = 24, + [8857] = 24, ACTIONS(3), 1, sym_comment, - ACTIONS(263), 1, + ACTIONS(268), 1, sym_identifier, - ACTIONS(288), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(300), 1, + ACTIONS(305), 1, anon_sym_lambda, - ACTIONS(308), 1, + ACTIONS(313), 1, anon_sym_await, - ACTIONS(310), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(591), 1, + ACTIONS(575), 1, + anon_sym_LPAREN, + ACTIONS(586), 1, anon_sym_LBRACK, - ACTIONS(695), 1, - anon_sym_yield, - ACTIONS(747), 1, + ACTIONS(752), 1, anon_sym_not, - ACTIONS(769), 1, - anon_sym_LPAREN, - ACTIONS(773), 1, + ACTIONS(792), 1, anon_sym_STAR, - ACTIONS(813), 1, - anon_sym_RPAREN, - STATE(621), 1, + ACTIONS(910), 1, + anon_sym_COLON, + ACTIONS(914), 1, + anon_sym_RBRACK, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, STATE(719), 1, sym_primary_expression, - STATE(1174), 1, + STATE(1236), 1, sym_expression, - ACTIONS(304), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(296), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1315), 3, + STATE(1515), 3, sym_list_splat, - sym_parenthesized_list_splat, - sym_yield, - ACTIONS(306), 4, + sym__index_expression, + sym_slice, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(276), 5, + ACTIONS(270), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1031), 6, + STATE(1032), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(724), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -30976,71 +31268,66 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [8884] = 24, + [8964] = 18, ACTIONS(3), 1, sym_comment, - ACTIONS(263), 1, - sym_identifier, - ACTIONS(288), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(300), 1, - anon_sym_lambda, - ACTIONS(308), 1, - anon_sym_await, - ACTIONS(310), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(578), 1, + ACTIONS(575), 1, anon_sym_LPAREN, - ACTIONS(591), 1, + ACTIONS(586), 1, anon_sym_LBRACK, - ACTIONS(747), 1, - anon_sym_not, - ACTIONS(773), 1, - anon_sym_STAR, - ACTIONS(905), 1, - anon_sym_COLON, - ACTIONS(909), 1, - anon_sym_RBRACK, - STATE(621), 1, + ACTIONS(590), 1, + anon_sym_await, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, - STATE(719), 1, + STATE(741), 1, sym_primary_expression, - STATE(1246), 1, - sym_expression, - ACTIONS(304), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(296), 3, + ACTIONS(272), 3, + anon_sym_DOT, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1508), 3, - sym_list_splat, - sym__index_expression, - sym_slice, - ACTIONS(306), 4, + ACTIONS(916), 3, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_COLON, + ACTIONS(311), 5, sym_integer, + sym_identifier, sym_true, sym_false, sym_none, - ACTIONS(276), 5, + ACTIONS(573), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1031), 6, - sym_named_expression, - sym_not_operator, - sym_boolean_operator, - sym_comparison_operator, - sym_lambda, - sym_conditional_expression, - STATE(724), 17, + ACTIONS(303), 9, + anon_sym_GT_GT, + anon_sym_PIPE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -31058,71 +31345,72 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [8990] = 24, + [9059] = 24, ACTIONS(3), 1, sym_comment, - ACTIONS(263), 1, + ACTIONS(268), 1, sym_identifier, - ACTIONS(288), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(300), 1, + ACTIONS(305), 1, anon_sym_lambda, - ACTIONS(308), 1, + ACTIONS(313), 1, anon_sym_await, - ACTIONS(310), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(591), 1, + ACTIONS(586), 1, anon_sym_LBRACK, - ACTIONS(695), 1, + ACTIONS(684), 1, anon_sym_yield, - ACTIONS(747), 1, + ACTIONS(752), 1, anon_sym_not, - ACTIONS(769), 1, + ACTIONS(788), 1, anon_sym_LPAREN, - ACTIONS(773), 1, + ACTIONS(792), 1, anon_sym_STAR, - ACTIONS(813), 1, + ACTIONS(814), 1, anon_sym_RPAREN, - STATE(621), 1, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, STATE(719), 1, sym_primary_expression, - STATE(1174), 1, + STATE(1193), 1, sym_expression, - ACTIONS(304), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(296), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1315), 3, + STATE(1348), 3, sym_list_splat, sym_parenthesized_list_splat, sym_yield, - ACTIONS(306), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(276), 5, + ACTIONS(270), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1031), 6, + STATE(1032), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(724), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -31140,71 +31428,72 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [9096] = 24, + [9166] = 24, ACTIONS(3), 1, sym_comment, - ACTIONS(263), 1, + ACTIONS(268), 1, sym_identifier, - ACTIONS(288), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(300), 1, + ACTIONS(305), 1, anon_sym_lambda, - ACTIONS(308), 1, + ACTIONS(313), 1, anon_sym_await, - ACTIONS(310), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(578), 1, + ACTIONS(575), 1, anon_sym_LPAREN, - ACTIONS(591), 1, + ACTIONS(586), 1, anon_sym_LBRACK, - ACTIONS(747), 1, + ACTIONS(752), 1, anon_sym_not, - ACTIONS(773), 1, + ACTIONS(792), 1, anon_sym_STAR, - ACTIONS(905), 1, + ACTIONS(910), 1, anon_sym_COLON, - STATE(621), 1, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, STATE(719), 1, sym_primary_expression, - STATE(1246), 1, + STATE(1236), 1, sym_expression, - STATE(1660), 1, + STATE(1594), 1, sym_index_expression_list, - ACTIONS(304), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(296), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1377), 3, + STATE(1405), 3, sym_list_splat, sym__index_expression, sym_slice, - ACTIONS(306), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(276), 5, + ACTIONS(270), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1031), 6, + STATE(1032), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(724), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -31222,65 +31511,72 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [9202] = 18, + [9273] = 24, ACTIONS(3), 1, sym_comment, - ACTIONS(288), 1, + ACTIONS(268), 1, + sym_identifier, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(310), 1, + ACTIONS(305), 1, + anon_sym_lambda, + ACTIONS(313), 1, + anon_sym_await, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(578), 1, - anon_sym_LPAREN, - ACTIONS(591), 1, + ACTIONS(586), 1, anon_sym_LBRACK, - ACTIONS(595), 1, - anon_sym_await, - STATE(621), 1, + ACTIONS(684), 1, + anon_sym_yield, + ACTIONS(752), 1, + anon_sym_not, + ACTIONS(788), 1, + anon_sym_LPAREN, + ACTIONS(792), 1, + anon_sym_STAR, + ACTIONS(814), 1, + anon_sym_RPAREN, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, - STATE(735), 1, + STATE(719), 1, sym_primary_expression, - ACTIONS(304), 2, + STATE(1193), 1, + sym_expression, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(265), 3, - anon_sym_DOT, - anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(296), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(911), 3, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_COLON, - ACTIONS(306), 5, + STATE(1348), 3, + sym_list_splat, + sym_parenthesized_list_splat, + sym_yield, + ACTIONS(311), 4, sym_integer, - sym_identifier, sym_true, sym_false, sym_none, - ACTIONS(583), 5, + ACTIONS(270), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - ACTIONS(298), 9, - anon_sym_GT_GT, - anon_sym_PIPE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, - STATE(724), 17, + STATE(1032), 6, + sym_named_expression, + sym_not_operator, + sym_boolean_operator, + sym_comparison_operator, + sym_lambda, + sym_conditional_expression, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -31298,71 +31594,72 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [9296] = 24, + [9380] = 24, ACTIONS(3), 1, sym_comment, - ACTIONS(263), 1, + ACTIONS(268), 1, sym_identifier, - ACTIONS(288), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(300), 1, + ACTIONS(305), 1, anon_sym_lambda, - ACTIONS(308), 1, + ACTIONS(313), 1, anon_sym_await, - ACTIONS(310), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(578), 1, + ACTIONS(575), 1, anon_sym_LPAREN, - ACTIONS(591), 1, + ACTIONS(586), 1, anon_sym_LBRACK, - ACTIONS(747), 1, + ACTIONS(752), 1, anon_sym_not, - ACTIONS(773), 1, + ACTIONS(792), 1, anon_sym_STAR, - ACTIONS(905), 1, + ACTIONS(910), 1, anon_sym_COLON, - STATE(621), 1, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, STATE(719), 1, sym_primary_expression, - STATE(1246), 1, + STATE(1236), 1, sym_expression, - STATE(1669), 1, + STATE(1608), 1, sym_index_expression_list, - ACTIONS(304), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(296), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1414), 3, + STATE(1417), 3, sym_list_splat, sym__index_expression, sym_slice, - ACTIONS(306), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(276), 5, + ACTIONS(270), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1031), 6, + STATE(1032), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(724), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -31380,71 +31677,72 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [9402] = 24, + [9487] = 24, ACTIONS(3), 1, sym_comment, - ACTIONS(263), 1, + ACTIONS(268), 1, sym_identifier, - ACTIONS(288), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(300), 1, + ACTIONS(305), 1, anon_sym_lambda, - ACTIONS(308), 1, + ACTIONS(313), 1, anon_sym_await, - ACTIONS(310), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(578), 1, + ACTIONS(575), 1, anon_sym_LPAREN, - ACTIONS(591), 1, + ACTIONS(586), 1, anon_sym_LBRACK, - ACTIONS(747), 1, + ACTIONS(752), 1, anon_sym_not, - ACTIONS(773), 1, + ACTIONS(792), 1, anon_sym_STAR, - ACTIONS(905), 1, + ACTIONS(910), 1, anon_sym_COLON, - STATE(621), 1, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, STATE(719), 1, sym_primary_expression, - STATE(1246), 1, + STATE(1236), 1, sym_expression, - STATE(1653), 1, + STATE(1681), 1, sym_index_expression_list, - ACTIONS(304), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(296), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1432), 3, + STATE(1442), 3, sym_list_splat, sym__index_expression, sym_slice, - ACTIONS(306), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(276), 5, + ACTIONS(270), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1031), 6, + STATE(1032), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(724), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -31462,69 +31760,70 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [9508] = 23, + [9594] = 23, ACTIONS(3), 1, sym_comment, - ACTIONS(263), 1, + ACTIONS(268), 1, sym_identifier, - ACTIONS(288), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(300), 1, + ACTIONS(305), 1, anon_sym_lambda, - ACTIONS(308), 1, + ACTIONS(313), 1, anon_sym_await, - ACTIONS(310), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(591), 1, + ACTIONS(586), 1, anon_sym_LBRACK, - ACTIONS(695), 1, + ACTIONS(684), 1, anon_sym_yield, - ACTIONS(747), 1, + ACTIONS(752), 1, anon_sym_not, - ACTIONS(769), 1, + ACTIONS(788), 1, anon_sym_LPAREN, - ACTIONS(773), 1, + ACTIONS(792), 1, anon_sym_STAR, - STATE(621), 1, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, STATE(719), 1, sym_primary_expression, - STATE(1174), 1, + STATE(1193), 1, sym_expression, - ACTIONS(304), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(296), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1315), 3, + STATE(1348), 3, sym_list_splat, sym_parenthesized_list_splat, sym_yield, - ACTIONS(306), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(276), 5, + ACTIONS(270), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1031), 6, + STATE(1032), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(724), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -31542,70 +31841,70 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [9611] = 24, + [9698] = 23, ACTIONS(3), 1, sym_comment, - ACTIONS(53), 1, - anon_sym_STAR_STAR, - ACTIONS(263), 1, + ACTIONS(268), 1, sym_identifier, - ACTIONS(288), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(300), 1, + ACTIONS(305), 1, anon_sym_lambda, - ACTIONS(308), 1, + ACTIONS(313), 1, anon_sym_await, - ACTIONS(310), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(578), 1, + ACTIONS(575), 1, anon_sym_LPAREN, - ACTIONS(591), 1, + ACTIONS(586), 1, anon_sym_LBRACK, - ACTIONS(719), 1, - anon_sym_STAR, - ACTIONS(747), 1, + ACTIONS(752), 1, anon_sym_not, - STATE(621), 1, + ACTIONS(792), 1, + anon_sym_STAR, + ACTIONS(910), 1, + anon_sym_COLON, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, STATE(719), 1, sym_primary_expression, - STATE(1237), 1, + STATE(1236), 1, sym_expression, - STATE(1637), 1, - sym_expression_list, - ACTIONS(304), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - STATE(1510), 2, - sym_list_splat, - sym_dictionary_splat, - ACTIONS(296), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 4, + STATE(1515), 3, + sym_list_splat, + sym__index_expression, + sym_slice, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(276), 5, + ACTIONS(270), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1031), 6, + STATE(1032), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(724), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -31623,70 +31922,71 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [9716] = 24, + [9802] = 24, ACTIONS(3), 1, sym_comment, - ACTIONS(51), 1, - anon_sym_LBRACE, - ACTIONS(53), 1, + ACTIONS(55), 1, anon_sym_STAR_STAR, - ACTIONS(69), 1, - anon_sym_not, - ACTIONS(71), 1, + ACTIONS(268), 1, + sym_identifier, + ACTIONS(293), 1, + anon_sym_LBRACE, + ACTIONS(305), 1, anon_sym_lambda, - ACTIONS(81), 1, + ACTIONS(313), 1, + anon_sym_await, + ACTIONS(315), 1, sym__string_start, - ACTIONS(83), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(314), 1, - sym_identifier, - ACTIONS(320), 1, - anon_sym_await, - ACTIONS(568), 1, + ACTIONS(575), 1, anon_sym_LPAREN, - ACTIONS(574), 1, + ACTIONS(586), 1, anon_sym_LBRACK, - ACTIONS(719), 1, + ACTIONS(726), 1, anon_sym_STAR, - STATE(763), 1, + ACTIONS(752), 1, + anon_sym_not, + STATE(645), 1, + sym_string, + STATE(658), 1, sym_template_string, - STATE(779), 1, + STATE(719), 1, sym_primary_expression, - STATE(782), 1, - sym_string, - STATE(1180), 1, + STATE(1246), 1, sym_expression, - STATE(1579), 1, + STATE(1632), 1, sym_expression_list, - ACTIONS(75), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - STATE(1549), 2, + STATE(1518), 2, sym_list_splat, sym_dictionary_splat, - ACTIONS(47), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(77), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(316), 5, + ACTIONS(270), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1158), 6, + STATE(1032), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(908), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -31704,69 +32004,71 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [9821] = 23, + [9908] = 24, ACTIONS(3), 1, sym_comment, - ACTIONS(263), 1, + ACTIONS(55), 1, + anon_sym_STAR_STAR, + ACTIONS(268), 1, sym_identifier, - ACTIONS(288), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(300), 1, + ACTIONS(305), 1, anon_sym_lambda, - ACTIONS(308), 1, + ACTIONS(313), 1, anon_sym_await, - ACTIONS(310), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(578), 1, + ACTIONS(575), 1, anon_sym_LPAREN, - ACTIONS(591), 1, + ACTIONS(586), 1, anon_sym_LBRACK, - ACTIONS(747), 1, - anon_sym_not, - ACTIONS(773), 1, + ACTIONS(726), 1, anon_sym_STAR, - ACTIONS(905), 1, - anon_sym_COLON, - STATE(621), 1, + ACTIONS(752), 1, + anon_sym_not, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, STATE(719), 1, sym_primary_expression, - STATE(1246), 1, + STATE(1241), 1, sym_expression, - ACTIONS(304), 2, + STATE(1649), 1, + sym_expression_list, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(296), 3, + STATE(1518), 2, + sym_list_splat, + sym_dictionary_splat, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1508), 3, - sym_list_splat, - sym__index_expression, - sym_slice, - ACTIONS(306), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(276), 5, + ACTIONS(270), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1031), 6, + STATE(1032), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(724), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -31784,70 +32086,71 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [9924] = 24, + [10014] = 24, ACTIONS(3), 1, sym_comment, ACTIONS(53), 1, - anon_sym_STAR_STAR, - ACTIONS(263), 1, - sym_identifier, - ACTIONS(288), 1, anon_sym_LBRACE, - ACTIONS(300), 1, + ACTIONS(55), 1, + anon_sym_STAR_STAR, + ACTIONS(71), 1, + anon_sym_not, + ACTIONS(73), 1, anon_sym_lambda, - ACTIONS(308), 1, - anon_sym_await, - ACTIONS(310), 1, + ACTIONS(83), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(85), 1, sym__template_string_start, - ACTIONS(578), 1, + ACTIONS(349), 1, + sym_identifier, + ACTIONS(355), 1, + anon_sym_await, + ACTIONS(594), 1, anon_sym_LPAREN, - ACTIONS(591), 1, + ACTIONS(598), 1, anon_sym_LBRACK, - ACTIONS(719), 1, + ACTIONS(726), 1, anon_sym_STAR, - ACTIONS(747), 1, - anon_sym_not, - STATE(621), 1, - sym_string, - STATE(624), 1, - sym_template_string, - STATE(719), 1, + STATE(765), 1, sym_primary_expression, - STATE(1240), 1, + STATE(769), 1, + sym_template_string, + STATE(775), 1, + sym_string, + STATE(1207), 1, sym_expression, - STATE(1625), 1, + STATE(1571), 1, sym_expression_list, - ACTIONS(304), 2, + ACTIONS(77), 2, sym_ellipsis, sym_float, - STATE(1510), 2, + STATE(1520), 2, sym_list_splat, sym_dictionary_splat, - ACTIONS(296), 3, + ACTIONS(49), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 4, + ACTIONS(79), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(276), 5, + ACTIONS(351), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1031), 6, + STATE(1156), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(724), 17, + STATE(920), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -31865,70 +32168,71 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [10029] = 24, + [10120] = 24, ACTIONS(3), 1, sym_comment, - ACTIONS(53), 1, + ACTIONS(55), 1, anon_sym_STAR_STAR, - ACTIONS(263), 1, + ACTIONS(268), 1, sym_identifier, - ACTIONS(288), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(300), 1, + ACTIONS(305), 1, anon_sym_lambda, - ACTIONS(308), 1, + ACTIONS(313), 1, anon_sym_await, - ACTIONS(310), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(578), 1, + ACTIONS(575), 1, anon_sym_LPAREN, - ACTIONS(591), 1, + ACTIONS(586), 1, anon_sym_LBRACK, - ACTIONS(719), 1, + ACTIONS(726), 1, anon_sym_STAR, - ACTIONS(747), 1, + ACTIONS(752), 1, anon_sym_not, - STATE(621), 1, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, STATE(719), 1, sym_primary_expression, - STATE(1236), 1, + STATE(1238), 1, sym_expression, - STATE(1610), 1, + STATE(1621), 1, sym_expression_list, - ACTIONS(304), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - STATE(1510), 2, + STATE(1518), 2, sym_list_splat, sym_dictionary_splat, - ACTIONS(296), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(276), 5, + ACTIONS(270), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1031), 6, + STATE(1032), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(724), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -31946,70 +32250,71 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [10134] = 24, + [10226] = 24, ACTIONS(3), 1, sym_comment, - ACTIONS(53), 1, + ACTIONS(55), 1, anon_sym_STAR_STAR, - ACTIONS(263), 1, + ACTIONS(268), 1, sym_identifier, - ACTIONS(288), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(300), 1, + ACTIONS(305), 1, anon_sym_lambda, - ACTIONS(308), 1, + ACTIONS(313), 1, anon_sym_await, - ACTIONS(310), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(578), 1, + ACTIONS(575), 1, anon_sym_LPAREN, - ACTIONS(591), 1, + ACTIONS(586), 1, anon_sym_LBRACK, - ACTIONS(719), 1, + ACTIONS(726), 1, anon_sym_STAR, - ACTIONS(747), 1, + ACTIONS(752), 1, anon_sym_not, - STATE(621), 1, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, STATE(719), 1, sym_primary_expression, - STATE(1235), 1, + STATE(1237), 1, sym_expression, - STATE(1603), 1, + STATE(1614), 1, sym_expression_list, - ACTIONS(304), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - STATE(1510), 2, + STATE(1518), 2, sym_list_splat, sym_dictionary_splat, - ACTIONS(296), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(276), 5, + ACTIONS(270), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1031), 6, + STATE(1032), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(724), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -32027,68 +32332,69 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [10239] = 23, + [10332] = 23, ACTIONS(3), 1, sym_comment, - ACTIONS(53), 1, + ACTIONS(55), 1, anon_sym_STAR_STAR, - ACTIONS(263), 1, + ACTIONS(268), 1, sym_identifier, - ACTIONS(288), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(300), 1, + ACTIONS(305), 1, anon_sym_lambda, - ACTIONS(308), 1, + ACTIONS(313), 1, anon_sym_await, - ACTIONS(310), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(578), 1, + ACTIONS(575), 1, anon_sym_LPAREN, - ACTIONS(591), 1, + ACTIONS(586), 1, anon_sym_LBRACK, - ACTIONS(747), 1, + ACTIONS(752), 1, anon_sym_not, - ACTIONS(913), 1, + ACTIONS(918), 1, anon_sym_RBRACE, - STATE(621), 1, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, STATE(719), 1, sym_primary_expression, - STATE(1331), 1, + STATE(1313), 1, sym_expression, - ACTIONS(304), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - STATE(1563), 2, + STATE(1569), 2, sym_dictionary_splat, sym_pair, - ACTIONS(296), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(276), 5, + ACTIONS(270), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1031), 6, + STATE(1032), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(724), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -32106,68 +32412,69 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [10341] = 23, + [10435] = 23, ACTIONS(3), 1, sym_comment, - ACTIONS(51), 1, + ACTIONS(55), 1, + anon_sym_STAR_STAR, + ACTIONS(268), 1, + sym_identifier, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(69), 1, - anon_sym_not, - ACTIONS(71), 1, + ACTIONS(305), 1, anon_sym_lambda, - ACTIONS(81), 1, + ACTIONS(313), 1, + anon_sym_await, + ACTIONS(315), 1, sym__string_start, - ACTIONS(83), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(314), 1, - sym_identifier, - ACTIONS(320), 1, - anon_sym_await, - ACTIONS(568), 1, + ACTIONS(575), 1, anon_sym_LPAREN, - ACTIONS(574), 1, + ACTIONS(586), 1, anon_sym_LBRACK, - ACTIONS(833), 1, - anon_sym_STAR, - ACTIONS(835), 1, - anon_sym_STAR_STAR, - STATE(763), 1, + ACTIONS(752), 1, + anon_sym_not, + ACTIONS(920), 1, + anon_sym_RBRACE, + STATE(645), 1, + sym_string, + STATE(658), 1, sym_template_string, - STATE(779), 1, + STATE(719), 1, sym_primary_expression, - STATE(782), 1, - sym_string, - STATE(1199), 1, + STATE(1313), 1, sym_expression, - ACTIONS(75), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - STATE(1358), 2, - sym_list_splat, + STATE(1569), 2, sym_dictionary_splat, - ACTIONS(47), 3, + sym_pair, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(77), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(316), 5, + ACTIONS(270), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1158), 6, + STATE(1032), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(908), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -32185,68 +32492,69 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [10443] = 23, + [10538] = 23, ACTIONS(3), 1, sym_comment, - ACTIONS(609), 1, - anon_sym_LPAREN, - ACTIONS(617), 1, - anon_sym_LBRACK, - ACTIONS(619), 1, + ACTIONS(55), 1, + anon_sym_STAR_STAR, + ACTIONS(268), 1, + sym_identifier, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(625), 1, + ACTIONS(305), 1, + anon_sym_lambda, + ACTIONS(313), 1, + anon_sym_await, + ACTIONS(315), 1, sym__string_start, - ACTIONS(627), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(749), 1, - sym_identifier, - ACTIONS(755), 1, + ACTIONS(575), 1, + anon_sym_LPAREN, + ACTIONS(586), 1, + anon_sym_LBRACK, + ACTIONS(752), 1, anon_sym_not, - ACTIONS(757), 1, - anon_sym_lambda, - ACTIONS(759), 1, - anon_sym_await, - ACTIONS(797), 1, - anon_sym_STAR, - ACTIONS(799), 1, - anon_sym_STAR_STAR, - STATE(766), 1, - sym_primary_expression, - STATE(767), 1, + ACTIONS(922), 1, + anon_sym_RBRACE, + STATE(645), 1, sym_string, - STATE(768), 1, + STATE(658), 1, sym_template_string, - STATE(1164), 1, + STATE(719), 1, + sym_primary_expression, + STATE(1313), 1, sym_expression, - ACTIONS(621), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - STATE(1273), 2, - sym_list_splat, + STATE(1569), 2, sym_dictionary_splat, - ACTIONS(615), 3, + sym_pair, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(607), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(753), 5, + ACTIONS(270), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1129), 6, + STATE(1032), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(924), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -32264,68 +32572,69 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [10545] = 23, + [10641] = 23, ACTIONS(3), 1, sym_comment, - ACTIONS(53), 1, + ACTIONS(55), 1, anon_sym_STAR_STAR, - ACTIONS(263), 1, + ACTIONS(268), 1, sym_identifier, - ACTIONS(288), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(300), 1, + ACTIONS(305), 1, anon_sym_lambda, - ACTIONS(308), 1, + ACTIONS(313), 1, anon_sym_await, - ACTIONS(310), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(578), 1, + ACTIONS(575), 1, anon_sym_LPAREN, - ACTIONS(591), 1, + ACTIONS(586), 1, anon_sym_LBRACK, - ACTIONS(747), 1, + ACTIONS(752), 1, anon_sym_not, - ACTIONS(915), 1, + ACTIONS(924), 1, anon_sym_RBRACE, - STATE(621), 1, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, STATE(719), 1, sym_primary_expression, - STATE(1331), 1, + STATE(1313), 1, sym_expression, - ACTIONS(304), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - STATE(1563), 2, + STATE(1569), 2, sym_dictionary_splat, sym_pair, - ACTIONS(296), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(276), 5, + ACTIONS(270), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1031), 6, + STATE(1032), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(724), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -32343,68 +32652,69 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [10647] = 23, + [10744] = 23, ACTIONS(3), 1, sym_comment, - ACTIONS(53), 1, + ACTIONS(55), 1, anon_sym_STAR_STAR, - ACTIONS(263), 1, + ACTIONS(268), 1, sym_identifier, - ACTIONS(288), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(300), 1, + ACTIONS(305), 1, anon_sym_lambda, - ACTIONS(308), 1, + ACTIONS(313), 1, anon_sym_await, - ACTIONS(310), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(578), 1, + ACTIONS(575), 1, anon_sym_LPAREN, - ACTIONS(591), 1, + ACTIONS(586), 1, anon_sym_LBRACK, - ACTIONS(747), 1, + ACTIONS(752), 1, anon_sym_not, - ACTIONS(917), 1, + ACTIONS(926), 1, anon_sym_RBRACE, - STATE(621), 1, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, STATE(719), 1, sym_primary_expression, - STATE(1331), 1, + STATE(1313), 1, sym_expression, - ACTIONS(304), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - STATE(1563), 2, + STATE(1569), 2, sym_dictionary_splat, sym_pair, - ACTIONS(296), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(276), 5, + ACTIONS(270), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1031), 6, + STATE(1032), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(724), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -32422,68 +32732,149 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [10749] = 23, + [10847] = 23, ACTIONS(3), 1, sym_comment, ACTIONS(53), 1, + anon_sym_LBRACE, + ACTIONS(71), 1, + anon_sym_not, + ACTIONS(73), 1, + anon_sym_lambda, + ACTIONS(83), 1, + sym__string_start, + ACTIONS(85), 1, + sym__template_string_start, + ACTIONS(349), 1, + sym_identifier, + ACTIONS(355), 1, + anon_sym_await, + ACTIONS(594), 1, + anon_sym_LPAREN, + ACTIONS(598), 1, + anon_sym_LBRACK, + ACTIONS(838), 1, + anon_sym_STAR, + ACTIONS(840), 1, + anon_sym_STAR_STAR, + STATE(765), 1, + sym_primary_expression, + STATE(769), 1, + sym_template_string, + STATE(775), 1, + sym_string, + STATE(1212), 1, + sym_expression, + ACTIONS(77), 2, + sym_ellipsis, + sym_float, + STATE(1317), 2, + sym_list_splat, + sym_dictionary_splat, + ACTIONS(49), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(79), 4, + sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(351), 6, + anon_sym_lazy, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(1156), 6, + sym_named_expression, + sym_not_operator, + sym_boolean_operator, + sym_comparison_operator, + sym_lambda, + sym_conditional_expression, + STATE(920), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [10950] = 23, + ACTIONS(3), 1, + sym_comment, + ACTIONS(55), 1, anon_sym_STAR_STAR, - ACTIONS(263), 1, + ACTIONS(268), 1, sym_identifier, - ACTIONS(288), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(300), 1, + ACTIONS(305), 1, anon_sym_lambda, - ACTIONS(308), 1, + ACTIONS(313), 1, anon_sym_await, - ACTIONS(310), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(578), 1, + ACTIONS(575), 1, anon_sym_LPAREN, - ACTIONS(591), 1, + ACTIONS(586), 1, anon_sym_LBRACK, - ACTIONS(747), 1, + ACTIONS(752), 1, anon_sym_not, - ACTIONS(919), 1, + ACTIONS(928), 1, anon_sym_RBRACE, - STATE(621), 1, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, STATE(719), 1, sym_primary_expression, - STATE(1331), 1, + STATE(1313), 1, sym_expression, - ACTIONS(304), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - STATE(1563), 2, + STATE(1569), 2, sym_dictionary_splat, sym_pair, - ACTIONS(296), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(276), 5, + ACTIONS(270), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1031), 6, + STATE(1032), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(724), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -32501,68 +32892,149 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [10851] = 23, + [11053] = 23, ACTIONS(3), 1, sym_comment, - ACTIONS(53), 1, + ACTIONS(616), 1, + anon_sym_LPAREN, + ACTIONS(622), 1, + anon_sym_LBRACK, + ACTIONS(624), 1, + anon_sym_LBRACE, + ACTIONS(630), 1, + sym__string_start, + ACTIONS(632), 1, + sym__template_string_start, + ACTIONS(754), 1, + sym_identifier, + ACTIONS(760), 1, + anon_sym_not, + ACTIONS(762), 1, + anon_sym_lambda, + ACTIONS(764), 1, + anon_sym_await, + ACTIONS(810), 1, + anon_sym_STAR, + ACTIONS(812), 1, + anon_sym_STAR_STAR, + STATE(763), 1, + sym_primary_expression, + STATE(766), 1, + sym_string, + STATE(776), 1, + sym_template_string, + STATE(1154), 1, + sym_expression, + ACTIONS(626), 2, + sym_ellipsis, + sym_float, + STATE(1266), 2, + sym_list_splat, + sym_dictionary_splat, + ACTIONS(620), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(612), 4, + sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(756), 6, + anon_sym_lazy, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(1104), 6, + sym_named_expression, + sym_not_operator, + sym_boolean_operator, + sym_comparison_operator, + sym_lambda, + sym_conditional_expression, + STATE(878), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [11156] = 23, + ACTIONS(3), 1, + sym_comment, + ACTIONS(55), 1, anon_sym_STAR_STAR, - ACTIONS(263), 1, + ACTIONS(268), 1, sym_identifier, - ACTIONS(288), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(300), 1, + ACTIONS(305), 1, anon_sym_lambda, - ACTIONS(308), 1, + ACTIONS(313), 1, anon_sym_await, - ACTIONS(310), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(578), 1, + ACTIONS(575), 1, anon_sym_LPAREN, - ACTIONS(591), 1, + ACTIONS(586), 1, anon_sym_LBRACK, - ACTIONS(747), 1, + ACTIONS(752), 1, anon_sym_not, - ACTIONS(921), 1, + ACTIONS(930), 1, anon_sym_RBRACE, - STATE(621), 1, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, STATE(719), 1, sym_primary_expression, - STATE(1331), 1, + STATE(1313), 1, sym_expression, - ACTIONS(304), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - STATE(1563), 2, + STATE(1569), 2, sym_dictionary_splat, sym_pair, - ACTIONS(296), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(276), 5, + ACTIONS(270), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1031), 6, + STATE(1032), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(724), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -32580,68 +33052,69 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [10953] = 23, + [11259] = 23, ACTIONS(3), 1, sym_comment, - ACTIONS(53), 1, + ACTIONS(55), 1, anon_sym_STAR_STAR, - ACTIONS(263), 1, + ACTIONS(268), 1, sym_identifier, - ACTIONS(288), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(300), 1, + ACTIONS(305), 1, anon_sym_lambda, - ACTIONS(308), 1, + ACTIONS(313), 1, anon_sym_await, - ACTIONS(310), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(578), 1, + ACTIONS(575), 1, anon_sym_LPAREN, - ACTIONS(591), 1, + ACTIONS(586), 1, anon_sym_LBRACK, - ACTIONS(747), 1, + ACTIONS(752), 1, anon_sym_not, - ACTIONS(923), 1, + ACTIONS(932), 1, anon_sym_RBRACE, - STATE(621), 1, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, STATE(719), 1, sym_primary_expression, - STATE(1331), 1, + STATE(1313), 1, sym_expression, - ACTIONS(304), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - STATE(1563), 2, + STATE(1569), 2, sym_dictionary_splat, sym_pair, - ACTIONS(296), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(276), 5, + ACTIONS(270), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1031), 6, + STATE(1032), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(724), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -32659,68 +33132,69 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [11055] = 23, + [11362] = 23, ACTIONS(3), 1, sym_comment, - ACTIONS(53), 1, + ACTIONS(55), 1, anon_sym_STAR_STAR, - ACTIONS(263), 1, + ACTIONS(268), 1, sym_identifier, - ACTIONS(288), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(300), 1, + ACTIONS(305), 1, anon_sym_lambda, - ACTIONS(308), 1, + ACTIONS(313), 1, anon_sym_await, - ACTIONS(310), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(578), 1, + ACTIONS(575), 1, anon_sym_LPAREN, - ACTIONS(591), 1, + ACTIONS(586), 1, anon_sym_LBRACK, - ACTIONS(747), 1, + ACTIONS(752), 1, anon_sym_not, - ACTIONS(925), 1, + ACTIONS(934), 1, anon_sym_RBRACE, - STATE(621), 1, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, STATE(719), 1, sym_primary_expression, - STATE(1331), 1, + STATE(1313), 1, sym_expression, - ACTIONS(304), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - STATE(1563), 2, + STATE(1569), 2, sym_dictionary_splat, sym_pair, - ACTIONS(296), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(276), 5, + ACTIONS(270), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1031), 6, + STATE(1032), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(724), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -32738,68 +33212,69 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [11157] = 23, + [11465] = 23, ACTIONS(3), 1, sym_comment, - ACTIONS(53), 1, + ACTIONS(55), 1, anon_sym_STAR_STAR, - ACTIONS(263), 1, + ACTIONS(268), 1, sym_identifier, - ACTIONS(288), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(300), 1, + ACTIONS(305), 1, anon_sym_lambda, - ACTIONS(308), 1, + ACTIONS(313), 1, anon_sym_await, - ACTIONS(310), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(578), 1, + ACTIONS(575), 1, anon_sym_LPAREN, - ACTIONS(591), 1, + ACTIONS(586), 1, anon_sym_LBRACK, - ACTIONS(747), 1, + ACTIONS(752), 1, anon_sym_not, - ACTIONS(927), 1, + ACTIONS(936), 1, anon_sym_RBRACE, - STATE(621), 1, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, STATE(719), 1, sym_primary_expression, - STATE(1331), 1, + STATE(1313), 1, sym_expression, - ACTIONS(304), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - STATE(1563), 2, + STATE(1569), 2, sym_dictionary_splat, sym_pair, - ACTIONS(296), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(276), 5, + ACTIONS(270), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1031), 6, + STATE(1032), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(724), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -32817,68 +33292,69 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [11259] = 23, + [11568] = 23, ACTIONS(3), 1, sym_comment, - ACTIONS(53), 1, + ACTIONS(55), 1, anon_sym_STAR_STAR, - ACTIONS(263), 1, + ACTIONS(268), 1, sym_identifier, - ACTIONS(288), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(300), 1, + ACTIONS(305), 1, anon_sym_lambda, - ACTIONS(308), 1, + ACTIONS(313), 1, anon_sym_await, - ACTIONS(310), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(578), 1, + ACTIONS(575), 1, anon_sym_LPAREN, - ACTIONS(591), 1, + ACTIONS(586), 1, anon_sym_LBRACK, - ACTIONS(747), 1, + ACTIONS(752), 1, anon_sym_not, - ACTIONS(929), 1, + ACTIONS(938), 1, anon_sym_RBRACE, - STATE(621), 1, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, STATE(719), 1, sym_primary_expression, - STATE(1331), 1, + STATE(1313), 1, sym_expression, - ACTIONS(304), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - STATE(1563), 2, + STATE(1569), 2, sym_dictionary_splat, sym_pair, - ACTIONS(296), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(276), 5, + ACTIONS(270), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1031), 6, + STATE(1032), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(724), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -32896,68 +33372,69 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [11361] = 23, + [11671] = 23, ACTIONS(3), 1, sym_comment, - ACTIONS(53), 1, + ACTIONS(55), 1, anon_sym_STAR_STAR, - ACTIONS(263), 1, + ACTIONS(268), 1, sym_identifier, - ACTIONS(288), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(300), 1, + ACTIONS(305), 1, anon_sym_lambda, - ACTIONS(308), 1, + ACTIONS(313), 1, anon_sym_await, - ACTIONS(310), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(578), 1, + ACTIONS(575), 1, anon_sym_LPAREN, - ACTIONS(591), 1, + ACTIONS(586), 1, anon_sym_LBRACK, - ACTIONS(747), 1, + ACTIONS(726), 1, + anon_sym_STAR, + ACTIONS(752), 1, anon_sym_not, - ACTIONS(931), 1, - anon_sym_RBRACE, - STATE(621), 1, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, STATE(719), 1, sym_primary_expression, - STATE(1331), 1, + STATE(1153), 1, sym_expression, - ACTIONS(304), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - STATE(1563), 2, + STATE(1262), 2, + sym_list_splat, sym_dictionary_splat, - sym_pair, - ACTIONS(296), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(276), 5, + ACTIONS(270), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1031), 6, + STATE(1032), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(724), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -32975,68 +33452,69 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [11463] = 23, + [11774] = 23, ACTIONS(3), 1, sym_comment, - ACTIONS(53), 1, + ACTIONS(55), 1, anon_sym_STAR_STAR, - ACTIONS(263), 1, + ACTIONS(268), 1, sym_identifier, - ACTIONS(288), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(300), 1, + ACTIONS(305), 1, anon_sym_lambda, - ACTIONS(308), 1, + ACTIONS(313), 1, anon_sym_await, - ACTIONS(310), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(578), 1, + ACTIONS(575), 1, anon_sym_LPAREN, - ACTIONS(591), 1, + ACTIONS(586), 1, anon_sym_LBRACK, - ACTIONS(747), 1, + ACTIONS(752), 1, anon_sym_not, - ACTIONS(933), 1, + ACTIONS(940), 1, anon_sym_RBRACE, - STATE(621), 1, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, STATE(719), 1, sym_primary_expression, - STATE(1331), 1, + STATE(1313), 1, sym_expression, - ACTIONS(304), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - STATE(1563), 2, + STATE(1569), 2, sym_dictionary_splat, sym_pair, - ACTIONS(296), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(276), 5, + ACTIONS(270), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1031), 6, + STATE(1032), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(724), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -33054,68 +33532,68 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [11565] = 23, + [11877] = 23, ACTIONS(3), 1, sym_comment, - ACTIONS(53), 1, - anon_sym_STAR_STAR, - ACTIONS(263), 1, + ACTIONS(268), 1, sym_identifier, - ACTIONS(288), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(300), 1, + ACTIONS(305), 1, anon_sym_lambda, - ACTIONS(308), 1, + ACTIONS(313), 1, anon_sym_await, - ACTIONS(310), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(578), 1, + ACTIONS(575), 1, anon_sym_LPAREN, - ACTIONS(591), 1, + ACTIONS(586), 1, anon_sym_LBRACK, - ACTIONS(747), 1, + ACTIONS(752), 1, anon_sym_not, - ACTIONS(935), 1, - anon_sym_RBRACE, - STATE(621), 1, + ACTIONS(792), 1, + anon_sym_STAR, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, STATE(719), 1, sym_primary_expression, - STATE(1331), 1, + STATE(1201), 1, sym_expression, - ACTIONS(304), 2, + STATE(1344), 1, + sym_list_splat, + STATE(1609), 1, + sym_type, + ACTIONS(309), 2, sym_ellipsis, sym_float, - STATE(1563), 2, - sym_dictionary_splat, - sym_pair, - ACTIONS(296), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(276), 5, + ACTIONS(270), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1031), 6, + STATE(1032), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(724), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -33133,68 +33611,68 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [11667] = 23, + [11979] = 23, ACTIONS(3), 1, sym_comment, - ACTIONS(53), 1, - anon_sym_STAR_STAR, - ACTIONS(263), 1, + ACTIONS(268), 1, sym_identifier, - ACTIONS(288), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(300), 1, + ACTIONS(305), 1, anon_sym_lambda, - ACTIONS(308), 1, + ACTIONS(313), 1, anon_sym_await, - ACTIONS(310), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(578), 1, + ACTIONS(575), 1, anon_sym_LPAREN, - ACTIONS(591), 1, + ACTIONS(586), 1, anon_sym_LBRACK, - ACTIONS(719), 1, - anon_sym_STAR, - ACTIONS(747), 1, + ACTIONS(752), 1, anon_sym_not, - STATE(621), 1, + ACTIONS(792), 1, + anon_sym_STAR, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, STATE(719), 1, sym_primary_expression, - STATE(1117), 1, + STATE(1201), 1, sym_expression, - ACTIONS(304), 2, + STATE(1344), 1, + sym_list_splat, + STATE(1647), 1, + sym_type, + ACTIONS(309), 2, sym_ellipsis, sym_float, - STATE(1267), 2, - sym_list_splat, - sym_dictionary_splat, - ACTIONS(296), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(276), 5, + ACTIONS(270), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1031), 6, + STATE(1032), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(724), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -33212,67 +33690,133 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [11769] = 23, + [12081] = 9, ACTIONS(3), 1, sym_comment, - ACTIONS(263), 1, - sym_identifier, - ACTIONS(288), 1, - anon_sym_LBRACE, - ACTIONS(300), 1, - anon_sym_lambda, - ACTIONS(308), 1, - anon_sym_await, - ACTIONS(310), 1, + ACTIONS(946), 1, + anon_sym_else, + ACTIONS(948), 1, + anon_sym_except, + ACTIONS(950), 1, + anon_sym_finally, + STATE(479), 1, + sym_else_clause, + STATE(520), 1, + sym_finally_clause, + STATE(333), 2, + sym_except_clause, + aux_sym_try_statement_repeat1, + ACTIONS(944), 13, + sym__dedent, sym__string_start, - ACTIONS(312), 1, sym__template_string_start, - ACTIONS(578), 1, anon_sym_LPAREN, - ACTIONS(591), 1, + anon_sym_DASH, + anon_sym_PLUS, anon_sym_LBRACK, - ACTIONS(747), 1, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_TILDE, + sym_ellipsis, + sym_float, + ACTIONS(942), 34, + anon_sym_lazy, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, + anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, + anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_with, + anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, + anon_sym_exec, + anon_sym_type, + anon_sym_class, anon_sym_not, - ACTIONS(773), 1, + anon_sym_lambda, + anon_sym_yield, + sym_integer, + sym_identifier, + anon_sym_await, + sym_true, + sym_false, + sym_none, + [12155] = 23, + ACTIONS(3), 1, + sym_comment, + ACTIONS(640), 1, + anon_sym_LPAREN, + ACTIONS(646), 1, + anon_sym_LBRACK, + ACTIONS(648), 1, + anon_sym_LBRACE, + ACTIONS(654), 1, + sym__string_start, + ACTIONS(656), 1, + sym__template_string_start, + ACTIONS(952), 1, + sym_identifier, + ACTIONS(956), 1, anon_sym_STAR, - STATE(621), 1, + ACTIONS(958), 1, + anon_sym_COLON, + ACTIONS(960), 1, + anon_sym_not, + ACTIONS(962), 1, + anon_sym_lambda, + ACTIONS(964), 1, + anon_sym_await, + STATE(792), 1, + sym_primary_expression, + STATE(793), 1, sym_string, - STATE(624), 1, + STATE(794), 1, sym_template_string, - STATE(719), 1, - sym_primary_expression, - STATE(1172), 1, + STATE(1210), 1, sym_expression, - STATE(1308), 1, - sym_list_splat, - STATE(1447), 1, - sym_type, - ACTIONS(304), 2, + STATE(1562), 1, + sym_exception_list, + ACTIONS(650), 2, sym_ellipsis, sym_float, - ACTIONS(296), 3, + ACTIONS(644), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 4, + ACTIONS(636), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(276), 5, + ACTIONS(954), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1031), 6, + STATE(1211), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(724), 17, + STATE(970), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -33290,67 +33834,197 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [11870] = 23, + [12257] = 9, + ACTIONS(3), 1, + sym_comment, + ACTIONS(966), 1, + anon_sym_else, + ACTIONS(968), 1, + anon_sym_except, + ACTIONS(970), 1, + anon_sym_finally, + STATE(478), 1, + sym_else_clause, + STATE(607), 1, + sym_finally_clause, + STATE(316), 2, + sym_except_clause, + aux_sym_try_statement_repeat1, + ACTIONS(944), 13, + sym__string_start, + sym__template_string_start, + ts_builtin_sym_end, + anon_sym_LPAREN, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_TILDE, + sym_ellipsis, + sym_float, + ACTIONS(942), 34, + anon_sym_lazy, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, + anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, + anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_with, + anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, + anon_sym_exec, + anon_sym_type, + anon_sym_class, + anon_sym_not, + anon_sym_lambda, + anon_sym_yield, + sym_integer, + sym_identifier, + anon_sym_await, + sym_true, + sym_false, + sym_none, + [12331] = 9, + ACTIONS(3), 1, + sym_comment, + ACTIONS(966), 1, + anon_sym_else, + ACTIONS(970), 1, + anon_sym_finally, + ACTIONS(972), 1, + anon_sym_except, + STATE(478), 1, + sym_else_clause, + STATE(607), 1, + sym_finally_clause, + STATE(317), 2, + sym_except_group_clause, + aux_sym_try_statement_repeat2, + ACTIONS(944), 13, + sym__string_start, + sym__template_string_start, + ts_builtin_sym_end, + anon_sym_LPAREN, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_TILDE, + sym_ellipsis, + sym_float, + ACTIONS(942), 34, + anon_sym_lazy, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, + anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, + anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_with, + anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, + anon_sym_exec, + anon_sym_type, + anon_sym_class, + anon_sym_not, + anon_sym_lambda, + anon_sym_yield, + sym_integer, + sym_identifier, + anon_sym_await, + sym_true, + sym_false, + sym_none, + [12405] = 22, ACTIONS(3), 1, sym_comment, - ACTIONS(263), 1, + ACTIONS(268), 1, sym_identifier, - ACTIONS(288), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(300), 1, + ACTIONS(305), 1, anon_sym_lambda, - ACTIONS(308), 1, + ACTIONS(313), 1, anon_sym_await, - ACTIONS(310), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(578), 1, + ACTIONS(575), 1, anon_sym_LPAREN, - ACTIONS(591), 1, + ACTIONS(586), 1, anon_sym_LBRACK, - ACTIONS(747), 1, + ACTIONS(752), 1, anon_sym_not, - ACTIONS(773), 1, - anon_sym_STAR, - STATE(621), 1, + ACTIONS(976), 1, + anon_sym_COLON, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, STATE(719), 1, sym_primary_expression, - STATE(1172), 1, + STATE(1256), 1, sym_expression, - STATE(1308), 1, - sym_list_splat, - STATE(1583), 1, - sym_type, - ACTIONS(304), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(296), 3, + ACTIONS(974), 2, + anon_sym_COMMA, + anon_sym_RBRACK, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(276), 5, + ACTIONS(270), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1031), 6, + STATE(1032), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(724), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -33368,23 +34042,23 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [11971] = 9, + [12505] = 9, ACTIONS(3), 1, sym_comment, - ACTIONS(941), 1, + ACTIONS(946), 1, anon_sym_else, - ACTIONS(943), 1, - anon_sym_except, - ACTIONS(945), 1, + ACTIONS(950), 1, anon_sym_finally, - STATE(470), 1, + ACTIONS(978), 1, + anon_sym_except, + STATE(479), 1, sym_else_clause, - STATE(575), 1, + STATE(520), 1, sym_finally_clause, - STATE(330), 2, - sym_except_clause, - aux_sym_try_statement_repeat1, - ACTIONS(939), 13, + STATE(334), 2, + sym_except_group_clause, + aux_sym_try_statement_repeat2, + ACTIONS(944), 13, sym__dedent, sym__string_start, sym__template_string_start, @@ -33398,7 +34072,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(937), 33, + ACTIONS(942), 34, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -33432,26 +34107,26 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [12044] = 9, + [12579] = 9, ACTIONS(3), 1, sym_comment, - ACTIONS(941), 1, + ACTIONS(966), 1, anon_sym_else, - ACTIONS(945), 1, - anon_sym_finally, - ACTIONS(947), 1, + ACTIONS(968), 1, anon_sym_except, - STATE(470), 1, + ACTIONS(970), 1, + anon_sym_finally, + STATE(484), 1, sym_else_clause, - STATE(575), 1, + STATE(569), 1, sym_finally_clause, - STATE(331), 2, - sym_except_group_clause, - aux_sym_try_statement_repeat2, - ACTIONS(939), 13, - sym__dedent, + STATE(316), 2, + sym_except_clause, + aux_sym_try_statement_repeat1, + ACTIONS(980), 13, sym__string_start, sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -33462,7 +34137,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(937), 33, + ACTIONS(982), 34, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -33496,26 +34172,26 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [12117] = 9, + [12653] = 9, ACTIONS(3), 1, sym_comment, - ACTIONS(949), 1, + ACTIONS(946), 1, anon_sym_else, - ACTIONS(951), 1, + ACTIONS(948), 1, anon_sym_except, - ACTIONS(953), 1, + ACTIONS(950), 1, anon_sym_finally, - STATE(472), 1, + STATE(466), 1, sym_else_clause, - STATE(518), 1, + STATE(534), 1, sym_finally_clause, - STATE(328), 2, + STATE(333), 2, sym_except_clause, aux_sym_try_statement_repeat1, - ACTIONS(939), 13, + ACTIONS(980), 13, + sym__dedent, sym__string_start, sym__template_string_start, - ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -33526,7 +34202,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(937), 33, + ACTIONS(982), 34, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -33560,144 +34237,68 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [12190] = 22, + [12727] = 23, ACTIONS(3), 1, sym_comment, - ACTIONS(263), 1, + ACTIONS(268), 1, sym_identifier, - ACTIONS(288), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(300), 1, + ACTIONS(305), 1, anon_sym_lambda, - ACTIONS(308), 1, + ACTIONS(313), 1, anon_sym_await, - ACTIONS(310), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(578), 1, + ACTIONS(575), 1, anon_sym_LPAREN, - ACTIONS(591), 1, + ACTIONS(586), 1, anon_sym_LBRACK, - ACTIONS(747), 1, + ACTIONS(752), 1, anon_sym_not, - ACTIONS(957), 1, - anon_sym_COLON, - STATE(621), 1, - sym_string, - STATE(624), 1, - sym_template_string, - STATE(719), 1, - sym_primary_expression, - STATE(1247), 1, - sym_expression, - ACTIONS(304), 2, - sym_ellipsis, - sym_float, - ACTIONS(955), 2, - anon_sym_COMMA, - anon_sym_RBRACK, - ACTIONS(296), 3, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_TILDE, - ACTIONS(306), 4, - sym_integer, - sym_true, - sym_false, - sym_none, - ACTIONS(276), 5, - anon_sym_print, - anon_sym_async, - anon_sym_match, - anon_sym_exec, - anon_sym_type, - STATE(1031), 6, - sym_named_expression, - sym_not_operator, - sym_boolean_operator, - sym_comparison_operator, - sym_lambda, - sym_conditional_expression, - STATE(724), 17, - sym_binary_operator, - sym_unary_operator, - sym_attribute, - sym_subscript, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [12289] = 23, - ACTIONS(3), 1, - sym_comment, - ACTIONS(263), 1, - sym_identifier, - ACTIONS(288), 1, - anon_sym_LBRACE, - ACTIONS(300), 1, - anon_sym_lambda, - ACTIONS(308), 1, - anon_sym_await, - ACTIONS(310), 1, - sym__string_start, - ACTIONS(312), 1, - sym__template_string_start, - ACTIONS(578), 1, - anon_sym_LPAREN, - ACTIONS(591), 1, - anon_sym_LBRACK, - ACTIONS(747), 1, - anon_sym_not, - ACTIONS(773), 1, + ACTIONS(792), 1, anon_sym_STAR, - STATE(621), 1, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, STATE(719), 1, sym_primary_expression, - STATE(1172), 1, + STATE(1201), 1, sym_expression, - STATE(1308), 1, + STATE(1344), 1, sym_list_splat, - STATE(1697), 1, + STATE(1688), 1, sym_type, - ACTIONS(304), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(296), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(276), 5, + ACTIONS(270), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1031), 6, + STATE(1032), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(724), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -33715,67 +34316,68 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [12390] = 23, + [12829] = 23, ACTIONS(3), 1, sym_comment, - ACTIONS(263), 1, + ACTIONS(268), 1, sym_identifier, - ACTIONS(288), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(300), 1, + ACTIONS(305), 1, anon_sym_lambda, - ACTIONS(308), 1, + ACTIONS(313), 1, anon_sym_await, - ACTIONS(310), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(578), 1, + ACTIONS(575), 1, anon_sym_LPAREN, - ACTIONS(591), 1, + ACTIONS(586), 1, anon_sym_LBRACK, - ACTIONS(747), 1, + ACTIONS(752), 1, anon_sym_not, - ACTIONS(773), 1, + ACTIONS(792), 1, anon_sym_STAR, - STATE(621), 1, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, STATE(719), 1, sym_primary_expression, - STATE(1172), 1, + STATE(1201), 1, sym_expression, - STATE(1308), 1, + STATE(1344), 1, sym_list_splat, - STATE(1639), 1, + STATE(1703), 1, sym_type, - ACTIONS(304), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(296), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(276), 5, + ACTIONS(270), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1031), 6, + STATE(1032), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(724), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -33793,145 +34395,133 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [12491] = 23, + [12931] = 9, ACTIONS(3), 1, sym_comment, - ACTIONS(51), 1, - anon_sym_LBRACE, - ACTIONS(69), 1, - anon_sym_not, - ACTIONS(71), 1, - anon_sym_lambda, - ACTIONS(81), 1, + ACTIONS(966), 1, + anon_sym_else, + ACTIONS(970), 1, + anon_sym_finally, + ACTIONS(972), 1, + anon_sym_except, + STATE(484), 1, + sym_else_clause, + STATE(569), 1, + sym_finally_clause, + STATE(317), 2, + sym_except_group_clause, + aux_sym_try_statement_repeat2, + ACTIONS(980), 13, sym__string_start, - ACTIONS(83), 1, sym__template_string_start, - ACTIONS(314), 1, - sym_identifier, - ACTIONS(320), 1, - anon_sym_await, - ACTIONS(568), 1, + ts_builtin_sym_end, anon_sym_LPAREN, - ACTIONS(574), 1, - anon_sym_LBRACK, - ACTIONS(959), 1, - anon_sym_STAR, - STATE(763), 1, - sym_template_string, - STATE(779), 1, - sym_primary_expression, - STATE(782), 1, - sym_string, - STATE(1250), 1, - sym_expression, - STATE(1406), 1, - sym_type, - STATE(1463), 1, - sym_list_splat, - ACTIONS(75), 2, - sym_ellipsis, - sym_float, - ACTIONS(47), 3, anon_sym_DASH, anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, anon_sym_TILDE, - ACTIONS(77), 4, - sym_integer, - sym_true, - sym_false, - sym_none, - ACTIONS(316), 5, + sym_ellipsis, + sym_float, + ACTIONS(982), 34, + anon_sym_lazy, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_with, anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - STATE(1158), 6, - sym_named_expression, - sym_not_operator, - sym_boolean_operator, - sym_comparison_operator, - sym_lambda, - sym_conditional_expression, - STATE(908), 17, - sym_binary_operator, - sym_unary_operator, - sym_attribute, - sym_subscript, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [12592] = 23, + anon_sym_class, + anon_sym_not, + anon_sym_lambda, + anon_sym_yield, + sym_integer, + sym_identifier, + anon_sym_await, + sym_true, + sym_false, + sym_none, + [13005] = 23, ACTIONS(3), 1, sym_comment, - ACTIONS(631), 1, + ACTIONS(640), 1, anon_sym_LPAREN, - ACTIONS(639), 1, + ACTIONS(646), 1, anon_sym_LBRACK, - ACTIONS(641), 1, + ACTIONS(648), 1, anon_sym_LBRACE, - ACTIONS(647), 1, + ACTIONS(654), 1, sym__string_start, - ACTIONS(649), 1, + ACTIONS(656), 1, sym__template_string_start, - ACTIONS(961), 1, + ACTIONS(952), 1, sym_identifier, - ACTIONS(963), 1, - anon_sym_STAR, - ACTIONS(967), 1, - anon_sym_COLON, - ACTIONS(969), 1, + ACTIONS(960), 1, anon_sym_not, - ACTIONS(971), 1, + ACTIONS(962), 1, anon_sym_lambda, - ACTIONS(973), 1, + ACTIONS(964), 1, anon_sym_await, - STATE(794), 1, + ACTIONS(984), 1, + anon_sym_STAR, + ACTIONS(986), 1, + anon_sym_COLON, + STATE(792), 1, + sym_primary_expression, + STATE(793), 1, sym_string, - STATE(795), 1, + STATE(794), 1, sym_template_string, - STATE(822), 1, - sym_primary_expression, - STATE(1207), 1, + STATE(1203), 1, sym_expression, - STATE(1552), 1, + STATE(1548), 1, sym_exception_list, - ACTIONS(643), 2, + ACTIONS(650), 2, sym_ellipsis, sym_float, - ACTIONS(637), 3, + ACTIONS(644), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(629), 4, + ACTIONS(636), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(965), 5, + ACTIONS(954), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1176), 6, + STATE(1211), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(953), 17, + STATE(970), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -33949,66 +34539,68 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [12693] = 22, + [13107] = 23, ACTIONS(3), 1, sym_comment, - ACTIONS(263), 1, + ACTIONS(268), 1, sym_identifier, - ACTIONS(288), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(300), 1, + ACTIONS(305), 1, anon_sym_lambda, - ACTIONS(308), 1, + ACTIONS(313), 1, anon_sym_await, - ACTIONS(310), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(578), 1, + ACTIONS(575), 1, anon_sym_LPAREN, - ACTIONS(591), 1, + ACTIONS(586), 1, anon_sym_LBRACK, - ACTIONS(747), 1, + ACTIONS(752), 1, anon_sym_not, - ACTIONS(977), 1, - anon_sym_COLON, - STATE(621), 1, + ACTIONS(792), 1, + anon_sym_STAR, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, STATE(719), 1, sym_primary_expression, - STATE(1249), 1, + STATE(1201), 1, sym_expression, - ACTIONS(304), 2, + STATE(1344), 1, + sym_list_splat, + STATE(1634), 1, + sym_type, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(975), 2, - anon_sym_COMMA, - anon_sym_RBRACK, - ACTIONS(296), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(276), 5, + ACTIONS(270), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1031), 6, + STATE(1032), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(724), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -34026,26 +34618,26 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [12792] = 9, + [13209] = 9, ACTIONS(3), 1, sym_comment, - ACTIONS(949), 1, + ACTIONS(946), 1, anon_sym_else, - ACTIONS(951), 1, - anon_sym_except, - ACTIONS(953), 1, + ACTIONS(950), 1, anon_sym_finally, - STATE(468), 1, + ACTIONS(978), 1, + anon_sym_except, + STATE(466), 1, sym_else_clause, STATE(534), 1, sym_finally_clause, - STATE(328), 2, - sym_except_clause, - aux_sym_try_statement_repeat1, - ACTIONS(979), 13, + STATE(334), 2, + sym_except_group_clause, + aux_sym_try_statement_repeat2, + ACTIONS(980), 13, + sym__dedent, sym__string_start, sym__template_string_start, - ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -34056,7 +34648,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(981), 33, + ACTIONS(982), 34, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -34090,67 +34683,67 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [12865] = 23, + [13283] = 22, ACTIONS(3), 1, sym_comment, - ACTIONS(263), 1, + ACTIONS(55), 1, + anon_sym_STAR_STAR, + ACTIONS(268), 1, sym_identifier, - ACTIONS(288), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(300), 1, + ACTIONS(305), 1, anon_sym_lambda, - ACTIONS(308), 1, + ACTIONS(313), 1, anon_sym_await, - ACTIONS(310), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(578), 1, + ACTIONS(575), 1, anon_sym_LPAREN, - ACTIONS(591), 1, + ACTIONS(586), 1, anon_sym_LBRACK, - ACTIONS(747), 1, + ACTIONS(752), 1, anon_sym_not, - ACTIONS(773), 1, - anon_sym_STAR, - STATE(621), 1, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, STATE(719), 1, sym_primary_expression, - STATE(1172), 1, + STATE(1313), 1, sym_expression, - STATE(1308), 1, - sym_list_splat, - STATE(1617), 1, - sym_type, - ACTIONS(304), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(296), 3, + STATE(1569), 2, + sym_dictionary_splat, + sym_pair, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(276), 5, + ACTIONS(270), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1031), 6, + STATE(1032), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(724), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -34168,67 +34761,68 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [12966] = 23, + [13383] = 23, ACTIONS(3), 1, sym_comment, - ACTIONS(263), 1, + ACTIONS(268), 1, sym_identifier, - ACTIONS(288), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(300), 1, + ACTIONS(305), 1, anon_sym_lambda, - ACTIONS(308), 1, + ACTIONS(313), 1, anon_sym_await, - ACTIONS(310), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(578), 1, + ACTIONS(575), 1, anon_sym_LPAREN, - ACTIONS(591), 1, + ACTIONS(586), 1, anon_sym_LBRACK, - ACTIONS(747), 1, + ACTIONS(752), 1, anon_sym_not, - ACTIONS(773), 1, + ACTIONS(792), 1, anon_sym_STAR, - STATE(621), 1, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, STATE(719), 1, sym_primary_expression, - STATE(1172), 1, + STATE(1201), 1, sym_expression, - STATE(1308), 1, - sym_list_splat, - STATE(1341), 1, + STATE(1325), 1, sym_type, - ACTIONS(304), 2, + STATE(1344), 1, + sym_list_splat, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(296), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(276), 5, + ACTIONS(270), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1031), 6, + STATE(1032), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(724), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -34246,67 +34840,67 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [13067] = 23, + [13485] = 22, ACTIONS(3), 1, sym_comment, - ACTIONS(263), 1, + ACTIONS(268), 1, sym_identifier, - ACTIONS(288), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(300), 1, + ACTIONS(305), 1, anon_sym_lambda, - ACTIONS(308), 1, + ACTIONS(313), 1, anon_sym_await, - ACTIONS(310), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(578), 1, + ACTIONS(575), 1, anon_sym_LPAREN, - ACTIONS(591), 1, + ACTIONS(586), 1, anon_sym_LBRACK, - ACTIONS(747), 1, + ACTIONS(752), 1, anon_sym_not, - ACTIONS(773), 1, - anon_sym_STAR, - STATE(621), 1, + ACTIONS(990), 1, + anon_sym_COLON, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, STATE(719), 1, sym_primary_expression, - STATE(1172), 1, + STATE(1223), 1, sym_expression, - STATE(1308), 1, - sym_list_splat, - STATE(1642), 1, - sym_type, - ACTIONS(304), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(296), 3, + ACTIONS(988), 2, + anon_sym_COMMA, + anon_sym_RBRACK, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(276), 5, + ACTIONS(270), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1031), 6, + STATE(1032), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(724), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -34324,195 +34918,68 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [13168] = 9, + [13585] = 23, ACTIONS(3), 1, sym_comment, - ACTIONS(941), 1, - anon_sym_else, - ACTIONS(943), 1, - anon_sym_except, - ACTIONS(945), 1, - anon_sym_finally, - STATE(479), 1, - sym_else_clause, - STATE(561), 1, - sym_finally_clause, - STATE(330), 2, - sym_except_clause, - aux_sym_try_statement_repeat1, - ACTIONS(979), 13, - sym__dedent, - sym__string_start, - sym__template_string_start, - anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_LBRACK, + ACTIONS(53), 1, anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, - sym_ellipsis, - sym_float, - ACTIONS(981), 33, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, - anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, - anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_with, - anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, - anon_sym_exec, - anon_sym_type, - anon_sym_class, + ACTIONS(71), 1, anon_sym_not, + ACTIONS(73), 1, anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, - anon_sym_await, - sym_true, - sym_false, - sym_none, - [13241] = 9, - ACTIONS(3), 1, - sym_comment, - ACTIONS(949), 1, - anon_sym_else, - ACTIONS(953), 1, - anon_sym_finally, - ACTIONS(983), 1, - anon_sym_except, - STATE(472), 1, - sym_else_clause, - STATE(518), 1, - sym_finally_clause, - STATE(329), 2, - sym_except_group_clause, - aux_sym_try_statement_repeat2, - ACTIONS(939), 13, + ACTIONS(83), 1, sym__string_start, + ACTIONS(85), 1, sym__template_string_start, - ts_builtin_sym_end, - anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, - sym_ellipsis, - sym_float, - ACTIONS(937), 33, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, - anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, - anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_with, - anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, - anon_sym_exec, - anon_sym_type, - anon_sym_class, - anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, + ACTIONS(349), 1, sym_identifier, + ACTIONS(355), 1, anon_sym_await, - sym_true, - sym_false, - sym_none, - [13314] = 23, - ACTIONS(3), 1, - sym_comment, - ACTIONS(631), 1, + ACTIONS(594), 1, anon_sym_LPAREN, - ACTIONS(639), 1, + ACTIONS(598), 1, anon_sym_LBRACK, - ACTIONS(641), 1, - anon_sym_LBRACE, - ACTIONS(647), 1, - sym__string_start, - ACTIONS(649), 1, - sym__template_string_start, - ACTIONS(961), 1, - sym_identifier, - ACTIONS(969), 1, - anon_sym_not, - ACTIONS(971), 1, - anon_sym_lambda, - ACTIONS(973), 1, - anon_sym_await, - ACTIONS(985), 1, + ACTIONS(992), 1, anon_sym_STAR, - ACTIONS(987), 1, - anon_sym_COLON, - STATE(794), 1, - sym_string, - STATE(795), 1, - sym_template_string, - STATE(822), 1, + STATE(765), 1, sym_primary_expression, - STATE(1204), 1, + STATE(769), 1, + sym_template_string, + STATE(775), 1, + sym_string, + STATE(1243), 1, sym_expression, - STATE(1548), 1, - sym_exception_list, - ACTIONS(643), 2, + STATE(1392), 1, + sym_type, + STATE(1451), 1, + sym_list_splat, + ACTIONS(77), 2, sym_ellipsis, sym_float, - ACTIONS(637), 3, + ACTIONS(49), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(629), 4, + ACTIONS(79), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(965), 5, + ACTIONS(351), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1176), 6, + STATE(1156), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(953), 17, + STATE(920), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -34530,66 +34997,68 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [13415] = 22, + [13687] = 23, ACTIONS(3), 1, sym_comment, - ACTIONS(53), 1, - anon_sym_STAR_STAR, - ACTIONS(263), 1, + ACTIONS(268), 1, sym_identifier, - ACTIONS(288), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(300), 1, + ACTIONS(305), 1, anon_sym_lambda, - ACTIONS(308), 1, + ACTIONS(313), 1, anon_sym_await, - ACTIONS(310), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(578), 1, + ACTIONS(575), 1, anon_sym_LPAREN, - ACTIONS(591), 1, + ACTIONS(586), 1, anon_sym_LBRACK, - ACTIONS(747), 1, + ACTIONS(752), 1, anon_sym_not, - STATE(621), 1, + ACTIONS(792), 1, + anon_sym_STAR, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, STATE(719), 1, sym_primary_expression, - STATE(1331), 1, + STATE(1201), 1, sym_expression, - ACTIONS(304), 2, + STATE(1344), 1, + sym_list_splat, + STATE(1389), 1, + sym_type, + ACTIONS(309), 2, sym_ellipsis, sym_float, - STATE(1563), 2, - sym_dictionary_splat, - sym_pair, - ACTIONS(296), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(276), 5, + ACTIONS(270), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1031), 6, + STATE(1032), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(724), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -34607,131 +35076,68 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [13514] = 9, - ACTIONS(3), 1, - sym_comment, - ACTIONS(941), 1, - anon_sym_else, - ACTIONS(945), 1, - anon_sym_finally, - ACTIONS(947), 1, - anon_sym_except, - STATE(479), 1, - sym_else_clause, - STATE(561), 1, - sym_finally_clause, - STATE(331), 2, - sym_except_group_clause, - aux_sym_try_statement_repeat2, - ACTIONS(979), 13, - sym__dedent, - sym__string_start, - sym__template_string_start, - anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, - sym_ellipsis, - sym_float, - ACTIONS(981), 33, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, - anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, - anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_with, - anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, - anon_sym_exec, - anon_sym_type, - anon_sym_class, - anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, - anon_sym_await, - sym_true, - sym_false, - sym_none, - [13587] = 23, + [13789] = 23, ACTIONS(3), 1, sym_comment, - ACTIONS(263), 1, + ACTIONS(268), 1, sym_identifier, - ACTIONS(288), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(300), 1, + ACTIONS(305), 1, anon_sym_lambda, - ACTIONS(308), 1, + ACTIONS(313), 1, anon_sym_await, - ACTIONS(310), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(578), 1, + ACTIONS(575), 1, anon_sym_LPAREN, - ACTIONS(591), 1, + ACTIONS(586), 1, anon_sym_LBRACK, - ACTIONS(747), 1, + ACTIONS(752), 1, anon_sym_not, - ACTIONS(773), 1, + ACTIONS(792), 1, anon_sym_STAR, - STATE(621), 1, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, STATE(719), 1, sym_primary_expression, - STATE(1172), 1, + STATE(1201), 1, sym_expression, - STATE(1308), 1, + STATE(1344), 1, sym_list_splat, - STATE(1616), 1, + STATE(1627), 1, sym_type, - ACTIONS(304), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(296), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(276), 5, + ACTIONS(270), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1031), 6, + STATE(1032), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(724), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -34749,67 +35155,68 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [13688] = 23, + [13891] = 23, ACTIONS(3), 1, sym_comment, - ACTIONS(263), 1, + ACTIONS(268), 1, sym_identifier, - ACTIONS(288), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(300), 1, + ACTIONS(305), 1, anon_sym_lambda, - ACTIONS(308), 1, + ACTIONS(313), 1, anon_sym_await, - ACTIONS(310), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(578), 1, + ACTIONS(575), 1, anon_sym_LPAREN, - ACTIONS(591), 1, + ACTIONS(586), 1, anon_sym_LBRACK, - ACTIONS(747), 1, + ACTIONS(752), 1, anon_sym_not, - ACTIONS(773), 1, + ACTIONS(792), 1, anon_sym_STAR, - STATE(621), 1, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, STATE(719), 1, sym_primary_expression, - STATE(1172), 1, + STATE(1201), 1, sym_expression, - STATE(1308), 1, + STATE(1344), 1, sym_list_splat, - STATE(1618), 1, + STATE(1629), 1, sym_type, - ACTIONS(304), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(296), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(276), 5, + ACTIONS(270), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1031), 6, + STATE(1032), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(724), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -34827,67 +35234,68 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [13789] = 23, + [13993] = 23, ACTIONS(3), 1, sym_comment, - ACTIONS(263), 1, + ACTIONS(268), 1, sym_identifier, - ACTIONS(288), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(300), 1, + ACTIONS(305), 1, anon_sym_lambda, - ACTIONS(308), 1, + ACTIONS(313), 1, anon_sym_await, - ACTIONS(310), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(578), 1, + ACTIONS(575), 1, anon_sym_LPAREN, - ACTIONS(591), 1, + ACTIONS(586), 1, anon_sym_LBRACK, - ACTIONS(747), 1, + ACTIONS(752), 1, anon_sym_not, - ACTIONS(773), 1, + ACTIONS(792), 1, anon_sym_STAR, - STATE(621), 1, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, STATE(719), 1, sym_primary_expression, - STATE(1172), 1, + STATE(1201), 1, sym_expression, - STATE(1308), 1, + STATE(1344), 1, sym_list_splat, - STATE(1622), 1, + STATE(1633), 1, sym_type, - ACTIONS(304), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(296), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(276), 5, + ACTIONS(270), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1031), 6, + STATE(1032), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(724), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -34905,129 +35313,65 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [13890] = 9, + [14095] = 21, ACTIONS(3), 1, sym_comment, - ACTIONS(949), 1, - anon_sym_else, - ACTIONS(953), 1, - anon_sym_finally, - ACTIONS(983), 1, - anon_sym_except, - STATE(468), 1, - sym_else_clause, - STATE(534), 1, - sym_finally_clause, - STATE(329), 2, - sym_except_group_clause, - aux_sym_try_statement_repeat2, - ACTIONS(979), 13, - sym__string_start, - sym__template_string_start, - ts_builtin_sym_end, - anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_LBRACK, + ACTIONS(53), 1, anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, - sym_ellipsis, - sym_float, - ACTIONS(981), 33, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, - anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, - anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_with, - anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, - anon_sym_exec, - anon_sym_type, - anon_sym_class, + ACTIONS(71), 1, anon_sym_not, + ACTIONS(73), 1, anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, - anon_sym_await, - sym_true, - sym_false, - sym_none, - [13963] = 22, - ACTIONS(3), 1, - sym_comment, - ACTIONS(639), 1, - anon_sym_LBRACK, - ACTIONS(641), 1, - anon_sym_LBRACE, - ACTIONS(647), 1, + ACTIONS(83), 1, sym__string_start, - ACTIONS(649), 1, + ACTIONS(85), 1, sym__template_string_start, - ACTIONS(961), 1, + ACTIONS(349), 1, sym_identifier, - ACTIONS(969), 1, - anon_sym_not, - ACTIONS(971), 1, - anon_sym_lambda, - ACTIONS(973), 1, + ACTIONS(355), 1, anon_sym_await, - ACTIONS(989), 1, + ACTIONS(594), 1, anon_sym_LPAREN, - STATE(794), 1, - sym_string, - STATE(795), 1, - sym_template_string, - STATE(822), 1, + ACTIONS(598), 1, + anon_sym_LBRACK, + STATE(765), 1, sym_primary_expression, - STATE(1200), 1, + STATE(769), 1, + sym_template_string, + STATE(775), 1, + sym_string, + STATE(1240), 1, sym_expression, - STATE(1434), 1, - sym_with_item, - STATE(1607), 1, - sym_with_clause, - ACTIONS(643), 2, + ACTIONS(77), 2, sym_ellipsis, sym_float, - ACTIONS(637), 3, + ACTIONS(994), 2, + sym__newline, + anon_sym_SEMI, + ACTIONS(49), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(629), 4, + ACTIONS(79), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(965), 5, + ACTIONS(351), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1176), 6, + STATE(1156), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(953), 17, + STATE(920), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -35045,64 +35389,65 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [14061] = 21, + [14192] = 21, ACTIONS(3), 1, sym_comment, - ACTIONS(51), 1, + ACTIONS(268), 1, + sym_identifier, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(69), 1, - anon_sym_not, - ACTIONS(71), 1, + ACTIONS(305), 1, anon_sym_lambda, - ACTIONS(81), 1, + ACTIONS(313), 1, + anon_sym_await, + ACTIONS(315), 1, sym__string_start, - ACTIONS(83), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(314), 1, - sym_identifier, - ACTIONS(320), 1, - anon_sym_await, - ACTIONS(568), 1, + ACTIONS(575), 1, anon_sym_LPAREN, - ACTIONS(574), 1, + ACTIONS(586), 1, anon_sym_LBRACK, - STATE(763), 1, + ACTIONS(752), 1, + anon_sym_not, + STATE(645), 1, + sym_string, + STATE(658), 1, sym_template_string, - STATE(779), 1, + STATE(719), 1, sym_primary_expression, - STATE(782), 1, - sym_string, - STATE(1224), 1, + STATE(1276), 1, sym_expression, - ACTIONS(75), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(991), 2, - sym__newline, - anon_sym_SEMI, - ACTIONS(47), 3, + ACTIONS(996), 2, + anon_sym_COMMA, + anon_sym_RBRACK, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(77), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(316), 5, + ACTIONS(270), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1158), 6, + STATE(1032), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(908), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -35120,64 +35465,65 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [14157] = 21, + [14289] = 21, ACTIONS(3), 1, sym_comment, - ACTIONS(51), 1, + ACTIONS(53), 1, anon_sym_LBRACE, - ACTIONS(69), 1, - anon_sym_not, ACTIONS(71), 1, + anon_sym_not, + ACTIONS(73), 1, anon_sym_lambda, - ACTIONS(81), 1, - sym__string_start, ACTIONS(83), 1, + sym__string_start, + ACTIONS(85), 1, sym__template_string_start, - ACTIONS(314), 1, + ACTIONS(349), 1, sym_identifier, - ACTIONS(320), 1, + ACTIONS(355), 1, anon_sym_await, - ACTIONS(568), 1, + ACTIONS(594), 1, anon_sym_LPAREN, - ACTIONS(574), 1, + ACTIONS(598), 1, anon_sym_LBRACK, - STATE(763), 1, - sym_template_string, - STATE(779), 1, + STATE(765), 1, sym_primary_expression, - STATE(782), 1, + STATE(769), 1, + sym_template_string, + STATE(775), 1, sym_string, - STATE(1224), 1, + STATE(1240), 1, sym_expression, - ACTIONS(75), 2, + ACTIONS(77), 2, sym_ellipsis, sym_float, - ACTIONS(993), 2, + ACTIONS(998), 2, sym__newline, anon_sym_SEMI, - ACTIONS(47), 3, + ACTIONS(49), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(77), 4, + ACTIONS(79), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(316), 5, + ACTIONS(351), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1158), 6, + STATE(1156), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(908), 17, + STATE(920), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -35195,64 +35541,65 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [14253] = 21, + [14386] = 21, ACTIONS(3), 1, sym_comment, - ACTIONS(51), 1, + ACTIONS(53), 1, anon_sym_LBRACE, - ACTIONS(69), 1, - anon_sym_not, ACTIONS(71), 1, + anon_sym_not, + ACTIONS(73), 1, anon_sym_lambda, - ACTIONS(81), 1, - sym__string_start, ACTIONS(83), 1, + sym__string_start, + ACTIONS(85), 1, sym__template_string_start, - ACTIONS(314), 1, + ACTIONS(349), 1, sym_identifier, - ACTIONS(320), 1, + ACTIONS(355), 1, anon_sym_await, - ACTIONS(568), 1, + ACTIONS(594), 1, anon_sym_LPAREN, - ACTIONS(574), 1, + ACTIONS(598), 1, anon_sym_LBRACK, - STATE(763), 1, - sym_template_string, - STATE(779), 1, + STATE(765), 1, sym_primary_expression, - STATE(782), 1, + STATE(769), 1, + sym_template_string, + STATE(775), 1, sym_string, - STATE(1224), 1, + STATE(1240), 1, sym_expression, - ACTIONS(75), 2, + ACTIONS(77), 2, sym_ellipsis, sym_float, - ACTIONS(995), 2, + ACTIONS(1000), 2, sym__newline, anon_sym_SEMI, - ACTIONS(47), 3, + ACTIONS(49), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(77), 4, + ACTIONS(79), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(316), 5, + ACTIONS(351), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1158), 6, + STATE(1156), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(908), 17, + STATE(920), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -35270,64 +35617,65 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [14349] = 21, + [14483] = 21, ACTIONS(3), 1, sym_comment, - ACTIONS(288), 1, + ACTIONS(53), 1, anon_sym_LBRACE, - ACTIONS(310), 1, + ACTIONS(71), 1, + anon_sym_not, + ACTIONS(73), 1, + anon_sym_lambda, + ACTIONS(83), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(85), 1, sym__template_string_start, - ACTIONS(597), 1, - anon_sym_LPAREN, - ACTIONS(603), 1, - anon_sym_LBRACK, - ACTIONS(691), 1, - anon_sym_not, - ACTIONS(801), 1, + ACTIONS(349), 1, sym_identifier, - ACTIONS(807), 1, + ACTIONS(355), 1, anon_sym_await, - ACTIONS(829), 1, - anon_sym_lambda, - STATE(621), 1, - sym_string, - STATE(624), 1, - sym_template_string, - STATE(725), 1, + ACTIONS(594), 1, + anon_sym_LPAREN, + ACTIONS(598), 1, + anon_sym_LBRACK, + STATE(765), 1, sym_primary_expression, - STATE(1098), 1, + STATE(769), 1, + sym_template_string, + STATE(775), 1, + sym_string, + STATE(1240), 1, sym_expression, - ACTIONS(304), 2, + ACTIONS(77), 2, sym_ellipsis, sym_float, - STATE(1203), 2, - sym__expression_within_for_in_clause, - sym_lambda_within_for_in_clause, - ACTIONS(601), 3, + ACTIONS(1002), 2, + sym__newline, + anon_sym_SEMI, + ACTIONS(49), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 4, + ACTIONS(79), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(805), 5, + ACTIONS(351), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1031), 6, + STATE(1156), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(724), 17, + STATE(920), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -35345,64 +35693,65 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [14445] = 21, + [14580] = 21, ACTIONS(3), 1, sym_comment, - ACTIONS(263), 1, + ACTIONS(268), 1, sym_identifier, - ACTIONS(288), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(300), 1, + ACTIONS(305), 1, anon_sym_lambda, - ACTIONS(308), 1, + ACTIONS(313), 1, anon_sym_await, - ACTIONS(310), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(578), 1, + ACTIONS(575), 1, anon_sym_LPAREN, - ACTIONS(591), 1, + ACTIONS(586), 1, anon_sym_LBRACK, - ACTIONS(747), 1, + ACTIONS(752), 1, anon_sym_not, - STATE(621), 1, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, STATE(719), 1, sym_primary_expression, - STATE(1276), 1, + STATE(1261), 1, sym_expression, - ACTIONS(304), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(997), 2, + ACTIONS(1004), 2, anon_sym_COMMA, anon_sym_RBRACK, - ACTIONS(296), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(276), 5, + ACTIONS(270), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1031), 6, + STATE(1032), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(724), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -35420,122 +35769,65 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [14541] = 3, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1001), 17, - anon_sym_as, - anon_sym_STAR, - anon_sym_GT_GT, - anon_sym_PIPE, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_STAR_STAR, - anon_sym_EQ, - anon_sym_AT, - anon_sym_SLASH, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, - anon_sym_LT, - anon_sym_GT, - ACTIONS(999), 35, - anon_sym_DOT, - anon_sym_LPAREN, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_if, - anon_sym_COLON, - anon_sym_else, - anon_sym_async, - anon_sym_for, - anon_sym_in, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_RBRACE, - anon_sym_not, - anon_sym_and, - anon_sym_or, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - anon_sym_is, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_STAR_EQ, - anon_sym_SLASH_EQ, - anon_sym_AT_EQ, - anon_sym_SLASH_SLASH_EQ, - anon_sym_PERCENT_EQ, - anon_sym_STAR_STAR_EQ, - anon_sym_GT_GT_EQ, - anon_sym_LT_LT_EQ, - anon_sym_AMP_EQ, - anon_sym_CARET_EQ, - anon_sym_PIPE_EQ, - [14601] = 22, + [14677] = 21, ACTIONS(3), 1, sym_comment, - ACTIONS(631), 1, - anon_sym_LPAREN, - ACTIONS(639), 1, - anon_sym_LBRACK, - ACTIONS(641), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(647), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(649), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(961), 1, - sym_identifier, - ACTIONS(967), 1, - anon_sym_COLON, - ACTIONS(969), 1, + ACTIONS(602), 1, + anon_sym_LPAREN, + ACTIONS(608), 1, + anon_sym_LBRACK, + ACTIONS(680), 1, anon_sym_not, - ACTIONS(971), 1, - anon_sym_lambda, - ACTIONS(973), 1, + ACTIONS(816), 1, + sym_identifier, + ACTIONS(822), 1, anon_sym_await, - STATE(794), 1, + ACTIONS(834), 1, + anon_sym_lambda, + STATE(645), 1, sym_string, - STATE(795), 1, + STATE(658), 1, sym_template_string, - STATE(822), 1, + STATE(726), 1, sym_primary_expression, - STATE(1207), 1, + STATE(1097), 1, sym_expression, - STATE(1552), 1, - sym_exception_list, - ACTIONS(643), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(637), 3, + STATE(1208), 2, + sym__expression_within_for_in_clause, + sym_lambda_within_for_in_clause, + ACTIONS(606), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(629), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(965), 5, + ACTIONS(818), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1176), 6, + STATE(1032), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(953), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -35553,64 +35845,66 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [14699] = 21, + [14774] = 22, ACTIONS(3), 1, sym_comment, - ACTIONS(263), 1, - sym_identifier, - ACTIONS(288), 1, + ACTIONS(640), 1, + anon_sym_LPAREN, + ACTIONS(646), 1, + anon_sym_LBRACK, + ACTIONS(648), 1, anon_sym_LBRACE, - ACTIONS(300), 1, - anon_sym_lambda, - ACTIONS(308), 1, - anon_sym_await, - ACTIONS(310), 1, + ACTIONS(654), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(656), 1, sym__template_string_start, - ACTIONS(578), 1, - anon_sym_LPAREN, - ACTIONS(591), 1, - anon_sym_LBRACK, - ACTIONS(747), 1, + ACTIONS(952), 1, + sym_identifier, + ACTIONS(960), 1, anon_sym_not, - STATE(621), 1, + ACTIONS(962), 1, + anon_sym_lambda, + ACTIONS(964), 1, + anon_sym_await, + ACTIONS(1006), 1, + anon_sym_RPAREN, + STATE(792), 1, + sym_primary_expression, + STATE(793), 1, sym_string, - STATE(624), 1, + STATE(794), 1, sym_template_string, - STATE(719), 1, - sym_primary_expression, - STATE(1266), 1, + STATE(1205), 1, sym_expression, - ACTIONS(304), 2, + STATE(1481), 1, + sym_with_item, + ACTIONS(650), 2, sym_ellipsis, sym_float, - ACTIONS(1003), 2, - anon_sym_COMMA, - anon_sym_RBRACK, - ACTIONS(296), 3, + ACTIONS(644), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 4, + ACTIONS(636), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(276), 5, + ACTIONS(954), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1031), 6, + STATE(1211), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(724), 17, + STATE(970), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -35628,64 +35922,66 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [14795] = 21, + [14873] = 22, ACTIONS(3), 1, sym_comment, - ACTIONS(288), 1, + ACTIONS(640), 1, + anon_sym_LPAREN, + ACTIONS(646), 1, + anon_sym_LBRACK, + ACTIONS(648), 1, anon_sym_LBRACE, - ACTIONS(310), 1, + ACTIONS(654), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(656), 1, sym__template_string_start, - ACTIONS(597), 1, - anon_sym_LPAREN, - ACTIONS(603), 1, - anon_sym_LBRACK, - ACTIONS(691), 1, - anon_sym_not, - ACTIONS(801), 1, + ACTIONS(952), 1, sym_identifier, - ACTIONS(807), 1, - anon_sym_await, - ACTIONS(829), 1, + ACTIONS(960), 1, + anon_sym_not, + ACTIONS(962), 1, anon_sym_lambda, - STATE(621), 1, + ACTIONS(964), 1, + anon_sym_await, + ACTIONS(986), 1, + anon_sym_COLON, + STATE(792), 1, + sym_primary_expression, + STATE(793), 1, sym_string, - STATE(624), 1, + STATE(794), 1, sym_template_string, - STATE(725), 1, - sym_primary_expression, - STATE(1094), 1, + STATE(1203), 1, sym_expression, - ACTIONS(304), 2, + STATE(1548), 1, + sym_exception_list, + ACTIONS(650), 2, sym_ellipsis, sym_float, - STATE(1211), 2, - sym__expression_within_for_in_clause, - sym_lambda_within_for_in_clause, - ACTIONS(601), 3, + ACTIONS(644), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 4, + ACTIONS(636), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(805), 5, + ACTIONS(954), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1031), 6, + STATE(1211), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(724), 17, + STATE(970), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -35703,65 +35999,66 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [14891] = 22, + [14972] = 22, ACTIONS(3), 1, sym_comment, - ACTIONS(263), 1, - sym_identifier, - ACTIONS(288), 1, + ACTIONS(646), 1, + anon_sym_LBRACK, + ACTIONS(648), 1, anon_sym_LBRACE, - ACTIONS(300), 1, - anon_sym_lambda, - ACTIONS(308), 1, - anon_sym_await, - ACTIONS(310), 1, + ACTIONS(654), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(656), 1, sym__template_string_start, - ACTIONS(578), 1, - anon_sym_LPAREN, - ACTIONS(591), 1, - anon_sym_LBRACK, - ACTIONS(747), 1, + ACTIONS(952), 1, + sym_identifier, + ACTIONS(960), 1, anon_sym_not, - ACTIONS(773), 1, - anon_sym_STAR, - STATE(621), 1, + ACTIONS(962), 1, + anon_sym_lambda, + ACTIONS(964), 1, + anon_sym_await, + ACTIONS(1008), 1, + anon_sym_LPAREN, + STATE(792), 1, + sym_primary_expression, + STATE(793), 1, sym_string, - STATE(624), 1, + STATE(794), 1, sym_template_string, - STATE(719), 1, - sym_primary_expression, - STATE(1264), 1, + STATE(1205), 1, sym_expression, - STATE(1519), 1, - sym_list_splat, - ACTIONS(304), 2, + STATE(1477), 1, + sym_with_item, + STATE(1651), 1, + sym_with_clause, + ACTIONS(650), 2, sym_ellipsis, sym_float, - ACTIONS(296), 3, + ACTIONS(644), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 4, + ACTIONS(636), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(276), 5, + ACTIONS(954), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1031), 6, + STATE(1211), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(724), 17, + STATE(970), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -35779,65 +36076,65 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [14989] = 22, + [15071] = 21, ACTIONS(3), 1, sym_comment, - ACTIONS(631), 1, - anon_sym_LPAREN, - ACTIONS(639), 1, - anon_sym_LBRACK, - ACTIONS(641), 1, + ACTIONS(268), 1, + sym_identifier, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(647), 1, + ACTIONS(305), 1, + anon_sym_lambda, + ACTIONS(313), 1, + anon_sym_await, + ACTIONS(315), 1, sym__string_start, - ACTIONS(649), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(961), 1, - sym_identifier, - ACTIONS(969), 1, + ACTIONS(575), 1, + anon_sym_LPAREN, + ACTIONS(586), 1, + anon_sym_LBRACK, + ACTIONS(752), 1, anon_sym_not, - ACTIONS(971), 1, - anon_sym_lambda, - ACTIONS(973), 1, - anon_sym_await, - ACTIONS(1005), 1, - anon_sym_RPAREN, - STATE(794), 1, + STATE(645), 1, sym_string, - STATE(795), 1, + STATE(658), 1, sym_template_string, - STATE(822), 1, + STATE(719), 1, sym_primary_expression, - STATE(1200), 1, + STATE(1285), 1, sym_expression, - STATE(1501), 1, - sym_with_item, - ACTIONS(643), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(637), 3, + ACTIONS(1010), 2, + anon_sym_COMMA, + anon_sym_RBRACK, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(629), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(965), 5, + ACTIONS(270), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1176), 6, + STATE(1032), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(953), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -35855,64 +36152,65 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [15087] = 21, + [15168] = 21, ACTIONS(3), 1, sym_comment, - ACTIONS(51), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(69), 1, - anon_sym_not, - ACTIONS(71), 1, - anon_sym_lambda, - ACTIONS(81), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(83), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(314), 1, - sym_identifier, - ACTIONS(320), 1, - anon_sym_await, - ACTIONS(568), 1, + ACTIONS(602), 1, anon_sym_LPAREN, - ACTIONS(574), 1, + ACTIONS(608), 1, anon_sym_LBRACK, - STATE(763), 1, + ACTIONS(680), 1, + anon_sym_not, + ACTIONS(816), 1, + sym_identifier, + ACTIONS(822), 1, + anon_sym_await, + ACTIONS(834), 1, + anon_sym_lambda, + STATE(645), 1, + sym_string, + STATE(658), 1, sym_template_string, - STATE(779), 1, + STATE(726), 1, sym_primary_expression, - STATE(782), 1, - sym_string, - STATE(1224), 1, + STATE(1092), 1, sym_expression, - ACTIONS(75), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(1007), 2, - sym__newline, - anon_sym_SEMI, - ACTIONS(47), 3, + STATE(1173), 2, + sym__expression_within_for_in_clause, + sym_lambda_within_for_in_clause, + ACTIONS(606), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(77), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(316), 5, + ACTIONS(818), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1158), 6, + STATE(1032), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(908), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -35930,64 +36228,65 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [15183] = 21, + [15265] = 21, ACTIONS(3), 1, sym_comment, - ACTIONS(263), 1, - sym_identifier, - ACTIONS(288), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(300), 1, - anon_sym_lambda, - ACTIONS(308), 1, - anon_sym_await, - ACTIONS(310), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(578), 1, + ACTIONS(602), 1, anon_sym_LPAREN, - ACTIONS(591), 1, + ACTIONS(608), 1, anon_sym_LBRACK, - ACTIONS(747), 1, + ACTIONS(680), 1, anon_sym_not, - STATE(621), 1, + ACTIONS(816), 1, + sym_identifier, + ACTIONS(822), 1, + anon_sym_await, + ACTIONS(834), 1, + anon_sym_lambda, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, - STATE(719), 1, + STATE(726), 1, sym_primary_expression, - STATE(1268), 1, + STATE(1092), 1, sym_expression, - ACTIONS(304), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(1009), 2, - anon_sym_COMMA, - anon_sym_RBRACK, - ACTIONS(296), 3, + STATE(1165), 2, + sym__expression_within_for_in_clause, + sym_lambda_within_for_in_clause, + ACTIONS(606), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(276), 5, + ACTIONS(818), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1031), 6, + STATE(1032), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(724), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -36005,64 +36304,65 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [15279] = 21, + [15362] = 21, ACTIONS(3), 1, sym_comment, - ACTIONS(288), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(310), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(597), 1, + ACTIONS(602), 1, anon_sym_LPAREN, - ACTIONS(603), 1, + ACTIONS(608), 1, anon_sym_LBRACK, - ACTIONS(691), 1, + ACTIONS(680), 1, anon_sym_not, - ACTIONS(801), 1, + ACTIONS(816), 1, sym_identifier, - ACTIONS(807), 1, + ACTIONS(822), 1, anon_sym_await, - ACTIONS(829), 1, + ACTIONS(834), 1, anon_sym_lambda, - STATE(621), 1, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, - STATE(725), 1, + STATE(726), 1, sym_primary_expression, - STATE(1090), 1, + STATE(1092), 1, sym_expression, - ACTIONS(304), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - STATE(1178), 2, + STATE(1117), 2, sym__expression_within_for_in_clause, sym_lambda_within_for_in_clause, - ACTIONS(601), 3, + ACTIONS(606), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(805), 5, + ACTIONS(818), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1031), 6, + STATE(1032), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(724), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -36080,64 +36380,66 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [15375] = 21, + [15459] = 22, ACTIONS(3), 1, sym_comment, - ACTIONS(288), 1, + ACTIONS(640), 1, + anon_sym_LPAREN, + ACTIONS(646), 1, + anon_sym_LBRACK, + ACTIONS(648), 1, anon_sym_LBRACE, - ACTIONS(310), 1, + ACTIONS(654), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(656), 1, sym__template_string_start, - ACTIONS(597), 1, - anon_sym_LPAREN, - ACTIONS(603), 1, - anon_sym_LBRACK, - ACTIONS(691), 1, - anon_sym_not, - ACTIONS(801), 1, + ACTIONS(952), 1, sym_identifier, - ACTIONS(807), 1, - anon_sym_await, - ACTIONS(829), 1, + ACTIONS(958), 1, + anon_sym_COLON, + ACTIONS(960), 1, + anon_sym_not, + ACTIONS(962), 1, anon_sym_lambda, - STATE(621), 1, + ACTIONS(964), 1, + anon_sym_await, + STATE(792), 1, + sym_primary_expression, + STATE(793), 1, sym_string, - STATE(624), 1, + STATE(794), 1, sym_template_string, - STATE(725), 1, - sym_primary_expression, - STATE(1094), 1, + STATE(1210), 1, sym_expression, - ACTIONS(304), 2, + STATE(1562), 1, + sym_exception_list, + ACTIONS(650), 2, sym_ellipsis, sym_float, - STATE(1128), 2, - sym__expression_within_for_in_clause, - sym_lambda_within_for_in_clause, - ACTIONS(601), 3, + ACTIONS(644), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 4, + ACTIONS(636), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(805), 5, + ACTIONS(954), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1031), 6, + STATE(1211), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(724), 17, + STATE(970), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -36155,65 +36457,66 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [15471] = 22, + [15558] = 22, ACTIONS(3), 1, sym_comment, - ACTIONS(639), 1, + ACTIONS(640), 1, + anon_sym_LPAREN, + ACTIONS(646), 1, anon_sym_LBRACK, - ACTIONS(641), 1, + ACTIONS(648), 1, anon_sym_LBRACE, - ACTIONS(647), 1, + ACTIONS(654), 1, sym__string_start, - ACTIONS(649), 1, + ACTIONS(656), 1, sym__template_string_start, - ACTIONS(961), 1, + ACTIONS(952), 1, sym_identifier, - ACTIONS(969), 1, + ACTIONS(960), 1, anon_sym_not, - ACTIONS(971), 1, + ACTIONS(962), 1, anon_sym_lambda, - ACTIONS(973), 1, + ACTIONS(964), 1, anon_sym_await, - ACTIONS(989), 1, - anon_sym_LPAREN, - STATE(794), 1, + ACTIONS(1012), 1, + anon_sym_RPAREN, + STATE(792), 1, + sym_primary_expression, + STATE(793), 1, sym_string, - STATE(795), 1, + STATE(794), 1, sym_template_string, - STATE(822), 1, - sym_primary_expression, - STATE(1200), 1, + STATE(1205), 1, sym_expression, - STATE(1434), 1, + STATE(1481), 1, sym_with_item, - STATE(1589), 1, - sym_with_clause, - ACTIONS(643), 2, + ACTIONS(650), 2, sym_ellipsis, sym_float, - ACTIONS(637), 3, + ACTIONS(644), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(629), 4, + ACTIONS(636), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(965), 5, + ACTIONS(954), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1176), 6, + STATE(1211), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(953), 17, + STATE(970), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -36231,65 +36534,66 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [15569] = 22, + [15657] = 22, ACTIONS(3), 1, sym_comment, - ACTIONS(639), 1, - anon_sym_LBRACK, - ACTIONS(641), 1, - anon_sym_LBRACE, - ACTIONS(647), 1, - sym__string_start, - ACTIONS(649), 1, - sym__template_string_start, - ACTIONS(961), 1, + ACTIONS(268), 1, sym_identifier, - ACTIONS(969), 1, - anon_sym_not, - ACTIONS(971), 1, + ACTIONS(293), 1, + anon_sym_LBRACE, + ACTIONS(305), 1, anon_sym_lambda, - ACTIONS(973), 1, + ACTIONS(313), 1, anon_sym_await, - ACTIONS(989), 1, + ACTIONS(315), 1, + sym__string_start, + ACTIONS(317), 1, + sym__template_string_start, + ACTIONS(575), 1, anon_sym_LPAREN, - STATE(794), 1, + ACTIONS(586), 1, + anon_sym_LBRACK, + ACTIONS(752), 1, + anon_sym_not, + ACTIONS(792), 1, + anon_sym_STAR, + STATE(645), 1, sym_string, - STATE(795), 1, + STATE(658), 1, sym_template_string, - STATE(822), 1, + STATE(719), 1, sym_primary_expression, - STATE(1200), 1, + STATE(1282), 1, sym_expression, - STATE(1434), 1, - sym_with_item, - STATE(1597), 1, - sym_with_clause, - ACTIONS(643), 2, + STATE(1549), 1, + sym_list_splat, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(637), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(629), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(965), 5, + ACTIONS(270), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1176), 6, + STATE(1032), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(953), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -36307,64 +36611,65 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [15667] = 21, + [15756] = 21, ACTIONS(3), 1, sym_comment, - ACTIONS(263), 1, + ACTIONS(268), 1, sym_identifier, - ACTIONS(288), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(300), 1, + ACTIONS(305), 1, anon_sym_lambda, - ACTIONS(308), 1, + ACTIONS(313), 1, anon_sym_await, - ACTIONS(310), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(578), 1, + ACTIONS(575), 1, anon_sym_LPAREN, - ACTIONS(591), 1, + ACTIONS(586), 1, anon_sym_LBRACK, - ACTIONS(747), 1, + ACTIONS(752), 1, anon_sym_not, - STATE(621), 1, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, STATE(719), 1, sym_primary_expression, - STATE(1291), 1, + STATE(1258), 1, sym_expression, - ACTIONS(304), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(1011), 2, + ACTIONS(1014), 2, anon_sym_COMMA, anon_sym_RBRACK, - ACTIONS(296), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(276), 5, + ACTIONS(270), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1031), 6, + STATE(1032), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(724), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -36382,122 +36687,65 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [15763] = 3, + [15853] = 21, ACTIONS(3), 1, sym_comment, - ACTIONS(1015), 17, - anon_sym_as, - anon_sym_STAR, - anon_sym_GT_GT, - anon_sym_PIPE, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_STAR_STAR, - anon_sym_EQ, - anon_sym_AT, - anon_sym_SLASH, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1013), 35, - anon_sym_DOT, - anon_sym_LPAREN, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_if, - anon_sym_COLON, - anon_sym_else, - anon_sym_async, - anon_sym_for, - anon_sym_in, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_RBRACE, - anon_sym_not, - anon_sym_and, - anon_sym_or, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - anon_sym_is, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_STAR_EQ, - anon_sym_SLASH_EQ, - anon_sym_AT_EQ, - anon_sym_SLASH_SLASH_EQ, - anon_sym_PERCENT_EQ, - anon_sym_STAR_STAR_EQ, - anon_sym_GT_GT_EQ, - anon_sym_LT_LT_EQ, - anon_sym_AMP_EQ, - anon_sym_CARET_EQ, - anon_sym_PIPE_EQ, - [15823] = 22, - ACTIONS(3), 1, - sym_comment, - ACTIONS(631), 1, - anon_sym_LPAREN, - ACTIONS(639), 1, - anon_sym_LBRACK, - ACTIONS(641), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(647), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(649), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(961), 1, - sym_identifier, - ACTIONS(969), 1, + ACTIONS(602), 1, + anon_sym_LPAREN, + ACTIONS(608), 1, + anon_sym_LBRACK, + ACTIONS(680), 1, anon_sym_not, - ACTIONS(971), 1, - anon_sym_lambda, - ACTIONS(973), 1, + ACTIONS(816), 1, + sym_identifier, + ACTIONS(822), 1, anon_sym_await, - ACTIONS(1017), 1, - anon_sym_RPAREN, - STATE(794), 1, + ACTIONS(834), 1, + anon_sym_lambda, + STATE(645), 1, sym_string, - STATE(795), 1, + STATE(658), 1, sym_template_string, - STATE(822), 1, + STATE(726), 1, sym_primary_expression, - STATE(1200), 1, + STATE(1099), 1, sym_expression, - STATE(1501), 1, - sym_with_item, - ACTIONS(643), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(637), 3, + STATE(1172), 2, + sym__expression_within_for_in_clause, + sym_lambda_within_for_in_clause, + ACTIONS(606), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(629), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(965), 5, + ACTIONS(818), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1176), 6, + STATE(1032), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(953), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -36515,64 +36763,66 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [15921] = 21, + [15950] = 22, ACTIONS(3), 1, sym_comment, - ACTIONS(288), 1, + ACTIONS(646), 1, + anon_sym_LBRACK, + ACTIONS(648), 1, anon_sym_LBRACE, - ACTIONS(310), 1, + ACTIONS(654), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(656), 1, sym__template_string_start, - ACTIONS(597), 1, - anon_sym_LPAREN, - ACTIONS(603), 1, - anon_sym_LBRACK, - ACTIONS(691), 1, - anon_sym_not, - ACTIONS(801), 1, + ACTIONS(952), 1, sym_identifier, - ACTIONS(807), 1, - anon_sym_await, - ACTIONS(829), 1, + ACTIONS(960), 1, + anon_sym_not, + ACTIONS(962), 1, anon_sym_lambda, - STATE(621), 1, + ACTIONS(964), 1, + anon_sym_await, + ACTIONS(1008), 1, + anon_sym_LPAREN, + STATE(792), 1, + sym_primary_expression, + STATE(793), 1, sym_string, - STATE(624), 1, + STATE(794), 1, sym_template_string, - STATE(725), 1, - sym_primary_expression, - STATE(1094), 1, + STATE(1205), 1, sym_expression, - ACTIONS(304), 2, + STATE(1477), 1, + sym_with_item, + STATE(1599), 1, + sym_with_clause, + ACTIONS(650), 2, sym_ellipsis, sym_float, - STATE(1111), 2, - sym__expression_within_for_in_clause, - sym_lambda_within_for_in_clause, - ACTIONS(601), 3, + ACTIONS(644), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 4, + ACTIONS(636), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(805), 5, + ACTIONS(954), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1031), 6, + STATE(1211), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(724), 17, + STATE(970), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -36590,65 +36840,66 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [16017] = 22, + [16049] = 22, ACTIONS(3), 1, sym_comment, - ACTIONS(639), 1, + ACTIONS(646), 1, anon_sym_LBRACK, - ACTIONS(641), 1, + ACTIONS(648), 1, anon_sym_LBRACE, - ACTIONS(647), 1, + ACTIONS(654), 1, sym__string_start, - ACTIONS(649), 1, + ACTIONS(656), 1, sym__template_string_start, - ACTIONS(961), 1, + ACTIONS(952), 1, sym_identifier, - ACTIONS(969), 1, + ACTIONS(960), 1, anon_sym_not, - ACTIONS(971), 1, + ACTIONS(962), 1, anon_sym_lambda, - ACTIONS(973), 1, + ACTIONS(964), 1, anon_sym_await, - ACTIONS(989), 1, + ACTIONS(1008), 1, anon_sym_LPAREN, - STATE(794), 1, + STATE(792), 1, + sym_primary_expression, + STATE(793), 1, sym_string, - STATE(795), 1, + STATE(794), 1, sym_template_string, - STATE(822), 1, - sym_primary_expression, - STATE(1200), 1, + STATE(1205), 1, sym_expression, - STATE(1434), 1, + STATE(1477), 1, sym_with_item, - STATE(1670), 1, + STATE(1607), 1, sym_with_clause, - ACTIONS(643), 2, + ACTIONS(650), 2, sym_ellipsis, sym_float, - ACTIONS(637), 3, + ACTIONS(644), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(629), 4, + ACTIONS(636), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(965), 5, + ACTIONS(954), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1176), 6, + STATE(1211), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(953), 17, + STATE(970), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -36666,65 +36917,66 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [16115] = 22, + [16148] = 22, ACTIONS(3), 1, sym_comment, - ACTIONS(631), 1, - anon_sym_LPAREN, - ACTIONS(639), 1, + ACTIONS(646), 1, anon_sym_LBRACK, - ACTIONS(641), 1, + ACTIONS(648), 1, anon_sym_LBRACE, - ACTIONS(647), 1, + ACTIONS(654), 1, sym__string_start, - ACTIONS(649), 1, + ACTIONS(656), 1, sym__template_string_start, - ACTIONS(961), 1, + ACTIONS(952), 1, sym_identifier, - ACTIONS(969), 1, + ACTIONS(960), 1, anon_sym_not, - ACTIONS(971), 1, + ACTIONS(962), 1, anon_sym_lambda, - ACTIONS(973), 1, + ACTIONS(964), 1, anon_sym_await, - ACTIONS(987), 1, - anon_sym_COLON, - STATE(794), 1, + ACTIONS(1008), 1, + anon_sym_LPAREN, + STATE(792), 1, + sym_primary_expression, + STATE(793), 1, sym_string, - STATE(795), 1, + STATE(794), 1, sym_template_string, - STATE(822), 1, - sym_primary_expression, - STATE(1204), 1, + STATE(1205), 1, sym_expression, - STATE(1548), 1, - sym_exception_list, - ACTIONS(643), 2, + STATE(1477), 1, + sym_with_item, + STATE(1645), 1, + sym_with_clause, + ACTIONS(650), 2, sym_ellipsis, sym_float, - ACTIONS(637), 3, + ACTIONS(644), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(629), 4, + ACTIONS(636), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(965), 5, + ACTIONS(954), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1176), 6, + STATE(1211), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(953), 17, + STATE(970), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -36742,23 +36994,13 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [16213] = 8, + [16247] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(949), 1, - anon_sym_else, - ACTIONS(1023), 1, - anon_sym_elif, - STATE(321), 1, - aux_sym_if_statement_repeat1, - STATE(463), 1, - sym_elif_clause, - STATE(514), 1, - sym_else_clause, - ACTIONS(1019), 13, + ACTIONS(1018), 13, + sym__dedent, sym__string_start, sym__template_string_start, - ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -36769,7 +37011,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1021), 33, + ACTIONS(1016), 39, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -36782,12 +37025,17 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_break, anon_sym_continue, anon_sym_if, + anon_sym_elif, + anon_sym_else, anon_sym_async, anon_sym_for, anon_sym_while, anon_sym_try, + anon_sym_except, + anon_sym_finally, anon_sym_with, anon_sym_match, + anon_sym_case, anon_sym_def, anon_sym_global, anon_sym_nonlocal, @@ -36803,13 +37051,23 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [16282] = 3, + [16307] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(1027), 13, - sym__dedent, + ACTIONS(966), 1, + anon_sym_else, + ACTIONS(1024), 1, + anon_sym_elif, + STATE(364), 1, + aux_sym_if_statement_repeat1, + STATE(471), 1, + sym_elif_clause, + STATE(544), 1, + sym_else_clause, + ACTIONS(1020), 13, sym__string_start, sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -36820,7 +37078,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1025), 38, + ACTIONS(1022), 34, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -36833,17 +37092,12 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_break, anon_sym_continue, anon_sym_if, - anon_sym_elif, - anon_sym_else, anon_sym_async, anon_sym_for, anon_sym_while, anon_sym_try, - anon_sym_except, - anon_sym_finally, anon_sym_with, anon_sym_match, - anon_sym_case, anon_sym_def, anon_sym_global, anon_sym_nonlocal, @@ -36859,13 +37113,23 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [16341] = 3, + [16377] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(1031), 13, - sym__dedent, + ACTIONS(966), 1, + anon_sym_else, + ACTIONS(1024), 1, + anon_sym_elif, + STATE(323), 1, + aux_sym_if_statement_repeat1, + STATE(471), 1, + sym_elif_clause, + STATE(548), 1, + sym_else_clause, + ACTIONS(1026), 13, sym__string_start, sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -36876,7 +37140,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1029), 38, + ACTIONS(1028), 34, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -36889,17 +37154,74 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_break, anon_sym_continue, anon_sym_if, - anon_sym_elif, + anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_with, + anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, + anon_sym_exec, + anon_sym_type, + anon_sym_class, + anon_sym_not, + anon_sym_lambda, + anon_sym_yield, + sym_integer, + sym_identifier, + anon_sym_await, + sym_true, + sym_false, + sym_none, + [16447] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(946), 1, anon_sym_else, + ACTIONS(1034), 1, + anon_sym_elif, + STATE(374), 1, + aux_sym_if_statement_repeat1, + STATE(469), 1, + sym_elif_clause, + STATE(540), 1, + sym_else_clause, + ACTIONS(1032), 13, + sym__dedent, + sym__string_start, + sym__template_string_start, + anon_sym_LPAREN, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_TILDE, + sym_ellipsis, + sym_float, + ACTIONS(1030), 34, + anon_sym_lazy, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, + anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, anon_sym_async, anon_sym_for, anon_sym_while, anon_sym_try, - anon_sym_except, - anon_sym_finally, anon_sym_with, anon_sym_match, - anon_sym_case, anon_sym_def, anon_sym_global, anon_sym_nonlocal, @@ -36915,63 +37237,139 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [16400] = 21, + [16517] = 21, ACTIONS(3), 1, sym_comment, - ACTIONS(631), 1, + ACTIONS(640), 1, anon_sym_LPAREN, - ACTIONS(639), 1, + ACTIONS(646), 1, anon_sym_LBRACK, - ACTIONS(641), 1, + ACTIONS(648), 1, anon_sym_LBRACE, - ACTIONS(647), 1, + ACTIONS(654), 1, sym__string_start, - ACTIONS(649), 1, + ACTIONS(656), 1, sym__template_string_start, - ACTIONS(961), 1, + ACTIONS(952), 1, sym_identifier, - ACTIONS(969), 1, + ACTIONS(960), 1, anon_sym_not, - ACTIONS(971), 1, + ACTIONS(962), 1, anon_sym_lambda, - ACTIONS(973), 1, + ACTIONS(964), 1, anon_sym_await, - STATE(794), 1, + STATE(792), 1, + sym_primary_expression, + STATE(793), 1, sym_string, - STATE(795), 1, + STATE(794), 1, sym_template_string, - STATE(822), 1, + STATE(1174), 1, + sym_expression, + STATE(1555), 1, + sym_exception_list, + ACTIONS(650), 2, + sym_ellipsis, + sym_float, + ACTIONS(644), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(636), 4, + sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(954), 6, + anon_sym_lazy, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(1211), 6, + sym_named_expression, + sym_not_operator, + sym_boolean_operator, + sym_comparison_operator, + sym_lambda, + sym_conditional_expression, + STATE(970), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [16613] = 21, + ACTIONS(3), 1, + sym_comment, + ACTIONS(640), 1, + anon_sym_LPAREN, + ACTIONS(646), 1, + anon_sym_LBRACK, + ACTIONS(648), 1, + anon_sym_LBRACE, + ACTIONS(654), 1, + sym__string_start, + ACTIONS(656), 1, + sym__template_string_start, + ACTIONS(952), 1, + sym_identifier, + ACTIONS(960), 1, + anon_sym_not, + ACTIONS(962), 1, + anon_sym_lambda, + ACTIONS(964), 1, + anon_sym_await, + STATE(792), 1, sym_primary_expression, - STATE(1200), 1, + STATE(793), 1, + sym_string, + STATE(794), 1, + sym_template_string, + STATE(1205), 1, sym_expression, - STATE(1501), 1, + STATE(1481), 1, sym_with_item, - ACTIONS(643), 2, + ACTIONS(650), 2, sym_ellipsis, sym_float, - ACTIONS(637), 3, + ACTIONS(644), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(629), 4, + ACTIONS(636), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(965), 5, + ACTIONS(954), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1176), 6, + STATE(1211), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(953), 17, + STATE(970), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -36989,20 +37387,15 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [16495] = 8, + [16709] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(949), 1, - anon_sym_else, - ACTIONS(1023), 1, - anon_sym_elif, - STATE(354), 1, - aux_sym_if_statement_repeat1, - STATE(463), 1, - sym_elif_clause, - STATE(525), 1, - sym_else_clause, - ACTIONS(1033), 13, + ACTIONS(1040), 1, + anon_sym_except, + STATE(316), 2, + sym_except_clause, + aux_sym_try_statement_repeat1, + ACTIONS(1036), 13, sym__string_start, sym__template_string_start, ts_builtin_sym_end, @@ -37016,7 +37409,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1035), 33, + ACTIONS(1038), 36, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -37029,10 +37423,12 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_break, anon_sym_continue, anon_sym_if, + anon_sym_else, anon_sym_async, anon_sym_for, anon_sym_while, anon_sym_try, + anon_sym_finally, anon_sym_with, anon_sym_match, anon_sym_def, @@ -37050,10 +37446,15 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [16564] = 3, + [16773] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(1037), 13, + ACTIONS(1047), 1, + anon_sym_except, + STATE(317), 2, + sym_except_group_clause, + aux_sym_try_statement_repeat2, + ACTIONS(1043), 13, sym__string_start, sym__template_string_start, ts_builtin_sym_end, @@ -37067,7 +37468,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1039), 38, + ACTIONS(1045), 36, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -37080,17 +37482,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_break, anon_sym_continue, anon_sym_if, - anon_sym_elif, anon_sym_else, anon_sym_async, anon_sym_for, anon_sym_while, anon_sym_try, - anon_sym_except, anon_sym_finally, anon_sym_with, anon_sym_match, - anon_sym_case, anon_sym_def, anon_sym_global, anon_sym_nonlocal, @@ -37106,13 +37505,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [16623] = 3, + [16837] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1027), 13, + ACTIONS(1052), 13, + sym__dedent, sym__string_start, sym__template_string_start, - ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -37123,7 +37522,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1025), 38, + ACTIONS(1050), 39, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -37162,23 +37562,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [16682] = 8, + [16897] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(941), 1, - anon_sym_else, - ACTIONS(1041), 1, - anon_sym_elif, - STATE(326), 1, - aux_sym_if_statement_repeat1, - STATE(473), 1, - sym_elif_clause, - STATE(558), 1, - sym_else_clause, - ACTIONS(1019), 13, - sym__dedent, + ACTIONS(1018), 13, sym__string_start, sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -37189,7 +37579,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1021), 33, + ACTIONS(1016), 39, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -37202,12 +37593,17 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_break, anon_sym_continue, anon_sym_if, + anon_sym_elif, + anon_sym_else, anon_sym_async, anon_sym_for, anon_sym_while, anon_sym_try, + anon_sym_except, + anon_sym_finally, anon_sym_with, anon_sym_match, + anon_sym_case, anon_sym_def, anon_sym_global, anon_sym_nonlocal, @@ -37223,13 +37619,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [16751] = 3, + [16957] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1045), 13, - sym__dedent, + ACTIONS(1054), 13, sym__string_start, sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -37240,7 +37636,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1043), 38, + ACTIONS(1056), 39, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -37279,20 +37676,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [16810] = 8, + [17017] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(949), 1, - anon_sym_else, - ACTIONS(1023), 1, - anon_sym_elif, - STATE(354), 1, - aux_sym_if_statement_repeat1, - STATE(463), 1, - sym_elif_clause, - STATE(596), 1, - sym_else_clause, - ACTIONS(1047), 13, + ACTIONS(1058), 13, sym__string_start, sym__template_string_start, ts_builtin_sym_end, @@ -37306,7 +37693,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1049), 33, + ACTIONS(1060), 39, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -37319,12 +37707,17 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_break, anon_sym_continue, anon_sym_if, + anon_sym_elif, + anon_sym_else, anon_sym_async, anon_sym_for, anon_sym_while, anon_sym_try, + anon_sym_except, + anon_sym_finally, anon_sym_with, anon_sym_match, + anon_sym_case, anon_sym_def, anon_sym_global, anon_sym_nonlocal, @@ -37340,23 +37733,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [16879] = 8, + [17077] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(949), 1, - anon_sym_else, - ACTIONS(1023), 1, - anon_sym_elif, - STATE(316), 1, - aux_sym_if_statement_repeat1, - STATE(463), 1, - sym_elif_clause, - STATE(597), 1, - sym_else_clause, - ACTIONS(1051), 13, + ACTIONS(1058), 13, + sym__dedent, sym__string_start, sym__template_string_start, - ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -37367,7 +37750,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1053), 33, + ACTIONS(1060), 39, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -37380,12 +37764,17 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_break, anon_sym_continue, anon_sym_if, + anon_sym_elif, + anon_sym_else, anon_sym_async, anon_sym_for, anon_sym_while, anon_sym_try, + anon_sym_except, + anon_sym_finally, anon_sym_with, anon_sym_match, + anon_sym_case, anon_sym_def, anon_sym_global, anon_sym_nonlocal, @@ -37401,147 +37790,20 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [16948] = 21, - ACTIONS(3), 1, - sym_comment, - ACTIONS(631), 1, - anon_sym_LPAREN, - ACTIONS(639), 1, - anon_sym_LBRACK, - ACTIONS(641), 1, - anon_sym_LBRACE, - ACTIONS(647), 1, - sym__string_start, - ACTIONS(649), 1, - sym__template_string_start, - ACTIONS(961), 1, - sym_identifier, - ACTIONS(969), 1, - anon_sym_not, - ACTIONS(971), 1, - anon_sym_lambda, - ACTIONS(973), 1, - anon_sym_await, - STATE(794), 1, - sym_string, - STATE(795), 1, - sym_template_string, - STATE(822), 1, - sym_primary_expression, - STATE(1186), 1, - sym_expression, - STATE(1565), 1, - sym_exception_list, - ACTIONS(643), 2, - sym_ellipsis, - sym_float, - ACTIONS(637), 3, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_TILDE, - ACTIONS(629), 4, - sym_integer, - sym_true, - sym_false, - sym_none, - ACTIONS(965), 5, - anon_sym_print, - anon_sym_async, - anon_sym_match, - anon_sym_exec, - anon_sym_type, - STATE(1176), 6, - sym_named_expression, - sym_not_operator, - sym_boolean_operator, - sym_comparison_operator, - sym_lambda, - sym_conditional_expression, - STATE(953), 17, - sym_binary_operator, - sym_unary_operator, - sym_attribute, - sym_subscript, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [17043] = 10, + [17137] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(270), 1, - anon_sym_COMMA, - ACTIONS(278), 1, - anon_sym_COLON_EQ, - ACTIONS(1055), 1, - anon_sym_for, - ACTIONS(1057), 1, - anon_sym_with, - ACTIONS(1059), 1, - anon_sym_def, - ACTIONS(280), 2, - anon_sym_COLON, - anon_sym_EQ, - ACTIONS(302), 13, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_STAR_EQ, - anon_sym_SLASH_EQ, - anon_sym_AT_EQ, - anon_sym_SLASH_SLASH_EQ, - anon_sym_PERCENT_EQ, - anon_sym_STAR_STAR_EQ, - anon_sym_GT_GT_EQ, - anon_sym_LT_LT_EQ, - anon_sym_AMP_EQ, - anon_sym_CARET_EQ, - anon_sym_PIPE_EQ, - ACTIONS(265), 15, - anon_sym_STAR, - anon_sym_GT_GT, - anon_sym_PIPE, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_SLASH, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, - anon_sym_LT, - anon_sym_GT, - ACTIONS(298), 16, - sym__newline, - anon_sym_DOT, - anon_sym_LPAREN, - anon_sym_if, - anon_sym_in, - anon_sym_LBRACK, - anon_sym_not, - anon_sym_and, - anon_sym_or, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - anon_sym_is, - anon_sym_SEMI, - [17116] = 3, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1045), 13, + ACTIONS(966), 1, + anon_sym_else, + ACTIONS(1024), 1, + anon_sym_elif, + STATE(364), 1, + aux_sym_if_statement_repeat1, + STATE(471), 1, + sym_elif_clause, + STATE(579), 1, + sym_else_clause, + ACTIONS(1032), 13, sym__string_start, sym__template_string_start, ts_builtin_sym_end, @@ -37555,7 +37817,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1043), 38, + ACTIONS(1030), 34, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -37568,17 +37831,12 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_break, anon_sym_continue, anon_sym_if, - anon_sym_elif, - anon_sym_else, anon_sym_async, anon_sym_for, anon_sym_while, anon_sym_try, - anon_sym_except, - anon_sym_finally, anon_sym_with, anon_sym_match, - anon_sym_case, anon_sym_def, anon_sym_global, anon_sym_nonlocal, @@ -37594,20 +37852,77 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [17175] = 8, + [17207] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1064), 17, + anon_sym_as, + anon_sym_STAR, + anon_sym_GT_GT, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_STAR_STAR, + anon_sym_EQ, + anon_sym_AT, + anon_sym_SLASH, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1062), 35, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_if, + anon_sym_COLON, + anon_sym_else, + anon_sym_async, + anon_sym_for, + anon_sym_in, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_AT_EQ, + anon_sym_SLASH_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_STAR_STAR_EQ, + anon_sym_GT_GT_EQ, + anon_sym_LT_LT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + [17267] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(941), 1, + ACTIONS(946), 1, anon_sym_else, - ACTIONS(1041), 1, + ACTIONS(1034), 1, anon_sym_elif, - STATE(399), 1, + STATE(329), 1, aux_sym_if_statement_repeat1, - STATE(473), 1, + STATE(469), 1, sym_elif_clause, - STATE(568), 1, + STATE(516), 1, sym_else_clause, - ACTIONS(1047), 13, + ACTIONS(1068), 13, sym__dedent, sym__string_start, sym__template_string_start, @@ -37621,7 +37936,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1049), 33, + ACTIONS(1066), 34, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -37655,20 +37971,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [17244] = 8, + [17337] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(941), 1, - anon_sym_else, - ACTIONS(1041), 1, - anon_sym_elif, - STATE(333), 1, - aux_sym_if_statement_repeat1, - STATE(473), 1, - sym_elif_clause, - STATE(569), 1, - sym_else_clause, - ACTIONS(1051), 13, + ACTIONS(1054), 13, sym__dedent, sym__string_start, sym__template_string_start, @@ -37682,7 +37988,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1053), 33, + ACTIONS(1056), 39, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -37695,12 +38002,17 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_break, anon_sym_continue, anon_sym_if, + anon_sym_elif, + anon_sym_else, anon_sym_async, anon_sym_for, anon_sym_while, anon_sym_try, + anon_sym_except, + anon_sym_finally, anon_sym_with, anon_sym_match, + anon_sym_case, anon_sym_def, anon_sym_global, anon_sym_nonlocal, @@ -37716,15 +38028,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [17313] = 5, + [17397] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1065), 1, - anon_sym_except, - STATE(328), 2, - sym_except_clause, - aux_sym_try_statement_repeat1, - ACTIONS(1061), 13, + ACTIONS(1070), 13, sym__string_start, sym__template_string_start, ts_builtin_sym_end, @@ -37738,7 +38045,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1063), 35, + ACTIONS(1072), 39, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -37751,14 +38059,17 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_break, anon_sym_continue, anon_sym_if, + anon_sym_elif, anon_sym_else, anon_sym_async, anon_sym_for, anon_sym_while, anon_sym_try, + anon_sym_except, anon_sym_finally, anon_sym_with, anon_sym_match, + anon_sym_case, anon_sym_def, anon_sym_global, anon_sym_nonlocal, @@ -37774,18 +38085,80 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [17376] = 5, + [17457] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1072), 1, - anon_sym_except, - STATE(329), 2, - sym_except_group_clause, - aux_sym_try_statement_repeat2, - ACTIONS(1068), 13, + ACTIONS(1076), 17, + anon_sym_as, + anon_sym_STAR, + anon_sym_GT_GT, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_STAR_STAR, + anon_sym_EQ, + anon_sym_AT, + anon_sym_SLASH, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1074), 35, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_if, + anon_sym_COLON, + anon_sym_else, + anon_sym_async, + anon_sym_for, + anon_sym_in, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_AT_EQ, + anon_sym_SLASH_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_STAR_STAR_EQ, + anon_sym_GT_GT_EQ, + anon_sym_LT_LT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + [17517] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(946), 1, + anon_sym_else, + ACTIONS(1034), 1, + anon_sym_elif, + STATE(374), 1, + aux_sym_if_statement_repeat1, + STATE(469), 1, + sym_elif_clause, + STATE(527), 1, + sym_else_clause, + ACTIONS(1020), 13, + sym__dedent, sym__string_start, sym__template_string_start, - ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -37796,7 +38169,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1070), 35, + ACTIONS(1022), 34, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -37809,12 +38183,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_break, anon_sym_continue, anon_sym_if, - anon_sym_else, anon_sym_async, anon_sym_for, anon_sym_while, anon_sym_try, - anon_sym_finally, anon_sym_with, anon_sym_match, anon_sym_def, @@ -37832,15 +38204,20 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [17439] = 5, + [17587] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(1075), 1, - anon_sym_except, - STATE(330), 2, - sym_except_clause, - aux_sym_try_statement_repeat1, - ACTIONS(1061), 13, + ACTIONS(946), 1, + anon_sym_else, + ACTIONS(1034), 1, + anon_sym_elif, + STATE(313), 1, + aux_sym_if_statement_repeat1, + STATE(469), 1, + sym_elif_clause, + STATE(528), 1, + sym_else_clause, + ACTIONS(1026), 13, sym__dedent, sym__string_start, sym__template_string_start, @@ -37854,7 +38231,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1063), 35, + ACTIONS(1028), 34, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -37867,12 +38245,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_break, anon_sym_continue, anon_sym_if, - anon_sym_else, anon_sym_async, anon_sym_for, anon_sym_while, anon_sym_try, - anon_sym_finally, anon_sym_with, anon_sym_match, anon_sym_def, @@ -37890,18 +38266,23 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [17502] = 5, + [17657] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(1078), 1, - anon_sym_except, - STATE(331), 2, - sym_except_group_clause, - aux_sym_try_statement_repeat2, + ACTIONS(966), 1, + anon_sym_else, + ACTIONS(1024), 1, + anon_sym_elif, + STATE(311), 1, + aux_sym_if_statement_repeat1, + STATE(471), 1, + sym_elif_clause, + STATE(599), 1, + sym_else_clause, ACTIONS(1068), 13, - sym__dedent, sym__string_start, sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -37912,7 +38293,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1070), 35, + ACTIONS(1066), 34, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -37925,12 +38307,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_break, anon_sym_continue, anon_sym_if, - anon_sym_else, anon_sym_async, anon_sym_for, anon_sym_while, anon_sym_try, - anon_sym_finally, anon_sym_with, anon_sym_match, anon_sym_def, @@ -37948,13 +38328,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [17565] = 3, + [17727] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1031), 13, + ACTIONS(1070), 13, + sym__dedent, sym__string_start, sym__template_string_start, - ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -37965,7 +38345,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1029), 38, + ACTIONS(1072), 39, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -38004,20 +38385,15 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [17624] = 8, + [17787] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(941), 1, - anon_sym_else, - ACTIONS(1041), 1, - anon_sym_elif, - STATE(399), 1, - aux_sym_if_statement_repeat1, - STATE(473), 1, - sym_elif_clause, - STATE(582), 1, - sym_else_clause, - ACTIONS(1033), 13, + ACTIONS(1078), 1, + anon_sym_except, + STATE(333), 2, + sym_except_clause, + aux_sym_try_statement_repeat1, + ACTIONS(1036), 13, sym__dedent, sym__string_start, sym__template_string_start, @@ -38031,7 +38407,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1035), 33, + ACTIONS(1038), 36, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -38044,10 +38421,12 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_break, anon_sym_continue, anon_sym_if, + anon_sym_else, anon_sym_async, anon_sym_for, anon_sym_while, anon_sym_try, + anon_sym_finally, anon_sym_with, anon_sym_match, anon_sym_def, @@ -38065,13 +38444,18 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [17693] = 3, + [17851] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(1081), 13, + ACTIONS(1081), 1, + anon_sym_except, + STATE(334), 2, + sym_except_group_clause, + aux_sym_try_statement_repeat2, + ACTIONS(1043), 13, + sym__dedent, sym__string_start, sym__template_string_start, - ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -38082,7 +38466,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1083), 38, + ACTIONS(1045), 36, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -38095,17 +38480,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_break, anon_sym_continue, anon_sym_if, - anon_sym_elif, anon_sym_else, anon_sym_async, anon_sym_for, anon_sym_while, anon_sym_try, - anon_sym_except, anon_sym_finally, anon_sym_with, anon_sym_match, - anon_sym_case, anon_sym_def, anon_sym_global, anon_sym_nonlocal, @@ -38121,69 +38503,88 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [17752] = 3, + [17915] = 21, ACTIONS(3), 1, sym_comment, - ACTIONS(1037), 13, - sym__dedent, - sym__string_start, - sym__template_string_start, + ACTIONS(640), 1, anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, + ACTIONS(646), 1, anon_sym_LBRACK, + ACTIONS(648), 1, anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, + ACTIONS(654), 1, + sym__string_start, + ACTIONS(656), 1, + sym__template_string_start, + ACTIONS(952), 1, + sym_identifier, + ACTIONS(960), 1, + anon_sym_not, + ACTIONS(962), 1, + anon_sym_lambda, + ACTIONS(964), 1, + anon_sym_await, + STATE(792), 1, + sym_primary_expression, + STATE(793), 1, + sym_string, + STATE(794), 1, + sym_template_string, + STATE(1204), 1, + sym_expression, + STATE(1550), 1, + sym_exception_list, + ACTIONS(650), 2, sym_ellipsis, sym_float, - ACTIONS(1039), 38, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, + ACTIONS(644), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(636), 4, + sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(954), 6, + anon_sym_lazy, anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, - anon_sym_elif, - anon_sym_else, anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_except, - anon_sym_finally, - anon_sym_with, anon_sym_match, - anon_sym_case, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - anon_sym_class, - anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, - anon_sym_await, - sym_true, - sym_false, - sym_none, - [17811] = 3, + STATE(1211), 6, + sym_named_expression, + sym_not_operator, + sym_boolean_operator, + sym_comparison_operator, + sym_lambda, + sym_conditional_expression, + STATE(970), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [18011] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1081), 13, - sym__dedent, + ACTIONS(1052), 13, sym__string_start, sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -38194,7 +38595,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1083), 38, + ACTIONS(1050), 39, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -38233,63 +38635,62 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [17870] = 21, + [18071] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(631), 1, - anon_sym_LPAREN, - ACTIONS(639), 1, - anon_sym_LBRACK, - ACTIONS(641), 1, + ACTIONS(53), 1, anon_sym_LBRACE, - ACTIONS(647), 1, + ACTIONS(71), 1, + anon_sym_not, + ACTIONS(73), 1, + anon_sym_lambda, + ACTIONS(83), 1, sym__string_start, - ACTIONS(649), 1, + ACTIONS(85), 1, sym__template_string_start, - ACTIONS(961), 1, + ACTIONS(349), 1, sym_identifier, - ACTIONS(969), 1, - anon_sym_not, - ACTIONS(971), 1, - anon_sym_lambda, - ACTIONS(973), 1, + ACTIONS(355), 1, anon_sym_await, - STATE(794), 1, - sym_string, - STATE(795), 1, - sym_template_string, - STATE(822), 1, + ACTIONS(594), 1, + anon_sym_LPAREN, + ACTIONS(598), 1, + anon_sym_LBRACK, + STATE(765), 1, sym_primary_expression, - STATE(1205), 1, + STATE(769), 1, + sym_template_string, + STATE(775), 1, + sym_string, + STATE(1155), 1, sym_expression, - STATE(1550), 1, - sym_exception_list, - ACTIONS(643), 2, + ACTIONS(77), 2, sym_ellipsis, sym_float, - ACTIONS(637), 3, + ACTIONS(49), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(629), 4, + ACTIONS(79), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(965), 5, + ACTIONS(351), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1176), 6, + STATE(1156), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(953), 17, + STATE(920), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -38307,124 +38708,62 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [17965] = 10, + [18164] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(270), 1, - anon_sym_COMMA, - ACTIONS(278), 1, - anon_sym_COLON_EQ, - ACTIONS(1085), 1, - anon_sym_for, - ACTIONS(1087), 1, - anon_sym_with, - ACTIONS(1089), 1, - anon_sym_def, - ACTIONS(280), 2, - anon_sym_COLON, - anon_sym_EQ, - ACTIONS(302), 13, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_STAR_EQ, - anon_sym_SLASH_EQ, - anon_sym_AT_EQ, - anon_sym_SLASH_SLASH_EQ, - anon_sym_PERCENT_EQ, - anon_sym_STAR_STAR_EQ, - anon_sym_GT_GT_EQ, - anon_sym_LT_LT_EQ, - anon_sym_AMP_EQ, - anon_sym_CARET_EQ, - anon_sym_PIPE_EQ, - ACTIONS(265), 15, - anon_sym_STAR, - anon_sym_GT_GT, - anon_sym_PIPE, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_SLASH, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, - anon_sym_LT, - anon_sym_GT, - ACTIONS(298), 16, - sym__newline, - anon_sym_DOT, - anon_sym_LPAREN, - anon_sym_if, - anon_sym_in, - anon_sym_LBRACK, - anon_sym_not, - anon_sym_and, - anon_sym_or, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - anon_sym_is, - anon_sym_SEMI, - [18038] = 20, - ACTIONS(3), 1, - sym_comment, - ACTIONS(51), 1, + ACTIONS(53), 1, anon_sym_LBRACE, - ACTIONS(69), 1, - anon_sym_not, ACTIONS(71), 1, + anon_sym_not, + ACTIONS(73), 1, anon_sym_lambda, - ACTIONS(81), 1, - sym__string_start, ACTIONS(83), 1, + sym__string_start, + ACTIONS(85), 1, sym__template_string_start, - ACTIONS(314), 1, + ACTIONS(349), 1, sym_identifier, - ACTIONS(320), 1, + ACTIONS(355), 1, anon_sym_await, - ACTIONS(568), 1, + ACTIONS(594), 1, anon_sym_LPAREN, - ACTIONS(574), 1, + ACTIONS(598), 1, anon_sym_LBRACK, - STATE(763), 1, - sym_template_string, - STATE(779), 1, + STATE(765), 1, sym_primary_expression, - STATE(782), 1, + STATE(769), 1, + sym_template_string, + STATE(775), 1, sym_string, - STATE(1224), 1, + STATE(1225), 1, sym_expression, - ACTIONS(75), 2, + ACTIONS(77), 2, sym_ellipsis, sym_float, - ACTIONS(47), 3, + ACTIONS(49), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(77), 4, + ACTIONS(79), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(316), 5, + ACTIONS(351), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1158), 6, + STATE(1156), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(908), 17, + STATE(920), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -38442,133 +38781,62 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [18130] = 20, + [18257] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(288), 1, + ACTIONS(53), 1, anon_sym_LBRACE, - ACTIONS(310), 1, - sym__string_start, - ACTIONS(312), 1, - sym__template_string_start, - ACTIONS(597), 1, - anon_sym_LPAREN, - ACTIONS(603), 1, - anon_sym_LBRACK, - ACTIONS(691), 1, + ACTIONS(71), 1, anon_sym_not, - ACTIONS(693), 1, + ACTIONS(73), 1, anon_sym_lambda, - ACTIONS(801), 1, - sym_identifier, - ACTIONS(807), 1, - anon_sym_await, - STATE(621), 1, - sym_string, - STATE(624), 1, - sym_template_string, - STATE(725), 1, - sym_primary_expression, - STATE(1030), 1, - sym_expression, - ACTIONS(304), 2, - sym_ellipsis, - sym_float, - ACTIONS(601), 3, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_TILDE, - ACTIONS(306), 4, - sym_integer, - sym_true, - sym_false, - sym_none, - ACTIONS(805), 5, - anon_sym_print, - anon_sym_async, - anon_sym_match, - anon_sym_exec, - anon_sym_type, - STATE(1031), 6, - sym_named_expression, - sym_not_operator, - sym_boolean_operator, - sym_comparison_operator, - sym_lambda, - sym_conditional_expression, - STATE(724), 17, - sym_binary_operator, - sym_unary_operator, - sym_attribute, - sym_subscript, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [18222] = 20, - ACTIONS(3), 1, - sym_comment, - ACTIONS(609), 1, - anon_sym_LPAREN, - ACTIONS(617), 1, - anon_sym_LBRACK, - ACTIONS(619), 1, - anon_sym_LBRACE, - ACTIONS(625), 1, + ACTIONS(83), 1, sym__string_start, - ACTIONS(627), 1, + ACTIONS(85), 1, sym__template_string_start, - ACTIONS(749), 1, + ACTIONS(349), 1, sym_identifier, - ACTIONS(755), 1, - anon_sym_not, - ACTIONS(757), 1, - anon_sym_lambda, - ACTIONS(759), 1, + ACTIONS(355), 1, anon_sym_await, - STATE(766), 1, + ACTIONS(594), 1, + anon_sym_LPAREN, + ACTIONS(598), 1, + anon_sym_LBRACK, + STATE(765), 1, sym_primary_expression, - STATE(767), 1, - sym_string, - STATE(768), 1, + STATE(769), 1, sym_template_string, - STATE(1112), 1, + STATE(775), 1, + sym_string, + STATE(1147), 1, sym_expression, - ACTIONS(621), 2, + ACTIONS(77), 2, sym_ellipsis, sym_float, - ACTIONS(615), 3, + ACTIONS(49), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(607), 4, + ACTIONS(79), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(753), 5, + ACTIONS(351), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1129), 6, + STATE(1156), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(924), 17, + STATE(920), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -38586,61 +38854,62 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [18314] = 20, + [18350] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(51), 1, + ACTIONS(268), 1, + sym_identifier, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(69), 1, - anon_sym_not, - ACTIONS(71), 1, + ACTIONS(305), 1, anon_sym_lambda, - ACTIONS(81), 1, + ACTIONS(313), 1, + anon_sym_await, + ACTIONS(315), 1, sym__string_start, - ACTIONS(83), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(314), 1, - sym_identifier, - ACTIONS(320), 1, - anon_sym_await, - ACTIONS(568), 1, + ACTIONS(575), 1, anon_sym_LPAREN, - ACTIONS(574), 1, + ACTIONS(586), 1, anon_sym_LBRACK, - STATE(763), 1, + ACTIONS(752), 1, + anon_sym_not, + STATE(645), 1, + sym_string, + STATE(658), 1, sym_template_string, - STATE(779), 1, + STATE(719), 1, sym_primary_expression, - STATE(782), 1, - sym_string, - STATE(1324), 1, + STATE(1089), 1, sym_expression, - ACTIONS(75), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(47), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(77), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(316), 5, + ACTIONS(270), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1158), 6, + STATE(1032), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(908), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -38658,61 +38927,62 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [18406] = 20, + [18443] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(51), 1, + ACTIONS(53), 1, anon_sym_LBRACE, - ACTIONS(69), 1, - anon_sym_not, ACTIONS(71), 1, + anon_sym_not, + ACTIONS(73), 1, anon_sym_lambda, - ACTIONS(81), 1, - sym__string_start, ACTIONS(83), 1, + sym__string_start, + ACTIONS(85), 1, sym__template_string_start, - ACTIONS(314), 1, + ACTIONS(349), 1, sym_identifier, - ACTIONS(320), 1, + ACTIONS(355), 1, anon_sym_await, - ACTIONS(568), 1, + ACTIONS(594), 1, anon_sym_LPAREN, - ACTIONS(574), 1, + ACTIONS(598), 1, anon_sym_LBRACK, - STATE(763), 1, - sym_template_string, - STATE(779), 1, + STATE(765), 1, sym_primary_expression, - STATE(782), 1, + STATE(769), 1, + sym_template_string, + STATE(775), 1, sym_string, - STATE(1135), 1, + STATE(1270), 1, sym_expression, - ACTIONS(75), 2, + ACTIONS(77), 2, sym_ellipsis, sym_float, - ACTIONS(47), 3, + ACTIONS(49), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(77), 4, + ACTIONS(79), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(316), 5, + ACTIONS(351), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1158), 6, + STATE(1156), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(908), 17, + STATE(920), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -38730,61 +39000,62 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [18498] = 20, + [18536] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(263), 1, + ACTIONS(268), 1, sym_identifier, - ACTIONS(288), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(300), 1, + ACTIONS(305), 1, anon_sym_lambda, - ACTIONS(308), 1, + ACTIONS(313), 1, anon_sym_await, - ACTIONS(310), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(578), 1, + ACTIONS(575), 1, anon_sym_LPAREN, - ACTIONS(591), 1, + ACTIONS(586), 1, anon_sym_LBRACK, - ACTIONS(747), 1, + ACTIONS(752), 1, anon_sym_not, - STATE(621), 1, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, STATE(719), 1, sym_primary_expression, - STATE(1071), 1, + STATE(1069), 1, sym_expression, - ACTIONS(304), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(296), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(276), 5, + ACTIONS(270), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1031), 6, + STATE(1032), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(724), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -38802,61 +39073,62 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [18590] = 20, + [18629] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(263), 1, + ACTIONS(268), 1, sym_identifier, - ACTIONS(288), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(300), 1, + ACTIONS(305), 1, anon_sym_lambda, - ACTIONS(308), 1, + ACTIONS(313), 1, anon_sym_await, - ACTIONS(310), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(578), 1, + ACTIONS(575), 1, anon_sym_LPAREN, - ACTIONS(591), 1, + ACTIONS(586), 1, anon_sym_LBRACK, - ACTIONS(747), 1, + ACTIONS(752), 1, anon_sym_not, - STATE(621), 1, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, STATE(719), 1, sym_primary_expression, - STATE(1282), 1, + STATE(1094), 1, sym_expression, - ACTIONS(304), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(296), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(276), 5, + ACTIONS(270), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1031), 6, + STATE(1032), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(724), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -38874,61 +39146,62 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [18682] = 20, + [18722] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(288), 1, + ACTIONS(53), 1, anon_sym_LBRACE, - ACTIONS(310), 1, - sym__string_start, - ACTIONS(312), 1, - sym__template_string_start, - ACTIONS(597), 1, - anon_sym_LPAREN, - ACTIONS(603), 1, - anon_sym_LBRACK, - ACTIONS(691), 1, + ACTIONS(71), 1, anon_sym_not, - ACTIONS(693), 1, + ACTIONS(73), 1, anon_sym_lambda, - ACTIONS(801), 1, + ACTIONS(83), 1, + sym__string_start, + ACTIONS(85), 1, + sym__template_string_start, + ACTIONS(349), 1, sym_identifier, - ACTIONS(807), 1, + ACTIONS(355), 1, anon_sym_await, - STATE(621), 1, - sym_string, - STATE(624), 1, - sym_template_string, - STATE(725), 1, + ACTIONS(594), 1, + anon_sym_LPAREN, + ACTIONS(598), 1, + anon_sym_LBRACK, + STATE(765), 1, sym_primary_expression, - STATE(1155), 1, + STATE(769), 1, + sym_template_string, + STATE(775), 1, + sym_string, + STATE(1265), 1, sym_expression, - ACTIONS(304), 2, + ACTIONS(77), 2, sym_ellipsis, sym_float, - ACTIONS(601), 3, + ACTIONS(49), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 4, + ACTIONS(79), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(805), 5, + ACTIONS(351), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1031), 6, + STATE(1156), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(724), 17, + STATE(920), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -38946,61 +39219,62 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [18774] = 20, + [18815] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(263), 1, + ACTIONS(268), 1, sym_identifier, - ACTIONS(288), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(300), 1, + ACTIONS(305), 1, anon_sym_lambda, - ACTIONS(308), 1, + ACTIONS(313), 1, anon_sym_await, - ACTIONS(310), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(578), 1, + ACTIONS(575), 1, anon_sym_LPAREN, - ACTIONS(591), 1, + ACTIONS(586), 1, anon_sym_LBRACK, - ACTIONS(747), 1, + ACTIONS(752), 1, anon_sym_not, - STATE(621), 1, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, STATE(719), 1, sym_primary_expression, - STATE(1296), 1, + STATE(1074), 1, sym_expression, - ACTIONS(304), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(296), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(276), 5, + ACTIONS(270), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1031), 6, + STATE(1032), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(724), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -39018,133 +39292,62 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [18866] = 20, + [18908] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(288), 1, - anon_sym_LBRACE, - ACTIONS(310), 1, - sym__string_start, - ACTIONS(312), 1, - sym__template_string_start, - ACTIONS(597), 1, + ACTIONS(616), 1, anon_sym_LPAREN, - ACTIONS(603), 1, + ACTIONS(622), 1, anon_sym_LBRACK, - ACTIONS(691), 1, - anon_sym_not, - ACTIONS(693), 1, - anon_sym_lambda, - ACTIONS(801), 1, - sym_identifier, - ACTIONS(807), 1, - anon_sym_await, - STATE(621), 1, - sym_string, - STATE(624), 1, - sym_template_string, - STATE(725), 1, - sym_primary_expression, - STATE(1214), 1, - sym_expression, - ACTIONS(304), 2, - sym_ellipsis, - sym_float, - ACTIONS(601), 3, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_TILDE, - ACTIONS(306), 4, - sym_integer, - sym_true, - sym_false, - sym_none, - ACTIONS(805), 5, - anon_sym_print, - anon_sym_async, - anon_sym_match, - anon_sym_exec, - anon_sym_type, - STATE(1031), 6, - sym_named_expression, - sym_not_operator, - sym_boolean_operator, - sym_comparison_operator, - sym_lambda, - sym_conditional_expression, - STATE(724), 17, - sym_binary_operator, - sym_unary_operator, - sym_attribute, - sym_subscript, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [18958] = 20, - ACTIONS(3), 1, - sym_comment, - ACTIONS(51), 1, + ACTIONS(624), 1, anon_sym_LBRACE, - ACTIONS(69), 1, - anon_sym_not, - ACTIONS(71), 1, - anon_sym_lambda, - ACTIONS(81), 1, + ACTIONS(630), 1, sym__string_start, - ACTIONS(83), 1, + ACTIONS(632), 1, sym__template_string_start, - ACTIONS(314), 1, + ACTIONS(754), 1, sym_identifier, - ACTIONS(320), 1, + ACTIONS(760), 1, + anon_sym_not, + ACTIONS(762), 1, + anon_sym_lambda, + ACTIONS(764), 1, anon_sym_await, - ACTIONS(568), 1, - anon_sym_LPAREN, - ACTIONS(574), 1, - anon_sym_LBRACK, STATE(763), 1, - sym_template_string, - STATE(779), 1, sym_primary_expression, - STATE(782), 1, + STATE(766), 1, sym_string, - STATE(1197), 1, + STATE(776), 1, + sym_template_string, + STATE(1119), 1, sym_expression, - ACTIONS(75), 2, + ACTIONS(626), 2, sym_ellipsis, sym_float, - ACTIONS(47), 3, + ACTIONS(620), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(77), 4, + ACTIONS(612), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(316), 5, + ACTIONS(756), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1158), 6, + STATE(1104), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(908), 17, + STATE(878), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -39162,61 +39365,62 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [19050] = 20, + [19001] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(263), 1, - sym_identifier, - ACTIONS(288), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(300), 1, - anon_sym_lambda, - ACTIONS(308), 1, - anon_sym_await, - ACTIONS(310), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(578), 1, + ACTIONS(602), 1, anon_sym_LPAREN, - ACTIONS(591), 1, + ACTIONS(608), 1, anon_sym_LBRACK, - ACTIONS(747), 1, + ACTIONS(680), 1, anon_sym_not, - STATE(621), 1, + ACTIONS(682), 1, + anon_sym_lambda, + ACTIONS(816), 1, + sym_identifier, + ACTIONS(822), 1, + anon_sym_await, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, - STATE(719), 1, + STATE(726), 1, sym_primary_expression, - STATE(1297), 1, + STATE(1180), 1, sym_expression, - ACTIONS(304), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(296), 3, + ACTIONS(606), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(276), 5, + ACTIONS(818), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1031), 6, + STATE(1032), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(724), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -39234,61 +39438,62 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [19142] = 20, + [19094] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(51), 1, + ACTIONS(268), 1, + sym_identifier, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(69), 1, - anon_sym_not, - ACTIONS(71), 1, + ACTIONS(305), 1, anon_sym_lambda, - ACTIONS(81), 1, + ACTIONS(313), 1, + anon_sym_await, + ACTIONS(315), 1, sym__string_start, - ACTIONS(83), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(314), 1, - sym_identifier, - ACTIONS(320), 1, - anon_sym_await, - ACTIONS(568), 1, + ACTIONS(575), 1, anon_sym_LPAREN, - ACTIONS(574), 1, + ACTIONS(586), 1, anon_sym_LBRACK, - STATE(763), 1, + ACTIONS(752), 1, + anon_sym_not, + STATE(645), 1, + sym_string, + STATE(658), 1, sym_template_string, - STATE(779), 1, + STATE(719), 1, sym_primary_expression, - STATE(782), 1, - sym_string, - STATE(1121), 1, + STATE(1337), 1, sym_expression, - ACTIONS(75), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(47), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(77), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(316), 5, + ACTIONS(270), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1158), 6, + STATE(1032), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(908), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -39306,61 +39511,62 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [19234] = 20, + [19187] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(51), 1, + ACTIONS(53), 1, anon_sym_LBRACE, - ACTIONS(69), 1, - anon_sym_not, ACTIONS(71), 1, + anon_sym_not, + ACTIONS(73), 1, anon_sym_lambda, - ACTIONS(81), 1, - sym__string_start, ACTIONS(83), 1, + sym__string_start, + ACTIONS(85), 1, sym__template_string_start, - ACTIONS(314), 1, + ACTIONS(349), 1, sym_identifier, - ACTIONS(320), 1, + ACTIONS(355), 1, anon_sym_await, - ACTIONS(568), 1, + ACTIONS(594), 1, anon_sym_LPAREN, - ACTIONS(574), 1, + ACTIONS(598), 1, anon_sym_LBRACK, - STATE(763), 1, - sym_template_string, - STATE(779), 1, + STATE(765), 1, sym_primary_expression, - STATE(782), 1, + STATE(769), 1, + sym_template_string, + STATE(775), 1, sym_string, - STATE(1292), 1, + STATE(1152), 1, sym_expression, - ACTIONS(75), 2, + ACTIONS(77), 2, sym_ellipsis, sym_float, - ACTIONS(47), 3, + ACTIONS(49), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(77), 4, + ACTIONS(79), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(316), 5, + ACTIONS(351), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1158), 6, + STATE(1156), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(908), 17, + STATE(920), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -39378,61 +39584,62 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [19326] = 20, + [19280] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(51), 1, + ACTIONS(268), 1, + sym_identifier, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(69), 1, - anon_sym_not, - ACTIONS(71), 1, + ACTIONS(305), 1, anon_sym_lambda, - ACTIONS(81), 1, + ACTIONS(313), 1, + anon_sym_await, + ACTIONS(315), 1, sym__string_start, - ACTIONS(83), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(314), 1, - sym_identifier, - ACTIONS(320), 1, - anon_sym_await, - ACTIONS(568), 1, + ACTIONS(575), 1, anon_sym_LPAREN, - ACTIONS(574), 1, + ACTIONS(586), 1, anon_sym_LBRACK, - STATE(763), 1, + ACTIONS(752), 1, + anon_sym_not, + STATE(645), 1, + sym_string, + STATE(658), 1, sym_template_string, - STATE(779), 1, + STATE(719), 1, sym_primary_expression, - STATE(782), 1, - sym_string, - STATE(1123), 1, + STATE(1263), 1, sym_expression, - ACTIONS(75), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(47), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(77), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(316), 5, + ACTIONS(270), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1158), 6, + STATE(1032), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(908), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -39450,119 +39657,135 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [19418] = 6, + [19373] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(1095), 1, - anon_sym_elif, - STATE(354), 1, - aux_sym_if_statement_repeat1, - STATE(463), 1, - sym_elif_clause, - ACTIONS(1091), 13, + ACTIONS(268), 1, + sym_identifier, + ACTIONS(293), 1, + anon_sym_LBRACE, + ACTIONS(305), 1, + anon_sym_lambda, + ACTIONS(313), 1, + anon_sym_await, + ACTIONS(315), 1, sym__string_start, + ACTIONS(317), 1, sym__template_string_start, - ts_builtin_sym_end, + ACTIONS(575), 1, anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, + ACTIONS(586), 1, anon_sym_LBRACK, - anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, + ACTIONS(752), 1, + anon_sym_not, + STATE(645), 1, + sym_string, + STATE(658), 1, + sym_template_string, + STATE(719), 1, + sym_primary_expression, + STATE(1275), 1, + sym_expression, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(1093), 34, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, + ACTIONS(301), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(311), 4, + sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(270), 6, + anon_sym_lazy, anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, - anon_sym_else, anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_with, anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - anon_sym_class, - anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, - anon_sym_await, - sym_true, - sym_false, - sym_none, - [19482] = 20, + STATE(1032), 6, + sym_named_expression, + sym_not_operator, + sym_boolean_operator, + sym_comparison_operator, + sym_lambda, + sym_conditional_expression, + STATE(725), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [19466] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(51), 1, + ACTIONS(53), 1, anon_sym_LBRACE, - ACTIONS(69), 1, - anon_sym_not, ACTIONS(71), 1, + anon_sym_not, + ACTIONS(73), 1, anon_sym_lambda, - ACTIONS(81), 1, - sym__string_start, ACTIONS(83), 1, + sym__string_start, + ACTIONS(85), 1, sym__template_string_start, - ACTIONS(314), 1, + ACTIONS(349), 1, sym_identifier, - ACTIONS(320), 1, + ACTIONS(355), 1, anon_sym_await, - ACTIONS(568), 1, + ACTIONS(594), 1, anon_sym_LPAREN, - ACTIONS(574), 1, + ACTIONS(598), 1, anon_sym_LBRACK, - STATE(763), 1, - sym_template_string, - STATE(779), 1, + STATE(765), 1, sym_primary_expression, - STATE(782), 1, + STATE(769), 1, + sym_template_string, + STATE(775), 1, sym_string, - STATE(1279), 1, + STATE(1182), 1, sym_expression, - ACTIONS(75), 2, + ACTIONS(77), 2, sym_ellipsis, sym_float, - ACTIONS(47), 3, + ACTIONS(49), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(77), 4, + ACTIONS(79), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(316), 5, + ACTIONS(351), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1158), 6, + STATE(1156), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(908), 17, + STATE(920), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -39580,61 +39803,62 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [19574] = 20, + [19559] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(631), 1, - anon_sym_LPAREN, - ACTIONS(639), 1, - anon_sym_LBRACK, - ACTIONS(641), 1, + ACTIONS(53), 1, anon_sym_LBRACE, - ACTIONS(647), 1, + ACTIONS(71), 1, + anon_sym_not, + ACTIONS(73), 1, + anon_sym_lambda, + ACTIONS(83), 1, sym__string_start, - ACTIONS(649), 1, + ACTIONS(85), 1, sym__template_string_start, - ACTIONS(961), 1, + ACTIONS(349), 1, sym_identifier, - ACTIONS(969), 1, - anon_sym_not, - ACTIONS(971), 1, - anon_sym_lambda, - ACTIONS(973), 1, + ACTIONS(355), 1, anon_sym_await, - STATE(794), 1, - sym_string, - STATE(795), 1, - sym_template_string, - STATE(822), 1, + ACTIONS(594), 1, + anon_sym_LPAREN, + ACTIONS(598), 1, + anon_sym_LBRACK, + STATE(765), 1, sym_primary_expression, - STATE(1188), 1, + STATE(769), 1, + sym_template_string, + STATE(775), 1, + sym_string, + STATE(1268), 1, sym_expression, - ACTIONS(643), 2, + ACTIONS(77), 2, sym_ellipsis, sym_float, - ACTIONS(637), 3, + ACTIONS(49), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(629), 4, + ACTIONS(79), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(965), 5, + ACTIONS(351), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1176), 6, + STATE(1156), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(953), 17, + STATE(920), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -39652,61 +39876,62 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [19666] = 20, + [19652] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(288), 1, + ACTIONS(268), 1, + sym_identifier, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(310), 1, + ACTIONS(305), 1, + anon_sym_lambda, + ACTIONS(313), 1, + anon_sym_await, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(597), 1, + ACTIONS(575), 1, anon_sym_LPAREN, - ACTIONS(603), 1, + ACTIONS(586), 1, anon_sym_LBRACK, - ACTIONS(691), 1, + ACTIONS(752), 1, anon_sym_not, - ACTIONS(693), 1, - anon_sym_lambda, - ACTIONS(801), 1, - sym_identifier, - ACTIONS(807), 1, - anon_sym_await, - STATE(621), 1, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, - STATE(725), 1, + STATE(719), 1, sym_primary_expression, - STATE(1087), 1, + STATE(1364), 1, sym_expression, - ACTIONS(304), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(601), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(805), 5, + ACTIONS(270), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1031), 6, + STATE(1032), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(724), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -39724,61 +39949,62 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [19758] = 20, + [19745] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(263), 1, + ACTIONS(268), 1, sym_identifier, - ACTIONS(288), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(300), 1, + ACTIONS(305), 1, anon_sym_lambda, - ACTIONS(308), 1, + ACTIONS(313), 1, anon_sym_await, - ACTIONS(310), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(578), 1, + ACTIONS(575), 1, anon_sym_LPAREN, - ACTIONS(591), 1, + ACTIONS(586), 1, anon_sym_LBRACK, - ACTIONS(747), 1, + ACTIONS(752), 1, anon_sym_not, - STATE(621), 1, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, STATE(719), 1, sym_primary_expression, - STATE(1228), 1, + STATE(1339), 1, sym_expression, - ACTIONS(304), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(296), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(276), 5, + ACTIONS(270), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1031), 6, + STATE(1032), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(724), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -39796,61 +40022,62 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [19850] = 20, + [19838] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(51), 1, + ACTIONS(640), 1, + anon_sym_LPAREN, + ACTIONS(646), 1, + anon_sym_LBRACK, + ACTIONS(648), 1, anon_sym_LBRACE, - ACTIONS(69), 1, - anon_sym_not, - ACTIONS(71), 1, - anon_sym_lambda, - ACTIONS(81), 1, + ACTIONS(654), 1, sym__string_start, - ACTIONS(83), 1, + ACTIONS(656), 1, sym__template_string_start, - ACTIONS(314), 1, + ACTIONS(952), 1, sym_identifier, - ACTIONS(320), 1, + ACTIONS(960), 1, + anon_sym_not, + ACTIONS(962), 1, + anon_sym_lambda, + ACTIONS(964), 1, anon_sym_await, - ACTIONS(568), 1, - anon_sym_LPAREN, - ACTIONS(574), 1, - anon_sym_LBRACK, - STATE(763), 1, - sym_template_string, - STATE(779), 1, + STATE(792), 1, sym_primary_expression, - STATE(782), 1, + STATE(793), 1, sym_string, - STATE(1141), 1, + STATE(794), 1, + sym_template_string, + STATE(1194), 1, sym_expression, - ACTIONS(75), 2, + ACTIONS(650), 2, sym_ellipsis, sym_float, - ACTIONS(47), 3, + ACTIONS(644), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(77), 4, + ACTIONS(636), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(316), 5, + ACTIONS(954), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1158), 6, + STATE(1211), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(908), 17, + STATE(970), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -39868,61 +40095,135 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [19942] = 20, + [19931] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(51), 1, + ACTIONS(640), 1, + anon_sym_LPAREN, + ACTIONS(646), 1, + anon_sym_LBRACK, + ACTIONS(648), 1, anon_sym_LBRACE, - ACTIONS(69), 1, - anon_sym_not, - ACTIONS(71), 1, - anon_sym_lambda, - ACTIONS(81), 1, + ACTIONS(654), 1, sym__string_start, - ACTIONS(83), 1, + ACTIONS(656), 1, sym__template_string_start, - ACTIONS(314), 1, + ACTIONS(952), 1, sym_identifier, - ACTIONS(320), 1, + ACTIONS(960), 1, + anon_sym_not, + ACTIONS(962), 1, + anon_sym_lambda, + ACTIONS(964), 1, anon_sym_await, - ACTIONS(568), 1, + STATE(792), 1, + sym_primary_expression, + STATE(793), 1, + sym_string, + STATE(794), 1, + sym_template_string, + STATE(1197), 1, + sym_expression, + ACTIONS(650), 2, + sym_ellipsis, + sym_float, + ACTIONS(644), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(636), 4, + sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(954), 6, + anon_sym_lazy, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(1211), 6, + sym_named_expression, + sym_not_operator, + sym_boolean_operator, + sym_comparison_operator, + sym_lambda, + sym_conditional_expression, + STATE(970), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [20024] = 20, + ACTIONS(3), 1, + sym_comment, + ACTIONS(640), 1, anon_sym_LPAREN, - ACTIONS(574), 1, + ACTIONS(646), 1, anon_sym_LBRACK, - STATE(763), 1, - sym_template_string, - STATE(779), 1, + ACTIONS(648), 1, + anon_sym_LBRACE, + ACTIONS(654), 1, + sym__string_start, + ACTIONS(656), 1, + sym__template_string_start, + ACTIONS(952), 1, + sym_identifier, + ACTIONS(960), 1, + anon_sym_not, + ACTIONS(962), 1, + anon_sym_lambda, + ACTIONS(964), 1, + anon_sym_await, + STATE(792), 1, sym_primary_expression, - STATE(782), 1, + STATE(793), 1, sym_string, - STATE(1144), 1, + STATE(794), 1, + sym_template_string, + STATE(1198), 1, sym_expression, - ACTIONS(75), 2, + ACTIONS(650), 2, sym_ellipsis, sym_float, - ACTIONS(47), 3, + ACTIONS(644), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(77), 4, + ACTIONS(636), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(316), 5, + ACTIONS(954), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1158), 6, + STATE(1211), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(908), 17, + STATE(970), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -39940,61 +40241,62 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [20034] = 20, + [20117] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(288), 1, + ACTIONS(53), 1, anon_sym_LBRACE, - ACTIONS(310), 1, - sym__string_start, - ACTIONS(312), 1, - sym__template_string_start, - ACTIONS(597), 1, - anon_sym_LPAREN, - ACTIONS(603), 1, - anon_sym_LBRACK, - ACTIONS(691), 1, + ACTIONS(71), 1, anon_sym_not, - ACTIONS(693), 1, + ACTIONS(73), 1, anon_sym_lambda, - ACTIONS(801), 1, + ACTIONS(83), 1, + sym__string_start, + ACTIONS(85), 1, + sym__template_string_start, + ACTIONS(349), 1, sym_identifier, - ACTIONS(807), 1, + ACTIONS(355), 1, anon_sym_await, - STATE(621), 1, - sym_string, - STATE(624), 1, - sym_template_string, - STATE(725), 1, + ACTIONS(594), 1, + anon_sym_LPAREN, + ACTIONS(598), 1, + anon_sym_LBRACK, + STATE(765), 1, sym_primary_expression, - STATE(1064), 1, + STATE(769), 1, + sym_template_string, + STATE(775), 1, + sym_string, + STATE(1240), 1, sym_expression, - ACTIONS(304), 2, + ACTIONS(77), 2, sym_ellipsis, sym_float, - ACTIONS(601), 3, + ACTIONS(49), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 4, + ACTIONS(79), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(805), 5, + ACTIONS(351), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1031), 6, + STATE(1156), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(724), 17, + STATE(920), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -40012,61 +40314,62 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [20126] = 20, + [20210] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(263), 1, + ACTIONS(268), 1, sym_identifier, - ACTIONS(288), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(300), 1, + ACTIONS(305), 1, anon_sym_lambda, - ACTIONS(308), 1, + ACTIONS(313), 1, anon_sym_await, - ACTIONS(310), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(578), 1, + ACTIONS(575), 1, anon_sym_LPAREN, - ACTIONS(591), 1, + ACTIONS(586), 1, anon_sym_LBRACK, - ACTIONS(747), 1, + ACTIONS(752), 1, anon_sym_not, - STATE(621), 1, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, STATE(719), 1, sym_primary_expression, - STATE(1189), 1, + STATE(1309), 1, sym_expression, - ACTIONS(304), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(296), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(276), 5, + ACTIONS(270), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1031), 6, + STATE(1032), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(724), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -40084,61 +40387,62 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [20218] = 20, + [20303] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(51), 1, + ACTIONS(640), 1, + anon_sym_LPAREN, + ACTIONS(646), 1, + anon_sym_LBRACK, + ACTIONS(648), 1, anon_sym_LBRACE, - ACTIONS(69), 1, - anon_sym_not, - ACTIONS(71), 1, - anon_sym_lambda, - ACTIONS(81), 1, + ACTIONS(654), 1, sym__string_start, - ACTIONS(83), 1, + ACTIONS(656), 1, sym__template_string_start, - ACTIONS(314), 1, + ACTIONS(952), 1, sym_identifier, - ACTIONS(320), 1, + ACTIONS(960), 1, + anon_sym_not, + ACTIONS(962), 1, + anon_sym_lambda, + ACTIONS(964), 1, anon_sym_await, - ACTIONS(568), 1, - anon_sym_LPAREN, - ACTIONS(574), 1, - anon_sym_LBRACK, - STATE(763), 1, - sym_template_string, - STATE(779), 1, + STATE(792), 1, sym_primary_expression, - STATE(782), 1, + STATE(793), 1, sym_string, - STATE(1285), 1, + STATE(794), 1, + sym_template_string, + STATE(1200), 1, sym_expression, - ACTIONS(75), 2, + ACTIONS(650), 2, sym_ellipsis, sym_float, - ACTIONS(47), 3, + ACTIONS(644), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(77), 4, + ACTIONS(636), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(316), 5, + ACTIONS(954), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1158), 6, + STATE(1211), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(908), 17, + STATE(970), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -40156,61 +40460,62 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [20310] = 20, + [20396] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(288), 1, + ACTIONS(640), 1, + anon_sym_LPAREN, + ACTIONS(646), 1, + anon_sym_LBRACK, + ACTIONS(648), 1, anon_sym_LBRACE, - ACTIONS(310), 1, + ACTIONS(654), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(656), 1, sym__template_string_start, - ACTIONS(597), 1, - anon_sym_LPAREN, - ACTIONS(603), 1, - anon_sym_LBRACK, - ACTIONS(691), 1, + ACTIONS(952), 1, + sym_identifier, + ACTIONS(960), 1, anon_sym_not, - ACTIONS(693), 1, + ACTIONS(962), 1, anon_sym_lambda, - ACTIONS(801), 1, - sym_identifier, - ACTIONS(807), 1, + ACTIONS(964), 1, anon_sym_await, - STATE(621), 1, + STATE(792), 1, + sym_primary_expression, + STATE(793), 1, sym_string, - STATE(624), 1, + STATE(794), 1, sym_template_string, - STATE(725), 1, - sym_primary_expression, - STATE(1062), 1, + STATE(1178), 1, sym_expression, - ACTIONS(304), 2, + ACTIONS(650), 2, sym_ellipsis, sym_float, - ACTIONS(601), 3, + ACTIONS(644), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 4, + ACTIONS(636), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(805), 5, + ACTIONS(954), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1031), 6, + STATE(1211), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(724), 17, + STATE(970), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -40228,61 +40533,62 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [20402] = 20, + [20489] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(51), 1, + ACTIONS(640), 1, + anon_sym_LPAREN, + ACTIONS(646), 1, + anon_sym_LBRACK, + ACTIONS(648), 1, anon_sym_LBRACE, - ACTIONS(69), 1, - anon_sym_not, - ACTIONS(71), 1, - anon_sym_lambda, - ACTIONS(81), 1, + ACTIONS(654), 1, sym__string_start, - ACTIONS(83), 1, + ACTIONS(656), 1, sym__template_string_start, - ACTIONS(314), 1, + ACTIONS(952), 1, sym_identifier, - ACTIONS(320), 1, + ACTIONS(960), 1, + anon_sym_not, + ACTIONS(962), 1, + anon_sym_lambda, + ACTIONS(964), 1, anon_sym_await, - ACTIONS(568), 1, - anon_sym_LPAREN, - ACTIONS(574), 1, - anon_sym_LBRACK, - STATE(763), 1, - sym_template_string, - STATE(779), 1, + STATE(792), 1, sym_primary_expression, - STATE(782), 1, + STATE(793), 1, sym_string, - STATE(1226), 1, + STATE(794), 1, + sym_template_string, + STATE(1185), 1, sym_expression, - ACTIONS(75), 2, + ACTIONS(650), 2, sym_ellipsis, sym_float, - ACTIONS(47), 3, + ACTIONS(644), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(77), 4, + ACTIONS(636), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(316), 5, + ACTIONS(954), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1158), 6, + STATE(1211), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(908), 17, + STATE(970), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -40300,65 +40606,126 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [20494] = 20, + [20582] = 6, ACTIONS(3), 1, sym_comment, - ACTIONS(51), 1, + ACTIONS(1088), 1, + anon_sym_elif, + STATE(364), 1, + aux_sym_if_statement_repeat1, + STATE(471), 1, + sym_elif_clause, + ACTIONS(1084), 13, + sym__string_start, + sym__template_string_start, + ts_builtin_sym_end, + anon_sym_LPAREN, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, anon_sym_LBRACE, - ACTIONS(69), 1, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_TILDE, + sym_ellipsis, + sym_float, + ACTIONS(1086), 35, + anon_sym_lazy, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, + anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, + anon_sym_else, + anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_with, + anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, + anon_sym_exec, + anon_sym_type, + anon_sym_class, anon_sym_not, - ACTIONS(71), 1, anon_sym_lambda, - ACTIONS(81), 1, - sym__string_start, - ACTIONS(83), 1, - sym__template_string_start, - ACTIONS(314), 1, + anon_sym_yield, + sym_integer, sym_identifier, - ACTIONS(320), 1, anon_sym_await, - ACTIONS(568), 1, + sym_true, + sym_false, + sym_none, + [20647] = 21, + ACTIONS(3), 1, + sym_comment, + ACTIONS(293), 1, + anon_sym_LBRACE, + ACTIONS(305), 1, + anon_sym_lambda, + ACTIONS(315), 1, + sym__string_start, + ACTIONS(317), 1, + sym__template_string_start, + ACTIONS(575), 1, anon_sym_LPAREN, - ACTIONS(574), 1, + ACTIONS(586), 1, anon_sym_LBRACK, - STATE(763), 1, + ACTIONS(752), 1, + anon_sym_not, + ACTIONS(1091), 1, + sym_identifier, + ACTIONS(1095), 1, + anon_sym_await, + STATE(645), 1, + sym_string, + STATE(658), 1, sym_template_string, - STATE(779), 1, + STATE(719), 1, sym_primary_expression, - STATE(782), 1, - sym_string, - STATE(1145), 1, + STATE(1094), 1, sym_expression, - ACTIONS(75), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(47), 3, + STATE(585), 2, + sym_attribute, + sym_subscript, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(77), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(316), 5, + ACTIONS(1093), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1158), 6, + STATE(1032), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(908), 17, + STATE(725), 15, sym_binary_operator, sym_unary_operator, - sym_attribute, - sym_subscript, sym_call, sym_list, sym_set, @@ -40372,122 +40739,62 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [20586] = 9, + [20742] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(270), 1, - anon_sym_COMMA, - ACTIONS(278), 1, - anon_sym_COLON_EQ, - ACTIONS(1098), 1, - sym__string_start, - STATE(1393), 1, - sym_string, - ACTIONS(280), 2, - anon_sym_COLON, - anon_sym_EQ, - ACTIONS(302), 13, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_STAR_EQ, - anon_sym_SLASH_EQ, - anon_sym_AT_EQ, - anon_sym_SLASH_SLASH_EQ, - anon_sym_PERCENT_EQ, - anon_sym_STAR_STAR_EQ, - anon_sym_GT_GT_EQ, - anon_sym_LT_LT_EQ, - anon_sym_AMP_EQ, - anon_sym_CARET_EQ, - anon_sym_PIPE_EQ, - ACTIONS(265), 15, - anon_sym_STAR, - anon_sym_GT_GT, - anon_sym_PIPE, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_SLASH, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, - anon_sym_LT, - anon_sym_GT, - ACTIONS(298), 16, - sym__newline, - anon_sym_DOT, + ACTIONS(616), 1, anon_sym_LPAREN, - anon_sym_if, - anon_sym_in, + ACTIONS(622), 1, anon_sym_LBRACK, - anon_sym_not, - anon_sym_and, - anon_sym_or, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - anon_sym_is, - anon_sym_SEMI, - [20656] = 20, - ACTIONS(3), 1, - sym_comment, - ACTIONS(51), 1, + ACTIONS(624), 1, anon_sym_LBRACE, - ACTIONS(69), 1, - anon_sym_not, - ACTIONS(71), 1, - anon_sym_lambda, - ACTIONS(81), 1, + ACTIONS(630), 1, sym__string_start, - ACTIONS(83), 1, + ACTIONS(632), 1, sym__template_string_start, - ACTIONS(314), 1, + ACTIONS(754), 1, sym_identifier, - ACTIONS(320), 1, + ACTIONS(760), 1, + anon_sym_not, + ACTIONS(762), 1, + anon_sym_lambda, + ACTIONS(764), 1, anon_sym_await, - ACTIONS(568), 1, - anon_sym_LPAREN, - ACTIONS(574), 1, - anon_sym_LBRACK, STATE(763), 1, - sym_template_string, - STATE(779), 1, sym_primary_expression, - STATE(782), 1, + STATE(766), 1, sym_string, - STATE(1156), 1, + STATE(776), 1, + sym_template_string, + STATE(1120), 1, sym_expression, - ACTIONS(75), 2, + ACTIONS(626), 2, sym_ellipsis, sym_float, - ACTIONS(47), 3, + ACTIONS(620), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(77), 4, + ACTIONS(612), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(316), 5, + ACTIONS(756), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1158), 6, + STATE(1104), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(908), 17, + STATE(878), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -40505,61 +40812,62 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [20748] = 20, + [20835] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(288), 1, + ACTIONS(616), 1, + anon_sym_LPAREN, + ACTIONS(622), 1, + anon_sym_LBRACK, + ACTIONS(624), 1, anon_sym_LBRACE, - ACTIONS(310), 1, + ACTIONS(630), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(632), 1, sym__template_string_start, - ACTIONS(597), 1, - anon_sym_LPAREN, - ACTIONS(603), 1, - anon_sym_LBRACK, - ACTIONS(691), 1, + ACTIONS(754), 1, + sym_identifier, + ACTIONS(760), 1, anon_sym_not, - ACTIONS(693), 1, + ACTIONS(762), 1, anon_sym_lambda, - ACTIONS(801), 1, - sym_identifier, - ACTIONS(807), 1, + ACTIONS(764), 1, anon_sym_await, - STATE(621), 1, + STATE(763), 1, + sym_primary_expression, + STATE(766), 1, sym_string, - STATE(624), 1, + STATE(776), 1, sym_template_string, - STATE(725), 1, - sym_primary_expression, - STATE(1068), 1, + STATE(1121), 1, sym_expression, - ACTIONS(304), 2, + ACTIONS(626), 2, sym_ellipsis, sym_float, - ACTIONS(601), 3, + ACTIONS(620), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 4, + ACTIONS(612), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(805), 5, + ACTIONS(756), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1031), 6, + STATE(1104), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(724), 17, + STATE(878), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -40577,61 +40885,62 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [20840] = 20, + [20928] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(263), 1, - sym_identifier, - ACTIONS(288), 1, + ACTIONS(616), 1, + anon_sym_LPAREN, + ACTIONS(622), 1, + anon_sym_LBRACK, + ACTIONS(624), 1, anon_sym_LBRACE, - ACTIONS(300), 1, - anon_sym_lambda, - ACTIONS(308), 1, - anon_sym_await, - ACTIONS(310), 1, + ACTIONS(630), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(632), 1, sym__template_string_start, - ACTIONS(578), 1, - anon_sym_LPAREN, - ACTIONS(591), 1, - anon_sym_LBRACK, - ACTIONS(747), 1, + ACTIONS(754), 1, + sym_identifier, + ACTIONS(760), 1, anon_sym_not, - STATE(621), 1, + ACTIONS(762), 1, + anon_sym_lambda, + ACTIONS(764), 1, + anon_sym_await, + STATE(763), 1, + sym_primary_expression, + STATE(766), 1, sym_string, - STATE(624), 1, + STATE(776), 1, sym_template_string, - STATE(719), 1, - sym_primary_expression, - STATE(1096), 1, + STATE(1122), 1, sym_expression, - ACTIONS(304), 2, + ACTIONS(626), 2, sym_ellipsis, sym_float, - ACTIONS(296), 3, + ACTIONS(620), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 4, + ACTIONS(612), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(276), 5, + ACTIONS(756), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1031), 6, + STATE(1104), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(724), 17, + STATE(878), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -40649,61 +40958,62 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [20932] = 20, + [21021] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(51), 1, + ACTIONS(616), 1, + anon_sym_LPAREN, + ACTIONS(622), 1, + anon_sym_LBRACK, + ACTIONS(624), 1, anon_sym_LBRACE, - ACTIONS(69), 1, - anon_sym_not, - ACTIONS(71), 1, - anon_sym_lambda, - ACTIONS(81), 1, + ACTIONS(630), 1, sym__string_start, - ACTIONS(83), 1, + ACTIONS(632), 1, sym__template_string_start, - ACTIONS(314), 1, + ACTIONS(754), 1, sym_identifier, - ACTIONS(320), 1, + ACTIONS(760), 1, + anon_sym_not, + ACTIONS(762), 1, + anon_sym_lambda, + ACTIONS(764), 1, anon_sym_await, - ACTIONS(568), 1, - anon_sym_LPAREN, - ACTIONS(574), 1, - anon_sym_LBRACK, STATE(763), 1, - sym_template_string, - STATE(779), 1, sym_primary_expression, - STATE(782), 1, + STATE(766), 1, sym_string, - STATE(1109), 1, + STATE(776), 1, + sym_template_string, + STATE(1123), 1, sym_expression, - ACTIONS(75), 2, + ACTIONS(626), 2, sym_ellipsis, sym_float, - ACTIONS(47), 3, + ACTIONS(620), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(77), 4, + ACTIONS(612), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(316), 5, + ACTIONS(756), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1158), 6, + STATE(1104), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(908), 17, + STATE(878), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -40721,61 +41031,62 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [21024] = 20, + [21114] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(263), 1, - sym_identifier, - ACTIONS(288), 1, + ACTIONS(616), 1, + anon_sym_LPAREN, + ACTIONS(622), 1, + anon_sym_LBRACK, + ACTIONS(624), 1, anon_sym_LBRACE, - ACTIONS(300), 1, - anon_sym_lambda, - ACTIONS(308), 1, - anon_sym_await, - ACTIONS(310), 1, + ACTIONS(630), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(632), 1, sym__template_string_start, - ACTIONS(578), 1, - anon_sym_LPAREN, - ACTIONS(591), 1, - anon_sym_LBRACK, - ACTIONS(747), 1, + ACTIONS(754), 1, + sym_identifier, + ACTIONS(760), 1, anon_sym_not, - STATE(621), 1, + ACTIONS(762), 1, + anon_sym_lambda, + ACTIONS(764), 1, + anon_sym_await, + STATE(763), 1, + sym_primary_expression, + STATE(766), 1, sym_string, - STATE(624), 1, + STATE(776), 1, sym_template_string, - STATE(719), 1, - sym_primary_expression, - STATE(1262), 1, + STATE(1124), 1, sym_expression, - ACTIONS(304), 2, + ACTIONS(626), 2, sym_ellipsis, sym_float, - ACTIONS(296), 3, + ACTIONS(620), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 4, + ACTIONS(612), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(276), 5, + ACTIONS(756), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1031), 6, + STATE(1104), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(724), 17, + STATE(878), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -40793,61 +41104,62 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [21116] = 20, + [21207] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(263), 1, + ACTIONS(268), 1, sym_identifier, - ACTIONS(288), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(300), 1, + ACTIONS(305), 1, anon_sym_lambda, - ACTIONS(308), 1, + ACTIONS(313), 1, anon_sym_await, - ACTIONS(310), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(578), 1, + ACTIONS(575), 1, anon_sym_LPAREN, - ACTIONS(591), 1, + ACTIONS(586), 1, anon_sym_LBRACK, - ACTIONS(747), 1, + ACTIONS(752), 1, anon_sym_not, - STATE(621), 1, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, STATE(719), 1, sym_primary_expression, - STATE(1274), 1, + STATE(1078), 1, sym_expression, - ACTIONS(304), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(296), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(276), 5, + ACTIONS(270), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1031), 6, + STATE(1032), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(724), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -40865,61 +41177,62 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [21208] = 20, + [21300] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(288), 1, + ACTIONS(268), 1, + sym_identifier, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(310), 1, + ACTIONS(305), 1, + anon_sym_lambda, + ACTIONS(313), 1, + anon_sym_await, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(597), 1, + ACTIONS(575), 1, anon_sym_LPAREN, - ACTIONS(603), 1, + ACTIONS(586), 1, anon_sym_LBRACK, - ACTIONS(691), 1, + ACTIONS(752), 1, anon_sym_not, - ACTIONS(693), 1, - anon_sym_lambda, - ACTIONS(801), 1, - sym_identifier, - ACTIONS(807), 1, - anon_sym_await, - STATE(621), 1, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, - STATE(725), 1, + STATE(719), 1, sym_primary_expression, - STATE(1069), 1, + STATE(1229), 1, sym_expression, - ACTIONS(304), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(601), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(805), 5, + ACTIONS(270), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1031), 6, + STATE(1032), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(724), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -40937,61 +41250,62 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [21300] = 20, + [21393] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(51), 1, + ACTIONS(616), 1, + anon_sym_LPAREN, + ACTIONS(622), 1, + anon_sym_LBRACK, + ACTIONS(624), 1, anon_sym_LBRACE, - ACTIONS(69), 1, - anon_sym_not, - ACTIONS(71), 1, - anon_sym_lambda, - ACTIONS(81), 1, + ACTIONS(630), 1, sym__string_start, - ACTIONS(83), 1, + ACTIONS(632), 1, sym__template_string_start, - ACTIONS(314), 1, + ACTIONS(754), 1, sym_identifier, - ACTIONS(320), 1, + ACTIONS(760), 1, + anon_sym_not, + ACTIONS(762), 1, + anon_sym_lambda, + ACTIONS(764), 1, anon_sym_await, - ACTIONS(568), 1, - anon_sym_LPAREN, - ACTIONS(574), 1, - anon_sym_LBRACK, STATE(763), 1, - sym_template_string, - STATE(779), 1, sym_primary_expression, - STATE(782), 1, + STATE(766), 1, sym_string, - STATE(1258), 1, + STATE(776), 1, + sym_template_string, + STATE(1125), 1, sym_expression, - ACTIONS(75), 2, + ACTIONS(626), 2, sym_ellipsis, sym_float, - ACTIONS(47), 3, + ACTIONS(620), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(77), 4, + ACTIONS(612), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(316), 5, + ACTIONS(756), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1158), 6, + STATE(1104), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(908), 17, + STATE(878), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -41009,61 +41323,121 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [21392] = 20, + [21486] = 6, ACTIONS(3), 1, sym_comment, - ACTIONS(288), 1, - anon_sym_LBRACE, - ACTIONS(310), 1, + ACTIONS(1097), 1, + anon_sym_elif, + STATE(374), 1, + aux_sym_if_statement_repeat1, + STATE(469), 1, + sym_elif_clause, + ACTIONS(1084), 13, + sym__dedent, sym__string_start, - ACTIONS(312), 1, sym__template_string_start, - ACTIONS(597), 1, anon_sym_LPAREN, - ACTIONS(603), 1, + anon_sym_DASH, + anon_sym_PLUS, anon_sym_LBRACK, - ACTIONS(691), 1, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_TILDE, + sym_ellipsis, + sym_float, + ACTIONS(1086), 35, + anon_sym_lazy, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, + anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, + anon_sym_else, + anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_with, + anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, + anon_sym_exec, + anon_sym_type, + anon_sym_class, anon_sym_not, - ACTIONS(693), 1, anon_sym_lambda, - ACTIONS(801), 1, + anon_sym_yield, + sym_integer, sym_identifier, - ACTIONS(807), 1, anon_sym_await, - STATE(621), 1, + sym_true, + sym_false, + sym_none, + [21551] = 20, + ACTIONS(3), 1, + sym_comment, + ACTIONS(616), 1, + anon_sym_LPAREN, + ACTIONS(622), 1, + anon_sym_LBRACK, + ACTIONS(624), 1, + anon_sym_LBRACE, + ACTIONS(630), 1, + sym__string_start, + ACTIONS(632), 1, + sym__template_string_start, + ACTIONS(754), 1, + sym_identifier, + ACTIONS(760), 1, + anon_sym_not, + ACTIONS(762), 1, + anon_sym_lambda, + ACTIONS(764), 1, + anon_sym_await, + STATE(763), 1, + sym_primary_expression, + STATE(766), 1, sym_string, - STATE(624), 1, + STATE(776), 1, sym_template_string, - STATE(725), 1, - sym_primary_expression, - STATE(1074), 1, + STATE(1143), 1, sym_expression, - ACTIONS(304), 2, + ACTIONS(626), 2, sym_ellipsis, sym_float, - ACTIONS(601), 3, + ACTIONS(620), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 4, + ACTIONS(612), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(805), 5, + ACTIONS(756), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1031), 6, + STATE(1104), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(724), 17, + STATE(878), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -41081,61 +41455,62 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [21484] = 20, + [21644] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(263), 1, + ACTIONS(268), 1, sym_identifier, - ACTIONS(288), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(300), 1, + ACTIONS(305), 1, anon_sym_lambda, - ACTIONS(308), 1, + ACTIONS(313), 1, anon_sym_await, - ACTIONS(310), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(578), 1, + ACTIONS(575), 1, anon_sym_LPAREN, - ACTIONS(591), 1, + ACTIONS(586), 1, anon_sym_LBRACK, - ACTIONS(747), 1, + ACTIONS(752), 1, anon_sym_not, - STATE(621), 1, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, STATE(719), 1, sym_primary_expression, - STATE(1231), 1, + STATE(1031), 1, sym_expression, - ACTIONS(304), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(296), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(276), 5, + ACTIONS(270), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1031), 6, + STATE(1032), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(724), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -41153,61 +41528,62 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [21576] = 20, + [21737] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(263), 1, - sym_identifier, - ACTIONS(288), 1, + ACTIONS(53), 1, anon_sym_LBRACE, - ACTIONS(300), 1, + ACTIONS(71), 1, + anon_sym_not, + ACTIONS(73), 1, anon_sym_lambda, - ACTIONS(308), 1, - anon_sym_await, - ACTIONS(310), 1, + ACTIONS(83), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(85), 1, sym__template_string_start, - ACTIONS(578), 1, + ACTIONS(349), 1, + sym_identifier, + ACTIONS(355), 1, + anon_sym_await, + ACTIONS(594), 1, anon_sym_LPAREN, - ACTIONS(591), 1, + ACTIONS(598), 1, anon_sym_LBRACK, - ACTIONS(747), 1, - anon_sym_not, - STATE(621), 1, - sym_string, - STATE(624), 1, - sym_template_string, - STATE(719), 1, + STATE(765), 1, sym_primary_expression, - STATE(1166), 1, + STATE(769), 1, + sym_template_string, + STATE(775), 1, + sym_string, + STATE(1366), 1, sym_expression, - ACTIONS(304), 2, + ACTIONS(77), 2, sym_ellipsis, sym_float, - ACTIONS(296), 3, + ACTIONS(49), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 4, + ACTIONS(79), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(276), 5, + ACTIONS(351), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1031), 6, + STATE(1156), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(724), 17, + STATE(920), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -41225,61 +41601,62 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [21668] = 20, + [21830] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(631), 1, - anon_sym_LPAREN, - ACTIONS(639), 1, - anon_sym_LBRACK, - ACTIONS(641), 1, + ACTIONS(53), 1, anon_sym_LBRACE, - ACTIONS(647), 1, + ACTIONS(71), 1, + anon_sym_not, + ACTIONS(73), 1, + anon_sym_lambda, + ACTIONS(83), 1, sym__string_start, - ACTIONS(649), 1, + ACTIONS(85), 1, sym__template_string_start, - ACTIONS(961), 1, + ACTIONS(349), 1, sym_identifier, - ACTIONS(969), 1, - anon_sym_not, - ACTIONS(971), 1, - anon_sym_lambda, - ACTIONS(973), 1, + ACTIONS(355), 1, anon_sym_await, - STATE(794), 1, - sym_string, - STATE(795), 1, - sym_template_string, - STATE(822), 1, + ACTIONS(594), 1, + anon_sym_LPAREN, + ACTIONS(598), 1, + anon_sym_LBRACK, + STATE(765), 1, sym_primary_expression, - STATE(1192), 1, + STATE(769), 1, + sym_template_string, + STATE(775), 1, + sym_string, + STATE(1274), 1, sym_expression, - ACTIONS(643), 2, + ACTIONS(77), 2, sym_ellipsis, sym_float, - ACTIONS(637), 3, + ACTIONS(49), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(629), 4, + ACTIONS(79), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(965), 5, + ACTIONS(351), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1176), 6, + STATE(1156), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(953), 17, + STATE(920), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -41297,61 +41674,62 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [21760] = 20, + [21923] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(263), 1, + ACTIONS(268), 1, sym_identifier, - ACTIONS(288), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(300), 1, + ACTIONS(305), 1, anon_sym_lambda, - ACTIONS(308), 1, + ACTIONS(313), 1, anon_sym_await, - ACTIONS(310), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(578), 1, + ACTIONS(575), 1, anon_sym_LPAREN, - ACTIONS(591), 1, + ACTIONS(586), 1, anon_sym_LBRACK, - ACTIONS(747), 1, + ACTIONS(752), 1, anon_sym_not, - STATE(621), 1, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, STATE(719), 1, sym_primary_expression, - STATE(1295), 1, + STATE(1244), 1, sym_expression, - ACTIONS(304), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(296), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(276), 5, + ACTIONS(270), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1031), 6, + STATE(1032), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(724), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -41369,61 +41747,62 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [21852] = 20, + [22016] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(631), 1, - anon_sym_LPAREN, - ACTIONS(639), 1, - anon_sym_LBRACK, - ACTIONS(641), 1, + ACTIONS(53), 1, anon_sym_LBRACE, - ACTIONS(647), 1, + ACTIONS(71), 1, + anon_sym_not, + ACTIONS(73), 1, + anon_sym_lambda, + ACTIONS(83), 1, sym__string_start, - ACTIONS(649), 1, + ACTIONS(85), 1, sym__template_string_start, - ACTIONS(961), 1, + ACTIONS(349), 1, sym_identifier, - ACTIONS(969), 1, - anon_sym_not, - ACTIONS(971), 1, - anon_sym_lambda, - ACTIONS(973), 1, + ACTIONS(355), 1, anon_sym_await, - STATE(794), 1, - sym_string, - STATE(795), 1, - sym_template_string, - STATE(822), 1, + ACTIONS(594), 1, + anon_sym_LPAREN, + ACTIONS(598), 1, + anon_sym_LBRACK, + STATE(765), 1, sym_primary_expression, - STATE(1193), 1, + STATE(769), 1, + sym_template_string, + STATE(775), 1, + sym_string, + STATE(1145), 1, sym_expression, - ACTIONS(643), 2, + ACTIONS(77), 2, sym_ellipsis, sym_float, - ACTIONS(637), 3, + ACTIONS(49), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(629), 4, + ACTIONS(79), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(965), 5, + ACTIONS(351), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1176), 6, + STATE(1156), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(953), 17, + STATE(920), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -41441,61 +41820,62 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [21944] = 20, + [22109] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(631), 1, - anon_sym_LPAREN, - ACTIONS(639), 1, - anon_sym_LBRACK, - ACTIONS(641), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(647), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(649), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(961), 1, - sym_identifier, - ACTIONS(969), 1, + ACTIONS(602), 1, + anon_sym_LPAREN, + ACTIONS(608), 1, + anon_sym_LBRACK, + ACTIONS(680), 1, anon_sym_not, - ACTIONS(971), 1, + ACTIONS(682), 1, anon_sym_lambda, - ACTIONS(973), 1, + ACTIONS(816), 1, + sym_identifier, + ACTIONS(822), 1, anon_sym_await, - STATE(794), 1, + STATE(645), 1, sym_string, - STATE(795), 1, + STATE(658), 1, sym_template_string, - STATE(822), 1, + STATE(726), 1, sym_primary_expression, - STATE(1194), 1, + STATE(1067), 1, sym_expression, - ACTIONS(643), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(637), 3, + ACTIONS(606), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(629), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(965), 5, + ACTIONS(818), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1176), 6, + STATE(1032), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(953), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -41513,61 +41893,62 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [22036] = 20, + [22202] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(51), 1, + ACTIONS(53), 1, anon_sym_LBRACE, - ACTIONS(69), 1, - anon_sym_not, ACTIONS(71), 1, + anon_sym_not, + ACTIONS(73), 1, anon_sym_lambda, - ACTIONS(81), 1, - sym__string_start, ACTIONS(83), 1, + sym__string_start, + ACTIONS(85), 1, sym__template_string_start, - ACTIONS(314), 1, + ACTIONS(349), 1, sym_identifier, - ACTIONS(320), 1, + ACTIONS(355), 1, anon_sym_await, - ACTIONS(568), 1, + ACTIONS(594), 1, anon_sym_LPAREN, - ACTIONS(574), 1, + ACTIONS(598), 1, anon_sym_LBRACK, - STATE(763), 1, - sym_template_string, - STATE(779), 1, + STATE(765), 1, sym_primary_expression, - STATE(782), 1, + STATE(769), 1, + sym_template_string, + STATE(775), 1, sym_string, - STATE(1269), 1, + STATE(1126), 1, sym_expression, - ACTIONS(75), 2, + ACTIONS(77), 2, sym_ellipsis, sym_float, - ACTIONS(47), 3, + ACTIONS(49), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(77), 4, + ACTIONS(79), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(316), 5, + ACTIONS(351), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1158), 6, + STATE(1156), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(908), 17, + STATE(920), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -41585,66 +41966,66 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [22128] = 21, + [22295] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(288), 1, + ACTIONS(268), 1, + sym_identifier, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(300), 1, + ACTIONS(305), 1, anon_sym_lambda, - ACTIONS(310), 1, + ACTIONS(313), 1, + anon_sym_await, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(578), 1, + ACTIONS(575), 1, anon_sym_LPAREN, - ACTIONS(591), 1, + ACTIONS(586), 1, anon_sym_LBRACK, - ACTIONS(747), 1, + ACTIONS(752), 1, anon_sym_not, - ACTIONS(1100), 1, - sym_identifier, - ACTIONS(1104), 1, - anon_sym_await, - STATE(621), 1, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, STATE(719), 1, sym_primary_expression, - STATE(1096), 1, + STATE(1151), 1, sym_expression, - ACTIONS(304), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - STATE(509), 2, - sym_attribute, - sym_subscript, - ACTIONS(296), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(1102), 5, + ACTIONS(270), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1031), 6, + STATE(1032), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(724), 15, + STATE(725), 17, sym_binary_operator, sym_unary_operator, + sym_attribute, + sym_subscript, sym_call, sym_list, sym_set, @@ -41658,61 +42039,62 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [22222] = 20, + [22388] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(263), 1, - sym_identifier, - ACTIONS(288), 1, + ACTIONS(53), 1, anon_sym_LBRACE, - ACTIONS(300), 1, + ACTIONS(71), 1, + anon_sym_not, + ACTIONS(73), 1, anon_sym_lambda, - ACTIONS(308), 1, - anon_sym_await, - ACTIONS(310), 1, + ACTIONS(83), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(85), 1, sym__template_string_start, - ACTIONS(578), 1, + ACTIONS(349), 1, + sym_identifier, + ACTIONS(355), 1, + anon_sym_await, + ACTIONS(594), 1, anon_sym_LPAREN, - ACTIONS(591), 1, + ACTIONS(598), 1, anon_sym_LBRACK, - ACTIONS(747), 1, - anon_sym_not, - STATE(621), 1, - sym_string, - STATE(624), 1, - sym_template_string, - STATE(719), 1, + STATE(765), 1, sym_primary_expression, - STATE(1322), 1, + STATE(769), 1, + sym_template_string, + STATE(775), 1, + sym_string, + STATE(1142), 1, sym_expression, - ACTIONS(304), 2, + ACTIONS(77), 2, sym_ellipsis, sym_float, - ACTIONS(296), 3, + ACTIONS(49), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 4, + ACTIONS(79), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(276), 5, + ACTIONS(351), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1031), 6, + STATE(1156), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(724), 17, + STATE(920), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -41730,61 +42112,62 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [22314] = 20, + [22481] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(631), 1, - anon_sym_LPAREN, - ACTIONS(639), 1, - anon_sym_LBRACK, - ACTIONS(641), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(647), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(649), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(961), 1, - sym_identifier, - ACTIONS(969), 1, + ACTIONS(602), 1, + anon_sym_LPAREN, + ACTIONS(608), 1, + anon_sym_LBRACK, + ACTIONS(680), 1, anon_sym_not, - ACTIONS(971), 1, + ACTIONS(682), 1, anon_sym_lambda, - ACTIONS(973), 1, + ACTIONS(816), 1, + sym_identifier, + ACTIONS(822), 1, anon_sym_await, - STATE(794), 1, + STATE(645), 1, sym_string, - STATE(795), 1, + STATE(658), 1, sym_template_string, - STATE(822), 1, + STATE(726), 1, sym_primary_expression, - STATE(1195), 1, + STATE(1157), 1, sym_expression, - ACTIONS(643), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(637), 3, + ACTIONS(606), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(629), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(965), 5, + ACTIONS(818), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1176), 6, + STATE(1032), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(953), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -41802,61 +42185,62 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [22406] = 20, + [22574] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(631), 1, - anon_sym_LPAREN, - ACTIONS(639), 1, - anon_sym_LBRACK, - ACTIONS(641), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(647), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(649), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(961), 1, - sym_identifier, - ACTIONS(969), 1, + ACTIONS(602), 1, + anon_sym_LPAREN, + ACTIONS(608), 1, + anon_sym_LBRACK, + ACTIONS(680), 1, anon_sym_not, - ACTIONS(971), 1, + ACTIONS(682), 1, anon_sym_lambda, - ACTIONS(973), 1, + ACTIONS(816), 1, + sym_identifier, + ACTIONS(822), 1, anon_sym_await, - STATE(794), 1, + STATE(645), 1, sym_string, - STATE(795), 1, + STATE(658), 1, sym_template_string, - STATE(822), 1, + STATE(726), 1, sym_primary_expression, - STATE(1208), 1, + STATE(1072), 1, sym_expression, - ACTIONS(643), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(637), 3, + ACTIONS(606), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(629), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(965), 5, + ACTIONS(818), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1176), 6, + STATE(1032), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(953), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -41874,61 +42258,62 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [22498] = 20, + [22667] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(631), 1, - anon_sym_LPAREN, - ACTIONS(639), 1, - anon_sym_LBRACK, - ACTIONS(641), 1, + ACTIONS(268), 1, + sym_identifier, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(647), 1, + ACTIONS(305), 1, + anon_sym_lambda, + ACTIONS(313), 1, + anon_sym_await, + ACTIONS(315), 1, sym__string_start, - ACTIONS(649), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(961), 1, - sym_identifier, - ACTIONS(969), 1, + ACTIONS(575), 1, + anon_sym_LPAREN, + ACTIONS(586), 1, + anon_sym_LBRACK, + ACTIONS(752), 1, anon_sym_not, - ACTIONS(971), 1, - anon_sym_lambda, - ACTIONS(973), 1, - anon_sym_await, - STATE(794), 1, + STATE(645), 1, sym_string, - STATE(795), 1, + STATE(658), 1, sym_template_string, - STATE(822), 1, + STATE(719), 1, sym_primary_expression, - STATE(1209), 1, + STATE(1196), 1, sym_expression, - ACTIONS(643), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(637), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(629), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(965), 5, + ACTIONS(270), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1176), 6, + STATE(1032), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(953), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -41946,61 +42331,62 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [22590] = 20, + [22760] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(288), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(310), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(597), 1, + ACTIONS(602), 1, anon_sym_LPAREN, - ACTIONS(603), 1, + ACTIONS(608), 1, anon_sym_LBRACK, - ACTIONS(691), 1, + ACTIONS(680), 1, anon_sym_not, - ACTIONS(693), 1, + ACTIONS(682), 1, anon_sym_lambda, - ACTIONS(801), 1, + ACTIONS(816), 1, sym_identifier, - ACTIONS(807), 1, + ACTIONS(822), 1, anon_sym_await, - STATE(621), 1, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, - STATE(725), 1, + STATE(726), 1, sym_primary_expression, - STATE(1085), 1, + STATE(1073), 1, sym_expression, - ACTIONS(304), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(601), 3, + ACTIONS(606), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(805), 5, + ACTIONS(818), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1031), 6, + STATE(1032), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(724), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -42018,61 +42404,62 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [22682] = 20, + [22853] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(609), 1, + ACTIONS(640), 1, anon_sym_LPAREN, - ACTIONS(617), 1, + ACTIONS(646), 1, anon_sym_LBRACK, - ACTIONS(619), 1, + ACTIONS(648), 1, anon_sym_LBRACE, - ACTIONS(625), 1, + ACTIONS(654), 1, sym__string_start, - ACTIONS(627), 1, + ACTIONS(656), 1, sym__template_string_start, - ACTIONS(749), 1, + ACTIONS(952), 1, sym_identifier, - ACTIONS(755), 1, + ACTIONS(960), 1, anon_sym_not, - ACTIONS(757), 1, + ACTIONS(962), 1, anon_sym_lambda, - ACTIONS(759), 1, + ACTIONS(964), 1, anon_sym_await, - STATE(766), 1, + STATE(792), 1, sym_primary_expression, - STATE(767), 1, + STATE(793), 1, sym_string, - STATE(768), 1, + STATE(794), 1, sym_template_string, - STATE(1125), 1, + STATE(1187), 1, sym_expression, - ACTIONS(621), 2, + ACTIONS(650), 2, sym_ellipsis, sym_float, - ACTIONS(615), 3, + ACTIONS(644), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(607), 4, + ACTIONS(636), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(753), 5, + ACTIONS(954), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1129), 6, + STATE(1211), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(924), 17, + STATE(970), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -42090,61 +42477,62 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [22774] = 20, + [22946] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(263), 1, - sym_identifier, - ACTIONS(288), 1, + ACTIONS(640), 1, + anon_sym_LPAREN, + ACTIONS(646), 1, + anon_sym_LBRACK, + ACTIONS(648), 1, anon_sym_LBRACE, - ACTIONS(300), 1, - anon_sym_lambda, - ACTIONS(308), 1, - anon_sym_await, - ACTIONS(310), 1, + ACTIONS(654), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(656), 1, sym__template_string_start, - ACTIONS(578), 1, - anon_sym_LPAREN, - ACTIONS(591), 1, - anon_sym_LBRACK, - ACTIONS(747), 1, + ACTIONS(952), 1, + sym_identifier, + ACTIONS(960), 1, anon_sym_not, - STATE(621), 1, + ACTIONS(962), 1, + anon_sym_lambda, + ACTIONS(964), 1, + anon_sym_await, + STATE(792), 1, + sym_primary_expression, + STATE(793), 1, sym_string, - STATE(624), 1, + STATE(794), 1, sym_template_string, - STATE(719), 1, - sym_primary_expression, - STATE(1030), 1, + STATE(1189), 1, sym_expression, - ACTIONS(304), 2, + ACTIONS(650), 2, sym_ellipsis, sym_float, - ACTIONS(296), 3, + ACTIONS(644), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 4, + ACTIONS(636), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(276), 5, + ACTIONS(954), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1031), 6, + STATE(1211), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(724), 17, + STATE(970), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -42162,61 +42550,62 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [22866] = 20, + [23039] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(609), 1, - anon_sym_LPAREN, - ACTIONS(617), 1, - anon_sym_LBRACK, - ACTIONS(619), 1, + ACTIONS(53), 1, anon_sym_LBRACE, - ACTIONS(625), 1, + ACTIONS(71), 1, + anon_sym_not, + ACTIONS(73), 1, + anon_sym_lambda, + ACTIONS(83), 1, sym__string_start, - ACTIONS(627), 1, + ACTIONS(85), 1, sym__template_string_start, - ACTIONS(749), 1, + ACTIONS(349), 1, sym_identifier, - ACTIONS(755), 1, - anon_sym_not, - ACTIONS(757), 1, - anon_sym_lambda, - ACTIONS(759), 1, + ACTIONS(355), 1, anon_sym_await, - STATE(766), 1, + ACTIONS(594), 1, + anon_sym_LPAREN, + ACTIONS(598), 1, + anon_sym_LBRACK, + STATE(765), 1, sym_primary_expression, - STATE(767), 1, - sym_string, - STATE(768), 1, + STATE(769), 1, sym_template_string, - STATE(1165), 1, + STATE(775), 1, + sym_string, + STATE(1141), 1, sym_expression, - ACTIONS(621), 2, + ACTIONS(77), 2, sym_ellipsis, sym_float, - ACTIONS(615), 3, + ACTIONS(49), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(607), 4, + ACTIONS(79), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(753), 5, + ACTIONS(351), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1129), 6, + STATE(1156), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(924), 17, + STATE(920), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -42234,61 +42623,62 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [22958] = 20, + [23132] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(609), 1, - anon_sym_LPAREN, - ACTIONS(617), 1, - anon_sym_LBRACK, - ACTIONS(619), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(625), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(627), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(749), 1, - sym_identifier, - ACTIONS(755), 1, + ACTIONS(602), 1, + anon_sym_LPAREN, + ACTIONS(608), 1, + anon_sym_LBRACK, + ACTIONS(680), 1, anon_sym_not, - ACTIONS(757), 1, + ACTIONS(682), 1, anon_sym_lambda, - ACTIONS(759), 1, + ACTIONS(816), 1, + sym_identifier, + ACTIONS(822), 1, anon_sym_await, - STATE(766), 1, - sym_primary_expression, - STATE(767), 1, + STATE(645), 1, sym_string, - STATE(768), 1, + STATE(658), 1, sym_template_string, - STATE(1103), 1, + STATE(726), 1, + sym_primary_expression, + STATE(1076), 1, sym_expression, - ACTIONS(621), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(615), 3, + ACTIONS(606), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(607), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(753), 5, + ACTIONS(818), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1129), 6, + STATE(1032), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(924), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -42306,61 +42696,62 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [23050] = 20, + [23225] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(609), 1, - anon_sym_LPAREN, - ACTIONS(617), 1, - anon_sym_LBRACK, - ACTIONS(619), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(625), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(627), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(749), 1, - sym_identifier, - ACTIONS(755), 1, + ACTIONS(602), 1, + anon_sym_LPAREN, + ACTIONS(608), 1, + anon_sym_LBRACK, + ACTIONS(680), 1, anon_sym_not, - ACTIONS(757), 1, + ACTIONS(682), 1, anon_sym_lambda, - ACTIONS(759), 1, + ACTIONS(816), 1, + sym_identifier, + ACTIONS(822), 1, anon_sym_await, - STATE(766), 1, - sym_primary_expression, - STATE(767), 1, + STATE(645), 1, sym_string, - STATE(768), 1, + STATE(658), 1, sym_template_string, - STATE(1104), 1, + STATE(726), 1, + sym_primary_expression, + STATE(1063), 1, sym_expression, - ACTIONS(621), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(615), 3, + ACTIONS(606), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(607), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(753), 5, + ACTIONS(818), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1129), 6, + STATE(1032), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(924), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -42378,61 +42769,62 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [23142] = 20, + [23318] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(609), 1, - anon_sym_LPAREN, - ACTIONS(617), 1, - anon_sym_LBRACK, - ACTIONS(619), 1, + ACTIONS(53), 1, anon_sym_LBRACE, - ACTIONS(625), 1, + ACTIONS(71), 1, + anon_sym_not, + ACTIONS(73), 1, + anon_sym_lambda, + ACTIONS(83), 1, sym__string_start, - ACTIONS(627), 1, + ACTIONS(85), 1, sym__template_string_start, - ACTIONS(749), 1, + ACTIONS(349), 1, sym_identifier, - ACTIONS(755), 1, - anon_sym_not, - ACTIONS(757), 1, - anon_sym_lambda, - ACTIONS(759), 1, + ACTIONS(355), 1, anon_sym_await, - STATE(766), 1, + ACTIONS(594), 1, + anon_sym_LPAREN, + ACTIONS(598), 1, + anon_sym_LBRACK, + STATE(765), 1, sym_primary_expression, - STATE(767), 1, - sym_string, - STATE(768), 1, + STATE(769), 1, sym_template_string, - STATE(1105), 1, + STATE(775), 1, + sym_string, + STATE(1184), 1, sym_expression, - ACTIONS(621), 2, + ACTIONS(77), 2, sym_ellipsis, sym_float, - ACTIONS(615), 3, + ACTIONS(49), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(607), 4, + ACTIONS(79), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(753), 5, + ACTIONS(351), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1129), 6, + STATE(1156), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(924), 17, + STATE(920), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -42450,61 +42842,62 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [23234] = 20, + [23411] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(609), 1, - anon_sym_LPAREN, - ACTIONS(617), 1, - anon_sym_LBRACK, - ACTIONS(619), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(625), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(627), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(749), 1, - sym_identifier, - ACTIONS(755), 1, + ACTIONS(602), 1, + anon_sym_LPAREN, + ACTIONS(608), 1, + anon_sym_LBRACK, + ACTIONS(680), 1, anon_sym_not, - ACTIONS(757), 1, + ACTIONS(682), 1, anon_sym_lambda, - ACTIONS(759), 1, + ACTIONS(816), 1, + sym_identifier, + ACTIONS(822), 1, anon_sym_await, - STATE(766), 1, - sym_primary_expression, - STATE(767), 1, + STATE(645), 1, sym_string, - STATE(768), 1, + STATE(658), 1, sym_template_string, - STATE(1106), 1, + STATE(726), 1, + sym_primary_expression, + STATE(1082), 1, sym_expression, - ACTIONS(621), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(615), 3, + ACTIONS(606), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(607), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(753), 5, + ACTIONS(818), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1129), 6, + STATE(1032), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(924), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -42522,61 +42915,62 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [23326] = 20, + [23504] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(263), 1, + ACTIONS(268), 1, sym_identifier, - ACTIONS(288), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(300), 1, + ACTIONS(305), 1, anon_sym_lambda, - ACTIONS(308), 1, + ACTIONS(313), 1, anon_sym_await, - ACTIONS(310), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(578), 1, + ACTIONS(575), 1, anon_sym_LPAREN, - ACTIONS(591), 1, + ACTIONS(586), 1, anon_sym_LBRACK, - ACTIONS(747), 1, + ACTIONS(752), 1, anon_sym_not, - STATE(621), 1, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, STATE(719), 1, sym_primary_expression, - STATE(1349), 1, + STATE(1312), 1, sym_expression, - ACTIONS(304), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(296), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(276), 5, + ACTIONS(270), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1031), 6, + STATE(1032), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(724), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -42594,61 +42988,62 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [23418] = 20, + [23597] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(609), 1, - anon_sym_LPAREN, - ACTIONS(617), 1, - anon_sym_LBRACK, - ACTIONS(619), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(625), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(627), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(749), 1, - sym_identifier, - ACTIONS(755), 1, + ACTIONS(602), 1, + anon_sym_LPAREN, + ACTIONS(608), 1, + anon_sym_LBRACK, + ACTIONS(680), 1, anon_sym_not, - ACTIONS(757), 1, + ACTIONS(682), 1, anon_sym_lambda, - ACTIONS(759), 1, + ACTIONS(816), 1, + sym_identifier, + ACTIONS(822), 1, anon_sym_await, - STATE(766), 1, - sym_primary_expression, - STATE(767), 1, + STATE(645), 1, sym_string, - STATE(768), 1, + STATE(658), 1, sym_template_string, - STATE(1107), 1, + STATE(726), 1, + sym_primary_expression, + STATE(1031), 1, sym_expression, - ACTIONS(621), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(615), 3, + ACTIONS(606), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(607), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(753), 5, + ACTIONS(818), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1129), 6, + STATE(1032), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(924), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -42666,119 +43061,62 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [23510] = 6, + [23690] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(1106), 1, - anon_sym_elif, - STATE(399), 1, - aux_sym_if_statement_repeat1, - STATE(473), 1, - sym_elif_clause, - ACTIONS(1091), 13, - sym__dedent, - sym__string_start, - sym__template_string_start, + ACTIONS(616), 1, anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, + ACTIONS(622), 1, anon_sym_LBRACK, + ACTIONS(624), 1, anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, - sym_ellipsis, - sym_float, - ACTIONS(1093), 34, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, - anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, - anon_sym_else, - anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_with, - anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, - anon_sym_exec, - anon_sym_type, - anon_sym_class, - anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, - anon_sym_await, - sym_true, - sym_false, - sym_none, - [23574] = 20, - ACTIONS(3), 1, - sym_comment, - ACTIONS(609), 1, - anon_sym_LPAREN, - ACTIONS(617), 1, - anon_sym_LBRACK, - ACTIONS(619), 1, - anon_sym_LBRACE, - ACTIONS(625), 1, + ACTIONS(630), 1, sym__string_start, - ACTIONS(627), 1, + ACTIONS(632), 1, sym__template_string_start, - ACTIONS(749), 1, + ACTIONS(754), 1, sym_identifier, - ACTIONS(755), 1, + ACTIONS(760), 1, anon_sym_not, - ACTIONS(757), 1, + ACTIONS(762), 1, anon_sym_lambda, - ACTIONS(759), 1, + ACTIONS(764), 1, anon_sym_await, - STATE(766), 1, + STATE(763), 1, sym_primary_expression, - STATE(767), 1, + STATE(766), 1, sym_string, - STATE(768), 1, + STATE(776), 1, sym_template_string, - STATE(1108), 1, + STATE(1131), 1, sym_expression, - ACTIONS(621), 2, + ACTIONS(626), 2, sym_ellipsis, sym_float, - ACTIONS(615), 3, + ACTIONS(620), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(607), 4, + ACTIONS(612), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(753), 5, + ACTIONS(756), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1129), 6, + STATE(1104), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(924), 17, + STATE(878), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -42796,61 +43134,62 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [23666] = 20, + [23783] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(631), 1, - anon_sym_LPAREN, - ACTIONS(639), 1, - anon_sym_LBRACK, - ACTIONS(641), 1, + ACTIONS(53), 1, anon_sym_LBRACE, - ACTIONS(647), 1, + ACTIONS(71), 1, + anon_sym_not, + ACTIONS(73), 1, + anon_sym_lambda, + ACTIONS(83), 1, sym__string_start, - ACTIONS(649), 1, + ACTIONS(85), 1, sym__template_string_start, - ACTIONS(961), 1, + ACTIONS(349), 1, sym_identifier, - ACTIONS(969), 1, - anon_sym_not, - ACTIONS(971), 1, - anon_sym_lambda, - ACTIONS(973), 1, + ACTIONS(355), 1, anon_sym_await, - STATE(794), 1, - sym_string, - STATE(795), 1, - sym_template_string, - STATE(822), 1, + ACTIONS(594), 1, + anon_sym_LPAREN, + ACTIONS(598), 1, + anon_sym_LBRACK, + STATE(765), 1, sym_primary_expression, - STATE(1210), 1, + STATE(769), 1, + sym_template_string, + STATE(775), 1, + sym_string, + STATE(1277), 1, sym_expression, - ACTIONS(643), 2, + ACTIONS(77), 2, sym_ellipsis, sym_float, - ACTIONS(637), 3, + ACTIONS(49), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(629), 4, + ACTIONS(79), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(965), 5, + ACTIONS(351), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1176), 6, + STATE(1156), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(953), 17, + STATE(920), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -42868,61 +43207,62 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [23758] = 20, + [23876] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(263), 1, - sym_identifier, - ACTIONS(288), 1, + ACTIONS(53), 1, anon_sym_LBRACE, - ACTIONS(300), 1, + ACTIONS(71), 1, + anon_sym_not, + ACTIONS(73), 1, anon_sym_lambda, - ACTIONS(308), 1, - anon_sym_await, - ACTIONS(310), 1, + ACTIONS(83), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(85), 1, sym__template_string_start, - ACTIONS(578), 1, + ACTIONS(349), 1, + sym_identifier, + ACTIONS(355), 1, + anon_sym_await, + ACTIONS(594), 1, anon_sym_LPAREN, - ACTIONS(591), 1, + ACTIONS(598), 1, anon_sym_LBRACK, - ACTIONS(747), 1, - anon_sym_not, - STATE(621), 1, - sym_string, - STATE(624), 1, - sym_template_string, - STATE(719), 1, + STATE(765), 1, sym_primary_expression, - STATE(1361), 1, + STATE(769), 1, + sym_template_string, + STATE(775), 1, + sym_string, + STATE(1167), 1, sym_expression, - ACTIONS(304), 2, + ACTIONS(77), 2, sym_ellipsis, sym_float, - ACTIONS(296), 3, + ACTIONS(49), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 4, + ACTIONS(79), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(276), 5, + ACTIONS(351), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1031), 6, + STATE(1156), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(724), 17, + STATE(920), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -42940,61 +43280,62 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [23850] = 20, + [23969] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(609), 1, + ACTIONS(616), 1, anon_sym_LPAREN, - ACTIONS(617), 1, + ACTIONS(622), 1, anon_sym_LBRACK, - ACTIONS(619), 1, + ACTIONS(624), 1, anon_sym_LBRACE, - ACTIONS(625), 1, + ACTIONS(630), 1, sym__string_start, - ACTIONS(627), 1, + ACTIONS(632), 1, sym__template_string_start, - ACTIONS(749), 1, + ACTIONS(754), 1, sym_identifier, - ACTIONS(755), 1, + ACTIONS(760), 1, anon_sym_not, - ACTIONS(757), 1, + ACTIONS(762), 1, anon_sym_lambda, - ACTIONS(759), 1, + ACTIONS(764), 1, anon_sym_await, - STATE(766), 1, + STATE(763), 1, sym_primary_expression, - STATE(767), 1, + STATE(766), 1, sym_string, - STATE(768), 1, + STATE(776), 1, sym_template_string, - STATE(1168), 1, + STATE(1106), 1, sym_expression, - ACTIONS(621), 2, + ACTIONS(626), 2, sym_ellipsis, sym_float, - ACTIONS(615), 3, + ACTIONS(620), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(607), 4, + ACTIONS(612), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(753), 5, + ACTIONS(756), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1129), 6, + STATE(1104), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(924), 17, + STATE(878), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -43012,61 +43353,62 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [23942] = 20, + [24062] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(263), 1, + ACTIONS(268), 1, sym_identifier, - ACTIONS(288), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(300), 1, + ACTIONS(305), 1, anon_sym_lambda, - ACTIONS(308), 1, + ACTIONS(313), 1, anon_sym_await, - ACTIONS(310), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(578), 1, + ACTIONS(575), 1, anon_sym_LPAREN, - ACTIONS(591), 1, + ACTIONS(586), 1, anon_sym_LBRACK, - ACTIONS(747), 1, + ACTIONS(752), 1, anon_sym_not, - STATE(621), 1, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, STATE(719), 1, sym_primary_expression, - STATE(1307), 1, + STATE(1066), 1, sym_expression, - ACTIONS(304), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(296), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(276), 5, + ACTIONS(270), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1031), 6, + STATE(1032), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(724), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -43084,61 +43426,62 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [24034] = 20, + [24155] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(263), 1, - sym_identifier, - ACTIONS(288), 1, + ACTIONS(53), 1, anon_sym_LBRACE, - ACTIONS(300), 1, + ACTIONS(71), 1, + anon_sym_not, + ACTIONS(73), 1, anon_sym_lambda, - ACTIONS(308), 1, - anon_sym_await, - ACTIONS(310), 1, + ACTIONS(83), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(85), 1, sym__template_string_start, - ACTIONS(578), 1, + ACTIONS(349), 1, + sym_identifier, + ACTIONS(355), 1, + anon_sym_await, + ACTIONS(594), 1, anon_sym_LPAREN, - ACTIONS(591), 1, + ACTIONS(598), 1, anon_sym_LBRACK, - ACTIONS(747), 1, - anon_sym_not, - STATE(621), 1, - sym_string, - STATE(624), 1, - sym_template_string, - STATE(719), 1, + STATE(765), 1, sym_primary_expression, - STATE(1077), 1, + STATE(769), 1, + sym_template_string, + STATE(775), 1, + sym_string, + STATE(1216), 1, sym_expression, - ACTIONS(304), 2, + ACTIONS(77), 2, sym_ellipsis, sym_float, - ACTIONS(296), 3, + ACTIONS(49), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 4, + ACTIONS(79), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(276), 5, + ACTIONS(351), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1031), 6, + STATE(1156), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(724), 17, + STATE(920), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -43156,61 +43499,62 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [24126] = 20, + [24248] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(51), 1, + ACTIONS(268), 1, + sym_identifier, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(69), 1, - anon_sym_not, - ACTIONS(71), 1, + ACTIONS(305), 1, anon_sym_lambda, - ACTIONS(81), 1, + ACTIONS(313), 1, + anon_sym_await, + ACTIONS(315), 1, sym__string_start, - ACTIONS(83), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(314), 1, - sym_identifier, - ACTIONS(320), 1, - anon_sym_await, - ACTIONS(568), 1, + ACTIONS(575), 1, anon_sym_LPAREN, - ACTIONS(574), 1, + ACTIONS(586), 1, anon_sym_LBRACK, - STATE(763), 1, + ACTIONS(752), 1, + anon_sym_not, + STATE(645), 1, + sym_string, + STATE(658), 1, sym_template_string, - STATE(779), 1, + STATE(719), 1, sym_primary_expression, - STATE(782), 1, - sym_string, - STATE(1177), 1, + STATE(1306), 1, sym_expression, - ACTIONS(75), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(47), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(77), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(316), 5, + ACTIONS(270), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1158), 6, + STATE(1032), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(908), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -43228,61 +43572,62 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [24218] = 20, + [24341] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(263), 1, - sym_identifier, - ACTIONS(288), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(300), 1, - anon_sym_lambda, - ACTIONS(308), 1, - anon_sym_await, - ACTIONS(310), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(578), 1, + ACTIONS(602), 1, anon_sym_LPAREN, - ACTIONS(591), 1, + ACTIONS(608), 1, anon_sym_LBRACK, - ACTIONS(747), 1, + ACTIONS(680), 1, anon_sym_not, - STATE(621), 1, + ACTIONS(682), 1, + anon_sym_lambda, + ACTIONS(816), 1, + sym_identifier, + ACTIONS(822), 1, + anon_sym_await, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, - STATE(719), 1, + STATE(726), 1, sym_primary_expression, - STATE(1334), 1, + STATE(1065), 1, sym_expression, - ACTIONS(304), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(296), 3, + ACTIONS(606), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(276), 5, + ACTIONS(818), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1031), 6, + STATE(1032), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(724), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -43300,61 +43645,62 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [24310] = 20, + [24434] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(288), 1, + ACTIONS(268), 1, + sym_identifier, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(310), 1, + ACTIONS(305), 1, + anon_sym_lambda, + ACTIONS(313), 1, + anon_sym_await, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(653), 1, + ACTIONS(575), 1, anon_sym_LPAREN, - ACTIONS(659), 1, + ACTIONS(586), 1, anon_sym_LBRACK, - ACTIONS(713), 1, - sym_identifier, - ACTIONS(725), 1, + ACTIONS(752), 1, anon_sym_not, - ACTIONS(727), 1, - anon_sym_lambda, - ACTIONS(729), 1, - anon_sym_await, - STATE(621), 1, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, - STATE(772), 1, + STATE(719), 1, sym_primary_expression, - STATE(1149), 1, + STATE(1235), 1, sym_expression, - ACTIONS(304), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(657), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(721), 5, + ACTIONS(270), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1031), 6, + STATE(1032), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(724), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -43372,61 +43718,62 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [24402] = 20, + [24527] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(288), 1, + ACTIONS(268), 1, + sym_identifier, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(310), 1, + ACTIONS(305), 1, + anon_sym_lambda, + ACTIONS(313), 1, + anon_sym_await, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(653), 1, + ACTIONS(575), 1, anon_sym_LPAREN, - ACTIONS(659), 1, + ACTIONS(586), 1, anon_sym_LBRACK, - ACTIONS(713), 1, - sym_identifier, - ACTIONS(725), 1, + ACTIONS(752), 1, anon_sym_not, - ACTIONS(727), 1, - anon_sym_lambda, - ACTIONS(729), 1, - anon_sym_await, - STATE(621), 1, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, - STATE(772), 1, + STATE(719), 1, sym_primary_expression, - STATE(1150), 1, + STATE(1080), 1, sym_expression, - ACTIONS(304), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(657), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(721), 5, + ACTIONS(270), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1031), 6, + STATE(1032), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(724), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -43444,61 +43791,62 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [24494] = 20, + [24620] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(288), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(310), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(653), 1, + ACTIONS(658), 1, anon_sym_LPAREN, - ACTIONS(659), 1, + ACTIONS(664), 1, anon_sym_LBRACK, - ACTIONS(713), 1, + ACTIONS(718), 1, sym_identifier, - ACTIONS(725), 1, + ACTIONS(730), 1, anon_sym_not, - ACTIONS(727), 1, + ACTIONS(732), 1, anon_sym_lambda, - ACTIONS(729), 1, + ACTIONS(734), 1, anon_sym_await, - STATE(621), 1, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, - STATE(772), 1, + STATE(780), 1, sym_primary_expression, - STATE(1151), 1, + STATE(1158), 1, sym_expression, - ACTIONS(304), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(657), 3, + ACTIONS(662), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(721), 5, + ACTIONS(720), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1031), 6, + STATE(1032), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(724), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -43516,61 +43864,62 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [24586] = 20, + [24713] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(288), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(310), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(653), 1, + ACTIONS(658), 1, anon_sym_LPAREN, - ACTIONS(659), 1, + ACTIONS(664), 1, anon_sym_LBRACK, - ACTIONS(713), 1, + ACTIONS(718), 1, sym_identifier, - ACTIONS(725), 1, + ACTIONS(730), 1, anon_sym_not, - ACTIONS(727), 1, + ACTIONS(732), 1, anon_sym_lambda, - ACTIONS(729), 1, + ACTIONS(734), 1, anon_sym_await, - STATE(621), 1, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, - STATE(772), 1, + STATE(780), 1, sym_primary_expression, - STATE(1152), 1, + STATE(1159), 1, sym_expression, - ACTIONS(304), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(657), 3, + ACTIONS(662), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(721), 5, + ACTIONS(720), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1031), 6, + STATE(1032), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(724), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -43588,61 +43937,62 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [24678] = 20, + [24806] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(288), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(310), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(653), 1, + ACTIONS(658), 1, anon_sym_LPAREN, - ACTIONS(659), 1, + ACTIONS(664), 1, anon_sym_LBRACK, - ACTIONS(713), 1, + ACTIONS(718), 1, sym_identifier, - ACTIONS(725), 1, + ACTIONS(730), 1, anon_sym_not, - ACTIONS(727), 1, + ACTIONS(732), 1, anon_sym_lambda, - ACTIONS(729), 1, + ACTIONS(734), 1, anon_sym_await, - STATE(621), 1, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, - STATE(772), 1, + STATE(780), 1, sym_primary_expression, - STATE(1153), 1, + STATE(1160), 1, sym_expression, - ACTIONS(304), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(657), 3, + ACTIONS(662), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(721), 5, + ACTIONS(720), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1031), 6, + STATE(1032), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(724), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -43660,61 +44010,62 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [24770] = 20, + [24899] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(288), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(310), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(653), 1, + ACTIONS(658), 1, anon_sym_LPAREN, - ACTIONS(659), 1, + ACTIONS(664), 1, anon_sym_LBRACK, - ACTIONS(713), 1, + ACTIONS(718), 1, sym_identifier, - ACTIONS(725), 1, + ACTIONS(730), 1, anon_sym_not, - ACTIONS(727), 1, + ACTIONS(732), 1, anon_sym_lambda, - ACTIONS(729), 1, + ACTIONS(734), 1, anon_sym_await, - STATE(621), 1, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, - STATE(772), 1, + STATE(780), 1, sym_primary_expression, - STATE(1157), 1, + STATE(1161), 1, sym_expression, - ACTIONS(304), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(657), 3, + ACTIONS(662), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(721), 5, + ACTIONS(720), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1031), 6, + STATE(1032), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(724), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -43732,61 +44083,62 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [24862] = 20, + [24992] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(288), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(310), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(653), 1, + ACTIONS(658), 1, anon_sym_LPAREN, - ACTIONS(659), 1, + ACTIONS(664), 1, anon_sym_LBRACK, - ACTIONS(713), 1, + ACTIONS(718), 1, sym_identifier, - ACTIONS(725), 1, + ACTIONS(730), 1, anon_sym_not, - ACTIONS(727), 1, + ACTIONS(732), 1, anon_sym_lambda, - ACTIONS(729), 1, + ACTIONS(734), 1, anon_sym_await, - STATE(621), 1, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, - STATE(772), 1, + STATE(780), 1, sym_primary_expression, - STATE(1102), 1, + STATE(1162), 1, sym_expression, - ACTIONS(304), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(657), 3, + ACTIONS(662), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(721), 5, + ACTIONS(720), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1031), 6, + STATE(1032), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(724), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -43804,61 +44156,62 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [24954] = 20, + [25085] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(263), 1, - sym_identifier, - ACTIONS(288), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(300), 1, - anon_sym_lambda, - ACTIONS(308), 1, - anon_sym_await, - ACTIONS(310), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(578), 1, + ACTIONS(658), 1, anon_sym_LPAREN, - ACTIONS(591), 1, + ACTIONS(664), 1, anon_sym_LBRACK, - ACTIONS(747), 1, + ACTIONS(718), 1, + sym_identifier, + ACTIONS(730), 1, anon_sym_not, - STATE(621), 1, + ACTIONS(732), 1, + anon_sym_lambda, + ACTIONS(734), 1, + anon_sym_await, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, - STATE(719), 1, + STATE(780), 1, sym_primary_expression, - STATE(1082), 1, + STATE(1163), 1, sym_expression, - ACTIONS(304), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(296), 3, + ACTIONS(662), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(276), 5, + ACTIONS(720), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1031), 6, + STATE(1032), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(724), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -43876,61 +44229,62 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [25046] = 20, + [25178] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(288), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(310), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(653), 1, + ACTIONS(658), 1, anon_sym_LPAREN, - ACTIONS(659), 1, + ACTIONS(664), 1, anon_sym_LBRACK, - ACTIONS(713), 1, + ACTIONS(718), 1, sym_identifier, - ACTIONS(725), 1, + ACTIONS(730), 1, anon_sym_not, - ACTIONS(727), 1, + ACTIONS(732), 1, anon_sym_lambda, - ACTIONS(729), 1, + ACTIONS(734), 1, anon_sym_await, - STATE(621), 1, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, - STATE(772), 1, + STATE(780), 1, sym_primary_expression, - STATE(1030), 1, + STATE(1164), 1, sym_expression, - ACTIONS(304), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(657), 3, + ACTIONS(662), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(721), 5, + ACTIONS(720), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1031), 6, + STATE(1032), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(724), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -43948,61 +44302,62 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [25138] = 20, + [25271] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(263), 1, - sym_identifier, - ACTIONS(288), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(300), 1, - anon_sym_lambda, - ACTIONS(308), 1, - anon_sym_await, - ACTIONS(310), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(578), 1, + ACTIONS(658), 1, anon_sym_LPAREN, - ACTIONS(591), 1, + ACTIONS(664), 1, anon_sym_LBRACK, - ACTIONS(747), 1, + ACTIONS(718), 1, + sym_identifier, + ACTIONS(730), 1, anon_sym_not, - STATE(621), 1, + ACTIONS(732), 1, + anon_sym_lambda, + ACTIONS(734), 1, + anon_sym_await, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, - STATE(719), 1, + STATE(780), 1, sym_primary_expression, - STATE(1335), 1, + STATE(1031), 1, sym_expression, - ACTIONS(304), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(296), 3, + ACTIONS(662), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(276), 5, + ACTIONS(720), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1031), 6, + STATE(1032), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(724), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -44020,61 +44375,62 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [25230] = 20, + [25364] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(609), 1, + ACTIONS(616), 1, anon_sym_LPAREN, - ACTIONS(617), 1, + ACTIONS(622), 1, anon_sym_LBRACK, - ACTIONS(619), 1, + ACTIONS(624), 1, anon_sym_LBRACE, - ACTIONS(625), 1, + ACTIONS(630), 1, sym__string_start, - ACTIONS(627), 1, + ACTIONS(632), 1, sym__template_string_start, - ACTIONS(749), 1, + ACTIONS(754), 1, sym_identifier, - ACTIONS(755), 1, + ACTIONS(760), 1, anon_sym_not, - ACTIONS(757), 1, + ACTIONS(762), 1, anon_sym_lambda, - ACTIONS(759), 1, + ACTIONS(764), 1, anon_sym_await, - STATE(766), 1, + STATE(763), 1, sym_primary_expression, - STATE(767), 1, + STATE(766), 1, sym_string, - STATE(768), 1, + STATE(776), 1, sym_template_string, - STATE(1183), 1, + STATE(1188), 1, sym_expression, - ACTIONS(621), 2, + ACTIONS(626), 2, sym_ellipsis, sym_float, - ACTIONS(615), 3, + ACTIONS(620), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(607), 4, + ACTIONS(612), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(753), 5, + ACTIONS(756), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1129), 6, + STATE(1104), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(924), 17, + STATE(878), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -44092,61 +44448,62 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [25322] = 20, + [25457] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(263), 1, + ACTIONS(268), 1, sym_identifier, - ACTIONS(288), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(300), 1, + ACTIONS(305), 1, anon_sym_lambda, - ACTIONS(308), 1, + ACTIONS(313), 1, anon_sym_await, - ACTIONS(310), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(578), 1, + ACTIONS(575), 1, anon_sym_LPAREN, - ACTIONS(591), 1, + ACTIONS(586), 1, anon_sym_LBRACK, - ACTIONS(747), 1, + ACTIONS(752), 1, anon_sym_not, - STATE(621), 1, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, STATE(719), 1, sym_primary_expression, - STATE(1339), 1, + STATE(1336), 1, sym_expression, - ACTIONS(304), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(296), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(276), 5, + ACTIONS(270), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1031), 6, + STATE(1032), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(724), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -44164,61 +44521,62 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [25414] = 20, + [25550] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(263), 1, + ACTIONS(268), 1, sym_identifier, - ACTIONS(288), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(300), 1, + ACTIONS(305), 1, anon_sym_lambda, - ACTIONS(308), 1, + ACTIONS(313), 1, anon_sym_await, - ACTIONS(310), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(578), 1, + ACTIONS(575), 1, anon_sym_LPAREN, - ACTIONS(591), 1, + ACTIONS(586), 1, anon_sym_LBRACK, - ACTIONS(747), 1, + ACTIONS(752), 1, anon_sym_not, - STATE(621), 1, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, STATE(719), 1, sym_primary_expression, - STATE(1089), 1, + STATE(1260), 1, sym_expression, - ACTIONS(304), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(296), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(276), 5, + ACTIONS(270), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1031), 6, + STATE(1032), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(724), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -44236,61 +44594,62 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [25506] = 20, + [25643] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(263), 1, + ACTIONS(268), 1, sym_identifier, - ACTIONS(288), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(300), 1, + ACTIONS(305), 1, anon_sym_lambda, - ACTIONS(308), 1, + ACTIONS(313), 1, anon_sym_await, - ACTIONS(310), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(578), 1, + ACTIONS(575), 1, anon_sym_LPAREN, - ACTIONS(591), 1, + ACTIONS(586), 1, anon_sym_LBRACK, - ACTIONS(747), 1, + ACTIONS(752), 1, anon_sym_not, - STATE(621), 1, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, STATE(719), 1, sym_primary_expression, - STATE(1366), 1, + STATE(1345), 1, sym_expression, - ACTIONS(304), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(296), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(276), 5, + ACTIONS(270), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1031), 6, + STATE(1032), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(724), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -44308,61 +44667,62 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [25598] = 20, + [25736] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(263), 1, + ACTIONS(268), 1, sym_identifier, - ACTIONS(288), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(300), 1, + ACTIONS(305), 1, anon_sym_lambda, - ACTIONS(308), 1, + ACTIONS(313), 1, anon_sym_await, - ACTIONS(310), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(578), 1, + ACTIONS(575), 1, anon_sym_LPAREN, - ACTIONS(591), 1, + ACTIONS(586), 1, anon_sym_LBRACK, - ACTIONS(747), 1, + ACTIONS(752), 1, anon_sym_not, - STATE(621), 1, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, STATE(719), 1, sym_primary_expression, - STATE(1345), 1, + STATE(1369), 1, sym_expression, - ACTIONS(304), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(296), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(276), 5, + ACTIONS(270), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1031), 6, + STATE(1032), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(724), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -44380,61 +44740,62 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [25690] = 20, + [25829] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(263), 1, + ACTIONS(268), 1, sym_identifier, - ACTIONS(288), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(300), 1, + ACTIONS(305), 1, anon_sym_lambda, - ACTIONS(308), 1, + ACTIONS(313), 1, anon_sym_await, - ACTIONS(310), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(578), 1, + ACTIONS(575), 1, anon_sym_LPAREN, - ACTIONS(591), 1, + ACTIONS(586), 1, anon_sym_LBRACK, - ACTIONS(747), 1, + ACTIONS(752), 1, anon_sym_not, - STATE(621), 1, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, STATE(719), 1, sym_primary_expression, - STATE(1346), 1, + STATE(1349), 1, sym_expression, - ACTIONS(304), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(296), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(276), 5, + ACTIONS(270), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1031), 6, + STATE(1032), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(724), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -44452,61 +44813,62 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [25782] = 20, + [25922] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(263), 1, + ACTIONS(268), 1, sym_identifier, - ACTIONS(288), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(300), 1, + ACTIONS(305), 1, anon_sym_lambda, - ACTIONS(308), 1, + ACTIONS(313), 1, anon_sym_await, - ACTIONS(310), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(578), 1, + ACTIONS(575), 1, anon_sym_LPAREN, - ACTIONS(591), 1, + ACTIONS(586), 1, anon_sym_LBRACK, - ACTIONS(747), 1, + ACTIONS(752), 1, anon_sym_not, - STATE(621), 1, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, STATE(719), 1, sym_primary_expression, - STATE(1347), 1, + STATE(1351), 1, sym_expression, - ACTIONS(304), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(296), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(276), 5, + ACTIONS(270), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1031), 6, + STATE(1032), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(724), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -44524,61 +44886,62 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [25874] = 20, + [26015] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(263), 1, + ACTIONS(268), 1, sym_identifier, - ACTIONS(288), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(300), 1, + ACTIONS(305), 1, anon_sym_lambda, - ACTIONS(308), 1, + ACTIONS(313), 1, anon_sym_await, - ACTIONS(310), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(578), 1, + ACTIONS(575), 1, anon_sym_LPAREN, - ACTIONS(591), 1, + ACTIONS(586), 1, anon_sym_LBRACK, - ACTIONS(747), 1, + ACTIONS(752), 1, anon_sym_not, - STATE(621), 1, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, STATE(719), 1, sym_primary_expression, - STATE(1238), 1, + STATE(1352), 1, sym_expression, - ACTIONS(304), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(296), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(276), 5, + ACTIONS(270), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1031), 6, + STATE(1032), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(724), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -44596,61 +44959,62 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [25966] = 20, + [26108] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(263), 1, + ACTIONS(268), 1, sym_identifier, - ACTIONS(288), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(300), 1, + ACTIONS(305), 1, anon_sym_lambda, - ACTIONS(308), 1, + ACTIONS(313), 1, anon_sym_await, - ACTIONS(310), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(578), 1, + ACTIONS(575), 1, anon_sym_LPAREN, - ACTIONS(591), 1, + ACTIONS(586), 1, anon_sym_LBRACK, - ACTIONS(747), 1, + ACTIONS(752), 1, anon_sym_not, - STATE(621), 1, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, STATE(719), 1, sym_primary_expression, - STATE(1063), 1, + STATE(1343), 1, sym_expression, - ACTIONS(304), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(296), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(276), 5, + ACTIONS(270), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1031), 6, + STATE(1032), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(724), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -44668,61 +45032,62 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [26058] = 20, + [26201] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(263), 1, + ACTIONS(268), 1, sym_identifier, - ACTIONS(288), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(300), 1, + ACTIONS(305), 1, anon_sym_lambda, - ACTIONS(308), 1, + ACTIONS(313), 1, anon_sym_await, - ACTIONS(310), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(578), 1, + ACTIONS(575), 1, anon_sym_LPAREN, - ACTIONS(591), 1, + ACTIONS(586), 1, anon_sym_LBRACK, - ACTIONS(747), 1, + ACTIONS(752), 1, anon_sym_not, - STATE(621), 1, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, STATE(719), 1, sym_primary_expression, - STATE(1065), 1, + STATE(1327), 1, sym_expression, - ACTIONS(304), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(296), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(276), 5, + ACTIONS(270), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1031), 6, + STATE(1032), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(724), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -44740,61 +45105,62 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [26150] = 20, + [26294] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(263), 1, + ACTIONS(268), 1, sym_identifier, - ACTIONS(288), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(300), 1, + ACTIONS(305), 1, anon_sym_lambda, - ACTIONS(308), 1, + ACTIONS(313), 1, anon_sym_await, - ACTIONS(310), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(578), 1, + ACTIONS(575), 1, anon_sym_LPAREN, - ACTIONS(591), 1, + ACTIONS(586), 1, anon_sym_LBRACK, - ACTIONS(747), 1, + ACTIONS(752), 1, anon_sym_not, - STATE(621), 1, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, STATE(719), 1, sym_primary_expression, - STATE(1070), 1, + STATE(1081), 1, sym_expression, - ACTIONS(304), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(296), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(276), 5, + ACTIONS(270), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1031), 6, + STATE(1032), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(724), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -44812,61 +45178,62 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [26242] = 20, + [26387] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(263), 1, - sym_identifier, - ACTIONS(288), 1, + ACTIONS(53), 1, anon_sym_LBRACE, - ACTIONS(300), 1, + ACTIONS(71), 1, + anon_sym_not, + ACTIONS(73), 1, anon_sym_lambda, - ACTIONS(308), 1, - anon_sym_await, - ACTIONS(310), 1, + ACTIONS(83), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(85), 1, sym__template_string_start, - ACTIONS(578), 1, + ACTIONS(349), 1, + sym_identifier, + ACTIONS(355), 1, + anon_sym_await, + ACTIONS(594), 1, anon_sym_LPAREN, - ACTIONS(591), 1, + ACTIONS(598), 1, anon_sym_LBRACK, - ACTIONS(747), 1, - anon_sym_not, - STATE(621), 1, - sym_string, - STATE(624), 1, - sym_template_string, - STATE(719), 1, + STATE(765), 1, sym_primary_expression, - STATE(1350), 1, + STATE(769), 1, + sym_template_string, + STATE(775), 1, + sym_string, + STATE(1146), 1, sym_expression, - ACTIONS(304), 2, + ACTIONS(77), 2, sym_ellipsis, sym_float, - ACTIONS(296), 3, + ACTIONS(49), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 4, + ACTIONS(79), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(276), 5, + ACTIONS(351), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1031), 6, + STATE(1156), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(724), 17, + STATE(920), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -44884,61 +45251,62 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [26334] = 20, + [26480] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(631), 1, - anon_sym_LPAREN, - ACTIONS(639), 1, - anon_sym_LBRACK, - ACTIONS(641), 1, + ACTIONS(268), 1, + sym_identifier, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(647), 1, + ACTIONS(305), 1, + anon_sym_lambda, + ACTIONS(313), 1, + anon_sym_await, + ACTIONS(315), 1, sym__string_start, - ACTIONS(649), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(961), 1, - sym_identifier, - ACTIONS(969), 1, + ACTIONS(575), 1, + anon_sym_LPAREN, + ACTIONS(586), 1, + anon_sym_LBRACK, + ACTIONS(752), 1, anon_sym_not, - ACTIONS(971), 1, - anon_sym_lambda, - ACTIONS(973), 1, - anon_sym_await, - STATE(794), 1, + STATE(645), 1, sym_string, - STATE(795), 1, + STATE(658), 1, sym_template_string, - STATE(822), 1, + STATE(719), 1, sym_primary_expression, - STATE(1243), 1, + STATE(1355), 1, sym_expression, - ACTIONS(643), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(637), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(629), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(965), 5, + ACTIONS(270), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1176), 6, + STATE(1032), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(953), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -44956,61 +45324,62 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [26426] = 20, + [26573] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(51), 1, + ACTIONS(640), 1, + anon_sym_LPAREN, + ACTIONS(646), 1, + anon_sym_LBRACK, + ACTIONS(648), 1, anon_sym_LBRACE, - ACTIONS(69), 1, - anon_sym_not, - ACTIONS(71), 1, - anon_sym_lambda, - ACTIONS(81), 1, + ACTIONS(654), 1, sym__string_start, - ACTIONS(83), 1, + ACTIONS(656), 1, sym__template_string_start, - ACTIONS(314), 1, + ACTIONS(952), 1, sym_identifier, - ACTIONS(320), 1, + ACTIONS(960), 1, + anon_sym_not, + ACTIONS(962), 1, + anon_sym_lambda, + ACTIONS(964), 1, anon_sym_await, - ACTIONS(568), 1, - anon_sym_LPAREN, - ACTIONS(574), 1, - anon_sym_LBRACK, - STATE(763), 1, - sym_template_string, - STATE(779), 1, + STATE(792), 1, sym_primary_expression, - STATE(782), 1, + STATE(793), 1, sym_string, - STATE(1191), 1, + STATE(794), 1, + sym_template_string, + STATE(1253), 1, sym_expression, - ACTIONS(75), 2, + ACTIONS(650), 2, sym_ellipsis, sym_float, - ACTIONS(47), 3, + ACTIONS(644), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(77), 4, + ACTIONS(636), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(316), 5, + ACTIONS(954), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1158), 6, + STATE(1211), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(908), 17, + STATE(970), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -45028,133 +45397,125 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [26518] = 20, + [26666] = 10, ACTIONS(3), 1, sym_comment, - ACTIONS(51), 1, - anon_sym_LBRACE, - ACTIONS(69), 1, - anon_sym_not, - ACTIONS(71), 1, - anon_sym_lambda, - ACTIONS(81), 1, - sym__string_start, - ACTIONS(83), 1, - sym__template_string_start, - ACTIONS(314), 1, - sym_identifier, - ACTIONS(320), 1, - anon_sym_await, - ACTIONS(568), 1, - anon_sym_LPAREN, - ACTIONS(574), 1, - anon_sym_LBRACK, - STATE(763), 1, - sym_template_string, - STATE(779), 1, - sym_primary_expression, - STATE(782), 1, - sym_string, - STATE(1227), 1, - sym_expression, - ACTIONS(75), 2, - sym_ellipsis, - sym_float, - ACTIONS(47), 3, + ACTIONS(277), 1, + anon_sym_COMMA, + ACTIONS(283), 1, + anon_sym_COLON_EQ, + ACTIONS(1100), 1, + anon_sym_for, + ACTIONS(1102), 1, + anon_sym_with, + ACTIONS(1104), 1, + anon_sym_def, + ACTIONS(285), 2, + anon_sym_COLON, + anon_sym_EQ, + ACTIONS(307), 13, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_AT_EQ, + anon_sym_SLASH_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_STAR_STAR_EQ, + anon_sym_GT_GT_EQ, + anon_sym_LT_LT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + ACTIONS(272), 15, + anon_sym_STAR, + anon_sym_GT_GT, + anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, - anon_sym_TILDE, - ACTIONS(77), 4, - sym_integer, - sym_true, - sym_false, - sym_none, - ACTIONS(316), 5, - anon_sym_print, - anon_sym_async, - anon_sym_match, - anon_sym_exec, - anon_sym_type, - STATE(1158), 6, - sym_named_expression, - sym_not_operator, - sym_boolean_operator, - sym_comparison_operator, - sym_lambda, - sym_conditional_expression, - STATE(908), 17, - sym_binary_operator, - sym_unary_operator, - sym_attribute, - sym_subscript, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [26610] = 20, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_SLASH, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT, + anon_sym_GT, + ACTIONS(303), 16, + sym__newline, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_if, + anon_sym_in, + anon_sym_LBRACK, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + anon_sym_SEMI, + [26739] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(263), 1, + ACTIONS(268), 1, sym_identifier, - ACTIONS(288), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(300), 1, + ACTIONS(305), 1, anon_sym_lambda, - ACTIONS(308), 1, + ACTIONS(313), 1, anon_sym_await, - ACTIONS(310), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(578), 1, + ACTIONS(575), 1, anon_sym_LPAREN, - ACTIONS(591), 1, + ACTIONS(586), 1, anon_sym_LBRACK, - ACTIONS(747), 1, + ACTIONS(752), 1, anon_sym_not, - STATE(621), 1, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, STATE(719), 1, sym_primary_expression, - STATE(1351), 1, + STATE(1356), 1, sym_expression, - ACTIONS(304), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(296), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(276), 5, + ACTIONS(270), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1031), 6, + STATE(1032), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(724), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -45172,61 +45533,62 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [26702] = 20, + [26832] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(263), 1, + ACTIONS(268), 1, sym_identifier, - ACTIONS(288), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(300), 1, + ACTIONS(305), 1, anon_sym_lambda, - ACTIONS(308), 1, + ACTIONS(313), 1, anon_sym_await, - ACTIONS(310), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(578), 1, + ACTIONS(575), 1, anon_sym_LPAREN, - ACTIONS(591), 1, + ACTIONS(586), 1, anon_sym_LBRACK, - ACTIONS(747), 1, + ACTIONS(752), 1, anon_sym_not, - STATE(621), 1, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, STATE(719), 1, sym_primary_expression, - STATE(1352), 1, + STATE(1357), 1, sym_expression, - ACTIONS(304), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(296), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(276), 5, + ACTIONS(270), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1031), 6, + STATE(1032), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(724), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -45244,61 +45606,125 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [26794] = 20, + [26925] = 10, ACTIONS(3), 1, sym_comment, - ACTIONS(51), 1, - anon_sym_LBRACE, - ACTIONS(69), 1, + ACTIONS(277), 1, + anon_sym_COMMA, + ACTIONS(283), 1, + anon_sym_COLON_EQ, + ACTIONS(1106), 1, + anon_sym_for, + ACTIONS(1108), 1, + anon_sym_with, + ACTIONS(1110), 1, + anon_sym_def, + ACTIONS(285), 2, + anon_sym_COLON, + anon_sym_EQ, + ACTIONS(307), 13, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_AT_EQ, + anon_sym_SLASH_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_STAR_STAR_EQ, + anon_sym_GT_GT_EQ, + anon_sym_LT_LT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + ACTIONS(272), 15, + anon_sym_STAR, + anon_sym_GT_GT, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_SLASH, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT, + anon_sym_GT, + ACTIONS(303), 16, + sym__newline, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_if, + anon_sym_in, + anon_sym_LBRACK, anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + anon_sym_SEMI, + [26998] = 20, + ACTIONS(3), 1, + sym_comment, + ACTIONS(53), 1, + anon_sym_LBRACE, ACTIONS(71), 1, + anon_sym_not, + ACTIONS(73), 1, anon_sym_lambda, - ACTIONS(81), 1, - sym__string_start, ACTIONS(83), 1, + sym__string_start, + ACTIONS(85), 1, sym__template_string_start, - ACTIONS(314), 1, + ACTIONS(349), 1, sym_identifier, - ACTIONS(320), 1, + ACTIONS(355), 1, anon_sym_await, - ACTIONS(568), 1, + ACTIONS(594), 1, anon_sym_LPAREN, - ACTIONS(574), 1, + ACTIONS(598), 1, anon_sym_LBRACK, - STATE(763), 1, - sym_template_string, - STATE(779), 1, + STATE(765), 1, sym_primary_expression, - STATE(782), 1, + STATE(769), 1, + sym_template_string, + STATE(775), 1, sym_string, - STATE(1163), 1, + STATE(1242), 1, sym_expression, - ACTIONS(75), 2, + ACTIONS(77), 2, sym_ellipsis, sym_float, - ACTIONS(47), 3, + ACTIONS(49), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(77), 4, + ACTIONS(79), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(316), 5, + ACTIONS(351), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1158), 6, + STATE(1156), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(908), 17, + STATE(920), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -45316,13 +45742,13 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [26886] = 3, + [27091] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1109), 13, + ACTIONS(1114), 13, + sym__dedent, sym__string_start, sym__template_string_start, - ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -45333,7 +45759,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1111), 36, + ACTIONS(1112), 37, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -45370,10 +45797,15 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [26943] = 3, + [27149] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(1115), 13, + ACTIONS(1120), 1, + anon_sym_case, + STATE(436), 2, + sym_case_block, + aux_sym_cases_repeat1, + ACTIONS(1118), 13, sym__dedent, sym__string_start, sym__template_string_start, @@ -45387,7 +45819,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1113), 36, + ACTIONS(1116), 34, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -45400,13 +45833,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_break, anon_sym_continue, anon_sym_if, - anon_sym_else, anon_sym_async, anon_sym_for, anon_sym_while, anon_sym_try, - anon_sym_except, - anon_sym_finally, anon_sym_with, anon_sym_match, anon_sym_def, @@ -45424,13 +45854,18 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [27000] = 3, + [27211] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(1119), 13, - sym__dedent, + ACTIONS(1127), 1, + anon_sym_case, + STATE(458), 2, + sym_case_block, + aux_sym_cases_repeat1, + ACTIONS(1123), 13, sym__string_start, sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -45441,7 +45876,60 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1117), 36, + ACTIONS(1125), 34, + anon_sym_lazy, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, + anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, + anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_with, + anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, + anon_sym_exec, + anon_sym_type, + anon_sym_class, + anon_sym_not, + anon_sym_lambda, + anon_sym_yield, + sym_integer, + sym_identifier, + anon_sym_await, + sym_true, + sym_false, + sym_none, + [27273] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1129), 13, + sym__string_start, + sym__template_string_start, + ts_builtin_sym_end, + anon_sym_LPAREN, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_TILDE, + sym_ellipsis, + sym_float, + ACTIONS(1131), 37, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -45478,13 +45966,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [27057] = 3, + [27331] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1123), 13, - sym__dedent, + ACTIONS(1133), 13, sym__string_start, sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -45495,7 +45983,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1121), 36, + ACTIONS(1135), 37, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -45532,10 +46021,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [27114] = 3, + [27389] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1127), 13, + ACTIONS(1139), 13, sym__dedent, sym__string_start, sym__template_string_start, @@ -45549,7 +46038,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1125), 36, + ACTIONS(1137), 37, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -45586,10 +46076,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [27171] = 3, + [27447] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1131), 13, + ACTIONS(1129), 13, sym__dedent, sym__string_start, sym__template_string_start, @@ -45603,7 +46093,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1129), 36, + ACTIONS(1131), 37, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -45640,10 +46131,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [27228] = 3, + [27505] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1133), 13, + ACTIONS(1141), 13, sym__string_start, sym__template_string_start, ts_builtin_sym_end, @@ -45657,7 +46148,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1135), 36, + ACTIONS(1143), 37, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -45694,10 +46186,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [27285] = 3, + [27563] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1139), 13, + ACTIONS(1133), 13, sym__dedent, sym__string_start, sym__template_string_start, @@ -45711,7 +46203,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1137), 36, + ACTIONS(1135), 37, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -45748,10 +46241,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [27342] = 3, + [27621] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1109), 13, + ACTIONS(1147), 13, sym__dedent, sym__string_start, sym__template_string_start, @@ -45765,7 +46258,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1111), 36, + ACTIONS(1145), 37, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -45802,13 +46296,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [27399] = 3, + [27679] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1133), 13, - sym__dedent, + ACTIONS(1149), 13, sym__string_start, sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -45819,7 +46313,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1135), 36, + ACTIONS(1151), 37, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -45856,10 +46351,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [27456] = 3, + [27737] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1143), 13, + ACTIONS(1155), 13, sym__dedent, sym__string_start, sym__template_string_start, @@ -45873,7 +46368,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1141), 36, + ACTIONS(1153), 37, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -45910,10 +46406,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [27513] = 3, + [27795] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1147), 13, + ACTIONS(1159), 13, sym__dedent, sym__string_start, sym__template_string_start, @@ -45927,7 +46423,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1145), 36, + ACTIONS(1157), 37, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -45964,10 +46461,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [27570] = 3, + [27853] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1143), 13, + ACTIONS(1155), 13, sym__string_start, sym__template_string_start, ts_builtin_sym_end, @@ -45981,7 +46478,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1141), 36, + ACTIONS(1153), 37, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -46018,10 +46516,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [27627] = 3, + [27911] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1147), 13, + ACTIONS(1159), 13, sym__string_start, sym__template_string_start, ts_builtin_sym_end, @@ -46035,7 +46533,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1145), 36, + ACTIONS(1157), 37, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -46072,69 +46571,79 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [27684] = 5, + [27969] = 9, ACTIONS(3), 1, sym_comment, - ACTIONS(1153), 1, - anon_sym_case, - STATE(450), 2, - sym_case_block, - aux_sym_cases_repeat1, - ACTIONS(1149), 13, - sym__string_start, - sym__template_string_start, - ts_builtin_sym_end, - anon_sym_LPAREN, + ACTIONS(277), 1, + anon_sym_COMMA, + ACTIONS(283), 1, + anon_sym_COLON_EQ, + ACTIONS(1161), 1, + anon_sym_import, + ACTIONS(1163), 1, + anon_sym_from, + ACTIONS(285), 2, + anon_sym_COLON, + anon_sym_EQ, + ACTIONS(307), 13, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_AT_EQ, + anon_sym_SLASH_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_STAR_STAR_EQ, + anon_sym_GT_GT_EQ, + anon_sym_LT_LT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + ACTIONS(272), 15, + anon_sym_STAR, + anon_sym_GT_GT, + anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_LBRACE, anon_sym_STAR_STAR, anon_sym_AT, - anon_sym_TILDE, - sym_ellipsis, - sym_float, - ACTIONS(1151), 33, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, - anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, + anon_sym_SLASH, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT, + anon_sym_GT, + ACTIONS(303), 16, + sym__newline, + anon_sym_DOT, + anon_sym_LPAREN, anon_sym_if, - anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_with, - anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, - anon_sym_exec, - anon_sym_type, - anon_sym_class, + anon_sym_in, + anon_sym_LBRACK, anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, - anon_sym_await, - sym_true, - sym_false, - sym_none, - [27745] = 3, + anon_sym_and, + anon_sym_or, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + anon_sym_SEMI, + [28039] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(1127), 13, + ACTIONS(1165), 1, + anon_sym_case, + STATE(436), 2, + sym_case_block, + aux_sym_cases_repeat1, + ACTIONS(1123), 13, + sym__dedent, sym__string_start, sym__template_string_start, - ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -46145,7 +46654,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1125), 36, + ACTIONS(1125), 34, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -46158,13 +46668,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_break, anon_sym_continue, anon_sym_if, - anon_sym_else, anon_sym_async, anon_sym_for, anon_sym_while, anon_sym_try, - anon_sym_except, - anon_sym_finally, anon_sym_with, anon_sym_match, anon_sym_def, @@ -46182,74 +46689,74 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [27802] = 5, + [28101] = 9, ACTIONS(3), 1, sym_comment, - ACTIONS(1160), 1, - anon_sym_case, - STATE(460), 2, - sym_case_block, - aux_sym_cases_repeat1, - ACTIONS(1158), 13, - sym__dedent, + ACTIONS(277), 1, + anon_sym_COMMA, + ACTIONS(283), 1, + anon_sym_COLON_EQ, + ACTIONS(1167), 1, sym__string_start, - sym__template_string_start, - anon_sym_LPAREN, + STATE(1465), 1, + sym_string, + ACTIONS(285), 2, + anon_sym_COLON, + anon_sym_EQ, + ACTIONS(307), 13, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_AT_EQ, + anon_sym_SLASH_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_STAR_STAR_EQ, + anon_sym_GT_GT_EQ, + anon_sym_LT_LT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + ACTIONS(272), 15, + anon_sym_STAR, + anon_sym_GT_GT, + anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_LBRACE, anon_sym_STAR_STAR, anon_sym_AT, - anon_sym_TILDE, - sym_ellipsis, - sym_float, - ACTIONS(1156), 33, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, - anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, + anon_sym_SLASH, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT, + anon_sym_GT, + ACTIONS(303), 16, + sym__newline, + anon_sym_DOT, + anon_sym_LPAREN, anon_sym_if, - anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_with, - anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, - anon_sym_exec, - anon_sym_type, - anon_sym_class, + anon_sym_in, + anon_sym_LBRACK, anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, - anon_sym_await, - sym_true, - sym_false, - sym_none, - [27863] = 5, + anon_sym_and, + anon_sym_or, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + anon_sym_SEMI, + [28171] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1162), 1, - anon_sym_case, - STATE(450), 2, - sym_case_block, - aux_sym_cases_repeat1, - ACTIONS(1158), 13, + ACTIONS(1141), 13, + sym__dedent, sym__string_start, sym__template_string_start, - ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -46260,7 +46767,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1156), 33, + ACTIONS(1143), 37, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -46273,10 +46781,13 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_break, anon_sym_continue, anon_sym_if, + anon_sym_else, anon_sym_async, anon_sym_for, anon_sym_while, anon_sym_try, + anon_sym_except, + anon_sym_finally, anon_sym_with, anon_sym_match, anon_sym_def, @@ -46294,10 +46805,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [27924] = 3, + [28229] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1115), 13, + ACTIONS(1147), 13, sym__string_start, sym__template_string_start, ts_builtin_sym_end, @@ -46311,7 +46822,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1113), 36, + ACTIONS(1145), 37, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -46348,13 +46860,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [27981] = 3, + [28287] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1131), 13, + ACTIONS(1149), 13, + sym__dedent, sym__string_start, sym__template_string_start, - ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -46365,7 +46877,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1129), 36, + ACTIONS(1151), 37, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -46402,10 +46915,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [28038] = 3, + [28345] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1119), 13, + ACTIONS(1114), 13, sym__string_start, sym__template_string_start, ts_builtin_sym_end, @@ -46419,7 +46932,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1117), 36, + ACTIONS(1112), 37, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -46456,10 +46970,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [28095] = 3, + [28403] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1139), 13, + ACTIONS(1169), 13, sym__string_start, sym__template_string_start, ts_builtin_sym_end, @@ -46473,7 +46987,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1137), 36, + ACTIONS(1171), 37, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -46510,69 +47025,15 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [28152] = 8, + [28461] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(270), 1, - anon_sym_COMMA, - ACTIONS(278), 1, - anon_sym_COLON_EQ, - ACTIONS(1164), 1, - sym_identifier, - ACTIONS(280), 2, - anon_sym_COLON, - anon_sym_EQ, - ACTIONS(298), 10, - sym__newline, - anon_sym_DOT, - anon_sym_LPAREN, - anon_sym_LBRACK, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - anon_sym_SEMI, - ACTIONS(302), 13, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_STAR_EQ, - anon_sym_SLASH_EQ, - anon_sym_AT_EQ, - anon_sym_SLASH_SLASH_EQ, - anon_sym_PERCENT_EQ, - anon_sym_STAR_STAR_EQ, - anon_sym_GT_GT_EQ, - anon_sym_LT_LT_EQ, - anon_sym_AMP_EQ, - anon_sym_CARET_EQ, - anon_sym_PIPE_EQ, - ACTIONS(265), 21, - anon_sym_STAR, - anon_sym_GT_GT, - anon_sym_if, - anon_sym_in, - anon_sym_PIPE, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_not, - anon_sym_and, - anon_sym_or, - anon_sym_SLASH, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, - anon_sym_LT, - anon_sym_GT, - anon_sym_is, - [28219] = 3, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1123), 13, + ACTIONS(1173), 1, + anon_sym_case, + STATE(458), 2, + sym_case_block, + aux_sym_cases_repeat1, + ACTIONS(1118), 13, sym__string_start, sym__template_string_start, ts_builtin_sym_end, @@ -46586,7 +47047,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1121), 36, + ACTIONS(1116), 34, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -46599,13 +47061,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_break, anon_sym_continue, anon_sym_if, - anon_sym_else, anon_sym_async, anon_sym_for, anon_sym_while, anon_sym_try, - anon_sym_except, - anon_sym_finally, anon_sym_with, anon_sym_match, anon_sym_def, @@ -46623,15 +47082,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [28276] = 5, + [28523] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1166), 1, - anon_sym_case, - STATE(460), 2, - sym_case_block, - aux_sym_cases_repeat1, - ACTIONS(1149), 13, + ACTIONS(1169), 13, sym__dedent, sym__string_start, sym__template_string_start, @@ -46645,7 +47099,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1151), 33, + ACTIONS(1171), 37, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -46658,10 +47113,13 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_break, anon_sym_continue, anon_sym_if, + anon_sym_else, anon_sym_async, anon_sym_for, anon_sym_while, anon_sym_try, + anon_sym_except, + anon_sym_finally, anon_sym_with, anon_sym_match, anon_sym_def, @@ -46679,138 +47137,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [28337] = 21, - ACTIONS(3), 1, - sym_comment, - ACTIONS(288), 1, - anon_sym_LBRACE, - ACTIONS(310), 1, - sym__string_start, - ACTIONS(312), 1, - sym__template_string_start, - ACTIONS(663), 1, - sym_identifier, - ACTIONS(665), 1, - anon_sym_LPAREN, - ACTIONS(675), 1, - anon_sym_LBRACK, - ACTIONS(677), 1, - anon_sym_await, - ACTIONS(1171), 1, - anon_sym_STAR, - STATE(621), 1, - sym_string, - STATE(624), 1, - sym_template_string, - STATE(1005), 1, - sym_pattern, - STATE(1012), 1, - sym_primary_expression, - ACTIONS(304), 2, - sym_ellipsis, - sym_float, - ACTIONS(1169), 2, - anon_sym_RPAREN, - anon_sym_RBRACK, - STATE(849), 2, - sym_attribute, - sym_subscript, - ACTIONS(296), 3, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_TILDE, - STATE(999), 3, - sym_tuple_pattern, - sym_list_pattern, - sym_list_splat_pattern, - ACTIONS(306), 4, - sym_integer, - sym_true, - sym_false, - sym_none, - ACTIONS(669), 5, - anon_sym_print, - anon_sym_async, - anon_sym_match, - anon_sym_exec, - anon_sym_type, - STATE(724), 15, - sym_binary_operator, - sym_unary_operator, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [28429] = 7, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1175), 1, - anon_sym_COMMA, - ACTIONS(1180), 1, - anon_sym_COLON_EQ, - ACTIONS(1182), 2, - anon_sym_COLON, - anon_sym_EQ, - ACTIONS(1184), 13, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_STAR_EQ, - anon_sym_SLASH_EQ, - anon_sym_AT_EQ, - anon_sym_SLASH_SLASH_EQ, - anon_sym_PERCENT_EQ, - anon_sym_STAR_STAR_EQ, - anon_sym_GT_GT_EQ, - anon_sym_LT_LT_EQ, - anon_sym_AMP_EQ, - anon_sym_CARET_EQ, - anon_sym_PIPE_EQ, - ACTIONS(1178), 15, - anon_sym_STAR, - anon_sym_GT_GT, - anon_sym_PIPE, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_SLASH, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1173), 16, - sym__newline, - anon_sym_DOT, - anon_sym_LPAREN, - anon_sym_if, - anon_sym_in, - anon_sym_LBRACK, - anon_sym_not, - anon_sym_and, - anon_sym_or, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - anon_sym_is, - anon_sym_SEMI, - [28493] = 3, + [28581] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1186), 13, + ACTIONS(1139), 13, sym__string_start, sym__template_string_start, ts_builtin_sym_end, @@ -46824,7 +47154,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1188), 35, + ACTIONS(1137), 37, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -46837,12 +47168,13 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_break, anon_sym_continue, anon_sym_if, - anon_sym_elif, anon_sym_else, anon_sym_async, anon_sym_for, anon_sym_while, anon_sym_try, + anon_sym_except, + anon_sym_finally, anon_sym_with, anon_sym_match, anon_sym_def, @@ -46860,10 +47192,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [28549] = 3, + [28639] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1190), 13, + ACTIONS(1176), 13, sym__string_start, sym__template_string_start, ts_builtin_sym_end, @@ -46877,7 +47209,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1192), 35, + ACTIONS(1178), 36, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -46913,74 +47246,17 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [28605] = 7, + [28696] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(270), 1, - anon_sym_COMMA, - ACTIONS(278), 1, - anon_sym_COLON_EQ, - ACTIONS(280), 2, - anon_sym_COLON, - anon_sym_EQ, - ACTIONS(302), 13, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_STAR_EQ, - anon_sym_SLASH_EQ, - anon_sym_AT_EQ, - anon_sym_SLASH_SLASH_EQ, - anon_sym_PERCENT_EQ, - anon_sym_STAR_STAR_EQ, - anon_sym_GT_GT_EQ, - anon_sym_LT_LT_EQ, - anon_sym_AMP_EQ, - anon_sym_CARET_EQ, - anon_sym_PIPE_EQ, - ACTIONS(265), 15, - anon_sym_STAR, - anon_sym_GT_GT, - anon_sym_PIPE, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_SLASH, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, - anon_sym_LT, - anon_sym_GT, - ACTIONS(298), 16, - sym__newline, - anon_sym_DOT, - anon_sym_LPAREN, - anon_sym_if, - anon_sym_in, - anon_sym_LBRACK, - anon_sym_not, - anon_sym_and, - anon_sym_or, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - anon_sym_is, - anon_sym_SEMI, - [28669] = 5, - ACTIONS(3), 1, - sym_comment, - ACTIONS(941), 1, + ACTIONS(966), 1, anon_sym_else, STATE(600), 1, sym_else_clause, - ACTIONS(1196), 13, - sym__dedent, + ACTIONS(1180), 13, sym__string_start, sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -46991,7 +47267,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1194), 33, + ACTIONS(1182), 34, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -47025,85 +47302,70 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [28729] = 21, + [28757] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(288), 1, - anon_sym_LBRACE, - ACTIONS(310), 1, + ACTIONS(946), 1, + anon_sym_else, + STATE(519), 1, + sym_else_clause, + ACTIONS(1186), 13, + sym__dedent, sym__string_start, - ACTIONS(312), 1, sym__template_string_start, - ACTIONS(663), 1, - sym_identifier, - ACTIONS(665), 1, anon_sym_LPAREN, - ACTIONS(675), 1, - anon_sym_LBRACK, - ACTIONS(677), 1, - anon_sym_await, - ACTIONS(1171), 1, - anon_sym_STAR, - STATE(621), 1, - sym_string, - STATE(624), 1, - sym_template_string, - STATE(1005), 1, - sym_pattern, - STATE(1012), 1, - sym_primary_expression, - ACTIONS(304), 2, - sym_ellipsis, - sym_float, - ACTIONS(1198), 2, - anon_sym_RPAREN, - anon_sym_RBRACK, - STATE(849), 2, - sym_attribute, - sym_subscript, - ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, anon_sym_TILDE, - STATE(999), 3, - sym_tuple_pattern, - sym_list_pattern, - sym_list_splat_pattern, - ACTIONS(306), 4, - sym_integer, - sym_true, - sym_false, - sym_none, - ACTIONS(669), 5, + sym_ellipsis, + sym_float, + ACTIONS(1184), 34, + anon_sym_lazy, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_with, anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - STATE(724), 15, - sym_binary_operator, - sym_unary_operator, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [28821] = 5, + anon_sym_class, + anon_sym_not, + anon_sym_lambda, + anon_sym_yield, + sym_integer, + sym_identifier, + anon_sym_await, + sym_true, + sym_false, + sym_none, + [28818] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(953), 1, - anon_sym_finally, - STATE(517), 1, - sym_finally_clause, - ACTIONS(1200), 13, + ACTIONS(966), 1, + anon_sym_else, + STATE(583), 1, + sym_else_clause, + ACTIONS(1188), 13, sym__string_start, sym__template_string_start, ts_builtin_sym_end, @@ -47117,7 +47379,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1202), 33, + ACTIONS(1190), 34, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -47151,17 +47414,17 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [28881] = 5, + [28879] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(941), 1, + ACTIONS(966), 1, anon_sym_else, - STATE(595), 1, + STATE(593), 1, sym_else_clause, - ACTIONS(1206), 13, - sym__dedent, + ACTIONS(1192), 13, sym__string_start, sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -47172,7 +47435,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1204), 33, + ACTIONS(1194), 34, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -47206,14 +47470,14 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [28941] = 5, + [28940] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(945), 1, + ACTIONS(950), 1, anon_sym_finally, - STATE(587), 1, + STATE(546), 1, sym_finally_clause, - ACTIONS(1210), 13, + ACTIONS(1198), 13, sym__dedent, sym__string_start, sym__template_string_start, @@ -47227,7 +47491,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1208), 33, + ACTIONS(1196), 34, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -47264,7 +47529,7 @@ static const uint16_t ts_small_parse_table[] = { [29001] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1212), 13, + ACTIONS(1200), 13, sym__string_start, sym__template_string_start, ts_builtin_sym_end, @@ -47278,7 +47543,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1214), 35, + ACTIONS(1202), 36, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -47314,17 +47580,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [29057] = 5, + [29058] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(953), 1, - anon_sym_finally, - STATE(530), 1, - sym_finally_clause, - ACTIONS(1210), 13, + ACTIONS(1176), 13, + sym__dedent, sym__string_start, sym__template_string_start, - ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -47335,7 +47597,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1208), 33, + ACTIONS(1178), 36, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -47348,6 +47611,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_break, anon_sym_continue, anon_sym_if, + anon_sym_elif, + anon_sym_else, anon_sym_async, anon_sym_for, anon_sym_while, @@ -47369,10 +47634,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [29117] = 3, + [29115] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1186), 13, + ACTIONS(1206), 13, sym__dedent, sym__string_start, sym__template_string_start, @@ -47386,7 +47651,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1188), 35, + ACTIONS(1204), 36, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -47422,127 +47688,17 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [29173] = 7, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1219), 1, - anon_sym_COLON_EQ, - ACTIONS(1221), 2, - anon_sym_COLON, - anon_sym_EQ, - ACTIONS(1216), 3, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_RBRACK, - ACTIONS(1223), 13, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_STAR_EQ, - anon_sym_SLASH_EQ, - anon_sym_AT_EQ, - anon_sym_SLASH_SLASH_EQ, - anon_sym_PERCENT_EQ, - anon_sym_STAR_STAR_EQ, - anon_sym_GT_GT_EQ, - anon_sym_LT_LT_EQ, - anon_sym_AMP_EQ, - anon_sym_CARET_EQ, - anon_sym_PIPE_EQ, - ACTIONS(1173), 14, - anon_sym_DOT, - anon_sym_LPAREN, - anon_sym_if, - anon_sym_in, - anon_sym_LBRACK, - anon_sym_not, - anon_sym_and, - anon_sym_or, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - anon_sym_is, - ACTIONS(1178), 15, - anon_sym_STAR, - anon_sym_GT_GT, - anon_sym_PIPE, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_SLASH, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, - anon_sym_LT, - anon_sym_GT, - [29237] = 3, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1001), 16, - anon_sym_STAR, - anon_sym_GT_GT, - anon_sym_PIPE, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_STAR_STAR, - anon_sym_EQ, - anon_sym_AT, - anon_sym_SLASH, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, - anon_sym_LT, - anon_sym_GT, - ACTIONS(999), 32, - sym__newline, - anon_sym_DOT, - anon_sym_from, - anon_sym_LPAREN, - anon_sym_COMMA, - anon_sym_if, - anon_sym_COLON, - anon_sym_in, - anon_sym_LBRACK, - anon_sym_not, - anon_sym_and, - anon_sym_or, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - anon_sym_is, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_STAR_EQ, - anon_sym_SLASH_EQ, - anon_sym_AT_EQ, - anon_sym_SLASH_SLASH_EQ, - anon_sym_PERCENT_EQ, - anon_sym_STAR_STAR_EQ, - anon_sym_GT_GT_EQ, - anon_sym_LT_LT_EQ, - anon_sym_AMP_EQ, - anon_sym_CARET_EQ, - anon_sym_PIPE_EQ, - anon_sym_SEMI, - [29293] = 5, + [29172] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(949), 1, + ACTIONS(946), 1, anon_sym_else, - STATE(544), 1, + STATE(560), 1, sym_else_clause, - ACTIONS(1196), 13, + ACTIONS(1180), 13, + sym__dedent, sym__string_start, sym__template_string_start, - ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -47553,7 +47709,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1194), 33, + ACTIONS(1182), 34, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -47587,17 +47744,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [29353] = 5, + [29233] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(941), 1, - anon_sym_else, - STATE(572), 1, - sym_else_clause, - ACTIONS(1227), 13, - sym__dedent, + ACTIONS(1206), 13, sym__string_start, sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -47608,7 +47761,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1225), 33, + ACTIONS(1204), 36, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -47621,6 +47775,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_break, anon_sym_continue, anon_sym_if, + anon_sym_elif, + anon_sym_else, anon_sym_async, anon_sym_for, anon_sym_while, @@ -47642,86 +47798,14 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [29413] = 22, + [29290] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(288), 1, - anon_sym_LBRACE, - ACTIONS(310), 1, - sym__string_start, - ACTIONS(312), 1, - sym__template_string_start, - ACTIONS(663), 1, - sym_identifier, - ACTIONS(665), 1, - anon_sym_LPAREN, - ACTIONS(675), 1, - anon_sym_LBRACK, - ACTIONS(677), 1, - anon_sym_await, - ACTIONS(1171), 1, - anon_sym_STAR, - ACTIONS(1229), 1, - anon_sym_RPAREN, - STATE(621), 1, - sym_string, - STATE(624), 1, - sym_template_string, - STATE(1012), 1, - sym_primary_expression, - STATE(1356), 1, - sym_pattern, - STATE(1643), 1, - sym__patterns, - ACTIONS(304), 2, - sym_ellipsis, - sym_float, - STATE(849), 2, - sym_attribute, - sym_subscript, - ACTIONS(296), 3, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_TILDE, - STATE(999), 3, - sym_tuple_pattern, - sym_list_pattern, - sym_list_splat_pattern, - ACTIONS(306), 4, - sym_integer, - sym_true, - sym_false, - sym_none, - ACTIONS(669), 5, - anon_sym_print, - anon_sym_async, - anon_sym_match, - anon_sym_exec, - anon_sym_type, - STATE(724), 15, - sym_binary_operator, - sym_unary_operator, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [29507] = 5, - ACTIONS(3), 1, - sym_comment, - ACTIONS(945), 1, - anon_sym_finally, - STATE(574), 1, - sym_finally_clause, - ACTIONS(1200), 13, + ACTIONS(946), 1, + anon_sym_else, + STATE(551), 1, + sym_else_clause, + ACTIONS(1192), 13, sym__dedent, sym__string_start, sym__template_string_start, @@ -47735,7 +47819,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1202), 33, + ACTIONS(1194), 34, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -47769,17 +47854,17 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [29567] = 5, + [29351] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(941), 1, + ACTIONS(966), 1, anon_sym_else, - STATE(592), 1, + STATE(596), 1, sym_else_clause, - ACTIONS(1233), 13, - sym__dedent, + ACTIONS(1208), 13, sym__string_start, sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -47790,7 +47875,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1231), 33, + ACTIONS(1210), 34, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -47824,14 +47910,14 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [29627] = 5, + [29412] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(949), 1, + ACTIONS(966), 1, anon_sym_else, - STATE(536), 1, + STATE(563), 1, sym_else_clause, - ACTIONS(1233), 13, + ACTIONS(1212), 13, sym__string_start, sym__template_string_start, ts_builtin_sym_end, @@ -47845,7 +47931,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1231), 33, + ACTIONS(1214), 34, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -47879,17 +47966,17 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [29687] = 5, + [29473] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(949), 1, + ACTIONS(946), 1, anon_sym_else, - STATE(528), 1, + STATE(531), 1, sym_else_clause, - ACTIONS(1235), 13, + ACTIONS(1212), 13, + sym__dedent, sym__string_start, sym__template_string_start, - ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -47900,7 +47987,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1237), 33, + ACTIONS(1214), 34, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -47934,67 +48022,87 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [29747] = 3, + [29534] = 22, ACTIONS(3), 1, sym_comment, - ACTIONS(1015), 16, + ACTIONS(293), 1, + anon_sym_LBRACE, + ACTIONS(315), 1, + sym__string_start, + ACTIONS(317), 1, + sym__template_string_start, + ACTIONS(692), 1, + sym_identifier, + ACTIONS(696), 1, + anon_sym_LPAREN, + ACTIONS(704), 1, + anon_sym_LBRACK, + ACTIONS(706), 1, + anon_sym_await, + ACTIONS(1216), 1, + anon_sym_RPAREN, + ACTIONS(1218), 1, anon_sym_STAR, - anon_sym_GT_GT, - anon_sym_PIPE, + STATE(645), 1, + sym_string, + STATE(658), 1, + sym_template_string, + STATE(1013), 1, + sym_primary_expression, + STATE(1311), 1, + sym_pattern, + STATE(1689), 1, + sym__patterns, + ACTIONS(309), 2, + sym_ellipsis, + sym_float, + STATE(848), 2, + sym_attribute, + sym_subscript, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, - anon_sym_STAR_STAR, - anon_sym_EQ, - anon_sym_AT, - anon_sym_SLASH, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1013), 32, - sym__newline, - anon_sym_DOT, - anon_sym_from, - anon_sym_LPAREN, - anon_sym_COMMA, - anon_sym_if, - anon_sym_COLON, - anon_sym_in, - anon_sym_LBRACK, - anon_sym_not, - anon_sym_and, - anon_sym_or, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - anon_sym_is, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_STAR_EQ, - anon_sym_SLASH_EQ, - anon_sym_AT_EQ, - anon_sym_SLASH_SLASH_EQ, - anon_sym_PERCENT_EQ, - anon_sym_STAR_STAR_EQ, - anon_sym_GT_GT_EQ, - anon_sym_LT_LT_EQ, - anon_sym_AMP_EQ, - anon_sym_CARET_EQ, - anon_sym_PIPE_EQ, - anon_sym_SEMI, - [29803] = 5, + anon_sym_TILDE, + STATE(1001), 3, + sym_tuple_pattern, + sym_list_pattern, + sym_list_splat_pattern, + ACTIONS(311), 4, + sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(694), 6, + anon_sym_lazy, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(725), 15, + sym_binary_operator, + sym_unary_operator, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [29629] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(949), 1, + ACTIONS(966), 1, anon_sym_else, - STATE(539), 1, + STATE(606), 1, sym_else_clause, - ACTIONS(1206), 13, + ACTIONS(1186), 13, sym__string_start, sym__template_string_start, ts_builtin_sym_end, @@ -48008,7 +48116,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1204), 33, + ACTIONS(1184), 34, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -48042,14 +48151,14 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [29863] = 5, + [29690] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(949), 1, - anon_sym_else, - STATE(588), 1, - sym_else_clause, - ACTIONS(1239), 13, + ACTIONS(970), 1, + anon_sym_finally, + STATE(568), 1, + sym_finally_clause, + ACTIONS(1220), 13, sym__string_start, sym__template_string_start, ts_builtin_sym_end, @@ -48063,7 +48172,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1241), 33, + ACTIONS(1222), 34, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -48097,10 +48207,14 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [29923] = 3, + [29751] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(1212), 13, + ACTIONS(950), 1, + anon_sym_finally, + STATE(533), 1, + sym_finally_clause, + ACTIONS(1220), 13, sym__dedent, sym__string_start, sym__template_string_start, @@ -48114,7 +48228,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1214), 35, + ACTIONS(1222), 34, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -48127,8 +48242,6 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_break, anon_sym_continue, anon_sym_if, - anon_sym_elif, - anon_sym_else, anon_sym_async, anon_sym_for, anon_sym_while, @@ -48150,19 +48263,30 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [29979] = 7, + [29812] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(585), 1, + ACTIONS(277), 1, + anon_sym_COMMA, + ACTIONS(283), 1, anon_sym_COLON_EQ, - ACTIONS(587), 2, + ACTIONS(1224), 1, + sym_identifier, + ACTIONS(285), 2, anon_sym_COLON, anon_sym_EQ, - ACTIONS(580), 3, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_RBRACK, - ACTIONS(593), 13, + ACTIONS(303), 10, + sym__newline, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_LBRACK, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_SEMI, + ACTIONS(307), 13, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, @@ -48176,29 +48300,19 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, - ACTIONS(298), 14, - anon_sym_DOT, - anon_sym_LPAREN, - anon_sym_if, - anon_sym_in, - anon_sym_LBRACK, - anon_sym_not, - anon_sym_and, - anon_sym_or, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - anon_sym_is, - ACTIONS(265), 15, + ACTIONS(272), 21, anon_sym_STAR, anon_sym_GT_GT, + anon_sym_if, + anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR_STAR, anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_SLASH_SLASH, @@ -48207,10 +48321,11 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LT_LT, anon_sym_LT, anon_sym_GT, - [30043] = 3, + anon_sym_is, + [29879] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1190), 13, + ACTIONS(1200), 13, sym__dedent, sym__string_start, sym__template_string_start, @@ -48224,7 +48339,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1192), 35, + ACTIONS(1202), 36, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -48260,124 +48376,86 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [30099] = 5, + [29936] = 21, ACTIONS(3), 1, sym_comment, - ACTIONS(941), 1, - anon_sym_else, - STATE(560), 1, - sym_else_clause, - ACTIONS(1239), 13, - sym__dedent, + ACTIONS(293), 1, + anon_sym_LBRACE, + ACTIONS(315), 1, sym__string_start, + ACTIONS(317), 1, sym__template_string_start, + ACTIONS(692), 1, + sym_identifier, + ACTIONS(696), 1, anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, + ACTIONS(704), 1, anon_sym_LBRACK, - anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, + ACTIONS(706), 1, + anon_sym_await, + ACTIONS(1218), 1, + anon_sym_STAR, + STATE(645), 1, + sym_string, + STATE(658), 1, + sym_template_string, + STATE(998), 1, + sym_pattern, + STATE(1013), 1, + sym_primary_expression, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(1241), 33, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, - anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, - anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_with, - anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, - anon_sym_exec, - anon_sym_type, - anon_sym_class, - anon_sym_not, - anon_sym_lambda, - anon_sym_yield, + ACTIONS(1226), 2, + anon_sym_RPAREN, + anon_sym_RBRACK, + STATE(848), 2, + sym_attribute, + sym_subscript, + ACTIONS(301), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + STATE(1001), 3, + sym_tuple_pattern, + sym_list_pattern, + sym_list_splat_pattern, + ACTIONS(311), 4, sym_integer, - sym_identifier, - anon_sym_await, sym_true, sym_false, sym_none, - [30159] = 5, - ACTIONS(3), 1, - sym_comment, - ACTIONS(949), 1, - anon_sym_else, - STATE(515), 1, - sym_else_clause, - ACTIONS(1227), 13, - sym__string_start, - sym__template_string_start, - ts_builtin_sym_end, - anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, - sym_ellipsis, - sym_float, - ACTIONS(1225), 33, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, + ACTIONS(694), 6, + anon_sym_lazy, anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_with, anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - anon_sym_class, - anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, - anon_sym_await, - sym_true, - sym_false, - sym_none, - [30219] = 5, + STATE(725), 15, + sym_binary_operator, + sym_unary_operator, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [30029] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(941), 1, + ACTIONS(946), 1, anon_sym_else, - STATE(585), 1, + STATE(555), 1, sym_else_clause, - ACTIONS(1235), 13, + ACTIONS(1208), 13, sym__dedent, sym__string_start, sym__template_string_start, @@ -48391,7 +48469,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1237), 33, + ACTIONS(1210), 34, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -48425,13 +48504,17 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [30279] = 3, + [30090] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(1245), 13, - sym__dedent, + ACTIONS(970), 1, + anon_sym_finally, + STATE(587), 1, + sym_finally_clause, + ACTIONS(1198), 13, sym__string_start, sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -48442,7 +48525,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1243), 34, + ACTIONS(1196), 34, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -48459,7 +48543,6 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_for, anon_sym_while, anon_sym_try, - anon_sym_finally, anon_sym_with, anon_sym_match, anon_sym_def, @@ -48477,61 +48560,63 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [30334] = 21, + [30151] = 21, ACTIONS(3), 1, sym_comment, - ACTIONS(288), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(310), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(663), 1, + ACTIONS(692), 1, sym_identifier, - ACTIONS(665), 1, + ACTIONS(696), 1, anon_sym_LPAREN, - ACTIONS(675), 1, + ACTIONS(704), 1, anon_sym_LBRACK, - ACTIONS(677), 1, + ACTIONS(706), 1, anon_sym_await, - ACTIONS(1171), 1, + ACTIONS(1218), 1, anon_sym_STAR, - STATE(621), 1, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, - STATE(1012), 1, - sym_primary_expression, - STATE(1504), 1, + STATE(998), 1, sym_pattern, - STATE(1716), 1, - sym_pattern_list, - ACTIONS(304), 2, + STATE(1013), 1, + sym_primary_expression, + ACTIONS(309), 2, sym_ellipsis, sym_float, - STATE(849), 2, + ACTIONS(1228), 2, + anon_sym_RPAREN, + anon_sym_RBRACK, + STATE(848), 2, sym_attribute, sym_subscript, - ACTIONS(296), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(999), 3, + STATE(1001), 3, sym_tuple_pattern, sym_list_pattern, sym_list_splat_pattern, - ACTIONS(306), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(669), 5, + ACTIONS(694), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(724), 15, + STATE(725), 15, sym_binary_operator, sym_unary_operator, sym_call, @@ -48547,15 +48632,73 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [30425] = 6, + [30244] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(946), 1, + anon_sym_else, + STATE(543), 1, + sym_else_clause, + ACTIONS(1188), 13, + sym__dedent, + sym__string_start, + sym__template_string_start, + anon_sym_LPAREN, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_TILDE, + sym_ellipsis, + sym_float, + ACTIONS(1190), 34, + anon_sym_lazy, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, + anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, + anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_with, + anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, + anon_sym_exec, + anon_sym_type, + anon_sym_class, + anon_sym_not, + anon_sym_lambda, + anon_sym_yield, + sym_integer, + sym_identifier, + anon_sym_await, + sym_true, + sym_false, + sym_none, + [30305] = 7, ACTIONS(3), 1, sym_comment, - ACTIONS(1175), 1, + ACTIONS(1232), 1, anon_sym_COMMA, - ACTIONS(1182), 1, - anon_sym_EQ, - ACTIONS(1184), 14, + ACTIONS(1237), 1, + anon_sym_COLON_EQ, + ACTIONS(1239), 2, anon_sym_COLON, + anon_sym_EQ, + ACTIONS(1241), 13, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, @@ -48569,7 +48712,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, - ACTIONS(1178), 15, + ACTIONS(1235), 15, anon_sym_STAR, anon_sym_GT_GT, anon_sym_PIPE, @@ -48585,7 +48728,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LT_LT, anon_sym_LT, anon_sym_GT, - ACTIONS(1173), 16, + ACTIONS(1230), 16, sym__newline, anon_sym_DOT, anon_sym_LPAREN, @@ -48602,13 +48745,13 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LT_GT, anon_sym_is, anon_sym_SEMI, - [30486] = 3, + [30369] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1247), 13, + ACTIONS(1245), 13, + sym__dedent, sym__string_start, sym__template_string_start, - ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -48619,7 +48762,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1249), 34, + ACTIONS(1243), 35, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -48636,9 +48780,9 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_for, anon_sym_while, anon_sym_try, - anon_sym_finally, anon_sym_with, anon_sym_match, + anon_sym_case, anon_sym_def, anon_sym_global, anon_sym_nonlocal, @@ -48654,10 +48798,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [30541] = 3, + [30425] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1251), 13, + ACTIONS(1247), 13, sym__string_start, sym__template_string_start, ts_builtin_sym_end, @@ -48671,7 +48815,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1253), 34, + ACTIONS(1249), 35, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -48706,61 +48851,172 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [30596] = 21, + [30481] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(580), 1, + anon_sym_COLON_EQ, + ACTIONS(582), 2, + anon_sym_COLON, + anon_sym_EQ, + ACTIONS(577), 3, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_RBRACK, + ACTIONS(588), 13, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_AT_EQ, + anon_sym_SLASH_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_STAR_STAR_EQ, + anon_sym_GT_GT_EQ, + anon_sym_LT_LT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + ACTIONS(303), 14, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_if, + anon_sym_in, + anon_sym_LBRACK, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + ACTIONS(272), 15, + anon_sym_STAR, + anon_sym_GT_GT, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_SLASH, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT, + anon_sym_GT, + [30545] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1253), 13, + sym__dedent, + sym__string_start, + sym__template_string_start, + anon_sym_LPAREN, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_TILDE, + sym_ellipsis, + sym_float, + ACTIONS(1251), 35, + anon_sym_lazy, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, + anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, + anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_finally, + anon_sym_with, + anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, + anon_sym_exec, + anon_sym_type, + anon_sym_class, + anon_sym_not, + anon_sym_lambda, + anon_sym_yield, + sym_integer, + sym_identifier, + anon_sym_await, + sym_true, + sym_false, + sym_none, + [30601] = 21, ACTIONS(3), 1, sym_comment, - ACTIONS(288), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(310), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(663), 1, + ACTIONS(692), 1, sym_identifier, - ACTIONS(665), 1, + ACTIONS(696), 1, anon_sym_LPAREN, - ACTIONS(675), 1, + ACTIONS(704), 1, anon_sym_LBRACK, - ACTIONS(677), 1, + ACTIONS(706), 1, anon_sym_await, - ACTIONS(1171), 1, + ACTIONS(1218), 1, anon_sym_STAR, - STATE(621), 1, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, - STATE(1012), 1, + STATE(1013), 1, sym_primary_expression, - STATE(1461), 1, + STATE(1478), 1, sym_pattern, - STATE(1657), 1, + STATE(1648), 1, sym_pattern_list, - ACTIONS(304), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - STATE(849), 2, + STATE(848), 2, sym_attribute, sym_subscript, - ACTIONS(296), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(999), 3, + STATE(1001), 3, sym_tuple_pattern, sym_list_pattern, sym_list_splat_pattern, - ACTIONS(306), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(669), 5, + ACTIONS(694), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(724), 15, + STATE(725), 15, sym_binary_operator, sym_unary_operator, sym_call, @@ -48776,65 +49032,141 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [30687] = 3, + [30693] = 21, ACTIONS(3), 1, sym_comment, - ACTIONS(1245), 13, + ACTIONS(293), 1, + anon_sym_LBRACE, + ACTIONS(315), 1, sym__string_start, + ACTIONS(317), 1, sym__template_string_start, - ts_builtin_sym_end, + ACTIONS(692), 1, + sym_identifier, + ACTIONS(696), 1, anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, + ACTIONS(704), 1, anon_sym_LBRACK, - anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, + ACTIONS(706), 1, + anon_sym_await, + ACTIONS(1218), 1, + anon_sym_STAR, + STATE(645), 1, + sym_string, + STATE(658), 1, + sym_template_string, + STATE(1013), 1, + sym_primary_expression, + STATE(1411), 1, + sym_pattern, + STATE(1612), 1, + sym_pattern_list, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(1243), 34, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, + STATE(848), 2, + sym_attribute, + sym_subscript, + ACTIONS(301), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + STATE(1001), 3, + sym_tuple_pattern, + sym_list_pattern, + sym_list_splat_pattern, + ACTIONS(311), 4, + sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(694), 6, + anon_sym_lazy, anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_finally, - anon_sym_with, anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - anon_sym_class, + STATE(725), 15, + sym_binary_operator, + sym_unary_operator, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [30785] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1258), 1, + anon_sym_COLON_EQ, + ACTIONS(1260), 2, + anon_sym_COLON, + anon_sym_EQ, + ACTIONS(1255), 3, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_RBRACK, + ACTIONS(1262), 13, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_AT_EQ, + anon_sym_SLASH_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_STAR_STAR_EQ, + anon_sym_GT_GT_EQ, + anon_sym_LT_LT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + ACTIONS(1230), 14, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_if, + anon_sym_in, + anon_sym_LBRACK, anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, - anon_sym_await, - sym_true, - sym_false, - sym_none, - [30742] = 3, + anon_sym_and, + anon_sym_or, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + ACTIONS(1235), 15, + anon_sym_STAR, + anon_sym_GT_GT, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_SLASH, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT, + anon_sym_GT, + [30849] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1255), 13, + ACTIONS(1247), 13, + sym__dedent, sym__string_start, sym__template_string_start, - ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -48845,7 +49177,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1257), 34, + ACTIONS(1249), 35, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -48880,13 +49213,66 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [30797] = 3, + [30905] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1064), 16, + anon_sym_STAR, + anon_sym_GT_GT, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_STAR_STAR, + anon_sym_EQ, + anon_sym_AT, + anon_sym_SLASH, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1062), 32, + sym__newline, + anon_sym_DOT, + anon_sym_from, + anon_sym_LPAREN, + anon_sym_COMMA, + anon_sym_if, + anon_sym_COLON, + anon_sym_in, + anon_sym_LBRACK, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_AT_EQ, + anon_sym_SLASH_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_STAR_STAR_EQ, + anon_sym_GT_GT_EQ, + anon_sym_LT_LT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + anon_sym_SEMI, + [30961] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1259), 13, + ACTIONS(1266), 13, + sym__dedent, sym__string_start, sym__template_string_start, - ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -48897,7 +49283,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1261), 34, + ACTIONS(1264), 35, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -48914,9 +49301,9 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_for, anon_sym_while, anon_sym_try, + anon_sym_finally, anon_sym_with, anon_sym_match, - anon_sym_case, anon_sym_def, anon_sym_global, anon_sym_nonlocal, @@ -48932,10 +49319,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [30852] = 3, + [31017] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1263), 13, + ACTIONS(1268), 13, sym__string_start, sym__template_string_start, ts_builtin_sym_end, @@ -48949,7 +49336,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1265), 34, + ACTIONS(1270), 35, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -48984,35 +49372,17 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [30907] = 6, + [31073] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1269), 1, - anon_sym_COMMA, - ACTIONS(1276), 1, - anon_sym_EQ, - ACTIONS(1274), 14, - anon_sym_COLON, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_STAR_EQ, - anon_sym_SLASH_EQ, - anon_sym_AT_EQ, - anon_sym_SLASH_SLASH_EQ, - anon_sym_PERCENT_EQ, - anon_sym_STAR_STAR_EQ, - anon_sym_GT_GT_EQ, - anon_sym_LT_LT_EQ, - anon_sym_AMP_EQ, - anon_sym_CARET_EQ, - anon_sym_PIPE_EQ, - ACTIONS(1272), 15, + ACTIONS(1076), 16, anon_sym_STAR, anon_sym_GT_GT, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR_STAR, + anon_sym_EQ, anon_sym_AT, anon_sym_SLASH, anon_sym_PERCENT, @@ -49022,11 +49392,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LT_LT, anon_sym_LT, anon_sym_GT, - ACTIONS(1267), 16, + ACTIONS(1074), 32, sym__newline, anon_sym_DOT, + anon_sym_from, anon_sym_LPAREN, + anon_sym_COMMA, anon_sym_if, + anon_sym_COLON, anon_sym_in, anon_sym_LBRACK, anon_sym_not, @@ -49038,14 +49411,27 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_AT_EQ, + anon_sym_SLASH_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_STAR_STAR_EQ, + anon_sym_GT_GT_EQ, + anon_sym_LT_LT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, anon_sym_SEMI, - [30968] = 3, + [31129] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1247), 13, - sym__dedent, + ACTIONS(1266), 13, sym__string_start, sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -49056,7 +49442,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1249), 34, + ACTIONS(1264), 35, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -49091,11 +49478,82 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [31023] = 3, + [31185] = 21, ACTIONS(3), 1, sym_comment, - ACTIONS(1251), 13, - sym__dedent, + ACTIONS(293), 1, + anon_sym_LBRACE, + ACTIONS(315), 1, + sym__string_start, + ACTIONS(317), 1, + sym__template_string_start, + ACTIONS(692), 1, + sym_identifier, + ACTIONS(696), 1, + anon_sym_LPAREN, + ACTIONS(704), 1, + anon_sym_LBRACK, + ACTIONS(706), 1, + anon_sym_await, + ACTIONS(1218), 1, + anon_sym_STAR, + STATE(645), 1, + sym_string, + STATE(658), 1, + sym_template_string, + STATE(1013), 1, + sym_primary_expression, + STATE(1457), 1, + sym_pattern, + STATE(1595), 1, + sym_pattern_list, + ACTIONS(309), 2, + sym_ellipsis, + sym_float, + STATE(848), 2, + sym_attribute, + sym_subscript, + ACTIONS(301), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + STATE(1001), 3, + sym_tuple_pattern, + sym_list_pattern, + sym_list_splat_pattern, + ACTIONS(311), 4, + sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(694), 6, + anon_sym_lazy, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(725), 15, + sym_binary_operator, + sym_unary_operator, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [31277] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1274), 13, + sym__dedent, sym__string_start, sym__template_string_start, anon_sym_LPAREN, @@ -49108,7 +49566,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1253), 34, + ACTIONS(1272), 35, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -49143,13 +49602,141 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [31078] = 3, + [31333] = 7, ACTIONS(3), 1, sym_comment, - ACTIONS(1255), 13, - sym__dedent, + ACTIONS(277), 1, + anon_sym_COMMA, + ACTIONS(283), 1, + anon_sym_COLON_EQ, + ACTIONS(285), 2, + anon_sym_COLON, + anon_sym_EQ, + ACTIONS(307), 13, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_AT_EQ, + anon_sym_SLASH_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_STAR_STAR_EQ, + anon_sym_GT_GT_EQ, + anon_sym_LT_LT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + ACTIONS(272), 15, + anon_sym_STAR, + anon_sym_GT_GT, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_SLASH, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT, + anon_sym_GT, + ACTIONS(303), 16, + sym__newline, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_if, + anon_sym_in, + anon_sym_LBRACK, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + anon_sym_SEMI, + [31397] = 21, + ACTIONS(3), 1, + sym_comment, + ACTIONS(293), 1, + anon_sym_LBRACE, + ACTIONS(315), 1, + sym__string_start, + ACTIONS(317), 1, + sym__template_string_start, + ACTIONS(692), 1, + sym_identifier, + ACTIONS(696), 1, + anon_sym_LPAREN, + ACTIONS(704), 1, + anon_sym_LBRACK, + ACTIONS(706), 1, + anon_sym_await, + ACTIONS(1218), 1, + anon_sym_STAR, + STATE(645), 1, + sym_string, + STATE(658), 1, + sym_template_string, + STATE(1013), 1, + sym_primary_expression, + STATE(1469), 1, + sym_pattern, + STATE(1650), 1, + sym_pattern_list, + ACTIONS(309), 2, + sym_ellipsis, + sym_float, + STATE(848), 2, + sym_attribute, + sym_subscript, + ACTIONS(301), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + STATE(1001), 3, + sym_tuple_pattern, + sym_list_pattern, + sym_list_splat_pattern, + ACTIONS(311), 4, + sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(694), 6, + anon_sym_lazy, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(725), 15, + sym_binary_operator, + sym_unary_operator, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [31489] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1245), 13, sym__string_start, sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -49160,7 +49747,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1257), 34, + ACTIONS(1243), 35, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -49195,10 +49783,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [31133] = 3, + [31545] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1259), 13, + ACTIONS(1268), 13, sym__dedent, sym__string_start, sym__template_string_start, @@ -49212,7 +49800,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1261), 34, + ACTIONS(1270), 35, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -49247,13 +49836,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [31188] = 3, + [31601] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1263), 13, - sym__dedent, + ACTIONS(1253), 13, sym__string_start, sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -49264,7 +49853,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1265), 34, + ACTIONS(1251), 35, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -49281,9 +49871,9 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_for, anon_sym_while, anon_sym_try, + anon_sym_finally, anon_sym_with, anon_sym_match, - anon_sym_case, anon_sym_def, anon_sym_global, anon_sym_nonlocal, @@ -49299,256 +49889,115 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [31243] = 21, + [31657] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(288), 1, - anon_sym_LBRACE, - ACTIONS(310), 1, + ACTIONS(1274), 13, sym__string_start, - ACTIONS(312), 1, sym__template_string_start, - ACTIONS(663), 1, - sym_identifier, - ACTIONS(665), 1, + ts_builtin_sym_end, anon_sym_LPAREN, - ACTIONS(675), 1, - anon_sym_LBRACK, - ACTIONS(677), 1, - anon_sym_await, - ACTIONS(1171), 1, - anon_sym_STAR, - STATE(621), 1, - sym_string, - STATE(624), 1, - sym_template_string, - STATE(1012), 1, - sym_primary_expression, - STATE(1496), 1, - sym_pattern, - STATE(1661), 1, - sym_pattern_list, - ACTIONS(304), 2, - sym_ellipsis, - sym_float, - STATE(849), 2, - sym_attribute, - sym_subscript, - ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, anon_sym_TILDE, - STATE(999), 3, - sym_tuple_pattern, - sym_list_pattern, - sym_list_splat_pattern, - ACTIONS(306), 4, - sym_integer, - sym_true, - sym_false, - sym_none, - ACTIONS(669), 5, + sym_ellipsis, + sym_float, + ACTIONS(1272), 35, + anon_sym_lazy, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_with, anon_sym_match, + anon_sym_case, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - STATE(724), 15, - sym_binary_operator, - sym_unary_operator, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [31334] = 6, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1221), 1, - anon_sym_EQ, - ACTIONS(1216), 3, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_RBRACK, - ACTIONS(1173), 14, - anon_sym_DOT, - anon_sym_LPAREN, - anon_sym_if, - anon_sym_in, - anon_sym_LBRACK, + anon_sym_class, anon_sym_not, - anon_sym_and, - anon_sym_or, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - anon_sym_is, - ACTIONS(1223), 14, - anon_sym_COLON, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_STAR_EQ, - anon_sym_SLASH_EQ, - anon_sym_AT_EQ, - anon_sym_SLASH_SLASH_EQ, - anon_sym_PERCENT_EQ, - anon_sym_STAR_STAR_EQ, - anon_sym_GT_GT_EQ, - anon_sym_LT_LT_EQ, - anon_sym_AMP_EQ, - anon_sym_CARET_EQ, - anon_sym_PIPE_EQ, - ACTIONS(1178), 15, - anon_sym_STAR, - anon_sym_GT_GT, - anon_sym_PIPE, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_SLASH, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, - anon_sym_LT, - anon_sym_GT, - [31395] = 21, - ACTIONS(3), 1, - sym_comment, - ACTIONS(288), 1, - anon_sym_LBRACE, - ACTIONS(310), 1, - sym__string_start, - ACTIONS(312), 1, - sym__template_string_start, - ACTIONS(663), 1, + anon_sym_lambda, + anon_sym_yield, + sym_integer, sym_identifier, - ACTIONS(665), 1, - anon_sym_LPAREN, - ACTIONS(675), 1, - anon_sym_LBRACK, - ACTIONS(677), 1, anon_sym_await, - ACTIONS(1171), 1, - anon_sym_STAR, - STATE(621), 1, - sym_string, - STATE(624), 1, - sym_template_string, - STATE(1012), 1, - sym_primary_expression, - STATE(1500), 1, - sym_pattern, - STATE(1707), 1, - sym_pattern_list, - ACTIONS(304), 2, - sym_ellipsis, - sym_float, - STATE(849), 2, - sym_attribute, - sym_subscript, - ACTIONS(296), 3, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_TILDE, - STATE(999), 3, - sym_tuple_pattern, - sym_list_pattern, - sym_list_splat_pattern, - ACTIONS(306), 4, - sym_integer, sym_true, sym_false, sym_none, - ACTIONS(669), 5, - anon_sym_print, - anon_sym_async, - anon_sym_match, - anon_sym_exec, - anon_sym_type, - STATE(724), 15, - sym_binary_operator, - sym_unary_operator, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [31486] = 21, + [31713] = 21, ACTIONS(3), 1, sym_comment, - ACTIONS(288), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(310), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(663), 1, + ACTIONS(692), 1, sym_identifier, - ACTIONS(665), 1, + ACTIONS(696), 1, anon_sym_LPAREN, - ACTIONS(675), 1, + ACTIONS(704), 1, anon_sym_LBRACK, - ACTIONS(677), 1, + ACTIONS(706), 1, anon_sym_await, - ACTIONS(1171), 1, + ACTIONS(1218), 1, anon_sym_STAR, - STATE(621), 1, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, - STATE(1012), 1, + STATE(1013), 1, sym_primary_expression, - STATE(1473), 1, + STATE(1508), 1, sym_pattern, - STATE(1672), 1, + STATE(1727), 1, sym_pattern_list, - ACTIONS(304), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - STATE(849), 2, + STATE(848), 2, sym_attribute, sym_subscript, - ACTIONS(296), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(999), 3, + STATE(1001), 3, sym_tuple_pattern, sym_list_pattern, sym_list_splat_pattern, - ACTIONS(306), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(669), 5, + ACTIONS(694), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(724), 15, + STATE(725), 15, sym_binary_operator, sym_unary_operator, sym_call, @@ -49564,61 +50013,62 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [31577] = 21, + [31805] = 21, ACTIONS(3), 1, sym_comment, - ACTIONS(288), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(310), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(663), 1, + ACTIONS(692), 1, sym_identifier, - ACTIONS(665), 1, + ACTIONS(696), 1, anon_sym_LPAREN, - ACTIONS(675), 1, + ACTIONS(704), 1, anon_sym_LBRACK, - ACTIONS(677), 1, + ACTIONS(706), 1, anon_sym_await, - ACTIONS(1171), 1, + ACTIONS(1218), 1, anon_sym_STAR, - STATE(621), 1, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, - STATE(1012), 1, + STATE(1013), 1, sym_primary_expression, - STATE(1505), 1, + STATE(1509), 1, sym_pattern, - STATE(1719), 1, + STATE(1730), 1, sym_pattern_list, - ACTIONS(304), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - STATE(849), 2, + STATE(848), 2, sym_attribute, sym_subscript, - ACTIONS(296), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(999), 3, + STATE(1001), 3, sym_tuple_pattern, sym_list_pattern, sym_list_splat_pattern, - ACTIONS(306), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(669), 5, + ACTIONS(694), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(724), 15, + STATE(725), 15, sym_binary_operator, sym_unary_operator, sym_call, @@ -49634,68 +50084,13 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [31668] = 6, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1280), 1, - anon_sym_COMMA, - ACTIONS(1287), 1, - anon_sym_EQ, - ACTIONS(1285), 14, - anon_sym_COLON, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_STAR_EQ, - anon_sym_SLASH_EQ, - anon_sym_AT_EQ, - anon_sym_SLASH_SLASH_EQ, - anon_sym_PERCENT_EQ, - anon_sym_STAR_STAR_EQ, - anon_sym_GT_GT_EQ, - anon_sym_LT_LT_EQ, - anon_sym_AMP_EQ, - anon_sym_CARET_EQ, - anon_sym_PIPE_EQ, - ACTIONS(1283), 15, - anon_sym_STAR, - anon_sym_GT_GT, - anon_sym_PIPE, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_SLASH, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1278), 16, - sym__newline, - anon_sym_DOT, - anon_sym_LPAREN, - anon_sym_if, - anon_sym_in, - anon_sym_LBRACK, - anon_sym_not, - anon_sym_and, - anon_sym_or, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - anon_sym_is, - anon_sym_SEMI, - [31729] = 3, + [31897] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1289), 13, + ACTIONS(1278), 13, + sym__dedent, sym__string_start, sym__template_string_start, - ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -49706,7 +50101,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1291), 33, + ACTIONS(1276), 34, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -49740,13 +50136,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [31783] = 3, + [31952] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1293), 13, + ACTIONS(1282), 13, + sym__dedent, sym__string_start, sym__template_string_start, - ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -49757,7 +50153,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1295), 33, + ACTIONS(1280), 34, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -49791,13 +50188,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [31837] = 3, + [32007] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1297), 13, + ACTIONS(1286), 13, + sym__dedent, sym__string_start, sym__template_string_start, - ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -49808,7 +50205,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1299), 33, + ACTIONS(1284), 34, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -49842,10 +50240,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [31891] = 3, + [32062] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1301), 13, + ACTIONS(1288), 13, sym__string_start, sym__template_string_start, ts_builtin_sym_end, @@ -49859,7 +50257,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1303), 33, + ACTIONS(1290), 34, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -49893,10 +50292,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [31945] = 3, + [32117] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1210), 13, + ACTIONS(1292), 13, sym__string_start, sym__template_string_start, ts_builtin_sym_end, @@ -49910,7 +50309,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1208), 33, + ACTIONS(1294), 34, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -49944,13 +50344,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [31999] = 3, + [32172] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1305), 13, + ACTIONS(1298), 13, + sym__dedent, sym__string_start, sym__template_string_start, - ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -49961,7 +50361,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1307), 33, + ACTIONS(1296), 34, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -49995,10 +50396,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [32053] = 3, + [32227] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1309), 13, + ACTIONS(1300), 13, sym__string_start, sym__template_string_start, ts_builtin_sym_end, @@ -50012,7 +50413,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1311), 33, + ACTIONS(1302), 34, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -50046,13 +50448,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [32107] = 3, + [32282] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1313), 13, + ACTIONS(1306), 13, + sym__dedent, sym__string_start, sym__template_string_start, - ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -50063,7 +50465,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1315), 33, + ACTIONS(1304), 34, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -50097,13 +50500,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [32161] = 3, + [32337] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1317), 13, + ACTIONS(1310), 13, + sym__dedent, sym__string_start, sym__template_string_start, - ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -50114,7 +50517,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1319), 33, + ACTIONS(1308), 34, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -50148,13 +50552,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [32215] = 3, + [32392] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1321), 13, + ACTIONS(1220), 13, + sym__dedent, sym__string_start, sym__template_string_start, - ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -50165,7 +50569,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1323), 33, + ACTIONS(1222), 34, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -50199,13 +50604,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [32269] = 3, + [32447] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1325), 13, + ACTIONS(980), 13, + sym__dedent, sym__string_start, sym__template_string_start, - ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -50216,7 +50621,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1327), 33, + ACTIONS(982), 34, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -50250,13 +50656,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [32323] = 3, + [32502] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1329), 13, + ACTIONS(1314), 13, + sym__dedent, sym__string_start, sym__template_string_start, - ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -50267,7 +50673,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1331), 33, + ACTIONS(1312), 34, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -50301,13 +50708,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [32377] = 3, + [32557] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1333), 13, + ACTIONS(1318), 13, + sym__dedent, sym__string_start, sym__template_string_start, - ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -50318,7 +50725,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1335), 33, + ACTIONS(1316), 34, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -50352,13 +50760,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [32431] = 3, + [32612] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1337), 13, + ACTIONS(1288), 13, + sym__dedent, sym__string_start, sym__template_string_start, - ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -50369,7 +50777,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1339), 33, + ACTIONS(1290), 34, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -50403,13 +50812,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [32485] = 3, + [32667] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1341), 13, + ACTIONS(1292), 13, + sym__dedent, sym__string_start, sym__template_string_start, - ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -50420,7 +50829,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1343), 33, + ACTIONS(1294), 34, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -50454,13 +50864,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [32539] = 3, + [32722] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1345), 13, + ACTIONS(1300), 13, + sym__dedent, sym__string_start, sym__template_string_start, - ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -50471,7 +50881,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1347), 33, + ACTIONS(1302), 34, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -50505,13 +50916,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [32593] = 3, + [32777] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1349), 13, + ACTIONS(1322), 13, + sym__dedent, sym__string_start, sym__template_string_start, - ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -50522,7 +50933,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1351), 33, + ACTIONS(1320), 34, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -50556,13 +50968,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [32647] = 3, + [32832] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1353), 13, + ACTIONS(1326), 13, + sym__dedent, sym__string_start, sym__template_string_start, - ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -50573,7 +50985,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1355), 33, + ACTIONS(1324), 34, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -50607,13 +51020,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [32701] = 3, + [32887] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1357), 13, + ACTIONS(1330), 13, + sym__dedent, sym__string_start, sym__template_string_start, - ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -50624,7 +51037,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1359), 33, + ACTIONS(1328), 34, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -50658,13 +51072,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [32755] = 3, + [32942] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1361), 13, + ACTIONS(1334), 13, + sym__dedent, sym__string_start, sym__template_string_start, - ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -50675,7 +51089,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1363), 33, + ACTIONS(1332), 34, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -50709,13 +51124,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [32809] = 3, + [32997] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1200), 13, + ACTIONS(1338), 13, + sym__dedent, sym__string_start, sym__template_string_start, - ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -50726,7 +51141,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1202), 33, + ACTIONS(1336), 34, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -50760,13 +51176,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [32863] = 3, + [33052] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(939), 13, + ACTIONS(1342), 13, + sym__dedent, sym__string_start, sym__template_string_start, - ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -50777,7 +51193,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(937), 33, + ACTIONS(1340), 34, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -50811,13 +51228,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [32917] = 3, + [33107] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1365), 13, + ACTIONS(1346), 13, + sym__dedent, sym__string_start, sym__template_string_start, - ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -50828,7 +51245,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1367), 33, + ACTIONS(1344), 34, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -50862,13 +51280,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [32971] = 3, + [33162] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1369), 13, + ACTIONS(1198), 13, + sym__dedent, sym__string_start, sym__template_string_start, - ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -50879,7 +51297,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1371), 33, + ACTIONS(1196), 34, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -50913,13 +51332,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [33025] = 3, + [33217] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1373), 13, + ACTIONS(1350), 13, + sym__dedent, sym__string_start, sym__template_string_start, - ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -50930,7 +51349,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1375), 33, + ACTIONS(1348), 34, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -50964,13 +51384,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [33079] = 3, + [33272] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1377), 13, + ACTIONS(1354), 13, + sym__dedent, sym__string_start, sym__template_string_start, - ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -50981,7 +51401,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1379), 33, + ACTIONS(1352), 34, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -51015,13 +51436,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [33133] = 3, + [33327] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1381), 13, + ACTIONS(1358), 13, + sym__dedent, sym__string_start, sym__template_string_start, - ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -51032,7 +51453,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1383), 33, + ACTIONS(1356), 34, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -51066,13 +51488,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [33187] = 3, + [33382] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1385), 13, + ACTIONS(1362), 13, + sym__dedent, sym__string_start, sym__template_string_start, - ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -51083,7 +51505,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1387), 33, + ACTIONS(1360), 34, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -51117,13 +51540,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [33241] = 3, + [33437] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1389), 13, + ACTIONS(1366), 13, + sym__dedent, sym__string_start, sym__template_string_start, - ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -51134,7 +51557,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1391), 33, + ACTIONS(1364), 34, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -51168,13 +51592,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [33295] = 3, + [33492] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1393), 13, + ACTIONS(1370), 13, + sym__dedent, sym__string_start, sym__template_string_start, - ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -51185,7 +51609,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1395), 33, + ACTIONS(1368), 34, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -51219,13 +51644,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [33349] = 3, + [33547] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1397), 13, + ACTIONS(1374), 13, + sym__dedent, sym__string_start, sym__template_string_start, - ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -51236,7 +51661,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1399), 33, + ACTIONS(1372), 34, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -51270,13 +51696,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [33403] = 3, + [33602] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1401), 13, + ACTIONS(1378), 13, + sym__dedent, sym__string_start, sym__template_string_start, - ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -51287,7 +51713,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1403), 33, + ACTIONS(1376), 34, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -51321,13 +51748,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [33457] = 3, + [33657] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1405), 13, + ACTIONS(1382), 13, + sym__dedent, sym__string_start, sym__template_string_start, - ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -51338,7 +51765,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1407), 33, + ACTIONS(1380), 34, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -51372,10 +51800,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [33511] = 3, + [33712] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1409), 13, + ACTIONS(1322), 13, sym__string_start, sym__template_string_start, ts_builtin_sym_end, @@ -51389,7 +51817,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1411), 33, + ACTIONS(1320), 34, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -51423,13 +51852,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [33565] = 3, + [33767] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1413), 13, + ACTIONS(1386), 13, + sym__dedent, sym__string_start, sym__template_string_start, - ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -51440,7 +51869,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1415), 33, + ACTIONS(1384), 34, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -51474,13 +51904,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [33619] = 3, + [33822] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1417), 13, + ACTIONS(1390), 13, + sym__dedent, sym__string_start, sym__template_string_start, - ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -51491,7 +51921,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1419), 33, + ACTIONS(1388), 34, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -51525,13 +51956,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [33673] = 3, + [33877] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1421), 13, + ACTIONS(1394), 13, + sym__dedent, sym__string_start, sym__template_string_start, - ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -51542,7 +51973,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1423), 33, + ACTIONS(1392), 34, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -51576,78 +52008,62 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [33727] = 20, + [33932] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(288), 1, - anon_sym_LBRACE, - ACTIONS(310), 1, + ACTIONS(1326), 13, sym__string_start, - ACTIONS(312), 1, sym__template_string_start, - ACTIONS(663), 1, - sym_identifier, - ACTIONS(665), 1, + ts_builtin_sym_end, anon_sym_LPAREN, - ACTIONS(675), 1, - anon_sym_LBRACK, - ACTIONS(677), 1, - anon_sym_await, - ACTIONS(1171), 1, - anon_sym_STAR, - STATE(621), 1, - sym_string, - STATE(624), 1, - sym_template_string, - STATE(1012), 1, - sym_primary_expression, - STATE(1445), 1, - sym_pattern, - ACTIONS(304), 2, - sym_ellipsis, - sym_float, - STATE(849), 2, - sym_attribute, - sym_subscript, - ACTIONS(296), 3, anon_sym_DASH, anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, anon_sym_TILDE, - STATE(999), 3, - sym_tuple_pattern, - sym_list_pattern, - sym_list_splat_pattern, - ACTIONS(306), 4, - sym_integer, - sym_true, - sym_false, - sym_none, - ACTIONS(669), 5, + sym_ellipsis, + sym_float, + ACTIONS(1324), 34, + anon_sym_lazy, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_with, anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - STATE(724), 15, - sym_binary_operator, - sym_unary_operator, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [33815] = 3, + anon_sym_class, + anon_sym_not, + anon_sym_lambda, + anon_sym_yield, + sym_integer, + sym_identifier, + anon_sym_await, + sym_true, + sym_false, + sym_none, + [33987] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1313), 13, + ACTIONS(1398), 13, sym__dedent, sym__string_start, sym__template_string_start, @@ -51661,7 +52077,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1315), 33, + ACTIONS(1396), 34, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -51695,13 +52112,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [33869] = 3, + [34042] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(979), 13, - sym__dedent, + ACTIONS(1400), 13, sym__string_start, sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -51712,7 +52129,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(981), 33, + ACTIONS(1402), 34, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -51746,10 +52164,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [33923] = 3, + [34097] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1427), 13, + ACTIONS(1406), 13, sym__dedent, sym__string_start, sym__template_string_start, @@ -51763,7 +52181,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1425), 33, + ACTIONS(1404), 34, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -51797,13 +52216,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [33977] = 3, + [34152] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1431), 13, - sym__dedent, + ACTIONS(1330), 13, sym__string_start, sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -51814,7 +52233,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1429), 33, + ACTIONS(1328), 34, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -51848,10 +52268,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [34031] = 3, + [34207] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1435), 13, + ACTIONS(1410), 13, sym__dedent, sym__string_start, sym__template_string_start, @@ -51865,7 +52285,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1433), 33, + ACTIONS(1408), 34, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -51899,10 +52320,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [34085] = 3, + [34262] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1439), 13, + ACTIONS(1414), 13, sym__dedent, sym__string_start, sym__template_string_start, @@ -51916,7 +52337,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1437), 33, + ACTIONS(1412), 34, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -51950,10 +52372,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [34139] = 3, + [34317] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1289), 13, + ACTIONS(1418), 13, sym__dedent, sym__string_start, sym__template_string_start, @@ -51967,7 +52389,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1291), 33, + ACTIONS(1416), 34, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -52001,13 +52424,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [34193] = 3, + [34372] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1443), 13, - sym__dedent, + ACTIONS(1334), 13, sym__string_start, sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -52018,7 +52441,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1441), 33, + ACTIONS(1332), 34, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -52052,10 +52476,65 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [34247] = 3, + [34427] = 6, ACTIONS(3), 1, sym_comment, - ACTIONS(1447), 13, + ACTIONS(1422), 1, + anon_sym_COMMA, + ACTIONS(1429), 1, + anon_sym_EQ, + ACTIONS(1427), 14, + anon_sym_COLON, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_AT_EQ, + anon_sym_SLASH_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_STAR_STAR_EQ, + anon_sym_GT_GT_EQ, + anon_sym_LT_LT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + ACTIONS(1425), 15, + anon_sym_STAR, + anon_sym_GT_GT, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_SLASH, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1420), 16, + sym__newline, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_if, + anon_sym_in, + anon_sym_LBRACK, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + anon_sym_SEMI, + [34488] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1433), 13, sym__dedent, sym__string_start, sym__template_string_start, @@ -52069,7 +52548,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1445), 33, + ACTIONS(1431), 34, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -52103,10 +52583,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [34301] = 3, + [34543] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1200), 13, + ACTIONS(1437), 13, sym__dedent, sym__string_start, sym__template_string_start, @@ -52120,7 +52600,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1202), 33, + ACTIONS(1435), 34, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -52154,10 +52635,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [34355] = 3, + [34598] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(939), 13, + ACTIONS(1441), 13, sym__dedent, sym__string_start, sym__template_string_start, @@ -52171,7 +52652,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(937), 33, + ACTIONS(1439), 34, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -52205,10 +52687,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [34409] = 3, + [34653] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1381), 13, + ACTIONS(1445), 13, sym__dedent, sym__string_start, sym__template_string_start, @@ -52222,7 +52704,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1383), 33, + ACTIONS(1443), 34, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -52256,10 +52739,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [34463] = 3, + [34708] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1385), 13, + ACTIONS(1449), 13, sym__dedent, sym__string_start, sym__template_string_start, @@ -52273,7 +52756,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1387), 33, + ACTIONS(1447), 34, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -52307,13 +52791,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [34517] = 3, + [34763] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1409), 13, - sym__dedent, + ACTIONS(1338), 13, sym__string_start, sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -52324,7 +52808,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1411), 33, + ACTIONS(1336), 34, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -52358,10 +52843,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [34571] = 3, + [34818] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1421), 13, + ACTIONS(1453), 13, sym__dedent, sym__string_start, sym__template_string_start, @@ -52375,7 +52860,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1423), 33, + ACTIONS(1451), 34, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -52409,10 +52895,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [34625] = 3, + [34873] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1451), 13, + ACTIONS(1457), 13, sym__dedent, sym__string_start, sym__template_string_start, @@ -52426,7 +52912,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1449), 33, + ACTIONS(1455), 34, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -52460,13 +52947,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [34679] = 3, + [34928] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1455), 13, - sym__dedent, + ACTIONS(944), 13, sym__string_start, sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -52477,7 +52964,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1453), 33, + ACTIONS(942), 34, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -52511,13 +52999,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [34733] = 3, + [34983] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1459), 13, - sym__dedent, + ACTIONS(1342), 13, sym__string_start, sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -52528,7 +53016,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1457), 33, + ACTIONS(1340), 34, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -52562,13 +53051,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [34787] = 3, + [35038] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1463), 13, - sym__dedent, + ACTIONS(1346), 13, sym__string_start, sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -52579,7 +53068,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1461), 33, + ACTIONS(1344), 34, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -52613,13 +53103,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [34841] = 3, + [35093] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1467), 13, - sym__dedent, + ACTIONS(1198), 13, sym__string_start, sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -52630,7 +53120,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1465), 33, + ACTIONS(1196), 34, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -52664,13 +53155,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [34895] = 3, + [35148] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1293), 13, - sym__dedent, + ACTIONS(1459), 13, sym__string_start, sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -52681,7 +53172,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1295), 33, + ACTIONS(1461), 34, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -52715,13 +53207,68 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [34949] = 3, + [35203] = 6, ACTIONS(3), 1, sym_comment, - ACTIONS(1297), 13, - sym__dedent, + ACTIONS(1465), 1, + anon_sym_COMMA, + ACTIONS(1472), 1, + anon_sym_EQ, + ACTIONS(1470), 14, + anon_sym_COLON, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_AT_EQ, + anon_sym_SLASH_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_STAR_STAR_EQ, + anon_sym_GT_GT_EQ, + anon_sym_LT_LT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + ACTIONS(1468), 15, + anon_sym_STAR, + anon_sym_GT_GT, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_SLASH, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1463), 16, + sym__newline, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_if, + anon_sym_in, + anon_sym_LBRACK, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + anon_sym_SEMI, + [35264] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1350), 13, sym__string_start, sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -52732,7 +53279,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1299), 33, + ACTIONS(1348), 34, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -52766,13 +53314,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [35003] = 3, + [35319] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1301), 13, - sym__dedent, + ACTIONS(1354), 13, sym__string_start, sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -52783,7 +53331,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1303), 33, + ACTIONS(1352), 34, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -52817,13 +53366,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [35057] = 3, + [35374] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1210), 13, - sym__dedent, + ACTIONS(1474), 13, sym__string_start, sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -52834,7 +53383,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1208), 33, + ACTIONS(1476), 34, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -52868,13 +53418,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [35111] = 3, + [35429] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1305), 13, - sym__dedent, + ACTIONS(1358), 13, sym__string_start, sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -52885,7 +53435,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1307), 33, + ACTIONS(1356), 34, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -52919,13 +53470,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [35165] = 3, + [35484] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1309), 13, - sym__dedent, + ACTIONS(1362), 13, sym__string_start, sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -52936,7 +53487,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1311), 33, + ACTIONS(1360), 34, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -52970,13 +53522,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [35219] = 3, + [35539] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1317), 13, - sym__dedent, + ACTIONS(1366), 13, sym__string_start, sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -52987,7 +53539,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1319), 33, + ACTIONS(1364), 34, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -53021,13 +53574,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [35273] = 3, + [35594] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1321), 13, - sym__dedent, + ACTIONS(1282), 13, sym__string_start, sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -53038,7 +53591,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1323), 33, + ACTIONS(1280), 34, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -53072,13 +53626,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [35327] = 3, + [35649] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1325), 13, - sym__dedent, + ACTIONS(1370), 13, sym__string_start, sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -53089,7 +53643,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1327), 33, + ACTIONS(1368), 34, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -53123,10 +53678,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [35381] = 3, + [35704] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1451), 13, + ACTIONS(1374), 13, sym__string_start, sym__template_string_start, ts_builtin_sym_end, @@ -53140,7 +53695,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1449), 33, + ACTIONS(1372), 34, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -53174,13 +53730,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [35435] = 3, + [35759] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1329), 13, - sym__dedent, + ACTIONS(1378), 13, sym__string_start, sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -53191,7 +53747,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1331), 33, + ACTIONS(1376), 34, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -53225,13 +53782,68 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [35489] = 3, + [35814] = 6, ACTIONS(3), 1, sym_comment, - ACTIONS(1333), 13, - sym__dedent, + ACTIONS(1232), 1, + anon_sym_COMMA, + ACTIONS(1239), 1, + anon_sym_EQ, + ACTIONS(1241), 14, + anon_sym_COLON, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_AT_EQ, + anon_sym_SLASH_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_STAR_STAR_EQ, + anon_sym_GT_GT_EQ, + anon_sym_LT_LT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + ACTIONS(1235), 15, + anon_sym_STAR, + anon_sym_GT_GT, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_SLASH, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1230), 16, + sym__newline, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_if, + anon_sym_in, + anon_sym_LBRACK, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + anon_sym_SEMI, + [35875] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1382), 13, sym__string_start, sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -53242,7 +53854,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1335), 33, + ACTIONS(1380), 34, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -53276,13 +53889,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [35543] = 3, + [35930] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1337), 13, - sym__dedent, + ACTIONS(1286), 13, sym__string_start, sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -53293,7 +53906,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1339), 33, + ACTIONS(1284), 34, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -53327,13 +53941,68 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [35597] = 3, + [35985] = 6, ACTIONS(3), 1, sym_comment, - ACTIONS(1341), 13, - sym__dedent, + ACTIONS(1260), 1, + anon_sym_EQ, + ACTIONS(1255), 3, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_RBRACK, + ACTIONS(1230), 14, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_if, + anon_sym_in, + anon_sym_LBRACK, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + ACTIONS(1262), 14, + anon_sym_COLON, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_AT_EQ, + anon_sym_SLASH_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_STAR_STAR_EQ, + anon_sym_GT_GT_EQ, + anon_sym_LT_LT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + ACTIONS(1235), 15, + anon_sym_STAR, + anon_sym_GT_GT, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_SLASH, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT, + anon_sym_GT, + [36046] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1386), 13, sym__string_start, sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -53344,7 +54013,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1343), 33, + ACTIONS(1384), 34, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -53378,13 +54048,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [35651] = 3, + [36101] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1345), 13, - sym__dedent, + ACTIONS(1390), 13, sym__string_start, sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -53395,7 +54065,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1347), 33, + ACTIONS(1388), 34, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -53429,13 +54100,82 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [35705] = 3, + [36156] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(1349), 13, - sym__dedent, + ACTIONS(293), 1, + anon_sym_LBRACE, + ACTIONS(315), 1, sym__string_start, + ACTIONS(317), 1, sym__template_string_start, + ACTIONS(692), 1, + sym_identifier, + ACTIONS(696), 1, + anon_sym_LPAREN, + ACTIONS(704), 1, + anon_sym_LBRACK, + ACTIONS(706), 1, + anon_sym_await, + ACTIONS(1218), 1, + anon_sym_STAR, + STATE(645), 1, + sym_string, + STATE(658), 1, + sym_template_string, + STATE(1013), 1, + sym_primary_expression, + STATE(1495), 1, + sym_pattern, + ACTIONS(309), 2, + sym_ellipsis, + sym_float, + STATE(848), 2, + sym_attribute, + sym_subscript, + ACTIONS(301), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + STATE(1001), 3, + sym_tuple_pattern, + sym_list_pattern, + sym_list_splat_pattern, + ACTIONS(311), 4, + sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(694), 6, + anon_sym_lazy, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(725), 15, + sym_binary_operator, + sym_unary_operator, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [36245] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1394), 13, + sym__string_start, + sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -53446,7 +54186,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1351), 33, + ACTIONS(1392), 34, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -53480,10 +54221,79 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [35759] = 3, + [36300] = 20, + ACTIONS(3), 1, + sym_comment, + ACTIONS(293), 1, + anon_sym_LBRACE, + ACTIONS(315), 1, + sym__string_start, + ACTIONS(317), 1, + sym__template_string_start, + ACTIONS(692), 1, + sym_identifier, + ACTIONS(696), 1, + anon_sym_LPAREN, + ACTIONS(704), 1, + anon_sym_LBRACK, + ACTIONS(706), 1, + anon_sym_await, + ACTIONS(1218), 1, + anon_sym_STAR, + STATE(645), 1, + sym_string, + STATE(658), 1, + sym_template_string, + STATE(998), 1, + sym_pattern, + STATE(1013), 1, + sym_primary_expression, + ACTIONS(309), 2, + sym_ellipsis, + sym_float, + STATE(848), 2, + sym_attribute, + sym_subscript, + ACTIONS(301), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + STATE(1001), 3, + sym_tuple_pattern, + sym_list_pattern, + sym_list_splat_pattern, + ACTIONS(311), 4, + sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(694), 6, + anon_sym_lazy, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(725), 15, + sym_binary_operator, + sym_unary_operator, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [36389] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1447), 13, + ACTIONS(1278), 13, sym__string_start, sym__template_string_start, ts_builtin_sym_end, @@ -53497,7 +54307,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1445), 33, + ACTIONS(1276), 34, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -53531,13 +54342,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [35813] = 3, + [36444] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1353), 13, - sym__dedent, + ACTIONS(1398), 13, sym__string_start, sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -53548,7 +54359,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1355), 33, + ACTIONS(1396), 34, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -53582,13 +54394,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [35867] = 3, + [36499] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1357), 13, - sym__dedent, + ACTIONS(1406), 13, sym__string_start, sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -53599,7 +54411,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1359), 33, + ACTIONS(1404), 34, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -53633,13 +54446,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [35921] = 3, + [36554] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1361), 13, - sym__dedent, + ACTIONS(1410), 13, sym__string_start, sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -53650,7 +54463,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1363), 33, + ACTIONS(1408), 34, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -53684,13 +54498,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [35975] = 3, + [36609] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1365), 13, - sym__dedent, + ACTIONS(1414), 13, sym__string_start, sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -53701,7 +54515,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1367), 33, + ACTIONS(1412), 34, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -53735,13 +54550,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [36029] = 3, + [36664] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1369), 13, - sym__dedent, + ACTIONS(1418), 13, sym__string_start, sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -53752,7 +54567,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1371), 33, + ACTIONS(1416), 34, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -53786,13 +54602,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [36083] = 3, + [36719] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1373), 13, - sym__dedent, + ACTIONS(1433), 13, sym__string_start, sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -53803,7 +54619,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1375), 33, + ACTIONS(1431), 34, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -53837,13 +54654,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [36137] = 3, + [36774] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1377), 13, - sym__dedent, + ACTIONS(1437), 13, sym__string_start, sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -53854,7 +54671,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1379), 33, + ACTIONS(1435), 34, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -53888,10 +54706,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [36191] = 3, + [36829] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1455), 13, + ACTIONS(1298), 13, sym__string_start, sym__template_string_start, ts_builtin_sym_end, @@ -53905,7 +54723,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1453), 33, + ACTIONS(1296), 34, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -53939,10 +54758,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [36245] = 3, + [36884] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1459), 13, + ACTIONS(1441), 13, sym__string_start, sym__template_string_start, ts_builtin_sym_end, @@ -53956,7 +54775,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1457), 33, + ACTIONS(1439), 34, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -53990,13 +54810,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [36299] = 3, + [36939] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1389), 13, - sym__dedent, + ACTIONS(1445), 13, sym__string_start, sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -54007,7 +54827,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1391), 33, + ACTIONS(1443), 34, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -54041,13 +54862,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [36353] = 3, + [36994] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1393), 13, - sym__dedent, + ACTIONS(1449), 13, sym__string_start, sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -54058,7 +54879,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1395), 33, + ACTIONS(1447), 34, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -54092,13 +54914,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [36407] = 3, + [37049] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1397), 13, - sym__dedent, + ACTIONS(1306), 13, sym__string_start, sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -54109,7 +54931,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1399), 33, + ACTIONS(1304), 34, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -54143,13 +54966,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [36461] = 3, + [37104] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1401), 13, - sym__dedent, + ACTIONS(1453), 13, sym__string_start, sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -54160,7 +54983,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1403), 33, + ACTIONS(1451), 34, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -54194,13 +55018,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [36515] = 3, + [37159] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1405), 13, - sym__dedent, + ACTIONS(1457), 13, sym__string_start, sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -54211,7 +55035,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1407), 33, + ACTIONS(1455), 34, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -54245,13 +55070,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [36569] = 3, + [37214] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1413), 13, - sym__dedent, + ACTIONS(1310), 13, sym__string_start, sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -54262,7 +55087,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1415), 33, + ACTIONS(1308), 34, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -54296,13 +55122,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [36623] = 3, + [37269] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1417), 13, - sym__dedent, + ACTIONS(1220), 13, sym__string_start, sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -54313,7 +55139,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1419), 33, + ACTIONS(1222), 34, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -54347,10 +55174,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [36677] = 3, + [37324] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1463), 13, + ACTIONS(980), 13, sym__string_start, sym__template_string_start, ts_builtin_sym_end, @@ -54364,7 +55191,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1461), 33, + ACTIONS(982), 34, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -54398,10 +55226,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [36731] = 3, + [37379] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1467), 13, + ACTIONS(1314), 13, sym__string_start, sym__template_string_start, ts_builtin_sym_end, @@ -54415,7 +55243,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1465), 33, + ACTIONS(1312), 34, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -54449,13 +55278,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [36785] = 3, + [37434] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(979), 13, + ACTIONS(1400), 13, + sym__dedent, sym__string_start, sym__template_string_start, - ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -54466,7 +55295,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(981), 33, + ACTIONS(1402), 34, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -54500,13 +55330,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [36839] = 3, + [37489] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1427), 13, + ACTIONS(944), 13, + sym__dedent, sym__string_start, sym__template_string_start, - ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -54517,7 +55347,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1425), 33, + ACTIONS(942), 34, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -54551,13 +55382,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [36893] = 3, + [37544] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1431), 13, + ACTIONS(1474), 13, + sym__dedent, sym__string_start, sym__template_string_start, - ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -54568,7 +55399,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1429), 33, + ACTIONS(1476), 34, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -54602,10 +55434,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [36947] = 3, + [37599] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1435), 13, + ACTIONS(1318), 13, sym__string_start, sym__template_string_start, ts_builtin_sym_end, @@ -54619,7 +55451,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1433), 33, + ACTIONS(1316), 34, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -54653,13 +55486,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [37001] = 3, + [37654] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1439), 13, + ACTIONS(1459), 13, + sym__dedent, sym__string_start, sym__template_string_start, - ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -54670,7 +55503,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1437), 33, + ACTIONS(1461), 34, + anon_sym_lazy, anon_sym_import, anon_sym_from, anon_sym_STAR, @@ -54704,59 +55538,56 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [37055] = 20, + [37709] = 18, ACTIONS(3), 1, sym_comment, - ACTIONS(288), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(310), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(663), 1, - sym_identifier, - ACTIONS(665), 1, + ACTIONS(575), 1, anon_sym_LPAREN, - ACTIONS(675), 1, + ACTIONS(586), 1, anon_sym_LBRACK, - ACTIONS(677), 1, + ACTIONS(1478), 1, + sym_identifier, + ACTIONS(1484), 1, anon_sym_await, - ACTIONS(1171), 1, - anon_sym_STAR, - STATE(621), 1, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, - STATE(1005), 1, - sym_pattern, - STATE(1012), 1, + STATE(1013), 1, sym_primary_expression, - ACTIONS(304), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - STATE(849), 2, + STATE(859), 2, sym_attribute, sym_subscript, - ACTIONS(296), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(999), 3, - sym_tuple_pattern, - sym_list_pattern, - sym_list_splat_pattern, - ACTIONS(306), 4, + ACTIONS(1482), 3, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_COLON, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(669), 5, + ACTIONS(1480), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(724), 15, + STATE(725), 15, sym_binary_operator, sym_unary_operator, sym_call, @@ -54772,108 +55603,54 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [37143] = 3, + [37792] = 16, ACTIONS(3), 1, sym_comment, - ACTIONS(1443), 13, - sym__string_start, - sym__template_string_start, - ts_builtin_sym_end, + ACTIONS(640), 1, anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, + ACTIONS(646), 1, anon_sym_LBRACK, + ACTIONS(648), 1, anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, - sym_ellipsis, - sym_float, - ACTIONS(1441), 33, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, - anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, - anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_with, - anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, - anon_sym_exec, - anon_sym_type, - anon_sym_class, - anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, + ACTIONS(652), 1, anon_sym_await, - sym_true, - sym_false, - sym_none, - [37197] = 18, - ACTIONS(3), 1, - sym_comment, - ACTIONS(288), 1, - anon_sym_LBRACE, - ACTIONS(310), 1, + ACTIONS(654), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(656), 1, sym__template_string_start, - ACTIONS(578), 1, - anon_sym_LPAREN, - ACTIONS(591), 1, - anon_sym_LBRACK, - ACTIONS(1469), 1, - sym_identifier, - ACTIONS(1475), 1, - anon_sym_await, - STATE(621), 1, + ACTIONS(1486), 1, + anon_sym_not, + STATE(793), 1, sym_string, - STATE(624), 1, + STATE(794), 1, sym_template_string, - STATE(1012), 1, + STATE(838), 1, sym_primary_expression, - ACTIONS(304), 2, + ACTIONS(650), 2, sym_ellipsis, sym_float, - STATE(834), 2, - sym_attribute, - sym_subscript, - ACTIONS(296), 3, + ACTIONS(644), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(1471), 3, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_COLON, - ACTIONS(306), 4, + ACTIONS(636), 5, sym_integer, + sym_identifier, sym_true, sym_false, sym_none, - ACTIONS(1473), 5, + ACTIONS(638), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(724), 15, + STATE(970), 17, sym_binary_operator, sym_unary_operator, + sym_attribute, + sym_subscript, sym_call, sym_list, sym_set, @@ -54887,49 +55664,50 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [37279] = 16, + [37869] = 16, ACTIONS(3), 1, sym_comment, - ACTIONS(288), 1, - anon_sym_LBRACE, - ACTIONS(310), 1, - sym__string_start, - ACTIONS(312), 1, - sym__template_string_start, - ACTIONS(597), 1, + ACTIONS(616), 1, anon_sym_LPAREN, - ACTIONS(603), 1, + ACTIONS(622), 1, anon_sym_LBRACK, - ACTIONS(605), 1, + ACTIONS(624), 1, + anon_sym_LBRACE, + ACTIONS(628), 1, anon_sym_await, - ACTIONS(1477), 1, + ACTIONS(630), 1, + sym__string_start, + ACTIONS(632), 1, + sym__template_string_start, + ACTIONS(1488), 1, anon_sym_not, - STATE(621), 1, + STATE(766), 1, sym_string, - STATE(624), 1, + STATE(776), 1, sym_template_string, - STATE(738), 1, + STATE(809), 1, sym_primary_expression, - ACTIONS(304), 2, + ACTIONS(626), 2, sym_ellipsis, sym_float, - ACTIONS(601), 3, + ACTIONS(620), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 5, + ACTIONS(612), 5, sym_integer, sym_identifier, sym_true, sym_false, sym_none, - ACTIONS(583), 5, + ACTIONS(614), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(724), 17, + STATE(878), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -54947,147 +55725,50 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [37355] = 5, + [37946] = 16, ACTIONS(3), 1, sym_comment, - ACTIONS(310), 1, - sym__string_start, - STATE(619), 2, - sym_string, - aux_sym_concatenated_string_repeat1, - ACTIONS(1481), 6, - anon_sym_as, - anon_sym_STAR, - anon_sym_EQ, - anon_sym_SLASH, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1479), 33, - anon_sym_DOT, - anon_sym_LPAREN, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_GT_GT, - anon_sym_if, - anon_sym_COLON, - anon_sym_else, - anon_sym_async, - anon_sym_for, - anon_sym_in, - anon_sym_PIPE, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_RBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_not, - anon_sym_and, - anon_sym_or, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - anon_sym_is, - [37409] = 5, - ACTIONS(3), 1, - sym_comment, - ACTIONS(312), 1, - sym__template_string_start, - STATE(620), 2, - sym_template_string, - aux_sym_concatenated_template_string_repeat1, - ACTIONS(1485), 6, - anon_sym_as, - anon_sym_STAR, - anon_sym_EQ, - anon_sym_SLASH, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1483), 33, - anon_sym_DOT, - anon_sym_LPAREN, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_GT_GT, - anon_sym_if, - anon_sym_COLON, - anon_sym_else, - anon_sym_async, - anon_sym_for, - anon_sym_in, - anon_sym_PIPE, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_RBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_not, - anon_sym_and, - anon_sym_or, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - anon_sym_is, - [37463] = 16, - ACTIONS(3), 1, - sym_comment, - ACTIONS(51), 1, + ACTIONS(53), 1, anon_sym_LBRACE, - ACTIONS(81), 1, - sym__string_start, ACTIONS(83), 1, + sym__string_start, + ACTIONS(85), 1, sym__template_string_start, - ACTIONS(568), 1, + ACTIONS(594), 1, anon_sym_LPAREN, - ACTIONS(574), 1, + ACTIONS(598), 1, anon_sym_LBRACK, - ACTIONS(576), 1, + ACTIONS(600), 1, anon_sym_await, - ACTIONS(1487), 1, + ACTIONS(1490), 1, anon_sym_not, - STATE(763), 1, + STATE(769), 1, sym_template_string, - STATE(782), 1, + STATE(775), 1, sym_string, - STATE(800), 1, + STATE(818), 1, sym_primary_expression, - ACTIONS(75), 2, + ACTIONS(77), 2, sym_ellipsis, sym_float, - ACTIONS(47), 3, + ACTIONS(49), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(77), 5, + ACTIONS(79), 5, sym_integer, sym_identifier, sym_true, sym_false, sym_none, - ACTIONS(570), 5, + ACTIONS(592), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(908), 17, + STATE(920), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -55105,196 +55786,50 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [37539] = 5, + [38023] = 16, ACTIONS(3), 1, sym_comment, - ACTIONS(1493), 1, + ACTIONS(293), 1, + anon_sym_LBRACE, + ACTIONS(315), 1, sym__string_start, - STATE(619), 2, - sym_string, - aux_sym_concatenated_string_repeat1, - ACTIONS(1491), 6, - anon_sym_as, - anon_sym_STAR, - anon_sym_EQ, - anon_sym_SLASH, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1489), 33, - anon_sym_DOT, - anon_sym_LPAREN, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_GT_GT, - anon_sym_if, - anon_sym_COLON, - anon_sym_else, - anon_sym_async, - anon_sym_for, - anon_sym_in, - anon_sym_PIPE, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_RBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_not, - anon_sym_and, - anon_sym_or, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - anon_sym_is, - [37593] = 5, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1500), 1, + ACTIONS(317), 1, sym__template_string_start, - STATE(620), 2, - sym_template_string, - aux_sym_concatenated_template_string_repeat1, - ACTIONS(1498), 6, - anon_sym_as, - anon_sym_STAR, - anon_sym_EQ, - anon_sym_SLASH, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1496), 33, - anon_sym_DOT, - anon_sym_LPAREN, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_GT_GT, - anon_sym_if, - anon_sym_COLON, - anon_sym_else, - anon_sym_async, - anon_sym_for, - anon_sym_in, - anon_sym_PIPE, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_RBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_not, - anon_sym_and, - anon_sym_or, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - anon_sym_is, - [37647] = 5, - ACTIONS(3), 1, - sym_comment, - ACTIONS(310), 1, - sym__string_start, - STATE(616), 2, - sym_string, - aux_sym_concatenated_string_repeat1, - ACTIONS(1178), 6, - anon_sym_as, - anon_sym_STAR, - anon_sym_EQ, - anon_sym_SLASH, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1173), 33, - anon_sym_DOT, - anon_sym_LPAREN, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_GT_GT, - anon_sym_if, - anon_sym_COLON, - anon_sym_else, - anon_sym_async, - anon_sym_for, - anon_sym_in, - anon_sym_PIPE, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_RBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_not, - anon_sym_and, - anon_sym_or, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - anon_sym_is, - [37701] = 16, - ACTIONS(3), 1, - sym_comment, - ACTIONS(631), 1, + ACTIONS(575), 1, anon_sym_LPAREN, - ACTIONS(639), 1, + ACTIONS(586), 1, anon_sym_LBRACK, - ACTIONS(641), 1, - anon_sym_LBRACE, - ACTIONS(645), 1, + ACTIONS(590), 1, anon_sym_await, - ACTIONS(647), 1, - sym__string_start, - ACTIONS(649), 1, - sym__template_string_start, - ACTIONS(1503), 1, + ACTIONS(1492), 1, anon_sym_not, - STATE(794), 1, + STATE(645), 1, sym_string, - STATE(795), 1, + STATE(658), 1, sym_template_string, - STATE(831), 1, + STATE(758), 1, sym_primary_expression, - ACTIONS(643), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(637), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(629), 5, + ACTIONS(311), 5, sym_integer, sym_identifier, sym_true, sym_false, sym_none, - ACTIONS(633), 5, + ACTIONS(573), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(953), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -55312,49 +55847,50 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [37777] = 16, + [38100] = 16, ACTIONS(3), 1, sym_comment, - ACTIONS(609), 1, - anon_sym_LPAREN, - ACTIONS(617), 1, - anon_sym_LBRACK, - ACTIONS(619), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(623), 1, - anon_sym_await, - ACTIONS(625), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(627), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(1505), 1, + ACTIONS(602), 1, + anon_sym_LPAREN, + ACTIONS(608), 1, + anon_sym_LBRACK, + ACTIONS(610), 1, + anon_sym_await, + ACTIONS(1494), 1, anon_sym_not, - STATE(767), 1, + STATE(645), 1, sym_string, - STATE(768), 1, + STATE(658), 1, sym_template_string, - STATE(788), 1, + STATE(748), 1, sym_primary_expression, - ACTIONS(621), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(615), 3, + ACTIONS(606), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(607), 5, + ACTIONS(311), 5, sym_integer, sym_identifier, sym_true, sym_false, sym_none, - ACTIONS(611), 5, + ACTIONS(573), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(924), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -55372,98 +55908,50 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [37853] = 5, + [38177] = 16, ACTIONS(3), 1, sym_comment, - ACTIONS(312), 1, - sym__template_string_start, - STATE(617), 2, - sym_template_string, - aux_sym_concatenated_template_string_repeat1, - ACTIONS(1178), 6, - anon_sym_as, - anon_sym_STAR, - anon_sym_EQ, - anon_sym_SLASH, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1173), 33, - anon_sym_DOT, - anon_sym_LPAREN, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_GT_GT, - anon_sym_if, - anon_sym_COLON, - anon_sym_else, - anon_sym_async, - anon_sym_for, - anon_sym_in, - anon_sym_PIPE, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_RBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_not, - anon_sym_and, - anon_sym_or, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - anon_sym_is, - [37907] = 16, - ACTIONS(3), 1, - sym_comment, - ACTIONS(288), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(310), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(578), 1, + ACTIONS(658), 1, anon_sym_LPAREN, - ACTIONS(591), 1, + ACTIONS(664), 1, anon_sym_LBRACK, - ACTIONS(595), 1, + ACTIONS(666), 1, anon_sym_await, - ACTIONS(1507), 1, + ACTIONS(1496), 1, anon_sym_not, - STATE(621), 1, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, - STATE(752), 1, + STATE(805), 1, sym_primary_expression, - ACTIONS(304), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(296), 3, + ACTIONS(662), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 5, + ACTIONS(311), 5, sym_integer, sym_identifier, sym_true, sym_false, sym_none, - ACTIONS(583), 5, + ACTIONS(573), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(724), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -55481,49 +55969,48 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [37983] = 16, + [38254] = 15, ACTIONS(3), 1, sym_comment, - ACTIONS(288), 1, + ACTIONS(53), 1, anon_sym_LBRACE, - ACTIONS(310), 1, + ACTIONS(83), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(85), 1, sym__template_string_start, - ACTIONS(653), 1, + ACTIONS(594), 1, anon_sym_LPAREN, - ACTIONS(659), 1, + ACTIONS(598), 1, anon_sym_LBRACK, - ACTIONS(661), 1, + ACTIONS(600), 1, anon_sym_await, - ACTIONS(1509), 1, - anon_sym_not, - STATE(621), 1, - sym_string, - STATE(624), 1, + STATE(769), 1, sym_template_string, - STATE(814), 1, + STATE(775), 1, + sym_string, + STATE(824), 1, sym_primary_expression, - ACTIONS(304), 2, + ACTIONS(77), 2, sym_ellipsis, sym_float, - ACTIONS(657), 3, + ACTIONS(49), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 5, + ACTIONS(79), 5, sym_integer, sym_identifier, sym_true, sym_false, sym_none, - ACTIONS(583), 5, + ACTIONS(592), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(724), 17, + STATE(920), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -55541,47 +56028,48 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [38059] = 15, + [38328] = 15, ACTIONS(3), 1, sym_comment, - ACTIONS(631), 1, + ACTIONS(616), 1, anon_sym_LPAREN, - ACTIONS(639), 1, + ACTIONS(622), 1, anon_sym_LBRACK, - ACTIONS(641), 1, + ACTIONS(624), 1, anon_sym_LBRACE, - ACTIONS(645), 1, + ACTIONS(628), 1, anon_sym_await, - ACTIONS(647), 1, + ACTIONS(630), 1, sym__string_start, - ACTIONS(649), 1, + ACTIONS(632), 1, sym__template_string_start, - STATE(794), 1, + STATE(766), 1, sym_string, - STATE(795), 1, + STATE(776), 1, sym_template_string, - STATE(843), 1, + STATE(819), 1, sym_primary_expression, - ACTIONS(643), 2, + ACTIONS(626), 2, sym_ellipsis, sym_float, - ACTIONS(637), 3, + ACTIONS(620), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(629), 5, + ACTIONS(612), 5, sym_integer, sym_identifier, sym_true, sym_false, sym_none, - ACTIONS(633), 5, + ACTIONS(614), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(953), 17, + STATE(878), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -55599,47 +56087,48 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [38132] = 15, + [38402] = 15, ACTIONS(3), 1, sym_comment, - ACTIONS(288), 1, - anon_sym_LBRACE, - ACTIONS(310), 1, - sym__string_start, - ACTIONS(312), 1, - sym__template_string_start, - ACTIONS(597), 1, + ACTIONS(616), 1, anon_sym_LPAREN, - ACTIONS(603), 1, + ACTIONS(622), 1, anon_sym_LBRACK, - ACTIONS(605), 1, + ACTIONS(624), 1, + anon_sym_LBRACE, + ACTIONS(628), 1, anon_sym_await, - STATE(621), 1, + ACTIONS(630), 1, + sym__string_start, + ACTIONS(632), 1, + sym__template_string_start, + STATE(766), 1, sym_string, - STATE(624), 1, + STATE(776), 1, sym_template_string, - STATE(736), 1, + STATE(820), 1, sym_primary_expression, - ACTIONS(304), 2, + ACTIONS(626), 2, sym_ellipsis, sym_float, - ACTIONS(601), 3, + ACTIONS(620), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 5, + ACTIONS(612), 5, sym_integer, sym_identifier, sym_true, sym_false, sym_none, - ACTIONS(583), 5, + ACTIONS(614), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(724), 17, + STATE(878), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -55657,47 +56146,48 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [38205] = 15, + [38476] = 15, ACTIONS(3), 1, sym_comment, - ACTIONS(288), 1, - anon_sym_LBRACE, - ACTIONS(310), 1, - sym__string_start, - ACTIONS(312), 1, - sym__template_string_start, - ACTIONS(597), 1, + ACTIONS(640), 1, anon_sym_LPAREN, - ACTIONS(603), 1, + ACTIONS(646), 1, anon_sym_LBRACK, - ACTIONS(605), 1, + ACTIONS(648), 1, + anon_sym_LBRACE, + ACTIONS(652), 1, anon_sym_await, - STATE(621), 1, + ACTIONS(654), 1, + sym__string_start, + ACTIONS(656), 1, + sym__template_string_start, + STATE(793), 1, sym_string, - STATE(624), 1, + STATE(794), 1, sym_template_string, - STATE(737), 1, + STATE(856), 1, sym_primary_expression, - ACTIONS(304), 2, + ACTIONS(650), 2, sym_ellipsis, sym_float, - ACTIONS(601), 3, + ACTIONS(644), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 5, + ACTIONS(636), 5, sym_integer, sym_identifier, sym_true, sym_false, sym_none, - ACTIONS(583), 5, + ACTIONS(638), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(724), 17, + STATE(970), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -55715,47 +56205,48 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [38278] = 15, + [38550] = 15, ACTIONS(3), 1, sym_comment, - ACTIONS(288), 1, - anon_sym_LBRACE, - ACTIONS(310), 1, - sym__string_start, - ACTIONS(312), 1, - sym__template_string_start, - ACTIONS(597), 1, + ACTIONS(616), 1, anon_sym_LPAREN, - ACTIONS(603), 1, + ACTIONS(622), 1, anon_sym_LBRACK, - ACTIONS(605), 1, + ACTIONS(624), 1, + anon_sym_LBRACE, + ACTIONS(628), 1, anon_sym_await, - STATE(621), 1, + ACTIONS(630), 1, + sym__string_start, + ACTIONS(632), 1, + sym__template_string_start, + STATE(766), 1, sym_string, - STATE(624), 1, + STATE(776), 1, sym_template_string, - STATE(738), 1, + STATE(804), 1, sym_primary_expression, - ACTIONS(304), 2, + ACTIONS(626), 2, sym_ellipsis, sym_float, - ACTIONS(601), 3, + ACTIONS(620), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 5, + ACTIONS(612), 5, sym_integer, sym_identifier, sym_true, sym_false, sym_none, - ACTIONS(583), 5, + ACTIONS(614), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(724), 17, + STATE(878), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -55773,47 +56264,48 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [38351] = 15, + [38624] = 15, ACTIONS(3), 1, sym_comment, - ACTIONS(288), 1, - anon_sym_LBRACE, - ACTIONS(310), 1, - sym__string_start, - ACTIONS(312), 1, - sym__template_string_start, - ACTIONS(597), 1, + ACTIONS(616), 1, anon_sym_LPAREN, - ACTIONS(603), 1, + ACTIONS(622), 1, anon_sym_LBRACK, - ACTIONS(605), 1, + ACTIONS(624), 1, + anon_sym_LBRACE, + ACTIONS(628), 1, anon_sym_await, - STATE(621), 1, + ACTIONS(630), 1, + sym__string_start, + ACTIONS(632), 1, + sym__template_string_start, + STATE(766), 1, sym_string, - STATE(624), 1, + STATE(776), 1, sym_template_string, - STATE(748), 1, + STATE(822), 1, sym_primary_expression, - ACTIONS(304), 2, + ACTIONS(626), 2, sym_ellipsis, sym_float, - ACTIONS(601), 3, + ACTIONS(620), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 5, + ACTIONS(612), 5, sym_integer, sym_identifier, sym_true, sym_false, sym_none, - ACTIONS(583), 5, + ACTIONS(614), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(724), 17, + STATE(878), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -55831,47 +56323,48 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [38424] = 15, + [38698] = 15, ACTIONS(3), 1, sym_comment, - ACTIONS(288), 1, - anon_sym_LBRACE, - ACTIONS(310), 1, - sym__string_start, - ACTIONS(312), 1, - sym__template_string_start, - ACTIONS(597), 1, + ACTIONS(616), 1, anon_sym_LPAREN, - ACTIONS(603), 1, + ACTIONS(622), 1, anon_sym_LBRACK, - ACTIONS(605), 1, + ACTIONS(624), 1, + anon_sym_LBRACE, + ACTIONS(628), 1, anon_sym_await, - STATE(621), 1, + ACTIONS(630), 1, + sym__string_start, + ACTIONS(632), 1, + sym__template_string_start, + STATE(766), 1, sym_string, - STATE(624), 1, + STATE(776), 1, sym_template_string, - STATE(749), 1, + STATE(801), 1, sym_primary_expression, - ACTIONS(304), 2, + ACTIONS(626), 2, sym_ellipsis, sym_float, - ACTIONS(601), 3, + ACTIONS(620), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 5, + ACTIONS(612), 5, sym_integer, sym_identifier, sym_true, sym_false, sym_none, - ACTIONS(583), 5, + ACTIONS(614), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(724), 17, + STATE(878), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -55889,47 +56382,48 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [38497] = 15, + [38772] = 15, ACTIONS(3), 1, sym_comment, - ACTIONS(51), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(81), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(83), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(568), 1, + ACTIONS(602), 1, anon_sym_LPAREN, - ACTIONS(574), 1, + ACTIONS(608), 1, anon_sym_LBRACK, - ACTIONS(576), 1, + ACTIONS(610), 1, anon_sym_await, - STATE(763), 1, - sym_template_string, - STATE(782), 1, + STATE(645), 1, sym_string, - STATE(804), 1, + STATE(658), 1, + sym_template_string, + STATE(737), 1, sym_primary_expression, - ACTIONS(75), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(47), 3, + ACTIONS(606), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(77), 5, + ACTIONS(311), 5, sym_integer, sym_identifier, sym_true, sym_false, sym_none, - ACTIONS(570), 5, + ACTIONS(573), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(908), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -55947,47 +56441,48 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [38570] = 15, + [38846] = 15, ACTIONS(3), 1, sym_comment, - ACTIONS(51), 1, + ACTIONS(53), 1, anon_sym_LBRACE, - ACTIONS(81), 1, - sym__string_start, ACTIONS(83), 1, + sym__string_start, + ACTIONS(85), 1, sym__template_string_start, - ACTIONS(568), 1, + ACTIONS(594), 1, anon_sym_LPAREN, - ACTIONS(574), 1, + ACTIONS(598), 1, anon_sym_LBRACK, - ACTIONS(576), 1, + ACTIONS(600), 1, anon_sym_await, - STATE(763), 1, + STATE(769), 1, sym_template_string, - STATE(782), 1, + STATE(775), 1, sym_string, - STATE(805), 1, + STATE(821), 1, sym_primary_expression, - ACTIONS(75), 2, + ACTIONS(77), 2, sym_ellipsis, sym_float, - ACTIONS(47), 3, + ACTIONS(49), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(77), 5, + ACTIONS(79), 5, sym_integer, sym_identifier, sym_true, sym_false, sym_none, - ACTIONS(570), 5, + ACTIONS(592), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(908), 17, + STATE(920), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -56005,47 +56500,48 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [38643] = 15, + [38920] = 15, ACTIONS(3), 1, sym_comment, - ACTIONS(51), 1, - anon_sym_LBRACE, - ACTIONS(81), 1, - sym__string_start, - ACTIONS(83), 1, - sym__template_string_start, - ACTIONS(568), 1, + ACTIONS(616), 1, anon_sym_LPAREN, - ACTIONS(574), 1, + ACTIONS(622), 1, anon_sym_LBRACK, - ACTIONS(576), 1, + ACTIONS(624), 1, + anon_sym_LBRACE, + ACTIONS(628), 1, anon_sym_await, - STATE(763), 1, - sym_template_string, - STATE(782), 1, + ACTIONS(630), 1, + sym__string_start, + ACTIONS(632), 1, + sym__template_string_start, + STATE(766), 1, sym_string, - STATE(796), 1, + STATE(776), 1, + sym_template_string, + STATE(802), 1, sym_primary_expression, - ACTIONS(75), 2, + ACTIONS(626), 2, sym_ellipsis, sym_float, - ACTIONS(47), 3, + ACTIONS(620), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(77), 5, + ACTIONS(612), 5, sym_integer, sym_identifier, sym_true, sym_false, sym_none, - ACTIONS(570), 5, + ACTIONS(614), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(908), 17, + STATE(878), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -56063,51 +56559,54 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [38716] = 15, + [38994] = 17, ACTIONS(3), 1, sym_comment, - ACTIONS(51), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(81), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(83), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(568), 1, + ACTIONS(575), 1, anon_sym_LPAREN, - ACTIONS(574), 1, + ACTIONS(586), 1, anon_sym_LBRACK, - ACTIONS(576), 1, + ACTIONS(1498), 1, + sym_identifier, + ACTIONS(1502), 1, anon_sym_await, - STATE(763), 1, - sym_template_string, - STATE(782), 1, + STATE(645), 1, sym_string, - STATE(799), 1, + STATE(658), 1, + sym_template_string, + STATE(1013), 1, sym_primary_expression, - ACTIONS(75), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(47), 3, + STATE(1004), 2, + sym_attribute, + sym_subscript, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(77), 5, + ACTIONS(311), 4, sym_integer, - sym_identifier, sym_true, sym_false, sym_none, - ACTIONS(570), 5, + ACTIONS(1500), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(908), 17, + STATE(725), 15, sym_binary_operator, sym_unary_operator, - sym_attribute, - sym_subscript, sym_call, sym_list, sym_set, @@ -56121,47 +56620,48 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [38789] = 15, + [39072] = 15, ACTIONS(3), 1, sym_comment, - ACTIONS(631), 1, - anon_sym_LPAREN, - ACTIONS(639), 1, - anon_sym_LBRACK, - ACTIONS(641), 1, + ACTIONS(53), 1, anon_sym_LBRACE, - ACTIONS(645), 1, - anon_sym_await, - ACTIONS(647), 1, + ACTIONS(83), 1, sym__string_start, - ACTIONS(649), 1, + ACTIONS(85), 1, sym__template_string_start, - STATE(794), 1, - sym_string, - STATE(795), 1, + ACTIONS(594), 1, + anon_sym_LPAREN, + ACTIONS(598), 1, + anon_sym_LBRACK, + ACTIONS(600), 1, + anon_sym_await, + STATE(769), 1, sym_template_string, - STATE(828), 1, + STATE(775), 1, + sym_string, + STATE(790), 1, sym_primary_expression, - ACTIONS(643), 2, + ACTIONS(77), 2, sym_ellipsis, sym_float, - ACTIONS(637), 3, + ACTIONS(49), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(629), 5, + ACTIONS(79), 5, sym_integer, sym_identifier, sym_true, sym_false, sym_none, - ACTIONS(633), 5, + ACTIONS(592), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(953), 17, + STATE(920), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -56179,47 +56679,48 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [38862] = 15, + [39146] = 15, ACTIONS(3), 1, sym_comment, - ACTIONS(631), 1, - anon_sym_LPAREN, - ACTIONS(639), 1, - anon_sym_LBRACK, - ACTIONS(641), 1, + ACTIONS(53), 1, anon_sym_LBRACE, - ACTIONS(645), 1, - anon_sym_await, - ACTIONS(647), 1, + ACTIONS(83), 1, sym__string_start, - ACTIONS(649), 1, + ACTIONS(85), 1, sym__template_string_start, - STATE(794), 1, - sym_string, - STATE(795), 1, + ACTIONS(594), 1, + anon_sym_LPAREN, + ACTIONS(598), 1, + anon_sym_LBRACK, + ACTIONS(600), 1, + anon_sym_await, + STATE(769), 1, sym_template_string, - STATE(829), 1, + STATE(775), 1, + sym_string, + STATE(789), 1, sym_primary_expression, - ACTIONS(643), 2, + ACTIONS(77), 2, sym_ellipsis, sym_float, - ACTIONS(637), 3, + ACTIONS(49), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(629), 5, + ACTIONS(79), 5, sym_integer, sym_identifier, sym_true, sym_false, sym_none, - ACTIONS(633), 5, + ACTIONS(592), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(953), 17, + STATE(920), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -56237,47 +56738,48 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [38935] = 15, + [39220] = 15, ACTIONS(3), 1, sym_comment, - ACTIONS(631), 1, - anon_sym_LPAREN, - ACTIONS(639), 1, - anon_sym_LBRACK, - ACTIONS(641), 1, + ACTIONS(53), 1, anon_sym_LBRACE, - ACTIONS(645), 1, - anon_sym_await, - ACTIONS(647), 1, + ACTIONS(83), 1, sym__string_start, - ACTIONS(649), 1, + ACTIONS(85), 1, sym__template_string_start, - STATE(794), 1, - sym_string, - STATE(795), 1, + ACTIONS(594), 1, + anon_sym_LPAREN, + ACTIONS(598), 1, + anon_sym_LBRACK, + ACTIONS(600), 1, + anon_sym_await, + STATE(769), 1, sym_template_string, - STATE(831), 1, + STATE(775), 1, + sym_string, + STATE(791), 1, sym_primary_expression, - ACTIONS(643), 2, + ACTIONS(77), 2, sym_ellipsis, sym_float, - ACTIONS(637), 3, + ACTIONS(49), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(629), 5, + ACTIONS(79), 5, sym_integer, sym_identifier, sym_true, sym_false, sym_none, - ACTIONS(633), 5, + ACTIONS(592), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(953), 17, + STATE(920), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -56295,51 +56797,54 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [39008] = 15, + [39294] = 17, ACTIONS(3), 1, sym_comment, - ACTIONS(631), 1, - anon_sym_LPAREN, - ACTIONS(639), 1, - anon_sym_LBRACK, - ACTIONS(641), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(645), 1, - anon_sym_await, - ACTIONS(647), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(649), 1, + ACTIONS(317), 1, sym__template_string_start, - STATE(794), 1, + ACTIONS(575), 1, + anon_sym_LPAREN, + ACTIONS(586), 1, + anon_sym_LBRACK, + ACTIONS(1478), 1, + sym_identifier, + ACTIONS(1484), 1, + anon_sym_await, + STATE(645), 1, sym_string, - STATE(795), 1, + STATE(658), 1, sym_template_string, - STATE(832), 1, + STATE(1013), 1, sym_primary_expression, - ACTIONS(643), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(637), 3, + STATE(859), 2, + sym_attribute, + sym_subscript, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(629), 5, + ACTIONS(311), 4, sym_integer, - sym_identifier, sym_true, sym_false, sym_none, - ACTIONS(633), 5, + ACTIONS(1480), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(953), 17, + STATE(725), 15, sym_binary_operator, sym_unary_operator, - sym_attribute, - sym_subscript, sym_call, sym_list, sym_set, @@ -56353,47 +56858,48 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [39081] = 15, + [39372] = 15, ACTIONS(3), 1, sym_comment, - ACTIONS(631), 1, + ACTIONS(640), 1, anon_sym_LPAREN, - ACTIONS(639), 1, + ACTIONS(646), 1, anon_sym_LBRACK, - ACTIONS(641), 1, + ACTIONS(648), 1, anon_sym_LBRACE, - ACTIONS(645), 1, + ACTIONS(652), 1, anon_sym_await, - ACTIONS(647), 1, + ACTIONS(654), 1, sym__string_start, - ACTIONS(649), 1, + ACTIONS(656), 1, sym__template_string_start, - STATE(794), 1, + STATE(793), 1, sym_string, - STATE(795), 1, + STATE(794), 1, sym_template_string, - STATE(833), 1, + STATE(831), 1, sym_primary_expression, - ACTIONS(643), 2, + ACTIONS(650), 2, sym_ellipsis, sym_float, - ACTIONS(637), 3, + ACTIONS(644), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(629), 5, + ACTIONS(636), 5, sym_integer, sym_identifier, sym_true, sym_false, sym_none, - ACTIONS(633), 5, + ACTIONS(638), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(953), 17, + STATE(970), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -56411,47 +56917,48 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [39154] = 15, + [39446] = 15, ACTIONS(3), 1, sym_comment, - ACTIONS(631), 1, - anon_sym_LPAREN, - ACTIONS(639), 1, - anon_sym_LBRACK, - ACTIONS(641), 1, + ACTIONS(53), 1, anon_sym_LBRACE, - ACTIONS(645), 1, - anon_sym_await, - ACTIONS(647), 1, + ACTIONS(83), 1, sym__string_start, - ACTIONS(649), 1, + ACTIONS(85), 1, sym__template_string_start, - STATE(794), 1, - sym_string, - STATE(795), 1, + ACTIONS(594), 1, + anon_sym_LPAREN, + ACTIONS(598), 1, + anon_sym_LBRACK, + ACTIONS(600), 1, + anon_sym_await, + STATE(769), 1, sym_template_string, - STATE(835), 1, + STATE(775), 1, + sym_string, + STATE(798), 1, sym_primary_expression, - ACTIONS(643), 2, + ACTIONS(77), 2, sym_ellipsis, sym_float, - ACTIONS(637), 3, + ACTIONS(49), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(629), 5, + ACTIONS(79), 5, sym_integer, sym_identifier, sym_true, sym_false, sym_none, - ACTIONS(633), 5, + ACTIONS(592), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(953), 17, + STATE(920), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -56469,47 +56976,48 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [39227] = 15, + [39520] = 15, ACTIONS(3), 1, sym_comment, - ACTIONS(631), 1, + ACTIONS(640), 1, anon_sym_LPAREN, - ACTIONS(639), 1, + ACTIONS(646), 1, anon_sym_LBRACK, - ACTIONS(641), 1, + ACTIONS(648), 1, anon_sym_LBRACE, - ACTIONS(645), 1, + ACTIONS(652), 1, anon_sym_await, - ACTIONS(647), 1, + ACTIONS(654), 1, sym__string_start, - ACTIONS(649), 1, + ACTIONS(656), 1, sym__template_string_start, - STATE(794), 1, + STATE(793), 1, sym_string, - STATE(795), 1, + STATE(794), 1, sym_template_string, - STATE(836), 1, + STATE(832), 1, sym_primary_expression, - ACTIONS(643), 2, + ACTIONS(650), 2, sym_ellipsis, sym_float, - ACTIONS(637), 3, + ACTIONS(644), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(629), 5, + ACTIONS(636), 5, sym_integer, sym_identifier, sym_true, sym_false, sym_none, - ACTIONS(633), 5, + ACTIONS(638), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(953), 17, + STATE(970), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -56527,47 +57035,48 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [39300] = 15, + [39594] = 15, ACTIONS(3), 1, sym_comment, - ACTIONS(631), 1, + ACTIONS(640), 1, anon_sym_LPAREN, - ACTIONS(639), 1, + ACTIONS(646), 1, anon_sym_LBRACK, - ACTIONS(641), 1, + ACTIONS(648), 1, anon_sym_LBRACE, - ACTIONS(645), 1, + ACTIONS(652), 1, anon_sym_await, - ACTIONS(647), 1, + ACTIONS(654), 1, sym__string_start, - ACTIONS(649), 1, + ACTIONS(656), 1, sym__template_string_start, - STATE(794), 1, + STATE(793), 1, sym_string, - STATE(795), 1, + STATE(794), 1, sym_template_string, - STATE(837), 1, + STATE(838), 1, sym_primary_expression, - ACTIONS(643), 2, + ACTIONS(650), 2, sym_ellipsis, sym_float, - ACTIONS(637), 3, + ACTIONS(644), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(629), 5, + ACTIONS(636), 5, sym_integer, sym_identifier, sym_true, sym_false, sym_none, - ACTIONS(633), 5, + ACTIONS(638), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(953), 17, + STATE(970), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -56585,47 +57094,48 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [39373] = 15, + [39668] = 15, ACTIONS(3), 1, sym_comment, - ACTIONS(631), 1, - anon_sym_LPAREN, - ACTIONS(639), 1, - anon_sym_LBRACK, - ACTIONS(641), 1, + ACTIONS(53), 1, anon_sym_LBRACE, - ACTIONS(645), 1, - anon_sym_await, - ACTIONS(647), 1, + ACTIONS(83), 1, sym__string_start, - ACTIONS(649), 1, + ACTIONS(85), 1, sym__template_string_start, - STATE(794), 1, - sym_string, - STATE(795), 1, + ACTIONS(594), 1, + anon_sym_LPAREN, + ACTIONS(598), 1, + anon_sym_LBRACK, + ACTIONS(600), 1, + anon_sym_await, + STATE(769), 1, sym_template_string, - STATE(844), 1, + STATE(775), 1, + sym_string, + STATE(817), 1, sym_primary_expression, - ACTIONS(643), 2, + ACTIONS(77), 2, sym_ellipsis, sym_float, - ACTIONS(637), 3, + ACTIONS(49), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(629), 5, + ACTIONS(79), 5, sym_integer, sym_identifier, sym_true, sym_false, sym_none, - ACTIONS(633), 5, + ACTIONS(592), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(953), 17, + STATE(920), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -56643,47 +57153,48 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [39446] = 15, + [39742] = 15, ACTIONS(3), 1, sym_comment, - ACTIONS(609), 1, + ACTIONS(640), 1, anon_sym_LPAREN, - ACTIONS(617), 1, + ACTIONS(646), 1, anon_sym_LBRACK, - ACTIONS(619), 1, + ACTIONS(648), 1, anon_sym_LBRACE, - ACTIONS(623), 1, + ACTIONS(652), 1, anon_sym_await, - ACTIONS(625), 1, + ACTIONS(654), 1, sym__string_start, - ACTIONS(627), 1, + ACTIONS(656), 1, sym__template_string_start, - STATE(767), 1, + STATE(793), 1, sym_string, - STATE(768), 1, + STATE(794), 1, sym_template_string, - STATE(786), 1, + STATE(840), 1, sym_primary_expression, - ACTIONS(621), 2, + ACTIONS(650), 2, sym_ellipsis, sym_float, - ACTIONS(615), 3, + ACTIONS(644), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(607), 5, + ACTIONS(636), 5, sym_integer, sym_identifier, sym_true, sym_false, sym_none, - ACTIONS(611), 5, + ACTIONS(638), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(924), 17, + STATE(970), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -56701,47 +57212,107 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [39519] = 15, + [39816] = 15, ACTIONS(3), 1, sym_comment, - ACTIONS(609), 1, + ACTIONS(53), 1, + anon_sym_LBRACE, + ACTIONS(83), 1, + sym__string_start, + ACTIONS(85), 1, + sym__template_string_start, + ACTIONS(594), 1, anon_sym_LPAREN, - ACTIONS(617), 1, + ACTIONS(598), 1, anon_sym_LBRACK, - ACTIONS(619), 1, - anon_sym_LBRACE, - ACTIONS(623), 1, + ACTIONS(600), 1, anon_sym_await, - ACTIONS(625), 1, + STATE(769), 1, + sym_template_string, + STATE(775), 1, + sym_string, + STATE(818), 1, + sym_primary_expression, + ACTIONS(77), 2, + sym_ellipsis, + sym_float, + ACTIONS(49), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(79), 5, + sym_integer, + sym_identifier, + sym_true, + sym_false, + sym_none, + ACTIONS(592), 6, + anon_sym_lazy, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(920), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [39890] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(53), 1, + anon_sym_LBRACE, + ACTIONS(83), 1, sym__string_start, - ACTIONS(627), 1, + ACTIONS(85), 1, sym__template_string_start, - STATE(767), 1, - sym_string, - STATE(768), 1, + ACTIONS(594), 1, + anon_sym_LPAREN, + ACTIONS(598), 1, + anon_sym_LBRACK, + ACTIONS(600), 1, + anon_sym_await, + STATE(769), 1, sym_template_string, - STATE(787), 1, + STATE(775), 1, + sym_string, + STATE(823), 1, sym_primary_expression, - ACTIONS(621), 2, + ACTIONS(77), 2, sym_ellipsis, sym_float, - ACTIONS(615), 3, + ACTIONS(49), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(607), 5, + ACTIONS(79), 5, sym_integer, sym_identifier, sym_true, sym_false, sym_none, - ACTIONS(611), 5, + ACTIONS(592), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(924), 17, + STATE(920), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -56759,47 +57330,97 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [39592] = 15, + [39964] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(609), 1, + ACTIONS(315), 1, + sym__string_start, + STATE(675), 2, + sym_string, + aux_sym_concatenated_string_repeat1, + ACTIONS(1235), 6, + anon_sym_as, + anon_sym_STAR, + anon_sym_EQ, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1230), 33, + anon_sym_DOT, anon_sym_LPAREN, - ACTIONS(617), 1, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_COLON, + anon_sym_else, + anon_sym_async, + anon_sym_for, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, anon_sym_LBRACK, - ACTIONS(619), 1, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [40018] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(623), 1, - anon_sym_await, - ACTIONS(625), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(627), 1, + ACTIONS(317), 1, sym__template_string_start, - STATE(767), 1, + ACTIONS(575), 1, + anon_sym_LPAREN, + ACTIONS(586), 1, + anon_sym_LBRACK, + ACTIONS(590), 1, + anon_sym_await, + STATE(645), 1, sym_string, - STATE(768), 1, + STATE(658), 1, sym_template_string, - STATE(788), 1, + STATE(755), 1, sym_primary_expression, - ACTIONS(621), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(615), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(607), 5, + ACTIONS(311), 5, sym_integer, sym_identifier, sym_true, sym_false, sym_none, - ACTIONS(611), 5, + ACTIONS(573), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(924), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -56817,47 +57438,48 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [39665] = 15, + [40092] = 15, ACTIONS(3), 1, sym_comment, - ACTIONS(609), 1, - anon_sym_LPAREN, - ACTIONS(617), 1, - anon_sym_LBRACK, - ACTIONS(619), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(623), 1, - anon_sym_await, - ACTIONS(625), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(627), 1, + ACTIONS(317), 1, sym__template_string_start, - STATE(767), 1, + ACTIONS(575), 1, + anon_sym_LPAREN, + ACTIONS(586), 1, + anon_sym_LBRACK, + ACTIONS(590), 1, + anon_sym_await, + STATE(645), 1, sym_string, - STATE(768), 1, + STATE(658), 1, sym_template_string, - STATE(789), 1, + STATE(756), 1, sym_primary_expression, - ACTIONS(621), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(615), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(607), 5, + ACTIONS(311), 5, sym_integer, sym_identifier, sym_true, sym_false, sym_none, - ACTIONS(611), 5, + ACTIONS(573), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(924), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -56875,47 +57497,48 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [39738] = 15, + [40166] = 15, ACTIONS(3), 1, sym_comment, - ACTIONS(288), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(310), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(597), 1, + ACTIONS(575), 1, anon_sym_LPAREN, - ACTIONS(603), 1, + ACTIONS(586), 1, anon_sym_LBRACK, - ACTIONS(605), 1, + ACTIONS(590), 1, anon_sym_await, - STATE(621), 1, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, - STATE(743), 1, + STATE(758), 1, sym_primary_expression, - ACTIONS(304), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(601), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 5, + ACTIONS(311), 5, sym_integer, sym_identifier, sym_true, sym_false, sym_none, - ACTIONS(583), 5, + ACTIONS(573), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(724), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -56933,47 +57556,48 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [39811] = 15, + [40240] = 15, ACTIONS(3), 1, sym_comment, - ACTIONS(609), 1, - anon_sym_LPAREN, - ACTIONS(617), 1, - anon_sym_LBRACK, - ACTIONS(619), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(623), 1, - anon_sym_await, - ACTIONS(625), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(627), 1, + ACTIONS(317), 1, sym__template_string_start, - STATE(767), 1, + ACTIONS(575), 1, + anon_sym_LPAREN, + ACTIONS(586), 1, + anon_sym_LBRACK, + ACTIONS(590), 1, + anon_sym_await, + STATE(645), 1, sym_string, - STATE(768), 1, + STATE(658), 1, sym_template_string, - STATE(791), 1, + STATE(761), 1, sym_primary_expression, - ACTIONS(621), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(615), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(607), 5, + ACTIONS(311), 5, sym_integer, sym_identifier, sym_true, sym_false, sym_none, - ACTIONS(611), 5, + ACTIONS(573), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(924), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -56991,47 +57615,48 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [39884] = 15, + [40314] = 15, ACTIONS(3), 1, sym_comment, - ACTIONS(609), 1, - anon_sym_LPAREN, - ACTIONS(617), 1, - anon_sym_LBRACK, - ACTIONS(619), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(623), 1, - anon_sym_await, - ACTIONS(625), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(627), 1, + ACTIONS(317), 1, sym__template_string_start, - STATE(767), 1, + ACTIONS(575), 1, + anon_sym_LPAREN, + ACTIONS(586), 1, + anon_sym_LBRACK, + ACTIONS(590), 1, + anon_sym_await, + STATE(645), 1, sym_string, - STATE(768), 1, + STATE(658), 1, sym_template_string, - STATE(792), 1, + STATE(762), 1, sym_primary_expression, - ACTIONS(621), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(615), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(607), 5, + ACTIONS(311), 5, sym_integer, sym_identifier, sym_true, sym_false, sym_none, - ACTIONS(611), 5, + ACTIONS(573), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(924), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -57049,47 +57674,107 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [39957] = 15, + [40388] = 15, ACTIONS(3), 1, sym_comment, - ACTIONS(609), 1, + ACTIONS(293), 1, + anon_sym_LBRACE, + ACTIONS(315), 1, + sym__string_start, + ACTIONS(317), 1, + sym__template_string_start, + ACTIONS(575), 1, anon_sym_LPAREN, - ACTIONS(617), 1, + ACTIONS(586), 1, anon_sym_LBRACK, - ACTIONS(619), 1, - anon_sym_LBRACE, - ACTIONS(623), 1, + ACTIONS(590), 1, anon_sym_await, - ACTIONS(625), 1, + STATE(645), 1, + sym_string, + STATE(658), 1, + sym_template_string, + STATE(743), 1, + sym_primary_expression, + ACTIONS(309), 2, + sym_ellipsis, + sym_float, + ACTIONS(301), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(311), 5, + sym_integer, + sym_identifier, + sym_true, + sym_false, + sym_none, + ACTIONS(573), 6, + anon_sym_lazy, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(725), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [40462] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(293), 1, + anon_sym_LBRACE, + ACTIONS(315), 1, sym__string_start, - ACTIONS(627), 1, + ACTIONS(317), 1, sym__template_string_start, - STATE(767), 1, + ACTIONS(575), 1, + anon_sym_LPAREN, + ACTIONS(586), 1, + anon_sym_LBRACK, + ACTIONS(590), 1, + anon_sym_await, + STATE(645), 1, sym_string, - STATE(768), 1, + STATE(658), 1, sym_template_string, - STATE(793), 1, + STATE(739), 1, sym_primary_expression, - ACTIONS(621), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(615), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(607), 5, + ACTIONS(311), 5, sym_integer, sym_identifier, sym_true, sym_false, sym_none, - ACTIONS(611), 5, + ACTIONS(573), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(924), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -57107,47 +57792,48 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [40030] = 15, + [40536] = 15, ACTIONS(3), 1, sym_comment, - ACTIONS(288), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(310), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(597), 1, + ACTIONS(575), 1, anon_sym_LPAREN, - ACTIONS(603), 1, + ACTIONS(586), 1, anon_sym_LBRACK, - ACTIONS(605), 1, + ACTIONS(590), 1, anon_sym_await, - STATE(621), 1, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, - STATE(739), 1, + STATE(742), 1, sym_primary_expression, - ACTIONS(304), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(601), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 5, + ACTIONS(311), 5, sym_integer, sym_identifier, sym_true, sym_false, sym_none, - ACTIONS(583), 5, + ACTIONS(573), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(724), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -57165,47 +57851,48 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [40103] = 15, + [40610] = 15, ACTIONS(3), 1, sym_comment, - ACTIONS(609), 1, + ACTIONS(616), 1, anon_sym_LPAREN, - ACTIONS(617), 1, + ACTIONS(622), 1, anon_sym_LBRACK, - ACTIONS(619), 1, + ACTIONS(624), 1, anon_sym_LBRACE, - ACTIONS(623), 1, + ACTIONS(628), 1, anon_sym_await, - ACTIONS(625), 1, + ACTIONS(630), 1, sym__string_start, - ACTIONS(627), 1, + ACTIONS(632), 1, sym__template_string_start, - STATE(767), 1, + STATE(766), 1, sym_string, - STATE(768), 1, + STATE(776), 1, sym_template_string, - STATE(797), 1, + STATE(809), 1, sym_primary_expression, - ACTIONS(621), 2, + ACTIONS(626), 2, sym_ellipsis, sym_float, - ACTIONS(615), 3, + ACTIONS(620), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(607), 5, + ACTIONS(612), 5, sym_integer, sym_identifier, sym_true, sym_false, sym_none, - ACTIONS(611), 5, + ACTIONS(614), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(924), 17, + STATE(878), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -57223,47 +57910,107 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [40176] = 15, + [40684] = 15, ACTIONS(3), 1, sym_comment, - ACTIONS(609), 1, + ACTIONS(293), 1, + anon_sym_LBRACE, + ACTIONS(315), 1, + sym__string_start, + ACTIONS(317), 1, + sym__template_string_start, + ACTIONS(575), 1, anon_sym_LPAREN, - ACTIONS(617), 1, + ACTIONS(586), 1, anon_sym_LBRACK, - ACTIONS(619), 1, - anon_sym_LBRACE, - ACTIONS(623), 1, + ACTIONS(590), 1, anon_sym_await, - ACTIONS(625), 1, + STATE(645), 1, + sym_string, + STATE(658), 1, + sym_template_string, + STATE(745), 1, + sym_primary_expression, + ACTIONS(309), 2, + sym_ellipsis, + sym_float, + ACTIONS(301), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(311), 5, + sym_integer, + sym_identifier, + sym_true, + sym_false, + sym_none, + ACTIONS(573), 6, + anon_sym_lazy, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(725), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [40758] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(293), 1, + anon_sym_LBRACE, + ACTIONS(315), 1, sym__string_start, - ACTIONS(627), 1, + ACTIONS(317), 1, sym__template_string_start, - STATE(767), 1, + ACTIONS(575), 1, + anon_sym_LPAREN, + ACTIONS(586), 1, + anon_sym_LBRACK, + ACTIONS(590), 1, + anon_sym_await, + STATE(645), 1, sym_string, - STATE(768), 1, + STATE(658), 1, sym_template_string, - STATE(798), 1, + STATE(757), 1, sym_primary_expression, - ACTIONS(621), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(615), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(607), 5, + ACTIONS(311), 5, sym_integer, sym_identifier, sym_true, sym_false, sym_none, - ACTIONS(611), 5, + ACTIONS(573), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(924), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -57281,47 +58028,48 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [40249] = 15, + [40832] = 15, ACTIONS(3), 1, sym_comment, - ACTIONS(288), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(310), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(597), 1, + ACTIONS(575), 1, anon_sym_LPAREN, - ACTIONS(603), 1, + ACTIONS(586), 1, anon_sym_LBRACK, - ACTIONS(605), 1, + ACTIONS(590), 1, anon_sym_await, - STATE(621), 1, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, - STATE(759), 1, + STATE(735), 1, sym_primary_expression, - ACTIONS(304), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(601), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 5, + ACTIONS(311), 5, sym_integer, sym_identifier, sym_true, sym_false, sym_none, - ACTIONS(583), 5, + ACTIONS(573), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(724), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -57339,47 +58087,97 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [40322] = 15, + [40906] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(51), 1, + ACTIONS(317), 1, + sym__template_string_start, + STATE(676), 2, + sym_template_string, + aux_sym_concatenated_template_string_repeat1, + ACTIONS(1235), 6, + anon_sym_as, + anon_sym_STAR, + anon_sym_EQ, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1230), 33, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_COLON, + anon_sym_else, + anon_sym_async, + anon_sym_for, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [40960] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(53), 1, anon_sym_LBRACE, - ACTIONS(81), 1, - sym__string_start, ACTIONS(83), 1, + sym__string_start, + ACTIONS(85), 1, sym__template_string_start, - ACTIONS(568), 1, + ACTIONS(594), 1, anon_sym_LPAREN, - ACTIONS(574), 1, + ACTIONS(598), 1, anon_sym_LBRACK, - ACTIONS(576), 1, + ACTIONS(600), 1, anon_sym_await, - STATE(763), 1, + STATE(769), 1, sym_template_string, - STATE(782), 1, + STATE(775), 1, sym_string, - STATE(823), 1, + STATE(785), 1, sym_primary_expression, - ACTIONS(75), 2, + ACTIONS(77), 2, sym_ellipsis, sym_float, - ACTIONS(47), 3, + ACTIONS(49), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(77), 5, + ACTIONS(79), 5, sym_integer, sym_identifier, sym_true, sym_false, sym_none, - ACTIONS(570), 5, + ACTIONS(592), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(908), 17, + STATE(920), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -57397,47 +58195,48 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [40395] = 15, + [41034] = 15, ACTIONS(3), 1, sym_comment, - ACTIONS(51), 1, - anon_sym_LBRACE, - ACTIONS(81), 1, - sym__string_start, - ACTIONS(83), 1, - sym__template_string_start, - ACTIONS(568), 1, + ACTIONS(640), 1, anon_sym_LPAREN, - ACTIONS(574), 1, + ACTIONS(646), 1, anon_sym_LBRACK, - ACTIONS(576), 1, + ACTIONS(648), 1, + anon_sym_LBRACE, + ACTIONS(652), 1, anon_sym_await, - STATE(763), 1, - sym_template_string, - STATE(782), 1, + ACTIONS(654), 1, + sym__string_start, + ACTIONS(656), 1, + sym__template_string_start, + STATE(793), 1, sym_string, - STATE(824), 1, + STATE(794), 1, + sym_template_string, + STATE(855), 1, sym_primary_expression, - ACTIONS(75), 2, + ACTIONS(650), 2, sym_ellipsis, sym_float, - ACTIONS(47), 3, + ACTIONS(644), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(77), 5, + ACTIONS(636), 5, sym_integer, sym_identifier, sym_true, sym_false, sym_none, - ACTIONS(570), 5, + ACTIONS(638), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(908), 17, + STATE(970), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -57455,47 +58254,107 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [40468] = 15, + [41108] = 15, ACTIONS(3), 1, sym_comment, - ACTIONS(288), 1, + ACTIONS(640), 1, + anon_sym_LPAREN, + ACTIONS(646), 1, + anon_sym_LBRACK, + ACTIONS(648), 1, anon_sym_LBRACE, - ACTIONS(310), 1, + ACTIONS(652), 1, + anon_sym_await, + ACTIONS(654), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(656), 1, sym__template_string_start, - ACTIONS(597), 1, + STATE(793), 1, + sym_string, + STATE(794), 1, + sym_template_string, + STATE(866), 1, + sym_primary_expression, + ACTIONS(650), 2, + sym_ellipsis, + sym_float, + ACTIONS(644), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(636), 5, + sym_integer, + sym_identifier, + sym_true, + sym_false, + sym_none, + ACTIONS(638), 6, + anon_sym_lazy, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(970), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [41182] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(640), 1, anon_sym_LPAREN, - ACTIONS(603), 1, + ACTIONS(646), 1, anon_sym_LBRACK, - ACTIONS(605), 1, + ACTIONS(648), 1, + anon_sym_LBRACE, + ACTIONS(652), 1, anon_sym_await, - STATE(621), 1, + ACTIONS(654), 1, + sym__string_start, + ACTIONS(656), 1, + sym__template_string_start, + STATE(793), 1, sym_string, - STATE(624), 1, + STATE(794), 1, sym_template_string, - STATE(740), 1, + STATE(833), 1, sym_primary_expression, - ACTIONS(304), 2, + ACTIONS(650), 2, sym_ellipsis, sym_float, - ACTIONS(601), 3, + ACTIONS(644), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 5, + ACTIONS(636), 5, sym_integer, sym_identifier, sym_true, sym_false, sym_none, - ACTIONS(583), 5, + ACTIONS(638), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(724), 17, + STATE(970), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -57513,47 +58372,48 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [40541] = 15, + [41256] = 15, ACTIONS(3), 1, sym_comment, - ACTIONS(51), 1, + ACTIONS(53), 1, anon_sym_LBRACE, - ACTIONS(81), 1, - sym__string_start, ACTIONS(83), 1, + sym__string_start, + ACTIONS(85), 1, sym__template_string_start, - ACTIONS(568), 1, + ACTIONS(594), 1, anon_sym_LPAREN, - ACTIONS(574), 1, + ACTIONS(598), 1, anon_sym_LBRACK, - ACTIONS(576), 1, + ACTIONS(600), 1, anon_sym_await, - STATE(763), 1, + STATE(769), 1, sym_template_string, - STATE(782), 1, + STATE(775), 1, sym_string, - STATE(800), 1, + STATE(797), 1, sym_primary_expression, - ACTIONS(75), 2, + ACTIONS(77), 2, sym_ellipsis, sym_float, - ACTIONS(47), 3, + ACTIONS(49), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(77), 5, + ACTIONS(79), 5, sym_integer, sym_identifier, sym_true, sym_false, sym_none, - ACTIONS(570), 5, + ACTIONS(592), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(908), 17, + STATE(920), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -57571,53 +58431,52 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [40614] = 17, + [41330] = 15, ACTIONS(3), 1, sym_comment, - ACTIONS(288), 1, - anon_sym_LBRACE, - ACTIONS(310), 1, - sym__string_start, - ACTIONS(312), 1, - sym__template_string_start, - ACTIONS(578), 1, + ACTIONS(640), 1, anon_sym_LPAREN, - ACTIONS(591), 1, + ACTIONS(646), 1, anon_sym_LBRACK, - ACTIONS(1469), 1, - sym_identifier, - ACTIONS(1475), 1, + ACTIONS(648), 1, + anon_sym_LBRACE, + ACTIONS(652), 1, anon_sym_await, - STATE(621), 1, + ACTIONS(654), 1, + sym__string_start, + ACTIONS(656), 1, + sym__template_string_start, + STATE(793), 1, sym_string, - STATE(624), 1, + STATE(794), 1, sym_template_string, - STATE(1012), 1, + STATE(845), 1, sym_primary_expression, - ACTIONS(304), 2, + ACTIONS(650), 2, sym_ellipsis, sym_float, - STATE(834), 2, - sym_attribute, - sym_subscript, - ACTIONS(296), 3, + ACTIONS(644), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 4, + ACTIONS(636), 5, sym_integer, + sym_identifier, sym_true, sym_false, sym_none, - ACTIONS(1473), 5, + ACTIONS(638), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(724), 15, + STATE(970), 17, sym_binary_operator, sym_unary_operator, + sym_attribute, + sym_subscript, sym_call, sym_list, sym_set, @@ -57631,47 +58490,48 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [40691] = 15, + [41404] = 15, ACTIONS(3), 1, sym_comment, - ACTIONS(288), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(310), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(578), 1, + ACTIONS(602), 1, anon_sym_LPAREN, - ACTIONS(591), 1, + ACTIONS(608), 1, anon_sym_LBRACK, - ACTIONS(595), 1, + ACTIONS(610), 1, anon_sym_await, - STATE(621), 1, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, - STATE(750), 1, + STATE(746), 1, sym_primary_expression, - ACTIONS(304), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(296), 3, + ACTIONS(606), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 5, + ACTIONS(311), 5, sym_integer, sym_identifier, sym_true, sym_false, sym_none, - ACTIONS(583), 5, + ACTIONS(573), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(724), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -57689,47 +58549,48 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [40764] = 15, + [41478] = 15, ACTIONS(3), 1, sym_comment, - ACTIONS(288), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(310), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(578), 1, + ACTIONS(602), 1, anon_sym_LPAREN, - ACTIONS(591), 1, + ACTIONS(608), 1, anon_sym_LBRACK, - ACTIONS(595), 1, + ACTIONS(610), 1, anon_sym_await, - STATE(621), 1, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, - STATE(751), 1, + STATE(747), 1, sym_primary_expression, - ACTIONS(304), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(296), 3, + ACTIONS(606), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 5, + ACTIONS(311), 5, sym_integer, sym_identifier, sym_true, sym_false, sym_none, - ACTIONS(583), 5, + ACTIONS(573), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(724), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -57747,47 +58608,48 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [40837] = 15, + [41552] = 15, ACTIONS(3), 1, sym_comment, - ACTIONS(288), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(310), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(578), 1, + ACTIONS(602), 1, anon_sym_LPAREN, - ACTIONS(591), 1, + ACTIONS(608), 1, anon_sym_LBRACK, - ACTIONS(595), 1, + ACTIONS(610), 1, anon_sym_await, - STATE(621), 1, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, - STATE(752), 1, + STATE(748), 1, sym_primary_expression, - ACTIONS(304), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(296), 3, + ACTIONS(606), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 5, + ACTIONS(311), 5, sym_integer, sym_identifier, sym_true, sym_false, sym_none, - ACTIONS(583), 5, + ACTIONS(573), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(724), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -57805,47 +58667,48 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [40910] = 15, + [41626] = 15, ACTIONS(3), 1, sym_comment, - ACTIONS(288), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(310), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(578), 1, + ACTIONS(602), 1, anon_sym_LPAREN, - ACTIONS(591), 1, + ACTIONS(608), 1, anon_sym_LBRACK, - ACTIONS(595), 1, + ACTIONS(610), 1, anon_sym_await, - STATE(621), 1, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, - STATE(753), 1, + STATE(749), 1, sym_primary_expression, - ACTIONS(304), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(296), 3, + ACTIONS(606), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 5, + ACTIONS(311), 5, sym_integer, sym_identifier, sym_true, sym_false, sym_none, - ACTIONS(583), 5, + ACTIONS(573), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(724), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -57863,47 +58726,48 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [40983] = 15, + [41700] = 15, ACTIONS(3), 1, sym_comment, - ACTIONS(288), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(310), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(578), 1, + ACTIONS(602), 1, anon_sym_LPAREN, - ACTIONS(591), 1, + ACTIONS(608), 1, anon_sym_LBRACK, - ACTIONS(595), 1, + ACTIONS(610), 1, anon_sym_await, - STATE(621), 1, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, - STATE(734), 1, + STATE(750), 1, sym_primary_expression, - ACTIONS(304), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(296), 3, + ACTIONS(606), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 5, + ACTIONS(311), 5, sym_integer, sym_identifier, sym_true, sym_false, sym_none, - ACTIONS(583), 5, + ACTIONS(573), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(724), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -57921,47 +58785,48 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [41056] = 15, + [41774] = 15, ACTIONS(3), 1, sym_comment, - ACTIONS(288), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(310), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(578), 1, + ACTIONS(602), 1, anon_sym_LPAREN, - ACTIONS(591), 1, + ACTIONS(608), 1, anon_sym_LBRACK, - ACTIONS(595), 1, + ACTIONS(610), 1, anon_sym_await, - STATE(621), 1, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, - STATE(754), 1, + STATE(751), 1, sym_primary_expression, - ACTIONS(304), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(296), 3, + ACTIONS(606), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 5, + ACTIONS(311), 5, sym_integer, sym_identifier, sym_true, sym_false, sym_none, - ACTIONS(583), 5, + ACTIONS(573), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(724), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -57979,47 +58844,48 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [41129] = 15, + [41848] = 15, ACTIONS(3), 1, sym_comment, - ACTIONS(288), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(310), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(578), 1, + ACTIONS(602), 1, anon_sym_LPAREN, - ACTIONS(591), 1, + ACTIONS(608), 1, anon_sym_LBRACK, - ACTIONS(595), 1, + ACTIONS(610), 1, anon_sym_await, - STATE(621), 1, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, - STATE(755), 1, + STATE(753), 1, sym_primary_expression, - ACTIONS(304), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(296), 3, + ACTIONS(606), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 5, + ACTIONS(311), 5, sym_integer, sym_identifier, sym_true, sym_false, sym_none, - ACTIONS(583), 5, + ACTIONS(573), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(724), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -58037,47 +58903,48 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [41202] = 15, + [41922] = 15, ACTIONS(3), 1, sym_comment, - ACTIONS(288), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(310), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(578), 1, + ACTIONS(602), 1, anon_sym_LPAREN, - ACTIONS(591), 1, + ACTIONS(608), 1, anon_sym_LBRACK, - ACTIONS(595), 1, + ACTIONS(610), 1, anon_sym_await, - STATE(621), 1, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, - STATE(756), 1, + STATE(754), 1, sym_primary_expression, - ACTIONS(304), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(296), 3, + ACTIONS(606), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 5, + ACTIONS(311), 5, sym_integer, sym_identifier, sym_true, sym_false, sym_none, - ACTIONS(583), 5, + ACTIONS(573), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(724), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -58095,47 +58962,48 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [41275] = 15, + [41996] = 15, ACTIONS(3), 1, sym_comment, - ACTIONS(288), 1, - anon_sym_LBRACE, - ACTIONS(310), 1, - sym__string_start, - ACTIONS(312), 1, - sym__template_string_start, - ACTIONS(597), 1, + ACTIONS(616), 1, anon_sym_LPAREN, - ACTIONS(603), 1, + ACTIONS(622), 1, anon_sym_LBRACK, - ACTIONS(605), 1, + ACTIONS(624), 1, + anon_sym_LBRACE, + ACTIONS(628), 1, anon_sym_await, - STATE(621), 1, + ACTIONS(630), 1, + sym__string_start, + ACTIONS(632), 1, + sym__template_string_start, + STATE(766), 1, sym_string, - STATE(624), 1, + STATE(776), 1, sym_template_string, - STATE(741), 1, + STATE(799), 1, sym_primary_expression, - ACTIONS(304), 2, + ACTIONS(626), 2, sym_ellipsis, sym_float, - ACTIONS(601), 3, + ACTIONS(620), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 5, + ACTIONS(612), 5, sym_integer, sym_identifier, sym_true, sym_false, sym_none, - ACTIONS(583), 5, + ACTIONS(614), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(724), 17, + STATE(878), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -58153,47 +59021,48 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [41348] = 15, + [42070] = 15, ACTIONS(3), 1, sym_comment, - ACTIONS(51), 1, - anon_sym_LBRACE, - ACTIONS(81), 1, - sym__string_start, - ACTIONS(83), 1, - sym__template_string_start, - ACTIONS(568), 1, + ACTIONS(616), 1, anon_sym_LPAREN, - ACTIONS(574), 1, + ACTIONS(622), 1, anon_sym_LBRACK, - ACTIONS(576), 1, + ACTIONS(624), 1, + anon_sym_LBRACE, + ACTIONS(628), 1, anon_sym_await, - STATE(763), 1, - sym_template_string, - STATE(782), 1, + ACTIONS(630), 1, + sym__string_start, + ACTIONS(632), 1, + sym__template_string_start, + STATE(766), 1, sym_string, - STATE(801), 1, + STATE(776), 1, + sym_template_string, + STATE(812), 1, sym_primary_expression, - ACTIONS(75), 2, + ACTIONS(626), 2, sym_ellipsis, sym_float, - ACTIONS(47), 3, + ACTIONS(620), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(77), 5, + ACTIONS(612), 5, sym_integer, sym_identifier, sym_true, sym_false, sym_none, - ACTIONS(570), 5, + ACTIONS(614), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(908), 17, + STATE(878), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -58211,47 +59080,146 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [41421] = 15, + [42144] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(288), 1, - anon_sym_LBRACE, - ACTIONS(310), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + STATE(692), 2, + sym_string, + aux_sym_concatenated_string_repeat1, + ACTIONS(1506), 6, + anon_sym_as, + anon_sym_STAR, + anon_sym_EQ, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1504), 33, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_COLON, + anon_sym_else, + anon_sym_async, + anon_sym_for, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [42198] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(578), 1, + STATE(693), 2, + sym_template_string, + aux_sym_concatenated_template_string_repeat1, + ACTIONS(1510), 6, + anon_sym_as, + anon_sym_STAR, + anon_sym_EQ, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1508), 33, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_COLON, + anon_sym_else, + anon_sym_async, + anon_sym_for, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [42252] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(640), 1, anon_sym_LPAREN, - ACTIONS(591), 1, + ACTIONS(646), 1, anon_sym_LBRACK, - ACTIONS(595), 1, + ACTIONS(648), 1, + anon_sym_LBRACE, + ACTIONS(652), 1, anon_sym_await, - STATE(621), 1, + ACTIONS(654), 1, + sym__string_start, + ACTIONS(656), 1, + sym__template_string_start, + STATE(793), 1, sym_string, - STATE(624), 1, + STATE(794), 1, sym_template_string, - STATE(757), 1, + STATE(846), 1, sym_primary_expression, - ACTIONS(304), 2, + ACTIONS(650), 2, sym_ellipsis, sym_float, - ACTIONS(296), 3, + ACTIONS(644), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 5, + ACTIONS(636), 5, sym_integer, sym_identifier, sym_true, sym_false, sym_none, - ACTIONS(583), 5, + ACTIONS(638), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(724), 17, + STATE(970), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -58269,47 +59237,48 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [41494] = 15, + [42326] = 15, ACTIONS(3), 1, sym_comment, - ACTIONS(288), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(310), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(578), 1, + ACTIONS(658), 1, anon_sym_LPAREN, - ACTIONS(591), 1, + ACTIONS(664), 1, anon_sym_LBRACK, - ACTIONS(595), 1, + ACTIONS(666), 1, anon_sym_await, - STATE(621), 1, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, - STATE(758), 1, + STATE(803), 1, sym_primary_expression, - ACTIONS(304), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(296), 3, + ACTIONS(662), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 5, + ACTIONS(311), 5, sym_integer, sym_identifier, sym_true, sym_false, sym_none, - ACTIONS(583), 5, + ACTIONS(573), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(724), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -58327,47 +59296,48 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [41567] = 15, + [42400] = 15, ACTIONS(3), 1, sym_comment, - ACTIONS(288), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(310), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(578), 1, + ACTIONS(658), 1, anon_sym_LPAREN, - ACTIONS(591), 1, + ACTIONS(664), 1, anon_sym_LBRACK, - ACTIONS(595), 1, + ACTIONS(666), 1, anon_sym_await, - STATE(621), 1, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, - STATE(761), 1, + STATE(826), 1, sym_primary_expression, - ACTIONS(304), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(296), 3, + ACTIONS(662), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 5, + ACTIONS(311), 5, sym_integer, sym_identifier, sym_true, sym_false, sym_none, - ACTIONS(583), 5, + ACTIONS(573), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(724), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -58385,47 +59355,48 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [41640] = 15, + [42474] = 15, ACTIONS(3), 1, sym_comment, - ACTIONS(51), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(81), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(83), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(568), 1, + ACTIONS(658), 1, anon_sym_LPAREN, - ACTIONS(574), 1, + ACTIONS(664), 1, anon_sym_LBRACK, - ACTIONS(576), 1, + ACTIONS(666), 1, anon_sym_await, - STATE(763), 1, - sym_template_string, - STATE(782), 1, + STATE(645), 1, sym_string, - STATE(811), 1, + STATE(658), 1, + sym_template_string, + STATE(805), 1, sym_primary_expression, - ACTIONS(75), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(47), 3, + ACTIONS(662), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(77), 5, + ACTIONS(311), 5, sym_integer, sym_identifier, sym_true, sym_false, sym_none, - ACTIONS(570), 5, + ACTIONS(573), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(908), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -58443,47 +59414,107 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [41713] = 15, + [42548] = 15, ACTIONS(3), 1, sym_comment, - ACTIONS(631), 1, + ACTIONS(293), 1, + anon_sym_LBRACE, + ACTIONS(315), 1, + sym__string_start, + ACTIONS(317), 1, + sym__template_string_start, + ACTIONS(658), 1, anon_sym_LPAREN, - ACTIONS(639), 1, + ACTIONS(664), 1, anon_sym_LBRACK, - ACTIONS(641), 1, - anon_sym_LBRACE, - ACTIONS(645), 1, + ACTIONS(666), 1, anon_sym_await, - ACTIONS(647), 1, + STATE(645), 1, + sym_string, + STATE(658), 1, + sym_template_string, + STATE(806), 1, + sym_primary_expression, + ACTIONS(309), 2, + sym_ellipsis, + sym_float, + ACTIONS(662), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(311), 5, + sym_integer, + sym_identifier, + sym_true, + sym_false, + sym_none, + ACTIONS(573), 6, + anon_sym_lazy, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(725), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [42622] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(293), 1, + anon_sym_LBRACE, + ACTIONS(315), 1, sym__string_start, - ACTIONS(649), 1, + ACTIONS(317), 1, sym__template_string_start, - STATE(794), 1, + ACTIONS(658), 1, + anon_sym_LPAREN, + ACTIONS(664), 1, + anon_sym_LBRACK, + ACTIONS(666), 1, + anon_sym_await, + STATE(645), 1, sym_string, - STATE(795), 1, + STATE(658), 1, sym_template_string, - STATE(845), 1, + STATE(807), 1, sym_primary_expression, - ACTIONS(643), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(637), 3, + ACTIONS(662), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(629), 5, + ACTIONS(311), 5, sym_integer, sym_identifier, sym_true, sym_false, sym_none, - ACTIONS(633), 5, + ACTIONS(573), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(953), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -58501,53 +59532,170 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [41786] = 17, + [42696] = 15, ACTIONS(3), 1, sym_comment, - ACTIONS(288), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(310), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(578), 1, + ACTIONS(658), 1, anon_sym_LPAREN, - ACTIONS(591), 1, + ACTIONS(664), 1, anon_sym_LBRACK, - ACTIONS(1511), 1, + ACTIONS(666), 1, + anon_sym_await, + STATE(645), 1, + sym_string, + STATE(658), 1, + sym_template_string, + STATE(808), 1, + sym_primary_expression, + ACTIONS(309), 2, + sym_ellipsis, + sym_float, + ACTIONS(662), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(311), 5, + sym_integer, sym_identifier, - ACTIONS(1515), 1, + sym_true, + sym_false, + sym_none, + ACTIONS(573), 6, + anon_sym_lazy, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(725), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [42770] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(293), 1, + anon_sym_LBRACE, + ACTIONS(315), 1, + sym__string_start, + ACTIONS(317), 1, + sym__template_string_start, + ACTIONS(658), 1, + anon_sym_LPAREN, + ACTIONS(664), 1, + anon_sym_LBRACK, + ACTIONS(666), 1, anon_sym_await, - STATE(621), 1, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, - STATE(1012), 1, + STATE(810), 1, sym_primary_expression, - ACTIONS(304), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - STATE(1000), 2, + ACTIONS(662), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(311), 5, + sym_integer, + sym_identifier, + sym_true, + sym_false, + sym_none, + ACTIONS(573), 6, + anon_sym_lazy, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(725), 17, + sym_binary_operator, + sym_unary_operator, sym_attribute, sym_subscript, - ACTIONS(296), 3, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [42844] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(293), 1, + anon_sym_LBRACE, + ACTIONS(315), 1, + sym__string_start, + ACTIONS(317), 1, + sym__template_string_start, + ACTIONS(658), 1, + anon_sym_LPAREN, + ACTIONS(664), 1, + anon_sym_LBRACK, + ACTIONS(666), 1, + anon_sym_await, + STATE(645), 1, + sym_string, + STATE(658), 1, + sym_template_string, + STATE(811), 1, + sym_primary_expression, + ACTIONS(309), 2, + sym_ellipsis, + sym_float, + ACTIONS(662), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 4, + ACTIONS(311), 5, sym_integer, + sym_identifier, sym_true, sym_false, sym_none, - ACTIONS(1513), 5, + ACTIONS(573), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(724), 15, + STATE(725), 17, sym_binary_operator, sym_unary_operator, + sym_attribute, + sym_subscript, sym_call, sym_list, sym_set, @@ -58561,47 +59709,48 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [41863] = 15, + [42918] = 15, ACTIONS(3), 1, sym_comment, - ACTIONS(609), 1, + ACTIONS(616), 1, anon_sym_LPAREN, - ACTIONS(617), 1, + ACTIONS(622), 1, anon_sym_LBRACK, - ACTIONS(619), 1, + ACTIONS(624), 1, anon_sym_LBRACE, - ACTIONS(623), 1, + ACTIONS(628), 1, anon_sym_await, - ACTIONS(625), 1, + ACTIONS(630), 1, sym__string_start, - ACTIONS(627), 1, + ACTIONS(632), 1, sym__template_string_start, - STATE(767), 1, + STATE(766), 1, sym_string, - STATE(768), 1, + STATE(776), 1, sym_template_string, - STATE(784), 1, + STATE(815), 1, sym_primary_expression, - ACTIONS(621), 2, + ACTIONS(626), 2, sym_ellipsis, sym_float, - ACTIONS(615), 3, + ACTIONS(620), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(607), 5, + ACTIONS(612), 5, sym_integer, sym_identifier, sym_true, sym_false, sym_none, - ACTIONS(611), 5, + ACTIONS(614), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(924), 17, + STATE(878), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -58619,47 +59768,48 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [41936] = 15, + [42992] = 15, ACTIONS(3), 1, sym_comment, - ACTIONS(51), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(81), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(83), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(568), 1, + ACTIONS(658), 1, anon_sym_LPAREN, - ACTIONS(574), 1, + ACTIONS(664), 1, anon_sym_LBRACK, - ACTIONS(576), 1, + ACTIONS(666), 1, anon_sym_await, - STATE(763), 1, - sym_template_string, - STATE(782), 1, + STATE(645), 1, sym_string, - STATE(802), 1, + STATE(658), 1, + sym_template_string, + STATE(813), 1, sym_primary_expression, - ACTIONS(75), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(47), 3, + ACTIONS(662), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(77), 5, + ACTIONS(311), 5, sym_integer, sym_identifier, sym_true, sym_false, sym_none, - ACTIONS(570), 5, + ACTIONS(573), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(908), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -58677,47 +59827,48 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [42009] = 15, + [43066] = 15, ACTIONS(3), 1, sym_comment, - ACTIONS(288), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(310), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(653), 1, + ACTIONS(658), 1, anon_sym_LPAREN, - ACTIONS(659), 1, + ACTIONS(664), 1, anon_sym_LBRACK, - ACTIONS(661), 1, + ACTIONS(666), 1, anon_sym_await, - STATE(621), 1, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, - STATE(812), 1, + STATE(814), 1, sym_primary_expression, - ACTIONS(304), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(657), 3, + ACTIONS(662), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 5, + ACTIONS(311), 5, sym_integer, sym_identifier, sym_true, sym_false, sym_none, - ACTIONS(583), 5, + ACTIONS(573), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(724), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -58735,47 +59886,48 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [42082] = 15, + [43140] = 15, ACTIONS(3), 1, sym_comment, - ACTIONS(288), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(310), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(653), 1, + ACTIONS(658), 1, anon_sym_LPAREN, - ACTIONS(659), 1, + ACTIONS(664), 1, anon_sym_LBRACK, - ACTIONS(661), 1, + ACTIONS(666), 1, anon_sym_await, - STATE(621), 1, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, - STATE(813), 1, + STATE(825), 1, sym_primary_expression, - ACTIONS(304), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(657), 3, + ACTIONS(662), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 5, + ACTIONS(311), 5, sym_integer, sym_identifier, sym_true, sym_false, sym_none, - ACTIONS(583), 5, + ACTIONS(573), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(724), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -58793,47 +59945,48 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [42155] = 15, + [43214] = 15, ACTIONS(3), 1, sym_comment, - ACTIONS(288), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(310), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(653), 1, + ACTIONS(602), 1, anon_sym_LPAREN, - ACTIONS(659), 1, + ACTIONS(608), 1, anon_sym_LBRACK, - ACTIONS(661), 1, + ACTIONS(610), 1, anon_sym_await, - STATE(621), 1, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, - STATE(814), 1, + STATE(744), 1, sym_primary_expression, - ACTIONS(304), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(657), 3, + ACTIONS(606), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 5, + ACTIONS(311), 5, sym_integer, sym_identifier, sym_true, sym_false, sym_none, - ACTIONS(583), 5, + ACTIONS(573), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(724), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -58851,47 +60004,48 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [42228] = 15, + [43288] = 15, ACTIONS(3), 1, sym_comment, - ACTIONS(288), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(310), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(653), 1, + ACTIONS(602), 1, anon_sym_LPAREN, - ACTIONS(659), 1, + ACTIONS(608), 1, anon_sym_LBRACK, - ACTIONS(661), 1, + ACTIONS(610), 1, anon_sym_await, - STATE(621), 1, + STATE(645), 1, sym_string, - STATE(624), 1, + STATE(658), 1, sym_template_string, - STATE(815), 1, + STATE(736), 1, sym_primary_expression, - ACTIONS(304), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(657), 3, + ACTIONS(606), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 5, + ACTIONS(311), 5, sym_integer, sym_identifier, sym_true, sym_false, sym_none, - ACTIONS(583), 5, + ACTIONS(573), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(724), 17, + STATE(725), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -58909,47 +60063,146 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [42301] = 15, + [43362] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(288), 1, - anon_sym_LBRACE, - ACTIONS(310), 1, + ACTIONS(1516), 1, sym__string_start, - ACTIONS(312), 1, + STATE(692), 2, + sym_string, + aux_sym_concatenated_string_repeat1, + ACTIONS(1514), 6, + anon_sym_as, + anon_sym_STAR, + anon_sym_EQ, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1512), 33, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_COLON, + anon_sym_else, + anon_sym_async, + anon_sym_for, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [43416] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1523), 1, sym__template_string_start, - ACTIONS(653), 1, + STATE(693), 2, + sym_template_string, + aux_sym_concatenated_template_string_repeat1, + ACTIONS(1521), 6, + anon_sym_as, + anon_sym_STAR, + anon_sym_EQ, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1519), 33, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_COLON, + anon_sym_else, + anon_sym_async, + anon_sym_for, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [43470] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(616), 1, anon_sym_LPAREN, - ACTIONS(659), 1, + ACTIONS(622), 1, anon_sym_LBRACK, - ACTIONS(661), 1, + ACTIONS(624), 1, + anon_sym_LBRACE, + ACTIONS(628), 1, anon_sym_await, - STATE(621), 1, + ACTIONS(630), 1, + sym__string_start, + ACTIONS(632), 1, + sym__template_string_start, + STATE(766), 1, sym_string, - STATE(624), 1, + STATE(776), 1, sym_template_string, STATE(816), 1, sym_primary_expression, - ACTIONS(304), 2, + ACTIONS(626), 2, sym_ellipsis, sym_float, - ACTIONS(657), 3, + ACTIONS(620), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 5, + ACTIONS(612), 5, sym_integer, sym_identifier, sym_true, sym_false, sym_none, - ACTIONS(583), 5, + ACTIONS(614), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(724), 17, + STATE(878), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -58967,47 +60220,48 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [42374] = 15, + [43544] = 15, ACTIONS(3), 1, sym_comment, - ACTIONS(288), 1, - anon_sym_LBRACE, - ACTIONS(310), 1, - sym__string_start, - ACTIONS(312), 1, - sym__template_string_start, - ACTIONS(653), 1, + ACTIONS(640), 1, anon_sym_LPAREN, - ACTIONS(659), 1, + ACTIONS(646), 1, anon_sym_LBRACK, - ACTIONS(661), 1, + ACTIONS(648), 1, + anon_sym_LBRACE, + ACTIONS(652), 1, anon_sym_await, - STATE(621), 1, + ACTIONS(654), 1, + sym__string_start, + ACTIONS(656), 1, + sym__template_string_start, + STATE(793), 1, sym_string, - STATE(624), 1, + STATE(794), 1, sym_template_string, - STATE(817), 1, + STATE(841), 1, sym_primary_expression, - ACTIONS(304), 2, + ACTIONS(650), 2, sym_ellipsis, sym_float, - ACTIONS(657), 3, + ACTIONS(644), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(306), 5, + ACTIONS(636), 5, sym_integer, sym_identifier, sym_true, sym_false, sym_none, - ACTIONS(583), 5, + ACTIONS(638), 6, + anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(724), 17, + STATE(970), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -59025,481 +60279,17 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [42447] = 15, + [43618] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(288), 1, - anon_sym_LBRACE, - ACTIONS(310), 1, - sym__string_start, - ACTIONS(312), 1, - sym__template_string_start, - ACTIONS(653), 1, - anon_sym_LPAREN, - ACTIONS(659), 1, - anon_sym_LBRACK, - ACTIONS(661), 1, - anon_sym_await, - STATE(621), 1, - sym_string, - STATE(624), 1, - sym_template_string, - STATE(818), 1, - sym_primary_expression, - ACTIONS(304), 2, - sym_ellipsis, - sym_float, - ACTIONS(657), 3, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_TILDE, - ACTIONS(306), 5, - sym_integer, - sym_identifier, - sym_true, - sym_false, - sym_none, - ACTIONS(583), 5, - anon_sym_print, - anon_sym_async, - anon_sym_match, - anon_sym_exec, - anon_sym_type, - STATE(724), 17, - sym_binary_operator, - sym_unary_operator, - sym_attribute, - sym_subscript, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [42520] = 15, - ACTIONS(3), 1, - sym_comment, - ACTIONS(288), 1, - anon_sym_LBRACE, - ACTIONS(310), 1, - sym__string_start, - ACTIONS(312), 1, - sym__template_string_start, - ACTIONS(653), 1, - anon_sym_LPAREN, - ACTIONS(659), 1, - anon_sym_LBRACK, - ACTIONS(661), 1, - anon_sym_await, - STATE(621), 1, - sym_string, - STATE(624), 1, - sym_template_string, - STATE(819), 1, - sym_primary_expression, - ACTIONS(304), 2, - sym_ellipsis, - sym_float, - ACTIONS(657), 3, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_TILDE, - ACTIONS(306), 5, - sym_integer, - sym_identifier, - sym_true, - sym_false, - sym_none, - ACTIONS(583), 5, - anon_sym_print, - anon_sym_async, - anon_sym_match, - anon_sym_exec, - anon_sym_type, - STATE(724), 17, - sym_binary_operator, - sym_unary_operator, - sym_attribute, - sym_subscript, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [42593] = 15, - ACTIONS(3), 1, - sym_comment, - ACTIONS(288), 1, - anon_sym_LBRACE, - ACTIONS(310), 1, - sym__string_start, - ACTIONS(312), 1, - sym__template_string_start, - ACTIONS(597), 1, - anon_sym_LPAREN, - ACTIONS(603), 1, - anon_sym_LBRACK, - ACTIONS(605), 1, - anon_sym_await, - STATE(621), 1, - sym_string, - STATE(624), 1, - sym_template_string, - STATE(742), 1, - sym_primary_expression, - ACTIONS(304), 2, - sym_ellipsis, - sym_float, - ACTIONS(601), 3, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_TILDE, - ACTIONS(306), 5, - sym_integer, - sym_identifier, - sym_true, - sym_false, - sym_none, - ACTIONS(583), 5, - anon_sym_print, - anon_sym_async, - anon_sym_match, - anon_sym_exec, - anon_sym_type, - STATE(724), 17, - sym_binary_operator, - sym_unary_operator, - sym_attribute, - sym_subscript, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [42666] = 15, - ACTIONS(3), 1, - sym_comment, - ACTIONS(288), 1, - anon_sym_LBRACE, - ACTIONS(310), 1, - sym__string_start, - ACTIONS(312), 1, - sym__template_string_start, - ACTIONS(653), 1, - anon_sym_LPAREN, - ACTIONS(659), 1, - anon_sym_LBRACK, - ACTIONS(661), 1, - anon_sym_await, - STATE(621), 1, - sym_string, - STATE(624), 1, - sym_template_string, - STATE(820), 1, - sym_primary_expression, - ACTIONS(304), 2, - sym_ellipsis, - sym_float, - ACTIONS(657), 3, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_TILDE, - ACTIONS(306), 5, - sym_integer, - sym_identifier, - sym_true, - sym_false, - sym_none, - ACTIONS(583), 5, - anon_sym_print, - anon_sym_async, - anon_sym_match, - anon_sym_exec, - anon_sym_type, - STATE(724), 17, - sym_binary_operator, - sym_unary_operator, - sym_attribute, - sym_subscript, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [42739] = 15, - ACTIONS(3), 1, - sym_comment, - ACTIONS(288), 1, - anon_sym_LBRACE, - ACTIONS(310), 1, - sym__string_start, - ACTIONS(312), 1, - sym__template_string_start, - ACTIONS(653), 1, - anon_sym_LPAREN, - ACTIONS(659), 1, - anon_sym_LBRACK, - ACTIONS(661), 1, - anon_sym_await, - STATE(621), 1, - sym_string, - STATE(624), 1, - sym_template_string, - STATE(821), 1, - sym_primary_expression, - ACTIONS(304), 2, - sym_ellipsis, - sym_float, - ACTIONS(657), 3, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_TILDE, - ACTIONS(306), 5, - sym_integer, - sym_identifier, - sym_true, - sym_false, - sym_none, - ACTIONS(583), 5, - anon_sym_print, - anon_sym_async, - anon_sym_match, - anon_sym_exec, - anon_sym_type, - STATE(724), 17, - sym_binary_operator, - sym_unary_operator, - sym_attribute, - sym_subscript, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [42812] = 15, - ACTIONS(3), 1, - sym_comment, - ACTIONS(288), 1, - anon_sym_LBRACE, - ACTIONS(310), 1, - sym__string_start, - ACTIONS(312), 1, - sym__template_string_start, - ACTIONS(653), 1, - anon_sym_LPAREN, - ACTIONS(659), 1, - anon_sym_LBRACK, - ACTIONS(661), 1, - anon_sym_await, - STATE(621), 1, - sym_string, - STATE(624), 1, - sym_template_string, - STATE(803), 1, - sym_primary_expression, - ACTIONS(304), 2, - sym_ellipsis, - sym_float, - ACTIONS(657), 3, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_TILDE, - ACTIONS(306), 5, - sym_integer, - sym_identifier, - sym_true, - sym_false, - sym_none, - ACTIONS(583), 5, - anon_sym_print, - anon_sym_async, - anon_sym_match, - anon_sym_exec, - anon_sym_type, - STATE(724), 17, - sym_binary_operator, - sym_unary_operator, - sym_attribute, - sym_subscript, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [42885] = 15, - ACTIONS(3), 1, - sym_comment, - ACTIONS(51), 1, - anon_sym_LBRACE, - ACTIONS(81), 1, - sym__string_start, - ACTIONS(83), 1, - sym__template_string_start, - ACTIONS(568), 1, - anon_sym_LPAREN, - ACTIONS(574), 1, - anon_sym_LBRACK, - ACTIONS(576), 1, - anon_sym_await, - STATE(763), 1, - sym_template_string, - STATE(782), 1, - sym_string, - STATE(825), 1, - sym_primary_expression, - ACTIONS(75), 2, - sym_ellipsis, - sym_float, - ACTIONS(47), 3, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_TILDE, - ACTIONS(77), 5, - sym_integer, - sym_identifier, - sym_true, - sym_false, - sym_none, - ACTIONS(570), 5, - anon_sym_print, - anon_sym_async, - anon_sym_match, - anon_sym_exec, - anon_sym_type, - STATE(908), 17, - sym_binary_operator, - sym_unary_operator, - sym_attribute, - sym_subscript, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [42958] = 15, - ACTIONS(3), 1, - sym_comment, - ACTIONS(609), 1, - anon_sym_LPAREN, - ACTIONS(617), 1, - anon_sym_LBRACK, - ACTIONS(619), 1, - anon_sym_LBRACE, - ACTIONS(623), 1, - anon_sym_await, - ACTIONS(625), 1, - sym__string_start, - ACTIONS(627), 1, - sym__template_string_start, - STATE(767), 1, - sym_string, - STATE(768), 1, - sym_template_string, - STATE(783), 1, - sym_primary_expression, - ACTIONS(621), 2, - sym_ellipsis, - sym_float, - ACTIONS(615), 3, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_TILDE, - ACTIONS(607), 5, - sym_integer, - sym_identifier, - sym_true, - sym_false, - sym_none, - ACTIONS(611), 5, - anon_sym_print, - anon_sym_async, - anon_sym_match, - anon_sym_exec, - anon_sym_type, - STATE(924), 17, - sym_binary_operator, - sym_unary_operator, - sym_attribute, - sym_subscript, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [43031] = 3, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1519), 6, + ACTIONS(1528), 6, anon_sym_as, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1517), 34, + ACTIONS(1526), 34, sym__string_start, anon_sym_DOT, anon_sym_LPAREN, @@ -59534,18 +60324,18 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [43079] = 3, + [43666] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1523), 6, + ACTIONS(1532), 6, anon_sym_as, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1521), 34, - sym__template_string_start, + ACTIONS(1530), 34, + sym__string_start, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -59579,18 +60369,18 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [43127] = 3, + [43714] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1527), 6, + ACTIONS(1536), 6, anon_sym_as, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1525), 34, - sym__string_start, + ACTIONS(1534), 34, + sym__template_string_start, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -59624,17 +60414,17 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [43175] = 3, + [43762] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1531), 6, + ACTIONS(1540), 6, anon_sym_as, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1529), 34, + ACTIONS(1538), 34, sym__template_string_start, anon_sym_DOT, anon_sym_LPAREN, @@ -59669,25 +60459,23 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [43223] = 3, + [43810] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1535), 6, + ACTIONS(1425), 6, anon_sym_as, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1533), 33, + ACTIONS(1420), 33, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_GT_GT, anon_sym_if, - anon_sym_COLON, - anon_sym_else, anon_sym_async, anon_sym_for, anon_sym_in, @@ -59713,17 +60501,19 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [43270] = 3, + anon_sym_COLON2, + sym_type_conversion, + [43857] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1539), 6, + ACTIONS(1544), 6, anon_sym_as, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1537), 33, + ACTIONS(1542), 33, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -59757,17 +60547,17 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [43317] = 3, + [43904] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1543), 6, + ACTIONS(1548), 6, anon_sym_as, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1541), 33, + ACTIONS(1546), 33, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -59801,17 +60591,17 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [43364] = 3, + [43951] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1547), 6, + ACTIONS(1552), 6, anon_sym_as, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1545), 33, + ACTIONS(1550), 33, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -59845,17 +60635,17 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [43411] = 3, + [43998] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1551), 6, + ACTIONS(1556), 6, anon_sym_as, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1549), 33, + ACTIONS(1554), 33, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -59889,17 +60679,17 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [43458] = 3, + [44045] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1543), 6, + ACTIONS(1556), 6, anon_sym_as, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1541), 33, + ACTIONS(1554), 33, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -59933,17 +60723,17 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [43505] = 3, + [44092] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1555), 6, + ACTIONS(1560), 6, anon_sym_as, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1553), 33, + ACTIONS(1558), 33, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -59977,17 +60767,17 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [43552] = 3, + [44139] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1559), 6, + ACTIONS(272), 6, anon_sym_as, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1557), 33, + ACTIONS(303), 33, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -60021,17 +60811,17 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [43599] = 3, + [44186] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1563), 6, + ACTIONS(1564), 6, anon_sym_as, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1561), 33, + ACTIONS(1562), 33, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -60065,17 +60855,17 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [43646] = 3, + [44233] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1567), 6, + ACTIONS(1568), 6, anon_sym_as, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1565), 33, + ACTIONS(1566), 33, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -60109,17 +60899,17 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [43693] = 3, + [44280] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1571), 6, + ACTIONS(1572), 6, anon_sym_as, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1569), 33, + ACTIONS(1570), 33, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -60153,17 +60943,17 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [43740] = 3, + [44327] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1575), 6, + ACTIONS(1568), 6, anon_sym_as, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1573), 33, + ACTIONS(1566), 33, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -60197,17 +60987,17 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [43787] = 3, + [44374] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1579), 6, + ACTIONS(1576), 6, anon_sym_as, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1577), 33, + ACTIONS(1574), 33, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -60241,23 +61031,25 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [43834] = 3, + [44421] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1272), 6, + ACTIONS(1580), 6, anon_sym_as, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1267), 33, + ACTIONS(1578), 33, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_GT_GT, anon_sym_if, + anon_sym_COLON, + anon_sym_else, anon_sym_async, anon_sym_for, anon_sym_in, @@ -60283,63 +61075,17 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - anon_sym_COLON2, - sym_type_conversion, - [43881] = 3, + [44468] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1283), 6, + ACTIONS(1584), 6, anon_sym_as, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1278), 33, - anon_sym_DOT, - anon_sym_LPAREN, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_GT_GT, - anon_sym_if, - anon_sym_async, - anon_sym_for, - anon_sym_in, - anon_sym_PIPE, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_RBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_not, - anon_sym_and, - anon_sym_or, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - anon_sym_is, - anon_sym_COLON2, - sym_type_conversion, - [43928] = 3, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1583), 6, - anon_sym_as, - anon_sym_STAR, - anon_sym_EQ, - anon_sym_SLASH, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1581), 33, + ACTIONS(1582), 33, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -60373,17 +61119,17 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [43975] = 3, + [44515] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1587), 6, + ACTIONS(1588), 6, anon_sym_as, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1585), 33, + ACTIONS(1586), 33, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -60417,17 +61163,17 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [44022] = 3, + [44562] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1591), 6, + ACTIONS(1592), 6, anon_sym_as, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1589), 33, + ACTIONS(1590), 33, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -60461,17 +61207,17 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [44069] = 3, + [44609] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1583), 6, + ACTIONS(1596), 6, anon_sym_as, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1581), 33, + ACTIONS(1594), 33, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -60505,17 +61251,17 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [44116] = 3, + [44656] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1579), 6, + ACTIONS(1600), 6, anon_sym_as, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1577), 33, + ACTIONS(1598), 33, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -60549,58 +61295,58 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [44163] = 20, + [44703] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(1593), 1, + ACTIONS(1602), 1, anon_sym_DOT, - ACTIONS(1595), 1, + ACTIONS(1604), 1, anon_sym_LPAREN, - ACTIONS(1605), 1, + ACTIONS(1614), 1, anon_sym_PIPE, - ACTIONS(1609), 1, + ACTIONS(1618), 1, anon_sym_LBRACK, - ACTIONS(1611), 1, + ACTIONS(1620), 1, anon_sym_STAR_STAR, - ACTIONS(1613), 1, + ACTIONS(1622), 1, anon_sym_EQ, - ACTIONS(1617), 1, + ACTIONS(1626), 1, anon_sym_not, - ACTIONS(1619), 1, + ACTIONS(1628), 1, anon_sym_AMP, - ACTIONS(1621), 1, + ACTIONS(1630), 1, anon_sym_CARET, - ACTIONS(1625), 1, + ACTIONS(1634), 1, anon_sym_is, - STATE(991), 1, + STATE(993), 1, aux_sym_comparison_operator_repeat1, - ACTIONS(1599), 2, + ACTIONS(1608), 2, anon_sym_STAR, anon_sym_SLASH, - ACTIONS(1601), 2, + ACTIONS(1610), 2, anon_sym_GT_GT, anon_sym_LT_LT, - ACTIONS(1607), 2, + ACTIONS(1616), 2, anon_sym_DASH, anon_sym_PLUS, - ACTIONS(1623), 2, + ACTIONS(1632), 2, anon_sym_LT, anon_sym_GT, - STATE(733), 2, + STATE(734), 2, sym_argument_list, sym_generator_expression, - ACTIONS(1615), 3, + ACTIONS(1624), 3, anon_sym_AT, anon_sym_PERCENT, anon_sym_SLASH_SLASH, - ACTIONS(1603), 6, + ACTIONS(1612), 6, anon_sym_in, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_GT, - ACTIONS(1597), 9, + ACTIONS(1606), 9, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_if, @@ -60610,17 +61356,61 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_RBRACE, anon_sym_and, anon_sym_or, - [44244] = 3, + [44784] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1629), 6, + ACTIONS(1468), 6, anon_sym_as, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1627), 33, + ACTIONS(1463), 33, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_async, + anon_sym_for, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + anon_sym_COLON2, + sym_type_conversion, + [44831] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1638), 6, + anon_sym_as, + anon_sym_STAR, + anon_sym_EQ, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1636), 33, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -60654,17 +61444,17 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [44291] = 3, + [44878] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1633), 6, + ACTIONS(1642), 6, anon_sym_as, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1631), 33, + ACTIONS(1640), 33, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -60698,17 +61488,17 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [44338] = 3, + [44925] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1637), 6, + ACTIONS(1646), 6, anon_sym_as, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1635), 33, + ACTIONS(1644), 33, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -60742,17 +61532,17 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [44385] = 3, + [44972] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(265), 6, + ACTIONS(1650), 6, anon_sym_as, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(298), 33, + ACTIONS(1648), 33, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -60786,17 +61576,17 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [44432] = 3, + [45019] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1178), 6, + ACTIONS(1235), 6, anon_sym_as, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1173), 33, + ACTIONS(1230), 33, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -60830,58 +61620,58 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [44479] = 20, + [45066] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(1593), 1, + ACTIONS(1602), 1, anon_sym_DOT, - ACTIONS(1595), 1, + ACTIONS(1604), 1, anon_sym_LPAREN, - ACTIONS(1609), 1, + ACTIONS(1618), 1, anon_sym_LBRACK, - ACTIONS(1613), 1, + ACTIONS(1622), 1, anon_sym_as, - ACTIONS(1645), 1, + ACTIONS(1658), 1, anon_sym_PIPE, - ACTIONS(1649), 1, + ACTIONS(1662), 1, anon_sym_STAR_STAR, - ACTIONS(1653), 1, + ACTIONS(1666), 1, anon_sym_not, - ACTIONS(1655), 1, + ACTIONS(1668), 1, anon_sym_AMP, - ACTIONS(1657), 1, + ACTIONS(1670), 1, anon_sym_CARET, - ACTIONS(1661), 1, + ACTIONS(1674), 1, anon_sym_is, - STATE(992), 1, + STATE(990), 1, aux_sym_comparison_operator_repeat1, - ACTIONS(1639), 2, + ACTIONS(1652), 2, anon_sym_STAR, anon_sym_SLASH, - ACTIONS(1641), 2, + ACTIONS(1654), 2, anon_sym_GT_GT, anon_sym_LT_LT, - ACTIONS(1647), 2, + ACTIONS(1660), 2, anon_sym_DASH, anon_sym_PLUS, - ACTIONS(1659), 2, + ACTIONS(1672), 2, anon_sym_LT, anon_sym_GT, - STATE(733), 2, + STATE(734), 2, sym_argument_list, sym_generator_expression, - ACTIONS(1651), 3, + ACTIONS(1664), 3, anon_sym_AT, anon_sym_PERCENT, anon_sym_SLASH_SLASH, - ACTIONS(1643), 6, + ACTIONS(1656), 6, anon_sym_in, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_GT, - ACTIONS(1597), 9, + ACTIONS(1606), 9, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_if, @@ -60891,17 +61681,17 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_RBRACE, anon_sym_and, anon_sym_or, - [44560] = 3, + [45147] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1665), 6, + ACTIONS(1678), 6, anon_sym_as, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1663), 33, + ACTIONS(1676), 33, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -60935,17 +61725,17 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [44607] = 3, + [45194] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1669), 6, + ACTIONS(1682), 6, anon_sym_as, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1667), 33, + ACTIONS(1680), 33, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -60979,17 +61769,17 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [44654] = 3, + [45241] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1673), 6, + ACTIONS(1580), 6, anon_sym_as, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1671), 33, + ACTIONS(1578), 33, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -61023,17 +61813,17 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [44701] = 3, + [45288] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1677), 6, + ACTIONS(1588), 6, anon_sym_as, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1675), 33, + ACTIONS(1586), 33, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -61067,17 +61857,17 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [44748] = 3, + [45335] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1681), 6, + ACTIONS(1686), 6, anon_sym_as, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1679), 33, + ACTIONS(1684), 33, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -61111,17 +61901,17 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [44795] = 3, + [45382] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1673), 6, + ACTIONS(1690), 6, anon_sym_as, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1671), 33, + ACTIONS(1688), 33, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -61155,17 +61945,17 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [44842] = 3, + [45429] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1685), 6, + ACTIONS(1694), 6, anon_sym_as, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1683), 33, + ACTIONS(1692), 33, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -61199,17 +61989,17 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [44889] = 3, + [45476] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1689), 6, + ACTIONS(1698), 6, anon_sym_as, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1687), 33, + ACTIONS(1696), 33, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -61243,32 +62033,27 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [44936] = 10, + [45523] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(1593), 1, + ACTIONS(1602), 1, anon_sym_DOT, - ACTIONS(1595), 1, + ACTIONS(1604), 1, anon_sym_LPAREN, - ACTIONS(1609), 1, + ACTIONS(1618), 1, anon_sym_LBRACK, - ACTIONS(1611), 1, + ACTIONS(1620), 1, anon_sym_STAR_STAR, - ACTIONS(1599), 2, - anon_sym_STAR, - anon_sym_SLASH, - STATE(733), 2, + STATE(734), 2, sym_argument_list, sym_generator_expression, - ACTIONS(1615), 3, - anon_sym_AT, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - ACTIONS(1693), 3, + ACTIONS(1702), 5, + anon_sym_STAR, anon_sym_EQ, + anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1691), 24, + ACTIONS(1700), 27, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_GT_GT, @@ -61281,9 +62066,12 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PLUS, anon_sym_RBRACK, anon_sym_RBRACE, + anon_sym_AT, anon_sym_not, anon_sym_and, anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, anon_sym_AMP, anon_sym_CARET, anon_sym_LT_LT, @@ -61293,75 +62081,82 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [44996] = 8, + [45579] = 15, ACTIONS(3), 1, sym_comment, - ACTIONS(1593), 1, + ACTIONS(1602), 1, anon_sym_DOT, - ACTIONS(1595), 1, + ACTIONS(1604), 1, anon_sym_LPAREN, - ACTIONS(1609), 1, + ACTIONS(1618), 1, anon_sym_LBRACK, - ACTIONS(1611), 1, + ACTIONS(1658), 1, + anon_sym_PIPE, + ACTIONS(1662), 1, anon_sym_STAR_STAR, - STATE(733), 2, - sym_argument_list, - sym_generator_expression, - ACTIONS(1697), 5, + ACTIONS(1668), 1, + anon_sym_AMP, + ACTIONS(1670), 1, + anon_sym_CARET, + ACTIONS(1652), 2, anon_sym_STAR, - anon_sym_EQ, anon_sym_SLASH, + ACTIONS(1654), 2, + anon_sym_GT_GT, + anon_sym_LT_LT, + ACTIONS(1660), 2, + anon_sym_DASH, + anon_sym_PLUS, + STATE(734), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1664), 3, + anon_sym_AT, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + ACTIONS(1706), 3, + anon_sym_as, anon_sym_LT, anon_sym_GT, - ACTIONS(1695), 27, + ACTIONS(1704), 17, anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_GT_GT, anon_sym_if, - anon_sym_COLON, - anon_sym_else, + anon_sym_async, + anon_sym_for, anon_sym_in, - anon_sym_PIPE, - anon_sym_DASH, - anon_sym_PLUS, anon_sym_RBRACK, anon_sym_RBRACE, - anon_sym_AT, anon_sym_not, anon_sym_and, anon_sym_or, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [45052] = 8, + [45649] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(1593), 1, + ACTIONS(1602), 1, anon_sym_DOT, - ACTIONS(1595), 1, + ACTIONS(1604), 1, anon_sym_LPAREN, - ACTIONS(1609), 1, + ACTIONS(1618), 1, anon_sym_LBRACK, - ACTIONS(1649), 1, + ACTIONS(1662), 1, anon_sym_STAR_STAR, - STATE(733), 2, + STATE(734), 2, sym_argument_list, sym_generator_expression, - ACTIONS(1693), 5, + ACTIONS(1702), 5, anon_sym_as, anon_sym_STAR, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1691), 27, + ACTIONS(1700), 27, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_GT_GT, @@ -61389,48 +62184,42 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [45108] = 11, + [45705] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(1593), 1, - anon_sym_DOT, - ACTIONS(1595), 1, - anon_sym_LPAREN, - ACTIONS(1609), 1, - anon_sym_LBRACK, - ACTIONS(1649), 1, - anon_sym_STAR_STAR, - ACTIONS(1639), 2, + ACTIONS(1708), 1, + sym__template_string_start, + STATE(738), 2, + sym_template_string, + aux_sym_concatenated_template_string_repeat1, + ACTIONS(1521), 4, anon_sym_STAR, anon_sym_SLASH, - ACTIONS(1647), 2, - anon_sym_DASH, - anon_sym_PLUS, - STATE(733), 2, - sym_argument_list, - sym_generator_expression, - ACTIONS(1651), 3, - anon_sym_AT, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - ACTIONS(1693), 3, - anon_sym_as, anon_sym_LT, anon_sym_GT, - ACTIONS(1691), 22, + ACTIONS(1519), 31, + anon_sym_DOT, + anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_COMMA, + anon_sym_as, anon_sym_GT_GT, anon_sym_if, - anon_sym_async, - anon_sym_for, + anon_sym_COLON, anon_sym_in, anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_RBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, anon_sym_not, anon_sym_and, anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, anon_sym_AMP, anon_sym_CARET, anon_sym_LT_LT, @@ -61440,141 +62229,80 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [45170] = 15, + [45755] = 13, ACTIONS(3), 1, sym_comment, - ACTIONS(1593), 1, + ACTIONS(1602), 1, anon_sym_DOT, - ACTIONS(1595), 1, + ACTIONS(1604), 1, anon_sym_LPAREN, - ACTIONS(1609), 1, + ACTIONS(1618), 1, anon_sym_LBRACK, - ACTIONS(1645), 1, - anon_sym_PIPE, - ACTIONS(1649), 1, + ACTIONS(1620), 1, anon_sym_STAR_STAR, - ACTIONS(1655), 1, - anon_sym_AMP, - ACTIONS(1657), 1, + ACTIONS(1630), 1, anon_sym_CARET, - ACTIONS(1639), 2, + ACTIONS(1608), 2, anon_sym_STAR, anon_sym_SLASH, - ACTIONS(1641), 2, + ACTIONS(1610), 2, anon_sym_GT_GT, anon_sym_LT_LT, - ACTIONS(1647), 2, + ACTIONS(1616), 2, anon_sym_DASH, anon_sym_PLUS, - STATE(733), 2, + STATE(734), 2, sym_argument_list, sym_generator_expression, - ACTIONS(1651), 3, + ACTIONS(1624), 3, anon_sym_AT, anon_sym_PERCENT, anon_sym_SLASH_SLASH, - ACTIONS(1701), 3, - anon_sym_as, + ACTIONS(1713), 3, + anon_sym_EQ, anon_sym_LT, anon_sym_GT, - ACTIONS(1699), 17, + ACTIONS(1711), 19, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_if, - anon_sym_async, - anon_sym_for, + anon_sym_COLON, + anon_sym_else, anon_sym_in, + anon_sym_PIPE, anon_sym_RBRACK, anon_sym_RBRACE, anon_sym_not, anon_sym_and, anon_sym_or, + anon_sym_AMP, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [45240] = 14, + [45821] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(1593), 1, + ACTIONS(1602), 1, anon_sym_DOT, - ACTIONS(1595), 1, + ACTIONS(1604), 1, anon_sym_LPAREN, - ACTIONS(1609), 1, + ACTIONS(1618), 1, anon_sym_LBRACK, - ACTIONS(1649), 1, + ACTIONS(1662), 1, anon_sym_STAR_STAR, - ACTIONS(1655), 1, - anon_sym_AMP, - ACTIONS(1657), 1, - anon_sym_CARET, - ACTIONS(1639), 2, - anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(1641), 2, - anon_sym_GT_GT, - anon_sym_LT_LT, - ACTIONS(1647), 2, - anon_sym_DASH, - anon_sym_PLUS, - STATE(733), 2, + STATE(734), 2, sym_argument_list, sym_generator_expression, - ACTIONS(1651), 3, - anon_sym_AT, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - ACTIONS(1693), 3, + ACTIONS(1717), 5, anon_sym_as, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1691), 18, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_if, - anon_sym_async, - anon_sym_for, - anon_sym_in, - anon_sym_PIPE, - anon_sym_RBRACK, - anon_sym_RBRACE, - anon_sym_not, - anon_sym_and, - anon_sym_or, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - anon_sym_is, - [45308] = 10, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1593), 1, - anon_sym_DOT, - ACTIONS(1595), 1, - anon_sym_LPAREN, - ACTIONS(1609), 1, - anon_sym_LBRACK, - ACTIONS(1649), 1, - anon_sym_STAR_STAR, - ACTIONS(1639), 2, anon_sym_STAR, anon_sym_SLASH, - STATE(733), 2, - sym_argument_list, - sym_generator_expression, - ACTIONS(1651), 3, - anon_sym_AT, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - ACTIONS(1693), 3, - anon_sym_as, anon_sym_LT, anon_sym_GT, - ACTIONS(1691), 24, + ACTIONS(1715), 27, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_GT_GT, @@ -61587,9 +62315,12 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PLUS, anon_sym_RBRACK, anon_sym_RBRACE, + anon_sym_AT, anon_sym_not, anon_sym_and, anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, anon_sym_AMP, anon_sym_CARET, anon_sym_LT_LT, @@ -61599,33 +62330,33 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [45368] = 8, + [45877] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(1593), 1, + ACTIONS(1602), 1, anon_sym_DOT, - ACTIONS(1595), 1, + ACTIONS(1604), 1, anon_sym_LPAREN, - ACTIONS(1609), 1, + ACTIONS(1618), 1, anon_sym_LBRACK, - ACTIONS(1649), 1, + ACTIONS(1620), 1, anon_sym_STAR_STAR, - STATE(733), 2, + STATE(734), 2, sym_argument_list, sym_generator_expression, - ACTIONS(1693), 5, - anon_sym_as, + ACTIONS(1717), 5, anon_sym_STAR, + anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1691), 27, + ACTIONS(1715), 27, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_GT_GT, anon_sym_if, - anon_sym_async, - anon_sym_for, + anon_sym_COLON, + anon_sym_else, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, @@ -61647,276 +62378,91 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [45424] = 13, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1593), 1, - anon_sym_DOT, - ACTIONS(1595), 1, - anon_sym_LPAREN, - ACTIONS(1609), 1, - anon_sym_LBRACK, - ACTIONS(1649), 1, - anon_sym_STAR_STAR, - ACTIONS(1657), 1, - anon_sym_CARET, - ACTIONS(1639), 2, - anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(1641), 2, - anon_sym_GT_GT, - anon_sym_LT_LT, - ACTIONS(1647), 2, - anon_sym_DASH, - anon_sym_PLUS, - STATE(733), 2, - sym_argument_list, - sym_generator_expression, - ACTIONS(1651), 3, - anon_sym_AT, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - ACTIONS(1693), 3, - anon_sym_as, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1691), 19, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_if, - anon_sym_async, - anon_sym_for, - anon_sym_in, - anon_sym_PIPE, - anon_sym_RBRACK, - anon_sym_RBRACE, - anon_sym_not, - anon_sym_and, - anon_sym_or, - anon_sym_AMP, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - anon_sym_is, - [45490] = 12, + [45933] = 12, ACTIONS(3), 1, sym_comment, - ACTIONS(1593), 1, + ACTIONS(1602), 1, anon_sym_DOT, - ACTIONS(1595), 1, + ACTIONS(1604), 1, anon_sym_LPAREN, - ACTIONS(1609), 1, + ACTIONS(1618), 1, anon_sym_LBRACK, - ACTIONS(1649), 1, + ACTIONS(1620), 1, anon_sym_STAR_STAR, - ACTIONS(1639), 2, + ACTIONS(1608), 2, anon_sym_STAR, anon_sym_SLASH, - ACTIONS(1641), 2, + ACTIONS(1610), 2, anon_sym_GT_GT, anon_sym_LT_LT, - ACTIONS(1647), 2, + ACTIONS(1616), 2, anon_sym_DASH, anon_sym_PLUS, - STATE(733), 2, + STATE(734), 2, sym_argument_list, sym_generator_expression, - ACTIONS(1651), 3, + ACTIONS(1624), 3, anon_sym_AT, anon_sym_PERCENT, anon_sym_SLASH_SLASH, - ACTIONS(1693), 3, - anon_sym_as, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1691), 20, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_if, - anon_sym_async, - anon_sym_for, - anon_sym_in, - anon_sym_PIPE, - anon_sym_RBRACK, - anon_sym_RBRACE, - anon_sym_not, - anon_sym_and, - anon_sym_or, - anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - anon_sym_is, - [45554] = 5, - ACTIONS(3), 1, - sym_comment, - ACTIONS(647), 1, - sym__string_start, - STATE(746), 2, - sym_string, - aux_sym_concatenated_string_repeat1, - ACTIONS(1481), 4, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1479), 31, - anon_sym_DOT, - anon_sym_LPAREN, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_as, - anon_sym_GT_GT, - anon_sym_if, - anon_sym_COLON, - anon_sym_in, - anon_sym_PIPE, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_RBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_not, - anon_sym_and, - anon_sym_or, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - anon_sym_is, - [45604] = 5, - ACTIONS(3), 1, - sym_comment, - ACTIONS(649), 1, - sym__template_string_start, - STATE(747), 2, - sym_template_string, - aux_sym_concatenated_template_string_repeat1, - ACTIONS(1485), 4, - anon_sym_STAR, - anon_sym_SLASH, + ACTIONS(1713), 3, + anon_sym_EQ, anon_sym_LT, anon_sym_GT, - ACTIONS(1483), 31, - anon_sym_DOT, - anon_sym_LPAREN, + ACTIONS(1711), 20, anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_as, - anon_sym_GT_GT, anon_sym_if, anon_sym_COLON, + anon_sym_else, anon_sym_in, anon_sym_PIPE, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_RBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, anon_sym_not, anon_sym_and, anon_sym_or, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, anon_sym_AMP, anon_sym_CARET, - anon_sym_LT_LT, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [45654] = 5, + [45997] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(1703), 1, - sym__string_start, - STATE(746), 2, - sym_string, - aux_sym_concatenated_string_repeat1, - ACTIONS(1491), 4, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1489), 31, + ACTIONS(1602), 1, anon_sym_DOT, + ACTIONS(1604), 1, anon_sym_LPAREN, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_as, - anon_sym_GT_GT, - anon_sym_if, - anon_sym_COLON, - anon_sym_in, - anon_sym_PIPE, - anon_sym_DASH, - anon_sym_PLUS, + ACTIONS(1618), 1, anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_RBRACE, + ACTIONS(1620), 1, anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_not, - anon_sym_and, - anon_sym_or, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - anon_sym_is, - [45704] = 5, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1706), 1, - sym__template_string_start, - STATE(747), 2, - sym_template_string, - aux_sym_concatenated_template_string_repeat1, - ACTIONS(1498), 4, + STATE(734), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1713), 5, anon_sym_STAR, + anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1496), 31, - anon_sym_DOT, - anon_sym_LPAREN, + ACTIONS(1711), 27, anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_as, anon_sym_GT_GT, anon_sym_if, anon_sym_COLON, + anon_sym_else, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, - anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_RBRACE, - anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, anon_sym_and, @@ -61932,44 +62478,44 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [45754] = 15, + [46053] = 15, ACTIONS(3), 1, sym_comment, - ACTIONS(1593), 1, + ACTIONS(1602), 1, anon_sym_DOT, - ACTIONS(1595), 1, + ACTIONS(1604), 1, anon_sym_LPAREN, - ACTIONS(1609), 1, + ACTIONS(1618), 1, anon_sym_LBRACK, - ACTIONS(1645), 1, + ACTIONS(1658), 1, anon_sym_PIPE, - ACTIONS(1649), 1, + ACTIONS(1662), 1, anon_sym_STAR_STAR, - ACTIONS(1655), 1, + ACTIONS(1668), 1, anon_sym_AMP, - ACTIONS(1657), 1, + ACTIONS(1670), 1, anon_sym_CARET, - ACTIONS(1639), 2, + ACTIONS(1652), 2, anon_sym_STAR, anon_sym_SLASH, - ACTIONS(1641), 2, + ACTIONS(1654), 2, anon_sym_GT_GT, anon_sym_LT_LT, - ACTIONS(1647), 2, + ACTIONS(1660), 2, anon_sym_DASH, anon_sym_PLUS, - STATE(733), 2, + STATE(734), 2, sym_argument_list, sym_generator_expression, - ACTIONS(1651), 3, + ACTIONS(1664), 3, anon_sym_AT, anon_sym_PERCENT, anon_sym_SLASH_SLASH, - ACTIONS(1711), 3, + ACTIONS(1721), 3, anon_sym_as, anon_sym_LT, anon_sym_GT, - ACTIONS(1709), 17, + ACTIONS(1719), 17, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_if, @@ -61987,49 +62533,49 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [45824] = 15, + [46123] = 15, ACTIONS(3), 1, sym_comment, - ACTIONS(1593), 1, + ACTIONS(1602), 1, anon_sym_DOT, - ACTIONS(1595), 1, + ACTIONS(1604), 1, anon_sym_LPAREN, - ACTIONS(1609), 1, - anon_sym_LBRACK, - ACTIONS(1645), 1, + ACTIONS(1614), 1, anon_sym_PIPE, - ACTIONS(1649), 1, + ACTIONS(1618), 1, + anon_sym_LBRACK, + ACTIONS(1620), 1, anon_sym_STAR_STAR, - ACTIONS(1655), 1, + ACTIONS(1628), 1, anon_sym_AMP, - ACTIONS(1657), 1, + ACTIONS(1630), 1, anon_sym_CARET, - ACTIONS(1639), 2, + ACTIONS(1608), 2, anon_sym_STAR, anon_sym_SLASH, - ACTIONS(1641), 2, + ACTIONS(1610), 2, anon_sym_GT_GT, anon_sym_LT_LT, - ACTIONS(1647), 2, + ACTIONS(1616), 2, anon_sym_DASH, anon_sym_PLUS, - STATE(733), 2, + STATE(734), 2, sym_argument_list, sym_generator_expression, - ACTIONS(1651), 3, + ACTIONS(1624), 3, anon_sym_AT, anon_sym_PERCENT, anon_sym_SLASH_SLASH, - ACTIONS(1715), 3, - anon_sym_as, + ACTIONS(1721), 3, + anon_sym_EQ, anon_sym_LT, anon_sym_GT, - ACTIONS(1713), 17, + ACTIONS(1719), 17, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_if, - anon_sym_async, - anon_sym_for, + anon_sym_COLON, + anon_sym_else, anon_sym_in, anon_sym_RBRACK, anon_sym_RBRACE, @@ -62042,33 +62588,33 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [45894] = 8, + [46193] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(1593), 1, + ACTIONS(1602), 1, anon_sym_DOT, - ACTIONS(1595), 1, + ACTIONS(1604), 1, anon_sym_LPAREN, - ACTIONS(1609), 1, + ACTIONS(1618), 1, anon_sym_LBRACK, - ACTIONS(1611), 1, + ACTIONS(1662), 1, anon_sym_STAR_STAR, - STATE(733), 2, + STATE(734), 2, sym_argument_list, sym_generator_expression, - ACTIONS(1693), 5, + ACTIONS(1713), 5, + anon_sym_as, anon_sym_STAR, - anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1691), 27, + ACTIONS(1711), 27, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_GT_GT, anon_sym_if, - anon_sym_COLON, - anon_sym_else, + anon_sym_async, + anon_sym_for, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, @@ -62090,41 +62636,41 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [45950] = 11, + [46249] = 11, ACTIONS(3), 1, sym_comment, - ACTIONS(1593), 1, + ACTIONS(1602), 1, anon_sym_DOT, - ACTIONS(1595), 1, + ACTIONS(1604), 1, anon_sym_LPAREN, - ACTIONS(1609), 1, + ACTIONS(1618), 1, anon_sym_LBRACK, - ACTIONS(1611), 1, + ACTIONS(1662), 1, anon_sym_STAR_STAR, - ACTIONS(1599), 2, + ACTIONS(1652), 2, anon_sym_STAR, anon_sym_SLASH, - ACTIONS(1607), 2, + ACTIONS(1660), 2, anon_sym_DASH, anon_sym_PLUS, - STATE(733), 2, + STATE(734), 2, sym_argument_list, sym_generator_expression, - ACTIONS(1615), 3, + ACTIONS(1664), 3, anon_sym_AT, anon_sym_PERCENT, anon_sym_SLASH_SLASH, - ACTIONS(1693), 3, - anon_sym_EQ, + ACTIONS(1713), 3, + anon_sym_as, anon_sym_LT, anon_sym_GT, - ACTIONS(1691), 22, + ACTIONS(1711), 22, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_GT_GT, anon_sym_if, - anon_sym_COLON, - anon_sym_else, + anon_sym_async, + anon_sym_for, anon_sym_in, anon_sym_PIPE, anon_sym_RBRACK, @@ -62141,49 +62687,49 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [46012] = 15, + [46311] = 15, ACTIONS(3), 1, sym_comment, - ACTIONS(1593), 1, + ACTIONS(1602), 1, anon_sym_DOT, - ACTIONS(1595), 1, + ACTIONS(1604), 1, anon_sym_LPAREN, - ACTIONS(1605), 1, - anon_sym_PIPE, - ACTIONS(1609), 1, + ACTIONS(1618), 1, anon_sym_LBRACK, - ACTIONS(1611), 1, + ACTIONS(1658), 1, + anon_sym_PIPE, + ACTIONS(1662), 1, anon_sym_STAR_STAR, - ACTIONS(1619), 1, + ACTIONS(1668), 1, anon_sym_AMP, - ACTIONS(1621), 1, + ACTIONS(1670), 1, anon_sym_CARET, - ACTIONS(1599), 2, + ACTIONS(1652), 2, anon_sym_STAR, anon_sym_SLASH, - ACTIONS(1601), 2, + ACTIONS(1654), 2, anon_sym_GT_GT, anon_sym_LT_LT, - ACTIONS(1607), 2, + ACTIONS(1660), 2, anon_sym_DASH, anon_sym_PLUS, - STATE(733), 2, + STATE(734), 2, sym_argument_list, sym_generator_expression, - ACTIONS(1615), 3, + ACTIONS(1664), 3, anon_sym_AT, anon_sym_PERCENT, anon_sym_SLASH_SLASH, - ACTIONS(1701), 3, - anon_sym_EQ, + ACTIONS(1725), 3, + anon_sym_as, anon_sym_LT, anon_sym_GT, - ACTIONS(1699), 17, + ACTIONS(1723), 17, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_if, - anon_sym_COLON, - anon_sym_else, + anon_sym_async, + anon_sym_for, anon_sym_in, anon_sym_RBRACK, anon_sym_RBRACE, @@ -62196,47 +62742,47 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [46082] = 14, + [46381] = 14, ACTIONS(3), 1, sym_comment, - ACTIONS(1593), 1, + ACTIONS(1602), 1, anon_sym_DOT, - ACTIONS(1595), 1, + ACTIONS(1604), 1, anon_sym_LPAREN, - ACTIONS(1609), 1, + ACTIONS(1618), 1, anon_sym_LBRACK, - ACTIONS(1611), 1, + ACTIONS(1662), 1, anon_sym_STAR_STAR, - ACTIONS(1619), 1, + ACTIONS(1668), 1, anon_sym_AMP, - ACTIONS(1621), 1, + ACTIONS(1670), 1, anon_sym_CARET, - ACTIONS(1599), 2, + ACTIONS(1652), 2, anon_sym_STAR, anon_sym_SLASH, - ACTIONS(1601), 2, + ACTIONS(1654), 2, anon_sym_GT_GT, anon_sym_LT_LT, - ACTIONS(1607), 2, + ACTIONS(1660), 2, anon_sym_DASH, anon_sym_PLUS, - STATE(733), 2, + STATE(734), 2, sym_argument_list, sym_generator_expression, - ACTIONS(1615), 3, + ACTIONS(1664), 3, anon_sym_AT, anon_sym_PERCENT, anon_sym_SLASH_SLASH, - ACTIONS(1693), 3, - anon_sym_EQ, + ACTIONS(1713), 3, + anon_sym_as, anon_sym_LT, anon_sym_GT, - ACTIONS(1691), 18, + ACTIONS(1711), 18, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_if, - anon_sym_COLON, - anon_sym_else, + anon_sym_async, + anon_sym_for, anon_sym_in, anon_sym_PIPE, anon_sym_RBRACK, @@ -62250,45 +62796,47 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [46150] = 8, + [46449] = 10, ACTIONS(3), 1, sym_comment, - ACTIONS(1593), 1, + ACTIONS(1602), 1, anon_sym_DOT, - ACTIONS(1595), 1, + ACTIONS(1604), 1, anon_sym_LPAREN, - ACTIONS(1609), 1, + ACTIONS(1618), 1, anon_sym_LBRACK, - ACTIONS(1611), 1, + ACTIONS(1662), 1, anon_sym_STAR_STAR, - STATE(733), 2, - sym_argument_list, - sym_generator_expression, - ACTIONS(1693), 5, + ACTIONS(1652), 2, anon_sym_STAR, - anon_sym_EQ, anon_sym_SLASH, + STATE(734), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1664), 3, + anon_sym_AT, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + ACTIONS(1713), 3, + anon_sym_as, anon_sym_LT, anon_sym_GT, - ACTIONS(1691), 27, + ACTIONS(1711), 24, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_GT_GT, anon_sym_if, - anon_sym_COLON, - anon_sym_else, + anon_sym_async, + anon_sym_for, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_RBRACK, anon_sym_RBRACE, - anon_sym_AT, anon_sym_not, anon_sym_and, anon_sym_or, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, anon_sym_AMP, anon_sym_CARET, anon_sym_LT_LT, @@ -62298,248 +62846,231 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [46206] = 13, + [46509] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(1593), 1, + ACTIONS(1602), 1, anon_sym_DOT, - ACTIONS(1595), 1, + ACTIONS(1604), 1, anon_sym_LPAREN, - ACTIONS(1609), 1, + ACTIONS(1618), 1, anon_sym_LBRACK, - ACTIONS(1611), 1, + ACTIONS(1662), 1, anon_sym_STAR_STAR, - ACTIONS(1621), 1, - anon_sym_CARET, - ACTIONS(1599), 2, - anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(1601), 2, - anon_sym_GT_GT, - anon_sym_LT_LT, - ACTIONS(1607), 2, - anon_sym_DASH, - anon_sym_PLUS, - STATE(733), 2, + STATE(734), 2, sym_argument_list, sym_generator_expression, - ACTIONS(1615), 3, - anon_sym_AT, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - ACTIONS(1693), 3, - anon_sym_EQ, + ACTIONS(1713), 5, + anon_sym_as, + anon_sym_STAR, + anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1691), 19, + ACTIONS(1711), 27, anon_sym_RPAREN, anon_sym_COMMA, + anon_sym_GT_GT, anon_sym_if, - anon_sym_COLON, - anon_sym_else, + anon_sym_async, + anon_sym_for, anon_sym_in, anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, anon_sym_RBRACK, anon_sym_RBRACE, + anon_sym_AT, anon_sym_not, anon_sym_and, anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [46272] = 12, + [46565] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(1593), 1, - anon_sym_DOT, - ACTIONS(1595), 1, - anon_sym_LPAREN, - ACTIONS(1609), 1, - anon_sym_LBRACK, - ACTIONS(1611), 1, - anon_sym_STAR_STAR, - ACTIONS(1599), 2, + ACTIONS(1727), 1, + sym__string_start, + STATE(752), 2, + sym_string, + aux_sym_concatenated_string_repeat1, + ACTIONS(1514), 4, anon_sym_STAR, anon_sym_SLASH, - ACTIONS(1601), 2, - anon_sym_GT_GT, - anon_sym_LT_LT, - ACTIONS(1607), 2, - anon_sym_DASH, - anon_sym_PLUS, - STATE(733), 2, - sym_argument_list, - sym_generator_expression, - ACTIONS(1615), 3, - anon_sym_AT, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - ACTIONS(1693), 3, - anon_sym_EQ, anon_sym_LT, anon_sym_GT, - ACTIONS(1691), 20, + ACTIONS(1512), 31, + anon_sym_DOT, + anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_COMMA, + anon_sym_as, + anon_sym_GT_GT, anon_sym_if, anon_sym_COLON, - anon_sym_else, anon_sym_in, anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_RBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, anon_sym_not, anon_sym_and, anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, anon_sym_AMP, anon_sym_CARET, + anon_sym_LT_LT, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [46336] = 15, + [46615] = 13, ACTIONS(3), 1, sym_comment, - ACTIONS(1593), 1, + ACTIONS(1602), 1, anon_sym_DOT, - ACTIONS(1595), 1, + ACTIONS(1604), 1, anon_sym_LPAREN, - ACTIONS(1605), 1, - anon_sym_PIPE, - ACTIONS(1609), 1, + ACTIONS(1618), 1, anon_sym_LBRACK, - ACTIONS(1611), 1, + ACTIONS(1662), 1, anon_sym_STAR_STAR, - ACTIONS(1619), 1, - anon_sym_AMP, - ACTIONS(1621), 1, + ACTIONS(1670), 1, anon_sym_CARET, - ACTIONS(1599), 2, + ACTIONS(1652), 2, anon_sym_STAR, anon_sym_SLASH, - ACTIONS(1601), 2, + ACTIONS(1654), 2, anon_sym_GT_GT, anon_sym_LT_LT, - ACTIONS(1607), 2, + ACTIONS(1660), 2, anon_sym_DASH, anon_sym_PLUS, - STATE(733), 2, + STATE(734), 2, sym_argument_list, sym_generator_expression, - ACTIONS(1615), 3, + ACTIONS(1664), 3, anon_sym_AT, anon_sym_PERCENT, anon_sym_SLASH_SLASH, - ACTIONS(1711), 3, - anon_sym_EQ, + ACTIONS(1713), 3, + anon_sym_as, anon_sym_LT, anon_sym_GT, - ACTIONS(1709), 17, + ACTIONS(1711), 19, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_if, - anon_sym_COLON, - anon_sym_else, + anon_sym_async, + anon_sym_for, anon_sym_in, + anon_sym_PIPE, anon_sym_RBRACK, anon_sym_RBRACE, anon_sym_not, anon_sym_and, anon_sym_or, + anon_sym_AMP, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [46406] = 15, + [46681] = 12, ACTIONS(3), 1, sym_comment, - ACTIONS(1593), 1, + ACTIONS(1602), 1, anon_sym_DOT, - ACTIONS(1595), 1, + ACTIONS(1604), 1, anon_sym_LPAREN, - ACTIONS(1605), 1, - anon_sym_PIPE, - ACTIONS(1609), 1, + ACTIONS(1618), 1, anon_sym_LBRACK, - ACTIONS(1611), 1, + ACTIONS(1662), 1, anon_sym_STAR_STAR, - ACTIONS(1619), 1, - anon_sym_AMP, - ACTIONS(1621), 1, - anon_sym_CARET, - ACTIONS(1599), 2, + ACTIONS(1652), 2, anon_sym_STAR, anon_sym_SLASH, - ACTIONS(1601), 2, + ACTIONS(1654), 2, anon_sym_GT_GT, anon_sym_LT_LT, - ACTIONS(1607), 2, + ACTIONS(1660), 2, anon_sym_DASH, anon_sym_PLUS, - STATE(733), 2, + STATE(734), 2, sym_argument_list, sym_generator_expression, - ACTIONS(1615), 3, + ACTIONS(1664), 3, anon_sym_AT, anon_sym_PERCENT, anon_sym_SLASH_SLASH, - ACTIONS(1715), 3, - anon_sym_EQ, + ACTIONS(1713), 3, + anon_sym_as, anon_sym_LT, anon_sym_GT, - ACTIONS(1713), 17, + ACTIONS(1711), 20, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_if, - anon_sym_COLON, - anon_sym_else, + anon_sym_async, + anon_sym_for, anon_sym_in, + anon_sym_PIPE, anon_sym_RBRACK, anon_sym_RBRACE, anon_sym_not, anon_sym_and, anon_sym_or, + anon_sym_AMP, + anon_sym_CARET, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [46476] = 8, + [46745] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(1593), 1, + ACTIONS(1602), 1, anon_sym_DOT, - ACTIONS(1595), 1, + ACTIONS(1604), 1, anon_sym_LPAREN, - ACTIONS(1609), 1, + ACTIONS(1618), 1, anon_sym_LBRACK, - ACTIONS(1649), 1, + ACTIONS(1620), 1, anon_sym_STAR_STAR, - STATE(733), 2, + STATE(734), 2, sym_argument_list, sym_generator_expression, - ACTIONS(1719), 5, - anon_sym_as, + ACTIONS(1713), 5, anon_sym_STAR, + anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1717), 27, + ACTIONS(1711), 27, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_GT_GT, anon_sym_if, - anon_sym_async, - anon_sym_for, + anon_sym_COLON, + anon_sym_else, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, @@ -62561,45 +63092,48 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [46532] = 8, + [46801] = 11, ACTIONS(3), 1, sym_comment, - ACTIONS(1593), 1, + ACTIONS(1602), 1, anon_sym_DOT, - ACTIONS(1595), 1, + ACTIONS(1604), 1, anon_sym_LPAREN, - ACTIONS(1609), 1, + ACTIONS(1618), 1, anon_sym_LBRACK, - ACTIONS(1649), 1, + ACTIONS(1620), 1, anon_sym_STAR_STAR, - STATE(733), 2, - sym_argument_list, - sym_generator_expression, - ACTIONS(1697), 5, - anon_sym_as, + ACTIONS(1608), 2, anon_sym_STAR, anon_sym_SLASH, + ACTIONS(1616), 2, + anon_sym_DASH, + anon_sym_PLUS, + STATE(734), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1624), 3, + anon_sym_AT, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + ACTIONS(1713), 3, + anon_sym_EQ, anon_sym_LT, anon_sym_GT, - ACTIONS(1695), 27, + ACTIONS(1711), 22, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_GT_GT, anon_sym_if, - anon_sym_async, - anon_sym_for, + anon_sym_COLON, + anon_sym_else, anon_sym_in, anon_sym_PIPE, - anon_sym_DASH, - anon_sym_PLUS, anon_sym_RBRACK, anon_sym_RBRACE, - anon_sym_AT, anon_sym_not, anon_sym_and, anon_sym_or, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, anon_sym_AMP, anon_sym_CARET, anon_sym_LT_LT, @@ -62609,79 +63143,144 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [46588] = 8, + [46863] = 15, ACTIONS(3), 1, sym_comment, - ACTIONS(1593), 1, + ACTIONS(1602), 1, anon_sym_DOT, - ACTIONS(1595), 1, + ACTIONS(1604), 1, anon_sym_LPAREN, - ACTIONS(1609), 1, + ACTIONS(1614), 1, + anon_sym_PIPE, + ACTIONS(1618), 1, anon_sym_LBRACK, - ACTIONS(1611), 1, + ACTIONS(1620), 1, anon_sym_STAR_STAR, - STATE(733), 2, + ACTIONS(1628), 1, + anon_sym_AMP, + ACTIONS(1630), 1, + anon_sym_CARET, + ACTIONS(1608), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(1610), 2, + anon_sym_GT_GT, + anon_sym_LT_LT, + ACTIONS(1616), 2, + anon_sym_DASH, + anon_sym_PLUS, + STATE(734), 2, sym_argument_list, sym_generator_expression, - ACTIONS(1719), 5, - anon_sym_STAR, + ACTIONS(1624), 3, + anon_sym_AT, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + ACTIONS(1706), 3, anon_sym_EQ, - anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1717), 27, + ACTIONS(1704), 17, anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_GT_GT, anon_sym_if, anon_sym_COLON, anon_sym_else, anon_sym_in, - anon_sym_PIPE, - anon_sym_DASH, - anon_sym_PLUS, anon_sym_RBRACK, anon_sym_RBRACE, - anon_sym_AT, anon_sym_not, anon_sym_and, anon_sym_or, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [46933] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1602), 1, + anon_sym_DOT, + ACTIONS(1604), 1, + anon_sym_LPAREN, + ACTIONS(1614), 1, + anon_sym_PIPE, + ACTIONS(1618), 1, + anon_sym_LBRACK, + ACTIONS(1620), 1, + anon_sym_STAR_STAR, + ACTIONS(1628), 1, anon_sym_AMP, + ACTIONS(1630), 1, anon_sym_CARET, + ACTIONS(1608), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(1610), 2, + anon_sym_GT_GT, anon_sym_LT_LT, + ACTIONS(1616), 2, + anon_sym_DASH, + anon_sym_PLUS, + STATE(734), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1624), 3, + anon_sym_AT, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + ACTIONS(1725), 3, + anon_sym_EQ, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1723), 17, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_if, + anon_sym_COLON, + anon_sym_else, + anon_sym_in, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_not, + anon_sym_and, + anon_sym_or, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [46644] = 5, + [47003] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(1721), 1, - sym__template_string_start, - STATE(762), 2, - sym_template_string, - aux_sym_concatenated_template_string_repeat1, - ACTIONS(1498), 5, + ACTIONS(654), 1, + sym__string_start, + STATE(752), 2, + sym_string, + aux_sym_concatenated_string_repeat1, + ACTIONS(1506), 4, anon_sym_STAR, - anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1496), 29, + ACTIONS(1504), 31, anon_sym_DOT, anon_sym_LPAREN, + anon_sym_RPAREN, anon_sym_COMMA, + anon_sym_as, anon_sym_GT_GT, anon_sym_if, + anon_sym_COLON, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, + anon_sym_RBRACK, anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, @@ -62699,35 +63298,35 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - anon_sym_COLON2, - sym_type_conversion, - [46693] = 5, + [47053] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(83), 1, + ACTIONS(656), 1, sym__template_string_start, - STATE(778), 2, + STATE(738), 2, sym_template_string, aux_sym_concatenated_template_string_repeat1, - ACTIONS(1178), 5, + ACTIONS(1510), 4, anon_sym_STAR, - anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1173), 29, - sym__newline, + ACTIONS(1508), 31, anon_sym_DOT, - anon_sym_from, anon_sym_LPAREN, + anon_sym_RPAREN, anon_sym_COMMA, + anon_sym_as, anon_sym_GT_GT, anon_sym_if, + anon_sym_COLON, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, @@ -62744,22 +63343,88 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - anon_sym_SEMI, - [46742] = 3, + [47103] = 14, ACTIONS(3), 1, sym_comment, - ACTIONS(1283), 5, + ACTIONS(1602), 1, + anon_sym_DOT, + ACTIONS(1604), 1, + anon_sym_LPAREN, + ACTIONS(1618), 1, + anon_sym_LBRACK, + ACTIONS(1620), 1, + anon_sym_STAR_STAR, + ACTIONS(1628), 1, + anon_sym_AMP, + ACTIONS(1630), 1, + anon_sym_CARET, + ACTIONS(1608), 2, anon_sym_STAR, - anon_sym_EQ, anon_sym_SLASH, + ACTIONS(1610), 2, + anon_sym_GT_GT, + anon_sym_LT_LT, + ACTIONS(1616), 2, + anon_sym_DASH, + anon_sym_PLUS, + STATE(734), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1624), 3, + anon_sym_AT, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + ACTIONS(1713), 3, + anon_sym_EQ, anon_sym_LT, anon_sym_GT, - ACTIONS(1278), 32, + ACTIONS(1711), 18, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_if, + anon_sym_COLON, + anon_sym_else, + anon_sym_in, + anon_sym_PIPE, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [47171] = 10, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1602), 1, anon_sym_DOT, + ACTIONS(1604), 1, anon_sym_LPAREN, + ACTIONS(1618), 1, + anon_sym_LBRACK, + ACTIONS(1620), 1, + anon_sym_STAR_STAR, + ACTIONS(1608), 2, + anon_sym_STAR, + anon_sym_SLASH, + STATE(734), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1624), 3, + anon_sym_AT, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + ACTIONS(1713), 3, + anon_sym_EQ, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1711), 24, anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_as, anon_sym_GT_GT, anon_sym_if, anon_sym_COLON, @@ -62768,16 +63433,11 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, - anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_RBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, anon_sym_not, anon_sym_and, anon_sym_or, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, anon_sym_AMP, anon_sym_CARET, anon_sym_LT_LT, @@ -62787,33 +63447,92 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [46787] = 5, + [47231] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(81), 1, - sym__string_start, - STATE(775), 2, - sym_string, - aux_sym_concatenated_string_repeat1, - ACTIONS(1481), 5, - anon_sym_STAR, + ACTIONS(1622), 1, anon_sym_EQ, + ACTIONS(1730), 1, + anon_sym_DOT, + ACTIONS(1732), 1, + anon_sym_LPAREN, + ACTIONS(1740), 1, + anon_sym_PIPE, + ACTIONS(1744), 1, + anon_sym_LBRACK, + ACTIONS(1746), 1, + anon_sym_STAR_STAR, + ACTIONS(1750), 1, + anon_sym_not, + ACTIONS(1752), 1, + anon_sym_AMP, + ACTIONS(1754), 1, + anon_sym_CARET, + ACTIONS(1758), 1, + anon_sym_is, + STATE(1005), 1, + aux_sym_comparison_operator_repeat1, + ACTIONS(1734), 2, + anon_sym_STAR, anon_sym_SLASH, + ACTIONS(1736), 2, + anon_sym_GT_GT, + anon_sym_LT_LT, + ACTIONS(1742), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(1756), 2, anon_sym_LT, anon_sym_GT, - ACTIONS(1479), 29, - sym__newline, + STATE(903), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1748), 3, + anon_sym_AT, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + ACTIONS(1738), 6, + anon_sym_in, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + ACTIONS(1606), 7, + anon_sym_COMMA, + anon_sym_if, + anon_sym_RBRACE, + anon_sym_and, + anon_sym_or, + anon_sym_COLON2, + sym_type_conversion, + [47310] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(604), 1, + anon_sym_COLON_EQ, + ACTIONS(272), 5, + anon_sym_as, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(303), 31, anon_sym_DOT, - anon_sym_from, anon_sym_LPAREN, + anon_sym_RPAREN, anon_sym_COMMA, anon_sym_GT_GT, anon_sym_if, + anon_sym_async, + anon_sym_for, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, @@ -62830,81 +63549,80 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - anon_sym_SEMI, - [46836] = 20, + [47357] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(1613), 1, + ACTIONS(1622), 1, anon_sym_EQ, - ACTIONS(1724), 1, + ACTIONS(1760), 1, anon_sym_DOT, - ACTIONS(1726), 1, + ACTIONS(1762), 1, anon_sym_LPAREN, - ACTIONS(1734), 1, + ACTIONS(1770), 1, anon_sym_PIPE, - ACTIONS(1738), 1, + ACTIONS(1774), 1, anon_sym_LBRACK, - ACTIONS(1740), 1, + ACTIONS(1776), 1, anon_sym_STAR_STAR, - ACTIONS(1744), 1, + ACTIONS(1780), 1, anon_sym_not, - ACTIONS(1746), 1, + ACTIONS(1782), 1, anon_sym_AMP, - ACTIONS(1748), 1, + ACTIONS(1784), 1, anon_sym_CARET, - ACTIONS(1752), 1, + ACTIONS(1788), 1, anon_sym_is, - STATE(1006), 1, + STATE(1008), 1, aux_sym_comparison_operator_repeat1, - ACTIONS(1728), 2, + ACTIONS(1764), 2, anon_sym_STAR, anon_sym_SLASH, - ACTIONS(1730), 2, + ACTIONS(1766), 2, anon_sym_GT_GT, anon_sym_LT_LT, - ACTIONS(1736), 2, + ACTIONS(1772), 2, anon_sym_DASH, anon_sym_PLUS, - ACTIONS(1750), 2, + ACTIONS(1786), 2, anon_sym_LT, anon_sym_GT, - STATE(906), 2, + STATE(900), 2, sym_argument_list, sym_generator_expression, - ACTIONS(1742), 3, + ACTIONS(1778), 3, anon_sym_AT, anon_sym_PERCENT, anon_sym_SLASH_SLASH, - ACTIONS(1732), 6, + ACTIONS(1768), 6, anon_sym_in, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_GT, - ACTIONS(1597), 7, + ACTIONS(1606), 7, + sym__newline, + anon_sym_from, anon_sym_COMMA, anon_sym_if, - anon_sym_RBRACE, anon_sym_and, anon_sym_or, - anon_sym_COLON2, - sym_type_conversion, - [46915] = 5, + anon_sym_SEMI, + [47436] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(625), 1, + ACTIONS(630), 1, sym__string_start, - STATE(769), 2, + STATE(767), 2, sym_string, aux_sym_concatenated_string_repeat1, - ACTIONS(1178), 5, + ACTIONS(1235), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1173), 29, + ACTIONS(1230), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_COMMA, @@ -62934,21 +63652,21 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_is, anon_sym_COLON2, sym_type_conversion, - [46964] = 5, + [47485] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(627), 1, - sym__template_string_start, + ACTIONS(630), 1, + sym__string_start, STATE(770), 2, - sym_template_string, - aux_sym_concatenated_template_string_repeat1, - ACTIONS(1178), 5, + sym_string, + aux_sym_concatenated_string_repeat1, + ACTIONS(1506), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1173), 29, + ACTIONS(1504), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_COMMA, @@ -62978,21 +63696,21 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_is, anon_sym_COLON2, sym_type_conversion, - [47013] = 5, + [47534] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(625), 1, - sym__string_start, + ACTIONS(632), 1, + sym__template_string_start, STATE(771), 2, - sym_string, - aux_sym_concatenated_string_repeat1, - ACTIONS(1481), 5, + sym_template_string, + aux_sym_concatenated_template_string_repeat1, + ACTIONS(1510), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1479), 29, + ACTIONS(1508), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_COMMA, @@ -63022,22 +63740,24 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_is, anon_sym_COLON2, sym_type_conversion, - [47062] = 5, + [47583] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(627), 1, + ACTIONS(85), 1, sym__template_string_start, - STATE(762), 2, + STATE(774), 2, sym_template_string, aux_sym_concatenated_template_string_repeat1, - ACTIONS(1485), 5, + ACTIONS(1235), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1483), 29, + ACTIONS(1230), 29, + sym__newline, anon_sym_DOT, + anon_sym_from, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_GT_GT, @@ -63047,7 +63767,6 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, - anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, @@ -63064,23 +63783,22 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - anon_sym_COLON2, - sym_type_conversion, - [47111] = 5, + anon_sym_SEMI, + [47632] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(1754), 1, + ACTIONS(1790), 1, sym__string_start, - STATE(771), 2, + STATE(770), 2, sym_string, aux_sym_concatenated_string_repeat1, - ACTIONS(1491), 5, + ACTIONS(1514), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1489), 29, + ACTIONS(1512), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_COMMA, @@ -63110,83 +63828,68 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_is, anon_sym_COLON2, sym_type_conversion, - [47160] = 19, + [47681] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(1593), 1, - anon_sym_DOT, - ACTIONS(1595), 1, - anon_sym_LPAREN, - ACTIONS(1609), 1, - anon_sym_LBRACK, - ACTIONS(1763), 1, - anon_sym_PIPE, - ACTIONS(1767), 1, - anon_sym_STAR_STAR, - ACTIONS(1771), 1, - anon_sym_not, - ACTIONS(1773), 1, - anon_sym_AMP, - ACTIONS(1775), 1, - anon_sym_CARET, - ACTIONS(1779), 1, - anon_sym_is, - STATE(997), 1, - aux_sym_comparison_operator_repeat1, - ACTIONS(1757), 2, + ACTIONS(1793), 1, + sym__template_string_start, + STATE(771), 2, + sym_template_string, + aux_sym_concatenated_template_string_repeat1, + ACTIONS(1521), 5, anon_sym_STAR, + anon_sym_EQ, anon_sym_SLASH, - ACTIONS(1759), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1519), 29, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_COMMA, anon_sym_GT_GT, - anon_sym_LT_LT, - ACTIONS(1765), 2, + anon_sym_if, + anon_sym_in, + anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, - ACTIONS(1777), 2, - anon_sym_LT, - anon_sym_GT, - STATE(733), 2, - sym_argument_list, - sym_generator_expression, - ACTIONS(1769), 3, + anon_sym_LBRACK, + anon_sym_RBRACE, + anon_sym_STAR_STAR, anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, anon_sym_PERCENT, anon_sym_SLASH_SLASH, - ACTIONS(1761), 6, - anon_sym_in, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_GT, - ACTIONS(1597), 8, - anon_sym_COMMA, - anon_sym_if, - anon_sym_COLON, - anon_sym_async, - anon_sym_for, - anon_sym_RBRACE, - anon_sym_and, - anon_sym_or, - [47237] = 4, + anon_sym_is, + anon_sym_COLON2, + sym_type_conversion, + [47730] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(585), 1, - anon_sym_COLON_EQ, - ACTIONS(265), 6, + ACTIONS(1425), 5, anon_sym_STAR, - anon_sym_COLON, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(298), 30, + ACTIONS(1420), 32, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_COMMA, + anon_sym_as, anon_sym_GT_GT, anon_sym_if, + anon_sym_COLON, anon_sym_else, anon_sym_in, anon_sym_PIPE, @@ -63211,19 +63914,19 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [47284] = 4, + [47775] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1219), 1, + ACTIONS(580), 1, anon_sym_COLON_EQ, - ACTIONS(1178), 6, + ACTIONS(272), 6, anon_sym_STAR, anon_sym_COLON, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1173), 30, + ACTIONS(303), 30, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -63254,21 +63957,21 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [47331] = 5, + [47822] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(1781), 1, - sym__string_start, - STATE(775), 2, - sym_string, - aux_sym_concatenated_string_repeat1, - ACTIONS(1491), 5, + ACTIONS(85), 1, + sym__template_string_start, + STATE(778), 2, + sym_template_string, + aux_sym_concatenated_template_string_repeat1, + ACTIONS(1510), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1489), 29, + ACTIONS(1508), 29, sym__newline, anon_sym_DOT, anon_sym_from, @@ -63298,21 +64001,21 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LT_GT, anon_sym_is, anon_sym_SEMI, - [47380] = 5, + [47871] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(1784), 1, - sym__template_string_start, - STATE(776), 2, - sym_template_string, - aux_sym_concatenated_template_string_repeat1, - ACTIONS(1498), 5, + ACTIONS(83), 1, + sym__string_start, + STATE(782), 2, + sym_string, + aux_sym_concatenated_string_repeat1, + ACTIONS(1235), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1496), 29, + ACTIONS(1230), 29, sym__newline, anon_sym_DOT, anon_sym_from, @@ -63342,16 +64045,60 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LT_GT, anon_sym_is, anon_sym_SEMI, - [47429] = 3, + [47920] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(632), 1, + sym__template_string_start, + STATE(768), 2, + sym_template_string, + aux_sym_concatenated_template_string_repeat1, + ACTIONS(1235), 5, + anon_sym_STAR, + anon_sym_EQ, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1230), 29, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_RBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + anon_sym_COLON2, + sym_type_conversion, + [47969] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1272), 5, + ACTIONS(1468), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1267), 32, + ACTIONS(1463), 32, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -63384,21 +64131,21 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [47474] = 5, + [48014] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(83), 1, + ACTIONS(1796), 1, sym__template_string_start, - STATE(776), 2, + STATE(778), 2, sym_template_string, aux_sym_concatenated_template_string_repeat1, - ACTIONS(1485), 5, + ACTIONS(1521), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1483), 29, + ACTIONS(1519), 29, sym__newline, anon_sym_DOT, anon_sym_from, @@ -63428,85 +64175,128 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LT_GT, anon_sym_is, anon_sym_SEMI, - [47523] = 20, + [48063] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(1613), 1, + ACTIONS(1799), 1, + sym__string_start, + STATE(779), 2, + sym_string, + aux_sym_concatenated_string_repeat1, + ACTIONS(1514), 5, + anon_sym_STAR, anon_sym_EQ, - ACTIONS(1787), 1, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1512), 29, + sym__newline, anon_sym_DOT, - ACTIONS(1789), 1, + anon_sym_from, anon_sym_LPAREN, - ACTIONS(1797), 1, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_in, anon_sym_PIPE, - ACTIONS(1801), 1, + anon_sym_DASH, + anon_sym_PLUS, anon_sym_LBRACK, - ACTIONS(1803), 1, anon_sym_STAR_STAR, - ACTIONS(1807), 1, + anon_sym_AT, anon_sym_not, - ACTIONS(1809), 1, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + anon_sym_SEMI, + [48112] = 19, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1602), 1, + anon_sym_DOT, + ACTIONS(1604), 1, + anon_sym_LPAREN, + ACTIONS(1618), 1, + anon_sym_LBRACK, + ACTIONS(1808), 1, + anon_sym_PIPE, + ACTIONS(1812), 1, + anon_sym_STAR_STAR, + ACTIONS(1816), 1, + anon_sym_not, + ACTIONS(1818), 1, anon_sym_AMP, - ACTIONS(1811), 1, + ACTIONS(1820), 1, anon_sym_CARET, - ACTIONS(1815), 1, + ACTIONS(1824), 1, anon_sym_is, - STATE(1002), 1, + STATE(1006), 1, aux_sym_comparison_operator_repeat1, - ACTIONS(1791), 2, + ACTIONS(1802), 2, anon_sym_STAR, anon_sym_SLASH, - ACTIONS(1793), 2, + ACTIONS(1804), 2, anon_sym_GT_GT, anon_sym_LT_LT, - ACTIONS(1799), 2, + ACTIONS(1810), 2, anon_sym_DASH, anon_sym_PLUS, - ACTIONS(1813), 2, + ACTIONS(1822), 2, anon_sym_LT, anon_sym_GT, - STATE(904), 2, + STATE(734), 2, sym_argument_list, sym_generator_expression, - ACTIONS(1805), 3, + ACTIONS(1814), 3, anon_sym_AT, anon_sym_PERCENT, anon_sym_SLASH_SLASH, - ACTIONS(1795), 6, + ACTIONS(1806), 6, anon_sym_in, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_GT, - ACTIONS(1597), 7, - sym__newline, - anon_sym_from, + ACTIONS(1606), 8, anon_sym_COMMA, anon_sym_if, + anon_sym_COLON, + anon_sym_async, + anon_sym_for, + anon_sym_RBRACE, anon_sym_and, anon_sym_or, - anon_sym_SEMI, - [47602] = 4, + [48189] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(599), 1, + ACTIONS(1258), 1, anon_sym_COLON_EQ, - ACTIONS(265), 5, - anon_sym_as, + ACTIONS(1235), 6, anon_sym_STAR, + anon_sym_COLON, + anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(298), 31, + ACTIONS(1230), 30, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_GT_GT, anon_sym_if, - anon_sym_async, - anon_sym_for, + anon_sym_else, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, @@ -63530,33 +64320,33 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [47649] = 4, + [48236] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(1817), 1, - anon_sym_COLON_EQ, - ACTIONS(1178), 5, - anon_sym_as, + ACTIONS(83), 1, + sym__string_start, + STATE(779), 2, + sym_string, + aux_sym_concatenated_string_repeat1, + ACTIONS(1506), 5, anon_sym_STAR, + anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1173), 31, + ACTIONS(1504), 29, + sym__newline, anon_sym_DOT, + anon_sym_from, anon_sym_LPAREN, - anon_sym_RPAREN, anon_sym_COMMA, anon_sym_GT_GT, anon_sym_if, - anon_sym_async, - anon_sym_for, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, @@ -63573,33 +64363,34 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [47696] = 5, + anon_sym_SEMI, + [48285] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(81), 1, - sym__string_start, - STATE(765), 2, - sym_string, - aux_sym_concatenated_string_repeat1, - ACTIONS(1178), 5, + ACTIONS(1826), 1, + anon_sym_COLON_EQ, + ACTIONS(1235), 5, + anon_sym_as, anon_sym_STAR, - anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1173), 29, - sym__newline, + ACTIONS(1230), 31, anon_sym_DOT, - anon_sym_from, anon_sym_LPAREN, + anon_sym_RPAREN, anon_sym_COMMA, anon_sym_GT_GT, anon_sym_if, + anon_sym_async, + anon_sym_for, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, @@ -63616,44 +64407,43 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - anon_sym_SEMI, - [47745] = 10, + [48332] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(1724), 1, + ACTIONS(1602), 1, anon_sym_DOT, - ACTIONS(1726), 1, + ACTIONS(1604), 1, anon_sym_LPAREN, - ACTIONS(1738), 1, + ACTIONS(1618), 1, anon_sym_LBRACK, - ACTIONS(1740), 1, + ACTIONS(1812), 1, anon_sym_STAR_STAR, - ACTIONS(1728), 2, - anon_sym_STAR, - anon_sym_SLASH, - STATE(906), 2, + STATE(734), 2, sym_argument_list, sym_generator_expression, - ACTIONS(1693), 3, - anon_sym_EQ, + ACTIONS(1717), 4, + anon_sym_STAR, + anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1742), 3, - anon_sym_AT, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - ACTIONS(1691), 22, + ACTIONS(1715), 26, anon_sym_COMMA, anon_sym_GT_GT, anon_sym_if, + anon_sym_COLON, + anon_sym_async, + anon_sym_for, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_RBRACE, + anon_sym_AT, anon_sym_not, anon_sym_and, anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, anon_sym_AMP, anon_sym_CARET, anon_sym_LT_LT, @@ -63663,75 +64453,80 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - anon_sym_COLON2, - sym_type_conversion, - [47803] = 8, + [48386] = 13, ACTIONS(3), 1, sym_comment, - ACTIONS(1724), 1, + ACTIONS(1760), 1, anon_sym_DOT, - ACTIONS(1726), 1, + ACTIONS(1762), 1, anon_sym_LPAREN, - ACTIONS(1738), 1, + ACTIONS(1774), 1, anon_sym_LBRACK, - ACTIONS(1740), 1, + ACTIONS(1776), 1, anon_sym_STAR_STAR, - STATE(906), 2, + ACTIONS(1784), 1, + anon_sym_CARET, + ACTIONS(1764), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(1766), 2, + anon_sym_GT_GT, + anon_sym_LT_LT, + ACTIONS(1772), 2, + anon_sym_DASH, + anon_sym_PLUS, + STATE(900), 2, sym_argument_list, sym_generator_expression, - ACTIONS(1719), 5, - anon_sym_STAR, + ACTIONS(1713), 3, anon_sym_EQ, - anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1717), 25, + ACTIONS(1778), 3, + anon_sym_AT, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + ACTIONS(1711), 17, + sym__newline, + anon_sym_from, anon_sym_COMMA, - anon_sym_GT_GT, anon_sym_if, anon_sym_in, anon_sym_PIPE, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_RBRACE, - anon_sym_AT, anon_sym_not, anon_sym_and, anon_sym_or, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - anon_sym_COLON2, - sym_type_conversion, - [47857] = 8, + anon_sym_SEMI, + [48450] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(1724), 1, + ACTIONS(1760), 1, anon_sym_DOT, - ACTIONS(1726), 1, + ACTIONS(1762), 1, anon_sym_LPAREN, - ACTIONS(1738), 1, + ACTIONS(1774), 1, anon_sym_LBRACK, - ACTIONS(1740), 1, + ACTIONS(1776), 1, anon_sym_STAR_STAR, - STATE(906), 2, + STATE(900), 2, sym_argument_list, sym_generator_expression, - ACTIONS(1697), 5, + ACTIONS(1717), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1695), 25, + ACTIONS(1715), 25, + sym__newline, + anon_sym_from, anon_sym_COMMA, anon_sym_GT_GT, anon_sym_if, @@ -63739,7 +64534,6 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, - anon_sym_RBRACE, anon_sym_AT, anon_sym_not, anon_sym_and, @@ -63755,37 +64549,33 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - anon_sym_COLON2, - sym_type_conversion, - [47911] = 8, + anon_sym_SEMI, + [48504] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1724), 1, - anon_sym_DOT, - ACTIONS(1726), 1, - anon_sym_LPAREN, - ACTIONS(1738), 1, - anon_sym_LBRACK, - ACTIONS(1740), 1, - anon_sym_STAR_STAR, - STATE(906), 2, - sym_argument_list, - sym_generator_expression, - ACTIONS(1693), 5, + ACTIONS(1532), 4, anon_sym_STAR, - anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1691), 25, + ACTIONS(1530), 32, + sym__string_start, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_RPAREN, anon_sym_COMMA, + anon_sym_as, anon_sym_GT_GT, anon_sym_if, + anon_sym_COLON, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_RBRACK, anon_sym_RBRACE, + anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, anon_sym_and, @@ -63801,46 +64591,38 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - anon_sym_COLON2, - sym_type_conversion, - [47965] = 11, + [48548] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1724), 1, - anon_sym_DOT, - ACTIONS(1726), 1, - anon_sym_LPAREN, - ACTIONS(1738), 1, - anon_sym_LBRACK, - ACTIONS(1740), 1, - anon_sym_STAR_STAR, - ACTIONS(1728), 2, + ACTIONS(1536), 4, anon_sym_STAR, anon_sym_SLASH, - ACTIONS(1736), 2, - anon_sym_DASH, - anon_sym_PLUS, - STATE(906), 2, - sym_argument_list, - sym_generator_expression, - ACTIONS(1693), 3, - anon_sym_EQ, anon_sym_LT, anon_sym_GT, - ACTIONS(1742), 3, - anon_sym_AT, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - ACTIONS(1691), 20, + ACTIONS(1534), 32, + sym__template_string_start, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_RPAREN, anon_sym_COMMA, + anon_sym_as, anon_sym_GT_GT, anon_sym_if, + anon_sym_COLON, anon_sym_in, anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_RBRACK, anon_sym_RBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, anon_sym_not, anon_sym_and, anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, anon_sym_AMP, anon_sym_CARET, anon_sym_LT_LT, @@ -63850,50 +64632,49 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - anon_sym_COLON2, - sym_type_conversion, - [48025] = 15, + [48592] = 15, ACTIONS(3), 1, sym_comment, - ACTIONS(1724), 1, + ACTIONS(1760), 1, anon_sym_DOT, - ACTIONS(1726), 1, + ACTIONS(1762), 1, anon_sym_LPAREN, - ACTIONS(1734), 1, + ACTIONS(1770), 1, anon_sym_PIPE, - ACTIONS(1738), 1, + ACTIONS(1774), 1, anon_sym_LBRACK, - ACTIONS(1740), 1, + ACTIONS(1776), 1, anon_sym_STAR_STAR, - ACTIONS(1746), 1, + ACTIONS(1782), 1, anon_sym_AMP, - ACTIONS(1748), 1, + ACTIONS(1784), 1, anon_sym_CARET, - ACTIONS(1728), 2, + ACTIONS(1764), 2, anon_sym_STAR, anon_sym_SLASH, - ACTIONS(1730), 2, + ACTIONS(1766), 2, anon_sym_GT_GT, anon_sym_LT_LT, - ACTIONS(1736), 2, + ACTIONS(1772), 2, anon_sym_DASH, anon_sym_PLUS, - STATE(906), 2, + STATE(900), 2, sym_argument_list, sym_generator_expression, - ACTIONS(1701), 3, + ACTIONS(1721), 3, anon_sym_EQ, anon_sym_LT, anon_sym_GT, - ACTIONS(1742), 3, + ACTIONS(1778), 3, anon_sym_AT, anon_sym_PERCENT, anon_sym_SLASH_SLASH, - ACTIONS(1699), 15, + ACTIONS(1719), 15, + sym__newline, + anon_sym_from, anon_sym_COMMA, anon_sym_if, anon_sym_in, - anon_sym_RBRACE, anon_sym_not, anon_sym_and, anon_sym_or, @@ -63903,49 +64684,50 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - anon_sym_COLON2, - sym_type_conversion, - [48093] = 14, + anon_sym_SEMI, + [48660] = 15, ACTIONS(3), 1, sym_comment, - ACTIONS(1724), 1, + ACTIONS(1760), 1, anon_sym_DOT, - ACTIONS(1726), 1, + ACTIONS(1762), 1, anon_sym_LPAREN, - ACTIONS(1738), 1, + ACTIONS(1770), 1, + anon_sym_PIPE, + ACTIONS(1774), 1, anon_sym_LBRACK, - ACTIONS(1740), 1, + ACTIONS(1776), 1, anon_sym_STAR_STAR, - ACTIONS(1746), 1, + ACTIONS(1782), 1, anon_sym_AMP, - ACTIONS(1748), 1, + ACTIONS(1784), 1, anon_sym_CARET, - ACTIONS(1728), 2, + ACTIONS(1764), 2, anon_sym_STAR, anon_sym_SLASH, - ACTIONS(1730), 2, + ACTIONS(1766), 2, anon_sym_GT_GT, anon_sym_LT_LT, - ACTIONS(1736), 2, + ACTIONS(1772), 2, anon_sym_DASH, anon_sym_PLUS, - STATE(906), 2, + STATE(900), 2, sym_argument_list, sym_generator_expression, - ACTIONS(1693), 3, + ACTIONS(1706), 3, anon_sym_EQ, anon_sym_LT, anon_sym_GT, - ACTIONS(1742), 3, + ACTIONS(1778), 3, anon_sym_AT, anon_sym_PERCENT, anon_sym_SLASH_SLASH, - ACTIONS(1691), 16, + ACTIONS(1704), 15, + sym__newline, + anon_sym_from, anon_sym_COMMA, anon_sym_if, anon_sym_in, - anon_sym_PIPE, - anon_sym_RBRACE, anon_sym_not, anon_sym_and, anon_sym_or, @@ -63955,39 +64737,37 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - anon_sym_COLON2, - sym_type_conversion, - [48159] = 8, + anon_sym_SEMI, + [48728] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(1593), 1, + ACTIONS(1760), 1, anon_sym_DOT, - ACTIONS(1595), 1, + ACTIONS(1762), 1, anon_sym_LPAREN, - ACTIONS(1609), 1, + ACTIONS(1774), 1, anon_sym_LBRACK, - ACTIONS(1767), 1, + ACTIONS(1776), 1, anon_sym_STAR_STAR, - STATE(733), 2, + STATE(900), 2, sym_argument_list, sym_generator_expression, - ACTIONS(1697), 4, + ACTIONS(1702), 5, anon_sym_STAR, + anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1695), 26, + ACTIONS(1700), 25, + sym__newline, + anon_sym_from, anon_sym_COMMA, anon_sym_GT_GT, anon_sym_if, - anon_sym_COLON, - anon_sym_async, - anon_sym_for, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, - anon_sym_RBRACE, anon_sym_AT, anon_sym_not, anon_sym_and, @@ -64003,167 +64783,78 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [48213] = 8, + anon_sym_SEMI, + [48782] = 19, ACTIONS(3), 1, sym_comment, - ACTIONS(1724), 1, + ACTIONS(1828), 1, anon_sym_DOT, - ACTIONS(1726), 1, + ACTIONS(1830), 1, anon_sym_LPAREN, - ACTIONS(1738), 1, + ACTIONS(1838), 1, + anon_sym_PIPE, + ACTIONS(1842), 1, anon_sym_LBRACK, - ACTIONS(1740), 1, + ACTIONS(1844), 1, anon_sym_STAR_STAR, - STATE(906), 2, - sym_argument_list, - sym_generator_expression, - ACTIONS(1693), 5, - anon_sym_STAR, - anon_sym_EQ, - anon_sym_SLASH, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1691), 25, - anon_sym_COMMA, - anon_sym_GT_GT, - anon_sym_if, - anon_sym_in, - anon_sym_PIPE, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_RBRACE, - anon_sym_AT, + ACTIONS(1848), 1, anon_sym_not, - anon_sym_and, - anon_sym_or, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, + ACTIONS(1850), 1, anon_sym_AMP, + ACTIONS(1852), 1, anon_sym_CARET, - anon_sym_LT_LT, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, + ACTIONS(1856), 1, anon_sym_is, - anon_sym_COLON2, - sym_type_conversion, - [48267] = 13, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1724), 1, - anon_sym_DOT, - ACTIONS(1726), 1, - anon_sym_LPAREN, - ACTIONS(1738), 1, - anon_sym_LBRACK, - ACTIONS(1740), 1, - anon_sym_STAR_STAR, - ACTIONS(1748), 1, - anon_sym_CARET, - ACTIONS(1728), 2, + STATE(1010), 1, + aux_sym_comparison_operator_repeat1, + ACTIONS(1832), 2, anon_sym_STAR, anon_sym_SLASH, - ACTIONS(1730), 2, + ACTIONS(1834), 2, anon_sym_GT_GT, anon_sym_LT_LT, - ACTIONS(1736), 2, + ACTIONS(1840), 2, anon_sym_DASH, anon_sym_PLUS, - STATE(906), 2, - sym_argument_list, - sym_generator_expression, - ACTIONS(1693), 3, - anon_sym_EQ, + ACTIONS(1854), 2, anon_sym_LT, anon_sym_GT, - ACTIONS(1742), 3, + STATE(979), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1846), 3, anon_sym_AT, anon_sym_PERCENT, anon_sym_SLASH_SLASH, - ACTIONS(1691), 17, - anon_sym_COMMA, - anon_sym_if, + ACTIONS(1836), 6, anon_sym_in, - anon_sym_PIPE, - anon_sym_RBRACE, - anon_sym_not, - anon_sym_and, - anon_sym_or, - anon_sym_AMP, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_GT, - anon_sym_is, - anon_sym_COLON2, - sym_type_conversion, - [48331] = 12, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1724), 1, - anon_sym_DOT, - ACTIONS(1726), 1, - anon_sym_LPAREN, - ACTIONS(1738), 1, - anon_sym_LBRACK, - ACTIONS(1740), 1, - anon_sym_STAR_STAR, - ACTIONS(1728), 2, - anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(1730), 2, - anon_sym_GT_GT, - anon_sym_LT_LT, - ACTIONS(1736), 2, - anon_sym_DASH, - anon_sym_PLUS, - STATE(906), 2, - sym_argument_list, - sym_generator_expression, - ACTIONS(1693), 3, - anon_sym_EQ, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1742), 3, - anon_sym_AT, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - ACTIONS(1691), 18, + ACTIONS(1606), 7, + anon_sym_RPAREN, anon_sym_COMMA, + anon_sym_as, anon_sym_if, - anon_sym_in, - anon_sym_PIPE, - anon_sym_RBRACE, - anon_sym_not, + anon_sym_COLON, anon_sym_and, anon_sym_or, - anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - anon_sym_is, - anon_sym_COLON2, - sym_type_conversion, - [48393] = 5, + [48858] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(647), 1, + ACTIONS(654), 1, sym__string_start, - STATE(744), 2, + STATE(759), 2, sym_string, aux_sym_concatenated_string_repeat1, - ACTIONS(1178), 4, + ACTIONS(1235), 4, anon_sym_STAR, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1173), 29, + ACTIONS(1230), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -64193,20 +64884,20 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [48441] = 5, + [48906] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(649), 1, + ACTIONS(656), 1, sym__template_string_start, - STATE(745), 2, + STATE(760), 2, sym_template_string, aux_sym_concatenated_template_string_repeat1, - ACTIONS(1178), 4, + ACTIONS(1235), 4, anon_sym_STAR, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1173), 29, + ACTIONS(1230), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -64236,36 +64927,32 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [48489] = 8, + [48954] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1787), 1, - anon_sym_DOT, - ACTIONS(1789), 1, - anon_sym_LPAREN, - ACTIONS(1801), 1, - anon_sym_LBRACK, - ACTIONS(1803), 1, - anon_sym_STAR_STAR, - STATE(904), 2, - sym_argument_list, - sym_generator_expression, - ACTIONS(1693), 5, + ACTIONS(1528), 4, anon_sym_STAR, - anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1691), 25, - sym__newline, - anon_sym_from, + ACTIONS(1526), 32, + sym__string_start, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_RPAREN, anon_sym_COMMA, + anon_sym_as, anon_sym_GT_GT, anon_sym_if, + anon_sym_COLON, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, anon_sym_and, @@ -64281,142 +64968,114 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - anon_sym_SEMI, - [48543] = 15, + [48998] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1724), 1, - anon_sym_DOT, - ACTIONS(1726), 1, - anon_sym_LPAREN, - ACTIONS(1734), 1, - anon_sym_PIPE, - ACTIONS(1738), 1, - anon_sym_LBRACK, - ACTIONS(1740), 1, - anon_sym_STAR_STAR, - ACTIONS(1746), 1, - anon_sym_AMP, - ACTIONS(1748), 1, - anon_sym_CARET, - ACTIONS(1728), 2, + ACTIONS(1540), 4, anon_sym_STAR, anon_sym_SLASH, - ACTIONS(1730), 2, - anon_sym_GT_GT, - anon_sym_LT_LT, - ACTIONS(1736), 2, - anon_sym_DASH, - anon_sym_PLUS, - STATE(906), 2, - sym_argument_list, - sym_generator_expression, - ACTIONS(1711), 3, - anon_sym_EQ, anon_sym_LT, anon_sym_GT, - ACTIONS(1742), 3, - anon_sym_AT, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - ACTIONS(1709), 15, + ACTIONS(1538), 32, + sym__template_string_start, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_RPAREN, anon_sym_COMMA, + anon_sym_as, + anon_sym_GT_GT, anon_sym_if, + anon_sym_COLON, anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_RBRACK, anon_sym_RBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, anon_sym_not, anon_sym_and, anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - anon_sym_COLON2, - sym_type_conversion, - [48611] = 15, + [49042] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(1724), 1, + ACTIONS(1760), 1, anon_sym_DOT, - ACTIONS(1726), 1, + ACTIONS(1762), 1, anon_sym_LPAREN, - ACTIONS(1734), 1, - anon_sym_PIPE, - ACTIONS(1738), 1, + ACTIONS(1774), 1, anon_sym_LBRACK, - ACTIONS(1740), 1, + ACTIONS(1776), 1, anon_sym_STAR_STAR, - ACTIONS(1746), 1, - anon_sym_AMP, - ACTIONS(1748), 1, - anon_sym_CARET, - ACTIONS(1728), 2, - anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(1730), 2, - anon_sym_GT_GT, - anon_sym_LT_LT, - ACTIONS(1736), 2, - anon_sym_DASH, - anon_sym_PLUS, - STATE(906), 2, + STATE(900), 2, sym_argument_list, sym_generator_expression, - ACTIONS(1715), 3, + ACTIONS(1713), 5, + anon_sym_STAR, anon_sym_EQ, + anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1742), 3, - anon_sym_AT, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - ACTIONS(1713), 15, + ACTIONS(1711), 25, + sym__newline, + anon_sym_from, anon_sym_COMMA, + anon_sym_GT_GT, anon_sym_if, anon_sym_in, - anon_sym_RBRACE, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_AT, anon_sym_not, anon_sym_and, anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - anon_sym_COLON2, - sym_type_conversion, - [48679] = 11, + anon_sym_SEMI, + [49096] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(1787), 1, + ACTIONS(1760), 1, anon_sym_DOT, - ACTIONS(1789), 1, + ACTIONS(1762), 1, anon_sym_LPAREN, - ACTIONS(1801), 1, + ACTIONS(1774), 1, anon_sym_LBRACK, - ACTIONS(1803), 1, + ACTIONS(1776), 1, anon_sym_STAR_STAR, - ACTIONS(1791), 2, - anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(1799), 2, - anon_sym_DASH, - anon_sym_PLUS, - STATE(904), 2, + STATE(900), 2, sym_argument_list, sym_generator_expression, - ACTIONS(1693), 3, + ACTIONS(1713), 5, + anon_sym_STAR, anon_sym_EQ, + anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1805), 3, - anon_sym_AT, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - ACTIONS(1691), 20, + ACTIONS(1711), 25, sym__newline, anon_sym_from, anon_sym_COMMA, @@ -64424,9 +65083,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_if, anon_sym_in, anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_AT, anon_sym_not, anon_sym_and, anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, anon_sym_AMP, anon_sym_CARET, anon_sym_LT_LT, @@ -64437,146 +65101,179 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LT_GT, anon_sym_is, anon_sym_SEMI, - [48739] = 15, + [49150] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(1787), 1, + ACTIONS(1730), 1, anon_sym_DOT, - ACTIONS(1789), 1, + ACTIONS(1732), 1, anon_sym_LPAREN, - ACTIONS(1797), 1, - anon_sym_PIPE, - ACTIONS(1801), 1, + ACTIONS(1744), 1, anon_sym_LBRACK, - ACTIONS(1803), 1, + ACTIONS(1746), 1, anon_sym_STAR_STAR, - ACTIONS(1809), 1, - anon_sym_AMP, - ACTIONS(1811), 1, - anon_sym_CARET, - ACTIONS(1791), 2, - anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(1793), 2, - anon_sym_GT_GT, - anon_sym_LT_LT, - ACTIONS(1799), 2, - anon_sym_DASH, - anon_sym_PLUS, - STATE(904), 2, + STATE(903), 2, sym_argument_list, sym_generator_expression, - ACTIONS(1701), 3, + ACTIONS(1702), 5, + anon_sym_STAR, anon_sym_EQ, + anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1805), 3, - anon_sym_AT, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - ACTIONS(1699), 15, - sym__newline, - anon_sym_from, + ACTIONS(1700), 25, anon_sym_COMMA, + anon_sym_GT_GT, anon_sym_if, anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_RBRACE, + anon_sym_AT, anon_sym_not, anon_sym_and, anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - anon_sym_SEMI, - [48807] = 14, + anon_sym_COLON2, + sym_type_conversion, + [49204] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(1787), 1, + ACTIONS(1730), 1, anon_sym_DOT, - ACTIONS(1789), 1, + ACTIONS(1732), 1, anon_sym_LPAREN, - ACTIONS(1801), 1, + ACTIONS(1744), 1, anon_sym_LBRACK, - ACTIONS(1803), 1, + ACTIONS(1746), 1, anon_sym_STAR_STAR, - ACTIONS(1809), 1, - anon_sym_AMP, - ACTIONS(1811), 1, - anon_sym_CARET, - ACTIONS(1791), 2, + STATE(903), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1717), 5, anon_sym_STAR, + anon_sym_EQ, anon_sym_SLASH, - ACTIONS(1793), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1715), 25, + anon_sym_COMMA, anon_sym_GT_GT, - anon_sym_LT_LT, - ACTIONS(1799), 2, + anon_sym_if, + anon_sym_in, + anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, - STATE(904), 2, + anon_sym_RBRACE, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + anon_sym_COLON2, + sym_type_conversion, + [49258] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1730), 1, + anon_sym_DOT, + ACTIONS(1732), 1, + anon_sym_LPAREN, + ACTIONS(1744), 1, + anon_sym_LBRACK, + ACTIONS(1746), 1, + anon_sym_STAR_STAR, + STATE(903), 2, sym_argument_list, sym_generator_expression, - ACTIONS(1693), 3, + ACTIONS(1713), 5, + anon_sym_STAR, anon_sym_EQ, + anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1805), 3, - anon_sym_AT, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - ACTIONS(1691), 16, - sym__newline, - anon_sym_from, + ACTIONS(1711), 25, anon_sym_COMMA, + anon_sym_GT_GT, anon_sym_if, anon_sym_in, anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_RBRACE, + anon_sym_AT, anon_sym_not, anon_sym_and, anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - anon_sym_SEMI, - [48873] = 10, + anon_sym_COLON2, + sym_type_conversion, + [49312] = 11, ACTIONS(3), 1, sym_comment, - ACTIONS(1787), 1, + ACTIONS(1730), 1, anon_sym_DOT, - ACTIONS(1789), 1, + ACTIONS(1732), 1, anon_sym_LPAREN, - ACTIONS(1801), 1, + ACTIONS(1744), 1, anon_sym_LBRACK, - ACTIONS(1803), 1, + ACTIONS(1746), 1, anon_sym_STAR_STAR, - ACTIONS(1791), 2, + ACTIONS(1734), 2, anon_sym_STAR, anon_sym_SLASH, - STATE(904), 2, + ACTIONS(1742), 2, + anon_sym_DASH, + anon_sym_PLUS, + STATE(903), 2, sym_argument_list, sym_generator_expression, - ACTIONS(1693), 3, + ACTIONS(1713), 3, anon_sym_EQ, anon_sym_LT, anon_sym_GT, - ACTIONS(1805), 3, + ACTIONS(1748), 3, anon_sym_AT, anon_sym_PERCENT, anon_sym_SLASH_SLASH, - ACTIONS(1691), 22, - sym__newline, - anon_sym_from, + ACTIONS(1711), 20, anon_sym_COMMA, anon_sym_GT_GT, anon_sym_if, anon_sym_in, anon_sym_PIPE, - anon_sym_DASH, - anon_sym_PLUS, + anon_sym_RBRACE, anon_sym_not, anon_sym_and, anon_sym_or, @@ -64589,27 +65286,28 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - anon_sym_SEMI, - [48931] = 8, + anon_sym_COLON2, + sym_type_conversion, + [49372] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(1593), 1, + ACTIONS(1602), 1, anon_sym_DOT, - ACTIONS(1595), 1, + ACTIONS(1604), 1, anon_sym_LPAREN, - ACTIONS(1609), 1, + ACTIONS(1618), 1, anon_sym_LBRACK, - ACTIONS(1767), 1, + ACTIONS(1812), 1, anon_sym_STAR_STAR, - STATE(733), 2, + STATE(734), 2, sym_argument_list, sym_generator_expression, - ACTIONS(1719), 4, + ACTIONS(1713), 4, anon_sym_STAR, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1717), 26, + ACTIONS(1711), 26, anon_sym_COMMA, anon_sym_GT_GT, anon_sym_if, @@ -64636,221 +65334,203 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [48985] = 13, + [49426] = 15, ACTIONS(3), 1, sym_comment, - ACTIONS(1787), 1, + ACTIONS(1730), 1, anon_sym_DOT, - ACTIONS(1789), 1, + ACTIONS(1732), 1, anon_sym_LPAREN, - ACTIONS(1801), 1, + ACTIONS(1740), 1, + anon_sym_PIPE, + ACTIONS(1744), 1, anon_sym_LBRACK, - ACTIONS(1803), 1, + ACTIONS(1746), 1, anon_sym_STAR_STAR, - ACTIONS(1811), 1, + ACTIONS(1752), 1, + anon_sym_AMP, + ACTIONS(1754), 1, anon_sym_CARET, - ACTIONS(1791), 2, + ACTIONS(1734), 2, anon_sym_STAR, anon_sym_SLASH, - ACTIONS(1793), 2, + ACTIONS(1736), 2, anon_sym_GT_GT, anon_sym_LT_LT, - ACTIONS(1799), 2, + ACTIONS(1742), 2, anon_sym_DASH, anon_sym_PLUS, - STATE(904), 2, + STATE(903), 2, sym_argument_list, sym_generator_expression, - ACTIONS(1693), 3, + ACTIONS(1721), 3, anon_sym_EQ, anon_sym_LT, anon_sym_GT, - ACTIONS(1805), 3, + ACTIONS(1748), 3, anon_sym_AT, anon_sym_PERCENT, anon_sym_SLASH_SLASH, - ACTIONS(1691), 17, - sym__newline, - anon_sym_from, + ACTIONS(1719), 15, anon_sym_COMMA, anon_sym_if, anon_sym_in, - anon_sym_PIPE, + anon_sym_RBRACE, anon_sym_not, anon_sym_and, anon_sym_or, - anon_sym_AMP, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - anon_sym_SEMI, - [49049] = 12, + anon_sym_COLON2, + sym_type_conversion, + [49494] = 15, ACTIONS(3), 1, sym_comment, - ACTIONS(1787), 1, + ACTIONS(1602), 1, anon_sym_DOT, - ACTIONS(1789), 1, + ACTIONS(1604), 1, anon_sym_LPAREN, - ACTIONS(1801), 1, + ACTIONS(1618), 1, anon_sym_LBRACK, - ACTIONS(1803), 1, + ACTIONS(1808), 1, + anon_sym_PIPE, + ACTIONS(1812), 1, anon_sym_STAR_STAR, - ACTIONS(1791), 2, + ACTIONS(1818), 1, + anon_sym_AMP, + ACTIONS(1820), 1, + anon_sym_CARET, + ACTIONS(1725), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1802), 2, anon_sym_STAR, anon_sym_SLASH, - ACTIONS(1793), 2, + ACTIONS(1804), 2, anon_sym_GT_GT, anon_sym_LT_LT, - ACTIONS(1799), 2, + ACTIONS(1810), 2, anon_sym_DASH, anon_sym_PLUS, - STATE(904), 2, + STATE(734), 2, sym_argument_list, sym_generator_expression, - ACTIONS(1693), 3, - anon_sym_EQ, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1805), 3, + ACTIONS(1814), 3, anon_sym_AT, anon_sym_PERCENT, anon_sym_SLASH_SLASH, - ACTIONS(1691), 18, - sym__newline, - anon_sym_from, + ACTIONS(1723), 16, anon_sym_COMMA, anon_sym_if, + anon_sym_COLON, + anon_sym_async, + anon_sym_for, anon_sym_in, - anon_sym_PIPE, + anon_sym_RBRACE, anon_sym_not, anon_sym_and, anon_sym_or, - anon_sym_AMP, - anon_sym_CARET, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - anon_sym_SEMI, - [49111] = 3, + [49562] = 14, ACTIONS(3), 1, sym_comment, - ACTIONS(1519), 4, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1517), 32, - sym__string_start, + ACTIONS(1602), 1, anon_sym_DOT, + ACTIONS(1604), 1, anon_sym_LPAREN, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_as, - anon_sym_GT_GT, - anon_sym_if, - anon_sym_COLON, - anon_sym_in, - anon_sym_PIPE, - anon_sym_DASH, - anon_sym_PLUS, + ACTIONS(1618), 1, anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_RBRACE, + ACTIONS(1812), 1, anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_not, - anon_sym_and, - anon_sym_or, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, + ACTIONS(1818), 1, anon_sym_AMP, + ACTIONS(1820), 1, anon_sym_CARET, - anon_sym_LT_LT, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - anon_sym_is, - [49155] = 3, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1523), 4, - anon_sym_STAR, - anon_sym_SLASH, + ACTIONS(1713), 2, anon_sym_LT, anon_sym_GT, - ACTIONS(1521), 32, - sym__template_string_start, - anon_sym_DOT, - anon_sym_LPAREN, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_as, + ACTIONS(1802), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(1804), 2, anon_sym_GT_GT, + anon_sym_LT_LT, + ACTIONS(1810), 2, + anon_sym_DASH, + anon_sym_PLUS, + STATE(734), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1814), 3, + anon_sym_AT, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + ACTIONS(1711), 17, + anon_sym_COMMA, anon_sym_if, anon_sym_COLON, + anon_sym_async, + anon_sym_for, anon_sym_in, anon_sym_PIPE, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_RBRACK, anon_sym_RBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, anon_sym_not, anon_sym_and, anon_sym_or, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [49199] = 3, + [49628] = 10, ACTIONS(3), 1, sym_comment, - ACTIONS(1527), 4, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1525), 32, - sym__string_start, + ACTIONS(1602), 1, anon_sym_DOT, + ACTIONS(1604), 1, anon_sym_LPAREN, - anon_sym_RPAREN, + ACTIONS(1618), 1, + anon_sym_LBRACK, + ACTIONS(1812), 1, + anon_sym_STAR_STAR, + ACTIONS(1713), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1802), 2, + anon_sym_STAR, + anon_sym_SLASH, + STATE(734), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1814), 3, + anon_sym_AT, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + ACTIONS(1711), 23, anon_sym_COMMA, - anon_sym_as, anon_sym_GT_GT, anon_sym_if, anon_sym_COLON, + anon_sym_async, + anon_sym_for, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_RBRACK, anon_sym_RBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, anon_sym_not, anon_sym_and, anon_sym_or, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, anon_sym_AMP, anon_sym_CARET, anon_sym_LT_LT, @@ -64860,32 +65540,37 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [49243] = 3, + [49686] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(1531), 4, + ACTIONS(1602), 1, + anon_sym_DOT, + ACTIONS(1604), 1, + anon_sym_LPAREN, + ACTIONS(1618), 1, + anon_sym_LBRACK, + ACTIONS(1812), 1, + anon_sym_STAR_STAR, + STATE(734), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1713), 4, anon_sym_STAR, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1529), 32, - sym__template_string_start, - anon_sym_DOT, - anon_sym_LPAREN, - anon_sym_RPAREN, + ACTIONS(1711), 26, anon_sym_COMMA, - anon_sym_as, anon_sym_GT_GT, anon_sym_if, anon_sym_COLON, + anon_sym_async, + anon_sym_for, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_RBRACK, anon_sym_RBRACE, - anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, anon_sym_and, @@ -64901,230 +65586,249 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [49287] = 8, + [49740] = 15, ACTIONS(3), 1, sym_comment, - ACTIONS(1787), 1, + ACTIONS(1730), 1, anon_sym_DOT, - ACTIONS(1789), 1, + ACTIONS(1732), 1, anon_sym_LPAREN, - ACTIONS(1801), 1, + ACTIONS(1740), 1, + anon_sym_PIPE, + ACTIONS(1744), 1, anon_sym_LBRACK, - ACTIONS(1803), 1, + ACTIONS(1746), 1, anon_sym_STAR_STAR, - STATE(904), 2, + ACTIONS(1752), 1, + anon_sym_AMP, + ACTIONS(1754), 1, + anon_sym_CARET, + ACTIONS(1734), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(1736), 2, + anon_sym_GT_GT, + anon_sym_LT_LT, + ACTIONS(1742), 2, + anon_sym_DASH, + anon_sym_PLUS, + STATE(903), 2, sym_argument_list, sym_generator_expression, - ACTIONS(1697), 5, - anon_sym_STAR, + ACTIONS(1725), 3, anon_sym_EQ, - anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1695), 25, - sym__newline, - anon_sym_from, + ACTIONS(1748), 3, + anon_sym_AT, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + ACTIONS(1723), 15, anon_sym_COMMA, - anon_sym_GT_GT, anon_sym_if, anon_sym_in, - anon_sym_PIPE, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_AT, + anon_sym_RBRACE, anon_sym_not, anon_sym_and, anon_sym_or, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - anon_sym_SEMI, - [49341] = 8, + anon_sym_COLON2, + sym_type_conversion, + [49808] = 13, ACTIONS(3), 1, sym_comment, - ACTIONS(1787), 1, + ACTIONS(1602), 1, anon_sym_DOT, - ACTIONS(1789), 1, + ACTIONS(1604), 1, anon_sym_LPAREN, - ACTIONS(1801), 1, + ACTIONS(1618), 1, anon_sym_LBRACK, - ACTIONS(1803), 1, + ACTIONS(1812), 1, anon_sym_STAR_STAR, - STATE(904), 2, - sym_argument_list, - sym_generator_expression, - ACTIONS(1719), 5, - anon_sym_STAR, - anon_sym_EQ, - anon_sym_SLASH, + ACTIONS(1820), 1, + anon_sym_CARET, + ACTIONS(1713), 2, anon_sym_LT, anon_sym_GT, - ACTIONS(1717), 25, - sym__newline, - anon_sym_from, - anon_sym_COMMA, + ACTIONS(1802), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(1804), 2, anon_sym_GT_GT, - anon_sym_if, - anon_sym_in, - anon_sym_PIPE, + anon_sym_LT_LT, + ACTIONS(1810), 2, anon_sym_DASH, anon_sym_PLUS, + STATE(734), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1814), 3, anon_sym_AT, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + ACTIONS(1711), 18, + anon_sym_COMMA, + anon_sym_if, + anon_sym_COLON, + anon_sym_async, + anon_sym_for, + anon_sym_in, + anon_sym_PIPE, + anon_sym_RBRACE, anon_sym_not, anon_sym_and, anon_sym_or, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - anon_sym_SEMI, - [49395] = 8, + [49872] = 12, ACTIONS(3), 1, sym_comment, - ACTIONS(1593), 1, + ACTIONS(1602), 1, anon_sym_DOT, - ACTIONS(1595), 1, + ACTIONS(1604), 1, anon_sym_LPAREN, - ACTIONS(1609), 1, + ACTIONS(1618), 1, anon_sym_LBRACK, - ACTIONS(1767), 1, + ACTIONS(1812), 1, anon_sym_STAR_STAR, - STATE(733), 2, - sym_argument_list, - sym_generator_expression, - ACTIONS(1693), 4, - anon_sym_STAR, - anon_sym_SLASH, + ACTIONS(1713), 2, anon_sym_LT, anon_sym_GT, - ACTIONS(1691), 26, - anon_sym_COMMA, + ACTIONS(1802), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(1804), 2, anon_sym_GT_GT, + anon_sym_LT_LT, + ACTIONS(1810), 2, + anon_sym_DASH, + anon_sym_PLUS, + STATE(734), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1814), 3, + anon_sym_AT, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + ACTIONS(1711), 19, + anon_sym_COMMA, anon_sym_if, anon_sym_COLON, anon_sym_async, anon_sym_for, anon_sym_in, anon_sym_PIPE, - anon_sym_DASH, - anon_sym_PLUS, anon_sym_RBRACE, - anon_sym_AT, anon_sym_not, anon_sym_and, anon_sym_or, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, anon_sym_AMP, anon_sym_CARET, - anon_sym_LT_LT, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [49449] = 11, + [49934] = 14, ACTIONS(3), 1, sym_comment, - ACTIONS(1593), 1, + ACTIONS(1730), 1, anon_sym_DOT, - ACTIONS(1595), 1, + ACTIONS(1732), 1, anon_sym_LPAREN, - ACTIONS(1609), 1, + ACTIONS(1744), 1, anon_sym_LBRACK, - ACTIONS(1767), 1, + ACTIONS(1746), 1, anon_sym_STAR_STAR, - ACTIONS(1693), 2, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1757), 2, + ACTIONS(1752), 1, + anon_sym_AMP, + ACTIONS(1754), 1, + anon_sym_CARET, + ACTIONS(1734), 2, anon_sym_STAR, anon_sym_SLASH, - ACTIONS(1765), 2, + ACTIONS(1736), 2, + anon_sym_GT_GT, + anon_sym_LT_LT, + ACTIONS(1742), 2, anon_sym_DASH, anon_sym_PLUS, - STATE(733), 2, + STATE(903), 2, sym_argument_list, sym_generator_expression, - ACTIONS(1769), 3, + ACTIONS(1713), 3, + anon_sym_EQ, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1748), 3, anon_sym_AT, anon_sym_PERCENT, anon_sym_SLASH_SLASH, - ACTIONS(1691), 21, + ACTIONS(1711), 16, anon_sym_COMMA, - anon_sym_GT_GT, anon_sym_if, - anon_sym_COLON, - anon_sym_async, - anon_sym_for, anon_sym_in, anon_sym_PIPE, anon_sym_RBRACE, anon_sym_not, anon_sym_and, anon_sym_or, - anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [49509] = 15, + anon_sym_COLON2, + sym_type_conversion, + [50000] = 15, ACTIONS(3), 1, sym_comment, - ACTIONS(1593), 1, + ACTIONS(1602), 1, anon_sym_DOT, - ACTIONS(1595), 1, + ACTIONS(1604), 1, anon_sym_LPAREN, - ACTIONS(1609), 1, + ACTIONS(1618), 1, anon_sym_LBRACK, - ACTIONS(1763), 1, + ACTIONS(1808), 1, anon_sym_PIPE, - ACTIONS(1767), 1, + ACTIONS(1812), 1, anon_sym_STAR_STAR, - ACTIONS(1773), 1, + ACTIONS(1818), 1, anon_sym_AMP, - ACTIONS(1775), 1, + ACTIONS(1820), 1, anon_sym_CARET, - ACTIONS(1701), 2, + ACTIONS(1721), 2, anon_sym_LT, anon_sym_GT, - ACTIONS(1757), 2, + ACTIONS(1802), 2, anon_sym_STAR, anon_sym_SLASH, - ACTIONS(1759), 2, + ACTIONS(1804), 2, anon_sym_GT_GT, anon_sym_LT_LT, - ACTIONS(1765), 2, + ACTIONS(1810), 2, anon_sym_DASH, anon_sym_PLUS, - STATE(733), 2, + STATE(734), 2, sym_argument_list, sym_generator_expression, - ACTIONS(1769), 3, + ACTIONS(1814), 3, anon_sym_AT, anon_sym_PERCENT, anon_sym_SLASH_SLASH, - ACTIONS(1699), 16, + ACTIONS(1719), 16, anon_sym_COMMA, anon_sym_if, anon_sym_COLON, @@ -65141,48 +65845,49 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [49577] = 14, + [50068] = 15, ACTIONS(3), 1, sym_comment, - ACTIONS(1593), 1, + ACTIONS(1602), 1, anon_sym_DOT, - ACTIONS(1595), 1, + ACTIONS(1604), 1, anon_sym_LPAREN, - ACTIONS(1609), 1, + ACTIONS(1618), 1, anon_sym_LBRACK, - ACTIONS(1767), 1, + ACTIONS(1808), 1, + anon_sym_PIPE, + ACTIONS(1812), 1, anon_sym_STAR_STAR, - ACTIONS(1773), 1, + ACTIONS(1818), 1, anon_sym_AMP, - ACTIONS(1775), 1, + ACTIONS(1820), 1, anon_sym_CARET, - ACTIONS(1693), 2, + ACTIONS(1706), 2, anon_sym_LT, anon_sym_GT, - ACTIONS(1757), 2, + ACTIONS(1802), 2, anon_sym_STAR, anon_sym_SLASH, - ACTIONS(1759), 2, + ACTIONS(1804), 2, anon_sym_GT_GT, anon_sym_LT_LT, - ACTIONS(1765), 2, + ACTIONS(1810), 2, anon_sym_DASH, anon_sym_PLUS, - STATE(733), 2, + STATE(734), 2, sym_argument_list, sym_generator_expression, - ACTIONS(1769), 3, + ACTIONS(1814), 3, anon_sym_AT, anon_sym_PERCENT, anon_sym_SLASH_SLASH, - ACTIONS(1691), 17, + ACTIONS(1704), 16, anon_sym_COMMA, anon_sym_if, anon_sym_COLON, anon_sym_async, anon_sym_for, anon_sym_in, - anon_sym_PIPE, anon_sym_RBRACE, anon_sym_not, anon_sym_and, @@ -65193,37 +65898,35 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [49643] = 10, + [50136] = 10, ACTIONS(3), 1, sym_comment, - ACTIONS(1593), 1, + ACTIONS(1730), 1, anon_sym_DOT, - ACTIONS(1595), 1, + ACTIONS(1732), 1, anon_sym_LPAREN, - ACTIONS(1609), 1, + ACTIONS(1744), 1, anon_sym_LBRACK, - ACTIONS(1767), 1, + ACTIONS(1746), 1, anon_sym_STAR_STAR, - ACTIONS(1693), 2, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1757), 2, + ACTIONS(1734), 2, anon_sym_STAR, anon_sym_SLASH, - STATE(733), 2, + STATE(903), 2, sym_argument_list, sym_generator_expression, - ACTIONS(1769), 3, + ACTIONS(1713), 3, + anon_sym_EQ, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1748), 3, anon_sym_AT, anon_sym_PERCENT, anon_sym_SLASH_SLASH, - ACTIONS(1691), 23, + ACTIONS(1711), 22, anon_sym_COMMA, anon_sym_GT_GT, anon_sym_if, - anon_sym_COLON, - anon_sym_async, - anon_sym_for, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, @@ -65241,32 +65944,32 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [49701] = 8, + anon_sym_COLON2, + sym_type_conversion, + [50194] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(1593), 1, + ACTIONS(1730), 1, anon_sym_DOT, - ACTIONS(1595), 1, + ACTIONS(1732), 1, anon_sym_LPAREN, - ACTIONS(1609), 1, + ACTIONS(1744), 1, anon_sym_LBRACK, - ACTIONS(1767), 1, + ACTIONS(1746), 1, anon_sym_STAR_STAR, - STATE(733), 2, + STATE(903), 2, sym_argument_list, sym_generator_expression, - ACTIONS(1693), 4, + ACTIONS(1713), 5, anon_sym_STAR, + anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1691), 26, + ACTIONS(1711), 25, anon_sym_COMMA, anon_sym_GT_GT, anon_sym_if, - anon_sym_COLON, - anon_sym_async, - anon_sym_for, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, @@ -65287,313 +65990,303 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [49755] = 13, + anon_sym_COLON2, + sym_type_conversion, + [50248] = 11, ACTIONS(3), 1, sym_comment, - ACTIONS(1593), 1, + ACTIONS(1760), 1, anon_sym_DOT, - ACTIONS(1595), 1, + ACTIONS(1762), 1, anon_sym_LPAREN, - ACTIONS(1609), 1, + ACTIONS(1774), 1, anon_sym_LBRACK, - ACTIONS(1767), 1, + ACTIONS(1776), 1, anon_sym_STAR_STAR, - ACTIONS(1775), 1, - anon_sym_CARET, - ACTIONS(1693), 2, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1757), 2, + ACTIONS(1764), 2, anon_sym_STAR, anon_sym_SLASH, - ACTIONS(1759), 2, - anon_sym_GT_GT, - anon_sym_LT_LT, - ACTIONS(1765), 2, + ACTIONS(1772), 2, anon_sym_DASH, anon_sym_PLUS, - STATE(733), 2, + STATE(900), 2, sym_argument_list, sym_generator_expression, - ACTIONS(1769), 3, + ACTIONS(1713), 3, + anon_sym_EQ, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1778), 3, anon_sym_AT, anon_sym_PERCENT, anon_sym_SLASH_SLASH, - ACTIONS(1691), 18, + ACTIONS(1711), 20, + sym__newline, + anon_sym_from, anon_sym_COMMA, + anon_sym_GT_GT, anon_sym_if, - anon_sym_COLON, - anon_sym_async, - anon_sym_for, anon_sym_in, anon_sym_PIPE, - anon_sym_RBRACE, anon_sym_not, anon_sym_and, anon_sym_or, anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [49819] = 12, + anon_sym_SEMI, + [50308] = 15, ACTIONS(3), 1, sym_comment, - ACTIONS(1593), 1, + ACTIONS(1760), 1, anon_sym_DOT, - ACTIONS(1595), 1, + ACTIONS(1762), 1, anon_sym_LPAREN, - ACTIONS(1609), 1, + ACTIONS(1770), 1, + anon_sym_PIPE, + ACTIONS(1774), 1, anon_sym_LBRACK, - ACTIONS(1767), 1, + ACTIONS(1776), 1, anon_sym_STAR_STAR, - ACTIONS(1693), 2, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1757), 2, + ACTIONS(1782), 1, + anon_sym_AMP, + ACTIONS(1784), 1, + anon_sym_CARET, + ACTIONS(1764), 2, anon_sym_STAR, anon_sym_SLASH, - ACTIONS(1759), 2, + ACTIONS(1766), 2, anon_sym_GT_GT, anon_sym_LT_LT, - ACTIONS(1765), 2, + ACTIONS(1772), 2, anon_sym_DASH, anon_sym_PLUS, - STATE(733), 2, + STATE(900), 2, sym_argument_list, sym_generator_expression, - ACTIONS(1769), 3, - anon_sym_AT, + ACTIONS(1725), 3, + anon_sym_EQ, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1778), 3, + anon_sym_AT, anon_sym_PERCENT, anon_sym_SLASH_SLASH, - ACTIONS(1691), 19, + ACTIONS(1723), 15, + sym__newline, + anon_sym_from, anon_sym_COMMA, anon_sym_if, - anon_sym_COLON, - anon_sym_async, - anon_sym_for, anon_sym_in, - anon_sym_PIPE, - anon_sym_RBRACE, anon_sym_not, anon_sym_and, anon_sym_or, - anon_sym_AMP, - anon_sym_CARET, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [49881] = 15, + anon_sym_SEMI, + [50376] = 13, ACTIONS(3), 1, sym_comment, - ACTIONS(1593), 1, + ACTIONS(1730), 1, anon_sym_DOT, - ACTIONS(1595), 1, + ACTIONS(1732), 1, anon_sym_LPAREN, - ACTIONS(1609), 1, + ACTIONS(1744), 1, anon_sym_LBRACK, - ACTIONS(1763), 1, - anon_sym_PIPE, - ACTIONS(1767), 1, + ACTIONS(1746), 1, anon_sym_STAR_STAR, - ACTIONS(1773), 1, - anon_sym_AMP, - ACTIONS(1775), 1, + ACTIONS(1754), 1, anon_sym_CARET, - ACTIONS(1711), 2, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1757), 2, + ACTIONS(1734), 2, anon_sym_STAR, anon_sym_SLASH, - ACTIONS(1759), 2, + ACTIONS(1736), 2, anon_sym_GT_GT, anon_sym_LT_LT, - ACTIONS(1765), 2, + ACTIONS(1742), 2, anon_sym_DASH, anon_sym_PLUS, - STATE(733), 2, + STATE(903), 2, sym_argument_list, sym_generator_expression, - ACTIONS(1769), 3, + ACTIONS(1713), 3, + anon_sym_EQ, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1748), 3, anon_sym_AT, anon_sym_PERCENT, anon_sym_SLASH_SLASH, - ACTIONS(1709), 16, + ACTIONS(1711), 17, anon_sym_COMMA, anon_sym_if, - anon_sym_COLON, - anon_sym_async, - anon_sym_for, anon_sym_in, + anon_sym_PIPE, anon_sym_RBRACE, anon_sym_not, anon_sym_and, anon_sym_or, + anon_sym_AMP, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [49949] = 15, + anon_sym_COLON2, + sym_type_conversion, + [50440] = 12, ACTIONS(3), 1, sym_comment, - ACTIONS(1593), 1, + ACTIONS(1730), 1, anon_sym_DOT, - ACTIONS(1595), 1, + ACTIONS(1732), 1, anon_sym_LPAREN, - ACTIONS(1609), 1, + ACTIONS(1744), 1, anon_sym_LBRACK, - ACTIONS(1763), 1, - anon_sym_PIPE, - ACTIONS(1767), 1, + ACTIONS(1746), 1, anon_sym_STAR_STAR, - ACTIONS(1773), 1, - anon_sym_AMP, - ACTIONS(1775), 1, - anon_sym_CARET, - ACTIONS(1715), 2, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1757), 2, + ACTIONS(1734), 2, anon_sym_STAR, anon_sym_SLASH, - ACTIONS(1759), 2, + ACTIONS(1736), 2, anon_sym_GT_GT, anon_sym_LT_LT, - ACTIONS(1765), 2, + ACTIONS(1742), 2, anon_sym_DASH, anon_sym_PLUS, - STATE(733), 2, + STATE(903), 2, sym_argument_list, sym_generator_expression, - ACTIONS(1769), 3, + ACTIONS(1713), 3, + anon_sym_EQ, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1748), 3, anon_sym_AT, anon_sym_PERCENT, anon_sym_SLASH_SLASH, - ACTIONS(1713), 16, + ACTIONS(1711), 18, anon_sym_COMMA, anon_sym_if, - anon_sym_COLON, - anon_sym_async, - anon_sym_for, anon_sym_in, + anon_sym_PIPE, anon_sym_RBRACE, anon_sym_not, anon_sym_and, anon_sym_or, + anon_sym_AMP, + anon_sym_CARET, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [50017] = 19, + anon_sym_COLON2, + sym_type_conversion, + [50502] = 12, ACTIONS(3), 1, sym_comment, - ACTIONS(1819), 1, + ACTIONS(1760), 1, anon_sym_DOT, - ACTIONS(1821), 1, + ACTIONS(1762), 1, anon_sym_LPAREN, - ACTIONS(1829), 1, - anon_sym_PIPE, - ACTIONS(1833), 1, + ACTIONS(1774), 1, anon_sym_LBRACK, - ACTIONS(1835), 1, + ACTIONS(1776), 1, anon_sym_STAR_STAR, - ACTIONS(1839), 1, - anon_sym_not, - ACTIONS(1841), 1, - anon_sym_AMP, - ACTIONS(1843), 1, - anon_sym_CARET, - ACTIONS(1847), 1, - anon_sym_is, - STATE(1009), 1, - aux_sym_comparison_operator_repeat1, - ACTIONS(1823), 2, + ACTIONS(1764), 2, anon_sym_STAR, anon_sym_SLASH, - ACTIONS(1825), 2, + ACTIONS(1766), 2, anon_sym_GT_GT, anon_sym_LT_LT, - ACTIONS(1831), 2, + ACTIONS(1772), 2, anon_sym_DASH, anon_sym_PLUS, - ACTIONS(1845), 2, - anon_sym_LT, - anon_sym_GT, - STATE(977), 2, + STATE(900), 2, sym_argument_list, sym_generator_expression, - ACTIONS(1837), 3, + ACTIONS(1713), 3, + anon_sym_EQ, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1778), 3, anon_sym_AT, anon_sym_PERCENT, anon_sym_SLASH_SLASH, - ACTIONS(1827), 6, + ACTIONS(1711), 18, + sym__newline, + anon_sym_from, + anon_sym_COMMA, + anon_sym_if, anon_sym_in, + anon_sym_PIPE, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_AMP, + anon_sym_CARET, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_GT, - ACTIONS(1597), 7, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_as, - anon_sym_if, - anon_sym_COLON, - anon_sym_and, - anon_sym_or, - [50093] = 15, + anon_sym_is, + anon_sym_SEMI, + [50564] = 15, ACTIONS(3), 1, sym_comment, - ACTIONS(1787), 1, + ACTIONS(1730), 1, anon_sym_DOT, - ACTIONS(1789), 1, + ACTIONS(1732), 1, anon_sym_LPAREN, - ACTIONS(1797), 1, + ACTIONS(1740), 1, anon_sym_PIPE, - ACTIONS(1801), 1, + ACTIONS(1744), 1, anon_sym_LBRACK, - ACTIONS(1803), 1, + ACTIONS(1746), 1, anon_sym_STAR_STAR, - ACTIONS(1809), 1, + ACTIONS(1752), 1, anon_sym_AMP, - ACTIONS(1811), 1, + ACTIONS(1754), 1, anon_sym_CARET, - ACTIONS(1791), 2, + ACTIONS(1734), 2, anon_sym_STAR, anon_sym_SLASH, - ACTIONS(1793), 2, + ACTIONS(1736), 2, anon_sym_GT_GT, anon_sym_LT_LT, - ACTIONS(1799), 2, + ACTIONS(1742), 2, anon_sym_DASH, anon_sym_PLUS, - STATE(904), 2, + STATE(903), 2, sym_argument_list, sym_generator_expression, - ACTIONS(1711), 3, + ACTIONS(1706), 3, anon_sym_EQ, anon_sym_LT, anon_sym_GT, - ACTIONS(1805), 3, + ACTIONS(1748), 3, anon_sym_AT, anon_sym_PERCENT, anon_sym_SLASH_SLASH, - ACTIONS(1709), 15, - sym__newline, - anon_sym_from, + ACTIONS(1704), 15, anon_sym_COMMA, anon_sym_if, anon_sym_in, + anon_sym_RBRACE, anon_sym_not, anon_sym_and, anon_sym_or, @@ -65603,50 +66296,50 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - anon_sym_SEMI, - [50161] = 15, + anon_sym_COLON2, + sym_type_conversion, + [50632] = 14, ACTIONS(3), 1, sym_comment, - ACTIONS(1787), 1, + ACTIONS(1760), 1, anon_sym_DOT, - ACTIONS(1789), 1, + ACTIONS(1762), 1, anon_sym_LPAREN, - ACTIONS(1797), 1, - anon_sym_PIPE, - ACTIONS(1801), 1, + ACTIONS(1774), 1, anon_sym_LBRACK, - ACTIONS(1803), 1, + ACTIONS(1776), 1, anon_sym_STAR_STAR, - ACTIONS(1809), 1, + ACTIONS(1782), 1, anon_sym_AMP, - ACTIONS(1811), 1, + ACTIONS(1784), 1, anon_sym_CARET, - ACTIONS(1791), 2, + ACTIONS(1764), 2, anon_sym_STAR, anon_sym_SLASH, - ACTIONS(1793), 2, + ACTIONS(1766), 2, anon_sym_GT_GT, anon_sym_LT_LT, - ACTIONS(1799), 2, + ACTIONS(1772), 2, anon_sym_DASH, anon_sym_PLUS, - STATE(904), 2, + STATE(900), 2, sym_argument_list, sym_generator_expression, - ACTIONS(1715), 3, + ACTIONS(1713), 3, anon_sym_EQ, anon_sym_LT, anon_sym_GT, - ACTIONS(1805), 3, + ACTIONS(1778), 3, anon_sym_AT, anon_sym_PERCENT, anon_sym_SLASH_SLASH, - ACTIONS(1713), 15, + ACTIONS(1711), 16, sym__newline, anon_sym_from, anon_sym_COMMA, anon_sym_if, anon_sym_in, + anon_sym_PIPE, anon_sym_not, anon_sym_and, anon_sym_or, @@ -65657,27 +66350,32 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LT_GT, anon_sym_is, anon_sym_SEMI, - [50229] = 8, + [50698] = 10, ACTIONS(3), 1, sym_comment, - ACTIONS(1787), 1, + ACTIONS(1760), 1, anon_sym_DOT, - ACTIONS(1789), 1, + ACTIONS(1762), 1, anon_sym_LPAREN, - ACTIONS(1801), 1, + ACTIONS(1774), 1, anon_sym_LBRACK, - ACTIONS(1803), 1, + ACTIONS(1776), 1, anon_sym_STAR_STAR, - STATE(904), 2, + ACTIONS(1764), 2, + anon_sym_STAR, + anon_sym_SLASH, + STATE(900), 2, sym_argument_list, sym_generator_expression, - ACTIONS(1693), 5, - anon_sym_STAR, + ACTIONS(1713), 3, anon_sym_EQ, - anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1691), 25, + ACTIONS(1778), 3, + anon_sym_AT, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + ACTIONS(1711), 22, sym__newline, anon_sym_from, anon_sym_COMMA, @@ -65687,12 +66385,9 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, - anon_sym_AT, anon_sym_not, anon_sym_and, anon_sym_or, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, anon_sym_AMP, anon_sym_CARET, anon_sym_LT_LT, @@ -65703,71 +66398,37 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LT_GT, anon_sym_is, anon_sym_SEMI, - [50283] = 4, + [50756] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(278), 1, - anon_sym_COLON_EQ, - ACTIONS(265), 5, - anon_sym_STAR, - anon_sym_EQ, - anon_sym_SLASH, - anon_sym_LT, - anon_sym_GT, - ACTIONS(298), 29, - sym__newline, + ACTIONS(1602), 1, anon_sym_DOT, - anon_sym_from, + ACTIONS(1604), 1, anon_sym_LPAREN, - anon_sym_COMMA, - anon_sym_GT_GT, - anon_sym_if, - anon_sym_in, - anon_sym_PIPE, - anon_sym_DASH, - anon_sym_PLUS, + ACTIONS(1618), 1, anon_sym_LBRACK, + ACTIONS(1812), 1, anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_not, - anon_sym_and, - anon_sym_or, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - anon_sym_is, - anon_sym_SEMI, - [50328] = 3, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1523), 5, + STATE(734), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1702), 4, anon_sym_STAR, - anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1521), 30, - sym__newline, - sym__template_string_start, - anon_sym_DOT, - anon_sym_from, - anon_sym_LPAREN, + ACTIONS(1700), 26, anon_sym_COMMA, anon_sym_GT_GT, anon_sym_if, + anon_sym_COLON, + anon_sym_async, + anon_sym_for, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_STAR_STAR, + anon_sym_RBRACE, anon_sym_AT, anon_sym_not, anon_sym_and, @@ -65783,43 +66444,46 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - anon_sym_SEMI, - [50371] = 8, + [50810] = 11, ACTIONS(3), 1, sym_comment, - ACTIONS(1819), 1, + ACTIONS(1602), 1, anon_sym_DOT, - ACTIONS(1821), 1, + ACTIONS(1604), 1, anon_sym_LPAREN, - ACTIONS(1833), 1, + ACTIONS(1618), 1, anon_sym_LBRACK, - ACTIONS(1835), 1, + ACTIONS(1812), 1, anon_sym_STAR_STAR, - STATE(977), 2, - sym_argument_list, - sym_generator_expression, - ACTIONS(1693), 4, - anon_sym_STAR, - anon_sym_SLASH, + ACTIONS(1713), 2, anon_sym_LT, anon_sym_GT, - ACTIONS(1691), 25, - anon_sym_RPAREN, + ACTIONS(1802), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(1810), 2, + anon_sym_DASH, + anon_sym_PLUS, + STATE(734), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1814), 3, + anon_sym_AT, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + ACTIONS(1711), 21, anon_sym_COMMA, - anon_sym_as, anon_sym_GT_GT, anon_sym_if, anon_sym_COLON, + anon_sym_async, + anon_sym_for, anon_sym_in, anon_sym_PIPE, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_AT, + anon_sym_RBRACE, anon_sym_not, anon_sym_and, anon_sym_or, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, anon_sym_AMP, anon_sym_CARET, anon_sym_LT_LT, @@ -65829,45 +66493,98 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [50424] = 11, + [50870] = 22, ACTIONS(3), 1, sym_comment, - ACTIONS(1819), 1, - anon_sym_DOT, - ACTIONS(1821), 1, + ACTIONS(654), 1, + sym__string_start, + ACTIONS(656), 1, + sym__template_string_start, + ACTIONS(1858), 1, + sym_identifier, + ACTIONS(1860), 1, anon_sym_LPAREN, - ACTIONS(1833), 1, + ACTIONS(1862), 1, + anon_sym_STAR, + ACTIONS(1864), 1, + anon_sym_DASH, + ACTIONS(1866), 1, + sym_match_wildcard_pattern, + ACTIONS(1868), 1, anon_sym_LBRACK, - ACTIONS(1835), 1, - anon_sym_STAR_STAR, - ACTIONS(1693), 2, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1823), 2, + ACTIONS(1870), 1, + anon_sym_LBRACE, + ACTIONS(1872), 1, + sym_integer, + ACTIONS(1874), 1, + sym_float, + STATE(1035), 1, + sym_template_string, + STATE(1061), 1, + sym_string, + STATE(1714), 1, + sym_pattern_class_name, + STATE(1168), 2, + sym_concatenated_string, + sym_concatenated_template_string, + STATE(1215), 2, + sym__match_or_pattern, + sym_match_or_pattern, + STATE(1467), 2, + sym__match_patterns, + sym_open_sequence_match_pattern, + STATE(1504), 2, + sym__match_pattern, + sym_match_as_pattern, + STATE(1585), 2, + sym__match_maybe_star_pattern, + sym_match_star_pattern, + ACTIONS(1876), 3, + sym_true, + sym_false, + sym_none, + STATE(1139), 8, + sym__closed_pattern, + sym_match_literal_pattern, + sym_match_capture_pattern, + sym_match_value_pattern, + sym_match_group_pattern, + sym_match_sequence_pattern, + sym_match_mapping_pattern, + sym_match_class_pattern, + [50951] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1826), 1, + anon_sym_COLON_EQ, + ACTIONS(1878), 1, + anon_sym_EQ, + ACTIONS(1235), 4, anon_sym_STAR, anon_sym_SLASH, - ACTIONS(1831), 2, - anon_sym_DASH, - anon_sym_PLUS, - STATE(977), 2, - sym_argument_list, - sym_generator_expression, - ACTIONS(1837), 3, - anon_sym_AT, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - ACTIONS(1691), 20, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1230), 29, + anon_sym_DOT, + anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_as, anon_sym_GT_GT, anon_sym_if, - anon_sym_COLON, + anon_sym_async, + anon_sym_for, anon_sym_in, anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_STAR_STAR, + anon_sym_AT, anon_sym_not, anon_sym_and, anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, anon_sym_AMP, anon_sym_CARET, anon_sym_LT_LT, @@ -65877,29 +66594,31 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [50483] = 3, + [50998] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1531), 5, + ACTIONS(1880), 1, + anon_sym_COLON_EQ, + ACTIONS(1235), 5, anon_sym_STAR, - anon_sym_EQ, + anon_sym_COLON, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1529), 30, - sym__newline, - sym__template_string_start, + ACTIONS(1230), 29, anon_sym_DOT, - anon_sym_from, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_GT_GT, anon_sym_if, + anon_sym_async, + anon_sym_for, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, + anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, @@ -65916,97 +66635,142 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - anon_sym_SEMI, - [50526] = 15, + [51043] = 22, + ACTIONS(3), 1, + sym_comment, + ACTIONS(654), 1, + sym__string_start, + ACTIONS(656), 1, + sym__template_string_start, + ACTIONS(1858), 1, + sym_identifier, + ACTIONS(1860), 1, + anon_sym_LPAREN, + ACTIONS(1862), 1, + anon_sym_STAR, + ACTIONS(1864), 1, + anon_sym_DASH, + ACTIONS(1866), 1, + sym_match_wildcard_pattern, + ACTIONS(1868), 1, + anon_sym_LBRACK, + ACTIONS(1870), 1, + anon_sym_LBRACE, + ACTIONS(1872), 1, + sym_integer, + ACTIONS(1874), 1, + sym_float, + STATE(1035), 1, + sym_template_string, + STATE(1061), 1, + sym_string, + STATE(1714), 1, + sym_pattern_class_name, + STATE(1168), 2, + sym_concatenated_string, + sym_concatenated_template_string, + STATE(1215), 2, + sym__match_or_pattern, + sym_match_or_pattern, + STATE(1503), 2, + sym__match_patterns, + sym_open_sequence_match_pattern, + STATE(1504), 2, + sym__match_pattern, + sym_match_as_pattern, + STATE(1585), 2, + sym__match_maybe_star_pattern, + sym_match_star_pattern, + ACTIONS(1876), 3, + sym_true, + sym_false, + sym_none, + STATE(1139), 8, + sym__closed_pattern, + sym_match_literal_pattern, + sym_match_capture_pattern, + sym_match_value_pattern, + sym_match_group_pattern, + sym_match_sequence_pattern, + sym_match_mapping_pattern, + sym_match_class_pattern, + [51124] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(1819), 1, + ACTIONS(1828), 1, anon_sym_DOT, - ACTIONS(1821), 1, + ACTIONS(1830), 1, anon_sym_LPAREN, - ACTIONS(1829), 1, - anon_sym_PIPE, - ACTIONS(1833), 1, + ACTIONS(1842), 1, anon_sym_LBRACK, - ACTIONS(1835), 1, + ACTIONS(1844), 1, anon_sym_STAR_STAR, - ACTIONS(1841), 1, - anon_sym_AMP, - ACTIONS(1843), 1, - anon_sym_CARET, - ACTIONS(1701), 2, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1823), 2, - anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(1825), 2, - anon_sym_GT_GT, - anon_sym_LT_LT, - ACTIONS(1831), 2, - anon_sym_DASH, - anon_sym_PLUS, - STATE(977), 2, + STATE(979), 2, sym_argument_list, sym_generator_expression, - ACTIONS(1837), 3, - anon_sym_AT, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - ACTIONS(1699), 15, + ACTIONS(1713), 4, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1711), 25, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_as, + anon_sym_GT_GT, anon_sym_if, anon_sym_COLON, anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_AT, anon_sym_not, anon_sym_and, anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [50593] = 14, + [51177] = 11, ACTIONS(3), 1, sym_comment, - ACTIONS(1819), 1, + ACTIONS(1828), 1, anon_sym_DOT, - ACTIONS(1821), 1, + ACTIONS(1830), 1, anon_sym_LPAREN, - ACTIONS(1833), 1, + ACTIONS(1842), 1, anon_sym_LBRACK, - ACTIONS(1835), 1, + ACTIONS(1844), 1, anon_sym_STAR_STAR, - ACTIONS(1841), 1, - anon_sym_AMP, - ACTIONS(1843), 1, - anon_sym_CARET, - ACTIONS(1693), 2, + ACTIONS(1713), 2, anon_sym_LT, anon_sym_GT, - ACTIONS(1823), 2, + ACTIONS(1832), 2, anon_sym_STAR, anon_sym_SLASH, - ACTIONS(1825), 2, - anon_sym_GT_GT, - anon_sym_LT_LT, - ACTIONS(1831), 2, + ACTIONS(1840), 2, anon_sym_DASH, anon_sym_PLUS, - STATE(977), 2, + STATE(979), 2, sym_argument_list, sym_generator_expression, - ACTIONS(1837), 3, + ACTIONS(1846), 3, anon_sym_AT, anon_sym_PERCENT, anon_sym_SLASH_SLASH, - ACTIONS(1691), 16, + ACTIONS(1711), 20, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_as, + anon_sym_GT_GT, anon_sym_if, anon_sym_COLON, anon_sym_in, @@ -66014,37 +66778,35 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_not, anon_sym_and, anon_sym_or, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [50658] = 10, + [51236] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(1819), 1, + ACTIONS(1828), 1, anon_sym_DOT, - ACTIONS(1821), 1, + ACTIONS(1830), 1, anon_sym_LPAREN, - ACTIONS(1833), 1, + ACTIONS(1842), 1, anon_sym_LBRACK, - ACTIONS(1835), 1, + ACTIONS(1844), 1, anon_sym_STAR_STAR, - ACTIONS(1693), 2, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1823), 2, - anon_sym_STAR, - anon_sym_SLASH, - STATE(977), 2, + STATE(979), 2, sym_argument_list, sym_generator_expression, - ACTIONS(1837), 3, - anon_sym_AT, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - ACTIONS(1691), 22, + ACTIONS(1702), 4, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1700), 25, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_as, @@ -66055,9 +66817,12 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, + anon_sym_AT, anon_sym_not, anon_sym_and, anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, anon_sym_AMP, anon_sym_CARET, anon_sym_LT_LT, @@ -66067,14 +66832,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [50715] = 4, + [51289] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1173), 3, + ACTIONS(1463), 3, anon_sym_DOT, anon_sym_LPAREN, anon_sym_LBRACK, - ACTIONS(1178), 13, + ACTIONS(1468), 13, anon_sym_STAR, anon_sym_GT_GT, anon_sym_PIPE, @@ -66088,7 +66853,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_AMP, anon_sym_CARET, anon_sym_LT_LT, - ACTIONS(1223), 19, + ACTIONS(1470), 19, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_COLON, @@ -66108,26 +66873,26 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, - [50760] = 8, + [51334] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(1819), 1, + ACTIONS(1828), 1, anon_sym_DOT, - ACTIONS(1821), 1, + ACTIONS(1830), 1, anon_sym_LPAREN, - ACTIONS(1833), 1, + ACTIONS(1842), 1, anon_sym_LBRACK, - ACTIONS(1835), 1, + ACTIONS(1844), 1, anon_sym_STAR_STAR, - STATE(977), 2, + STATE(979), 2, sym_argument_list, sym_generator_expression, - ACTIONS(1693), 4, + ACTIONS(1717), 4, anon_sym_STAR, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1691), 25, + ACTIONS(1715), 25, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_as, @@ -66153,113 +66918,146 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [50813] = 13, + [51387] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1819), 1, - anon_sym_DOT, - ACTIONS(1821), 1, - anon_sym_LPAREN, - ACTIONS(1833), 1, - anon_sym_LBRACK, - ACTIONS(1835), 1, - anon_sym_STAR_STAR, - ACTIONS(1843), 1, - anon_sym_CARET, - ACTIONS(1693), 2, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1823), 2, + ACTIONS(1532), 5, anon_sym_STAR, + anon_sym_EQ, anon_sym_SLASH, - ACTIONS(1825), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1530), 30, + sym__newline, + sym__string_start, + anon_sym_DOT, + anon_sym_from, + anon_sym_LPAREN, + anon_sym_COMMA, anon_sym_GT_GT, - anon_sym_LT_LT, - ACTIONS(1831), 2, + anon_sym_if, + anon_sym_in, + anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, - STATE(977), 2, - sym_argument_list, - sym_generator_expression, - ACTIONS(1837), 3, + anon_sym_LBRACK, + anon_sym_STAR_STAR, anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, anon_sym_PERCENT, anon_sym_SLASH_SLASH, - ACTIONS(1691), 17, - anon_sym_RPAREN, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + anon_sym_SEMI, + [51430] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1536), 5, + anon_sym_STAR, + anon_sym_EQ, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1534), 30, + sym__template_string_start, + anon_sym_DOT, + anon_sym_LPAREN, anon_sym_COMMA, - anon_sym_as, + anon_sym_GT_GT, anon_sym_if, - anon_sym_COLON, anon_sym_in, anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_RBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, anon_sym_not, anon_sym_and, anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [50876] = 12, + anon_sym_COLON2, + sym_type_conversion, + [51473] = 15, ACTIONS(3), 1, sym_comment, - ACTIONS(1819), 1, + ACTIONS(1828), 1, anon_sym_DOT, - ACTIONS(1821), 1, + ACTIONS(1830), 1, anon_sym_LPAREN, - ACTIONS(1833), 1, + ACTIONS(1838), 1, + anon_sym_PIPE, + ACTIONS(1842), 1, anon_sym_LBRACK, - ACTIONS(1835), 1, + ACTIONS(1844), 1, anon_sym_STAR_STAR, - ACTIONS(1693), 2, + ACTIONS(1850), 1, + anon_sym_AMP, + ACTIONS(1852), 1, + anon_sym_CARET, + ACTIONS(1725), 2, anon_sym_LT, anon_sym_GT, - ACTIONS(1823), 2, + ACTIONS(1832), 2, anon_sym_STAR, anon_sym_SLASH, - ACTIONS(1825), 2, + ACTIONS(1834), 2, anon_sym_GT_GT, anon_sym_LT_LT, - ACTIONS(1831), 2, + ACTIONS(1840), 2, anon_sym_DASH, anon_sym_PLUS, - STATE(977), 2, + STATE(979), 2, sym_argument_list, sym_generator_expression, - ACTIONS(1837), 3, + ACTIONS(1846), 3, anon_sym_AT, anon_sym_PERCENT, anon_sym_SLASH_SLASH, - ACTIONS(1691), 18, + ACTIONS(1723), 15, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_as, anon_sym_if, anon_sym_COLON, anon_sym_in, - anon_sym_PIPE, anon_sym_not, anon_sym_and, anon_sym_or, - anon_sym_AMP, - anon_sym_CARET, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [50937] = 4, + [51540] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1267), 3, + ACTIONS(303), 3, anon_sym_DOT, anon_sym_LPAREN, anon_sym_LBRACK, - ACTIONS(1272), 13, + ACTIONS(272), 13, anon_sym_STAR, anon_sym_GT_GT, anon_sym_PIPE, @@ -66273,7 +67071,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_AMP, anon_sym_CARET, anon_sym_LT_LT, - ACTIONS(1274), 19, + ACTIONS(307), 19, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_COLON, @@ -66293,39 +67091,95 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, - [50982] = 5, + [51585] = 14, ACTIONS(3), 1, sym_comment, - ACTIONS(599), 1, - anon_sym_COLON_EQ, - ACTIONS(651), 1, - anon_sym_EQ, - ACTIONS(265), 4, - anon_sym_STAR, - anon_sym_SLASH, + ACTIONS(1828), 1, + anon_sym_DOT, + ACTIONS(1830), 1, + anon_sym_LPAREN, + ACTIONS(1842), 1, + anon_sym_LBRACK, + ACTIONS(1844), 1, + anon_sym_STAR_STAR, + ACTIONS(1850), 1, + anon_sym_AMP, + ACTIONS(1852), 1, + anon_sym_CARET, + ACTIONS(1713), 2, anon_sym_LT, anon_sym_GT, - ACTIONS(298), 29, + ACTIONS(1832), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(1834), 2, + anon_sym_GT_GT, + anon_sym_LT_LT, + ACTIONS(1840), 2, + anon_sym_DASH, + anon_sym_PLUS, + STATE(979), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1846), 3, + anon_sym_AT, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + ACTIONS(1711), 16, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_as, + anon_sym_if, + anon_sym_COLON, + anon_sym_in, + anon_sym_PIPE, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [51650] = 10, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1828), 1, anon_sym_DOT, + ACTIONS(1830), 1, anon_sym_LPAREN, + ACTIONS(1842), 1, + anon_sym_LBRACK, + ACTIONS(1844), 1, + anon_sym_STAR_STAR, + ACTIONS(1713), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1832), 2, + anon_sym_STAR, + anon_sym_SLASH, + STATE(979), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1846), 3, + anon_sym_AT, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + ACTIONS(1711), 22, anon_sym_RPAREN, anon_sym_COMMA, + anon_sym_as, anon_sym_GT_GT, anon_sym_if, - anon_sym_async, - anon_sym_for, + anon_sym_COLON, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_STAR_STAR, - anon_sym_AT, anon_sym_not, anon_sym_and, anon_sym_or, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, anon_sym_AMP, anon_sym_CARET, anon_sym_LT_LT, @@ -66335,29 +67189,32 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [51029] = 4, + [51707] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(613), 1, + ACTIONS(604), 1, anon_sym_COLON_EQ, - ACTIONS(265), 5, + ACTIONS(277), 3, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_RBRACK, + ACTIONS(272), 4, anon_sym_STAR, - anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(298), 29, + ACTIONS(303), 27, anon_sym_DOT, anon_sym_LPAREN, - anon_sym_COMMA, anon_sym_GT_GT, anon_sym_if, + anon_sym_async, + anon_sym_for, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, - anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, @@ -66374,18 +67231,16 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - anon_sym_COLON2, - sym_type_conversion, - [51074] = 3, + [51754] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1527), 5, + ACTIONS(1528), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1525), 30, + ACTIONS(1526), 30, sym__string_start, anon_sym_DOT, anon_sym_LPAREN, @@ -66416,31 +67271,30 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_is, anon_sym_COLON2, sym_type_conversion, - [51117] = 4, + [51797] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1849), 1, + ACTIONS(283), 1, anon_sym_COLON_EQ, - ACTIONS(1178), 5, + ACTIONS(272), 5, anon_sym_STAR, - anon_sym_COLON, + anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1173), 29, + ACTIONS(303), 29, + sym__newline, anon_sym_DOT, + anon_sym_from, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_GT_GT, anon_sym_if, - anon_sym_async, - anon_sym_for, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, - anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, @@ -66457,206 +67311,157 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [51162] = 15, + anon_sym_SEMI, + [51842] = 13, ACTIONS(3), 1, sym_comment, - ACTIONS(1819), 1, + ACTIONS(1828), 1, anon_sym_DOT, - ACTIONS(1821), 1, + ACTIONS(1830), 1, anon_sym_LPAREN, - ACTIONS(1829), 1, - anon_sym_PIPE, - ACTIONS(1833), 1, + ACTIONS(1842), 1, anon_sym_LBRACK, - ACTIONS(1835), 1, + ACTIONS(1844), 1, anon_sym_STAR_STAR, - ACTIONS(1841), 1, - anon_sym_AMP, - ACTIONS(1843), 1, + ACTIONS(1852), 1, anon_sym_CARET, - ACTIONS(1711), 2, + ACTIONS(1713), 2, anon_sym_LT, anon_sym_GT, - ACTIONS(1823), 2, + ACTIONS(1832), 2, anon_sym_STAR, anon_sym_SLASH, - ACTIONS(1825), 2, + ACTIONS(1834), 2, anon_sym_GT_GT, anon_sym_LT_LT, - ACTIONS(1831), 2, + ACTIONS(1840), 2, anon_sym_DASH, anon_sym_PLUS, - STATE(977), 2, + STATE(979), 2, sym_argument_list, sym_generator_expression, - ACTIONS(1837), 3, + ACTIONS(1846), 3, anon_sym_AT, anon_sym_PERCENT, anon_sym_SLASH_SLASH, - ACTIONS(1709), 15, + ACTIONS(1711), 17, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_as, anon_sym_if, anon_sym_COLON, anon_sym_in, + anon_sym_PIPE, anon_sym_not, anon_sym_and, anon_sym_or, + anon_sym_AMP, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [51229] = 15, + [51905] = 12, ACTIONS(3), 1, sym_comment, - ACTIONS(1819), 1, + ACTIONS(1828), 1, anon_sym_DOT, - ACTIONS(1821), 1, + ACTIONS(1830), 1, anon_sym_LPAREN, - ACTIONS(1829), 1, - anon_sym_PIPE, - ACTIONS(1833), 1, + ACTIONS(1842), 1, anon_sym_LBRACK, - ACTIONS(1835), 1, + ACTIONS(1844), 1, anon_sym_STAR_STAR, - ACTIONS(1841), 1, - anon_sym_AMP, - ACTIONS(1843), 1, - anon_sym_CARET, - ACTIONS(1715), 2, + ACTIONS(1713), 2, anon_sym_LT, anon_sym_GT, - ACTIONS(1823), 2, + ACTIONS(1832), 2, anon_sym_STAR, anon_sym_SLASH, - ACTIONS(1825), 2, + ACTIONS(1834), 2, anon_sym_GT_GT, anon_sym_LT_LT, - ACTIONS(1831), 2, + ACTIONS(1840), 2, anon_sym_DASH, anon_sym_PLUS, - STATE(977), 2, + STATE(979), 2, sym_argument_list, sym_generator_expression, - ACTIONS(1837), 3, + ACTIONS(1846), 3, anon_sym_AT, anon_sym_PERCENT, anon_sym_SLASH_SLASH, - ACTIONS(1713), 15, + ACTIONS(1711), 18, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_as, anon_sym_if, anon_sym_COLON, anon_sym_in, + anon_sym_PIPE, anon_sym_not, anon_sym_and, anon_sym_or, + anon_sym_AMP, + anon_sym_CARET, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [51296] = 8, + [51966] = 22, ACTIONS(3), 1, sym_comment, - ACTIONS(1819), 1, - anon_sym_DOT, - ACTIONS(1821), 1, + ACTIONS(654), 1, + sym__string_start, + ACTIONS(656), 1, + sym__template_string_start, + ACTIONS(1858), 1, + sym_identifier, + ACTIONS(1860), 1, anon_sym_LPAREN, - ACTIONS(1833), 1, - anon_sym_LBRACK, - ACTIONS(1835), 1, - anon_sym_STAR_STAR, - STATE(977), 2, - sym_argument_list, - sym_generator_expression, - ACTIONS(1719), 4, + ACTIONS(1862), 1, anon_sym_STAR, - anon_sym_SLASH, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1717), 25, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_as, - anon_sym_GT_GT, - anon_sym_if, - anon_sym_COLON, - anon_sym_in, - anon_sym_PIPE, + ACTIONS(1864), 1, anon_sym_DASH, - anon_sym_PLUS, - anon_sym_AT, - anon_sym_not, - anon_sym_and, - anon_sym_or, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - anon_sym_is, - [51349] = 22, - ACTIONS(3), 1, - sym_comment, - ACTIONS(647), 1, - sym__string_start, - ACTIONS(649), 1, - sym__template_string_start, - ACTIONS(1851), 1, - sym_identifier, - ACTIONS(1853), 1, - anon_sym_LPAREN, - ACTIONS(1855), 1, - anon_sym_STAR, - ACTIONS(1857), 1, - anon_sym_if, - ACTIONS(1859), 1, - anon_sym_COLON, - ACTIONS(1861), 1, - anon_sym_DASH, - ACTIONS(1863), 1, + ACTIONS(1866), 1, sym_match_wildcard_pattern, - ACTIONS(1865), 1, + ACTIONS(1868), 1, anon_sym_LBRACK, - ACTIONS(1867), 1, + ACTIONS(1870), 1, anon_sym_LBRACE, - ACTIONS(1869), 1, + ACTIONS(1872), 1, sym_integer, - ACTIONS(1871), 1, + ACTIONS(1874), 1, sym_float, - STATE(1039), 1, - sym_string, - STATE(1040), 1, + ACTIONS(1882), 1, + anon_sym_if, + ACTIONS(1884), 1, + anon_sym_COLON, + STATE(1035), 1, sym_template_string, - STATE(1680), 1, + STATE(1061), 1, + sym_string, + STATE(1714), 1, sym_pattern_class_name, - STATE(1140), 2, + STATE(1168), 2, sym_concatenated_string, sym_concatenated_template_string, - STATE(1184), 2, + STATE(1215), 2, sym__match_or_pattern, sym_match_or_pattern, - ACTIONS(1873), 3, + ACTIONS(1876), 3, sym_true, sym_false, sym_none, - STATE(1277), 4, + STATE(1293), 4, sym__match_pattern, sym_match_as_pattern, sym__match_maybe_star_pattern, sym_match_star_pattern, - STATE(1142), 8, + STATE(1139), 8, sym__closed_pattern, sym_match_literal_pattern, sym_match_capture_pattern, @@ -66665,24 +67470,68 @@ static const uint16_t ts_small_parse_table[] = { sym_match_sequence_pattern, sym_match_mapping_pattern, sym_match_class_pattern, - [51430] = 3, + [52047] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1519), 5, + ACTIONS(1230), 3, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_LBRACK, + ACTIONS(1235), 13, anon_sym_STAR, + anon_sym_GT_GT, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_SLASH, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + ACTIONS(1241), 19, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_COLON, + anon_sym_in, + anon_sym_RBRACK, anon_sym_EQ, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_AT_EQ, + anon_sym_SLASH_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_STAR_STAR_EQ, + anon_sym_GT_GT_EQ, + anon_sym_LT_LT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + [52092] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1826), 1, + anon_sym_COLON_EQ, + ACTIONS(1232), 3, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_RBRACK, + ACTIONS(1235), 4, + anon_sym_STAR, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1517), 30, - sym__newline, - sym__string_start, + ACTIONS(1230), 27, anon_sym_DOT, - anon_sym_from, anon_sym_LPAREN, - anon_sym_COMMA, anon_sym_GT_GT, anon_sym_if, + anon_sym_async, + anon_sym_for, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, @@ -66704,37 +67553,32 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - anon_sym_SEMI, - [51473] = 8, + [52139] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1819), 1, - anon_sym_DOT, - ACTIONS(1821), 1, - anon_sym_LPAREN, - ACTIONS(1833), 1, - anon_sym_LBRACK, - ACTIONS(1835), 1, - anon_sym_STAR_STAR, - STATE(977), 2, - sym_argument_list, - sym_generator_expression, - ACTIONS(1697), 4, + ACTIONS(660), 1, + anon_sym_COLON_EQ, + ACTIONS(272), 5, anon_sym_STAR, + anon_sym_COLON, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1695), 25, - anon_sym_RPAREN, + ACTIONS(303), 29, + anon_sym_DOT, + anon_sym_LPAREN, anon_sym_COMMA, - anon_sym_as, anon_sym_GT_GT, anon_sym_if, - anon_sym_COLON, + anon_sym_async, + anon_sym_for, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_RBRACE, + anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, anon_sym_and, @@ -66750,59 +67594,61 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [51526] = 4, + [52184] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1173), 3, + ACTIONS(1237), 1, + anon_sym_COLON_EQ, + ACTIONS(1235), 5, + anon_sym_STAR, + anon_sym_EQ, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1230), 29, + sym__newline, anon_sym_DOT, + anon_sym_from, anon_sym_LPAREN, - anon_sym_LBRACK, - ACTIONS(1178), 13, - anon_sym_STAR, + anon_sym_COMMA, anon_sym_GT_GT, + anon_sym_if, + anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, + anon_sym_LBRACK, anon_sym_STAR_STAR, anon_sym_AT, - anon_sym_SLASH, + anon_sym_not, + anon_sym_and, + anon_sym_or, anon_sym_PERCENT, anon_sym_SLASH_SLASH, anon_sym_AMP, anon_sym_CARET, anon_sym_LT_LT, - ACTIONS(1184), 19, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_COLON, - anon_sym_in, - anon_sym_RBRACK, - anon_sym_EQ, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_STAR_EQ, - anon_sym_SLASH_EQ, - anon_sym_AT_EQ, - anon_sym_SLASH_SLASH_EQ, - anon_sym_PERCENT_EQ, - anon_sym_STAR_STAR_EQ, - anon_sym_GT_GT_EQ, - anon_sym_LT_LT_EQ, - anon_sym_AMP_EQ, - anon_sym_CARET_EQ, - anon_sym_PIPE_EQ, - [51571] = 3, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + anon_sym_SEMI, + [52229] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1519), 5, + ACTIONS(1528), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1517), 30, + ACTIONS(1526), 30, + sym__newline, sym__string_start, anon_sym_DOT, + anon_sym_from, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_GT_GT, @@ -66812,7 +67658,6 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, - anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, @@ -66829,19 +67674,18 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - anon_sym_COLON2, - sym_type_conversion, - [51614] = 3, + anon_sym_SEMI, + [52272] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1531), 5, + ACTIONS(1532), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1529), 30, - sym__template_string_start, + ACTIONS(1530), 30, + sym__string_start, anon_sym_DOT, anon_sym_LPAREN, anon_sym_COMMA, @@ -66871,61 +67715,163 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_is, anon_sym_COLON2, sym_type_conversion, - [51657] = 5, + [52315] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1817), 1, - anon_sym_COLON_EQ, - ACTIONS(1875), 1, - anon_sym_EQ, - ACTIONS(1178), 4, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1173), 29, + ACTIONS(303), 3, anon_sym_DOT, anon_sym_LPAREN, - anon_sym_RPAREN, - anon_sym_COMMA, + anon_sym_LBRACK, + ACTIONS(272), 13, + anon_sym_STAR, anon_sym_GT_GT, - anon_sym_if, - anon_sym_async, - anon_sym_for, - anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_SLASH, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + ACTIONS(588), 19, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_COLON, + anon_sym_in, + anon_sym_RBRACK, + anon_sym_EQ, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_AT_EQ, + anon_sym_SLASH_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_STAR_STAR_EQ, + anon_sym_GT_GT_EQ, + anon_sym_LT_LT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + [52360] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1828), 1, + anon_sym_DOT, + ACTIONS(1830), 1, + anon_sym_LPAREN, + ACTIONS(1838), 1, + anon_sym_PIPE, + ACTIONS(1842), 1, anon_sym_LBRACK, + ACTIONS(1844), 1, anon_sym_STAR_STAR, + ACTIONS(1850), 1, + anon_sym_AMP, + ACTIONS(1852), 1, + anon_sym_CARET, + ACTIONS(1721), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1832), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(1834), 2, + anon_sym_GT_GT, + anon_sym_LT_LT, + ACTIONS(1840), 2, + anon_sym_DASH, + anon_sym_PLUS, + STATE(979), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1846), 3, anon_sym_AT, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + ACTIONS(1719), 15, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_as, + anon_sym_if, + anon_sym_COLON, + anon_sym_in, anon_sym_not, anon_sym_and, anon_sym_or, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [52427] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1828), 1, + anon_sym_DOT, + ACTIONS(1830), 1, + anon_sym_LPAREN, + ACTIONS(1838), 1, + anon_sym_PIPE, + ACTIONS(1842), 1, + anon_sym_LBRACK, + ACTIONS(1844), 1, + anon_sym_STAR_STAR, + ACTIONS(1850), 1, anon_sym_AMP, + ACTIONS(1852), 1, anon_sym_CARET, + ACTIONS(1706), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1832), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(1834), 2, + anon_sym_GT_GT, anon_sym_LT_LT, + ACTIONS(1840), 2, + anon_sym_DASH, + anon_sym_PLUS, + STATE(979), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1846), 3, + anon_sym_AT, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + ACTIONS(1704), 15, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_as, + anon_sym_if, + anon_sym_COLON, + anon_sym_in, + anon_sym_not, + anon_sym_and, + anon_sym_or, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [51704] = 4, + [52494] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1180), 1, - anon_sym_COLON_EQ, - ACTIONS(1178), 5, + ACTIONS(1540), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1173), 29, + ACTIONS(1538), 30, sym__newline, + sym__template_string_start, anon_sym_DOT, anon_sym_from, anon_sym_LPAREN, @@ -66954,57 +67900,57 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LT_GT, anon_sym_is, anon_sym_SEMI, - [51749] = 22, + [52537] = 22, ACTIONS(3), 1, sym_comment, - ACTIONS(647), 1, + ACTIONS(654), 1, sym__string_start, - ACTIONS(649), 1, + ACTIONS(656), 1, sym__template_string_start, - ACTIONS(1851), 1, + ACTIONS(1858), 1, sym_identifier, - ACTIONS(1853), 1, + ACTIONS(1860), 1, anon_sym_LPAREN, - ACTIONS(1855), 1, + ACTIONS(1862), 1, anon_sym_STAR, - ACTIONS(1861), 1, + ACTIONS(1864), 1, anon_sym_DASH, - ACTIONS(1863), 1, + ACTIONS(1866), 1, sym_match_wildcard_pattern, - ACTIONS(1865), 1, + ACTIONS(1868), 1, anon_sym_LBRACK, - ACTIONS(1867), 1, + ACTIONS(1870), 1, anon_sym_LBRACE, - ACTIONS(1869), 1, + ACTIONS(1872), 1, sym_integer, - ACTIONS(1871), 1, + ACTIONS(1874), 1, sym_float, - ACTIONS(1877), 1, + ACTIONS(1886), 1, anon_sym_if, - ACTIONS(1879), 1, + ACTIONS(1888), 1, anon_sym_COLON, - STATE(1039), 1, - sym_string, - STATE(1040), 1, + STATE(1035), 1, sym_template_string, - STATE(1680), 1, + STATE(1061), 1, + sym_string, + STATE(1714), 1, sym_pattern_class_name, - STATE(1140), 2, + STATE(1168), 2, sym_concatenated_string, sym_concatenated_template_string, - STATE(1184), 2, + STATE(1215), 2, sym__match_or_pattern, sym_match_or_pattern, - ACTIONS(1873), 3, + ACTIONS(1876), 3, sym_true, sym_false, sym_none, - STATE(1277), 4, + STATE(1293), 4, sym__match_pattern, sym_match_as_pattern, sym__match_maybe_star_pattern, sym_match_star_pattern, - STATE(1142), 8, + STATE(1139), 8, sym__closed_pattern, sym_match_literal_pattern, sym_match_capture_pattern, @@ -67013,14 +67959,14 @@ static const uint16_t ts_small_parse_table[] = { sym_match_sequence_pattern, sym_match_mapping_pattern, sym_match_class_pattern, - [51830] = 4, + [52618] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(298), 3, + ACTIONS(1230), 3, anon_sym_DOT, anon_sym_LPAREN, anon_sym_LBRACK, - ACTIONS(265), 13, + ACTIONS(1235), 13, anon_sym_STAR, anon_sym_GT_GT, anon_sym_PIPE, @@ -67034,7 +67980,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_AMP, anon_sym_CARET, anon_sym_LT_LT, - ACTIONS(302), 19, + ACTIONS(1262), 19, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_COLON, @@ -67054,73 +68000,54 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, - [51875] = 22, + [52663] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(647), 1, - sym__string_start, - ACTIONS(649), 1, + ACTIONS(1536), 5, + anon_sym_STAR, + anon_sym_EQ, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1534), 30, + sym__newline, sym__template_string_start, - ACTIONS(1851), 1, - sym_identifier, - ACTIONS(1853), 1, + anon_sym_DOT, + anon_sym_from, anon_sym_LPAREN, - ACTIONS(1855), 1, - anon_sym_STAR, - ACTIONS(1861), 1, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_in, + anon_sym_PIPE, anon_sym_DASH, - ACTIONS(1863), 1, - sym_match_wildcard_pattern, - ACTIONS(1865), 1, + anon_sym_PLUS, anon_sym_LBRACK, - ACTIONS(1867), 1, - anon_sym_LBRACE, - ACTIONS(1869), 1, - sym_integer, - ACTIONS(1871), 1, - sym_float, - STATE(1039), 1, - sym_string, - STATE(1040), 1, - sym_template_string, - STATE(1680), 1, - sym_pattern_class_name, - STATE(1140), 2, - sym_concatenated_string, - sym_concatenated_template_string, - STATE(1184), 2, - sym__match_or_pattern, - sym_match_or_pattern, - STATE(1390), 2, - sym__match_patterns, - sym_open_sequence_match_pattern, - STATE(1391), 2, - sym__match_pattern, - sym_match_as_pattern, - STATE(1509), 2, - sym__match_maybe_star_pattern, - sym_match_star_pattern, - ACTIONS(1873), 3, - sym_true, - sym_false, - sym_none, - STATE(1142), 8, - sym__closed_pattern, - sym_match_literal_pattern, - sym_match_capture_pattern, - sym_match_value_pattern, - sym_match_group_pattern, - sym_match_sequence_pattern, - sym_match_mapping_pattern, - sym_match_class_pattern, - [51956] = 4, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + anon_sym_SEMI, + [52706] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1278), 3, + ACTIONS(1420), 3, anon_sym_DOT, anon_sym_LPAREN, anon_sym_LBRACK, - ACTIONS(1283), 13, + ACTIONS(1425), 13, anon_sym_STAR, anon_sym_GT_GT, anon_sym_PIPE, @@ -67134,7 +68061,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_AMP, anon_sym_CARET, anon_sym_LT_LT, - ACTIONS(1285), 19, + ACTIONS(1427), 19, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_COLON, @@ -67154,23 +68081,23 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, - [52001] = 5, + [52751] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(1817), 1, + ACTIONS(604), 1, anon_sym_COLON_EQ, - ACTIONS(1175), 3, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_RBRACK, - ACTIONS(1178), 4, + ACTIONS(634), 1, + anon_sym_EQ, + ACTIONS(272), 4, anon_sym_STAR, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1173), 27, + ACTIONS(303), 29, anon_sym_DOT, anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, anon_sym_GT_GT, anon_sym_if, anon_sym_async, @@ -67196,17 +68123,18 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [52048] = 3, + [52798] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1523), 5, + ACTIONS(1890), 1, + anon_sym_COLON_EQ, + ACTIONS(1235), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1521), 30, - sym__template_string_start, + ACTIONS(1230), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_COMMA, @@ -67236,61 +68164,18 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_is, anon_sym_COLON2, sym_type_conversion, - [52091] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(298), 3, - anon_sym_DOT, - anon_sym_LPAREN, - anon_sym_LBRACK, - ACTIONS(265), 13, - anon_sym_STAR, - anon_sym_GT_GT, - anon_sym_PIPE, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_SLASH, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, - ACTIONS(593), 19, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_COLON, - anon_sym_in, - anon_sym_RBRACK, - anon_sym_EQ, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_STAR_EQ, - anon_sym_SLASH_EQ, - anon_sym_AT_EQ, - anon_sym_SLASH_SLASH_EQ, - anon_sym_PERCENT_EQ, - anon_sym_STAR_STAR_EQ, - anon_sym_GT_GT_EQ, - anon_sym_LT_LT_EQ, - anon_sym_AMP_EQ, - anon_sym_CARET_EQ, - anon_sym_PIPE_EQ, - [52136] = 3, + [52843] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1527), 5, + ACTIONS(1540), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1525), 30, - sym__newline, - sym__string_start, + ACTIONS(1538), 30, + sym__template_string_start, anon_sym_DOT, - anon_sym_from, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_GT_GT, @@ -67300,6 +68185,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, + anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, @@ -67316,85 +68202,25 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - anon_sym_SEMI, - [52179] = 22, - ACTIONS(3), 1, - sym_comment, - ACTIONS(647), 1, - sym__string_start, - ACTIONS(649), 1, - sym__template_string_start, - ACTIONS(1851), 1, - sym_identifier, - ACTIONS(1853), 1, - anon_sym_LPAREN, - ACTIONS(1855), 1, - anon_sym_STAR, - ACTIONS(1861), 1, - anon_sym_DASH, - ACTIONS(1863), 1, - sym_match_wildcard_pattern, - ACTIONS(1865), 1, - anon_sym_LBRACK, - ACTIONS(1867), 1, - anon_sym_LBRACE, - ACTIONS(1869), 1, - sym_integer, - ACTIONS(1871), 1, - sym_float, - STATE(1039), 1, - sym_string, - STATE(1040), 1, - sym_template_string, - STATE(1680), 1, - sym_pattern_class_name, - STATE(1140), 2, - sym_concatenated_string, - sym_concatenated_template_string, - STATE(1184), 2, - sym__match_or_pattern, - sym_match_or_pattern, - STATE(1391), 2, - sym__match_pattern, - sym_match_as_pattern, - STATE(1456), 2, - sym__match_patterns, - sym_open_sequence_match_pattern, - STATE(1509), 2, - sym__match_maybe_star_pattern, - sym_match_star_pattern, - ACTIONS(1873), 3, - sym_true, - sym_false, - sym_none, - STATE(1142), 8, - sym__closed_pattern, - sym_match_literal_pattern, - sym_match_capture_pattern, - sym_match_value_pattern, - sym_match_group_pattern, - sym_match_sequence_pattern, - sym_match_mapping_pattern, - sym_match_class_pattern, - [52260] = 4, + anon_sym_COLON2, + sym_type_conversion, + [52886] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(655), 1, + ACTIONS(618), 1, anon_sym_COLON_EQ, - ACTIONS(265), 5, + ACTIONS(272), 5, anon_sym_STAR, - anon_sym_COLON, + anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(298), 29, + ACTIONS(303), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_GT_GT, anon_sym_if, - anon_sym_async, - anon_sym_for, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, @@ -67417,33 +68243,38 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [52305] = 5, + anon_sym_COLON2, + sym_type_conversion, + [52931] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(599), 1, - anon_sym_COLON_EQ, - ACTIONS(270), 3, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_RBRACK, - ACTIONS(265), 4, + ACTIONS(1828), 1, + anon_sym_DOT, + ACTIONS(1830), 1, + anon_sym_LPAREN, + ACTIONS(1842), 1, + anon_sym_LBRACK, + ACTIONS(1844), 1, + anon_sym_STAR_STAR, + STATE(979), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1713), 4, anon_sym_STAR, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(298), 27, - anon_sym_DOT, - anon_sym_LPAREN, + ACTIONS(1711), 25, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_as, anon_sym_GT_GT, anon_sym_if, - anon_sym_async, - anon_sym_for, + anon_sym_COLON, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, anon_sym_and, @@ -67459,19 +68290,19 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [52352] = 4, + [52984] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1881), 1, - anon_sym_COLON_EQ, - ACTIONS(1178), 5, + ACTIONS(1600), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1173), 29, + ACTIONS(1598), 29, + sym__newline, anon_sym_DOT, + anon_sym_from, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_GT_GT, @@ -67481,7 +68312,6 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, - anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, @@ -67498,19 +68328,20 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - anon_sym_COLON2, - sym_type_conversion, - [52397] = 3, + anon_sym_SEMI, + [53026] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1629), 5, + ACTIONS(1690), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1627), 29, + ACTIONS(1688), 29, + sym__newline, anon_sym_DOT, + anon_sym_from, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_GT_GT, @@ -67520,7 +68351,6 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, - anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, @@ -67537,21 +68367,18 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - anon_sym_COLON2, - sym_type_conversion, - [52439] = 3, + anon_sym_SEMI, + [53068] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1591), 5, + ACTIONS(1544), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1589), 29, - sym__newline, + ACTIONS(1542), 29, anon_sym_DOT, - anon_sym_from, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_GT_GT, @@ -67561,6 +68388,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, + anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, @@ -67577,17 +68405,18 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - anon_sym_SEMI, - [52481] = 3, + anon_sym_COLON2, + sym_type_conversion, + [53110] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1575), 5, + ACTIONS(1588), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1573), 29, + ACTIONS(1586), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_COMMA, @@ -67617,19 +68446,23 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_is, anon_sym_COLON2, sym_type_conversion, - [52523] = 3, + [53152] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1555), 5, + ACTIONS(1892), 1, + anon_sym_COLON_EQ, + ACTIONS(1235), 5, anon_sym_STAR, - anon_sym_EQ, + anon_sym_COLON, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1553), 29, + ACTIONS(1230), 28, anon_sym_DOT, anon_sym_LPAREN, + anon_sym_RPAREN, anon_sym_COMMA, + anon_sym_as, anon_sym_GT_GT, anon_sym_if, anon_sym_in, @@ -67637,7 +68470,6 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, - anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, @@ -67654,23 +68486,23 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - anon_sym_COLON2, - sym_type_conversion, - [52565] = 3, + [53196] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1272), 4, + ACTIONS(1232), 3, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_RBRACK, + ACTIONS(1235), 4, anon_sym_STAR, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1267), 30, + ACTIONS(1230), 27, anon_sym_DOT, anon_sym_LPAREN, - anon_sym_COMMA, anon_sym_GT_GT, anon_sym_if, - anon_sym_COLON, anon_sym_async, anon_sym_for, anon_sym_in, @@ -67678,7 +68510,6 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, - anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, @@ -67695,23 +68526,21 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [52607] = 3, + [53240] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1283), 4, + ACTIONS(1568), 5, anon_sym_STAR, + anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1278), 30, + ACTIONS(1566), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_GT_GT, anon_sym_if, - anon_sym_COLON, - anon_sym_async, - anon_sym_for, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, @@ -67734,55 +68563,132 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [52649] = 3, + anon_sym_COLON2, + sym_type_conversion, + [53282] = 21, ACTIONS(3), 1, sym_comment, - ACTIONS(1559), 5, + ACTIONS(654), 1, + sym__string_start, + ACTIONS(656), 1, + sym__template_string_start, + ACTIONS(1858), 1, + sym_identifier, + ACTIONS(1860), 1, + anon_sym_LPAREN, + ACTIONS(1862), 1, anon_sym_STAR, - anon_sym_EQ, - anon_sym_SLASH, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1557), 29, - anon_sym_DOT, + ACTIONS(1864), 1, + anon_sym_DASH, + ACTIONS(1866), 1, + sym_match_wildcard_pattern, + ACTIONS(1868), 1, + anon_sym_LBRACK, + ACTIONS(1870), 1, + anon_sym_LBRACE, + ACTIONS(1872), 1, + sym_integer, + ACTIONS(1874), 1, + sym_float, + ACTIONS(1894), 1, + anon_sym_RPAREN, + STATE(1035), 1, + sym_template_string, + STATE(1061), 1, + sym_string, + STATE(1714), 1, + sym_pattern_class_name, + STATE(1168), 2, + sym_concatenated_string, + sym_concatenated_template_string, + STATE(1215), 2, + sym__match_or_pattern, + sym_match_or_pattern, + ACTIONS(1876), 3, + sym_true, + sym_false, + sym_none, + STATE(1293), 4, + sym__match_pattern, + sym_match_as_pattern, + sym__match_maybe_star_pattern, + sym_match_star_pattern, + STATE(1139), 8, + sym__closed_pattern, + sym_match_literal_pattern, + sym_match_capture_pattern, + sym_match_value_pattern, + sym_match_group_pattern, + sym_match_sequence_pattern, + sym_match_mapping_pattern, + sym_match_class_pattern, + [53360] = 21, + ACTIONS(3), 1, + sym_comment, + ACTIONS(654), 1, + sym__string_start, + ACTIONS(656), 1, + sym__template_string_start, + ACTIONS(1858), 1, + sym_identifier, + ACTIONS(1860), 1, anon_sym_LPAREN, - anon_sym_COMMA, - anon_sym_GT_GT, - anon_sym_if, - anon_sym_in, - anon_sym_PIPE, + ACTIONS(1862), 1, + anon_sym_STAR, + ACTIONS(1864), 1, anon_sym_DASH, - anon_sym_PLUS, + ACTIONS(1866), 1, + sym_match_wildcard_pattern, + ACTIONS(1868), 1, anon_sym_LBRACK, - anon_sym_RBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_not, - anon_sym_and, - anon_sym_or, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - anon_sym_is, - anon_sym_COLON2, - sym_type_conversion, - [52691] = 3, + ACTIONS(1870), 1, + anon_sym_LBRACE, + ACTIONS(1872), 1, + sym_integer, + ACTIONS(1874), 1, + sym_float, + ACTIONS(1894), 1, + anon_sym_RBRACK, + STATE(1035), 1, + sym_template_string, + STATE(1061), 1, + sym_string, + STATE(1714), 1, + sym_pattern_class_name, + STATE(1168), 2, + sym_concatenated_string, + sym_concatenated_template_string, + STATE(1215), 2, + sym__match_or_pattern, + sym_match_or_pattern, + ACTIONS(1876), 3, + sym_true, + sym_false, + sym_none, + STATE(1293), 4, + sym__match_pattern, + sym_match_as_pattern, + sym__match_maybe_star_pattern, + sym_match_star_pattern, + STATE(1139), 8, + sym__closed_pattern, + sym_match_literal_pattern, + sym_match_capture_pattern, + sym_match_value_pattern, + sym_match_group_pattern, + sym_match_sequence_pattern, + sym_match_mapping_pattern, + sym_match_class_pattern, + [53438] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1563), 5, + ACTIONS(1572), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1561), 29, + ACTIONS(1570), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_COMMA, @@ -67812,27 +68718,30 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_is, anon_sym_COLON2, sym_type_conversion, - [52733] = 3, + [53480] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1567), 5, + ACTIONS(1422), 3, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_RBRACK, + ACTIONS(1425), 4, anon_sym_STAR, - anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1565), 29, + ACTIONS(1420), 27, anon_sym_DOT, anon_sym_LPAREN, - anon_sym_COMMA, anon_sym_GT_GT, anon_sym_if, + anon_sym_async, + anon_sym_for, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, - anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, @@ -67849,18 +68758,16 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - anon_sym_COLON2, - sym_type_conversion, - [52775] = 3, + [53524] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1571), 5, + ACTIONS(1235), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1569), 29, + ACTIONS(1230), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_COMMA, @@ -67890,19 +68797,23 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_is, anon_sym_COLON2, sym_type_conversion, - [52817] = 3, + [53566] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1001), 5, + ACTIONS(642), 1, + anon_sym_COLON_EQ, + ACTIONS(272), 5, anon_sym_STAR, - anon_sym_EQ, + anon_sym_COLON, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(999), 29, + ACTIONS(303), 28, anon_sym_DOT, anon_sym_LPAREN, + anon_sym_RPAREN, anon_sym_COMMA, + anon_sym_as, anon_sym_GT_GT, anon_sym_if, anon_sym_in, @@ -67910,7 +68821,6 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, - anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, @@ -67927,18 +68837,16 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - anon_sym_COLON2, - sym_type_conversion, - [52859] = 3, + [53610] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1535), 5, + ACTIONS(1568), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1533), 29, + ACTIONS(1566), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_COMMA, @@ -67968,16 +68876,16 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_is, anon_sym_COLON2, sym_type_conversion, - [52901] = 3, + [53652] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1685), 5, + ACTIONS(1694), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1683), 29, + ACTIONS(1692), 29, sym__newline, anon_sym_DOT, anon_sym_from, @@ -68007,17 +68915,19 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LT_GT, anon_sym_is, anon_sym_SEMI, - [52943] = 3, + [53694] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1633), 5, + ACTIONS(1544), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1631), 29, + ACTIONS(1542), 29, + sym__newline, anon_sym_DOT, + anon_sym_from, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_GT_GT, @@ -68027,7 +68937,6 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, - anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, @@ -68044,68 +68953,31 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - anon_sym_COLON2, - sym_type_conversion, - [52985] = 3, + anon_sym_SEMI, + [53736] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1665), 5, - anon_sym_STAR, - anon_sym_EQ, - anon_sym_SLASH, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1663), 29, - anon_sym_DOT, - anon_sym_LPAREN, + ACTIONS(1465), 3, + anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_GT_GT, - anon_sym_if, - anon_sym_in, - anon_sym_PIPE, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_RBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_not, - anon_sym_and, - anon_sym_or, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - anon_sym_is, - anon_sym_COLON2, - sym_type_conversion, - [53027] = 3, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1669), 5, + anon_sym_RBRACK, + ACTIONS(1468), 4, anon_sym_STAR, - anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1667), 29, + ACTIONS(1463), 27, anon_sym_DOT, anon_sym_LPAREN, - anon_sym_COMMA, anon_sym_GT_GT, anon_sym_if, + anon_sym_async, + anon_sym_for, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, - anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, @@ -68122,19 +68994,19 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - anon_sym_COLON2, - sym_type_conversion, - [53069] = 3, + [53780] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1673), 5, + ACTIONS(1568), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1671), 29, + ACTIONS(1566), 29, + sym__newline, anon_sym_DOT, + anon_sym_from, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_GT_GT, @@ -68144,7 +69016,6 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, - anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, @@ -68161,19 +69032,20 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - anon_sym_COLON2, - sym_type_conversion, - [53111] = 3, + anon_sym_SEMI, + [53822] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1677), 5, + ACTIONS(1638), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1675), 29, + ACTIONS(1636), 29, + sym__newline, anon_sym_DOT, + anon_sym_from, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_GT_GT, @@ -68183,7 +69055,6 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, - anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, @@ -68200,18 +69071,17 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - anon_sym_COLON2, - sym_type_conversion, - [53153] = 3, + anon_sym_SEMI, + [53864] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1681), 5, + ACTIONS(272), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1679), 29, + ACTIONS(303), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_COMMA, @@ -68241,17 +69111,19 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_is, anon_sym_COLON2, sym_type_conversion, - [53195] = 3, + [53906] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1673), 5, + ACTIONS(1642), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1671), 29, + ACTIONS(1640), 29, + sym__newline, anon_sym_DOT, + anon_sym_from, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_GT_GT, @@ -68261,7 +69133,6 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, - anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, @@ -68278,18 +69149,17 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - anon_sym_COLON2, - sym_type_conversion, - [53237] = 3, + anon_sym_SEMI, + [53948] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1559), 5, + ACTIONS(1572), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1557), 29, + ACTIONS(1570), 29, sym__newline, anon_sym_DOT, anon_sym_from, @@ -68319,56 +69189,77 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LT_GT, anon_sym_is, anon_sym_SEMI, - [53279] = 3, + [53990] = 22, ACTIONS(3), 1, sym_comment, - ACTIONS(1637), 5, - anon_sym_STAR, - anon_sym_EQ, - anon_sym_SLASH, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1635), 29, - anon_sym_DOT, + ACTIONS(654), 1, + sym__string_start, + ACTIONS(656), 1, + sym__template_string_start, + ACTIONS(1858), 1, + sym_identifier, + ACTIONS(1860), 1, anon_sym_LPAREN, - anon_sym_COMMA, - anon_sym_GT_GT, - anon_sym_if, - anon_sym_in, - anon_sym_PIPE, + ACTIONS(1862), 1, + anon_sym_STAR, + ACTIONS(1864), 1, anon_sym_DASH, - anon_sym_PLUS, + ACTIONS(1866), 1, + sym_match_wildcard_pattern, + ACTIONS(1868), 1, anon_sym_LBRACK, - anon_sym_RBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_not, - anon_sym_and, - anon_sym_or, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - anon_sym_is, - anon_sym_COLON2, - sym_type_conversion, - [53321] = 3, + ACTIONS(1870), 1, + anon_sym_LBRACE, + ACTIONS(1872), 1, + sym_integer, + ACTIONS(1874), 1, + sym_float, + ACTIONS(1896), 1, + anon_sym_RPAREN, + STATE(1035), 1, + sym_template_string, + STATE(1061), 1, + sym_string, + STATE(1714), 1, + sym_pattern_class_name, + STATE(1168), 2, + sym_concatenated_string, + sym_concatenated_template_string, + STATE(1215), 2, + sym__match_or_pattern, + sym_match_or_pattern, + STATE(1540), 2, + sym__match_pattern, + sym_match_as_pattern, + STATE(1541), 2, + sym__match_maybe_star_pattern, + sym_match_star_pattern, + ACTIONS(1876), 3, + sym_true, + sym_false, + sym_none, + STATE(1139), 8, + sym__closed_pattern, + sym_match_literal_pattern, + sym_match_capture_pattern, + sym_match_value_pattern, + sym_match_group_pattern, + sym_match_sequence_pattern, + sym_match_mapping_pattern, + sym_match_class_pattern, + [54070] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1539), 5, + ACTIONS(1552), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1537), 29, + ACTIONS(1550), 29, + sym__newline, anon_sym_DOT, + anon_sym_from, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_GT_GT, @@ -68378,7 +69269,6 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, - anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, @@ -68395,18 +69285,17 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - anon_sym_COLON2, - sym_type_conversion, - [53363] = 3, + anon_sym_SEMI, + [54112] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1547), 5, + ACTIONS(1564), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1545), 29, + ACTIONS(1562), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_COMMA, @@ -68436,17 +69325,19 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_is, anon_sym_COLON2, sym_type_conversion, - [53405] = 3, + [54154] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1015), 5, + ACTIONS(1568), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1013), 29, + ACTIONS(1566), 29, + sym__newline, anon_sym_DOT, + anon_sym_from, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_GT_GT, @@ -68456,7 +69347,6 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, - anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, @@ -68473,18 +69363,17 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - anon_sym_COLON2, - sym_type_conversion, - [53447] = 3, + anon_sym_SEMI, + [54196] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1555), 5, + ACTIONS(1686), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1553), 29, + ACTIONS(1684), 29, sym__newline, anon_sym_DOT, anon_sym_from, @@ -68514,16 +69403,16 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LT_GT, anon_sym_is, anon_sym_SEMI, - [53489] = 3, + [54238] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1583), 5, + ACTIONS(1556), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1581), 29, + ACTIONS(1554), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_COMMA, @@ -68553,17 +69442,19 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_is, anon_sym_COLON2, sym_type_conversion, - [53531] = 3, + [54280] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1583), 5, + ACTIONS(1548), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1581), 29, + ACTIONS(1546), 29, + sym__newline, anon_sym_DOT, + anon_sym_from, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_GT_GT, @@ -68573,7 +69464,6 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, - anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, @@ -68590,19 +69480,20 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - anon_sym_COLON2, - sym_type_conversion, - [53573] = 3, + anon_sym_SEMI, + [54322] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1591), 5, + ACTIONS(1564), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1589), 29, + ACTIONS(1562), 29, + sym__newline, anon_sym_DOT, + anon_sym_from, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_GT_GT, @@ -68612,7 +69503,6 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, - anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, @@ -68629,19 +69519,20 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - anon_sym_COLON2, - sym_type_conversion, - [53615] = 3, + anon_sym_SEMI, + [54364] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1579), 5, + ACTIONS(1560), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1577), 29, + ACTIONS(1558), 29, + sym__newline, anon_sym_DOT, + anon_sym_from, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_GT_GT, @@ -68651,7 +69542,6 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, - anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, @@ -68668,19 +69558,20 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - anon_sym_COLON2, - sym_type_conversion, - [53657] = 3, + anon_sym_SEMI, + [54406] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1685), 5, + ACTIONS(1646), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1683), 29, + ACTIONS(1644), 29, + sym__newline, anon_sym_DOT, + anon_sym_from, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_GT_GT, @@ -68690,7 +69581,6 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, - anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, @@ -68707,19 +69597,77 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - anon_sym_COLON2, - sym_type_conversion, - [53699] = 3, + anon_sym_SEMI, + [54448] = 21, ACTIONS(3), 1, sym_comment, - ACTIONS(1579), 5, + ACTIONS(654), 1, + sym__string_start, + ACTIONS(656), 1, + sym__template_string_start, + ACTIONS(1858), 1, + sym_identifier, + ACTIONS(1860), 1, + anon_sym_LPAREN, + ACTIONS(1862), 1, + anon_sym_STAR, + ACTIONS(1864), 1, + anon_sym_DASH, + ACTIONS(1866), 1, + sym_match_wildcard_pattern, + ACTIONS(1868), 1, + anon_sym_LBRACK, + ACTIONS(1870), 1, + anon_sym_LBRACE, + ACTIONS(1872), 1, + sym_integer, + ACTIONS(1874), 1, + sym_float, + ACTIONS(1896), 1, + anon_sym_RBRACK, + STATE(1035), 1, + sym_template_string, + STATE(1061), 1, + sym_string, + STATE(1714), 1, + sym_pattern_class_name, + STATE(1168), 2, + sym_concatenated_string, + sym_concatenated_template_string, + STATE(1215), 2, + sym__match_or_pattern, + sym_match_or_pattern, + ACTIONS(1876), 3, + sym_true, + sym_false, + sym_none, + STATE(1472), 4, + sym__match_pattern, + sym_match_as_pattern, + sym__match_maybe_star_pattern, + sym_match_star_pattern, + STATE(1139), 8, + sym__closed_pattern, + sym_match_literal_pattern, + sym_match_capture_pattern, + sym_match_value_pattern, + sym_match_group_pattern, + sym_match_sequence_pattern, + sym_match_mapping_pattern, + sym_match_class_pattern, + [54526] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1698), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1577), 29, + ACTIONS(1696), 29, + sym__newline, anon_sym_DOT, + anon_sym_from, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_GT_GT, @@ -68729,7 +69677,6 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, - anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, @@ -68746,19 +69693,20 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - anon_sym_COLON2, - sym_type_conversion, - [53741] = 3, + anon_sym_SEMI, + [54568] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1543), 5, + ACTIONS(1584), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1541), 29, + ACTIONS(1582), 29, + sym__newline, anon_sym_DOT, + anon_sym_from, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_GT_GT, @@ -68768,7 +69716,6 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, - anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, @@ -68785,19 +69732,20 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - anon_sym_COLON2, - sym_type_conversion, - [53783] = 3, + anon_sym_SEMI, + [54610] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1551), 5, + ACTIONS(1576), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1549), 29, + ACTIONS(1574), 29, + sym__newline, anon_sym_DOT, + anon_sym_from, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_GT_GT, @@ -68807,7 +69755,6 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, - anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, @@ -68824,18 +69771,17 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - anon_sym_COLON2, - sym_type_conversion, - [53825] = 3, + anon_sym_SEMI, + [54652] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1543), 5, + ACTIONS(1698), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1541), 29, + ACTIONS(1696), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_COMMA, @@ -68865,16 +69811,16 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_is, anon_sym_COLON2, sym_type_conversion, - [53867] = 3, + [54694] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1575), 5, + ACTIONS(1425), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1573), 29, + ACTIONS(1420), 29, sym__newline, anon_sym_DOT, anon_sym_from, @@ -68904,16 +69850,16 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LT_GT, anon_sym_is, anon_sym_SEMI, - [53909] = 3, + [54736] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1567), 5, + ACTIONS(1468), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1565), 29, + ACTIONS(1463), 29, sym__newline, anon_sym_DOT, anon_sym_from, @@ -68943,19 +69889,17 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LT_GT, anon_sym_is, anon_sym_SEMI, - [53951] = 3, + [54778] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1579), 5, + ACTIONS(1556), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1577), 29, - sym__newline, + ACTIONS(1554), 29, anon_sym_DOT, - anon_sym_from, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_GT_GT, @@ -68965,6 +69909,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, + anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, @@ -68981,20 +69926,19 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - anon_sym_SEMI, - [53993] = 3, + anon_sym_COLON2, + sym_type_conversion, + [54820] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1689), 5, + ACTIONS(1690), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1687), 29, - sym__newline, + ACTIONS(1688), 29, anon_sym_DOT, - anon_sym_from, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_GT_GT, @@ -69004,6 +69948,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, + anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, @@ -69020,20 +69965,19 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - anon_sym_SEMI, - [54035] = 3, + anon_sym_COLON2, + sym_type_conversion, + [54862] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1272), 5, + ACTIONS(1600), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1267), 29, - sym__newline, + ACTIONS(1598), 29, anon_sym_DOT, - anon_sym_from, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_GT_GT, @@ -69043,6 +69987,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, + anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, @@ -69059,22 +70004,25 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - anon_sym_SEMI, - [54077] = 3, + anon_sym_COLON2, + sym_type_conversion, + [54904] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1689), 5, + ACTIONS(1425), 4, anon_sym_STAR, - anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1687), 29, + ACTIONS(1420), 30, anon_sym_DOT, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_GT_GT, anon_sym_if, + anon_sym_COLON, + anon_sym_async, + anon_sym_for, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, @@ -69097,30 +70045,29 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - anon_sym_COLON2, - sym_type_conversion, - [54119] = 3, + [54946] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1633), 5, + ACTIONS(1468), 4, anon_sym_STAR, - anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1631), 29, - sym__newline, + ACTIONS(1463), 30, anon_sym_DOT, - anon_sym_from, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_GT_GT, anon_sym_if, + anon_sym_COLON, + anon_sym_async, + anon_sym_for, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, + anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, @@ -69137,20 +70084,17 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - anon_sym_SEMI, - [54161] = 3, + [54988] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1178), 5, + ACTIONS(1638), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1173), 29, - sym__newline, + ACTIONS(1636), 29, anon_sym_DOT, - anon_sym_from, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_GT_GT, @@ -69160,6 +70104,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, + anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, @@ -69176,20 +70121,19 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - anon_sym_SEMI, - [54203] = 3, + anon_sym_COLON2, + sym_type_conversion, + [55030] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1583), 5, + ACTIONS(1642), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1581), 29, - sym__newline, + ACTIONS(1640), 29, anon_sym_DOT, - anon_sym_from, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_GT_GT, @@ -69199,6 +70143,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, + anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, @@ -69215,20 +70160,19 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - anon_sym_SEMI, - [54245] = 3, + anon_sym_COLON2, + sym_type_conversion, + [55072] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1665), 5, + ACTIONS(1646), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1663), 29, - sym__newline, + ACTIONS(1644), 29, anon_sym_DOT, - anon_sym_from, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_GT_GT, @@ -69238,6 +70182,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, + anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, @@ -69254,24 +70199,21 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - anon_sym_SEMI, - [54287] = 4, + anon_sym_COLON2, + sym_type_conversion, + [55114] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(635), 1, - anon_sym_COLON_EQ, - ACTIONS(265), 5, + ACTIONS(1650), 5, anon_sym_STAR, - anon_sym_COLON, + anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(298), 28, + ACTIONS(1648), 29, anon_sym_DOT, anon_sym_LPAREN, - anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_as, anon_sym_GT_GT, anon_sym_if, anon_sym_in, @@ -69279,6 +70221,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, + anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, @@ -69295,23 +70238,23 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [54331] = 4, + anon_sym_COLON2, + sym_type_conversion, + [55156] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1883), 1, - anon_sym_COLON_EQ, - ACTIONS(1178), 5, + ACTIONS(1580), 5, anon_sym_STAR, - anon_sym_COLON, + anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1173), 28, + ACTIONS(1578), 29, + sym__newline, anon_sym_DOT, + anon_sym_from, anon_sym_LPAREN, - anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_as, anon_sym_GT_GT, anon_sym_if, anon_sym_in, @@ -69335,19 +70278,18 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [54375] = 3, + anon_sym_SEMI, + [55198] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1669), 5, + ACTIONS(1064), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1667), 29, - sym__newline, + ACTIONS(1062), 29, anon_sym_DOT, - anon_sym_from, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_GT_GT, @@ -69357,6 +70299,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, + anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, @@ -69373,20 +70316,19 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - anon_sym_SEMI, - [54417] = 3, + anon_sym_COLON2, + sym_type_conversion, + [55240] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1543), 5, + ACTIONS(1694), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1541), 29, - sym__newline, + ACTIONS(1692), 29, anon_sym_DOT, - anon_sym_from, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_GT_GT, @@ -69396,6 +70338,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, + anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, @@ -69412,26 +70355,25 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - anon_sym_SEMI, - [54459] = 4, + anon_sym_COLON2, + sym_type_conversion, + [55282] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1175), 3, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_RBRACK, - ACTIONS(1178), 4, + ACTIONS(1650), 5, anon_sym_STAR, + anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1173), 27, + ACTIONS(1648), 29, + sym__newline, anon_sym_DOT, + anon_sym_from, anon_sym_LPAREN, + anon_sym_COMMA, anon_sym_GT_GT, anon_sym_if, - anon_sym_async, - anon_sym_for, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, @@ -69453,16 +70395,17 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [54503] = 3, + anon_sym_SEMI, + [55324] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1551), 5, + ACTIONS(1596), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1549), 29, + ACTIONS(1594), 29, sym__newline, anon_sym_DOT, anon_sym_from, @@ -69492,16 +70435,16 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LT_GT, anon_sym_is, anon_sym_SEMI, - [54545] = 3, + [55366] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1543), 5, + ACTIONS(1235), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1541), 29, + ACTIONS(1230), 29, sym__newline, anon_sym_DOT, anon_sym_from, @@ -69531,16 +70474,16 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LT_GT, anon_sym_is, anon_sym_SEMI, - [54587] = 3, + [55408] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1283), 5, + ACTIONS(1682), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1278), 29, + ACTIONS(1680), 29, sym__newline, anon_sym_DOT, anon_sym_from, @@ -69570,25 +70513,23 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LT_GT, anon_sym_is, anon_sym_SEMI, - [54629] = 4, + [55450] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1269), 3, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_RBRACK, - ACTIONS(1272), 4, + ACTIONS(1588), 5, anon_sym_STAR, + anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1267), 27, + ACTIONS(1586), 29, + sym__newline, anon_sym_DOT, + anon_sym_from, anon_sym_LPAREN, + anon_sym_COMMA, anon_sym_GT_GT, anon_sym_if, - anon_sym_async, - anon_sym_for, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, @@ -69610,16 +70551,131 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [54673] = 3, + anon_sym_SEMI, + [55492] = 21, + ACTIONS(3), 1, + sym_comment, + ACTIONS(654), 1, + sym__string_start, + ACTIONS(656), 1, + sym__template_string_start, + ACTIONS(1858), 1, + sym_identifier, + ACTIONS(1860), 1, + anon_sym_LPAREN, + ACTIONS(1862), 1, + anon_sym_STAR, + ACTIONS(1864), 1, + anon_sym_DASH, + ACTIONS(1866), 1, + sym_match_wildcard_pattern, + ACTIONS(1868), 1, + anon_sym_LBRACK, + ACTIONS(1870), 1, + anon_sym_LBRACE, + ACTIONS(1872), 1, + sym_integer, + ACTIONS(1874), 1, + sym_float, + ACTIONS(1898), 1, + anon_sym_RPAREN, + STATE(1035), 1, + sym_template_string, + STATE(1061), 1, + sym_string, + STATE(1714), 1, + sym_pattern_class_name, + STATE(1168), 2, + sym_concatenated_string, + sym_concatenated_template_string, + STATE(1215), 2, + sym__match_or_pattern, + sym_match_or_pattern, + ACTIONS(1876), 3, + sym_true, + sym_false, + sym_none, + STATE(1293), 4, + sym__match_pattern, + sym_match_as_pattern, + sym__match_maybe_star_pattern, + sym_match_star_pattern, + STATE(1139), 8, + sym__closed_pattern, + sym_match_literal_pattern, + sym_match_capture_pattern, + sym_match_value_pattern, + sym_match_group_pattern, + sym_match_sequence_pattern, + sym_match_mapping_pattern, + sym_match_class_pattern, + [55570] = 21, + ACTIONS(3), 1, + sym_comment, + ACTIONS(654), 1, + sym__string_start, + ACTIONS(656), 1, + sym__template_string_start, + ACTIONS(1858), 1, + sym_identifier, + ACTIONS(1860), 1, + anon_sym_LPAREN, + ACTIONS(1862), 1, + anon_sym_STAR, + ACTIONS(1864), 1, + anon_sym_DASH, + ACTIONS(1866), 1, + sym_match_wildcard_pattern, + ACTIONS(1868), 1, + anon_sym_LBRACK, + ACTIONS(1870), 1, + anon_sym_LBRACE, + ACTIONS(1872), 1, + sym_integer, + ACTIONS(1874), 1, + sym_float, + ACTIONS(1898), 1, + anon_sym_RBRACK, + STATE(1035), 1, + sym_template_string, + STATE(1061), 1, + sym_string, + STATE(1714), 1, + sym_pattern_class_name, + STATE(1168), 2, + sym_concatenated_string, + sym_concatenated_template_string, + STATE(1215), 2, + sym__match_or_pattern, + sym_match_or_pattern, + ACTIONS(1876), 3, + sym_true, + sym_false, + sym_none, + STATE(1293), 4, + sym__match_pattern, + sym_match_as_pattern, + sym__match_maybe_star_pattern, + sym_match_star_pattern, + STATE(1139), 8, + sym__closed_pattern, + sym_match_literal_pattern, + sym_match_capture_pattern, + sym_match_value_pattern, + sym_match_group_pattern, + sym_match_sequence_pattern, + sym_match_mapping_pattern, + sym_match_class_pattern, + [55648] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1673), 5, + ACTIONS(1580), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1671), 29, + ACTIONS(1578), 29, sym__newline, anon_sym_DOT, anon_sym_from, @@ -69649,16 +70705,16 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LT_GT, anon_sym_is, anon_sym_SEMI, - [54715] = 3, + [55690] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1677), 5, + ACTIONS(1556), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1675), 29, + ACTIONS(1554), 29, sym__newline, anon_sym_DOT, anon_sym_from, @@ -69688,19 +70744,17 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LT_GT, anon_sym_is, anon_sym_SEMI, - [54757] = 3, + [55732] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1681), 5, + ACTIONS(1584), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1679), 29, - sym__newline, + ACTIONS(1582), 29, anon_sym_DOT, - anon_sym_from, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_GT_GT, @@ -69710,6 +70764,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, + anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, @@ -69726,17 +70781,18 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - anon_sym_SEMI, - [54799] = 3, + anon_sym_COLON2, + sym_type_conversion, + [55774] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1673), 5, + ACTIONS(1592), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1671), 29, + ACTIONS(1590), 29, sym__newline, anon_sym_DOT, anon_sym_from, @@ -69766,16 +70822,16 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LT_GT, anon_sym_is, anon_sym_SEMI, - [54841] = 3, + [55816] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1178), 5, + ACTIONS(1592), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1173), 29, + ACTIONS(1590), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_COMMA, @@ -69805,30 +70861,27 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_is, anon_sym_COLON2, sym_type_conversion, - [54883] = 4, + [55858] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1280), 3, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_RBRACK, - ACTIONS(1283), 4, + ACTIONS(1686), 5, anon_sym_STAR, + anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1278), 27, + ACTIONS(1684), 29, anon_sym_DOT, anon_sym_LPAREN, + anon_sym_COMMA, anon_sym_GT_GT, anon_sym_if, - anon_sym_async, - anon_sym_for, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, + anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, @@ -69845,19 +70898,19 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [54927] = 3, + anon_sym_COLON2, + sym_type_conversion, + [55900] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(265), 5, + ACTIONS(1548), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(298), 29, - sym__newline, + ACTIONS(1546), 29, anon_sym_DOT, - anon_sym_from, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_GT_GT, @@ -69867,6 +70920,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, + anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, @@ -69883,134 +70937,19 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - anon_sym_SEMI, - [54969] = 21, - ACTIONS(3), 1, - sym_comment, - ACTIONS(647), 1, - sym__string_start, - ACTIONS(649), 1, - sym__template_string_start, - ACTIONS(1851), 1, - sym_identifier, - ACTIONS(1853), 1, - anon_sym_LPAREN, - ACTIONS(1855), 1, - anon_sym_STAR, - ACTIONS(1861), 1, - anon_sym_DASH, - ACTIONS(1863), 1, - sym_match_wildcard_pattern, - ACTIONS(1865), 1, - anon_sym_LBRACK, - ACTIONS(1867), 1, - anon_sym_LBRACE, - ACTIONS(1869), 1, - sym_integer, - ACTIONS(1871), 1, - sym_float, - ACTIONS(1885), 1, - anon_sym_RPAREN, - STATE(1039), 1, - sym_string, - STATE(1040), 1, - sym_template_string, - STATE(1680), 1, - sym_pattern_class_name, - STATE(1140), 2, - sym_concatenated_string, - sym_concatenated_template_string, - STATE(1184), 2, - sym__match_or_pattern, - sym_match_or_pattern, - ACTIONS(1873), 3, - sym_true, - sym_false, - sym_none, - STATE(1277), 4, - sym__match_pattern, - sym_match_as_pattern, - sym__match_maybe_star_pattern, - sym_match_star_pattern, - STATE(1142), 8, - sym__closed_pattern, - sym_match_literal_pattern, - sym_match_capture_pattern, - sym_match_value_pattern, - sym_match_group_pattern, - sym_match_sequence_pattern, - sym_match_mapping_pattern, - sym_match_class_pattern, - [55047] = 21, - ACTIONS(3), 1, - sym_comment, - ACTIONS(647), 1, - sym__string_start, - ACTIONS(649), 1, - sym__template_string_start, - ACTIONS(1851), 1, - sym_identifier, - ACTIONS(1853), 1, - anon_sym_LPAREN, - ACTIONS(1855), 1, - anon_sym_STAR, - ACTIONS(1861), 1, - anon_sym_DASH, - ACTIONS(1863), 1, - sym_match_wildcard_pattern, - ACTIONS(1865), 1, - anon_sym_LBRACK, - ACTIONS(1867), 1, - anon_sym_LBRACE, - ACTIONS(1869), 1, - sym_integer, - ACTIONS(1871), 1, - sym_float, - ACTIONS(1885), 1, - anon_sym_RBRACK, - STATE(1039), 1, - sym_string, - STATE(1040), 1, - sym_template_string, - STATE(1680), 1, - sym_pattern_class_name, - STATE(1140), 2, - sym_concatenated_string, - sym_concatenated_template_string, - STATE(1184), 2, - sym__match_or_pattern, - sym_match_or_pattern, - ACTIONS(1873), 3, - sym_true, - sym_false, - sym_none, - STATE(1277), 4, - sym__match_pattern, - sym_match_as_pattern, - sym__match_maybe_star_pattern, - sym_match_star_pattern, - STATE(1142), 8, - sym__closed_pattern, - sym_match_literal_pattern, - sym_match_capture_pattern, - sym_match_value_pattern, - sym_match_group_pattern, - sym_match_sequence_pattern, - sym_match_mapping_pattern, - sym_match_class_pattern, - [55125] = 3, + anon_sym_COLON2, + sym_type_conversion, + [55942] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1637), 5, + ACTIONS(1580), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1635), 29, - sym__newline, + ACTIONS(1578), 29, anon_sym_DOT, - anon_sym_from, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_GT_GT, @@ -70020,6 +70959,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, + anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, @@ -70036,20 +70976,19 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - anon_sym_SEMI, - [55167] = 3, + anon_sym_COLON2, + sym_type_conversion, + [55984] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1539), 5, + ACTIONS(1678), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1537), 29, - sym__newline, + ACTIONS(1676), 29, anon_sym_DOT, - anon_sym_from, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_GT_GT, @@ -70059,6 +70998,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, + anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, @@ -70075,20 +71015,19 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - anon_sym_SEMI, - [55209] = 3, + anon_sym_COLON2, + sym_type_conversion, + [56026] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1535), 5, + ACTIONS(1682), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1533), 29, - sym__newline, + ACTIONS(1680), 29, anon_sym_DOT, - anon_sym_from, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_GT_GT, @@ -70098,6 +71037,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, + anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, @@ -70114,249 +71054,19 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - anon_sym_SEMI, - [55251] = 22, - ACTIONS(3), 1, - sym_comment, - ACTIONS(647), 1, - sym__string_start, - ACTIONS(649), 1, - sym__template_string_start, - ACTIONS(1851), 1, - sym_identifier, - ACTIONS(1853), 1, - anon_sym_LPAREN, - ACTIONS(1855), 1, - anon_sym_STAR, - ACTIONS(1861), 1, - anon_sym_DASH, - ACTIONS(1863), 1, - sym_match_wildcard_pattern, - ACTIONS(1865), 1, - anon_sym_LBRACK, - ACTIONS(1867), 1, - anon_sym_LBRACE, - ACTIONS(1869), 1, - sym_integer, - ACTIONS(1871), 1, - sym_float, - ACTIONS(1887), 1, - anon_sym_RPAREN, - STATE(1039), 1, - sym_string, - STATE(1040), 1, - sym_template_string, - STATE(1680), 1, - sym_pattern_class_name, - STATE(1140), 2, - sym_concatenated_string, - sym_concatenated_template_string, - STATE(1184), 2, - sym__match_or_pattern, - sym_match_or_pattern, - STATE(1553), 2, - sym__match_pattern, - sym_match_as_pattern, - STATE(1556), 2, - sym__match_maybe_star_pattern, - sym_match_star_pattern, - ACTIONS(1873), 3, - sym_true, - sym_false, - sym_none, - STATE(1142), 8, - sym__closed_pattern, - sym_match_literal_pattern, - sym_match_capture_pattern, - sym_match_value_pattern, - sym_match_group_pattern, - sym_match_sequence_pattern, - sym_match_mapping_pattern, - sym_match_class_pattern, - [55331] = 21, - ACTIONS(3), 1, - sym_comment, - ACTIONS(647), 1, - sym__string_start, - ACTIONS(649), 1, - sym__template_string_start, - ACTIONS(1851), 1, - sym_identifier, - ACTIONS(1853), 1, - anon_sym_LPAREN, - ACTIONS(1855), 1, - anon_sym_STAR, - ACTIONS(1861), 1, - anon_sym_DASH, - ACTIONS(1863), 1, - sym_match_wildcard_pattern, - ACTIONS(1865), 1, - anon_sym_LBRACK, - ACTIONS(1867), 1, - anon_sym_LBRACE, - ACTIONS(1869), 1, - sym_integer, - ACTIONS(1871), 1, - sym_float, - ACTIONS(1887), 1, - anon_sym_RBRACK, - STATE(1039), 1, - sym_string, - STATE(1040), 1, - sym_template_string, - STATE(1680), 1, - sym_pattern_class_name, - STATE(1140), 2, - sym_concatenated_string, - sym_concatenated_template_string, - STATE(1184), 2, - sym__match_or_pattern, - sym_match_or_pattern, - ACTIONS(1873), 3, - sym_true, - sym_false, - sym_none, - STATE(1469), 4, - sym__match_pattern, - sym_match_as_pattern, - sym__match_maybe_star_pattern, - sym_match_star_pattern, - STATE(1142), 8, - sym__closed_pattern, - sym_match_literal_pattern, - sym_match_capture_pattern, - sym_match_value_pattern, - sym_match_group_pattern, - sym_match_sequence_pattern, - sym_match_mapping_pattern, - sym_match_class_pattern, - [55409] = 21, - ACTIONS(3), 1, - sym_comment, - ACTIONS(647), 1, - sym__string_start, - ACTIONS(649), 1, - sym__template_string_start, - ACTIONS(1851), 1, - sym_identifier, - ACTIONS(1853), 1, - anon_sym_LPAREN, - ACTIONS(1855), 1, - anon_sym_STAR, - ACTIONS(1861), 1, - anon_sym_DASH, - ACTIONS(1863), 1, - sym_match_wildcard_pattern, - ACTIONS(1865), 1, - anon_sym_LBRACK, - ACTIONS(1867), 1, - anon_sym_LBRACE, - ACTIONS(1869), 1, - sym_integer, - ACTIONS(1871), 1, - sym_float, - ACTIONS(1889), 1, - anon_sym_RPAREN, - STATE(1039), 1, - sym_string, - STATE(1040), 1, - sym_template_string, - STATE(1680), 1, - sym_pattern_class_name, - STATE(1140), 2, - sym_concatenated_string, - sym_concatenated_template_string, - STATE(1184), 2, - sym__match_or_pattern, - sym_match_or_pattern, - ACTIONS(1873), 3, - sym_true, - sym_false, - sym_none, - STATE(1277), 4, - sym__match_pattern, - sym_match_as_pattern, - sym__match_maybe_star_pattern, - sym_match_star_pattern, - STATE(1142), 8, - sym__closed_pattern, - sym_match_literal_pattern, - sym_match_capture_pattern, - sym_match_value_pattern, - sym_match_group_pattern, - sym_match_sequence_pattern, - sym_match_mapping_pattern, - sym_match_class_pattern, - [55487] = 21, - ACTIONS(3), 1, - sym_comment, - ACTIONS(647), 1, - sym__string_start, - ACTIONS(649), 1, - sym__template_string_start, - ACTIONS(1851), 1, - sym_identifier, - ACTIONS(1853), 1, - anon_sym_LPAREN, - ACTIONS(1855), 1, - anon_sym_STAR, - ACTIONS(1861), 1, - anon_sym_DASH, - ACTIONS(1863), 1, - sym_match_wildcard_pattern, - ACTIONS(1865), 1, - anon_sym_LBRACK, - ACTIONS(1867), 1, - anon_sym_LBRACE, - ACTIONS(1869), 1, - sym_integer, - ACTIONS(1871), 1, - sym_float, - ACTIONS(1889), 1, - anon_sym_RBRACK, - STATE(1039), 1, - sym_string, - STATE(1040), 1, - sym_template_string, - STATE(1680), 1, - sym_pattern_class_name, - STATE(1140), 2, - sym_concatenated_string, - sym_concatenated_template_string, - STATE(1184), 2, - sym__match_or_pattern, - sym_match_or_pattern, - ACTIONS(1873), 3, - sym_true, - sym_false, - sym_none, - STATE(1277), 4, - sym__match_pattern, - sym_match_as_pattern, - sym__match_maybe_star_pattern, - sym_match_star_pattern, - STATE(1142), 8, - sym__closed_pattern, - sym_match_literal_pattern, - sym_match_capture_pattern, - sym_match_value_pattern, - sym_match_group_pattern, - sym_match_sequence_pattern, - sym_match_mapping_pattern, - sym_match_class_pattern, - [55565] = 3, + anon_sym_COLON2, + sym_type_conversion, + [56068] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1547), 5, + ACTIONS(1580), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1545), 29, - sym__newline, + ACTIONS(1578), 29, anon_sym_DOT, - anon_sym_from, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_GT_GT, @@ -70366,6 +71076,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, + anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, @@ -70382,17 +71093,18 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - anon_sym_SEMI, - [55607] = 3, + anon_sym_COLON2, + sym_type_conversion, + [56110] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1563), 5, + ACTIONS(1678), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1561), 29, + ACTIONS(1676), 29, sym__newline, anon_sym_DOT, anon_sym_from, @@ -70422,17 +71134,19 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LT_GT, anon_sym_is, anon_sym_SEMI, - [55649] = 3, + [56152] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(265), 5, + ACTIONS(1556), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(298), 29, + ACTIONS(1554), 29, + sym__newline, anon_sym_DOT, + anon_sym_from, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_GT_GT, @@ -70442,7 +71156,6 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, - anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, @@ -70459,18 +71172,17 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - anon_sym_COLON2, - sym_type_conversion, - [55691] = 3, + anon_sym_SEMI, + [56194] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1587), 5, + ACTIONS(1552), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1585), 29, + ACTIONS(1550), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_COMMA, @@ -70500,16 +71212,16 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_is, anon_sym_COLON2, sym_type_conversion, - [55733] = 3, + [56236] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1583), 5, + ACTIONS(1588), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1581), 29, + ACTIONS(1586), 29, sym__newline, anon_sym_DOT, anon_sym_from, @@ -70539,19 +71251,17 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LT_GT, anon_sym_is, anon_sym_SEMI, - [55775] = 3, + [56278] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1629), 5, + ACTIONS(1560), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1627), 29, - sym__newline, + ACTIONS(1558), 29, anon_sym_DOT, - anon_sym_from, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_GT_GT, @@ -70561,6 +71271,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, + anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, @@ -70577,17 +71288,18 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - anon_sym_SEMI, - [55817] = 3, + anon_sym_COLON2, + sym_type_conversion, + [56320] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1587), 5, + ACTIONS(272), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1585), 29, + ACTIONS(303), 29, sym__newline, anon_sym_DOT, anon_sym_from, @@ -70617,19 +71329,17 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LT_GT, anon_sym_is, anon_sym_SEMI, - [55859] = 3, + [56362] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1579), 5, + ACTIONS(1576), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1577), 29, - sym__newline, + ACTIONS(1574), 29, anon_sym_DOT, - anon_sym_from, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_GT_GT, @@ -70639,6 +71349,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, + anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, @@ -70655,20 +71366,19 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - anon_sym_SEMI, - [55901] = 3, + anon_sym_COLON2, + sym_type_conversion, + [56404] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1571), 5, + ACTIONS(1076), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1569), 29, - sym__newline, + ACTIONS(1074), 29, anon_sym_DOT, - anon_sym_from, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_GT_GT, @@ -70678,6 +71388,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, + anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, @@ -70694,29 +71405,29 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - anon_sym_SEMI, - [55943] = 3, + anon_sym_COLON2, + sym_type_conversion, + [56446] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1559), 4, + ACTIONS(1588), 5, anon_sym_STAR, + anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1557), 29, + ACTIONS(1586), 29, anon_sym_DOT, anon_sym_LPAREN, - anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_as, anon_sym_GT_GT, anon_sym_if, - anon_sym_COLON, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, + anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, @@ -70733,28 +71444,29 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [55984] = 3, + anon_sym_COLON2, + sym_type_conversion, + [56488] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1575), 4, + ACTIONS(1596), 5, anon_sym_STAR, + anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1573), 29, + ACTIONS(1594), 29, anon_sym_DOT, anon_sym_LPAREN, - anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_as, anon_sym_GT_GT, anon_sym_if, - anon_sym_COLON, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, + anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, @@ -70771,15 +71483,17 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [56025] = 3, + anon_sym_COLON2, + sym_type_conversion, + [56530] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1001), 4, + ACTIONS(1642), 4, anon_sym_STAR, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(999), 29, + ACTIONS(1640), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -70809,15 +71523,15 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [56066] = 3, + [56571] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1637), 4, + ACTIONS(1682), 4, anon_sym_STAR, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1635), 29, + ACTIONS(1680), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -70847,15 +71561,15 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [56107] = 3, + [56612] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1535), 4, + ACTIONS(1580), 4, anon_sym_STAR, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1533), 29, + ACTIONS(1578), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -70885,15 +71599,15 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [56148] = 3, + [56653] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1547), 4, + ACTIONS(272), 4, anon_sym_STAR, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1545), 29, + ACTIONS(303), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -70923,15 +71637,15 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [56189] = 3, + [56694] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1015), 4, + ACTIONS(1564), 4, anon_sym_STAR, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1013), 29, + ACTIONS(1562), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -70961,15 +71675,15 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [56230] = 3, + [56735] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1587), 4, + ACTIONS(1552), 4, anon_sym_STAR, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1585), 29, + ACTIONS(1550), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -70999,15 +71713,15 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [56271] = 3, + [56776] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1178), 4, + ACTIONS(1560), 4, anon_sym_STAR, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1173), 29, + ACTIONS(1558), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -71037,15 +71751,15 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [56312] = 3, + [56817] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1583), 4, + ACTIONS(1576), 4, anon_sym_STAR, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1581), 29, + ACTIONS(1574), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -71075,23 +71789,25 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [56353] = 3, + [56858] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(1583), 4, + ACTIONS(580), 1, + anon_sym_COLON_EQ, + ACTIONS(634), 1, + anon_sym_EQ, + ACTIONS(272), 4, anon_sym_STAR, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1581), 29, + ACTIONS(303), 27, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_as, anon_sym_GT_GT, anon_sym_if, - anon_sym_COLON, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, @@ -71113,15 +71829,15 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [56394] = 3, + [56903] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1591), 4, + ACTIONS(1076), 4, anon_sym_STAR, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1589), 29, + ACTIONS(1074), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -71151,15 +71867,15 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [56435] = 3, + [56944] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1579), 4, + ACTIONS(1646), 4, anon_sym_STAR, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1577), 29, + ACTIONS(1644), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -71189,15 +71905,15 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [56476] = 3, + [56985] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1629), 4, + ACTIONS(1596), 4, anon_sym_STAR, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1627), 29, + ACTIONS(1594), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -71227,15 +71943,15 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [56517] = 3, + [57026] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1685), 4, + ACTIONS(1556), 4, anon_sym_STAR, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1683), 29, + ACTIONS(1554), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -71265,15 +71981,15 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [56558] = 3, + [57067] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1579), 4, + ACTIONS(1556), 4, anon_sym_STAR, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1577), 29, + ACTIONS(1554), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -71303,15 +72019,15 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [56599] = 3, + [57108] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1543), 4, + ACTIONS(1584), 4, anon_sym_STAR, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1541), 29, + ACTIONS(1582), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -71341,15 +72057,15 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [56640] = 3, + [57149] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1551), 4, + ACTIONS(1588), 4, anon_sym_STAR, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1549), 29, + ACTIONS(1586), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -71379,15 +72095,15 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [56681] = 3, + [57190] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(265), 4, + ACTIONS(1690), 4, anon_sym_STAR, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(298), 29, + ACTIONS(1688), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -71417,72 +72133,53 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [56722] = 22, + [57231] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(647), 1, - sym__string_start, - ACTIONS(649), 1, - sym__template_string_start, - ACTIONS(1853), 1, + ACTIONS(1544), 4, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1542), 29, + anon_sym_DOT, anon_sym_LPAREN, - ACTIONS(1861), 1, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_as, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_COLON, + anon_sym_in, + anon_sym_PIPE, anon_sym_DASH, - ACTIONS(1863), 1, - sym_match_wildcard_pattern, - ACTIONS(1865), 1, + anon_sym_PLUS, anon_sym_LBRACK, - ACTIONS(1867), 1, - anon_sym_LBRACE, - ACTIONS(1869), 1, - sym_integer, - ACTIONS(1871), 1, - sym_float, - ACTIONS(1891), 1, - sym_identifier, - ACTIONS(1893), 1, - anon_sym_RPAREN, - STATE(1039), 1, - sym_string, - STATE(1040), 1, - sym_template_string, - STATE(1459), 1, - sym_match_keyword_pattern, - STATE(1534), 1, - sym_match_positional_pattern, - STATE(1680), 1, - sym_pattern_class_name, - STATE(1140), 2, - sym_concatenated_string, - sym_concatenated_template_string, - STATE(1184), 2, - sym__match_or_pattern, - sym_match_or_pattern, - STATE(1526), 2, - sym__match_pattern, - sym_match_as_pattern, - ACTIONS(1873), 3, - sym_true, - sym_false, - sym_none, - STATE(1142), 8, - sym__closed_pattern, - sym_match_literal_pattern, - sym_match_capture_pattern, - sym_match_value_pattern, - sym_match_group_pattern, - sym_match_sequence_pattern, - sym_match_mapping_pattern, - sym_match_class_pattern, - [56801] = 3, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [57272] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1543), 4, + ACTIONS(1588), 4, anon_sym_STAR, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1541), 29, + ACTIONS(1586), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -71512,15 +72209,15 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [56842] = 3, + [57313] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1563), 4, + ACTIONS(1568), 4, anon_sym_STAR, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1561), 29, + ACTIONS(1566), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -71550,15 +72247,15 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [56883] = 3, + [57354] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1633), 4, + ACTIONS(1572), 4, anon_sym_STAR, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1631), 29, + ACTIONS(1570), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -71588,15 +72285,15 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [56924] = 3, + [57395] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1567), 4, + ACTIONS(1650), 4, anon_sym_STAR, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1565), 29, + ACTIONS(1648), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -71626,15 +72323,15 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [56965] = 3, + [57436] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1555), 4, + ACTIONS(1568), 4, anon_sym_STAR, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1553), 29, + ACTIONS(1566), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -71664,15 +72361,72 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [57006] = 3, + [57477] = 22, ACTIONS(3), 1, sym_comment, - ACTIONS(1665), 4, + ACTIONS(654), 1, + sym__string_start, + ACTIONS(656), 1, + sym__template_string_start, + ACTIONS(1860), 1, + anon_sym_LPAREN, + ACTIONS(1864), 1, + anon_sym_DASH, + ACTIONS(1866), 1, + sym_match_wildcard_pattern, + ACTIONS(1868), 1, + anon_sym_LBRACK, + ACTIONS(1870), 1, + anon_sym_LBRACE, + ACTIONS(1872), 1, + sym_integer, + ACTIONS(1874), 1, + sym_float, + ACTIONS(1900), 1, + sym_identifier, + ACTIONS(1902), 1, + anon_sym_RPAREN, + STATE(1035), 1, + sym_template_string, + STATE(1061), 1, + sym_string, + STATE(1444), 1, + sym_match_positional_pattern, + STATE(1449), 1, + sym_match_keyword_pattern, + STATE(1714), 1, + sym_pattern_class_name, + STATE(1168), 2, + sym_concatenated_string, + sym_concatenated_template_string, + STATE(1215), 2, + sym__match_or_pattern, + sym_match_or_pattern, + STATE(1532), 2, + sym__match_pattern, + sym_match_as_pattern, + ACTIONS(1876), 3, + sym_true, + sym_false, + sym_none, + STATE(1139), 8, + sym__closed_pattern, + sym_match_literal_pattern, + sym_match_capture_pattern, + sym_match_value_pattern, + sym_match_group_pattern, + sym_match_sequence_pattern, + sym_match_mapping_pattern, + sym_match_class_pattern, + [57556] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1235), 4, anon_sym_STAR, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1663), 29, + ACTIONS(1230), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -71702,15 +72456,167 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [57047] = 3, + [57597] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1258), 1, + anon_sym_COLON_EQ, + ACTIONS(1878), 1, + anon_sym_EQ, + ACTIONS(1235), 4, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1230), 27, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [57642] = 20, + ACTIONS(3), 1, + sym_comment, + ACTIONS(654), 1, + sym__string_start, + ACTIONS(656), 1, + sym__template_string_start, + ACTIONS(1858), 1, + sym_identifier, + ACTIONS(1860), 1, + anon_sym_LPAREN, + ACTIONS(1862), 1, + anon_sym_STAR, + ACTIONS(1864), 1, + anon_sym_DASH, + ACTIONS(1866), 1, + sym_match_wildcard_pattern, + ACTIONS(1868), 1, + anon_sym_LBRACK, + ACTIONS(1870), 1, + anon_sym_LBRACE, + ACTIONS(1872), 1, + sym_integer, + ACTIONS(1874), 1, + sym_float, + STATE(1035), 1, + sym_template_string, + STATE(1061), 1, + sym_string, + STATE(1714), 1, + sym_pattern_class_name, + STATE(1168), 2, + sym_concatenated_string, + sym_concatenated_template_string, + STATE(1215), 2, + sym__match_or_pattern, + sym_match_or_pattern, + ACTIONS(1876), 3, + sym_true, + sym_false, + sym_none, + STATE(1293), 4, + sym__match_pattern, + sym_match_as_pattern, + sym__match_maybe_star_pattern, + sym_match_star_pattern, + STATE(1139), 8, + sym__closed_pattern, + sym_match_literal_pattern, + sym_match_capture_pattern, + sym_match_value_pattern, + sym_match_group_pattern, + sym_match_sequence_pattern, + sym_match_mapping_pattern, + sym_match_class_pattern, + [57717] = 22, + ACTIONS(3), 1, + sym_comment, + ACTIONS(654), 1, + sym__string_start, + ACTIONS(656), 1, + sym__template_string_start, + ACTIONS(1860), 1, + anon_sym_LPAREN, + ACTIONS(1864), 1, + anon_sym_DASH, + ACTIONS(1866), 1, + sym_match_wildcard_pattern, + ACTIONS(1868), 1, + anon_sym_LBRACK, + ACTIONS(1870), 1, + anon_sym_LBRACE, + ACTIONS(1872), 1, + sym_integer, + ACTIONS(1874), 1, + sym_float, + ACTIONS(1900), 1, + sym_identifier, + ACTIONS(1904), 1, + anon_sym_RPAREN, + STATE(1035), 1, + sym_template_string, + STATE(1061), 1, + sym_string, + STATE(1421), 1, + sym_match_keyword_pattern, + STATE(1544), 1, + sym_match_positional_pattern, + STATE(1714), 1, + sym_pattern_class_name, + STATE(1168), 2, + sym_concatenated_string, + sym_concatenated_template_string, + STATE(1215), 2, + sym__match_or_pattern, + sym_match_or_pattern, + STATE(1532), 2, + sym__match_pattern, + sym_match_as_pattern, + ACTIONS(1876), 3, + sym_true, + sym_false, + sym_none, + STATE(1139), 8, + sym__closed_pattern, + sym_match_literal_pattern, + sym_match_capture_pattern, + sym_match_value_pattern, + sym_match_group_pattern, + sym_match_sequence_pattern, + sym_match_mapping_pattern, + sym_match_class_pattern, + [57796] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1669), 4, + ACTIONS(1600), 4, anon_sym_STAR, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1667), 29, + ACTIONS(1598), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -71740,25 +72646,23 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [57088] = 5, + [57837] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(585), 1, - anon_sym_COLON_EQ, - ACTIONS(651), 1, - anon_sym_EQ, - ACTIONS(265), 4, + ACTIONS(1064), 4, anon_sym_STAR, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(298), 27, + ACTIONS(1062), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_COMMA, + anon_sym_as, anon_sym_GT_GT, anon_sym_if, + anon_sym_COLON, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, @@ -71780,25 +72684,23 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [57133] = 5, + [57878] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1219), 1, - anon_sym_COLON_EQ, - ACTIONS(1875), 1, - anon_sym_EQ, - ACTIONS(1178), 4, + ACTIONS(1638), 4, anon_sym_STAR, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1173), 27, + ACTIONS(1636), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_COMMA, + anon_sym_as, anon_sym_GT_GT, anon_sym_if, + anon_sym_COLON, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, @@ -71820,15 +72722,15 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [57178] = 3, + [57919] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1673), 4, + ACTIONS(1592), 4, anon_sym_STAR, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1671), 29, + ACTIONS(1590), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -71858,15 +72760,15 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [57219] = 3, + [57960] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1571), 4, + ACTIONS(1694), 4, anon_sym_STAR, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1569), 29, + ACTIONS(1692), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -71896,15 +72798,15 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [57260] = 3, + [58001] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1677), 4, + ACTIONS(1698), 4, anon_sym_STAR, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1675), 29, + ACTIONS(1696), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -71934,15 +72836,72 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [57301] = 3, + [58042] = 22, + ACTIONS(3), 1, + sym_comment, + ACTIONS(654), 1, + sym__string_start, + ACTIONS(656), 1, + sym__template_string_start, + ACTIONS(1860), 1, + anon_sym_LPAREN, + ACTIONS(1864), 1, + anon_sym_DASH, + ACTIONS(1866), 1, + sym_match_wildcard_pattern, + ACTIONS(1868), 1, + anon_sym_LBRACK, + ACTIONS(1870), 1, + anon_sym_LBRACE, + ACTIONS(1872), 1, + sym_integer, + ACTIONS(1874), 1, + sym_float, + ACTIONS(1900), 1, + sym_identifier, + ACTIONS(1906), 1, + anon_sym_RPAREN, + STATE(1035), 1, + sym_template_string, + STATE(1061), 1, + sym_string, + STATE(1468), 1, + sym_match_keyword_pattern, + STATE(1544), 1, + sym_match_positional_pattern, + STATE(1714), 1, + sym_pattern_class_name, + STATE(1168), 2, + sym_concatenated_string, + sym_concatenated_template_string, + STATE(1215), 2, + sym__match_or_pattern, + sym_match_or_pattern, + STATE(1532), 2, + sym__match_pattern, + sym_match_as_pattern, + ACTIONS(1876), 3, + sym_true, + sym_false, + sym_none, + STATE(1139), 8, + sym__closed_pattern, + sym_match_literal_pattern, + sym_match_capture_pattern, + sym_match_value_pattern, + sym_match_group_pattern, + sym_match_sequence_pattern, + sym_match_mapping_pattern, + sym_match_class_pattern, + [58121] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1689), 4, + ACTIONS(1686), 4, anon_sym_STAR, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1687), 29, + ACTIONS(1684), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -71972,15 +72931,15 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [57342] = 3, + [58162] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1681), 4, + ACTIONS(1548), 4, anon_sym_STAR, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1679), 29, + ACTIONS(1546), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -72010,127 +72969,15 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [57383] = 20, + [58203] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(647), 1, - sym__string_start, - ACTIONS(649), 1, - sym__template_string_start, - ACTIONS(1851), 1, - sym_identifier, - ACTIONS(1853), 1, - anon_sym_LPAREN, - ACTIONS(1855), 1, - anon_sym_STAR, - ACTIONS(1861), 1, - anon_sym_DASH, - ACTIONS(1863), 1, - sym_match_wildcard_pattern, - ACTIONS(1865), 1, - anon_sym_LBRACK, - ACTIONS(1867), 1, - anon_sym_LBRACE, - ACTIONS(1869), 1, - sym_integer, - ACTIONS(1871), 1, - sym_float, - STATE(1039), 1, - sym_string, - STATE(1040), 1, - sym_template_string, - STATE(1680), 1, - sym_pattern_class_name, - STATE(1140), 2, - sym_concatenated_string, - sym_concatenated_template_string, - STATE(1184), 2, - sym__match_or_pattern, - sym_match_or_pattern, - ACTIONS(1873), 3, - sym_true, - sym_false, - sym_none, - STATE(1277), 4, - sym__match_pattern, - sym_match_as_pattern, - sym__match_maybe_star_pattern, - sym_match_star_pattern, - STATE(1142), 8, - sym__closed_pattern, - sym_match_literal_pattern, - sym_match_capture_pattern, - sym_match_value_pattern, - sym_match_group_pattern, - sym_match_sequence_pattern, - sym_match_mapping_pattern, - sym_match_class_pattern, - [57458] = 22, - ACTIONS(3), 1, - sym_comment, - ACTIONS(647), 1, - sym__string_start, - ACTIONS(649), 1, - sym__template_string_start, - ACTIONS(1853), 1, - anon_sym_LPAREN, - ACTIONS(1861), 1, - anon_sym_DASH, - ACTIONS(1863), 1, - sym_match_wildcard_pattern, - ACTIONS(1865), 1, - anon_sym_LBRACK, - ACTIONS(1867), 1, - anon_sym_LBRACE, - ACTIONS(1869), 1, - sym_integer, - ACTIONS(1871), 1, - sym_float, - ACTIONS(1891), 1, - sym_identifier, - ACTIONS(1895), 1, - anon_sym_RPAREN, - STATE(1039), 1, - sym_string, - STATE(1040), 1, - sym_template_string, - STATE(1438), 1, - sym_match_keyword_pattern, - STATE(1534), 1, - sym_match_positional_pattern, - STATE(1680), 1, - sym_pattern_class_name, - STATE(1140), 2, - sym_concatenated_string, - sym_concatenated_template_string, - STATE(1184), 2, - sym__match_or_pattern, - sym_match_or_pattern, - STATE(1526), 2, - sym__match_pattern, - sym_match_as_pattern, - ACTIONS(1873), 3, - sym_true, - sym_false, - sym_none, - STATE(1142), 8, - sym__closed_pattern, - sym_match_literal_pattern, - sym_match_capture_pattern, - sym_match_value_pattern, - sym_match_group_pattern, - sym_match_sequence_pattern, - sym_match_mapping_pattern, - sym_match_class_pattern, - [57537] = 3, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1673), 4, + ACTIONS(1580), 4, anon_sym_STAR, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1671), 29, + ACTIONS(1578), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -72160,72 +73007,15 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [57578] = 22, - ACTIONS(3), 1, - sym_comment, - ACTIONS(647), 1, - sym__string_start, - ACTIONS(649), 1, - sym__template_string_start, - ACTIONS(1853), 1, - anon_sym_LPAREN, - ACTIONS(1861), 1, - anon_sym_DASH, - ACTIONS(1863), 1, - sym_match_wildcard_pattern, - ACTIONS(1865), 1, - anon_sym_LBRACK, - ACTIONS(1867), 1, - anon_sym_LBRACE, - ACTIONS(1869), 1, - sym_integer, - ACTIONS(1871), 1, - sym_float, - ACTIONS(1891), 1, - sym_identifier, - ACTIONS(1897), 1, - anon_sym_RPAREN, - STATE(1039), 1, - sym_string, - STATE(1040), 1, - sym_template_string, - STATE(1381), 1, - sym_match_keyword_pattern, - STATE(1466), 1, - sym_match_positional_pattern, - STATE(1680), 1, - sym_pattern_class_name, - STATE(1140), 2, - sym_concatenated_string, - sym_concatenated_template_string, - STATE(1184), 2, - sym__match_or_pattern, - sym_match_or_pattern, - STATE(1526), 2, - sym__match_pattern, - sym_match_as_pattern, - ACTIONS(1873), 3, - sym_true, - sym_false, - sym_none, - STATE(1142), 8, - sym__closed_pattern, - sym_match_literal_pattern, - sym_match_capture_pattern, - sym_match_value_pattern, - sym_match_group_pattern, - sym_match_sequence_pattern, - sym_match_mapping_pattern, - sym_match_class_pattern, - [57657] = 3, + [58244] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1539), 4, + ACTIONS(1678), 4, anon_sym_STAR, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1537), 29, + ACTIONS(1676), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -72255,51 +73045,51 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [57698] = 20, + [58285] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(647), 1, + ACTIONS(654), 1, sym__string_start, - ACTIONS(649), 1, + ACTIONS(656), 1, sym__template_string_start, - ACTIONS(1851), 1, + ACTIONS(1858), 1, sym_identifier, - ACTIONS(1853), 1, + ACTIONS(1860), 1, anon_sym_LPAREN, - ACTIONS(1861), 1, + ACTIONS(1864), 1, anon_sym_DASH, - ACTIONS(1863), 1, + ACTIONS(1866), 1, sym_match_wildcard_pattern, - ACTIONS(1865), 1, + ACTIONS(1868), 1, anon_sym_LBRACK, - ACTIONS(1867), 1, + ACTIONS(1870), 1, anon_sym_LBRACE, - ACTIONS(1869), 1, + ACTIONS(1872), 1, sym_integer, - ACTIONS(1871), 1, + ACTIONS(1874), 1, sym_float, - STATE(1039), 1, - sym_string, - STATE(1040), 1, + STATE(1035), 1, sym_template_string, - STATE(1534), 1, + STATE(1061), 1, + sym_string, + STATE(1544), 1, sym_match_positional_pattern, - STATE(1680), 1, + STATE(1714), 1, sym_pattern_class_name, - STATE(1140), 2, + STATE(1168), 2, sym_concatenated_string, sym_concatenated_template_string, - STATE(1184), 2, + STATE(1215), 2, sym__match_or_pattern, sym_match_or_pattern, - STATE(1526), 2, + STATE(1532), 2, sym__match_pattern, sym_match_as_pattern, - ACTIONS(1873), 3, + ACTIONS(1876), 3, sym_true, sym_false, sym_none, - STATE(1142), 8, + STATE(1139), 8, sym__closed_pattern, sym_match_literal_pattern, sym_match_capture_pattern, @@ -72308,49 +73098,49 @@ static const uint16_t ts_small_parse_table[] = { sym_match_sequence_pattern, sym_match_mapping_pattern, sym_match_class_pattern, - [57771] = 19, + [58358] = 19, ACTIONS(3), 1, sym_comment, - ACTIONS(647), 1, + ACTIONS(654), 1, sym__string_start, - ACTIONS(649), 1, + ACTIONS(656), 1, sym__template_string_start, - ACTIONS(1851), 1, + ACTIONS(1858), 1, sym_identifier, - ACTIONS(1853), 1, + ACTIONS(1860), 1, anon_sym_LPAREN, - ACTIONS(1861), 1, + ACTIONS(1864), 1, anon_sym_DASH, - ACTIONS(1863), 1, + ACTIONS(1866), 1, sym_match_wildcard_pattern, - ACTIONS(1865), 1, + ACTIONS(1868), 1, anon_sym_LBRACK, - ACTIONS(1867), 1, + ACTIONS(1870), 1, anon_sym_LBRACE, - ACTIONS(1869), 1, + ACTIONS(1872), 1, sym_integer, - ACTIONS(1871), 1, + ACTIONS(1874), 1, sym_float, - STATE(1039), 1, - sym_string, - STATE(1040), 1, + STATE(1035), 1, sym_template_string, - STATE(1680), 1, + STATE(1061), 1, + sym_string, + STATE(1714), 1, sym_pattern_class_name, - STATE(1140), 2, + STATE(1168), 2, sym_concatenated_string, sym_concatenated_template_string, - STATE(1184), 2, + STATE(1215), 2, sym__match_or_pattern, sym_match_or_pattern, - STATE(1542), 2, + STATE(1536), 2, sym__match_pattern, sym_match_as_pattern, - ACTIONS(1873), 3, + ACTIONS(1876), 3, sym_true, sym_false, sym_none, - STATE(1142), 8, + STATE(1139), 8, sym__closed_pattern, sym_match_literal_pattern, sym_match_capture_pattern, @@ -72359,49 +73149,49 @@ static const uint16_t ts_small_parse_table[] = { sym_match_sequence_pattern, sym_match_mapping_pattern, sym_match_class_pattern, - [57841] = 19, + [58428] = 19, ACTIONS(3), 1, sym_comment, - ACTIONS(647), 1, + ACTIONS(654), 1, sym__string_start, - ACTIONS(649), 1, + ACTIONS(656), 1, sym__template_string_start, - ACTIONS(1851), 1, + ACTIONS(1858), 1, sym_identifier, - ACTIONS(1853), 1, + ACTIONS(1860), 1, anon_sym_LPAREN, - ACTIONS(1861), 1, + ACTIONS(1864), 1, anon_sym_DASH, - ACTIONS(1863), 1, + ACTIONS(1866), 1, sym_match_wildcard_pattern, - ACTIONS(1865), 1, + ACTIONS(1868), 1, anon_sym_LBRACK, - ACTIONS(1867), 1, + ACTIONS(1870), 1, anon_sym_LBRACE, - ACTIONS(1869), 1, + ACTIONS(1872), 1, sym_integer, - ACTIONS(1871), 1, + ACTIONS(1874), 1, sym_float, - STATE(1039), 1, - sym_string, - STATE(1040), 1, + STATE(1035), 1, sym_template_string, - STATE(1680), 1, + STATE(1061), 1, + sym_string, + STATE(1714), 1, sym_pattern_class_name, - STATE(1140), 2, + STATE(1168), 2, sym_concatenated_string, sym_concatenated_template_string, - STATE(1184), 2, + STATE(1215), 2, sym__match_or_pattern, sym_match_or_pattern, - STATE(1575), 2, + STATE(1580), 2, sym__match_pattern, sym_match_as_pattern, - ACTIONS(1873), 3, + ACTIONS(1876), 3, sym_true, sym_false, sym_none, - STATE(1142), 8, + STATE(1139), 8, sym__closed_pattern, sym_match_literal_pattern, sym_match_capture_pattern, @@ -72410,43 +73200,43 @@ static const uint16_t ts_small_parse_table[] = { sym_match_sequence_pattern, sym_match_mapping_pattern, sym_match_class_pattern, - [57911] = 17, + [58498] = 17, ACTIONS(3), 1, sym_comment, - ACTIONS(647), 1, + ACTIONS(654), 1, sym__string_start, - ACTIONS(649), 1, + ACTIONS(656), 1, sym__template_string_start, - ACTIONS(1851), 1, + ACTIONS(1858), 1, sym_identifier, - ACTIONS(1853), 1, + ACTIONS(1860), 1, anon_sym_LPAREN, - ACTIONS(1861), 1, + ACTIONS(1864), 1, anon_sym_DASH, - ACTIONS(1865), 1, + ACTIONS(1868), 1, anon_sym_LBRACK, - ACTIONS(1867), 1, + ACTIONS(1870), 1, anon_sym_LBRACE, - ACTIONS(1869), 1, + ACTIONS(1872), 1, sym_integer, - ACTIONS(1871), 1, + ACTIONS(1874), 1, sym_float, - ACTIONS(1899), 1, + ACTIONS(1908), 1, sym_match_wildcard_pattern, - STATE(1039), 1, - sym_string, - STATE(1040), 1, + STATE(1035), 1, sym_template_string, - STATE(1680), 1, + STATE(1061), 1, + sym_string, + STATE(1714), 1, sym_pattern_class_name, - STATE(1140), 2, + STATE(1168), 2, sym_concatenated_string, sym_concatenated_template_string, - ACTIONS(1873), 3, + ACTIONS(1876), 3, sym_true, sym_false, sym_none, - STATE(1116), 8, + STATE(1098), 8, sym__closed_pattern, sym_match_literal_pattern, sym_match_capture_pattern, @@ -72455,43 +73245,43 @@ static const uint16_t ts_small_parse_table[] = { sym_match_sequence_pattern, sym_match_mapping_pattern, sym_match_class_pattern, - [57973] = 17, + [58560] = 17, ACTIONS(3), 1, sym_comment, - ACTIONS(647), 1, + ACTIONS(654), 1, sym__string_start, - ACTIONS(649), 1, + ACTIONS(656), 1, sym__template_string_start, - ACTIONS(1851), 1, + ACTIONS(1858), 1, sym_identifier, - ACTIONS(1853), 1, + ACTIONS(1860), 1, anon_sym_LPAREN, - ACTIONS(1861), 1, + ACTIONS(1864), 1, anon_sym_DASH, - ACTIONS(1865), 1, + ACTIONS(1868), 1, anon_sym_LBRACK, - ACTIONS(1867), 1, + ACTIONS(1870), 1, anon_sym_LBRACE, - ACTIONS(1869), 1, + ACTIONS(1872), 1, sym_integer, - ACTIONS(1871), 1, + ACTIONS(1874), 1, sym_float, - ACTIONS(1901), 1, + ACTIONS(1910), 1, sym_match_wildcard_pattern, - STATE(1039), 1, - sym_string, - STATE(1040), 1, + STATE(1035), 1, sym_template_string, - STATE(1680), 1, + STATE(1061), 1, + sym_string, + STATE(1714), 1, sym_pattern_class_name, - STATE(1140), 2, + STATE(1168), 2, sym_concatenated_string, sym_concatenated_template_string, - ACTIONS(1873), 3, + ACTIONS(1876), 3, sym_true, sym_false, sym_none, - STATE(1091), 8, + STATE(1132), 8, sym__closed_pattern, sym_match_literal_pattern, sym_match_capture_pattern, @@ -72500,59 +73290,59 @@ static const uint16_t ts_small_parse_table[] = { sym_match_sequence_pattern, sym_match_mapping_pattern, sym_match_class_pattern, - [58035] = 8, + [58622] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(1908), 1, - anon_sym_EQ, - ACTIONS(1910), 1, + ACTIONS(1666), 1, anon_sym_not, - ACTIONS(1916), 1, + ACTIONS(1674), 1, anon_sym_is, - STATE(989), 1, + ACTIONS(1914), 1, + anon_sym_as, + STATE(991), 1, aux_sym_comparison_operator_repeat1, - ACTIONS(1913), 2, + ACTIONS(1672), 2, anon_sym_LT, anon_sym_GT, - ACTIONS(1905), 6, + ACTIONS(1656), 6, anon_sym_in, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_GT, - ACTIONS(1903), 9, + ACTIONS(1912), 9, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_if, - anon_sym_COLON, - anon_sym_else, + anon_sym_async, + anon_sym_for, anon_sym_RBRACK, anon_sym_RBRACE, anon_sym_and, anon_sym_or, - [58074] = 8, + [58661] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(1908), 1, + ACTIONS(1918), 1, anon_sym_as, - ACTIONS(1922), 1, + ACTIONS(1923), 1, anon_sym_not, - ACTIONS(1928), 1, + ACTIONS(1929), 1, anon_sym_is, - STATE(990), 1, + STATE(991), 1, aux_sym_comparison_operator_repeat1, - ACTIONS(1925), 2, + ACTIONS(1926), 2, anon_sym_LT, anon_sym_GT, - ACTIONS(1919), 6, + ACTIONS(1920), 6, anon_sym_in, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_GT, - ACTIONS(1903), 9, + ACTIONS(1916), 9, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_if, @@ -72562,28 +73352,28 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_RBRACE, anon_sym_and, anon_sym_or, - [58113] = 8, + [58700] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(1617), 1, + ACTIONS(1918), 1, + anon_sym_EQ, + ACTIONS(1935), 1, anon_sym_not, - ACTIONS(1625), 1, + ACTIONS(1941), 1, anon_sym_is, - ACTIONS(1933), 1, - anon_sym_EQ, - STATE(989), 1, + STATE(992), 1, aux_sym_comparison_operator_repeat1, - ACTIONS(1623), 2, + ACTIONS(1938), 2, anon_sym_LT, anon_sym_GT, - ACTIONS(1603), 6, + ACTIONS(1932), 6, anon_sym_in, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_GT, - ACTIONS(1931), 9, + ACTIONS(1916), 9, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_if, @@ -72593,45 +73383,45 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_RBRACE, anon_sym_and, anon_sym_or, - [58152] = 8, + [58739] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(1653), 1, + ACTIONS(1626), 1, anon_sym_not, - ACTIONS(1661), 1, + ACTIONS(1634), 1, anon_sym_is, - ACTIONS(1933), 1, - anon_sym_as, - STATE(990), 1, + ACTIONS(1914), 1, + anon_sym_EQ, + STATE(992), 1, aux_sym_comparison_operator_repeat1, - ACTIONS(1659), 2, + ACTIONS(1632), 2, anon_sym_LT, anon_sym_GT, - ACTIONS(1643), 6, + ACTIONS(1612), 6, anon_sym_in, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_GT, - ACTIONS(1931), 9, + ACTIONS(1912), 9, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_if, - anon_sym_async, - anon_sym_for, + anon_sym_COLON, + anon_sym_else, anon_sym_RBRACK, anon_sym_RBRACE, anon_sym_and, anon_sym_or, - [58191] = 4, + [58778] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1937), 1, + ACTIONS(1946), 1, anon_sym_COMMA, - STATE(993), 1, + STATE(994), 1, aux_sym__patterns_repeat1, - ACTIONS(1935), 18, + ACTIONS(1944), 18, anon_sym_RPAREN, anon_sym_COLON, anon_sym_in, @@ -72650,129 +73440,63 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, - [58221] = 16, + [58808] = 16, ACTIONS(3), 1, sym_comment, - ACTIONS(310), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(1861), 1, + ACTIONS(1864), 1, anon_sym_DASH, - ACTIONS(1869), 1, + ACTIONS(1872), 1, sym_integer, - ACTIONS(1871), 1, + ACTIONS(1874), 1, sym_float, - ACTIONS(1940), 1, - sym_identifier, - ACTIONS(1942), 1, - anon_sym_RBRACE, - ACTIONS(1944), 1, - anon_sym_STAR_STAR, - STATE(1317), 1, - sym_string, - STATE(1318), 1, - sym_template_string, - STATE(1477), 1, - sym_match_key_value_pattern, - STATE(1564), 1, - sym_match_double_star_pattern, - STATE(1140), 2, - sym_concatenated_string, - sym_concatenated_template_string, - STATE(1722), 2, - sym_match_literal_pattern, - sym_match_value_pattern, - ACTIONS(1873), 3, - sym_true, - sym_false, - sym_none, - [58274] = 8, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1908), 1, - anon_sym_EQ, ACTIONS(1949), 1, - anon_sym_not, - ACTIONS(1955), 1, - anon_sym_is, - STATE(995), 1, - aux_sym_comparison_operator_repeat1, - ACTIONS(1952), 2, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1946), 6, - anon_sym_in, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - ACTIONS(1903), 7, - anon_sym_COMMA, - anon_sym_if, - anon_sym_RBRACE, - anon_sym_and, - anon_sym_or, - anon_sym_COLON2, - sym_type_conversion, - [58311] = 16, - ACTIONS(3), 1, - sym_comment, - ACTIONS(310), 1, - sym__string_start, - ACTIONS(312), 1, - sym__template_string_start, - ACTIONS(1861), 1, - anon_sym_DASH, - ACTIONS(1869), 1, - sym_integer, - ACTIONS(1871), 1, - sym_float, - ACTIONS(1940), 1, sym_identifier, - ACTIONS(1944), 1, - anon_sym_STAR_STAR, - ACTIONS(1958), 1, + ACTIONS(1951), 1, anon_sym_RBRACE, - STATE(1317), 1, + ACTIONS(1953), 1, + anon_sym_STAR_STAR, + STATE(1314), 1, sym_string, - STATE(1318), 1, + STATE(1315), 1, sym_template_string, - STATE(1569), 1, + STATE(1529), 1, sym_match_double_star_pattern, - STATE(1573), 1, + STATE(1586), 1, sym_match_key_value_pattern, - STATE(1140), 2, + STATE(1168), 2, sym_concatenated_string, sym_concatenated_template_string, - STATE(1722), 2, + STATE(1658), 2, sym_match_literal_pattern, sym_match_value_pattern, - ACTIONS(1873), 3, + ACTIONS(1876), 3, sym_true, sym_false, sym_none, - [58364] = 7, + [58861] = 7, ACTIONS(3), 1, sym_comment, - ACTIONS(1771), 1, + ACTIONS(1958), 1, anon_sym_not, - ACTIONS(1779), 1, + ACTIONS(1964), 1, anon_sym_is, - STATE(1007), 1, + STATE(996), 1, aux_sym_comparison_operator_repeat1, - ACTIONS(1777), 2, + ACTIONS(1961), 2, anon_sym_LT, anon_sym_GT, - ACTIONS(1761), 6, + ACTIONS(1955), 6, anon_sym_in, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_GT, - ACTIONS(1931), 8, + ACTIONS(1916), 8, anon_sym_COMMA, anon_sym_if, anon_sym_COLON, @@ -72781,10 +73505,35 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_RBRACE, anon_sym_and, anon_sym_or, - [58399] = 2, + [58896] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1960), 19, + ACTIONS(272), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(916), 3, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_COLON, + ACTIONS(303), 14, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_GT_GT, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + [58925] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1967), 19, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_COLON, @@ -72804,10 +73553,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, - [58424] = 2, + [58950] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1184), 19, + ACTIONS(1969), 19, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_COLON, @@ -72827,107 +73576,28 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, - [58449] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1178), 2, - anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(1962), 3, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_COLON, - ACTIONS(1173), 14, - anon_sym_DOT, - anon_sym_LPAREN, - anon_sym_GT_GT, - anon_sym_PIPE, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, - [58478] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(265), 2, - anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(911), 3, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_COLON, - ACTIONS(298), 14, - anon_sym_DOT, - anon_sym_LPAREN, - anon_sym_GT_GT, - anon_sym_PIPE, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, - [58507] = 8, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1807), 1, - anon_sym_not, - ACTIONS(1815), 1, - anon_sym_is, - ACTIONS(1933), 1, - anon_sym_EQ, - STATE(1003), 1, - aux_sym_comparison_operator_repeat1, - ACTIONS(1813), 2, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1795), 6, - anon_sym_in, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - ACTIONS(1931), 7, - sym__newline, - anon_sym_from, - anon_sym_COMMA, - anon_sym_if, - anon_sym_and, - anon_sym_or, - anon_sym_SEMI, - [58544] = 8, + [58975] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(1908), 1, + ACTIONS(1918), 1, anon_sym_EQ, - ACTIONS(1967), 1, + ACTIONS(1974), 1, anon_sym_not, - ACTIONS(1973), 1, + ACTIONS(1980), 1, anon_sym_is, - STATE(1003), 1, + STATE(1000), 1, aux_sym_comparison_operator_repeat1, - ACTIONS(1970), 2, + ACTIONS(1977), 2, anon_sym_LT, anon_sym_GT, - ACTIONS(1964), 6, + ACTIONS(1971), 6, anon_sym_in, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_GT, - ACTIONS(1903), 7, + ACTIONS(1916), 7, sym__newline, anon_sym_from, anon_sym_COMMA, @@ -72935,10 +73605,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_and, anon_sym_or, anon_sym_SEMI, - [58581] = 2, + [59012] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1976), 19, + ACTIONS(1241), 19, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_COLON, @@ -72958,10 +73628,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, - [58606] = 2, + [59037] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1978), 19, + ACTIONS(1983), 19, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_COLON, @@ -72981,28 +73651,82 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, - [58631] = 8, + [59062] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(1744), 1, + ACTIONS(1918), 1, + anon_sym_EQ, + ACTIONS(1988), 1, anon_sym_not, - ACTIONS(1752), 1, + ACTIONS(1994), 1, + anon_sym_is, + STATE(1003), 1, + aux_sym_comparison_operator_repeat1, + ACTIONS(1991), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1985), 6, + anon_sym_in, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + ACTIONS(1916), 7, + anon_sym_COMMA, + anon_sym_if, + anon_sym_RBRACE, + anon_sym_and, + anon_sym_or, + anon_sym_COLON2, + sym_type_conversion, + [59099] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1235), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(1997), 3, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_COLON, + ACTIONS(1230), 14, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_GT_GT, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + [59128] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1750), 1, + anon_sym_not, + ACTIONS(1758), 1, anon_sym_is, - ACTIONS(1933), 1, + ACTIONS(1914), 1, anon_sym_EQ, - STATE(995), 1, + STATE(1003), 1, aux_sym_comparison_operator_repeat1, - ACTIONS(1750), 2, + ACTIONS(1756), 2, anon_sym_LT, anon_sym_GT, - ACTIONS(1732), 6, + ACTIONS(1738), 6, anon_sym_in, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_GT, - ACTIONS(1931), 7, + ACTIONS(1912), 7, anon_sym_COMMA, anon_sym_if, anon_sym_RBRACE, @@ -73010,26 +73734,26 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_or, anon_sym_COLON2, sym_type_conversion, - [58668] = 7, + [59165] = 7, ACTIONS(3), 1, sym_comment, - ACTIONS(1983), 1, + ACTIONS(1816), 1, anon_sym_not, - ACTIONS(1989), 1, + ACTIONS(1824), 1, anon_sym_is, - STATE(1007), 1, + STATE(996), 1, aux_sym_comparison_operator_repeat1, - ACTIONS(1986), 2, + ACTIONS(1822), 2, anon_sym_LT, anon_sym_GT, - ACTIONS(1980), 6, + ACTIONS(1806), 6, anon_sym_in, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_GT, - ACTIONS(1903), 8, + ACTIONS(1912), 8, anon_sym_COMMA, anon_sym_if, anon_sym_COLON, @@ -73038,63 +73762,129 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_RBRACE, anon_sym_and, anon_sym_or, - [58703] = 16, + [59200] = 16, ACTIONS(3), 1, sym_comment, - ACTIONS(310), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(1861), 1, + ACTIONS(1864), 1, anon_sym_DASH, - ACTIONS(1869), 1, + ACTIONS(1872), 1, sym_integer, - ACTIONS(1871), 1, + ACTIONS(1874), 1, sym_float, - ACTIONS(1940), 1, + ACTIONS(1949), 1, sym_identifier, - ACTIONS(1944), 1, + ACTIONS(1953), 1, anon_sym_STAR_STAR, - ACTIONS(1992), 1, + ACTIONS(1999), 1, anon_sym_RBRACE, - STATE(1317), 1, + STATE(1314), 1, sym_string, - STATE(1318), 1, + STATE(1315), 1, sym_template_string, - STATE(1544), 1, + STATE(1485), 1, + sym_match_key_value_pattern, + STATE(1560), 1, + sym_match_double_star_pattern, + STATE(1168), 2, + sym_concatenated_string, + sym_concatenated_template_string, + STATE(1658), 2, + sym_match_literal_pattern, + sym_match_value_pattern, + ACTIONS(1876), 3, + sym_true, + sym_false, + sym_none, + [59253] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1780), 1, + anon_sym_not, + ACTIONS(1788), 1, + anon_sym_is, + ACTIONS(1914), 1, + anon_sym_EQ, + STATE(1000), 1, + aux_sym_comparison_operator_repeat1, + ACTIONS(1786), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1768), 6, + anon_sym_in, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + ACTIONS(1912), 7, + sym__newline, + anon_sym_from, + anon_sym_COMMA, + anon_sym_if, + anon_sym_and, + anon_sym_or, + anon_sym_SEMI, + [59290] = 16, + ACTIONS(3), 1, + sym_comment, + ACTIONS(315), 1, + sym__string_start, + ACTIONS(317), 1, + sym__template_string_start, + ACTIONS(1864), 1, + anon_sym_DASH, + ACTIONS(1872), 1, + sym_integer, + ACTIONS(1874), 1, + sym_float, + ACTIONS(1949), 1, + sym_identifier, + ACTIONS(1953), 1, + anon_sym_STAR_STAR, + ACTIONS(2001), 1, + anon_sym_RBRACE, + STATE(1314), 1, + sym_string, + STATE(1315), 1, + sym_template_string, + STATE(1584), 1, sym_match_double_star_pattern, - STATE(1573), 1, + STATE(1586), 1, sym_match_key_value_pattern, - STATE(1140), 2, + STATE(1168), 2, sym_concatenated_string, sym_concatenated_template_string, - STATE(1722), 2, + STATE(1658), 2, sym_match_literal_pattern, sym_match_value_pattern, - ACTIONS(1873), 3, + ACTIONS(1876), 3, sym_true, sym_false, sym_none, - [58756] = 7, + [59343] = 7, ACTIONS(3), 1, sym_comment, - ACTIONS(1839), 1, + ACTIONS(1848), 1, anon_sym_not, - ACTIONS(1847), 1, + ACTIONS(1856), 1, anon_sym_is, STATE(1011), 1, aux_sym_comparison_operator_repeat1, - ACTIONS(1845), 2, + ACTIONS(1854), 2, anon_sym_LT, anon_sym_GT, - ACTIONS(1827), 6, + ACTIONS(1836), 6, anon_sym_in, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_GT, - ACTIONS(1931), 7, + ACTIONS(1912), 7, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_as, @@ -73102,50 +73892,26 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_COLON, anon_sym_and, anon_sym_or, - [58790] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1994), 1, - anon_sym_COMMA, - STATE(993), 1, - aux_sym__patterns_repeat1, - ACTIONS(1996), 16, - anon_sym_COLON, - anon_sym_in, - anon_sym_EQ, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_STAR_EQ, - anon_sym_SLASH_EQ, - anon_sym_AT_EQ, - anon_sym_SLASH_SLASH_EQ, - anon_sym_PERCENT_EQ, - anon_sym_STAR_STAR_EQ, - anon_sym_GT_GT_EQ, - anon_sym_LT_LT_EQ, - anon_sym_AMP_EQ, - anon_sym_CARET_EQ, - anon_sym_PIPE_EQ, - [58818] = 7, + [59377] = 7, ACTIONS(3), 1, sym_comment, - ACTIONS(2001), 1, + ACTIONS(2006), 1, anon_sym_not, - ACTIONS(2007), 1, + ACTIONS(2012), 1, anon_sym_is, STATE(1011), 1, aux_sym_comparison_operator_repeat1, - ACTIONS(2004), 2, + ACTIONS(2009), 2, anon_sym_LT, anon_sym_GT, - ACTIONS(1998), 6, + ACTIONS(2003), 6, anon_sym_in, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_GT, - ACTIONS(1903), 7, + ACTIONS(1916), 7, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_as, @@ -73153,376 +73919,427 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_COLON, anon_sym_and, anon_sym_or, - [58852] = 13, + [59411] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2015), 1, + anon_sym_COMMA, + STATE(994), 1, + aux_sym__patterns_repeat1, + ACTIONS(2017), 16, + anon_sym_COLON, + anon_sym_in, + anon_sym_EQ, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_AT_EQ, + anon_sym_SLASH_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_STAR_STAR_EQ, + anon_sym_GT_GT_EQ, + anon_sym_LT_LT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + [59439] = 13, ACTIONS(3), 1, sym_comment, - ACTIONS(1593), 1, + ACTIONS(1602), 1, anon_sym_DOT, - ACTIONS(1595), 1, + ACTIONS(1604), 1, anon_sym_LPAREN, - ACTIONS(1605), 1, + ACTIONS(1614), 1, anon_sym_PIPE, - ACTIONS(1609), 1, + ACTIONS(1618), 1, anon_sym_LBRACK, - ACTIONS(1611), 1, + ACTIONS(1620), 1, anon_sym_STAR_STAR, - ACTIONS(1619), 1, + ACTIONS(1628), 1, anon_sym_AMP, - ACTIONS(1621), 1, + ACTIONS(1630), 1, anon_sym_CARET, - ACTIONS(1599), 2, + ACTIONS(1608), 2, anon_sym_STAR, anon_sym_SLASH, - ACTIONS(1601), 2, + ACTIONS(1610), 2, anon_sym_GT_GT, anon_sym_LT_LT, - ACTIONS(1607), 2, + ACTIONS(1616), 2, anon_sym_DASH, anon_sym_PLUS, - STATE(733), 2, + STATE(734), 2, sym_argument_list, sym_generator_expression, - ACTIONS(1615), 3, + ACTIONS(1624), 3, anon_sym_AT, anon_sym_PERCENT, anon_sym_SLASH_SLASH, - [58898] = 6, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2010), 1, - anon_sym_COMMA, - ACTIONS(2012), 1, - anon_sym_COLON, - ACTIONS(2014), 1, - anon_sym_EQ, - STATE(1010), 1, - aux_sym__patterns_repeat1, - ACTIONS(2016), 13, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_STAR_EQ, - anon_sym_SLASH_EQ, - anon_sym_AT_EQ, - anon_sym_SLASH_SLASH_EQ, - anon_sym_PERCENT_EQ, - anon_sym_STAR_STAR_EQ, - anon_sym_GT_GT_EQ, - anon_sym_LT_LT_EQ, - anon_sym_AMP_EQ, - anon_sym_CARET_EQ, - anon_sym_PIPE_EQ, - [58929] = 12, + [59485] = 12, ACTIONS(3), 1, sym_comment, - ACTIONS(2018), 1, + ACTIONS(2019), 1, sym_identifier, - ACTIONS(2020), 1, + ACTIONS(2021), 1, anon_sym_LPAREN, - ACTIONS(2022), 1, + ACTIONS(2023), 1, anon_sym_STAR, - ACTIONS(2024), 1, + ACTIONS(2025), 1, anon_sym_COLON, - ACTIONS(2026), 1, + ACTIONS(2027), 1, anon_sym_STAR_STAR, - ACTIONS(2028), 1, + ACTIONS(2029), 1, anon_sym_SLASH, - STATE(1385), 1, + STATE(1453), 1, sym_parameter, - STATE(1593), 1, - sym_lambda_parameters, - STATE(1598), 1, + STATE(1606), 1, sym__parameters, - STATE(1520), 2, + STATE(1720), 1, + sym_lambda_parameters, + STATE(1574), 2, sym_list_splat_pattern, sym_dictionary_splat_pattern, - STATE(1394), 6, + STATE(1454), 6, sym_tuple_pattern, sym_default_parameter, sym_typed_default_parameter, sym_typed_parameter, sym_positional_separator, sym_keyword_separator, - [58972] = 12, + [59528] = 12, ACTIONS(3), 1, sym_comment, - ACTIONS(2018), 1, + ACTIONS(2019), 1, sym_identifier, - ACTIONS(2020), 1, + ACTIONS(2021), 1, anon_sym_LPAREN, - ACTIONS(2022), 1, + ACTIONS(2023), 1, anon_sym_STAR, - ACTIONS(2026), 1, + ACTIONS(2027), 1, anon_sym_STAR_STAR, - ACTIONS(2028), 1, + ACTIONS(2029), 1, anon_sym_SLASH, - ACTIONS(2030), 1, + ACTIONS(2031), 1, anon_sym_COLON, - STATE(1385), 1, + STATE(1453), 1, sym_parameter, - STATE(1598), 1, + STATE(1606), 1, sym__parameters, - STATE(1690), 1, + STATE(1682), 1, sym_lambda_parameters, - STATE(1520), 2, + STATE(1574), 2, sym_list_splat_pattern, sym_dictionary_splat_pattern, - STATE(1394), 6, + STATE(1454), 6, sym_tuple_pattern, sym_default_parameter, sym_typed_default_parameter, sym_typed_parameter, sym_positional_separator, sym_keyword_separator, - [59015] = 12, + [59571] = 12, ACTIONS(3), 1, sym_comment, - ACTIONS(2018), 1, + ACTIONS(2019), 1, sym_identifier, - ACTIONS(2020), 1, + ACTIONS(2021), 1, anon_sym_LPAREN, - ACTIONS(2022), 1, + ACTIONS(2023), 1, anon_sym_STAR, - ACTIONS(2026), 1, + ACTIONS(2027), 1, anon_sym_STAR_STAR, - ACTIONS(2028), 1, + ACTIONS(2029), 1, anon_sym_SLASH, - ACTIONS(2032), 1, + ACTIONS(2033), 1, anon_sym_COLON, - STATE(1385), 1, + STATE(1453), 1, sym_parameter, - STATE(1598), 1, + STATE(1606), 1, sym__parameters, - STATE(1668), 1, + STATE(1710), 1, sym_lambda_parameters, - STATE(1520), 2, + STATE(1574), 2, sym_list_splat_pattern, sym_dictionary_splat_pattern, - STATE(1394), 6, + STATE(1454), 6, sym_tuple_pattern, sym_default_parameter, sym_typed_default_parameter, sym_typed_parameter, sym_positional_separator, sym_keyword_separator, - [59058] = 12, + [59614] = 6, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2035), 1, + anon_sym_COMMA, + ACTIONS(2037), 1, + anon_sym_COLON, + ACTIONS(2039), 1, + anon_sym_EQ, + STATE(1012), 1, + aux_sym__patterns_repeat1, + ACTIONS(2041), 13, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_AT_EQ, + anon_sym_SLASH_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_STAR_STAR_EQ, + anon_sym_GT_GT_EQ, + anon_sym_LT_LT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + [59645] = 12, ACTIONS(3), 1, sym_comment, - ACTIONS(2018), 1, + ACTIONS(2019), 1, sym_identifier, - ACTIONS(2020), 1, + ACTIONS(2021), 1, anon_sym_LPAREN, - ACTIONS(2022), 1, + ACTIONS(2023), 1, anon_sym_STAR, - ACTIONS(2026), 1, + ACTIONS(2027), 1, anon_sym_STAR_STAR, - ACTIONS(2028), 1, + ACTIONS(2029), 1, anon_sym_SLASH, - ACTIONS(2034), 1, + ACTIONS(2043), 1, anon_sym_COLON, - STATE(1385), 1, + STATE(1453), 1, sym_parameter, - STATE(1598), 1, + STATE(1606), 1, sym__parameters, - STATE(1604), 1, + STATE(1622), 1, sym_lambda_parameters, - STATE(1520), 2, + STATE(1574), 2, sym_list_splat_pattern, sym_dictionary_splat_pattern, - STATE(1394), 6, + STATE(1454), 6, sym_tuple_pattern, sym_default_parameter, sym_typed_default_parameter, sym_typed_parameter, sym_positional_separator, sym_keyword_separator, - [59101] = 12, + [59688] = 12, ACTIONS(3), 1, sym_comment, - ACTIONS(2018), 1, + ACTIONS(2019), 1, sym_identifier, - ACTIONS(2020), 1, + ACTIONS(2021), 1, anon_sym_LPAREN, - ACTIONS(2022), 1, + ACTIONS(2023), 1, anon_sym_STAR, - ACTIONS(2026), 1, + ACTIONS(2027), 1, anon_sym_STAR_STAR, - ACTIONS(2028), 1, + ACTIONS(2029), 1, anon_sym_SLASH, - ACTIONS(2036), 1, + ACTIONS(2045), 1, anon_sym_COLON, - STATE(1385), 1, + STATE(1453), 1, sym_parameter, - STATE(1598), 1, - sym__parameters, - STATE(1673), 1, + STATE(1605), 1, sym_lambda_parameters, - STATE(1520), 2, + STATE(1606), 1, + sym__parameters, + STATE(1574), 2, sym_list_splat_pattern, sym_dictionary_splat_pattern, - STATE(1394), 6, + STATE(1454), 6, sym_tuple_pattern, sym_default_parameter, sym_typed_default_parameter, sym_typed_parameter, sym_positional_separator, sym_keyword_separator, - [59144] = 12, + [59731] = 12, ACTIONS(3), 1, sym_comment, - ACTIONS(2018), 1, + ACTIONS(2019), 1, sym_identifier, - ACTIONS(2020), 1, + ACTIONS(2021), 1, anon_sym_LPAREN, - ACTIONS(2022), 1, + ACTIONS(2023), 1, anon_sym_STAR, - ACTIONS(2026), 1, + ACTIONS(2027), 1, anon_sym_STAR_STAR, - ACTIONS(2028), 1, + ACTIONS(2029), 1, anon_sym_SLASH, - ACTIONS(2038), 1, + ACTIONS(2047), 1, anon_sym_COLON, - STATE(1385), 1, + STATE(1453), 1, sym_parameter, - STATE(1598), 1, + STATE(1606), 1, sym__parameters, - STATE(1682), 1, + STATE(1705), 1, sym_lambda_parameters, - STATE(1520), 2, + STATE(1574), 2, sym_list_splat_pattern, sym_dictionary_splat_pattern, - STATE(1394), 6, + STATE(1454), 6, sym_tuple_pattern, sym_default_parameter, sym_typed_default_parameter, sym_typed_parameter, sym_positional_separator, sym_keyword_separator, - [59187] = 12, + [59774] = 12, ACTIONS(3), 1, sym_comment, - ACTIONS(2018), 1, + ACTIONS(2019), 1, sym_identifier, - ACTIONS(2020), 1, + ACTIONS(2021), 1, anon_sym_LPAREN, - ACTIONS(2022), 1, + ACTIONS(2023), 1, anon_sym_STAR, - ACTIONS(2026), 1, + ACTIONS(2027), 1, anon_sym_STAR_STAR, - ACTIONS(2028), 1, + ACTIONS(2029), 1, anon_sym_SLASH, - ACTIONS(2040), 1, + ACTIONS(2049), 1, anon_sym_COLON, - STATE(1385), 1, + STATE(1453), 1, sym_parameter, - STATE(1598), 1, + STATE(1606), 1, sym__parameters, - STATE(1711), 1, + STATE(1642), 1, sym_lambda_parameters, - STATE(1520), 2, + STATE(1574), 2, + sym_list_splat_pattern, + sym_dictionary_splat_pattern, + STATE(1454), 6, + sym_tuple_pattern, + sym_default_parameter, + sym_typed_default_parameter, + sym_typed_parameter, + sym_positional_separator, + sym_keyword_separator, + [59817] = 11, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2021), 1, + anon_sym_LPAREN, + ACTIONS(2023), 1, + anon_sym_STAR, + ACTIONS(2027), 1, + anon_sym_STAR_STAR, + ACTIONS(2029), 1, + anon_sym_SLASH, + ACTIONS(2051), 1, + sym_identifier, + ACTIONS(2053), 1, + anon_sym_RPAREN, + STATE(1511), 1, + sym_parameter, + STATE(1613), 1, + sym__parameters, + STATE(1510), 2, sym_list_splat_pattern, sym_dictionary_splat_pattern, - STATE(1394), 6, + STATE(1454), 6, sym_tuple_pattern, sym_default_parameter, sym_typed_default_parameter, sym_typed_parameter, sym_positional_separator, sym_keyword_separator, - [59230] = 13, + [59857] = 13, ACTIONS(3), 1, sym_comment, - ACTIONS(310), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(312), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(1861), 1, + ACTIONS(1864), 1, anon_sym_DASH, - ACTIONS(1869), 1, + ACTIONS(1872), 1, sym_integer, - ACTIONS(1871), 1, + ACTIONS(1874), 1, sym_float, - ACTIONS(1940), 1, + ACTIONS(1949), 1, sym_identifier, - STATE(1317), 1, + STATE(1314), 1, sym_string, - STATE(1318), 1, + STATE(1315), 1, sym_template_string, - STATE(1573), 1, + STATE(1586), 1, sym_match_key_value_pattern, - STATE(1140), 2, + STATE(1168), 2, sym_concatenated_string, sym_concatenated_template_string, - STATE(1722), 2, + STATE(1658), 2, sym_match_literal_pattern, sym_match_value_pattern, - ACTIONS(1873), 3, + ACTIONS(1876), 3, sym_true, sym_false, sym_none, - [59274] = 11, + [59901] = 10, ACTIONS(3), 1, sym_comment, - ACTIONS(2020), 1, + ACTIONS(2021), 1, anon_sym_LPAREN, - ACTIONS(2022), 1, + ACTIONS(2023), 1, anon_sym_STAR, - ACTIONS(2026), 1, + ACTIONS(2027), 1, anon_sym_STAR_STAR, - ACTIONS(2028), 1, + ACTIONS(2029), 1, anon_sym_SLASH, - ACTIONS(2042), 1, + ACTIONS(2051), 1, sym_identifier, - ACTIONS(2044), 1, + ACTIONS(2055), 1, anon_sym_RPAREN, - STATE(1428), 1, + STATE(1383), 1, sym_parameter, - STATE(1684), 1, - sym__parameters, - STATE(1442), 2, + STATE(1510), 2, sym_list_splat_pattern, sym_dictionary_splat_pattern, - STATE(1394), 6, + STATE(1454), 6, sym_tuple_pattern, sym_default_parameter, sym_typed_default_parameter, sym_typed_parameter, sym_positional_separator, sym_keyword_separator, - [59314] = 10, + [59938] = 10, ACTIONS(3), 1, sym_comment, - ACTIONS(2018), 1, + ACTIONS(2019), 1, sym_identifier, - ACTIONS(2020), 1, + ACTIONS(2021), 1, anon_sym_LPAREN, - ACTIONS(2022), 1, + ACTIONS(2023), 1, anon_sym_STAR, - ACTIONS(2026), 1, + ACTIONS(2027), 1, anon_sym_STAR_STAR, - ACTIONS(2028), 1, + ACTIONS(2029), 1, anon_sym_SLASH, - ACTIONS(2046), 1, + ACTIONS(2055), 1, anon_sym_COLON, - STATE(1444), 1, + STATE(1383), 1, sym_parameter, - STATE(1520), 2, + STATE(1574), 2, sym_list_splat_pattern, sym_dictionary_splat_pattern, - STATE(1394), 6, + STATE(1454), 6, sym_tuple_pattern, sym_default_parameter, sym_typed_default_parameter, sym_typed_parameter, sym_positional_separator, sym_keyword_separator, - [59351] = 4, + [59975] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2012), 1, + ACTIONS(2037), 1, anon_sym_COLON, - ACTIONS(2014), 1, + ACTIONS(2039), 1, anon_sym_EQ, - ACTIONS(2016), 13, + ACTIONS(2041), 13, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, @@ -73536,143 +74353,116 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, - [59376] = 10, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2018), 1, - sym_identifier, - ACTIONS(2020), 1, - anon_sym_LPAREN, - ACTIONS(2022), 1, - anon_sym_STAR, - ACTIONS(2026), 1, - anon_sym_STAR_STAR, - ACTIONS(2028), 1, - anon_sym_SLASH, - ACTIONS(2048), 1, - anon_sym_COLON, - STATE(1444), 1, - sym_parameter, - STATE(1520), 2, - sym_list_splat_pattern, - sym_dictionary_splat_pattern, - STATE(1394), 6, - sym_tuple_pattern, - sym_default_parameter, - sym_typed_default_parameter, - sym_typed_parameter, - sym_positional_separator, - sym_keyword_separator, - [59413] = 10, + [60000] = 10, ACTIONS(3), 1, sym_comment, - ACTIONS(2020), 1, + ACTIONS(2021), 1, anon_sym_LPAREN, - ACTIONS(2022), 1, + ACTIONS(2023), 1, anon_sym_STAR, - ACTIONS(2026), 1, + ACTIONS(2027), 1, anon_sym_STAR_STAR, - ACTIONS(2028), 1, + ACTIONS(2029), 1, anon_sym_SLASH, - ACTIONS(2042), 1, + ACTIONS(2051), 1, sym_identifier, - ACTIONS(2048), 1, + ACTIONS(2057), 1, anon_sym_RPAREN, - STATE(1444), 1, + STATE(1383), 1, sym_parameter, - STATE(1442), 2, + STATE(1510), 2, sym_list_splat_pattern, sym_dictionary_splat_pattern, - STATE(1394), 6, + STATE(1454), 6, sym_tuple_pattern, sym_default_parameter, sym_typed_default_parameter, sym_typed_parameter, sym_positional_separator, sym_keyword_separator, - [59450] = 10, + [60037] = 10, ACTIONS(3), 1, sym_comment, - ACTIONS(2020), 1, + ACTIONS(2019), 1, + sym_identifier, + ACTIONS(2021), 1, anon_sym_LPAREN, - ACTIONS(2022), 1, + ACTIONS(2023), 1, anon_sym_STAR, - ACTIONS(2026), 1, + ACTIONS(2027), 1, anon_sym_STAR_STAR, - ACTIONS(2028), 1, + ACTIONS(2029), 1, anon_sym_SLASH, - ACTIONS(2042), 1, - sym_identifier, - ACTIONS(2046), 1, - anon_sym_RPAREN, - STATE(1444), 1, + ACTIONS(2057), 1, + anon_sym_COLON, + STATE(1383), 1, sym_parameter, - STATE(1442), 2, + STATE(1574), 2, sym_list_splat_pattern, sym_dictionary_splat_pattern, - STATE(1394), 6, + STATE(1454), 6, sym_tuple_pattern, sym_default_parameter, sym_typed_default_parameter, sym_typed_parameter, sym_positional_separator, sym_keyword_separator, - [59487] = 9, + [60074] = 9, ACTIONS(3), 1, sym_comment, - ACTIONS(2020), 1, + ACTIONS(2021), 1, anon_sym_LPAREN, - ACTIONS(2022), 1, + ACTIONS(2023), 1, anon_sym_STAR, - ACTIONS(2026), 1, + ACTIONS(2027), 1, anon_sym_STAR_STAR, - ACTIONS(2028), 1, + ACTIONS(2029), 1, anon_sym_SLASH, - ACTIONS(2042), 1, + ACTIONS(2051), 1, sym_identifier, - STATE(1444), 1, + STATE(1383), 1, sym_parameter, - STATE(1442), 2, + STATE(1510), 2, sym_list_splat_pattern, sym_dictionary_splat_pattern, - STATE(1394), 6, + STATE(1454), 6, sym_tuple_pattern, sym_default_parameter, sym_typed_default_parameter, sym_typed_parameter, sym_positional_separator, sym_keyword_separator, - [59521] = 9, + [60108] = 9, ACTIONS(3), 1, sym_comment, - ACTIONS(2018), 1, + ACTIONS(2019), 1, sym_identifier, - ACTIONS(2020), 1, + ACTIONS(2021), 1, anon_sym_LPAREN, - ACTIONS(2022), 1, + ACTIONS(2023), 1, anon_sym_STAR, - ACTIONS(2026), 1, + ACTIONS(2027), 1, anon_sym_STAR_STAR, - ACTIONS(2028), 1, + ACTIONS(2029), 1, anon_sym_SLASH, - STATE(1444), 1, + STATE(1383), 1, sym_parameter, - STATE(1520), 2, + STATE(1574), 2, sym_list_splat_pattern, sym_dictionary_splat_pattern, - STATE(1394), 6, + STATE(1454), 6, sym_tuple_pattern, sym_default_parameter, sym_typed_default_parameter, sym_typed_parameter, sym_positional_separator, sym_keyword_separator, - [59555] = 3, + [60142] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(2052), 1, + ACTIONS(2061), 1, anon_sym_as, - ACTIONS(2050), 12, + ACTIONS(2059), 12, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_if, @@ -73685,12 +74475,12 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_EQ, anon_sym_and, anon_sym_or, - [59576] = 3, + [60163] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1613), 1, + ACTIONS(1622), 1, anon_sym_as, - ACTIONS(1597), 12, + ACTIONS(1606), 12, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_if, @@ -73703,14 +74493,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_EQ, anon_sym_and, anon_sym_or, - [59597] = 4, + [60184] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2056), 1, + ACTIONS(2065), 1, anon_sym_DOT, - STATE(1032), 1, + STATE(1033), 1, aux_sym_match_value_pattern_repeat1, - ACTIONS(2054), 10, + ACTIONS(2063), 10, anon_sym_import, anon_sym_LPAREN, anon_sym_RPAREN, @@ -73721,163 +74511,37 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE, anon_sym_RBRACK, anon_sym_RBRACE, - [59619] = 9, - ACTIONS(2059), 1, + [60206] = 9, + ACTIONS(2068), 1, anon_sym_LBRACE2, - ACTIONS(2063), 1, + ACTIONS(2074), 1, anon_sym_BSLASH, - ACTIONS(2065), 1, - sym_comment, - ACTIONS(2067), 1, - sym__string_end, - STATE(1052), 1, - aux_sym_string_repeat1, - STATE(1245), 1, - sym_interpolation, - STATE(1252), 1, - sym_string_content, - STATE(1147), 2, - sym__not_escape_sequence, - aux_sym_string_content_repeat1, - ACTIONS(2061), 3, - sym__string_content, - sym__escape_interpolation, - sym_escape_sequence, - [59650] = 12, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2069), 1, - anon_sym_COMMA, - ACTIONS(2071), 1, - anon_sym_if, - ACTIONS(2073), 1, - anon_sym_COLON, - ACTIONS(2075), 1, - anon_sym_async, ACTIONS(2077), 1, - anon_sym_for, - ACTIONS(2079), 1, - anon_sym_RBRACE, - ACTIONS(2081), 1, - anon_sym_and, - ACTIONS(2083), 1, - anon_sym_or, - STATE(1100), 1, - sym_for_in_clause, - STATE(1270), 1, - aux_sym__collection_elements_repeat1, - STATE(1627), 1, - sym__comprehension_clauses, - [59687] = 9, - ACTIONS(2059), 1, - anon_sym_LBRACE2, - ACTIONS(2063), 1, - anon_sym_BSLASH, - ACTIONS(2065), 1, - sym_comment, - ACTIONS(2085), 1, - sym__string_end, - STATE(1043), 1, - aux_sym_string_repeat1, - STATE(1245), 1, - sym_interpolation, - STATE(1252), 1, - sym_string_content, - STATE(1147), 2, - sym__not_escape_sequence, - aux_sym_string_content_repeat1, - ACTIONS(2061), 3, - sym__string_content, - sym__escape_interpolation, - sym_escape_sequence, - [59718] = 9, - ACTIONS(2059), 1, - anon_sym_LBRACE2, - ACTIONS(2063), 1, - anon_sym_BSLASH, - ACTIONS(2065), 1, sym_comment, - ACTIONS(2087), 1, + ACTIONS(2079), 1, sym__string_end, - STATE(1052), 1, + STATE(1034), 1, aux_sym_string_repeat1, - STATE(1245), 1, - sym_interpolation, - STATE(1252), 1, + STATE(1254), 1, sym_string_content, - STATE(1147), 2, - sym__not_escape_sequence, - aux_sym_string_content_repeat1, - ACTIONS(2061), 3, - sym__string_content, - sym__escape_interpolation, - sym_escape_sequence, - [59749] = 9, - ACTIONS(2059), 1, - anon_sym_LBRACE2, - ACTIONS(2063), 1, - anon_sym_BSLASH, - ACTIONS(2065), 1, - sym_comment, - ACTIONS(2089), 1, - sym__string_end, - STATE(1036), 1, - aux_sym_string_repeat1, - STATE(1245), 1, + STATE(1255), 1, sym_interpolation, - STATE(1252), 1, - sym_string_content, - STATE(1147), 2, + STATE(1149), 2, sym__not_escape_sequence, aux_sym_string_content_repeat1, - ACTIONS(2061), 3, + ACTIONS(2071), 3, sym__string_content, sym__escape_interpolation, sym_escape_sequence, - [59780] = 5, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2091), 1, - anon_sym_DOT, - ACTIONS(2093), 1, - anon_sym_LPAREN, - STATE(1042), 1, - aux_sym_match_value_pattern_repeat1, - ACTIONS(2095), 8, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_as, - anon_sym_if, - anon_sym_COLON, - anon_sym_PIPE, - anon_sym_RBRACK, - anon_sym_RBRACE, - [59803] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(647), 1, - sym__string_start, - STATE(744), 2, - sym_string, - aux_sym_concatenated_string_repeat1, - ACTIONS(2097), 8, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_as, - anon_sym_if, - anon_sym_COLON, - anon_sym_PIPE, - anon_sym_RBRACK, - anon_sym_RBRACE, - [59824] = 4, + [60237] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(649), 1, + ACTIONS(656), 1, sym__template_string_start, - STATE(745), 2, + STATE(760), 2, sym_template_string, aux_sym_concatenated_template_string_repeat1, - ACTIONS(2097), 8, + ACTIONS(2081), 8, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_as, @@ -73886,41 +74550,16 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE, anon_sym_RBRACK, anon_sym_RBRACE, - [59845] = 12, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2075), 1, - anon_sym_async, - ACTIONS(2077), 1, - anon_sym_for, - ACTIONS(2099), 1, - anon_sym_RPAREN, - ACTIONS(2101), 1, - anon_sym_COMMA, - ACTIONS(2104), 1, - anon_sym_as, - ACTIONS(2106), 1, - anon_sym_if, - ACTIONS(2108), 1, - anon_sym_and, - ACTIONS(2110), 1, - anon_sym_or, - STATE(1100), 1, - sym_for_in_clause, - STATE(1270), 1, - aux_sym__collection_elements_repeat1, - STATE(1706), 1, - sym__comprehension_clauses, - [59882] = 5, + [60258] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2091), 1, + ACTIONS(2083), 1, anon_sym_DOT, - ACTIONS(2112), 1, + ACTIONS(2085), 1, anon_sym_LPAREN, - STATE(1032), 1, + STATE(1033), 1, aux_sym_match_value_pattern_repeat1, - ACTIONS(2114), 8, + ACTIONS(2087), 8, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_as, @@ -73929,564 +74568,662 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE, anon_sym_RBRACK, anon_sym_RBRACE, - [59905] = 9, - ACTIONS(2059), 1, + [60281] = 9, + ACTIONS(2077), 1, + sym_comment, + ACTIONS(2089), 1, anon_sym_LBRACE2, - ACTIONS(2063), 1, + ACTIONS(2093), 1, anon_sym_BSLASH, - ACTIONS(2065), 1, - sym_comment, - ACTIONS(2116), 1, + ACTIONS(2095), 1, sym__string_end, - STATE(1052), 1, + STATE(1039), 1, aux_sym_string_repeat1, - STATE(1245), 1, - sym_interpolation, - STATE(1252), 1, + STATE(1254), 1, sym_string_content, - STATE(1147), 2, + STATE(1255), 1, + sym_interpolation, + STATE(1149), 2, sym__not_escape_sequence, aux_sym_string_content_repeat1, - ACTIONS(2061), 3, + ACTIONS(2091), 3, sym__string_content, sym__escape_interpolation, sym_escape_sequence, - [59936] = 9, - ACTIONS(2059), 1, + [60312] = 9, + ACTIONS(2077), 1, + sym_comment, + ACTIONS(2089), 1, anon_sym_LBRACE2, - ACTIONS(2063), 1, + ACTIONS(2093), 1, anon_sym_BSLASH, - ACTIONS(2065), 1, - sym_comment, - ACTIONS(2118), 1, + ACTIONS(2097), 1, sym__string_end, - STATE(1047), 1, + STATE(1040), 1, aux_sym_string_repeat1, - STATE(1245), 1, - sym_interpolation, - STATE(1252), 1, + STATE(1254), 1, sym_string_content, - STATE(1147), 2, + STATE(1255), 1, + sym_interpolation, + STATE(1149), 2, sym__not_escape_sequence, aux_sym_string_content_repeat1, - ACTIONS(2061), 3, + ACTIONS(2091), 3, sym__string_content, sym__escape_interpolation, sym_escape_sequence, - [59967] = 9, - ACTIONS(2059), 1, + [60343] = 9, + ACTIONS(2077), 1, + sym_comment, + ACTIONS(2089), 1, anon_sym_LBRACE2, - ACTIONS(2063), 1, + ACTIONS(2093), 1, anon_sym_BSLASH, - ACTIONS(2065), 1, - sym_comment, - ACTIONS(2120), 1, + ACTIONS(2099), 1, sym__string_end, - STATE(1048), 1, + STATE(1034), 1, aux_sym_string_repeat1, - STATE(1245), 1, + STATE(1254), 1, + sym_string_content, + STATE(1255), 1, sym_interpolation, - STATE(1252), 1, + STATE(1149), 2, + sym__not_escape_sequence, + aux_sym_string_content_repeat1, + ACTIONS(2091), 3, + sym__string_content, + sym__escape_interpolation, + sym_escape_sequence, + [60374] = 9, + ACTIONS(2077), 1, + sym_comment, + ACTIONS(2089), 1, + anon_sym_LBRACE2, + ACTIONS(2093), 1, + anon_sym_BSLASH, + ACTIONS(2101), 1, + sym__string_end, + STATE(1034), 1, + aux_sym_string_repeat1, + STATE(1254), 1, sym_string_content, - STATE(1147), 2, + STATE(1255), 1, + sym_interpolation, + STATE(1149), 2, sym__not_escape_sequence, aux_sym_string_content_repeat1, - ACTIONS(2061), 3, + ACTIONS(2091), 3, sym__string_content, sym__escape_interpolation, sym_escape_sequence, - [59998] = 12, + [60405] = 12, ACTIONS(3), 1, sym_comment, - ACTIONS(2069), 1, + ACTIONS(2103), 1, anon_sym_COMMA, - ACTIONS(2071), 1, + ACTIONS(2105), 1, anon_sym_if, - ACTIONS(2073), 1, + ACTIONS(2107), 1, anon_sym_COLON, - ACTIONS(2075), 1, + ACTIONS(2109), 1, anon_sym_async, - ACTIONS(2077), 1, + ACTIONS(2111), 1, anon_sym_for, - ACTIONS(2079), 1, + ACTIONS(2113), 1, anon_sym_RBRACE, - ACTIONS(2081), 1, + ACTIONS(2115), 1, anon_sym_and, - ACTIONS(2083), 1, + ACTIONS(2117), 1, anon_sym_or, - STATE(1100), 1, + STATE(1091), 1, sym_for_in_clause, - STATE(1270), 1, + STATE(1267), 1, aux_sym__collection_elements_repeat1, - STATE(1645), 1, + STATE(1719), 1, sym__comprehension_clauses, - [60035] = 9, - ACTIONS(2059), 1, + [60442] = 9, + ACTIONS(2077), 1, + sym_comment, + ACTIONS(2089), 1, anon_sym_LBRACE2, - ACTIONS(2063), 1, + ACTIONS(2093), 1, anon_sym_BSLASH, - ACTIONS(2065), 1, - sym_comment, - ACTIONS(2122), 1, + ACTIONS(2119), 1, sym__string_end, - STATE(1052), 1, + STATE(1054), 1, aux_sym_string_repeat1, - STATE(1245), 1, - sym_interpolation, - STATE(1252), 1, + STATE(1254), 1, sym_string_content, - STATE(1147), 2, + STATE(1255), 1, + sym_interpolation, + STATE(1149), 2, sym__not_escape_sequence, aux_sym_string_content_repeat1, - ACTIONS(2061), 3, + ACTIONS(2091), 3, sym__string_content, sym__escape_interpolation, sym_escape_sequence, - [60066] = 9, - ACTIONS(2059), 1, + [60473] = 9, + ACTIONS(2077), 1, + sym_comment, + ACTIONS(2089), 1, anon_sym_LBRACE2, - ACTIONS(2063), 1, + ACTIONS(2093), 1, anon_sym_BSLASH, - ACTIONS(2065), 1, - sym_comment, - ACTIONS(2124), 1, + ACTIONS(2121), 1, sym__string_end, - STATE(1052), 1, + STATE(1034), 1, aux_sym_string_repeat1, - STATE(1245), 1, - sym_interpolation, - STATE(1252), 1, + STATE(1254), 1, sym_string_content, - STATE(1147), 2, + STATE(1255), 1, + sym_interpolation, + STATE(1149), 2, sym__not_escape_sequence, aux_sym_string_content_repeat1, - ACTIONS(2061), 3, + ACTIONS(2091), 3, sym__string_content, sym__escape_interpolation, sym_escape_sequence, - [60097] = 2, - ACTIONS(3), 1, + [60504] = 9, + ACTIONS(2077), 1, sym_comment, - ACTIONS(2054), 11, - anon_sym_import, - anon_sym_DOT, - anon_sym_LPAREN, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_as, - anon_sym_if, - anon_sym_COLON, - anon_sym_PIPE, - anon_sym_RBRACK, - anon_sym_RBRACE, - [60114] = 9, - ACTIONS(2059), 1, + ACTIONS(2089), 1, anon_sym_LBRACE2, - ACTIONS(2063), 1, + ACTIONS(2093), 1, anon_sym_BSLASH, - ACTIONS(2065), 1, - sym_comment, - ACTIONS(2126), 1, + ACTIONS(2123), 1, sym__string_end, - STATE(1053), 1, + STATE(1046), 1, aux_sym_string_repeat1, - STATE(1245), 1, - sym_interpolation, - STATE(1252), 1, + STATE(1254), 1, sym_string_content, - STATE(1147), 2, + STATE(1255), 1, + sym_interpolation, + STATE(1149), 2, sym__not_escape_sequence, aux_sym_string_content_repeat1, - ACTIONS(2061), 3, + ACTIONS(2091), 3, sym__string_content, sym__escape_interpolation, sym_escape_sequence, - [60145] = 9, - ACTIONS(2059), 1, + [60535] = 9, + ACTIONS(2077), 1, + sym_comment, + ACTIONS(2089), 1, anon_sym_LBRACE2, - ACTIONS(2063), 1, + ACTIONS(2093), 1, anon_sym_BSLASH, - ACTIONS(2065), 1, - sym_comment, - ACTIONS(2128), 1, + ACTIONS(2125), 1, sym__string_end, - STATE(1054), 1, + STATE(1034), 1, aux_sym_string_repeat1, - STATE(1245), 1, - sym_interpolation, - STATE(1252), 1, + STATE(1254), 1, sym_string_content, - STATE(1147), 2, + STATE(1255), 1, + sym_interpolation, + STATE(1149), 2, sym__not_escape_sequence, aux_sym_string_content_repeat1, - ACTIONS(2061), 3, + ACTIONS(2091), 3, sym__string_content, sym__escape_interpolation, sym_escape_sequence, - [60176] = 9, - ACTIONS(2065), 1, + [60566] = 9, + ACTIONS(2077), 1, sym_comment, - ACTIONS(2130), 1, + ACTIONS(2089), 1, anon_sym_LBRACE2, - ACTIONS(2136), 1, + ACTIONS(2093), 1, anon_sym_BSLASH, - ACTIONS(2139), 1, + ACTIONS(2127), 1, sym__string_end, - STATE(1052), 1, + STATE(1034), 1, aux_sym_string_repeat1, - STATE(1245), 1, - sym_interpolation, - STATE(1252), 1, + STATE(1254), 1, sym_string_content, - STATE(1147), 2, + STATE(1255), 1, + sym_interpolation, + STATE(1149), 2, sym__not_escape_sequence, aux_sym_string_content_repeat1, - ACTIONS(2133), 3, + ACTIONS(2091), 3, sym__string_content, sym__escape_interpolation, sym_escape_sequence, - [60207] = 9, - ACTIONS(2059), 1, + [60597] = 9, + ACTIONS(2077), 1, + sym_comment, + ACTIONS(2089), 1, anon_sym_LBRACE2, - ACTIONS(2063), 1, + ACTIONS(2093), 1, anon_sym_BSLASH, - ACTIONS(2065), 1, - sym_comment, - ACTIONS(2141), 1, + ACTIONS(2129), 1, sym__string_end, - STATE(1052), 1, + STATE(1049), 1, aux_sym_string_repeat1, - STATE(1245), 1, - sym_interpolation, - STATE(1252), 1, + STATE(1254), 1, sym_string_content, - STATE(1147), 2, + STATE(1255), 1, + sym_interpolation, + STATE(1149), 2, sym__not_escape_sequence, aux_sym_string_content_repeat1, - ACTIONS(2061), 3, + ACTIONS(2091), 3, sym__string_content, sym__escape_interpolation, sym_escape_sequence, - [60238] = 9, - ACTIONS(2059), 1, + [60628] = 9, + ACTIONS(2077), 1, + sym_comment, + ACTIONS(2089), 1, anon_sym_LBRACE2, - ACTIONS(2063), 1, + ACTIONS(2093), 1, anon_sym_BSLASH, - ACTIONS(2065), 1, - sym_comment, - ACTIONS(2143), 1, + ACTIONS(2131), 1, sym__string_end, - STATE(1052), 1, + STATE(1050), 1, aux_sym_string_repeat1, - STATE(1245), 1, - sym_interpolation, - STATE(1252), 1, + STATE(1254), 1, sym_string_content, - STATE(1147), 2, + STATE(1255), 1, + sym_interpolation, + STATE(1149), 2, sym__not_escape_sequence, aux_sym_string_content_repeat1, - ACTIONS(2061), 3, + ACTIONS(2091), 3, sym__string_content, sym__escape_interpolation, sym_escape_sequence, - [60269] = 9, - ACTIONS(2059), 1, + [60659] = 9, + ACTIONS(2077), 1, + sym_comment, + ACTIONS(2089), 1, anon_sym_LBRACE2, - ACTIONS(2063), 1, + ACTIONS(2093), 1, anon_sym_BSLASH, - ACTIONS(2065), 1, - sym_comment, - ACTIONS(2145), 1, + ACTIONS(2133), 1, sym__string_end, - STATE(1057), 1, + STATE(1034), 1, aux_sym_string_repeat1, - STATE(1245), 1, - sym_interpolation, - STATE(1252), 1, + STATE(1254), 1, sym_string_content, - STATE(1147), 2, + STATE(1255), 1, + sym_interpolation, + STATE(1149), 2, sym__not_escape_sequence, aux_sym_string_content_repeat1, - ACTIONS(2061), 3, + ACTIONS(2091), 3, sym__string_content, sym__escape_interpolation, sym_escape_sequence, - [60300] = 9, - ACTIONS(2059), 1, + [60690] = 9, + ACTIONS(2077), 1, + sym_comment, + ACTIONS(2089), 1, anon_sym_LBRACE2, - ACTIONS(2063), 1, + ACTIONS(2093), 1, anon_sym_BSLASH, - ACTIONS(2065), 1, - sym_comment, - ACTIONS(2147), 1, + ACTIONS(2135), 1, sym__string_end, - STATE(1058), 1, + STATE(1034), 1, aux_sym_string_repeat1, - STATE(1245), 1, - sym_interpolation, - STATE(1252), 1, + STATE(1254), 1, sym_string_content, - STATE(1147), 2, + STATE(1255), 1, + sym_interpolation, + STATE(1149), 2, sym__not_escape_sequence, aux_sym_string_content_repeat1, - ACTIONS(2061), 3, + ACTIONS(2091), 3, sym__string_content, sym__escape_interpolation, sym_escape_sequence, - [60331] = 9, - ACTIONS(2059), 1, + [60721] = 9, + ACTIONS(2077), 1, + sym_comment, + ACTIONS(2089), 1, anon_sym_LBRACE2, - ACTIONS(2063), 1, + ACTIONS(2093), 1, anon_sym_BSLASH, - ACTIONS(2065), 1, - sym_comment, - ACTIONS(2149), 1, + ACTIONS(2137), 1, sym__string_end, STATE(1052), 1, aux_sym_string_repeat1, - STATE(1245), 1, - sym_interpolation, - STATE(1252), 1, + STATE(1254), 1, sym_string_content, - STATE(1147), 2, + STATE(1255), 1, + sym_interpolation, + STATE(1149), 2, sym__not_escape_sequence, aux_sym_string_content_repeat1, - ACTIONS(2061), 3, + ACTIONS(2091), 3, sym__string_content, sym__escape_interpolation, sym_escape_sequence, - [60362] = 9, - ACTIONS(2059), 1, + [60752] = 9, + ACTIONS(2077), 1, + sym_comment, + ACTIONS(2089), 1, anon_sym_LBRACE2, - ACTIONS(2063), 1, + ACTIONS(2093), 1, anon_sym_BSLASH, - ACTIONS(2065), 1, - sym_comment, - ACTIONS(2151), 1, + ACTIONS(2139), 1, sym__string_end, - STATE(1052), 1, + STATE(1034), 1, aux_sym_string_repeat1, - STATE(1245), 1, - sym_interpolation, - STATE(1252), 1, + STATE(1254), 1, sym_string_content, - STATE(1147), 2, + STATE(1255), 1, + sym_interpolation, + STATE(1149), 2, sym__not_escape_sequence, aux_sym_string_content_repeat1, - ACTIONS(2061), 3, + ACTIONS(2091), 3, sym__string_content, sym__escape_interpolation, sym_escape_sequence, - [60393] = 9, - ACTIONS(2059), 1, + [60783] = 9, + ACTIONS(2077), 1, + sym_comment, + ACTIONS(2089), 1, anon_sym_LBRACE2, - ACTIONS(2063), 1, + ACTIONS(2093), 1, anon_sym_BSLASH, - ACTIONS(2065), 1, - sym_comment, - ACTIONS(2153), 1, + ACTIONS(2141), 1, sym__string_end, - STATE(1033), 1, + STATE(1043), 1, aux_sym_string_repeat1, - STATE(1245), 1, + STATE(1254), 1, + sym_string_content, + STATE(1255), 1, sym_interpolation, - STATE(1252), 1, + STATE(1149), 2, + sym__not_escape_sequence, + aux_sym_string_content_repeat1, + ACTIONS(2091), 3, + sym__string_content, + sym__escape_interpolation, + sym_escape_sequence, + [60814] = 9, + ACTIONS(2077), 1, + sym_comment, + ACTIONS(2089), 1, + anon_sym_LBRACE2, + ACTIONS(2093), 1, + anon_sym_BSLASH, + ACTIONS(2143), 1, + sym__string_end, + STATE(1034), 1, + aux_sym_string_repeat1, + STATE(1254), 1, sym_string_content, - STATE(1147), 2, + STATE(1255), 1, + sym_interpolation, + STATE(1149), 2, sym__not_escape_sequence, aux_sym_string_content_repeat1, - ACTIONS(2061), 3, + ACTIONS(2091), 3, sym__string_content, sym__escape_interpolation, sym_escape_sequence, - [60424] = 12, + [60845] = 12, ACTIONS(3), 1, sym_comment, - ACTIONS(2069), 1, + ACTIONS(2103), 1, anon_sym_COMMA, - ACTIONS(2071), 1, + ACTIONS(2105), 1, anon_sym_if, - ACTIONS(2073), 1, + ACTIONS(2107), 1, anon_sym_COLON, - ACTIONS(2075), 1, + ACTIONS(2109), 1, anon_sym_async, - ACTIONS(2077), 1, + ACTIONS(2111), 1, anon_sym_for, - ACTIONS(2079), 1, + ACTIONS(2113), 1, anon_sym_RBRACE, - ACTIONS(2081), 1, + ACTIONS(2115), 1, anon_sym_and, - ACTIONS(2083), 1, + ACTIONS(2117), 1, anon_sym_or, - STATE(1100), 1, + STATE(1091), 1, sym_for_in_clause, - STATE(1270), 1, + STATE(1267), 1, aux_sym__collection_elements_repeat1, - STATE(1649), 1, + STATE(1672), 1, sym__comprehension_clauses, - [60461] = 12, + [60882] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2069), 1, + ACTIONS(2063), 11, + anon_sym_import, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_RPAREN, anon_sym_COMMA, - ACTIONS(2071), 1, + anon_sym_as, anon_sym_if, - ACTIONS(2073), 1, anon_sym_COLON, - ACTIONS(2075), 1, + anon_sym_PIPE, + anon_sym_RBRACK, + anon_sym_RBRACE, + [60899] = 12, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2109), 1, anon_sym_async, - ACTIONS(2077), 1, + ACTIONS(2111), 1, anon_sym_for, - ACTIONS(2079), 1, - anon_sym_RBRACE, - ACTIONS(2081), 1, + ACTIONS(2145), 1, + anon_sym_RPAREN, + ACTIONS(2147), 1, + anon_sym_COMMA, + ACTIONS(2150), 1, + anon_sym_as, + ACTIONS(2152), 1, + anon_sym_if, + ACTIONS(2154), 1, anon_sym_and, - ACTIONS(2083), 1, + ACTIONS(2156), 1, anon_sym_or, - STATE(1100), 1, + STATE(1091), 1, sym_for_in_clause, - STATE(1270), 1, + STATE(1267), 1, aux_sym__collection_elements_repeat1, - STATE(1715), 1, + STATE(1731), 1, sym__comprehension_clauses, - [60498] = 5, + [60936] = 12, ACTIONS(3), 1, sym_comment, - ACTIONS(2108), 1, - anon_sym_and, - ACTIONS(2110), 1, - anon_sym_or, - ACTIONS(2157), 1, - anon_sym_as, - ACTIONS(2155), 7, - anon_sym_RPAREN, + ACTIONS(2103), 1, anon_sym_COMMA, + ACTIONS(2105), 1, anon_sym_if, + ACTIONS(2107), 1, + anon_sym_COLON, + ACTIONS(2109), 1, anon_sym_async, + ACTIONS(2111), 1, anon_sym_for, - anon_sym_RBRACK, + ACTIONS(2113), 1, anon_sym_RBRACE, - [60520] = 3, + ACTIONS(2115), 1, + anon_sym_and, + ACTIONS(2117), 1, + anon_sym_or, + STATE(1091), 1, + sym_for_in_clause, + STATE(1267), 1, + aux_sym__collection_elements_repeat1, + STATE(1603), 1, + sym__comprehension_clauses, + [60973] = 12, ACTIONS(3), 1, sym_comment, - ACTIONS(2161), 1, - anon_sym_and, - ACTIONS(2159), 9, - anon_sym_RPAREN, + ACTIONS(2103), 1, anon_sym_COMMA, + ACTIONS(2105), 1, anon_sym_if, + ACTIONS(2107), 1, anon_sym_COLON, - anon_sym_else, - anon_sym_RBRACK, + ACTIONS(2109), 1, + anon_sym_async, + ACTIONS(2111), 1, + anon_sym_for, + ACTIONS(2113), 1, anon_sym_RBRACE, - anon_sym_EQ, + ACTIONS(2115), 1, + anon_sym_and, + ACTIONS(2117), 1, anon_sym_or, - [60538] = 6, + STATE(1091), 1, + sym_for_in_clause, + STATE(1267), 1, + aux_sym__collection_elements_repeat1, + STATE(1666), 1, + sym__comprehension_clauses, + [61010] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2106), 1, - anon_sym_if, - ACTIONS(2108), 1, - anon_sym_and, - ACTIONS(2110), 1, - anon_sym_or, - ACTIONS(2165), 1, - anon_sym_as, - ACTIONS(2163), 6, + ACTIONS(2083), 1, + anon_sym_DOT, + ACTIONS(2158), 1, + anon_sym_LPAREN, + STATE(1036), 1, + aux_sym_match_value_pattern_repeat1, + ACTIONS(2160), 8, anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_async, - anon_sym_for, + anon_sym_as, + anon_sym_if, + anon_sym_COLON, + anon_sym_PIPE, anon_sym_RBRACK, anon_sym_RBRACE, - [60562] = 4, + [61033] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2161), 1, - anon_sym_and, - ACTIONS(2167), 1, - anon_sym_or, - ACTIONS(2159), 8, + ACTIONS(654), 1, + sym__string_start, + STATE(759), 2, + sym_string, + aux_sym_concatenated_string_repeat1, + ACTIONS(2081), 8, anon_sym_RPAREN, anon_sym_COMMA, + anon_sym_as, anon_sym_if, anon_sym_COLON, - anon_sym_else, + anon_sym_PIPE, anon_sym_RBRACK, anon_sym_RBRACE, - anon_sym_EQ, - [60582] = 11, + [61054] = 9, + ACTIONS(2077), 1, + sym_comment, + ACTIONS(2089), 1, + anon_sym_LBRACE2, + ACTIONS(2093), 1, + anon_sym_BSLASH, + ACTIONS(2162), 1, + sym__string_end, + STATE(1045), 1, + aux_sym_string_repeat1, + STATE(1254), 1, + sym_string_content, + STATE(1255), 1, + sym_interpolation, + STATE(1149), 2, + sym__not_escape_sequence, + aux_sym_string_content_repeat1, + ACTIONS(2091), 3, + sym__string_content, + sym__escape_interpolation, + sym_escape_sequence, + [61085] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2069), 1, - anon_sym_COMMA, - ACTIONS(2075), 1, - anon_sym_async, - ACTIONS(2077), 1, - anon_sym_for, - ACTIONS(2106), 1, - anon_sym_if, - ACTIONS(2108), 1, + ACTIONS(2154), 1, anon_sym_and, - ACTIONS(2110), 1, + ACTIONS(2156), 1, anon_sym_or, - ACTIONS(2169), 1, + ACTIONS(2166), 1, + anon_sym_as, + ACTIONS(2164), 7, anon_sym_RPAREN, - STATE(1100), 1, - sym_for_in_clause, - STATE(1270), 1, - aux_sym__collection_elements_repeat1, - STATE(1686), 1, - sym__comprehension_clauses, - [60616] = 11, + anon_sym_COMMA, + anon_sym_if, + anon_sym_async, + anon_sym_for, + anon_sym_RBRACK, + anon_sym_RBRACE, + [61107] = 11, ACTIONS(3), 1, sym_comment, - ACTIONS(2075), 1, + ACTIONS(2109), 1, anon_sym_async, - ACTIONS(2077), 1, + ACTIONS(2111), 1, anon_sym_for, - ACTIONS(2106), 1, + ACTIONS(2152), 1, anon_sym_if, - ACTIONS(2108), 1, + ACTIONS(2154), 1, anon_sym_and, - ACTIONS(2110), 1, + ACTIONS(2156), 1, anon_sym_or, - ACTIONS(2171), 1, + ACTIONS(2168), 1, anon_sym_RPAREN, - ACTIONS(2173), 1, + ACTIONS(2170), 1, anon_sym_COMMA, - STATE(1100), 1, + STATE(1091), 1, sym_for_in_clause, - STATE(1451), 1, + STATE(1400), 1, aux_sym_argument_list_repeat1, - STATE(1686), 1, + STATE(1652), 1, sym__comprehension_clauses, - [60650] = 4, + [61141] = 6, ACTIONS(3), 1, sym_comment, - ACTIONS(2108), 1, + ACTIONS(2152), 1, + anon_sym_if, + ACTIONS(2154), 1, anon_sym_and, - ACTIONS(2175), 1, + ACTIONS(2156), 1, + anon_sym_or, + ACTIONS(2174), 1, anon_sym_as, - ACTIONS(2159), 8, + ACTIONS(2172), 6, anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_if, anon_sym_async, anon_sym_for, anon_sym_RBRACK, anon_sym_RBRACE, + [61165] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2178), 1, + anon_sym_if, + ACTIONS(2180), 1, + anon_sym_and, + ACTIONS(2182), 1, anon_sym_or, - [60670] = 5, + ACTIONS(2176), 7, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_COLON, + anon_sym_else, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_EQ, + [61187] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2108), 1, + ACTIONS(2154), 1, anon_sym_and, - ACTIONS(2110), 1, + ACTIONS(2156), 1, anon_sym_or, - ACTIONS(2175), 1, + ACTIONS(2186), 1, anon_sym_as, - ACTIONS(2159), 7, + ACTIONS(2184), 7, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_if, @@ -74494,33 +75231,39 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_for, anon_sym_RBRACK, anon_sym_RBRACE, - [60692] = 5, + [61209] = 11, ACTIONS(3), 1, sym_comment, - ACTIONS(2161), 1, + ACTIONS(2103), 1, + anon_sym_COMMA, + ACTIONS(2109), 1, + anon_sym_async, + ACTIONS(2111), 1, + anon_sym_for, + ACTIONS(2152), 1, + anon_sym_if, + ACTIONS(2154), 1, anon_sym_and, - ACTIONS(2167), 1, + ACTIONS(2156), 1, anon_sym_or, - ACTIONS(2179), 1, - anon_sym_if, - ACTIONS(2177), 7, + ACTIONS(2188), 1, anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_COLON, - anon_sym_else, - anon_sym_RBRACK, - anon_sym_RBRACE, - anon_sym_EQ, - [60714] = 5, + STATE(1091), 1, + sym_for_in_clause, + STATE(1267), 1, + aux_sym__collection_elements_repeat1, + STATE(1652), 1, + sym__comprehension_clauses, + [61243] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2161), 1, + ACTIONS(2178), 1, + anon_sym_if, + ACTIONS(2180), 1, anon_sym_and, - ACTIONS(2167), 1, + ACTIONS(2182), 1, anon_sym_or, - ACTIONS(2179), 1, - anon_sym_if, - ACTIONS(2181), 7, + ACTIONS(2172), 7, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_COLON, @@ -74528,131 +75271,149 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_RBRACK, anon_sym_RBRACE, anon_sym_EQ, - [60736] = 3, + [61265] = 11, ACTIONS(3), 1, sym_comment, - ACTIONS(2185), 2, - anon_sym_DASH, - anon_sym_PLUS, - ACTIONS(2183), 8, - anon_sym_RPAREN, + ACTIONS(2103), 1, anon_sym_COMMA, - anon_sym_as, + ACTIONS(2109), 1, + anon_sym_async, + ACTIONS(2111), 1, + anon_sym_for, + ACTIONS(2152), 1, anon_sym_if, - anon_sym_COLON, - anon_sym_PIPE, - anon_sym_RBRACK, - anon_sym_RBRACE, - [60754] = 11, + ACTIONS(2154), 1, + anon_sym_and, + ACTIONS(2156), 1, + anon_sym_or, + ACTIONS(2190), 1, + anon_sym_RPAREN, + STATE(1091), 1, + sym_for_in_clause, + STATE(1267), 1, + aux_sym__collection_elements_repeat1, + STATE(1657), 1, + sym__comprehension_clauses, + [61299] = 11, ACTIONS(3), 1, sym_comment, - ACTIONS(2069), 1, - anon_sym_COMMA, - ACTIONS(2075), 1, + ACTIONS(2109), 1, anon_sym_async, - ACTIONS(2077), 1, + ACTIONS(2111), 1, anon_sym_for, - ACTIONS(2106), 1, + ACTIONS(2152), 1, anon_sym_if, - ACTIONS(2108), 1, + ACTIONS(2154), 1, anon_sym_and, - ACTIONS(2110), 1, + ACTIONS(2156), 1, anon_sym_or, - ACTIONS(2187), 1, + ACTIONS(2192), 1, anon_sym_RPAREN, - STATE(1100), 1, + ACTIONS(2194), 1, + anon_sym_COMMA, + STATE(1091), 1, sym_for_in_clause, - STATE(1270), 1, - aux_sym__collection_elements_repeat1, - STATE(1613), 1, + STATE(1423), 1, + aux_sym_argument_list_repeat1, + STATE(1731), 1, sym__comprehension_clauses, - [60788] = 6, + [61333] = 6, ACTIONS(3), 1, sym_comment, - ACTIONS(2106), 1, + ACTIONS(2152), 1, anon_sym_if, - ACTIONS(2108), 1, + ACTIONS(2154), 1, anon_sym_and, - ACTIONS(2110), 1, + ACTIONS(2156), 1, anon_sym_or, - ACTIONS(2189), 1, + ACTIONS(2198), 1, anon_sym_as, - ACTIONS(2177), 6, + ACTIONS(2196), 6, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_async, anon_sym_for, anon_sym_RBRACK, anon_sym_RBRACE, - [60812] = 11, + [61357] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2075), 1, + ACTIONS(2154), 1, + anon_sym_and, + ACTIONS(2156), 1, + anon_sym_or, + ACTIONS(2202), 1, + anon_sym_as, + ACTIONS(2200), 7, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_if, anon_sym_async, - ACTIONS(2077), 1, anon_sym_for, - ACTIONS(2106), 1, - anon_sym_if, - ACTIONS(2108), 1, + anon_sym_RBRACK, + anon_sym_RBRACE, + [61379] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2180), 1, anon_sym_and, - ACTIONS(2110), 1, + ACTIONS(2182), 1, anon_sym_or, - ACTIONS(2191), 1, + ACTIONS(2164), 8, anon_sym_RPAREN, - ACTIONS(2193), 1, anon_sym_COMMA, - STATE(1100), 1, - sym_for_in_clause, - STATE(1418), 1, - aux_sym_argument_list_repeat1, - STATE(1706), 1, - sym__comprehension_clauses, - [60846] = 11, + anon_sym_if, + anon_sym_COLON, + anon_sym_else, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_EQ, + [61399] = 11, ACTIONS(3), 1, sym_comment, - ACTIONS(2075), 1, + ACTIONS(2109), 1, anon_sym_async, - ACTIONS(2077), 1, + ACTIONS(2111), 1, anon_sym_for, - ACTIONS(2106), 1, + ACTIONS(2152), 1, anon_sym_if, - ACTIONS(2108), 1, + ACTIONS(2154), 1, anon_sym_and, - ACTIONS(2110), 1, + ACTIONS(2156), 1, anon_sym_or, - ACTIONS(2195), 1, + ACTIONS(2204), 1, anon_sym_RPAREN, - ACTIONS(2197), 1, + ACTIONS(2206), 1, anon_sym_COMMA, - STATE(1100), 1, + STATE(1091), 1, sym_for_in_clause, - STATE(1483), 1, + STATE(1448), 1, aux_sym_argument_list_repeat1, - STATE(1592), 1, + STATE(1657), 1, sym__comprehension_clauses, - [60880] = 4, + [61433] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2161), 1, + ACTIONS(2154), 1, anon_sym_and, - ACTIONS(2167), 1, - anon_sym_or, - ACTIONS(2199), 8, + ACTIONS(2166), 1, + anon_sym_as, + ACTIONS(2164), 8, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_if, - anon_sym_COLON, - anon_sym_else, + anon_sym_async, + anon_sym_for, anon_sym_RBRACK, anon_sym_RBRACE, - anon_sym_EQ, - [60900] = 3, + anon_sym_or, + [61453] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(2203), 2, + ACTIONS(2210), 2, anon_sym_DASH, anon_sym_PLUS, - ACTIONS(2201), 8, + ACTIONS(2208), 8, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_as, @@ -74661,243 +75422,289 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE, anon_sym_RBRACK, anon_sym_RBRACE, - [60918] = 11, + [61471] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2180), 1, + anon_sym_and, + ACTIONS(2182), 1, + anon_sym_or, + ACTIONS(2184), 8, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_if, + anon_sym_COLON, + anon_sym_else, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_EQ, + [61491] = 11, ACTIONS(3), 1, sym_comment, - ACTIONS(2069), 1, + ACTIONS(2103), 1, anon_sym_COMMA, - ACTIONS(2075), 1, + ACTIONS(2109), 1, anon_sym_async, - ACTIONS(2077), 1, + ACTIONS(2111), 1, anon_sym_for, - ACTIONS(2099), 1, - anon_sym_RPAREN, - ACTIONS(2106), 1, + ACTIONS(2113), 1, + anon_sym_RBRACK, + ACTIONS(2152), 1, anon_sym_if, - ACTIONS(2108), 1, + ACTIONS(2154), 1, anon_sym_and, - ACTIONS(2110), 1, + ACTIONS(2156), 1, anon_sym_or, - STATE(1100), 1, + STATE(1091), 1, sym_for_in_clause, - STATE(1270), 1, + STATE(1267), 1, aux_sym__collection_elements_repeat1, - STATE(1706), 1, + STATE(1726), 1, sym__comprehension_clauses, - [60952] = 11, + [61525] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2075), 1, - anon_sym_async, - ACTIONS(2077), 1, - anon_sym_for, - ACTIONS(2106), 1, + ACTIONS(2178), 1, anon_sym_if, - ACTIONS(2108), 1, + ACTIONS(2180), 1, anon_sym_and, - ACTIONS(2110), 1, + ACTIONS(2182), 1, anon_sym_or, - ACTIONS(2205), 1, + ACTIONS(2196), 7, anon_sym_RPAREN, - ACTIONS(2207), 1, - anon_sym_COMMA, - STATE(1100), 1, - sym_for_in_clause, - STATE(1437), 1, - aux_sym_argument_list_repeat1, - STATE(1613), 1, - sym__comprehension_clauses, - [60986] = 11, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2069), 1, anon_sym_COMMA, - ACTIONS(2075), 1, - anon_sym_async, - ACTIONS(2077), 1, - anon_sym_for, - ACTIONS(2079), 1, + anon_sym_COLON, + anon_sym_else, anon_sym_RBRACK, - ACTIONS(2106), 1, - anon_sym_if, - ACTIONS(2108), 1, - anon_sym_and, - ACTIONS(2110), 1, - anon_sym_or, - STATE(1100), 1, - sym_for_in_clause, - STATE(1270), 1, - aux_sym__collection_elements_repeat1, - STATE(1624), 1, - sym__comprehension_clauses, - [61020] = 5, + anon_sym_RBRACE, + anon_sym_EQ, + [61547] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2161), 1, + ACTIONS(2180), 1, anon_sym_and, - ACTIONS(2167), 1, + ACTIONS(2182), 1, anon_sym_or, - ACTIONS(2179), 1, - anon_sym_if, - ACTIONS(2163), 7, + ACTIONS(2200), 8, anon_sym_RPAREN, anon_sym_COMMA, + anon_sym_if, anon_sym_COLON, anon_sym_else, anon_sym_RBRACK, anon_sym_RBRACE, anon_sym_EQ, - [61042] = 11, + [61567] = 6, ACTIONS(3), 1, sym_comment, - ACTIONS(2069), 1, + ACTIONS(2152), 1, + anon_sym_if, + ACTIONS(2154), 1, + anon_sym_and, + ACTIONS(2156), 1, + anon_sym_or, + ACTIONS(2212), 1, + anon_sym_as, + ACTIONS(2176), 6, + anon_sym_RPAREN, anon_sym_COMMA, - ACTIONS(2075), 1, anon_sym_async, - ACTIONS(2077), 1, anon_sym_for, - ACTIONS(2079), 1, anon_sym_RBRACK, - ACTIONS(2106), 1, + anon_sym_RBRACE, + [61591] = 11, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2103), 1, + anon_sym_COMMA, + ACTIONS(2109), 1, + anon_sym_async, + ACTIONS(2111), 1, + anon_sym_for, + ACTIONS(2152), 1, anon_sym_if, - ACTIONS(2108), 1, + ACTIONS(2154), 1, anon_sym_and, - ACTIONS(2110), 1, + ACTIONS(2156), 1, anon_sym_or, - STATE(1100), 1, + ACTIONS(2214), 1, + anon_sym_RPAREN, + STATE(1091), 1, sym_for_in_clause, - STATE(1270), 1, + STATE(1267), 1, aux_sym__collection_elements_repeat1, - STATE(1677), 1, + STATE(1670), 1, sym__comprehension_clauses, - [61076] = 11, + [61625] = 11, ACTIONS(3), 1, sym_comment, - ACTIONS(2069), 1, + ACTIONS(2103), 1, anon_sym_COMMA, - ACTIONS(2075), 1, + ACTIONS(2109), 1, anon_sym_async, - ACTIONS(2077), 1, + ACTIONS(2111), 1, anon_sym_for, - ACTIONS(2106), 1, + ACTIONS(2113), 1, + anon_sym_RBRACK, + ACTIONS(2152), 1, anon_sym_if, - ACTIONS(2108), 1, + ACTIONS(2154), 1, anon_sym_and, - ACTIONS(2110), 1, + ACTIONS(2156), 1, anon_sym_or, - ACTIONS(2209), 1, - anon_sym_RPAREN, - STATE(1100), 1, + STATE(1091), 1, sym_for_in_clause, - STATE(1270), 1, + STATE(1267), 1, aux_sym__collection_elements_repeat1, - STATE(1592), 1, + STATE(1686), 1, sym__comprehension_clauses, - [61110] = 6, + [61659] = 11, ACTIONS(3), 1, sym_comment, - ACTIONS(2106), 1, - anon_sym_if, - ACTIONS(2108), 1, - anon_sym_and, - ACTIONS(2110), 1, - anon_sym_or, - ACTIONS(2211), 1, - anon_sym_as, - ACTIONS(2181), 6, - anon_sym_RPAREN, + ACTIONS(2103), 1, anon_sym_COMMA, + ACTIONS(2109), 1, anon_sym_async, + ACTIONS(2111), 1, anon_sym_for, + ACTIONS(2113), 1, anon_sym_RBRACK, - anon_sym_RBRACE, - [61134] = 11, + ACTIONS(2152), 1, + anon_sym_if, + ACTIONS(2154), 1, + anon_sym_and, + ACTIONS(2156), 1, + anon_sym_or, + STATE(1091), 1, + sym_for_in_clause, + STATE(1267), 1, + aux_sym__collection_elements_repeat1, + STATE(1732), 1, + sym__comprehension_clauses, + [61693] = 11, ACTIONS(3), 1, sym_comment, - ACTIONS(2069), 1, + ACTIONS(2103), 1, anon_sym_COMMA, - ACTIONS(2075), 1, + ACTIONS(2109), 1, anon_sym_async, - ACTIONS(2077), 1, + ACTIONS(2111), 1, anon_sym_for, - ACTIONS(2079), 1, + ACTIONS(2113), 1, anon_sym_RBRACK, - ACTIONS(2106), 1, + ACTIONS(2152), 1, anon_sym_if, - ACTIONS(2108), 1, + ACTIONS(2154), 1, anon_sym_and, - ACTIONS(2110), 1, + ACTIONS(2156), 1, anon_sym_or, - STATE(1100), 1, + STATE(1091), 1, sym_for_in_clause, - STATE(1270), 1, + STATE(1267), 1, aux_sym__collection_elements_repeat1, - STATE(1708), 1, + STATE(1659), 1, sym__comprehension_clauses, - [61168] = 5, + [61727] = 11, ACTIONS(3), 1, sym_comment, - ACTIONS(2108), 1, + ACTIONS(2109), 1, + anon_sym_async, + ACTIONS(2111), 1, + anon_sym_for, + ACTIONS(2152), 1, + anon_sym_if, + ACTIONS(2154), 1, anon_sym_and, - ACTIONS(2110), 1, + ACTIONS(2156), 1, anon_sym_or, - ACTIONS(2213), 1, + ACTIONS(2216), 1, + anon_sym_RPAREN, + ACTIONS(2218), 1, + anon_sym_COMMA, + STATE(1091), 1, + sym_for_in_clause, + STATE(1441), 1, + aux_sym_argument_list_repeat1, + STATE(1670), 1, + sym__comprehension_clauses, + [61761] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2222), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(2220), 8, + anon_sym_RPAREN, + anon_sym_COMMA, anon_sym_as, - ACTIONS(2199), 7, + anon_sym_if, + anon_sym_COLON, + anon_sym_PIPE, + anon_sym_RBRACK, + anon_sym_RBRACE, + [61779] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2180), 1, + anon_sym_and, + ACTIONS(2164), 9, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_if, - anon_sym_async, - anon_sym_for, + anon_sym_COLON, + anon_sym_else, anon_sym_RBRACK, anon_sym_RBRACE, - [61190] = 11, + anon_sym_EQ, + anon_sym_or, + [61797] = 11, ACTIONS(3), 1, sym_comment, - ACTIONS(2069), 1, + ACTIONS(2103), 1, anon_sym_COMMA, - ACTIONS(2075), 1, + ACTIONS(2109), 1, anon_sym_async, - ACTIONS(2077), 1, + ACTIONS(2111), 1, anon_sym_for, - ACTIONS(2079), 1, - anon_sym_RBRACK, - ACTIONS(2106), 1, + ACTIONS(2145), 1, + anon_sym_RPAREN, + ACTIONS(2152), 1, anon_sym_if, - ACTIONS(2108), 1, + ACTIONS(2154), 1, anon_sym_and, - ACTIONS(2110), 1, + ACTIONS(2156), 1, anon_sym_or, - STATE(1100), 1, + STATE(1091), 1, sym_for_in_clause, - STATE(1270), 1, + STATE(1267), 1, aux_sym__collection_elements_repeat1, - STATE(1614), 1, + STATE(1731), 1, sym__comprehension_clauses, - [61224] = 4, + [61831] = 6, ACTIONS(3), 1, sym_comment, - ACTIONS(2161), 1, - anon_sym_and, - ACTIONS(2167), 1, - anon_sym_or, - ACTIONS(2155), 8, - anon_sym_RPAREN, - anon_sym_COMMA, + ACTIONS(2109), 1, + anon_sym_async, + ACTIONS(2111), 1, + anon_sym_for, + ACTIONS(2226), 1, anon_sym_if, - anon_sym_COLON, - anon_sym_else, + ACTIONS(2224), 3, + anon_sym_RPAREN, anon_sym_RBRACK, anon_sym_RBRACE, - anon_sym_EQ, - [61244] = 4, + STATE(1095), 3, + sym_for_in_clause, + sym_if_clause, + aux_sym__comprehension_clauses_repeat1, + [61854] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2108), 1, + ACTIONS(2154), 1, anon_sym_and, - ACTIONS(2110), 1, + ACTIONS(2156), 1, anon_sym_or, - ACTIONS(2215), 7, + ACTIONS(2228), 7, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_if, @@ -74905,14 +75712,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_for, anon_sym_RBRACK, anon_sym_RBRACE, - [61263] = 4, + [61873] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2219), 1, + ACTIONS(2232), 1, anon_sym_PIPE, - STATE(1101), 1, + STATE(1100), 1, aux_sym_match_or_pattern_repeat1, - ACTIONS(2217), 7, + ACTIONS(2230), 7, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_as, @@ -74920,49 +75727,65 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_COLON, anon_sym_RBRACK, anon_sym_RBRACE, - [61282] = 6, + [61892] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2223), 1, + ACTIONS(2178), 1, anon_sym_if, - ACTIONS(2226), 1, + ACTIONS(2180), 1, + anon_sym_and, + ACTIONS(2182), 1, + anon_sym_or, + ACTIONS(2234), 6, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_COLON, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_EQ, + [61913] = 6, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2109), 1, anon_sym_async, - ACTIONS(2229), 1, + ACTIONS(2111), 1, anon_sym_for, - ACTIONS(2221), 3, + ACTIONS(2226), 1, + anon_sym_if, + ACTIONS(2236), 3, anon_sym_RPAREN, anon_sym_RBRACK, anon_sym_RBRACE, - STATE(1092), 3, + STATE(1101), 3, sym_for_in_clause, sym_if_clause, aux_sym__comprehension_clauses_repeat1, - [61305] = 7, + [61936] = 7, ACTIONS(3), 1, sym_comment, - ACTIONS(2232), 1, + ACTIONS(2238), 1, anon_sym_COMMA, - ACTIONS(2234), 1, + ACTIONS(2240), 1, anon_sym_if, - ACTIONS(2238), 1, + ACTIONS(2244), 1, anon_sym_and, - ACTIONS(2240), 1, + ACTIONS(2246), 1, anon_sym_or, - STATE(1215), 1, + STATE(1220), 1, aux_sym_expression_list_repeat1, - ACTIONS(2236), 4, + ACTIONS(2242), 4, anon_sym_RBRACE, anon_sym_EQ, anon_sym_COLON2, sym_type_conversion, - [61330] = 4, + [61961] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2108), 1, + ACTIONS(2154), 1, anon_sym_and, - ACTIONS(2110), 1, + ACTIONS(2156), 1, anon_sym_or, - ACTIONS(2215), 7, + ACTIONS(2228), 7, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_if, @@ -74970,48 +75793,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_for, anon_sym_RBRACK, anon_sym_RBRACE, - [61349] = 7, + [61980] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(2232), 1, - anon_sym_COMMA, - ACTIONS(2234), 1, - anon_sym_if, - ACTIONS(2238), 1, - anon_sym_and, - ACTIONS(2240), 1, - anon_sym_or, - STATE(1215), 1, - aux_sym_expression_list_repeat1, - ACTIONS(2242), 4, - anon_sym_RBRACE, - anon_sym_EQ, - anon_sym_COLON2, - sym_type_conversion, - [61374] = 5, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2161), 1, - anon_sym_and, - ACTIONS(2167), 1, - anon_sym_or, - ACTIONS(2179), 1, - anon_sym_if, - ACTIONS(2244), 6, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_COLON, - anon_sym_RBRACK, - anon_sym_RBRACE, - anon_sym_EQ, - [61395] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2248), 1, anon_sym_PIPE, - STATE(1097), 1, + STATE(1093), 1, aux_sym_match_or_pattern_repeat1, - ACTIONS(2246), 7, + ACTIONS(2248), 7, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_as, @@ -75019,14 +75808,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_COLON, anon_sym_RBRACK, anon_sym_RBRACE, - [61414] = 4, + [61999] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2108), 1, + ACTIONS(2154), 1, anon_sym_and, - ACTIONS(2110), 1, + ACTIONS(2156), 1, anon_sym_or, - ACTIONS(2215), 7, + ACTIONS(2228), 7, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_if, @@ -75034,48 +75823,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_for, anon_sym_RBRACK, anon_sym_RBRACE, - [61433] = 6, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2075), 1, - anon_sym_async, - ACTIONS(2077), 1, - anon_sym_for, - ACTIONS(2253), 1, - anon_sym_if, - ACTIONS(2251), 3, - anon_sym_RPAREN, - anon_sym_RBRACK, - anon_sym_RBRACE, - STATE(1092), 3, - sym_for_in_clause, - sym_if_clause, - aux_sym__comprehension_clauses_repeat1, - [61456] = 6, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2075), 1, - anon_sym_async, - ACTIONS(2077), 1, - anon_sym_for, - ACTIONS(2253), 1, - anon_sym_if, - ACTIONS(2255), 3, - anon_sym_RPAREN, - anon_sym_RBRACK, - anon_sym_RBRACE, - STATE(1099), 3, - sym_for_in_clause, - sym_if_clause, - aux_sym__comprehension_clauses_repeat1, - [61479] = 4, + [62018] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2219), 1, + ACTIONS(2252), 1, anon_sym_PIPE, - STATE(1097), 1, + STATE(1100), 1, aux_sym_match_or_pattern_repeat1, - ACTIONS(2257), 7, + ACTIONS(2250), 7, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_as, @@ -75083,126 +75838,69 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_COLON, anon_sym_RBRACK, anon_sym_RBRACE, - [61498] = 5, + [62037] = 6, ACTIONS(3), 1, sym_comment, - ACTIONS(2071), 1, + ACTIONS(2257), 1, anon_sym_if, - ACTIONS(2081), 1, - anon_sym_and, - ACTIONS(2083), 1, - anon_sym_or, - ACTIONS(2181), 5, - anon_sym_COMMA, - anon_sym_COLON, + ACTIONS(2260), 1, anon_sym_async, + ACTIONS(2263), 1, anon_sym_for, + ACTIONS(2255), 3, + anon_sym_RPAREN, + anon_sym_RBRACK, anon_sym_RBRACE, - [61518] = 5, + STATE(1101), 3, + sym_for_in_clause, + sym_if_clause, + aux_sym__comprehension_clauses_repeat1, + [62060] = 7, ACTIONS(3), 1, sym_comment, - ACTIONS(2234), 1, - anon_sym_if, ACTIONS(2238), 1, - anon_sym_and, - ACTIONS(2240), 1, - anon_sym_or, - ACTIONS(2163), 5, anon_sym_COMMA, - anon_sym_RBRACE, - anon_sym_EQ, - anon_sym_COLON2, - sym_type_conversion, - [61538] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2238), 1, - anon_sym_and, ACTIONS(2240), 1, - anon_sym_or, - ACTIONS(2155), 6, - anon_sym_COMMA, anon_sym_if, - anon_sym_RBRACE, - anon_sym_EQ, - anon_sym_COLON2, - sym_type_conversion, - [61556] = 3, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2238), 1, + ACTIONS(2244), 1, anon_sym_and, - ACTIONS(2159), 7, - anon_sym_COMMA, - anon_sym_if, + ACTIONS(2246), 1, + anon_sym_or, + STATE(1220), 1, + aux_sym_expression_list_repeat1, + ACTIONS(2266), 4, anon_sym_RBRACE, anon_sym_EQ, - anon_sym_or, anon_sym_COLON2, sym_type_conversion, - [61572] = 4, + [62085] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2238), 1, - anon_sym_and, - ACTIONS(2240), 1, - anon_sym_or, - ACTIONS(2159), 6, + ACTIONS(2268), 8, + anon_sym_RPAREN, anon_sym_COMMA, + anon_sym_as, anon_sym_if, + anon_sym_COLON, + anon_sym_PIPE, + anon_sym_RBRACK, anon_sym_RBRACE, - anon_sym_EQ, - anon_sym_COLON2, - sym_type_conversion, - [61590] = 5, + [62099] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2234), 1, - anon_sym_if, - ACTIONS(2238), 1, - anon_sym_and, - ACTIONS(2240), 1, - anon_sym_or, - ACTIONS(2177), 5, + ACTIONS(1606), 8, anon_sym_COMMA, + anon_sym_if, anon_sym_RBRACE, anon_sym_EQ, - anon_sym_COLON2, - sym_type_conversion, - [61610] = 5, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2234), 1, - anon_sym_if, - ACTIONS(2238), 1, anon_sym_and, - ACTIONS(2240), 1, anon_sym_or, - ACTIONS(2181), 5, - anon_sym_COMMA, - anon_sym_RBRACE, - anon_sym_EQ, anon_sym_COLON2, sym_type_conversion, - [61630] = 5, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2259), 1, - anon_sym_if, - ACTIONS(2261), 1, - anon_sym_and, - ACTIONS(2263), 1, - anon_sym_or, - ACTIONS(2181), 5, - sym__newline, - anon_sym_from, - anon_sym_COMMA, - anon_sym_EQ, - anon_sym_SEMI, - [61650] = 2, + [62113] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2265), 8, + ACTIONS(2270), 8, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_as, @@ -75211,56 +75909,22 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE, anon_sym_RBRACK, anon_sym_RBRACE, - [61664] = 4, + [62127] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2269), 1, + ACTIONS(2059), 8, anon_sym_COMMA, - STATE(1136), 1, - aux_sym_for_in_clause_repeat1, - ACTIONS(2267), 6, - anon_sym_RPAREN, anon_sym_if, - anon_sym_async, - anon_sym_for, - anon_sym_RBRACK, anon_sym_RBRACE, - [61682] = 5, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2234), 1, - anon_sym_if, - ACTIONS(2238), 1, + anon_sym_EQ, anon_sym_and, - ACTIONS(2240), 1, anon_sym_or, - ACTIONS(2244), 5, - anon_sym_COMMA, - anon_sym_RBRACE, - anon_sym_EQ, anon_sym_COLON2, sym_type_conversion, - [61702] = 7, - ACTIONS(3), 1, - sym_comment, - ACTIONS(67), 1, - anon_sym_AT, - ACTIONS(2271), 1, - anon_sym_async, - ACTIONS(2273), 1, - anon_sym_def, - ACTIONS(2275), 1, - anon_sym_class, - STATE(552), 2, - sym_function_definition, - sym_class_definition, - STATE(1248), 2, - sym_decorator, - aux_sym_decorated_definition_repeat1, - [61726] = 2, + [62141] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2277), 8, + ACTIONS(2272), 8, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_as, @@ -75269,10 +75933,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE, anon_sym_RBRACK, anon_sym_RBRACE, - [61740] = 2, + [62155] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2279), 8, + ACTIONS(2274), 8, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_as, @@ -75281,10 +75945,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE, anon_sym_RBRACK, anon_sym_RBRACE, - [61754] = 2, + [62169] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2246), 8, + ACTIONS(2276), 8, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_as, @@ -75293,42 +75957,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE, anon_sym_RBRACK, anon_sym_RBRACE, - [61768] = 5, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2161), 1, - anon_sym_and, - ACTIONS(2167), 1, - anon_sym_or, - ACTIONS(2179), 1, - anon_sym_if, - ACTIONS(2281), 5, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_COLON, - anon_sym_RBRACK, - anon_sym_RBRACE, - [61788] = 7, - ACTIONS(3), 1, - sym_comment, - ACTIONS(67), 1, - anon_sym_AT, - ACTIONS(2283), 1, - anon_sym_async, - ACTIONS(2285), 1, - anon_sym_def, - ACTIONS(2287), 1, - anon_sym_class, - STATE(521), 2, - sym_function_definition, - sym_class_definition, - STATE(1248), 2, - sym_decorator, - aux_sym_decorated_definition_repeat1, - [61812] = 2, + [62183] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2289), 8, + ACTIONS(2278), 8, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_as, @@ -75337,67 +75969,54 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE, anon_sym_RBRACK, anon_sym_RBRACE, - [61826] = 2, + [62197] = 6, ACTIONS(3), 1, sym_comment, - ACTIONS(2291), 8, + ACTIONS(2083), 1, + anon_sym_DOT, + ACTIONS(2158), 1, + anon_sym_LPAREN, + ACTIONS(2280), 1, + anon_sym_EQ, + STATE(1036), 1, + aux_sym_match_value_pattern_repeat1, + ACTIONS(2160), 4, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_as, - anon_sym_if, - anon_sym_COLON, anon_sym_PIPE, - anon_sym_RBRACK, - anon_sym_RBRACE, - [61840] = 3, + [62219] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2261), 1, - anon_sym_and, - ACTIONS(2159), 7, - sym__newline, - anon_sym_from, + ACTIONS(2284), 1, anon_sym_COMMA, + STATE(1113), 1, + aux_sym_for_in_clause_repeat1, + ACTIONS(2282), 6, + anon_sym_RPAREN, anon_sym_if, - anon_sym_EQ, - anon_sym_or, - anon_sym_SEMI, - [61856] = 8, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2259), 1, - anon_sym_if, - ACTIONS(2261), 1, - anon_sym_and, - ACTIONS(2263), 1, - anon_sym_or, - ACTIONS(2293), 1, - anon_sym_from, - ACTIONS(2295), 1, - anon_sym_COMMA, - STATE(1260), 1, - aux_sym_expression_list_repeat1, - ACTIONS(2297), 2, - sym__newline, - anon_sym_SEMI, - [61882] = 4, + anon_sym_async, + anon_sym_for, + anon_sym_RBRACK, + anon_sym_RBRACE, + [62237] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2261), 1, - anon_sym_and, - ACTIONS(2263), 1, - anon_sym_or, - ACTIONS(2159), 6, - sym__newline, - anon_sym_from, + ACTIONS(2288), 1, anon_sym_COMMA, + STATE(1113), 1, + aux_sym_for_in_clause_repeat1, + ACTIONS(2286), 6, + anon_sym_RPAREN, anon_sym_if, - anon_sym_EQ, - anon_sym_SEMI, - [61900] = 2, + anon_sym_async, + anon_sym_for, + anon_sym_RBRACK, + anon_sym_RBRACE, + [62255] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2299), 8, + ACTIONS(2291), 8, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_as, @@ -75406,25 +76025,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE, anon_sym_RBRACK, anon_sym_RBRACE, - [61914] = 5, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2234), 1, - anon_sym_if, - ACTIONS(2238), 1, - anon_sym_and, - ACTIONS(2240), 1, - anon_sym_or, - ACTIONS(2301), 5, - anon_sym_COMMA, - anon_sym_RBRACE, - anon_sym_EQ, - anon_sym_COLON2, - sym_type_conversion, - [61934] = 2, + [62269] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2303), 8, + ACTIONS(2293), 8, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_as, @@ -75433,10 +76037,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE, anon_sym_RBRACK, anon_sym_RBRACE, - [61948] = 2, + [62283] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2305), 8, + ACTIONS(2295), 8, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_as, @@ -75445,36 +76049,24 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE, anon_sym_RBRACK, anon_sym_RBRACE, - [61962] = 4, + [62297] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2309), 1, + ACTIONS(2299), 1, anon_sym_COMMA, - STATE(1146), 1, + STATE(1166), 1, aux_sym_for_in_clause_repeat1, - ACTIONS(2307), 6, + ACTIONS(2297), 6, anon_sym_RPAREN, anon_sym_if, anon_sym_async, anon_sym_for, anon_sym_RBRACK, anon_sym_RBRACE, - [61980] = 2, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1597), 8, - anon_sym_COMMA, - anon_sym_if, - anon_sym_RBRACE, - anon_sym_EQ, - anon_sym_and, - anon_sym_or, - anon_sym_COLON2, - sym_type_conversion, - [61994] = 2, + [62315] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2311), 8, + ACTIONS(2301), 8, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_as, @@ -75483,22 +76075,170 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE, anon_sym_RBRACK, anon_sym_RBRACE, - [62008] = 2, + [62329] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2313), 8, - anon_sym_RPAREN, + ACTIONS(2244), 1, + anon_sym_and, + ACTIONS(2246), 1, + anon_sym_or, + ACTIONS(2184), 6, anon_sym_COMMA, - anon_sym_as, anon_sym_if, - anon_sym_COLON, + anon_sym_RBRACE, + anon_sym_EQ, + anon_sym_COLON2, + sym_type_conversion, + [62347] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2240), 1, + anon_sym_if, + ACTIONS(2244), 1, + anon_sym_and, + ACTIONS(2246), 1, + anon_sym_or, + ACTIONS(2196), 5, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_EQ, + anon_sym_COLON2, + sym_type_conversion, + [62367] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2244), 1, + anon_sym_and, + ACTIONS(2246), 1, + anon_sym_or, + ACTIONS(2200), 6, + anon_sym_COMMA, + anon_sym_if, + anon_sym_RBRACE, + anon_sym_EQ, + anon_sym_COLON2, + sym_type_conversion, + [62385] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2244), 1, + anon_sym_and, + ACTIONS(2164), 7, + anon_sym_COMMA, + anon_sym_if, + anon_sym_RBRACE, + anon_sym_EQ, + anon_sym_or, + anon_sym_COLON2, + sym_type_conversion, + [62401] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2244), 1, + anon_sym_and, + ACTIONS(2246), 1, + anon_sym_or, + ACTIONS(2164), 6, + anon_sym_COMMA, + anon_sym_if, + anon_sym_RBRACE, + anon_sym_EQ, + anon_sym_COLON2, + sym_type_conversion, + [62419] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2240), 1, + anon_sym_if, + ACTIONS(2244), 1, + anon_sym_and, + ACTIONS(2246), 1, + anon_sym_or, + ACTIONS(2176), 5, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_EQ, + anon_sym_COLON2, + sym_type_conversion, + [62439] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2240), 1, + anon_sym_if, + ACTIONS(2244), 1, + anon_sym_and, + ACTIONS(2246), 1, + anon_sym_or, + ACTIONS(2172), 5, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_EQ, + anon_sym_COLON2, + sym_type_conversion, + [62459] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2303), 1, + anon_sym_and, + ACTIONS(2305), 1, + anon_sym_or, + ACTIONS(2200), 6, + sym__newline, + anon_sym_from, + anon_sym_COMMA, + anon_sym_if, + anon_sym_EQ, + anon_sym_SEMI, + [62477] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(69), 1, + anon_sym_AT, + ACTIONS(2307), 1, + anon_sym_async, + ACTIONS(2309), 1, + anon_sym_def, + ACTIONS(2311), 1, + anon_sym_class, + STATE(610), 2, + sym_function_definition, + sym_class_definition, + STATE(1257), 2, + sym_decorator, + aux_sym_decorated_definition_repeat1, + [62501] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(69), 1, + anon_sym_AT, + ACTIONS(2313), 1, + anon_sym_async, + ACTIONS(2315), 1, + anon_sym_def, + ACTIONS(2317), 1, + anon_sym_class, + STATE(550), 2, + sym_function_definition, + sym_class_definition, + STATE(1257), 2, + sym_decorator, + aux_sym_decorated_definition_repeat1, + [62525] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2319), 8, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_as, + anon_sym_if, + anon_sym_COLON, anon_sym_PIPE, anon_sym_RBRACK, anon_sym_RBRACE, - [62022] = 2, + [62539] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2315), 8, + ACTIONS(2321), 8, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_as, @@ -75507,26 +76247,25 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE, anon_sym_RBRACK, anon_sym_RBRACE, - [62036] = 6, - ACTIONS(2065), 1, + [62553] = 5, + ACTIONS(3), 1, sym_comment, - ACTIONS(2317), 1, - anon_sym_LBRACE2, - ACTIONS(2322), 1, - anon_sym_BSLASH, - ACTIONS(2325), 1, - sym__string_end, - STATE(1133), 2, - sym__not_escape_sequence, - aux_sym_string_content_repeat1, - ACTIONS(2319), 3, - sym__string_content, - sym__escape_interpolation, - sym_escape_sequence, - [62058] = 2, + ACTIONS(2240), 1, + anon_sym_if, + ACTIONS(2244), 1, + anon_sym_and, + ACTIONS(2246), 1, + anon_sym_or, + ACTIONS(2234), 5, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_EQ, + anon_sym_COLON2, + sym_type_conversion, + [62573] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2327), 8, + ACTIONS(2250), 8, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_as, @@ -75535,36 +76274,68 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE, anon_sym_RBRACK, anon_sym_RBRACE, - [62072] = 2, + [62587] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2050), 8, - sym__newline, - anon_sym_from, + ACTIONS(2323), 8, + anon_sym_RPAREN, anon_sym_COMMA, + anon_sym_as, anon_sym_if, - anon_sym_EQ, + anon_sym_COLON, + anon_sym_PIPE, + anon_sym_RBRACK, + anon_sym_RBRACE, + [62601] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2303), 1, anon_sym_and, + ACTIONS(2305), 1, anon_sym_or, + ACTIONS(2325), 1, + anon_sym_from, + ACTIONS(2327), 1, + anon_sym_COMMA, + ACTIONS(2329), 1, + anon_sym_if, + STATE(1272), 1, + aux_sym_expression_list_repeat1, + ACTIONS(2331), 2, + sym__newline, anon_sym_SEMI, - [62086] = 4, + [62627] = 6, + ACTIONS(2077), 1, + sym_comment, + ACTIONS(2333), 1, + anon_sym_LBRACE2, + ACTIONS(2338), 1, + anon_sym_BSLASH, + ACTIONS(2341), 1, + sym__string_end, + STATE(1135), 2, + sym__not_escape_sequence, + aux_sym_string_content_repeat1, + ACTIONS(2335), 3, + sym__string_content, + sym__escape_interpolation, + sym_escape_sequence, + [62649] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2331), 1, - anon_sym_COMMA, - STATE(1162), 1, - aux_sym_for_in_clause_repeat1, - ACTIONS(2329), 6, + ACTIONS(2343), 8, anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_as, anon_sym_if, - anon_sym_async, - anon_sym_for, + anon_sym_COLON, + anon_sym_PIPE, anon_sym_RBRACK, anon_sym_RBRACE, - [62104] = 2, + [62663] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2333), 8, + ACTIONS(2345), 8, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_as, @@ -75573,10 +76344,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE, anon_sym_RBRACK, anon_sym_RBRACE, - [62118] = 2, + [62677] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2335), 8, + ACTIONS(2347), 8, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_as, @@ -75585,26 +76356,23 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE, anon_sym_RBRACK, anon_sym_RBRACE, - [62132] = 6, + [62691] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(2091), 1, - anon_sym_DOT, - ACTIONS(2093), 1, - anon_sym_LPAREN, - ACTIONS(2337), 1, - anon_sym_EQ, - STATE(1042), 1, - aux_sym_match_value_pattern_repeat1, - ACTIONS(2095), 4, + ACTIONS(2351), 1, + anon_sym_PIPE, + ACTIONS(2349), 7, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_as, - anon_sym_PIPE, - [62154] = 2, + anon_sym_if, + anon_sym_COLON, + anon_sym_RBRACK, + anon_sym_RBRACE, + [62707] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2097), 8, + ACTIONS(2353), 8, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_as, @@ -75613,372 +76381,406 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE, anon_sym_RBRACK, anon_sym_RBRACE, - [62168] = 5, + [62721] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2259), 1, - anon_sym_if, - ACTIONS(2261), 1, + ACTIONS(2303), 1, anon_sym_and, - ACTIONS(2263), 1, + ACTIONS(2305), 1, anon_sym_or, - ACTIONS(2244), 5, + ACTIONS(2184), 6, sym__newline, anon_sym_from, anon_sym_COMMA, + anon_sym_if, anon_sym_EQ, anon_sym_SEMI, - [62188] = 3, + [62739] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2341), 1, - anon_sym_PIPE, - ACTIONS(2339), 7, - anon_sym_RPAREN, + ACTIONS(2303), 1, + anon_sym_and, + ACTIONS(2305), 1, + anon_sym_or, + ACTIONS(2329), 1, + anon_sym_if, + ACTIONS(2234), 5, + sym__newline, + anon_sym_from, anon_sym_COMMA, - anon_sym_as, + anon_sym_EQ, + anon_sym_SEMI, + [62759] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2240), 1, anon_sym_if, - anon_sym_COLON, - anon_sym_RBRACK, + ACTIONS(2244), 1, + anon_sym_and, + ACTIONS(2246), 1, + anon_sym_or, + ACTIONS(2355), 5, + anon_sym_COMMA, anon_sym_RBRACE, - [62204] = 2, + anon_sym_EQ, + anon_sym_COLON2, + sym_type_conversion, + [62779] = 7, ACTIONS(3), 1, sym_comment, - ACTIONS(2343), 8, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_as, + ACTIONS(2178), 1, anon_sym_if, - anon_sym_COLON, - anon_sym_PIPE, + ACTIONS(2180), 1, + anon_sym_and, + ACTIONS(2182), 1, + anon_sym_or, + ACTIONS(2357), 1, + anon_sym_COMMA, + STATE(1250), 1, + aux_sym_expression_list_repeat1, + ACTIONS(2266), 3, + anon_sym_RPAREN, anon_sym_RBRACK, anon_sym_RBRACE, - [62218] = 5, + [62803] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2259), 1, - anon_sym_if, - ACTIONS(2261), 1, + ACTIONS(2303), 1, anon_sym_and, - ACTIONS(2263), 1, + ACTIONS(2305), 1, anon_sym_or, - ACTIONS(2177), 5, + ACTIONS(2329), 1, + anon_sym_if, + ACTIONS(2176), 5, sym__newline, anon_sym_from, anon_sym_COMMA, anon_sym_EQ, anon_sym_SEMI, - [62238] = 4, + [62823] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(2261), 1, + ACTIONS(2303), 1, anon_sym_and, - ACTIONS(2263), 1, - anon_sym_or, - ACTIONS(2199), 6, + ACTIONS(2164), 7, sym__newline, anon_sym_from, anon_sym_COMMA, anon_sym_if, anon_sym_EQ, + anon_sym_or, anon_sym_SEMI, - [62256] = 4, + [62839] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2347), 1, + ACTIONS(2303), 1, + anon_sym_and, + ACTIONS(2305), 1, + anon_sym_or, + ACTIONS(2164), 6, + sym__newline, + anon_sym_from, anon_sym_COMMA, - STATE(1162), 1, - aux_sym_for_in_clause_repeat1, - ACTIONS(2345), 6, + anon_sym_if, + anon_sym_EQ, + anon_sym_SEMI, + [62857] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2359), 8, anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_as, anon_sym_if, - anon_sym_async, - anon_sym_for, + anon_sym_COLON, + anon_sym_PIPE, anon_sym_RBRACK, anon_sym_RBRACE, - [62274] = 6, - ACTIONS(2065), 1, + [62871] = 6, + ACTIONS(2077), 1, sym_comment, - ACTIONS(2349), 1, + ACTIONS(2361), 1, anon_sym_LBRACE2, - ACTIONS(2353), 1, + ACTIONS(2365), 1, anon_sym_BSLASH, - ACTIONS(2355), 1, + ACTIONS(2367), 1, sym__string_end, - STATE(1133), 2, + STATE(1135), 2, sym__not_escape_sequence, aux_sym_string_content_repeat1, - ACTIONS(2351), 3, + ACTIONS(2363), 3, sym__string_content, sym__escape_interpolation, sym_escape_sequence, - [62296] = 7, + [62893] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2369), 8, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_as, + anon_sym_if, + anon_sym_COLON, + anon_sym_PIPE, + anon_sym_RBRACK, + anon_sym_RBRACE, + [62907] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2161), 1, + ACTIONS(2178), 1, + anon_sym_if, + ACTIONS(2180), 1, anon_sym_and, - ACTIONS(2167), 1, + ACTIONS(2182), 1, anon_sym_or, - ACTIONS(2179), 1, - anon_sym_if, - ACTIONS(2357), 1, - anon_sym_COMMA, - STATE(1232), 1, - aux_sym_expression_list_repeat1, - ACTIONS(2236), 3, + ACTIONS(2355), 5, anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_COLON, anon_sym_RBRACK, anon_sym_RBRACE, - [62320] = 4, + [62927] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2081), 1, + ACTIONS(2303), 1, anon_sym_and, - ACTIONS(2083), 1, + ACTIONS(2305), 1, anon_sym_or, - ACTIONS(2199), 6, + ACTIONS(2329), 1, + anon_sym_if, + ACTIONS(2172), 5, + sym__newline, + anon_sym_from, anon_sym_COMMA, + anon_sym_EQ, + anon_sym_SEMI, + [62947] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2178), 1, anon_sym_if, + ACTIONS(2180), 1, + anon_sym_and, + ACTIONS(2182), 1, + anon_sym_or, + ACTIONS(2371), 5, + anon_sym_RPAREN, + anon_sym_COMMA, anon_sym_COLON, - anon_sym_async, - anon_sym_for, + anon_sym_RBRACK, anon_sym_RBRACE, - [62338] = 5, + [62967] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2071), 1, + ACTIONS(2240), 1, anon_sym_if, - ACTIONS(2081), 1, + ACTIONS(2244), 1, anon_sym_and, - ACTIONS(2083), 1, + ACTIONS(2246), 1, anon_sym_or, - ACTIONS(2163), 5, + ACTIONS(2371), 5, anon_sym_COMMA, - anon_sym_COLON, - anon_sym_async, - anon_sym_for, anon_sym_RBRACE, - [62358] = 4, + anon_sym_EQ, + anon_sym_COLON2, + sym_type_conversion, + [62987] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2081), 1, + ACTIONS(2303), 1, anon_sym_and, - ACTIONS(2083), 1, + ACTIONS(2305), 1, anon_sym_or, - ACTIONS(2155), 6, + ACTIONS(2329), 1, + anon_sym_if, + ACTIONS(2196), 5, + sym__newline, + anon_sym_from, + anon_sym_COMMA, + anon_sym_EQ, + anon_sym_SEMI, + [63007] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1606), 8, + sym__newline, + anon_sym_from, anon_sym_COMMA, anon_sym_if, - anon_sym_COLON, + anon_sym_EQ, + anon_sym_and, + anon_sym_or, + anon_sym_SEMI, + [63021] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2154), 1, + anon_sym_and, + ACTIONS(2156), 1, + anon_sym_or, + ACTIONS(2373), 6, + anon_sym_RPAREN, + anon_sym_if, anon_sym_async, anon_sym_for, + anon_sym_RBRACK, anon_sym_RBRACE, - [62376] = 3, + [63039] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2081), 1, + ACTIONS(2115), 1, anon_sym_and, - ACTIONS(2159), 7, + ACTIONS(2117), 1, + anon_sym_or, + ACTIONS(2184), 6, anon_sym_COMMA, anon_sym_if, anon_sym_COLON, anon_sym_async, anon_sym_for, anon_sym_RBRACE, - anon_sym_or, - [62392] = 4, + [63057] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2081), 1, + ACTIONS(2105), 1, + anon_sym_if, + ACTIONS(2115), 1, anon_sym_and, - ACTIONS(2083), 1, + ACTIONS(2117), 1, anon_sym_or, - ACTIONS(2159), 6, + ACTIONS(2196), 5, anon_sym_COMMA, - anon_sym_if, anon_sym_COLON, anon_sym_async, anon_sym_for, anon_sym_RBRACE, - [62410] = 2, + [63077] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2359), 8, - anon_sym_RPAREN, + ACTIONS(2115), 1, + anon_sym_and, + ACTIONS(2117), 1, + anon_sym_or, + ACTIONS(2200), 6, anon_sym_COMMA, - anon_sym_as, anon_sym_if, anon_sym_COLON, - anon_sym_PIPE, - anon_sym_RBRACK, + anon_sym_async, + anon_sym_for, anon_sym_RBRACE, - [62424] = 4, + [63095] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(2108), 1, + ACTIONS(2115), 1, anon_sym_and, - ACTIONS(2110), 1, - anon_sym_or, - ACTIONS(2361), 6, - anon_sym_RPAREN, + ACTIONS(2164), 7, + anon_sym_COMMA, anon_sym_if, + anon_sym_COLON, anon_sym_async, anon_sym_for, - anon_sym_RBRACK, anon_sym_RBRACE, - [62442] = 5, + anon_sym_or, + [63111] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2259), 1, - anon_sym_if, - ACTIONS(2261), 1, + ACTIONS(2115), 1, anon_sym_and, - ACTIONS(2263), 1, + ACTIONS(2117), 1, anon_sym_or, - ACTIONS(2163), 5, - sym__newline, - anon_sym_from, + ACTIONS(2164), 6, anon_sym_COMMA, - anon_sym_EQ, - anon_sym_SEMI, - [62462] = 5, + anon_sym_if, + anon_sym_COLON, + anon_sym_async, + anon_sym_for, + anon_sym_RBRACE, + [63129] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2071), 1, + ACTIONS(2105), 1, anon_sym_if, - ACTIONS(2081), 1, + ACTIONS(2115), 1, anon_sym_and, - ACTIONS(2083), 1, + ACTIONS(2117), 1, anon_sym_or, - ACTIONS(2177), 5, + ACTIONS(2176), 5, anon_sym_COMMA, anon_sym_COLON, anon_sym_async, anon_sym_for, anon_sym_RBRACE, - [62482] = 2, + [63149] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(1597), 8, - sym__newline, - anon_sym_from, - anon_sym_COMMA, + ACTIONS(2105), 1, anon_sym_if, - anon_sym_EQ, + ACTIONS(2115), 1, anon_sym_and, + ACTIONS(2117), 1, anon_sym_or, - anon_sym_SEMI, - [62496] = 2, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2363), 8, - anon_sym_RPAREN, + ACTIONS(2172), 5, anon_sym_COMMA, - anon_sym_as, - anon_sym_if, anon_sym_COLON, - anon_sym_PIPE, - anon_sym_RBRACK, + anon_sym_async, + anon_sym_for, anon_sym_RBRACE, - [62510] = 2, + [63169] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2365), 8, - anon_sym_RPAREN, + ACTIONS(2377), 1, anon_sym_COMMA, - anon_sym_as, - anon_sym_if, - anon_sym_COLON, - anon_sym_PIPE, - anon_sym_RBRACK, - anon_sym_RBRACE, - [62524] = 2, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2367), 8, + STATE(1112), 1, + aux_sym_for_in_clause_repeat1, + ACTIONS(2375), 6, anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_as, anon_sym_if, - anon_sym_COLON, - anon_sym_PIPE, + anon_sym_async, + anon_sym_for, anon_sym_RBRACK, anon_sym_RBRACE, - [62538] = 4, + [63187] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2371), 1, + ACTIONS(2381), 1, anon_sym_COMMA, - STATE(1162), 1, + STATE(1113), 1, aux_sym_for_in_clause_repeat1, - ACTIONS(2369), 6, + ACTIONS(2379), 6, anon_sym_RPAREN, anon_sym_if, anon_sym_async, anon_sym_for, anon_sym_RBRACK, anon_sym_RBRACE, - [62556] = 4, + [63205] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2261), 1, - anon_sym_and, - ACTIONS(2263), 1, - anon_sym_or, - ACTIONS(2155), 6, + ACTIONS(2059), 8, sym__newline, anon_sym_from, anon_sym_COMMA, anon_sym_if, anon_sym_EQ, - anon_sym_SEMI, - [62574] = 5, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2234), 1, - anon_sym_if, - ACTIONS(2238), 1, - anon_sym_and, - ACTIONS(2240), 1, - anon_sym_or, - ACTIONS(2281), 5, - anon_sym_COMMA, - anon_sym_RBRACE, - anon_sym_EQ, - anon_sym_COLON2, - sym_type_conversion, - [62594] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2238), 1, anon_sym_and, - ACTIONS(2240), 1, anon_sym_or, - ACTIONS(2199), 6, - anon_sym_COMMA, - anon_sym_if, - anon_sym_RBRACE, - anon_sym_EQ, - anon_sym_COLON2, - sym_type_conversion, - [62612] = 5, + anon_sym_SEMI, + [63219] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2161), 1, - anon_sym_and, - ACTIONS(2167), 1, - anon_sym_or, - ACTIONS(2179), 1, - anon_sym_if, - ACTIONS(2301), 5, + ACTIONS(2081), 8, anon_sym_RPAREN, anon_sym_COMMA, + anon_sym_as, + anon_sym_if, anon_sym_COLON, + anon_sym_PIPE, anon_sym_RBRACK, anon_sym_RBRACE, - [62632] = 2, + [63233] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2374), 8, + ACTIONS(2383), 8, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_as, @@ -75987,622 +76789,611 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE, anon_sym_RBRACK, anon_sym_RBRACE, - [62646] = 2, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2050), 8, - anon_sym_COMMA, - anon_sym_if, - anon_sym_RBRACE, - anon_sym_EQ, - anon_sym_and, - anon_sym_or, - anon_sym_COLON2, - sym_type_conversion, - [62660] = 8, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2376), 1, - sym_identifier, - ACTIONS(2378), 1, - anon_sym_LPAREN, - ACTIONS(2380), 1, - anon_sym_STAR, - STATE(1290), 1, - sym_dotted_name, - STATE(1368), 1, - sym_aliased_import, - STATE(1532), 1, - sym__import_list, - STATE(1533), 1, - sym_wildcard_import, - [62685] = 8, + [63247] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(2075), 1, + ACTIONS(2109), 1, anon_sym_async, - ACTIONS(2077), 1, + ACTIONS(2111), 1, anon_sym_for, - ACTIONS(2382), 1, + ACTIONS(2385), 1, anon_sym_COMMA, - ACTIONS(2384), 1, + ACTIONS(2387), 1, anon_sym_RBRACE, - STATE(1100), 1, + STATE(1091), 1, sym_for_in_clause, - STATE(1491), 1, + STATE(1507), 1, aux_sym_dictionary_repeat1, - STATE(1650), 1, + STATE(1721), 1, sym__comprehension_clauses, - [62710] = 6, + [63272] = 6, ACTIONS(3), 1, sym_comment, - ACTIONS(2386), 1, + ACTIONS(2389), 1, anon_sym_except, - ACTIONS(2388), 1, + ACTIONS(2391), 1, anon_sym_finally, - STATE(553), 1, + STATE(611), 1, sym_finally_clause, - STATE(279), 2, + STATE(266), 2, sym_except_clause, aux_sym_try_statement_repeat1, - STATE(283), 2, + STATE(271), 2, sym_except_group_clause, aux_sym_try_statement_repeat2, - [62731] = 5, + [63293] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2161), 1, - anon_sym_and, - ACTIONS(2167), 1, - anon_sym_or, - ACTIONS(2179), 1, + ACTIONS(2393), 7, + anon_sym_RPAREN, + anon_sym_COMMA, anon_sym_if, - ACTIONS(2390), 4, + anon_sym_async, + anon_sym_for, + anon_sym_RBRACK, + anon_sym_RBRACE, + [63306] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2286), 7, anon_sym_RPAREN, anon_sym_COMMA, + anon_sym_if, + anon_sym_async, + anon_sym_for, + anon_sym_RBRACK, + anon_sym_RBRACE, + [63319] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2395), 1, + anon_sym_COMMA, + ACTIONS(2397), 1, + anon_sym_as, + ACTIONS(2399), 1, + anon_sym_if, + ACTIONS(2401), 1, anon_sym_COLON, - anon_sym_EQ, - [62750] = 6, + ACTIONS(2403), 1, + anon_sym_and, + ACTIONS(2405), 1, + anon_sym_or, + STATE(1342), 1, + aux_sym_exception_list_repeat1, + [63344] = 6, ACTIONS(3), 1, sym_comment, - ACTIONS(2386), 1, + ACTIONS(2389), 1, anon_sym_except, - ACTIONS(2388), 1, + ACTIONS(2391), 1, anon_sym_finally, - STATE(562), 1, + STATE(521), 1, sym_finally_clause, - STATE(266), 2, + STATE(273), 2, sym_except_clause, aux_sym_try_statement_repeat1, - STATE(267), 2, + STATE(279), 2, sym_except_group_clause, aux_sym_try_statement_repeat2, - [62771] = 5, + [63365] = 7, ACTIONS(3), 1, sym_comment, - ACTIONS(2161), 1, + ACTIONS(2303), 1, anon_sym_and, - ACTIONS(2167), 1, + ACTIONS(2305), 1, anon_sym_or, - ACTIONS(2179), 1, - anon_sym_if, - ACTIONS(2392), 4, - anon_sym_RPAREN, + ACTIONS(2327), 1, anon_sym_COMMA, - anon_sym_RBRACK, - anon_sym_RBRACE, - [62790] = 7, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2259), 1, + ACTIONS(2329), 1, anon_sym_if, - ACTIONS(2261), 1, - anon_sym_and, - ACTIONS(2263), 1, - anon_sym_or, - ACTIONS(2394), 1, - anon_sym_COMMA, - STATE(1360), 1, - aux_sym_print_statement_repeat1, - ACTIONS(2396), 2, + STATE(1272), 1, + aux_sym_expression_list_repeat1, + ACTIONS(2407), 2, sym__newline, anon_sym_SEMI, - [62813] = 2, + [63388] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2409), 1, + sym_identifier, + ACTIONS(2411), 1, + anon_sym_DOT, + ACTIONS(2413), 1, + anon_sym___future__, + STATE(1374), 1, + aux_sym_import_prefix_repeat1, + STATE(1419), 1, + sym_import_prefix, + STATE(1677), 2, + sym_relative_import, + sym_dotted_name, + [63411] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(1597), 7, + ACTIONS(2399), 1, + anon_sym_if, + ACTIONS(2403), 1, + anon_sym_and, + ACTIONS(2405), 1, + anon_sym_or, + ACTIONS(2176), 4, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_as, - anon_sym_if, anon_sym_COLON, - anon_sym_and, - anon_sym_or, - [62826] = 7, + [63430] = 7, ACTIONS(3), 1, sym_comment, - ACTIONS(2259), 1, - anon_sym_if, - ACTIONS(2261), 1, + ACTIONS(2303), 1, anon_sym_and, - ACTIONS(2263), 1, + ACTIONS(2305), 1, anon_sym_or, - ACTIONS(2398), 1, + ACTIONS(2327), 1, anon_sym_COMMA, - STATE(1365), 1, - aux_sym_assert_statement_repeat1, - ACTIONS(2400), 2, + ACTIONS(2329), 1, + anon_sym_if, + STATE(1272), 1, + aux_sym_expression_list_repeat1, + ACTIONS(2415), 2, sym__newline, anon_sym_SEMI, - [62849] = 2, + [63453] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2402), 7, - anon_sym_RPAREN, - anon_sym_COMMA, + ACTIONS(2152), 1, anon_sym_if, + ACTIONS(2154), 1, + anon_sym_and, + ACTIONS(2156), 1, + anon_sym_or, + ACTIONS(2417), 4, + anon_sym_COMMA, anon_sym_async, anon_sym_for, - anon_sym_RBRACK, anon_sym_RBRACE, - [62862] = 7, + [63472] = 7, ACTIONS(3), 1, sym_comment, - ACTIONS(2259), 1, - anon_sym_if, - ACTIONS(2261), 1, + ACTIONS(2303), 1, anon_sym_and, - ACTIONS(2263), 1, + ACTIONS(2305), 1, anon_sym_or, - ACTIONS(2295), 1, + ACTIONS(2329), 1, + anon_sym_if, + ACTIONS(2419), 1, anon_sym_COMMA, - STATE(1260), 1, - aux_sym_expression_list_repeat1, - ACTIONS(2404), 2, - sym__newline, + STATE(1350), 1, + aux_sym_print_statement_repeat1, + ACTIONS(2421), 2, + sym__newline, anon_sym_SEMI, - [62885] = 7, + [63495] = 7, ACTIONS(3), 1, sym_comment, - ACTIONS(2259), 1, - anon_sym_if, - ACTIONS(2261), 1, + ACTIONS(2303), 1, anon_sym_and, - ACTIONS(2263), 1, + ACTIONS(2305), 1, anon_sym_or, - ACTIONS(2295), 1, + ACTIONS(2329), 1, + anon_sym_if, + ACTIONS(2423), 1, anon_sym_COMMA, - STATE(1260), 1, - aux_sym_expression_list_repeat1, - ACTIONS(2406), 2, + STATE(1360), 1, + aux_sym_assert_statement_repeat1, + ACTIONS(2425), 2, sym__newline, anon_sym_SEMI, - [62908] = 6, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2408), 1, - anon_sym_except, - ACTIONS(2410), 1, - anon_sym_finally, - STATE(535), 1, - sym_finally_clause, - STATE(268), 2, - sym_except_clause, - aux_sym_try_statement_repeat1, - STATE(280), 2, - sym_except_group_clause, - aux_sym_try_statement_repeat2, - [62929] = 5, + [63518] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(2412), 1, + ACTIONS(2427), 1, sym_identifier, - ACTIONS(2414), 1, + ACTIONS(2429), 1, + anon_sym_LPAREN, + ACTIONS(2431), 1, anon_sym_STAR, - ACTIONS(2416), 1, - anon_sym_STAR_STAR, - STATE(1524), 4, - sym_typevar_parameter, - sym_typevartuple_parameter, - sym_paramspec_parameter, - sym__type_parameter, - [62948] = 5, + STATE(1281), 1, + sym_dotted_name, + STATE(1372), 1, + sym_aliased_import, + STATE(1517), 1, + sym__import_list, + STATE(1521), 1, + sym_wildcard_import, + [63543] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2303), 1, + anon_sym_and, + ACTIONS(2305), 1, + anon_sym_or, + ACTIONS(2329), 1, + anon_sym_if, + ACTIONS(2355), 4, + sym__newline, + anon_sym_from, + anon_sym_COMMA, + anon_sym_SEMI, + [63562] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2234), 1, + ACTIONS(2399), 1, anon_sym_if, - ACTIONS(2238), 1, + ACTIONS(2403), 1, anon_sym_and, - ACTIONS(2240), 1, + ACTIONS(2405), 1, anon_sym_or, - ACTIONS(2418), 4, + ACTIONS(2172), 4, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_as, + anon_sym_COLON, + [63581] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2266), 7, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_RBRACK, anon_sym_RBRACE, anon_sym_EQ, anon_sym_COLON2, sym_type_conversion, - [62967] = 3, + [63594] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2422), 1, - anon_sym_as, - ACTIONS(2420), 6, + ACTIONS(2403), 1, + anon_sym_and, + ACTIONS(2405), 1, + anon_sym_or, + ACTIONS(2184), 5, anon_sym_RPAREN, anon_sym_COMMA, + anon_sym_as, anon_sym_if, anon_sym_COLON, - anon_sym_RBRACK, - anon_sym_RBRACE, - [62982] = 7, + [63611] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2259), 1, + ACTIONS(2240), 1, anon_sym_if, - ACTIONS(2261), 1, + ACTIONS(2244), 1, anon_sym_and, - ACTIONS(2263), 1, + ACTIONS(2246), 1, anon_sym_or, - ACTIONS(2295), 1, - anon_sym_COMMA, - STATE(1260), 1, - aux_sym_expression_list_repeat1, - ACTIONS(2424), 2, - sym__newline, - anon_sym_SEMI, - [63005] = 8, + ACTIONS(2433), 4, + anon_sym_RBRACE, + anon_sym_EQ, + anon_sym_COLON2, + sym_type_conversion, + [63630] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2426), 1, + ACTIONS(2059), 7, + anon_sym_RPAREN, anon_sym_COMMA, - ACTIONS(2428), 1, anon_sym_as, - ACTIONS(2430), 1, anon_sym_if, - ACTIONS(2432), 1, anon_sym_COLON, - ACTIONS(2434), 1, anon_sym_and, - ACTIONS(2436), 1, anon_sym_or, - STATE(1338), 1, - aux_sym_exception_list_repeat1, - [63030] = 6, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2408), 1, - anon_sym_except, - ACTIONS(2410), 1, - anon_sym_finally, - STATE(607), 1, - sym_finally_clause, - STATE(275), 2, - sym_except_clause, - aux_sym_try_statement_repeat1, - STATE(287), 2, - sym_except_group_clause, - aux_sym_try_statement_repeat2, - [63051] = 4, + [63643] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(2434), 1, - anon_sym_and, - ACTIONS(2436), 1, - anon_sym_or, - ACTIONS(2199), 5, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_as, - anon_sym_if, - anon_sym_COLON, - [63068] = 5, + ACTIONS(2427), 1, + sym_identifier, + ACTIONS(2431), 1, + anon_sym_STAR, + ACTIONS(2435), 1, + anon_sym_LPAREN, + STATE(1281), 1, + sym_dotted_name, + STATE(1372), 1, + sym_aliased_import, + STATE(1534), 1, + sym__import_list, + STATE(1535), 1, + sym_wildcard_import, + [63668] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2161), 1, - anon_sym_and, - ACTIONS(2167), 1, - anon_sym_or, - ACTIONS(2179), 1, - anon_sym_if, - ACTIONS(2418), 4, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_RBRACK, - anon_sym_RBRACE, - [63087] = 8, + ACTIONS(2437), 1, + sym_identifier, + ACTIONS(2439), 1, + anon_sym_STAR, + ACTIONS(2441), 1, + anon_sym_STAR_STAR, + STATE(1483), 4, + sym_typevar_parameter, + sym_typevartuple_parameter, + sym_paramspec_parameter, + sym__type_parameter, + [63687] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(2075), 1, + ACTIONS(2109), 1, anon_sym_async, - ACTIONS(2077), 1, + ACTIONS(2111), 1, anon_sym_for, - ACTIONS(2438), 1, + ACTIONS(2443), 1, anon_sym_COMMA, - ACTIONS(2440), 1, + ACTIONS(2445), 1, anon_sym_RBRACE, - STATE(1100), 1, + STATE(1091), 1, sym_for_in_clause, - STATE(1409), 1, + STATE(1413), 1, aux_sym_dictionary_repeat1, - STATE(1718), 1, + STATE(1601), 1, sym__comprehension_clauses, - [63112] = 5, + [63712] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2259), 1, + ACTIONS(2178), 1, anon_sym_if, - ACTIONS(2261), 1, + ACTIONS(2180), 1, anon_sym_and, - ACTIONS(2263), 1, + ACTIONS(2182), 1, anon_sym_or, - ACTIONS(2301), 4, - sym__newline, - anon_sym_from, + ACTIONS(2447), 4, + anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_SEMI, - [63131] = 5, + anon_sym_RBRACK, + anon_sym_RBRACE, + [63731] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2430), 1, + ACTIONS(2399), 1, anon_sym_if, - ACTIONS(2434), 1, + ACTIONS(2403), 1, anon_sym_and, - ACTIONS(2436), 1, + ACTIONS(2405), 1, anon_sym_or, - ACTIONS(2163), 4, + ACTIONS(2196), 4, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_as, anon_sym_COLON, - [63150] = 4, + [63750] = 7, ACTIONS(3), 1, sym_comment, - ACTIONS(2434), 1, + ACTIONS(2303), 1, anon_sym_and, - ACTIONS(2436), 1, + ACTIONS(2305), 1, anon_sym_or, - ACTIONS(2155), 5, - anon_sym_RPAREN, + ACTIONS(2327), 1, anon_sym_COMMA, - anon_sym_as, + ACTIONS(2329), 1, anon_sym_if, - anon_sym_COLON, - [63167] = 3, + STATE(1272), 1, + aux_sym_expression_list_repeat1, + ACTIONS(2266), 2, + sym__newline, + anon_sym_SEMI, + [63773] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2434), 1, + ACTIONS(2178), 1, + anon_sym_if, + ACTIONS(2180), 1, anon_sym_and, - ACTIONS(2159), 6, + ACTIONS(2182), 1, + anon_sym_or, + ACTIONS(2433), 4, anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_as, - anon_sym_if, - anon_sym_COLON, - anon_sym_or, - [63182] = 4, + anon_sym_RBRACK, + anon_sym_RBRACE, + [63792] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2434), 1, + ACTIONS(2403), 1, anon_sym_and, - ACTIONS(2436), 1, + ACTIONS(2405), 1, anon_sym_or, - ACTIONS(2159), 5, + ACTIONS(2200), 5, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_as, anon_sym_if, anon_sym_COLON, - [63199] = 2, + [63809] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(2236), 7, + ACTIONS(2403), 1, + anon_sym_and, + ACTIONS(2164), 6, anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_RBRACK, - anon_sym_RBRACE, - anon_sym_EQ, - anon_sym_COLON2, - sym_type_conversion, - [63212] = 7, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2259), 1, + anon_sym_as, anon_sym_if, - ACTIONS(2261), 1, - anon_sym_and, - ACTIONS(2263), 1, + anon_sym_COLON, anon_sym_or, - ACTIONS(2398), 1, - anon_sym_COMMA, - STATE(1344), 1, - aux_sym_assert_statement_repeat1, - ACTIONS(2442), 2, - sym__newline, - anon_sym_SEMI, - [63235] = 8, + [63824] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(2075), 1, + ACTIONS(2109), 1, anon_sym_async, - ACTIONS(2077), 1, + ACTIONS(2111), 1, anon_sym_for, - ACTIONS(2444), 1, + ACTIONS(2449), 1, anon_sym_COMMA, - ACTIONS(2446), 1, + ACTIONS(2451), 1, anon_sym_RBRACE, - STATE(1100), 1, + STATE(1091), 1, sym_for_in_clause, - STATE(1427), 1, + STATE(1437), 1, aux_sym_dictionary_repeat1, - STATE(1631), 1, + STATE(1667), 1, sym__comprehension_clauses, - [63260] = 5, + [63849] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2259), 1, - anon_sym_if, - ACTIONS(2261), 1, + ACTIONS(2403), 1, anon_sym_and, - ACTIONS(2263), 1, + ACTIONS(2405), 1, anon_sym_or, - ACTIONS(2281), 4, - sym__newline, - anon_sym_from, + ACTIONS(2164), 5, + anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_SEMI, - [63279] = 6, + anon_sym_as, + anon_sym_if, + anon_sym_COLON, + [63866] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2430), 1, + ACTIONS(2178), 1, anon_sym_if, - ACTIONS(2434), 1, + ACTIONS(2180), 1, anon_sym_and, - ACTIONS(2436), 1, + ACTIONS(2182), 1, anon_sym_or, - ACTIONS(2450), 1, - anon_sym_as, - ACTIONS(2448), 3, + ACTIONS(2453), 4, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_COLON, - [63300] = 7, + anon_sym_EQ, + [63885] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2452), 1, + ACTIONS(2437), 1, sym_identifier, - ACTIONS(2454), 1, - anon_sym_DOT, - ACTIONS(2456), 1, - anon_sym___future__, - STATE(1336), 1, - aux_sym_import_prefix_repeat1, - STATE(1402), 1, - sym_import_prefix, - STATE(1709), 2, - sym_relative_import, - sym_dotted_name, - [63323] = 7, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2259), 1, - anon_sym_if, - ACTIONS(2261), 1, - anon_sym_and, - ACTIONS(2263), 1, - anon_sym_or, - ACTIONS(2295), 1, - anon_sym_COMMA, - STATE(1260), 1, - aux_sym_expression_list_repeat1, - ACTIONS(2236), 2, - sym__newline, - anon_sym_SEMI, - [63346] = 2, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2458), 7, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_if, - anon_sym_async, - anon_sym_for, - anon_sym_RBRACK, - anon_sym_RBRACE, - [63359] = 8, + ACTIONS(2439), 1, + anon_sym_STAR, + ACTIONS(2441), 1, + anon_sym_STAR_STAR, + STATE(1519), 4, + sym_typevar_parameter, + sym_typevartuple_parameter, + sym_paramspec_parameter, + sym__type_parameter, + [63904] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(2426), 1, + ACTIONS(2395), 1, anon_sym_COMMA, - ACTIONS(2430), 1, + ACTIONS(2399), 1, anon_sym_if, - ACTIONS(2434), 1, + ACTIONS(2403), 1, anon_sym_and, - ACTIONS(2436), 1, + ACTIONS(2405), 1, anon_sym_or, - ACTIONS(2460), 1, + ACTIONS(2455), 1, anon_sym_as, - ACTIONS(2462), 1, + ACTIONS(2457), 1, anon_sym_COLON, - STATE(1338), 1, + STATE(1342), 1, aux_sym_exception_list_repeat1, - [63384] = 8, + [63929] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(2426), 1, + ACTIONS(2395), 1, anon_sym_COMMA, - ACTIONS(2430), 1, + ACTIONS(2399), 1, anon_sym_if, - ACTIONS(2434), 1, + ACTIONS(2403), 1, anon_sym_and, - ACTIONS(2436), 1, + ACTIONS(2405), 1, anon_sym_or, - ACTIONS(2464), 1, + ACTIONS(2459), 1, anon_sym_as, - ACTIONS(2466), 1, + ACTIONS(2461), 1, anon_sym_COLON, - STATE(1338), 1, + STATE(1342), 1, aux_sym_exception_list_repeat1, - [63409] = 5, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2412), 1, - sym_identifier, - ACTIONS(2414), 1, - anon_sym_STAR, - ACTIONS(2416), 1, - anon_sym_STAR_STAR, - STATE(1416), 4, - sym_typevar_parameter, - sym_typevartuple_parameter, - sym_paramspec_parameter, - sym__type_parameter, - [63428] = 8, + [63954] = 6, ACTIONS(3), 1, sym_comment, - ACTIONS(2426), 1, - anon_sym_COMMA, - ACTIONS(2430), 1, + ACTIONS(2399), 1, anon_sym_if, - ACTIONS(2434), 1, + ACTIONS(2403), 1, anon_sym_and, - ACTIONS(2436), 1, + ACTIONS(2405), 1, anon_sym_or, - ACTIONS(2468), 1, + ACTIONS(2465), 1, anon_sym_as, - ACTIONS(2470), 1, + ACTIONS(2463), 3, + anon_sym_RPAREN, + anon_sym_COMMA, anon_sym_COLON, - STATE(1338), 1, - aux_sym_exception_list_repeat1, - [63453] = 5, + [63975] = 7, ACTIONS(3), 1, sym_comment, - ACTIONS(2430), 1, + ACTIONS(2303), 1, + anon_sym_and, + ACTIONS(2305), 1, + anon_sym_or, + ACTIONS(2327), 1, + anon_sym_COMMA, + ACTIONS(2329), 1, anon_sym_if, - ACTIONS(2434), 1, + STATE(1272), 1, + aux_sym_expression_list_repeat1, + ACTIONS(2467), 2, + sym__newline, + anon_sym_SEMI, + [63998] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2303), 1, anon_sym_and, - ACTIONS(2436), 1, + ACTIONS(2305), 1, anon_sym_or, - ACTIONS(2177), 4, + ACTIONS(2327), 1, + anon_sym_COMMA, + ACTIONS(2329), 1, + anon_sym_if, + STATE(1272), 1, + aux_sym_expression_list_repeat1, + ACTIONS(2469), 2, + sym__newline, + anon_sym_SEMI, + [64021] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2471), 7, anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_as, - anon_sym_COLON, - [63472] = 5, + anon_sym_if, + anon_sym_async, + anon_sym_for, + anon_sym_RBRACK, + anon_sym_RBRACE, + [64034] = 6, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2473), 1, + anon_sym_except, + ACTIONS(2475), 1, + anon_sym_finally, + STATE(566), 1, + sym_finally_clause, + STATE(268), 2, + sym_except_clause, + aux_sym_try_statement_repeat1, + STATE(269), 2, + sym_except_group_clause, + aux_sym_try_statement_repeat2, + [64055] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(2430), 1, + ACTIONS(2395), 1, + anon_sym_COMMA, + ACTIONS(2399), 1, anon_sym_if, - ACTIONS(2434), 1, + ACTIONS(2403), 1, anon_sym_and, - ACTIONS(2436), 1, + ACTIONS(2405), 1, anon_sym_or, - ACTIONS(2181), 4, - anon_sym_RPAREN, - anon_sym_COMMA, + ACTIONS(2477), 1, anon_sym_as, + ACTIONS(2479), 1, anon_sym_COLON, - [63491] = 2, + STATE(1342), 1, + aux_sym_exception_list_repeat1, + [64080] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2050), 7, + ACTIONS(1606), 7, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_as, @@ -76610,5760 +77401,5857 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_COLON, anon_sym_and, anon_sym_or, - [63504] = 2, + [64093] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2369), 7, - anon_sym_RPAREN, - anon_sym_COMMA, + ACTIONS(2303), 1, + anon_sym_and, + ACTIONS(2305), 1, + anon_sym_or, + ACTIONS(2329), 1, anon_sym_if, - anon_sym_async, - anon_sym_for, - anon_sym_RBRACK, - anon_sym_RBRACE, - [63517] = 8, + ACTIONS(2371), 4, + sym__newline, + anon_sym_from, + anon_sym_COMMA, + anon_sym_SEMI, + [64112] = 6, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2473), 1, + anon_sym_except, + ACTIONS(2475), 1, + anon_sym_finally, + STATE(608), 1, + sym_finally_clause, + STATE(272), 2, + sym_except_clause, + aux_sym_try_statement_repeat1, + STATE(276), 2, + sym_except_group_clause, + aux_sym_try_statement_repeat2, + [64133] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(2075), 1, + ACTIONS(2109), 1, anon_sym_async, - ACTIONS(2077), 1, + ACTIONS(2111), 1, anon_sym_for, - ACTIONS(2472), 1, + ACTIONS(2481), 1, anon_sym_COMMA, - ACTIONS(2474), 1, + ACTIONS(2483), 1, anon_sym_RBRACE, - STATE(1100), 1, + STATE(1091), 1, sym_for_in_clause, - STATE(1433), 1, + STATE(1501), 1, aux_sym_dictionary_repeat1, - STATE(1721), 1, + STATE(1678), 1, sym__comprehension_clauses, - [63542] = 7, + [64158] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(2259), 1, + ACTIONS(2487), 1, + anon_sym_as, + ACTIONS(2485), 6, + anon_sym_RPAREN, + anon_sym_COMMA, anon_sym_if, - ACTIONS(2261), 1, + anon_sym_COLON, + anon_sym_RBRACK, + anon_sym_RBRACE, + [64173] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2303), 1, anon_sym_and, - ACTIONS(2263), 1, + ACTIONS(2305), 1, anon_sym_or, - ACTIONS(2295), 1, + ACTIONS(2329), 1, + anon_sym_if, + ACTIONS(2423), 1, anon_sym_COMMA, - STATE(1260), 1, - aux_sym_expression_list_repeat1, - ACTIONS(2476), 2, + STATE(1354), 1, + aux_sym_assert_statement_repeat1, + ACTIONS(2489), 2, + sym__newline, + anon_sym_SEMI, + [64196] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2491), 1, + anon_sym_DOT, + STATE(1224), 1, + aux_sym_match_value_pattern_repeat1, + ACTIONS(2493), 4, sym__newline, + anon_sym_COMMA, + anon_sym_as, anon_sym_SEMI, - [63565] = 5, + [64212] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2106), 1, + ACTIONS(2497), 1, + anon_sym_COMMA, + STATE(1218), 1, + aux_sym_open_sequence_match_pattern_repeat1, + ACTIONS(2495), 4, + anon_sym_RPAREN, anon_sym_if, - ACTIONS(2108), 1, - anon_sym_and, - ACTIONS(2110), 1, - anon_sym_or, - ACTIONS(2478), 4, + anon_sym_COLON, + anon_sym_RBRACK, + [64228] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2500), 1, anon_sym_COMMA, - anon_sym_async, - anon_sym_for, + STATE(1233), 1, + aux_sym_expression_list_repeat1, + ACTIONS(2502), 4, anon_sym_RBRACE, - [63584] = 4, + anon_sym_EQ, + anon_sym_COLON2, + sym_type_conversion, + [64244] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2480), 1, + ACTIONS(2504), 1, anon_sym_COMMA, - STATE(1221), 1, + STATE(1233), 1, aux_sym_expression_list_repeat1, - ACTIONS(2482), 4, + ACTIONS(2502), 4, anon_sym_RBRACE, anon_sym_EQ, anon_sym_COLON2, sym_type_conversion, - [63600] = 4, + [64260] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2160), 6, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_if, + anon_sym_COLON, + anon_sym_RBRACK, + anon_sym_RBRACE, + [64272] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2091), 1, + ACTIONS(2083), 1, anon_sym_DOT, - STATE(1241), 1, + STATE(1033), 1, aux_sym_match_value_pattern_repeat1, - ACTIONS(2484), 4, + ACTIONS(2506), 4, anon_sym_import, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_as, - [63616] = 3, - ACTIONS(2065), 1, - sym_comment, - ACTIONS(2486), 2, - anon_sym_LBRACE2, - anon_sym_BSLASH, - ACTIONS(2488), 4, - sym__string_content, - sym__string_end, - sym__escape_interpolation, - sym_escape_sequence, - [63630] = 3, - ACTIONS(2065), 1, + [64288] = 6, + ACTIONS(3), 1, sym_comment, - ACTIONS(2490), 2, - anon_sym_LBRACE2, - anon_sym_BSLASH, - ACTIONS(2492), 4, - sym__string_content, - sym__string_end, - sym__escape_interpolation, - sym_escape_sequence, - [63644] = 4, + ACTIONS(2178), 1, + anon_sym_if, + ACTIONS(2180), 1, + anon_sym_and, + ACTIONS(2182), 1, + anon_sym_or, + ACTIONS(2510), 1, + anon_sym_COLON, + ACTIONS(2508), 2, + anon_sym_COMMA, + anon_sym_RBRACK, + [64308] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2494), 1, + ACTIONS(2491), 1, anon_sym_DOT, - STATE(1233), 1, + STATE(1249), 1, aux_sym_match_value_pattern_repeat1, - ACTIONS(2484), 4, + ACTIONS(2506), 4, sym__newline, anon_sym_COMMA, anon_sym_as, anon_sym_SEMI, - [63660] = 6, + [64324] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2303), 1, + anon_sym_and, + ACTIONS(2305), 1, + anon_sym_or, + ACTIONS(2329), 1, + anon_sym_if, + ACTIONS(2512), 3, + sym__newline, + anon_sym_COMMA, + anon_sym_SEMI, + [64342] = 3, + ACTIONS(2077), 1, + sym_comment, + ACTIONS(2514), 2, + anon_sym_LBRACE2, + anon_sym_BSLASH, + ACTIONS(2516), 4, + sym__string_content, + sym__string_end, + sym__escape_interpolation, + sym_escape_sequence, + [64356] = 6, ACTIONS(3), 1, sym_comment, - ACTIONS(2498), 1, + ACTIONS(2520), 1, anon_sym_COLON, - ACTIONS(2500), 1, + ACTIONS(2522), 1, anon_sym_EQ, - STATE(1327), 1, + STATE(1371), 1, sym__type_bound, - STATE(1529), 1, + STATE(1537), 1, sym__type_param_default, - ACTIONS(2496), 2, + ACTIONS(2518), 2, anon_sym_COMMA, anon_sym_RBRACK, - [63680] = 4, + [64376] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2502), 1, + ACTIONS(2083), 1, + anon_sym_DOT, + STATE(1222), 1, + aux_sym_match_value_pattern_repeat1, + ACTIONS(2493), 4, + anon_sym_import, + anon_sym_RPAREN, anon_sym_COMMA, - STATE(1221), 1, - aux_sym_expression_list_repeat1, - ACTIONS(2505), 4, - anon_sym_RBRACE, - anon_sym_EQ, - anon_sym_COLON2, - sym_type_conversion, - [63696] = 4, + anon_sym_as, + [64392] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2507), 1, + ACTIONS(2178), 1, + anon_sym_if, + ACTIONS(2180), 1, + anon_sym_and, + ACTIONS(2182), 1, + anon_sym_or, + ACTIONS(2524), 3, anon_sym_COMMA, - STATE(1222), 1, - aux_sym_expression_list_repeat1, - ACTIONS(2505), 4, - anon_sym_RPAREN, - anon_sym_COLON, anon_sym_RBRACK, - anon_sym_RBRACE, - [63712] = 3, - ACTIONS(2065), 1, + anon_sym_EQ, + [64410] = 3, + ACTIONS(2077), 1, sym_comment, - ACTIONS(2510), 2, + ACTIONS(2526), 2, anon_sym_LBRACE2, anon_sym_BSLASH, - ACTIONS(2512), 4, + ACTIONS(2528), 4, sym__string_content, sym__string_end, sym__escape_interpolation, sym_escape_sequence, - [63726] = 5, + [64424] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2259), 1, - anon_sym_if, - ACTIONS(2261), 1, - anon_sym_and, - ACTIONS(2263), 1, - anon_sym_or, - ACTIONS(2514), 3, - sym__newline, + ACTIONS(2532), 1, anon_sym_COMMA, - anon_sym_SEMI, - [63744] = 7, + STATE(1231), 1, + aux_sym_expression_list_repeat1, + ACTIONS(2530), 4, + anon_sym_RPAREN, + anon_sym_COLON, + anon_sym_RBRACK, + anon_sym_RBRACE, + [64440] = 7, ACTIONS(3), 1, sym_comment, - ACTIONS(2161), 1, + ACTIONS(2178), 1, + anon_sym_if, + ACTIONS(2180), 1, anon_sym_and, - ACTIONS(2167), 1, + ACTIONS(2182), 1, anon_sym_or, - ACTIONS(2171), 1, + ACTIONS(2216), 1, anon_sym_RPAREN, - ACTIONS(2173), 1, + ACTIONS(2218), 1, anon_sym_COMMA, - ACTIONS(2179), 1, - anon_sym_if, - STATE(1451), 1, + STATE(1441), 1, aux_sym_argument_list_repeat1, - [63766] = 5, + [64462] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2259), 1, - anon_sym_if, - ACTIONS(2261), 1, - anon_sym_and, - ACTIONS(2263), 1, - anon_sym_or, - ACTIONS(2516), 3, - sym__newline, + ACTIONS(2535), 1, anon_sym_COMMA, - anon_sym_SEMI, - [63784] = 5, + STATE(1233), 1, + aux_sym_expression_list_repeat1, + ACTIONS(2530), 4, + anon_sym_RBRACE, + anon_sym_EQ, + anon_sym_COLON2, + sym_type_conversion, + [64478] = 7, ACTIONS(3), 1, sym_comment, - ACTIONS(2259), 1, + ACTIONS(2178), 1, anon_sym_if, - ACTIONS(2261), 1, + ACTIONS(2180), 1, anon_sym_and, - ACTIONS(2263), 1, + ACTIONS(2182), 1, anon_sym_or, - ACTIONS(2518), 3, - sym__newline, + ACTIONS(2357), 1, anon_sym_COMMA, - anon_sym_SEMI, - [63802] = 5, + ACTIONS(2538), 1, + anon_sym_COLON, + STATE(1250), 1, + aux_sym_expression_list_repeat1, + [64500] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2161), 1, + ACTIONS(2178), 1, + anon_sym_if, + ACTIONS(2180), 1, anon_sym_and, - ACTIONS(2167), 1, + ACTIONS(2182), 1, anon_sym_or, - ACTIONS(2179), 1, - anon_sym_if, - ACTIONS(2520), 3, + ACTIONS(2540), 3, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_COLON, - [63820] = 4, + [64518] = 6, ACTIONS(3), 1, sym_comment, - ACTIONS(2522), 1, - anon_sym_COMMA, - STATE(1222), 1, - aux_sym_expression_list_repeat1, - ACTIONS(2482), 4, - anon_sym_RPAREN, + ACTIONS(2178), 1, + anon_sym_if, + ACTIONS(2180), 1, + anon_sym_and, + ACTIONS(2182), 1, + anon_sym_or, + ACTIONS(2544), 1, anon_sym_COLON, + ACTIONS(2542), 2, + anon_sym_COMMA, anon_sym_RBRACK, - anon_sym_RBRACE, - [63836] = 7, + [64538] = 7, ACTIONS(3), 1, sym_comment, - ACTIONS(2161), 1, + ACTIONS(2178), 1, + anon_sym_if, + ACTIONS(2180), 1, anon_sym_and, - ACTIONS(2167), 1, + ACTIONS(2182), 1, anon_sym_or, - ACTIONS(2179), 1, - anon_sym_if, ACTIONS(2357), 1, anon_sym_COMMA, - ACTIONS(2524), 1, + ACTIONS(2546), 1, anon_sym_COLON, - STATE(1232), 1, + STATE(1250), 1, aux_sym_expression_list_repeat1, - [63858] = 5, + [64560] = 7, ACTIONS(3), 1, sym_comment, - ACTIONS(2161), 1, + ACTIONS(2178), 1, + anon_sym_if, + ACTIONS(2180), 1, anon_sym_and, - ACTIONS(2167), 1, + ACTIONS(2182), 1, anon_sym_or, - ACTIONS(2179), 1, - anon_sym_if, - ACTIONS(2526), 3, - anon_sym_RPAREN, + ACTIONS(2357), 1, anon_sym_COMMA, + ACTIONS(2548), 1, anon_sym_COLON, - [63876] = 4, + STATE(1250), 1, + aux_sym_expression_list_repeat1, + [64582] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2528), 1, - anon_sym_COMMA, - STATE(1222), 1, - aux_sym_expression_list_repeat1, - ACTIONS(2482), 4, + ACTIONS(2550), 6, anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_if, anon_sym_COLON, anon_sym_RBRACK, anon_sym_RBRACE, - [63892] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2494), 1, - anon_sym_DOT, - STATE(1234), 1, - aux_sym_match_value_pattern_repeat1, - ACTIONS(2530), 4, - sym__newline, - anon_sym_COMMA, - anon_sym_as, - anon_sym_SEMI, - [63908] = 4, + [64594] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2532), 1, - anon_sym_DOT, - STATE(1234), 1, - aux_sym_match_value_pattern_repeat1, - ACTIONS(2054), 4, + ACTIONS(2303), 1, + anon_sym_and, + ACTIONS(2305), 1, + anon_sym_or, + ACTIONS(2329), 1, + anon_sym_if, + ACTIONS(2552), 3, sym__newline, anon_sym_COMMA, - anon_sym_as, anon_sym_SEMI, - [63924] = 7, + [64612] = 7, ACTIONS(3), 1, sym_comment, - ACTIONS(2161), 1, + ACTIONS(2178), 1, + anon_sym_if, + ACTIONS(2180), 1, anon_sym_and, - ACTIONS(2167), 1, + ACTIONS(2182), 1, anon_sym_or, - ACTIONS(2179), 1, - anon_sym_if, ACTIONS(2357), 1, anon_sym_COMMA, - ACTIONS(2535), 1, + ACTIONS(2554), 1, anon_sym_COLON, - STATE(1232), 1, + STATE(1250), 1, aux_sym_expression_list_repeat1, - [63946] = 7, + [64634] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2161), 1, + ACTIONS(2303), 1, anon_sym_and, - ACTIONS(2167), 1, + ACTIONS(2305), 1, anon_sym_or, - ACTIONS(2179), 1, + ACTIONS(2329), 1, anon_sym_if, - ACTIONS(2357), 1, + ACTIONS(2556), 3, + sym__newline, anon_sym_COMMA, - ACTIONS(2537), 1, - anon_sym_COLON, - STATE(1232), 1, - aux_sym_expression_list_repeat1, - [63968] = 7, + anon_sym_SEMI, + [64652] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2161), 1, + ACTIONS(2303), 1, anon_sym_and, - ACTIONS(2167), 1, + ACTIONS(2305), 1, anon_sym_or, - ACTIONS(2179), 1, + ACTIONS(2329), 1, anon_sym_if, - ACTIONS(2357), 1, - anon_sym_COMMA, - ACTIONS(2539), 1, - anon_sym_COLON, - STATE(1232), 1, - aux_sym_expression_list_repeat1, - [63990] = 5, + ACTIONS(2453), 3, + sym__newline, + anon_sym_EQ, + anon_sym_SEMI, + [64670] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2161), 1, + ACTIONS(2178), 1, + anon_sym_if, + ACTIONS(2180), 1, anon_sym_and, - ACTIONS(2167), 1, + ACTIONS(2182), 1, anon_sym_or, - ACTIONS(2179), 1, - anon_sym_if, - ACTIONS(2541), 3, + ACTIONS(2558), 3, + anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_RBRACK, - anon_sym_EQ, - [64008] = 2, + anon_sym_COLON, + [64688] = 7, ACTIONS(3), 1, sym_comment, - ACTIONS(2095), 6, - anon_sym_RPAREN, - anon_sym_COMMA, + ACTIONS(2178), 1, anon_sym_if, + ACTIONS(2180), 1, + anon_sym_and, + ACTIONS(2182), 1, + anon_sym_or, + ACTIONS(2357), 1, + anon_sym_COMMA, + ACTIONS(2560), 1, anon_sym_COLON, - anon_sym_RBRACK, - anon_sym_RBRACE, - [64020] = 7, + STATE(1250), 1, + aux_sym_expression_list_repeat1, + [64710] = 7, ACTIONS(3), 1, sym_comment, - ACTIONS(2161), 1, + ACTIONS(2178), 1, + anon_sym_if, + ACTIONS(2180), 1, anon_sym_and, - ACTIONS(2167), 1, + ACTIONS(2182), 1, anon_sym_or, - ACTIONS(2179), 1, - anon_sym_if, ACTIONS(2357), 1, anon_sym_COMMA, - ACTIONS(2543), 1, + ACTIONS(2562), 1, anon_sym_COLON, - STATE(1232), 1, + STATE(1250), 1, + aux_sym_expression_list_repeat1, + [64732] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2564), 1, + anon_sym_COMMA, + STATE(1231), 1, aux_sym_expression_list_repeat1, - [64042] = 4, + ACTIONS(2502), 4, + anon_sym_RPAREN, + anon_sym_COLON, + anon_sym_RBRACK, + anon_sym_RBRACE, + [64748] = 6, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2411), 1, + anon_sym_DOT, + ACTIONS(2566), 1, + sym_identifier, + STATE(1374), 1, + aux_sym_import_prefix_repeat1, + STATE(1419), 1, + sym_import_prefix, + STATE(1661), 2, + sym_relative_import, + sym_dotted_name, + [64768] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2091), 1, + ACTIONS(2568), 1, anon_sym_DOT, - STATE(1032), 1, + STATE(1249), 1, aux_sym_match_value_pattern_repeat1, - ACTIONS(2530), 4, - anon_sym_import, - anon_sym_RPAREN, + ACTIONS(2063), 4, + sym__newline, anon_sym_COMMA, anon_sym_as, - [64058] = 4, + anon_sym_SEMI, + [64784] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2547), 1, + ACTIONS(2571), 1, anon_sym_COMMA, - STATE(1242), 1, - aux_sym_open_sequence_match_pattern_repeat1, - ACTIONS(2545), 4, + STATE(1231), 1, + aux_sym_expression_list_repeat1, + ACTIONS(2502), 4, anon_sym_RPAREN, - anon_sym_if, anon_sym_COLON, anon_sym_RBRACK, - [64074] = 5, + anon_sym_RBRACE, + [64800] = 3, + ACTIONS(2077), 1, + sym_comment, + ACTIONS(2573), 2, + anon_sym_LBRACE2, + anon_sym_BSLASH, + ACTIONS(2575), 4, + sym__string_content, + sym__string_end, + sym__escape_interpolation, + sym_escape_sequence, + [64814] = 3, + ACTIONS(2077), 1, + sym_comment, + ACTIONS(2577), 2, + anon_sym_LBRACE2, + anon_sym_BSLASH, + ACTIONS(2579), 4, + sym__string_content, + sym__string_end, + sym__escape_interpolation, + sym_escape_sequence, + [64828] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2430), 1, + ACTIONS(2399), 1, anon_sym_if, - ACTIONS(2434), 1, + ACTIONS(2403), 1, anon_sym_and, - ACTIONS(2436), 1, + ACTIONS(2405), 1, anon_sym_or, - ACTIONS(2550), 3, + ACTIONS(2581), 3, anon_sym_COMMA, anon_sym_as, anon_sym_COLON, - [64092] = 2, - ACTIONS(3), 1, + [64846] = 3, + ACTIONS(2077), 1, sym_comment, - ACTIONS(2552), 6, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_if, - anon_sym_COLON, - anon_sym_RBRACK, - anon_sym_RBRACE, - [64104] = 3, - ACTIONS(2065), 1, + ACTIONS(2583), 2, + anon_sym_LBRACE2, + anon_sym_BSLASH, + ACTIONS(2585), 4, + sym__string_content, + sym__string_end, + sym__escape_interpolation, + sym_escape_sequence, + [64860] = 3, + ACTIONS(2077), 1, sym_comment, - ACTIONS(2554), 2, + ACTIONS(2587), 2, anon_sym_LBRACE2, anon_sym_BSLASH, - ACTIONS(2556), 4, + ACTIONS(2589), 4, sym__string_content, sym__string_end, sym__escape_interpolation, sym_escape_sequence, - [64118] = 6, + [64874] = 6, ACTIONS(3), 1, sym_comment, - ACTIONS(2161), 1, - anon_sym_and, - ACTIONS(2167), 1, - anon_sym_or, - ACTIONS(2179), 1, + ACTIONS(2178), 1, anon_sym_if, - ACTIONS(2560), 1, - anon_sym_COLON, - ACTIONS(2558), 2, - anon_sym_COMMA, - anon_sym_RBRACK, - [64138] = 6, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2161), 1, + ACTIONS(2180), 1, anon_sym_and, - ACTIONS(2167), 1, + ACTIONS(2182), 1, anon_sym_or, - ACTIONS(2179), 1, - anon_sym_if, - ACTIONS(2564), 1, + ACTIONS(2593), 1, anon_sym_COLON, - ACTIONS(2562), 2, + ACTIONS(2591), 2, anon_sym_COMMA, anon_sym_RBRACK, - [64158] = 4, + [64894] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2568), 1, + ACTIONS(2597), 1, anon_sym_AT, - STATE(1248), 2, + STATE(1257), 2, sym_decorator, aux_sym_decorated_definition_repeat1, - ACTIONS(2566), 3, + ACTIONS(2595), 3, anon_sym_async, anon_sym_def, anon_sym_class, - [64174] = 6, + [64910] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2161), 1, + ACTIONS(2178), 1, + anon_sym_if, + ACTIONS(2180), 1, anon_sym_and, - ACTIONS(2167), 1, + ACTIONS(2182), 1, anon_sym_or, - ACTIONS(2179), 1, + ACTIONS(2600), 2, + anon_sym_COMMA, + anon_sym_RBRACK, + [64927] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2602), 5, + anon_sym_RPAREN, + anon_sym_COMMA, anon_sym_if, - ACTIONS(2573), 1, anon_sym_COLON, - ACTIONS(2571), 2, - anon_sym_COMMA, anon_sym_RBRACK, - [64194] = 5, + [64938] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2259), 1, + ACTIONS(2178), 1, anon_sym_if, - ACTIONS(2261), 1, + ACTIONS(2180), 1, anon_sym_and, - ACTIONS(2263), 1, + ACTIONS(2182), 1, anon_sym_or, - ACTIONS(2390), 3, - sym__newline, - anon_sym_EQ, - anon_sym_SEMI, - [64212] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2575), 1, + ACTIONS(2417), 2, anon_sym_COMMA, - STATE(1221), 1, - aux_sym_expression_list_repeat1, - ACTIONS(2482), 4, anon_sym_RBRACE, - anon_sym_EQ, - anon_sym_COLON2, - sym_type_conversion, - [64228] = 3, - ACTIONS(2065), 1, - sym_comment, - ACTIONS(2577), 2, - anon_sym_LBRACE2, - anon_sym_BSLASH, - ACTIONS(2579), 4, - sym__string_content, - sym__string_end, - sym__escape_interpolation, - sym_escape_sequence, - [64242] = 3, - ACTIONS(2065), 1, - sym_comment, - ACTIONS(2581), 2, - anon_sym_LBRACE2, - anon_sym_BSLASH, - ACTIONS(2583), 4, - sym__string_content, - sym__string_end, - sym__escape_interpolation, - sym_escape_sequence, - [64256] = 7, + [64955] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2161), 1, + ACTIONS(2178), 1, + anon_sym_if, + ACTIONS(2180), 1, anon_sym_and, - ACTIONS(2167), 1, + ACTIONS(2182), 1, anon_sym_or, - ACTIONS(2179), 1, - anon_sym_if, - ACTIONS(2357), 1, + ACTIONS(2604), 2, anon_sym_COMMA, - ACTIONS(2585), 1, - anon_sym_COLON, - STATE(1232), 1, - aux_sym_expression_list_repeat1, - [64278] = 5, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2376), 1, - sym_identifier, - STATE(1306), 1, - sym_dotted_name, - STATE(1486), 1, - sym_aliased_import, - ACTIONS(2587), 2, - sym__newline, - anon_sym_SEMI, - [64295] = 6, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2589), 1, - anon_sym_LPAREN, - ACTIONS(2591), 1, - anon_sym_COLON, - ACTIONS(2593), 1, - anon_sym_LBRACK, - STATE(1453), 1, - sym_type_parameters, - STATE(1601), 1, - sym_argument_list, - [64314] = 4, + anon_sym_RBRACK, + [64972] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2069), 1, - anon_sym_COMMA, - STATE(1259), 1, - aux_sym__collection_elements_repeat1, - ACTIONS(2079), 3, + ACTIONS(2371), 5, anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_COLON, anon_sym_RBRACK, anon_sym_RBRACE, - [64329] = 5, + [64983] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2259), 1, + ACTIONS(2178), 1, anon_sym_if, - ACTIONS(2261), 1, + ACTIONS(2180), 1, anon_sym_and, - ACTIONS(2263), 1, + ACTIONS(2182), 1, anon_sym_or, - ACTIONS(2418), 2, - sym__newline, - anon_sym_SEMI, - [64346] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2597), 1, - anon_sym_COMMA, - STATE(1286), 1, - aux_sym__collection_elements_repeat1, - ACTIONS(2595), 3, + ACTIONS(2606), 2, anon_sym_RPAREN, - anon_sym_RBRACK, - anon_sym_RBRACE, - [64361] = 4, + anon_sym_COMMA, + [65000] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2599), 1, - anon_sym_COMMA, - STATE(1280), 1, - aux_sym_expression_list_repeat1, - ACTIONS(2482), 3, + ACTIONS(2427), 1, + sym_identifier, + STATE(1326), 1, + sym_dotted_name, + STATE(1381), 1, + sym_aliased_import, + ACTIONS(2608), 2, sym__newline, - anon_sym_from, anon_sym_SEMI, - [64376] = 5, + [65017] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2161), 1, + ACTIONS(2303), 1, anon_sym_and, - ACTIONS(2167), 1, + ACTIONS(2305), 1, anon_sym_or, - ACTIONS(2179), 1, + ACTIONS(2329), 1, anon_sym_if, - ACTIONS(2601), 2, - anon_sym_RPAREN, - anon_sym_COMMA, - [64393] = 5, + ACTIONS(2610), 2, + sym__newline, + anon_sym_SEMI, + [65034] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2161), 1, - anon_sym_and, - ACTIONS(2167), 1, - anon_sym_or, - ACTIONS(2179), 1, - anon_sym_if, - ACTIONS(2603), 2, - anon_sym_RPAREN, + ACTIONS(2371), 5, anon_sym_COMMA, - [64410] = 2, + anon_sym_RBRACE, + anon_sym_EQ, + anon_sym_COLON2, + sym_type_conversion, + [65045] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2605), 5, - anon_sym_RPAREN, + ACTIONS(2614), 1, anon_sym_COMMA, - anon_sym_if, - anon_sym_COLON, + STATE(1287), 1, + aux_sym__collection_elements_repeat1, + ACTIONS(2612), 3, + anon_sym_RPAREN, anon_sym_RBRACK, - [64421] = 5, + anon_sym_RBRACE, + [65060] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2161), 1, + ACTIONS(2303), 1, anon_sym_and, - ACTIONS(2167), 1, + ACTIONS(2305), 1, anon_sym_or, - ACTIONS(2179), 1, + ACTIONS(2329), 1, anon_sym_if, - ACTIONS(2607), 2, - anon_sym_COMMA, - anon_sym_RBRACK, - [64438] = 6, + ACTIONS(2616), 2, + sym__newline, + anon_sym_SEMI, + [65077] = 6, ACTIONS(3), 1, sym_comment, - ACTIONS(2609), 1, + ACTIONS(2618), 1, anon_sym_RBRACE, - ACTIONS(2611), 1, + ACTIONS(2620), 1, anon_sym_EQ, - ACTIONS(2613), 1, + ACTIONS(2622), 1, anon_sym_COLON2, - ACTIONS(2615), 1, + ACTIONS(2624), 1, sym_type_conversion, - STATE(1652), 1, + STATE(1694), 1, sym_format_specifier, - [64457] = 5, + [65096] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2161), 1, + ACTIONS(2303), 1, anon_sym_and, - ACTIONS(2167), 1, + ACTIONS(2305), 1, anon_sym_or, - ACTIONS(2179), 1, + ACTIONS(2329), 1, anon_sym_if, - ACTIONS(2617), 2, - anon_sym_COMMA, - anon_sym_RBRACK, - [64474] = 2, + ACTIONS(2626), 2, + sym__newline, + anon_sym_SEMI, + [65113] = 6, ACTIONS(3), 1, sym_comment, - ACTIONS(2281), 5, - anon_sym_RPAREN, + ACTIONS(2427), 1, + sym_identifier, + ACTIONS(2628), 1, + anon_sym_LPAREN, + STATE(1281), 1, + sym_dotted_name, + STATE(1372), 1, + sym_aliased_import, + STATE(1559), 1, + sym__import_list, + [65132] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2630), 1, anon_sym_COMMA, + STATE(1284), 1, + aux_sym_expression_list_repeat1, + ACTIONS(2502), 3, + sym__newline, + anon_sym_from, + anon_sym_SEMI, + [65147] = 6, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2632), 1, + anon_sym_LPAREN, + ACTIONS(2634), 1, anon_sym_COLON, - anon_sym_RBRACK, - anon_sym_RBRACE, - [64485] = 5, + ACTIONS(2636), 1, + anon_sym_LBRACK, + STATE(1463), 1, + sym_type_parameters, + STATE(1611), 1, + sym_argument_list, + [65166] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2161), 1, + ACTIONS(2303), 1, anon_sym_and, - ACTIONS(2167), 1, + ACTIONS(2305), 1, anon_sym_or, - ACTIONS(2179), 1, + ACTIONS(2329), 1, anon_sym_if, - ACTIONS(2619), 2, - anon_sym_COMMA, - anon_sym_RBRACK, - [64502] = 5, + ACTIONS(2433), 2, + sym__newline, + anon_sym_SEMI, + [65183] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2259), 1, + ACTIONS(2178), 1, anon_sym_if, - ACTIONS(2261), 1, + ACTIONS(2180), 1, anon_sym_and, - ACTIONS(2263), 1, + ACTIONS(2182), 1, anon_sym_or, - ACTIONS(2621), 2, - sym__newline, - anon_sym_SEMI, - [64519] = 4, + ACTIONS(2638), 2, + anon_sym_RPAREN, + anon_sym_COMMA, + [65200] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2623), 1, + ACTIONS(2178), 1, + anon_sym_if, + ACTIONS(2180), 1, + anon_sym_and, + ACTIONS(2182), 1, + anon_sym_or, + ACTIONS(2640), 2, anon_sym_COMMA, - STATE(1286), 1, - aux_sym__collection_elements_repeat1, - ACTIONS(2595), 3, - anon_sym_RPAREN, anon_sym_RBRACK, - anon_sym_RBRACE, - [64534] = 5, + [65217] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2376), 1, - sym_identifier, - STATE(1306), 1, - sym_dotted_name, - STATE(1486), 1, - sym_aliased_import, - ACTIONS(2625), 2, + ACTIONS(2303), 1, + anon_sym_and, + ACTIONS(2305), 1, + anon_sym_or, + ACTIONS(2329), 1, + anon_sym_if, + ACTIONS(2642), 2, sym__newline, anon_sym_SEMI, - [64551] = 6, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2376), 1, - sym_identifier, - ACTIONS(2627), 1, - anon_sym_LPAREN, - STATE(1290), 1, - sym_dotted_name, - STATE(1368), 1, - sym_aliased_import, - STATE(1527), 1, - sym__import_list, - [64570] = 2, + [65234] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2281), 5, + ACTIONS(2644), 1, anon_sym_COMMA, + STATE(1284), 1, + aux_sym_expression_list_repeat1, + ACTIONS(2502), 3, + sym__newline, + anon_sym_from, + anon_sym_SEMI, + [65249] = 6, + ACTIONS(2077), 1, + sym_comment, + ACTIONS(2646), 1, anon_sym_RBRACE, - anon_sym_EQ, - anon_sym_COLON2, - sym_type_conversion, - [64581] = 5, + ACTIONS(2648), 1, + anon_sym_LBRACE2, + ACTIONS(2650), 1, + aux_sym_format_specifier_token1, + STATE(1288), 1, + aux_sym_format_specifier_repeat1, + STATE(1446), 1, + sym_interpolation, + [65268] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2161), 1, + ACTIONS(2178), 1, + anon_sym_if, + ACTIONS(2180), 1, anon_sym_and, - ACTIONS(2167), 1, + ACTIONS(2182), 1, anon_sym_or, - ACTIONS(2179), 1, - anon_sym_if, - ACTIONS(2629), 2, + ACTIONS(2652), 2, anon_sym_RPAREN, anon_sym_COMMA, - [64598] = 5, + [65285] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2376), 1, - sym_identifier, - STATE(1306), 1, - sym_dotted_name, - STATE(1486), 1, - sym_aliased_import, - ACTIONS(2625), 2, + ACTIONS(2654), 1, + anon_sym_COMMA, + ACTIONS(2656), 1, + anon_sym_as, + STATE(1322), 1, + aux_sym__import_list_repeat1, + ACTIONS(2658), 2, sym__newline, anon_sym_SEMI, - [64615] = 5, + [65302] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2161), 1, + ACTIONS(2178), 1, + anon_sym_if, + ACTIONS(2180), 1, anon_sym_and, - ACTIONS(2167), 1, + ACTIONS(2182), 1, anon_sym_or, - ACTIONS(2179), 1, - anon_sym_if, - ACTIONS(2631), 2, + ACTIONS(2660), 2, anon_sym_COMMA, anon_sym_RBRACK, - [64632] = 2, + [65319] = 6, ACTIONS(3), 1, sym_comment, - ACTIONS(2545), 5, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_if, + ACTIONS(2632), 1, + anon_sym_LPAREN, + ACTIONS(2636), 1, + anon_sym_LBRACK, + ACTIONS(2662), 1, anon_sym_COLON, - anon_sym_RBRACK, - [64643] = 4, + STATE(1470), 1, + sym_type_parameters, + STATE(1653), 1, + sym_argument_list, + [65338] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2633), 1, + ACTIONS(2664), 1, anon_sym_COMMA, - STATE(1280), 1, + STATE(1284), 1, aux_sym_expression_list_repeat1, - ACTIONS(2482), 3, + ACTIONS(2530), 3, sym__newline, anon_sym_from, anon_sym_SEMI, - [64658] = 5, + [65353] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2259), 1, + ACTIONS(2178), 1, anon_sym_if, - ACTIONS(2261), 1, + ACTIONS(2180), 1, anon_sym_and, - ACTIONS(2263), 1, + ACTIONS(2182), 1, anon_sym_or, - ACTIONS(2635), 2, - sym__newline, - anon_sym_SEMI, - [64675] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2637), 1, + ACTIONS(2667), 2, anon_sym_COMMA, - STATE(1280), 1, - aux_sym_expression_list_repeat1, - ACTIONS(2505), 3, - sym__newline, - anon_sym_from, - anon_sym_SEMI, - [64690] = 6, + anon_sym_RBRACK, + [65370] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2589), 1, - anon_sym_LPAREN, - ACTIONS(2593), 1, - anon_sym_LBRACK, - ACTIONS(2640), 1, - anon_sym_COLON, - STATE(1493), 1, - sym_type_parameters, - STATE(1710), 1, - sym_argument_list, - [64709] = 5, + ACTIONS(2669), 1, + anon_sym_COMMA, + STATE(1287), 1, + aux_sym__collection_elements_repeat1, + ACTIONS(2612), 3, + anon_sym_RPAREN, + anon_sym_RBRACK, + anon_sym_RBRACE, + [65385] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2161), 1, - anon_sym_and, - ACTIONS(2167), 1, - anon_sym_or, - ACTIONS(2179), 1, - anon_sym_if, - ACTIONS(2478), 2, + ACTIONS(2673), 1, anon_sym_COMMA, + STATE(1287), 1, + aux_sym__collection_elements_repeat1, + ACTIONS(2671), 3, + anon_sym_RPAREN, + anon_sym_RBRACK, anon_sym_RBRACE, - [64726] = 6, - ACTIONS(2065), 1, + [65400] = 6, + ACTIONS(2077), 1, sym_comment, - ACTIONS(2642), 1, + ACTIONS(2676), 1, anon_sym_RBRACE, - ACTIONS(2644), 1, + ACTIONS(2678), 1, anon_sym_LBRACE2, - ACTIONS(2646), 1, + ACTIONS(2681), 1, aux_sym_format_specifier_token1, STATE(1288), 1, aux_sym_format_specifier_repeat1, - STATE(1497), 1, - sym_interpolation, - [64745] = 6, - ACTIONS(2065), 1, - sym_comment, - ACTIONS(2648), 1, - anon_sym_RBRACE, - ACTIONS(2650), 1, - anon_sym_LBRACE2, - ACTIONS(2653), 1, - aux_sym_format_specifier_token1, - STATE(1284), 1, - aux_sym_format_specifier_repeat1, - STATE(1497), 1, + STATE(1446), 1, sym_interpolation, - [64764] = 5, + [65419] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2259), 1, - anon_sym_if, - ACTIONS(2261), 1, - anon_sym_and, - ACTIONS(2263), 1, - anon_sym_or, - ACTIONS(2656), 2, + ACTIONS(2427), 1, + sym_identifier, + STATE(1326), 1, + sym_dotted_name, + STATE(1381), 1, + sym_aliased_import, + ACTIONS(2684), 2, sym__newline, anon_sym_SEMI, - [64781] = 4, + [65436] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2660), 1, + ACTIONS(2103), 1, anon_sym_COMMA, STATE(1286), 1, aux_sym__collection_elements_repeat1, - ACTIONS(2658), 3, + ACTIONS(2113), 3, anon_sym_RPAREN, anon_sym_RBRACK, anon_sym_RBRACE, - [64796] = 6, + [65451] = 6, ACTIONS(3), 1, sym_comment, - ACTIONS(2613), 1, + ACTIONS(2622), 1, anon_sym_COLON2, - ACTIONS(2663), 1, + ACTIONS(2686), 1, anon_sym_RBRACE, - ACTIONS(2665), 1, + ACTIONS(2688), 1, anon_sym_EQ, - ACTIONS(2667), 1, + ACTIONS(2690), 1, sym_type_conversion, - STATE(1587), 1, + STATE(1718), 1, sym_format_specifier, - [64815] = 6, - ACTIONS(2065), 1, + [65470] = 6, + ACTIONS(2077), 1, sym_comment, - ACTIONS(2644), 1, + ACTIONS(2648), 1, anon_sym_LBRACE2, - ACTIONS(2669), 1, + ACTIONS(2692), 1, anon_sym_RBRACE, - ACTIONS(2671), 1, + ACTIONS(2694), 1, aux_sym_format_specifier_token1, - STATE(1284), 1, + STATE(1279), 1, aux_sym_format_specifier_repeat1, - STATE(1497), 1, + STATE(1446), 1, sym_interpolation, - [64834] = 2, + [65489] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2495), 5, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_if, + anon_sym_COLON, + anon_sym_RBRACK, + [65500] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2054), 5, + ACTIONS(2063), 5, sym__newline, anon_sym_DOT, anon_sym_COMMA, anon_sym_as, anon_sym_SEMI, - [64845] = 5, + [65511] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2673), 1, - anon_sym_COMMA, - ACTIONS(2675), 1, - anon_sym_as, - STATE(1359), 1, - aux_sym__import_list_repeat1, - ACTIONS(2677), 2, + ACTIONS(2427), 1, + sym_identifier, + STATE(1326), 1, + sym_dotted_name, + STATE(1381), 1, + sym_aliased_import, + ACTIONS(2608), 2, sym__newline, anon_sym_SEMI, - [64862] = 5, + [65528] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2161), 1, - anon_sym_and, - ACTIONS(2167), 1, - anon_sym_or, - ACTIONS(2179), 1, - anon_sym_if, - ACTIONS(2679), 2, - anon_sym_COMMA, - anon_sym_RBRACK, - [64879] = 5, + ACTIONS(2566), 1, + sym_identifier, + ACTIONS(2608), 1, + anon_sym_RPAREN, + STATE(1473), 1, + sym_dotted_name, + STATE(1553), 1, + sym_aliased_import, + [65544] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2259), 1, - anon_sym_if, - ACTIONS(2261), 1, - anon_sym_and, - ACTIONS(2263), 1, - anon_sym_or, - ACTIONS(2681), 2, + ACTIONS(2696), 1, + anon_sym_COMMA, + STATE(1321), 1, + aux_sym_global_statement_repeat1, + ACTIONS(2698), 2, sym__newline, anon_sym_SEMI, - [64896] = 4, + [65558] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2685), 1, + ACTIONS(2696), 1, anon_sym_COMMA, - STATE(993), 1, - aux_sym__patterns_repeat1, - ACTIONS(2683), 2, - anon_sym_RPAREN, - anon_sym_RBRACK, - [64910] = 4, + STATE(1321), 1, + aux_sym_global_statement_repeat1, + ACTIONS(2700), 2, + sym__newline, + anon_sym_SEMI, + [65572] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2687), 1, - anon_sym_COMMA, - STATE(1242), 1, - aux_sym_open_sequence_match_pattern_repeat1, - ACTIONS(1859), 2, - anon_sym_if, - anon_sym_COLON, - [64924] = 5, + ACTIONS(2702), 1, + anon_sym_SEMI, + ACTIONS(2704), 1, + sym__newline, + STATE(129), 1, + sym__semicolon, + STATE(1300), 1, + aux_sym__simple_statements_repeat1, + [65588] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2161), 1, - anon_sym_and, - ACTIONS(2167), 1, - anon_sym_or, - ACTIONS(2179), 1, - anon_sym_if, - ACTIONS(2689), 1, - anon_sym_COLON, - [64940] = 5, + ACTIONS(565), 1, + sym__newline, + ACTIONS(2706), 1, + anon_sym_SEMI, + STATE(131), 1, + sym__semicolon, + STATE(1316), 1, + aux_sym__simple_statements_repeat1, + [65604] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2161), 1, - anon_sym_and, - ACTIONS(2167), 1, - anon_sym_or, - ACTIONS(2179), 1, - anon_sym_if, - ACTIONS(2691), 1, + ACTIONS(2708), 1, + anon_sym_SEMI, + ACTIONS(2710), 1, + sym__newline, + STATE(127), 1, + sym__semicolon, + STATE(1305), 1, + aux_sym__simple_statements_repeat1, + [65620] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2714), 1, + anon_sym_COMMA, + STATE(1302), 1, + aux_sym_with_clause_repeat1, + ACTIONS(2712), 2, + anon_sym_RPAREN, anon_sym_COLON, - [64956] = 5, + [65634] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2161), 1, - anon_sym_and, - ACTIONS(2167), 1, - anon_sym_or, - ACTIONS(2179), 1, - anon_sym_if, - ACTIONS(2693), 1, - anon_sym_else, - [64972] = 4, + ACTIONS(2717), 1, + anon_sym_case, + STATE(612), 1, + sym_cases, + STATE(451), 2, + sym_case_block, + aux_sym_cases_repeat1, + [65648] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2695), 1, + ACTIONS(2717), 1, anon_sym_case, - STATE(610), 1, + STATE(512), 1, sym_cases, - STATE(453), 2, + STATE(451), 2, sym_case_block, aux_sym_cases_repeat1, - [64986] = 4, + [65662] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2697), 1, - anon_sym_COMMA, - STATE(1355), 1, - aux_sym_global_statement_repeat1, - ACTIONS(2699), 2, + ACTIONS(561), 1, sym__newline, + ACTIONS(2719), 1, anon_sym_SEMI, - [65000] = 2, + STATE(132), 1, + sym__semicolon, + STATE(1316), 1, + aux_sym__simple_statements_repeat1, + [65678] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2701), 4, - anon_sym_async, - anon_sym_def, - anon_sym_class, - anon_sym_AT, - [65010] = 5, + ACTIONS(2178), 1, + anon_sym_if, + ACTIONS(2180), 1, + anon_sym_and, + ACTIONS(2182), 1, + anon_sym_or, + ACTIONS(2721), 1, + anon_sym_else, + [65694] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2593), 1, + ACTIONS(2636), 1, anon_sym_LBRACK, - ACTIONS(2703), 1, + ACTIONS(2723), 1, anon_sym_LPAREN, - STATE(1554), 1, - sym_parameters, - STATE(1557), 1, + STATE(1538), 1, sym_type_parameters, - [65026] = 5, + STATE(1539), 1, + sym_parameters, + [65710] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2613), 1, + ACTIONS(2622), 1, anon_sym_COLON2, - ACTIONS(2705), 1, + ACTIONS(2725), 1, anon_sym_RBRACE, - ACTIONS(2707), 1, + ACTIONS(2727), 1, sym_type_conversion, - STATE(1692), 1, + STATE(1733), 1, sym_format_specifier, - [65042] = 5, - ACTIONS(3), 1, - sym_comment, - ACTIONS(562), 1, - sym__newline, - ACTIONS(2709), 1, - anon_sym_SEMI, - STATE(129), 1, - sym__semicolon, - STATE(1357), 1, - aux_sym__simple_statements_repeat1, - [65058] = 4, + [65726] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2711), 1, - anon_sym_case, - STATE(555), 1, - sym_cases, - STATE(452), 2, - sym_case_block, - aux_sym_cases_repeat1, - [65072] = 4, + ACTIONS(2178), 1, + anon_sym_if, + ACTIONS(2180), 1, + anon_sym_and, + ACTIONS(2182), 1, + anon_sym_or, + ACTIONS(2729), 1, + anon_sym_COLON, + [65742] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2711), 1, - anon_sym_case, - STATE(556), 1, - sym_cases, - STATE(452), 2, - sym_case_block, - aux_sym_cases_repeat1, - [65086] = 3, + ACTIONS(2696), 1, + anon_sym_COMMA, + STATE(1297), 1, + aux_sym_global_statement_repeat1, + ACTIONS(2731), 2, + sym__newline, + anon_sym_SEMI, + [65756] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2675), 1, - anon_sym_as, - ACTIONS(2713), 3, - sym__newline, + ACTIONS(2735), 1, anon_sym_COMMA, - anon_sym_SEMI, - [65098] = 5, + STATE(1330), 1, + aux_sym__patterns_repeat1, + ACTIONS(2733), 2, + anon_sym_RPAREN, + anon_sym_RBRACK, + [65770] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2161), 1, + ACTIONS(2178), 1, + anon_sym_if, + ACTIONS(2180), 1, anon_sym_and, - ACTIONS(2167), 1, + ACTIONS(2182), 1, anon_sym_or, - ACTIONS(2179), 1, - anon_sym_if, - ACTIONS(2715), 1, - anon_sym_else, - [65114] = 2, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2390), 4, - anon_sym_RPAREN, - anon_sym_COMMA, + ACTIONS(2737), 1, anon_sym_COLON, - anon_sym_EQ, - [65124] = 4, + [65786] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2717), 1, - anon_sym_COMMA, - STATE(1309), 1, - aux_sym__import_list_repeat1, - ACTIONS(2720), 2, - sym__newline, - anon_sym_SEMI, - [65138] = 5, + ACTIONS(2178), 1, + anon_sym_if, + ACTIONS(2180), 1, + anon_sym_and, + ACTIONS(2182), 1, + anon_sym_or, + ACTIONS(2739), 1, + anon_sym_COLON, + [65802] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2613), 1, - anon_sym_COLON2, - ACTIONS(2722), 1, - anon_sym_RBRACE, - ACTIONS(2724), 1, - sym_type_conversion, - STATE(1641), 1, - sym_format_specifier, - [65154] = 5, + ACTIONS(315), 1, + sym__string_start, + ACTIONS(2081), 1, + anon_sym_COLON, + STATE(675), 2, + sym_string, + aux_sym_concatenated_string_repeat1, + [65816] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2726), 1, - sym_identifier, - STATE(1330), 1, - sym_dotted_name, - STATE(1395), 1, - sym_aliased_import, - STATE(1701), 1, - sym__import_list, - [65170] = 5, + ACTIONS(317), 1, + sym__template_string_start, + ACTIONS(2081), 1, + anon_sym_COLON, + STATE(676), 2, + sym_template_string, + aux_sym_concatenated_template_string_repeat1, + [65830] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2726), 1, - sym_identifier, - STATE(1330), 1, - sym_dotted_name, - STATE(1395), 1, - sym_aliased_import, - STATE(1702), 1, - sym__import_list, - [65186] = 2, + ACTIONS(2741), 1, + anon_sym_SEMI, + ACTIONS(2744), 1, + sym__newline, + STATE(133), 1, + sym__semicolon, + STATE(1316), 1, + aux_sym__simple_statements_repeat1, + [65846] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2728), 4, - anon_sym_RPAREN, + ACTIONS(2371), 4, + sym__newline, + anon_sym_from, anon_sym_COMMA, - anon_sym_RBRACK, - anon_sym_RBRACE, - [65196] = 2, + anon_sym_SEMI, + [65856] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2730), 4, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_RBRACK, + ACTIONS(2622), 1, + anon_sym_COLON2, + ACTIONS(2746), 1, anon_sym_RBRACE, - [65206] = 2, + ACTIONS(2748), 1, + sym_type_conversion, + STATE(1624), 1, + sym_format_specifier, + [65872] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2392), 4, + ACTIONS(2658), 1, anon_sym_RPAREN, + ACTIONS(2750), 1, anon_sym_COMMA, - anon_sym_RBRACK, - anon_sym_RBRACE, - [65216] = 4, + ACTIONS(2752), 1, + anon_sym_as, + STATE(1409), 1, + aux_sym__import_list_repeat1, + [65888] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2732), 1, + ACTIONS(2754), 1, anon_sym_COMMA, - STATE(1340), 1, - aux_sym_print_statement_repeat1, - ACTIONS(2734), 2, + STATE(1328), 1, + aux_sym__import_list_repeat1, + ACTIONS(2756), 2, sym__newline, anon_sym_SEMI, - [65230] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(310), 1, - sym__string_start, - ACTIONS(2097), 1, - anon_sym_COLON, - STATE(616), 2, - sym_string, - aux_sym_concatenated_string_repeat1, - [65244] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(312), 1, - sym__template_string_start, - ACTIONS(2097), 1, - anon_sym_COLON, - STATE(617), 2, - sym_template_string, - aux_sym_concatenated_template_string_repeat1, - [65258] = 4, + [65902] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2736), 1, + ACTIONS(2758), 1, anon_sym_COMMA, - STATE(1319), 1, - aux_sym_print_statement_repeat1, - ACTIONS(2739), 2, + STATE(1321), 1, + aux_sym_global_statement_repeat1, + ACTIONS(2761), 2, sym__newline, anon_sym_SEMI, - [65272] = 4, + [65916] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2741), 1, + ACTIONS(2763), 1, anon_sym_COMMA, - STATE(1320), 1, - aux_sym_assert_statement_repeat1, - ACTIONS(2518), 2, + STATE(1328), 1, + aux_sym__import_list_repeat1, + ACTIONS(2756), 2, sym__newline, anon_sym_SEMI, - [65286] = 5, + [65930] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2376), 1, + ACTIONS(2767), 1, + anon_sym_DOT, + STATE(1323), 1, + aux_sym_import_prefix_repeat1, + ACTIONS(2765), 2, + anon_sym_import, sym_identifier, - STATE(1290), 1, - sym_dotted_name, - STATE(1368), 1, - sym_aliased_import, - STATE(1507), 1, - sym__import_list, - [65302] = 5, + [65944] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2161), 1, - anon_sym_and, - ACTIONS(2167), 1, - anon_sym_or, - ACTIONS(2179), 1, - anon_sym_if, - ACTIONS(2744), 1, + ACTIONS(2772), 1, anon_sym_COLON, - [65318] = 5, + ACTIONS(2774), 1, + anon_sym_EQ, + ACTIONS(2770), 2, + anon_sym_RPAREN, + anon_sym_COMMA, + [65958] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(2593), 1, - anon_sym_LBRACK, - ACTIONS(2703), 1, - anon_sym_LPAREN, - STATE(1511), 1, - sym_parameters, - STATE(1512), 1, - sym_type_parameters, - [65334] = 5, + ACTIONS(2778), 1, + anon_sym_EQ, + ACTIONS(2776), 3, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_COLON, + [65970] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(2259), 1, - anon_sym_if, - ACTIONS(2261), 1, - anon_sym_and, - ACTIONS(2263), 1, - anon_sym_or, - ACTIONS(2746), 1, + ACTIONS(2656), 1, + anon_sym_as, + ACTIONS(2780), 3, sym__newline, - [65350] = 4, + anon_sym_COMMA, + anon_sym_SEMI, + [65982] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2750), 1, - anon_sym_COMMA, - STATE(1325), 1, - aux_sym_with_clause_repeat1, - ACTIONS(2748), 2, - anon_sym_RPAREN, + ACTIONS(2178), 1, + anon_sym_if, + ACTIONS(2180), 1, + anon_sym_and, + ACTIONS(2182), 1, + anon_sym_or, + ACTIONS(2782), 1, anon_sym_COLON, - [65364] = 4, + [65998] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2697), 1, + ACTIONS(2784), 1, anon_sym_COMMA, - STATE(1354), 1, - aux_sym_global_statement_repeat1, - ACTIONS(2753), 2, + STATE(1328), 1, + aux_sym__import_list_repeat1, + ACTIONS(2787), 2, sym__newline, anon_sym_SEMI, - [65378] = 4, + [66012] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2500), 1, - anon_sym_EQ, - STATE(1522), 1, - sym__type_param_default, - ACTIONS(2755), 2, + ACTIONS(2789), 1, anon_sym_COMMA, - anon_sym_RBRACK, - [65392] = 5, + STATE(1329), 1, + aux_sym_exception_list_repeat1, + ACTIONS(2792), 2, + anon_sym_as, + anon_sym_COLON, + [66026] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2625), 1, + ACTIONS(2796), 1, + anon_sym_COMMA, + STATE(994), 1, + aux_sym__patterns_repeat1, + ACTIONS(2794), 2, anon_sym_RPAREN, - ACTIONS(2726), 1, - sym_identifier, - STATE(1382), 1, - sym_dotted_name, - STATE(1540), 1, - sym_aliased_import, - [65408] = 5, + anon_sym_RBRACK, + [66040] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2625), 1, - anon_sym_RPAREN, - ACTIONS(2726), 1, + ACTIONS(2566), 1, sym_identifier, - STATE(1382), 1, + STATE(1319), 1, sym_dotted_name, - STATE(1540), 1, + STATE(1487), 1, sym_aliased_import, - [65424] = 5, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2677), 1, - anon_sym_RPAREN, - ACTIONS(2757), 1, - anon_sym_COMMA, - ACTIONS(2759), 1, - anon_sym_as, - STATE(1488), 1, - aux_sym__import_list_repeat1, - [65440] = 5, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2161), 1, - anon_sym_and, - ACTIONS(2167), 1, - anon_sym_or, - ACTIONS(2179), 1, - anon_sym_if, - ACTIONS(2761), 1, - anon_sym_COLON, - [65456] = 5, + STATE(1713), 1, + sym__import_list, + [66056] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2763), 1, + ACTIONS(2798), 1, anon_sym_SEMI, - ACTIONS(2765), 1, + ACTIONS(2800), 1, sym__newline, - STATE(132), 1, + STATE(128), 1, sym__semicolon, - STATE(1333), 1, + STATE(1335), 1, aux_sym__simple_statements_repeat1, - [65472] = 5, + [66072] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2566), 1, + sym_identifier, + STATE(1319), 1, + sym_dotted_name, + STATE(1487), 1, + sym_aliased_import, + STATE(1717), 1, + sym__import_list, + [66088] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(566), 1, + ACTIONS(2566), 1, + sym_identifier, + ACTIONS(2684), 1, + anon_sym_RPAREN, + STATE(1473), 1, + sym_dotted_name, + STATE(1553), 1, + sym_aliased_import, + [66104] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(563), 1, sym__newline, - ACTIONS(2767), 1, + ACTIONS(2802), 1, anon_sym_SEMI, - STATE(131), 1, + STATE(130), 1, sym__semicolon, - STATE(1357), 1, + STATE(1316), 1, aux_sym__simple_statements_repeat1, - [65488] = 5, + [66120] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2161), 1, + ACTIONS(2178), 1, + anon_sym_if, + ACTIONS(2180), 1, anon_sym_and, - ACTIONS(2167), 1, + ACTIONS(2182), 1, anon_sym_or, - ACTIONS(2179), 1, + ACTIONS(2804), 1, + anon_sym_else, + [66136] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2178), 1, anon_sym_if, - ACTIONS(2769), 1, + ACTIONS(2180), 1, + anon_sym_and, + ACTIONS(2182), 1, + anon_sym_or, + ACTIONS(2806), 1, anon_sym_COLON, - [65504] = 5, + [66152] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2161), 1, + ACTIONS(2808), 1, + anon_sym_COMMA, + STATE(1363), 1, + aux_sym_print_statement_repeat1, + ACTIONS(2810), 2, + sym__newline, + anon_sym_SEMI, + [66166] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2178), 1, + anon_sym_if, + ACTIONS(2180), 1, anon_sym_and, - ACTIONS(2167), 1, + ACTIONS(2182), 1, anon_sym_or, - ACTIONS(2179), 1, - anon_sym_if, - ACTIONS(2771), 1, - anon_sym_else, - [65520] = 4, + ACTIONS(2812), 1, + anon_sym_COLON, + [66182] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2775), 1, - anon_sym_DOT, - STATE(1362), 1, - aux_sym_import_prefix_repeat1, - ACTIONS(2773), 2, - anon_sym_import, - sym_identifier, - [65534] = 4, + ACTIONS(2814), 1, + anon_sym_COMMA, + STATE(1218), 1, + aux_sym_open_sequence_match_pattern_repeat1, + ACTIONS(1888), 2, + anon_sym_if, + anon_sym_COLON, + [66196] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2777), 1, + ACTIONS(2816), 4, + anon_sym_RPAREN, anon_sym_COMMA, - STATE(1337), 1, - aux_sym_global_statement_repeat1, - ACTIONS(2780), 2, - sym__newline, - anon_sym_SEMI, - [65548] = 4, + anon_sym_RBRACK, + anon_sym_RBRACE, + [66206] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2426), 1, + ACTIONS(2395), 1, anon_sym_COMMA, - STATE(1364), 1, + STATE(1329), 1, aux_sym_exception_list_repeat1, - ACTIONS(2782), 2, + ACTIONS(2818), 2, anon_sym_as, anon_sym_COLON, - [65562] = 5, + [66220] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2161), 1, + ACTIONS(2178), 1, + anon_sym_if, + ACTIONS(2180), 1, anon_sym_and, - ACTIONS(2167), 1, + ACTIONS(2182), 1, anon_sym_or, - ACTIONS(2179), 1, - anon_sym_if, - ACTIONS(2784), 1, + ACTIONS(2820), 1, anon_sym_else, - [65578] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2786), 1, - anon_sym_COMMA, - STATE(1319), 1, - aux_sym_print_statement_repeat1, - ACTIONS(2788), 2, - sym__newline, - anon_sym_SEMI, - [65592] = 3, + [66236] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2792), 1, - anon_sym_EQ, - ACTIONS(2790), 3, + ACTIONS(2453), 4, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_COLON, - [65604] = 4, + anon_sym_EQ, + [66246] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2796), 1, - anon_sym_COLON, - ACTIONS(2798), 1, - anon_sym_EQ, - ACTIONS(2794), 2, - anon_sym_RPAREN, - anon_sym_COMMA, - [65618] = 5, + ACTIONS(2178), 1, + anon_sym_if, + ACTIONS(2180), 1, + anon_sym_and, + ACTIONS(2182), 1, + anon_sym_or, + ACTIONS(2822), 1, + anon_sym_else, + [66262] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(556), 1, - sym__newline, - ACTIONS(2800), 1, - anon_sym_SEMI, - STATE(128), 1, - sym__semicolon, - STATE(1357), 1, - aux_sym__simple_statements_repeat1, - [65634] = 4, + ACTIONS(2824), 4, + anon_sym_async, + anon_sym_def, + anon_sym_class, + anon_sym_AT, + [66272] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2566), 1, + sym_identifier, + STATE(1319), 1, + sym_dotted_name, + STATE(1487), 1, + sym_aliased_import, + STATE(1640), 1, + sym__import_list, + [66288] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2398), 1, + ACTIONS(2447), 4, + anon_sym_RPAREN, anon_sym_COMMA, - STATE(1320), 1, - aux_sym_assert_statement_repeat1, - ACTIONS(2802), 2, - sym__newline, - anon_sym_SEMI, - [65648] = 5, + anon_sym_RBRACK, + anon_sym_RBRACE, + [66298] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2161), 1, + ACTIONS(2178), 1, + anon_sym_if, + ACTIONS(2180), 1, anon_sym_and, - ACTIONS(2167), 1, + ACTIONS(2182), 1, anon_sym_or, - ACTIONS(2179), 1, - anon_sym_if, - ACTIONS(2804), 1, + ACTIONS(2826), 1, anon_sym_else, - [65664] = 5, + [66314] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2161), 1, + ACTIONS(2828), 1, + anon_sym_COMMA, + STATE(1363), 1, + aux_sym_print_statement_repeat1, + ACTIONS(2830), 2, + sym__newline, + anon_sym_SEMI, + [66328] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2178), 1, + anon_sym_if, + ACTIONS(2180), 1, anon_sym_and, - ACTIONS(2167), 1, + ACTIONS(2182), 1, anon_sym_or, - ACTIONS(2179), 1, - anon_sym_if, - ACTIONS(2806), 1, + ACTIONS(2832), 1, anon_sym_COLON, - [65680] = 5, + [66344] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2161), 1, + ACTIONS(2178), 1, + anon_sym_if, + ACTIONS(2180), 1, anon_sym_and, - ACTIONS(2167), 1, + ACTIONS(2182), 1, anon_sym_or, - ACTIONS(2179), 1, - anon_sym_if, - ACTIONS(2808), 1, + ACTIONS(2834), 1, anon_sym_COLON, - [65696] = 5, + [66360] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2810), 1, - anon_sym_SEMI, - ACTIONS(2812), 1, + ACTIONS(2696), 1, + anon_sym_COMMA, + STATE(1298), 1, + aux_sym_global_statement_repeat1, + ACTIONS(2836), 2, sym__newline, - STATE(127), 1, - sym__semicolon, - STATE(1343), 1, - aux_sym__simple_statements_repeat1, - [65712] = 5, + anon_sym_SEMI, + [66374] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2161), 1, - anon_sym_and, - ACTIONS(2167), 1, - anon_sym_or, - ACTIONS(2179), 1, - anon_sym_if, - ACTIONS(2814), 1, - anon_sym_COLON, - [65728] = 5, + ACTIONS(2423), 1, + anon_sym_COMMA, + STATE(1365), 1, + aux_sym_assert_statement_repeat1, + ACTIONS(2838), 2, + sym__newline, + anon_sym_SEMI, + [66388] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2161), 1, + ACTIONS(2178), 1, + anon_sym_if, + ACTIONS(2180), 1, anon_sym_and, - ACTIONS(2167), 1, + ACTIONS(2182), 1, anon_sym_or, - ACTIONS(2179), 1, - anon_sym_if, - ACTIONS(2816), 1, + ACTIONS(2840), 1, anon_sym_COLON, - [65744] = 5, + [66404] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2161), 1, + ACTIONS(2178), 1, + anon_sym_if, + ACTIONS(2180), 1, anon_sym_and, - ACTIONS(2167), 1, + ACTIONS(2182), 1, anon_sym_or, - ACTIONS(2179), 1, - anon_sym_if, - ACTIONS(2818), 1, + ACTIONS(2842), 1, anon_sym_COLON, - [65760] = 5, + [66420] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2161), 1, + ACTIONS(2178), 1, + anon_sym_if, + ACTIONS(2180), 1, anon_sym_and, - ACTIONS(2167), 1, + ACTIONS(2182), 1, anon_sym_or, - ACTIONS(2179), 1, - anon_sym_if, - ACTIONS(2820), 1, + ACTIONS(2844), 1, anon_sym_COLON, - [65776] = 4, + [66436] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2822), 1, - anon_sym_COMMA, - STATE(1309), 1, - aux_sym__import_list_repeat1, - ACTIONS(2824), 2, - sym__newline, - anon_sym_SEMI, - [65790] = 4, + ACTIONS(2566), 1, + sym_identifier, + ACTIONS(2608), 1, + anon_sym_RPAREN, + STATE(1473), 1, + sym_dotted_name, + STATE(1553), 1, + sym_aliased_import, + [66452] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2697), 1, - anon_sym_COMMA, - STATE(1337), 1, - aux_sym_global_statement_repeat1, - ACTIONS(2826), 2, - sym__newline, - anon_sym_SEMI, - [65804] = 4, + ACTIONS(2636), 1, + anon_sym_LBRACK, + ACTIONS(2723), 1, + anon_sym_LPAREN, + STATE(1512), 1, + sym_type_parameters, + STATE(1587), 1, + sym_parameters, + [66468] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2697), 1, + ACTIONS(2423), 1, anon_sym_COMMA, - STATE(1337), 1, - aux_sym_global_statement_repeat1, - ACTIONS(2828), 2, + STATE(1365), 1, + aux_sym_assert_statement_repeat1, + ACTIONS(2846), 2, sym__newline, anon_sym_SEMI, - [65818] = 4, + [66482] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2832), 1, - anon_sym_COMMA, - STATE(1293), 1, - aux_sym__patterns_repeat1, - ACTIONS(2830), 2, - anon_sym_RPAREN, - anon_sym_RBRACK, - [65832] = 5, + ACTIONS(2427), 1, + sym_identifier, + STATE(1281), 1, + sym_dotted_name, + STATE(1372), 1, + sym_aliased_import, + STATE(1577), 1, + sym__import_list, + [66498] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2834), 1, - anon_sym_SEMI, - ACTIONS(2837), 1, - sym__newline, - STATE(133), 1, - sym__semicolon, - STATE(1357), 1, - aux_sym__simple_statements_repeat1, - [65848] = 2, + ACTIONS(2427), 1, + sym_identifier, + STATE(1281), 1, + sym_dotted_name, + STATE(1372), 1, + sym_aliased_import, + STATE(1513), 1, + sym__import_list, + [66514] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2281), 4, - sym__newline, - anon_sym_from, + ACTIONS(2848), 1, anon_sym_COMMA, + STATE(1363), 1, + aux_sym_print_statement_repeat1, + ACTIONS(2851), 2, + sym__newline, anon_sym_SEMI, - [65858] = 4, + [66528] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2839), 1, - anon_sym_COMMA, - STATE(1309), 1, - aux_sym__import_list_repeat1, - ACTIONS(2824), 2, - sym__newline, - anon_sym_SEMI, - [65872] = 4, + ACTIONS(2178), 1, + anon_sym_if, + ACTIONS(2180), 1, + anon_sym_and, + ACTIONS(2182), 1, + anon_sym_or, + ACTIONS(2853), 1, + anon_sym_COLON, + [66544] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2841), 1, + ACTIONS(2855), 1, anon_sym_COMMA, - STATE(1319), 1, - aux_sym_print_statement_repeat1, - ACTIONS(2843), 2, + STATE(1365), 1, + aux_sym_assert_statement_repeat1, + ACTIONS(2556), 2, sym__newline, anon_sym_SEMI, - [65886] = 5, + [66558] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2161), 1, + ACTIONS(2303), 1, anon_sym_and, - ACTIONS(2167), 1, + ACTIONS(2305), 1, anon_sym_or, - ACTIONS(2179), 1, + ACTIONS(2329), 1, anon_sym_if, - ACTIONS(2845), 1, - anon_sym_COLON, - [65902] = 4, + ACTIONS(2858), 1, + sym__newline, + [66574] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2849), 1, - anon_sym_DOT, - STATE(1362), 1, - aux_sym_import_prefix_repeat1, - ACTIONS(2847), 2, - anon_sym_import, - sym_identifier, - [65916] = 4, + ACTIONS(2860), 1, + anon_sym_case, + STATE(574), 1, + sym_cases, + STATE(437), 2, + sym_case_block, + aux_sym_cases_repeat1, + [66588] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2695), 1, + ACTIONS(2860), 1, anon_sym_case, - STATE(609), 1, + STATE(578), 1, sym_cases, - STATE(453), 2, + STATE(437), 2, sym_case_block, aux_sym_cases_repeat1, - [65930] = 4, + [66602] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2852), 1, - anon_sym_COMMA, - STATE(1364), 1, - aux_sym_exception_list_repeat1, - ACTIONS(2855), 2, - anon_sym_as, - anon_sym_COLON, - [65944] = 4, + ACTIONS(2178), 1, + anon_sym_if, + ACTIONS(2180), 1, + anon_sym_and, + ACTIONS(2182), 1, + anon_sym_or, + ACTIONS(2862), 1, + anon_sym_else, + [66618] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2398), 1, + ACTIONS(2864), 1, anon_sym_COMMA, - STATE(1320), 1, - aux_sym_assert_statement_repeat1, - ACTIONS(2857), 2, + STATE(1338), 1, + aux_sym_print_statement_repeat1, + ACTIONS(2866), 2, sym__newline, anon_sym_SEMI, - [65958] = 5, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2161), 1, - anon_sym_and, - ACTIONS(2167), 1, - anon_sym_or, - ACTIONS(2179), 1, - anon_sym_if, - ACTIONS(2859), 1, - anon_sym_else, - [65974] = 5, + [66632] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2587), 1, - anon_sym_RPAREN, - ACTIONS(2726), 1, - sym_identifier, - STATE(1382), 1, - sym_dotted_name, - STATE(1540), 1, - sym_aliased_import, - [65990] = 4, + ACTIONS(2522), 1, + anon_sym_EQ, + STATE(1589), 1, + sym__type_param_default, + ACTIONS(2868), 2, + anon_sym_COMMA, + anon_sym_RBRACK, + [66646] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2673), 1, + ACTIONS(2654), 1, anon_sym_COMMA, - STATE(1353), 1, + STATE(1320), 1, aux_sym__import_list_repeat1, - ACTIONS(2677), 2, + ACTIONS(2658), 2, sym__newline, anon_sym_SEMI, - [66004] = 5, + [66660] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2593), 1, + ACTIONS(2522), 1, + anon_sym_EQ, + STATE(1527), 1, + sym__type_param_default, + ACTIONS(2870), 2, + anon_sym_COMMA, + anon_sym_RBRACK, + [66674] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2874), 1, + anon_sym_DOT, + STATE(1323), 1, + aux_sym_import_prefix_repeat1, + ACTIONS(2872), 2, + anon_sym_import, + sym_identifier, + [66688] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2636), 1, anon_sym_LBRACK, - ACTIONS(2703), 1, + ACTIONS(2723), 1, anon_sym_LPAREN, - STATE(1541), 1, + STATE(1543), 1, sym_parameters, - STATE(1576), 1, + STATE(1582), 1, sym_type_parameters, - [66020] = 5, + [66704] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2593), 1, + ACTIONS(2636), 1, anon_sym_LBRACK, - ACTIONS(2703), 1, + ACTIONS(2723), 1, anon_sym_LPAREN, - STATE(1543), 1, + STATE(1545), 1, sym_parameters, - STATE(1578), 1, + STATE(1583), 1, sym_type_parameters, - [66036] = 4, + [66720] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2500), 1, + ACTIONS(2522), 1, anon_sym_EQ, - STATE(1555), 1, + STATE(1591), 1, sym__type_param_default, - ACTIONS(2861), 2, + ACTIONS(2876), 2, anon_sym_COMMA, anon_sym_RBRACK, - [66050] = 4, + [66734] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2500), 1, - anon_sym_EQ, - STATE(1516), 1, - sym__type_param_default, - ACTIONS(2863), 2, + ACTIONS(2878), 4, + anon_sym_RPAREN, anon_sym_COMMA, anon_sym_RBRACK, - [66064] = 5, + anon_sym_RBRACE, + [66744] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2865), 1, - anon_sym_SEMI, - ACTIONS(2867), 1, - sym__newline, - STATE(130), 1, - sym__semicolon, - STATE(1303), 1, - aux_sym__simple_statements_repeat1, - [66080] = 4, + ACTIONS(2880), 1, + anon_sym_COMMA, + ACTIONS(2882), 1, + anon_sym_RBRACE, + STATE(1482), 1, + aux_sym_dictionary_repeat1, + [66757] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2869), 1, - sym_identifier, - ACTIONS(2871), 1, - sym_match_wildcard_pattern, - STATE(1263), 1, - sym_match_capture_pattern, - [66093] = 4, + ACTIONS(2884), 3, + anon_sym_LPAREN, + anon_sym_COLON, + anon_sym_EQ, + [66766] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2780), 3, + sym__newline, + anon_sym_COMMA, + anon_sym_SEMI, + [66775] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2873), 1, + ACTIONS(2886), 1, anon_sym_COMMA, - ACTIONS(2876), 1, + ACTIONS(2889), 1, anon_sym_RBRACK, - STATE(1375), 1, + STATE(1382), 1, aux_sym_type_parameters_repeat1, - [66106] = 4, + [66788] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2048), 1, + ACTIONS(2891), 3, anon_sym_RPAREN, - ACTIONS(2878), 1, anon_sym_COMMA, - STATE(1443), 1, - aux_sym__parameters_repeat1, - [66119] = 4, + anon_sym_COLON, + [66797] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2880), 1, + ACTIONS(2168), 1, + anon_sym_RPAREN, + ACTIONS(2170), 1, anon_sym_COMMA, - ACTIONS(2882), 1, - anon_sym_RBRACK, - STATE(1492), 1, - aux_sym_index_expression_list_repeat1, - [66132] = 4, + STATE(1397), 1, + aux_sym_argument_list_repeat1, + [66810] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2884), 1, + ACTIONS(2103), 1, anon_sym_COMMA, - ACTIONS(2887), 1, - anon_sym_RBRACK, - STATE(1378), 1, - aux_sym_index_expression_list_repeat1, - [66145] = 2, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2889), 3, - anon_sym_LPAREN, - anon_sym_COLON, - anon_sym_EQ, - [66154] = 3, - ACTIONS(2065), 1, - sym_comment, - ACTIONS(2510), 1, - anon_sym_RBRACE, - ACTIONS(2512), 2, - anon_sym_LBRACE2, - aux_sym_format_specifier_token1, - [66165] = 4, + ACTIONS(2893), 1, + anon_sym_RPAREN, + STATE(1286), 1, + aux_sym__collection_elements_repeat1, + [66823] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(2891), 1, - anon_sym_RPAREN, - ACTIONS(2893), 1, + anon_sym_COLON, + ACTIONS(2895), 1, anon_sym_COMMA, - STATE(1413), 1, - aux_sym_match_class_pattern_repeat2, - [66178] = 3, + STATE(1386), 1, + aux_sym__parameters_repeat1, + [66836] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2759), 1, - anon_sym_as, - ACTIONS(2713), 2, + ACTIONS(2216), 1, anon_sym_RPAREN, + ACTIONS(2218), 1, anon_sym_COMMA, - [66189] = 4, + STATE(1434), 1, + aux_sym_argument_list_repeat1, + [66849] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2069), 1, - anon_sym_COMMA, - ACTIONS(2169), 1, - anon_sym_RPAREN, - STATE(1454), 1, - aux_sym__collection_elements_repeat1, - [66202] = 4, + ACTIONS(1526), 3, + sym__newline, + anon_sym_in, + anon_sym_SEMI, + [66858] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2720), 1, + ACTIONS(2776), 3, anon_sym_RPAREN, - ACTIONS(2895), 1, anon_sym_COMMA, - STATE(1384), 1, - aux_sym__import_list_repeat1, - [66215] = 4, + anon_sym_COLON, + [66867] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2898), 1, + ACTIONS(2103), 1, anon_sym_COMMA, - ACTIONS(2900), 1, - anon_sym_COLON, - STATE(1471), 1, - aux_sym__parameters_repeat1, - [66228] = 4, + ACTIONS(2898), 1, + anon_sym_RPAREN, + STATE(1431), 1, + aux_sym__collection_elements_repeat1, + [66880] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2902), 1, + ACTIONS(2900), 3, + sym__newline, anon_sym_COMMA, - ACTIONS(2904), 1, - anon_sym_RBRACK, - STATE(1375), 1, - aux_sym_type_parameters_repeat1, - [66241] = 4, + anon_sym_SEMI, + [66889] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(2195), 1, - anon_sym_RPAREN, - ACTIONS(2197), 1, - anon_sym_COMMA, - STATE(1462), 1, - aux_sym_argument_list_repeat1, - [66254] = 4, + ACTIONS(2902), 1, + anon_sym_EQ, + ACTIONS(2904), 2, + sym__newline, + anon_sym_SEMI, + [66900] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(2906), 1, anon_sym_RPAREN, ACTIONS(2908), 1, anon_sym_COMMA, - STATE(1481), 1, + STATE(1438), 1, aux_sym_argument_list_repeat1, - [66267] = 4, + [66913] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(2910), 1, anon_sym_COMMA, ACTIONS(2912), 1, - anon_sym_RBRACE, - STATE(1401), 1, - aux_sym_dictionary_repeat1, - [66280] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2914), 1, - anon_sym_if, - ACTIONS(2916), 1, - anon_sym_COLON, - STATE(1689), 1, - sym_guard, - [66293] = 3, + anon_sym_RBRACK, + STATE(1418), 1, + aux_sym_index_expression_list_repeat1, + [66926] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2918), 1, + ACTIONS(2103), 1, anon_sym_COMMA, - ACTIONS(2920), 2, - anon_sym_if, - anon_sym_COLON, - [66304] = 4, + ACTIONS(2214), 1, + anon_sym_RPAREN, + STATE(1398), 1, + aux_sym__collection_elements_repeat1, + [66939] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2922), 1, + ACTIONS(1894), 1, anon_sym_RPAREN, - ACTIONS(2924), 1, + ACTIONS(2914), 1, anon_sym_COMMA, - STATE(1392), 1, - aux_sym_argument_list_repeat1, - [66317] = 3, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2927), 1, - anon_sym_in, - ACTIONS(2929), 2, - sym__newline, - anon_sym_SEMI, - [66328] = 2, + STATE(1218), 1, + aux_sym_open_sequence_match_pattern_repeat1, + [66952] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2794), 3, + ACTIONS(2916), 1, anon_sym_RPAREN, + ACTIONS(2918), 1, anon_sym_COMMA, - anon_sym_COLON, - [66337] = 4, + STATE(1460), 1, + aux_sym_argument_list_repeat1, + [66965] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2677), 1, + ACTIONS(2612), 1, anon_sym_RPAREN, - ACTIONS(2757), 1, + ACTIONS(2920), 1, anon_sym_COMMA, - STATE(1487), 1, - aux_sym__import_list_repeat1, - [66350] = 4, + STATE(1287), 1, + aux_sym__collection_elements_repeat1, + [66978] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1893), 1, + ACTIONS(2922), 1, anon_sym_RPAREN, - ACTIONS(2931), 1, - sym_identifier, - STATE(1558), 1, - sym_match_keyword_pattern, - [66363] = 4, + ACTIONS(2924), 1, + anon_sym_COMMA, + STATE(1460), 1, + aux_sym_argument_list_repeat1, + [66991] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2171), 1, + ACTIONS(2926), 1, anon_sym_RPAREN, - ACTIONS(2173), 1, + ACTIONS(2928), 1, anon_sym_COMMA, - STATE(1448), 1, + STATE(1460), 1, aux_sym_argument_list_repeat1, - [66376] = 4, + [67004] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2622), 1, + anon_sym_COLON2, + ACTIONS(2725), 1, + anon_sym_RBRACE, + STATE(1733), 1, + sym_format_specifier, + [67017] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2933), 1, + ACTIONS(2930), 1, anon_sym_RPAREN, - ACTIONS(2935), 1, + ACTIONS(2932), 1, anon_sym_COMMA, - STATE(1450), 1, + STATE(1399), 1, aux_sym_argument_list_repeat1, - [66389] = 4, + [67030] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1895), 1, - anon_sym_RPAREN, - ACTIONS(2937), 1, + ACTIONS(1894), 1, + anon_sym_RBRACK, + ACTIONS(2934), 1, anon_sym_COMMA, - STATE(1468), 1, - aux_sym_match_class_pattern_repeat1, - [66402] = 4, + STATE(1218), 1, + aux_sym_open_sequence_match_pattern_repeat1, + [67043] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2069), 1, + ACTIONS(2103), 1, anon_sym_COMMA, - ACTIONS(2099), 1, + ACTIONS(2145), 1, anon_sym_RPAREN, - STATE(1454), 1, + STATE(1398), 1, aux_sym__collection_elements_repeat1, - [66415] = 4, + [67056] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2939), 1, + ACTIONS(2910), 1, anon_sym_COMMA, - ACTIONS(2942), 1, - anon_sym_RBRACE, - STATE(1401), 1, - aux_sym_dictionary_repeat1, - [66428] = 4, + ACTIONS(2936), 1, + anon_sym_RBRACK, + STATE(1418), 1, + aux_sym_index_expression_list_repeat1, + [67069] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2452), 1, - sym_identifier, - ACTIONS(2944), 1, - anon_sym_import, - STATE(1654), 1, - sym_dotted_name, - [66441] = 4, + ACTIONS(2756), 1, + anon_sym_RPAREN, + ACTIONS(2938), 1, + anon_sym_COMMA, + STATE(1475), 1, + aux_sym__import_list_repeat1, + [67082] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2438), 1, + ACTIONS(2443), 1, anon_sym_COMMA, - ACTIONS(2440), 1, + ACTIONS(2445), 1, anon_sym_RBRACE, - STATE(1408), 1, + STATE(1412), 1, aux_sym_dictionary_repeat1, - [66454] = 2, + [67095] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1525), 3, - sym__newline, - anon_sym_in, - anon_sym_SEMI, - [66463] = 4, + ACTIONS(2083), 1, + anon_sym_DOT, + ACTIONS(2087), 1, + anon_sym_COLON, + STATE(1033), 1, + aux_sym_match_value_pattern_repeat1, + [67108] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1895), 1, + ACTIONS(2756), 1, anon_sym_RPAREN, - ACTIONS(2931), 1, - sym_identifier, - STATE(1558), 1, - sym_match_keyword_pattern, - [66476] = 3, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2946), 1, - anon_sym_EQ, - ACTIONS(2948), 2, - sym__newline, - anon_sym_SEMI, - [66487] = 4, + ACTIONS(2940), 1, + anon_sym_COMMA, + STATE(1475), 1, + aux_sym__import_list_repeat1, + [67121] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2880), 1, + ACTIONS(2057), 1, + anon_sym_COLON, + ACTIONS(2942), 1, anon_sym_COMMA, - ACTIONS(2950), 1, - anon_sym_RBRACK, - STATE(1492), 1, - aux_sym_index_expression_list_repeat1, - [66500] = 4, + STATE(1386), 1, + aux_sym__parameters_repeat1, + [67134] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2952), 1, + ACTIONS(2035), 1, anon_sym_COMMA, - ACTIONS(2954), 1, - anon_sym_RBRACE, - STATE(1401), 1, - aux_sym_dictionary_repeat1, - [66513] = 4, + ACTIONS(2944), 1, + anon_sym_in, + STATE(1012), 1, + aux_sym__patterns_repeat1, + [67147] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2956), 1, + ACTIONS(2946), 1, anon_sym_COMMA, - ACTIONS(2958), 1, + ACTIONS(2948), 1, anon_sym_RBRACE, - STATE(1401), 1, + STATE(1482), 1, aux_sym_dictionary_repeat1, - [66526] = 4, + [67160] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2382), 1, + ACTIONS(2950), 1, anon_sym_COMMA, - ACTIONS(2384), 1, + ACTIONS(2952), 1, anon_sym_RBRACE, - STATE(1485), 1, + STATE(1482), 1, aux_sym_dictionary_repeat1, - [66539] = 4, + [67173] = 3, + ACTIONS(2077), 1, + sym_comment, + ACTIONS(2573), 1, + anon_sym_RBRACE, + ACTIONS(2575), 2, + anon_sym_LBRACE2, + aux_sym_format_specifier_token1, + [67184] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2191), 1, + ACTIONS(2192), 1, anon_sym_RPAREN, - ACTIONS(2193), 1, + ACTIONS(2194), 1, anon_sym_COMMA, - STATE(1415), 1, + STATE(1420), 1, aux_sym_argument_list_repeat1, - [66552] = 4, + [67197] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2960), 1, + ACTIONS(2954), 1, anon_sym_RPAREN, - ACTIONS(2962), 1, + ACTIONS(2956), 1, anon_sym_COMMA, - STATE(1417), 1, + STATE(1422), 1, aux_sym_argument_list_repeat1, - [66565] = 4, + [67210] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1895), 1, - anon_sym_RPAREN, - ACTIONS(2964), 1, + ACTIONS(2910), 1, anon_sym_COMMA, - STATE(1422), 1, - aux_sym_match_class_pattern_repeat2, - [66578] = 4, + ACTIONS(2958), 1, + anon_sym_RBRACK, + STATE(1418), 1, + aux_sym_index_expression_list_repeat1, + [67223] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2880), 1, + ACTIONS(2960), 1, anon_sym_COMMA, - ACTIONS(2966), 1, + ACTIONS(2962), 1, anon_sym_RBRACK, - STATE(1492), 1, + STATE(1456), 1, aux_sym_index_expression_list_repeat1, - [66591] = 4, + [67236] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2968), 1, + ACTIONS(2409), 1, + sym_identifier, + ACTIONS(2964), 1, + anon_sym_import, + STATE(1697), 1, + sym_dotted_name, + [67249] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2966), 1, anon_sym_RPAREN, - ACTIONS(2970), 1, + ACTIONS(2968), 1, anon_sym_COMMA, - STATE(1392), 1, + STATE(1460), 1, aux_sym_argument_list_repeat1, - [66604] = 4, + [67262] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2902), 1, + ACTIONS(1906), 1, + anon_sym_RPAREN, + ACTIONS(2970), 1, anon_sym_COMMA, - ACTIONS(2972), 1, - anon_sym_RBRACK, - STATE(1386), 1, - aux_sym_type_parameters_repeat1, - [66617] = 4, + STATE(1462), 1, + aux_sym_match_class_pattern_repeat2, + [67275] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2974), 1, + ACTIONS(2972), 1, anon_sym_RPAREN, - ACTIONS(2976), 1, + ACTIONS(2974), 1, anon_sym_COMMA, - STATE(1392), 1, + STATE(1460), 1, aux_sym_argument_list_repeat1, - [66630] = 4, + [67288] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2978), 1, + ACTIONS(2976), 1, anon_sym_RPAREN, - ACTIONS(2980), 1, + ACTIONS(2978), 1, anon_sym_COMMA, - STATE(1392), 1, + STATE(1460), 1, aux_sym_argument_list_repeat1, - [66643] = 4, + [67301] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2613), 1, - anon_sym_COLON2, - ACTIONS(2722), 1, + ACTIONS(2001), 1, anon_sym_RBRACE, - STATE(1641), 1, - sym_format_specifier, - [66656] = 2, + ACTIONS(2980), 1, + anon_sym_COMMA, + STATE(1506), 1, + aux_sym_match_mapping_pattern_repeat1, + [67314] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2780), 3, - sym__newline, - anon_sym_COMMA, - anon_sym_SEMI, - [66665] = 2, + ACTIONS(2622), 1, + anon_sym_COLON2, + ACTIONS(2982), 1, + anon_sym_RBRACE, + STATE(1596), 1, + sym_format_specifier, + [67327] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2982), 3, - sym__newline, + ACTIONS(2481), 1, anon_sym_COMMA, - anon_sym_SEMI, - [66674] = 4, + ACTIONS(2483), 1, + anon_sym_RBRACE, + STATE(1498), 1, + aux_sym_dictionary_repeat1, + [67340] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(2984), 1, anon_sym_RPAREN, ACTIONS(2986), 1, anon_sym_COMMA, - STATE(1422), 1, - aux_sym_match_class_pattern_repeat2, - [66687] = 4, + STATE(1427), 1, + aux_sym_match_class_pattern_repeat1, + [67353] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2069), 1, - anon_sym_COMMA, - ACTIONS(2187), 1, + ACTIONS(2891), 1, anon_sym_RPAREN, - STATE(1454), 1, - aux_sym__collection_elements_repeat1, - [66700] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1958), 1, - anon_sym_RBRACE, ACTIONS(2989), 1, anon_sym_COMMA, - STATE(1480), 1, - aux_sym_match_mapping_pattern_repeat1, - [66713] = 4, + STATE(1428), 1, + aux_sym__parameters_repeat1, + [67366] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1530), 3, + sym__newline, + anon_sym_in, + anon_sym_SEMI, + [67375] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2444), 1, + ACTIONS(2103), 1, anon_sym_COMMA, - ACTIONS(2446), 1, - anon_sym_RBRACE, - STATE(1426), 1, - aux_sym_dictionary_repeat1, - [66726] = 4, + ACTIONS(2190), 1, + anon_sym_RPAREN, + STATE(1398), 1, + aux_sym__collection_elements_repeat1, + [67388] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2991), 1, + ACTIONS(2612), 1, + anon_sym_RPAREN, + ACTIONS(2992), 1, anon_sym_COMMA, - ACTIONS(2993), 1, - anon_sym_RBRACE, - STATE(1401), 1, - aux_sym_dictionary_repeat1, - [66739] = 4, + STATE(1287), 1, + aux_sym__collection_elements_repeat1, + [67401] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2995), 1, + ACTIONS(2449), 1, anon_sym_COMMA, - ACTIONS(2997), 1, + ACTIONS(2451), 1, anon_sym_RBRACE, - STATE(1401), 1, + STATE(1436), 1, aux_sym_dictionary_repeat1, - [66752] = 4, + [67414] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2900), 1, + ACTIONS(1906), 1, anon_sym_RPAREN, - ACTIONS(2999), 1, - anon_sym_COMMA, - STATE(1376), 1, - aux_sym__parameters_repeat1, - [66765] = 4, + ACTIONS(2994), 1, + sym_identifier, + STATE(1551), 1, + sym_match_keyword_pattern, + [67427] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2205), 1, + ACTIONS(2996), 1, anon_sym_RPAREN, - ACTIONS(2207), 1, + ACTIONS(2998), 1, anon_sym_COMMA, - STATE(1435), 1, + STATE(1460), 1, aux_sym_argument_list_repeat1, - [66778] = 4, + [67440] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(3001), 1, + ACTIONS(3000), 1, anon_sym_RPAREN, - ACTIONS(3003), 1, + ACTIONS(3002), 1, anon_sym_COMMA, - STATE(1436), 1, - aux_sym_argument_list_repeat1, - [66791] = 4, + STATE(1435), 1, + aux_sym_match_class_pattern_repeat2, + [67453] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2931), 1, - sym_identifier, ACTIONS(3005), 1, - anon_sym_RPAREN, - STATE(1558), 1, - sym_match_keyword_pattern, - [66804] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2880), 1, anon_sym_COMMA, ACTIONS(3007), 1, - anon_sym_RBRACK, - STATE(1492), 1, - aux_sym_index_expression_list_repeat1, - [66817] = 4, + anon_sym_RBRACE, + STATE(1482), 1, + aux_sym_dictionary_repeat1, + [67466] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(3009), 1, anon_sym_COMMA, ACTIONS(3011), 1, anon_sym_RBRACE, - STATE(1401), 1, + STATE(1482), 1, aux_sym_dictionary_repeat1, - [66830] = 4, + [67479] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(3013), 1, - anon_sym_COMMA, + anon_sym_RPAREN, ACTIONS(3015), 1, - anon_sym_COLON, - STATE(1452), 1, - aux_sym_with_clause_repeat1, - [66843] = 4, + anon_sym_COMMA, + STATE(1460), 1, + aux_sym_argument_list_repeat1, + [67492] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2204), 1, + anon_sym_RPAREN, + ACTIONS(2206), 1, + anon_sym_COMMA, + STATE(1445), 1, + aux_sym_argument_list_repeat1, + [67505] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(3017), 1, anon_sym_RPAREN, ACTIONS(3019), 1, anon_sym_COMMA, - STATE(1392), 1, + STATE(1447), 1, aux_sym_argument_list_repeat1, - [66856] = 4, + [67518] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(3021), 1, anon_sym_RPAREN, ACTIONS(3023), 1, anon_sym_COMMA, - STATE(1392), 1, + STATE(1460), 1, aux_sym_argument_list_repeat1, - [66869] = 4, + [67531] = 4, ACTIONS(3), 1, sym_comment, + ACTIONS(2910), 1, + anon_sym_COMMA, ACTIONS(3025), 1, + anon_sym_RBRACK, + STATE(1418), 1, + aux_sym_index_expression_list_repeat1, + [67544] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1427), 3, anon_sym_RPAREN, - ACTIONS(3027), 1, anon_sym_COMMA, - STATE(1392), 1, - aux_sym_argument_list_repeat1, - [66882] = 4, + anon_sym_COLON, + [67553] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1893), 1, + ACTIONS(3027), 1, anon_sym_RPAREN, ACTIONS(3029), 1, anon_sym_COMMA, - STATE(1449), 1, - aux_sym_match_class_pattern_repeat2, - [66895] = 4, + STATE(1490), 1, + aux_sym_match_class_pattern_repeat1, + [67566] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(3031), 1, anon_sym_RPAREN, ACTIONS(3033), 1, anon_sym_COMMA, - STATE(1495), 1, - aux_sym_with_clause_repeat1, - [66908] = 4, - ACTIONS(3), 1, + STATE(1460), 1, + aux_sym_argument_list_repeat1, + [67579] = 3, + ACTIONS(2077), 1, sym_comment, - ACTIONS(2069), 1, - anon_sym_COMMA, ACTIONS(3035), 1, - anon_sym_RPAREN, - STATE(1441), 1, - aux_sym__collection_elements_repeat1, - [66921] = 4, + anon_sym_RBRACE, + ACTIONS(3037), 2, + anon_sym_LBRACE2, + aux_sym_format_specifier_token1, + [67590] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2595), 1, + ACTIONS(3039), 1, anon_sym_RPAREN, - ACTIONS(3037), 1, + ACTIONS(3041), 1, anon_sym_COMMA, - STATE(1286), 1, - aux_sym__collection_elements_repeat1, - [66934] = 3, + STATE(1460), 1, + aux_sym_argument_list_repeat1, + [67603] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(3039), 1, - anon_sym_COLON, - ACTIONS(2794), 2, + ACTIONS(3043), 1, anon_sym_RPAREN, + ACTIONS(3045), 1, anon_sym_COMMA, - [66945] = 4, + STATE(1460), 1, + aux_sym_argument_list_repeat1, + [67616] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(3041), 1, + ACTIONS(3027), 1, anon_sym_RPAREN, - ACTIONS(3043), 1, + ACTIONS(3047), 1, anon_sym_COMMA, - STATE(1443), 1, - aux_sym__parameters_repeat1, - [66958] = 2, + STATE(1489), 1, + aux_sym_match_class_pattern_repeat2, + [67629] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(3041), 3, - anon_sym_RPAREN, + ACTIONS(2622), 1, + anon_sym_COLON2, + ACTIONS(3049), 1, + anon_sym_RBRACE, + STATE(1709), 1, + sym_format_specifier, + [67642] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2453), 3, + sym__newline, + anon_sym_EQ, + anon_sym_SEMI, + [67651] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2427), 1, + sym_identifier, + STATE(1326), 1, + sym_dotted_name, + STATE(1381), 1, + sym_aliased_import, + [67664] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3051), 1, anon_sym_COMMA, + ACTIONS(3053), 1, anon_sym_COLON, - [66967] = 2, + STATE(1410), 1, + aux_sym__parameters_repeat1, + [67677] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3046), 3, + ACTIONS(2770), 3, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_COLON, - [66976] = 2, + [67686] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(3048), 3, - anon_sym_LPAREN, - anon_sym_COLON, - anon_sym_EQ, - [66985] = 2, + ACTIONS(1006), 1, + anon_sym_RPAREN, + ACTIONS(3055), 1, + anon_sym_COMMA, + STATE(1302), 1, + aux_sym_with_clause_repeat1, + [67699] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2790), 3, - anon_sym_RPAREN, + ACTIONS(3057), 1, anon_sym_COMMA, - anon_sym_COLON, - [66994] = 4, + ACTIONS(3060), 1, + anon_sym_RBRACK, + STATE(1456), 1, + aux_sym_index_expression_list_repeat1, + [67712] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(3050), 1, - anon_sym_RPAREN, - ACTIONS(3052), 1, + ACTIONS(2035), 1, anon_sym_COMMA, - STATE(1392), 1, - aux_sym_argument_list_repeat1, - [67007] = 4, + ACTIONS(3062), 1, + anon_sym_in, + STATE(1012), 1, + aux_sym__patterns_repeat1, + [67725] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(3005), 1, + ACTIONS(2325), 1, + anon_sym_from, + ACTIONS(2331), 2, + sym__newline, + anon_sym_SEMI, + [67736] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1904), 1, anon_sym_RPAREN, - ACTIONS(3054), 1, - anon_sym_COMMA, - STATE(1422), 1, - aux_sym_match_class_pattern_repeat2, - [67020] = 4, + ACTIONS(2994), 1, + sym_identifier, + STATE(1551), 1, + sym_match_keyword_pattern, + [67749] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(3056), 1, + ACTIONS(3064), 1, anon_sym_RPAREN, - ACTIONS(3058), 1, + ACTIONS(3066), 1, anon_sym_COMMA, - STATE(1392), 1, + STATE(1460), 1, aux_sym_argument_list_repeat1, - [67033] = 4, + [67762] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(3060), 1, + ACTIONS(2994), 1, + sym_identifier, + ACTIONS(3069), 1, anon_sym_RPAREN, - ACTIONS(3062), 1, - anon_sym_COMMA, - STATE(1392), 1, - aux_sym_argument_list_repeat1, - [67046] = 4, + STATE(1551), 1, + sym_match_keyword_pattern, + [67775] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(3013), 1, + ACTIONS(3069), 1, + anon_sym_RPAREN, + ACTIONS(3071), 1, anon_sym_COMMA, - ACTIONS(3064), 1, - anon_sym_COLON, - STATE(1325), 1, - aux_sym_with_clause_repeat1, - [67059] = 4, + STATE(1435), 1, + aux_sym_match_class_pattern_repeat2, + [67788] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2589), 1, + ACTIONS(2632), 1, anon_sym_LPAREN, - ACTIONS(3066), 1, + ACTIONS(3073), 1, anon_sym_COLON, - STATE(1608), 1, + STATE(1619), 1, sym_argument_list, - [67072] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2595), 1, - anon_sym_RPAREN, - ACTIONS(3068), 1, - anon_sym_COMMA, - STATE(1286), 1, - aux_sym__collection_elements_repeat1, - [67085] = 3, - ACTIONS(2065), 1, + [67801] = 3, + ACTIONS(2077), 1, sym_comment, - ACTIONS(2581), 1, + ACTIONS(2577), 1, anon_sym_RBRACE, - ACTIONS(2583), 2, + ACTIONS(2579), 2, anon_sym_LBRACE2, aux_sym_format_specifier_token1, - [67096] = 4, + [67812] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(2914), 1, - anon_sym_if, - ACTIONS(3070), 1, - anon_sym_COLON, - STATE(1621), 1, - sym_guard, - [67109] = 4, + ACTIONS(3075), 1, + anon_sym_in, + ACTIONS(3077), 2, + sym__newline, + anon_sym_SEMI, + [67823] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2613), 1, - anon_sym_COLON2, - ACTIONS(3072), 1, - anon_sym_RBRACE, - STATE(1699), 1, - sym_format_specifier, - [67122] = 4, + ACTIONS(2636), 1, + anon_sym_LBRACK, + ACTIONS(3079), 1, + anon_sym_EQ, + STATE(1665), 1, + sym_type_parameters, + [67836] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2613), 1, - anon_sym_COLON2, - ACTIONS(2705), 1, - anon_sym_RBRACE, - STATE(1692), 1, - sym_format_specifier, - [67135] = 4, + ACTIONS(3081), 1, + anon_sym_if, + ACTIONS(3083), 1, + anon_sym_COLON, + STATE(1592), 1, + sym_guard, + [67849] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(3005), 1, + ACTIONS(3069), 1, anon_sym_RPAREN, - ACTIONS(3054), 1, + ACTIONS(3071), 1, anon_sym_COMMA, - STATE(1472), 1, + STATE(1474), 1, aux_sym_match_class_pattern_repeat2, - [67148] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2726), 1, - sym_identifier, - STATE(1382), 1, - sym_dotted_name, - STATE(1540), 1, - sym_aliased_import, - [67161] = 4, + [67862] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2010), 1, + ACTIONS(2035), 1, anon_sym_COMMA, - ACTIONS(3074), 1, + ACTIONS(3085), 1, anon_sym_in, - STATE(1010), 1, + STATE(1012), 1, aux_sym__patterns_repeat1, - [67174] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(3076), 1, - anon_sym_RPAREN, - ACTIONS(3078), 1, - anon_sym_COMMA, - STATE(1392), 1, - aux_sym_argument_list_repeat1, - [67187] = 2, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2390), 3, - sym__newline, - anon_sym_EQ, - anon_sym_SEMI, - [67196] = 2, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1274), 3, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_COLON, - [67205] = 2, + [67875] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(3080), 3, - anon_sym_RPAREN, - anon_sym_COMMA, + ACTIONS(2632), 1, + anon_sym_LPAREN, + ACTIONS(3087), 1, anon_sym_COLON, - [67214] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2891), 1, - anon_sym_RPAREN, - ACTIONS(3082), 1, - anon_sym_COMMA, - STATE(1399), 1, - aux_sym_match_class_pattern_repeat1, - [67227] = 4, + STATE(1712), 1, + sym_argument_list, + [67888] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2931), 1, + ACTIONS(2994), 1, sym_identifier, - ACTIONS(3084), 1, + ACTIONS(3089), 1, anon_sym_RPAREN, - STATE(1558), 1, + STATE(1551), 1, sym_match_keyword_pattern, - [67240] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(3086), 1, - anon_sym_RPAREN, - ACTIONS(3088), 1, - anon_sym_COMMA, - STATE(1468), 1, - aux_sym_match_class_pattern_repeat1, - [67253] = 4, + [67901] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(3091), 1, anon_sym_COMMA, ACTIONS(3093), 1, anon_sym_RBRACK, - STATE(1503), 1, + STATE(1403), 1, aux_sym_open_sequence_match_pattern_repeat1, - [67266] = 2, + [67914] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1517), 3, - sym__newline, - anon_sym_in, - anon_sym_SEMI, - [67275] = 4, + ACTIONS(2752), 1, + anon_sym_as, + ACTIONS(2780), 2, + anon_sym_RPAREN, + anon_sym_COMMA, + [67925] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2048), 1, - anon_sym_COLON, + ACTIONS(3089), 1, + anon_sym_RPAREN, ACTIONS(3095), 1, anon_sym_COMMA, - STATE(1506), 1, - aux_sym__parameters_repeat1, - [67288] = 4, + STATE(1435), 1, + aux_sym_match_class_pattern_repeat2, + [67938] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(3084), 1, + ACTIONS(2787), 1, anon_sym_RPAREN, ACTIONS(3097), 1, anon_sym_COMMA, - STATE(1422), 1, - aux_sym_match_class_pattern_repeat2, - [67301] = 4, + STATE(1475), 1, + aux_sym__import_list_repeat1, + [67951] = 3, + ACTIONS(2077), 1, + sym_comment, + ACTIONS(2526), 1, + anon_sym_RBRACE, + ACTIONS(2528), 2, + anon_sym_LBRACE2, + aux_sym_format_specifier_token1, + [67962] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3100), 1, + anon_sym_COMMA, + ACTIONS(3102), 1, + anon_sym_COLON, + STATE(1488), 1, + aux_sym_with_clause_repeat1, + [67975] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2010), 1, + ACTIONS(2035), 1, anon_sym_COMMA, - ACTIONS(3099), 1, + ACTIONS(3104), 1, anon_sym_in, - STATE(1010), 1, + STATE(1012), 1, aux_sym__patterns_repeat1, - [67314] = 4, + [67988] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2069), 1, + ACTIONS(2103), 1, anon_sym_COMMA, - ACTIONS(3101), 1, + ACTIONS(2188), 1, anon_sym_RPAREN, - STATE(1259), 1, + STATE(1398), 1, aux_sym__collection_elements_repeat1, - [67327] = 3, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2293), 1, - anon_sym_from, - ACTIONS(2297), 2, - sym__newline, - anon_sym_SEMI, - [67338] = 4, + [68001] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2931), 1, + ACTIONS(2994), 1, sym_identifier, - ACTIONS(3103), 1, + ACTIONS(3106), 1, anon_sym_RPAREN, - STATE(1558), 1, + STATE(1551), 1, sym_match_keyword_pattern, - [67351] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(3105), 1, - anon_sym_COMMA, - ACTIONS(3107), 1, - anon_sym_RBRACE, - STATE(1424), 1, - aux_sym_match_mapping_pattern_repeat1, - [67364] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2091), 1, - anon_sym_DOT, - ACTIONS(2114), 1, - anon_sym_COLON, - STATE(1032), 1, - aux_sym_match_value_pattern_repeat1, - [67377] = 3, + [68014] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2798), 1, - anon_sym_EQ, - ACTIONS(2794), 2, + ACTIONS(2712), 3, + anon_sym_RPAREN, anon_sym_COMMA, anon_sym_COLON, - [67388] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(3109), 1, - anon_sym_COMMA, - ACTIONS(3112), 1, - anon_sym_RBRACE, - STATE(1480), 1, - aux_sym_match_mapping_pattern_repeat1, - [67401] = 4, + [68023] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(3114), 1, - anon_sym_RPAREN, - ACTIONS(3116), 1, + ACTIONS(3108), 1, anon_sym_COMMA, - STATE(1392), 1, - aux_sym_argument_list_repeat1, - [67414] = 3, - ACTIONS(2065), 1, - sym_comment, - ACTIONS(2490), 1, + ACTIONS(3111), 1, anon_sym_RBRACE, - ACTIONS(2492), 2, - anon_sym_LBRACE2, - aux_sym_format_specifier_token1, - [67425] = 4, + STATE(1482), 1, + aux_sym_dictionary_repeat1, + [68036] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(3118), 1, - anon_sym_RPAREN, - ACTIONS(3120), 1, + ACTIONS(3113), 1, anon_sym_COMMA, - STATE(1392), 1, - aux_sym_argument_list_repeat1, - [67438] = 4, + ACTIONS(3115), 1, + anon_sym_RBRACK, + STATE(1499), 1, + aux_sym_type_parameters_repeat1, + [68049] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1889), 1, + ACTIONS(3117), 1, anon_sym_RPAREN, - ACTIONS(3122), 1, + ACTIONS(3119), 1, anon_sym_COMMA, - STATE(1242), 1, - aux_sym_open_sequence_match_pattern_repeat1, - [67451] = 4, + STATE(1455), 1, + aux_sym_with_clause_repeat1, + [68062] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(3124), 1, + ACTIONS(3121), 1, anon_sym_COMMA, - ACTIONS(3126), 1, + ACTIONS(3123), 1, anon_sym_RBRACE, - STATE(1401), 1, - aux_sym_dictionary_repeat1, - [67464] = 2, + STATE(1424), 1, + aux_sym_match_mapping_pattern_repeat1, + [68075] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2713), 3, - sym__newline, - anon_sym_COMMA, - anon_sym_SEMI, - [67473] = 4, + ACTIONS(3125), 3, + anon_sym_LPAREN, + anon_sym_COLON, + anon_sym_EQ, + [68084] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2824), 1, + ACTIONS(2658), 1, anon_sym_RPAREN, - ACTIONS(3128), 1, + ACTIONS(2750), 1, anon_sym_COMMA, - STATE(1384), 1, + STATE(1406), 1, aux_sym__import_list_repeat1, - [67486] = 4, + [68097] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2824), 1, - anon_sym_RPAREN, - ACTIONS(3130), 1, + ACTIONS(3100), 1, anon_sym_COMMA, - STATE(1384), 1, - aux_sym__import_list_repeat1, - [67499] = 4, + ACTIONS(3127), 1, + anon_sym_COLON, + STATE(1302), 1, + aux_sym_with_clause_repeat1, + [68110] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2069), 1, - anon_sym_COMMA, - ACTIONS(2209), 1, + ACTIONS(1904), 1, anon_sym_RPAREN, - STATE(1454), 1, - aux_sym__collection_elements_repeat1, - [67512] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2472), 1, + ACTIONS(3129), 1, anon_sym_COMMA, - ACTIONS(2474), 1, - anon_sym_RBRACE, - STATE(1389), 1, - aux_sym_dictionary_repeat1, - [67525] = 4, + STATE(1435), 1, + aux_sym_match_class_pattern_repeat2, + [68123] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(3132), 1, + ACTIONS(1904), 1, + anon_sym_RPAREN, + ACTIONS(3131), 1, anon_sym_COMMA, - ACTIONS(3134), 1, - anon_sym_RBRACE, - STATE(1401), 1, - aux_sym_dictionary_repeat1, - [67538] = 4, + STATE(1427), 1, + aux_sym_match_class_pattern_repeat1, + [68136] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3136), 1, + ACTIONS(3133), 3, + anon_sym_RPAREN, anon_sym_COMMA, - ACTIONS(3138), 1, - anon_sym_RBRACK, - STATE(1378), 1, - aux_sym_index_expression_list_repeat1, - [67551] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2589), 1, - anon_sym_LPAREN, - ACTIONS(3140), 1, anon_sym_COLON, - STATE(1666), 1, - sym_argument_list, - [67564] = 4, - ACTIONS(3), 1, + [68145] = 3, + ACTIONS(2077), 1, sym_comment, - ACTIONS(2613), 1, - anon_sym_COLON2, - ACTIONS(3142), 1, + ACTIONS(2514), 1, anon_sym_RBRACE, - STATE(1644), 1, - sym_format_specifier, - [67577] = 4, + ACTIONS(2516), 2, + anon_sym_LBRACE2, + aux_sym_format_specifier_token1, + [68156] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1017), 1, - anon_sym_RPAREN, - ACTIONS(3144), 1, - anon_sym_COMMA, - STATE(1325), 1, - aux_sym_with_clause_repeat1, - [67590] = 4, + ACTIONS(2566), 1, + sym_identifier, + STATE(1473), 1, + sym_dotted_name, + STATE(1553), 1, + sym_aliased_import, + [68169] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2010), 1, + ACTIONS(2761), 3, + sym__newline, anon_sym_COMMA, - ACTIONS(3146), 1, - anon_sym_in, - STATE(1010), 1, - aux_sym__patterns_repeat1, - [67603] = 3, - ACTIONS(2065), 1, + anon_sym_SEMI, + [68178] = 2, + ACTIONS(3), 1, sym_comment, - ACTIONS(3148), 1, - anon_sym_RBRACE, - ACTIONS(3150), 2, - anon_sym_LBRACE2, - aux_sym_format_specifier_token1, - [67614] = 4, + ACTIONS(3135), 3, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_COLON, + [68187] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2593), 1, - anon_sym_LBRACK, - ACTIONS(3152), 1, - anon_sym_EQ, - STATE(1647), 1, - sym_type_parameters, - [67627] = 4, + ACTIONS(2622), 1, + anon_sym_COLON2, + ACTIONS(2746), 1, + anon_sym_RBRACE, + STATE(1624), 1, + sym_format_specifier, + [68200] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2376), 1, + ACTIONS(3137), 1, sym_identifier, - STATE(1306), 1, - sym_dotted_name, - STATE(1486), 1, - sym_aliased_import, - [67640] = 4, + ACTIONS(3139), 1, + sym_match_wildcard_pattern, + STATE(1259), 1, + sym_match_capture_pattern, + [68213] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2010), 1, + ACTIONS(3141), 1, anon_sym_COMMA, - ACTIONS(3154), 1, - anon_sym_in, - STATE(1010), 1, - aux_sym__patterns_repeat1, - [67653] = 2, + ACTIONS(3143), 1, + anon_sym_RBRACE, + STATE(1482), 1, + aux_sym_dictionary_repeat1, + [68226] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2748), 3, - anon_sym_RPAREN, + ACTIONS(3113), 1, + anon_sym_COMMA, + ACTIONS(3145), 1, + anon_sym_RBRACK, + STATE(1382), 1, + aux_sym_type_parameters_repeat1, + [68239] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2774), 1, + anon_sym_EQ, + ACTIONS(2770), 2, anon_sym_COMMA, anon_sym_COLON, - [67662] = 3, - ACTIONS(2065), 1, + [68250] = 4, + ACTIONS(3), 1, sym_comment, - ACTIONS(2486), 1, + ACTIONS(3147), 1, + anon_sym_COMMA, + ACTIONS(3149), 1, anon_sym_RBRACE, - ACTIONS(2488), 2, - anon_sym_LBRACE2, - aux_sym_format_specifier_token1, - [67673] = 4, + STATE(1482), 1, + aux_sym_dictionary_repeat1, + [68263] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1889), 1, - anon_sym_RBRACK, - ACTIONS(3156), 1, + ACTIONS(2057), 1, + anon_sym_RPAREN, + ACTIONS(3151), 1, anon_sym_COMMA, - STATE(1242), 1, - aux_sym_open_sequence_match_pattern_repeat1, - [67686] = 4, + STATE(1428), 1, + aux_sym__parameters_repeat1, + [68276] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3081), 1, + anon_sym_if, + ACTIONS(3153), 1, + anon_sym_COLON, + STATE(1706), 1, + sym_guard, + [68289] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(2010), 1, + ACTIONS(3155), 1, anon_sym_COMMA, - ACTIONS(3158), 1, - anon_sym_in, - STATE(1010), 1, - aux_sym__patterns_repeat1, - [67699] = 4, + ACTIONS(3157), 2, + anon_sym_if, + anon_sym_COLON, + [68300] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2010), 1, + ACTIONS(2385), 1, anon_sym_COMMA, - ACTIONS(3160), 1, - anon_sym_in, - STATE(1010), 1, - aux_sym__patterns_repeat1, - [67712] = 4, + ACTIONS(2387), 1, + anon_sym_RBRACE, + STATE(1379), 1, + aux_sym_dictionary_repeat1, + [68313] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(3041), 1, - anon_sym_COLON, - ACTIONS(3162), 1, + ACTIONS(3159), 1, anon_sym_COMMA, + ACTIONS(3162), 1, + anon_sym_RBRACE, STATE(1506), 1, - aux_sym__parameters_repeat1, - [67725] = 2, + aux_sym_match_mapping_pattern_repeat1, + [68326] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(3165), 2, - sym__newline, - anon_sym_SEMI, - [67733] = 2, + ACTIONS(3164), 1, + anon_sym_COMMA, + ACTIONS(3166), 1, + anon_sym_RBRACE, + STATE(1482), 1, + aux_sym_dictionary_repeat1, + [68339] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(3167), 2, + ACTIONS(2035), 1, anon_sym_COMMA, - anon_sym_RBRACK, - [67741] = 3, + ACTIONS(3168), 1, + anon_sym_in, + STATE(1012), 1, + aux_sym__patterns_repeat1, + [68352] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(3169), 1, + ACTIONS(2035), 1, anon_sym_COMMA, - STATE(1294), 1, - aux_sym_open_sequence_match_pattern_repeat1, - [67751] = 3, + ACTIONS(3170), 1, + anon_sym_in, + STATE(1012), 1, + aux_sym__patterns_repeat1, + [68365] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(2357), 1, + ACTIONS(3172), 1, + anon_sym_COLON, + ACTIONS(2770), 2, + anon_sym_RPAREN, anon_sym_COMMA, - STATE(1229), 1, - aux_sym_expression_list_repeat1, - [67761] = 3, + [68376] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(3171), 1, - anon_sym_COLON, - ACTIONS(3173), 1, - anon_sym_DASH_GT, - [67771] = 3, + ACTIONS(3053), 1, + anon_sym_RPAREN, + ACTIONS(3174), 1, + anon_sym_COMMA, + STATE(1502), 1, + aux_sym__parameters_repeat1, + [68389] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(2703), 1, + ACTIONS(2723), 1, anon_sym_LPAREN, - STATE(1539), 1, + STATE(1556), 1, sym_parameters, - [67781] = 3, - ACTIONS(3), 1, - sym_comment, - ACTIONS(3175), 1, - anon_sym_COLON, - ACTIONS(3177), 1, - anon_sym_DASH_GT, - [67791] = 2, + [68399] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3179), 2, + ACTIONS(3176), 2, sym__newline, anon_sym_SEMI, - [67799] = 2, + [68407] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1027), 2, - anon_sym_except, - anon_sym_finally, - [67807] = 2, + ACTIONS(2994), 1, + sym_identifier, + STATE(1551), 1, + sym_match_keyword_pattern, + [68417] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3181), 2, + ACTIONS(3178), 2, anon_sym_COMMA, anon_sym_RBRACK, - [67815] = 2, + [68425] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2837), 2, + ACTIONS(3180), 2, sym__newline, anon_sym_SEMI, - [67823] = 2, + [68433] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3183), 2, + ACTIONS(3182), 2, sym__newline, anon_sym_SEMI, - [67831] = 2, + [68441] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(2607), 2, + ACTIONS(2357), 1, anon_sym_COMMA, - anon_sym_RBRACK, - [67839] = 2, + STATE(1247), 1, + aux_sym_expression_list_repeat1, + [68451] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2794), 2, + ACTIONS(3184), 2, anon_sym_COMMA, - anon_sym_COLON, - [67847] = 2, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1045), 2, - anon_sym_except, - anon_sym_finally, - [67855] = 2, + anon_sym_RBRACK, + [68459] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(3185), 2, + ACTIONS(2327), 1, anon_sym_COMMA, - anon_sym_RBRACK, - [67863] = 2, + STATE(1278), 1, + aux_sym_expression_list_repeat1, + [68469] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3187), 2, + ACTIONS(3186), 2, sym__newline, anon_sym_SEMI, - [67871] = 2, - ACTIONS(3), 1, - sym_comment, - ACTIONS(3189), 2, - anon_sym_COMMA, - anon_sym_RBRACK, - [67879] = 2, + [68477] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3191), 2, + ACTIONS(2407), 2, sym__newline, anon_sym_SEMI, - [67887] = 2, + [68485] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1054), 2, + anon_sym_except, + anon_sym_finally, + [68493] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3193), 2, + ACTIONS(3188), 2, anon_sym_RPAREN, anon_sym_COMMA, - [67895] = 2, + [68501] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3195), 2, - sym__newline, - anon_sym_SEMI, - [67903] = 2, + ACTIONS(3190), 2, + anon_sym_COLON, + anon_sym_DASH_GT, + [68509] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3197), 2, + ACTIONS(3192), 2, sym__newline, anon_sym_SEMI, - [67911] = 2, + [68517] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3199), 2, + ACTIONS(3194), 2, anon_sym_COMMA, anon_sym_RBRACK, - [67919] = 2, + [68525] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3201), 2, + ACTIONS(3196), 2, sym__newline, anon_sym_SEMI, - [67927] = 2, + [68533] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(3203), 2, - sym__newline, - anon_sym_SEMI, - [67935] = 2, + ACTIONS(3198), 1, + anon_sym_COMMA, + ACTIONS(3200), 1, + anon_sym_RBRACE, + [68543] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3205), 2, + ACTIONS(2467), 2, sym__newline, anon_sym_SEMI, - [67943] = 2, + [68551] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(3207), 2, - sym__newline, - anon_sym_SEMI, - [67951] = 2, + ACTIONS(3202), 1, + anon_sym_COLON, + ACTIONS(3204), 1, + anon_sym_DASH_GT, + [68561] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3086), 2, + ACTIONS(3206), 2, anon_sym_RPAREN, anon_sym_COMMA, - [67959] = 2, + [68569] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3209), 2, + ACTIONS(2266), 2, sym__newline, anon_sym_SEMI, - [67967] = 2, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1031), 2, - anon_sym_except, - anon_sym_finally, - [67975] = 2, + [68577] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2236), 2, + ACTIONS(3208), 2, sym__newline, anon_sym_SEMI, - [67983] = 2, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1037), 2, - anon_sym_except, - anon_sym_finally, - [67991] = 3, + [68585] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3211), 1, - anon_sym_COLON, - ACTIONS(3213), 1, - anon_sym_DASH_GT, - [68001] = 2, + ACTIONS(3210), 2, + sym__newline, + anon_sym_SEMI, + [68593] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2713), 2, + ACTIONS(3212), 2, anon_sym_RPAREN, anon_sym_COMMA, - [68009] = 3, + [68601] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3215), 1, - anon_sym_COLON, - ACTIONS(3217), 1, - anon_sym_DASH_GT, - [68019] = 2, + ACTIONS(3214), 2, + anon_sym_COMMA, + anon_sym_RBRACK, + [68609] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(3219), 2, - anon_sym_COMMA, - anon_sym_RBRACE, - [68027] = 3, + ACTIONS(2723), 1, + anon_sym_LPAREN, + STATE(1531), 1, + sym_parameters, + [68619] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(3221), 1, + ACTIONS(3216), 1, anon_sym_COLON, - ACTIONS(3223), 1, + ACTIONS(3218), 1, anon_sym_DASH_GT, - [68037] = 3, + [68629] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(3225), 1, + ACTIONS(3155), 1, anon_sym_COMMA, - ACTIONS(3227), 1, - anon_sym_RBRACE, - [68047] = 2, + ACTIONS(3220), 1, + anon_sym_RPAREN, + [68639] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(2982), 2, - anon_sym_RPAREN, + ACTIONS(3222), 1, anon_sym_COMMA, - [68055] = 3, + STATE(1396), 1, + aux_sym_open_sequence_match_pattern_repeat1, + [68649] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3229), 1, - anon_sym_COLON, - ACTIONS(3231), 1, - anon_sym_DASH_GT, - [68065] = 2, + ACTIONS(1058), 2, + anon_sym_except, + anon_sym_finally, + [68657] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(3233), 2, + ACTIONS(3224), 1, anon_sym_COLON, + ACTIONS(3226), 1, anon_sym_DASH_GT, - [68073] = 3, + [68667] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2460), 1, - anon_sym_as, - ACTIONS(2462), 1, - anon_sym_COLON, - [68083] = 3, + ACTIONS(2984), 2, + anon_sym_RPAREN, + anon_sym_COMMA, + [68675] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(2295), 1, - anon_sym_COMMA, - STATE(1278), 1, - aux_sym_expression_list_repeat1, - [68093] = 3, + ACTIONS(3228), 1, + anon_sym_COLON, + ACTIONS(3230), 1, + anon_sym_DASH_GT, + [68685] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(2464), 1, - anon_sym_as, - ACTIONS(2466), 1, + ACTIONS(3232), 1, anon_sym_COLON, - [68103] = 2, + ACTIONS(3234), 1, + anon_sym_DASH_GT, + [68695] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(2424), 2, - sym__newline, - anon_sym_SEMI, - [68111] = 3, + ACTIONS(3236), 1, + anon_sym_COLON, + ACTIONS(3238), 1, + anon_sym_DASH_GT, + [68705] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(2468), 1, + ACTIONS(2455), 1, anon_sym_as, - ACTIONS(2470), 1, + ACTIONS(2457), 1, anon_sym_COLON, - [68121] = 3, + [68715] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2918), 1, + ACTIONS(2660), 2, anon_sym_COMMA, - ACTIONS(3235), 1, - anon_sym_RPAREN, - [68131] = 3, + anon_sym_RBRACK, + [68723] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(3237), 1, + ACTIONS(2459), 1, + anon_sym_as, + ACTIONS(2461), 1, anon_sym_COLON, - ACTIONS(3239), 1, - anon_sym_DASH_GT, - [68141] = 2, + [68733] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3241), 2, + ACTIONS(3000), 2, + anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_RBRACK, - [68149] = 3, + [68741] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3243), 1, - anon_sym_COMMA, - STATE(1484), 1, - aux_sym_open_sequence_match_pattern_repeat1, - [68159] = 3, + ACTIONS(3240), 2, + sym__newline, + anon_sym_SEMI, + [68749] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2703), 1, - anon_sym_LPAREN, - STATE(1513), 1, - sym_parameters, - [68169] = 2, + ACTIONS(2780), 2, + anon_sym_RPAREN, + anon_sym_COMMA, + [68757] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2984), 2, + ACTIONS(2900), 2, anon_sym_RPAREN, anon_sym_COMMA, - [68177] = 3, + [68765] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(3245), 1, - sym_integer, - ACTIONS(3247), 1, - sym_float, - [68187] = 3, + ACTIONS(2397), 1, + anon_sym_as, + ACTIONS(2401), 1, + anon_sym_COLON, + [68775] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(2931), 1, - sym_identifier, - STATE(1558), 1, - sym_match_keyword_pattern, - [68197] = 3, + ACTIONS(3242), 1, + anon_sym_COLON, + ACTIONS(3244), 1, + anon_sym_DASH_GT, + [68785] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(3249), 1, + ACTIONS(3246), 1, sym_identifier, - STATE(1581), 1, + STATE(1576), 1, sym_match_capture_pattern, - [68207] = 3, + [68795] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(2091), 1, + ACTIONS(2083), 1, anon_sym_DOT, - STATE(1478), 1, + STATE(1408), 1, aux_sym_match_value_pattern_repeat1, - [68217] = 2, + [68805] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3251), 2, - anon_sym_COMMA, - anon_sym_RBRACE, - [68225] = 3, + ACTIONS(3248), 2, + sym__newline, + anon_sym_SEMI, + [68813] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(3107), 1, + ACTIONS(3123), 1, anon_sym_RBRACE, - ACTIONS(3253), 1, + ACTIONS(3250), 1, anon_sym_COMMA, - [68235] = 3, + [68823] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3252), 1, + sym_integer, + ACTIONS(3254), 1, + sym_float, + [68833] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(2428), 1, + ACTIONS(2477), 1, anon_sym_as, - ACTIONS(2432), 1, + ACTIONS(2479), 1, anon_sym_COLON, - [68245] = 3, + [68843] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3255), 1, - sym_integer, - ACTIONS(3257), 1, - sym_float, - [68255] = 3, + ACTIONS(3256), 2, + sym__newline, + anon_sym_SEMI, + [68851] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2232), 1, - anon_sym_COMMA, - STATE(1251), 1, - aux_sym_expression_list_repeat1, - [68265] = 2, + ACTIONS(1018), 2, + anon_sym_except, + anon_sym_finally, + [68859] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3258), 1, + sym_integer, + ACTIONS(3260), 1, + sym_float, + [68869] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3259), 2, + ACTIONS(2744), 2, sym__newline, anon_sym_SEMI, - [68273] = 3, + [68877] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1992), 1, - anon_sym_RBRACE, - ACTIONS(3261), 1, + ACTIONS(2652), 2, + anon_sym_RPAREN, anon_sym_COMMA, - [68283] = 2, + [68885] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(2601), 2, - anon_sym_RPAREN, + ACTIONS(2238), 1, anon_sym_COMMA, - [68291] = 2, + STATE(1219), 1, + aux_sym_expression_list_repeat1, + [68895] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3263), 2, - anon_sym_COLON, - anon_sym_DASH_GT, - [68299] = 2, + ACTIONS(3262), 2, + anon_sym_COMMA, + anon_sym_RBRACE, + [68903] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2404), 2, + ACTIONS(3264), 2, sym__newline, anon_sym_SEMI, - [68307] = 2, + [68911] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3112), 2, - anon_sym_COMMA, - anon_sym_RBRACE, - [68315] = 3, + ACTIONS(2469), 2, + sym__newline, + anon_sym_SEMI, + [68919] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3265), 1, - sym_integer, - ACTIONS(3267), 1, - sym_float, - [68325] = 2, + ACTIONS(3266), 2, + sym__newline, + anon_sym_SEMI, + [68927] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3269), 2, - anon_sym_RPAREN, + ACTIONS(3268), 2, + sym__newline, + anon_sym_SEMI, + [68935] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2770), 2, anon_sym_COMMA, - [68333] = 3, + anon_sym_COLON, + [68943] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2703), 1, - anon_sym_LPAREN, - STATE(1546), 1, - sym_parameters, - [68343] = 2, + ACTIONS(1052), 2, + anon_sym_except, + anon_sym_finally, + [68951] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3271), 2, - anon_sym_RPAREN, + ACTIONS(3270), 2, anon_sym_COMMA, - [68351] = 3, + anon_sym_RBRACE, + [68959] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2703), 1, - anon_sym_LPAREN, - STATE(1582), 1, - sym_parameters, - [68361] = 2, + ACTIONS(3272), 2, + sym__newline, + anon_sym_SEMI, + [68967] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2406), 2, + ACTIONS(3274), 2, sym__newline, anon_sym_SEMI, - [68369] = 2, + [68975] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1081), 2, - anon_sym_except, - anon_sym_finally, - [68377] = 2, + ACTIONS(3276), 1, + sym_integer, + ACTIONS(3278), 1, + sym_float, + [68985] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3273), 2, + ACTIONS(3280), 2, anon_sym_COMMA, anon_sym_RBRACE, - [68385] = 3, + [68993] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3275), 1, - anon_sym_COLON, - ACTIONS(3277), 1, - anon_sym_DASH_GT, - [68395] = 2, + ACTIONS(1070), 2, + anon_sym_except, + anon_sym_finally, + [69001] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(3279), 1, - anon_sym_COLON, - [68402] = 2, + ACTIONS(2723), 1, + anon_sym_LPAREN, + STATE(1546), 1, + sym_parameters, + [69011] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(3281), 1, - anon_sym_RPAREN, - [68409] = 2, + ACTIONS(2723), 1, + anon_sym_LPAREN, + STATE(1547), 1, + sym_parameters, + [69021] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(3283), 1, - sym_identifier, - [68416] = 2, + ACTIONS(1951), 1, + anon_sym_RBRACE, + ACTIONS(3282), 1, + anon_sym_COMMA, + [69031] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(3285), 1, - anon_sym_RPAREN, - [68423] = 2, + ACTIONS(3284), 1, + anon_sym_COMMA, + STATE(1340), 1, + aux_sym_open_sequence_match_pattern_repeat1, + [69041] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2705), 1, + ACTIONS(3162), 2, + anon_sym_COMMA, anon_sym_RBRACE, - [68430] = 2, + [69049] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(3287), 1, + ACTIONS(3286), 1, anon_sym_COLON, - [68437] = 2, + ACTIONS(3288), 1, + anon_sym_DASH_GT, + [69059] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3289), 1, - anon_sym_COLON, - [68444] = 2, + ACTIONS(3290), 2, + sym__newline, + anon_sym_SEMI, + [69067] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3291), 1, - anon_sym_COLON, - [68451] = 2, + ACTIONS(3292), 2, + anon_sym_COMMA, + anon_sym_RBRACK, + [69075] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3293), 1, - anon_sym_RPAREN, - [68458] = 2, + ACTIONS(3294), 2, + anon_sym_COLON, + anon_sym_DASH_GT, + [69083] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3295), 1, - anon_sym_RPAREN, - [68465] = 2, + ACTIONS(3296), 2, + anon_sym_COMMA, + anon_sym_RBRACK, + [69091] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3297), 1, + ACTIONS(3298), 1, anon_sym_COLON, - [68472] = 2, + [69098] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3299), 1, - anon_sym_RBRACK, - [68479] = 2, + ACTIONS(3300), 1, + anon_sym_RBRACE, + [69105] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3301), 1, - anon_sym_for, - [68486] = 2, + ACTIONS(2936), 1, + anon_sym_RBRACK, + [69112] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3303), 1, - anon_sym_RBRACE, - [68493] = 2, + ACTIONS(3062), 1, + anon_sym_in, + [69119] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3305), 1, - anon_sym_COLON, - [68500] = 2, + ACTIONS(3302), 1, + anon_sym_RBRACE, + [69126] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3307), 1, - anon_sym_COLON, - [68507] = 2, + ACTIONS(3304), 1, + sym_identifier, + [69133] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3309), 1, + ACTIONS(3306), 1, sym_identifier, - [68514] = 2, + [69140] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3311), 1, - anon_sym_RBRACE, - [68521] = 2, + ACTIONS(3308), 1, + anon_sym_COLON, + [69147] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3313), 1, + ACTIONS(3310), 1, anon_sym_COLON, - [68528] = 2, + [69154] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3315), 1, + ACTIONS(3312), 1, anon_sym_RBRACE, - [68535] = 2, + [69161] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2535), 1, + ACTIONS(3314), 1, anon_sym_COLON, - [68542] = 2, + [69168] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3317), 1, - anon_sym_COLON, - [68549] = 2, + ACTIONS(3316), 1, + anon_sym_RBRACE, + [69175] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3319), 1, + ACTIONS(3318), 1, sym_identifier, - [68556] = 2, + [69182] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3321), 1, + ACTIONS(3320), 1, anon_sym_COLON, - [68563] = 2, + [69189] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3323), 1, + ACTIONS(3322), 1, anon_sym_COLON, - [68570] = 2, + [69196] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3325), 1, + ACTIONS(3324), 1, anon_sym_COLON, - [68577] = 2, + [69203] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3327), 1, - anon_sym_COLON, - [68584] = 2, + ACTIONS(2958), 1, + anon_sym_RBRACK, + [69210] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2537), 1, + ACTIONS(3326), 1, anon_sym_COLON, - [68591] = 2, + [69217] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(963), 1, - anon_sym_STAR, - [68598] = 2, + ACTIONS(3328), 1, + ts_builtin_sym_end, + [69224] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3329), 1, + ACTIONS(3330), 1, + anon_sym_COLON, + [69231] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2944), 1, anon_sym_in, - [68605] = 2, + [69238] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3331), 1, + ACTIONS(3332), 1, anon_sym_RPAREN, - [68612] = 2, + [69245] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3333), 1, - anon_sym_RBRACK, - [68619] = 2, + ACTIONS(2546), 1, + anon_sym_COLON, + [69252] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3335), 1, - anon_sym_RPAREN, - [68626] = 2, + ACTIONS(3334), 1, + sym_identifier, + [69259] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3337), 1, - anon_sym_COLON, - [68633] = 2, + ACTIONS(3336), 1, + anon_sym_RBRACE, + [69266] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3339), 1, + ACTIONS(3338), 1, anon_sym_COLON, - [68640] = 2, + [69273] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3341), 1, - anon_sym_COLON, - [68647] = 2, + ACTIONS(3340), 1, + anon_sym_RPAREN, + [69280] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3343), 1, - sym_identifier, - [68654] = 2, + ACTIONS(3342), 1, + anon_sym_COLON, + [69287] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3345), 1, + ACTIONS(3344), 1, anon_sym_COLON, - [68661] = 2, + [69294] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3347), 1, + ACTIONS(2548), 1, anon_sym_COLON, - [68668] = 2, + [69301] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3349), 1, + ACTIONS(3346), 1, anon_sym_COLON, - [68675] = 2, + [69308] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3348), 1, + sym_identifier, + [69315] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3227), 1, + ACTIONS(2982), 1, anon_sym_RBRACE, - [68682] = 2, + [69322] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3350), 1, + sym_identifier, + [69329] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3351), 1, + ACTIONS(3352), 1, anon_sym_RBRACK, - [68689] = 2, + [69336] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2543), 1, + ACTIONS(3354), 1, anon_sym_COLON, - [68696] = 2, + [69343] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3353), 1, - anon_sym_RPAREN, - [68703] = 2, + ACTIONS(3356), 1, + anon_sym_COLON, + [69350] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3358), 1, + anon_sym_COLON, + [69357] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3355), 1, + ACTIONS(3360), 1, anon_sym_RBRACE, - [68710] = 2, + [69364] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3357), 1, - anon_sym_RBRACK, - [68717] = 2, + ACTIONS(2280), 1, + anon_sym_EQ, + [69371] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3359), 1, - sym_identifier, - [68724] = 2, + ACTIONS(2562), 1, + anon_sym_COLON, + [69378] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3362), 1, + anon_sym_COLON, + [69385] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3361), 1, + ACTIONS(3364), 1, anon_sym_COLON, - [68731] = 2, + [69392] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3363), 1, + ACTIONS(3366), 1, + sym_identifier, + [69399] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2001), 1, anon_sym_RBRACE, - [68738] = 2, + [69406] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3365), 1, + ACTIONS(3368), 1, sym_identifier, - [68745] = 2, + [69413] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3367), 1, - anon_sym_RBRACK, - [68752] = 2, + ACTIONS(3370), 1, + anon_sym_RBRACE, + [69420] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3369), 1, - anon_sym_in, - [68759] = 2, + ACTIONS(3372), 1, + sym_identifier, + [69427] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3371), 1, + ACTIONS(3374), 1, anon_sym_RPAREN, - [68766] = 2, + [69434] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3373), 1, - sym_identifier, - [68773] = 2, + ACTIONS(3376), 1, + anon_sym_in, + [69441] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2539), 1, + ACTIONS(3378), 1, anon_sym_COLON, - [68780] = 2, + [69448] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3375), 1, + ACTIONS(3380), 1, sym_identifier, - [68787] = 2, + [69455] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3377), 1, + ACTIONS(3382), 1, anon_sym_COLON, - [68794] = 2, + [69462] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3379), 1, + ACTIONS(3384), 1, anon_sym_COLON, - [68801] = 2, + [69469] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3072), 1, - anon_sym_RBRACE, - [68808] = 2, + ACTIONS(3386), 1, + anon_sym_for, + [69476] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3381), 1, + ACTIONS(3388), 1, anon_sym_COLON, - [68815] = 2, + [69483] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3383), 1, - anon_sym_RPAREN, - [68822] = 2, + ACTIONS(3104), 1, + anon_sym_in, + [69490] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3385), 1, - anon_sym_RBRACE, - [68829] = 2, + ACTIONS(2554), 1, + anon_sym_COLON, + [69497] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3387), 1, - anon_sym_RBRACE, - [68836] = 2, + ACTIONS(3085), 1, + anon_sym_in, + [69504] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3389), 1, + ACTIONS(3390), 1, anon_sym_COLON, - [68843] = 2, + [69511] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3391), 1, - anon_sym_EQ, - [68850] = 2, + ACTIONS(3392), 1, + anon_sym_RPAREN, + [69518] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3393), 1, - sym_identifier, - [68857] = 2, + ACTIONS(3394), 1, + anon_sym_COLON, + [69525] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3395), 1, - anon_sym_RBRACE, - [68864] = 2, + ACTIONS(3396), 1, + anon_sym_COLON, + [69532] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3397), 1, - anon_sym_RBRACE, - [68871] = 2, + ACTIONS(3398), 1, + anon_sym_RPAREN, + [69539] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3399), 1, - sym_identifier, - [68878] = 2, + ACTIONS(3400), 1, + anon_sym_in, + [69546] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2722), 1, - anon_sym_RBRACE, - [68885] = 2, + ACTIONS(3402), 1, + anon_sym_RPAREN, + [69553] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3007), 1, + ACTIONS(3404), 1, + anon_sym_COLON, + [69560] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3406), 1, anon_sym_RBRACK, - [68892] = 2, + [69567] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3408), 1, + anon_sym_COLON, + [69574] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3401), 1, + ACTIONS(3410), 1, anon_sym_import, - [68899] = 2, + [69581] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3403), 1, - ts_builtin_sym_end, - [68906] = 2, + ACTIONS(3412), 1, + sym_identifier, + [69588] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3405), 1, - anon_sym_RBRACK, - [68913] = 2, + ACTIONS(3414), 1, + sym_identifier, + [69595] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3074), 1, - anon_sym_in, - [68920] = 2, + ACTIONS(3416), 1, + sym_identifier, + [69602] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2337), 1, + ACTIONS(3418), 1, anon_sym_EQ, - [68927] = 2, + [69609] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3407), 1, - sym_identifier, - [68934] = 2, + ACTIONS(3420), 1, + anon_sym_RBRACE, + [69616] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2882), 1, - anon_sym_RBRACK, - [68941] = 2, + ACTIONS(3422), 1, + anon_sym_RBRACE, + [69623] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3146), 1, - anon_sym_in, - [68948] = 2, + ACTIONS(1104), 1, + anon_sym_def, + [69630] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1958), 1, - anon_sym_RBRACE, - [68955] = 2, + ACTIONS(3424), 1, + anon_sym_RPAREN, + [69637] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3409), 1, - anon_sym_RBRACE, - [68962] = 2, + ACTIONS(3426), 1, + anon_sym_RPAREN, + [69644] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3411), 1, - anon_sym_import, - [68969] = 2, + ACTIONS(3428), 1, + sym_identifier, + [69651] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3413), 1, + ACTIONS(3430), 1, anon_sym_RBRACE, - [68976] = 2, + [69658] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3415), 1, - anon_sym_COLON, - [68983] = 2, + ACTIONS(3432), 1, + anon_sym_RPAREN, + [69665] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3417), 1, + ACTIONS(3434), 1, sym_identifier, - [68990] = 2, - ACTIONS(3), 1, - sym_comment, - ACTIONS(3419), 1, - anon_sym_COLON, - [68997] = 2, + [69672] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2966), 1, + ACTIONS(3436), 1, anon_sym_RBRACK, - [69004] = 2, + [69679] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3421), 1, - anon_sym_COLON, - [69011] = 2, + ACTIONS(956), 1, + anon_sym_STAR, + [69686] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3423), 1, - anon_sym_in, - [69018] = 2, + ACTIONS(3438), 1, + anon_sym_import, + [69693] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3099), 1, - anon_sym_in, - [69025] = 2, + ACTIONS(3440), 1, + anon_sym_RBRACE, + [69700] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3425), 1, - anon_sym_COLON, - [69032] = 2, + ACTIONS(3442), 1, + anon_sym_RPAREN, + [69707] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3427), 1, - anon_sym_in, - [69039] = 2, + ACTIONS(3444), 1, + anon_sym_RPAREN, + [69714] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3429), 1, - anon_sym_RPAREN, - [69046] = 2, + ACTIONS(3025), 1, + anon_sym_RBRACK, + [69721] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3431), 1, + ACTIONS(3446), 1, anon_sym_COLON, - [69053] = 2, + [69728] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3433), 1, - anon_sym_RBRACK, - [69060] = 2, + ACTIONS(3448), 1, + anon_sym_in, + [69735] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3435), 1, + ACTIONS(3450), 1, anon_sym_RBRACE, - [69067] = 2, + [69742] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3200), 1, + anon_sym_RBRACE, + [69749] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3437), 1, + ACTIONS(3452), 1, anon_sym_RBRACK, - [69074] = 2, + [69756] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3439), 1, - anon_sym_LPAREN, - [69081] = 2, + ACTIONS(3454), 1, + anon_sym_RPAREN, + [69763] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3441), 1, - sym_identifier, - [69088] = 2, + ACTIONS(3456), 1, + anon_sym_COLON, + [69770] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3458), 1, + anon_sym_RPAREN, + [69777] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3443), 1, + ACTIONS(3460), 1, anon_sym_COLON, - [69095] = 2, + [69784] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3445), 1, - anon_sym_RBRACE, - [69102] = 2, + ACTIONS(3462), 1, + anon_sym_in, + [69791] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3447), 1, + ACTIONS(3464), 1, anon_sym_RPAREN, - [69109] = 2, + [69798] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1059), 1, - anon_sym_def, - [69116] = 2, + ACTIONS(3466), 1, + anon_sym_RBRACK, + [69805] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3449), 1, - anon_sym_RPAREN, - [69123] = 2, + ACTIONS(2746), 1, + anon_sym_RBRACE, + [69812] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3451), 1, + ACTIONS(3468), 1, anon_sym_RBRACE, - [69130] = 2, + [69819] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3453), 1, - anon_sym_COLON, - [69137] = 2, + ACTIONS(2912), 1, + anon_sym_RBRACK, + [69826] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3455), 1, - anon_sym_COLON, - [69144] = 2, + ACTIONS(3470), 1, + anon_sym_import, + [69833] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3457), 1, + ACTIONS(3472), 1, + anon_sym_RBRACK, + [69840] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3474), 1, anon_sym_COLON, - [69151] = 2, + [69847] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3459), 1, - sym_identifier, - [69158] = 2, + ACTIONS(3476), 1, + anon_sym_import, + [69854] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3142), 1, + ACTIONS(3478), 1, anon_sym_RBRACE, - [69165] = 2, + [69861] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2950), 1, - anon_sym_RBRACK, - [69172] = 2, + ACTIONS(3480), 1, + sym_identifier, + [69868] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3461), 1, - anon_sym_RPAREN, - [69179] = 2, + ACTIONS(3482), 1, + anon_sym_COLON, + [69875] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3463), 1, - sym_identifier, - [69186] = 2, + ACTIONS(3484), 1, + anon_sym_RBRACE, + [69882] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3465), 1, - sym_identifier, - [69193] = 2, + ACTIONS(3486), 1, + anon_sym_COLON, + [69889] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3467), 1, + ACTIONS(3488), 1, anon_sym_COLON, - [69200] = 2, + [69896] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3469), 1, - sym_identifier, - [69207] = 2, + ACTIONS(3490), 1, + anon_sym_COLON, + [69903] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3471), 1, + ACTIONS(3492), 1, anon_sym_RBRACE, - [69214] = 2, + [69910] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3473), 1, - anon_sym_in, - [69221] = 2, + ACTIONS(3494), 1, + anon_sym_RBRACE, + [69917] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3475), 1, - anon_sym_RPAREN, - [69228] = 2, + ACTIONS(3496), 1, + anon_sym_COLON, + [69924] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3477), 1, + ACTIONS(3498), 1, + sym_identifier, + [69931] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3500), 1, + anon_sym_COLON, + [69938] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3502), 1, anon_sym_RPAREN, - [69235] = 2, + [69945] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3479), 1, - sym_identifier, - [69242] = 2, + ACTIONS(3504), 1, + anon_sym_LPAREN, + [69952] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(985), 1, + ACTIONS(984), 1, anon_sym_STAR, - [69249] = 2, + [69959] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3481), 1, - anon_sym_RBRACE, - [69256] = 2, + ACTIONS(3506), 1, + anon_sym_RBRACK, + [69966] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3483), 1, + ACTIONS(3508), 1, anon_sym_RPAREN, - [69263] = 2, + [69973] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3154), 1, - anon_sym_in, - [69270] = 2, + ACTIONS(2725), 1, + anon_sym_RBRACE, + [69980] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3485), 1, - anon_sym_RBRACK, - [69277] = 2, + ACTIONS(3510), 1, + anon_sym_RBRACE, + [69987] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3487), 1, - anon_sym_import, - [69284] = 2, + ACTIONS(3512), 1, + anon_sym_COLON, + [69994] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3489), 1, - anon_sym_COLON, - [69291] = 2, + ACTIONS(3514), 1, + anon_sym_RBRACE, + [70001] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3491), 1, - anon_sym_COLON, - [69298] = 2, + ACTIONS(3516), 1, + sym_identifier, + [70008] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3493), 1, - anon_sym_COLON, - [69305] = 2, + ACTIONS(3518), 1, + anon_sym_in, + [70015] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3495), 1, + ACTIONS(3520), 1, sym_identifier, - [69312] = 2, + [70022] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3497), 1, + ACTIONS(3522), 1, sym_identifier, - [69319] = 2, + [70029] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3499), 1, - anon_sym_RBRACE, - [69326] = 2, + ACTIONS(3524), 1, + anon_sym_RBRACK, + [70036] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3158), 1, + ACTIONS(3168), 1, anon_sym_in, - [69333] = 2, + [70043] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1089), 1, + ACTIONS(1110), 1, anon_sym_def, - [69340] = 2, + [70050] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3501), 1, - anon_sym_RBRACE, - [69347] = 2, + ACTIONS(3526), 1, + anon_sym_in, + [70057] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3160), 1, + ACTIONS(3170), 1, anon_sym_in, - [69354] = 2, + [70064] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3503), 1, - anon_sym_in, - [69361] = 2, + ACTIONS(3528), 1, + anon_sym_RPAREN, + [70071] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3505), 1, - anon_sym_RBRACE, - [69368] = 2, + ACTIONS(3530), 1, + anon_sym_RBRACK, + [70078] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3507), 1, - anon_sym_COLON, + ACTIONS(3049), 1, + anon_sym_RBRACE, }; static const uint32_t ts_small_parse_table_map[] = { [SMALL_STATE(156)] = 0, - [SMALL_STATE(157)] = 110, - [SMALL_STATE(158)] = 232, - [SMALL_STATE(159)] = 342, - [SMALL_STATE(160)] = 466, - [SMALL_STATE(161)] = 588, - [SMALL_STATE(162)] = 714, - [SMALL_STATE(163)] = 838, - [SMALL_STATE(164)] = 960, - [SMALL_STATE(165)] = 1081, - [SMALL_STATE(166)] = 1202, - [SMALL_STATE(167)] = 1323, - [SMALL_STATE(168)] = 1444, - [SMALL_STATE(169)] = 1558, - [SMALL_STATE(170)] = 1672, - [SMALL_STATE(171)] = 1781, - [SMALL_STATE(172)] = 1890, - [SMALL_STATE(173)] = 1999, - [SMALL_STATE(174)] = 2109, - [SMALL_STATE(175)] = 2221, - [SMALL_STATE(176)] = 2329, - [SMALL_STATE(177)] = 2441, - [SMALL_STATE(178)] = 2553, - [SMALL_STATE(179)] = 2661, - [SMALL_STATE(180)] = 2769, - [SMALL_STATE(181)] = 2877, - [SMALL_STATE(182)] = 2987, - [SMALL_STATE(183)] = 3099, - [SMALL_STATE(184)] = 3213, - [SMALL_STATE(185)] = 3325, - [SMALL_STATE(186)] = 3433, - [SMALL_STATE(187)] = 3541, - [SMALL_STATE(188)] = 3653, - [SMALL_STATE(189)] = 3765, - [SMALL_STATE(190)] = 3874, - [SMALL_STATE(191)] = 3979, - [SMALL_STATE(192)] = 4088, - [SMALL_STATE(193)] = 4193, - [SMALL_STATE(194)] = 4302, - [SMALL_STATE(195)] = 4413, - [SMALL_STATE(196)] = 4522, - [SMALL_STATE(197)] = 4631, - [SMALL_STATE(198)] = 4740, - [SMALL_STATE(199)] = 4849, - [SMALL_STATE(200)] = 4962, - [SMALL_STATE(201)] = 5071, - [SMALL_STATE(202)] = 5180, - [SMALL_STATE(203)] = 5289, - [SMALL_STATE(204)] = 5398, - [SMALL_STATE(205)] = 5503, - [SMALL_STATE(206)] = 5608, - [SMALL_STATE(207)] = 5719, - [SMALL_STATE(208)] = 5828, - [SMALL_STATE(209)] = 5939, - [SMALL_STATE(210)] = 6048, - [SMALL_STATE(211)] = 6161, - [SMALL_STATE(212)] = 6274, - [SMALL_STATE(213)] = 6383, - [SMALL_STATE(214)] = 6492, - [SMALL_STATE(215)] = 6601, - [SMALL_STATE(216)] = 6710, - [SMALL_STATE(217)] = 6819, - [SMALL_STATE(218)] = 6928, - [SMALL_STATE(219)] = 7039, - [SMALL_STATE(220)] = 7148, - [SMALL_STATE(221)] = 7257, - [SMALL_STATE(222)] = 7366, - [SMALL_STATE(223)] = 7475, - [SMALL_STATE(224)] = 7584, - [SMALL_STATE(225)] = 7693, - [SMALL_STATE(226)] = 7802, - [SMALL_STATE(227)] = 7913, - [SMALL_STATE(228)] = 8022, - [SMALL_STATE(229)] = 8131, - [SMALL_STATE(230)] = 8242, - [SMALL_STATE(231)] = 8351, - [SMALL_STATE(232)] = 8460, - [SMALL_STATE(233)] = 8566, - [SMALL_STATE(234)] = 8672, - [SMALL_STATE(235)] = 8778, - [SMALL_STATE(236)] = 8884, - [SMALL_STATE(237)] = 8990, - [SMALL_STATE(238)] = 9096, - [SMALL_STATE(239)] = 9202, - [SMALL_STATE(240)] = 9296, - [SMALL_STATE(241)] = 9402, - [SMALL_STATE(242)] = 9508, - [SMALL_STATE(243)] = 9611, - [SMALL_STATE(244)] = 9716, - [SMALL_STATE(245)] = 9821, - [SMALL_STATE(246)] = 9924, - [SMALL_STATE(247)] = 10029, - [SMALL_STATE(248)] = 10134, - [SMALL_STATE(249)] = 10239, - [SMALL_STATE(250)] = 10341, - [SMALL_STATE(251)] = 10443, - [SMALL_STATE(252)] = 10545, - [SMALL_STATE(253)] = 10647, - [SMALL_STATE(254)] = 10749, - [SMALL_STATE(255)] = 10851, - [SMALL_STATE(256)] = 10953, - [SMALL_STATE(257)] = 11055, - [SMALL_STATE(258)] = 11157, - [SMALL_STATE(259)] = 11259, - [SMALL_STATE(260)] = 11361, - [SMALL_STATE(261)] = 11463, - [SMALL_STATE(262)] = 11565, - [SMALL_STATE(263)] = 11667, - [SMALL_STATE(264)] = 11769, - [SMALL_STATE(265)] = 11870, - [SMALL_STATE(266)] = 11971, - [SMALL_STATE(267)] = 12044, - [SMALL_STATE(268)] = 12117, - [SMALL_STATE(269)] = 12190, - [SMALL_STATE(270)] = 12289, - [SMALL_STATE(271)] = 12390, - [SMALL_STATE(272)] = 12491, - [SMALL_STATE(273)] = 12592, - [SMALL_STATE(274)] = 12693, - [SMALL_STATE(275)] = 12792, - [SMALL_STATE(276)] = 12865, - [SMALL_STATE(277)] = 12966, - [SMALL_STATE(278)] = 13067, - [SMALL_STATE(279)] = 13168, - [SMALL_STATE(280)] = 13241, - [SMALL_STATE(281)] = 13314, - [SMALL_STATE(282)] = 13415, - [SMALL_STATE(283)] = 13514, - [SMALL_STATE(284)] = 13587, - [SMALL_STATE(285)] = 13688, - [SMALL_STATE(286)] = 13789, - [SMALL_STATE(287)] = 13890, - [SMALL_STATE(288)] = 13963, - [SMALL_STATE(289)] = 14061, - [SMALL_STATE(290)] = 14157, - [SMALL_STATE(291)] = 14253, - [SMALL_STATE(292)] = 14349, - [SMALL_STATE(293)] = 14445, - [SMALL_STATE(294)] = 14541, - [SMALL_STATE(295)] = 14601, - [SMALL_STATE(296)] = 14699, - [SMALL_STATE(297)] = 14795, - [SMALL_STATE(298)] = 14891, - [SMALL_STATE(299)] = 14989, - [SMALL_STATE(300)] = 15087, - [SMALL_STATE(301)] = 15183, - [SMALL_STATE(302)] = 15279, - [SMALL_STATE(303)] = 15375, - [SMALL_STATE(304)] = 15471, - [SMALL_STATE(305)] = 15569, - [SMALL_STATE(306)] = 15667, - [SMALL_STATE(307)] = 15763, - [SMALL_STATE(308)] = 15823, - [SMALL_STATE(309)] = 15921, - [SMALL_STATE(310)] = 16017, - [SMALL_STATE(311)] = 16115, - [SMALL_STATE(312)] = 16213, - [SMALL_STATE(313)] = 16282, - [SMALL_STATE(314)] = 16341, - [SMALL_STATE(315)] = 16400, - [SMALL_STATE(316)] = 16495, - [SMALL_STATE(317)] = 16564, - [SMALL_STATE(318)] = 16623, - [SMALL_STATE(319)] = 16682, - [SMALL_STATE(320)] = 16751, - [SMALL_STATE(321)] = 16810, - [SMALL_STATE(322)] = 16879, - [SMALL_STATE(323)] = 16948, - [SMALL_STATE(324)] = 17043, - [SMALL_STATE(325)] = 17116, - [SMALL_STATE(326)] = 17175, - [SMALL_STATE(327)] = 17244, - [SMALL_STATE(328)] = 17313, - [SMALL_STATE(329)] = 17376, - [SMALL_STATE(330)] = 17439, - [SMALL_STATE(331)] = 17502, - [SMALL_STATE(332)] = 17565, - [SMALL_STATE(333)] = 17624, - [SMALL_STATE(334)] = 17693, - [SMALL_STATE(335)] = 17752, - [SMALL_STATE(336)] = 17811, - [SMALL_STATE(337)] = 17870, - [SMALL_STATE(338)] = 17965, - [SMALL_STATE(339)] = 18038, - [SMALL_STATE(340)] = 18130, - [SMALL_STATE(341)] = 18222, - [SMALL_STATE(342)] = 18314, - [SMALL_STATE(343)] = 18406, - [SMALL_STATE(344)] = 18498, - [SMALL_STATE(345)] = 18590, - [SMALL_STATE(346)] = 18682, - [SMALL_STATE(347)] = 18774, - [SMALL_STATE(348)] = 18866, - [SMALL_STATE(349)] = 18958, - [SMALL_STATE(350)] = 19050, - [SMALL_STATE(351)] = 19142, - [SMALL_STATE(352)] = 19234, - [SMALL_STATE(353)] = 19326, - [SMALL_STATE(354)] = 19418, - [SMALL_STATE(355)] = 19482, - [SMALL_STATE(356)] = 19574, - [SMALL_STATE(357)] = 19666, - [SMALL_STATE(358)] = 19758, - [SMALL_STATE(359)] = 19850, - [SMALL_STATE(360)] = 19942, - [SMALL_STATE(361)] = 20034, - [SMALL_STATE(362)] = 20126, - [SMALL_STATE(363)] = 20218, - [SMALL_STATE(364)] = 20310, - [SMALL_STATE(365)] = 20402, - [SMALL_STATE(366)] = 20494, - [SMALL_STATE(367)] = 20586, - [SMALL_STATE(368)] = 20656, - [SMALL_STATE(369)] = 20748, - [SMALL_STATE(370)] = 20840, - [SMALL_STATE(371)] = 20932, - [SMALL_STATE(372)] = 21024, - [SMALL_STATE(373)] = 21116, - [SMALL_STATE(374)] = 21208, - [SMALL_STATE(375)] = 21300, - [SMALL_STATE(376)] = 21392, - [SMALL_STATE(377)] = 21484, - [SMALL_STATE(378)] = 21576, - [SMALL_STATE(379)] = 21668, - [SMALL_STATE(380)] = 21760, - [SMALL_STATE(381)] = 21852, - [SMALL_STATE(382)] = 21944, - [SMALL_STATE(383)] = 22036, - [SMALL_STATE(384)] = 22128, - [SMALL_STATE(385)] = 22222, - [SMALL_STATE(386)] = 22314, - [SMALL_STATE(387)] = 22406, - [SMALL_STATE(388)] = 22498, - [SMALL_STATE(389)] = 22590, - [SMALL_STATE(390)] = 22682, - [SMALL_STATE(391)] = 22774, - [SMALL_STATE(392)] = 22866, - [SMALL_STATE(393)] = 22958, - [SMALL_STATE(394)] = 23050, - [SMALL_STATE(395)] = 23142, - [SMALL_STATE(396)] = 23234, - [SMALL_STATE(397)] = 23326, - [SMALL_STATE(398)] = 23418, - [SMALL_STATE(399)] = 23510, - [SMALL_STATE(400)] = 23574, - [SMALL_STATE(401)] = 23666, - [SMALL_STATE(402)] = 23758, - [SMALL_STATE(403)] = 23850, - [SMALL_STATE(404)] = 23942, - [SMALL_STATE(405)] = 24034, - [SMALL_STATE(406)] = 24126, - [SMALL_STATE(407)] = 24218, - [SMALL_STATE(408)] = 24310, - [SMALL_STATE(409)] = 24402, - [SMALL_STATE(410)] = 24494, - [SMALL_STATE(411)] = 24586, - [SMALL_STATE(412)] = 24678, - [SMALL_STATE(413)] = 24770, - [SMALL_STATE(414)] = 24862, - [SMALL_STATE(415)] = 24954, - [SMALL_STATE(416)] = 25046, - [SMALL_STATE(417)] = 25138, - [SMALL_STATE(418)] = 25230, - [SMALL_STATE(419)] = 25322, - [SMALL_STATE(420)] = 25414, - [SMALL_STATE(421)] = 25506, - [SMALL_STATE(422)] = 25598, - [SMALL_STATE(423)] = 25690, - [SMALL_STATE(424)] = 25782, - [SMALL_STATE(425)] = 25874, - [SMALL_STATE(426)] = 25966, - [SMALL_STATE(427)] = 26058, - [SMALL_STATE(428)] = 26150, - [SMALL_STATE(429)] = 26242, - [SMALL_STATE(430)] = 26334, - [SMALL_STATE(431)] = 26426, - [SMALL_STATE(432)] = 26518, - [SMALL_STATE(433)] = 26610, - [SMALL_STATE(434)] = 26702, - [SMALL_STATE(435)] = 26794, - [SMALL_STATE(436)] = 26886, - [SMALL_STATE(437)] = 26943, - [SMALL_STATE(438)] = 27000, - [SMALL_STATE(439)] = 27057, - [SMALL_STATE(440)] = 27114, - [SMALL_STATE(441)] = 27171, - [SMALL_STATE(442)] = 27228, - [SMALL_STATE(443)] = 27285, - [SMALL_STATE(444)] = 27342, - [SMALL_STATE(445)] = 27399, - [SMALL_STATE(446)] = 27456, - [SMALL_STATE(447)] = 27513, - [SMALL_STATE(448)] = 27570, - [SMALL_STATE(449)] = 27627, - [SMALL_STATE(450)] = 27684, - [SMALL_STATE(451)] = 27745, - [SMALL_STATE(452)] = 27802, - [SMALL_STATE(453)] = 27863, - [SMALL_STATE(454)] = 27924, - [SMALL_STATE(455)] = 27981, - [SMALL_STATE(456)] = 28038, - [SMALL_STATE(457)] = 28095, - [SMALL_STATE(458)] = 28152, - [SMALL_STATE(459)] = 28219, - [SMALL_STATE(460)] = 28276, - [SMALL_STATE(461)] = 28337, - [SMALL_STATE(462)] = 28429, - [SMALL_STATE(463)] = 28493, - [SMALL_STATE(464)] = 28549, - [SMALL_STATE(465)] = 28605, - [SMALL_STATE(466)] = 28669, - [SMALL_STATE(467)] = 28729, - [SMALL_STATE(468)] = 28821, - [SMALL_STATE(469)] = 28881, - [SMALL_STATE(470)] = 28941, - [SMALL_STATE(471)] = 29001, - [SMALL_STATE(472)] = 29057, - [SMALL_STATE(473)] = 29117, - [SMALL_STATE(474)] = 29173, - [SMALL_STATE(475)] = 29237, - [SMALL_STATE(476)] = 29293, - [SMALL_STATE(477)] = 29353, - [SMALL_STATE(478)] = 29413, - [SMALL_STATE(479)] = 29507, - [SMALL_STATE(480)] = 29567, - [SMALL_STATE(481)] = 29627, - [SMALL_STATE(482)] = 29687, - [SMALL_STATE(483)] = 29747, - [SMALL_STATE(484)] = 29803, - [SMALL_STATE(485)] = 29863, - [SMALL_STATE(486)] = 29923, - [SMALL_STATE(487)] = 29979, - [SMALL_STATE(488)] = 30043, - [SMALL_STATE(489)] = 30099, - [SMALL_STATE(490)] = 30159, - [SMALL_STATE(491)] = 30219, - [SMALL_STATE(492)] = 30279, - [SMALL_STATE(493)] = 30334, - [SMALL_STATE(494)] = 30425, - [SMALL_STATE(495)] = 30486, - [SMALL_STATE(496)] = 30541, - [SMALL_STATE(497)] = 30596, - [SMALL_STATE(498)] = 30687, - [SMALL_STATE(499)] = 30742, - [SMALL_STATE(500)] = 30797, - [SMALL_STATE(501)] = 30852, - [SMALL_STATE(502)] = 30907, - [SMALL_STATE(503)] = 30968, - [SMALL_STATE(504)] = 31023, - [SMALL_STATE(505)] = 31078, - [SMALL_STATE(506)] = 31133, - [SMALL_STATE(507)] = 31188, - [SMALL_STATE(508)] = 31243, - [SMALL_STATE(509)] = 31334, - [SMALL_STATE(510)] = 31395, - [SMALL_STATE(511)] = 31486, - [SMALL_STATE(512)] = 31577, - [SMALL_STATE(513)] = 31668, - [SMALL_STATE(514)] = 31729, - [SMALL_STATE(515)] = 31783, - [SMALL_STATE(516)] = 31837, - [SMALL_STATE(517)] = 31891, - [SMALL_STATE(518)] = 31945, - [SMALL_STATE(519)] = 31999, - [SMALL_STATE(520)] = 32053, - [SMALL_STATE(521)] = 32107, - [SMALL_STATE(522)] = 32161, - [SMALL_STATE(523)] = 32215, - [SMALL_STATE(524)] = 32269, - [SMALL_STATE(525)] = 32323, - [SMALL_STATE(526)] = 32377, - [SMALL_STATE(527)] = 32431, - [SMALL_STATE(528)] = 32485, - [SMALL_STATE(529)] = 32539, - [SMALL_STATE(530)] = 32593, - [SMALL_STATE(531)] = 32647, - [SMALL_STATE(532)] = 32701, - [SMALL_STATE(533)] = 32755, - [SMALL_STATE(534)] = 32809, - [SMALL_STATE(535)] = 32863, - [SMALL_STATE(536)] = 32917, - [SMALL_STATE(537)] = 32971, - [SMALL_STATE(538)] = 33025, - [SMALL_STATE(539)] = 33079, - [SMALL_STATE(540)] = 33133, - [SMALL_STATE(541)] = 33187, - [SMALL_STATE(542)] = 33241, - [SMALL_STATE(543)] = 33295, - [SMALL_STATE(544)] = 33349, - [SMALL_STATE(545)] = 33403, - [SMALL_STATE(546)] = 33457, - [SMALL_STATE(547)] = 33511, - [SMALL_STATE(548)] = 33565, - [SMALL_STATE(549)] = 33619, - [SMALL_STATE(550)] = 33673, - [SMALL_STATE(551)] = 33727, - [SMALL_STATE(552)] = 33815, - [SMALL_STATE(553)] = 33869, - [SMALL_STATE(554)] = 33923, - [SMALL_STATE(555)] = 33977, - [SMALL_STATE(556)] = 34031, - [SMALL_STATE(557)] = 34085, - [SMALL_STATE(558)] = 34139, - [SMALL_STATE(559)] = 34193, - [SMALL_STATE(560)] = 34247, - [SMALL_STATE(561)] = 34301, - [SMALL_STATE(562)] = 34355, - [SMALL_STATE(563)] = 34409, - [SMALL_STATE(564)] = 34463, - [SMALL_STATE(565)] = 34517, - [SMALL_STATE(566)] = 34571, - [SMALL_STATE(567)] = 34625, - [SMALL_STATE(568)] = 34679, - [SMALL_STATE(569)] = 34733, - [SMALL_STATE(570)] = 34787, - [SMALL_STATE(571)] = 34841, - [SMALL_STATE(572)] = 34895, - [SMALL_STATE(573)] = 34949, - [SMALL_STATE(574)] = 35003, - [SMALL_STATE(575)] = 35057, - [SMALL_STATE(576)] = 35111, - [SMALL_STATE(577)] = 35165, - [SMALL_STATE(578)] = 35219, - [SMALL_STATE(579)] = 35273, - [SMALL_STATE(580)] = 35327, - [SMALL_STATE(581)] = 35381, - [SMALL_STATE(582)] = 35435, - [SMALL_STATE(583)] = 35489, - [SMALL_STATE(584)] = 35543, - [SMALL_STATE(585)] = 35597, - [SMALL_STATE(586)] = 35651, - [SMALL_STATE(587)] = 35705, - [SMALL_STATE(588)] = 35759, - [SMALL_STATE(589)] = 35813, - [SMALL_STATE(590)] = 35867, - [SMALL_STATE(591)] = 35921, - [SMALL_STATE(592)] = 35975, - [SMALL_STATE(593)] = 36029, - [SMALL_STATE(594)] = 36083, - [SMALL_STATE(595)] = 36137, - [SMALL_STATE(596)] = 36191, - [SMALL_STATE(597)] = 36245, - [SMALL_STATE(598)] = 36299, - [SMALL_STATE(599)] = 36353, - [SMALL_STATE(600)] = 36407, - [SMALL_STATE(601)] = 36461, - [SMALL_STATE(602)] = 36515, - [SMALL_STATE(603)] = 36569, - [SMALL_STATE(604)] = 36623, - [SMALL_STATE(605)] = 36677, - [SMALL_STATE(606)] = 36731, - [SMALL_STATE(607)] = 36785, - [SMALL_STATE(608)] = 36839, - [SMALL_STATE(609)] = 36893, - [SMALL_STATE(610)] = 36947, - [SMALL_STATE(611)] = 37001, - [SMALL_STATE(612)] = 37055, - [SMALL_STATE(613)] = 37143, - [SMALL_STATE(614)] = 37197, - [SMALL_STATE(615)] = 37279, - [SMALL_STATE(616)] = 37355, - [SMALL_STATE(617)] = 37409, - [SMALL_STATE(618)] = 37463, - [SMALL_STATE(619)] = 37539, - [SMALL_STATE(620)] = 37593, - [SMALL_STATE(621)] = 37647, - [SMALL_STATE(622)] = 37701, - [SMALL_STATE(623)] = 37777, - [SMALL_STATE(624)] = 37853, - [SMALL_STATE(625)] = 37907, - [SMALL_STATE(626)] = 37983, - [SMALL_STATE(627)] = 38059, - [SMALL_STATE(628)] = 38132, - [SMALL_STATE(629)] = 38205, - [SMALL_STATE(630)] = 38278, - [SMALL_STATE(631)] = 38351, - [SMALL_STATE(632)] = 38424, - [SMALL_STATE(633)] = 38497, - [SMALL_STATE(634)] = 38570, - [SMALL_STATE(635)] = 38643, - [SMALL_STATE(636)] = 38716, - [SMALL_STATE(637)] = 38789, - [SMALL_STATE(638)] = 38862, - [SMALL_STATE(639)] = 38935, - [SMALL_STATE(640)] = 39008, - [SMALL_STATE(641)] = 39081, - [SMALL_STATE(642)] = 39154, - [SMALL_STATE(643)] = 39227, - [SMALL_STATE(644)] = 39300, - [SMALL_STATE(645)] = 39373, - [SMALL_STATE(646)] = 39446, - [SMALL_STATE(647)] = 39519, - [SMALL_STATE(648)] = 39592, - [SMALL_STATE(649)] = 39665, - [SMALL_STATE(650)] = 39738, - [SMALL_STATE(651)] = 39811, - [SMALL_STATE(652)] = 39884, - [SMALL_STATE(653)] = 39957, - [SMALL_STATE(654)] = 40030, - [SMALL_STATE(655)] = 40103, - [SMALL_STATE(656)] = 40176, - [SMALL_STATE(657)] = 40249, - [SMALL_STATE(658)] = 40322, - [SMALL_STATE(659)] = 40395, - [SMALL_STATE(660)] = 40468, - [SMALL_STATE(661)] = 40541, - [SMALL_STATE(662)] = 40614, - [SMALL_STATE(663)] = 40691, - [SMALL_STATE(664)] = 40764, - [SMALL_STATE(665)] = 40837, - [SMALL_STATE(666)] = 40910, - [SMALL_STATE(667)] = 40983, - [SMALL_STATE(668)] = 41056, - [SMALL_STATE(669)] = 41129, - [SMALL_STATE(670)] = 41202, - [SMALL_STATE(671)] = 41275, - [SMALL_STATE(672)] = 41348, - [SMALL_STATE(673)] = 41421, - [SMALL_STATE(674)] = 41494, - [SMALL_STATE(675)] = 41567, - [SMALL_STATE(676)] = 41640, - [SMALL_STATE(677)] = 41713, - [SMALL_STATE(678)] = 41786, - [SMALL_STATE(679)] = 41863, - [SMALL_STATE(680)] = 41936, - [SMALL_STATE(681)] = 42009, - [SMALL_STATE(682)] = 42082, - [SMALL_STATE(683)] = 42155, - [SMALL_STATE(684)] = 42228, - [SMALL_STATE(685)] = 42301, - [SMALL_STATE(686)] = 42374, - [SMALL_STATE(687)] = 42447, - [SMALL_STATE(688)] = 42520, - [SMALL_STATE(689)] = 42593, - [SMALL_STATE(690)] = 42666, - [SMALL_STATE(691)] = 42739, - [SMALL_STATE(692)] = 42812, - [SMALL_STATE(693)] = 42885, - [SMALL_STATE(694)] = 42958, - [SMALL_STATE(695)] = 43031, - [SMALL_STATE(696)] = 43079, - [SMALL_STATE(697)] = 43127, - [SMALL_STATE(698)] = 43175, - [SMALL_STATE(699)] = 43223, - [SMALL_STATE(700)] = 43270, - [SMALL_STATE(701)] = 43317, - [SMALL_STATE(702)] = 43364, - [SMALL_STATE(703)] = 43411, - [SMALL_STATE(704)] = 43458, - [SMALL_STATE(705)] = 43505, - [SMALL_STATE(706)] = 43552, - [SMALL_STATE(707)] = 43599, - [SMALL_STATE(708)] = 43646, - [SMALL_STATE(709)] = 43693, - [SMALL_STATE(710)] = 43740, - [SMALL_STATE(711)] = 43787, - [SMALL_STATE(712)] = 43834, - [SMALL_STATE(713)] = 43881, - [SMALL_STATE(714)] = 43928, - [SMALL_STATE(715)] = 43975, - [SMALL_STATE(716)] = 44022, - [SMALL_STATE(717)] = 44069, - [SMALL_STATE(718)] = 44116, - [SMALL_STATE(719)] = 44163, - [SMALL_STATE(720)] = 44244, - [SMALL_STATE(721)] = 44291, - [SMALL_STATE(722)] = 44338, - [SMALL_STATE(723)] = 44385, - [SMALL_STATE(724)] = 44432, - [SMALL_STATE(725)] = 44479, - [SMALL_STATE(726)] = 44560, - [SMALL_STATE(727)] = 44607, - [SMALL_STATE(728)] = 44654, - [SMALL_STATE(729)] = 44701, - [SMALL_STATE(730)] = 44748, - [SMALL_STATE(731)] = 44795, - [SMALL_STATE(732)] = 44842, - [SMALL_STATE(733)] = 44889, - [SMALL_STATE(734)] = 44936, - [SMALL_STATE(735)] = 44996, - [SMALL_STATE(736)] = 45052, - [SMALL_STATE(737)] = 45108, - [SMALL_STATE(738)] = 45170, - [SMALL_STATE(739)] = 45240, - [SMALL_STATE(740)] = 45308, - [SMALL_STATE(741)] = 45368, - [SMALL_STATE(742)] = 45424, - [SMALL_STATE(743)] = 45490, - [SMALL_STATE(744)] = 45554, - [SMALL_STATE(745)] = 45604, - [SMALL_STATE(746)] = 45654, - [SMALL_STATE(747)] = 45704, - [SMALL_STATE(748)] = 45754, - [SMALL_STATE(749)] = 45824, - [SMALL_STATE(750)] = 45894, - [SMALL_STATE(751)] = 45950, - [SMALL_STATE(752)] = 46012, - [SMALL_STATE(753)] = 46082, - [SMALL_STATE(754)] = 46150, - [SMALL_STATE(755)] = 46206, - [SMALL_STATE(756)] = 46272, - [SMALL_STATE(757)] = 46336, - [SMALL_STATE(758)] = 46406, - [SMALL_STATE(759)] = 46476, - [SMALL_STATE(760)] = 46532, - [SMALL_STATE(761)] = 46588, - [SMALL_STATE(762)] = 46644, - [SMALL_STATE(763)] = 46693, - [SMALL_STATE(764)] = 46742, - [SMALL_STATE(765)] = 46787, - [SMALL_STATE(766)] = 46836, - [SMALL_STATE(767)] = 46915, - [SMALL_STATE(768)] = 46964, - [SMALL_STATE(769)] = 47013, - [SMALL_STATE(770)] = 47062, - [SMALL_STATE(771)] = 47111, - [SMALL_STATE(772)] = 47160, - [SMALL_STATE(773)] = 47237, - [SMALL_STATE(774)] = 47284, - [SMALL_STATE(775)] = 47331, - [SMALL_STATE(776)] = 47380, - [SMALL_STATE(777)] = 47429, - [SMALL_STATE(778)] = 47474, - [SMALL_STATE(779)] = 47523, - [SMALL_STATE(780)] = 47602, - [SMALL_STATE(781)] = 47649, - [SMALL_STATE(782)] = 47696, - [SMALL_STATE(783)] = 47745, - [SMALL_STATE(784)] = 47803, - [SMALL_STATE(785)] = 47857, - [SMALL_STATE(786)] = 47911, - [SMALL_STATE(787)] = 47965, - [SMALL_STATE(788)] = 48025, - [SMALL_STATE(789)] = 48093, - [SMALL_STATE(790)] = 48159, - [SMALL_STATE(791)] = 48213, - [SMALL_STATE(792)] = 48267, - [SMALL_STATE(793)] = 48331, - [SMALL_STATE(794)] = 48393, - [SMALL_STATE(795)] = 48441, - [SMALL_STATE(796)] = 48489, - [SMALL_STATE(797)] = 48543, - [SMALL_STATE(798)] = 48611, - [SMALL_STATE(799)] = 48679, - [SMALL_STATE(800)] = 48739, - [SMALL_STATE(801)] = 48807, - [SMALL_STATE(802)] = 48873, - [SMALL_STATE(803)] = 48931, - [SMALL_STATE(804)] = 48985, - [SMALL_STATE(805)] = 49049, - [SMALL_STATE(806)] = 49111, - [SMALL_STATE(807)] = 49155, - [SMALL_STATE(808)] = 49199, - [SMALL_STATE(809)] = 49243, - [SMALL_STATE(810)] = 49287, - [SMALL_STATE(811)] = 49341, - [SMALL_STATE(812)] = 49395, - [SMALL_STATE(813)] = 49449, - [SMALL_STATE(814)] = 49509, - [SMALL_STATE(815)] = 49577, - [SMALL_STATE(816)] = 49643, - [SMALL_STATE(817)] = 49701, - [SMALL_STATE(818)] = 49755, - [SMALL_STATE(819)] = 49819, - [SMALL_STATE(820)] = 49881, - [SMALL_STATE(821)] = 49949, - [SMALL_STATE(822)] = 50017, - [SMALL_STATE(823)] = 50093, - [SMALL_STATE(824)] = 50161, - [SMALL_STATE(825)] = 50229, - [SMALL_STATE(826)] = 50283, - [SMALL_STATE(827)] = 50328, - [SMALL_STATE(828)] = 50371, - [SMALL_STATE(829)] = 50424, - [SMALL_STATE(830)] = 50483, - [SMALL_STATE(831)] = 50526, - [SMALL_STATE(832)] = 50593, - [SMALL_STATE(833)] = 50658, - [SMALL_STATE(834)] = 50715, - [SMALL_STATE(835)] = 50760, - [SMALL_STATE(836)] = 50813, - [SMALL_STATE(837)] = 50876, - [SMALL_STATE(838)] = 50937, - [SMALL_STATE(839)] = 50982, - [SMALL_STATE(840)] = 51029, - [SMALL_STATE(841)] = 51074, - [SMALL_STATE(842)] = 51117, - [SMALL_STATE(843)] = 51162, - [SMALL_STATE(844)] = 51229, - [SMALL_STATE(845)] = 51296, - [SMALL_STATE(846)] = 51349, - [SMALL_STATE(847)] = 51430, - [SMALL_STATE(848)] = 51473, - [SMALL_STATE(849)] = 51526, - [SMALL_STATE(850)] = 51571, - [SMALL_STATE(851)] = 51614, - [SMALL_STATE(852)] = 51657, - [SMALL_STATE(853)] = 51704, - [SMALL_STATE(854)] = 51749, - [SMALL_STATE(855)] = 51830, - [SMALL_STATE(856)] = 51875, - [SMALL_STATE(857)] = 51956, - [SMALL_STATE(858)] = 52001, - [SMALL_STATE(859)] = 52048, - [SMALL_STATE(860)] = 52091, - [SMALL_STATE(861)] = 52136, - [SMALL_STATE(862)] = 52179, - [SMALL_STATE(863)] = 52260, - [SMALL_STATE(864)] = 52305, - [SMALL_STATE(865)] = 52352, - [SMALL_STATE(866)] = 52397, - [SMALL_STATE(867)] = 52439, - [SMALL_STATE(868)] = 52481, - [SMALL_STATE(869)] = 52523, - [SMALL_STATE(870)] = 52565, - [SMALL_STATE(871)] = 52607, - [SMALL_STATE(872)] = 52649, - [SMALL_STATE(873)] = 52691, - [SMALL_STATE(874)] = 52733, - [SMALL_STATE(875)] = 52775, - [SMALL_STATE(876)] = 52817, - [SMALL_STATE(877)] = 52859, - [SMALL_STATE(878)] = 52901, - [SMALL_STATE(879)] = 52943, - [SMALL_STATE(880)] = 52985, - [SMALL_STATE(881)] = 53027, - [SMALL_STATE(882)] = 53069, - [SMALL_STATE(883)] = 53111, - [SMALL_STATE(884)] = 53153, - [SMALL_STATE(885)] = 53195, - [SMALL_STATE(886)] = 53237, - [SMALL_STATE(887)] = 53279, - [SMALL_STATE(888)] = 53321, - [SMALL_STATE(889)] = 53363, - [SMALL_STATE(890)] = 53405, - [SMALL_STATE(891)] = 53447, - [SMALL_STATE(892)] = 53489, - [SMALL_STATE(893)] = 53531, - [SMALL_STATE(894)] = 53573, - [SMALL_STATE(895)] = 53615, - [SMALL_STATE(896)] = 53657, - [SMALL_STATE(897)] = 53699, - [SMALL_STATE(898)] = 53741, - [SMALL_STATE(899)] = 53783, - [SMALL_STATE(900)] = 53825, - [SMALL_STATE(901)] = 53867, - [SMALL_STATE(902)] = 53909, - [SMALL_STATE(903)] = 53951, - [SMALL_STATE(904)] = 53993, - [SMALL_STATE(905)] = 54035, - [SMALL_STATE(906)] = 54077, - [SMALL_STATE(907)] = 54119, - [SMALL_STATE(908)] = 54161, - [SMALL_STATE(909)] = 54203, - [SMALL_STATE(910)] = 54245, - [SMALL_STATE(911)] = 54287, - [SMALL_STATE(912)] = 54331, - [SMALL_STATE(913)] = 54375, - [SMALL_STATE(914)] = 54417, - [SMALL_STATE(915)] = 54459, - [SMALL_STATE(916)] = 54503, - [SMALL_STATE(917)] = 54545, - [SMALL_STATE(918)] = 54587, - [SMALL_STATE(919)] = 54629, - [SMALL_STATE(920)] = 54673, - [SMALL_STATE(921)] = 54715, - [SMALL_STATE(922)] = 54757, - [SMALL_STATE(923)] = 54799, - [SMALL_STATE(924)] = 54841, - [SMALL_STATE(925)] = 54883, - [SMALL_STATE(926)] = 54927, - [SMALL_STATE(927)] = 54969, - [SMALL_STATE(928)] = 55047, - [SMALL_STATE(929)] = 55125, - [SMALL_STATE(930)] = 55167, - [SMALL_STATE(931)] = 55209, - [SMALL_STATE(932)] = 55251, - [SMALL_STATE(933)] = 55331, - [SMALL_STATE(934)] = 55409, - [SMALL_STATE(935)] = 55487, - [SMALL_STATE(936)] = 55565, - [SMALL_STATE(937)] = 55607, - [SMALL_STATE(938)] = 55649, - [SMALL_STATE(939)] = 55691, - [SMALL_STATE(940)] = 55733, - [SMALL_STATE(941)] = 55775, - [SMALL_STATE(942)] = 55817, - [SMALL_STATE(943)] = 55859, - [SMALL_STATE(944)] = 55901, - [SMALL_STATE(945)] = 55943, - [SMALL_STATE(946)] = 55984, - [SMALL_STATE(947)] = 56025, - [SMALL_STATE(948)] = 56066, - [SMALL_STATE(949)] = 56107, - [SMALL_STATE(950)] = 56148, - [SMALL_STATE(951)] = 56189, - [SMALL_STATE(952)] = 56230, - [SMALL_STATE(953)] = 56271, - [SMALL_STATE(954)] = 56312, - [SMALL_STATE(955)] = 56353, - [SMALL_STATE(956)] = 56394, - [SMALL_STATE(957)] = 56435, - [SMALL_STATE(958)] = 56476, - [SMALL_STATE(959)] = 56517, - [SMALL_STATE(960)] = 56558, - [SMALL_STATE(961)] = 56599, - [SMALL_STATE(962)] = 56640, - [SMALL_STATE(963)] = 56681, - [SMALL_STATE(964)] = 56722, - [SMALL_STATE(965)] = 56801, - [SMALL_STATE(966)] = 56842, - [SMALL_STATE(967)] = 56883, - [SMALL_STATE(968)] = 56924, - [SMALL_STATE(969)] = 56965, - [SMALL_STATE(970)] = 57006, - [SMALL_STATE(971)] = 57047, - [SMALL_STATE(972)] = 57088, - [SMALL_STATE(973)] = 57133, - [SMALL_STATE(974)] = 57178, - [SMALL_STATE(975)] = 57219, - [SMALL_STATE(976)] = 57260, - [SMALL_STATE(977)] = 57301, - [SMALL_STATE(978)] = 57342, - [SMALL_STATE(979)] = 57383, - [SMALL_STATE(980)] = 57458, - [SMALL_STATE(981)] = 57537, - [SMALL_STATE(982)] = 57578, - [SMALL_STATE(983)] = 57657, - [SMALL_STATE(984)] = 57698, - [SMALL_STATE(985)] = 57771, - [SMALL_STATE(986)] = 57841, - [SMALL_STATE(987)] = 57911, - [SMALL_STATE(988)] = 57973, - [SMALL_STATE(989)] = 58035, - [SMALL_STATE(990)] = 58074, - [SMALL_STATE(991)] = 58113, - [SMALL_STATE(992)] = 58152, - [SMALL_STATE(993)] = 58191, - [SMALL_STATE(994)] = 58221, - [SMALL_STATE(995)] = 58274, - [SMALL_STATE(996)] = 58311, - [SMALL_STATE(997)] = 58364, - [SMALL_STATE(998)] = 58399, - [SMALL_STATE(999)] = 58424, - [SMALL_STATE(1000)] = 58449, - [SMALL_STATE(1001)] = 58478, - [SMALL_STATE(1002)] = 58507, - [SMALL_STATE(1003)] = 58544, - [SMALL_STATE(1004)] = 58581, - [SMALL_STATE(1005)] = 58606, - [SMALL_STATE(1006)] = 58631, - [SMALL_STATE(1007)] = 58668, - [SMALL_STATE(1008)] = 58703, - [SMALL_STATE(1009)] = 58756, - [SMALL_STATE(1010)] = 58790, - [SMALL_STATE(1011)] = 58818, - [SMALL_STATE(1012)] = 58852, - [SMALL_STATE(1013)] = 58898, - [SMALL_STATE(1014)] = 58929, - [SMALL_STATE(1015)] = 58972, - [SMALL_STATE(1016)] = 59015, - [SMALL_STATE(1017)] = 59058, - [SMALL_STATE(1018)] = 59101, - [SMALL_STATE(1019)] = 59144, - [SMALL_STATE(1020)] = 59187, - [SMALL_STATE(1021)] = 59230, - [SMALL_STATE(1022)] = 59274, - [SMALL_STATE(1023)] = 59314, - [SMALL_STATE(1024)] = 59351, - [SMALL_STATE(1025)] = 59376, - [SMALL_STATE(1026)] = 59413, - [SMALL_STATE(1027)] = 59450, - [SMALL_STATE(1028)] = 59487, - [SMALL_STATE(1029)] = 59521, - [SMALL_STATE(1030)] = 59555, - [SMALL_STATE(1031)] = 59576, - [SMALL_STATE(1032)] = 59597, - [SMALL_STATE(1033)] = 59619, - [SMALL_STATE(1034)] = 59650, - [SMALL_STATE(1035)] = 59687, - [SMALL_STATE(1036)] = 59718, - [SMALL_STATE(1037)] = 59749, - [SMALL_STATE(1038)] = 59780, - [SMALL_STATE(1039)] = 59803, - [SMALL_STATE(1040)] = 59824, - [SMALL_STATE(1041)] = 59845, - [SMALL_STATE(1042)] = 59882, - [SMALL_STATE(1043)] = 59905, - [SMALL_STATE(1044)] = 59936, - [SMALL_STATE(1045)] = 59967, - [SMALL_STATE(1046)] = 59998, - [SMALL_STATE(1047)] = 60035, - [SMALL_STATE(1048)] = 60066, - [SMALL_STATE(1049)] = 60097, - [SMALL_STATE(1050)] = 60114, - [SMALL_STATE(1051)] = 60145, - [SMALL_STATE(1052)] = 60176, - [SMALL_STATE(1053)] = 60207, - [SMALL_STATE(1054)] = 60238, - [SMALL_STATE(1055)] = 60269, - [SMALL_STATE(1056)] = 60300, - [SMALL_STATE(1057)] = 60331, - [SMALL_STATE(1058)] = 60362, - [SMALL_STATE(1059)] = 60393, - [SMALL_STATE(1060)] = 60424, - [SMALL_STATE(1061)] = 60461, - [SMALL_STATE(1062)] = 60498, - [SMALL_STATE(1063)] = 60520, - [SMALL_STATE(1064)] = 60538, - [SMALL_STATE(1065)] = 60562, - [SMALL_STATE(1066)] = 60582, - [SMALL_STATE(1067)] = 60616, - [SMALL_STATE(1068)] = 60650, - [SMALL_STATE(1069)] = 60670, - [SMALL_STATE(1070)] = 60692, - [SMALL_STATE(1071)] = 60714, - [SMALL_STATE(1072)] = 60736, - [SMALL_STATE(1073)] = 60754, - [SMALL_STATE(1074)] = 60788, - [SMALL_STATE(1075)] = 60812, - [SMALL_STATE(1076)] = 60846, - [SMALL_STATE(1077)] = 60880, - [SMALL_STATE(1078)] = 60900, - [SMALL_STATE(1079)] = 60918, - [SMALL_STATE(1080)] = 60952, - [SMALL_STATE(1081)] = 60986, - [SMALL_STATE(1082)] = 61020, - [SMALL_STATE(1083)] = 61042, - [SMALL_STATE(1084)] = 61076, - [SMALL_STATE(1085)] = 61110, - [SMALL_STATE(1086)] = 61134, - [SMALL_STATE(1087)] = 61168, - [SMALL_STATE(1088)] = 61190, - [SMALL_STATE(1089)] = 61224, - [SMALL_STATE(1090)] = 61244, - [SMALL_STATE(1091)] = 61263, - [SMALL_STATE(1092)] = 61282, - [SMALL_STATE(1093)] = 61305, - [SMALL_STATE(1094)] = 61330, - [SMALL_STATE(1095)] = 61349, - [SMALL_STATE(1096)] = 61374, - [SMALL_STATE(1097)] = 61395, - [SMALL_STATE(1098)] = 61414, - [SMALL_STATE(1099)] = 61433, - [SMALL_STATE(1100)] = 61456, - [SMALL_STATE(1101)] = 61479, - [SMALL_STATE(1102)] = 61498, - [SMALL_STATE(1103)] = 61518, - [SMALL_STATE(1104)] = 61538, - [SMALL_STATE(1105)] = 61556, - [SMALL_STATE(1106)] = 61572, - [SMALL_STATE(1107)] = 61590, - [SMALL_STATE(1108)] = 61610, - [SMALL_STATE(1109)] = 61630, - [SMALL_STATE(1110)] = 61650, - [SMALL_STATE(1111)] = 61664, - [SMALL_STATE(1112)] = 61682, - [SMALL_STATE(1113)] = 61702, - [SMALL_STATE(1114)] = 61726, - [SMALL_STATE(1115)] = 61740, - [SMALL_STATE(1116)] = 61754, - [SMALL_STATE(1117)] = 61768, - [SMALL_STATE(1118)] = 61788, - [SMALL_STATE(1119)] = 61812, - [SMALL_STATE(1120)] = 61826, - [SMALL_STATE(1121)] = 61840, - [SMALL_STATE(1122)] = 61856, - [SMALL_STATE(1123)] = 61882, - [SMALL_STATE(1124)] = 61900, - [SMALL_STATE(1125)] = 61914, - [SMALL_STATE(1126)] = 61934, - [SMALL_STATE(1127)] = 61948, - [SMALL_STATE(1128)] = 61962, - [SMALL_STATE(1129)] = 61980, - [SMALL_STATE(1130)] = 61994, - [SMALL_STATE(1131)] = 62008, - [SMALL_STATE(1132)] = 62022, - [SMALL_STATE(1133)] = 62036, - [SMALL_STATE(1134)] = 62058, - [SMALL_STATE(1135)] = 62072, - [SMALL_STATE(1136)] = 62086, - [SMALL_STATE(1137)] = 62104, - [SMALL_STATE(1138)] = 62118, - [SMALL_STATE(1139)] = 62132, - [SMALL_STATE(1140)] = 62154, - [SMALL_STATE(1141)] = 62168, - [SMALL_STATE(1142)] = 62188, - [SMALL_STATE(1143)] = 62204, - [SMALL_STATE(1144)] = 62218, - [SMALL_STATE(1145)] = 62238, - [SMALL_STATE(1146)] = 62256, - [SMALL_STATE(1147)] = 62274, - [SMALL_STATE(1148)] = 62296, - [SMALL_STATE(1149)] = 62320, - [SMALL_STATE(1150)] = 62338, - [SMALL_STATE(1151)] = 62358, - [SMALL_STATE(1152)] = 62376, - [SMALL_STATE(1153)] = 62392, - [SMALL_STATE(1154)] = 62410, - [SMALL_STATE(1155)] = 62424, - [SMALL_STATE(1156)] = 62442, - [SMALL_STATE(1157)] = 62462, - [SMALL_STATE(1158)] = 62482, - [SMALL_STATE(1159)] = 62496, - [SMALL_STATE(1160)] = 62510, - [SMALL_STATE(1161)] = 62524, - [SMALL_STATE(1162)] = 62538, - [SMALL_STATE(1163)] = 62556, - [SMALL_STATE(1164)] = 62574, - [SMALL_STATE(1165)] = 62594, - [SMALL_STATE(1166)] = 62612, - [SMALL_STATE(1167)] = 62632, - [SMALL_STATE(1168)] = 62646, - [SMALL_STATE(1169)] = 62660, - [SMALL_STATE(1170)] = 62685, - [SMALL_STATE(1171)] = 62710, - [SMALL_STATE(1172)] = 62731, - [SMALL_STATE(1173)] = 62750, - [SMALL_STATE(1174)] = 62771, - [SMALL_STATE(1175)] = 62790, - [SMALL_STATE(1176)] = 62813, - [SMALL_STATE(1177)] = 62826, - [SMALL_STATE(1178)] = 62849, - [SMALL_STATE(1179)] = 62862, - [SMALL_STATE(1180)] = 62885, - [SMALL_STATE(1181)] = 62908, - [SMALL_STATE(1182)] = 62929, - [SMALL_STATE(1183)] = 62948, - [SMALL_STATE(1184)] = 62967, - [SMALL_STATE(1185)] = 62982, - [SMALL_STATE(1186)] = 63005, - [SMALL_STATE(1187)] = 63030, - [SMALL_STATE(1188)] = 63051, - [SMALL_STATE(1189)] = 63068, - [SMALL_STATE(1190)] = 63087, - [SMALL_STATE(1191)] = 63112, - [SMALL_STATE(1192)] = 63131, - [SMALL_STATE(1193)] = 63150, - [SMALL_STATE(1194)] = 63167, - [SMALL_STATE(1195)] = 63182, - [SMALL_STATE(1196)] = 63199, - [SMALL_STATE(1197)] = 63212, - [SMALL_STATE(1198)] = 63235, - [SMALL_STATE(1199)] = 63260, - [SMALL_STATE(1200)] = 63279, - [SMALL_STATE(1201)] = 63300, - [SMALL_STATE(1202)] = 63323, - [SMALL_STATE(1203)] = 63346, - [SMALL_STATE(1204)] = 63359, - [SMALL_STATE(1205)] = 63384, - [SMALL_STATE(1206)] = 63409, - [SMALL_STATE(1207)] = 63428, - [SMALL_STATE(1208)] = 63453, - [SMALL_STATE(1209)] = 63472, - [SMALL_STATE(1210)] = 63491, - [SMALL_STATE(1211)] = 63504, - [SMALL_STATE(1212)] = 63517, - [SMALL_STATE(1213)] = 63542, - [SMALL_STATE(1214)] = 63565, - [SMALL_STATE(1215)] = 63584, - [SMALL_STATE(1216)] = 63600, - [SMALL_STATE(1217)] = 63616, - [SMALL_STATE(1218)] = 63630, - [SMALL_STATE(1219)] = 63644, - [SMALL_STATE(1220)] = 63660, - [SMALL_STATE(1221)] = 63680, - [SMALL_STATE(1222)] = 63696, - [SMALL_STATE(1223)] = 63712, - [SMALL_STATE(1224)] = 63726, - [SMALL_STATE(1225)] = 63744, - [SMALL_STATE(1226)] = 63766, - [SMALL_STATE(1227)] = 63784, - [SMALL_STATE(1228)] = 63802, - [SMALL_STATE(1229)] = 63820, - [SMALL_STATE(1230)] = 63836, - [SMALL_STATE(1231)] = 63858, - [SMALL_STATE(1232)] = 63876, - [SMALL_STATE(1233)] = 63892, - [SMALL_STATE(1234)] = 63908, - [SMALL_STATE(1235)] = 63924, - [SMALL_STATE(1236)] = 63946, - [SMALL_STATE(1237)] = 63968, - [SMALL_STATE(1238)] = 63990, - [SMALL_STATE(1239)] = 64008, - [SMALL_STATE(1240)] = 64020, - [SMALL_STATE(1241)] = 64042, - [SMALL_STATE(1242)] = 64058, - [SMALL_STATE(1243)] = 64074, - [SMALL_STATE(1244)] = 64092, - [SMALL_STATE(1245)] = 64104, - [SMALL_STATE(1246)] = 64118, - [SMALL_STATE(1247)] = 64138, - [SMALL_STATE(1248)] = 64158, - [SMALL_STATE(1249)] = 64174, - [SMALL_STATE(1250)] = 64194, - [SMALL_STATE(1251)] = 64212, - [SMALL_STATE(1252)] = 64228, - [SMALL_STATE(1253)] = 64242, - [SMALL_STATE(1254)] = 64256, - [SMALL_STATE(1255)] = 64278, - [SMALL_STATE(1256)] = 64295, - [SMALL_STATE(1257)] = 64314, - [SMALL_STATE(1258)] = 64329, - [SMALL_STATE(1259)] = 64346, - [SMALL_STATE(1260)] = 64361, - [SMALL_STATE(1261)] = 64376, - [SMALL_STATE(1262)] = 64393, - [SMALL_STATE(1263)] = 64410, - [SMALL_STATE(1264)] = 64421, - [SMALL_STATE(1265)] = 64438, - [SMALL_STATE(1266)] = 64457, - [SMALL_STATE(1267)] = 64474, - [SMALL_STATE(1268)] = 64485, - [SMALL_STATE(1269)] = 64502, - [SMALL_STATE(1270)] = 64519, - [SMALL_STATE(1271)] = 64534, - [SMALL_STATE(1272)] = 64551, - [SMALL_STATE(1273)] = 64570, - [SMALL_STATE(1274)] = 64581, - [SMALL_STATE(1275)] = 64598, - [SMALL_STATE(1276)] = 64615, - [SMALL_STATE(1277)] = 64632, - [SMALL_STATE(1278)] = 64643, - [SMALL_STATE(1279)] = 64658, - [SMALL_STATE(1280)] = 64675, - [SMALL_STATE(1281)] = 64690, - [SMALL_STATE(1282)] = 64709, - [SMALL_STATE(1283)] = 64726, - [SMALL_STATE(1284)] = 64745, - [SMALL_STATE(1285)] = 64764, - [SMALL_STATE(1286)] = 64781, - [SMALL_STATE(1287)] = 64796, - [SMALL_STATE(1288)] = 64815, - [SMALL_STATE(1289)] = 64834, - [SMALL_STATE(1290)] = 64845, - [SMALL_STATE(1291)] = 64862, - [SMALL_STATE(1292)] = 64879, - [SMALL_STATE(1293)] = 64896, - [SMALL_STATE(1294)] = 64910, - [SMALL_STATE(1295)] = 64924, - [SMALL_STATE(1296)] = 64940, - [SMALL_STATE(1297)] = 64956, - [SMALL_STATE(1298)] = 64972, - [SMALL_STATE(1299)] = 64986, - [SMALL_STATE(1300)] = 65000, - [SMALL_STATE(1301)] = 65010, - [SMALL_STATE(1302)] = 65026, - [SMALL_STATE(1303)] = 65042, - [SMALL_STATE(1304)] = 65058, - [SMALL_STATE(1305)] = 65072, - [SMALL_STATE(1306)] = 65086, - [SMALL_STATE(1307)] = 65098, - [SMALL_STATE(1308)] = 65114, - [SMALL_STATE(1309)] = 65124, - [SMALL_STATE(1310)] = 65138, - [SMALL_STATE(1311)] = 65154, - [SMALL_STATE(1312)] = 65170, - [SMALL_STATE(1313)] = 65186, - [SMALL_STATE(1314)] = 65196, - [SMALL_STATE(1315)] = 65206, - [SMALL_STATE(1316)] = 65216, - [SMALL_STATE(1317)] = 65230, - [SMALL_STATE(1318)] = 65244, - [SMALL_STATE(1319)] = 65258, - [SMALL_STATE(1320)] = 65272, - [SMALL_STATE(1321)] = 65286, - [SMALL_STATE(1322)] = 65302, - [SMALL_STATE(1323)] = 65318, - [SMALL_STATE(1324)] = 65334, - [SMALL_STATE(1325)] = 65350, - [SMALL_STATE(1326)] = 65364, - [SMALL_STATE(1327)] = 65378, - [SMALL_STATE(1328)] = 65392, - [SMALL_STATE(1329)] = 65408, - [SMALL_STATE(1330)] = 65424, - [SMALL_STATE(1331)] = 65440, - [SMALL_STATE(1332)] = 65456, - [SMALL_STATE(1333)] = 65472, - [SMALL_STATE(1334)] = 65488, - [SMALL_STATE(1335)] = 65504, - [SMALL_STATE(1336)] = 65520, - [SMALL_STATE(1337)] = 65534, - [SMALL_STATE(1338)] = 65548, - [SMALL_STATE(1339)] = 65562, - [SMALL_STATE(1340)] = 65578, - [SMALL_STATE(1341)] = 65592, - [SMALL_STATE(1342)] = 65604, - [SMALL_STATE(1343)] = 65618, - [SMALL_STATE(1344)] = 65634, - [SMALL_STATE(1345)] = 65648, - [SMALL_STATE(1346)] = 65664, - [SMALL_STATE(1347)] = 65680, - [SMALL_STATE(1348)] = 65696, - [SMALL_STATE(1349)] = 65712, - [SMALL_STATE(1350)] = 65728, - [SMALL_STATE(1351)] = 65744, - [SMALL_STATE(1352)] = 65760, - [SMALL_STATE(1353)] = 65776, - [SMALL_STATE(1354)] = 65790, - [SMALL_STATE(1355)] = 65804, - [SMALL_STATE(1356)] = 65818, - [SMALL_STATE(1357)] = 65832, - [SMALL_STATE(1358)] = 65848, - [SMALL_STATE(1359)] = 65858, - [SMALL_STATE(1360)] = 65872, - [SMALL_STATE(1361)] = 65886, - [SMALL_STATE(1362)] = 65902, - [SMALL_STATE(1363)] = 65916, - [SMALL_STATE(1364)] = 65930, - [SMALL_STATE(1365)] = 65944, - [SMALL_STATE(1366)] = 65958, - [SMALL_STATE(1367)] = 65974, - [SMALL_STATE(1368)] = 65990, - [SMALL_STATE(1369)] = 66004, - [SMALL_STATE(1370)] = 66020, - [SMALL_STATE(1371)] = 66036, - [SMALL_STATE(1372)] = 66050, - [SMALL_STATE(1373)] = 66064, - [SMALL_STATE(1374)] = 66080, - [SMALL_STATE(1375)] = 66093, - [SMALL_STATE(1376)] = 66106, - [SMALL_STATE(1377)] = 66119, - [SMALL_STATE(1378)] = 66132, - [SMALL_STATE(1379)] = 66145, - [SMALL_STATE(1380)] = 66154, - [SMALL_STATE(1381)] = 66165, - [SMALL_STATE(1382)] = 66178, - [SMALL_STATE(1383)] = 66189, - [SMALL_STATE(1384)] = 66202, - [SMALL_STATE(1385)] = 66215, - [SMALL_STATE(1386)] = 66228, - [SMALL_STATE(1387)] = 66241, - [SMALL_STATE(1388)] = 66254, - [SMALL_STATE(1389)] = 66267, - [SMALL_STATE(1390)] = 66280, - [SMALL_STATE(1391)] = 66293, - [SMALL_STATE(1392)] = 66304, - [SMALL_STATE(1393)] = 66317, - [SMALL_STATE(1394)] = 66328, - [SMALL_STATE(1395)] = 66337, - [SMALL_STATE(1396)] = 66350, - [SMALL_STATE(1397)] = 66363, - [SMALL_STATE(1398)] = 66376, - [SMALL_STATE(1399)] = 66389, - [SMALL_STATE(1400)] = 66402, - [SMALL_STATE(1401)] = 66415, - [SMALL_STATE(1402)] = 66428, - [SMALL_STATE(1403)] = 66441, - [SMALL_STATE(1404)] = 66454, - [SMALL_STATE(1405)] = 66463, - [SMALL_STATE(1406)] = 66476, - [SMALL_STATE(1407)] = 66487, - [SMALL_STATE(1408)] = 66500, - [SMALL_STATE(1409)] = 66513, - [SMALL_STATE(1410)] = 66526, - [SMALL_STATE(1411)] = 66539, - [SMALL_STATE(1412)] = 66552, - [SMALL_STATE(1413)] = 66565, - [SMALL_STATE(1414)] = 66578, - [SMALL_STATE(1415)] = 66591, - [SMALL_STATE(1416)] = 66604, - [SMALL_STATE(1417)] = 66617, - [SMALL_STATE(1418)] = 66630, - [SMALL_STATE(1419)] = 66643, - [SMALL_STATE(1420)] = 66656, - [SMALL_STATE(1421)] = 66665, - [SMALL_STATE(1422)] = 66674, - [SMALL_STATE(1423)] = 66687, - [SMALL_STATE(1424)] = 66700, - [SMALL_STATE(1425)] = 66713, - [SMALL_STATE(1426)] = 66726, - [SMALL_STATE(1427)] = 66739, - [SMALL_STATE(1428)] = 66752, - [SMALL_STATE(1429)] = 66765, - [SMALL_STATE(1430)] = 66778, - [SMALL_STATE(1431)] = 66791, - [SMALL_STATE(1432)] = 66804, - [SMALL_STATE(1433)] = 66817, - [SMALL_STATE(1434)] = 66830, - [SMALL_STATE(1435)] = 66843, - [SMALL_STATE(1436)] = 66856, - [SMALL_STATE(1437)] = 66869, - [SMALL_STATE(1438)] = 66882, - [SMALL_STATE(1439)] = 66895, - [SMALL_STATE(1440)] = 66908, - [SMALL_STATE(1441)] = 66921, - [SMALL_STATE(1442)] = 66934, - [SMALL_STATE(1443)] = 66945, - [SMALL_STATE(1444)] = 66958, - [SMALL_STATE(1445)] = 66967, - [SMALL_STATE(1446)] = 66976, - [SMALL_STATE(1447)] = 66985, - [SMALL_STATE(1448)] = 66994, - [SMALL_STATE(1449)] = 67007, - [SMALL_STATE(1450)] = 67020, - [SMALL_STATE(1451)] = 67033, - [SMALL_STATE(1452)] = 67046, - [SMALL_STATE(1453)] = 67059, - [SMALL_STATE(1454)] = 67072, - [SMALL_STATE(1455)] = 67085, - [SMALL_STATE(1456)] = 67096, - [SMALL_STATE(1457)] = 67109, - [SMALL_STATE(1458)] = 67122, - [SMALL_STATE(1459)] = 67135, - [SMALL_STATE(1460)] = 67148, - [SMALL_STATE(1461)] = 67161, - [SMALL_STATE(1462)] = 67174, - [SMALL_STATE(1463)] = 67187, - [SMALL_STATE(1464)] = 67196, - [SMALL_STATE(1465)] = 67205, - [SMALL_STATE(1466)] = 67214, - [SMALL_STATE(1467)] = 67227, - [SMALL_STATE(1468)] = 67240, - [SMALL_STATE(1469)] = 67253, - [SMALL_STATE(1470)] = 67266, - [SMALL_STATE(1471)] = 67275, - [SMALL_STATE(1472)] = 67288, - [SMALL_STATE(1473)] = 67301, - [SMALL_STATE(1474)] = 67314, - [SMALL_STATE(1475)] = 67327, - [SMALL_STATE(1476)] = 67338, - [SMALL_STATE(1477)] = 67351, - [SMALL_STATE(1478)] = 67364, - [SMALL_STATE(1479)] = 67377, - [SMALL_STATE(1480)] = 67388, - [SMALL_STATE(1481)] = 67401, - [SMALL_STATE(1482)] = 67414, - [SMALL_STATE(1483)] = 67425, - [SMALL_STATE(1484)] = 67438, - [SMALL_STATE(1485)] = 67451, - [SMALL_STATE(1486)] = 67464, - [SMALL_STATE(1487)] = 67473, - [SMALL_STATE(1488)] = 67486, - [SMALL_STATE(1489)] = 67499, - [SMALL_STATE(1490)] = 67512, - [SMALL_STATE(1491)] = 67525, - [SMALL_STATE(1492)] = 67538, - [SMALL_STATE(1493)] = 67551, - [SMALL_STATE(1494)] = 67564, - [SMALL_STATE(1495)] = 67577, - [SMALL_STATE(1496)] = 67590, - [SMALL_STATE(1497)] = 67603, - [SMALL_STATE(1498)] = 67614, - [SMALL_STATE(1499)] = 67627, - [SMALL_STATE(1500)] = 67640, - [SMALL_STATE(1501)] = 67653, - [SMALL_STATE(1502)] = 67662, - [SMALL_STATE(1503)] = 67673, - [SMALL_STATE(1504)] = 67686, - [SMALL_STATE(1505)] = 67699, - [SMALL_STATE(1506)] = 67712, - [SMALL_STATE(1507)] = 67725, - [SMALL_STATE(1508)] = 67733, - [SMALL_STATE(1509)] = 67741, - [SMALL_STATE(1510)] = 67751, - [SMALL_STATE(1511)] = 67761, - [SMALL_STATE(1512)] = 67771, - [SMALL_STATE(1513)] = 67781, - [SMALL_STATE(1514)] = 67791, - [SMALL_STATE(1515)] = 67799, - [SMALL_STATE(1516)] = 67807, - [SMALL_STATE(1517)] = 67815, - [SMALL_STATE(1518)] = 67823, - [SMALL_STATE(1519)] = 67831, - [SMALL_STATE(1520)] = 67839, - [SMALL_STATE(1521)] = 67847, - [SMALL_STATE(1522)] = 67855, - [SMALL_STATE(1523)] = 67863, - [SMALL_STATE(1524)] = 67871, - [SMALL_STATE(1525)] = 67879, - [SMALL_STATE(1526)] = 67887, - [SMALL_STATE(1527)] = 67895, - [SMALL_STATE(1528)] = 67903, - [SMALL_STATE(1529)] = 67911, - [SMALL_STATE(1530)] = 67919, - [SMALL_STATE(1531)] = 67927, - [SMALL_STATE(1532)] = 67935, - [SMALL_STATE(1533)] = 67943, - [SMALL_STATE(1534)] = 67951, - [SMALL_STATE(1535)] = 67959, - [SMALL_STATE(1536)] = 67967, - [SMALL_STATE(1537)] = 67975, - [SMALL_STATE(1538)] = 67983, - [SMALL_STATE(1539)] = 67991, - [SMALL_STATE(1540)] = 68001, - [SMALL_STATE(1541)] = 68009, - [SMALL_STATE(1542)] = 68019, - [SMALL_STATE(1543)] = 68027, - [SMALL_STATE(1544)] = 68037, - [SMALL_STATE(1545)] = 68047, - [SMALL_STATE(1546)] = 68055, - [SMALL_STATE(1547)] = 68065, - [SMALL_STATE(1548)] = 68073, - [SMALL_STATE(1549)] = 68083, - [SMALL_STATE(1550)] = 68093, - [SMALL_STATE(1551)] = 68103, - [SMALL_STATE(1552)] = 68111, - [SMALL_STATE(1553)] = 68121, - [SMALL_STATE(1554)] = 68131, - [SMALL_STATE(1555)] = 68141, - [SMALL_STATE(1556)] = 68149, - [SMALL_STATE(1557)] = 68159, - [SMALL_STATE(1558)] = 68169, - [SMALL_STATE(1559)] = 68177, - [SMALL_STATE(1560)] = 68187, - [SMALL_STATE(1561)] = 68197, - [SMALL_STATE(1562)] = 68207, - [SMALL_STATE(1563)] = 68217, - [SMALL_STATE(1564)] = 68225, - [SMALL_STATE(1565)] = 68235, - [SMALL_STATE(1566)] = 68245, - [SMALL_STATE(1567)] = 68255, - [SMALL_STATE(1568)] = 68265, - [SMALL_STATE(1569)] = 68273, - [SMALL_STATE(1570)] = 68283, - [SMALL_STATE(1571)] = 68291, - [SMALL_STATE(1572)] = 68299, - [SMALL_STATE(1573)] = 68307, - [SMALL_STATE(1574)] = 68315, - [SMALL_STATE(1575)] = 68325, - [SMALL_STATE(1576)] = 68333, - [SMALL_STATE(1577)] = 68343, - [SMALL_STATE(1578)] = 68351, - [SMALL_STATE(1579)] = 68361, - [SMALL_STATE(1580)] = 68369, - [SMALL_STATE(1581)] = 68377, - [SMALL_STATE(1582)] = 68385, - [SMALL_STATE(1583)] = 68395, - [SMALL_STATE(1584)] = 68402, - [SMALL_STATE(1585)] = 68409, - [SMALL_STATE(1586)] = 68416, - [SMALL_STATE(1587)] = 68423, - [SMALL_STATE(1588)] = 68430, - [SMALL_STATE(1589)] = 68437, - [SMALL_STATE(1590)] = 68444, - [SMALL_STATE(1591)] = 68451, - [SMALL_STATE(1592)] = 68458, - [SMALL_STATE(1593)] = 68465, - [SMALL_STATE(1594)] = 68472, - [SMALL_STATE(1595)] = 68479, - [SMALL_STATE(1596)] = 68486, - [SMALL_STATE(1597)] = 68493, - [SMALL_STATE(1598)] = 68500, - [SMALL_STATE(1599)] = 68507, - [SMALL_STATE(1600)] = 68514, - [SMALL_STATE(1601)] = 68521, - [SMALL_STATE(1602)] = 68528, - [SMALL_STATE(1603)] = 68535, - [SMALL_STATE(1604)] = 68542, - [SMALL_STATE(1605)] = 68549, - [SMALL_STATE(1606)] = 68556, - [SMALL_STATE(1607)] = 68563, - [SMALL_STATE(1608)] = 68570, - [SMALL_STATE(1609)] = 68577, - [SMALL_STATE(1610)] = 68584, - [SMALL_STATE(1611)] = 68591, - [SMALL_STATE(1612)] = 68598, - [SMALL_STATE(1613)] = 68605, - [SMALL_STATE(1614)] = 68612, - [SMALL_STATE(1615)] = 68619, - [SMALL_STATE(1616)] = 68626, - [SMALL_STATE(1617)] = 68633, - [SMALL_STATE(1618)] = 68640, - [SMALL_STATE(1619)] = 68647, - [SMALL_STATE(1620)] = 68654, - [SMALL_STATE(1621)] = 68661, - [SMALL_STATE(1622)] = 68668, - [SMALL_STATE(1623)] = 68675, - [SMALL_STATE(1624)] = 68682, - [SMALL_STATE(1625)] = 68689, - [SMALL_STATE(1626)] = 68696, - [SMALL_STATE(1627)] = 68703, - [SMALL_STATE(1628)] = 68710, - [SMALL_STATE(1629)] = 68717, - [SMALL_STATE(1630)] = 68724, - [SMALL_STATE(1631)] = 68731, - [SMALL_STATE(1632)] = 68738, - [SMALL_STATE(1633)] = 68745, - [SMALL_STATE(1634)] = 68752, - [SMALL_STATE(1635)] = 68759, - [SMALL_STATE(1636)] = 68766, - [SMALL_STATE(1637)] = 68773, - [SMALL_STATE(1638)] = 68780, - [SMALL_STATE(1639)] = 68787, - [SMALL_STATE(1640)] = 68794, - [SMALL_STATE(1641)] = 68801, - [SMALL_STATE(1642)] = 68808, - [SMALL_STATE(1643)] = 68815, - [SMALL_STATE(1644)] = 68822, - [SMALL_STATE(1645)] = 68829, - [SMALL_STATE(1646)] = 68836, - [SMALL_STATE(1647)] = 68843, - [SMALL_STATE(1648)] = 68850, - [SMALL_STATE(1649)] = 68857, - [SMALL_STATE(1650)] = 68864, - [SMALL_STATE(1651)] = 68871, - [SMALL_STATE(1652)] = 68878, - [SMALL_STATE(1653)] = 68885, - [SMALL_STATE(1654)] = 68892, - [SMALL_STATE(1655)] = 68899, - [SMALL_STATE(1656)] = 68906, - [SMALL_STATE(1657)] = 68913, - [SMALL_STATE(1658)] = 68920, - [SMALL_STATE(1659)] = 68927, - [SMALL_STATE(1660)] = 68934, - [SMALL_STATE(1661)] = 68941, - [SMALL_STATE(1662)] = 68948, - [SMALL_STATE(1663)] = 68955, - [SMALL_STATE(1664)] = 68962, - [SMALL_STATE(1665)] = 68969, - [SMALL_STATE(1666)] = 68976, - [SMALL_STATE(1667)] = 68983, - [SMALL_STATE(1668)] = 68990, - [SMALL_STATE(1669)] = 68997, - [SMALL_STATE(1670)] = 69004, - [SMALL_STATE(1671)] = 69011, - [SMALL_STATE(1672)] = 69018, - [SMALL_STATE(1673)] = 69025, - [SMALL_STATE(1674)] = 69032, - [SMALL_STATE(1675)] = 69039, - [SMALL_STATE(1676)] = 69046, - [SMALL_STATE(1677)] = 69053, - [SMALL_STATE(1678)] = 69060, - [SMALL_STATE(1679)] = 69067, - [SMALL_STATE(1680)] = 69074, - [SMALL_STATE(1681)] = 69081, - [SMALL_STATE(1682)] = 69088, - [SMALL_STATE(1683)] = 69095, - [SMALL_STATE(1684)] = 69102, - [SMALL_STATE(1685)] = 69109, - [SMALL_STATE(1686)] = 69116, - [SMALL_STATE(1687)] = 69123, - [SMALL_STATE(1688)] = 69130, - [SMALL_STATE(1689)] = 69137, - [SMALL_STATE(1690)] = 69144, - [SMALL_STATE(1691)] = 69151, - [SMALL_STATE(1692)] = 69158, - [SMALL_STATE(1693)] = 69165, - [SMALL_STATE(1694)] = 69172, - [SMALL_STATE(1695)] = 69179, - [SMALL_STATE(1696)] = 69186, - [SMALL_STATE(1697)] = 69193, - [SMALL_STATE(1698)] = 69200, - [SMALL_STATE(1699)] = 69207, - [SMALL_STATE(1700)] = 69214, - [SMALL_STATE(1701)] = 69221, - [SMALL_STATE(1702)] = 69228, - [SMALL_STATE(1703)] = 69235, - [SMALL_STATE(1704)] = 69242, - [SMALL_STATE(1705)] = 69249, - [SMALL_STATE(1706)] = 69256, - [SMALL_STATE(1707)] = 69263, - [SMALL_STATE(1708)] = 69270, - [SMALL_STATE(1709)] = 69277, - [SMALL_STATE(1710)] = 69284, - [SMALL_STATE(1711)] = 69291, - [SMALL_STATE(1712)] = 69298, - [SMALL_STATE(1713)] = 69305, - [SMALL_STATE(1714)] = 69312, - [SMALL_STATE(1715)] = 69319, - [SMALL_STATE(1716)] = 69326, - [SMALL_STATE(1717)] = 69333, - [SMALL_STATE(1718)] = 69340, - [SMALL_STATE(1719)] = 69347, - [SMALL_STATE(1720)] = 69354, - [SMALL_STATE(1721)] = 69361, - [SMALL_STATE(1722)] = 69368, + [SMALL_STATE(157)] = 123, + [SMALL_STATE(158)] = 248, + [SMALL_STATE(159)] = 375, + [SMALL_STATE(160)] = 486, + [SMALL_STATE(161)] = 597, + [SMALL_STATE(162)] = 720, + [SMALL_STATE(163)] = 845, + [SMALL_STATE(164)] = 968, + [SMALL_STATE(165)] = 1090, + [SMALL_STATE(166)] = 1212, + [SMALL_STATE(167)] = 1334, + [SMALL_STATE(168)] = 1456, + [SMALL_STATE(169)] = 1571, + [SMALL_STATE(170)] = 1686, + [SMALL_STATE(171)] = 1796, + [SMALL_STATE(172)] = 1906, + [SMALL_STATE(173)] = 2016, + [SMALL_STATE(174)] = 2127, + [SMALL_STATE(175)] = 2240, + [SMALL_STATE(176)] = 2353, + [SMALL_STATE(177)] = 2462, + [SMALL_STATE(178)] = 2575, + [SMALL_STATE(179)] = 2688, + [SMALL_STATE(180)] = 2801, + [SMALL_STATE(181)] = 2912, + [SMALL_STATE(182)] = 3021, + [SMALL_STATE(183)] = 3130, + [SMALL_STATE(184)] = 3239, + [SMALL_STATE(185)] = 3348, + [SMALL_STATE(186)] = 3457, + [SMALL_STATE(187)] = 3570, + [SMALL_STATE(188)] = 3685, + [SMALL_STATE(189)] = 3798, + [SMALL_STATE(190)] = 3908, + [SMALL_STATE(191)] = 4014, + [SMALL_STATE(192)] = 4124, + [SMALL_STATE(193)] = 4234, + [SMALL_STATE(194)] = 4344, + [SMALL_STATE(195)] = 4450, + [SMALL_STATE(196)] = 4560, + [SMALL_STATE(197)] = 4672, + [SMALL_STATE(198)] = 4782, + [SMALL_STATE(199)] = 4896, + [SMALL_STATE(200)] = 5008, + [SMALL_STATE(201)] = 5118, + [SMALL_STATE(202)] = 5228, + [SMALL_STATE(203)] = 5338, + [SMALL_STATE(204)] = 5448, + [SMALL_STATE(205)] = 5558, + [SMALL_STATE(206)] = 5668, + [SMALL_STATE(207)] = 5778, + [SMALL_STATE(208)] = 5884, + [SMALL_STATE(209)] = 5998, + [SMALL_STATE(210)] = 6108, + [SMALL_STATE(211)] = 6218, + [SMALL_STATE(212)] = 6332, + [SMALL_STATE(213)] = 6438, + [SMALL_STATE(214)] = 6548, + [SMALL_STATE(215)] = 6658, + [SMALL_STATE(216)] = 6768, + [SMALL_STATE(217)] = 6878, + [SMALL_STATE(218)] = 6988, + [SMALL_STATE(219)] = 7100, + [SMALL_STATE(220)] = 7210, + [SMALL_STATE(221)] = 7320, + [SMALL_STATE(222)] = 7430, + [SMALL_STATE(223)] = 7540, + [SMALL_STATE(224)] = 7650, + [SMALL_STATE(225)] = 7760, + [SMALL_STATE(226)] = 7872, + [SMALL_STATE(227)] = 7982, + [SMALL_STATE(228)] = 8094, + [SMALL_STATE(229)] = 8204, + [SMALL_STATE(230)] = 8314, + [SMALL_STATE(231)] = 8424, + [SMALL_STATE(232)] = 8536, + [SMALL_STATE(233)] = 8643, + [SMALL_STATE(234)] = 8750, + [SMALL_STATE(235)] = 8857, + [SMALL_STATE(236)] = 8964, + [SMALL_STATE(237)] = 9059, + [SMALL_STATE(238)] = 9166, + [SMALL_STATE(239)] = 9273, + [SMALL_STATE(240)] = 9380, + [SMALL_STATE(241)] = 9487, + [SMALL_STATE(242)] = 9594, + [SMALL_STATE(243)] = 9698, + [SMALL_STATE(244)] = 9802, + [SMALL_STATE(245)] = 9908, + [SMALL_STATE(246)] = 10014, + [SMALL_STATE(247)] = 10120, + [SMALL_STATE(248)] = 10226, + [SMALL_STATE(249)] = 10332, + [SMALL_STATE(250)] = 10435, + [SMALL_STATE(251)] = 10538, + [SMALL_STATE(252)] = 10641, + [SMALL_STATE(253)] = 10744, + [SMALL_STATE(254)] = 10847, + [SMALL_STATE(255)] = 10950, + [SMALL_STATE(256)] = 11053, + [SMALL_STATE(257)] = 11156, + [SMALL_STATE(258)] = 11259, + [SMALL_STATE(259)] = 11362, + [SMALL_STATE(260)] = 11465, + [SMALL_STATE(261)] = 11568, + [SMALL_STATE(262)] = 11671, + [SMALL_STATE(263)] = 11774, + [SMALL_STATE(264)] = 11877, + [SMALL_STATE(265)] = 11979, + [SMALL_STATE(266)] = 12081, + [SMALL_STATE(267)] = 12155, + [SMALL_STATE(268)] = 12257, + [SMALL_STATE(269)] = 12331, + [SMALL_STATE(270)] = 12405, + [SMALL_STATE(271)] = 12505, + [SMALL_STATE(272)] = 12579, + [SMALL_STATE(273)] = 12653, + [SMALL_STATE(274)] = 12727, + [SMALL_STATE(275)] = 12829, + [SMALL_STATE(276)] = 12931, + [SMALL_STATE(277)] = 13005, + [SMALL_STATE(278)] = 13107, + [SMALL_STATE(279)] = 13209, + [SMALL_STATE(280)] = 13283, + [SMALL_STATE(281)] = 13383, + [SMALL_STATE(282)] = 13485, + [SMALL_STATE(283)] = 13585, + [SMALL_STATE(284)] = 13687, + [SMALL_STATE(285)] = 13789, + [SMALL_STATE(286)] = 13891, + [SMALL_STATE(287)] = 13993, + [SMALL_STATE(288)] = 14095, + [SMALL_STATE(289)] = 14192, + [SMALL_STATE(290)] = 14289, + [SMALL_STATE(291)] = 14386, + [SMALL_STATE(292)] = 14483, + [SMALL_STATE(293)] = 14580, + [SMALL_STATE(294)] = 14677, + [SMALL_STATE(295)] = 14774, + [SMALL_STATE(296)] = 14873, + [SMALL_STATE(297)] = 14972, + [SMALL_STATE(298)] = 15071, + [SMALL_STATE(299)] = 15168, + [SMALL_STATE(300)] = 15265, + [SMALL_STATE(301)] = 15362, + [SMALL_STATE(302)] = 15459, + [SMALL_STATE(303)] = 15558, + [SMALL_STATE(304)] = 15657, + [SMALL_STATE(305)] = 15756, + [SMALL_STATE(306)] = 15853, + [SMALL_STATE(307)] = 15950, + [SMALL_STATE(308)] = 16049, + [SMALL_STATE(309)] = 16148, + [SMALL_STATE(310)] = 16247, + [SMALL_STATE(311)] = 16307, + [SMALL_STATE(312)] = 16377, + [SMALL_STATE(313)] = 16447, + [SMALL_STATE(314)] = 16517, + [SMALL_STATE(315)] = 16613, + [SMALL_STATE(316)] = 16709, + [SMALL_STATE(317)] = 16773, + [SMALL_STATE(318)] = 16837, + [SMALL_STATE(319)] = 16897, + [SMALL_STATE(320)] = 16957, + [SMALL_STATE(321)] = 17017, + [SMALL_STATE(322)] = 17077, + [SMALL_STATE(323)] = 17137, + [SMALL_STATE(324)] = 17207, + [SMALL_STATE(325)] = 17267, + [SMALL_STATE(326)] = 17337, + [SMALL_STATE(327)] = 17397, + [SMALL_STATE(328)] = 17457, + [SMALL_STATE(329)] = 17517, + [SMALL_STATE(330)] = 17587, + [SMALL_STATE(331)] = 17657, + [SMALL_STATE(332)] = 17727, + [SMALL_STATE(333)] = 17787, + [SMALL_STATE(334)] = 17851, + [SMALL_STATE(335)] = 17915, + [SMALL_STATE(336)] = 18011, + [SMALL_STATE(337)] = 18071, + [SMALL_STATE(338)] = 18164, + [SMALL_STATE(339)] = 18257, + [SMALL_STATE(340)] = 18350, + [SMALL_STATE(341)] = 18443, + [SMALL_STATE(342)] = 18536, + [SMALL_STATE(343)] = 18629, + [SMALL_STATE(344)] = 18722, + [SMALL_STATE(345)] = 18815, + [SMALL_STATE(346)] = 18908, + [SMALL_STATE(347)] = 19001, + [SMALL_STATE(348)] = 19094, + [SMALL_STATE(349)] = 19187, + [SMALL_STATE(350)] = 19280, + [SMALL_STATE(351)] = 19373, + [SMALL_STATE(352)] = 19466, + [SMALL_STATE(353)] = 19559, + [SMALL_STATE(354)] = 19652, + [SMALL_STATE(355)] = 19745, + [SMALL_STATE(356)] = 19838, + [SMALL_STATE(357)] = 19931, + [SMALL_STATE(358)] = 20024, + [SMALL_STATE(359)] = 20117, + [SMALL_STATE(360)] = 20210, + [SMALL_STATE(361)] = 20303, + [SMALL_STATE(362)] = 20396, + [SMALL_STATE(363)] = 20489, + [SMALL_STATE(364)] = 20582, + [SMALL_STATE(365)] = 20647, + [SMALL_STATE(366)] = 20742, + [SMALL_STATE(367)] = 20835, + [SMALL_STATE(368)] = 20928, + [SMALL_STATE(369)] = 21021, + [SMALL_STATE(370)] = 21114, + [SMALL_STATE(371)] = 21207, + [SMALL_STATE(372)] = 21300, + [SMALL_STATE(373)] = 21393, + [SMALL_STATE(374)] = 21486, + [SMALL_STATE(375)] = 21551, + [SMALL_STATE(376)] = 21644, + [SMALL_STATE(377)] = 21737, + [SMALL_STATE(378)] = 21830, + [SMALL_STATE(379)] = 21923, + [SMALL_STATE(380)] = 22016, + [SMALL_STATE(381)] = 22109, + [SMALL_STATE(382)] = 22202, + [SMALL_STATE(383)] = 22295, + [SMALL_STATE(384)] = 22388, + [SMALL_STATE(385)] = 22481, + [SMALL_STATE(386)] = 22574, + [SMALL_STATE(387)] = 22667, + [SMALL_STATE(388)] = 22760, + [SMALL_STATE(389)] = 22853, + [SMALL_STATE(390)] = 22946, + [SMALL_STATE(391)] = 23039, + [SMALL_STATE(392)] = 23132, + [SMALL_STATE(393)] = 23225, + [SMALL_STATE(394)] = 23318, + [SMALL_STATE(395)] = 23411, + [SMALL_STATE(396)] = 23504, + [SMALL_STATE(397)] = 23597, + [SMALL_STATE(398)] = 23690, + [SMALL_STATE(399)] = 23783, + [SMALL_STATE(400)] = 23876, + [SMALL_STATE(401)] = 23969, + [SMALL_STATE(402)] = 24062, + [SMALL_STATE(403)] = 24155, + [SMALL_STATE(404)] = 24248, + [SMALL_STATE(405)] = 24341, + [SMALL_STATE(406)] = 24434, + [SMALL_STATE(407)] = 24527, + [SMALL_STATE(408)] = 24620, + [SMALL_STATE(409)] = 24713, + [SMALL_STATE(410)] = 24806, + [SMALL_STATE(411)] = 24899, + [SMALL_STATE(412)] = 24992, + [SMALL_STATE(413)] = 25085, + [SMALL_STATE(414)] = 25178, + [SMALL_STATE(415)] = 25271, + [SMALL_STATE(416)] = 25364, + [SMALL_STATE(417)] = 25457, + [SMALL_STATE(418)] = 25550, + [SMALL_STATE(419)] = 25643, + [SMALL_STATE(420)] = 25736, + [SMALL_STATE(421)] = 25829, + [SMALL_STATE(422)] = 25922, + [SMALL_STATE(423)] = 26015, + [SMALL_STATE(424)] = 26108, + [SMALL_STATE(425)] = 26201, + [SMALL_STATE(426)] = 26294, + [SMALL_STATE(427)] = 26387, + [SMALL_STATE(428)] = 26480, + [SMALL_STATE(429)] = 26573, + [SMALL_STATE(430)] = 26666, + [SMALL_STATE(431)] = 26739, + [SMALL_STATE(432)] = 26832, + [SMALL_STATE(433)] = 26925, + [SMALL_STATE(434)] = 26998, + [SMALL_STATE(435)] = 27091, + [SMALL_STATE(436)] = 27149, + [SMALL_STATE(437)] = 27211, + [SMALL_STATE(438)] = 27273, + [SMALL_STATE(439)] = 27331, + [SMALL_STATE(440)] = 27389, + [SMALL_STATE(441)] = 27447, + [SMALL_STATE(442)] = 27505, + [SMALL_STATE(443)] = 27563, + [SMALL_STATE(444)] = 27621, + [SMALL_STATE(445)] = 27679, + [SMALL_STATE(446)] = 27737, + [SMALL_STATE(447)] = 27795, + [SMALL_STATE(448)] = 27853, + [SMALL_STATE(449)] = 27911, + [SMALL_STATE(450)] = 27969, + [SMALL_STATE(451)] = 28039, + [SMALL_STATE(452)] = 28101, + [SMALL_STATE(453)] = 28171, + [SMALL_STATE(454)] = 28229, + [SMALL_STATE(455)] = 28287, + [SMALL_STATE(456)] = 28345, + [SMALL_STATE(457)] = 28403, + [SMALL_STATE(458)] = 28461, + [SMALL_STATE(459)] = 28523, + [SMALL_STATE(460)] = 28581, + [SMALL_STATE(461)] = 28639, + [SMALL_STATE(462)] = 28696, + [SMALL_STATE(463)] = 28757, + [SMALL_STATE(464)] = 28818, + [SMALL_STATE(465)] = 28879, + [SMALL_STATE(466)] = 28940, + [SMALL_STATE(467)] = 29001, + [SMALL_STATE(468)] = 29058, + [SMALL_STATE(469)] = 29115, + [SMALL_STATE(470)] = 29172, + [SMALL_STATE(471)] = 29233, + [SMALL_STATE(472)] = 29290, + [SMALL_STATE(473)] = 29351, + [SMALL_STATE(474)] = 29412, + [SMALL_STATE(475)] = 29473, + [SMALL_STATE(476)] = 29534, + [SMALL_STATE(477)] = 29629, + [SMALL_STATE(478)] = 29690, + [SMALL_STATE(479)] = 29751, + [SMALL_STATE(480)] = 29812, + [SMALL_STATE(481)] = 29879, + [SMALL_STATE(482)] = 29936, + [SMALL_STATE(483)] = 30029, + [SMALL_STATE(484)] = 30090, + [SMALL_STATE(485)] = 30151, + [SMALL_STATE(486)] = 30244, + [SMALL_STATE(487)] = 30305, + [SMALL_STATE(488)] = 30369, + [SMALL_STATE(489)] = 30425, + [SMALL_STATE(490)] = 30481, + [SMALL_STATE(491)] = 30545, + [SMALL_STATE(492)] = 30601, + [SMALL_STATE(493)] = 30693, + [SMALL_STATE(494)] = 30785, + [SMALL_STATE(495)] = 30849, + [SMALL_STATE(496)] = 30905, + [SMALL_STATE(497)] = 30961, + [SMALL_STATE(498)] = 31017, + [SMALL_STATE(499)] = 31073, + [SMALL_STATE(500)] = 31129, + [SMALL_STATE(501)] = 31185, + [SMALL_STATE(502)] = 31277, + [SMALL_STATE(503)] = 31333, + [SMALL_STATE(504)] = 31397, + [SMALL_STATE(505)] = 31489, + [SMALL_STATE(506)] = 31545, + [SMALL_STATE(507)] = 31601, + [SMALL_STATE(508)] = 31657, + [SMALL_STATE(509)] = 31713, + [SMALL_STATE(510)] = 31805, + [SMALL_STATE(511)] = 31897, + [SMALL_STATE(512)] = 31952, + [SMALL_STATE(513)] = 32007, + [SMALL_STATE(514)] = 32062, + [SMALL_STATE(515)] = 32117, + [SMALL_STATE(516)] = 32172, + [SMALL_STATE(517)] = 32227, + [SMALL_STATE(518)] = 32282, + [SMALL_STATE(519)] = 32337, + [SMALL_STATE(520)] = 32392, + [SMALL_STATE(521)] = 32447, + [SMALL_STATE(522)] = 32502, + [SMALL_STATE(523)] = 32557, + [SMALL_STATE(524)] = 32612, + [SMALL_STATE(525)] = 32667, + [SMALL_STATE(526)] = 32722, + [SMALL_STATE(527)] = 32777, + [SMALL_STATE(528)] = 32832, + [SMALL_STATE(529)] = 32887, + [SMALL_STATE(530)] = 32942, + [SMALL_STATE(531)] = 32997, + [SMALL_STATE(532)] = 33052, + [SMALL_STATE(533)] = 33107, + [SMALL_STATE(534)] = 33162, + [SMALL_STATE(535)] = 33217, + [SMALL_STATE(536)] = 33272, + [SMALL_STATE(537)] = 33327, + [SMALL_STATE(538)] = 33382, + [SMALL_STATE(539)] = 33437, + [SMALL_STATE(540)] = 33492, + [SMALL_STATE(541)] = 33547, + [SMALL_STATE(542)] = 33602, + [SMALL_STATE(543)] = 33657, + [SMALL_STATE(544)] = 33712, + [SMALL_STATE(545)] = 33767, + [SMALL_STATE(546)] = 33822, + [SMALL_STATE(547)] = 33877, + [SMALL_STATE(548)] = 33932, + [SMALL_STATE(549)] = 33987, + [SMALL_STATE(550)] = 34042, + [SMALL_STATE(551)] = 34097, + [SMALL_STATE(552)] = 34152, + [SMALL_STATE(553)] = 34207, + [SMALL_STATE(554)] = 34262, + [SMALL_STATE(555)] = 34317, + [SMALL_STATE(556)] = 34372, + [SMALL_STATE(557)] = 34427, + [SMALL_STATE(558)] = 34488, + [SMALL_STATE(559)] = 34543, + [SMALL_STATE(560)] = 34598, + [SMALL_STATE(561)] = 34653, + [SMALL_STATE(562)] = 34708, + [SMALL_STATE(563)] = 34763, + [SMALL_STATE(564)] = 34818, + [SMALL_STATE(565)] = 34873, + [SMALL_STATE(566)] = 34928, + [SMALL_STATE(567)] = 34983, + [SMALL_STATE(568)] = 35038, + [SMALL_STATE(569)] = 35093, + [SMALL_STATE(570)] = 35148, + [SMALL_STATE(571)] = 35203, + [SMALL_STATE(572)] = 35264, + [SMALL_STATE(573)] = 35319, + [SMALL_STATE(574)] = 35374, + [SMALL_STATE(575)] = 35429, + [SMALL_STATE(576)] = 35484, + [SMALL_STATE(577)] = 35539, + [SMALL_STATE(578)] = 35594, + [SMALL_STATE(579)] = 35649, + [SMALL_STATE(580)] = 35704, + [SMALL_STATE(581)] = 35759, + [SMALL_STATE(582)] = 35814, + [SMALL_STATE(583)] = 35875, + [SMALL_STATE(584)] = 35930, + [SMALL_STATE(585)] = 35985, + [SMALL_STATE(586)] = 36046, + [SMALL_STATE(587)] = 36101, + [SMALL_STATE(588)] = 36156, + [SMALL_STATE(589)] = 36245, + [SMALL_STATE(590)] = 36300, + [SMALL_STATE(591)] = 36389, + [SMALL_STATE(592)] = 36444, + [SMALL_STATE(593)] = 36499, + [SMALL_STATE(594)] = 36554, + [SMALL_STATE(595)] = 36609, + [SMALL_STATE(596)] = 36664, + [SMALL_STATE(597)] = 36719, + [SMALL_STATE(598)] = 36774, + [SMALL_STATE(599)] = 36829, + [SMALL_STATE(600)] = 36884, + [SMALL_STATE(601)] = 36939, + [SMALL_STATE(602)] = 36994, + [SMALL_STATE(603)] = 37049, + [SMALL_STATE(604)] = 37104, + [SMALL_STATE(605)] = 37159, + [SMALL_STATE(606)] = 37214, + [SMALL_STATE(607)] = 37269, + [SMALL_STATE(608)] = 37324, + [SMALL_STATE(609)] = 37379, + [SMALL_STATE(610)] = 37434, + [SMALL_STATE(611)] = 37489, + [SMALL_STATE(612)] = 37544, + [SMALL_STATE(613)] = 37599, + [SMALL_STATE(614)] = 37654, + [SMALL_STATE(615)] = 37709, + [SMALL_STATE(616)] = 37792, + [SMALL_STATE(617)] = 37869, + [SMALL_STATE(618)] = 37946, + [SMALL_STATE(619)] = 38023, + [SMALL_STATE(620)] = 38100, + [SMALL_STATE(621)] = 38177, + [SMALL_STATE(622)] = 38254, + [SMALL_STATE(623)] = 38328, + [SMALL_STATE(624)] = 38402, + [SMALL_STATE(625)] = 38476, + [SMALL_STATE(626)] = 38550, + [SMALL_STATE(627)] = 38624, + [SMALL_STATE(628)] = 38698, + [SMALL_STATE(629)] = 38772, + [SMALL_STATE(630)] = 38846, + [SMALL_STATE(631)] = 38920, + [SMALL_STATE(632)] = 38994, + [SMALL_STATE(633)] = 39072, + [SMALL_STATE(634)] = 39146, + [SMALL_STATE(635)] = 39220, + [SMALL_STATE(636)] = 39294, + [SMALL_STATE(637)] = 39372, + [SMALL_STATE(638)] = 39446, + [SMALL_STATE(639)] = 39520, + [SMALL_STATE(640)] = 39594, + [SMALL_STATE(641)] = 39668, + [SMALL_STATE(642)] = 39742, + [SMALL_STATE(643)] = 39816, + [SMALL_STATE(644)] = 39890, + [SMALL_STATE(645)] = 39964, + [SMALL_STATE(646)] = 40018, + [SMALL_STATE(647)] = 40092, + [SMALL_STATE(648)] = 40166, + [SMALL_STATE(649)] = 40240, + [SMALL_STATE(650)] = 40314, + [SMALL_STATE(651)] = 40388, + [SMALL_STATE(652)] = 40462, + [SMALL_STATE(653)] = 40536, + [SMALL_STATE(654)] = 40610, + [SMALL_STATE(655)] = 40684, + [SMALL_STATE(656)] = 40758, + [SMALL_STATE(657)] = 40832, + [SMALL_STATE(658)] = 40906, + [SMALL_STATE(659)] = 40960, + [SMALL_STATE(660)] = 41034, + [SMALL_STATE(661)] = 41108, + [SMALL_STATE(662)] = 41182, + [SMALL_STATE(663)] = 41256, + [SMALL_STATE(664)] = 41330, + [SMALL_STATE(665)] = 41404, + [SMALL_STATE(666)] = 41478, + [SMALL_STATE(667)] = 41552, + [SMALL_STATE(668)] = 41626, + [SMALL_STATE(669)] = 41700, + [SMALL_STATE(670)] = 41774, + [SMALL_STATE(671)] = 41848, + [SMALL_STATE(672)] = 41922, + [SMALL_STATE(673)] = 41996, + [SMALL_STATE(674)] = 42070, + [SMALL_STATE(675)] = 42144, + [SMALL_STATE(676)] = 42198, + [SMALL_STATE(677)] = 42252, + [SMALL_STATE(678)] = 42326, + [SMALL_STATE(679)] = 42400, + [SMALL_STATE(680)] = 42474, + [SMALL_STATE(681)] = 42548, + [SMALL_STATE(682)] = 42622, + [SMALL_STATE(683)] = 42696, + [SMALL_STATE(684)] = 42770, + [SMALL_STATE(685)] = 42844, + [SMALL_STATE(686)] = 42918, + [SMALL_STATE(687)] = 42992, + [SMALL_STATE(688)] = 43066, + [SMALL_STATE(689)] = 43140, + [SMALL_STATE(690)] = 43214, + [SMALL_STATE(691)] = 43288, + [SMALL_STATE(692)] = 43362, + [SMALL_STATE(693)] = 43416, + [SMALL_STATE(694)] = 43470, + [SMALL_STATE(695)] = 43544, + [SMALL_STATE(696)] = 43618, + [SMALL_STATE(697)] = 43666, + [SMALL_STATE(698)] = 43714, + [SMALL_STATE(699)] = 43762, + [SMALL_STATE(700)] = 43810, + [SMALL_STATE(701)] = 43857, + [SMALL_STATE(702)] = 43904, + [SMALL_STATE(703)] = 43951, + [SMALL_STATE(704)] = 43998, + [SMALL_STATE(705)] = 44045, + [SMALL_STATE(706)] = 44092, + [SMALL_STATE(707)] = 44139, + [SMALL_STATE(708)] = 44186, + [SMALL_STATE(709)] = 44233, + [SMALL_STATE(710)] = 44280, + [SMALL_STATE(711)] = 44327, + [SMALL_STATE(712)] = 44374, + [SMALL_STATE(713)] = 44421, + [SMALL_STATE(714)] = 44468, + [SMALL_STATE(715)] = 44515, + [SMALL_STATE(716)] = 44562, + [SMALL_STATE(717)] = 44609, + [SMALL_STATE(718)] = 44656, + [SMALL_STATE(719)] = 44703, + [SMALL_STATE(720)] = 44784, + [SMALL_STATE(721)] = 44831, + [SMALL_STATE(722)] = 44878, + [SMALL_STATE(723)] = 44925, + [SMALL_STATE(724)] = 44972, + [SMALL_STATE(725)] = 45019, + [SMALL_STATE(726)] = 45066, + [SMALL_STATE(727)] = 45147, + [SMALL_STATE(728)] = 45194, + [SMALL_STATE(729)] = 45241, + [SMALL_STATE(730)] = 45288, + [SMALL_STATE(731)] = 45335, + [SMALL_STATE(732)] = 45382, + [SMALL_STATE(733)] = 45429, + [SMALL_STATE(734)] = 45476, + [SMALL_STATE(735)] = 45523, + [SMALL_STATE(736)] = 45579, + [SMALL_STATE(737)] = 45649, + [SMALL_STATE(738)] = 45705, + [SMALL_STATE(739)] = 45755, + [SMALL_STATE(740)] = 45821, + [SMALL_STATE(741)] = 45877, + [SMALL_STATE(742)] = 45933, + [SMALL_STATE(743)] = 45997, + [SMALL_STATE(744)] = 46053, + [SMALL_STATE(745)] = 46123, + [SMALL_STATE(746)] = 46193, + [SMALL_STATE(747)] = 46249, + [SMALL_STATE(748)] = 46311, + [SMALL_STATE(749)] = 46381, + [SMALL_STATE(750)] = 46449, + [SMALL_STATE(751)] = 46509, + [SMALL_STATE(752)] = 46565, + [SMALL_STATE(753)] = 46615, + [SMALL_STATE(754)] = 46681, + [SMALL_STATE(755)] = 46745, + [SMALL_STATE(756)] = 46801, + [SMALL_STATE(757)] = 46863, + [SMALL_STATE(758)] = 46933, + [SMALL_STATE(759)] = 47003, + [SMALL_STATE(760)] = 47053, + [SMALL_STATE(761)] = 47103, + [SMALL_STATE(762)] = 47171, + [SMALL_STATE(763)] = 47231, + [SMALL_STATE(764)] = 47310, + [SMALL_STATE(765)] = 47357, + [SMALL_STATE(766)] = 47436, + [SMALL_STATE(767)] = 47485, + [SMALL_STATE(768)] = 47534, + [SMALL_STATE(769)] = 47583, + [SMALL_STATE(770)] = 47632, + [SMALL_STATE(771)] = 47681, + [SMALL_STATE(772)] = 47730, + [SMALL_STATE(773)] = 47775, + [SMALL_STATE(774)] = 47822, + [SMALL_STATE(775)] = 47871, + [SMALL_STATE(776)] = 47920, + [SMALL_STATE(777)] = 47969, + [SMALL_STATE(778)] = 48014, + [SMALL_STATE(779)] = 48063, + [SMALL_STATE(780)] = 48112, + [SMALL_STATE(781)] = 48189, + [SMALL_STATE(782)] = 48236, + [SMALL_STATE(783)] = 48285, + [SMALL_STATE(784)] = 48332, + [SMALL_STATE(785)] = 48386, + [SMALL_STATE(786)] = 48450, + [SMALL_STATE(787)] = 48504, + [SMALL_STATE(788)] = 48548, + [SMALL_STATE(789)] = 48592, + [SMALL_STATE(790)] = 48660, + [SMALL_STATE(791)] = 48728, + [SMALL_STATE(792)] = 48782, + [SMALL_STATE(793)] = 48858, + [SMALL_STATE(794)] = 48906, + [SMALL_STATE(795)] = 48954, + [SMALL_STATE(796)] = 48998, + [SMALL_STATE(797)] = 49042, + [SMALL_STATE(798)] = 49096, + [SMALL_STATE(799)] = 49150, + [SMALL_STATE(800)] = 49204, + [SMALL_STATE(801)] = 49258, + [SMALL_STATE(802)] = 49312, + [SMALL_STATE(803)] = 49372, + [SMALL_STATE(804)] = 49426, + [SMALL_STATE(805)] = 49494, + [SMALL_STATE(806)] = 49562, + [SMALL_STATE(807)] = 49628, + [SMALL_STATE(808)] = 49686, + [SMALL_STATE(809)] = 49740, + [SMALL_STATE(810)] = 49808, + [SMALL_STATE(811)] = 49872, + [SMALL_STATE(812)] = 49934, + [SMALL_STATE(813)] = 50000, + [SMALL_STATE(814)] = 50068, + [SMALL_STATE(815)] = 50136, + [SMALL_STATE(816)] = 50194, + [SMALL_STATE(817)] = 50248, + [SMALL_STATE(818)] = 50308, + [SMALL_STATE(819)] = 50376, + [SMALL_STATE(820)] = 50440, + [SMALL_STATE(821)] = 50502, + [SMALL_STATE(822)] = 50564, + [SMALL_STATE(823)] = 50632, + [SMALL_STATE(824)] = 50698, + [SMALL_STATE(825)] = 50756, + [SMALL_STATE(826)] = 50810, + [SMALL_STATE(827)] = 50870, + [SMALL_STATE(828)] = 50951, + [SMALL_STATE(829)] = 50998, + [SMALL_STATE(830)] = 51043, + [SMALL_STATE(831)] = 51124, + [SMALL_STATE(832)] = 51177, + [SMALL_STATE(833)] = 51236, + [SMALL_STATE(834)] = 51289, + [SMALL_STATE(835)] = 51334, + [SMALL_STATE(836)] = 51387, + [SMALL_STATE(837)] = 51430, + [SMALL_STATE(838)] = 51473, + [SMALL_STATE(839)] = 51540, + [SMALL_STATE(840)] = 51585, + [SMALL_STATE(841)] = 51650, + [SMALL_STATE(842)] = 51707, + [SMALL_STATE(843)] = 51754, + [SMALL_STATE(844)] = 51797, + [SMALL_STATE(845)] = 51842, + [SMALL_STATE(846)] = 51905, + [SMALL_STATE(847)] = 51966, + [SMALL_STATE(848)] = 52047, + [SMALL_STATE(849)] = 52092, + [SMALL_STATE(850)] = 52139, + [SMALL_STATE(851)] = 52184, + [SMALL_STATE(852)] = 52229, + [SMALL_STATE(853)] = 52272, + [SMALL_STATE(854)] = 52315, + [SMALL_STATE(855)] = 52360, + [SMALL_STATE(856)] = 52427, + [SMALL_STATE(857)] = 52494, + [SMALL_STATE(858)] = 52537, + [SMALL_STATE(859)] = 52618, + [SMALL_STATE(860)] = 52663, + [SMALL_STATE(861)] = 52706, + [SMALL_STATE(862)] = 52751, + [SMALL_STATE(863)] = 52798, + [SMALL_STATE(864)] = 52843, + [SMALL_STATE(865)] = 52886, + [SMALL_STATE(866)] = 52931, + [SMALL_STATE(867)] = 52984, + [SMALL_STATE(868)] = 53026, + [SMALL_STATE(869)] = 53068, + [SMALL_STATE(870)] = 53110, + [SMALL_STATE(871)] = 53152, + [SMALL_STATE(872)] = 53196, + [SMALL_STATE(873)] = 53240, + [SMALL_STATE(874)] = 53282, + [SMALL_STATE(875)] = 53360, + [SMALL_STATE(876)] = 53438, + [SMALL_STATE(877)] = 53480, + [SMALL_STATE(878)] = 53524, + [SMALL_STATE(879)] = 53566, + [SMALL_STATE(880)] = 53610, + [SMALL_STATE(881)] = 53652, + [SMALL_STATE(882)] = 53694, + [SMALL_STATE(883)] = 53736, + [SMALL_STATE(884)] = 53780, + [SMALL_STATE(885)] = 53822, + [SMALL_STATE(886)] = 53864, + [SMALL_STATE(887)] = 53906, + [SMALL_STATE(888)] = 53948, + [SMALL_STATE(889)] = 53990, + [SMALL_STATE(890)] = 54070, + [SMALL_STATE(891)] = 54112, + [SMALL_STATE(892)] = 54154, + [SMALL_STATE(893)] = 54196, + [SMALL_STATE(894)] = 54238, + [SMALL_STATE(895)] = 54280, + [SMALL_STATE(896)] = 54322, + [SMALL_STATE(897)] = 54364, + [SMALL_STATE(898)] = 54406, + [SMALL_STATE(899)] = 54448, + [SMALL_STATE(900)] = 54526, + [SMALL_STATE(901)] = 54568, + [SMALL_STATE(902)] = 54610, + [SMALL_STATE(903)] = 54652, + [SMALL_STATE(904)] = 54694, + [SMALL_STATE(905)] = 54736, + [SMALL_STATE(906)] = 54778, + [SMALL_STATE(907)] = 54820, + [SMALL_STATE(908)] = 54862, + [SMALL_STATE(909)] = 54904, + [SMALL_STATE(910)] = 54946, + [SMALL_STATE(911)] = 54988, + [SMALL_STATE(912)] = 55030, + [SMALL_STATE(913)] = 55072, + [SMALL_STATE(914)] = 55114, + [SMALL_STATE(915)] = 55156, + [SMALL_STATE(916)] = 55198, + [SMALL_STATE(917)] = 55240, + [SMALL_STATE(918)] = 55282, + [SMALL_STATE(919)] = 55324, + [SMALL_STATE(920)] = 55366, + [SMALL_STATE(921)] = 55408, + [SMALL_STATE(922)] = 55450, + [SMALL_STATE(923)] = 55492, + [SMALL_STATE(924)] = 55570, + [SMALL_STATE(925)] = 55648, + [SMALL_STATE(926)] = 55690, + [SMALL_STATE(927)] = 55732, + [SMALL_STATE(928)] = 55774, + [SMALL_STATE(929)] = 55816, + [SMALL_STATE(930)] = 55858, + [SMALL_STATE(931)] = 55900, + [SMALL_STATE(932)] = 55942, + [SMALL_STATE(933)] = 55984, + [SMALL_STATE(934)] = 56026, + [SMALL_STATE(935)] = 56068, + [SMALL_STATE(936)] = 56110, + [SMALL_STATE(937)] = 56152, + [SMALL_STATE(938)] = 56194, + [SMALL_STATE(939)] = 56236, + [SMALL_STATE(940)] = 56278, + [SMALL_STATE(941)] = 56320, + [SMALL_STATE(942)] = 56362, + [SMALL_STATE(943)] = 56404, + [SMALL_STATE(944)] = 56446, + [SMALL_STATE(945)] = 56488, + [SMALL_STATE(946)] = 56530, + [SMALL_STATE(947)] = 56571, + [SMALL_STATE(948)] = 56612, + [SMALL_STATE(949)] = 56653, + [SMALL_STATE(950)] = 56694, + [SMALL_STATE(951)] = 56735, + [SMALL_STATE(952)] = 56776, + [SMALL_STATE(953)] = 56817, + [SMALL_STATE(954)] = 56858, + [SMALL_STATE(955)] = 56903, + [SMALL_STATE(956)] = 56944, + [SMALL_STATE(957)] = 56985, + [SMALL_STATE(958)] = 57026, + [SMALL_STATE(959)] = 57067, + [SMALL_STATE(960)] = 57108, + [SMALL_STATE(961)] = 57149, + [SMALL_STATE(962)] = 57190, + [SMALL_STATE(963)] = 57231, + [SMALL_STATE(964)] = 57272, + [SMALL_STATE(965)] = 57313, + [SMALL_STATE(966)] = 57354, + [SMALL_STATE(967)] = 57395, + [SMALL_STATE(968)] = 57436, + [SMALL_STATE(969)] = 57477, + [SMALL_STATE(970)] = 57556, + [SMALL_STATE(971)] = 57597, + [SMALL_STATE(972)] = 57642, + [SMALL_STATE(973)] = 57717, + [SMALL_STATE(974)] = 57796, + [SMALL_STATE(975)] = 57837, + [SMALL_STATE(976)] = 57878, + [SMALL_STATE(977)] = 57919, + [SMALL_STATE(978)] = 57960, + [SMALL_STATE(979)] = 58001, + [SMALL_STATE(980)] = 58042, + [SMALL_STATE(981)] = 58121, + [SMALL_STATE(982)] = 58162, + [SMALL_STATE(983)] = 58203, + [SMALL_STATE(984)] = 58244, + [SMALL_STATE(985)] = 58285, + [SMALL_STATE(986)] = 58358, + [SMALL_STATE(987)] = 58428, + [SMALL_STATE(988)] = 58498, + [SMALL_STATE(989)] = 58560, + [SMALL_STATE(990)] = 58622, + [SMALL_STATE(991)] = 58661, + [SMALL_STATE(992)] = 58700, + [SMALL_STATE(993)] = 58739, + [SMALL_STATE(994)] = 58778, + [SMALL_STATE(995)] = 58808, + [SMALL_STATE(996)] = 58861, + [SMALL_STATE(997)] = 58896, + [SMALL_STATE(998)] = 58925, + [SMALL_STATE(999)] = 58950, + [SMALL_STATE(1000)] = 58975, + [SMALL_STATE(1001)] = 59012, + [SMALL_STATE(1002)] = 59037, + [SMALL_STATE(1003)] = 59062, + [SMALL_STATE(1004)] = 59099, + [SMALL_STATE(1005)] = 59128, + [SMALL_STATE(1006)] = 59165, + [SMALL_STATE(1007)] = 59200, + [SMALL_STATE(1008)] = 59253, + [SMALL_STATE(1009)] = 59290, + [SMALL_STATE(1010)] = 59343, + [SMALL_STATE(1011)] = 59377, + [SMALL_STATE(1012)] = 59411, + [SMALL_STATE(1013)] = 59439, + [SMALL_STATE(1014)] = 59485, + [SMALL_STATE(1015)] = 59528, + [SMALL_STATE(1016)] = 59571, + [SMALL_STATE(1017)] = 59614, + [SMALL_STATE(1018)] = 59645, + [SMALL_STATE(1019)] = 59688, + [SMALL_STATE(1020)] = 59731, + [SMALL_STATE(1021)] = 59774, + [SMALL_STATE(1022)] = 59817, + [SMALL_STATE(1023)] = 59857, + [SMALL_STATE(1024)] = 59901, + [SMALL_STATE(1025)] = 59938, + [SMALL_STATE(1026)] = 59975, + [SMALL_STATE(1027)] = 60000, + [SMALL_STATE(1028)] = 60037, + [SMALL_STATE(1029)] = 60074, + [SMALL_STATE(1030)] = 60108, + [SMALL_STATE(1031)] = 60142, + [SMALL_STATE(1032)] = 60163, + [SMALL_STATE(1033)] = 60184, + [SMALL_STATE(1034)] = 60206, + [SMALL_STATE(1035)] = 60237, + [SMALL_STATE(1036)] = 60258, + [SMALL_STATE(1037)] = 60281, + [SMALL_STATE(1038)] = 60312, + [SMALL_STATE(1039)] = 60343, + [SMALL_STATE(1040)] = 60374, + [SMALL_STATE(1041)] = 60405, + [SMALL_STATE(1042)] = 60442, + [SMALL_STATE(1043)] = 60473, + [SMALL_STATE(1044)] = 60504, + [SMALL_STATE(1045)] = 60535, + [SMALL_STATE(1046)] = 60566, + [SMALL_STATE(1047)] = 60597, + [SMALL_STATE(1048)] = 60628, + [SMALL_STATE(1049)] = 60659, + [SMALL_STATE(1050)] = 60690, + [SMALL_STATE(1051)] = 60721, + [SMALL_STATE(1052)] = 60752, + [SMALL_STATE(1053)] = 60783, + [SMALL_STATE(1054)] = 60814, + [SMALL_STATE(1055)] = 60845, + [SMALL_STATE(1056)] = 60882, + [SMALL_STATE(1057)] = 60899, + [SMALL_STATE(1058)] = 60936, + [SMALL_STATE(1059)] = 60973, + [SMALL_STATE(1060)] = 61010, + [SMALL_STATE(1061)] = 61033, + [SMALL_STATE(1062)] = 61054, + [SMALL_STATE(1063)] = 61085, + [SMALL_STATE(1064)] = 61107, + [SMALL_STATE(1065)] = 61141, + [SMALL_STATE(1066)] = 61165, + [SMALL_STATE(1067)] = 61187, + [SMALL_STATE(1068)] = 61209, + [SMALL_STATE(1069)] = 61243, + [SMALL_STATE(1070)] = 61265, + [SMALL_STATE(1071)] = 61299, + [SMALL_STATE(1072)] = 61333, + [SMALL_STATE(1073)] = 61357, + [SMALL_STATE(1074)] = 61379, + [SMALL_STATE(1075)] = 61399, + [SMALL_STATE(1076)] = 61433, + [SMALL_STATE(1077)] = 61453, + [SMALL_STATE(1078)] = 61471, + [SMALL_STATE(1079)] = 61491, + [SMALL_STATE(1080)] = 61525, + [SMALL_STATE(1081)] = 61547, + [SMALL_STATE(1082)] = 61567, + [SMALL_STATE(1083)] = 61591, + [SMALL_STATE(1084)] = 61625, + [SMALL_STATE(1085)] = 61659, + [SMALL_STATE(1086)] = 61693, + [SMALL_STATE(1087)] = 61727, + [SMALL_STATE(1088)] = 61761, + [SMALL_STATE(1089)] = 61779, + [SMALL_STATE(1090)] = 61797, + [SMALL_STATE(1091)] = 61831, + [SMALL_STATE(1092)] = 61854, + [SMALL_STATE(1093)] = 61873, + [SMALL_STATE(1094)] = 61892, + [SMALL_STATE(1095)] = 61913, + [SMALL_STATE(1096)] = 61936, + [SMALL_STATE(1097)] = 61961, + [SMALL_STATE(1098)] = 61980, + [SMALL_STATE(1099)] = 61999, + [SMALL_STATE(1100)] = 62018, + [SMALL_STATE(1101)] = 62037, + [SMALL_STATE(1102)] = 62060, + [SMALL_STATE(1103)] = 62085, + [SMALL_STATE(1104)] = 62099, + [SMALL_STATE(1105)] = 62113, + [SMALL_STATE(1106)] = 62127, + [SMALL_STATE(1107)] = 62141, + [SMALL_STATE(1108)] = 62155, + [SMALL_STATE(1109)] = 62169, + [SMALL_STATE(1110)] = 62183, + [SMALL_STATE(1111)] = 62197, + [SMALL_STATE(1112)] = 62219, + [SMALL_STATE(1113)] = 62237, + [SMALL_STATE(1114)] = 62255, + [SMALL_STATE(1115)] = 62269, + [SMALL_STATE(1116)] = 62283, + [SMALL_STATE(1117)] = 62297, + [SMALL_STATE(1118)] = 62315, + [SMALL_STATE(1119)] = 62329, + [SMALL_STATE(1120)] = 62347, + [SMALL_STATE(1121)] = 62367, + [SMALL_STATE(1122)] = 62385, + [SMALL_STATE(1123)] = 62401, + [SMALL_STATE(1124)] = 62419, + [SMALL_STATE(1125)] = 62439, + [SMALL_STATE(1126)] = 62459, + [SMALL_STATE(1127)] = 62477, + [SMALL_STATE(1128)] = 62501, + [SMALL_STATE(1129)] = 62525, + [SMALL_STATE(1130)] = 62539, + [SMALL_STATE(1131)] = 62553, + [SMALL_STATE(1132)] = 62573, + [SMALL_STATE(1133)] = 62587, + [SMALL_STATE(1134)] = 62601, + [SMALL_STATE(1135)] = 62627, + [SMALL_STATE(1136)] = 62649, + [SMALL_STATE(1137)] = 62663, + [SMALL_STATE(1138)] = 62677, + [SMALL_STATE(1139)] = 62691, + [SMALL_STATE(1140)] = 62707, + [SMALL_STATE(1141)] = 62721, + [SMALL_STATE(1142)] = 62739, + [SMALL_STATE(1143)] = 62759, + [SMALL_STATE(1144)] = 62779, + [SMALL_STATE(1145)] = 62803, + [SMALL_STATE(1146)] = 62823, + [SMALL_STATE(1147)] = 62839, + [SMALL_STATE(1148)] = 62857, + [SMALL_STATE(1149)] = 62871, + [SMALL_STATE(1150)] = 62893, + [SMALL_STATE(1151)] = 62907, + [SMALL_STATE(1152)] = 62927, + [SMALL_STATE(1153)] = 62947, + [SMALL_STATE(1154)] = 62967, + [SMALL_STATE(1155)] = 62987, + [SMALL_STATE(1156)] = 63007, + [SMALL_STATE(1157)] = 63021, + [SMALL_STATE(1158)] = 63039, + [SMALL_STATE(1159)] = 63057, + [SMALL_STATE(1160)] = 63077, + [SMALL_STATE(1161)] = 63095, + [SMALL_STATE(1162)] = 63111, + [SMALL_STATE(1163)] = 63129, + [SMALL_STATE(1164)] = 63149, + [SMALL_STATE(1165)] = 63169, + [SMALL_STATE(1166)] = 63187, + [SMALL_STATE(1167)] = 63205, + [SMALL_STATE(1168)] = 63219, + [SMALL_STATE(1169)] = 63233, + [SMALL_STATE(1170)] = 63247, + [SMALL_STATE(1171)] = 63272, + [SMALL_STATE(1172)] = 63293, + [SMALL_STATE(1173)] = 63306, + [SMALL_STATE(1174)] = 63319, + [SMALL_STATE(1175)] = 63344, + [SMALL_STATE(1176)] = 63365, + [SMALL_STATE(1177)] = 63388, + [SMALL_STATE(1178)] = 63411, + [SMALL_STATE(1179)] = 63430, + [SMALL_STATE(1180)] = 63453, + [SMALL_STATE(1181)] = 63472, + [SMALL_STATE(1182)] = 63495, + [SMALL_STATE(1183)] = 63518, + [SMALL_STATE(1184)] = 63543, + [SMALL_STATE(1185)] = 63562, + [SMALL_STATE(1186)] = 63581, + [SMALL_STATE(1187)] = 63594, + [SMALL_STATE(1188)] = 63611, + [SMALL_STATE(1189)] = 63630, + [SMALL_STATE(1190)] = 63643, + [SMALL_STATE(1191)] = 63668, + [SMALL_STATE(1192)] = 63687, + [SMALL_STATE(1193)] = 63712, + [SMALL_STATE(1194)] = 63731, + [SMALL_STATE(1195)] = 63750, + [SMALL_STATE(1196)] = 63773, + [SMALL_STATE(1197)] = 63792, + [SMALL_STATE(1198)] = 63809, + [SMALL_STATE(1199)] = 63824, + [SMALL_STATE(1200)] = 63849, + [SMALL_STATE(1201)] = 63866, + [SMALL_STATE(1202)] = 63885, + [SMALL_STATE(1203)] = 63904, + [SMALL_STATE(1204)] = 63929, + [SMALL_STATE(1205)] = 63954, + [SMALL_STATE(1206)] = 63975, + [SMALL_STATE(1207)] = 63998, + [SMALL_STATE(1208)] = 64021, + [SMALL_STATE(1209)] = 64034, + [SMALL_STATE(1210)] = 64055, + [SMALL_STATE(1211)] = 64080, + [SMALL_STATE(1212)] = 64093, + [SMALL_STATE(1213)] = 64112, + [SMALL_STATE(1214)] = 64133, + [SMALL_STATE(1215)] = 64158, + [SMALL_STATE(1216)] = 64173, + [SMALL_STATE(1217)] = 64196, + [SMALL_STATE(1218)] = 64212, + [SMALL_STATE(1219)] = 64228, + [SMALL_STATE(1220)] = 64244, + [SMALL_STATE(1221)] = 64260, + [SMALL_STATE(1222)] = 64272, + [SMALL_STATE(1223)] = 64288, + [SMALL_STATE(1224)] = 64308, + [SMALL_STATE(1225)] = 64324, + [SMALL_STATE(1226)] = 64342, + [SMALL_STATE(1227)] = 64356, + [SMALL_STATE(1228)] = 64376, + [SMALL_STATE(1229)] = 64392, + [SMALL_STATE(1230)] = 64410, + [SMALL_STATE(1231)] = 64424, + [SMALL_STATE(1232)] = 64440, + [SMALL_STATE(1233)] = 64462, + [SMALL_STATE(1234)] = 64478, + [SMALL_STATE(1235)] = 64500, + [SMALL_STATE(1236)] = 64518, + [SMALL_STATE(1237)] = 64538, + [SMALL_STATE(1238)] = 64560, + [SMALL_STATE(1239)] = 64582, + [SMALL_STATE(1240)] = 64594, + [SMALL_STATE(1241)] = 64612, + [SMALL_STATE(1242)] = 64634, + [SMALL_STATE(1243)] = 64652, + [SMALL_STATE(1244)] = 64670, + [SMALL_STATE(1245)] = 64688, + [SMALL_STATE(1246)] = 64710, + [SMALL_STATE(1247)] = 64732, + [SMALL_STATE(1248)] = 64748, + [SMALL_STATE(1249)] = 64768, + [SMALL_STATE(1250)] = 64784, + [SMALL_STATE(1251)] = 64800, + [SMALL_STATE(1252)] = 64814, + [SMALL_STATE(1253)] = 64828, + [SMALL_STATE(1254)] = 64846, + [SMALL_STATE(1255)] = 64860, + [SMALL_STATE(1256)] = 64874, + [SMALL_STATE(1257)] = 64894, + [SMALL_STATE(1258)] = 64910, + [SMALL_STATE(1259)] = 64927, + [SMALL_STATE(1260)] = 64938, + [SMALL_STATE(1261)] = 64955, + [SMALL_STATE(1262)] = 64972, + [SMALL_STATE(1263)] = 64983, + [SMALL_STATE(1264)] = 65000, + [SMALL_STATE(1265)] = 65017, + [SMALL_STATE(1266)] = 65034, + [SMALL_STATE(1267)] = 65045, + [SMALL_STATE(1268)] = 65060, + [SMALL_STATE(1269)] = 65077, + [SMALL_STATE(1270)] = 65096, + [SMALL_STATE(1271)] = 65113, + [SMALL_STATE(1272)] = 65132, + [SMALL_STATE(1273)] = 65147, + [SMALL_STATE(1274)] = 65166, + [SMALL_STATE(1275)] = 65183, + [SMALL_STATE(1276)] = 65200, + [SMALL_STATE(1277)] = 65217, + [SMALL_STATE(1278)] = 65234, + [SMALL_STATE(1279)] = 65249, + [SMALL_STATE(1280)] = 65268, + [SMALL_STATE(1281)] = 65285, + [SMALL_STATE(1282)] = 65302, + [SMALL_STATE(1283)] = 65319, + [SMALL_STATE(1284)] = 65338, + [SMALL_STATE(1285)] = 65353, + [SMALL_STATE(1286)] = 65370, + [SMALL_STATE(1287)] = 65385, + [SMALL_STATE(1288)] = 65400, + [SMALL_STATE(1289)] = 65419, + [SMALL_STATE(1290)] = 65436, + [SMALL_STATE(1291)] = 65451, + [SMALL_STATE(1292)] = 65470, + [SMALL_STATE(1293)] = 65489, + [SMALL_STATE(1294)] = 65500, + [SMALL_STATE(1295)] = 65511, + [SMALL_STATE(1296)] = 65528, + [SMALL_STATE(1297)] = 65544, + [SMALL_STATE(1298)] = 65558, + [SMALL_STATE(1299)] = 65572, + [SMALL_STATE(1300)] = 65588, + [SMALL_STATE(1301)] = 65604, + [SMALL_STATE(1302)] = 65620, + [SMALL_STATE(1303)] = 65634, + [SMALL_STATE(1304)] = 65648, + [SMALL_STATE(1305)] = 65662, + [SMALL_STATE(1306)] = 65678, + [SMALL_STATE(1307)] = 65694, + [SMALL_STATE(1308)] = 65710, + [SMALL_STATE(1309)] = 65726, + [SMALL_STATE(1310)] = 65742, + [SMALL_STATE(1311)] = 65756, + [SMALL_STATE(1312)] = 65770, + [SMALL_STATE(1313)] = 65786, + [SMALL_STATE(1314)] = 65802, + [SMALL_STATE(1315)] = 65816, + [SMALL_STATE(1316)] = 65830, + [SMALL_STATE(1317)] = 65846, + [SMALL_STATE(1318)] = 65856, + [SMALL_STATE(1319)] = 65872, + [SMALL_STATE(1320)] = 65888, + [SMALL_STATE(1321)] = 65902, + [SMALL_STATE(1322)] = 65916, + [SMALL_STATE(1323)] = 65930, + [SMALL_STATE(1324)] = 65944, + [SMALL_STATE(1325)] = 65958, + [SMALL_STATE(1326)] = 65970, + [SMALL_STATE(1327)] = 65982, + [SMALL_STATE(1328)] = 65998, + [SMALL_STATE(1329)] = 66012, + [SMALL_STATE(1330)] = 66026, + [SMALL_STATE(1331)] = 66040, + [SMALL_STATE(1332)] = 66056, + [SMALL_STATE(1333)] = 66072, + [SMALL_STATE(1334)] = 66088, + [SMALL_STATE(1335)] = 66104, + [SMALL_STATE(1336)] = 66120, + [SMALL_STATE(1337)] = 66136, + [SMALL_STATE(1338)] = 66152, + [SMALL_STATE(1339)] = 66166, + [SMALL_STATE(1340)] = 66182, + [SMALL_STATE(1341)] = 66196, + [SMALL_STATE(1342)] = 66206, + [SMALL_STATE(1343)] = 66220, + [SMALL_STATE(1344)] = 66236, + [SMALL_STATE(1345)] = 66246, + [SMALL_STATE(1346)] = 66262, + [SMALL_STATE(1347)] = 66272, + [SMALL_STATE(1348)] = 66288, + [SMALL_STATE(1349)] = 66298, + [SMALL_STATE(1350)] = 66314, + [SMALL_STATE(1351)] = 66328, + [SMALL_STATE(1352)] = 66344, + [SMALL_STATE(1353)] = 66360, + [SMALL_STATE(1354)] = 66374, + [SMALL_STATE(1355)] = 66388, + [SMALL_STATE(1356)] = 66404, + [SMALL_STATE(1357)] = 66420, + [SMALL_STATE(1358)] = 66436, + [SMALL_STATE(1359)] = 66452, + [SMALL_STATE(1360)] = 66468, + [SMALL_STATE(1361)] = 66482, + [SMALL_STATE(1362)] = 66498, + [SMALL_STATE(1363)] = 66514, + [SMALL_STATE(1364)] = 66528, + [SMALL_STATE(1365)] = 66544, + [SMALL_STATE(1366)] = 66558, + [SMALL_STATE(1367)] = 66574, + [SMALL_STATE(1368)] = 66588, + [SMALL_STATE(1369)] = 66602, + [SMALL_STATE(1370)] = 66618, + [SMALL_STATE(1371)] = 66632, + [SMALL_STATE(1372)] = 66646, + [SMALL_STATE(1373)] = 66660, + [SMALL_STATE(1374)] = 66674, + [SMALL_STATE(1375)] = 66688, + [SMALL_STATE(1376)] = 66704, + [SMALL_STATE(1377)] = 66720, + [SMALL_STATE(1378)] = 66734, + [SMALL_STATE(1379)] = 66744, + [SMALL_STATE(1380)] = 66757, + [SMALL_STATE(1381)] = 66766, + [SMALL_STATE(1382)] = 66775, + [SMALL_STATE(1383)] = 66788, + [SMALL_STATE(1384)] = 66797, + [SMALL_STATE(1385)] = 66810, + [SMALL_STATE(1386)] = 66823, + [SMALL_STATE(1387)] = 66836, + [SMALL_STATE(1388)] = 66849, + [SMALL_STATE(1389)] = 66858, + [SMALL_STATE(1390)] = 66867, + [SMALL_STATE(1391)] = 66880, + [SMALL_STATE(1392)] = 66889, + [SMALL_STATE(1393)] = 66900, + [SMALL_STATE(1394)] = 66913, + [SMALL_STATE(1395)] = 66926, + [SMALL_STATE(1396)] = 66939, + [SMALL_STATE(1397)] = 66952, + [SMALL_STATE(1398)] = 66965, + [SMALL_STATE(1399)] = 66978, + [SMALL_STATE(1400)] = 66991, + [SMALL_STATE(1401)] = 67004, + [SMALL_STATE(1402)] = 67017, + [SMALL_STATE(1403)] = 67030, + [SMALL_STATE(1404)] = 67043, + [SMALL_STATE(1405)] = 67056, + [SMALL_STATE(1406)] = 67069, + [SMALL_STATE(1407)] = 67082, + [SMALL_STATE(1408)] = 67095, + [SMALL_STATE(1409)] = 67108, + [SMALL_STATE(1410)] = 67121, + [SMALL_STATE(1411)] = 67134, + [SMALL_STATE(1412)] = 67147, + [SMALL_STATE(1413)] = 67160, + [SMALL_STATE(1414)] = 67173, + [SMALL_STATE(1415)] = 67184, + [SMALL_STATE(1416)] = 67197, + [SMALL_STATE(1417)] = 67210, + [SMALL_STATE(1418)] = 67223, + [SMALL_STATE(1419)] = 67236, + [SMALL_STATE(1420)] = 67249, + [SMALL_STATE(1421)] = 67262, + [SMALL_STATE(1422)] = 67275, + [SMALL_STATE(1423)] = 67288, + [SMALL_STATE(1424)] = 67301, + [SMALL_STATE(1425)] = 67314, + [SMALL_STATE(1426)] = 67327, + [SMALL_STATE(1427)] = 67340, + [SMALL_STATE(1428)] = 67353, + [SMALL_STATE(1429)] = 67366, + [SMALL_STATE(1430)] = 67375, + [SMALL_STATE(1431)] = 67388, + [SMALL_STATE(1432)] = 67401, + [SMALL_STATE(1433)] = 67414, + [SMALL_STATE(1434)] = 67427, + [SMALL_STATE(1435)] = 67440, + [SMALL_STATE(1436)] = 67453, + [SMALL_STATE(1437)] = 67466, + [SMALL_STATE(1438)] = 67479, + [SMALL_STATE(1439)] = 67492, + [SMALL_STATE(1440)] = 67505, + [SMALL_STATE(1441)] = 67518, + [SMALL_STATE(1442)] = 67531, + [SMALL_STATE(1443)] = 67544, + [SMALL_STATE(1444)] = 67553, + [SMALL_STATE(1445)] = 67566, + [SMALL_STATE(1446)] = 67579, + [SMALL_STATE(1447)] = 67590, + [SMALL_STATE(1448)] = 67603, + [SMALL_STATE(1449)] = 67616, + [SMALL_STATE(1450)] = 67629, + [SMALL_STATE(1451)] = 67642, + [SMALL_STATE(1452)] = 67651, + [SMALL_STATE(1453)] = 67664, + [SMALL_STATE(1454)] = 67677, + [SMALL_STATE(1455)] = 67686, + [SMALL_STATE(1456)] = 67699, + [SMALL_STATE(1457)] = 67712, + [SMALL_STATE(1458)] = 67725, + [SMALL_STATE(1459)] = 67736, + [SMALL_STATE(1460)] = 67749, + [SMALL_STATE(1461)] = 67762, + [SMALL_STATE(1462)] = 67775, + [SMALL_STATE(1463)] = 67788, + [SMALL_STATE(1464)] = 67801, + [SMALL_STATE(1465)] = 67812, + [SMALL_STATE(1466)] = 67823, + [SMALL_STATE(1467)] = 67836, + [SMALL_STATE(1468)] = 67849, + [SMALL_STATE(1469)] = 67862, + [SMALL_STATE(1470)] = 67875, + [SMALL_STATE(1471)] = 67888, + [SMALL_STATE(1472)] = 67901, + [SMALL_STATE(1473)] = 67914, + [SMALL_STATE(1474)] = 67925, + [SMALL_STATE(1475)] = 67938, + [SMALL_STATE(1476)] = 67951, + [SMALL_STATE(1477)] = 67962, + [SMALL_STATE(1478)] = 67975, + [SMALL_STATE(1479)] = 67988, + [SMALL_STATE(1480)] = 68001, + [SMALL_STATE(1481)] = 68014, + [SMALL_STATE(1482)] = 68023, + [SMALL_STATE(1483)] = 68036, + [SMALL_STATE(1484)] = 68049, + [SMALL_STATE(1485)] = 68062, + [SMALL_STATE(1486)] = 68075, + [SMALL_STATE(1487)] = 68084, + [SMALL_STATE(1488)] = 68097, + [SMALL_STATE(1489)] = 68110, + [SMALL_STATE(1490)] = 68123, + [SMALL_STATE(1491)] = 68136, + [SMALL_STATE(1492)] = 68145, + [SMALL_STATE(1493)] = 68156, + [SMALL_STATE(1494)] = 68169, + [SMALL_STATE(1495)] = 68178, + [SMALL_STATE(1496)] = 68187, + [SMALL_STATE(1497)] = 68200, + [SMALL_STATE(1498)] = 68213, + [SMALL_STATE(1499)] = 68226, + [SMALL_STATE(1500)] = 68239, + [SMALL_STATE(1501)] = 68250, + [SMALL_STATE(1502)] = 68263, + [SMALL_STATE(1503)] = 68276, + [SMALL_STATE(1504)] = 68289, + [SMALL_STATE(1505)] = 68300, + [SMALL_STATE(1506)] = 68313, + [SMALL_STATE(1507)] = 68326, + [SMALL_STATE(1508)] = 68339, + [SMALL_STATE(1509)] = 68352, + [SMALL_STATE(1510)] = 68365, + [SMALL_STATE(1511)] = 68376, + [SMALL_STATE(1512)] = 68389, + [SMALL_STATE(1513)] = 68399, + [SMALL_STATE(1514)] = 68407, + [SMALL_STATE(1515)] = 68417, + [SMALL_STATE(1516)] = 68425, + [SMALL_STATE(1517)] = 68433, + [SMALL_STATE(1518)] = 68441, + [SMALL_STATE(1519)] = 68451, + [SMALL_STATE(1520)] = 68459, + [SMALL_STATE(1521)] = 68469, + [SMALL_STATE(1522)] = 68477, + [SMALL_STATE(1523)] = 68485, + [SMALL_STATE(1524)] = 68493, + [SMALL_STATE(1525)] = 68501, + [SMALL_STATE(1526)] = 68509, + [SMALL_STATE(1527)] = 68517, + [SMALL_STATE(1528)] = 68525, + [SMALL_STATE(1529)] = 68533, + [SMALL_STATE(1530)] = 68543, + [SMALL_STATE(1531)] = 68551, + [SMALL_STATE(1532)] = 68561, + [SMALL_STATE(1533)] = 68569, + [SMALL_STATE(1534)] = 68577, + [SMALL_STATE(1535)] = 68585, + [SMALL_STATE(1536)] = 68593, + [SMALL_STATE(1537)] = 68601, + [SMALL_STATE(1538)] = 68609, + [SMALL_STATE(1539)] = 68619, + [SMALL_STATE(1540)] = 68629, + [SMALL_STATE(1541)] = 68639, + [SMALL_STATE(1542)] = 68649, + [SMALL_STATE(1543)] = 68657, + [SMALL_STATE(1544)] = 68667, + [SMALL_STATE(1545)] = 68675, + [SMALL_STATE(1546)] = 68685, + [SMALL_STATE(1547)] = 68695, + [SMALL_STATE(1548)] = 68705, + [SMALL_STATE(1549)] = 68715, + [SMALL_STATE(1550)] = 68723, + [SMALL_STATE(1551)] = 68733, + [SMALL_STATE(1552)] = 68741, + [SMALL_STATE(1553)] = 68749, + [SMALL_STATE(1554)] = 68757, + [SMALL_STATE(1555)] = 68765, + [SMALL_STATE(1556)] = 68775, + [SMALL_STATE(1557)] = 68785, + [SMALL_STATE(1558)] = 68795, + [SMALL_STATE(1559)] = 68805, + [SMALL_STATE(1560)] = 68813, + [SMALL_STATE(1561)] = 68823, + [SMALL_STATE(1562)] = 68833, + [SMALL_STATE(1563)] = 68843, + [SMALL_STATE(1564)] = 68851, + [SMALL_STATE(1565)] = 68859, + [SMALL_STATE(1566)] = 68869, + [SMALL_STATE(1567)] = 68877, + [SMALL_STATE(1568)] = 68885, + [SMALL_STATE(1569)] = 68895, + [SMALL_STATE(1570)] = 68903, + [SMALL_STATE(1571)] = 68911, + [SMALL_STATE(1572)] = 68919, + [SMALL_STATE(1573)] = 68927, + [SMALL_STATE(1574)] = 68935, + [SMALL_STATE(1575)] = 68943, + [SMALL_STATE(1576)] = 68951, + [SMALL_STATE(1577)] = 68959, + [SMALL_STATE(1578)] = 68967, + [SMALL_STATE(1579)] = 68975, + [SMALL_STATE(1580)] = 68985, + [SMALL_STATE(1581)] = 68993, + [SMALL_STATE(1582)] = 69001, + [SMALL_STATE(1583)] = 69011, + [SMALL_STATE(1584)] = 69021, + [SMALL_STATE(1585)] = 69031, + [SMALL_STATE(1586)] = 69041, + [SMALL_STATE(1587)] = 69049, + [SMALL_STATE(1588)] = 69059, + [SMALL_STATE(1589)] = 69067, + [SMALL_STATE(1590)] = 69075, + [SMALL_STATE(1591)] = 69083, + [SMALL_STATE(1592)] = 69091, + [SMALL_STATE(1593)] = 69098, + [SMALL_STATE(1594)] = 69105, + [SMALL_STATE(1595)] = 69112, + [SMALL_STATE(1596)] = 69119, + [SMALL_STATE(1597)] = 69126, + [SMALL_STATE(1598)] = 69133, + [SMALL_STATE(1599)] = 69140, + [SMALL_STATE(1600)] = 69147, + [SMALL_STATE(1601)] = 69154, + [SMALL_STATE(1602)] = 69161, + [SMALL_STATE(1603)] = 69168, + [SMALL_STATE(1604)] = 69175, + [SMALL_STATE(1605)] = 69182, + [SMALL_STATE(1606)] = 69189, + [SMALL_STATE(1607)] = 69196, + [SMALL_STATE(1608)] = 69203, + [SMALL_STATE(1609)] = 69210, + [SMALL_STATE(1610)] = 69217, + [SMALL_STATE(1611)] = 69224, + [SMALL_STATE(1612)] = 69231, + [SMALL_STATE(1613)] = 69238, + [SMALL_STATE(1614)] = 69245, + [SMALL_STATE(1615)] = 69252, + [SMALL_STATE(1616)] = 69259, + [SMALL_STATE(1617)] = 69266, + [SMALL_STATE(1618)] = 69273, + [SMALL_STATE(1619)] = 69280, + [SMALL_STATE(1620)] = 69287, + [SMALL_STATE(1621)] = 69294, + [SMALL_STATE(1622)] = 69301, + [SMALL_STATE(1623)] = 69308, + [SMALL_STATE(1624)] = 69315, + [SMALL_STATE(1625)] = 69322, + [SMALL_STATE(1626)] = 69329, + [SMALL_STATE(1627)] = 69336, + [SMALL_STATE(1628)] = 69343, + [SMALL_STATE(1629)] = 69350, + [SMALL_STATE(1630)] = 69357, + [SMALL_STATE(1631)] = 69364, + [SMALL_STATE(1632)] = 69371, + [SMALL_STATE(1633)] = 69378, + [SMALL_STATE(1634)] = 69385, + [SMALL_STATE(1635)] = 69392, + [SMALL_STATE(1636)] = 69399, + [SMALL_STATE(1637)] = 69406, + [SMALL_STATE(1638)] = 69413, + [SMALL_STATE(1639)] = 69420, + [SMALL_STATE(1640)] = 69427, + [SMALL_STATE(1641)] = 69434, + [SMALL_STATE(1642)] = 69441, + [SMALL_STATE(1643)] = 69448, + [SMALL_STATE(1644)] = 69455, + [SMALL_STATE(1645)] = 69462, + [SMALL_STATE(1646)] = 69469, + [SMALL_STATE(1647)] = 69476, + [SMALL_STATE(1648)] = 69483, + [SMALL_STATE(1649)] = 69490, + [SMALL_STATE(1650)] = 69497, + [SMALL_STATE(1651)] = 69504, + [SMALL_STATE(1652)] = 69511, + [SMALL_STATE(1653)] = 69518, + [SMALL_STATE(1654)] = 69525, + [SMALL_STATE(1655)] = 69532, + [SMALL_STATE(1656)] = 69539, + [SMALL_STATE(1657)] = 69546, + [SMALL_STATE(1658)] = 69553, + [SMALL_STATE(1659)] = 69560, + [SMALL_STATE(1660)] = 69567, + [SMALL_STATE(1661)] = 69574, + [SMALL_STATE(1662)] = 69581, + [SMALL_STATE(1663)] = 69588, + [SMALL_STATE(1664)] = 69595, + [SMALL_STATE(1665)] = 69602, + [SMALL_STATE(1666)] = 69609, + [SMALL_STATE(1667)] = 69616, + [SMALL_STATE(1668)] = 69623, + [SMALL_STATE(1669)] = 69630, + [SMALL_STATE(1670)] = 69637, + [SMALL_STATE(1671)] = 69644, + [SMALL_STATE(1672)] = 69651, + [SMALL_STATE(1673)] = 69658, + [SMALL_STATE(1674)] = 69665, + [SMALL_STATE(1675)] = 69672, + [SMALL_STATE(1676)] = 69679, + [SMALL_STATE(1677)] = 69686, + [SMALL_STATE(1678)] = 69693, + [SMALL_STATE(1679)] = 69700, + [SMALL_STATE(1680)] = 69707, + [SMALL_STATE(1681)] = 69714, + [SMALL_STATE(1682)] = 69721, + [SMALL_STATE(1683)] = 69728, + [SMALL_STATE(1684)] = 69735, + [SMALL_STATE(1685)] = 69742, + [SMALL_STATE(1686)] = 69749, + [SMALL_STATE(1687)] = 69756, + [SMALL_STATE(1688)] = 69763, + [SMALL_STATE(1689)] = 69770, + [SMALL_STATE(1690)] = 69777, + [SMALL_STATE(1691)] = 69784, + [SMALL_STATE(1692)] = 69791, + [SMALL_STATE(1693)] = 69798, + [SMALL_STATE(1694)] = 69805, + [SMALL_STATE(1695)] = 69812, + [SMALL_STATE(1696)] = 69819, + [SMALL_STATE(1697)] = 69826, + [SMALL_STATE(1698)] = 69833, + [SMALL_STATE(1699)] = 69840, + [SMALL_STATE(1700)] = 69847, + [SMALL_STATE(1701)] = 69854, + [SMALL_STATE(1702)] = 69861, + [SMALL_STATE(1703)] = 69868, + [SMALL_STATE(1704)] = 69875, + [SMALL_STATE(1705)] = 69882, + [SMALL_STATE(1706)] = 69889, + [SMALL_STATE(1707)] = 69896, + [SMALL_STATE(1708)] = 69903, + [SMALL_STATE(1709)] = 69910, + [SMALL_STATE(1710)] = 69917, + [SMALL_STATE(1711)] = 69924, + [SMALL_STATE(1712)] = 69931, + [SMALL_STATE(1713)] = 69938, + [SMALL_STATE(1714)] = 69945, + [SMALL_STATE(1715)] = 69952, + [SMALL_STATE(1716)] = 69959, + [SMALL_STATE(1717)] = 69966, + [SMALL_STATE(1718)] = 69973, + [SMALL_STATE(1719)] = 69980, + [SMALL_STATE(1720)] = 69987, + [SMALL_STATE(1721)] = 69994, + [SMALL_STATE(1722)] = 70001, + [SMALL_STATE(1723)] = 70008, + [SMALL_STATE(1724)] = 70015, + [SMALL_STATE(1725)] = 70022, + [SMALL_STATE(1726)] = 70029, + [SMALL_STATE(1727)] = 70036, + [SMALL_STATE(1728)] = 70043, + [SMALL_STATE(1729)] = 70050, + [SMALL_STATE(1730)] = 70057, + [SMALL_STATE(1731)] = 70064, + [SMALL_STATE(1732)] = 70071, + [SMALL_STATE(1733)] = 70078, }; static const TSParseActionEntry ts_parse_actions[] = { @@ -82371,1687 +83259,1698 @@ static const TSParseActionEntry ts_parse_actions[] = { [1] = {.entry = {.count = 1, .reusable = false}}, RECOVER(), [3] = {.entry = {.count = 1, .reusable = true}}, SHIFT_EXTRA(), [5] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_module, 0, 0, 0), - [7] = {.entry = {.count = 1, .reusable = false}}, SHIFT(462), - [9] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1321), - [11] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1201), - [13] = {.entry = {.count = 1, .reusable = true}}, SHIFT(162), - [15] = {.entry = {.count = 1, .reusable = false}}, SHIFT(384), - [17] = {.entry = {.count = 1, .reusable = false}}, SHIFT(68), - [19] = {.entry = {.count = 1, .reusable = false}}, SHIFT(406), - [21] = {.entry = {.count = 1, .reusable = false}}, SHIFT(217), - [23] = {.entry = {.count = 1, .reusable = false}}, SHIFT(244), - [25] = {.entry = {.count = 1, .reusable = false}}, SHIFT(184), - [27] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1523), - [29] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1525), - [31] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1531), - [33] = {.entry = {.count = 1, .reusable = false}}, SHIFT(385), - [35] = {.entry = {.count = 1, .reusable = false}}, SHIFT(324), - [37] = {.entry = {.count = 1, .reusable = false}}, SHIFT(508), - [39] = {.entry = {.count = 1, .reusable = false}}, SHIFT(407), - [41] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1712), - [43] = {.entry = {.count = 1, .reusable = false}}, SHIFT(288), - [45] = {.entry = {.count = 1, .reusable = false}}, SHIFT(67), - [47] = {.entry = {.count = 1, .reusable = true}}, SHIFT(676), - [49] = {.entry = {.count = 1, .reusable = true}}, SHIFT(157), - [51] = {.entry = {.count = 1, .reusable = true}}, SHIFT(164), - [53] = {.entry = {.count = 1, .reusable = true}}, SHIFT(378), - [55] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1619), - [57] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1585), - [59] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1648), - [61] = {.entry = {.count = 1, .reusable = false}}, SHIFT(367), - [63] = {.entry = {.count = 1, .reusable = false}}, SHIFT(458), - [65] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1629), - [67] = {.entry = {.count = 1, .reusable = true}}, SHIFT(342), - [69] = {.entry = {.count = 1, .reusable = false}}, SHIFT(343), - [71] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1016), - [73] = {.entry = {.count = 1, .reusable = false}}, SHIFT(174), - [75] = {.entry = {.count = 1, .reusable = true}}, SHIFT(908), - [77] = {.entry = {.count = 1, .reusable = false}}, SHIFT(908), - [79] = {.entry = {.count = 1, .reusable = false}}, SHIFT(134), - [81] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1035), - [83] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1037), - [85] = {.entry = {.count = 1, .reusable = false}}, SHIFT(423), - [87] = {.entry = {.count = 1, .reusable = false}}, SHIFT(338), - [89] = {.entry = {.count = 1, .reusable = false}}, SHIFT(493), - [91] = {.entry = {.count = 1, .reusable = false}}, SHIFT(424), - [93] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1688), - [95] = {.entry = {.count = 1, .reusable = false}}, SHIFT(304), - [97] = {.entry = {.count = 1, .reusable = false}}, SHIFT(66), - [99] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1713), - [101] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1691), - [103] = {.entry = {.count = 1, .reusable = true}}, SHIFT(320), - [105] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1521), - [107] = {.entry = {.count = 1, .reusable = true}}, SHIFT(325), - [109] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), - [111] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(462), - [114] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(1321), - [117] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(1201), - [120] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(162), - [123] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(384), - [126] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(68), - [129] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(406), - [132] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(217), - [135] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(244), - [138] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(184), - [141] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(1523), - [144] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(1525), - [147] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(1531), - [150] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(385), - [153] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(324), - [156] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(508), - [159] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(407), - [162] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(1712), - [165] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(288), - [168] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(67), - [171] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(676), - [174] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(157), - [177] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(164), - [180] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(378), - [183] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(1619), - [186] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(1585), - [189] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(1648), - [192] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(367), - [195] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(458), - [198] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(1629), - [201] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(342), - [204] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(343), - [207] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(1016), - [210] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(174), - [213] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(908), - [216] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(908), - [219] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(134), - [222] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(1035), - [225] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(1037), - [228] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1536), - [230] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_module, 1, 0, 0), - [232] = {.entry = {.count = 1, .reusable = true}}, SHIFT(332), - [234] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(423), - [237] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(338), - [240] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(493), - [243] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(424), - [246] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(1688), - [249] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(304), - [252] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(66), - [255] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(1713), - [258] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(1691), - [261] = {.entry = {.count = 1, .reusable = true}}, SHIFT(314), - [263] = {.entry = {.count = 1, .reusable = false}}, SHIFT(774), - [265] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_primary_expression, 1, 0, 1), - [267] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_primary_expression, 1, 0, 1), SHIFT(194), - [270] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_pattern, 1, 0, 1), REDUCE(sym_primary_expression, 1, 0, 1), - [273] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_primary_expression, 1, 0, 1), SHIFT(370), - [276] = {.entry = {.count = 1, .reusable = false}}, SHIFT(773), - [278] = {.entry = {.count = 1, .reusable = true}}, SHIFT(366), - [280] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_pattern, 1, 0, 1), - [282] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_primary_expression, 1, 0, 1), SHIFT(675), - [285] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_primary_expression, 1, 0, 1), SHIFT(197), - [288] = {.entry = {.count = 1, .reusable = true}}, SHIFT(166), - [290] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_primary_expression, 1, 0, 1), SHIFT(378), - [293] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_primary_expression, 1, 0, 1), SHIFT(391), - [296] = {.entry = {.count = 1, .reusable = true}}, SHIFT(675), - [298] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_primary_expression, 1, 0, 1), - [300] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1015), - [302] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_pattern, 1, 0, 1), - [304] = {.entry = {.count = 1, .reusable = true}}, SHIFT(724), - [306] = {.entry = {.count = 1, .reusable = false}}, SHIFT(724), - [308] = {.entry = {.count = 1, .reusable = false}}, SHIFT(136), - [310] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1044), - [312] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1045), - [314] = {.entry = {.count = 1, .reusable = false}}, SHIFT(853), - [316] = {.entry = {.count = 1, .reusable = false}}, SHIFT(826), - [318] = {.entry = {.count = 1, .reusable = false}}, SHIFT(365), - [320] = {.entry = {.count = 1, .reusable = false}}, SHIFT(140), - [322] = {.entry = {.count = 1, .reusable = false}}, SHIFT(465), - [324] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1171), - [326] = {.entry = {.count = 1, .reusable = true}}, SHIFT(31), - [328] = {.entry = {.count = 1, .reusable = true}}, SHIFT(436), - [330] = {.entry = {.count = 1, .reusable = true}}, SHIFT(29), - [332] = {.entry = {.count = 1, .reusable = true}}, SHIFT(550), - [334] = {.entry = {.count = 1, .reusable = true}}, SHIFT(10), - [336] = {.entry = {.count = 1, .reusable = true}}, SHIFT(581), - [338] = {.entry = {.count = 1, .reusable = true}}, SHIFT(11), - [340] = {.entry = {.count = 1, .reusable = true}}, SHIFT(442), - [342] = {.entry = {.count = 1, .reusable = true}}, SHIFT(30), - [344] = {.entry = {.count = 1, .reusable = true}}, SHIFT(606), - [346] = {.entry = {.count = 1, .reusable = true}}, SHIFT(12), - [348] = {.entry = {.count = 1, .reusable = true}}, SHIFT(482), - [350] = {.entry = {.count = 1, .reusable = true}}, SHIFT(13), - [352] = {.entry = {.count = 1, .reusable = true}}, SHIFT(319), - [354] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2), - [356] = {.entry = {.count = 1, .reusable = true}}, SHIFT(489), - [358] = {.entry = {.count = 1, .reusable = true}}, SHIFT(32), - [360] = {.entry = {.count = 1, .reusable = true}}, SHIFT(554), - [362] = {.entry = {.count = 1, .reusable = true}}, SHIFT(33), - [364] = {.entry = {.count = 1, .reusable = true}}, SHIFT(557), - [366] = {.entry = {.count = 1, .reusable = true}}, SHIFT(34), - [368] = {.entry = {.count = 1, .reusable = true}}, SHIFT(454), - [370] = {.entry = {.count = 1, .reusable = true}}, SHIFT(14), - [372] = {.entry = {.count = 1, .reusable = true}}, SHIFT(559), - [374] = {.entry = {.count = 1, .reusable = true}}, SHIFT(35), - [376] = {.entry = {.count = 1, .reusable = true}}, SHIFT(516), - [378] = {.entry = {.count = 1, .reusable = true}}, SHIFT(15), - [380] = {.entry = {.count = 1, .reusable = true}}, SHIFT(520), - [382] = {.entry = {.count = 1, .reusable = true}}, SHIFT(16), - [384] = {.entry = {.count = 1, .reusable = true}}, SHIFT(564), - [386] = {.entry = {.count = 1, .reusable = true}}, SHIFT(36), - [388] = {.entry = {.count = 1, .reusable = true}}, SHIFT(566), - [390] = {.entry = {.count = 1, .reusable = true}}, SHIFT(37), - [392] = {.entry = {.count = 1, .reusable = true}}, SHIFT(567), - [394] = {.entry = {.count = 1, .reusable = true}}, SHIFT(38), - [396] = {.entry = {.count = 1, .reusable = true}}, SHIFT(523), - [398] = {.entry = {.count = 1, .reusable = true}}, SHIFT(17), - [400] = {.entry = {.count = 1, .reusable = true}}, SHIFT(571), - [402] = {.entry = {.count = 1, .reusable = true}}, SHIFT(39), - [404] = {.entry = {.count = 1, .reusable = true}}, SHIFT(491), - [406] = {.entry = {.count = 1, .reusable = true}}, SHIFT(40), - [408] = {.entry = {.count = 1, .reusable = true}}, SHIFT(437), - [410] = {.entry = {.count = 1, .reusable = true}}, SHIFT(41), - [412] = {.entry = {.count = 1, .reusable = true}}, SHIFT(573), - [414] = {.entry = {.count = 1, .reusable = true}}, SHIFT(42), - [416] = {.entry = {.count = 1, .reusable = true}}, SHIFT(546), - [418] = {.entry = {.count = 1, .reusable = true}}, SHIFT(59), - [420] = {.entry = {.count = 1, .reusable = true}}, SHIFT(577), - [422] = {.entry = {.count = 1, .reusable = true}}, SHIFT(43), - [424] = {.entry = {.count = 1, .reusable = true}}, SHIFT(495), - [426] = {.entry = {.count = 1, .reusable = true}}, SHIFT(18), - [428] = {.entry = {.count = 1, .reusable = true}}, SHIFT(579), - [430] = {.entry = {.count = 1, .reusable = true}}, SHIFT(44), - [432] = {.entry = {.count = 1, .reusable = true}}, SHIFT(541), - [434] = {.entry = {.count = 1, .reusable = true}}, SHIFT(9), - [436] = {.entry = {.count = 1, .reusable = true}}, SHIFT(503), - [438] = {.entry = {.count = 1, .reusable = true}}, SHIFT(45), - [440] = {.entry = {.count = 1, .reusable = true}}, SHIFT(480), - [442] = {.entry = {.count = 1, .reusable = true}}, SHIFT(46), - [444] = {.entry = {.count = 1, .reusable = true}}, SHIFT(312), - [446] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4), - [448] = {.entry = {.count = 1, .reusable = true}}, SHIFT(584), - [450] = {.entry = {.count = 1, .reusable = true}}, SHIFT(47), - [452] = {.entry = {.count = 1, .reusable = true}}, SHIFT(527), - [454] = {.entry = {.count = 1, .reusable = true}}, SHIFT(20), - [456] = {.entry = {.count = 1, .reusable = true}}, SHIFT(439), - [458] = {.entry = {.count = 1, .reusable = true}}, SHIFT(48), - [460] = {.entry = {.count = 1, .reusable = true}}, SHIFT(485), - [462] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5), - [464] = {.entry = {.count = 1, .reusable = true}}, SHIFT(504), - [466] = {.entry = {.count = 1, .reusable = true}}, SHIFT(49), - [468] = {.entry = {.count = 1, .reusable = true}}, SHIFT(589), - [470] = {.entry = {.count = 1, .reusable = true}}, SHIFT(50), - [472] = {.entry = {.count = 1, .reusable = true}}, SHIFT(459), - [474] = {.entry = {.count = 1, .reusable = true}}, SHIFT(21), - [476] = {.entry = {.count = 1, .reusable = true}}, SHIFT(488), - [478] = {.entry = {.count = 1, .reusable = true}}, SHIFT(51), - [480] = {.entry = {.count = 1, .reusable = true}}, SHIFT(496), - [482] = {.entry = {.count = 1, .reusable = true}}, SHIFT(22), - [484] = {.entry = {.count = 1, .reusable = true}}, SHIFT(531), - [486] = {.entry = {.count = 1, .reusable = true}}, SHIFT(23), - [488] = {.entry = {.count = 1, .reusable = true}}, SHIFT(593), - [490] = {.entry = {.count = 1, .reusable = true}}, SHIFT(52), - [492] = {.entry = {.count = 1, .reusable = true}}, SHIFT(608), - [494] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6), - [496] = {.entry = {.count = 1, .reusable = true}}, SHIFT(440), - [498] = {.entry = {.count = 1, .reusable = true}}, SHIFT(53), - [500] = {.entry = {.count = 1, .reusable = true}}, SHIFT(611), - [502] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7), - [504] = {.entry = {.count = 1, .reusable = true}}, SHIFT(464), - [506] = {.entry = {.count = 1, .reusable = true}}, SHIFT(24), - [508] = {.entry = {.count = 1, .reusable = true}}, SHIFT(506), - [510] = {.entry = {.count = 1, .reusable = true}}, SHIFT(54), - [512] = {.entry = {.count = 1, .reusable = true}}, SHIFT(599), - [514] = {.entry = {.count = 1, .reusable = true}}, SHIFT(55), - [516] = {.entry = {.count = 1, .reusable = true}}, SHIFT(537), - [518] = {.entry = {.count = 1, .reusable = true}}, SHIFT(25), - [520] = {.entry = {.count = 1, .reusable = true}}, SHIFT(602), - [522] = {.entry = {.count = 1, .reusable = true}}, SHIFT(56), - [524] = {.entry = {.count = 1, .reusable = true}}, SHIFT(444), - [526] = {.entry = {.count = 1, .reusable = true}}, SHIFT(57), - [528] = {.entry = {.count = 1, .reusable = true}}, SHIFT(451), - [530] = {.entry = {.count = 1, .reusable = true}}, SHIFT(26), - [532] = {.entry = {.count = 1, .reusable = true}}, SHIFT(613), - [534] = {.entry = {.count = 1, .reusable = true}}, SHIFT(8), - [536] = {.entry = {.count = 1, .reusable = true}}, SHIFT(445), - [538] = {.entry = {.count = 1, .reusable = true}}, SHIFT(58), - [540] = {.entry = {.count = 1, .reusable = true}}, SHIFT(500), - [542] = {.entry = {.count = 1, .reusable = true}}, SHIFT(27), - [544] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1187), - [546] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3), - [548] = {.entry = {.count = 1, .reusable = true}}, SHIFT(543), - [550] = {.entry = {.count = 1, .reusable = true}}, SHIFT(28), - [552] = {.entry = {.count = 1, .reusable = true}}, SHIFT(481), - [554] = {.entry = {.count = 1, .reusable = true}}, SHIFT(19), - [556] = {.entry = {.count = 1, .reusable = true}}, SHIFT(334), - [558] = {.entry = {.count = 1, .reusable = true}}, SHIFT(318), - [560] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1515), - [562] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1580), - [564] = {.entry = {.count = 1, .reusable = true}}, SHIFT(313), - [566] = {.entry = {.count = 1, .reusable = true}}, SHIFT(336), - [568] = {.entry = {.count = 1, .reusable = true}}, SHIFT(206), - [570] = {.entry = {.count = 1, .reusable = false}}, SHIFT(926), - [572] = {.entry = {.count = 1, .reusable = false}}, SHIFT(676), - [574] = {.entry = {.count = 1, .reusable = true}}, SHIFT(207), - [576] = {.entry = {.count = 1, .reusable = false}}, SHIFT(149), - [578] = {.entry = {.count = 1, .reusable = true}}, SHIFT(194), - [580] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_primary_expression, 1, 0, 1), REDUCE(sym_list_splat_pattern, 2, 0, 8), - [583] = {.entry = {.count = 1, .reusable = false}}, SHIFT(723), - [585] = {.entry = {.count = 1, .reusable = true}}, SHIFT(405), - [587] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_list_splat_pattern, 2, 0, 8), - [589] = {.entry = {.count = 1, .reusable = false}}, SHIFT(675), - [591] = {.entry = {.count = 1, .reusable = true}}, SHIFT(197), - [593] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_list_splat_pattern, 2, 0, 8), - [595] = {.entry = {.count = 1, .reusable = false}}, SHIFT(137), - [597] = {.entry = {.count = 1, .reusable = true}}, SHIFT(218), - [599] = {.entry = {.count = 1, .reusable = true}}, SHIFT(357), - [601] = {.entry = {.count = 1, .reusable = true}}, SHIFT(657), - [603] = {.entry = {.count = 1, .reusable = true}}, SHIFT(227), - [605] = {.entry = {.count = 1, .reusable = false}}, SHIFT(143), - [607] = {.entry = {.count = 1, .reusable = false}}, SHIFT(924), - [609] = {.entry = {.count = 1, .reusable = true}}, SHIFT(208), - [611] = {.entry = {.count = 1, .reusable = false}}, SHIFT(938), - [613] = {.entry = {.count = 1, .reusable = false}}, SHIFT(392), - [615] = {.entry = {.count = 1, .reusable = true}}, SHIFT(679), - [617] = {.entry = {.count = 1, .reusable = true}}, SHIFT(219), - [619] = {.entry = {.count = 1, .reusable = true}}, SHIFT(167), - [621] = {.entry = {.count = 1, .reusable = true}}, SHIFT(924), - [623] = {.entry = {.count = 1, .reusable = false}}, SHIFT(145), - [625] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1059), - [627] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1056), - [629] = {.entry = {.count = 1, .reusable = false}}, SHIFT(953), - [631] = {.entry = {.count = 1, .reusable = true}}, SHIFT(229), - [633] = {.entry = {.count = 1, .reusable = false}}, SHIFT(963), - [635] = {.entry = {.count = 1, .reusable = true}}, SHIFT(356), - [637] = {.entry = {.count = 1, .reusable = true}}, SHIFT(677), - [639] = {.entry = {.count = 1, .reusable = true}}, SHIFT(230), - [641] = {.entry = {.count = 1, .reusable = true}}, SHIFT(165), - [643] = {.entry = {.count = 1, .reusable = true}}, SHIFT(953), - [645] = {.entry = {.count = 1, .reusable = false}}, SHIFT(150), - [647] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1050), - [649] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1051), - [651] = {.entry = {.count = 1, .reusable = false}}, SHIFT(372), - [653] = {.entry = {.count = 1, .reusable = true}}, SHIFT(226), - [655] = {.entry = {.count = 1, .reusable = true}}, SHIFT(408), - [657] = {.entry = {.count = 1, .reusable = true}}, SHIFT(692), - [659] = {.entry = {.count = 1, .reusable = true}}, SHIFT(231), - [661] = {.entry = {.count = 1, .reusable = false}}, SHIFT(152), - [663] = {.entry = {.count = 1, .reusable = false}}, SHIFT(849), - [665] = {.entry = {.count = 1, .reusable = true}}, SHIFT(159), - [667] = {.entry = {.count = 1, .reusable = false}}, SHIFT(662), - [669] = {.entry = {.count = 1, .reusable = false}}, SHIFT(855), - [671] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_pattern_list, 2, 0, 7), - [673] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_pattern_list, 2, 0, 7), - [675] = {.entry = {.count = 1, .reusable = true}}, SHIFT(163), - [677] = {.entry = {.count = 1, .reusable = false}}, SHIFT(142), - [679] = {.entry = {.count = 1, .reusable = false}}, SHIFT(858), - [681] = {.entry = {.count = 1, .reusable = true}}, SHIFT(161), - [683] = {.entry = {.count = 1, .reusable = true}}, SHIFT(384), - [685] = {.entry = {.count = 1, .reusable = false}}, SHIFT(864), - [687] = {.entry = {.count = 1, .reusable = true}}, SHIFT(160), - [689] = {.entry = {.count = 1, .reusable = true}}, SHIFT(513), - [691] = {.entry = {.count = 1, .reusable = false}}, SHIFT(340), - [693] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1014), - [695] = {.entry = {.count = 1, .reusable = false}}, SHIFT(168), - [697] = {.entry = {.count = 1, .reusable = false}}, SHIFT(148), - [699] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_pattern_list, 3, 0, 16), - [701] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_pattern_list, 3, 0, 16), - [703] = {.entry = {.count = 1, .reusable = true}}, SHIFT(838), - [705] = {.entry = {.count = 1, .reusable = true}}, SHIFT(925), - [707] = {.entry = {.count = 1, .reusable = true}}, SHIFT(919), - [709] = {.entry = {.count = 1, .reusable = true}}, SHIFT(502), - [711] = {.entry = {.count = 1, .reusable = true}}, SHIFT(857), - [713] = {.entry = {.count = 1, .reusable = false}}, SHIFT(842), - [715] = {.entry = {.count = 1, .reusable = true}}, SHIFT(199), - [717] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1678), - [719] = {.entry = {.count = 1, .reusable = false}}, SHIFT(370), - [721] = {.entry = {.count = 1, .reusable = false}}, SHIFT(863), - [723] = {.entry = {.count = 1, .reusable = true}}, SHIFT(942), - [725] = {.entry = {.count = 1, .reusable = false}}, SHIFT(416), - [727] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1018), - [729] = {.entry = {.count = 1, .reusable = false}}, SHIFT(147), - [731] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1683), - [733] = {.entry = {.count = 1, .reusable = true}}, SHIFT(952), - [735] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1665), - [737] = {.entry = {.count = 1, .reusable = true}}, SHIFT(715), - [739] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1596), - [741] = {.entry = {.count = 1, .reusable = true}}, SHIFT(939), - [743] = {.entry = {.count = 1, .reusable = false}}, SHIFT(362), - [745] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_yield, 1, 0, 0), - [747] = {.entry = {.count = 1, .reusable = false}}, SHIFT(391), - [749] = {.entry = {.count = 1, .reusable = false}}, SHIFT(865), - [751] = {.entry = {.count = 1, .reusable = false}}, SHIFT(418), - [753] = {.entry = {.count = 1, .reusable = false}}, SHIFT(840), - [755] = {.entry = {.count = 1, .reusable = false}}, SHIFT(403), - [757] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1020), - [759] = {.entry = {.count = 1, .reusable = false}}, SHIFT(141), - [761] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_list, 2, 0, 7), - [763] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_list, 3, 0, 16), - [765] = {.entry = {.count = 1, .reusable = false}}, SHIFT(169), - [767] = {.entry = {.count = 1, .reusable = false}}, SHIFT(375), - [769] = {.entry = {.count = 1, .reusable = true}}, SHIFT(210), - [771] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__collection_elements, 2, 0, 24), - [773] = {.entry = {.count = 1, .reusable = true}}, SHIFT(370), - [775] = {.entry = {.count = 1, .reusable = false}}, SHIFT(852), - [777] = {.entry = {.count = 1, .reusable = true}}, SHIFT(211), - [779] = {.entry = {.count = 1, .reusable = true}}, SHIFT(931), - [781] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1584), - [783] = {.entry = {.count = 1, .reusable = false}}, SHIFT(839), - [785] = {.entry = {.count = 1, .reusable = false}}, SHIFT(146), - [787] = {.entry = {.count = 1, .reusable = false}}, SHIFT(973), - [789] = {.entry = {.count = 1, .reusable = true}}, SHIFT(699), - [791] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1694), - [793] = {.entry = {.count = 1, .reusable = false}}, SHIFT(972), - [795] = {.entry = {.count = 1, .reusable = false}}, SHIFT(151), - [797] = {.entry = {.count = 1, .reusable = false}}, SHIFT(341), - [799] = {.entry = {.count = 1, .reusable = true}}, SHIFT(390), - [801] = {.entry = {.count = 1, .reusable = false}}, SHIFT(781), - [803] = {.entry = {.count = 1, .reusable = true}}, SHIFT(777), - [805] = {.entry = {.count = 1, .reusable = false}}, SHIFT(780), - [807] = {.entry = {.count = 1, .reusable = false}}, SHIFT(138), - [809] = {.entry = {.count = 1, .reusable = false}}, SHIFT(383), - [811] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_raise_statement, 1, 0, 0), - [813] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__collection_elements, 3, 0, 50), - [815] = {.entry = {.count = 1, .reusable = true}}, SHIFT(949), - [817] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1586), - [819] = {.entry = {.count = 1, .reusable = true}}, SHIFT(877), - [821] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1635), - [823] = {.entry = {.count = 1, .reusable = true}}, SHIFT(703), - [825] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_in_clause, 7, 0, 141), - [827] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_in_clause, 7, 0, 141), - [829] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1019), - [831] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_expression_list, 2, 0, 7), - [833] = {.entry = {.count = 1, .reusable = false}}, SHIFT(359), - [835] = {.entry = {.count = 1, .reusable = true}}, SHIFT(431), - [837] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_in_clause, 5, 0, 98), - [839] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_in_clause, 5, 0, 98), - [841] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_expression_list, 3, 0, 16), - [843] = {.entry = {.count = 1, .reusable = true}}, SHIFT(716), - [845] = {.entry = {.count = 1, .reusable = true}}, SHIFT(720), - [847] = {.entry = {.count = 1, .reusable = true}}, SHIFT(764), - [849] = {.entry = {.count = 1, .reusable = true}}, SHIFT(701), - [851] = {.entry = {.count = 1, .reusable = true}}, SHIFT(870), - [853] = {.entry = {.count = 1, .reusable = true}}, SHIFT(704), - [855] = {.entry = {.count = 1, .reusable = true}}, SHIFT(916), - [857] = {.entry = {.count = 1, .reusable = true}}, SHIFT(867), - [859] = {.entry = {.count = 1, .reusable = true}}, SHIFT(941), - [861] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_in_clause, 6, 0, 122), - [863] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_in_clause, 6, 0, 122), - [865] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_in_clause, 6, 0, 123), - [867] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_in_clause, 6, 0, 123), - [869] = {.entry = {.count = 1, .reusable = true}}, SHIFT(905), - [871] = {.entry = {.count = 1, .reusable = true}}, SHIFT(918), - [873] = {.entry = {.count = 1, .reusable = true}}, SHIFT(712), - [875] = {.entry = {.count = 1, .reusable = true}}, SHIFT(914), - [877] = {.entry = {.count = 1, .reusable = true}}, SHIFT(956), - [879] = {.entry = {.count = 1, .reusable = true}}, SHIFT(958), - [881] = {.entry = {.count = 1, .reusable = true}}, SHIFT(961), - [883] = {.entry = {.count = 1, .reusable = true}}, SHIFT(962), - [885] = {.entry = {.count = 1, .reusable = true}}, SHIFT(965), - [887] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_return_statement, 1, 0, 0), - [889] = {.entry = {.count = 1, .reusable = true}}, SHIFT(713), - [891] = {.entry = {.count = 1, .reusable = true}}, SHIFT(894), - [893] = {.entry = {.count = 1, .reusable = true}}, SHIFT(866), - [895] = {.entry = {.count = 1, .reusable = true}}, SHIFT(898), - [897] = {.entry = {.count = 1, .reusable = true}}, SHIFT(899), - [899] = {.entry = {.count = 1, .reusable = true}}, SHIFT(900), - [901] = {.entry = {.count = 1, .reusable = true}}, SHIFT(917), - [903] = {.entry = {.count = 1, .reusable = true}}, SHIFT(871), - [905] = {.entry = {.count = 1, .reusable = true}}, SHIFT(274), - [907] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_index_expression_list, 3, 0, 16), - [909] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_index_expression_list, 2, 0, 7), - [911] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_dictionary_splat_pattern, 2, 0, 33), - [913] = {.entry = {.count = 1, .reusable = true}}, SHIFT(714), - [915] = {.entry = {.count = 1, .reusable = true}}, SHIFT(971), - [917] = {.entry = {.count = 1, .reusable = true}}, SHIFT(954), - [919] = {.entry = {.count = 1, .reusable = true}}, SHIFT(955), - [921] = {.entry = {.count = 1, .reusable = true}}, SHIFT(913), - [923] = {.entry = {.count = 1, .reusable = true}}, SHIFT(881), - [925] = {.entry = {.count = 1, .reusable = true}}, SHIFT(892), - [927] = {.entry = {.count = 1, .reusable = true}}, SHIFT(893), - [929] = {.entry = {.count = 1, .reusable = true}}, SHIFT(727), - [931] = {.entry = {.count = 1, .reusable = true}}, SHIFT(940), - [933] = {.entry = {.count = 1, .reusable = true}}, SHIFT(909), - [935] = {.entry = {.count = 1, .reusable = true}}, SHIFT(717), - [937] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_try_statement, 5, 0, 81), - [939] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_try_statement, 5, 0, 81), - [941] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1609), - [943] = {.entry = {.count = 1, .reusable = false}}, SHIFT(311), - [945] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1606), - [947] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1704), - [949] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1646), - [951] = {.entry = {.count = 1, .reusable = false}}, SHIFT(295), - [953] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1588), - [955] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_slice, 2, 0, 69), - [957] = {.entry = {.count = 1, .reusable = true}}, SHIFT(301), - [959] = {.entry = {.count = 1, .reusable = true}}, SHIFT(359), - [961] = {.entry = {.count = 1, .reusable = false}}, SHIFT(912), - [963] = {.entry = {.count = 1, .reusable = true}}, SHIFT(323), - [965] = {.entry = {.count = 1, .reusable = false}}, SHIFT(911), - [967] = {.entry = {.count = 1, .reusable = true}}, SHIFT(80), - [969] = {.entry = {.count = 1, .reusable = false}}, SHIFT(401), - [971] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1017), - [973] = {.entry = {.count = 1, .reusable = false}}, SHIFT(144), - [975] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_slice, 1, 0, 0), - [977] = {.entry = {.count = 1, .reusable = true}}, SHIFT(293), - [979] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_try_statement, 4, 0, 56), - [981] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_try_statement, 4, 0, 56), - [983] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1611), - [985] = {.entry = {.count = 1, .reusable = true}}, SHIFT(337), - [987] = {.entry = {.count = 1, .reusable = true}}, SHIFT(90), - [989] = {.entry = {.count = 1, .reusable = true}}, SHIFT(183), - [991] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_print_statement, 3, 0, 10), - [993] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_print_statement, 4, 0, 28), - [995] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_print_statement, 4, 0, 29), - [997] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_slice, 2, 0, 0), - [999] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attribute, 3, 0, 40), - [1001] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_attribute, 3, 0, 40), - [1003] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_slice, 3, 0, 68), - [1005] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1620), - [1007] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_print_statement, 3, 0, 0), - [1009] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_slice, 3, 0, 69), - [1011] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_slice, 4, 0, 95), - [1013] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_subscript, 4, 0, 70), - [1015] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_subscript, 4, 0, 70), - [1017] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1630), - [1019] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_statement, 4, 0, 54), - [1021] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_statement, 4, 0, 54), - [1023] = {.entry = {.count = 1, .reusable = false}}, SHIFT(380), - [1025] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__simple_statements, 4, 0, 0), - [1027] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__simple_statements, 4, 0, 0), - [1029] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_block, 2, 0, 0), - [1031] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_block, 2, 0, 0), - [1033] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_statement, 6, 0, 102), - [1035] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_statement, 6, 0, 102), - [1037] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__simple_statements, 2, 0, 0), - [1039] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__simple_statements, 2, 0, 0), - [1041] = {.entry = {.count = 1, .reusable = false}}, SHIFT(429), - [1043] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_block, 1, 0, 0), - [1045] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_block, 1, 0, 0), - [1047] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_statement, 5, 0, 76), - [1049] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_statement, 5, 0, 76), - [1051] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_statement, 5, 0, 77), - [1053] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_statement, 5, 0, 77), - [1055] = {.entry = {.count = 1, .reusable = true}}, SHIFT(511), - [1057] = {.entry = {.count = 1, .reusable = true}}, SHIFT(310), - [1059] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1599), - [1061] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_try_statement_repeat1, 2, 0, 0), - [1063] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_try_statement_repeat1, 2, 0, 0), - [1065] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_try_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(295), - [1068] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_try_statement_repeat2, 2, 0, 0), - [1070] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_try_statement_repeat2, 2, 0, 0), - [1072] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_try_statement_repeat2, 2, 0, 0), SHIFT_REPEAT(1611), - [1075] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_try_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(311), - [1078] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_try_statement_repeat2, 2, 0, 0), SHIFT_REPEAT(1704), - [1081] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__simple_statements, 3, 0, 0), - [1083] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__simple_statements, 3, 0, 0), - [1085] = {.entry = {.count = 1, .reusable = true}}, SHIFT(512), - [1087] = {.entry = {.count = 1, .reusable = true}}, SHIFT(305), - [1089] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1714), - [1091] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_if_statement_repeat1, 2, 0, 100), - [1093] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_if_statement_repeat1, 2, 0, 100), - [1095] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_if_statement_repeat1, 2, 0, 100), SHIFT_REPEAT(380), - [1098] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1055), - [1100] = {.entry = {.count = 1, .reusable = false}}, SHIFT(474), - [1102] = {.entry = {.count = 1, .reusable = false}}, SHIFT(487), - [1104] = {.entry = {.count = 1, .reusable = false}}, SHIFT(135), - [1106] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_if_statement_repeat1, 2, 0, 100), SHIFT_REPEAT(429), - [1109] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_except_clause, 6, 0, 158), - [1111] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_except_clause, 6, 0, 158), - [1113] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_except_clause, 3, 0, 56), - [1115] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_except_clause, 3, 0, 56), - [1117] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_except_clause, 4, 0, 81), - [1119] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_except_clause, 4, 0, 81), - [1121] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_except_clause, 4, 0, 130), - [1123] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_except_clause, 4, 0, 130), - [1125] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_except_group_clause, 5, 0, 147), - [1127] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_except_group_clause, 5, 0, 147), - [1129] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_except_clause, 5, 0, 148), - [1131] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_except_clause, 5, 0, 148), - [1133] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_except_group_clause, 7, 0, 163), - [1135] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_except_group_clause, 7, 0, 163), - [1137] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_except_group_clause, 6, 0, 157), - [1139] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_except_group_clause, 6, 0, 157), - [1141] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_except_clause, 7, 0, 164), - [1143] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_except_clause, 7, 0, 164), - [1145] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_except_group_clause, 8, 0, 165), - [1147] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_except_group_clause, 8, 0, 165), - [1149] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_cases_repeat1, 2, 0, 0), - [1151] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_cases_repeat1, 2, 0, 0), - [1153] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_cases_repeat1, 2, 0, 0), SHIFT_REPEAT(856), - [1156] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_cases, 1, 0, 0), - [1158] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_cases, 1, 0, 0), - [1160] = {.entry = {.count = 1, .reusable = false}}, SHIFT(862), - [1162] = {.entry = {.count = 1, .reusable = false}}, SHIFT(856), - [1164] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1498), - [1166] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_cases_repeat1, 2, 0, 0), SHIFT_REPEAT(862), - [1169] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__patterns, 3, 0, 50), - [1171] = {.entry = {.count = 1, .reusable = true}}, SHIFT(662), - [1173] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_primary_expression, 1, 0, 0), - [1175] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_pattern, 1, 0, 0), REDUCE(sym_primary_expression, 1, 0, 0), - [1178] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_primary_expression, 1, 0, 0), - [1180] = {.entry = {.count = 1, .reusable = true}}, SHIFT(435), - [1182] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_pattern, 1, 0, 0), - [1184] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_pattern, 1, 0, 0), - [1186] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_if_statement_repeat1, 1, 0, 74), - [1188] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_if_statement_repeat1, 1, 0, 74), - [1190] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_elif_clause, 4, 0, 54), - [1192] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_elif_clause, 4, 0, 54), - [1194] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_statement, 8, 0, 143), - [1196] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_statement, 8, 0, 143), - [1198] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__patterns, 2, 0, 24), - [1200] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_try_statement, 5, 0, 56), - [1202] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_try_statement, 5, 0, 56), - [1204] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_statement, 7, 0, 129), - [1206] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_statement, 7, 0, 129), - [1208] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_try_statement, 6, 0, 81), - [1210] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_try_statement, 6, 0, 81), - [1212] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_elif_clause, 5, 0, 77), - [1214] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_elif_clause, 5, 0, 77), - [1216] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_primary_expression, 1, 0, 0), REDUCE(sym_list_splat_pattern, 2, 0, 9), - [1219] = {.entry = {.count = 1, .reusable = true}}, SHIFT(420), - [1221] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_list_splat_pattern, 2, 0, 9), - [1223] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_list_splat_pattern, 2, 0, 9), - [1225] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_while_statement, 5, 0, 80), - [1227] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_while_statement, 5, 0, 80), - [1229] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1464), - [1231] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_statement, 7, 0, 125), - [1233] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_statement, 7, 0, 125), - [1235] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_statement, 6, 0, 105), - [1237] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_statement, 6, 0, 105), - [1239] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_while_statement, 4, 0, 55), - [1241] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_while_statement, 4, 0, 55), - [1243] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_else_clause, 4, 0, 81), - [1245] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_else_clause, 4, 0, 81), - [1247] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_else_clause, 3, 0, 56), - [1249] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_else_clause, 3, 0, 56), - [1251] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_case_block, 4, 0, 134), - [1253] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_case_block, 4, 0, 134), - [1255] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_case_block, 5, 0, 150), - [1257] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_case_block, 5, 0, 150), - [1259] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_case_block, 5, 0, 151), - [1261] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_case_block, 5, 0, 151), - [1263] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_case_block, 6, 0, 159), - [1265] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_case_block, 6, 0, 159), - [1267] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tuple, 2, 0, 0), - [1269] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_tuple_pattern, 2, 0, 0), REDUCE(sym_tuple, 2, 0, 0), - [1272] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_tuple, 2, 0, 0), - [1274] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tuple_pattern, 2, 0, 0), - [1276] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_tuple_pattern, 2, 0, 0), - [1278] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_list, 2, 0, 0), - [1280] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_list_pattern, 2, 0, 0), REDUCE(sym_list, 2, 0, 0), - [1283] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_list, 2, 0, 0), - [1285] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_list_pattern, 2, 0, 0), - [1287] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_list_pattern, 2, 0, 0), - [1289] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_statement, 5, 0, 75), - [1291] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_statement, 5, 0, 75), - [1293] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_while_statement, 6, 0, 106), - [1295] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_while_statement, 6, 0, 106), - [1297] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_finally_clause, 3, 0, 56), - [1299] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_finally_clause, 3, 0, 56), - [1301] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_try_statement, 6, 0, 56), - [1303] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_try_statement, 6, 0, 56), - [1305] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 6, 0, 114), - [1307] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 6, 0, 114), - [1309] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 6, 0, 115), - [1311] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 6, 0, 115), - [1313] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_decorated_definition, 2, 0, 19), - [1315] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_decorated_definition, 2, 0, 19), - [1317] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_class_definition, 6, 0, 116), - [1319] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_class_definition, 6, 0, 116), - [1321] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_class_definition, 6, 0, 117), - [1323] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_class_definition, 6, 0, 117), - [1325] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_class_definition, 6, 0, 118), - [1327] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_class_definition, 6, 0, 118), - [1329] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_statement, 7, 0, 124), - [1331] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_statement, 7, 0, 124), - [1333] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 7, 0, 126), - [1335] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 7, 0, 126), - [1337] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 7, 0, 127), - [1339] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 7, 0, 127), - [1341] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_statement, 7, 0, 128), - [1343] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_statement, 7, 0, 128), - [1345] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_finally_clause, 4, 0, 81), - [1347] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_finally_clause, 4, 0, 81), - [1349] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_try_statement, 7, 0, 81), - [1351] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_try_statement, 7, 0, 81), - [1353] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 7, 0, 137), - [1355] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 7, 0, 137), - [1357] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 7, 0, 138), - [1359] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 7, 0, 138), - [1361] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_class_definition, 7, 0, 139), - [1363] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_class_definition, 7, 0, 139), - [1365] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_statement, 8, 0, 142), - [1367] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_statement, 8, 0, 142), - [1369] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 8, 0, 144), - [1371] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 8, 0, 144), - [1373] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 8, 0, 145), - [1375] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 8, 0, 145), - [1377] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_statement, 8, 0, 146), - [1379] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_statement, 8, 0, 146), - [1381] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_with_statement, 5, 0, 82), - [1383] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_with_statement, 5, 0, 82), - [1385] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 5, 0, 87), - [1387] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 5, 0, 87), - [1389] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 8, 0, 152), - [1391] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 8, 0, 152), - [1393] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 8, 0, 153), - [1395] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 8, 0, 153), - [1397] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_statement, 9, 0, 154), - [1399] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_statement, 9, 0, 154), - [1401] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 9, 0, 155), - [1403] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 9, 0, 155), - [1405] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 9, 0, 156), - [1407] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 9, 0, 156), - [1409] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_class_definition, 5, 0, 89), - [1411] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_class_definition, 5, 0, 89), - [1413] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 9, 0, 161), - [1415] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 9, 0, 161), - [1417] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 10, 0, 162), - [1419] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 10, 0, 162), - [1421] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_class_definition, 5, 0, 90), - [1423] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_class_definition, 5, 0, 90), - [1425] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_with_statement, 4, 0, 57), - [1427] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_with_statement, 4, 0, 57), - [1429] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_match_statement, 4, 0, 59), - [1431] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_statement, 4, 0, 59), - [1433] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_match_statement, 4, 0, 60), - [1435] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_statement, 4, 0, 60), - [1437] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_class_definition, 4, 0, 64), - [1439] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_class_definition, 4, 0, 64), - [1441] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_with_statement, 5, 0, 78), - [1443] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_with_statement, 5, 0, 78), - [1445] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_while_statement, 5, 0, 79), - [1447] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_while_statement, 5, 0, 79), - [1449] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_class_definition, 5, 0, 91), - [1451] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_class_definition, 5, 0, 91), - [1453] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_statement, 6, 0, 99), - [1455] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_statement, 6, 0, 99), - [1457] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_statement, 6, 0, 101), - [1459] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_statement, 6, 0, 101), - [1461] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_with_statement, 6, 0, 103), - [1463] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_with_statement, 6, 0, 103), - [1465] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 6, 0, 104), - [1467] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 6, 0, 104), - [1469] = {.entry = {.count = 1, .reusable = false}}, SHIFT(834), - [1471] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_keyword_separator, 1, 0, 0), - [1473] = {.entry = {.count = 1, .reusable = false}}, SHIFT(860), - [1475] = {.entry = {.count = 1, .reusable = false}}, SHIFT(139), - [1477] = {.entry = {.count = 1, .reusable = false}}, SHIFT(632), - [1479] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_concatenated_string, 2, 0, 0), - [1481] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_concatenated_string, 2, 0, 0), - [1483] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_concatenated_template_string, 2, 0, 0), - [1485] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_concatenated_template_string, 2, 0, 0), - [1487] = {.entry = {.count = 1, .reusable = false}}, SHIFT(659), - [1489] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_concatenated_string_repeat1, 2, 0, 0), - [1491] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_concatenated_string_repeat1, 2, 0, 0), - [1493] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_concatenated_string_repeat1, 2, 0, 0), SHIFT_REPEAT(1044), - [1496] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_concatenated_template_string_repeat1, 2, 0, 0), - [1498] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_concatenated_template_string_repeat1, 2, 0, 0), - [1500] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_concatenated_template_string_repeat1, 2, 0, 0), SHIFT_REPEAT(1045), - [1503] = {.entry = {.count = 1, .reusable = false}}, SHIFT(645), - [1505] = {.entry = {.count = 1, .reusable = false}}, SHIFT(656), - [1507] = {.entry = {.count = 1, .reusable = false}}, SHIFT(674), - [1509] = {.entry = {.count = 1, .reusable = false}}, SHIFT(691), - [1511] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1000), - [1513] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1001), - [1515] = {.entry = {.count = 1, .reusable = false}}, SHIFT(239), - [1517] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_string, 2, 0, 2), - [1519] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_string, 2, 0, 2), - [1521] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_template_string, 2, 0, 2), - [1523] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_template_string, 2, 0, 2), - [1525] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_string, 3, 0, 20), - [1527] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_string, 3, 0, 20), - [1529] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_template_string, 3, 0, 20), - [1531] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_template_string, 3, 0, 20), - [1533] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_argument_list, 2, 0, 0), - [1535] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_argument_list, 2, 0, 0), - [1537] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_argument_list, 3, 0, 31), - [1539] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_argument_list, 3, 0, 31), - [1541] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_argument_list, 5, 0, 61), - [1543] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_argument_list, 5, 0, 61), - [1545] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_argument_list, 3, 0, 67), - [1547] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_argument_list, 3, 0, 67), - [1549] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_argument_list, 5, 0, 93), - [1551] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_argument_list, 5, 0, 93), - [1553] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tuple, 3, 0, 25), - [1555] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_tuple, 3, 0, 25), - [1557] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_list, 3, 0, 25), - [1559] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_list, 3, 0, 25), - [1561] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_dictionary, 3, 0, 0), - [1563] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_dictionary, 3, 0, 0), - [1565] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_dictionary, 3, 0, 31), - [1567] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_dictionary, 3, 0, 31), - [1569] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_set, 3, 0, 25), - [1571] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_set, 3, 0, 25), - [1573] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parenthesized_expression, 3, 0, 26), - [1575] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_parenthesized_expression, 3, 0, 26), - [1577] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_argument_list, 4, 0, 61), - [1579] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_argument_list, 4, 0, 61), - [1581] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_dictionary, 5, 0, 61), - [1583] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_dictionary, 5, 0, 61), - [1585] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_dictionary, 2, 0, 0), - [1587] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_dictionary, 2, 0, 0), - [1589] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_argument_list, 4, 0, 31), - [1591] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_argument_list, 4, 0, 31), - [1593] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1651), - [1595] = {.entry = {.count = 1, .reusable = true}}, SHIFT(182), - [1597] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression, 1, 0, 0), - [1599] = {.entry = {.count = 1, .reusable = false}}, SHIFT(663), - [1601] = {.entry = {.count = 1, .reusable = true}}, SHIFT(664), - [1603] = {.entry = {.count = 1, .reusable = true}}, SHIFT(665), - [1605] = {.entry = {.count = 1, .reusable = true}}, SHIFT(666), - [1607] = {.entry = {.count = 1, .reusable = true}}, SHIFT(667), - [1609] = {.entry = {.count = 1, .reusable = true}}, SHIFT(232), - [1611] = {.entry = {.count = 1, .reusable = true}}, SHIFT(668), - [1613] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_expression, 1, 0, 0), - [1615] = {.entry = {.count = 1, .reusable = true}}, SHIFT(663), - [1617] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1700), - [1619] = {.entry = {.count = 1, .reusable = true}}, SHIFT(669), - [1621] = {.entry = {.count = 1, .reusable = true}}, SHIFT(670), - [1623] = {.entry = {.count = 1, .reusable = false}}, SHIFT(665), - [1625] = {.entry = {.count = 1, .reusable = true}}, SHIFT(625), - [1627] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_argument_list, 4, 0, 67), - [1629] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_argument_list, 4, 0, 67), - [1631] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_generator_expression, 4, 0, 51), - [1633] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_generator_expression, 4, 0, 51), - [1635] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_argument_list, 3, 0, 0), - [1637] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_argument_list, 3, 0, 0), - [1639] = {.entry = {.count = 1, .reusable = false}}, SHIFT(628), - [1641] = {.entry = {.count = 1, .reusable = true}}, SHIFT(629), - [1643] = {.entry = {.count = 1, .reusable = true}}, SHIFT(630), - [1645] = {.entry = {.count = 1, .reusable = true}}, SHIFT(654), - [1647] = {.entry = {.count = 1, .reusable = true}}, SHIFT(660), - [1649] = {.entry = {.count = 1, .reusable = true}}, SHIFT(671), - [1651] = {.entry = {.count = 1, .reusable = true}}, SHIFT(628), - [1653] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1634), - [1655] = {.entry = {.count = 1, .reusable = true}}, SHIFT(689), - [1657] = {.entry = {.count = 1, .reusable = true}}, SHIFT(650), - [1659] = {.entry = {.count = 1, .reusable = false}}, SHIFT(630), - [1661] = {.entry = {.count = 1, .reusable = true}}, SHIFT(615), - [1663] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_list_comprehension, 4, 0, 51), - [1665] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_list_comprehension, 4, 0, 51), - [1667] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_dictionary, 4, 0, 31), - [1669] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_dictionary, 4, 0, 31), - [1671] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_dictionary, 4, 0, 61), - [1673] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_dictionary, 4, 0, 61), - [1675] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_set_comprehension, 4, 0, 51), - [1677] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_set_comprehension, 4, 0, 51), - [1679] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_dictionary_comprehension, 4, 0, 51), - [1681] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_dictionary_comprehension, 4, 0, 51), - [1683] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_argument_list, 4, 0, 93), - [1685] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_argument_list, 4, 0, 93), - [1687] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_call, 2, 0, 17), - [1689] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_call, 2, 0, 17), - [1691] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_binary_operator, 3, 0, 39), - [1693] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_binary_operator, 3, 0, 39), - [1695] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_await, 2, 0, 0), - [1697] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_await, 2, 0, 0), - [1699] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 41), - [1701] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 41), - [1703] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_concatenated_string_repeat1, 2, 0, 0), SHIFT_REPEAT(1050), - [1706] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_concatenated_template_string_repeat1, 2, 0, 0), SHIFT_REPEAT(1051), - [1709] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 3, 0, 71), - [1711] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_comparison_operator_repeat1, 3, 0, 71), - [1713] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 3, 0, 72), - [1715] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_comparison_operator_repeat1, 3, 0, 72), - [1717] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_unary_operator, 2, 0, 13), - [1719] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_unary_operator, 2, 0, 13), - [1721] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_concatenated_template_string_repeat1, 2, 0, 0), SHIFT_REPEAT(1056), - [1724] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1605), - [1726] = {.entry = {.count = 1, .reusable = true}}, SHIFT(188), - [1728] = {.entry = {.count = 1, .reusable = false}}, SHIFT(646), - [1730] = {.entry = {.count = 1, .reusable = true}}, SHIFT(647), - [1732] = {.entry = {.count = 1, .reusable = true}}, SHIFT(648), - [1734] = {.entry = {.count = 1, .reusable = true}}, SHIFT(649), - [1736] = {.entry = {.count = 1, .reusable = true}}, SHIFT(694), - [1738] = {.entry = {.count = 1, .reusable = true}}, SHIFT(241), - [1740] = {.entry = {.count = 1, .reusable = true}}, SHIFT(651), - [1742] = {.entry = {.count = 1, .reusable = true}}, SHIFT(646), - [1744] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1720), - [1746] = {.entry = {.count = 1, .reusable = true}}, SHIFT(652), - [1748] = {.entry = {.count = 1, .reusable = true}}, SHIFT(653), - [1750] = {.entry = {.count = 1, .reusable = false}}, SHIFT(648), + [7] = {.entry = {.count = 1, .reusable = false}}, SHIFT(487), + [9] = {.entry = {.count = 1, .reusable = false}}, SHIFT(450), + [11] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1361), + [13] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1177), + [15] = {.entry = {.count = 1, .reusable = true}}, SHIFT(157), + [17] = {.entry = {.count = 1, .reusable = false}}, SHIFT(365), + [19] = {.entry = {.count = 1, .reusable = false}}, SHIFT(75), + [21] = {.entry = {.count = 1, .reusable = false}}, SHIFT(403), + [23] = {.entry = {.count = 1, .reusable = false}}, SHIFT(195), + [25] = {.entry = {.count = 1, .reusable = false}}, SHIFT(246), + [27] = {.entry = {.count = 1, .reusable = false}}, SHIFT(178), + [29] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1563), + [31] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1573), + [33] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1528), + [35] = {.entry = {.count = 1, .reusable = false}}, SHIFT(396), + [37] = {.entry = {.count = 1, .reusable = false}}, SHIFT(430), + [39] = {.entry = {.count = 1, .reusable = false}}, SHIFT(493), + [41] = {.entry = {.count = 1, .reusable = false}}, SHIFT(348), + [43] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1660), + [45] = {.entry = {.count = 1, .reusable = false}}, SHIFT(309), + [47] = {.entry = {.count = 1, .reusable = false}}, SHIFT(66), + [49] = {.entry = {.count = 1, .reusable = true}}, SHIFT(635), + [51] = {.entry = {.count = 1, .reusable = true}}, SHIFT(156), + [53] = {.entry = {.count = 1, .reusable = true}}, SHIFT(167), + [55] = {.entry = {.count = 1, .reusable = true}}, SHIFT(383), + [57] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1671), + [59] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1604), + [61] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1598), + [63] = {.entry = {.count = 1, .reusable = false}}, SHIFT(452), + [65] = {.entry = {.count = 1, .reusable = false}}, SHIFT(480), + [67] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1663), + [69] = {.entry = {.count = 1, .reusable = true}}, SHIFT(377), + [71] = {.entry = {.count = 1, .reusable = false}}, SHIFT(400), + [73] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1020), + [75] = {.entry = {.count = 1, .reusable = false}}, SHIFT(177), + [77] = {.entry = {.count = 1, .reusable = true}}, SHIFT(920), + [79] = {.entry = {.count = 1, .reusable = false}}, SHIFT(920), + [81] = {.entry = {.count = 1, .reusable = false}}, SHIFT(135), + [83] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1053), + [85] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1042), + [87] = {.entry = {.count = 1, .reusable = false}}, SHIFT(422), + [89] = {.entry = {.count = 1, .reusable = false}}, SHIFT(433), + [91] = {.entry = {.count = 1, .reusable = false}}, SHIFT(509), + [93] = {.entry = {.count = 1, .reusable = false}}, SHIFT(423), + [95] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1699), + [97] = {.entry = {.count = 1, .reusable = false}}, SHIFT(307), + [99] = {.entry = {.count = 1, .reusable = false}}, SHIFT(67), + [101] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1724), + [103] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1702), + [105] = {.entry = {.count = 1, .reusable = true}}, SHIFT(332), + [107] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1581), + [109] = {.entry = {.count = 1, .reusable = true}}, SHIFT(327), + [111] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1575), + [113] = {.entry = {.count = 1, .reusable = true}}, SHIFT(336), + [115] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_module, 1, 0, 0), + [117] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(487), + [120] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(450), + [123] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(1361), + [126] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(1177), + [129] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(157), + [132] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(365), + [135] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(75), + [138] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(403), + [141] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(195), + [144] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(246), + [147] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(178), + [150] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(1563), + [153] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(1573), + [156] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(1528), + [159] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(422), + [162] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(433), + [165] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(509), + [168] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(423), + [171] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(1699), + [174] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(307), + [177] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(67), + [180] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(635), + [183] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(156), + [186] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(167), + [189] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(383), + [192] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(1724), + [195] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(1604), + [198] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(1598), + [201] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(452), + [204] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(480), + [207] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(1702), + [210] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(377), + [213] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(400), + [216] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(1020), + [219] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(177), + [222] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(920), + [225] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(920), + [228] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(135), + [231] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), + [233] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(1053), + [236] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(1042), + [239] = {.entry = {.count = 1, .reusable = true}}, SHIFT(318), + [241] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(396), + [244] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(430), + [247] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(493), + [250] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(348), + [253] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(1660), + [256] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(309), + [259] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(66), + [262] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(1671), + [265] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(1663), + [268] = {.entry = {.count = 1, .reusable = false}}, SHIFT(781), + [270] = {.entry = {.count = 1, .reusable = false}}, SHIFT(773), + [272] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_primary_expression, 1, 0, 1), + [274] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_primary_expression, 1, 0, 1), SHIFT(199), + [277] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_pattern, 1, 0, 1), REDUCE(sym_primary_expression, 1, 0, 1), + [280] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_primary_expression, 1, 0, 1), SHIFT(343), + [283] = {.entry = {.count = 1, .reusable = true}}, SHIFT(391), + [285] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_pattern, 1, 0, 1), + [287] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_primary_expression, 1, 0, 1), SHIFT(657), + [290] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_primary_expression, 1, 0, 1), SHIFT(200), + [293] = {.entry = {.count = 1, .reusable = true}}, SHIFT(165), + [295] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_primary_expression, 1, 0, 1), SHIFT(383), + [298] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_primary_expression, 1, 0, 1), SHIFT(376), + [301] = {.entry = {.count = 1, .reusable = true}}, SHIFT(657), + [303] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_primary_expression, 1, 0, 1), + [305] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1016), + [307] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_pattern, 1, 0, 1), + [309] = {.entry = {.count = 1, .reusable = true}}, SHIFT(725), + [311] = {.entry = {.count = 1, .reusable = false}}, SHIFT(725), + [313] = {.entry = {.count = 1, .reusable = false}}, SHIFT(136), + [315] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1037), + [317] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1038), + [319] = {.entry = {.count = 1, .reusable = false}}, SHIFT(503), + [321] = {.entry = {.count = 1, .reusable = true}}, SHIFT(614), + [323] = {.entry = {.count = 1, .reusable = true}}, SHIFT(59), + [325] = {.entry = {.count = 1, .reusable = true}}, SHIFT(567), + [327] = {.entry = {.count = 1, .reusable = true}}, SHIFT(15), + [329] = {.entry = {.count = 1, .reusable = true}}, SHIFT(573), + [331] = {.entry = {.count = 1, .reusable = true}}, SHIFT(16), + [333] = {.entry = {.count = 1, .reusable = true}}, SHIFT(477), + [335] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5), + [337] = {.entry = {.count = 1, .reusable = true}}, SHIFT(576), + [339] = {.entry = {.count = 1, .reusable = true}}, SHIFT(17), + [341] = {.entry = {.count = 1, .reusable = true}}, SHIFT(325), + [343] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2), + [345] = {.entry = {.count = 1, .reusable = true}}, SHIFT(463), + [347] = {.entry = {.count = 1, .reusable = true}}, SHIFT(32), + [349] = {.entry = {.count = 1, .reusable = false}}, SHIFT(851), + [351] = {.entry = {.count = 1, .reusable = false}}, SHIFT(844), + [353] = {.entry = {.count = 1, .reusable = false}}, SHIFT(338), + [355] = {.entry = {.count = 1, .reusable = false}}, SHIFT(139), + [357] = {.entry = {.count = 1, .reusable = true}}, SHIFT(513), + [359] = {.entry = {.count = 1, .reusable = true}}, SHIFT(33), + [361] = {.entry = {.count = 1, .reusable = true}}, SHIFT(518), + [363] = {.entry = {.count = 1, .reusable = true}}, SHIFT(34), + [365] = {.entry = {.count = 1, .reusable = true}}, SHIFT(500), + [367] = {.entry = {.count = 1, .reusable = true}}, SHIFT(18), + [369] = {.entry = {.count = 1, .reusable = true}}, SHIFT(465), + [371] = {.entry = {.count = 1, .reusable = true}}, SHIFT(19), + [373] = {.entry = {.count = 1, .reusable = true}}, SHIFT(570), + [375] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6), + [377] = {.entry = {.count = 1, .reusable = true}}, SHIFT(523), + [379] = {.entry = {.count = 1, .reusable = true}}, SHIFT(35), + [381] = {.entry = {.count = 1, .reusable = true}}, SHIFT(581), + [383] = {.entry = {.count = 1, .reusable = true}}, SHIFT(20), + [385] = {.entry = {.count = 1, .reusable = true}}, SHIFT(525), + [387] = {.entry = {.count = 1, .reusable = true}}, SHIFT(36), + [389] = {.entry = {.count = 1, .reusable = true}}, SHIFT(526), + [391] = {.entry = {.count = 1, .reusable = true}}, SHIFT(37), + [393] = {.entry = {.count = 1, .reusable = true}}, SHIFT(584), + [395] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7), + [397] = {.entry = {.count = 1, .reusable = true}}, SHIFT(530), + [399] = {.entry = {.count = 1, .reusable = true}}, SHIFT(38), + [401] = {.entry = {.count = 1, .reusable = true}}, SHIFT(486), + [403] = {.entry = {.count = 1, .reusable = true}}, SHIFT(39), + [405] = {.entry = {.count = 1, .reusable = true}}, SHIFT(444), + [407] = {.entry = {.count = 1, .reusable = true}}, SHIFT(40), + [409] = {.entry = {.count = 1, .reusable = true}}, SHIFT(532), + [411] = {.entry = {.count = 1, .reusable = true}}, SHIFT(41), + [413] = {.entry = {.count = 1, .reusable = true}}, SHIFT(536), + [415] = {.entry = {.count = 1, .reusable = true}}, SHIFT(42), + [417] = {.entry = {.count = 1, .reusable = true}}, SHIFT(449), + [419] = {.entry = {.count = 1, .reusable = true}}, SHIFT(21), + [421] = {.entry = {.count = 1, .reusable = true}}, SHIFT(538), + [423] = {.entry = {.count = 1, .reusable = true}}, SHIFT(43), + [425] = {.entry = {.count = 1, .reusable = true}}, SHIFT(497), + [427] = {.entry = {.count = 1, .reusable = true}}, SHIFT(44), + [429] = {.entry = {.count = 1, .reusable = true}}, SHIFT(472), + [431] = {.entry = {.count = 1, .reusable = true}}, SHIFT(45), + [433] = {.entry = {.count = 1, .reusable = true}}, SHIFT(508), + [435] = {.entry = {.count = 1, .reusable = true}}, SHIFT(22), + [437] = {.entry = {.count = 1, .reusable = true}}, SHIFT(542), + [439] = {.entry = {.count = 1, .reusable = true}}, SHIFT(46), + [441] = {.entry = {.count = 1, .reusable = true}}, SHIFT(589), + [443] = {.entry = {.count = 1, .reusable = true}}, SHIFT(23), + [445] = {.entry = {.count = 1, .reusable = true}}, SHIFT(603), + [447] = {.entry = {.count = 1, .reusable = true}}, SHIFT(8), + [449] = {.entry = {.count = 1, .reusable = true}}, SHIFT(447), + [451] = {.entry = {.count = 1, .reusable = true}}, SHIFT(47), + [453] = {.entry = {.count = 1, .reusable = true}}, SHIFT(460), + [455] = {.entry = {.count = 1, .reusable = true}}, SHIFT(31), + [457] = {.entry = {.count = 1, .reusable = true}}, SHIFT(502), + [459] = {.entry = {.count = 1, .reusable = true}}, SHIFT(48), + [461] = {.entry = {.count = 1, .reusable = true}}, SHIFT(547), + [463] = {.entry = {.count = 1, .reusable = true}}, SHIFT(49), + [465] = {.entry = {.count = 1, .reusable = true}}, SHIFT(461), + [467] = {.entry = {.count = 1, .reusable = true}}, SHIFT(24), + [469] = {.entry = {.count = 1, .reusable = true}}, SHIFT(468), + [471] = {.entry = {.count = 1, .reusable = true}}, SHIFT(50), + [473] = {.entry = {.count = 1, .reusable = true}}, SHIFT(594), + [475] = {.entry = {.count = 1, .reusable = true}}, SHIFT(25), + [477] = {.entry = {.count = 1, .reusable = true}}, SHIFT(553), + [479] = {.entry = {.count = 1, .reusable = true}}, SHIFT(51), + [481] = {.entry = {.count = 1, .reusable = true}}, SHIFT(613), + [483] = {.entry = {.count = 1, .reusable = true}}, SHIFT(9), + [485] = {.entry = {.count = 1, .reusable = true}}, SHIFT(453), + [487] = {.entry = {.count = 1, .reusable = true}}, SHIFT(52), + [489] = {.entry = {.count = 1, .reusable = true}}, SHIFT(442), + [491] = {.entry = {.count = 1, .reusable = true}}, SHIFT(26), + [493] = {.entry = {.count = 1, .reusable = true}}, SHIFT(495), + [495] = {.entry = {.count = 1, .reusable = true}}, SHIFT(53), + [497] = {.entry = {.count = 1, .reusable = true}}, SHIFT(515), + [499] = {.entry = {.count = 1, .reusable = true}}, SHIFT(10), + [501] = {.entry = {.count = 1, .reusable = true}}, SHIFT(559), + [503] = {.entry = {.count = 1, .reusable = true}}, SHIFT(54), + [505] = {.entry = {.count = 1, .reusable = true}}, SHIFT(489), + [507] = {.entry = {.count = 1, .reusable = true}}, SHIFT(27), + [509] = {.entry = {.count = 1, .reusable = true}}, SHIFT(517), + [511] = {.entry = {.count = 1, .reusable = true}}, SHIFT(11), + [513] = {.entry = {.count = 1, .reusable = true}}, SHIFT(562), + [515] = {.entry = {.count = 1, .reusable = true}}, SHIFT(55), + [517] = {.entry = {.count = 1, .reusable = true}}, SHIFT(598), + [519] = {.entry = {.count = 1, .reusable = true}}, SHIFT(28), + [521] = {.entry = {.count = 1, .reusable = true}}, SHIFT(459), + [523] = {.entry = {.count = 1, .reusable = true}}, SHIFT(56), + [525] = {.entry = {.count = 1, .reusable = true}}, SHIFT(331), + [527] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4), + [529] = {.entry = {.count = 1, .reusable = true}}, SHIFT(602), + [531] = {.entry = {.count = 1, .reusable = true}}, SHIFT(29), + [533] = {.entry = {.count = 1, .reusable = true}}, SHIFT(440), + [535] = {.entry = {.count = 1, .reusable = true}}, SHIFT(57), + [537] = {.entry = {.count = 1, .reusable = true}}, SHIFT(556), + [539] = {.entry = {.count = 1, .reusable = true}}, SHIFT(12), + [541] = {.entry = {.count = 1, .reusable = true}}, SHIFT(457), + [543] = {.entry = {.count = 1, .reusable = true}}, SHIFT(30), + [545] = {.entry = {.count = 1, .reusable = true}}, SHIFT(464), + [547] = {.entry = {.count = 1, .reusable = true}}, SHIFT(13), + [549] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1171), + [551] = {.entry = {.count = 1, .reusable = true}}, SHIFT(58), + [553] = {.entry = {.count = 1, .reusable = true}}, SHIFT(454), + [555] = {.entry = {.count = 1, .reusable = true}}, SHIFT(14), + [557] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1209), + [559] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3), + [561] = {.entry = {.count = 1, .reusable = true}}, SHIFT(320), + [563] = {.entry = {.count = 1, .reusable = true}}, SHIFT(326), + [565] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1523), + [567] = {.entry = {.count = 1, .reusable = true}}, SHIFT(310), + [569] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1564), + [571] = {.entry = {.count = 1, .reusable = true}}, SHIFT(319), + [573] = {.entry = {.count = 1, .reusable = false}}, SHIFT(707), + [575] = {.entry = {.count = 1, .reusable = true}}, SHIFT(199), + [577] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_primary_expression, 1, 0, 1), REDUCE(sym_list_splat_pattern, 2, 0, 8), + [580] = {.entry = {.count = 1, .reusable = true}}, SHIFT(371), + [582] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_list_splat_pattern, 2, 0, 8), + [584] = {.entry = {.count = 1, .reusable = false}}, SHIFT(657), + [586] = {.entry = {.count = 1, .reusable = true}}, SHIFT(200), + [588] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_list_splat_pattern, 2, 0, 8), + [590] = {.entry = {.count = 1, .reusable = false}}, SHIFT(137), + [592] = {.entry = {.count = 1, .reusable = false}}, SHIFT(941), + [594] = {.entry = {.count = 1, .reusable = true}}, SHIFT(196), + [596] = {.entry = {.count = 1, .reusable = false}}, SHIFT(635), + [598] = {.entry = {.count = 1, .reusable = true}}, SHIFT(197), + [600] = {.entry = {.count = 1, .reusable = false}}, SHIFT(147), + [602] = {.entry = {.count = 1, .reusable = true}}, SHIFT(218), + [604] = {.entry = {.count = 1, .reusable = true}}, SHIFT(381), + [606] = {.entry = {.count = 1, .reusable = true}}, SHIFT(629), + [608] = {.entry = {.count = 1, .reusable = true}}, SHIFT(226), + [610] = {.entry = {.count = 1, .reusable = false}}, SHIFT(143), + [612] = {.entry = {.count = 1, .reusable = false}}, SHIFT(878), + [614] = {.entry = {.count = 1, .reusable = false}}, SHIFT(886), + [616] = {.entry = {.count = 1, .reusable = true}}, SHIFT(231), + [618] = {.entry = {.count = 1, .reusable = false}}, SHIFT(346), + [620] = {.entry = {.count = 1, .reusable = true}}, SHIFT(673), + [622] = {.entry = {.count = 1, .reusable = true}}, SHIFT(219), + [624] = {.entry = {.count = 1, .reusable = true}}, SHIFT(164), + [626] = {.entry = {.count = 1, .reusable = true}}, SHIFT(878), + [628] = {.entry = {.count = 1, .reusable = false}}, SHIFT(149), + [630] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1051), + [632] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1048), + [634] = {.entry = {.count = 1, .reusable = false}}, SHIFT(350), + [636] = {.entry = {.count = 1, .reusable = false}}, SHIFT(970), + [638] = {.entry = {.count = 1, .reusable = false}}, SHIFT(949), + [640] = {.entry = {.count = 1, .reusable = true}}, SHIFT(227), + [642] = {.entry = {.count = 1, .reusable = true}}, SHIFT(389), + [644] = {.entry = {.count = 1, .reusable = true}}, SHIFT(662), + [646] = {.entry = {.count = 1, .reusable = true}}, SHIFT(228), + [648] = {.entry = {.count = 1, .reusable = true}}, SHIFT(166), + [650] = {.entry = {.count = 1, .reusable = true}}, SHIFT(970), + [652] = {.entry = {.count = 1, .reusable = false}}, SHIFT(151), + [654] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1062), + [656] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1044), + [658] = {.entry = {.count = 1, .reusable = true}}, SHIFT(225), + [660] = {.entry = {.count = 1, .reusable = true}}, SHIFT(408), + [662] = {.entry = {.count = 1, .reusable = true}}, SHIFT(689), + [664] = {.entry = {.count = 1, .reusable = true}}, SHIFT(210), + [666] = {.entry = {.count = 1, .reusable = false}}, SHIFT(152), + [668] = {.entry = {.count = 1, .reusable = false}}, SHIFT(849), + [670] = {.entry = {.count = 1, .reusable = false}}, SHIFT(842), + [672] = {.entry = {.count = 1, .reusable = true}}, SHIFT(158), + [674] = {.entry = {.count = 1, .reusable = true}}, SHIFT(365), + [676] = {.entry = {.count = 1, .reusable = true}}, SHIFT(163), + [678] = {.entry = {.count = 1, .reusable = true}}, SHIFT(571), + [680] = {.entry = {.count = 1, .reusable = false}}, SHIFT(397), + [682] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1018), + [684] = {.entry = {.count = 1, .reusable = false}}, SHIFT(168), + [686] = {.entry = {.count = 1, .reusable = false}}, SHIFT(144), + [688] = {.entry = {.count = 1, .reusable = true}}, SHIFT(557), + [690] = {.entry = {.count = 1, .reusable = true}}, SHIFT(877), + [692] = {.entry = {.count = 1, .reusable = false}}, SHIFT(848), + [694] = {.entry = {.count = 1, .reusable = false}}, SHIFT(839), + [696] = {.entry = {.count = 1, .reusable = true}}, SHIFT(162), + [698] = {.entry = {.count = 1, .reusable = false}}, SHIFT(636), + [700] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_pattern_list, 3, 0, 16), + [702] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_pattern_list, 3, 0, 16), + [704] = {.entry = {.count = 1, .reusable = true}}, SHIFT(161), + [706] = {.entry = {.count = 1, .reusable = false}}, SHIFT(141), + [708] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_pattern_list, 2, 0, 7), + [710] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_pattern_list, 2, 0, 7), + [712] = {.entry = {.count = 1, .reusable = true}}, SHIFT(834), + [714] = {.entry = {.count = 1, .reusable = true}}, SHIFT(861), + [716] = {.entry = {.count = 1, .reusable = true}}, SHIFT(883), + [718] = {.entry = {.count = 1, .reusable = false}}, SHIFT(829), + [720] = {.entry = {.count = 1, .reusable = false}}, SHIFT(850), + [722] = {.entry = {.count = 1, .reusable = true}}, SHIFT(208), + [724] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1630), + [726] = {.entry = {.count = 1, .reusable = false}}, SHIFT(343), + [728] = {.entry = {.count = 1, .reusable = true}}, SHIFT(891), + [730] = {.entry = {.count = 1, .reusable = false}}, SHIFT(415), + [732] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1015), + [734] = {.entry = {.count = 1, .reusable = false}}, SHIFT(148), + [736] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1593), + [738] = {.entry = {.count = 1, .reusable = true}}, SHIFT(708), + [740] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1701), + [742] = {.entry = {.count = 1, .reusable = true}}, SHIFT(950), + [744] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1695), + [746] = {.entry = {.count = 1, .reusable = true}}, SHIFT(896), + [748] = {.entry = {.count = 1, .reusable = false}}, SHIFT(387), + [750] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_yield, 1, 0, 0), + [752] = {.entry = {.count = 1, .reusable = false}}, SHIFT(376), + [754] = {.entry = {.count = 1, .reusable = false}}, SHIFT(863), + [756] = {.entry = {.count = 1, .reusable = false}}, SHIFT(865), + [758] = {.entry = {.count = 1, .reusable = false}}, SHIFT(416), + [760] = {.entry = {.count = 1, .reusable = false}}, SHIFT(401), + [762] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1014), + [764] = {.entry = {.count = 1, .reusable = false}}, SHIFT(140), + [766] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_list, 3, 0, 16), + [768] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_list, 2, 0, 7), + [770] = {.entry = {.count = 1, .reusable = false}}, SHIFT(169), + [772] = {.entry = {.count = 1, .reusable = false}}, SHIFT(828), + [774] = {.entry = {.count = 1, .reusable = false}}, SHIFT(862), + [776] = {.entry = {.count = 1, .reusable = true}}, SHIFT(198), + [778] = {.entry = {.count = 1, .reusable = true}}, SHIFT(917), + [780] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1673), + [782] = {.entry = {.count = 1, .reusable = false}}, SHIFT(145), + [784] = {.entry = {.count = 1, .reusable = true}}, SHIFT(881), + [786] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1655), + [788] = {.entry = {.count = 1, .reusable = true}}, SHIFT(211), + [790] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__collection_elements, 2, 0, 26), + [792] = {.entry = {.count = 1, .reusable = true}}, SHIFT(343), + [794] = {.entry = {.count = 1, .reusable = false}}, SHIFT(378), + [796] = {.entry = {.count = 1, .reusable = false}}, SHIFT(344), + [798] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_raise_statement, 1, 0, 0), + [800] = {.entry = {.count = 1, .reusable = false}}, SHIFT(971), + [802] = {.entry = {.count = 1, .reusable = false}}, SHIFT(954), + [804] = {.entry = {.count = 1, .reusable = true}}, SHIFT(733), + [806] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1669), + [808] = {.entry = {.count = 1, .reusable = false}}, SHIFT(150), + [810] = {.entry = {.count = 1, .reusable = false}}, SHIFT(398), + [812] = {.entry = {.count = 1, .reusable = true}}, SHIFT(375), + [814] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__collection_elements, 3, 0, 51), + [816] = {.entry = {.count = 1, .reusable = false}}, SHIFT(783), + [818] = {.entry = {.count = 1, .reusable = false}}, SHIFT(764), + [820] = {.entry = {.count = 1, .reusable = true}}, SHIFT(772), + [822] = {.entry = {.count = 1, .reusable = false}}, SHIFT(138), + [824] = {.entry = {.count = 1, .reusable = true}}, SHIFT(978), + [826] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1679), + [828] = {.entry = {.count = 1, .reusable = true}}, SHIFT(711), + [830] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_in_clause, 7, 0, 145), + [832] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_in_clause, 7, 0, 145), + [834] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1019), + [836] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_expression_list, 2, 0, 7), + [838] = {.entry = {.count = 1, .reusable = false}}, SHIFT(384), + [840] = {.entry = {.count = 1, .reusable = true}}, SHIFT(394), + [842] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_expression_list, 3, 0, 16), + [844] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_in_clause, 5, 0, 101), + [846] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_in_clause, 5, 0, 101), + [848] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_return_statement, 1, 0, 0), + [850] = {.entry = {.count = 1, .reusable = true}}, SHIFT(904), + [852] = {.entry = {.count = 1, .reusable = true}}, SHIFT(905), + [854] = {.entry = {.count = 1, .reusable = true}}, SHIFT(700), + [856] = {.entry = {.count = 1, .reusable = true}}, SHIFT(777), + [858] = {.entry = {.count = 1, .reusable = true}}, SHIFT(714), + [860] = {.entry = {.count = 1, .reusable = true}}, SHIFT(732), + [862] = {.entry = {.count = 1, .reusable = true}}, SHIFT(709), + [864] = {.entry = {.count = 1, .reusable = true}}, SHIFT(710), + [866] = {.entry = {.count = 1, .reusable = true}}, SHIFT(901), + [868] = {.entry = {.count = 1, .reusable = true}}, SHIFT(868), + [870] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_in_clause, 6, 0, 126), + [872] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_in_clause, 6, 0, 126), + [874] = {.entry = {.count = 1, .reusable = true}}, SHIFT(909), + [876] = {.entry = {.count = 1, .reusable = true}}, SHIFT(892), + [878] = {.entry = {.count = 1, .reusable = true}}, SHIFT(910), + [880] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_in_clause, 6, 0, 127), + [882] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_in_clause, 6, 0, 127), + [884] = {.entry = {.count = 1, .reusable = true}}, SHIFT(960), + [886] = {.entry = {.count = 1, .reusable = true}}, SHIFT(962), + [888] = {.entry = {.count = 1, .reusable = true}}, SHIFT(965), + [890] = {.entry = {.count = 1, .reusable = true}}, SHIFT(966), + [892] = {.entry = {.count = 1, .reusable = true}}, SHIFT(968), + [894] = {.entry = {.count = 1, .reusable = true}}, SHIFT(720), + [896] = {.entry = {.count = 1, .reusable = true}}, SHIFT(927), + [898] = {.entry = {.count = 1, .reusable = true}}, SHIFT(907), + [900] = {.entry = {.count = 1, .reusable = true}}, SHIFT(873), + [902] = {.entry = {.count = 1, .reusable = true}}, SHIFT(876), + [904] = {.entry = {.count = 1, .reusable = true}}, SHIFT(880), + [906] = {.entry = {.count = 1, .reusable = true}}, SHIFT(884), + [908] = {.entry = {.count = 1, .reusable = true}}, SHIFT(888), + [910] = {.entry = {.count = 1, .reusable = true}}, SHIFT(282), + [912] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_index_expression_list, 3, 0, 16), + [914] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_index_expression_list, 2, 0, 7), + [916] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_dictionary_splat_pattern, 2, 0, 34), + [918] = {.entry = {.count = 1, .reusable = true}}, SHIFT(937), + [920] = {.entry = {.count = 1, .reusable = true}}, SHIFT(895), + [922] = {.entry = {.count = 1, .reusable = true}}, SHIFT(982), + [924] = {.entry = {.count = 1, .reusable = true}}, SHIFT(958), + [926] = {.entry = {.count = 1, .reusable = true}}, SHIFT(959), + [928] = {.entry = {.count = 1, .reusable = true}}, SHIFT(702), + [930] = {.entry = {.count = 1, .reusable = true}}, SHIFT(931), + [932] = {.entry = {.count = 1, .reusable = true}}, SHIFT(894), + [934] = {.entry = {.count = 1, .reusable = true}}, SHIFT(906), + [936] = {.entry = {.count = 1, .reusable = true}}, SHIFT(704), + [938] = {.entry = {.count = 1, .reusable = true}}, SHIFT(705), + [940] = {.entry = {.count = 1, .reusable = true}}, SHIFT(926), + [942] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_try_statement, 4, 0, 57), + [944] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_try_statement, 4, 0, 57), + [946] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1620), + [948] = {.entry = {.count = 1, .reusable = false}}, SHIFT(296), + [950] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1617), + [952] = {.entry = {.count = 1, .reusable = false}}, SHIFT(871), + [954] = {.entry = {.count = 1, .reusable = false}}, SHIFT(879), + [956] = {.entry = {.count = 1, .reusable = true}}, SHIFT(314), + [958] = {.entry = {.count = 1, .reusable = true}}, SHIFT(125), + [960] = {.entry = {.count = 1, .reusable = false}}, SHIFT(390), + [962] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1021), + [964] = {.entry = {.count = 1, .reusable = false}}, SHIFT(146), + [966] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1644), + [968] = {.entry = {.count = 1, .reusable = false}}, SHIFT(302), + [970] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1628), + [972] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1676), + [974] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_slice, 2, 0, 70), + [976] = {.entry = {.count = 1, .reusable = true}}, SHIFT(289), + [978] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1715), + [980] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_try_statement, 5, 0, 84), + [982] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_try_statement, 5, 0, 84), + [984] = {.entry = {.count = 1, .reusable = true}}, SHIFT(335), + [986] = {.entry = {.count = 1, .reusable = true}}, SHIFT(88), + [988] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_slice, 1, 0, 0), + [990] = {.entry = {.count = 1, .reusable = true}}, SHIFT(298), + [992] = {.entry = {.count = 1, .reusable = true}}, SHIFT(384), + [994] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_print_statement, 4, 0, 30), + [996] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_slice, 3, 0, 70), + [998] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_print_statement, 3, 0, 0), + [1000] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_print_statement, 3, 0, 10), + [1002] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_print_statement, 4, 0, 29), + [1004] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_slice, 3, 0, 69), + [1006] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1690), + [1008] = {.entry = {.count = 1, .reusable = true}}, SHIFT(187), + [1010] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_slice, 2, 0, 0), + [1012] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1602), + [1014] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_slice, 4, 0, 98), + [1016] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__simple_statements, 4, 0, 0), + [1018] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__simple_statements, 4, 0, 0), + [1020] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_statement, 5, 0, 79), + [1022] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_statement, 5, 0, 79), + [1024] = {.entry = {.count = 1, .reusable = false}}, SHIFT(360), + [1026] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_statement, 5, 0, 80), + [1028] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_statement, 5, 0, 80), + [1030] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_statement, 6, 0, 105), + [1032] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_statement, 6, 0, 105), + [1034] = {.entry = {.count = 1, .reusable = false}}, SHIFT(428), + [1036] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_try_statement_repeat1, 2, 0, 0), + [1038] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_try_statement_repeat1, 2, 0, 0), + [1040] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_try_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(302), + [1043] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_try_statement_repeat2, 2, 0, 0), + [1045] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_try_statement_repeat2, 2, 0, 0), + [1047] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_try_statement_repeat2, 2, 0, 0), SHIFT_REPEAT(1676), + [1050] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_block, 2, 0, 0), + [1052] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_block, 2, 0, 0), + [1054] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__simple_statements, 3, 0, 0), + [1056] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__simple_statements, 3, 0, 0), + [1058] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__simple_statements, 2, 0, 0), + [1060] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__simple_statements, 2, 0, 0), + [1062] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attribute, 3, 0, 41), + [1064] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_attribute, 3, 0, 41), + [1066] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_statement, 4, 0, 55), + [1068] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_statement, 4, 0, 55), + [1070] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_block, 1, 0, 0), + [1072] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_block, 1, 0, 0), + [1074] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_subscript, 4, 0, 71), + [1076] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_subscript, 4, 0, 71), + [1078] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_try_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(296), + [1081] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_try_statement_repeat2, 2, 0, 0), SHIFT_REPEAT(1715), + [1084] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_if_statement_repeat1, 2, 0, 103), + [1086] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_if_statement_repeat1, 2, 0, 103), + [1088] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_if_statement_repeat1, 2, 0, 103), SHIFT_REPEAT(360), + [1091] = {.entry = {.count = 1, .reusable = false}}, SHIFT(494), + [1093] = {.entry = {.count = 1, .reusable = false}}, SHIFT(490), + [1095] = {.entry = {.count = 1, .reusable = false}}, SHIFT(134), + [1097] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_if_statement_repeat1, 2, 0, 103), SHIFT_REPEAT(428), + [1100] = {.entry = {.count = 1, .reusable = true}}, SHIFT(492), + [1102] = {.entry = {.count = 1, .reusable = true}}, SHIFT(297), + [1104] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1639), + [1106] = {.entry = {.count = 1, .reusable = true}}, SHIFT(510), + [1108] = {.entry = {.count = 1, .reusable = true}}, SHIFT(308), + [1110] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1725), + [1112] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_except_group_clause, 6, 0, 161), + [1114] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_except_group_clause, 6, 0, 161), + [1116] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_cases_repeat1, 2, 0, 0), + [1118] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_cases_repeat1, 2, 0, 0), + [1120] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_cases_repeat1, 2, 0, 0), SHIFT_REPEAT(827), + [1123] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_cases, 1, 0, 0), + [1125] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_cases, 1, 0, 0), + [1127] = {.entry = {.count = 1, .reusable = false}}, SHIFT(830), + [1129] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_except_clause, 7, 0, 168), + [1131] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_except_clause, 7, 0, 168), + [1133] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_except_group_clause, 8, 0, 169), + [1135] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_except_group_clause, 8, 0, 169), + [1137] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_except_group_clause, 7, 0, 167), + [1139] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_except_group_clause, 7, 0, 167), + [1141] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_except_group_clause, 5, 0, 151), + [1143] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_except_group_clause, 5, 0, 151), + [1145] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_except_clause, 3, 0, 57), + [1147] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_except_clause, 3, 0, 57), + [1149] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_except_clause, 5, 0, 152), + [1151] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_except_clause, 5, 0, 152), + [1153] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_except_clause, 4, 0, 84), + [1155] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_except_clause, 4, 0, 84), + [1157] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_except_clause, 4, 0, 134), + [1159] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_except_clause, 4, 0, 134), + [1161] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1362), + [1163] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1248), + [1165] = {.entry = {.count = 1, .reusable = false}}, SHIFT(827), + [1167] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1047), + [1169] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_except_clause, 6, 0, 162), + [1171] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_except_clause, 6, 0, 162), + [1173] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_cases_repeat1, 2, 0, 0), SHIFT_REPEAT(830), + [1176] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_elif_clause, 4, 0, 55), + [1178] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_elif_clause, 4, 0, 55), + [1180] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_statement, 8, 0, 147), + [1182] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_statement, 8, 0, 147), + [1184] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_while_statement, 4, 0, 56), + [1186] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_while_statement, 4, 0, 56), + [1188] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_statement, 6, 0, 108), + [1190] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_statement, 6, 0, 108), + [1192] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_statement, 7, 0, 129), + [1194] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_statement, 7, 0, 129), + [1196] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_try_statement, 6, 0, 84), + [1198] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_try_statement, 6, 0, 84), + [1200] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_elif_clause, 5, 0, 80), + [1202] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_elif_clause, 5, 0, 80), + [1204] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_if_statement_repeat1, 1, 0, 77), + [1206] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_if_statement_repeat1, 1, 0, 77), + [1208] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_statement, 7, 0, 133), + [1210] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_statement, 7, 0, 133), + [1212] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_while_statement, 5, 0, 83), + [1214] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_while_statement, 5, 0, 83), + [1216] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1443), + [1218] = {.entry = {.count = 1, .reusable = true}}, SHIFT(636), + [1220] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_try_statement, 5, 0, 57), + [1222] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_try_statement, 5, 0, 57), + [1224] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1466), + [1226] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__patterns, 2, 0, 26), + [1228] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__patterns, 3, 0, 51), + [1230] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_primary_expression, 1, 0, 0), + [1232] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_pattern, 1, 0, 0), REDUCE(sym_primary_expression, 1, 0, 0), + [1235] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_primary_expression, 1, 0, 0), + [1237] = {.entry = {.count = 1, .reusable = true}}, SHIFT(382), + [1239] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_pattern, 1, 0, 0), + [1241] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_pattern, 1, 0, 0), + [1243] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_case_block, 5, 0, 154), + [1245] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_case_block, 5, 0, 154), + [1247] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_case_block, 5, 0, 155), + [1249] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_case_block, 5, 0, 155), + [1251] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_else_clause, 4, 0, 84), + [1253] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_else_clause, 4, 0, 84), + [1255] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_primary_expression, 1, 0, 0), REDUCE(sym_list_splat_pattern, 2, 0, 9), + [1258] = {.entry = {.count = 1, .reusable = true}}, SHIFT(426), + [1260] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_list_splat_pattern, 2, 0, 9), + [1262] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_list_splat_pattern, 2, 0, 9), + [1264] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_else_clause, 3, 0, 57), + [1266] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_else_clause, 3, 0, 57), + [1268] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_case_block, 6, 0, 163), + [1270] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_case_block, 6, 0, 163), + [1272] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_case_block, 4, 0, 138), + [1274] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_case_block, 4, 0, 138), + [1276] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 7, 0, 142), + [1278] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 7, 0, 142), + [1280] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_match_statement, 4, 0, 61), + [1282] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_statement, 4, 0, 61), + [1284] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_class_definition, 4, 0, 65), + [1286] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_class_definition, 4, 0, 65), + [1288] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_class_definition, 5, 0, 92), + [1290] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_class_definition, 5, 0, 92), + [1292] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_class_definition, 5, 0, 93), + [1294] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_class_definition, 5, 0, 93), + [1296] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_statement, 5, 0, 78), + [1298] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_statement, 5, 0, 78), + [1300] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_class_definition, 5, 0, 94), + [1302] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_class_definition, 5, 0, 94), + [1304] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_with_statement, 5, 0, 81), + [1306] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_with_statement, 5, 0, 81), + [1308] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_while_statement, 5, 0, 82), + [1310] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_while_statement, 5, 0, 82), + [1312] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_with_statement, 5, 0, 85), + [1314] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_with_statement, 5, 0, 85), + [1316] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 5, 0, 90), + [1318] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 5, 0, 90), + [1320] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_statement, 6, 0, 102), + [1322] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_statement, 6, 0, 102), + [1324] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_statement, 6, 0, 104), + [1326] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_statement, 6, 0, 104), + [1328] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_with_statement, 6, 0, 106), + [1330] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_with_statement, 6, 0, 106), + [1332] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 6, 0, 107), + [1334] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 6, 0, 107), + [1336] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_while_statement, 6, 0, 109), + [1338] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_while_statement, 6, 0, 109), + [1340] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_finally_clause, 3, 0, 57), + [1342] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_finally_clause, 3, 0, 57), + [1344] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_try_statement, 6, 0, 57), + [1346] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_try_statement, 6, 0, 57), + [1348] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 6, 0, 117), + [1350] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 6, 0, 117), + [1352] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 6, 0, 118), + [1354] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 6, 0, 118), + [1356] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_class_definition, 6, 0, 119), + [1358] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_class_definition, 6, 0, 119), + [1360] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_class_definition, 6, 0, 120), + [1362] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_class_definition, 6, 0, 120), + [1364] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_class_definition, 6, 0, 121), + [1366] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_class_definition, 6, 0, 121), + [1368] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_statement, 7, 0, 128), + [1370] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_statement, 7, 0, 128), + [1372] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 7, 0, 130), + [1374] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 7, 0, 130), + [1376] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 7, 0, 131), + [1378] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 7, 0, 131), + [1380] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_statement, 7, 0, 132), + [1382] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_statement, 7, 0, 132), + [1384] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_finally_clause, 4, 0, 84), + [1386] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_finally_clause, 4, 0, 84), + [1388] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_try_statement, 7, 0, 84), + [1390] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_try_statement, 7, 0, 84), + [1392] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 7, 0, 141), + [1394] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 7, 0, 141), + [1396] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_class_definition, 7, 0, 143), + [1398] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_class_definition, 7, 0, 143), + [1400] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_decorated_definition, 2, 0, 19), + [1402] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_decorated_definition, 2, 0, 19), + [1404] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_statement, 8, 0, 146), + [1406] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_statement, 8, 0, 146), + [1408] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 8, 0, 148), + [1410] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 8, 0, 148), + [1412] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 8, 0, 149), + [1414] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 8, 0, 149), + [1416] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_statement, 8, 0, 150), + [1418] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_statement, 8, 0, 150), + [1420] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tuple, 2, 0, 0), + [1422] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_tuple_pattern, 2, 0, 0), REDUCE(sym_tuple, 2, 0, 0), + [1425] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_tuple, 2, 0, 0), + [1427] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tuple_pattern, 2, 0, 0), + [1429] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_tuple_pattern, 2, 0, 0), + [1431] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 8, 0, 156), + [1433] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 8, 0, 156), + [1435] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 8, 0, 157), + [1437] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 8, 0, 157), + [1439] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_statement, 9, 0, 158), + [1441] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_statement, 9, 0, 158), + [1443] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 9, 0, 159), + [1445] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 9, 0, 159), + [1447] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 9, 0, 160), + [1449] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 9, 0, 160), + [1451] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 9, 0, 165), + [1453] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 9, 0, 165), + [1455] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 10, 0, 166), + [1457] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 10, 0, 166), + [1459] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_with_statement, 4, 0, 58), + [1461] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_with_statement, 4, 0, 58), + [1463] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_list, 2, 0, 0), + [1465] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_list_pattern, 2, 0, 0), REDUCE(sym_list, 2, 0, 0), + [1468] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_list, 2, 0, 0), + [1470] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_list_pattern, 2, 0, 0), + [1472] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_list_pattern, 2, 0, 0), + [1474] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_statement, 4, 0, 60), + [1476] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_match_statement, 4, 0, 60), + [1478] = {.entry = {.count = 1, .reusable = false}}, SHIFT(859), + [1480] = {.entry = {.count = 1, .reusable = false}}, SHIFT(854), + [1482] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_keyword_separator, 1, 0, 0), + [1484] = {.entry = {.count = 1, .reusable = false}}, SHIFT(142), + [1486] = {.entry = {.count = 1, .reusable = false}}, SHIFT(625), + [1488] = {.entry = {.count = 1, .reusable = false}}, SHIFT(627), + [1490] = {.entry = {.count = 1, .reusable = false}}, SHIFT(633), + [1492] = {.entry = {.count = 1, .reusable = false}}, SHIFT(656), + [1494] = {.entry = {.count = 1, .reusable = false}}, SHIFT(691), + [1496] = {.entry = {.count = 1, .reusable = false}}, SHIFT(688), + [1498] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1004), + [1500] = {.entry = {.count = 1, .reusable = false}}, SHIFT(997), + [1502] = {.entry = {.count = 1, .reusable = false}}, SHIFT(236), + [1504] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_concatenated_string, 2, 0, 0), + [1506] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_concatenated_string, 2, 0, 0), + [1508] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_concatenated_template_string, 2, 0, 0), + [1510] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_concatenated_template_string, 2, 0, 0), + [1512] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_concatenated_string_repeat1, 2, 0, 0), + [1514] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_concatenated_string_repeat1, 2, 0, 0), + [1516] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_concatenated_string_repeat1, 2, 0, 0), SHIFT_REPEAT(1037), + [1519] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_concatenated_template_string_repeat1, 2, 0, 0), + [1521] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_concatenated_template_string_repeat1, 2, 0, 0), + [1523] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_concatenated_template_string_repeat1, 2, 0, 0), SHIFT_REPEAT(1038), + [1526] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_string, 2, 0, 2), + [1528] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_string, 2, 0, 2), + [1530] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_string, 3, 0, 20), + [1532] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_string, 3, 0, 20), + [1534] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_template_string, 3, 0, 20), + [1536] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_template_string, 3, 0, 20), + [1538] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_template_string, 2, 0, 2), + [1540] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_template_string, 2, 0, 2), + [1542] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_argument_list, 4, 0, 96), + [1544] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_argument_list, 4, 0, 96), + [1546] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_dictionary, 4, 0, 32), + [1548] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_dictionary, 4, 0, 32), + [1550] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_argument_list, 3, 0, 0), + [1552] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_argument_list, 3, 0, 0), + [1554] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_dictionary, 5, 0, 62), + [1556] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_dictionary, 5, 0, 62), + [1558] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_argument_list, 3, 0, 32), + [1560] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_argument_list, 3, 0, 32), + [1562] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_dictionary, 2, 0, 0), + [1564] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_dictionary, 2, 0, 0), + [1566] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_argument_list, 5, 0, 62), + [1568] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_argument_list, 5, 0, 62), + [1570] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_argument_list, 5, 0, 96), + [1572] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_argument_list, 5, 0, 96), + [1574] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_argument_list, 3, 0, 68), + [1576] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_argument_list, 3, 0, 68), + [1578] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_dictionary, 4, 0, 62), + [1580] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_dictionary, 4, 0, 62), + [1582] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_argument_list, 4, 0, 32), + [1584] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_argument_list, 4, 0, 32), + [1586] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_argument_list, 4, 0, 62), + [1588] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_argument_list, 4, 0, 62), + [1590] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_generator_expression, 4, 0, 52), + [1592] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_generator_expression, 4, 0, 52), + [1594] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parenthesized_expression, 3, 0, 28), + [1596] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_parenthesized_expression, 3, 0, 28), + [1598] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tuple, 3, 0, 27), + [1600] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_tuple, 3, 0, 27), + [1602] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1637), + [1604] = {.entry = {.count = 1, .reusable = true}}, SHIFT(186), + [1606] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression, 1, 0, 0), + [1608] = {.entry = {.count = 1, .reusable = false}}, SHIFT(646), + [1610] = {.entry = {.count = 1, .reusable = true}}, SHIFT(647), + [1612] = {.entry = {.count = 1, .reusable = true}}, SHIFT(648), + [1614] = {.entry = {.count = 1, .reusable = true}}, SHIFT(649), + [1616] = {.entry = {.count = 1, .reusable = true}}, SHIFT(650), + [1618] = {.entry = {.count = 1, .reusable = true}}, SHIFT(233), + [1620] = {.entry = {.count = 1, .reusable = true}}, SHIFT(651), + [1622] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_expression, 1, 0, 0), + [1624] = {.entry = {.count = 1, .reusable = true}}, SHIFT(646), + [1626] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1729), + [1628] = {.entry = {.count = 1, .reusable = true}}, SHIFT(652), + [1630] = {.entry = {.count = 1, .reusable = true}}, SHIFT(653), + [1632] = {.entry = {.count = 1, .reusable = false}}, SHIFT(648), + [1634] = {.entry = {.count = 1, .reusable = true}}, SHIFT(619), + [1636] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_list, 3, 0, 27), + [1638] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_list, 3, 0, 27), + [1640] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_dictionary, 3, 0, 0), + [1642] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_dictionary, 3, 0, 0), + [1644] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_dictionary, 3, 0, 32), + [1646] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_dictionary, 3, 0, 32), + [1648] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_set, 3, 0, 27), + [1650] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_set, 3, 0, 27), + [1652] = {.entry = {.count = 1, .reusable = false}}, SHIFT(665), + [1654] = {.entry = {.count = 1, .reusable = true}}, SHIFT(666), + [1656] = {.entry = {.count = 1, .reusable = true}}, SHIFT(667), + [1658] = {.entry = {.count = 1, .reusable = true}}, SHIFT(668), + [1660] = {.entry = {.count = 1, .reusable = true}}, SHIFT(669), + [1662] = {.entry = {.count = 1, .reusable = true}}, SHIFT(670), + [1664] = {.entry = {.count = 1, .reusable = true}}, SHIFT(665), + [1666] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1641), + [1668] = {.entry = {.count = 1, .reusable = true}}, SHIFT(671), + [1670] = {.entry = {.count = 1, .reusable = true}}, SHIFT(672), + [1672] = {.entry = {.count = 1, .reusable = false}}, SHIFT(667), + [1674] = {.entry = {.count = 1, .reusable = true}}, SHIFT(620), + [1676] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_set_comprehension, 4, 0, 52), + [1678] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_set_comprehension, 4, 0, 52), + [1680] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_dictionary_comprehension, 4, 0, 52), + [1682] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_dictionary_comprehension, 4, 0, 52), + [1684] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_list_comprehension, 4, 0, 52), + [1686] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_list_comprehension, 4, 0, 52), + [1688] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_argument_list, 4, 0, 68), + [1690] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_argument_list, 4, 0, 68), + [1692] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_argument_list, 2, 0, 0), + [1694] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_argument_list, 2, 0, 0), + [1696] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_call, 2, 0, 17), + [1698] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_call, 2, 0, 17), + [1700] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_unary_operator, 2, 0, 13), + [1702] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_unary_operator, 2, 0, 13), + [1704] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 3, 0, 73), + [1706] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_comparison_operator_repeat1, 3, 0, 73), + [1708] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_concatenated_template_string_repeat1, 2, 0, 0), SHIFT_REPEAT(1044), + [1711] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_binary_operator, 3, 0, 40), + [1713] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_binary_operator, 3, 0, 40), + [1715] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_await, 2, 0, 0), + [1717] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_await, 2, 0, 0), + [1719] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 3, 0, 72), + [1721] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_comparison_operator_repeat1, 3, 0, 72), + [1723] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 42), + [1725] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 42), + [1727] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_concatenated_string_repeat1, 2, 0, 0), SHIFT_REPEAT(1062), + [1730] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1643), + [1732] = {.entry = {.count = 1, .reusable = true}}, SHIFT(174), + [1734] = {.entry = {.count = 1, .reusable = false}}, SHIFT(628), + [1736] = {.entry = {.count = 1, .reusable = true}}, SHIFT(631), + [1738] = {.entry = {.count = 1, .reusable = true}}, SHIFT(654), + [1740] = {.entry = {.count = 1, .reusable = true}}, SHIFT(674), + [1742] = {.entry = {.count = 1, .reusable = true}}, SHIFT(686), + [1744] = {.entry = {.count = 1, .reusable = true}}, SHIFT(241), + [1746] = {.entry = {.count = 1, .reusable = true}}, SHIFT(694), + [1748] = {.entry = {.count = 1, .reusable = true}}, SHIFT(628), + [1750] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1723), [1752] = {.entry = {.count = 1, .reusable = true}}, SHIFT(623), - [1754] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_concatenated_string_repeat1, 2, 0, 0), SHIFT_REPEAT(1059), - [1757] = {.entry = {.count = 1, .reusable = false}}, SHIFT(681), - [1759] = {.entry = {.count = 1, .reusable = true}}, SHIFT(682), - [1761] = {.entry = {.count = 1, .reusable = true}}, SHIFT(683), - [1763] = {.entry = {.count = 1, .reusable = true}}, SHIFT(684), - [1765] = {.entry = {.count = 1, .reusable = true}}, SHIFT(685), - [1767] = {.entry = {.count = 1, .reusable = true}}, SHIFT(686), - [1769] = {.entry = {.count = 1, .reusable = true}}, SHIFT(681), - [1771] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1674), - [1773] = {.entry = {.count = 1, .reusable = true}}, SHIFT(687), - [1775] = {.entry = {.count = 1, .reusable = true}}, SHIFT(688), - [1777] = {.entry = {.count = 1, .reusable = false}}, SHIFT(683), - [1779] = {.entry = {.count = 1, .reusable = true}}, SHIFT(626), - [1781] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_concatenated_string_repeat1, 2, 0, 0), SHIFT_REPEAT(1035), - [1784] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_concatenated_template_string_repeat1, 2, 0, 0), SHIFT_REPEAT(1037), - [1787] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1632), - [1789] = {.entry = {.count = 1, .reusable = true}}, SHIFT(176), - [1791] = {.entry = {.count = 1, .reusable = false}}, SHIFT(635), - [1793] = {.entry = {.count = 1, .reusable = true}}, SHIFT(636), - [1795] = {.entry = {.count = 1, .reusable = true}}, SHIFT(661), - [1797] = {.entry = {.count = 1, .reusable = true}}, SHIFT(672), - [1799] = {.entry = {.count = 1, .reusable = true}}, SHIFT(680), - [1801] = {.entry = {.count = 1, .reusable = true}}, SHIFT(238), - [1803] = {.entry = {.count = 1, .reusable = true}}, SHIFT(693), - [1805] = {.entry = {.count = 1, .reusable = true}}, SHIFT(635), - [1807] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1671), - [1809] = {.entry = {.count = 1, .reusable = true}}, SHIFT(633), - [1811] = {.entry = {.count = 1, .reusable = true}}, SHIFT(634), - [1813] = {.entry = {.count = 1, .reusable = false}}, SHIFT(661), - [1815] = {.entry = {.count = 1, .reusable = true}}, SHIFT(618), - [1817] = {.entry = {.count = 1, .reusable = true}}, SHIFT(364), - [1819] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1695), - [1821] = {.entry = {.count = 1, .reusable = true}}, SHIFT(187), - [1823] = {.entry = {.count = 1, .reusable = false}}, SHIFT(637), - [1825] = {.entry = {.count = 1, .reusable = true}}, SHIFT(638), - [1827] = {.entry = {.count = 1, .reusable = true}}, SHIFT(639), - [1829] = {.entry = {.count = 1, .reusable = true}}, SHIFT(640), - [1831] = {.entry = {.count = 1, .reusable = true}}, SHIFT(641), - [1833] = {.entry = {.count = 1, .reusable = true}}, SHIFT(240), - [1835] = {.entry = {.count = 1, .reusable = true}}, SHIFT(642), - [1837] = {.entry = {.count = 1, .reusable = true}}, SHIFT(637), - [1839] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1612), - [1841] = {.entry = {.count = 1, .reusable = true}}, SHIFT(643), - [1843] = {.entry = {.count = 1, .reusable = true}}, SHIFT(644), - [1845] = {.entry = {.count = 1, .reusable = false}}, SHIFT(639), - [1847] = {.entry = {.count = 1, .reusable = true}}, SHIFT(622), - [1849] = {.entry = {.count = 1, .reusable = true}}, SHIFT(410), - [1851] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1038), - [1853] = {.entry = {.count = 1, .reusable = true}}, SHIFT(932), - [1855] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1374), - [1857] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_open_sequence_match_pattern, 2, 0, 0), - [1859] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_open_sequence_match_pattern, 2, 0, 0), - [1861] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1559), - [1863] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1142), - [1865] = {.entry = {.count = 1, .reusable = true}}, SHIFT(933), - [1867] = {.entry = {.count = 1, .reusable = true}}, SHIFT(994), - [1869] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1072), - [1871] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1072), - [1873] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1140), - [1875] = {.entry = {.count = 1, .reusable = false}}, SHIFT(373), - [1877] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_open_sequence_match_pattern, 3, 0, 0), - [1879] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_open_sequence_match_pattern, 3, 0, 0), - [1881] = {.entry = {.count = 1, .reusable = false}}, SHIFT(394), - [1883] = {.entry = {.count = 1, .reusable = true}}, SHIFT(381), - [1885] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1114), - [1887] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1154), - [1889] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1120), - [1891] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1139), - [1893] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1127), - [1895] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1119), - [1897] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1110), - [1899] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1116), - [1901] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1091), - [1903] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 42), - [1905] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 42), SHIFT_REPEAT(665), - [1908] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 42), - [1910] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 42), SHIFT_REPEAT(1700), - [1913] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 42), SHIFT_REPEAT(665), - [1916] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 42), SHIFT_REPEAT(625), - [1919] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 42), SHIFT_REPEAT(630), - [1922] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 42), SHIFT_REPEAT(1634), - [1925] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 42), SHIFT_REPEAT(630), - [1928] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 42), SHIFT_REPEAT(615), - [1931] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_comparison_operator, 2, 0, 18), - [1933] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_comparison_operator, 2, 0, 18), - [1935] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__patterns_repeat1, 2, 0, 36), - [1937] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__patterns_repeat1, 2, 0, 36), SHIFT_REPEAT(612), - [1940] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1562), - [1942] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1161), - [1944] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1561), - [1946] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 42), SHIFT_REPEAT(648), - [1949] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 42), SHIFT_REPEAT(1720), - [1952] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 42), SHIFT_REPEAT(648), - [1955] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 42), SHIFT_REPEAT(623), - [1958] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1137), - [1960] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_list_pattern, 3, 0, 25), - [1962] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_dictionary_splat_pattern, 2, 0, 34), - [1964] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 42), SHIFT_REPEAT(661), - [1967] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 42), SHIFT_REPEAT(1671), - [1970] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 42), SHIFT_REPEAT(661), - [1973] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 42), SHIFT_REPEAT(618), - [1976] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tuple_pattern, 3, 0, 25), - [1978] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__patterns_repeat1, 2, 0, 31), - [1980] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 42), SHIFT_REPEAT(683), - [1983] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 42), SHIFT_REPEAT(1674), - [1986] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 42), SHIFT_REPEAT(683), - [1989] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 42), SHIFT_REPEAT(626), - [1992] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1115), - [1994] = {.entry = {.count = 1, .reusable = true}}, SHIFT(158), - [1996] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_pattern_list, 2, 0, 16), - [1998] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 42), SHIFT_REPEAT(639), - [2001] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 42), SHIFT_REPEAT(1612), - [2004] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 42), SHIFT_REPEAT(639), - [2007] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 42), SHIFT_REPEAT(622), - [2010] = {.entry = {.count = 1, .reusable = true}}, SHIFT(156), - [2012] = {.entry = {.count = 1, .reusable = true}}, SHIFT(272), - [2014] = {.entry = {.count = 1, .reusable = true}}, SHIFT(155), - [2016] = {.entry = {.count = 1, .reusable = true}}, SHIFT(153), - [2018] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1479), - [2020] = {.entry = {.count = 1, .reusable = true}}, SHIFT(478), - [2022] = {.entry = {.count = 1, .reusable = false}}, SHIFT(614), - [2024] = {.entry = {.count = 1, .reusable = true}}, SHIFT(361), - [2026] = {.entry = {.count = 1, .reusable = true}}, SHIFT(678), - [2028] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1465), - [2030] = {.entry = {.count = 1, .reusable = true}}, SHIFT(415), - [2032] = {.entry = {.count = 1, .reusable = true}}, SHIFT(368), - [2034] = {.entry = {.count = 1, .reusable = true}}, SHIFT(379), - [2036] = {.entry = {.count = 1, .reusable = true}}, SHIFT(409), - [2038] = {.entry = {.count = 1, .reusable = true}}, SHIFT(292), - [2040] = {.entry = {.count = 1, .reusable = true}}, SHIFT(393), - [2042] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1342), - [2044] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1547), - [2046] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__parameters, 3, 0, 0), - [2048] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__parameters, 2, 0, 0), - [2050] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_not_operator, 2, 0, 10), - [2052] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_not_operator, 2, 0, 10), - [2054] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_match_value_pattern_repeat1, 2, 0, 0), - [2056] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_match_value_pattern_repeat1, 2, 0, 0), SHIFT_REPEAT(1667), - [2059] = {.entry = {.count = 1, .reusable = false}}, SHIFT(181), - [2061] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1147), - [2063] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1147), - [2065] = {.entry = {.count = 1, .reusable = false}}, SHIFT_EXTRA(), - [2067] = {.entry = {.count = 1, .reusable = true}}, SHIFT(841), - [2069] = {.entry = {.count = 1, .reusable = true}}, SHIFT(175), - [2071] = {.entry = {.count = 1, .reusable = true}}, SHIFT(421), - [2073] = {.entry = {.count = 1, .reusable = true}}, SHIFT(348), - [2075] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1595), - [2077] = {.entry = {.count = 1, .reusable = true}}, SHIFT(497), - [2079] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__collection_elements, 1, 0, 7), - [2081] = {.entry = {.count = 1, .reusable = true}}, SHIFT(411), - [2083] = {.entry = {.count = 1, .reusable = true}}, SHIFT(412), - [2085] = {.entry = {.count = 1, .reusable = true}}, SHIFT(847), - [2087] = {.entry = {.count = 1, .reusable = true}}, SHIFT(830), - [2089] = {.entry = {.count = 1, .reusable = true}}, SHIFT(827), - [2091] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1667), - [2093] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_pattern_class_name, 1, 0, 0), - [2095] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_capture_pattern, 1, 0, 0), - [2097] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_literal_pattern, 1, 0, 0), - [2099] = {.entry = {.count = 1, .reusable = true}}, SHIFT(946), - [2101] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_with_item, 1, -1, 12), SHIFT(175), - [2104] = {.entry = {.count = 1, .reusable = false}}, SHIFT(551), - [2106] = {.entry = {.count = 1, .reusable = true}}, SHIFT(404), - [2108] = {.entry = {.count = 1, .reusable = true}}, SHIFT(369), - [2110] = {.entry = {.count = 1, .reusable = true}}, SHIFT(374), - [2112] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_pattern_class_name, 2, 0, 0), - [2114] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_value_pattern, 2, 0, 0), - [2116] = {.entry = {.count = 1, .reusable = true}}, SHIFT(861), - [2118] = {.entry = {.count = 1, .reusable = true}}, SHIFT(695), - [2120] = {.entry = {.count = 1, .reusable = true}}, SHIFT(696), - [2122] = {.entry = {.count = 1, .reusable = true}}, SHIFT(697), - [2124] = {.entry = {.count = 1, .reusable = true}}, SHIFT(698), - [2126] = {.entry = {.count = 1, .reusable = true}}, SHIFT(806), - [2128] = {.entry = {.count = 1, .reusable = true}}, SHIFT(807), - [2130] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_string_repeat1, 2, 0, 21), SHIFT_REPEAT(181), - [2133] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_string_repeat1, 2, 0, 21), SHIFT_REPEAT(1147), - [2136] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_string_repeat1, 2, 0, 21), SHIFT_REPEAT(1147), - [2139] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_string_repeat1, 2, 0, 21), - [2141] = {.entry = {.count = 1, .reusable = true}}, SHIFT(808), - [2143] = {.entry = {.count = 1, .reusable = true}}, SHIFT(809), - [2145] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1470), - [2147] = {.entry = {.count = 1, .reusable = true}}, SHIFT(859), - [2149] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1404), - [2151] = {.entry = {.count = 1, .reusable = true}}, SHIFT(851), - [2153] = {.entry = {.count = 1, .reusable = true}}, SHIFT(850), - [2155] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_named_expression, 3, 0, 35), - [2157] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_named_expression, 3, 0, 35), - [2159] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_boolean_operator, 3, 0, 39), - [2161] = {.entry = {.count = 1, .reusable = true}}, SHIFT(426), - [2163] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_lambda, 3, 0, 32), - [2165] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_lambda, 3, 0, 32), - [2167] = {.entry = {.count = 1, .reusable = true}}, SHIFT(427), - [2169] = {.entry = {.count = 1, .reusable = true}}, SHIFT(710), - [2171] = {.entry = {.count = 1, .reusable = true}}, SHIFT(700), - [2173] = {.entry = {.count = 1, .reusable = true}}, SHIFT(195), - [2175] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_boolean_operator, 3, 0, 39), - [2177] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_lambda, 4, 0, 66), - [2179] = {.entry = {.count = 1, .reusable = true}}, SHIFT(417), - [2181] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_conditional_expression, 5, 0, 0), - [2183] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_literal_pattern, 1, 0, 83), - [2185] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1566), - [2187] = {.entry = {.count = 1, .reusable = true}}, SHIFT(868), - [2189] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_lambda, 4, 0, 66), - [2191] = {.entry = {.count = 1, .reusable = true}}, SHIFT(983), - [2193] = {.entry = {.count = 1, .reusable = true}}, SHIFT(212), - [2195] = {.entry = {.count = 1, .reusable = true}}, SHIFT(930), - [2197] = {.entry = {.count = 1, .reusable = true}}, SHIFT(202), - [2199] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_named_expression, 3, 0, 27), - [2201] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_literal_pattern, 2, 0, 107), - [2203] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1574), - [2205] = {.entry = {.count = 1, .reusable = true}}, SHIFT(888), - [2207] = {.entry = {.count = 1, .reusable = true}}, SHIFT(221), - [2209] = {.entry = {.count = 1, .reusable = true}}, SHIFT(901), - [2211] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_conditional_expression, 5, 0, 0), - [2213] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_named_expression, 3, 0, 27), - [2215] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__expression_within_for_in_clause, 1, 0, 0), - [2217] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_or_pattern, 3, 0, 0), - [2219] = {.entry = {.count = 1, .reusable = true}}, SHIFT(987), - [2221] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__comprehension_clauses_repeat1, 2, 0, 0), - [2223] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__comprehension_clauses_repeat1, 2, 0, 0), SHIFT_REPEAT(346), - [2226] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__comprehension_clauses_repeat1, 2, 0, 0), SHIFT_REPEAT(1595), - [2229] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__comprehension_clauses_repeat1, 2, 0, 0), SHIFT_REPEAT(497), - [2232] = {.entry = {.count = 1, .reusable = true}}, SHIFT(178), - [2234] = {.entry = {.count = 1, .reusable = true}}, SHIFT(422), - [2236] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_yield, 2, 0, 0), - [2238] = {.entry = {.count = 1, .reusable = true}}, SHIFT(395), - [2240] = {.entry = {.count = 1, .reusable = true}}, SHIFT(396), + [1754] = {.entry = {.count = 1, .reusable = true}}, SHIFT(624), + [1756] = {.entry = {.count = 1, .reusable = false}}, SHIFT(654), + [1758] = {.entry = {.count = 1, .reusable = true}}, SHIFT(617), + [1760] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1615), + [1762] = {.entry = {.count = 1, .reusable = true}}, SHIFT(175), + [1764] = {.entry = {.count = 1, .reusable = false}}, SHIFT(638), + [1766] = {.entry = {.count = 1, .reusable = true}}, SHIFT(641), + [1768] = {.entry = {.count = 1, .reusable = true}}, SHIFT(643), + [1770] = {.entry = {.count = 1, .reusable = true}}, SHIFT(644), + [1772] = {.entry = {.count = 1, .reusable = true}}, SHIFT(622), + [1774] = {.entry = {.count = 1, .reusable = true}}, SHIFT(238), + [1776] = {.entry = {.count = 1, .reusable = true}}, SHIFT(663), + [1778] = {.entry = {.count = 1, .reusable = true}}, SHIFT(638), + [1780] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1691), + [1782] = {.entry = {.count = 1, .reusable = true}}, SHIFT(659), + [1784] = {.entry = {.count = 1, .reusable = true}}, SHIFT(630), + [1786] = {.entry = {.count = 1, .reusable = false}}, SHIFT(643), + [1788] = {.entry = {.count = 1, .reusable = true}}, SHIFT(618), + [1790] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_concatenated_string_repeat1, 2, 0, 0), SHIFT_REPEAT(1051), + [1793] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_concatenated_template_string_repeat1, 2, 0, 0), SHIFT_REPEAT(1048), + [1796] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_concatenated_template_string_repeat1, 2, 0, 0), SHIFT_REPEAT(1042), + [1799] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_concatenated_string_repeat1, 2, 0, 0), SHIFT_REPEAT(1053), + [1802] = {.entry = {.count = 1, .reusable = false}}, SHIFT(678), + [1804] = {.entry = {.count = 1, .reusable = true}}, SHIFT(679), + [1806] = {.entry = {.count = 1, .reusable = true}}, SHIFT(680), + [1808] = {.entry = {.count = 1, .reusable = true}}, SHIFT(681), + [1810] = {.entry = {.count = 1, .reusable = true}}, SHIFT(682), + [1812] = {.entry = {.count = 1, .reusable = true}}, SHIFT(683), + [1814] = {.entry = {.count = 1, .reusable = true}}, SHIFT(678), + [1816] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1683), + [1818] = {.entry = {.count = 1, .reusable = true}}, SHIFT(684), + [1820] = {.entry = {.count = 1, .reusable = true}}, SHIFT(685), + [1822] = {.entry = {.count = 1, .reusable = false}}, SHIFT(680), + [1824] = {.entry = {.count = 1, .reusable = true}}, SHIFT(621), + [1826] = {.entry = {.count = 1, .reusable = true}}, SHIFT(388), + [1828] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1722), + [1830] = {.entry = {.count = 1, .reusable = true}}, SHIFT(188), + [1832] = {.entry = {.count = 1, .reusable = false}}, SHIFT(637), + [1834] = {.entry = {.count = 1, .reusable = true}}, SHIFT(639), + [1836] = {.entry = {.count = 1, .reusable = true}}, SHIFT(640), + [1838] = {.entry = {.count = 1, .reusable = true}}, SHIFT(642), + [1840] = {.entry = {.count = 1, .reusable = true}}, SHIFT(695), + [1842] = {.entry = {.count = 1, .reusable = true}}, SHIFT(240), + [1844] = {.entry = {.count = 1, .reusable = true}}, SHIFT(661), + [1846] = {.entry = {.count = 1, .reusable = true}}, SHIFT(637), + [1848] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1656), + [1850] = {.entry = {.count = 1, .reusable = true}}, SHIFT(664), + [1852] = {.entry = {.count = 1, .reusable = true}}, SHIFT(677), + [1854] = {.entry = {.count = 1, .reusable = false}}, SHIFT(640), + [1856] = {.entry = {.count = 1, .reusable = true}}, SHIFT(616), + [1858] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1060), + [1860] = {.entry = {.count = 1, .reusable = true}}, SHIFT(889), + [1862] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1497), + [1864] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1579), + [1866] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1139), + [1868] = {.entry = {.count = 1, .reusable = true}}, SHIFT(899), + [1870] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1007), + [1872] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1088), + [1874] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1088), + [1876] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1168), + [1878] = {.entry = {.count = 1, .reusable = false}}, SHIFT(351), + [1880] = {.entry = {.count = 1, .reusable = true}}, SHIFT(410), + [1882] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_open_sequence_match_pattern, 3, 0, 0), + [1884] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_open_sequence_match_pattern, 3, 0, 0), + [1886] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_open_sequence_match_pattern, 2, 0, 0), + [1888] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_open_sequence_match_pattern, 2, 0, 0), + [1890] = {.entry = {.count = 1, .reusable = false}}, SHIFT(367), + [1892] = {.entry = {.count = 1, .reusable = true}}, SHIFT(357), + [1894] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1114), + [1896] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1148), + [1898] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1129), + [1900] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1111), + [1902] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1110), + [1904] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1133), + [1906] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1137), + [1908] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1098), + [1910] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1132), + [1912] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_comparison_operator, 2, 0, 18), + [1914] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_comparison_operator, 2, 0, 18), + [1916] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 43), + [1918] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 43), + [1920] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 43), SHIFT_REPEAT(667), + [1923] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 43), SHIFT_REPEAT(1641), + [1926] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 43), SHIFT_REPEAT(667), + [1929] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 43), SHIFT_REPEAT(620), + [1932] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 43), SHIFT_REPEAT(648), + [1935] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 43), SHIFT_REPEAT(1729), + [1938] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 43), SHIFT_REPEAT(648), + [1941] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 43), SHIFT_REPEAT(619), + [1944] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__patterns_repeat1, 2, 0, 37), + [1946] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__patterns_repeat1, 2, 0, 37), SHIFT_REPEAT(590), + [1949] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1558), + [1951] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1130), + [1953] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1557), + [1955] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 43), SHIFT_REPEAT(680), + [1958] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 43), SHIFT_REPEAT(1683), + [1961] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 43), SHIFT_REPEAT(680), + [1964] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 43), SHIFT_REPEAT(621), + [1967] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__patterns_repeat1, 2, 0, 32), + [1969] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_list_pattern, 3, 0, 27), + [1971] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 43), SHIFT_REPEAT(643), + [1974] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 43), SHIFT_REPEAT(1691), + [1977] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 43), SHIFT_REPEAT(643), + [1980] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 43), SHIFT_REPEAT(618), + [1983] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tuple_pattern, 3, 0, 27), + [1985] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 43), SHIFT_REPEAT(654), + [1988] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 43), SHIFT_REPEAT(1723), + [1991] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 43), SHIFT_REPEAT(654), + [1994] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 43), SHIFT_REPEAT(617), + [1997] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_dictionary_splat_pattern, 2, 0, 35), + [1999] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1150), + [2001] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1116), + [2003] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 43), SHIFT_REPEAT(640), + [2006] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 43), SHIFT_REPEAT(1656), + [2009] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 43), SHIFT_REPEAT(640), + [2012] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 43), SHIFT_REPEAT(616), + [2015] = {.entry = {.count = 1, .reusable = true}}, SHIFT(159), + [2017] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_pattern_list, 2, 0, 16), + [2019] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1500), + [2021] = {.entry = {.count = 1, .reusable = true}}, SHIFT(476), + [2023] = {.entry = {.count = 1, .reusable = false}}, SHIFT(615), + [2025] = {.entry = {.count = 1, .reusable = true}}, SHIFT(366), + [2027] = {.entry = {.count = 1, .reusable = true}}, SHIFT(632), + [2029] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1491), + [2031] = {.entry = {.count = 1, .reusable = true}}, SHIFT(409), + [2033] = {.entry = {.count = 1, .reusable = true}}, SHIFT(407), + [2035] = {.entry = {.count = 1, .reusable = true}}, SHIFT(160), + [2037] = {.entry = {.count = 1, .reusable = true}}, SHIFT(283), + [2039] = {.entry = {.count = 1, .reusable = true}}, SHIFT(153), + [2041] = {.entry = {.count = 1, .reusable = true}}, SHIFT(154), + [2043] = {.entry = {.count = 1, .reusable = true}}, SHIFT(386), + [2045] = {.entry = {.count = 1, .reusable = true}}, SHIFT(306), + [2047] = {.entry = {.count = 1, .reusable = true}}, SHIFT(337), + [2049] = {.entry = {.count = 1, .reusable = true}}, SHIFT(356), + [2051] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1324), + [2053] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1525), + [2055] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__parameters, 3, 0, 0), + [2057] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__parameters, 2, 0, 0), + [2059] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_not_operator, 2, 0, 10), + [2061] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_not_operator, 2, 0, 10), + [2063] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_match_value_pattern_repeat1, 2, 0, 0), + [2065] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_match_value_pattern_repeat1, 2, 0, 0), SHIFT_REPEAT(1662), + [2068] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_string_repeat1, 2, 0, 21), SHIFT_REPEAT(180), + [2071] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_string_repeat1, 2, 0, 21), SHIFT_REPEAT(1149), + [2074] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_string_repeat1, 2, 0, 21), SHIFT_REPEAT(1149), + [2077] = {.entry = {.count = 1, .reusable = false}}, SHIFT_EXTRA(), + [2079] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_string_repeat1, 2, 0, 21), + [2081] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_literal_pattern, 1, 0, 0), + [2083] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1662), + [2085] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_pattern_class_name, 2, 0, 0), + [2087] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_value_pattern, 2, 0, 0), + [2089] = {.entry = {.count = 1, .reusable = false}}, SHIFT(180), + [2091] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1149), + [2093] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1149), + [2095] = {.entry = {.count = 1, .reusable = true}}, SHIFT(696), + [2097] = {.entry = {.count = 1, .reusable = true}}, SHIFT(699), + [2099] = {.entry = {.count = 1, .reusable = true}}, SHIFT(697), + [2101] = {.entry = {.count = 1, .reusable = true}}, SHIFT(698), + [2103] = {.entry = {.count = 1, .reusable = true}}, SHIFT(176), + [2105] = {.entry = {.count = 1, .reusable = true}}, SHIFT(420), + [2107] = {.entry = {.count = 1, .reusable = true}}, SHIFT(347), + [2109] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1646), + [2111] = {.entry = {.count = 1, .reusable = true}}, SHIFT(504), + [2113] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__collection_elements, 1, 0, 7), + [2115] = {.entry = {.count = 1, .reusable = true}}, SHIFT(411), + [2117] = {.entry = {.count = 1, .reusable = true}}, SHIFT(412), + [2119] = {.entry = {.count = 1, .reusable = true}}, SHIFT(857), + [2121] = {.entry = {.count = 1, .reusable = true}}, SHIFT(836), + [2123] = {.entry = {.count = 1, .reusable = true}}, SHIFT(796), + [2125] = {.entry = {.count = 1, .reusable = true}}, SHIFT(787), + [2127] = {.entry = {.count = 1, .reusable = true}}, SHIFT(788), + [2129] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1388), + [2131] = {.entry = {.count = 1, .reusable = true}}, SHIFT(864), + [2133] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1429), + [2135] = {.entry = {.count = 1, .reusable = true}}, SHIFT(837), + [2137] = {.entry = {.count = 1, .reusable = true}}, SHIFT(843), + [2139] = {.entry = {.count = 1, .reusable = true}}, SHIFT(853), + [2141] = {.entry = {.count = 1, .reusable = true}}, SHIFT(852), + [2143] = {.entry = {.count = 1, .reusable = true}}, SHIFT(860), + [2145] = {.entry = {.count = 1, .reusable = true}}, SHIFT(957), + [2147] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_with_item, 1, -1, 12), SHIFT(176), + [2150] = {.entry = {.count = 1, .reusable = false}}, SHIFT(588), + [2152] = {.entry = {.count = 1, .reusable = true}}, SHIFT(404), + [2154] = {.entry = {.count = 1, .reusable = true}}, SHIFT(392), + [2156] = {.entry = {.count = 1, .reusable = true}}, SHIFT(393), + [2158] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_pattern_class_name, 1, 0, 0), + [2160] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_capture_pattern, 1, 0, 0), + [2162] = {.entry = {.count = 1, .reusable = true}}, SHIFT(795), + [2164] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_boolean_operator, 3, 0, 40), + [2166] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_boolean_operator, 3, 0, 40), + [2168] = {.entry = {.count = 1, .reusable = true}}, SHIFT(897), + [2170] = {.entry = {.count = 1, .reusable = true}}, SHIFT(205), + [2172] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_conditional_expression, 5, 0, 0), + [2174] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_conditional_expression, 5, 0, 0), + [2176] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_lambda, 4, 0, 67), + [2178] = {.entry = {.count = 1, .reusable = true}}, SHIFT(417), + [2180] = {.entry = {.count = 1, .reusable = true}}, SHIFT(340), + [2182] = {.entry = {.count = 1, .reusable = true}}, SHIFT(345), + [2184] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_named_expression, 3, 0, 23), + [2186] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_named_expression, 3, 0, 23), + [2188] = {.entry = {.count = 1, .reusable = true}}, SHIFT(919), + [2190] = {.entry = {.count = 1, .reusable = true}}, SHIFT(945), + [2192] = {.entry = {.count = 1, .reusable = true}}, SHIFT(952), + [2194] = {.entry = {.count = 1, .reusable = true}}, SHIFT(213), + [2196] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_lambda, 3, 0, 33), + [2198] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_lambda, 3, 0, 33), + [2200] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_named_expression, 3, 0, 36), + [2202] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_named_expression, 3, 0, 36), + [2204] = {.entry = {.count = 1, .reusable = true}}, SHIFT(940), + [2206] = {.entry = {.count = 1, .reusable = true}}, SHIFT(220), + [2208] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_literal_pattern, 2, 0, 110), + [2210] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1561), + [2212] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_lambda, 4, 0, 67), + [2214] = {.entry = {.count = 1, .reusable = true}}, SHIFT(717), + [2216] = {.entry = {.count = 1, .reusable = true}}, SHIFT(706), + [2218] = {.entry = {.count = 1, .reusable = true}}, SHIFT(201), + [2220] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_literal_pattern, 1, 0, 86), + [2222] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1565), + [2224] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__comprehension_clauses, 1, 0, 0), + [2226] = {.entry = {.count = 1, .reusable = true}}, SHIFT(385), + [2228] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__expression_within_for_in_clause, 1, 0, 0), + [2230] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_or_pattern, 4, 0, 0), + [2232] = {.entry = {.count = 1, .reusable = true}}, SHIFT(989), + [2234] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_list_splat, 2, 0, 0), + [2236] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__comprehension_clauses, 2, 0, 0), + [2238] = {.entry = {.count = 1, .reusable = true}}, SHIFT(181), + [2240] = {.entry = {.count = 1, .reusable = true}}, SHIFT(421), [2242] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__f_expression, 1, 0, 0), - [2244] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_list_splat, 2, 0, 0), - [2246] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_match_or_pattern_repeat1, 2, 0, 0), - [2248] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_match_or_pattern_repeat1, 2, 0, 0), SHIFT_REPEAT(987), - [2251] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__comprehension_clauses, 2, 0, 0), - [2253] = {.entry = {.count = 1, .reusable = true}}, SHIFT(346), - [2255] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__comprehension_clauses, 1, 0, 0), - [2257] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_or_pattern, 4, 0, 0), - [2259] = {.entry = {.count = 1, .reusable = true}}, SHIFT(350), - [2261] = {.entry = {.count = 1, .reusable = true}}, SHIFT(351), - [2263] = {.entry = {.count = 1, .reusable = true}}, SHIFT(353), - [2265] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_class_pattern, 3, 0, 136), - [2267] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_in_clause, 4, 0, 98), - [2269] = {.entry = {.count = 1, .reusable = true}}, SHIFT(192), - [2271] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1717), - [2273] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1713), - [2275] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1691), - [2277] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_sequence_pattern, 5, 0, 0), - [2279] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_mapping_pattern, 5, 0, 0), - [2281] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_expression_list_repeat1, 2, 0, 31), - [2283] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1685), - [2285] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1619), - [2287] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1629), - [2289] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_class_pattern, 5, 0, 136), + [2244] = {.entry = {.count = 1, .reusable = true}}, SHIFT(368), + [2246] = {.entry = {.count = 1, .reusable = true}}, SHIFT(369), + [2248] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_or_pattern, 3, 0, 0), + [2250] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_match_or_pattern_repeat1, 2, 0, 0), + [2252] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_match_or_pattern_repeat1, 2, 0, 0), SHIFT_REPEAT(989), + [2255] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__comprehension_clauses_repeat1, 2, 0, 0), + [2257] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__comprehension_clauses_repeat1, 2, 0, 0), SHIFT_REPEAT(385), + [2260] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__comprehension_clauses_repeat1, 2, 0, 0), SHIFT_REPEAT(1646), + [2263] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__comprehension_clauses_repeat1, 2, 0, 0), SHIFT_REPEAT(504), + [2266] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_yield, 2, 0, 0), + [2268] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_class_pattern, 8, 0, 140), + [2270] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_group_pattern, 3, 0, 135), + [2272] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_sequence_pattern, 3, 0, 0), + [2274] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_mapping_pattern, 3, 0, 0), + [2276] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_literal_pattern, 3, 0, 136), + [2278] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_class_pattern, 3, 0, 140), + [2280] = {.entry = {.count = 1, .reusable = true}}, SHIFT(986), + [2282] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_in_clause, 6, 0, 145), + [2284] = {.entry = {.count = 1, .reusable = true}}, SHIFT(190), + [2286] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_for_in_clause_repeat1, 2, 0, 0), + [2288] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_for_in_clause_repeat1, 2, 0, 0), SHIFT_REPEAT(299), [2291] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_sequence_pattern, 4, 0, 0), - [2293] = {.entry = {.count = 1, .reusable = true}}, SHIFT(355), - [2295] = {.entry = {.count = 1, .reusable = true}}, SHIFT(191), - [2297] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_raise_statement, 2, 0, 0), - [2299] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_literal_pattern, 4, 0, 149), - [2301] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_dictionary_splat, 2, 0, 14), - [2303] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_mapping_pattern, 6, 0, 0), - [2305] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_class_pattern, 6, 0, 136), - [2307] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_in_clause, 5, 0, 122), - [2309] = {.entry = {.count = 1, .reusable = true}}, SHIFT(204), - [2311] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_mapping_pattern, 7, 0, 0), - [2313] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_class_pattern, 7, 0, 136), - [2315] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_class_pattern, 8, 0, 136), - [2317] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_string_content_repeat1, 2, 0, 0), - [2319] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_string_content_repeat1, 2, 0, 0), SHIFT_REPEAT(1133), - [2322] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_string_content_repeat1, 2, 0, 0), SHIFT_REPEAT(1133), - [2325] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_string_content_repeat1, 2, 0, 0), - [2327] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_class_pattern, 9, 0, 136), - [2329] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_in_clause, 5, 0, 123), - [2331] = {.entry = {.count = 1, .reusable = true}}, SHIFT(205), - [2333] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_mapping_pattern, 4, 0, 0), - [2335] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_literal_pattern, 3, 0, 132), - [2337] = {.entry = {.count = 1, .reusable = true}}, SHIFT(986), - [2339] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__match_or_pattern, 1, 0, 0), - [2341] = {.entry = {.count = 1, .reusable = true}}, SHIFT(988), - [2343] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_class_pattern, 4, 0, 136), - [2345] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_in_clause, 6, 0, 141), - [2347] = {.entry = {.count = 1, .reusable = true}}, SHIFT(190), - [2349] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_string_content, 1, 0, 0), - [2351] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1133), - [2353] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1133), - [2355] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_string_content, 1, 0, 0), - [2357] = {.entry = {.count = 1, .reusable = true}}, SHIFT(170), + [2293] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_literal_pattern, 4, 0, 153), + [2295] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_mapping_pattern, 4, 0, 0), + [2297] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_in_clause, 4, 0, 101), + [2299] = {.entry = {.count = 1, .reusable = true}}, SHIFT(194), + [2301] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_class_pattern, 4, 0, 140), + [2303] = {.entry = {.count = 1, .reusable = true}}, SHIFT(427), + [2305] = {.entry = {.count = 1, .reusable = true}}, SHIFT(339), + [2307] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1728), + [2309] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1724), + [2311] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1702), + [2313] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1668), + [2315] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1671), + [2317] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1663), + [2319] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_sequence_pattern, 5, 0, 0), + [2321] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_mapping_pattern, 5, 0, 0), + [2323] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_class_pattern, 5, 0, 140), + [2325] = {.entry = {.count = 1, .reusable = true}}, SHIFT(399), + [2327] = {.entry = {.count = 1, .reusable = true}}, SHIFT(191), + [2329] = {.entry = {.count = 1, .reusable = true}}, SHIFT(424), + [2331] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_raise_statement, 2, 0, 0), + [2333] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_string_content_repeat1, 2, 0, 0), + [2335] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_string_content_repeat1, 2, 0, 0), SHIFT_REPEAT(1135), + [2338] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_string_content_repeat1, 2, 0, 0), SHIFT_REPEAT(1135), + [2341] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_string_content_repeat1, 2, 0, 0), + [2343] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_mapping_pattern, 6, 0, 0), + [2345] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_class_pattern, 6, 0, 140), + [2347] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_mapping_pattern, 7, 0, 0), + [2349] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__match_or_pattern, 1, 0, 0), + [2351] = {.entry = {.count = 1, .reusable = true}}, SHIFT(988), + [2353] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_class_pattern, 9, 0, 140), + [2355] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_dictionary_splat, 2, 0, 14), + [2357] = {.entry = {.count = 1, .reusable = true}}, SHIFT(171), [2359] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_sequence_pattern, 2, 0, 0), - [2361] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_clause, 2, 0, 0), - [2363] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_mapping_pattern, 3, 0, 0), - [2365] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_group_pattern, 3, 0, 131), - [2367] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_mapping_pattern, 2, 0, 0), - [2369] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_for_in_clause_repeat1, 2, 0, 0), - [2371] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_for_in_clause_repeat1, 2, 0, 0), SHIFT_REPEAT(297), - [2374] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_sequence_pattern, 3, 0, 0), - [2376] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1219), - [2378] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1312), - [2380] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1528), - [2382] = {.entry = {.count = 1, .reusable = true}}, SHIFT(259), - [2384] = {.entry = {.count = 1, .reusable = true}}, SHIFT(708), - [2386] = {.entry = {.count = 1, .reusable = true}}, SHIFT(281), - [2388] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1606), - [2390] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type, 1, 0, 0), - [2392] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__collection_elements_repeat1, 2, 0, 31), - [2394] = {.entry = {.count = 1, .reusable = true}}, SHIFT(289), - [2396] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_print_statement, 2, 0, 10), - [2398] = {.entry = {.count = 1, .reusable = true}}, SHIFT(432), - [2400] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_assert_statement, 2, 0, 0), - [2402] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_lambda_within_for_in_clause, 4, 0, 66), - [2404] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_return_statement, 2, 0, 0), - [2406] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_delete_statement, 2, 0, 11), - [2408] = {.entry = {.count = 1, .reusable = true}}, SHIFT(273), - [2410] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1588), - [2412] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1220), - [2414] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1696), - [2416] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1659), - [2418] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_yield, 3, 0, 0), - [2420] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__match_pattern, 1, 0, 0), - [2422] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1703), - [2424] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_statement, 1, 0, 0), - [2426] = {.entry = {.count = 1, .reusable = true}}, SHIFT(430), - [2428] = {.entry = {.count = 1, .reusable = true}}, SHIFT(397), - [2430] = {.entry = {.count = 1, .reusable = true}}, SHIFT(419), - [2432] = {.entry = {.count = 1, .reusable = true}}, SHIFT(120), - [2434] = {.entry = {.count = 1, .reusable = true}}, SHIFT(382), - [2436] = {.entry = {.count = 1, .reusable = true}}, SHIFT(386), - [2438] = {.entry = {.count = 1, .reusable = true}}, SHIFT(252), - [2440] = {.entry = {.count = 1, .reusable = true}}, SHIFT(968), - [2442] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_exec_statement, 4, 0, 15), - [2444] = {.entry = {.count = 1, .reusable = true}}, SHIFT(256), - [2446] = {.entry = {.count = 1, .reusable = true}}, SHIFT(874), - [2448] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_with_item, 1, -1, 12), - [2450] = {.entry = {.count = 1, .reusable = true}}, SHIFT(551), - [2452] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1216), - [2454] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1336), - [2456] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1664), - [2458] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_lambda_within_for_in_clause, 3, 0, 32), - [2460] = {.entry = {.count = 1, .reusable = true}}, SHIFT(433), - [2462] = {.entry = {.count = 1, .reusable = true}}, SHIFT(102), - [2464] = {.entry = {.count = 1, .reusable = true}}, SHIFT(434), - [2466] = {.entry = {.count = 1, .reusable = true}}, SHIFT(112), - [2468] = {.entry = {.count = 1, .reusable = true}}, SHIFT(402), - [2470] = {.entry = {.count = 1, .reusable = true}}, SHIFT(106), - [2472] = {.entry = {.count = 1, .reusable = true}}, SHIFT(255), - [2474] = {.entry = {.count = 1, .reusable = true}}, SHIFT(902), - [2476] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__right_hand_side, 1, 0, 0), - [2478] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_pair, 3, 0, 62), - [2480] = {.entry = {.count = 1, .reusable = true}}, SHIFT(180), - [2482] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_list, 2, 0, 16), - [2484] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_dotted_name, 1, 0, 0), - [2486] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_interpolation, 6, 0, 43), - [2488] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_interpolation, 6, 0, 43), - [2490] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_interpolation, 5, 0, 43), - [2492] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_interpolation, 5, 0, 43), - [2494] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1698), - [2496] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_typevar_parameter, 1, 0, 6), - [2498] = {.entry = {.count = 1, .reusable = true}}, SHIFT(425), - [2500] = {.entry = {.count = 1, .reusable = true}}, SHIFT(298), - [2502] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_expression_list_repeat1, 2, 0, 36), SHIFT_REPEAT(251), - [2505] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_expression_list_repeat1, 2, 0, 36), - [2507] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_expression_list_repeat1, 2, 0, 36), SHIFT_REPEAT(263), - [2510] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_interpolation, 3, 0, 43), - [2512] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_interpolation, 3, 0, 43), - [2514] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_print_statement_repeat1, 2, 0, 10), - [2516] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_chevron, 2, 0, 0), - [2518] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_assert_statement_repeat1, 2, 0, 0), - [2520] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_default_parameter, 3, 0, 35), - [2522] = {.entry = {.count = 1, .reusable = true}}, SHIFT(171), - [2524] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1298), - [2526] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_typed_default_parameter, 5, 0, 119), - [2528] = {.entry = {.count = 1, .reusable = true}}, SHIFT(172), - [2530] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_dotted_name, 2, 0, 0), - [2532] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_match_value_pattern_repeat1, 2, 0, 0), SHIFT_REPEAT(1698), - [2535] = {.entry = {.count = 1, .reusable = true}}, SHIFT(89), - [2537] = {.entry = {.count = 1, .reusable = true}}, SHIFT(98), - [2539] = {.entry = {.count = 1, .reusable = true}}, SHIFT(75), - [2541] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__type_bound, 2, 0, 109), - [2543] = {.entry = {.count = 1, .reusable = true}}, SHIFT(126), - [2545] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_open_sequence_match_pattern_repeat1, 2, 0, 0), - [2547] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_open_sequence_match_pattern_repeat1, 2, 0, 0), SHIFT_REPEAT(979), - [2550] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_exception_list_repeat1, 2, 0, 31), - [2552] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_as_pattern, 3, 0, 135), - [2554] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_string_repeat1, 1, 0, 4), - [2556] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_string_repeat1, 1, 0, 4), - [2558] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__index_expression, 1, 0, 0), - [2560] = {.entry = {.count = 1, .reusable = true}}, SHIFT(269), - [2562] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_slice, 3, 0, 95), - [2564] = {.entry = {.count = 1, .reusable = true}}, SHIFT(306), - [2566] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_decorated_definition_repeat1, 2, 0, 0), - [2568] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_decorated_definition_repeat1, 2, 0, 0), SHIFT_REPEAT(342), - [2571] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_slice, 2, 0, 68), - [2573] = {.entry = {.count = 1, .reusable = true}}, SHIFT(296), - [2575] = {.entry = {.count = 1, .reusable = true}}, SHIFT(179), - [2577] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_string_repeat1, 1, 0, 3), - [2579] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_string_repeat1, 1, 0, 3), - [2581] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_interpolation, 4, 0, 43), - [2583] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_interpolation, 4, 0, 43), - [2585] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1305), - [2587] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__import_list, 2, 0, 6), - [2589] = {.entry = {.count = 1, .reusable = true}}, SHIFT(177), - [2591] = {.entry = {.count = 1, .reusable = true}}, SHIFT(79), - [2593] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1206), - [2595] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__collection_elements, 2, 0, 16), - [2597] = {.entry = {.count = 1, .reusable = true}}, SHIFT(185), - [2599] = {.entry = {.count = 1, .reusable = true}}, SHIFT(193), - [2601] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_argument_list_repeat1, 2, 0, 31), - [2603] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_keyword_argument, 3, 0, 27), - [2605] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_star_pattern, 2, 0, 11), - [2607] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__type_param_default, 2, 0, 110), - [2609] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1380), - [2611] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1310), - [2613] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1283), - [2615] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1419), - [2617] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_slice, 4, 0, 120), - [2619] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_slice, 4, 0, 121), - [2621] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_raise_statement, 3, 0, 30), - [2623] = {.entry = {.count = 1, .reusable = true}}, SHIFT(186), - [2625] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__import_list, 3, 0, 22), - [2627] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1311), - [2629] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_keyword_argument, 3, 0, 35), - [2631] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_slice, 3, 0, 94), - [2633] = {.entry = {.count = 1, .reusable = true}}, SHIFT(220), - [2635] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_raise_statement, 4, 0, 53), - [2637] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_expression_list_repeat1, 2, 0, 36), SHIFT_REPEAT(250), - [2640] = {.entry = {.count = 1, .reusable = true}}, SHIFT(113), - [2642] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_format_specifier, 1, 0, 0), - [2644] = {.entry = {.count = 1, .reusable = true}}, SHIFT(173), - [2646] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1288), - [2648] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_format_specifier_repeat1, 2, 0, 0), - [2650] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_format_specifier_repeat1, 2, 0, 0), SHIFT_REPEAT(173), - [2653] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_format_specifier_repeat1, 2, 0, 0), SHIFT_REPEAT(1284), - [2656] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_alias_statement, 5, 0, 88), - [2658] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__collection_elements_repeat1, 2, 0, 36), - [2660] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__collection_elements_repeat1, 2, 0, 36), SHIFT_REPEAT(242), - [2663] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1223), - [2665] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1302), - [2667] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1458), - [2669] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_format_specifier, 2, 0, 0), - [2671] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1284), - [2673] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1255), - [2675] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1636), - [2677] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__import_list, 1, 0, 6), - [2679] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_slice, 5, 0, 140), - [2681] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_alias_statement, 4, 0, 63), - [2683] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__patterns, 2, 0, 16), - [2685] = {.entry = {.count = 1, .reusable = true}}, SHIFT(461), - [2687] = {.entry = {.count = 1, .reusable = true}}, SHIFT(854), - [2689] = {.entry = {.count = 1, .reusable = true}}, SHIFT(114), - [2691] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_guard, 2, 0, 133), - [2693] = {.entry = {.count = 1, .reusable = true}}, SHIFT(371), - [2695] = {.entry = {.count = 1, .reusable = true}}, SHIFT(856), - [2697] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1638), - [2699] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_nonlocal_statement, 2, 0, 0), - [2701] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_decorator, 3, 0, 0), - [2703] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1022), - [2705] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1253), - [2707] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1494), - [2709] = {.entry = {.count = 1, .reusable = true}}, SHIFT(129), - [2711] = {.entry = {.count = 1, .reusable = true}}, SHIFT(862), - [2713] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__import_list_repeat1, 2, 0, 23), - [2715] = {.entry = {.count = 1, .reusable = true}}, SHIFT(389), - [2717] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__import_list_repeat1, 2, 0, 44), SHIFT_REPEAT(1499), - [2720] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__import_list_repeat1, 2, 0, 44), - [2722] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1455), - [2724] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1457), - [2726] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1216), - [2728] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parenthesized_list_splat, 3, 0, 0), - [2730] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parenthesized_list_splat, 3, 0, 49), - [2732] = {.entry = {.count = 1, .reusable = true}}, SHIFT(300), - [2734] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_print_statement, 2, 0, 0), - [2736] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_print_statement_repeat1, 2, 0, 52), SHIFT_REPEAT(339), - [2739] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_print_statement_repeat1, 2, 0, 52), - [2741] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_assert_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(432), - [2744] = {.entry = {.count = 1, .reusable = true}}, SHIFT(99), - [2746] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1300), - [2748] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_with_clause_repeat1, 2, 0, 0), - [2750] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_with_clause_repeat1, 2, 0, 0), SHIFT_REPEAT(315), - [2753] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_global_statement, 2, 0, 0), - [2755] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_typevar_parameter, 2, 0, 84), - [2757] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1367), - [2759] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1681), - [2761] = {.entry = {.count = 1, .reusable = true}}, SHIFT(345), - [2763] = {.entry = {.count = 1, .reusable = true}}, SHIFT(132), - [2765] = {.entry = {.count = 1, .reusable = true}}, SHIFT(335), - [2767] = {.entry = {.count = 1, .reusable = true}}, SHIFT(131), - [2769] = {.entry = {.count = 1, .reusable = true}}, SHIFT(103), - [2771] = {.entry = {.count = 1, .reusable = true}}, SHIFT(344), - [2773] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_import_prefix, 1, 0, 0), - [2775] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1362), - [2777] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_global_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(1638), - [2780] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_global_statement_repeat1, 2, 0, 0), - [2782] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_exception_list, 2, 0, 16), - [2784] = {.entry = {.count = 1, .reusable = true}}, SHIFT(388), - [2786] = {.entry = {.count = 1, .reusable = true}}, SHIFT(290), - [2788] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_print_statement, 3, 0, 28), - [2790] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_typed_parameter, 3, 0, 65), - [2792] = {.entry = {.count = 1, .reusable = true}}, SHIFT(377), - [2794] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parameter, 1, 0, 0), - [2796] = {.entry = {.count = 1, .reusable = true}}, SHIFT(277), - [2798] = {.entry = {.count = 1, .reusable = true}}, SHIFT(358), - [2800] = {.entry = {.count = 1, .reusable = true}}, SHIFT(128), - [2802] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_exec_statement, 5, 0, 15), - [2804] = {.entry = {.count = 1, .reusable = true}}, SHIFT(400), - [2806] = {.entry = {.count = 1, .reusable = true}}, SHIFT(76), - [2808] = {.entry = {.count = 1, .reusable = true}}, SHIFT(77), - [2810] = {.entry = {.count = 1, .reusable = true}}, SHIFT(127), - [2812] = {.entry = {.count = 1, .reusable = true}}, SHIFT(317), - [2814] = {.entry = {.count = 1, .reusable = true}}, SHIFT(73), - [2816] = {.entry = {.count = 1, .reusable = true}}, SHIFT(107), - [2818] = {.entry = {.count = 1, .reusable = true}}, SHIFT(119), - [2820] = {.entry = {.count = 1, .reusable = true}}, SHIFT(122), - [2822] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1271), - [2824] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__import_list, 2, 0, 22), - [2826] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_global_statement, 3, 0, 0), - [2828] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_nonlocal_statement, 3, 0, 0), - [2830] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__patterns, 1, 0, 7), - [2832] = {.entry = {.count = 1, .reusable = true}}, SHIFT(467), - [2834] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__simple_statements_repeat1, 2, 0, 0), SHIFT_REPEAT(133), - [2837] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__simple_statements_repeat1, 2, 0, 0), - [2839] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1275), - [2841] = {.entry = {.count = 1, .reusable = true}}, SHIFT(291), - [2843] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_print_statement, 3, 0, 29), - [2845] = {.entry = {.count = 1, .reusable = true}}, SHIFT(70), - [2847] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_import_prefix_repeat1, 2, 0, 0), - [2849] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_import_prefix_repeat1, 2, 0, 0), SHIFT_REPEAT(1362), - [2852] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_exception_list_repeat1, 2, 0, 36), SHIFT_REPEAT(430), - [2855] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_exception_list_repeat1, 2, 0, 36), - [2857] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_assert_statement, 3, 0, 0), - [2859] = {.entry = {.count = 1, .reusable = true}}, SHIFT(414), - [2861] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_typevartuple_parameter, 2, 0, 23), - [2863] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_paramspec_parameter, 2, 0, 23), - [2865] = {.entry = {.count = 1, .reusable = true}}, SHIFT(130), - [2867] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1538), - [2869] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1239), - [2871] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1263), - [2873] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_type_parameters_repeat1, 2, 0, 113), SHIFT_REPEAT(1182), - [2876] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_type_parameters_repeat1, 2, 0, 113), - [2878] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1027), - [2880] = {.entry = {.count = 1, .reusable = true}}, SHIFT(236), - [2882] = {.entry = {.count = 1, .reusable = true}}, SHIFT(483), - [2884] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_index_expression_list_repeat1, 2, 0, 36), SHIFT_REPEAT(245), - [2887] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_index_expression_list_repeat1, 2, 0, 36), - [2889] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_parameters, 3, 0, 86), - [2891] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1143), - [2893] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1405), - [2895] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__import_list_repeat1, 2, 0, 44), SHIFT_REPEAT(1460), - [2898] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1025), - [2900] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__parameters, 1, 0, 0), - [2902] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1182), - [2904] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1446), - [2906] = {.entry = {.count = 1, .reusable = true}}, SHIFT(936), - [2908] = {.entry = {.count = 1, .reusable = true}}, SHIFT(203), - [2910] = {.entry = {.count = 1, .reusable = true}}, SHIFT(260), - [2912] = {.entry = {.count = 1, .reusable = true}}, SHIFT(920), - [2914] = {.entry = {.count = 1, .reusable = true}}, SHIFT(347), - [2916] = {.entry = {.count = 1, .reusable = true}}, SHIFT(108), - [2918] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__match_maybe_star_pattern, 1, 0, 0), - [2920] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__match_patterns, 1, 0, 0), - [2922] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_argument_list_repeat1, 2, 0, 36), - [2924] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_argument_list_repeat1, 2, 0, 36), SHIFT_REPEAT(233), - [2927] = {.entry = {.count = 1, .reusable = true}}, SHIFT(349), - [2929] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_exec_statement, 2, 0, 15), - [2931] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1658), - [2933] = {.entry = {.count = 1, .reusable = true}}, SHIFT(702), - [2935] = {.entry = {.count = 1, .reusable = true}}, SHIFT(196), - [2937] = {.entry = {.count = 1, .reusable = true}}, SHIFT(964), - [2939] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_dictionary_repeat1, 2, 0, 36), SHIFT_REPEAT(282), - [2942] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_dictionary_repeat1, 2, 0, 36), - [2944] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_relative_import, 1, 0, 0), - [2946] = {.entry = {.count = 1, .reusable = true}}, SHIFT(154), - [2948] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_assignment, 3, 0, 37), - [2950] = {.entry = {.count = 1, .reusable = true}}, SHIFT(307), - [2952] = {.entry = {.count = 1, .reusable = true}}, SHIFT(253), - [2954] = {.entry = {.count = 1, .reusable = true}}, SHIFT(974), - [2956] = {.entry = {.count = 1, .reusable = true}}, SHIFT(254), - [2958] = {.entry = {.count = 1, .reusable = true}}, SHIFT(981), - [2960] = {.entry = {.count = 1, .reusable = true}}, SHIFT(950), - [2962] = {.entry = {.count = 1, .reusable = true}}, SHIFT(213), - [2964] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1396), - [2966] = {.entry = {.count = 1, .reusable = true}}, SHIFT(951), - [2968] = {.entry = {.count = 1, .reusable = true}}, SHIFT(957), - [2970] = {.entry = {.count = 1, .reusable = true}}, SHIFT(214), - [2972] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1379), - [2974] = {.entry = {.count = 1, .reusable = true}}, SHIFT(959), - [2976] = {.entry = {.count = 1, .reusable = true}}, SHIFT(215), - [2978] = {.entry = {.count = 1, .reusable = true}}, SHIFT(960), - [2980] = {.entry = {.count = 1, .reusable = true}}, SHIFT(216), - [2982] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_aliased_import, 3, 0, 45), - [2984] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_match_class_pattern_repeat2, 2, 0, 0), - [2986] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_match_class_pattern_repeat2, 2, 0, 0), SHIFT_REPEAT(1560), - [2989] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1008), - [2991] = {.entry = {.count = 1, .reusable = true}}, SHIFT(257), - [2993] = {.entry = {.count = 1, .reusable = true}}, SHIFT(882), - [2995] = {.entry = {.count = 1, .reusable = true}}, SHIFT(258), - [2997] = {.entry = {.count = 1, .reusable = true}}, SHIFT(885), - [2999] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1026), - [3001] = {.entry = {.count = 1, .reusable = true}}, SHIFT(889), - [3003] = {.entry = {.count = 1, .reusable = true}}, SHIFT(222), - [3005] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1131), - [3007] = {.entry = {.count = 1, .reusable = true}}, SHIFT(890), - [3009] = {.entry = {.count = 1, .reusable = true}}, SHIFT(261), - [3011] = {.entry = {.count = 1, .reusable = true}}, SHIFT(923), - [3013] = {.entry = {.count = 1, .reusable = true}}, SHIFT(315), - [3015] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_with_clause, 1, 0, 0), - [3017] = {.entry = {.count = 1, .reusable = true}}, SHIFT(895), - [3019] = {.entry = {.count = 1, .reusable = true}}, SHIFT(223), - [3021] = {.entry = {.count = 1, .reusable = true}}, SHIFT(896), - [3023] = {.entry = {.count = 1, .reusable = true}}, SHIFT(224), - [3025] = {.entry = {.count = 1, .reusable = true}}, SHIFT(897), - [3027] = {.entry = {.count = 1, .reusable = true}}, SHIFT(225), - [3029] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1431), - [3031] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1640), - [3033] = {.entry = {.count = 1, .reusable = true}}, SHIFT(308), - [3035] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1314), - [3037] = {.entry = {.count = 1, .reusable = true}}, SHIFT(237), - [3039] = {.entry = {.count = 1, .reusable = true}}, SHIFT(264), - [3041] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__parameters_repeat1, 2, 0, 0), - [3043] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__parameters_repeat1, 2, 0, 0), SHIFT_REPEAT(1028), - [3046] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_with_item, 3, -1, 58), - [3048] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_parameters, 4, 0, 112), - [3050] = {.entry = {.count = 1, .reusable = true}}, SHIFT(718), - [3052] = {.entry = {.count = 1, .reusable = true}}, SHIFT(198), - [3054] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1467), - [3056] = {.entry = {.count = 1, .reusable = true}}, SHIFT(732), - [3058] = {.entry = {.count = 1, .reusable = true}}, SHIFT(189), - [3060] = {.entry = {.count = 1, .reusable = true}}, SHIFT(711), - [3062] = {.entry = {.count = 1, .reusable = true}}, SHIFT(200), - [3064] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_with_clause, 2, 0, 0), - [3066] = {.entry = {.count = 1, .reusable = true}}, SHIFT(85), - [3068] = {.entry = {.count = 1, .reusable = true}}, SHIFT(235), - [3070] = {.entry = {.count = 1, .reusable = true}}, SHIFT(104), - [3072] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1482), - [3074] = {.entry = {.count = 1, .reusable = true}}, SHIFT(309), - [3076] = {.entry = {.count = 1, .reusable = true}}, SHIFT(903), - [3078] = {.entry = {.count = 1, .reusable = true}}, SHIFT(209), - [3080] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_positional_separator, 1, 0, 0), - [3082] = {.entry = {.count = 1, .reusable = true}}, SHIFT(980), - [3084] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1132), - [3086] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_match_class_pattern_repeat1, 2, 0, 0), - [3088] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_match_class_pattern_repeat1, 2, 0, 0), SHIFT_REPEAT(984), - [3091] = {.entry = {.count = 1, .reusable = true}}, SHIFT(935), - [3093] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1167), - [3095] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1023), - [3097] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1476), - [3099] = {.entry = {.count = 1, .reusable = true}}, SHIFT(246), - [3101] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1313), - [3103] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1134), - [3105] = {.entry = {.count = 1, .reusable = true}}, SHIFT(996), - [3107] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1159), - [3109] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_match_mapping_pattern_repeat1, 2, 0, 0), SHIFT_REPEAT(1021), - [3112] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_match_mapping_pattern_repeat1, 2, 0, 0), - [3114] = {.entry = {.count = 1, .reusable = true}}, SHIFT(878), - [3116] = {.entry = {.count = 1, .reusable = true}}, SHIFT(201), - [3118] = {.entry = {.count = 1, .reusable = true}}, SHIFT(943), - [3120] = {.entry = {.count = 1, .reusable = true}}, SHIFT(228), - [3122] = {.entry = {.count = 1, .reusable = true}}, SHIFT(927), - [3124] = {.entry = {.count = 1, .reusable = true}}, SHIFT(262), - [3126] = {.entry = {.count = 1, .reusable = true}}, SHIFT(728), - [3128] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1328), - [3130] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1329), - [3132] = {.entry = {.count = 1, .reusable = true}}, SHIFT(249), - [3134] = {.entry = {.count = 1, .reusable = true}}, SHIFT(731), - [3136] = {.entry = {.count = 1, .reusable = true}}, SHIFT(234), - [3138] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_index_expression_list, 2, 0, 16), - [3140] = {.entry = {.count = 1, .reusable = true}}, SHIFT(71), - [3142] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1218), - [3144] = {.entry = {.count = 1, .reusable = true}}, SHIFT(299), - [3146] = {.entry = {.count = 1, .reusable = true}}, SHIFT(243), - [3148] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_format_specifier_repeat1, 1, 0, 73), - [3150] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_format_specifier_repeat1, 1, 0, 73), - [3152] = {.entry = {.count = 1, .reusable = true}}, SHIFT(352), - [3154] = {.entry = {.count = 1, .reusable = true}}, SHIFT(303), - [3156] = {.entry = {.count = 1, .reusable = true}}, SHIFT(928), - [3158] = {.entry = {.count = 1, .reusable = true}}, SHIFT(248), - [3160] = {.entry = {.count = 1, .reusable = true}}, SHIFT(247), - [3162] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__parameters_repeat1, 2, 0, 0), SHIFT_REPEAT(1029), - [3165] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_import_statement, 2, 0, 5), - [3167] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_index_expression_list_repeat1, 2, 0, 31), - [3169] = {.entry = {.count = 1, .reusable = true}}, SHIFT(846), - [3171] = {.entry = {.count = 1, .reusable = true}}, SHIFT(74), - [3173] = {.entry = {.count = 1, .reusable = true}}, SHIFT(276), - [3175] = {.entry = {.count = 1, .reusable = true}}, SHIFT(83), - [3177] = {.entry = {.count = 1, .reusable = true}}, SHIFT(270), - [3179] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_import_from_statement, 6, 0, 97), - [3181] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_paramspec_parameter, 3, 0, 108), - [3183] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_assignment, 5, 0, 92), - [3185] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_typevar_parameter, 3, 0, 111), - [3187] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_pass_statement, 1, 0, 0), - [3189] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_type_parameters_repeat1, 2, 0, 86), - [3191] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_break_statement, 1, 0, 0), - [3193] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_positional_pattern, 1, 0, 0), - [3195] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_future_import_statement, 4, 0, 46), - [3197] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_wildcard_import, 1, 0, 0), - [3199] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_typevar_parameter, 2, 0, 85), - [3201] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_assignment, 3, 0, 38), - [3203] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_continue_statement, 1, 0, 0), - [3205] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_import_from_statement, 4, 0, 47), - [3207] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_import_from_statement, 4, 0, 48), - [3209] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_augmented_assignment, 3, 0, 39), - [3211] = {.entry = {.count = 1, .reusable = true}}, SHIFT(101), - [3213] = {.entry = {.count = 1, .reusable = true}}, SHIFT(271), - [3215] = {.entry = {.count = 1, .reusable = true}}, SHIFT(84), - [3217] = {.entry = {.count = 1, .reusable = true}}, SHIFT(284), - [3219] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_key_value_pattern, 3, 0, 62), - [3221] = {.entry = {.count = 1, .reusable = true}}, SHIFT(88), - [3223] = {.entry = {.count = 1, .reusable = true}}, SHIFT(285), - [3225] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1663), - [3227] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1126), - [3229] = {.entry = {.count = 1, .reusable = true}}, SHIFT(93), - [3231] = {.entry = {.count = 1, .reusable = true}}, SHIFT(286), - [3233] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parameters, 2, 0, 0), - [3235] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1160), - [3237] = {.entry = {.count = 1, .reusable = true}}, SHIFT(96), - [3239] = {.entry = {.count = 1, .reusable = true}}, SHIFT(278), - [3241] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_typevartuple_parameter, 3, 0, 108), - [3243] = {.entry = {.count = 1, .reusable = true}}, SHIFT(934), - [3245] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1078), - [3247] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1078), - [3249] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1239), - [3251] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_dictionary_repeat1, 2, 0, 31), - [3253] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1662), - [3255] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1138), - [3257] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1138), - [3259] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_future_import_statement, 6, 0, 96), - [3261] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1623), - [3263] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parameters, 3, 0, 0), - [3265] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1124), - [3267] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1124), - [3269] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_keyword_pattern, 3, 0, 160), - [3271] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_argument_list_repeat1, 2, 0, 67), - [3273] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_double_star_pattern, 2, 0, 11), - [3275] = {.entry = {.count = 1, .reusable = true}}, SHIFT(100), - [3277] = {.entry = {.count = 1, .reusable = true}}, SHIFT(265), - [3279] = {.entry = {.count = 1, .reusable = true}}, SHIFT(118), - [3281] = {.entry = {.count = 1, .reusable = true}}, SHIFT(929), - [3283] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1326), - [3285] = {.entry = {.count = 1, .reusable = true}}, SHIFT(948), - [3287] = {.entry = {.count = 1, .reusable = true}}, SHIFT(82), - [3289] = {.entry = {.count = 1, .reusable = true}}, SHIFT(78), - [3291] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1304), - [3293] = {.entry = {.count = 1, .reusable = true}}, SHIFT(869), - [3295] = {.entry = {.count = 1, .reusable = true}}, SHIFT(907), - [3297] = {.entry = {.count = 1, .reusable = true}}, SHIFT(376), - [3299] = {.entry = {.count = 1, .reusable = true}}, SHIFT(872), - [3301] = {.entry = {.count = 1, .reusable = true}}, SHIFT(510), - [3303] = {.entry = {.count = 1, .reusable = true}}, SHIFT(873), - [3305] = {.entry = {.count = 1, .reusable = true}}, SHIFT(81), - [3307] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_lambda_parameters, 1, 0, 0), - [3309] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1323), - [3311] = {.entry = {.count = 1, .reusable = true}}, SHIFT(709), - [3313] = {.entry = {.count = 1, .reusable = true}}, SHIFT(86), - [3315] = {.entry = {.count = 1, .reusable = true}}, SHIFT(875), - [3317] = {.entry = {.count = 1, .reusable = true}}, SHIFT(387), - [3319] = {.entry = {.count = 1, .reusable = true}}, SHIFT(876), - [3321] = {.entry = {.count = 1, .reusable = true}}, SHIFT(91), - [3323] = {.entry = {.count = 1, .reusable = true}}, SHIFT(111), - [3325] = {.entry = {.count = 1, .reusable = true}}, SHIFT(95), - [3327] = {.entry = {.count = 1, .reusable = true}}, SHIFT(97), - [3329] = {.entry = {.count = 1, .reusable = true}}, SHIFT(627), - [3331] = {.entry = {.count = 1, .reusable = true}}, SHIFT(879), - [3333] = {.entry = {.count = 1, .reusable = true}}, SHIFT(880), - [3335] = {.entry = {.count = 1, .reusable = true}}, SHIFT(705), - [3337] = {.entry = {.count = 1, .reusable = true}}, SHIFT(105), - [3339] = {.entry = {.count = 1, .reusable = true}}, SHIFT(117), - [3341] = {.entry = {.count = 1, .reusable = true}}, SHIFT(110), - [3343] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1301), - [3345] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_with_clause, 5, 0, 0), - [3347] = {.entry = {.count = 1, .reusable = true}}, SHIFT(115), - [3349] = {.entry = {.count = 1, .reusable = true}}, SHIFT(116), - [3351] = {.entry = {.count = 1, .reusable = true}}, SHIFT(726), - [3353] = {.entry = {.count = 1, .reusable = true}}, SHIFT(891), - [3355] = {.entry = {.count = 1, .reusable = true}}, SHIFT(883), - [3357] = {.entry = {.count = 1, .reusable = true}}, SHIFT(998), - [3359] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1281), - [3361] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_with_clause, 4, 0, 0), - [3363] = {.entry = {.count = 1, .reusable = true}}, SHIFT(884), - [3365] = {.entry = {.count = 1, .reusable = true}}, SHIFT(475), - [3367] = {.entry = {.count = 1, .reusable = true}}, SHIFT(886), - [3369] = {.entry = {.count = 1, .reusable = true}}, SHIFT(631), - [3371] = {.entry = {.count = 1, .reusable = true}}, SHIFT(887), - [3373] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1421), - [3375] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1420), - [3377] = {.entry = {.count = 1, .reusable = true}}, SHIFT(92), - [3379] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_with_clause, 3, 0, 0), - [3381] = {.entry = {.count = 1, .reusable = true}}, SHIFT(109), - [3383] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1004), - [3385] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1217), - [3387] = {.entry = {.count = 1, .reusable = true}}, SHIFT(921), - [3389] = {.entry = {.count = 1, .reusable = true}}, SHIFT(94), - [3391] = {.entry = {.count = 1, .reusable = true}}, SHIFT(363), - [3393] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1299), - [3395] = {.entry = {.count = 1, .reusable = true}}, SHIFT(729), - [3397] = {.entry = {.count = 1, .reusable = true}}, SHIFT(730), - [3399] = {.entry = {.count = 1, .reusable = true}}, SHIFT(294), - [3401] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_relative_import, 2, 0, 23), - [3403] = {.entry = {.count = 1, .reusable = true}}, ACCEPT_INPUT(), - [3405] = {.entry = {.count = 1, .reusable = true}}, SHIFT(706), - [3407] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1372), - [3409] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1130), - [3411] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1272), - [3413] = {.entry = {.count = 1, .reusable = true}}, SHIFT(707), - [3415] = {.entry = {.count = 1, .reusable = true}}, SHIFT(87), - [3417] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1049), - [3419] = {.entry = {.count = 1, .reusable = true}}, SHIFT(360), - [3421] = {.entry = {.count = 1, .reusable = true}}, SHIFT(121), - [3423] = {.entry = {.count = 1, .reusable = true}}, SHIFT(658), - [3425] = {.entry = {.count = 1, .reusable = true}}, SHIFT(413), - [3427] = {.entry = {.count = 1, .reusable = true}}, SHIFT(690), - [3429] = {.entry = {.count = 1, .reusable = true}}, SHIFT(969), - [3431] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1363), - [3433] = {.entry = {.count = 1, .reusable = true}}, SHIFT(910), - [3435] = {.entry = {.count = 1, .reusable = true}}, SHIFT(937), - [3437] = {.entry = {.count = 1, .reusable = true}}, SHIFT(945), - [3439] = {.entry = {.count = 1, .reusable = true}}, SHIFT(982), - [3441] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1545), - [3443] = {.entry = {.count = 1, .reusable = true}}, SHIFT(302), - [3445] = {.entry = {.count = 1, .reusable = true}}, SHIFT(966), - [3447] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1571), - [3449] = {.entry = {.count = 1, .reusable = true}}, SHIFT(721), - [3451] = {.entry = {.count = 1, .reusable = true}}, SHIFT(975), - [3453] = {.entry = {.count = 1, .reusable = true}}, SHIFT(69), - [3455] = {.entry = {.count = 1, .reusable = true}}, SHIFT(123), - [3457] = {.entry = {.count = 1, .reusable = true}}, SHIFT(428), - [3459] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1256), - [3461] = {.entry = {.count = 1, .reusable = true}}, SHIFT(722), - [3463] = {.entry = {.count = 1, .reusable = true}}, SHIFT(947), - [3465] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1371), - [3467] = {.entry = {.count = 1, .reusable = true}}, SHIFT(125), - [3469] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1289), - [3471] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1502), - [3473] = {.entry = {.count = 1, .reusable = true}}, SHIFT(673), - [3475] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1568), - [3477] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1514), - [3479] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1244), - [3481] = {.entry = {.count = 1, .reusable = true}}, SHIFT(944), - [3483] = {.entry = {.count = 1, .reusable = true}}, SHIFT(967), - [3485] = {.entry = {.count = 1, .reusable = true}}, SHIFT(970), - [3487] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1169), - [3489] = {.entry = {.count = 1, .reusable = true}}, SHIFT(72), - [3491] = {.entry = {.count = 1, .reusable = true}}, SHIFT(398), - [3493] = {.entry = {.count = 1, .reusable = true}}, SHIFT(124), - [3495] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1369), - [3497] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1370), - [3499] = {.entry = {.count = 1, .reusable = true}}, SHIFT(976), - [3501] = {.entry = {.count = 1, .reusable = true}}, SHIFT(978), - [3503] = {.entry = {.count = 1, .reusable = true}}, SHIFT(655), - [3505] = {.entry = {.count = 1, .reusable = true}}, SHIFT(922), - [3507] = {.entry = {.count = 1, .reusable = true}}, SHIFT(985), + [2361] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_string_content, 1, 0, 0), + [2363] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1135), + [2365] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1135), + [2367] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_string_content, 1, 0, 0), + [2369] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_mapping_pattern, 2, 0, 0), + [2371] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_expression_list_repeat1, 2, 0, 32), + [2373] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_clause, 2, 0, 0), + [2375] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_in_clause, 5, 0, 126), + [2377] = {.entry = {.count = 1, .reusable = true}}, SHIFT(207), + [2379] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_in_clause, 5, 0, 127), + [2381] = {.entry = {.count = 1, .reusable = true}}, SHIFT(212), + [2383] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_class_pattern, 7, 0, 140), + [2385] = {.entry = {.count = 1, .reusable = true}}, SHIFT(250), + [2387] = {.entry = {.count = 1, .reusable = true}}, SHIFT(898), + [2389] = {.entry = {.count = 1, .reusable = true}}, SHIFT(277), + [2391] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1617), + [2393] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_lambda_within_for_in_clause, 3, 0, 33), + [2395] = {.entry = {.count = 1, .reusable = true}}, SHIFT(429), + [2397] = {.entry = {.count = 1, .reusable = true}}, SHIFT(354), + [2399] = {.entry = {.count = 1, .reusable = true}}, SHIFT(419), + [2401] = {.entry = {.count = 1, .reusable = true}}, SHIFT(109), + [2403] = {.entry = {.count = 1, .reusable = true}}, SHIFT(358), + [2405] = {.entry = {.count = 1, .reusable = true}}, SHIFT(361), + [2407] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_statement, 1, 0, 0), + [2409] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1228), + [2411] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1374), + [2413] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1700), + [2415] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__right_hand_side, 1, 0, 0), + [2417] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_pair, 3, 0, 63), + [2419] = {.entry = {.count = 1, .reusable = true}}, SHIFT(291), + [2421] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_print_statement, 2, 0, 10), + [2423] = {.entry = {.count = 1, .reusable = true}}, SHIFT(434), + [2425] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_exec_statement, 4, 0, 15), + [2427] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1217), + [2429] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1333), + [2431] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1552), + [2433] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_yield, 3, 0, 0), + [2435] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1347), + [2437] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1227), + [2439] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1623), + [2441] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1635), + [2443] = {.entry = {.count = 1, .reusable = true}}, SHIFT(251), + [2445] = {.entry = {.count = 1, .reusable = true}}, SHIFT(956), + [2447] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__collection_elements_repeat1, 2, 0, 32), + [2449] = {.entry = {.count = 1, .reusable = true}}, SHIFT(257), + [2451] = {.entry = {.count = 1, .reusable = true}}, SHIFT(913), + [2453] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type, 1, 0, 0), + [2455] = {.entry = {.count = 1, .reusable = true}}, SHIFT(431), + [2457] = {.entry = {.count = 1, .reusable = true}}, SHIFT(99), + [2459] = {.entry = {.count = 1, .reusable = true}}, SHIFT(432), + [2461] = {.entry = {.count = 1, .reusable = true}}, SHIFT(108), + [2463] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_with_item, 1, -1, 12), + [2465] = {.entry = {.count = 1, .reusable = true}}, SHIFT(588), + [2467] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_return_statement, 2, 0, 0), + [2469] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_delete_statement, 2, 0, 11), + [2471] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_lambda_within_for_in_clause, 4, 0, 67), + [2473] = {.entry = {.count = 1, .reusable = true}}, SHIFT(267), + [2475] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1628), + [2477] = {.entry = {.count = 1, .reusable = true}}, SHIFT(425), + [2479] = {.entry = {.count = 1, .reusable = true}}, SHIFT(91), + [2481] = {.entry = {.count = 1, .reusable = true}}, SHIFT(255), + [2483] = {.entry = {.count = 1, .reusable = true}}, SHIFT(723), + [2485] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__match_pattern, 1, 0, 0), + [2487] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1711), + [2489] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_assert_statement, 2, 0, 0), + [2491] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1597), + [2493] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_dotted_name, 1, 0, 0), + [2495] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_open_sequence_match_pattern_repeat1, 2, 0, 0), + [2497] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_open_sequence_match_pattern_repeat1, 2, 0, 0), SHIFT_REPEAT(972), + [2500] = {.entry = {.count = 1, .reusable = true}}, SHIFT(182), + [2502] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_list, 2, 0, 16), + [2504] = {.entry = {.count = 1, .reusable = true}}, SHIFT(183), + [2506] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_dotted_name, 2, 0, 0), + [2508] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_slice, 2, 0, 69), + [2510] = {.entry = {.count = 1, .reusable = true}}, SHIFT(293), + [2512] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_chevron, 2, 0, 0), + [2514] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_interpolation, 4, 0, 44), + [2516] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_interpolation, 4, 0, 44), + [2518] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_typevar_parameter, 1, 0, 6), + [2520] = {.entry = {.count = 1, .reusable = true}}, SHIFT(372), + [2522] = {.entry = {.count = 1, .reusable = true}}, SHIFT(304), + [2524] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__type_bound, 2, 0, 112), + [2526] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_interpolation, 5, 0, 44), + [2528] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_interpolation, 5, 0, 44), + [2530] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_expression_list_repeat1, 2, 0, 37), + [2532] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_expression_list_repeat1, 2, 0, 37), SHIFT_REPEAT(262), + [2535] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_expression_list_repeat1, 2, 0, 37), SHIFT_REPEAT(256), + [2538] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1304), + [2540] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_typed_default_parameter, 5, 0, 122), + [2542] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__index_expression, 1, 0, 0), + [2544] = {.entry = {.count = 1, .reusable = true}}, SHIFT(270), + [2546] = {.entry = {.count = 1, .reusable = true}}, SHIFT(87), + [2548] = {.entry = {.count = 1, .reusable = true}}, SHIFT(94), + [2550] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_as_pattern, 3, 0, 139), + [2552] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_print_statement_repeat1, 2, 0, 10), + [2554] = {.entry = {.count = 1, .reusable = true}}, SHIFT(79), + [2556] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_assert_statement_repeat1, 2, 0, 0), + [2558] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_default_parameter, 3, 0, 36), + [2560] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1368), + [2562] = {.entry = {.count = 1, .reusable = true}}, SHIFT(123), + [2564] = {.entry = {.count = 1, .reusable = true}}, SHIFT(170), + [2566] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1228), + [2568] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_match_value_pattern_repeat1, 2, 0, 0), SHIFT_REPEAT(1597), + [2571] = {.entry = {.count = 1, .reusable = true}}, SHIFT(172), + [2573] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_interpolation, 6, 0, 44), + [2575] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_interpolation, 6, 0, 44), + [2577] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_interpolation, 3, 0, 44), + [2579] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_interpolation, 3, 0, 44), + [2581] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_exception_list_repeat1, 2, 0, 32), + [2583] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_string_repeat1, 1, 0, 3), + [2585] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_string_repeat1, 1, 0, 3), + [2587] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_string_repeat1, 1, 0, 4), + [2589] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_string_repeat1, 1, 0, 4), + [2591] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_slice, 3, 0, 98), + [2593] = {.entry = {.count = 1, .reusable = true}}, SHIFT(305), + [2595] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_decorated_definition_repeat1, 2, 0, 0), + [2597] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_decorated_definition_repeat1, 2, 0, 0), SHIFT_REPEAT(377), + [2600] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_slice, 5, 0, 144), + [2602] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_star_pattern, 2, 0, 11), + [2604] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_slice, 4, 0, 123), + [2606] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_keyword_argument, 3, 0, 23), + [2608] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__import_list, 3, 0, 24), + [2610] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_raise_statement, 3, 0, 31), + [2612] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__collection_elements, 2, 0, 16), + [2614] = {.entry = {.count = 1, .reusable = true}}, SHIFT(185), + [2616] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_alias_statement, 4, 0, 64), + [2618] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1252), + [2620] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1318), + [2622] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1292), + [2624] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1496), + [2626] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_alias_statement, 5, 0, 91), + [2628] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1331), + [2630] = {.entry = {.count = 1, .reusable = true}}, SHIFT(193), + [2632] = {.entry = {.count = 1, .reusable = true}}, SHIFT(179), + [2634] = {.entry = {.count = 1, .reusable = true}}, SHIFT(76), + [2636] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1191), + [2638] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_keyword_argument, 3, 0, 36), + [2640] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_slice, 4, 0, 124), + [2642] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_raise_statement, 4, 0, 54), + [2644] = {.entry = {.count = 1, .reusable = true}}, SHIFT(192), + [2646] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_format_specifier, 2, 0, 0), + [2648] = {.entry = {.count = 1, .reusable = true}}, SHIFT(173), + [2650] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1288), + [2652] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_argument_list_repeat1, 2, 0, 32), + [2654] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1289), + [2656] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1674), + [2658] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__import_list, 1, 0, 6), + [2660] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__type_param_default, 2, 0, 113), + [2662] = {.entry = {.count = 1, .reusable = true}}, SHIFT(85), + [2664] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_expression_list_repeat1, 2, 0, 37), SHIFT_REPEAT(254), + [2667] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_slice, 3, 0, 97), + [2669] = {.entry = {.count = 1, .reusable = true}}, SHIFT(184), + [2671] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__collection_elements_repeat1, 2, 0, 37), + [2673] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__collection_elements_repeat1, 2, 0, 37), SHIFT_REPEAT(242), + [2676] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_format_specifier_repeat1, 2, 0, 0), + [2678] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_format_specifier_repeat1, 2, 0, 0), SHIFT_REPEAT(173), + [2681] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_format_specifier_repeat1, 2, 0, 0), SHIFT_REPEAT(1288), + [2684] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__import_list, 2, 0, 6), + [2686] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1464), + [2688] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1308), + [2690] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1401), + [2692] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_format_specifier, 1, 0, 0), + [2694] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1279), + [2696] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1625), + [2698] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_global_statement, 3, 0, 0), + [2700] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_nonlocal_statement, 3, 0, 0), + [2702] = {.entry = {.count = 1, .reusable = true}}, SHIFT(129), + [2704] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1542), + [2706] = {.entry = {.count = 1, .reusable = true}}, SHIFT(131), + [2708] = {.entry = {.count = 1, .reusable = true}}, SHIFT(127), + [2710] = {.entry = {.count = 1, .reusable = true}}, SHIFT(321), + [2712] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_with_clause_repeat1, 2, 0, 0), + [2714] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_with_clause_repeat1, 2, 0, 0), SHIFT_REPEAT(315), + [2717] = {.entry = {.count = 1, .reusable = true}}, SHIFT(827), + [2719] = {.entry = {.count = 1, .reusable = true}}, SHIFT(132), + [2721] = {.entry = {.count = 1, .reusable = true}}, SHIFT(405), + [2723] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1022), + [2725] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1492), + [2727] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1450), + [2729] = {.entry = {.count = 1, .reusable = true}}, SHIFT(103), + [2731] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_global_statement, 2, 0, 0), + [2733] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__patterns, 1, 0, 7), + [2735] = {.entry = {.count = 1, .reusable = true}}, SHIFT(482), + [2737] = {.entry = {.count = 1, .reusable = true}}, SHIFT(118), + [2739] = {.entry = {.count = 1, .reusable = true}}, SHIFT(418), + [2741] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__simple_statements_repeat1, 2, 0, 0), SHIFT_REPEAT(133), + [2744] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__simple_statements_repeat1, 2, 0, 0), + [2746] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1226), + [2748] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1425), + [2750] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1334), + [2752] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1664), + [2754] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1264), + [2756] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__import_list, 2, 0, 24), + [2758] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_global_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(1625), + [2761] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_global_statement_repeat1, 2, 0, 0), + [2763] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1295), + [2765] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_import_prefix_repeat1, 2, 0, 0), + [2767] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_import_prefix_repeat1, 2, 0, 0), SHIFT_REPEAT(1323), + [2770] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parameter, 1, 0, 0), + [2772] = {.entry = {.count = 1, .reusable = true}}, SHIFT(281), + [2774] = {.entry = {.count = 1, .reusable = true}}, SHIFT(379), + [2776] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_typed_parameter, 3, 0, 66), + [2778] = {.entry = {.count = 1, .reusable = true}}, SHIFT(406), + [2780] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__import_list_repeat1, 2, 0, 25), + [2782] = {.entry = {.count = 1, .reusable = true}}, SHIFT(122), + [2784] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__import_list_repeat1, 2, 0, 45), SHIFT_REPEAT(1452), + [2787] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__import_list_repeat1, 2, 0, 45), + [2789] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_exception_list_repeat1, 2, 0, 37), SHIFT_REPEAT(429), + [2792] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_exception_list_repeat1, 2, 0, 37), + [2794] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__patterns, 2, 0, 16), + [2796] = {.entry = {.count = 1, .reusable = true}}, SHIFT(485), + [2798] = {.entry = {.count = 1, .reusable = true}}, SHIFT(128), + [2800] = {.entry = {.count = 1, .reusable = true}}, SHIFT(322), + [2802] = {.entry = {.count = 1, .reusable = true}}, SHIFT(130), + [2804] = {.entry = {.count = 1, .reusable = true}}, SHIFT(342), + [2806] = {.entry = {.count = 1, .reusable = true}}, SHIFT(71), + [2808] = {.entry = {.count = 1, .reusable = true}}, SHIFT(292), + [2810] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_print_statement, 3, 0, 29), + [2812] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_guard, 2, 0, 137), + [2814] = {.entry = {.count = 1, .reusable = true}}, SHIFT(847), + [2816] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parenthesized_list_splat, 3, 0, 50), + [2818] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_exception_list, 2, 0, 16), + [2820] = {.entry = {.count = 1, .reusable = true}}, SHIFT(349), + [2822] = {.entry = {.count = 1, .reusable = true}}, SHIFT(363), + [2824] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_decorator, 3, 0, 0), + [2826] = {.entry = {.count = 1, .reusable = true}}, SHIFT(373), + [2828] = {.entry = {.count = 1, .reusable = true}}, SHIFT(288), + [2830] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_print_statement, 3, 0, 30), + [2832] = {.entry = {.count = 1, .reusable = true}}, SHIFT(73), + [2834] = {.entry = {.count = 1, .reusable = true}}, SHIFT(74), + [2836] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_nonlocal_statement, 2, 0, 0), + [2838] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_assert_statement, 3, 0, 0), + [2840] = {.entry = {.count = 1, .reusable = true}}, SHIFT(104), + [2842] = {.entry = {.count = 1, .reusable = true}}, SHIFT(117), + [2844] = {.entry = {.count = 1, .reusable = true}}, SHIFT(120), + [2846] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_exec_statement, 5, 0, 15), + [2848] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_print_statement_repeat1, 2, 0, 53), SHIFT_REPEAT(359), + [2851] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_print_statement_repeat1, 2, 0, 53), + [2853] = {.entry = {.count = 1, .reusable = true}}, SHIFT(100), + [2855] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_assert_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(434), + [2858] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1346), + [2860] = {.entry = {.count = 1, .reusable = true}}, SHIFT(830), + [2862] = {.entry = {.count = 1, .reusable = true}}, SHIFT(414), + [2864] = {.entry = {.count = 1, .reusable = true}}, SHIFT(290), + [2866] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_print_statement, 2, 0, 0), + [2868] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_typevar_parameter, 2, 0, 87), + [2870] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_paramspec_parameter, 2, 0, 25), + [2872] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_import_prefix, 1, 0, 0), + [2874] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1323), + [2876] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_typevartuple_parameter, 2, 0, 25), + [2878] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parenthesized_list_splat, 3, 0, 0), + [2880] = {.entry = {.count = 1, .reusable = true}}, SHIFT(263), + [2882] = {.entry = {.count = 1, .reusable = true}}, SHIFT(915), + [2884] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_parameters, 4, 0, 115), + [2886] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_type_parameters_repeat1, 2, 0, 116), SHIFT_REPEAT(1202), + [2889] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_type_parameters_repeat1, 2, 0, 116), + [2891] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__parameters_repeat1, 2, 0, 0), + [2893] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1378), + [2895] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__parameters_repeat1, 2, 0, 0), SHIFT_REPEAT(1030), + [2898] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1341), + [2900] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_aliased_import, 3, 0, 46), + [2902] = {.entry = {.count = 1, .reusable = true}}, SHIFT(155), + [2904] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_assignment, 3, 0, 38), + [2906] = {.entry = {.count = 1, .reusable = true}}, SHIFT(712), + [2908] = {.entry = {.count = 1, .reusable = true}}, SHIFT(202), + [2910] = {.entry = {.count = 1, .reusable = true}}, SHIFT(235), + [2912] = {.entry = {.count = 1, .reusable = true}}, SHIFT(328), + [2914] = {.entry = {.count = 1, .reusable = true}}, SHIFT(923), + [2916] = {.entry = {.count = 1, .reusable = true}}, SHIFT(922), + [2918] = {.entry = {.count = 1, .reusable = true}}, SHIFT(229), + [2920] = {.entry = {.count = 1, .reusable = true}}, SHIFT(239), + [2922] = {.entry = {.count = 1, .reusable = true}}, SHIFT(882), + [2924] = {.entry = {.count = 1, .reusable = true}}, SHIFT(230), + [2926] = {.entry = {.count = 1, .reusable = true}}, SHIFT(939), + [2928] = {.entry = {.count = 1, .reusable = true}}, SHIFT(209), + [2930] = {.entry = {.count = 1, .reusable = true}}, SHIFT(902), + [2932] = {.entry = {.count = 1, .reusable = true}}, SHIFT(206), + [2934] = {.entry = {.count = 1, .reusable = true}}, SHIFT(924), + [2936] = {.entry = {.count = 1, .reusable = true}}, SHIFT(499), + [2938] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1358), + [2940] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1296), + [2942] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1025), + [2944] = {.entry = {.count = 1, .reusable = true}}, SHIFT(244), + [2946] = {.entry = {.count = 1, .reusable = true}}, SHIFT(252), + [2948] = {.entry = {.count = 1, .reusable = true}}, SHIFT(983), + [2950] = {.entry = {.count = 1, .reusable = true}}, SHIFT(253), + [2952] = {.entry = {.count = 1, .reusable = true}}, SHIFT(948), + [2954] = {.entry = {.count = 1, .reusable = true}}, SHIFT(953), + [2956] = {.entry = {.count = 1, .reusable = true}}, SHIFT(214), + [2958] = {.entry = {.count = 1, .reusable = true}}, SHIFT(955), + [2960] = {.entry = {.count = 1, .reusable = true}}, SHIFT(232), + [2962] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_index_expression_list, 2, 0, 16), + [2964] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_relative_import, 1, 0, 0), + [2966] = {.entry = {.count = 1, .reusable = true}}, SHIFT(961), + [2968] = {.entry = {.count = 1, .reusable = true}}, SHIFT(215), + [2970] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1461), + [2972] = {.entry = {.count = 1, .reusable = true}}, SHIFT(963), + [2974] = {.entry = {.count = 1, .reusable = true}}, SHIFT(216), + [2976] = {.entry = {.count = 1, .reusable = true}}, SHIFT(964), + [2978] = {.entry = {.count = 1, .reusable = true}}, SHIFT(217), + [2980] = {.entry = {.count = 1, .reusable = true}}, SHIFT(995), + [2982] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1230), + [2984] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_match_class_pattern_repeat1, 2, 0, 0), + [2986] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_match_class_pattern_repeat1, 2, 0, 0), SHIFT_REPEAT(985), + [2989] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__parameters_repeat1, 2, 0, 0), SHIFT_REPEAT(1029), + [2992] = {.entry = {.count = 1, .reusable = true}}, SHIFT(237), + [2994] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1631), + [2996] = {.entry = {.count = 1, .reusable = true}}, SHIFT(730), + [2998] = {.entry = {.count = 1, .reusable = true}}, SHIFT(203), + [3000] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_match_class_pattern_repeat2, 2, 0, 0), + [3002] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_match_class_pattern_repeat2, 2, 0, 0), SHIFT_REPEAT(1514), + [3005] = {.entry = {.count = 1, .reusable = true}}, SHIFT(258), + [3007] = {.entry = {.count = 1, .reusable = true}}, SHIFT(932), + [3009] = {.entry = {.count = 1, .reusable = true}}, SHIFT(259), + [3011] = {.entry = {.count = 1, .reusable = true}}, SHIFT(935), + [3013] = {.entry = {.count = 1, .reusable = true}}, SHIFT(701), + [3015] = {.entry = {.count = 1, .reusable = true}}, SHIFT(204), + [3017] = {.entry = {.count = 1, .reusable = true}}, SHIFT(942), + [3019] = {.entry = {.count = 1, .reusable = true}}, SHIFT(221), + [3021] = {.entry = {.count = 1, .reusable = true}}, SHIFT(715), + [3023] = {.entry = {.count = 1, .reusable = true}}, SHIFT(189), + [3025] = {.entry = {.count = 1, .reusable = true}}, SHIFT(943), + [3027] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1118), + [3029] = {.entry = {.count = 1, .reusable = true}}, SHIFT(973), + [3031] = {.entry = {.count = 1, .reusable = true}}, SHIFT(944), + [3033] = {.entry = {.count = 1, .reusable = true}}, SHIFT(222), + [3035] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_format_specifier_repeat1, 1, 0, 74), + [3037] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_format_specifier_repeat1, 1, 0, 74), + [3039] = {.entry = {.count = 1, .reusable = true}}, SHIFT(869), + [3041] = {.entry = {.count = 1, .reusable = true}}, SHIFT(223), + [3043] = {.entry = {.count = 1, .reusable = true}}, SHIFT(870), + [3045] = {.entry = {.count = 1, .reusable = true}}, SHIFT(224), + [3047] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1459), + [3049] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1476), + [3051] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1028), + [3053] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__parameters, 1, 0, 0), + [3055] = {.entry = {.count = 1, .reusable = true}}, SHIFT(303), + [3057] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_index_expression_list_repeat1, 2, 0, 37), SHIFT_REPEAT(243), + [3060] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_index_expression_list_repeat1, 2, 0, 37), + [3062] = {.entry = {.count = 1, .reusable = true}}, SHIFT(300), + [3064] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_argument_list_repeat1, 2, 0, 37), + [3066] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_argument_list_repeat1, 2, 0, 37), SHIFT_REPEAT(234), + [3069] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1169), + [3071] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1471), + [3073] = {.entry = {.count = 1, .reusable = true}}, SHIFT(83), + [3075] = {.entry = {.count = 1, .reusable = true}}, SHIFT(352), + [3077] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_exec_statement, 2, 0, 15), + [3079] = {.entry = {.count = 1, .reusable = true}}, SHIFT(353), + [3081] = {.entry = {.count = 1, .reusable = true}}, SHIFT(355), + [3083] = {.entry = {.count = 1, .reusable = true}}, SHIFT(101), + [3085] = {.entry = {.count = 1, .reusable = true}}, SHIFT(301), + [3087] = {.entry = {.count = 1, .reusable = true}}, SHIFT(111), + [3089] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1103), + [3091] = {.entry = {.count = 1, .reusable = true}}, SHIFT(875), + [3093] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1107), + [3095] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1480), + [3097] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__import_list_repeat1, 2, 0, 45), SHIFT_REPEAT(1493), + [3100] = {.entry = {.count = 1, .reusable = true}}, SHIFT(315), + [3102] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_with_clause, 1, 0, 0), + [3104] = {.entry = {.count = 1, .reusable = true}}, SHIFT(245), + [3106] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1140), + [3108] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_dictionary_repeat1, 2, 0, 37), SHIFT_REPEAT(280), + [3111] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_dictionary_repeat1, 2, 0, 37), + [3113] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1202), + [3115] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1486), + [3117] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1707), + [3119] = {.entry = {.count = 1, .reusable = true}}, SHIFT(295), + [3121] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1009), + [3123] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1108), + [3125] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_parameters, 3, 0, 89), + [3127] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_with_clause, 2, 0, 0), + [3129] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1433), + [3131] = {.entry = {.count = 1, .reusable = true}}, SHIFT(980), + [3133] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_positional_separator, 1, 0, 0), + [3135] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_with_item, 3, -1, 59), + [3137] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1221), + [3139] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1259), + [3141] = {.entry = {.count = 1, .reusable = true}}, SHIFT(260), + [3143] = {.entry = {.count = 1, .reusable = true}}, SHIFT(713), + [3145] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1380), + [3147] = {.entry = {.count = 1, .reusable = true}}, SHIFT(261), + [3149] = {.entry = {.count = 1, .reusable = true}}, SHIFT(729), + [3151] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1024), + [3153] = {.entry = {.count = 1, .reusable = true}}, SHIFT(95), + [3155] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__match_maybe_star_pattern, 1, 0, 0), + [3157] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__match_patterns, 1, 0, 0), + [3159] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_match_mapping_pattern_repeat1, 2, 0, 0), SHIFT_REPEAT(1023), + [3162] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_match_mapping_pattern_repeat1, 2, 0, 0), + [3164] = {.entry = {.count = 1, .reusable = true}}, SHIFT(249), + [3166] = {.entry = {.count = 1, .reusable = true}}, SHIFT(925), + [3168] = {.entry = {.count = 1, .reusable = true}}, SHIFT(248), + [3170] = {.entry = {.count = 1, .reusable = true}}, SHIFT(247), + [3172] = {.entry = {.count = 1, .reusable = true}}, SHIFT(284), + [3174] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1027), + [3176] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_import_statement, 3, 0, 22), + [3178] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_index_expression_list_repeat1, 2, 0, 32), + [3180] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_augmented_assignment, 3, 0, 40), + [3182] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_import_from_statement, 4, 0, 48), + [3184] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_type_parameters_repeat1, 2, 0, 89), + [3186] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_import_from_statement, 4, 0, 49), + [3188] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_argument_list_repeat1, 2, 0, 68), + [3190] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parameters, 2, 0, 0), + [3192] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_assignment, 5, 0, 95), + [3194] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_paramspec_parameter, 3, 0, 111), + [3196] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_continue_statement, 1, 0, 0), + [3198] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1704), + [3200] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1136), + [3202] = {.entry = {.count = 1, .reusable = true}}, SHIFT(70), + [3204] = {.entry = {.count = 1, .reusable = true}}, SHIFT(265), + [3206] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_positional_pattern, 1, 0, 0), + [3208] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_import_from_statement, 5, 0, 75), + [3210] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_import_from_statement, 5, 0, 76), + [3212] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_keyword_pattern, 3, 0, 164), + [3214] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_typevar_parameter, 2, 0, 88), + [3216] = {.entry = {.count = 1, .reusable = true}}, SHIFT(107), + [3218] = {.entry = {.count = 1, .reusable = true}}, SHIFT(264), + [3220] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1105), + [3222] = {.entry = {.count = 1, .reusable = true}}, SHIFT(874), + [3224] = {.entry = {.count = 1, .reusable = true}}, SHIFT(81), + [3226] = {.entry = {.count = 1, .reusable = true}}, SHIFT(285), + [3228] = {.entry = {.count = 1, .reusable = true}}, SHIFT(86), + [3230] = {.entry = {.count = 1, .reusable = true}}, SHIFT(286), + [3232] = {.entry = {.count = 1, .reusable = true}}, SHIFT(90), + [3234] = {.entry = {.count = 1, .reusable = true}}, SHIFT(287), + [3236] = {.entry = {.count = 1, .reusable = true}}, SHIFT(96), + [3238] = {.entry = {.count = 1, .reusable = true}}, SHIFT(278), + [3240] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_wildcard_import, 1, 0, 0), + [3242] = {.entry = {.count = 1, .reusable = true}}, SHIFT(82), + [3244] = {.entry = {.count = 1, .reusable = true}}, SHIFT(275), + [3246] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1221), + [3248] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_future_import_statement, 4, 0, 47), + [3250] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1636), + [3252] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1115), + [3254] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1115), + [3256] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_pass_statement, 1, 0, 0), + [3258] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1109), + [3260] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1109), + [3262] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_dictionary_repeat1, 2, 0, 32), + [3264] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_assignment, 3, 0, 39), + [3266] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_import_from_statement, 7, 0, 125), + [3268] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_break_statement, 1, 0, 0), + [3270] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_double_star_pattern, 2, 0, 11), + [3272] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_import_statement, 2, 0, 5), + [3274] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_future_import_statement, 6, 0, 99), + [3276] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1077), + [3278] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1077), + [3280] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_key_value_pattern, 3, 0, 63), + [3282] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1685), + [3284] = {.entry = {.count = 1, .reusable = true}}, SHIFT(858), + [3286] = {.entry = {.count = 1, .reusable = true}}, SHIFT(121), + [3288] = {.entry = {.count = 1, .reusable = true}}, SHIFT(274), + [3290] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_import_from_statement, 6, 0, 100), + [3292] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_typevar_parameter, 3, 0, 114), + [3294] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parameters, 3, 0, 0), + [3296] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_typevartuple_parameter, 3, 0, 111), + [3298] = {.entry = {.count = 1, .reusable = true}}, SHIFT(110), + [3300] = {.entry = {.count = 1, .reusable = true}}, SHIFT(722), + [3302] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1251), + [3304] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1294), + [3306] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1353), + [3308] = {.entry = {.count = 1, .reusable = true}}, SHIFT(68), + [3310] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1303), + [3312] = {.entry = {.count = 1, .reusable = true}}, SHIFT(947), + [3314] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_with_clause, 5, 0, 0), + [3316] = {.entry = {.count = 1, .reusable = true}}, SHIFT(984), + [3318] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1310), + [3320] = {.entry = {.count = 1, .reusable = true}}, SHIFT(294), + [3322] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_lambda_parameters, 1, 0, 0), + [3324] = {.entry = {.count = 1, .reusable = true}}, SHIFT(77), + [3326] = {.entry = {.count = 1, .reusable = true}}, SHIFT(97), + [3328] = {.entry = {.count = 1, .reusable = true}}, ACCEPT_INPUT(), + [3330] = {.entry = {.count = 1, .reusable = true}}, SHIFT(84), + [3332] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1590), + [3334] = {.entry = {.count = 1, .reusable = true}}, SHIFT(496), + [3336] = {.entry = {.count = 1, .reusable = true}}, SHIFT(724), + [3338] = {.entry = {.count = 1, .reusable = true}}, SHIFT(89), + [3340] = {.entry = {.count = 1, .reusable = true}}, SHIFT(908), + [3342] = {.entry = {.count = 1, .reusable = true}}, SHIFT(92), + [3344] = {.entry = {.count = 1, .reusable = true}}, SHIFT(93), + [3346] = {.entry = {.count = 1, .reusable = true}}, SHIFT(395), + [3348] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1377), + [3350] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1494), + [3352] = {.entry = {.count = 1, .reusable = true}}, SHIFT(911), + [3354] = {.entry = {.count = 1, .reusable = true}}, SHIFT(102), + [3356] = {.entry = {.count = 1, .reusable = true}}, SHIFT(69), + [3358] = {.entry = {.count = 1, .reusable = true}}, SHIFT(106), + [3360] = {.entry = {.count = 1, .reusable = true}}, SHIFT(912), + [3362] = {.entry = {.count = 1, .reusable = true}}, SHIFT(112), + [3364] = {.entry = {.count = 1, .reusable = true}}, SHIFT(115), + [3366] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1373), + [3368] = {.entry = {.count = 1, .reusable = true}}, SHIFT(324), + [3370] = {.entry = {.count = 1, .reusable = true}}, SHIFT(914), + [3372] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1359), + [3374] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1572), + [3376] = {.entry = {.count = 1, .reusable = true}}, SHIFT(690), + [3378] = {.entry = {.count = 1, .reusable = true}}, SHIFT(362), + [3380] = {.entry = {.count = 1, .reusable = true}}, SHIFT(916), + [3382] = {.entry = {.count = 1, .reusable = true}}, SHIFT(78), + [3384] = {.entry = {.count = 1, .reusable = true}}, SHIFT(80), + [3386] = {.entry = {.count = 1, .reusable = true}}, SHIFT(501), + [3388] = {.entry = {.count = 1, .reusable = true}}, SHIFT(116), + [3390] = {.entry = {.count = 1, .reusable = true}}, SHIFT(98), + [3392] = {.entry = {.count = 1, .reusable = true}}, SHIFT(928), + [3394] = {.entry = {.count = 1, .reusable = true}}, SHIFT(114), + [3396] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1367), + [3398] = {.entry = {.count = 1, .reusable = true}}, SHIFT(890), + [3400] = {.entry = {.count = 1, .reusable = true}}, SHIFT(660), + [3402] = {.entry = {.count = 1, .reusable = true}}, SHIFT(929), + [3404] = {.entry = {.count = 1, .reusable = true}}, SHIFT(987), + [3406] = {.entry = {.count = 1, .reusable = true}}, SHIFT(930), + [3408] = {.entry = {.count = 1, .reusable = true}}, SHIFT(126), + [3410] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1190), + [3412] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1056), + [3414] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1283), + [3416] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1554), + [3418] = {.entry = {.count = 1, .reusable = true}}, SHIFT(341), + [3420] = {.entry = {.count = 1, .reusable = true}}, SHIFT(933), + [3422] = {.entry = {.count = 1, .reusable = true}}, SHIFT(934), + [3424] = {.entry = {.count = 1, .reusable = true}}, SHIFT(703), + [3426] = {.entry = {.count = 1, .reusable = true}}, SHIFT(716), + [3428] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1307), + [3430] = {.entry = {.count = 1, .reusable = true}}, SHIFT(727), + [3432] = {.entry = {.count = 1, .reusable = true}}, SHIFT(938), + [3434] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1391), + [3436] = {.entry = {.count = 1, .reusable = true}}, SHIFT(999), + [3438] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1183), + [3440] = {.entry = {.count = 1, .reusable = true}}, SHIFT(728), + [3442] = {.entry = {.count = 1, .reusable = true}}, SHIFT(951), + [3444] = {.entry = {.count = 1, .reusable = true}}, SHIFT(718), + [3446] = {.entry = {.count = 1, .reusable = true}}, SHIFT(413), + [3448] = {.entry = {.count = 1, .reusable = true}}, SHIFT(687), + [3450] = {.entry = {.count = 1, .reusable = true}}, SHIFT(918), + [3452] = {.entry = {.count = 1, .reusable = true}}, SHIFT(893), + [3454] = {.entry = {.count = 1, .reusable = true}}, SHIFT(974), + [3456] = {.entry = {.count = 1, .reusable = true}}, SHIFT(105), + [3458] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1002), + [3460] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_with_clause, 4, 0, 0), + [3462] = {.entry = {.count = 1, .reusable = true}}, SHIFT(634), + [3464] = {.entry = {.count = 1, .reusable = true}}, SHIFT(867), + [3466] = {.entry = {.count = 1, .reusable = true}}, SHIFT(885), + [3468] = {.entry = {.count = 1, .reusable = true}}, SHIFT(887), + [3470] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_relative_import, 2, 0, 25), + [3472] = {.entry = {.count = 1, .reusable = true}}, SHIFT(976), + [3474] = {.entry = {.count = 1, .reusable = true}}, SHIFT(124), + [3476] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1271), + [3478] = {.entry = {.count = 1, .reusable = true}}, SHIFT(946), + [3480] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1273), + [3482] = {.entry = {.count = 1, .reusable = true}}, SHIFT(119), + [3484] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1138), + [3486] = {.entry = {.count = 1, .reusable = true}}, SHIFT(380), + [3488] = {.entry = {.count = 1, .reusable = true}}, SHIFT(113), + [3490] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_with_clause, 3, 0, 0), + [3492] = {.entry = {.count = 1, .reusable = true}}, SHIFT(967), + [3494] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1414), + [3496] = {.entry = {.count = 1, .reusable = true}}, SHIFT(402), + [3498] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1239), + [3500] = {.entry = {.count = 1, .reusable = true}}, SHIFT(72), + [3502] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1578), + [3504] = {.entry = {.count = 1, .reusable = true}}, SHIFT(969), + [3506] = {.entry = {.count = 1, .reusable = true}}, SHIFT(721), + [3508] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1588), + [3510] = {.entry = {.count = 1, .reusable = true}}, SHIFT(936), + [3512] = {.entry = {.count = 1, .reusable = true}}, SHIFT(370), + [3514] = {.entry = {.count = 1, .reusable = true}}, SHIFT(921), + [3516] = {.entry = {.count = 1, .reusable = true}}, SHIFT(975), + [3518] = {.entry = {.count = 1, .reusable = true}}, SHIFT(626), + [3520] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1375), + [3522] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1376), + [3524] = {.entry = {.count = 1, .reusable = true}}, SHIFT(731), + [3526] = {.entry = {.count = 1, .reusable = true}}, SHIFT(655), + [3528] = {.entry = {.count = 1, .reusable = true}}, SHIFT(977), + [3530] = {.entry = {.count = 1, .reusable = true}}, SHIFT(981), }; enum ts_external_scanner_symbol_identifiers { diff --git a/python/extractor/tsg-python/tsp/src/tree_sitter/array.h b/python/extractor/tsg-python/tsp/src/tree_sitter/array.h index e99918e5d85d..56fc8cd47099 100644 --- a/python/extractor/tsg-python/tsp/src/tree_sitter/array.h +++ b/python/extractor/tsg-python/tsp/src/tree_sitter/array.h @@ -60,7 +60,13 @@ extern "C" { /// 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((self), (void *)(self)->contents, sizeof(*self)) +#define array_delete(self) \ + do { \ + if ((self)->contents) ts_free((self)->contents); \ + (self)->contents = NULL; \ + (self)->size = 0; \ + (self)->capacity = 0; \ + } while (0) /// Push a new `element` onto the end of the array. #define array_push(self, element) \ @@ -130,12 +136,11 @@ extern "C" { /// Swap one array with another #define array_swap(self, other) \ do { \ - struct Swap swapped_contents = _array__swap( \ - (void *)(self)->contents, &(self)->size, &(self)->capacity, \ - (void *)(other)->contents, &(other)->size, &(other)->capacity \ - ); \ - (self)->contents = swapped_contents.self_contents; \ - (other)->contents = swapped_contents.other_contents; \ + void *_array_swap_tmp = (void *)(self)->contents; \ + (self)->contents = (other)->contents; \ + (other)->contents = _array_swap_tmp; \ + _array__swap(&(self)->size, &(self)->capacity, \ + &(other)->size, &(other)->capacity); \ } while (0) /// Get the size of the array contents @@ -188,12 +193,6 @@ extern "C" { // The `Array` type itself was not altered as a solution in order to avoid breakage // with existing consumers (in particular, parsers with external scanners). -/// This is not what you're looking for, see `array_delete`. -static inline void _array__delete(void *self, void *contents, size_t self_size) { - if (contents) ts_free(contents); - if (self) memset(self, 0, self_size); -} - /// This is not what you're looking for, see `array_erase`. static inline void _array__erase(void* self_contents, uint32_t *size, size_t element_size, uint32_t index) { @@ -228,31 +227,15 @@ static inline void *_array__assign(void* self_contents, uint32_t *self_size, uin return new_contents; } -struct Swap { - void *self_contents; - void *other_contents; -}; - /// This is not what you're looking for, see `array_swap`. -// static inline void _array__swap(Array *self, Array *other) { -static inline struct Swap _array__swap(void *self_contents, uint32_t *self_size, uint32_t *self_capacity, - void *other_contents, uint32_t *other_size, uint32_t *other_capacity) { - void *new_self_contents = other_contents; - uint32_t new_self_size = *other_size; - uint32_t new_self_capacity = *other_capacity; - - void *new_other_contents = self_contents; - *other_size = *self_size; - *other_capacity = *self_capacity; - - *self_size = new_self_size; - *self_capacity = new_self_capacity; - - struct Swap out = { - .self_contents = new_self_contents, - .other_contents = new_other_contents, - }; - return out; +static inline void _array__swap(uint32_t *self_size, uint32_t *self_capacity, + uint32_t *other_size, uint32_t *other_capacity) { + uint32_t tmp_size = *self_size; + uint32_t tmp_capacity = *self_capacity; + *self_size = *other_size; + *self_capacity = *other_capacity; + *other_size = tmp_size; + *other_capacity = tmp_capacity; } /// This is not what you're looking for, see `array_push` or `array_grow_by`. From fe94828fe4e0152f03a3c834db1309ecda200e63 Mon Sep 17 00:00:00 2001 From: Taus Date: Fri, 10 Apr 2026 14:23:29 +0000 Subject: [PATCH 103/157] Python: Add overlay annotations to AST template Otherwise these will disappear every time we regenerate the AST. --- python/extractor/semmle/query_gen.py | 2 ++ 1 file changed, 2 insertions(+) diff --git a/python/extractor/semmle/query_gen.py b/python/extractor/semmle/query_gen.py index b3fc2442e8a3..e7f9d280ad1f 100644 --- a/python/extractor/semmle/query_gen.py +++ b/python/extractor/semmle/query_gen.py @@ -211,6 +211,8 @@ def pop_least_value(nodes): * WARNING: Any modifications to this file will be lost. * Relations can be changed by modifying master.py. */ +overlay[local] +module; ''' def main(): From 1ddfed6b6b7fae6b80ebbfc923bd535bfa73c76c Mon Sep 17 00:00:00 2001 From: Taus Date: Fri, 10 Apr 2026 14:25:08 +0000 Subject: [PATCH 104/157] Python: Add QL support for lazy imports Adds a new `isLazy` predicate to the relevant classes, and adds the relevant dbscheme (and up/downgrade) changes. On upgrades we do nothing, and on downgrades we remove the `is_lazy` bits. --- .../old.dbscheme | 1291 +++++++++++++++++ .../py_bools.ql | 12 + .../semmlecode.python.dbscheme | 1289 ++++++++++++++++ .../upgrade.properties | 3 + python/extractor/semmle/python/master.py | 2 + python/ql/lib/semmle/python/AstGenerated.qll | 6 + python/ql/lib/semmlecode.python.dbscheme | 4 +- .../old.dbscheme | 1289 ++++++++++++++++ .../semmlecode.python.dbscheme | 1291 +++++++++++++++++ .../upgrade.properties | 2 + 10 files changed, 5188 insertions(+), 1 deletion(-) create mode 100644 python/downgrades/eb5fc917c79bb23ce2de4a022f3e566d57a91be9/old.dbscheme create mode 100644 python/downgrades/eb5fc917c79bb23ce2de4a022f3e566d57a91be9/py_bools.ql create mode 100644 python/downgrades/eb5fc917c79bb23ce2de4a022f3e566d57a91be9/semmlecode.python.dbscheme create mode 100644 python/downgrades/eb5fc917c79bb23ce2de4a022f3e566d57a91be9/upgrade.properties create mode 100644 python/ql/lib/upgrades/279cbb08d387ecd57ac177e87c94cfd5ca62f792/old.dbscheme create mode 100644 python/ql/lib/upgrades/279cbb08d387ecd57ac177e87c94cfd5ca62f792/semmlecode.python.dbscheme create mode 100644 python/ql/lib/upgrades/279cbb08d387ecd57ac177e87c94cfd5ca62f792/upgrade.properties diff --git a/python/downgrades/eb5fc917c79bb23ce2de4a022f3e566d57a91be9/old.dbscheme b/python/downgrades/eb5fc917c79bb23ce2de4a022f3e566d57a91be9/old.dbscheme new file mode 100644 index 000000000000..eb5fc917c79b --- /dev/null +++ b/python/downgrades/eb5fc917c79bb23ce2de4a022f3e566d57a91be9/old.dbscheme @@ -0,0 +1,1291 @@ +/* + * This dbscheme is auto-generated by 'semmle/dbscheme_gen.py'. + * Run "make dbscheme" in python/extractor/ to regenerate. + * WARNING: Any modifications to this file will be lost. + * Relations can be changed by modifying master.py or + * by adding rules to dbscheme.template + */ + +/* This is a dummy line to alter the dbscheme, so we can make a database upgrade + * without actually changing any of the dbscheme predicates. It contains a date + * to allow for such updates in the future as well. + * + * 2020-07-02 + * + * DO NOT remove this comment carelessly, since it can revert the dbscheme back to a + * previously seen state (matching a previously seen SHA), which would make the upgrade + * mechanism not work properly. + */ + +/*- DEPRECATED: External defects and metrics -*/ + +externalDefects( + unique int id : @externalDefect, + varchar(900) queryPath : string ref, + int location : @location ref, + varchar(900) message : string ref, + float severity : float ref +); + +externalMetrics( + unique int id : @externalMetric, + varchar(900) queryPath : string ref, + int location : @location ref, + float value : float ref +); + +/*- External data -*/ + +/** + * External data, loaded from CSV files during snapshot creation. See + * [Tutorial: Incorporating external data](https://help.semmle.com/wiki/display/SD/Tutorial%3A+Incorporating+external+data) + * for more information. + */ +externalData( + int id : @externalDataElement, + string path : string ref, + int column: int ref, + string value : string ref +); + +/*- Database metadata -*/ + +/** + * The CLI will automatically emit applicable tuples for this table, + * such as `databaseMetadata("isOverlay", "true")` when building an + * overlay database. + */ +databaseMetadata( + string metadataKey: string ref, + string value: string ref +); + +/*- Overlay support -*/ + +/** + * The CLI will automatically emit tuples for each new/modified/deleted file + * when building an overlay database. + */ +overlayChangedFiles( + string path: string ref +); + +/*- DEPRECATED: Snapshot date -*/ + +snapshotDate(unique date snapshotDate : date ref); + +/*- Source location prefix -*/ + +/** + * The source location of the snapshot. + */ +sourceLocationPrefix(string prefix : string ref); + +/*- DEPRECATED: Duplicate code -*/ + +duplicateCode( + unique int id : @duplication, + string relativePath : string ref, + int equivClass : int ref +); + +similarCode( + unique int id : @similarity, + string relativePath : string ref, + int equivClass : int ref +); + +@duplication_or_similarity = @duplication | @similarity + +tokens( + int id : @duplication_or_similarity ref, + int offset : int ref, + int beginLine : int ref, + int beginColumn : int ref, + int endLine : int ref, + int endColumn : int ref +); + +/*- DEPRECATED: Version control data -*/ + +svnentries( + unique int id : @svnentry, + string revision : string ref, + string author : string ref, + date revisionDate : date ref, + int changeSize : int ref +) + +svnaffectedfiles( + int id : @svnentry ref, + int file : @file ref, + string action : string ref +) + +svnentrymsg( + unique int id : @svnentry ref, + string message : string ref +) + +svnchurn( + int commit : @svnentry ref, + int file : @file ref, + int addedLines : int ref, + int deletedLines : int ref +) + +/*- Lines of code -*/ + +numlines( + int element_id: @sourceline ref, + int num_lines: int ref, + int num_code: int ref, + int num_comment: int ref +); + +/*- Files and folders -*/ + +/** + * The location of an element. + * The location spans column `startcolumn` of line `startline` to + * column `endcolumn` of line `endline` in file `file`. + * For more information, see + * [Locations](https://codeql.github.com/docs/writing-codeql-queries/providing-locations-in-codeql-queries/). + */ +locations_default( + unique int id: @location_default, + int file: @file ref, + int beginLine: int ref, + int beginColumn: int ref, + int endLine: int ref, + int endColumn: int ref +); + +files( + unique int id: @file, + string name: string ref +); + +folders( + unique int id: @folder, + string name: string ref +); + +@container = @file | @folder + +containerparent( + int parent: @container ref, + unique int child: @container ref +); + +/*- XML Files -*/ + +xmlEncoding( + unique int id: @file ref, + string encoding: string ref +); + +xmlDTDs( + unique int id: @xmldtd, + string root: string ref, + string publicId: string ref, + string systemId: string ref, + int fileid: @file ref +); + +xmlElements( + unique int id: @xmlelement, + string name: string ref, + int parentid: @xmlparent ref, + int idx: int ref, + int fileid: @file ref +); + +xmlAttrs( + unique int id: @xmlattribute, + int elementid: @xmlelement ref, + string name: string ref, + string value: string ref, + int idx: int ref, + int fileid: @file ref +); + +xmlNs( + int id: @xmlnamespace, + string prefixName: string ref, + string URI: string ref, + int fileid: @file ref +); + +xmlHasNs( + int elementId: @xmlnamespaceable ref, + int nsId: @xmlnamespace ref, + int fileid: @file ref +); + +xmlComments( + unique int id: @xmlcomment, + string text: string ref, + int parentid: @xmlparent ref, + int fileid: @file ref +); + +xmlChars( + unique int id: @xmlcharacters, + string text: string ref, + int parentid: @xmlparent ref, + int idx: int ref, + int isCDATA: int ref, + int fileid: @file ref +); + +@xmlparent = @file | @xmlelement; +@xmlnamespaceable = @xmlelement | @xmlattribute; + +xmllocations( + int xmlElement: @xmllocatable ref, + int location: @location_default ref +); + +@xmllocatable = @xmlcharacters | @xmlelement | @xmlcomment | @xmlattribute | @xmldtd | @file | @xmlnamespace; + +/*- YAML -*/ + +#keyset[parent, idx] +yaml (unique int id: @yaml_node, + int kind: int ref, + int parent: @yaml_node_parent ref, + int idx: int ref, + string tag: string ref, + string tostring: string ref); + +case @yaml_node.kind of + 0 = @yaml_scalar_node +| 1 = @yaml_mapping_node +| 2 = @yaml_sequence_node +| 3 = @yaml_alias_node +; + +@yaml_collection_node = @yaml_mapping_node | @yaml_sequence_node; + +@yaml_node_parent = @yaml_collection_node | @file; + +yaml_anchors (unique int node: @yaml_node ref, + string anchor: string ref); + +yaml_aliases (unique int alias: @yaml_alias_node ref, + string target: string ref); + +yaml_scalars (unique int scalar: @yaml_scalar_node ref, + int style: int ref, + string value: string ref); + +yaml_errors (unique int id: @yaml_error, + string message: string ref); + +yaml_locations(unique int locatable: @yaml_locatable ref, + int location: @location_default ref); + +@yaml_locatable = @yaml_node | @yaml_error; + +/*- Python dbscheme -*/ + +/* + * Line metrics + */ +py_codelines(int id : @py_scope ref, + int count : int ref); + +py_commentlines(int id : @py_scope ref, + int count : int ref); + +py_docstringlines(int id : @py_scope ref, + int count : int ref); + +py_alllines(int id : @py_scope ref, + int count : int ref); + +/**************************** + Python dbscheme +****************************/ + +@sourceline = @file | @py_Module | @xmllocatable; + +@location = @location_ast | @location_default ; + +locations_ast(unique int id: @location_ast, + int module: @py_Module ref, + int beginLine: int ref, + int beginColumn: int ref, + int endLine: int ref, + int endColumn: int ref); + +file_contents(unique int file: @file ref, string contents: string ref); + +py_module_path(int module: @py_Module ref, int file: @container ref); + +variable(unique int id : @py_variable, + int scope : @py_scope ref, + varchar(1) name : string ref); + +py_line_lengths(unique int id : @py_line, + int file: @py_Module ref, + int line : int ref, + int length : int ref); + +py_extracted_version(int module : @py_Module ref, + varchar(1) version : string ref); + +/* AUTO GENERATED PART STARTS HERE */ + + +/* AnnAssign.location = 0, location */ +/* AnnAssign.value = 1, expr */ +/* AnnAssign.annotation = 2, expr */ +/* AnnAssign.target = 3, expr */ + +/* Assert.location = 0, location */ +/* Assert.test = 1, expr */ +/* Assert.msg = 2, expr */ + +/* Assign.location = 0, location */ +/* Assign.value = 1, expr */ +/* Assign.targets = 2, expr_list */ + +/* AssignExpr.location = 0, location */ +/* AssignExpr.parenthesised = 1, bool */ +/* AssignExpr.value = 2, expr */ +/* AssignExpr.target = 3, expr */ + +/* Attribute.location = 0, location */ +/* Attribute.parenthesised = 1, bool */ +/* Attribute.value = 2, expr */ +/* Attribute.attr = 3, str */ +/* Attribute.ctx = 4, expr_context */ + +/* AugAssign.location = 0, location */ +/* AugAssign.operation = 1, BinOp */ + +/* Await.location = 0, location */ +/* Await.parenthesised = 1, bool */ +/* Await.value = 2, expr */ + +/* BinaryExpr.location = 0, location */ +/* BinaryExpr.parenthesised = 1, bool */ +/* BinaryExpr.left = 2, expr */ +/* BinaryExpr.op = 3, operator */ +/* BinaryExpr.right = 4, expr */ +/* BinaryExpr = AugAssign */ + +/* BoolExpr.location = 0, location */ +/* BoolExpr.parenthesised = 1, bool */ +/* BoolExpr.op = 2, boolop */ +/* BoolExpr.values = 3, expr_list */ + +/* Break.location = 0, location */ + +/* Bytes.location = 0, location */ +/* Bytes.parenthesised = 1, bool */ +/* Bytes.s = 2, bytes */ +/* Bytes.prefix = 3, bytes */ +/* Bytes.implicitly_concatenated_parts = 4, StringPart_list */ + +/* Call.location = 0, location */ +/* Call.parenthesised = 1, bool */ +/* Call.func = 2, expr */ +/* Call.positional_args = 3, expr_list */ +/* Call.named_args = 4, dict_item_list */ + +/* Case.location = 0, location */ +/* Case.pattern = 1, pattern */ +/* Case.guard = 2, expr */ +/* Case.body = 3, stmt_list */ + +/* Class.name = 0, str */ +/* Class.body = 1, stmt_list */ +/* Class = ClassExpr */ + +/* ClassExpr.location = 0, location */ +/* ClassExpr.parenthesised = 1, bool */ +/* ClassExpr.name = 2, str */ +/* ClassExpr.bases = 3, expr_list */ +/* ClassExpr.keywords = 4, dict_item_list */ +/* ClassExpr.inner_scope = 5, Class */ +/* ClassExpr.type_parameters = 6, type_parameter_list */ + +/* Compare.location = 0, location */ +/* Compare.parenthesised = 1, bool */ +/* Compare.left = 2, expr */ +/* Compare.ops = 3, cmpop_list */ +/* Compare.comparators = 4, expr_list */ + +/* Continue.location = 0, location */ + +/* Delete.location = 0, location */ +/* Delete.targets = 1, expr_list */ + +/* Dict.location = 0, location */ +/* Dict.parenthesised = 1, bool */ +/* Dict.items = 2, dict_item_list */ + +/* DictComp.location = 0, location */ +/* DictComp.parenthesised = 1, bool */ +/* DictComp.function = 2, Function */ +/* DictComp.iterable = 3, expr */ + +/* DictUnpacking.location = 0, location */ +/* DictUnpacking.value = 1, expr */ + +/* Ellipsis.location = 0, location */ +/* Ellipsis.parenthesised = 1, bool */ + +/* ExceptGroupStmt.location = 0, location */ +/* ExceptGroupStmt.type = 1, expr */ +/* ExceptGroupStmt.name = 2, expr */ +/* ExceptGroupStmt.body = 3, stmt_list */ + +/* ExceptStmt.location = 0, location */ +/* ExceptStmt.type = 1, expr */ +/* ExceptStmt.name = 2, expr */ +/* ExceptStmt.body = 3, stmt_list */ + +/* Exec.location = 0, location */ +/* Exec.body = 1, expr */ +/* Exec.globals = 2, expr */ +/* Exec.locals = 3, expr */ + +/* ExprStmt.location = 0, location */ +/* ExprStmt.value = 1, expr */ + +/* Filter.location = 0, location */ +/* Filter.parenthesised = 1, bool */ +/* Filter.value = 2, expr */ +/* Filter.filter = 3, expr */ + +/* For.location = 0, location */ +/* For.target = 1, expr */ +/* For.iter = 2, expr */ +/* For.body = 3, stmt_list */ +/* For.orelse = 4, stmt_list */ +/* For.is_async = 5, bool */ + +/* FormattedValue.location = 0, location */ +/* FormattedValue.parenthesised = 1, bool */ +/* FormattedValue.value = 2, expr */ +/* FormattedValue.conversion = 3, str */ +/* FormattedValue.format_spec = 4, JoinedStr */ + +/* Function.name = 0, str */ +/* Function.args = 1, parameter_list */ +/* Function.vararg = 2, expr */ +/* Function.kwonlyargs = 3, expr_list */ +/* Function.kwarg = 4, expr */ +/* Function.body = 5, stmt_list */ +/* Function.is_async = 6, bool */ +/* Function.type_parameters = 7, type_parameter_list */ +/* Function = FunctionParent */ + +/* FunctionExpr.location = 0, location */ +/* FunctionExpr.parenthesised = 1, bool */ +/* FunctionExpr.name = 2, str */ +/* FunctionExpr.args = 3, arguments */ +/* FunctionExpr.returns = 4, expr */ +/* FunctionExpr.inner_scope = 5, Function */ + +/* GeneratorExp.location = 0, location */ +/* GeneratorExp.parenthesised = 1, bool */ +/* GeneratorExp.function = 2, Function */ +/* GeneratorExp.iterable = 3, expr */ + +/* Global.location = 0, location */ +/* Global.names = 1, str_list */ + +/* Guard.location = 0, location */ +/* Guard.parenthesised = 1, bool */ +/* Guard.test = 2, expr */ + +/* If.location = 0, location */ +/* If.test = 1, expr */ +/* If.body = 2, stmt_list */ +/* If.orelse = 3, stmt_list */ + +/* IfExp.location = 0, location */ +/* IfExp.parenthesised = 1, bool */ +/* IfExp.test = 2, expr */ +/* IfExp.body = 3, expr */ +/* IfExp.orelse = 4, expr */ + +/* Import.location = 0, location */ +/* Import.names = 1, alias_list */ +/* Import.is_lazy = 2, bool */ + +/* ImportExpr.location = 0, location */ +/* ImportExpr.parenthesised = 1, bool */ +/* ImportExpr.level = 2, int */ +/* ImportExpr.name = 3, str */ +/* ImportExpr.top = 4, bool */ + +/* ImportStar.location = 0, location */ +/* ImportStar.module = 1, expr */ +/* ImportStar.is_lazy = 2, bool */ + +/* ImportMember.location = 0, location */ +/* ImportMember.parenthesised = 1, bool */ +/* ImportMember.module = 2, expr */ +/* ImportMember.name = 3, str */ + +/* Fstring.location = 0, location */ +/* Fstring.parenthesised = 1, bool */ +/* Fstring.values = 2, expr_list */ +/* Fstring = FormattedValue */ + +/* JoinedTemplateString.location = 0, location */ +/* JoinedTemplateString.parenthesised = 1, bool */ +/* JoinedTemplateString.strings = 2, TemplateString_list */ + +/* KeyValuePair.location = 0, location */ +/* KeyValuePair.value = 1, expr */ +/* KeyValuePair.key = 2, expr */ + +/* Lambda.location = 0, location */ +/* Lambda.parenthesised = 1, bool */ +/* Lambda.args = 2, arguments */ +/* Lambda.inner_scope = 3, Function */ + +/* List.location = 0, location */ +/* List.parenthesised = 1, bool */ +/* List.elts = 2, expr_list */ +/* List.ctx = 3, expr_context */ + +/* ListComp.location = 0, location */ +/* ListComp.parenthesised = 1, bool */ +/* ListComp.function = 2, Function */ +/* ListComp.iterable = 3, expr */ +/* ListComp.generators = 4, comprehension_list */ +/* ListComp.elt = 5, expr */ + +/* MatchStmt.location = 0, location */ +/* MatchStmt.subject = 1, expr */ +/* MatchStmt.cases = 2, stmt_list */ + +/* MatchAsPattern.location = 0, location */ +/* MatchAsPattern.parenthesised = 1, bool */ +/* MatchAsPattern.pattern = 2, pattern */ +/* MatchAsPattern.alias = 3, expr */ + +/* MatchCapturePattern.location = 0, location */ +/* MatchCapturePattern.parenthesised = 1, bool */ +/* MatchCapturePattern.variable = 2, expr */ + +/* MatchClassPattern.location = 0, location */ +/* MatchClassPattern.parenthesised = 1, bool */ +/* MatchClassPattern.class = 2, expr */ +/* MatchClassPattern.class_name = 3, expr */ +/* MatchClassPattern.positional = 4, pattern_list */ +/* MatchClassPattern.keyword = 5, pattern_list */ + +/* MatchDoubleStarPattern.location = 0, location */ +/* MatchDoubleStarPattern.parenthesised = 1, bool */ +/* MatchDoubleStarPattern.target = 2, pattern */ + +/* MatchKeyValuePattern.location = 0, location */ +/* MatchKeyValuePattern.parenthesised = 1, bool */ +/* MatchKeyValuePattern.key = 2, pattern */ +/* MatchKeyValuePattern.value = 3, pattern */ + +/* MatchKeywordPattern.location = 0, location */ +/* MatchKeywordPattern.parenthesised = 1, bool */ +/* MatchKeywordPattern.attribute = 2, expr */ +/* MatchKeywordPattern.value = 3, pattern */ + +/* MatchLiteralPattern.location = 0, location */ +/* MatchLiteralPattern.parenthesised = 1, bool */ +/* MatchLiteralPattern.literal = 2, expr */ + +/* MatchMappingPattern.location = 0, location */ +/* MatchMappingPattern.parenthesised = 1, bool */ +/* MatchMappingPattern.mappings = 2, pattern_list */ + +/* MatchOrPattern.location = 0, location */ +/* MatchOrPattern.parenthesised = 1, bool */ +/* MatchOrPattern.patterns = 2, pattern_list */ + +/* MatchSequencePattern.location = 0, location */ +/* MatchSequencePattern.parenthesised = 1, bool */ +/* MatchSequencePattern.patterns = 2, pattern_list */ + +/* MatchStarPattern.location = 0, location */ +/* MatchStarPattern.parenthesised = 1, bool */ +/* MatchStarPattern.target = 2, pattern */ + +/* MatchValuePattern.location = 0, location */ +/* MatchValuePattern.parenthesised = 1, bool */ +/* MatchValuePattern.value = 2, expr */ + +/* MatchWildcardPattern.location = 0, location */ +/* MatchWildcardPattern.parenthesised = 1, bool */ + +/* Module.name = 0, str */ +/* Module.hash = 1, str */ +/* Module.body = 2, stmt_list */ +/* Module.kind = 3, str */ + +/* Name.location = 0, location */ +/* Name.parenthesised = 1, bool */ +/* Name.variable = 2, variable */ +/* Name.ctx = 3, expr_context */ +/* Name = ParameterList */ + +/* Nonlocal.location = 0, location */ +/* Nonlocal.names = 1, str_list */ + +/* Num.location = 0, location */ +/* Num.parenthesised = 1, bool */ +/* Num.n = 2, number */ +/* Num.text = 3, number */ + +/* ParamSpec.location = 0, location */ +/* ParamSpec.name = 1, expr */ +/* ParamSpec.default = 2, expr */ + +/* Pass.location = 0, location */ + +/* PlaceHolder.location = 0, location */ +/* PlaceHolder.parenthesised = 1, bool */ +/* PlaceHolder.variable = 2, variable */ +/* PlaceHolder.ctx = 3, expr_context */ + +/* Print.location = 0, location */ +/* Print.dest = 1, expr */ +/* Print.values = 2, expr_list */ +/* Print.nl = 3, bool */ + +/* Raise.location = 0, location */ +/* Raise.exc = 1, expr */ +/* Raise.cause = 2, expr */ +/* Raise.type = 3, expr */ +/* Raise.inst = 4, expr */ +/* Raise.tback = 5, expr */ + +/* Repr.location = 0, location */ +/* Repr.parenthesised = 1, bool */ +/* Repr.value = 2, expr */ + +/* Return.location = 0, location */ +/* Return.value = 1, expr */ + +/* Set.location = 0, location */ +/* Set.parenthesised = 1, bool */ +/* Set.elts = 2, expr_list */ + +/* SetComp.location = 0, location */ +/* SetComp.parenthesised = 1, bool */ +/* SetComp.function = 2, Function */ +/* SetComp.iterable = 3, expr */ + +/* Slice.location = 0, location */ +/* Slice.parenthesised = 1, bool */ +/* Slice.start = 2, expr */ +/* Slice.stop = 3, expr */ +/* Slice.step = 4, expr */ + +/* SpecialOperation.location = 0, location */ +/* SpecialOperation.parenthesised = 1, bool */ +/* SpecialOperation.name = 2, str */ +/* SpecialOperation.arguments = 3, expr_list */ + +/* Starred.location = 0, location */ +/* Starred.parenthesised = 1, bool */ +/* Starred.value = 2, expr */ +/* Starred.ctx = 3, expr_context */ + +/* Str.location = 0, location */ +/* Str.parenthesised = 1, bool */ +/* Str.s = 2, str */ +/* Str.prefix = 3, str */ +/* Str.implicitly_concatenated_parts = 4, StringPart_list */ + +/* StringPart.text = 0, str */ +/* StringPart.location = 1, location */ +/* StringPart = StringPartList */ +/* StringPartList = BytesOrStr */ + +/* Subscript.location = 0, location */ +/* Subscript.parenthesised = 1, bool */ +/* Subscript.value = 2, expr */ +/* Subscript.index = 3, expr */ +/* Subscript.ctx = 4, expr_context */ + +/* TemplateDottedNotation.location = 0, location */ +/* TemplateDottedNotation.parenthesised = 1, bool */ +/* TemplateDottedNotation.value = 2, expr */ +/* TemplateDottedNotation.attr = 3, str */ +/* TemplateDottedNotation.ctx = 4, expr_context */ + +/* TemplateString.location = 0, location */ +/* TemplateString.parenthesised = 1, bool */ +/* TemplateString.prefix = 2, str */ +/* TemplateString.values = 3, expr_list */ +/* TemplateString = TemplateStringList */ + +/* TemplateStringPart.location = 0, location */ +/* TemplateStringPart.parenthesised = 1, bool */ +/* TemplateStringPart.text = 2, str */ +/* TemplateStringList = JoinedTemplateString */ + +/* TemplateWrite.location = 0, location */ +/* TemplateWrite.value = 1, expr */ + +/* Try.location = 0, location */ +/* Try.body = 1, stmt_list */ +/* Try.orelse = 2, stmt_list */ +/* Try.handlers = 3, stmt_list */ +/* Try.finalbody = 4, stmt_list */ + +/* Tuple.location = 0, location */ +/* Tuple.parenthesised = 1, bool */ +/* Tuple.elts = 2, expr_list */ +/* Tuple.ctx = 3, expr_context */ +/* Tuple = ParameterList */ + +/* TypeAlias.location = 0, location */ +/* TypeAlias.name = 1, expr */ +/* TypeAlias.type_parameters = 2, type_parameter_list */ +/* TypeAlias.value = 3, expr */ + +/* TypeVar.location = 0, location */ +/* TypeVar.name = 1, expr */ +/* TypeVar.bound = 2, expr */ +/* TypeVar.default = 3, expr */ + +/* TypeVarTuple.location = 0, location */ +/* TypeVarTuple.name = 1, expr */ +/* TypeVarTuple.default = 2, expr */ + +/* UnaryExpr.location = 0, location */ +/* UnaryExpr.parenthesised = 1, bool */ +/* UnaryExpr.op = 2, unaryop */ +/* UnaryExpr.operand = 3, expr */ + +/* While.location = 0, location */ +/* While.test = 1, expr */ +/* While.body = 2, stmt_list */ +/* While.orelse = 3, stmt_list */ + +/* With.location = 0, location */ +/* With.context_expr = 1, expr */ +/* With.optional_vars = 2, expr */ +/* With.body = 3, stmt_list */ +/* With.is_async = 4, bool */ + +/* Yield.location = 0, location */ +/* Yield.parenthesised = 1, bool */ +/* Yield.value = 2, expr */ + +/* YieldFrom.location = 0, location */ +/* YieldFrom.parenthesised = 1, bool */ +/* YieldFrom.value = 2, expr */ + +/* Alias.value = 0, expr */ +/* Alias.asname = 1, expr */ +/* Alias = AliasList */ +/* AliasList = Import */ + +/* Arguments.kw_defaults = 0, expr_list */ +/* Arguments.defaults = 1, expr_list */ +/* Arguments.annotations = 2, expr_list */ +/* Arguments.varargannotation = 3, expr */ +/* Arguments.kwargannotation = 4, expr */ +/* Arguments.kw_annotations = 5, expr_list */ +/* Arguments = ArgumentsParent */ +/* boolean = BoolParent */ +/* Boolop = BoolExpr */ +/* string = Bytes */ +/* Cmpop = CmpopList */ +/* CmpopList = Compare */ + +/* Comprehension.location = 0, location */ +/* Comprehension.iter = 1, expr */ +/* Comprehension.target = 2, expr */ +/* Comprehension.ifs = 3, expr_list */ +/* Comprehension = ComprehensionList */ +/* ComprehensionList = ListComp */ +/* DictItem = DictItemList */ +/* DictItemList = DictItemListParent */ + +/* Expr.location = 0, location */ +/* Expr.parenthesised = 1, bool */ +/* Expr = ExprParent */ +/* ExprContext = ExprContextParent */ +/* ExprList = ExprListParent */ +/* int = ImportExpr */ + +/* Keyword.location = 0, location */ +/* Keyword.value = 1, expr */ +/* Keyword.arg = 2, str */ +/* Location = LocationParent */ +/* string = Num */ +/* Operator = BinaryExpr */ +/* ParameterList = Function */ + +/* Pattern.location = 0, location */ +/* Pattern.parenthesised = 1, bool */ +/* Pattern = PatternParent */ +/* PatternList = PatternListParent */ + +/* Stmt.location = 0, location */ +/* Stmt = StmtList */ +/* StmtList = StmtListParent */ +/* string = StrParent */ +/* StringList = StrListParent */ + +/* TypeParameter.location = 0, location */ +/* TypeParameter = TypeParameterList */ +/* TypeParameterList = TypeParameterListParent */ +/* Unaryop = UnaryExpr */ +/* Variable = VariableParent */ +py_Classes(unique int id : @py_Class, + unique int parent : @py_ClassExpr ref); + +py_Functions(unique int id : @py_Function, + unique int parent : @py_Function_parent ref); + +py_Modules(unique int id : @py_Module); + +py_StringParts(unique int id : @py_StringPart, + int parent : @py_StringPart_list ref, + int idx : int ref); + +py_StringPart_lists(unique int id : @py_StringPart_list, + unique int parent : @py_Bytes_or_Str ref); + +py_TemplateString_lists(unique int id : @py_TemplateString_list, + unique int parent : @py_JoinedTemplateString ref); + +py_aliases(unique int id : @py_alias, + int parent : @py_alias_list ref, + int idx : int ref); + +py_alias_lists(unique int id : @py_alias_list, + unique int parent : @py_Import ref); + +py_arguments(unique int id : @py_arguments, + unique int parent : @py_arguments_parent ref); + +py_bools(int parent : @py_bool_parent ref, + int idx : int ref); + +py_boolops(unique int id : @py_boolop, + int kind: int ref, + unique int parent : @py_BoolExpr ref); + +py_bytes(varchar(1) id : string ref, + int parent : @py_Bytes ref, + int idx : int ref); + +py_cmpops(unique int id : @py_cmpop, + int kind: int ref, + int parent : @py_cmpop_list ref, + int idx : int ref); + +py_cmpop_lists(unique int id : @py_cmpop_list, + unique int parent : @py_Compare ref); + +py_comprehensions(unique int id : @py_comprehension, + int parent : @py_comprehension_list ref, + int idx : int ref); + +py_comprehension_lists(unique int id : @py_comprehension_list, + unique int parent : @py_ListComp ref); + +py_dict_items(unique int id : @py_dict_item, + int kind: int ref, + int parent : @py_dict_item_list ref, + int idx : int ref); + +py_dict_item_lists(unique int id : @py_dict_item_list, + unique int parent : @py_dict_item_list_parent ref); + +py_exprs(unique int id : @py_expr, + int kind: int ref, + int parent : @py_expr_parent ref, + int idx : int ref); + +py_expr_contexts(unique int id : @py_expr_context, + int kind: int ref, + unique int parent : @py_expr_context_parent ref); + +py_expr_lists(unique int id : @py_expr_list, + int parent : @py_expr_list_parent ref, + int idx : int ref); + +py_ints(int id : int ref, + unique int parent : @py_ImportExpr ref); + +py_locations(unique int id : @location ref, + unique int parent : @py_location_parent ref); + +py_numbers(varchar(1) id : string ref, + int parent : @py_Num ref, + int idx : int ref); + +py_operators(unique int id : @py_operator, + int kind: int ref, + unique int parent : @py_BinaryExpr ref); + +py_parameter_lists(unique int id : @py_parameter_list, + unique int parent : @py_Function ref); + +py_patterns(unique int id : @py_pattern, + int kind: int ref, + int parent : @py_pattern_parent ref, + int idx : int ref); + +py_pattern_lists(unique int id : @py_pattern_list, + int parent : @py_pattern_list_parent ref, + int idx : int ref); + +py_stmts(unique int id : @py_stmt, + int kind: int ref, + int parent : @py_stmt_list ref, + int idx : int ref); + +py_stmt_lists(unique int id : @py_stmt_list, + int parent : @py_stmt_list_parent ref, + int idx : int ref); + +py_strs(varchar(1) id : string ref, + int parent : @py_str_parent ref, + int idx : int ref); + +py_str_lists(unique int id : @py_str_list, + unique int parent : @py_str_list_parent ref); + +py_type_parameters(unique int id : @py_type_parameter, + int kind: int ref, + int parent : @py_type_parameter_list ref, + int idx : int ref); + +py_type_parameter_lists(unique int id : @py_type_parameter_list, + unique int parent : @py_type_parameter_list_parent ref); + +py_unaryops(unique int id : @py_unaryop, + int kind: int ref, + unique int parent : @py_UnaryExpr ref); + +py_variables(int id : @py_variable ref, + unique int parent : @py_variable_parent ref); + +case @py_boolop.kind of + 0 = @py_And +| 1 = @py_Or; + +case @py_cmpop.kind of + 0 = @py_Eq +| 1 = @py_Gt +| 2 = @py_GtE +| 3 = @py_In +| 4 = @py_Is +| 5 = @py_IsNot +| 6 = @py_Lt +| 7 = @py_LtE +| 8 = @py_NotEq +| 9 = @py_NotIn; + +case @py_dict_item.kind of + 0 = @py_DictUnpacking +| 1 = @py_KeyValuePair +| 2 = @py_keyword; + +case @py_expr.kind of + 0 = @py_Attribute +| 1 = @py_BinaryExpr +| 2 = @py_BoolExpr +| 3 = @py_Bytes +| 4 = @py_Call +| 5 = @py_ClassExpr +| 6 = @py_Compare +| 7 = @py_Dict +| 8 = @py_DictComp +| 9 = @py_Ellipsis +| 10 = @py_FunctionExpr +| 11 = @py_GeneratorExp +| 12 = @py_IfExp +| 13 = @py_ImportExpr +| 14 = @py_ImportMember +| 15 = @py_Lambda +| 16 = @py_List +| 17 = @py_ListComp +| 18 = @py_Guard +| 19 = @py_Name +| 20 = @py_Num +| 21 = @py_Repr +| 22 = @py_Set +| 23 = @py_SetComp +| 24 = @py_Slice +| 25 = @py_Starred +| 26 = @py_Str +| 27 = @py_Subscript +| 28 = @py_Tuple +| 29 = @py_UnaryExpr +| 30 = @py_Yield +| 31 = @py_YieldFrom +| 32 = @py_TemplateDottedNotation +| 33 = @py_Filter +| 34 = @py_PlaceHolder +| 35 = @py_Await +| 36 = @py_Fstring +| 37 = @py_FormattedValue +| 38 = @py_AssignExpr +| 39 = @py_SpecialOperation +| 40 = @py_TemplateString +| 41 = @py_JoinedTemplateString +| 42 = @py_TemplateStringPart; + +case @py_expr_context.kind of + 0 = @py_AugLoad +| 1 = @py_AugStore +| 2 = @py_Del +| 3 = @py_Load +| 4 = @py_Param +| 5 = @py_Store; + +case @py_operator.kind of + 0 = @py_Add +| 1 = @py_BitAnd +| 2 = @py_BitOr +| 3 = @py_BitXor +| 4 = @py_Div +| 5 = @py_FloorDiv +| 6 = @py_LShift +| 7 = @py_Mod +| 8 = @py_Mult +| 9 = @py_Pow +| 10 = @py_RShift +| 11 = @py_Sub +| 12 = @py_MatMult; + +case @py_pattern.kind of + 0 = @py_MatchAsPattern +| 1 = @py_MatchOrPattern +| 2 = @py_MatchLiteralPattern +| 3 = @py_MatchCapturePattern +| 4 = @py_MatchWildcardPattern +| 5 = @py_MatchValuePattern +| 6 = @py_MatchSequencePattern +| 7 = @py_MatchStarPattern +| 8 = @py_MatchMappingPattern +| 9 = @py_MatchDoubleStarPattern +| 10 = @py_MatchKeyValuePattern +| 11 = @py_MatchClassPattern +| 12 = @py_MatchKeywordPattern; + +case @py_stmt.kind of + 0 = @py_Assert +| 1 = @py_Assign +| 2 = @py_AugAssign +| 3 = @py_Break +| 4 = @py_Continue +| 5 = @py_Delete +| 6 = @py_ExceptStmt +| 7 = @py_ExceptGroupStmt +| 8 = @py_Exec +| 9 = @py_Expr_stmt +| 10 = @py_For +| 11 = @py_Global +| 12 = @py_If +| 13 = @py_Import +| 14 = @py_ImportStar +| 15 = @py_MatchStmt +| 16 = @py_Case +| 17 = @py_Nonlocal +| 18 = @py_Pass +| 19 = @py_Print +| 20 = @py_Raise +| 21 = @py_Return +| 22 = @py_Try +| 23 = @py_While +| 24 = @py_With +| 25 = @py_TemplateWrite +| 26 = @py_AnnAssign +| 27 = @py_TypeAlias; + +case @py_type_parameter.kind of + 0 = @py_ParamSpec +| 1 = @py_TypeVar +| 2 = @py_TypeVarTuple; + +case @py_unaryop.kind of + 0 = @py_Invert +| 1 = @py_Not +| 2 = @py_UAdd +| 3 = @py_USub; + +@py_Bytes_or_Str = @py_Bytes | @py_Str; + +@py_Function_parent = @py_DictComp | @py_FunctionExpr | @py_GeneratorExp | @py_Lambda | @py_ListComp | @py_SetComp; + +@py_arguments_parent = @py_FunctionExpr | @py_Lambda; + +@py_ast_node = @py_Class | @py_Function | @py_Module | @py_StringPart | @py_comprehension | @py_dict_item | @py_expr | @py_pattern | @py_stmt | @py_type_parameter; + +@py_bool_parent = @py_For | @py_Function | @py_Import | @py_ImportStar | @py_Print | @py_With | @py_expr | @py_pattern; + +@py_dict_item_list_parent = @py_Call | @py_ClassExpr | @py_Dict; + +@py_expr_context_parent = @py_Attribute | @py_List | @py_Name | @py_PlaceHolder | @py_Starred | @py_Subscript | @py_TemplateDottedNotation | @py_Tuple; + +@py_expr_list_parent = @py_Assign | @py_BoolExpr | @py_Call | @py_ClassExpr | @py_Compare | @py_Delete | @py_Fstring | @py_Function | @py_List | @py_Print | @py_Set | @py_SpecialOperation | @py_TemplateString | @py_Tuple | @py_arguments | @py_comprehension; + +@py_expr_or_stmt = @py_expr | @py_stmt; + +@py_expr_parent = @py_AnnAssign | @py_Assert | @py_Assign | @py_AssignExpr | @py_Attribute | @py_AugAssign | @py_Await | @py_BinaryExpr | @py_Call | @py_Case | @py_Compare | @py_DictComp | @py_DictUnpacking | @py_ExceptGroupStmt | @py_ExceptStmt | @py_Exec | @py_Expr_stmt | @py_Filter | @py_For | @py_FormattedValue | @py_Function | @py_FunctionExpr | @py_GeneratorExp | @py_Guard | @py_If | @py_IfExp | @py_ImportMember | @py_ImportStar | @py_KeyValuePair | @py_ListComp | @py_MatchAsPattern | @py_MatchCapturePattern | @py_MatchClassPattern | @py_MatchKeywordPattern | @py_MatchLiteralPattern | @py_MatchStmt | @py_MatchValuePattern | @py_ParamSpec | @py_Print | @py_Raise | @py_Repr | @py_Return | @py_SetComp | @py_Slice | @py_Starred | @py_Subscript | @py_TemplateDottedNotation | @py_TemplateString_list | @py_TemplateWrite | @py_TypeAlias | @py_TypeVar | @py_TypeVarTuple | @py_UnaryExpr | @py_While | @py_With | @py_Yield | @py_YieldFrom | @py_alias | @py_arguments | @py_comprehension | @py_expr_list | @py_keyword | @py_parameter_list; + +@py_location_parent = @py_DictUnpacking | @py_KeyValuePair | @py_StringPart | @py_comprehension | @py_expr | @py_keyword | @py_pattern | @py_stmt | @py_type_parameter; + +@py_parameter = @py_Name | @py_Tuple; + +@py_pattern_list_parent = @py_MatchClassPattern | @py_MatchMappingPattern | @py_MatchOrPattern | @py_MatchSequencePattern; + +@py_pattern_parent = @py_Case | @py_MatchAsPattern | @py_MatchDoubleStarPattern | @py_MatchKeyValuePattern | @py_MatchKeywordPattern | @py_MatchStarPattern | @py_pattern_list; + +@py_scope = @py_Class | @py_Function | @py_Module; + +@py_stmt_list_parent = @py_Case | @py_Class | @py_ExceptGroupStmt | @py_ExceptStmt | @py_For | @py_Function | @py_If | @py_MatchStmt | @py_Module | @py_Try | @py_While | @py_With; + +@py_str_list_parent = @py_Global | @py_Nonlocal; + +@py_str_parent = @py_Attribute | @py_Class | @py_ClassExpr | @py_FormattedValue | @py_Function | @py_FunctionExpr | @py_ImportExpr | @py_ImportMember | @py_Module | @py_SpecialOperation | @py_Str | @py_StringPart | @py_TemplateDottedNotation | @py_TemplateString | @py_TemplateStringPart | @py_keyword | @py_str_list; + +@py_type_parameter_list_parent = @py_ClassExpr | @py_Function | @py_TypeAlias; + +@py_variable_parent = @py_Name | @py_PlaceHolder; + + +/* + * End of auto-generated part + */ + + + +/* Map relative names to absolute names for imports */ +py_absolute_names(int module : @py_Module ref, + varchar(1) relname : string ref, + varchar(1) absname : string ref); + +py_exports(int id : @py_Module ref, + varchar(1) name : string ref); + +/* Successor information */ +py_successors(int predecessor : @py_flow_node ref, + int successor : @py_flow_node ref); + +py_true_successors(int predecessor : @py_flow_node ref, + int successor : @py_flow_node ref); + +py_exception_successors(int predecessor : @py_flow_node ref, + int successor : @py_flow_node ref); + +py_false_successors(int predecessor : @py_flow_node ref, + int successor : @py_flow_node ref); + +py_flow_bb_node(unique int flownode : @py_flow_node, + int realnode : @py_ast_node ref, + int basicblock : @py_flow_node ref, + int index : int ref); + +py_scope_flow(int flow : @py_flow_node ref, + int scope : @py_scope ref, + int kind : int ref); + +py_idoms(unique int node : @py_flow_node ref, + int immediate_dominator : @py_flow_node ref); + +py_ssa_phi(int phi : @py_ssa_var ref, + int arg: @py_ssa_var ref); + +py_ssa_var(unique int id : @py_ssa_var, + int var : @py_variable ref); + +py_ssa_use(int node: @py_flow_node ref, + int var : @py_ssa_var ref); + +py_ssa_defn(unique int id : @py_ssa_var ref, + int node: @py_flow_node ref); + +@py_base_var = @py_variable | @py_ssa_var; + +py_scopes(unique int node : @py_expr_or_stmt ref, + int scope : @py_scope ref); + +py_scope_location(unique int id : @location ref, + unique int scope : @py_scope ref); + +py_flags_versioned(varchar(1) name : string ref, + varchar(1) value : string ref, + varchar(1) version : string ref); + +py_syntax_error_versioned(unique int id : @location ref, + varchar(1) message : string ref, + varchar(1) version : string ref); + +py_comments(unique int id : @py_comment, + varchar(1) text : string ref, + unique int location : @location ref); + +/* Type information support */ + +py_cobjects(unique int obj : @py_cobject); + +py_cobjecttypes(unique int obj : @py_cobject ref, + int typeof : @py_cobject ref); + +py_cobjectnames(unique int obj : @py_cobject ref, + varchar(1) name : string ref); + +/* Kind should be 0 for introspection, > 0 from source, as follows: + 1 from C extension source + */ +py_cobject_sources(int obj : @py_cobject ref, + int kind : int ref); + +py_cmembers_versioned(int object : @py_cobject ref, + varchar(1) name : string ref, + int member : @py_cobject ref, + varchar(1) version : string ref); + +py_citems(int object : @py_cobject ref, + int index : int ref, + int member : @py_cobject ref); + +ext_argtype(int funcid : @py_object ref, + int arg : int ref, + int typeid : @py_object ref); + +ext_rettype(int funcid : @py_object ref, + int typeid : @py_object ref); + +ext_proptype(int propid : @py_object ref, + int typeid : @py_object ref); + +ext_argreturn(int funcid : @py_object ref, + int arg : int ref); + +py_special_objects(unique int obj : @py_cobject ref, + unique varchar(1) name : string ref); + +py_decorated_object(int object : @py_object ref, + int level: int ref); + +@py_object = @py_cobject | @py_flow_node; + +@py_source_element = @py_ast_node | @container; + +/** The union of all Python database entities */ +@top = + @py_source_element | @py_object | @py_base_var | @location | @py_line | @py_comment | + @py_expr_parent | @py_expr_context | + @py_operator | @py_boolop | @py_cmpop | @py_unaryop | + @py_cmpop_list | @py_alias_list | @py_StringPart_list | @py_comprehension_list | @py_dict_item_list | @py_pattern_list | @py_stmt_list | @py_str_list | @py_type_parameter_list | + @externalDefect | @externalMetric | @externalDataElement | @duplication_or_similarity | @svnentry | + @xmllocatable | @yaml_locatable; diff --git a/python/downgrades/eb5fc917c79bb23ce2de4a022f3e566d57a91be9/py_bools.ql b/python/downgrades/eb5fc917c79bb23ce2de4a022f3e566d57a91be9/py_bools.ql new file mode 100644 index 000000000000..725f01b97671 --- /dev/null +++ b/python/downgrades/eb5fc917c79bb23ce2de4a022f3e566d57a91be9/py_bools.ql @@ -0,0 +1,12 @@ +class BoolParent extends @py_bool_parent { + string toString() { result = "BoolParent" } +} + +// Drop py_bools rows for Import and ImportStar parents, +// since the old schema does not include them in @py_bool_parent. +from BoolParent parent, int idx +where + py_bools(parent, idx) and + not parent instanceof @py_Import and + not parent instanceof @py_ImportStar +select parent, idx diff --git a/python/downgrades/eb5fc917c79bb23ce2de4a022f3e566d57a91be9/semmlecode.python.dbscheme b/python/downgrades/eb5fc917c79bb23ce2de4a022f3e566d57a91be9/semmlecode.python.dbscheme new file mode 100644 index 000000000000..279cbb08d387 --- /dev/null +++ b/python/downgrades/eb5fc917c79bb23ce2de4a022f3e566d57a91be9/semmlecode.python.dbscheme @@ -0,0 +1,1289 @@ +/* + * This dbscheme is auto-generated by 'semmle/dbscheme_gen.py'. + * Run "make dbscheme" in python/extractor/ to regenerate. + * WARNING: Any modifications to this file will be lost. + * Relations can be changed by modifying master.py or + * by adding rules to dbscheme.template + */ + +/* This is a dummy line to alter the dbscheme, so we can make a database upgrade + * without actually changing any of the dbscheme predicates. It contains a date + * to allow for such updates in the future as well. + * + * 2020-07-02 + * + * DO NOT remove this comment carelessly, since it can revert the dbscheme back to a + * previously seen state (matching a previously seen SHA), which would make the upgrade + * mechanism not work properly. + */ + +/*- DEPRECATED: External defects and metrics -*/ + +externalDefects( + unique int id : @externalDefect, + varchar(900) queryPath : string ref, + int location : @location ref, + varchar(900) message : string ref, + float severity : float ref +); + +externalMetrics( + unique int id : @externalMetric, + varchar(900) queryPath : string ref, + int location : @location ref, + float value : float ref +); + +/*- External data -*/ + +/** + * External data, loaded from CSV files during snapshot creation. See + * [Tutorial: Incorporating external data](https://help.semmle.com/wiki/display/SD/Tutorial%3A+Incorporating+external+data) + * for more information. + */ +externalData( + int id : @externalDataElement, + string path : string ref, + int column: int ref, + string value : string ref +); + +/*- Database metadata -*/ + +/** + * The CLI will automatically emit applicable tuples for this table, + * such as `databaseMetadata("isOverlay", "true")` when building an + * overlay database. + */ +databaseMetadata( + string metadataKey: string ref, + string value: string ref +); + +/*- Overlay support -*/ + +/** + * The CLI will automatically emit tuples for each new/modified/deleted file + * when building an overlay database. + */ +overlayChangedFiles( + string path: string ref +); + +/*- DEPRECATED: Snapshot date -*/ + +snapshotDate(unique date snapshotDate : date ref); + +/*- Source location prefix -*/ + +/** + * The source location of the snapshot. + */ +sourceLocationPrefix(string prefix : string ref); + +/*- DEPRECATED: Duplicate code -*/ + +duplicateCode( + unique int id : @duplication, + string relativePath : string ref, + int equivClass : int ref +); + +similarCode( + unique int id : @similarity, + string relativePath : string ref, + int equivClass : int ref +); + +@duplication_or_similarity = @duplication | @similarity + +tokens( + int id : @duplication_or_similarity ref, + int offset : int ref, + int beginLine : int ref, + int beginColumn : int ref, + int endLine : int ref, + int endColumn : int ref +); + +/*- DEPRECATED: Version control data -*/ + +svnentries( + unique int id : @svnentry, + string revision : string ref, + string author : string ref, + date revisionDate : date ref, + int changeSize : int ref +) + +svnaffectedfiles( + int id : @svnentry ref, + int file : @file ref, + string action : string ref +) + +svnentrymsg( + unique int id : @svnentry ref, + string message : string ref +) + +svnchurn( + int commit : @svnentry ref, + int file : @file ref, + int addedLines : int ref, + int deletedLines : int ref +) + +/*- Lines of code -*/ + +numlines( + int element_id: @sourceline ref, + int num_lines: int ref, + int num_code: int ref, + int num_comment: int ref +); + +/*- Files and folders -*/ + +/** + * The location of an element. + * The location spans column `startcolumn` of line `startline` to + * column `endcolumn` of line `endline` in file `file`. + * For more information, see + * [Locations](https://codeql.github.com/docs/writing-codeql-queries/providing-locations-in-codeql-queries/). + */ +locations_default( + unique int id: @location_default, + int file: @file ref, + int beginLine: int ref, + int beginColumn: int ref, + int endLine: int ref, + int endColumn: int ref +); + +files( + unique int id: @file, + string name: string ref +); + +folders( + unique int id: @folder, + string name: string ref +); + +@container = @file | @folder + +containerparent( + int parent: @container ref, + unique int child: @container ref +); + +/*- XML Files -*/ + +xmlEncoding( + unique int id: @file ref, + string encoding: string ref +); + +xmlDTDs( + unique int id: @xmldtd, + string root: string ref, + string publicId: string ref, + string systemId: string ref, + int fileid: @file ref +); + +xmlElements( + unique int id: @xmlelement, + string name: string ref, + int parentid: @xmlparent ref, + int idx: int ref, + int fileid: @file ref +); + +xmlAttrs( + unique int id: @xmlattribute, + int elementid: @xmlelement ref, + string name: string ref, + string value: string ref, + int idx: int ref, + int fileid: @file ref +); + +xmlNs( + int id: @xmlnamespace, + string prefixName: string ref, + string URI: string ref, + int fileid: @file ref +); + +xmlHasNs( + int elementId: @xmlnamespaceable ref, + int nsId: @xmlnamespace ref, + int fileid: @file ref +); + +xmlComments( + unique int id: @xmlcomment, + string text: string ref, + int parentid: @xmlparent ref, + int fileid: @file ref +); + +xmlChars( + unique int id: @xmlcharacters, + string text: string ref, + int parentid: @xmlparent ref, + int idx: int ref, + int isCDATA: int ref, + int fileid: @file ref +); + +@xmlparent = @file | @xmlelement; +@xmlnamespaceable = @xmlelement | @xmlattribute; + +xmllocations( + int xmlElement: @xmllocatable ref, + int location: @location_default ref +); + +@xmllocatable = @xmlcharacters | @xmlelement | @xmlcomment | @xmlattribute | @xmldtd | @file | @xmlnamespace; + +/*- YAML -*/ + +#keyset[parent, idx] +yaml (unique int id: @yaml_node, + int kind: int ref, + int parent: @yaml_node_parent ref, + int idx: int ref, + string tag: string ref, + string tostring: string ref); + +case @yaml_node.kind of + 0 = @yaml_scalar_node +| 1 = @yaml_mapping_node +| 2 = @yaml_sequence_node +| 3 = @yaml_alias_node +; + +@yaml_collection_node = @yaml_mapping_node | @yaml_sequence_node; + +@yaml_node_parent = @yaml_collection_node | @file; + +yaml_anchors (unique int node: @yaml_node ref, + string anchor: string ref); + +yaml_aliases (unique int alias: @yaml_alias_node ref, + string target: string ref); + +yaml_scalars (unique int scalar: @yaml_scalar_node ref, + int style: int ref, + string value: string ref); + +yaml_errors (unique int id: @yaml_error, + string message: string ref); + +yaml_locations(unique int locatable: @yaml_locatable ref, + int location: @location_default ref); + +@yaml_locatable = @yaml_node | @yaml_error; + +/*- Python dbscheme -*/ + +/* + * Line metrics + */ +py_codelines(int id : @py_scope ref, + int count : int ref); + +py_commentlines(int id : @py_scope ref, + int count : int ref); + +py_docstringlines(int id : @py_scope ref, + int count : int ref); + +py_alllines(int id : @py_scope ref, + int count : int ref); + +/**************************** + Python dbscheme +****************************/ + +@sourceline = @file | @py_Module | @xmllocatable; + +@location = @location_ast | @location_default ; + +locations_ast(unique int id: @location_ast, + int module: @py_Module ref, + int beginLine: int ref, + int beginColumn: int ref, + int endLine: int ref, + int endColumn: int ref); + +file_contents(unique int file: @file ref, string contents: string ref); + +py_module_path(int module: @py_Module ref, int file: @container ref); + +variable(unique int id : @py_variable, + int scope : @py_scope ref, + varchar(1) name : string ref); + +py_line_lengths(unique int id : @py_line, + int file: @py_Module ref, + int line : int ref, + int length : int ref); + +py_extracted_version(int module : @py_Module ref, + varchar(1) version : string ref); + +/* AUTO GENERATED PART STARTS HERE */ + + +/* AnnAssign.location = 0, location */ +/* AnnAssign.value = 1, expr */ +/* AnnAssign.annotation = 2, expr */ +/* AnnAssign.target = 3, expr */ + +/* Assert.location = 0, location */ +/* Assert.test = 1, expr */ +/* Assert.msg = 2, expr */ + +/* Assign.location = 0, location */ +/* Assign.value = 1, expr */ +/* Assign.targets = 2, expr_list */ + +/* AssignExpr.location = 0, location */ +/* AssignExpr.parenthesised = 1, bool */ +/* AssignExpr.value = 2, expr */ +/* AssignExpr.target = 3, expr */ + +/* Attribute.location = 0, location */ +/* Attribute.parenthesised = 1, bool */ +/* Attribute.value = 2, expr */ +/* Attribute.attr = 3, str */ +/* Attribute.ctx = 4, expr_context */ + +/* AugAssign.location = 0, location */ +/* AugAssign.operation = 1, BinOp */ + +/* Await.location = 0, location */ +/* Await.parenthesised = 1, bool */ +/* Await.value = 2, expr */ + +/* BinaryExpr.location = 0, location */ +/* BinaryExpr.parenthesised = 1, bool */ +/* BinaryExpr.left = 2, expr */ +/* BinaryExpr.op = 3, operator */ +/* BinaryExpr.right = 4, expr */ +/* BinaryExpr = AugAssign */ + +/* BoolExpr.location = 0, location */ +/* BoolExpr.parenthesised = 1, bool */ +/* BoolExpr.op = 2, boolop */ +/* BoolExpr.values = 3, expr_list */ + +/* Break.location = 0, location */ + +/* Bytes.location = 0, location */ +/* Bytes.parenthesised = 1, bool */ +/* Bytes.s = 2, bytes */ +/* Bytes.prefix = 3, bytes */ +/* Bytes.implicitly_concatenated_parts = 4, StringPart_list */ + +/* Call.location = 0, location */ +/* Call.parenthesised = 1, bool */ +/* Call.func = 2, expr */ +/* Call.positional_args = 3, expr_list */ +/* Call.named_args = 4, dict_item_list */ + +/* Case.location = 0, location */ +/* Case.pattern = 1, pattern */ +/* Case.guard = 2, expr */ +/* Case.body = 3, stmt_list */ + +/* Class.name = 0, str */ +/* Class.body = 1, stmt_list */ +/* Class = ClassExpr */ + +/* ClassExpr.location = 0, location */ +/* ClassExpr.parenthesised = 1, bool */ +/* ClassExpr.name = 2, str */ +/* ClassExpr.bases = 3, expr_list */ +/* ClassExpr.keywords = 4, dict_item_list */ +/* ClassExpr.inner_scope = 5, Class */ +/* ClassExpr.type_parameters = 6, type_parameter_list */ + +/* Compare.location = 0, location */ +/* Compare.parenthesised = 1, bool */ +/* Compare.left = 2, expr */ +/* Compare.ops = 3, cmpop_list */ +/* Compare.comparators = 4, expr_list */ + +/* Continue.location = 0, location */ + +/* Delete.location = 0, location */ +/* Delete.targets = 1, expr_list */ + +/* Dict.location = 0, location */ +/* Dict.parenthesised = 1, bool */ +/* Dict.items = 2, dict_item_list */ + +/* DictComp.location = 0, location */ +/* DictComp.parenthesised = 1, bool */ +/* DictComp.function = 2, Function */ +/* DictComp.iterable = 3, expr */ + +/* DictUnpacking.location = 0, location */ +/* DictUnpacking.value = 1, expr */ + +/* Ellipsis.location = 0, location */ +/* Ellipsis.parenthesised = 1, bool */ + +/* ExceptGroupStmt.location = 0, location */ +/* ExceptGroupStmt.type = 1, expr */ +/* ExceptGroupStmt.name = 2, expr */ +/* ExceptGroupStmt.body = 3, stmt_list */ + +/* ExceptStmt.location = 0, location */ +/* ExceptStmt.type = 1, expr */ +/* ExceptStmt.name = 2, expr */ +/* ExceptStmt.body = 3, stmt_list */ + +/* Exec.location = 0, location */ +/* Exec.body = 1, expr */ +/* Exec.globals = 2, expr */ +/* Exec.locals = 3, expr */ + +/* ExprStmt.location = 0, location */ +/* ExprStmt.value = 1, expr */ + +/* Filter.location = 0, location */ +/* Filter.parenthesised = 1, bool */ +/* Filter.value = 2, expr */ +/* Filter.filter = 3, expr */ + +/* For.location = 0, location */ +/* For.target = 1, expr */ +/* For.iter = 2, expr */ +/* For.body = 3, stmt_list */ +/* For.orelse = 4, stmt_list */ +/* For.is_async = 5, bool */ + +/* FormattedValue.location = 0, location */ +/* FormattedValue.parenthesised = 1, bool */ +/* FormattedValue.value = 2, expr */ +/* FormattedValue.conversion = 3, str */ +/* FormattedValue.format_spec = 4, JoinedStr */ + +/* Function.name = 0, str */ +/* Function.args = 1, parameter_list */ +/* Function.vararg = 2, expr */ +/* Function.kwonlyargs = 3, expr_list */ +/* Function.kwarg = 4, expr */ +/* Function.body = 5, stmt_list */ +/* Function.is_async = 6, bool */ +/* Function.type_parameters = 7, type_parameter_list */ +/* Function = FunctionParent */ + +/* FunctionExpr.location = 0, location */ +/* FunctionExpr.parenthesised = 1, bool */ +/* FunctionExpr.name = 2, str */ +/* FunctionExpr.args = 3, arguments */ +/* FunctionExpr.returns = 4, expr */ +/* FunctionExpr.inner_scope = 5, Function */ + +/* GeneratorExp.location = 0, location */ +/* GeneratorExp.parenthesised = 1, bool */ +/* GeneratorExp.function = 2, Function */ +/* GeneratorExp.iterable = 3, expr */ + +/* Global.location = 0, location */ +/* Global.names = 1, str_list */ + +/* Guard.location = 0, location */ +/* Guard.parenthesised = 1, bool */ +/* Guard.test = 2, expr */ + +/* If.location = 0, location */ +/* If.test = 1, expr */ +/* If.body = 2, stmt_list */ +/* If.orelse = 3, stmt_list */ + +/* IfExp.location = 0, location */ +/* IfExp.parenthesised = 1, bool */ +/* IfExp.test = 2, expr */ +/* IfExp.body = 3, expr */ +/* IfExp.orelse = 4, expr */ + +/* Import.location = 0, location */ +/* Import.names = 1, alias_list */ + +/* ImportExpr.location = 0, location */ +/* ImportExpr.parenthesised = 1, bool */ +/* ImportExpr.level = 2, int */ +/* ImportExpr.name = 3, str */ +/* ImportExpr.top = 4, bool */ + +/* ImportStar.location = 0, location */ +/* ImportStar.module = 1, expr */ + +/* ImportMember.location = 0, location */ +/* ImportMember.parenthesised = 1, bool */ +/* ImportMember.module = 2, expr */ +/* ImportMember.name = 3, str */ + +/* Fstring.location = 0, location */ +/* Fstring.parenthesised = 1, bool */ +/* Fstring.values = 2, expr_list */ +/* Fstring = FormattedValue */ + +/* JoinedTemplateString.location = 0, location */ +/* JoinedTemplateString.parenthesised = 1, bool */ +/* JoinedTemplateString.strings = 2, TemplateString_list */ + +/* KeyValuePair.location = 0, location */ +/* KeyValuePair.value = 1, expr */ +/* KeyValuePair.key = 2, expr */ + +/* Lambda.location = 0, location */ +/* Lambda.parenthesised = 1, bool */ +/* Lambda.args = 2, arguments */ +/* Lambda.inner_scope = 3, Function */ + +/* List.location = 0, location */ +/* List.parenthesised = 1, bool */ +/* List.elts = 2, expr_list */ +/* List.ctx = 3, expr_context */ + +/* ListComp.location = 0, location */ +/* ListComp.parenthesised = 1, bool */ +/* ListComp.function = 2, Function */ +/* ListComp.iterable = 3, expr */ +/* ListComp.generators = 4, comprehension_list */ +/* ListComp.elt = 5, expr */ + +/* MatchStmt.location = 0, location */ +/* MatchStmt.subject = 1, expr */ +/* MatchStmt.cases = 2, stmt_list */ + +/* MatchAsPattern.location = 0, location */ +/* MatchAsPattern.parenthesised = 1, bool */ +/* MatchAsPattern.pattern = 2, pattern */ +/* MatchAsPattern.alias = 3, expr */ + +/* MatchCapturePattern.location = 0, location */ +/* MatchCapturePattern.parenthesised = 1, bool */ +/* MatchCapturePattern.variable = 2, expr */ + +/* MatchClassPattern.location = 0, location */ +/* MatchClassPattern.parenthesised = 1, bool */ +/* MatchClassPattern.class = 2, expr */ +/* MatchClassPattern.class_name = 3, expr */ +/* MatchClassPattern.positional = 4, pattern_list */ +/* MatchClassPattern.keyword = 5, pattern_list */ + +/* MatchDoubleStarPattern.location = 0, location */ +/* MatchDoubleStarPattern.parenthesised = 1, bool */ +/* MatchDoubleStarPattern.target = 2, pattern */ + +/* MatchKeyValuePattern.location = 0, location */ +/* MatchKeyValuePattern.parenthesised = 1, bool */ +/* MatchKeyValuePattern.key = 2, pattern */ +/* MatchKeyValuePattern.value = 3, pattern */ + +/* MatchKeywordPattern.location = 0, location */ +/* MatchKeywordPattern.parenthesised = 1, bool */ +/* MatchKeywordPattern.attribute = 2, expr */ +/* MatchKeywordPattern.value = 3, pattern */ + +/* MatchLiteralPattern.location = 0, location */ +/* MatchLiteralPattern.parenthesised = 1, bool */ +/* MatchLiteralPattern.literal = 2, expr */ + +/* MatchMappingPattern.location = 0, location */ +/* MatchMappingPattern.parenthesised = 1, bool */ +/* MatchMappingPattern.mappings = 2, pattern_list */ + +/* MatchOrPattern.location = 0, location */ +/* MatchOrPattern.parenthesised = 1, bool */ +/* MatchOrPattern.patterns = 2, pattern_list */ + +/* MatchSequencePattern.location = 0, location */ +/* MatchSequencePattern.parenthesised = 1, bool */ +/* MatchSequencePattern.patterns = 2, pattern_list */ + +/* MatchStarPattern.location = 0, location */ +/* MatchStarPattern.parenthesised = 1, bool */ +/* MatchStarPattern.target = 2, pattern */ + +/* MatchValuePattern.location = 0, location */ +/* MatchValuePattern.parenthesised = 1, bool */ +/* MatchValuePattern.value = 2, expr */ + +/* MatchWildcardPattern.location = 0, location */ +/* MatchWildcardPattern.parenthesised = 1, bool */ + +/* Module.name = 0, str */ +/* Module.hash = 1, str */ +/* Module.body = 2, stmt_list */ +/* Module.kind = 3, str */ + +/* Name.location = 0, location */ +/* Name.parenthesised = 1, bool */ +/* Name.variable = 2, variable */ +/* Name.ctx = 3, expr_context */ +/* Name = ParameterList */ + +/* Nonlocal.location = 0, location */ +/* Nonlocal.names = 1, str_list */ + +/* Num.location = 0, location */ +/* Num.parenthesised = 1, bool */ +/* Num.n = 2, number */ +/* Num.text = 3, number */ + +/* ParamSpec.location = 0, location */ +/* ParamSpec.name = 1, expr */ +/* ParamSpec.default = 2, expr */ + +/* Pass.location = 0, location */ + +/* PlaceHolder.location = 0, location */ +/* PlaceHolder.parenthesised = 1, bool */ +/* PlaceHolder.variable = 2, variable */ +/* PlaceHolder.ctx = 3, expr_context */ + +/* Print.location = 0, location */ +/* Print.dest = 1, expr */ +/* Print.values = 2, expr_list */ +/* Print.nl = 3, bool */ + +/* Raise.location = 0, location */ +/* Raise.exc = 1, expr */ +/* Raise.cause = 2, expr */ +/* Raise.type = 3, expr */ +/* Raise.inst = 4, expr */ +/* Raise.tback = 5, expr */ + +/* Repr.location = 0, location */ +/* Repr.parenthesised = 1, bool */ +/* Repr.value = 2, expr */ + +/* Return.location = 0, location */ +/* Return.value = 1, expr */ + +/* Set.location = 0, location */ +/* Set.parenthesised = 1, bool */ +/* Set.elts = 2, expr_list */ + +/* SetComp.location = 0, location */ +/* SetComp.parenthesised = 1, bool */ +/* SetComp.function = 2, Function */ +/* SetComp.iterable = 3, expr */ + +/* Slice.location = 0, location */ +/* Slice.parenthesised = 1, bool */ +/* Slice.start = 2, expr */ +/* Slice.stop = 3, expr */ +/* Slice.step = 4, expr */ + +/* SpecialOperation.location = 0, location */ +/* SpecialOperation.parenthesised = 1, bool */ +/* SpecialOperation.name = 2, str */ +/* SpecialOperation.arguments = 3, expr_list */ + +/* Starred.location = 0, location */ +/* Starred.parenthesised = 1, bool */ +/* Starred.value = 2, expr */ +/* Starred.ctx = 3, expr_context */ + +/* Str.location = 0, location */ +/* Str.parenthesised = 1, bool */ +/* Str.s = 2, str */ +/* Str.prefix = 3, str */ +/* Str.implicitly_concatenated_parts = 4, StringPart_list */ + +/* StringPart.text = 0, str */ +/* StringPart.location = 1, location */ +/* StringPart = StringPartList */ +/* StringPartList = BytesOrStr */ + +/* Subscript.location = 0, location */ +/* Subscript.parenthesised = 1, bool */ +/* Subscript.value = 2, expr */ +/* Subscript.index = 3, expr */ +/* Subscript.ctx = 4, expr_context */ + +/* TemplateDottedNotation.location = 0, location */ +/* TemplateDottedNotation.parenthesised = 1, bool */ +/* TemplateDottedNotation.value = 2, expr */ +/* TemplateDottedNotation.attr = 3, str */ +/* TemplateDottedNotation.ctx = 4, expr_context */ + +/* TemplateString.location = 0, location */ +/* TemplateString.parenthesised = 1, bool */ +/* TemplateString.prefix = 2, str */ +/* TemplateString.values = 3, expr_list */ +/* TemplateString = TemplateStringList */ + +/* TemplateStringPart.location = 0, location */ +/* TemplateStringPart.parenthesised = 1, bool */ +/* TemplateStringPart.text = 2, str */ +/* TemplateStringList = JoinedTemplateString */ + +/* TemplateWrite.location = 0, location */ +/* TemplateWrite.value = 1, expr */ + +/* Try.location = 0, location */ +/* Try.body = 1, stmt_list */ +/* Try.orelse = 2, stmt_list */ +/* Try.handlers = 3, stmt_list */ +/* Try.finalbody = 4, stmt_list */ + +/* Tuple.location = 0, location */ +/* Tuple.parenthesised = 1, bool */ +/* Tuple.elts = 2, expr_list */ +/* Tuple.ctx = 3, expr_context */ +/* Tuple = ParameterList */ + +/* TypeAlias.location = 0, location */ +/* TypeAlias.name = 1, expr */ +/* TypeAlias.type_parameters = 2, type_parameter_list */ +/* TypeAlias.value = 3, expr */ + +/* TypeVar.location = 0, location */ +/* TypeVar.name = 1, expr */ +/* TypeVar.bound = 2, expr */ +/* TypeVar.default = 3, expr */ + +/* TypeVarTuple.location = 0, location */ +/* TypeVarTuple.name = 1, expr */ +/* TypeVarTuple.default = 2, expr */ + +/* UnaryExpr.location = 0, location */ +/* UnaryExpr.parenthesised = 1, bool */ +/* UnaryExpr.op = 2, unaryop */ +/* UnaryExpr.operand = 3, expr */ + +/* While.location = 0, location */ +/* While.test = 1, expr */ +/* While.body = 2, stmt_list */ +/* While.orelse = 3, stmt_list */ + +/* With.location = 0, location */ +/* With.context_expr = 1, expr */ +/* With.optional_vars = 2, expr */ +/* With.body = 3, stmt_list */ +/* With.is_async = 4, bool */ + +/* Yield.location = 0, location */ +/* Yield.parenthesised = 1, bool */ +/* Yield.value = 2, expr */ + +/* YieldFrom.location = 0, location */ +/* YieldFrom.parenthesised = 1, bool */ +/* YieldFrom.value = 2, expr */ + +/* Alias.value = 0, expr */ +/* Alias.asname = 1, expr */ +/* Alias = AliasList */ +/* AliasList = Import */ + +/* Arguments.kw_defaults = 0, expr_list */ +/* Arguments.defaults = 1, expr_list */ +/* Arguments.annotations = 2, expr_list */ +/* Arguments.varargannotation = 3, expr */ +/* Arguments.kwargannotation = 4, expr */ +/* Arguments.kw_annotations = 5, expr_list */ +/* Arguments = ArgumentsParent */ +/* boolean = BoolParent */ +/* Boolop = BoolExpr */ +/* string = Bytes */ +/* Cmpop = CmpopList */ +/* CmpopList = Compare */ + +/* Comprehension.location = 0, location */ +/* Comprehension.iter = 1, expr */ +/* Comprehension.target = 2, expr */ +/* Comprehension.ifs = 3, expr_list */ +/* Comprehension = ComprehensionList */ +/* ComprehensionList = ListComp */ +/* DictItem = DictItemList */ +/* DictItemList = DictItemListParent */ + +/* Expr.location = 0, location */ +/* Expr.parenthesised = 1, bool */ +/* Expr = ExprParent */ +/* ExprContext = ExprContextParent */ +/* ExprList = ExprListParent */ +/* int = ImportExpr */ + +/* Keyword.location = 0, location */ +/* Keyword.value = 1, expr */ +/* Keyword.arg = 2, str */ +/* Location = LocationParent */ +/* string = Num */ +/* Operator = BinaryExpr */ +/* ParameterList = Function */ + +/* Pattern.location = 0, location */ +/* Pattern.parenthesised = 1, bool */ +/* Pattern = PatternParent */ +/* PatternList = PatternListParent */ + +/* Stmt.location = 0, location */ +/* Stmt = StmtList */ +/* StmtList = StmtListParent */ +/* string = StrParent */ +/* StringList = StrListParent */ + +/* TypeParameter.location = 0, location */ +/* TypeParameter = TypeParameterList */ +/* TypeParameterList = TypeParameterListParent */ +/* Unaryop = UnaryExpr */ +/* Variable = VariableParent */ +py_Classes(unique int id : @py_Class, + unique int parent : @py_ClassExpr ref); + +py_Functions(unique int id : @py_Function, + unique int parent : @py_Function_parent ref); + +py_Modules(unique int id : @py_Module); + +py_StringParts(unique int id : @py_StringPart, + int parent : @py_StringPart_list ref, + int idx : int ref); + +py_StringPart_lists(unique int id : @py_StringPart_list, + unique int parent : @py_Bytes_or_Str ref); + +py_TemplateString_lists(unique int id : @py_TemplateString_list, + unique int parent : @py_JoinedTemplateString ref); + +py_aliases(unique int id : @py_alias, + int parent : @py_alias_list ref, + int idx : int ref); + +py_alias_lists(unique int id : @py_alias_list, + unique int parent : @py_Import ref); + +py_arguments(unique int id : @py_arguments, + unique int parent : @py_arguments_parent ref); + +py_bools(int parent : @py_bool_parent ref, + int idx : int ref); + +py_boolops(unique int id : @py_boolop, + int kind: int ref, + unique int parent : @py_BoolExpr ref); + +py_bytes(varchar(1) id : string ref, + int parent : @py_Bytes ref, + int idx : int ref); + +py_cmpops(unique int id : @py_cmpop, + int kind: int ref, + int parent : @py_cmpop_list ref, + int idx : int ref); + +py_cmpop_lists(unique int id : @py_cmpop_list, + unique int parent : @py_Compare ref); + +py_comprehensions(unique int id : @py_comprehension, + int parent : @py_comprehension_list ref, + int idx : int ref); + +py_comprehension_lists(unique int id : @py_comprehension_list, + unique int parent : @py_ListComp ref); + +py_dict_items(unique int id : @py_dict_item, + int kind: int ref, + int parent : @py_dict_item_list ref, + int idx : int ref); + +py_dict_item_lists(unique int id : @py_dict_item_list, + unique int parent : @py_dict_item_list_parent ref); + +py_exprs(unique int id : @py_expr, + int kind: int ref, + int parent : @py_expr_parent ref, + int idx : int ref); + +py_expr_contexts(unique int id : @py_expr_context, + int kind: int ref, + unique int parent : @py_expr_context_parent ref); + +py_expr_lists(unique int id : @py_expr_list, + int parent : @py_expr_list_parent ref, + int idx : int ref); + +py_ints(int id : int ref, + unique int parent : @py_ImportExpr ref); + +py_locations(unique int id : @location ref, + unique int parent : @py_location_parent ref); + +py_numbers(varchar(1) id : string ref, + int parent : @py_Num ref, + int idx : int ref); + +py_operators(unique int id : @py_operator, + int kind: int ref, + unique int parent : @py_BinaryExpr ref); + +py_parameter_lists(unique int id : @py_parameter_list, + unique int parent : @py_Function ref); + +py_patterns(unique int id : @py_pattern, + int kind: int ref, + int parent : @py_pattern_parent ref, + int idx : int ref); + +py_pattern_lists(unique int id : @py_pattern_list, + int parent : @py_pattern_list_parent ref, + int idx : int ref); + +py_stmts(unique int id : @py_stmt, + int kind: int ref, + int parent : @py_stmt_list ref, + int idx : int ref); + +py_stmt_lists(unique int id : @py_stmt_list, + int parent : @py_stmt_list_parent ref, + int idx : int ref); + +py_strs(varchar(1) id : string ref, + int parent : @py_str_parent ref, + int idx : int ref); + +py_str_lists(unique int id : @py_str_list, + unique int parent : @py_str_list_parent ref); + +py_type_parameters(unique int id : @py_type_parameter, + int kind: int ref, + int parent : @py_type_parameter_list ref, + int idx : int ref); + +py_type_parameter_lists(unique int id : @py_type_parameter_list, + unique int parent : @py_type_parameter_list_parent ref); + +py_unaryops(unique int id : @py_unaryop, + int kind: int ref, + unique int parent : @py_UnaryExpr ref); + +py_variables(int id : @py_variable ref, + unique int parent : @py_variable_parent ref); + +case @py_boolop.kind of + 0 = @py_And +| 1 = @py_Or; + +case @py_cmpop.kind of + 0 = @py_Eq +| 1 = @py_Gt +| 2 = @py_GtE +| 3 = @py_In +| 4 = @py_Is +| 5 = @py_IsNot +| 6 = @py_Lt +| 7 = @py_LtE +| 8 = @py_NotEq +| 9 = @py_NotIn; + +case @py_dict_item.kind of + 0 = @py_DictUnpacking +| 1 = @py_KeyValuePair +| 2 = @py_keyword; + +case @py_expr.kind of + 0 = @py_Attribute +| 1 = @py_BinaryExpr +| 2 = @py_BoolExpr +| 3 = @py_Bytes +| 4 = @py_Call +| 5 = @py_ClassExpr +| 6 = @py_Compare +| 7 = @py_Dict +| 8 = @py_DictComp +| 9 = @py_Ellipsis +| 10 = @py_FunctionExpr +| 11 = @py_GeneratorExp +| 12 = @py_IfExp +| 13 = @py_ImportExpr +| 14 = @py_ImportMember +| 15 = @py_Lambda +| 16 = @py_List +| 17 = @py_ListComp +| 18 = @py_Guard +| 19 = @py_Name +| 20 = @py_Num +| 21 = @py_Repr +| 22 = @py_Set +| 23 = @py_SetComp +| 24 = @py_Slice +| 25 = @py_Starred +| 26 = @py_Str +| 27 = @py_Subscript +| 28 = @py_Tuple +| 29 = @py_UnaryExpr +| 30 = @py_Yield +| 31 = @py_YieldFrom +| 32 = @py_TemplateDottedNotation +| 33 = @py_Filter +| 34 = @py_PlaceHolder +| 35 = @py_Await +| 36 = @py_Fstring +| 37 = @py_FormattedValue +| 38 = @py_AssignExpr +| 39 = @py_SpecialOperation +| 40 = @py_TemplateString +| 41 = @py_JoinedTemplateString +| 42 = @py_TemplateStringPart; + +case @py_expr_context.kind of + 0 = @py_AugLoad +| 1 = @py_AugStore +| 2 = @py_Del +| 3 = @py_Load +| 4 = @py_Param +| 5 = @py_Store; + +case @py_operator.kind of + 0 = @py_Add +| 1 = @py_BitAnd +| 2 = @py_BitOr +| 3 = @py_BitXor +| 4 = @py_Div +| 5 = @py_FloorDiv +| 6 = @py_LShift +| 7 = @py_Mod +| 8 = @py_Mult +| 9 = @py_Pow +| 10 = @py_RShift +| 11 = @py_Sub +| 12 = @py_MatMult; + +case @py_pattern.kind of + 0 = @py_MatchAsPattern +| 1 = @py_MatchOrPattern +| 2 = @py_MatchLiteralPattern +| 3 = @py_MatchCapturePattern +| 4 = @py_MatchWildcardPattern +| 5 = @py_MatchValuePattern +| 6 = @py_MatchSequencePattern +| 7 = @py_MatchStarPattern +| 8 = @py_MatchMappingPattern +| 9 = @py_MatchDoubleStarPattern +| 10 = @py_MatchKeyValuePattern +| 11 = @py_MatchClassPattern +| 12 = @py_MatchKeywordPattern; + +case @py_stmt.kind of + 0 = @py_Assert +| 1 = @py_Assign +| 2 = @py_AugAssign +| 3 = @py_Break +| 4 = @py_Continue +| 5 = @py_Delete +| 6 = @py_ExceptStmt +| 7 = @py_ExceptGroupStmt +| 8 = @py_Exec +| 9 = @py_Expr_stmt +| 10 = @py_For +| 11 = @py_Global +| 12 = @py_If +| 13 = @py_Import +| 14 = @py_ImportStar +| 15 = @py_MatchStmt +| 16 = @py_Case +| 17 = @py_Nonlocal +| 18 = @py_Pass +| 19 = @py_Print +| 20 = @py_Raise +| 21 = @py_Return +| 22 = @py_Try +| 23 = @py_While +| 24 = @py_With +| 25 = @py_TemplateWrite +| 26 = @py_AnnAssign +| 27 = @py_TypeAlias; + +case @py_type_parameter.kind of + 0 = @py_ParamSpec +| 1 = @py_TypeVar +| 2 = @py_TypeVarTuple; + +case @py_unaryop.kind of + 0 = @py_Invert +| 1 = @py_Not +| 2 = @py_UAdd +| 3 = @py_USub; + +@py_Bytes_or_Str = @py_Bytes | @py_Str; + +@py_Function_parent = @py_DictComp | @py_FunctionExpr | @py_GeneratorExp | @py_Lambda | @py_ListComp | @py_SetComp; + +@py_arguments_parent = @py_FunctionExpr | @py_Lambda; + +@py_ast_node = @py_Class | @py_Function | @py_Module | @py_StringPart | @py_comprehension | @py_dict_item | @py_expr | @py_pattern | @py_stmt | @py_type_parameter; + +@py_bool_parent = @py_For | @py_Function | @py_Print | @py_With | @py_expr | @py_pattern; + +@py_dict_item_list_parent = @py_Call | @py_ClassExpr | @py_Dict; + +@py_expr_context_parent = @py_Attribute | @py_List | @py_Name | @py_PlaceHolder | @py_Starred | @py_Subscript | @py_TemplateDottedNotation | @py_Tuple; + +@py_expr_list_parent = @py_Assign | @py_BoolExpr | @py_Call | @py_ClassExpr | @py_Compare | @py_Delete | @py_Fstring | @py_Function | @py_List | @py_Print | @py_Set | @py_SpecialOperation | @py_TemplateString | @py_Tuple | @py_arguments | @py_comprehension; + +@py_expr_or_stmt = @py_expr | @py_stmt; + +@py_expr_parent = @py_AnnAssign | @py_Assert | @py_Assign | @py_AssignExpr | @py_Attribute | @py_AugAssign | @py_Await | @py_BinaryExpr | @py_Call | @py_Case | @py_Compare | @py_DictComp | @py_DictUnpacking | @py_ExceptGroupStmt | @py_ExceptStmt | @py_Exec | @py_Expr_stmt | @py_Filter | @py_For | @py_FormattedValue | @py_Function | @py_FunctionExpr | @py_GeneratorExp | @py_Guard | @py_If | @py_IfExp | @py_ImportMember | @py_ImportStar | @py_KeyValuePair | @py_ListComp | @py_MatchAsPattern | @py_MatchCapturePattern | @py_MatchClassPattern | @py_MatchKeywordPattern | @py_MatchLiteralPattern | @py_MatchStmt | @py_MatchValuePattern | @py_ParamSpec | @py_Print | @py_Raise | @py_Repr | @py_Return | @py_SetComp | @py_Slice | @py_Starred | @py_Subscript | @py_TemplateDottedNotation | @py_TemplateString_list | @py_TemplateWrite | @py_TypeAlias | @py_TypeVar | @py_TypeVarTuple | @py_UnaryExpr | @py_While | @py_With | @py_Yield | @py_YieldFrom | @py_alias | @py_arguments | @py_comprehension | @py_expr_list | @py_keyword | @py_parameter_list; + +@py_location_parent = @py_DictUnpacking | @py_KeyValuePair | @py_StringPart | @py_comprehension | @py_expr | @py_keyword | @py_pattern | @py_stmt | @py_type_parameter; + +@py_parameter = @py_Name | @py_Tuple; + +@py_pattern_list_parent = @py_MatchClassPattern | @py_MatchMappingPattern | @py_MatchOrPattern | @py_MatchSequencePattern; + +@py_pattern_parent = @py_Case | @py_MatchAsPattern | @py_MatchDoubleStarPattern | @py_MatchKeyValuePattern | @py_MatchKeywordPattern | @py_MatchStarPattern | @py_pattern_list; + +@py_scope = @py_Class | @py_Function | @py_Module; + +@py_stmt_list_parent = @py_Case | @py_Class | @py_ExceptGroupStmt | @py_ExceptStmt | @py_For | @py_Function | @py_If | @py_MatchStmt | @py_Module | @py_Try | @py_While | @py_With; + +@py_str_list_parent = @py_Global | @py_Nonlocal; + +@py_str_parent = @py_Attribute | @py_Class | @py_ClassExpr | @py_FormattedValue | @py_Function | @py_FunctionExpr | @py_ImportExpr | @py_ImportMember | @py_Module | @py_SpecialOperation | @py_Str | @py_StringPart | @py_TemplateDottedNotation | @py_TemplateString | @py_TemplateStringPart | @py_keyword | @py_str_list; + +@py_type_parameter_list_parent = @py_ClassExpr | @py_Function | @py_TypeAlias; + +@py_variable_parent = @py_Name | @py_PlaceHolder; + + +/* + * End of auto-generated part + */ + + + +/* Map relative names to absolute names for imports */ +py_absolute_names(int module : @py_Module ref, + varchar(1) relname : string ref, + varchar(1) absname : string ref); + +py_exports(int id : @py_Module ref, + varchar(1) name : string ref); + +/* Successor information */ +py_successors(int predecessor : @py_flow_node ref, + int successor : @py_flow_node ref); + +py_true_successors(int predecessor : @py_flow_node ref, + int successor : @py_flow_node ref); + +py_exception_successors(int predecessor : @py_flow_node ref, + int successor : @py_flow_node ref); + +py_false_successors(int predecessor : @py_flow_node ref, + int successor : @py_flow_node ref); + +py_flow_bb_node(unique int flownode : @py_flow_node, + int realnode : @py_ast_node ref, + int basicblock : @py_flow_node ref, + int index : int ref); + +py_scope_flow(int flow : @py_flow_node ref, + int scope : @py_scope ref, + int kind : int ref); + +py_idoms(unique int node : @py_flow_node ref, + int immediate_dominator : @py_flow_node ref); + +py_ssa_phi(int phi : @py_ssa_var ref, + int arg: @py_ssa_var ref); + +py_ssa_var(unique int id : @py_ssa_var, + int var : @py_variable ref); + +py_ssa_use(int node: @py_flow_node ref, + int var : @py_ssa_var ref); + +py_ssa_defn(unique int id : @py_ssa_var ref, + int node: @py_flow_node ref); + +@py_base_var = @py_variable | @py_ssa_var; + +py_scopes(unique int node : @py_expr_or_stmt ref, + int scope : @py_scope ref); + +py_scope_location(unique int id : @location ref, + unique int scope : @py_scope ref); + +py_flags_versioned(varchar(1) name : string ref, + varchar(1) value : string ref, + varchar(1) version : string ref); + +py_syntax_error_versioned(unique int id : @location ref, + varchar(1) message : string ref, + varchar(1) version : string ref); + +py_comments(unique int id : @py_comment, + varchar(1) text : string ref, + unique int location : @location ref); + +/* Type information support */ + +py_cobjects(unique int obj : @py_cobject); + +py_cobjecttypes(unique int obj : @py_cobject ref, + int typeof : @py_cobject ref); + +py_cobjectnames(unique int obj : @py_cobject ref, + varchar(1) name : string ref); + +/* Kind should be 0 for introspection, > 0 from source, as follows: + 1 from C extension source + */ +py_cobject_sources(int obj : @py_cobject ref, + int kind : int ref); + +py_cmembers_versioned(int object : @py_cobject ref, + varchar(1) name : string ref, + int member : @py_cobject ref, + varchar(1) version : string ref); + +py_citems(int object : @py_cobject ref, + int index : int ref, + int member : @py_cobject ref); + +ext_argtype(int funcid : @py_object ref, + int arg : int ref, + int typeid : @py_object ref); + +ext_rettype(int funcid : @py_object ref, + int typeid : @py_object ref); + +ext_proptype(int propid : @py_object ref, + int typeid : @py_object ref); + +ext_argreturn(int funcid : @py_object ref, + int arg : int ref); + +py_special_objects(unique int obj : @py_cobject ref, + unique varchar(1) name : string ref); + +py_decorated_object(int object : @py_object ref, + int level: int ref); + +@py_object = @py_cobject | @py_flow_node; + +@py_source_element = @py_ast_node | @container; + +/** The union of all Python database entities */ +@top = + @py_source_element | @py_object | @py_base_var | @location | @py_line | @py_comment | + @py_expr_parent | @py_expr_context | + @py_operator | @py_boolop | @py_cmpop | @py_unaryop | + @py_cmpop_list | @py_alias_list | @py_StringPart_list | @py_comprehension_list | @py_dict_item_list | @py_pattern_list | @py_stmt_list | @py_str_list | @py_type_parameter_list | + @externalDefect | @externalMetric | @externalDataElement | @duplication_or_similarity | @svnentry | + @xmllocatable | @yaml_locatable; diff --git a/python/downgrades/eb5fc917c79bb23ce2de4a022f3e566d57a91be9/upgrade.properties b/python/downgrades/eb5fc917c79bb23ce2de4a022f3e566d57a91be9/upgrade.properties new file mode 100644 index 000000000000..4b9f991c51a3 --- /dev/null +++ b/python/downgrades/eb5fc917c79bb23ce2de4a022f3e566d57a91be9/upgrade.properties @@ -0,0 +1,3 @@ +description: Remove is_lazy field from Import and ImportStar (downgrade PEP 810 lazy imports) +compatibility: backwards +py_bools.rel: run py_bools.qlo diff --git a/python/extractor/semmle/python/master.py b/python/extractor/semmle/python/master.py index 2c17de4e14cf..adb8d5c8a0d3 100755 --- a/python/extractor/semmle/python/master.py +++ b/python/extractor/semmle/python/master.py @@ -334,9 +334,11 @@ IfExp.field('orelse', expr, 'if-false expression') Import.field('names', alias_list, 'alias list') +Import.field('is_lazy', bool_, 'lazy') ImportFrom.set_name('ImportStar') ImportFrom.field('module', expr) +ImportFrom.field('is_lazy', bool_, 'lazy') ImportMember.field('module', expr) ImportMember.field('name', string) diff --git a/python/ql/lib/semmle/python/AstGenerated.qll b/python/ql/lib/semmle/python/AstGenerated.qll index 8805a43bec38..056e727845c9 100644 --- a/python/ql/lib/semmle/python/AstGenerated.qll +++ b/python/ql/lib/semmle/python/AstGenerated.qll @@ -698,6 +698,9 @@ class Import_ extends @py_Import, Stmt { /** Gets an alias of this import statement. */ Alias getAName() { result = this.getNames().getAnItem() } + /** Whether the lazy property of this import statement is true. */ + predicate isLazy() { py_bools(this, 2) } + override string toString() { result = "Import" } } @@ -720,6 +723,9 @@ class ImportStar_ extends @py_ImportStar, Stmt { /** Gets the module of this import * statement. */ Expr getModule() { py_exprs(result, _, this, 1) } + /** Whether the lazy property of this import * statement is true. */ + predicate isLazy() { py_bools(this, 2) } + override string toString() { result = "ImportStar" } } diff --git a/python/ql/lib/semmlecode.python.dbscheme b/python/ql/lib/semmlecode.python.dbscheme index 279cbb08d387..eb5fc917c79b 100644 --- a/python/ql/lib/semmlecode.python.dbscheme +++ b/python/ql/lib/semmlecode.python.dbscheme @@ -517,6 +517,7 @@ py_extracted_version(int module : @py_Module ref, /* Import.location = 0, location */ /* Import.names = 1, alias_list */ +/* Import.is_lazy = 2, bool */ /* ImportExpr.location = 0, location */ /* ImportExpr.parenthesised = 1, bool */ @@ -526,6 +527,7 @@ py_extracted_version(int module : @py_Module ref, /* ImportStar.location = 0, location */ /* ImportStar.module = 1, expr */ +/* ImportStar.is_lazy = 2, bool */ /* ImportMember.location = 0, location */ /* ImportMember.parenthesised = 1, bool */ @@ -1127,7 +1129,7 @@ case @py_unaryop.kind of @py_ast_node = @py_Class | @py_Function | @py_Module | @py_StringPart | @py_comprehension | @py_dict_item | @py_expr | @py_pattern | @py_stmt | @py_type_parameter; -@py_bool_parent = @py_For | @py_Function | @py_Print | @py_With | @py_expr | @py_pattern; +@py_bool_parent = @py_For | @py_Function | @py_Import | @py_ImportStar | @py_Print | @py_With | @py_expr | @py_pattern; @py_dict_item_list_parent = @py_Call | @py_ClassExpr | @py_Dict; diff --git a/python/ql/lib/upgrades/279cbb08d387ecd57ac177e87c94cfd5ca62f792/old.dbscheme b/python/ql/lib/upgrades/279cbb08d387ecd57ac177e87c94cfd5ca62f792/old.dbscheme new file mode 100644 index 000000000000..279cbb08d387 --- /dev/null +++ b/python/ql/lib/upgrades/279cbb08d387ecd57ac177e87c94cfd5ca62f792/old.dbscheme @@ -0,0 +1,1289 @@ +/* + * This dbscheme is auto-generated by 'semmle/dbscheme_gen.py'. + * Run "make dbscheme" in python/extractor/ to regenerate. + * WARNING: Any modifications to this file will be lost. + * Relations can be changed by modifying master.py or + * by adding rules to dbscheme.template + */ + +/* This is a dummy line to alter the dbscheme, so we can make a database upgrade + * without actually changing any of the dbscheme predicates. It contains a date + * to allow for such updates in the future as well. + * + * 2020-07-02 + * + * DO NOT remove this comment carelessly, since it can revert the dbscheme back to a + * previously seen state (matching a previously seen SHA), which would make the upgrade + * mechanism not work properly. + */ + +/*- DEPRECATED: External defects and metrics -*/ + +externalDefects( + unique int id : @externalDefect, + varchar(900) queryPath : string ref, + int location : @location ref, + varchar(900) message : string ref, + float severity : float ref +); + +externalMetrics( + unique int id : @externalMetric, + varchar(900) queryPath : string ref, + int location : @location ref, + float value : float ref +); + +/*- External data -*/ + +/** + * External data, loaded from CSV files during snapshot creation. See + * [Tutorial: Incorporating external data](https://help.semmle.com/wiki/display/SD/Tutorial%3A+Incorporating+external+data) + * for more information. + */ +externalData( + int id : @externalDataElement, + string path : string ref, + int column: int ref, + string value : string ref +); + +/*- Database metadata -*/ + +/** + * The CLI will automatically emit applicable tuples for this table, + * such as `databaseMetadata("isOverlay", "true")` when building an + * overlay database. + */ +databaseMetadata( + string metadataKey: string ref, + string value: string ref +); + +/*- Overlay support -*/ + +/** + * The CLI will automatically emit tuples for each new/modified/deleted file + * when building an overlay database. + */ +overlayChangedFiles( + string path: string ref +); + +/*- DEPRECATED: Snapshot date -*/ + +snapshotDate(unique date snapshotDate : date ref); + +/*- Source location prefix -*/ + +/** + * The source location of the snapshot. + */ +sourceLocationPrefix(string prefix : string ref); + +/*- DEPRECATED: Duplicate code -*/ + +duplicateCode( + unique int id : @duplication, + string relativePath : string ref, + int equivClass : int ref +); + +similarCode( + unique int id : @similarity, + string relativePath : string ref, + int equivClass : int ref +); + +@duplication_or_similarity = @duplication | @similarity + +tokens( + int id : @duplication_or_similarity ref, + int offset : int ref, + int beginLine : int ref, + int beginColumn : int ref, + int endLine : int ref, + int endColumn : int ref +); + +/*- DEPRECATED: Version control data -*/ + +svnentries( + unique int id : @svnentry, + string revision : string ref, + string author : string ref, + date revisionDate : date ref, + int changeSize : int ref +) + +svnaffectedfiles( + int id : @svnentry ref, + int file : @file ref, + string action : string ref +) + +svnentrymsg( + unique int id : @svnentry ref, + string message : string ref +) + +svnchurn( + int commit : @svnentry ref, + int file : @file ref, + int addedLines : int ref, + int deletedLines : int ref +) + +/*- Lines of code -*/ + +numlines( + int element_id: @sourceline ref, + int num_lines: int ref, + int num_code: int ref, + int num_comment: int ref +); + +/*- Files and folders -*/ + +/** + * The location of an element. + * The location spans column `startcolumn` of line `startline` to + * column `endcolumn` of line `endline` in file `file`. + * For more information, see + * [Locations](https://codeql.github.com/docs/writing-codeql-queries/providing-locations-in-codeql-queries/). + */ +locations_default( + unique int id: @location_default, + int file: @file ref, + int beginLine: int ref, + int beginColumn: int ref, + int endLine: int ref, + int endColumn: int ref +); + +files( + unique int id: @file, + string name: string ref +); + +folders( + unique int id: @folder, + string name: string ref +); + +@container = @file | @folder + +containerparent( + int parent: @container ref, + unique int child: @container ref +); + +/*- XML Files -*/ + +xmlEncoding( + unique int id: @file ref, + string encoding: string ref +); + +xmlDTDs( + unique int id: @xmldtd, + string root: string ref, + string publicId: string ref, + string systemId: string ref, + int fileid: @file ref +); + +xmlElements( + unique int id: @xmlelement, + string name: string ref, + int parentid: @xmlparent ref, + int idx: int ref, + int fileid: @file ref +); + +xmlAttrs( + unique int id: @xmlattribute, + int elementid: @xmlelement ref, + string name: string ref, + string value: string ref, + int idx: int ref, + int fileid: @file ref +); + +xmlNs( + int id: @xmlnamespace, + string prefixName: string ref, + string URI: string ref, + int fileid: @file ref +); + +xmlHasNs( + int elementId: @xmlnamespaceable ref, + int nsId: @xmlnamespace ref, + int fileid: @file ref +); + +xmlComments( + unique int id: @xmlcomment, + string text: string ref, + int parentid: @xmlparent ref, + int fileid: @file ref +); + +xmlChars( + unique int id: @xmlcharacters, + string text: string ref, + int parentid: @xmlparent ref, + int idx: int ref, + int isCDATA: int ref, + int fileid: @file ref +); + +@xmlparent = @file | @xmlelement; +@xmlnamespaceable = @xmlelement | @xmlattribute; + +xmllocations( + int xmlElement: @xmllocatable ref, + int location: @location_default ref +); + +@xmllocatable = @xmlcharacters | @xmlelement | @xmlcomment | @xmlattribute | @xmldtd | @file | @xmlnamespace; + +/*- YAML -*/ + +#keyset[parent, idx] +yaml (unique int id: @yaml_node, + int kind: int ref, + int parent: @yaml_node_parent ref, + int idx: int ref, + string tag: string ref, + string tostring: string ref); + +case @yaml_node.kind of + 0 = @yaml_scalar_node +| 1 = @yaml_mapping_node +| 2 = @yaml_sequence_node +| 3 = @yaml_alias_node +; + +@yaml_collection_node = @yaml_mapping_node | @yaml_sequence_node; + +@yaml_node_parent = @yaml_collection_node | @file; + +yaml_anchors (unique int node: @yaml_node ref, + string anchor: string ref); + +yaml_aliases (unique int alias: @yaml_alias_node ref, + string target: string ref); + +yaml_scalars (unique int scalar: @yaml_scalar_node ref, + int style: int ref, + string value: string ref); + +yaml_errors (unique int id: @yaml_error, + string message: string ref); + +yaml_locations(unique int locatable: @yaml_locatable ref, + int location: @location_default ref); + +@yaml_locatable = @yaml_node | @yaml_error; + +/*- Python dbscheme -*/ + +/* + * Line metrics + */ +py_codelines(int id : @py_scope ref, + int count : int ref); + +py_commentlines(int id : @py_scope ref, + int count : int ref); + +py_docstringlines(int id : @py_scope ref, + int count : int ref); + +py_alllines(int id : @py_scope ref, + int count : int ref); + +/**************************** + Python dbscheme +****************************/ + +@sourceline = @file | @py_Module | @xmllocatable; + +@location = @location_ast | @location_default ; + +locations_ast(unique int id: @location_ast, + int module: @py_Module ref, + int beginLine: int ref, + int beginColumn: int ref, + int endLine: int ref, + int endColumn: int ref); + +file_contents(unique int file: @file ref, string contents: string ref); + +py_module_path(int module: @py_Module ref, int file: @container ref); + +variable(unique int id : @py_variable, + int scope : @py_scope ref, + varchar(1) name : string ref); + +py_line_lengths(unique int id : @py_line, + int file: @py_Module ref, + int line : int ref, + int length : int ref); + +py_extracted_version(int module : @py_Module ref, + varchar(1) version : string ref); + +/* AUTO GENERATED PART STARTS HERE */ + + +/* AnnAssign.location = 0, location */ +/* AnnAssign.value = 1, expr */ +/* AnnAssign.annotation = 2, expr */ +/* AnnAssign.target = 3, expr */ + +/* Assert.location = 0, location */ +/* Assert.test = 1, expr */ +/* Assert.msg = 2, expr */ + +/* Assign.location = 0, location */ +/* Assign.value = 1, expr */ +/* Assign.targets = 2, expr_list */ + +/* AssignExpr.location = 0, location */ +/* AssignExpr.parenthesised = 1, bool */ +/* AssignExpr.value = 2, expr */ +/* AssignExpr.target = 3, expr */ + +/* Attribute.location = 0, location */ +/* Attribute.parenthesised = 1, bool */ +/* Attribute.value = 2, expr */ +/* Attribute.attr = 3, str */ +/* Attribute.ctx = 4, expr_context */ + +/* AugAssign.location = 0, location */ +/* AugAssign.operation = 1, BinOp */ + +/* Await.location = 0, location */ +/* Await.parenthesised = 1, bool */ +/* Await.value = 2, expr */ + +/* BinaryExpr.location = 0, location */ +/* BinaryExpr.parenthesised = 1, bool */ +/* BinaryExpr.left = 2, expr */ +/* BinaryExpr.op = 3, operator */ +/* BinaryExpr.right = 4, expr */ +/* BinaryExpr = AugAssign */ + +/* BoolExpr.location = 0, location */ +/* BoolExpr.parenthesised = 1, bool */ +/* BoolExpr.op = 2, boolop */ +/* BoolExpr.values = 3, expr_list */ + +/* Break.location = 0, location */ + +/* Bytes.location = 0, location */ +/* Bytes.parenthesised = 1, bool */ +/* Bytes.s = 2, bytes */ +/* Bytes.prefix = 3, bytes */ +/* Bytes.implicitly_concatenated_parts = 4, StringPart_list */ + +/* Call.location = 0, location */ +/* Call.parenthesised = 1, bool */ +/* Call.func = 2, expr */ +/* Call.positional_args = 3, expr_list */ +/* Call.named_args = 4, dict_item_list */ + +/* Case.location = 0, location */ +/* Case.pattern = 1, pattern */ +/* Case.guard = 2, expr */ +/* Case.body = 3, stmt_list */ + +/* Class.name = 0, str */ +/* Class.body = 1, stmt_list */ +/* Class = ClassExpr */ + +/* ClassExpr.location = 0, location */ +/* ClassExpr.parenthesised = 1, bool */ +/* ClassExpr.name = 2, str */ +/* ClassExpr.bases = 3, expr_list */ +/* ClassExpr.keywords = 4, dict_item_list */ +/* ClassExpr.inner_scope = 5, Class */ +/* ClassExpr.type_parameters = 6, type_parameter_list */ + +/* Compare.location = 0, location */ +/* Compare.parenthesised = 1, bool */ +/* Compare.left = 2, expr */ +/* Compare.ops = 3, cmpop_list */ +/* Compare.comparators = 4, expr_list */ + +/* Continue.location = 0, location */ + +/* Delete.location = 0, location */ +/* Delete.targets = 1, expr_list */ + +/* Dict.location = 0, location */ +/* Dict.parenthesised = 1, bool */ +/* Dict.items = 2, dict_item_list */ + +/* DictComp.location = 0, location */ +/* DictComp.parenthesised = 1, bool */ +/* DictComp.function = 2, Function */ +/* DictComp.iterable = 3, expr */ + +/* DictUnpacking.location = 0, location */ +/* DictUnpacking.value = 1, expr */ + +/* Ellipsis.location = 0, location */ +/* Ellipsis.parenthesised = 1, bool */ + +/* ExceptGroupStmt.location = 0, location */ +/* ExceptGroupStmt.type = 1, expr */ +/* ExceptGroupStmt.name = 2, expr */ +/* ExceptGroupStmt.body = 3, stmt_list */ + +/* ExceptStmt.location = 0, location */ +/* ExceptStmt.type = 1, expr */ +/* ExceptStmt.name = 2, expr */ +/* ExceptStmt.body = 3, stmt_list */ + +/* Exec.location = 0, location */ +/* Exec.body = 1, expr */ +/* Exec.globals = 2, expr */ +/* Exec.locals = 3, expr */ + +/* ExprStmt.location = 0, location */ +/* ExprStmt.value = 1, expr */ + +/* Filter.location = 0, location */ +/* Filter.parenthesised = 1, bool */ +/* Filter.value = 2, expr */ +/* Filter.filter = 3, expr */ + +/* For.location = 0, location */ +/* For.target = 1, expr */ +/* For.iter = 2, expr */ +/* For.body = 3, stmt_list */ +/* For.orelse = 4, stmt_list */ +/* For.is_async = 5, bool */ + +/* FormattedValue.location = 0, location */ +/* FormattedValue.parenthesised = 1, bool */ +/* FormattedValue.value = 2, expr */ +/* FormattedValue.conversion = 3, str */ +/* FormattedValue.format_spec = 4, JoinedStr */ + +/* Function.name = 0, str */ +/* Function.args = 1, parameter_list */ +/* Function.vararg = 2, expr */ +/* Function.kwonlyargs = 3, expr_list */ +/* Function.kwarg = 4, expr */ +/* Function.body = 5, stmt_list */ +/* Function.is_async = 6, bool */ +/* Function.type_parameters = 7, type_parameter_list */ +/* Function = FunctionParent */ + +/* FunctionExpr.location = 0, location */ +/* FunctionExpr.parenthesised = 1, bool */ +/* FunctionExpr.name = 2, str */ +/* FunctionExpr.args = 3, arguments */ +/* FunctionExpr.returns = 4, expr */ +/* FunctionExpr.inner_scope = 5, Function */ + +/* GeneratorExp.location = 0, location */ +/* GeneratorExp.parenthesised = 1, bool */ +/* GeneratorExp.function = 2, Function */ +/* GeneratorExp.iterable = 3, expr */ + +/* Global.location = 0, location */ +/* Global.names = 1, str_list */ + +/* Guard.location = 0, location */ +/* Guard.parenthesised = 1, bool */ +/* Guard.test = 2, expr */ + +/* If.location = 0, location */ +/* If.test = 1, expr */ +/* If.body = 2, stmt_list */ +/* If.orelse = 3, stmt_list */ + +/* IfExp.location = 0, location */ +/* IfExp.parenthesised = 1, bool */ +/* IfExp.test = 2, expr */ +/* IfExp.body = 3, expr */ +/* IfExp.orelse = 4, expr */ + +/* Import.location = 0, location */ +/* Import.names = 1, alias_list */ + +/* ImportExpr.location = 0, location */ +/* ImportExpr.parenthesised = 1, bool */ +/* ImportExpr.level = 2, int */ +/* ImportExpr.name = 3, str */ +/* ImportExpr.top = 4, bool */ + +/* ImportStar.location = 0, location */ +/* ImportStar.module = 1, expr */ + +/* ImportMember.location = 0, location */ +/* ImportMember.parenthesised = 1, bool */ +/* ImportMember.module = 2, expr */ +/* ImportMember.name = 3, str */ + +/* Fstring.location = 0, location */ +/* Fstring.parenthesised = 1, bool */ +/* Fstring.values = 2, expr_list */ +/* Fstring = FormattedValue */ + +/* JoinedTemplateString.location = 0, location */ +/* JoinedTemplateString.parenthesised = 1, bool */ +/* JoinedTemplateString.strings = 2, TemplateString_list */ + +/* KeyValuePair.location = 0, location */ +/* KeyValuePair.value = 1, expr */ +/* KeyValuePair.key = 2, expr */ + +/* Lambda.location = 0, location */ +/* Lambda.parenthesised = 1, bool */ +/* Lambda.args = 2, arguments */ +/* Lambda.inner_scope = 3, Function */ + +/* List.location = 0, location */ +/* List.parenthesised = 1, bool */ +/* List.elts = 2, expr_list */ +/* List.ctx = 3, expr_context */ + +/* ListComp.location = 0, location */ +/* ListComp.parenthesised = 1, bool */ +/* ListComp.function = 2, Function */ +/* ListComp.iterable = 3, expr */ +/* ListComp.generators = 4, comprehension_list */ +/* ListComp.elt = 5, expr */ + +/* MatchStmt.location = 0, location */ +/* MatchStmt.subject = 1, expr */ +/* MatchStmt.cases = 2, stmt_list */ + +/* MatchAsPattern.location = 0, location */ +/* MatchAsPattern.parenthesised = 1, bool */ +/* MatchAsPattern.pattern = 2, pattern */ +/* MatchAsPattern.alias = 3, expr */ + +/* MatchCapturePattern.location = 0, location */ +/* MatchCapturePattern.parenthesised = 1, bool */ +/* MatchCapturePattern.variable = 2, expr */ + +/* MatchClassPattern.location = 0, location */ +/* MatchClassPattern.parenthesised = 1, bool */ +/* MatchClassPattern.class = 2, expr */ +/* MatchClassPattern.class_name = 3, expr */ +/* MatchClassPattern.positional = 4, pattern_list */ +/* MatchClassPattern.keyword = 5, pattern_list */ + +/* MatchDoubleStarPattern.location = 0, location */ +/* MatchDoubleStarPattern.parenthesised = 1, bool */ +/* MatchDoubleStarPattern.target = 2, pattern */ + +/* MatchKeyValuePattern.location = 0, location */ +/* MatchKeyValuePattern.parenthesised = 1, bool */ +/* MatchKeyValuePattern.key = 2, pattern */ +/* MatchKeyValuePattern.value = 3, pattern */ + +/* MatchKeywordPattern.location = 0, location */ +/* MatchKeywordPattern.parenthesised = 1, bool */ +/* MatchKeywordPattern.attribute = 2, expr */ +/* MatchKeywordPattern.value = 3, pattern */ + +/* MatchLiteralPattern.location = 0, location */ +/* MatchLiteralPattern.parenthesised = 1, bool */ +/* MatchLiteralPattern.literal = 2, expr */ + +/* MatchMappingPattern.location = 0, location */ +/* MatchMappingPattern.parenthesised = 1, bool */ +/* MatchMappingPattern.mappings = 2, pattern_list */ + +/* MatchOrPattern.location = 0, location */ +/* MatchOrPattern.parenthesised = 1, bool */ +/* MatchOrPattern.patterns = 2, pattern_list */ + +/* MatchSequencePattern.location = 0, location */ +/* MatchSequencePattern.parenthesised = 1, bool */ +/* MatchSequencePattern.patterns = 2, pattern_list */ + +/* MatchStarPattern.location = 0, location */ +/* MatchStarPattern.parenthesised = 1, bool */ +/* MatchStarPattern.target = 2, pattern */ + +/* MatchValuePattern.location = 0, location */ +/* MatchValuePattern.parenthesised = 1, bool */ +/* MatchValuePattern.value = 2, expr */ + +/* MatchWildcardPattern.location = 0, location */ +/* MatchWildcardPattern.parenthesised = 1, bool */ + +/* Module.name = 0, str */ +/* Module.hash = 1, str */ +/* Module.body = 2, stmt_list */ +/* Module.kind = 3, str */ + +/* Name.location = 0, location */ +/* Name.parenthesised = 1, bool */ +/* Name.variable = 2, variable */ +/* Name.ctx = 3, expr_context */ +/* Name = ParameterList */ + +/* Nonlocal.location = 0, location */ +/* Nonlocal.names = 1, str_list */ + +/* Num.location = 0, location */ +/* Num.parenthesised = 1, bool */ +/* Num.n = 2, number */ +/* Num.text = 3, number */ + +/* ParamSpec.location = 0, location */ +/* ParamSpec.name = 1, expr */ +/* ParamSpec.default = 2, expr */ + +/* Pass.location = 0, location */ + +/* PlaceHolder.location = 0, location */ +/* PlaceHolder.parenthesised = 1, bool */ +/* PlaceHolder.variable = 2, variable */ +/* PlaceHolder.ctx = 3, expr_context */ + +/* Print.location = 0, location */ +/* Print.dest = 1, expr */ +/* Print.values = 2, expr_list */ +/* Print.nl = 3, bool */ + +/* Raise.location = 0, location */ +/* Raise.exc = 1, expr */ +/* Raise.cause = 2, expr */ +/* Raise.type = 3, expr */ +/* Raise.inst = 4, expr */ +/* Raise.tback = 5, expr */ + +/* Repr.location = 0, location */ +/* Repr.parenthesised = 1, bool */ +/* Repr.value = 2, expr */ + +/* Return.location = 0, location */ +/* Return.value = 1, expr */ + +/* Set.location = 0, location */ +/* Set.parenthesised = 1, bool */ +/* Set.elts = 2, expr_list */ + +/* SetComp.location = 0, location */ +/* SetComp.parenthesised = 1, bool */ +/* SetComp.function = 2, Function */ +/* SetComp.iterable = 3, expr */ + +/* Slice.location = 0, location */ +/* Slice.parenthesised = 1, bool */ +/* Slice.start = 2, expr */ +/* Slice.stop = 3, expr */ +/* Slice.step = 4, expr */ + +/* SpecialOperation.location = 0, location */ +/* SpecialOperation.parenthesised = 1, bool */ +/* SpecialOperation.name = 2, str */ +/* SpecialOperation.arguments = 3, expr_list */ + +/* Starred.location = 0, location */ +/* Starred.parenthesised = 1, bool */ +/* Starred.value = 2, expr */ +/* Starred.ctx = 3, expr_context */ + +/* Str.location = 0, location */ +/* Str.parenthesised = 1, bool */ +/* Str.s = 2, str */ +/* Str.prefix = 3, str */ +/* Str.implicitly_concatenated_parts = 4, StringPart_list */ + +/* StringPart.text = 0, str */ +/* StringPart.location = 1, location */ +/* StringPart = StringPartList */ +/* StringPartList = BytesOrStr */ + +/* Subscript.location = 0, location */ +/* Subscript.parenthesised = 1, bool */ +/* Subscript.value = 2, expr */ +/* Subscript.index = 3, expr */ +/* Subscript.ctx = 4, expr_context */ + +/* TemplateDottedNotation.location = 0, location */ +/* TemplateDottedNotation.parenthesised = 1, bool */ +/* TemplateDottedNotation.value = 2, expr */ +/* TemplateDottedNotation.attr = 3, str */ +/* TemplateDottedNotation.ctx = 4, expr_context */ + +/* TemplateString.location = 0, location */ +/* TemplateString.parenthesised = 1, bool */ +/* TemplateString.prefix = 2, str */ +/* TemplateString.values = 3, expr_list */ +/* TemplateString = TemplateStringList */ + +/* TemplateStringPart.location = 0, location */ +/* TemplateStringPart.parenthesised = 1, bool */ +/* TemplateStringPart.text = 2, str */ +/* TemplateStringList = JoinedTemplateString */ + +/* TemplateWrite.location = 0, location */ +/* TemplateWrite.value = 1, expr */ + +/* Try.location = 0, location */ +/* Try.body = 1, stmt_list */ +/* Try.orelse = 2, stmt_list */ +/* Try.handlers = 3, stmt_list */ +/* Try.finalbody = 4, stmt_list */ + +/* Tuple.location = 0, location */ +/* Tuple.parenthesised = 1, bool */ +/* Tuple.elts = 2, expr_list */ +/* Tuple.ctx = 3, expr_context */ +/* Tuple = ParameterList */ + +/* TypeAlias.location = 0, location */ +/* TypeAlias.name = 1, expr */ +/* TypeAlias.type_parameters = 2, type_parameter_list */ +/* TypeAlias.value = 3, expr */ + +/* TypeVar.location = 0, location */ +/* TypeVar.name = 1, expr */ +/* TypeVar.bound = 2, expr */ +/* TypeVar.default = 3, expr */ + +/* TypeVarTuple.location = 0, location */ +/* TypeVarTuple.name = 1, expr */ +/* TypeVarTuple.default = 2, expr */ + +/* UnaryExpr.location = 0, location */ +/* UnaryExpr.parenthesised = 1, bool */ +/* UnaryExpr.op = 2, unaryop */ +/* UnaryExpr.operand = 3, expr */ + +/* While.location = 0, location */ +/* While.test = 1, expr */ +/* While.body = 2, stmt_list */ +/* While.orelse = 3, stmt_list */ + +/* With.location = 0, location */ +/* With.context_expr = 1, expr */ +/* With.optional_vars = 2, expr */ +/* With.body = 3, stmt_list */ +/* With.is_async = 4, bool */ + +/* Yield.location = 0, location */ +/* Yield.parenthesised = 1, bool */ +/* Yield.value = 2, expr */ + +/* YieldFrom.location = 0, location */ +/* YieldFrom.parenthesised = 1, bool */ +/* YieldFrom.value = 2, expr */ + +/* Alias.value = 0, expr */ +/* Alias.asname = 1, expr */ +/* Alias = AliasList */ +/* AliasList = Import */ + +/* Arguments.kw_defaults = 0, expr_list */ +/* Arguments.defaults = 1, expr_list */ +/* Arguments.annotations = 2, expr_list */ +/* Arguments.varargannotation = 3, expr */ +/* Arguments.kwargannotation = 4, expr */ +/* Arguments.kw_annotations = 5, expr_list */ +/* Arguments = ArgumentsParent */ +/* boolean = BoolParent */ +/* Boolop = BoolExpr */ +/* string = Bytes */ +/* Cmpop = CmpopList */ +/* CmpopList = Compare */ + +/* Comprehension.location = 0, location */ +/* Comprehension.iter = 1, expr */ +/* Comprehension.target = 2, expr */ +/* Comprehension.ifs = 3, expr_list */ +/* Comprehension = ComprehensionList */ +/* ComprehensionList = ListComp */ +/* DictItem = DictItemList */ +/* DictItemList = DictItemListParent */ + +/* Expr.location = 0, location */ +/* Expr.parenthesised = 1, bool */ +/* Expr = ExprParent */ +/* ExprContext = ExprContextParent */ +/* ExprList = ExprListParent */ +/* int = ImportExpr */ + +/* Keyword.location = 0, location */ +/* Keyword.value = 1, expr */ +/* Keyword.arg = 2, str */ +/* Location = LocationParent */ +/* string = Num */ +/* Operator = BinaryExpr */ +/* ParameterList = Function */ + +/* Pattern.location = 0, location */ +/* Pattern.parenthesised = 1, bool */ +/* Pattern = PatternParent */ +/* PatternList = PatternListParent */ + +/* Stmt.location = 0, location */ +/* Stmt = StmtList */ +/* StmtList = StmtListParent */ +/* string = StrParent */ +/* StringList = StrListParent */ + +/* TypeParameter.location = 0, location */ +/* TypeParameter = TypeParameterList */ +/* TypeParameterList = TypeParameterListParent */ +/* Unaryop = UnaryExpr */ +/* Variable = VariableParent */ +py_Classes(unique int id : @py_Class, + unique int parent : @py_ClassExpr ref); + +py_Functions(unique int id : @py_Function, + unique int parent : @py_Function_parent ref); + +py_Modules(unique int id : @py_Module); + +py_StringParts(unique int id : @py_StringPart, + int parent : @py_StringPart_list ref, + int idx : int ref); + +py_StringPart_lists(unique int id : @py_StringPart_list, + unique int parent : @py_Bytes_or_Str ref); + +py_TemplateString_lists(unique int id : @py_TemplateString_list, + unique int parent : @py_JoinedTemplateString ref); + +py_aliases(unique int id : @py_alias, + int parent : @py_alias_list ref, + int idx : int ref); + +py_alias_lists(unique int id : @py_alias_list, + unique int parent : @py_Import ref); + +py_arguments(unique int id : @py_arguments, + unique int parent : @py_arguments_parent ref); + +py_bools(int parent : @py_bool_parent ref, + int idx : int ref); + +py_boolops(unique int id : @py_boolop, + int kind: int ref, + unique int parent : @py_BoolExpr ref); + +py_bytes(varchar(1) id : string ref, + int parent : @py_Bytes ref, + int idx : int ref); + +py_cmpops(unique int id : @py_cmpop, + int kind: int ref, + int parent : @py_cmpop_list ref, + int idx : int ref); + +py_cmpop_lists(unique int id : @py_cmpop_list, + unique int parent : @py_Compare ref); + +py_comprehensions(unique int id : @py_comprehension, + int parent : @py_comprehension_list ref, + int idx : int ref); + +py_comprehension_lists(unique int id : @py_comprehension_list, + unique int parent : @py_ListComp ref); + +py_dict_items(unique int id : @py_dict_item, + int kind: int ref, + int parent : @py_dict_item_list ref, + int idx : int ref); + +py_dict_item_lists(unique int id : @py_dict_item_list, + unique int parent : @py_dict_item_list_parent ref); + +py_exprs(unique int id : @py_expr, + int kind: int ref, + int parent : @py_expr_parent ref, + int idx : int ref); + +py_expr_contexts(unique int id : @py_expr_context, + int kind: int ref, + unique int parent : @py_expr_context_parent ref); + +py_expr_lists(unique int id : @py_expr_list, + int parent : @py_expr_list_parent ref, + int idx : int ref); + +py_ints(int id : int ref, + unique int parent : @py_ImportExpr ref); + +py_locations(unique int id : @location ref, + unique int parent : @py_location_parent ref); + +py_numbers(varchar(1) id : string ref, + int parent : @py_Num ref, + int idx : int ref); + +py_operators(unique int id : @py_operator, + int kind: int ref, + unique int parent : @py_BinaryExpr ref); + +py_parameter_lists(unique int id : @py_parameter_list, + unique int parent : @py_Function ref); + +py_patterns(unique int id : @py_pattern, + int kind: int ref, + int parent : @py_pattern_parent ref, + int idx : int ref); + +py_pattern_lists(unique int id : @py_pattern_list, + int parent : @py_pattern_list_parent ref, + int idx : int ref); + +py_stmts(unique int id : @py_stmt, + int kind: int ref, + int parent : @py_stmt_list ref, + int idx : int ref); + +py_stmt_lists(unique int id : @py_stmt_list, + int parent : @py_stmt_list_parent ref, + int idx : int ref); + +py_strs(varchar(1) id : string ref, + int parent : @py_str_parent ref, + int idx : int ref); + +py_str_lists(unique int id : @py_str_list, + unique int parent : @py_str_list_parent ref); + +py_type_parameters(unique int id : @py_type_parameter, + int kind: int ref, + int parent : @py_type_parameter_list ref, + int idx : int ref); + +py_type_parameter_lists(unique int id : @py_type_parameter_list, + unique int parent : @py_type_parameter_list_parent ref); + +py_unaryops(unique int id : @py_unaryop, + int kind: int ref, + unique int parent : @py_UnaryExpr ref); + +py_variables(int id : @py_variable ref, + unique int parent : @py_variable_parent ref); + +case @py_boolop.kind of + 0 = @py_And +| 1 = @py_Or; + +case @py_cmpop.kind of + 0 = @py_Eq +| 1 = @py_Gt +| 2 = @py_GtE +| 3 = @py_In +| 4 = @py_Is +| 5 = @py_IsNot +| 6 = @py_Lt +| 7 = @py_LtE +| 8 = @py_NotEq +| 9 = @py_NotIn; + +case @py_dict_item.kind of + 0 = @py_DictUnpacking +| 1 = @py_KeyValuePair +| 2 = @py_keyword; + +case @py_expr.kind of + 0 = @py_Attribute +| 1 = @py_BinaryExpr +| 2 = @py_BoolExpr +| 3 = @py_Bytes +| 4 = @py_Call +| 5 = @py_ClassExpr +| 6 = @py_Compare +| 7 = @py_Dict +| 8 = @py_DictComp +| 9 = @py_Ellipsis +| 10 = @py_FunctionExpr +| 11 = @py_GeneratorExp +| 12 = @py_IfExp +| 13 = @py_ImportExpr +| 14 = @py_ImportMember +| 15 = @py_Lambda +| 16 = @py_List +| 17 = @py_ListComp +| 18 = @py_Guard +| 19 = @py_Name +| 20 = @py_Num +| 21 = @py_Repr +| 22 = @py_Set +| 23 = @py_SetComp +| 24 = @py_Slice +| 25 = @py_Starred +| 26 = @py_Str +| 27 = @py_Subscript +| 28 = @py_Tuple +| 29 = @py_UnaryExpr +| 30 = @py_Yield +| 31 = @py_YieldFrom +| 32 = @py_TemplateDottedNotation +| 33 = @py_Filter +| 34 = @py_PlaceHolder +| 35 = @py_Await +| 36 = @py_Fstring +| 37 = @py_FormattedValue +| 38 = @py_AssignExpr +| 39 = @py_SpecialOperation +| 40 = @py_TemplateString +| 41 = @py_JoinedTemplateString +| 42 = @py_TemplateStringPart; + +case @py_expr_context.kind of + 0 = @py_AugLoad +| 1 = @py_AugStore +| 2 = @py_Del +| 3 = @py_Load +| 4 = @py_Param +| 5 = @py_Store; + +case @py_operator.kind of + 0 = @py_Add +| 1 = @py_BitAnd +| 2 = @py_BitOr +| 3 = @py_BitXor +| 4 = @py_Div +| 5 = @py_FloorDiv +| 6 = @py_LShift +| 7 = @py_Mod +| 8 = @py_Mult +| 9 = @py_Pow +| 10 = @py_RShift +| 11 = @py_Sub +| 12 = @py_MatMult; + +case @py_pattern.kind of + 0 = @py_MatchAsPattern +| 1 = @py_MatchOrPattern +| 2 = @py_MatchLiteralPattern +| 3 = @py_MatchCapturePattern +| 4 = @py_MatchWildcardPattern +| 5 = @py_MatchValuePattern +| 6 = @py_MatchSequencePattern +| 7 = @py_MatchStarPattern +| 8 = @py_MatchMappingPattern +| 9 = @py_MatchDoubleStarPattern +| 10 = @py_MatchKeyValuePattern +| 11 = @py_MatchClassPattern +| 12 = @py_MatchKeywordPattern; + +case @py_stmt.kind of + 0 = @py_Assert +| 1 = @py_Assign +| 2 = @py_AugAssign +| 3 = @py_Break +| 4 = @py_Continue +| 5 = @py_Delete +| 6 = @py_ExceptStmt +| 7 = @py_ExceptGroupStmt +| 8 = @py_Exec +| 9 = @py_Expr_stmt +| 10 = @py_For +| 11 = @py_Global +| 12 = @py_If +| 13 = @py_Import +| 14 = @py_ImportStar +| 15 = @py_MatchStmt +| 16 = @py_Case +| 17 = @py_Nonlocal +| 18 = @py_Pass +| 19 = @py_Print +| 20 = @py_Raise +| 21 = @py_Return +| 22 = @py_Try +| 23 = @py_While +| 24 = @py_With +| 25 = @py_TemplateWrite +| 26 = @py_AnnAssign +| 27 = @py_TypeAlias; + +case @py_type_parameter.kind of + 0 = @py_ParamSpec +| 1 = @py_TypeVar +| 2 = @py_TypeVarTuple; + +case @py_unaryop.kind of + 0 = @py_Invert +| 1 = @py_Not +| 2 = @py_UAdd +| 3 = @py_USub; + +@py_Bytes_or_Str = @py_Bytes | @py_Str; + +@py_Function_parent = @py_DictComp | @py_FunctionExpr | @py_GeneratorExp | @py_Lambda | @py_ListComp | @py_SetComp; + +@py_arguments_parent = @py_FunctionExpr | @py_Lambda; + +@py_ast_node = @py_Class | @py_Function | @py_Module | @py_StringPart | @py_comprehension | @py_dict_item | @py_expr | @py_pattern | @py_stmt | @py_type_parameter; + +@py_bool_parent = @py_For | @py_Function | @py_Print | @py_With | @py_expr | @py_pattern; + +@py_dict_item_list_parent = @py_Call | @py_ClassExpr | @py_Dict; + +@py_expr_context_parent = @py_Attribute | @py_List | @py_Name | @py_PlaceHolder | @py_Starred | @py_Subscript | @py_TemplateDottedNotation | @py_Tuple; + +@py_expr_list_parent = @py_Assign | @py_BoolExpr | @py_Call | @py_ClassExpr | @py_Compare | @py_Delete | @py_Fstring | @py_Function | @py_List | @py_Print | @py_Set | @py_SpecialOperation | @py_TemplateString | @py_Tuple | @py_arguments | @py_comprehension; + +@py_expr_or_stmt = @py_expr | @py_stmt; + +@py_expr_parent = @py_AnnAssign | @py_Assert | @py_Assign | @py_AssignExpr | @py_Attribute | @py_AugAssign | @py_Await | @py_BinaryExpr | @py_Call | @py_Case | @py_Compare | @py_DictComp | @py_DictUnpacking | @py_ExceptGroupStmt | @py_ExceptStmt | @py_Exec | @py_Expr_stmt | @py_Filter | @py_For | @py_FormattedValue | @py_Function | @py_FunctionExpr | @py_GeneratorExp | @py_Guard | @py_If | @py_IfExp | @py_ImportMember | @py_ImportStar | @py_KeyValuePair | @py_ListComp | @py_MatchAsPattern | @py_MatchCapturePattern | @py_MatchClassPattern | @py_MatchKeywordPattern | @py_MatchLiteralPattern | @py_MatchStmt | @py_MatchValuePattern | @py_ParamSpec | @py_Print | @py_Raise | @py_Repr | @py_Return | @py_SetComp | @py_Slice | @py_Starred | @py_Subscript | @py_TemplateDottedNotation | @py_TemplateString_list | @py_TemplateWrite | @py_TypeAlias | @py_TypeVar | @py_TypeVarTuple | @py_UnaryExpr | @py_While | @py_With | @py_Yield | @py_YieldFrom | @py_alias | @py_arguments | @py_comprehension | @py_expr_list | @py_keyword | @py_parameter_list; + +@py_location_parent = @py_DictUnpacking | @py_KeyValuePair | @py_StringPart | @py_comprehension | @py_expr | @py_keyword | @py_pattern | @py_stmt | @py_type_parameter; + +@py_parameter = @py_Name | @py_Tuple; + +@py_pattern_list_parent = @py_MatchClassPattern | @py_MatchMappingPattern | @py_MatchOrPattern | @py_MatchSequencePattern; + +@py_pattern_parent = @py_Case | @py_MatchAsPattern | @py_MatchDoubleStarPattern | @py_MatchKeyValuePattern | @py_MatchKeywordPattern | @py_MatchStarPattern | @py_pattern_list; + +@py_scope = @py_Class | @py_Function | @py_Module; + +@py_stmt_list_parent = @py_Case | @py_Class | @py_ExceptGroupStmt | @py_ExceptStmt | @py_For | @py_Function | @py_If | @py_MatchStmt | @py_Module | @py_Try | @py_While | @py_With; + +@py_str_list_parent = @py_Global | @py_Nonlocal; + +@py_str_parent = @py_Attribute | @py_Class | @py_ClassExpr | @py_FormattedValue | @py_Function | @py_FunctionExpr | @py_ImportExpr | @py_ImportMember | @py_Module | @py_SpecialOperation | @py_Str | @py_StringPart | @py_TemplateDottedNotation | @py_TemplateString | @py_TemplateStringPart | @py_keyword | @py_str_list; + +@py_type_parameter_list_parent = @py_ClassExpr | @py_Function | @py_TypeAlias; + +@py_variable_parent = @py_Name | @py_PlaceHolder; + + +/* + * End of auto-generated part + */ + + + +/* Map relative names to absolute names for imports */ +py_absolute_names(int module : @py_Module ref, + varchar(1) relname : string ref, + varchar(1) absname : string ref); + +py_exports(int id : @py_Module ref, + varchar(1) name : string ref); + +/* Successor information */ +py_successors(int predecessor : @py_flow_node ref, + int successor : @py_flow_node ref); + +py_true_successors(int predecessor : @py_flow_node ref, + int successor : @py_flow_node ref); + +py_exception_successors(int predecessor : @py_flow_node ref, + int successor : @py_flow_node ref); + +py_false_successors(int predecessor : @py_flow_node ref, + int successor : @py_flow_node ref); + +py_flow_bb_node(unique int flownode : @py_flow_node, + int realnode : @py_ast_node ref, + int basicblock : @py_flow_node ref, + int index : int ref); + +py_scope_flow(int flow : @py_flow_node ref, + int scope : @py_scope ref, + int kind : int ref); + +py_idoms(unique int node : @py_flow_node ref, + int immediate_dominator : @py_flow_node ref); + +py_ssa_phi(int phi : @py_ssa_var ref, + int arg: @py_ssa_var ref); + +py_ssa_var(unique int id : @py_ssa_var, + int var : @py_variable ref); + +py_ssa_use(int node: @py_flow_node ref, + int var : @py_ssa_var ref); + +py_ssa_defn(unique int id : @py_ssa_var ref, + int node: @py_flow_node ref); + +@py_base_var = @py_variable | @py_ssa_var; + +py_scopes(unique int node : @py_expr_or_stmt ref, + int scope : @py_scope ref); + +py_scope_location(unique int id : @location ref, + unique int scope : @py_scope ref); + +py_flags_versioned(varchar(1) name : string ref, + varchar(1) value : string ref, + varchar(1) version : string ref); + +py_syntax_error_versioned(unique int id : @location ref, + varchar(1) message : string ref, + varchar(1) version : string ref); + +py_comments(unique int id : @py_comment, + varchar(1) text : string ref, + unique int location : @location ref); + +/* Type information support */ + +py_cobjects(unique int obj : @py_cobject); + +py_cobjecttypes(unique int obj : @py_cobject ref, + int typeof : @py_cobject ref); + +py_cobjectnames(unique int obj : @py_cobject ref, + varchar(1) name : string ref); + +/* Kind should be 0 for introspection, > 0 from source, as follows: + 1 from C extension source + */ +py_cobject_sources(int obj : @py_cobject ref, + int kind : int ref); + +py_cmembers_versioned(int object : @py_cobject ref, + varchar(1) name : string ref, + int member : @py_cobject ref, + varchar(1) version : string ref); + +py_citems(int object : @py_cobject ref, + int index : int ref, + int member : @py_cobject ref); + +ext_argtype(int funcid : @py_object ref, + int arg : int ref, + int typeid : @py_object ref); + +ext_rettype(int funcid : @py_object ref, + int typeid : @py_object ref); + +ext_proptype(int propid : @py_object ref, + int typeid : @py_object ref); + +ext_argreturn(int funcid : @py_object ref, + int arg : int ref); + +py_special_objects(unique int obj : @py_cobject ref, + unique varchar(1) name : string ref); + +py_decorated_object(int object : @py_object ref, + int level: int ref); + +@py_object = @py_cobject | @py_flow_node; + +@py_source_element = @py_ast_node | @container; + +/** The union of all Python database entities */ +@top = + @py_source_element | @py_object | @py_base_var | @location | @py_line | @py_comment | + @py_expr_parent | @py_expr_context | + @py_operator | @py_boolop | @py_cmpop | @py_unaryop | + @py_cmpop_list | @py_alias_list | @py_StringPart_list | @py_comprehension_list | @py_dict_item_list | @py_pattern_list | @py_stmt_list | @py_str_list | @py_type_parameter_list | + @externalDefect | @externalMetric | @externalDataElement | @duplication_or_similarity | @svnentry | + @xmllocatable | @yaml_locatable; diff --git a/python/ql/lib/upgrades/279cbb08d387ecd57ac177e87c94cfd5ca62f792/semmlecode.python.dbscheme b/python/ql/lib/upgrades/279cbb08d387ecd57ac177e87c94cfd5ca62f792/semmlecode.python.dbscheme new file mode 100644 index 000000000000..eb5fc917c79b --- /dev/null +++ b/python/ql/lib/upgrades/279cbb08d387ecd57ac177e87c94cfd5ca62f792/semmlecode.python.dbscheme @@ -0,0 +1,1291 @@ +/* + * This dbscheme is auto-generated by 'semmle/dbscheme_gen.py'. + * Run "make dbscheme" in python/extractor/ to regenerate. + * WARNING: Any modifications to this file will be lost. + * Relations can be changed by modifying master.py or + * by adding rules to dbscheme.template + */ + +/* This is a dummy line to alter the dbscheme, so we can make a database upgrade + * without actually changing any of the dbscheme predicates. It contains a date + * to allow for such updates in the future as well. + * + * 2020-07-02 + * + * DO NOT remove this comment carelessly, since it can revert the dbscheme back to a + * previously seen state (matching a previously seen SHA), which would make the upgrade + * mechanism not work properly. + */ + +/*- DEPRECATED: External defects and metrics -*/ + +externalDefects( + unique int id : @externalDefect, + varchar(900) queryPath : string ref, + int location : @location ref, + varchar(900) message : string ref, + float severity : float ref +); + +externalMetrics( + unique int id : @externalMetric, + varchar(900) queryPath : string ref, + int location : @location ref, + float value : float ref +); + +/*- External data -*/ + +/** + * External data, loaded from CSV files during snapshot creation. See + * [Tutorial: Incorporating external data](https://help.semmle.com/wiki/display/SD/Tutorial%3A+Incorporating+external+data) + * for more information. + */ +externalData( + int id : @externalDataElement, + string path : string ref, + int column: int ref, + string value : string ref +); + +/*- Database metadata -*/ + +/** + * The CLI will automatically emit applicable tuples for this table, + * such as `databaseMetadata("isOverlay", "true")` when building an + * overlay database. + */ +databaseMetadata( + string metadataKey: string ref, + string value: string ref +); + +/*- Overlay support -*/ + +/** + * The CLI will automatically emit tuples for each new/modified/deleted file + * when building an overlay database. + */ +overlayChangedFiles( + string path: string ref +); + +/*- DEPRECATED: Snapshot date -*/ + +snapshotDate(unique date snapshotDate : date ref); + +/*- Source location prefix -*/ + +/** + * The source location of the snapshot. + */ +sourceLocationPrefix(string prefix : string ref); + +/*- DEPRECATED: Duplicate code -*/ + +duplicateCode( + unique int id : @duplication, + string relativePath : string ref, + int equivClass : int ref +); + +similarCode( + unique int id : @similarity, + string relativePath : string ref, + int equivClass : int ref +); + +@duplication_or_similarity = @duplication | @similarity + +tokens( + int id : @duplication_or_similarity ref, + int offset : int ref, + int beginLine : int ref, + int beginColumn : int ref, + int endLine : int ref, + int endColumn : int ref +); + +/*- DEPRECATED: Version control data -*/ + +svnentries( + unique int id : @svnentry, + string revision : string ref, + string author : string ref, + date revisionDate : date ref, + int changeSize : int ref +) + +svnaffectedfiles( + int id : @svnentry ref, + int file : @file ref, + string action : string ref +) + +svnentrymsg( + unique int id : @svnentry ref, + string message : string ref +) + +svnchurn( + int commit : @svnentry ref, + int file : @file ref, + int addedLines : int ref, + int deletedLines : int ref +) + +/*- Lines of code -*/ + +numlines( + int element_id: @sourceline ref, + int num_lines: int ref, + int num_code: int ref, + int num_comment: int ref +); + +/*- Files and folders -*/ + +/** + * The location of an element. + * The location spans column `startcolumn` of line `startline` to + * column `endcolumn` of line `endline` in file `file`. + * For more information, see + * [Locations](https://codeql.github.com/docs/writing-codeql-queries/providing-locations-in-codeql-queries/). + */ +locations_default( + unique int id: @location_default, + int file: @file ref, + int beginLine: int ref, + int beginColumn: int ref, + int endLine: int ref, + int endColumn: int ref +); + +files( + unique int id: @file, + string name: string ref +); + +folders( + unique int id: @folder, + string name: string ref +); + +@container = @file | @folder + +containerparent( + int parent: @container ref, + unique int child: @container ref +); + +/*- XML Files -*/ + +xmlEncoding( + unique int id: @file ref, + string encoding: string ref +); + +xmlDTDs( + unique int id: @xmldtd, + string root: string ref, + string publicId: string ref, + string systemId: string ref, + int fileid: @file ref +); + +xmlElements( + unique int id: @xmlelement, + string name: string ref, + int parentid: @xmlparent ref, + int idx: int ref, + int fileid: @file ref +); + +xmlAttrs( + unique int id: @xmlattribute, + int elementid: @xmlelement ref, + string name: string ref, + string value: string ref, + int idx: int ref, + int fileid: @file ref +); + +xmlNs( + int id: @xmlnamespace, + string prefixName: string ref, + string URI: string ref, + int fileid: @file ref +); + +xmlHasNs( + int elementId: @xmlnamespaceable ref, + int nsId: @xmlnamespace ref, + int fileid: @file ref +); + +xmlComments( + unique int id: @xmlcomment, + string text: string ref, + int parentid: @xmlparent ref, + int fileid: @file ref +); + +xmlChars( + unique int id: @xmlcharacters, + string text: string ref, + int parentid: @xmlparent ref, + int idx: int ref, + int isCDATA: int ref, + int fileid: @file ref +); + +@xmlparent = @file | @xmlelement; +@xmlnamespaceable = @xmlelement | @xmlattribute; + +xmllocations( + int xmlElement: @xmllocatable ref, + int location: @location_default ref +); + +@xmllocatable = @xmlcharacters | @xmlelement | @xmlcomment | @xmlattribute | @xmldtd | @file | @xmlnamespace; + +/*- YAML -*/ + +#keyset[parent, idx] +yaml (unique int id: @yaml_node, + int kind: int ref, + int parent: @yaml_node_parent ref, + int idx: int ref, + string tag: string ref, + string tostring: string ref); + +case @yaml_node.kind of + 0 = @yaml_scalar_node +| 1 = @yaml_mapping_node +| 2 = @yaml_sequence_node +| 3 = @yaml_alias_node +; + +@yaml_collection_node = @yaml_mapping_node | @yaml_sequence_node; + +@yaml_node_parent = @yaml_collection_node | @file; + +yaml_anchors (unique int node: @yaml_node ref, + string anchor: string ref); + +yaml_aliases (unique int alias: @yaml_alias_node ref, + string target: string ref); + +yaml_scalars (unique int scalar: @yaml_scalar_node ref, + int style: int ref, + string value: string ref); + +yaml_errors (unique int id: @yaml_error, + string message: string ref); + +yaml_locations(unique int locatable: @yaml_locatable ref, + int location: @location_default ref); + +@yaml_locatable = @yaml_node | @yaml_error; + +/*- Python dbscheme -*/ + +/* + * Line metrics + */ +py_codelines(int id : @py_scope ref, + int count : int ref); + +py_commentlines(int id : @py_scope ref, + int count : int ref); + +py_docstringlines(int id : @py_scope ref, + int count : int ref); + +py_alllines(int id : @py_scope ref, + int count : int ref); + +/**************************** + Python dbscheme +****************************/ + +@sourceline = @file | @py_Module | @xmllocatable; + +@location = @location_ast | @location_default ; + +locations_ast(unique int id: @location_ast, + int module: @py_Module ref, + int beginLine: int ref, + int beginColumn: int ref, + int endLine: int ref, + int endColumn: int ref); + +file_contents(unique int file: @file ref, string contents: string ref); + +py_module_path(int module: @py_Module ref, int file: @container ref); + +variable(unique int id : @py_variable, + int scope : @py_scope ref, + varchar(1) name : string ref); + +py_line_lengths(unique int id : @py_line, + int file: @py_Module ref, + int line : int ref, + int length : int ref); + +py_extracted_version(int module : @py_Module ref, + varchar(1) version : string ref); + +/* AUTO GENERATED PART STARTS HERE */ + + +/* AnnAssign.location = 0, location */ +/* AnnAssign.value = 1, expr */ +/* AnnAssign.annotation = 2, expr */ +/* AnnAssign.target = 3, expr */ + +/* Assert.location = 0, location */ +/* Assert.test = 1, expr */ +/* Assert.msg = 2, expr */ + +/* Assign.location = 0, location */ +/* Assign.value = 1, expr */ +/* Assign.targets = 2, expr_list */ + +/* AssignExpr.location = 0, location */ +/* AssignExpr.parenthesised = 1, bool */ +/* AssignExpr.value = 2, expr */ +/* AssignExpr.target = 3, expr */ + +/* Attribute.location = 0, location */ +/* Attribute.parenthesised = 1, bool */ +/* Attribute.value = 2, expr */ +/* Attribute.attr = 3, str */ +/* Attribute.ctx = 4, expr_context */ + +/* AugAssign.location = 0, location */ +/* AugAssign.operation = 1, BinOp */ + +/* Await.location = 0, location */ +/* Await.parenthesised = 1, bool */ +/* Await.value = 2, expr */ + +/* BinaryExpr.location = 0, location */ +/* BinaryExpr.parenthesised = 1, bool */ +/* BinaryExpr.left = 2, expr */ +/* BinaryExpr.op = 3, operator */ +/* BinaryExpr.right = 4, expr */ +/* BinaryExpr = AugAssign */ + +/* BoolExpr.location = 0, location */ +/* BoolExpr.parenthesised = 1, bool */ +/* BoolExpr.op = 2, boolop */ +/* BoolExpr.values = 3, expr_list */ + +/* Break.location = 0, location */ + +/* Bytes.location = 0, location */ +/* Bytes.parenthesised = 1, bool */ +/* Bytes.s = 2, bytes */ +/* Bytes.prefix = 3, bytes */ +/* Bytes.implicitly_concatenated_parts = 4, StringPart_list */ + +/* Call.location = 0, location */ +/* Call.parenthesised = 1, bool */ +/* Call.func = 2, expr */ +/* Call.positional_args = 3, expr_list */ +/* Call.named_args = 4, dict_item_list */ + +/* Case.location = 0, location */ +/* Case.pattern = 1, pattern */ +/* Case.guard = 2, expr */ +/* Case.body = 3, stmt_list */ + +/* Class.name = 0, str */ +/* Class.body = 1, stmt_list */ +/* Class = ClassExpr */ + +/* ClassExpr.location = 0, location */ +/* ClassExpr.parenthesised = 1, bool */ +/* ClassExpr.name = 2, str */ +/* ClassExpr.bases = 3, expr_list */ +/* ClassExpr.keywords = 4, dict_item_list */ +/* ClassExpr.inner_scope = 5, Class */ +/* ClassExpr.type_parameters = 6, type_parameter_list */ + +/* Compare.location = 0, location */ +/* Compare.parenthesised = 1, bool */ +/* Compare.left = 2, expr */ +/* Compare.ops = 3, cmpop_list */ +/* Compare.comparators = 4, expr_list */ + +/* Continue.location = 0, location */ + +/* Delete.location = 0, location */ +/* Delete.targets = 1, expr_list */ + +/* Dict.location = 0, location */ +/* Dict.parenthesised = 1, bool */ +/* Dict.items = 2, dict_item_list */ + +/* DictComp.location = 0, location */ +/* DictComp.parenthesised = 1, bool */ +/* DictComp.function = 2, Function */ +/* DictComp.iterable = 3, expr */ + +/* DictUnpacking.location = 0, location */ +/* DictUnpacking.value = 1, expr */ + +/* Ellipsis.location = 0, location */ +/* Ellipsis.parenthesised = 1, bool */ + +/* ExceptGroupStmt.location = 0, location */ +/* ExceptGroupStmt.type = 1, expr */ +/* ExceptGroupStmt.name = 2, expr */ +/* ExceptGroupStmt.body = 3, stmt_list */ + +/* ExceptStmt.location = 0, location */ +/* ExceptStmt.type = 1, expr */ +/* ExceptStmt.name = 2, expr */ +/* ExceptStmt.body = 3, stmt_list */ + +/* Exec.location = 0, location */ +/* Exec.body = 1, expr */ +/* Exec.globals = 2, expr */ +/* Exec.locals = 3, expr */ + +/* ExprStmt.location = 0, location */ +/* ExprStmt.value = 1, expr */ + +/* Filter.location = 0, location */ +/* Filter.parenthesised = 1, bool */ +/* Filter.value = 2, expr */ +/* Filter.filter = 3, expr */ + +/* For.location = 0, location */ +/* For.target = 1, expr */ +/* For.iter = 2, expr */ +/* For.body = 3, stmt_list */ +/* For.orelse = 4, stmt_list */ +/* For.is_async = 5, bool */ + +/* FormattedValue.location = 0, location */ +/* FormattedValue.parenthesised = 1, bool */ +/* FormattedValue.value = 2, expr */ +/* FormattedValue.conversion = 3, str */ +/* FormattedValue.format_spec = 4, JoinedStr */ + +/* Function.name = 0, str */ +/* Function.args = 1, parameter_list */ +/* Function.vararg = 2, expr */ +/* Function.kwonlyargs = 3, expr_list */ +/* Function.kwarg = 4, expr */ +/* Function.body = 5, stmt_list */ +/* Function.is_async = 6, bool */ +/* Function.type_parameters = 7, type_parameter_list */ +/* Function = FunctionParent */ + +/* FunctionExpr.location = 0, location */ +/* FunctionExpr.parenthesised = 1, bool */ +/* FunctionExpr.name = 2, str */ +/* FunctionExpr.args = 3, arguments */ +/* FunctionExpr.returns = 4, expr */ +/* FunctionExpr.inner_scope = 5, Function */ + +/* GeneratorExp.location = 0, location */ +/* GeneratorExp.parenthesised = 1, bool */ +/* GeneratorExp.function = 2, Function */ +/* GeneratorExp.iterable = 3, expr */ + +/* Global.location = 0, location */ +/* Global.names = 1, str_list */ + +/* Guard.location = 0, location */ +/* Guard.parenthesised = 1, bool */ +/* Guard.test = 2, expr */ + +/* If.location = 0, location */ +/* If.test = 1, expr */ +/* If.body = 2, stmt_list */ +/* If.orelse = 3, stmt_list */ + +/* IfExp.location = 0, location */ +/* IfExp.parenthesised = 1, bool */ +/* IfExp.test = 2, expr */ +/* IfExp.body = 3, expr */ +/* IfExp.orelse = 4, expr */ + +/* Import.location = 0, location */ +/* Import.names = 1, alias_list */ +/* Import.is_lazy = 2, bool */ + +/* ImportExpr.location = 0, location */ +/* ImportExpr.parenthesised = 1, bool */ +/* ImportExpr.level = 2, int */ +/* ImportExpr.name = 3, str */ +/* ImportExpr.top = 4, bool */ + +/* ImportStar.location = 0, location */ +/* ImportStar.module = 1, expr */ +/* ImportStar.is_lazy = 2, bool */ + +/* ImportMember.location = 0, location */ +/* ImportMember.parenthesised = 1, bool */ +/* ImportMember.module = 2, expr */ +/* ImportMember.name = 3, str */ + +/* Fstring.location = 0, location */ +/* Fstring.parenthesised = 1, bool */ +/* Fstring.values = 2, expr_list */ +/* Fstring = FormattedValue */ + +/* JoinedTemplateString.location = 0, location */ +/* JoinedTemplateString.parenthesised = 1, bool */ +/* JoinedTemplateString.strings = 2, TemplateString_list */ + +/* KeyValuePair.location = 0, location */ +/* KeyValuePair.value = 1, expr */ +/* KeyValuePair.key = 2, expr */ + +/* Lambda.location = 0, location */ +/* Lambda.parenthesised = 1, bool */ +/* Lambda.args = 2, arguments */ +/* Lambda.inner_scope = 3, Function */ + +/* List.location = 0, location */ +/* List.parenthesised = 1, bool */ +/* List.elts = 2, expr_list */ +/* List.ctx = 3, expr_context */ + +/* ListComp.location = 0, location */ +/* ListComp.parenthesised = 1, bool */ +/* ListComp.function = 2, Function */ +/* ListComp.iterable = 3, expr */ +/* ListComp.generators = 4, comprehension_list */ +/* ListComp.elt = 5, expr */ + +/* MatchStmt.location = 0, location */ +/* MatchStmt.subject = 1, expr */ +/* MatchStmt.cases = 2, stmt_list */ + +/* MatchAsPattern.location = 0, location */ +/* MatchAsPattern.parenthesised = 1, bool */ +/* MatchAsPattern.pattern = 2, pattern */ +/* MatchAsPattern.alias = 3, expr */ + +/* MatchCapturePattern.location = 0, location */ +/* MatchCapturePattern.parenthesised = 1, bool */ +/* MatchCapturePattern.variable = 2, expr */ + +/* MatchClassPattern.location = 0, location */ +/* MatchClassPattern.parenthesised = 1, bool */ +/* MatchClassPattern.class = 2, expr */ +/* MatchClassPattern.class_name = 3, expr */ +/* MatchClassPattern.positional = 4, pattern_list */ +/* MatchClassPattern.keyword = 5, pattern_list */ + +/* MatchDoubleStarPattern.location = 0, location */ +/* MatchDoubleStarPattern.parenthesised = 1, bool */ +/* MatchDoubleStarPattern.target = 2, pattern */ + +/* MatchKeyValuePattern.location = 0, location */ +/* MatchKeyValuePattern.parenthesised = 1, bool */ +/* MatchKeyValuePattern.key = 2, pattern */ +/* MatchKeyValuePattern.value = 3, pattern */ + +/* MatchKeywordPattern.location = 0, location */ +/* MatchKeywordPattern.parenthesised = 1, bool */ +/* MatchKeywordPattern.attribute = 2, expr */ +/* MatchKeywordPattern.value = 3, pattern */ + +/* MatchLiteralPattern.location = 0, location */ +/* MatchLiteralPattern.parenthesised = 1, bool */ +/* MatchLiteralPattern.literal = 2, expr */ + +/* MatchMappingPattern.location = 0, location */ +/* MatchMappingPattern.parenthesised = 1, bool */ +/* MatchMappingPattern.mappings = 2, pattern_list */ + +/* MatchOrPattern.location = 0, location */ +/* MatchOrPattern.parenthesised = 1, bool */ +/* MatchOrPattern.patterns = 2, pattern_list */ + +/* MatchSequencePattern.location = 0, location */ +/* MatchSequencePattern.parenthesised = 1, bool */ +/* MatchSequencePattern.patterns = 2, pattern_list */ + +/* MatchStarPattern.location = 0, location */ +/* MatchStarPattern.parenthesised = 1, bool */ +/* MatchStarPattern.target = 2, pattern */ + +/* MatchValuePattern.location = 0, location */ +/* MatchValuePattern.parenthesised = 1, bool */ +/* MatchValuePattern.value = 2, expr */ + +/* MatchWildcardPattern.location = 0, location */ +/* MatchWildcardPattern.parenthesised = 1, bool */ + +/* Module.name = 0, str */ +/* Module.hash = 1, str */ +/* Module.body = 2, stmt_list */ +/* Module.kind = 3, str */ + +/* Name.location = 0, location */ +/* Name.parenthesised = 1, bool */ +/* Name.variable = 2, variable */ +/* Name.ctx = 3, expr_context */ +/* Name = ParameterList */ + +/* Nonlocal.location = 0, location */ +/* Nonlocal.names = 1, str_list */ + +/* Num.location = 0, location */ +/* Num.parenthesised = 1, bool */ +/* Num.n = 2, number */ +/* Num.text = 3, number */ + +/* ParamSpec.location = 0, location */ +/* ParamSpec.name = 1, expr */ +/* ParamSpec.default = 2, expr */ + +/* Pass.location = 0, location */ + +/* PlaceHolder.location = 0, location */ +/* PlaceHolder.parenthesised = 1, bool */ +/* PlaceHolder.variable = 2, variable */ +/* PlaceHolder.ctx = 3, expr_context */ + +/* Print.location = 0, location */ +/* Print.dest = 1, expr */ +/* Print.values = 2, expr_list */ +/* Print.nl = 3, bool */ + +/* Raise.location = 0, location */ +/* Raise.exc = 1, expr */ +/* Raise.cause = 2, expr */ +/* Raise.type = 3, expr */ +/* Raise.inst = 4, expr */ +/* Raise.tback = 5, expr */ + +/* Repr.location = 0, location */ +/* Repr.parenthesised = 1, bool */ +/* Repr.value = 2, expr */ + +/* Return.location = 0, location */ +/* Return.value = 1, expr */ + +/* Set.location = 0, location */ +/* Set.parenthesised = 1, bool */ +/* Set.elts = 2, expr_list */ + +/* SetComp.location = 0, location */ +/* SetComp.parenthesised = 1, bool */ +/* SetComp.function = 2, Function */ +/* SetComp.iterable = 3, expr */ + +/* Slice.location = 0, location */ +/* Slice.parenthesised = 1, bool */ +/* Slice.start = 2, expr */ +/* Slice.stop = 3, expr */ +/* Slice.step = 4, expr */ + +/* SpecialOperation.location = 0, location */ +/* SpecialOperation.parenthesised = 1, bool */ +/* SpecialOperation.name = 2, str */ +/* SpecialOperation.arguments = 3, expr_list */ + +/* Starred.location = 0, location */ +/* Starred.parenthesised = 1, bool */ +/* Starred.value = 2, expr */ +/* Starred.ctx = 3, expr_context */ + +/* Str.location = 0, location */ +/* Str.parenthesised = 1, bool */ +/* Str.s = 2, str */ +/* Str.prefix = 3, str */ +/* Str.implicitly_concatenated_parts = 4, StringPart_list */ + +/* StringPart.text = 0, str */ +/* StringPart.location = 1, location */ +/* StringPart = StringPartList */ +/* StringPartList = BytesOrStr */ + +/* Subscript.location = 0, location */ +/* Subscript.parenthesised = 1, bool */ +/* Subscript.value = 2, expr */ +/* Subscript.index = 3, expr */ +/* Subscript.ctx = 4, expr_context */ + +/* TemplateDottedNotation.location = 0, location */ +/* TemplateDottedNotation.parenthesised = 1, bool */ +/* TemplateDottedNotation.value = 2, expr */ +/* TemplateDottedNotation.attr = 3, str */ +/* TemplateDottedNotation.ctx = 4, expr_context */ + +/* TemplateString.location = 0, location */ +/* TemplateString.parenthesised = 1, bool */ +/* TemplateString.prefix = 2, str */ +/* TemplateString.values = 3, expr_list */ +/* TemplateString = TemplateStringList */ + +/* TemplateStringPart.location = 0, location */ +/* TemplateStringPart.parenthesised = 1, bool */ +/* TemplateStringPart.text = 2, str */ +/* TemplateStringList = JoinedTemplateString */ + +/* TemplateWrite.location = 0, location */ +/* TemplateWrite.value = 1, expr */ + +/* Try.location = 0, location */ +/* Try.body = 1, stmt_list */ +/* Try.orelse = 2, stmt_list */ +/* Try.handlers = 3, stmt_list */ +/* Try.finalbody = 4, stmt_list */ + +/* Tuple.location = 0, location */ +/* Tuple.parenthesised = 1, bool */ +/* Tuple.elts = 2, expr_list */ +/* Tuple.ctx = 3, expr_context */ +/* Tuple = ParameterList */ + +/* TypeAlias.location = 0, location */ +/* TypeAlias.name = 1, expr */ +/* TypeAlias.type_parameters = 2, type_parameter_list */ +/* TypeAlias.value = 3, expr */ + +/* TypeVar.location = 0, location */ +/* TypeVar.name = 1, expr */ +/* TypeVar.bound = 2, expr */ +/* TypeVar.default = 3, expr */ + +/* TypeVarTuple.location = 0, location */ +/* TypeVarTuple.name = 1, expr */ +/* TypeVarTuple.default = 2, expr */ + +/* UnaryExpr.location = 0, location */ +/* UnaryExpr.parenthesised = 1, bool */ +/* UnaryExpr.op = 2, unaryop */ +/* UnaryExpr.operand = 3, expr */ + +/* While.location = 0, location */ +/* While.test = 1, expr */ +/* While.body = 2, stmt_list */ +/* While.orelse = 3, stmt_list */ + +/* With.location = 0, location */ +/* With.context_expr = 1, expr */ +/* With.optional_vars = 2, expr */ +/* With.body = 3, stmt_list */ +/* With.is_async = 4, bool */ + +/* Yield.location = 0, location */ +/* Yield.parenthesised = 1, bool */ +/* Yield.value = 2, expr */ + +/* YieldFrom.location = 0, location */ +/* YieldFrom.parenthesised = 1, bool */ +/* YieldFrom.value = 2, expr */ + +/* Alias.value = 0, expr */ +/* Alias.asname = 1, expr */ +/* Alias = AliasList */ +/* AliasList = Import */ + +/* Arguments.kw_defaults = 0, expr_list */ +/* Arguments.defaults = 1, expr_list */ +/* Arguments.annotations = 2, expr_list */ +/* Arguments.varargannotation = 3, expr */ +/* Arguments.kwargannotation = 4, expr */ +/* Arguments.kw_annotations = 5, expr_list */ +/* Arguments = ArgumentsParent */ +/* boolean = BoolParent */ +/* Boolop = BoolExpr */ +/* string = Bytes */ +/* Cmpop = CmpopList */ +/* CmpopList = Compare */ + +/* Comprehension.location = 0, location */ +/* Comprehension.iter = 1, expr */ +/* Comprehension.target = 2, expr */ +/* Comprehension.ifs = 3, expr_list */ +/* Comprehension = ComprehensionList */ +/* ComprehensionList = ListComp */ +/* DictItem = DictItemList */ +/* DictItemList = DictItemListParent */ + +/* Expr.location = 0, location */ +/* Expr.parenthesised = 1, bool */ +/* Expr = ExprParent */ +/* ExprContext = ExprContextParent */ +/* ExprList = ExprListParent */ +/* int = ImportExpr */ + +/* Keyword.location = 0, location */ +/* Keyword.value = 1, expr */ +/* Keyword.arg = 2, str */ +/* Location = LocationParent */ +/* string = Num */ +/* Operator = BinaryExpr */ +/* ParameterList = Function */ + +/* Pattern.location = 0, location */ +/* Pattern.parenthesised = 1, bool */ +/* Pattern = PatternParent */ +/* PatternList = PatternListParent */ + +/* Stmt.location = 0, location */ +/* Stmt = StmtList */ +/* StmtList = StmtListParent */ +/* string = StrParent */ +/* StringList = StrListParent */ + +/* TypeParameter.location = 0, location */ +/* TypeParameter = TypeParameterList */ +/* TypeParameterList = TypeParameterListParent */ +/* Unaryop = UnaryExpr */ +/* Variable = VariableParent */ +py_Classes(unique int id : @py_Class, + unique int parent : @py_ClassExpr ref); + +py_Functions(unique int id : @py_Function, + unique int parent : @py_Function_parent ref); + +py_Modules(unique int id : @py_Module); + +py_StringParts(unique int id : @py_StringPart, + int parent : @py_StringPart_list ref, + int idx : int ref); + +py_StringPart_lists(unique int id : @py_StringPart_list, + unique int parent : @py_Bytes_or_Str ref); + +py_TemplateString_lists(unique int id : @py_TemplateString_list, + unique int parent : @py_JoinedTemplateString ref); + +py_aliases(unique int id : @py_alias, + int parent : @py_alias_list ref, + int idx : int ref); + +py_alias_lists(unique int id : @py_alias_list, + unique int parent : @py_Import ref); + +py_arguments(unique int id : @py_arguments, + unique int parent : @py_arguments_parent ref); + +py_bools(int parent : @py_bool_parent ref, + int idx : int ref); + +py_boolops(unique int id : @py_boolop, + int kind: int ref, + unique int parent : @py_BoolExpr ref); + +py_bytes(varchar(1) id : string ref, + int parent : @py_Bytes ref, + int idx : int ref); + +py_cmpops(unique int id : @py_cmpop, + int kind: int ref, + int parent : @py_cmpop_list ref, + int idx : int ref); + +py_cmpop_lists(unique int id : @py_cmpop_list, + unique int parent : @py_Compare ref); + +py_comprehensions(unique int id : @py_comprehension, + int parent : @py_comprehension_list ref, + int idx : int ref); + +py_comprehension_lists(unique int id : @py_comprehension_list, + unique int parent : @py_ListComp ref); + +py_dict_items(unique int id : @py_dict_item, + int kind: int ref, + int parent : @py_dict_item_list ref, + int idx : int ref); + +py_dict_item_lists(unique int id : @py_dict_item_list, + unique int parent : @py_dict_item_list_parent ref); + +py_exprs(unique int id : @py_expr, + int kind: int ref, + int parent : @py_expr_parent ref, + int idx : int ref); + +py_expr_contexts(unique int id : @py_expr_context, + int kind: int ref, + unique int parent : @py_expr_context_parent ref); + +py_expr_lists(unique int id : @py_expr_list, + int parent : @py_expr_list_parent ref, + int idx : int ref); + +py_ints(int id : int ref, + unique int parent : @py_ImportExpr ref); + +py_locations(unique int id : @location ref, + unique int parent : @py_location_parent ref); + +py_numbers(varchar(1) id : string ref, + int parent : @py_Num ref, + int idx : int ref); + +py_operators(unique int id : @py_operator, + int kind: int ref, + unique int parent : @py_BinaryExpr ref); + +py_parameter_lists(unique int id : @py_parameter_list, + unique int parent : @py_Function ref); + +py_patterns(unique int id : @py_pattern, + int kind: int ref, + int parent : @py_pattern_parent ref, + int idx : int ref); + +py_pattern_lists(unique int id : @py_pattern_list, + int parent : @py_pattern_list_parent ref, + int idx : int ref); + +py_stmts(unique int id : @py_stmt, + int kind: int ref, + int parent : @py_stmt_list ref, + int idx : int ref); + +py_stmt_lists(unique int id : @py_stmt_list, + int parent : @py_stmt_list_parent ref, + int idx : int ref); + +py_strs(varchar(1) id : string ref, + int parent : @py_str_parent ref, + int idx : int ref); + +py_str_lists(unique int id : @py_str_list, + unique int parent : @py_str_list_parent ref); + +py_type_parameters(unique int id : @py_type_parameter, + int kind: int ref, + int parent : @py_type_parameter_list ref, + int idx : int ref); + +py_type_parameter_lists(unique int id : @py_type_parameter_list, + unique int parent : @py_type_parameter_list_parent ref); + +py_unaryops(unique int id : @py_unaryop, + int kind: int ref, + unique int parent : @py_UnaryExpr ref); + +py_variables(int id : @py_variable ref, + unique int parent : @py_variable_parent ref); + +case @py_boolop.kind of + 0 = @py_And +| 1 = @py_Or; + +case @py_cmpop.kind of + 0 = @py_Eq +| 1 = @py_Gt +| 2 = @py_GtE +| 3 = @py_In +| 4 = @py_Is +| 5 = @py_IsNot +| 6 = @py_Lt +| 7 = @py_LtE +| 8 = @py_NotEq +| 9 = @py_NotIn; + +case @py_dict_item.kind of + 0 = @py_DictUnpacking +| 1 = @py_KeyValuePair +| 2 = @py_keyword; + +case @py_expr.kind of + 0 = @py_Attribute +| 1 = @py_BinaryExpr +| 2 = @py_BoolExpr +| 3 = @py_Bytes +| 4 = @py_Call +| 5 = @py_ClassExpr +| 6 = @py_Compare +| 7 = @py_Dict +| 8 = @py_DictComp +| 9 = @py_Ellipsis +| 10 = @py_FunctionExpr +| 11 = @py_GeneratorExp +| 12 = @py_IfExp +| 13 = @py_ImportExpr +| 14 = @py_ImportMember +| 15 = @py_Lambda +| 16 = @py_List +| 17 = @py_ListComp +| 18 = @py_Guard +| 19 = @py_Name +| 20 = @py_Num +| 21 = @py_Repr +| 22 = @py_Set +| 23 = @py_SetComp +| 24 = @py_Slice +| 25 = @py_Starred +| 26 = @py_Str +| 27 = @py_Subscript +| 28 = @py_Tuple +| 29 = @py_UnaryExpr +| 30 = @py_Yield +| 31 = @py_YieldFrom +| 32 = @py_TemplateDottedNotation +| 33 = @py_Filter +| 34 = @py_PlaceHolder +| 35 = @py_Await +| 36 = @py_Fstring +| 37 = @py_FormattedValue +| 38 = @py_AssignExpr +| 39 = @py_SpecialOperation +| 40 = @py_TemplateString +| 41 = @py_JoinedTemplateString +| 42 = @py_TemplateStringPart; + +case @py_expr_context.kind of + 0 = @py_AugLoad +| 1 = @py_AugStore +| 2 = @py_Del +| 3 = @py_Load +| 4 = @py_Param +| 5 = @py_Store; + +case @py_operator.kind of + 0 = @py_Add +| 1 = @py_BitAnd +| 2 = @py_BitOr +| 3 = @py_BitXor +| 4 = @py_Div +| 5 = @py_FloorDiv +| 6 = @py_LShift +| 7 = @py_Mod +| 8 = @py_Mult +| 9 = @py_Pow +| 10 = @py_RShift +| 11 = @py_Sub +| 12 = @py_MatMult; + +case @py_pattern.kind of + 0 = @py_MatchAsPattern +| 1 = @py_MatchOrPattern +| 2 = @py_MatchLiteralPattern +| 3 = @py_MatchCapturePattern +| 4 = @py_MatchWildcardPattern +| 5 = @py_MatchValuePattern +| 6 = @py_MatchSequencePattern +| 7 = @py_MatchStarPattern +| 8 = @py_MatchMappingPattern +| 9 = @py_MatchDoubleStarPattern +| 10 = @py_MatchKeyValuePattern +| 11 = @py_MatchClassPattern +| 12 = @py_MatchKeywordPattern; + +case @py_stmt.kind of + 0 = @py_Assert +| 1 = @py_Assign +| 2 = @py_AugAssign +| 3 = @py_Break +| 4 = @py_Continue +| 5 = @py_Delete +| 6 = @py_ExceptStmt +| 7 = @py_ExceptGroupStmt +| 8 = @py_Exec +| 9 = @py_Expr_stmt +| 10 = @py_For +| 11 = @py_Global +| 12 = @py_If +| 13 = @py_Import +| 14 = @py_ImportStar +| 15 = @py_MatchStmt +| 16 = @py_Case +| 17 = @py_Nonlocal +| 18 = @py_Pass +| 19 = @py_Print +| 20 = @py_Raise +| 21 = @py_Return +| 22 = @py_Try +| 23 = @py_While +| 24 = @py_With +| 25 = @py_TemplateWrite +| 26 = @py_AnnAssign +| 27 = @py_TypeAlias; + +case @py_type_parameter.kind of + 0 = @py_ParamSpec +| 1 = @py_TypeVar +| 2 = @py_TypeVarTuple; + +case @py_unaryop.kind of + 0 = @py_Invert +| 1 = @py_Not +| 2 = @py_UAdd +| 3 = @py_USub; + +@py_Bytes_or_Str = @py_Bytes | @py_Str; + +@py_Function_parent = @py_DictComp | @py_FunctionExpr | @py_GeneratorExp | @py_Lambda | @py_ListComp | @py_SetComp; + +@py_arguments_parent = @py_FunctionExpr | @py_Lambda; + +@py_ast_node = @py_Class | @py_Function | @py_Module | @py_StringPart | @py_comprehension | @py_dict_item | @py_expr | @py_pattern | @py_stmt | @py_type_parameter; + +@py_bool_parent = @py_For | @py_Function | @py_Import | @py_ImportStar | @py_Print | @py_With | @py_expr | @py_pattern; + +@py_dict_item_list_parent = @py_Call | @py_ClassExpr | @py_Dict; + +@py_expr_context_parent = @py_Attribute | @py_List | @py_Name | @py_PlaceHolder | @py_Starred | @py_Subscript | @py_TemplateDottedNotation | @py_Tuple; + +@py_expr_list_parent = @py_Assign | @py_BoolExpr | @py_Call | @py_ClassExpr | @py_Compare | @py_Delete | @py_Fstring | @py_Function | @py_List | @py_Print | @py_Set | @py_SpecialOperation | @py_TemplateString | @py_Tuple | @py_arguments | @py_comprehension; + +@py_expr_or_stmt = @py_expr | @py_stmt; + +@py_expr_parent = @py_AnnAssign | @py_Assert | @py_Assign | @py_AssignExpr | @py_Attribute | @py_AugAssign | @py_Await | @py_BinaryExpr | @py_Call | @py_Case | @py_Compare | @py_DictComp | @py_DictUnpacking | @py_ExceptGroupStmt | @py_ExceptStmt | @py_Exec | @py_Expr_stmt | @py_Filter | @py_For | @py_FormattedValue | @py_Function | @py_FunctionExpr | @py_GeneratorExp | @py_Guard | @py_If | @py_IfExp | @py_ImportMember | @py_ImportStar | @py_KeyValuePair | @py_ListComp | @py_MatchAsPattern | @py_MatchCapturePattern | @py_MatchClassPattern | @py_MatchKeywordPattern | @py_MatchLiteralPattern | @py_MatchStmt | @py_MatchValuePattern | @py_ParamSpec | @py_Print | @py_Raise | @py_Repr | @py_Return | @py_SetComp | @py_Slice | @py_Starred | @py_Subscript | @py_TemplateDottedNotation | @py_TemplateString_list | @py_TemplateWrite | @py_TypeAlias | @py_TypeVar | @py_TypeVarTuple | @py_UnaryExpr | @py_While | @py_With | @py_Yield | @py_YieldFrom | @py_alias | @py_arguments | @py_comprehension | @py_expr_list | @py_keyword | @py_parameter_list; + +@py_location_parent = @py_DictUnpacking | @py_KeyValuePair | @py_StringPart | @py_comprehension | @py_expr | @py_keyword | @py_pattern | @py_stmt | @py_type_parameter; + +@py_parameter = @py_Name | @py_Tuple; + +@py_pattern_list_parent = @py_MatchClassPattern | @py_MatchMappingPattern | @py_MatchOrPattern | @py_MatchSequencePattern; + +@py_pattern_parent = @py_Case | @py_MatchAsPattern | @py_MatchDoubleStarPattern | @py_MatchKeyValuePattern | @py_MatchKeywordPattern | @py_MatchStarPattern | @py_pattern_list; + +@py_scope = @py_Class | @py_Function | @py_Module; + +@py_stmt_list_parent = @py_Case | @py_Class | @py_ExceptGroupStmt | @py_ExceptStmt | @py_For | @py_Function | @py_If | @py_MatchStmt | @py_Module | @py_Try | @py_While | @py_With; + +@py_str_list_parent = @py_Global | @py_Nonlocal; + +@py_str_parent = @py_Attribute | @py_Class | @py_ClassExpr | @py_FormattedValue | @py_Function | @py_FunctionExpr | @py_ImportExpr | @py_ImportMember | @py_Module | @py_SpecialOperation | @py_Str | @py_StringPart | @py_TemplateDottedNotation | @py_TemplateString | @py_TemplateStringPart | @py_keyword | @py_str_list; + +@py_type_parameter_list_parent = @py_ClassExpr | @py_Function | @py_TypeAlias; + +@py_variable_parent = @py_Name | @py_PlaceHolder; + + +/* + * End of auto-generated part + */ + + + +/* Map relative names to absolute names for imports */ +py_absolute_names(int module : @py_Module ref, + varchar(1) relname : string ref, + varchar(1) absname : string ref); + +py_exports(int id : @py_Module ref, + varchar(1) name : string ref); + +/* Successor information */ +py_successors(int predecessor : @py_flow_node ref, + int successor : @py_flow_node ref); + +py_true_successors(int predecessor : @py_flow_node ref, + int successor : @py_flow_node ref); + +py_exception_successors(int predecessor : @py_flow_node ref, + int successor : @py_flow_node ref); + +py_false_successors(int predecessor : @py_flow_node ref, + int successor : @py_flow_node ref); + +py_flow_bb_node(unique int flownode : @py_flow_node, + int realnode : @py_ast_node ref, + int basicblock : @py_flow_node ref, + int index : int ref); + +py_scope_flow(int flow : @py_flow_node ref, + int scope : @py_scope ref, + int kind : int ref); + +py_idoms(unique int node : @py_flow_node ref, + int immediate_dominator : @py_flow_node ref); + +py_ssa_phi(int phi : @py_ssa_var ref, + int arg: @py_ssa_var ref); + +py_ssa_var(unique int id : @py_ssa_var, + int var : @py_variable ref); + +py_ssa_use(int node: @py_flow_node ref, + int var : @py_ssa_var ref); + +py_ssa_defn(unique int id : @py_ssa_var ref, + int node: @py_flow_node ref); + +@py_base_var = @py_variable | @py_ssa_var; + +py_scopes(unique int node : @py_expr_or_stmt ref, + int scope : @py_scope ref); + +py_scope_location(unique int id : @location ref, + unique int scope : @py_scope ref); + +py_flags_versioned(varchar(1) name : string ref, + varchar(1) value : string ref, + varchar(1) version : string ref); + +py_syntax_error_versioned(unique int id : @location ref, + varchar(1) message : string ref, + varchar(1) version : string ref); + +py_comments(unique int id : @py_comment, + varchar(1) text : string ref, + unique int location : @location ref); + +/* Type information support */ + +py_cobjects(unique int obj : @py_cobject); + +py_cobjecttypes(unique int obj : @py_cobject ref, + int typeof : @py_cobject ref); + +py_cobjectnames(unique int obj : @py_cobject ref, + varchar(1) name : string ref); + +/* Kind should be 0 for introspection, > 0 from source, as follows: + 1 from C extension source + */ +py_cobject_sources(int obj : @py_cobject ref, + int kind : int ref); + +py_cmembers_versioned(int object : @py_cobject ref, + varchar(1) name : string ref, + int member : @py_cobject ref, + varchar(1) version : string ref); + +py_citems(int object : @py_cobject ref, + int index : int ref, + int member : @py_cobject ref); + +ext_argtype(int funcid : @py_object ref, + int arg : int ref, + int typeid : @py_object ref); + +ext_rettype(int funcid : @py_object ref, + int typeid : @py_object ref); + +ext_proptype(int propid : @py_object ref, + int typeid : @py_object ref); + +ext_argreturn(int funcid : @py_object ref, + int arg : int ref); + +py_special_objects(unique int obj : @py_cobject ref, + unique varchar(1) name : string ref); + +py_decorated_object(int object : @py_object ref, + int level: int ref); + +@py_object = @py_cobject | @py_flow_node; + +@py_source_element = @py_ast_node | @container; + +/** The union of all Python database entities */ +@top = + @py_source_element | @py_object | @py_base_var | @location | @py_line | @py_comment | + @py_expr_parent | @py_expr_context | + @py_operator | @py_boolop | @py_cmpop | @py_unaryop | + @py_cmpop_list | @py_alias_list | @py_StringPart_list | @py_comprehension_list | @py_dict_item_list | @py_pattern_list | @py_stmt_list | @py_str_list | @py_type_parameter_list | + @externalDefect | @externalMetric | @externalDataElement | @duplication_or_similarity | @svnentry | + @xmllocatable | @yaml_locatable; diff --git a/python/ql/lib/upgrades/279cbb08d387ecd57ac177e87c94cfd5ca62f792/upgrade.properties b/python/ql/lib/upgrades/279cbb08d387ecd57ac177e87c94cfd5ca62f792/upgrade.properties new file mode 100644 index 000000000000..ba9ec633f478 --- /dev/null +++ b/python/ql/lib/upgrades/279cbb08d387ecd57ac177e87c94cfd5ca62f792/upgrade.properties @@ -0,0 +1,2 @@ +description: Add is_lazy field to Import and ImportStar for PEP 810 lazy imports +compatibility: backwards From 6b7d47ee7d2cc386649864a78535f56c02bc096e Mon Sep 17 00:00:00 2001 From: Taus Date: Fri, 10 Apr 2026 14:39:13 +0000 Subject: [PATCH 105/157] Python: Add QL test for the new syntax --- .../test/3/extractor-tests/lazy-imports/test.expected | 7 +++++++ python/ql/test/3/extractor-tests/lazy-imports/test.py | 10 ++++++++++ python/ql/test/3/extractor-tests/lazy-imports/test.ql | 7 +++++++ 3 files changed, 24 insertions(+) create mode 100644 python/ql/test/3/extractor-tests/lazy-imports/test.expected create mode 100644 python/ql/test/3/extractor-tests/lazy-imports/test.py create mode 100644 python/ql/test/3/extractor-tests/lazy-imports/test.ql diff --git a/python/ql/test/3/extractor-tests/lazy-imports/test.expected b/python/ql/test/3/extractor-tests/lazy-imports/test.expected new file mode 100644 index 000000000000..9eb4f975dc4c --- /dev/null +++ b/python/ql/test/3/extractor-tests/lazy-imports/test.expected @@ -0,0 +1,7 @@ +| 2 | Import | lazy | +| 3 | Import | lazy | +| 4 | Import | lazy | +| 5 | Import | lazy | +| 6 | Import | lazy | +| 9 | Import | normal | +| 10 | Import | normal | diff --git a/python/ql/test/3/extractor-tests/lazy-imports/test.py b/python/ql/test/3/extractor-tests/lazy-imports/test.py new file mode 100644 index 000000000000..775cac00bbf4 --- /dev/null +++ b/python/ql/test/3/extractor-tests/lazy-imports/test.py @@ -0,0 +1,10 @@ +# Lazy imports (PEP 810) +lazy import a +lazy from b import c +lazy from d import e as f +lazy import g.h as i +lazy from ..j import k + +# Non-lazy imports +import x +from y import z diff --git a/python/ql/test/3/extractor-tests/lazy-imports/test.ql b/python/ql/test/3/extractor-tests/lazy-imports/test.ql new file mode 100644 index 000000000000..312019c7cd1a --- /dev/null +++ b/python/ql/test/3/extractor-tests/lazy-imports/test.ql @@ -0,0 +1,7 @@ +import python + +string lazy(Import imp) { if imp.isLazy() then result = "lazy" else result = "normal" } + +from Import imp +where imp.getLocation().getFile().getShortName() = "test.py" +select imp.getLocation().getStartLine(), imp.toString(), lazy(imp) From 86020d9eed9024f1232809a8abcc02f5fcff9b20 Mon Sep 17 00:00:00 2001 From: Taus Date: Fri, 10 Apr 2026 14:43:30 +0000 Subject: [PATCH 106/157] Python: Add change note --- .../ql/lib/change-notes/2026-04-10-support-lazy-keyword.md | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 python/ql/lib/change-notes/2026-04-10-support-lazy-keyword.md diff --git a/python/ql/lib/change-notes/2026-04-10-support-lazy-keyword.md b/python/ql/lib/change-notes/2026-04-10-support-lazy-keyword.md new file mode 100644 index 000000000000..67de168ff47e --- /dev/null +++ b/python/ql/lib/change-notes/2026-04-10-support-lazy-keyword.md @@ -0,0 +1,5 @@ +--- +category: minorAnalysis +--- + +- The Python extractor now supports the new `lazy import ...` and `lazy from ... import ...` (as defined in [PEP-810](https://peps.python.org/pep-0810/)) that will be part of Python 3.15. From 40eff6525de8cd74af954a06bd16ed7a8287daa7 Mon Sep 17 00:00:00 2001 From: Tom Hvitved Date: Fri, 10 Apr 2026 16:57:58 +0200 Subject: [PATCH 107/157] Rust: Replace special handling of index expressions --- .../rust/frameworks/stdlib/Builtins.qll | 12 +++ .../typeinference/FunctionOverloading.qll | 10 +++ .../internal/typeinference/TypeInference.qll | 42 +-------- rust/tools/builtins/impls.rs | 86 +++++++++++++++++++ 4 files changed, 110 insertions(+), 40 deletions(-) create mode 100644 rust/tools/builtins/impls.rs diff --git a/rust/ql/lib/codeql/rust/frameworks/stdlib/Builtins.qll b/rust/ql/lib/codeql/rust/frameworks/stdlib/Builtins.qll index 6b09ababd741..1a545da0db5c 100644 --- a/rust/ql/lib/codeql/rust/frameworks/stdlib/Builtins.qll +++ b/rust/ql/lib/codeql/rust/frameworks/stdlib/Builtins.qll @@ -19,6 +19,13 @@ private class BuiltinsTypesFile extends File { } } +private class BuiltinsImplsFile extends File { + BuiltinsImplsFile() { + this.getBaseName() = "impls.rs" and + this.getParentContainer() instanceof BuiltinsFolder + } +} + /** * A builtin type, such as `bool` and `i32`. * @@ -221,3 +228,8 @@ class TupleType extends BuiltinType { ) } } + +/** A builtin implementation. */ +class BuiltinImpl extends Impl { + BuiltinImpl() { this.getFile() instanceof BuiltinsImplsFile } +} diff --git a/rust/ql/lib/codeql/rust/internal/typeinference/FunctionOverloading.qll b/rust/ql/lib/codeql/rust/internal/typeinference/FunctionOverloading.qll index d217fc3760a9..ec0152c7ecae 100644 --- a/rust/ql/lib/codeql/rust/internal/typeinference/FunctionOverloading.qll +++ b/rust/ql/lib/codeql/rust/internal/typeinference/FunctionOverloading.qll @@ -6,6 +6,8 @@ */ private import rust +private import codeql.rust.frameworks.stdlib.Builtins as Builtins +private import codeql.rust.frameworks.stdlib.Stdlib private import codeql.rust.internal.PathResolution private import Type private import TypeAbstraction @@ -94,6 +96,14 @@ private module MkSiblingImpls { not t1 instanceof TypeParameter or not t2 instanceof TypeParameter ) + or + // todo: handle blanket/non-blanket siblings in `implSiblings` + trait = + any(IndexTrait it | + implSiblingCandidate(impl, it, _, _) and + impl instanceof Builtins::BuiltinImpl and + path = TypePath::singleton(TAssociatedTypeTypeParameter(trait, it.getOutputType())) + ) } } diff --git a/rust/ql/lib/codeql/rust/internal/typeinference/TypeInference.qll b/rust/ql/lib/codeql/rust/internal/typeinference/TypeInference.qll index c6a268be126f..a2f3d6efd789 100644 --- a/rust/ql/lib/codeql/rust/internal/typeinference/TypeInference.qll +++ b/rust/ql/lib/codeql/rust/internal/typeinference/TypeInference.qll @@ -3663,43 +3663,6 @@ private Type inferArrayExprType(ArrayExpr ae) { exists(ae) and result instanceof pragma[nomagic] private Type inferRangeExprType(RangeExpr re) { result = TDataType(getRangeType(re)) } -/** - * According to [the Rust reference][1]: _"array and slice-typed expressions - * can be indexed with a `usize` index ... For other types an index expression - * `a[b]` is equivalent to *std::ops::Index::index(&a, b)"_. - * - * The logic below handles array and slice indexing, but for other types it is - * currently limited to `Vec`. - * - * [1]: https://doc.rust-lang.org/reference/expressions/array-expr.html#r-expr.array.index - */ -pragma[nomagic] -private Type inferIndexExprType(IndexExpr ie, TypePath path) { - // TODO: Method resolution to the `std::ops::Index` trait can handle the - // `Index` instances for slices and arrays. - exists(TypePath exprPath, Builtins::BuiltinType t | - TDataType(t) = inferType(ie.getIndex()) and - ( - // also allow `i32`, since that is currently the type that we infer for - // integer literals like `0` - t instanceof Builtins::I32 - or - t instanceof Builtins::Usize - ) and - result = inferType(ie.getBase(), exprPath) - | - // todo: remove? - exprPath.isCons(TTypeParamTypeParameter(any(Vec v).getElementTypeParam()), path) - or - exprPath.isCons(getArrayTypeParameter(), path) - or - exists(TypePath path0 | - exprPath.isCons(getRefTypeParameter(_), path0) and - path0.isCons(getSliceTypeParameter(), path) - ) - ) -} - pragma[nomagic] private Type getInferredDerefType(DerefExpr de, TypePath path) { result = inferType(de, path) } @@ -3902,7 +3865,8 @@ private module Cached { i instanceof ImplItemNode and dispatch = false | result = call.(AssocFunctionResolution::AssocFunctionCall).resolveCallTarget(i, _, _, _) and - not call instanceof CallExprImpl::DynamicCallExpr + not call instanceof CallExprImpl::DynamicCallExpr and + not i instanceof Builtins::BuiltinImpl ) } @@ -4004,8 +3968,6 @@ private module Cached { or result = inferAwaitExprType(n, path) or - result = inferIndexExprType(n, path) - or result = inferDereferencedExprPtrType(n, path) or result = inferForLoopExprType(n, path) diff --git a/rust/tools/builtins/impls.rs b/rust/tools/builtins/impls.rs new file mode 100644 index 000000000000..3bc028a51a61 --- /dev/null +++ b/rust/tools/builtins/impls.rs @@ -0,0 +1,86 @@ +/// Contains type-specialized versions of +/// +/// ``` +/// impl Index for [T; N] +/// where +/// [T]: Index, +/// { +/// type Output = <[T] as Index>::Output; +/// ... +/// } +/// ``` +/// +/// and +/// +/// ``` +/// impl ops::Index for [T] +/// where +/// I: SliceIndex<[T]>, +/// { +/// type Output = I::Output; +/// ... +/// } +/// ``` +/// +/// and +/// ``` +/// impl, A: Allocator> Index for Vec { +/// type Output = I::Output; +/// ... +/// } +/// ``` +/// +/// which the type inference library cannot currently handle (we fail +/// to resolve the `Output` types). +mod index_impls { + use std::alloc::Allocator; + use std::ops::Index; + + impl Index for [T; N] { + type Output = T; + + fn index(&self, index: i32) -> &Self::Output { + panic!() + } + } + + impl Index for [T; N] { + type Output = T; + + fn index(&self, index: usize) -> &Self::Output { + panic!() + } + } + + impl Index for [T] { + type Output = T; + + fn index(&self, index: i32) -> &Self::Output { + panic!() + } + } + + impl Index for [T] { + type Output = T; + + fn index(&self, index: usize) -> &Self::Output { + panic!() + } + } + + impl Index for Vec { + type Output = T; + + fn index(&self, index: i32) -> &Self::Output { + panic!() + } + } + + impl Index for Vec { + type Output = T; + + fn index(&self, index: usize) -> &Self::Output { + panic!() + } + } +} From bee39c9d51baf22e0ad600077ce06aaaa98abece Mon Sep 17 00:00:00 2001 From: Jeroen Ketema Date: Mon, 13 Apr 2026 11:08:58 +0200 Subject: [PATCH 108/157] C++: Fix `isCompiledAsC` join order Before on Abseil Windows for `cpp/too-few-arguments:`: ``` Pipeline standard for TooFewArguments::isCompiledAsC/1#52fe29e8@994f9bgp was evaluated in 12 iterations totaling 2ms (delta sizes total: 50). 1198778 ~3% {1} r1 = JOIN `TooFewArguments::isCompiledAsC/1#52fe29e8#prev_delta` WITH `Element::Element.getFile/0#2b8c8740_10#join_rhs` ON FIRST 1 OUTPUT Rhs.1 83 ~26% {1} | JOIN WITH includes ON FIRST 1 OUTPUT Rhs.1 50 ~4% {1} | AND NOT `TooFewArguments::isCompiledAsC/1#52fe29e8#prev`(FIRST 1) return r1 ``` After: ``` Pipeline standard for #File::File.getAnIncludedFile/0#dispred#e8d44cd1Plus#bf@b8d290i6 was evaluated in 11 iterations totaling 0ms (delta sizes total: 43). 47 ~0% {2} r1 = SCAN `#File::File.getAnIncludedFile/0#dispred#e8d44cd1Plus#bf#prev_delta` OUTPUT In.1, In.0 78 ~28% {2} | JOIN WITH `File::File.getAnIncludedFile/0#dispred#e8d44cd1` ON FIRST 1 OUTPUT Lhs.1, Rhs.1 43 ~0% {2} | AND NOT `#File::File.getAnIncludedFile/0#dispred#e8d44cd1Plus#bf#prev`(FIRST 2) return r1 [2026-04-13 11:05:25] Evaluated non-recursive predicate TooFewArguments::isCompiledAsC/1#52fe29e8@4a3eb9jk in 0ms (size: 49). Evaluated relational algebra for predicate TooFewArguments::isCompiledAsC/1#52fe29e8@4a3eb9jk with tuple counts: 1 ~0% {3} r1 = CONSTANT(unique int, unique string, unique string)[1,"compiled as c","1"] 1 ~0% {1} | JOIN WITH #fileannotationsMerge_1230#join_rhs ON FIRST 3 OUTPUT Rhs.3 48 ~0% {1} r2 = JOIN r1 WITH `#File::File.getAnIncludedFile/0#dispred#e8d44cd1Plus#bf` ON FIRST 1 OUTPUT Rhs.1 49 ~0% {1} r3 = r1 UNION r2 return r3 ``` --- .../Underspecified Functions/MistypedFunctionArguments.qll | 4 +--- .../Likely Bugs/Underspecified Functions/TooFewArguments.qll | 4 +--- .../Likely Bugs/Underspecified Functions/TooManyArguments.qll | 4 +--- 3 files changed, 3 insertions(+), 9 deletions(-) diff --git a/cpp/ql/src/Likely Bugs/Underspecified Functions/MistypedFunctionArguments.qll b/cpp/ql/src/Likely Bugs/Underspecified Functions/MistypedFunctionArguments.qll index 2dced5d8d844..dbb457db505e 100644 --- a/cpp/ql/src/Likely Bugs/Underspecified Functions/MistypedFunctionArguments.qll +++ b/cpp/ql/src/Likely Bugs/Underspecified Functions/MistypedFunctionArguments.qll @@ -79,9 +79,7 @@ private predicate hasZeroParamDecl(Function f) { // True if this file (or header) was compiled as a C file private predicate isCompiledAsC(File f) { - f.compiledAsC() - or - exists(File src | isCompiledAsC(src) | src.getAnIncludedFile() = f) + exists(File src | src.compiledAsC() | src.getAnIncludedFile*() = f) } predicate mistypedFunctionArguments(FunctionCall fc, Function f, Parameter p) { diff --git a/cpp/ql/src/Likely Bugs/Underspecified Functions/TooFewArguments.qll b/cpp/ql/src/Likely Bugs/Underspecified Functions/TooFewArguments.qll index 218a54b36c51..fd323513a49e 100644 --- a/cpp/ql/src/Likely Bugs/Underspecified Functions/TooFewArguments.qll +++ b/cpp/ql/src/Likely Bugs/Underspecified Functions/TooFewArguments.qll @@ -28,9 +28,7 @@ private predicate hasZeroParamDecl(Function f) { /* Holds if this file (or header) was compiled as a C file. */ private predicate isCompiledAsC(File f) { - f.compiledAsC() - or - exists(File src | isCompiledAsC(src) | src.getAnIncludedFile() = f) + exists(File src | src.compiledAsC() | src.getAnIncludedFile*() = f) } /** Holds if `fc` is a call to `f` with too few arguments. */ diff --git a/cpp/ql/src/Likely Bugs/Underspecified Functions/TooManyArguments.qll b/cpp/ql/src/Likely Bugs/Underspecified Functions/TooManyArguments.qll index 7fba78b5550e..ab2a98ae3a55 100644 --- a/cpp/ql/src/Likely Bugs/Underspecified Functions/TooManyArguments.qll +++ b/cpp/ql/src/Likely Bugs/Underspecified Functions/TooManyArguments.qll @@ -19,9 +19,7 @@ private predicate hasZeroParamDecl(Function f) { // True if this file (or header) was compiled as a C file private predicate isCompiledAsC(File f) { - f.compiledAsC() - or - exists(File src | isCompiledAsC(src) | src.getAnIncludedFile() = f) + exists(File src | src.compiledAsC() | src.getAnIncludedFile*() = f) } predicate tooManyArguments(FunctionCall fc, Function f) { From fef582c858b30ee7542a0d5d07a0ec0161278d09 Mon Sep 17 00:00:00 2001 From: Tom Hvitved Date: Mon, 13 Apr 2026 11:22:49 +0200 Subject: [PATCH 109/157] JS: Add test case for Fastify per-route rate limiting --- .../MissingRateLimiting.expected | 7 ++++++ .../Security/CWE-770/MissingRateLimit/tst.js | 22 +++++++++++++++++++ 2 files changed, 29 insertions(+) diff --git a/javascript/ql/test/query-tests/Security/CWE-770/MissingRateLimit/MissingRateLimiting.expected b/javascript/ql/test/query-tests/Security/CWE-770/MissingRateLimit/MissingRateLimiting.expected index 3d7bc2954eba..95f55486600a 100644 --- a/javascript/ql/test/query-tests/Security/CWE-770/MissingRateLimit/MissingRateLimiting.expected +++ b/javascript/ql/test/query-tests/Security/CWE-770/MissingRateLimit/MissingRateLimiting.expected @@ -1,3 +1,4 @@ +#select | MissingRateLimiting.js:4:19:8:1 | functio ... ath);\\n} | This route handler performs $@, but is not rate-limited. | MissingRateLimiting.js:7:5:7:22 | res.sendFile(path) | a file system access | | MissingRateLimiting.js:25:19:25:20 | f1 | This route handler performs $@, but is not rate-limited. | MissingRateLimiting.js:13:5:13:22 | res.sendFile(path) | a file system access | | MissingRateLimiting.js:25:27:25:28 | f3 | This route handler performs $@, but is not rate-limited. | MissingRateLimiting.js:22:5:22:22 | res.sendFile(path) | a file system access | @@ -9,3 +10,9 @@ | tst.js:64:25:64:63 | functio ... req); } | This route handler performs $@, but is not rate-limited. | tst.js:64:46:64:60 | verifyUser(req) | authorization | | tst.js:76:25:76:53 | catchAs ... ndler1) | This route handler performs $@, but is not rate-limited. | tst.js:14:40:14:46 | login() | authorization | | tst.js:88:24:88:40 | expensiveHandler1 | This route handler performs $@, but is not rate-limited. | tst.js:14:40:14:46 | login() | authorization | +| tst.js:103:4:103:20 | expensiveHandler1 | This route handler performs $@, but is not rate-limited. | tst.js:14:40:14:46 | login() | authorization | +| tst.js:110:4:110:20 | expensiveHandler1 | This route handler performs $@, but is not rate-limited. | tst.js:14:40:14:46 | login() | authorization | +| tst.js:112:28:112:44 | expensiveHandler1 | This route handler performs $@, but is not rate-limited. | tst.js:14:40:14:46 | login() | authorization | +testFailures +| tst.js:103:4:103:20 | This route handler performs $@, but is not rate-limited. | Unexpected result: Alert | +| tst.js:110:4:110:20 | This route handler performs $@, but is not rate-limited. | Unexpected result: Alert | diff --git a/javascript/ql/test/query-tests/Security/CWE-770/MissingRateLimit/tst.js b/javascript/ql/test/query-tests/Security/CWE-770/MissingRateLimit/tst.js index 4f778afef684..5b4312bbbe0e 100644 --- a/javascript/ql/test/query-tests/Security/CWE-770/MissingRateLimit/tst.js +++ b/javascript/ql/test/query-tests/Security/CWE-770/MissingRateLimit/tst.js @@ -88,3 +88,25 @@ const fastifyApp = require('fastify')(); fastifyApp.get('/foo', expensiveHandler1); // $ Alert fastifyApp.register(require('fastify-rate-limit')); fastifyApp.get('/bar', expensiveHandler1); + +// Fastify per-route rate limiting via config.rateLimit +const fastifyApp2 = require('fastify')(); +fastifyApp2.register(require('@fastify/rate-limit')); + +fastifyApp2.post('/login', { + config: { + rateLimit: { + max: 3, + timeWindow: '1 minute' + } + } +}, expensiveHandler1); // OK - has per-route rateLimit config + +fastifyApp2.post('/signup', { + rateLimit: { + max: 5, + timeWindow: '1 minute' + } +}, expensiveHandler1); // OK - has per-route rateLimit directly in options + +fastifyApp2.post('/other', expensiveHandler1); // $ Alert - no rate limiting From 7a48409e386191f5fb0d95652bf0c431333c8d45 Mon Sep 17 00:00:00 2001 From: Tom Hvitved Date: Mon, 13 Apr 2026 11:23:08 +0200 Subject: [PATCH 110/157] JS: Recognize Fastify per-route rate limiting --- .../security/dataflow/MissingRateLimiting.qll | 18 ++++++++++++++++++ .../MissingRateLimiting.expected | 6 ------ 2 files changed, 18 insertions(+), 6 deletions(-) diff --git a/javascript/ql/lib/semmle/javascript/security/dataflow/MissingRateLimiting.qll b/javascript/ql/lib/semmle/javascript/security/dataflow/MissingRateLimiting.qll index 5f4ad1b3d73e..8dd9c4831446 100644 --- a/javascript/ql/lib/semmle/javascript/security/dataflow/MissingRateLimiting.qll +++ b/javascript/ql/lib/semmle/javascript/security/dataflow/MissingRateLimiting.qll @@ -191,3 +191,21 @@ class RouteHandlerLimitedByRateLimiterFlexible extends RateLimitingMiddleware in private class FastifyRateLimiter extends RateLimitingMiddleware { FastifyRateLimiter() { this = DataFlow::moduleImport("fastify-rate-limit") } } + +/** + * An options object with a `rateLimit` config passed to a Fastify shorthand route method, + * such as `fastify.post('/path', { config: { rateLimit: { ... } } }, handler)`. + */ +private class FastifyPerRouteRateLimit extends RateLimitingMiddleware { + FastifyPerRouteRateLimit() { + exists(Fastify::RouteSetup setup | + not setup.getMethodName() = ["route", "addHook"] and + setup.getNumArgument() >= 3 and + this.flowsTo(setup.getArgument(1)) + | + exists(this.getAPropertySource("config").getAPropertySource("rateLimit")) + or + exists(this.getAPropertySource("rateLimit")) + ) + } +} diff --git a/javascript/ql/test/query-tests/Security/CWE-770/MissingRateLimit/MissingRateLimiting.expected b/javascript/ql/test/query-tests/Security/CWE-770/MissingRateLimit/MissingRateLimiting.expected index 95f55486600a..8d197d6e37f6 100644 --- a/javascript/ql/test/query-tests/Security/CWE-770/MissingRateLimit/MissingRateLimiting.expected +++ b/javascript/ql/test/query-tests/Security/CWE-770/MissingRateLimit/MissingRateLimiting.expected @@ -1,4 +1,3 @@ -#select | MissingRateLimiting.js:4:19:8:1 | functio ... ath);\\n} | This route handler performs $@, but is not rate-limited. | MissingRateLimiting.js:7:5:7:22 | res.sendFile(path) | a file system access | | MissingRateLimiting.js:25:19:25:20 | f1 | This route handler performs $@, but is not rate-limited. | MissingRateLimiting.js:13:5:13:22 | res.sendFile(path) | a file system access | | MissingRateLimiting.js:25:27:25:28 | f3 | This route handler performs $@, but is not rate-limited. | MissingRateLimiting.js:22:5:22:22 | res.sendFile(path) | a file system access | @@ -10,9 +9,4 @@ | tst.js:64:25:64:63 | functio ... req); } | This route handler performs $@, but is not rate-limited. | tst.js:64:46:64:60 | verifyUser(req) | authorization | | tst.js:76:25:76:53 | catchAs ... ndler1) | This route handler performs $@, but is not rate-limited. | tst.js:14:40:14:46 | login() | authorization | | tst.js:88:24:88:40 | expensiveHandler1 | This route handler performs $@, but is not rate-limited. | tst.js:14:40:14:46 | login() | authorization | -| tst.js:103:4:103:20 | expensiveHandler1 | This route handler performs $@, but is not rate-limited. | tst.js:14:40:14:46 | login() | authorization | -| tst.js:110:4:110:20 | expensiveHandler1 | This route handler performs $@, but is not rate-limited. | tst.js:14:40:14:46 | login() | authorization | | tst.js:112:28:112:44 | expensiveHandler1 | This route handler performs $@, but is not rate-limited. | tst.js:14:40:14:46 | login() | authorization | -testFailures -| tst.js:103:4:103:20 | This route handler performs $@, but is not rate-limited. | Unexpected result: Alert | -| tst.js:110:4:110:20 | This route handler performs $@, but is not rate-limited. | Unexpected result: Alert | From fcfb8c9c6bc5e76f877b9d5748a68a1d2084889c Mon Sep 17 00:00:00 2001 From: Tom Hvitved Date: Mon, 13 Apr 2026 12:22:30 +0200 Subject: [PATCH 111/157] Add change note --- .../change-notes/2026-04-13-fastify-per-route-rate-limit.md | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 javascript/ql/src/change-notes/2026-04-13-fastify-per-route-rate-limit.md diff --git a/javascript/ql/src/change-notes/2026-04-13-fastify-per-route-rate-limit.md b/javascript/ql/src/change-notes/2026-04-13-fastify-per-route-rate-limit.md new file mode 100644 index 000000000000..56d523885248 --- /dev/null +++ b/javascript/ql/src/change-notes/2026-04-13-fastify-per-route-rate-limit.md @@ -0,0 +1,5 @@ +--- +category: minorAnalysis +--- +* The query `js/missing-rate-limiting` now takes Fastify per-route + rate limiting into account. From 2eeb31b47273cd4c156c02b86dbbbf756d0a20ba Mon Sep 17 00:00:00 2001 From: Taus Date: Mon, 13 Apr 2026 11:49:06 +0000 Subject: [PATCH 112/157] Python: Add tests for `lazy from ... import *` as well --- .../3/extractor-tests/lazy-imports/test.expected | 4 +++- .../ql/test/3/extractor-tests/lazy-imports/test.py | 2 ++ .../ql/test/3/extractor-tests/lazy-imports/test.ql | 12 ++++++++---- 3 files changed, 13 insertions(+), 5 deletions(-) diff --git a/python/ql/test/3/extractor-tests/lazy-imports/test.expected b/python/ql/test/3/extractor-tests/lazy-imports/test.expected index 9eb4f975dc4c..6c9aea1255e7 100644 --- a/python/ql/test/3/extractor-tests/lazy-imports/test.expected +++ b/python/ql/test/3/extractor-tests/lazy-imports/test.expected @@ -3,5 +3,7 @@ | 4 | Import | lazy | | 5 | Import | lazy | | 6 | Import | lazy | -| 9 | Import | normal | +| 7 | from l import * | lazy | | 10 | Import | normal | +| 11 | Import | normal | +| 12 | from w import * | normal | diff --git a/python/ql/test/3/extractor-tests/lazy-imports/test.py b/python/ql/test/3/extractor-tests/lazy-imports/test.py index 775cac00bbf4..ecb690089118 100644 --- a/python/ql/test/3/extractor-tests/lazy-imports/test.py +++ b/python/ql/test/3/extractor-tests/lazy-imports/test.py @@ -4,7 +4,9 @@ lazy from d import e as f lazy import g.h as i lazy from ..j import k +lazy from l import * # Non-lazy imports import x from y import z +from w import * diff --git a/python/ql/test/3/extractor-tests/lazy-imports/test.ql b/python/ql/test/3/extractor-tests/lazy-imports/test.ql index 312019c7cd1a..9728226ed7ee 100644 --- a/python/ql/test/3/extractor-tests/lazy-imports/test.ql +++ b/python/ql/test/3/extractor-tests/lazy-imports/test.ql @@ -1,7 +1,11 @@ import python -string lazy(Import imp) { if imp.isLazy() then result = "lazy" else result = "normal" } +string lazy(Stmt s) { + if s.(Import).isLazy() or s.(ImportStar).isLazy() then result = "lazy" else result = "normal" +} -from Import imp -where imp.getLocation().getFile().getShortName() = "test.py" -select imp.getLocation().getStartLine(), imp.toString(), lazy(imp) +from Stmt s +where + s.getLocation().getFile().getShortName() = "test.py" and + (s instanceof Import or s instanceof ImportStar) +select s.getLocation().getStartLine(), s.toString(), lazy(s) From d3e580fd0ed0b52c531f0bdaa4e17033dd604c1d Mon Sep 17 00:00:00 2001 From: Anders Schack-Mulligen Date: Mon, 13 Apr 2026 14:52:38 +0200 Subject: [PATCH 113/157] C#: Introduce Expr.getIntValue. --- .../ql/examples/snippets/integer_literal.ql | 2 +- .../ql/lib/semmle/code/csharp/Conversion.qll | 4 +-- .../code/csharp/commons/ComparisonTest.qll | 2 +- .../semmle/code/csharp/commons/Constants.qll | 4 +-- .../semmle/code/csharp/controlflow/Guards.qll | 27 +++++++------------ .../internal/rangeanalysis/ConstantUtils.qll | 2 +- .../ql/lib/semmle/code/csharp/exprs/Expr.qll | 7 +++++ .../system/runtime/CompilerServices.qll | 4 +-- csharp/ql/src/Likely Bugs/BadCheckOdd.ql | 10 +++---- .../src/Likely Bugs/MishandlingJapaneseEra.ql | 6 ++--- .../Likely Bugs/PossibleLossOfPrecision.ql | 4 +-- .../Security Features/InsufficientKeySize.ql | 6 ++--- 12 files changed, 38 insertions(+), 40 deletions(-) diff --git a/csharp/ql/examples/snippets/integer_literal.ql b/csharp/ql/examples/snippets/integer_literal.ql index 4546c1d174ba..36791fc8c374 100644 --- a/csharp/ql/examples/snippets/integer_literal.ql +++ b/csharp/ql/examples/snippets/integer_literal.ql @@ -9,5 +9,5 @@ import csharp from IntegerLiteral literal -where literal.getValue().toInt() = 0 +where literal.getIntValue() = 0 select literal diff --git a/csharp/ql/lib/semmle/code/csharp/Conversion.qll b/csharp/ql/lib/semmle/code/csharp/Conversion.qll index fd2c680e9c7f..e151944dc381 100644 --- a/csharp/ql/lib/semmle/code/csharp/Conversion.qll +++ b/csharp/ql/lib/semmle/code/csharp/Conversion.qll @@ -713,7 +713,7 @@ private class SignedIntegralConstantExpr extends Expr { } private predicate convConstantIntExpr(SignedIntegralConstantExpr e, SimpleType toType) { - exists(int n | n = e.getValue().toInt() | + exists(int n | n = e.getIntValue() | toType = any(SByteType t | n in [t.minValue() .. t.maxValue()]) or toType = any(ByteType t | n in [t.minValue() .. t.maxValue()]) @@ -730,7 +730,7 @@ private predicate convConstantIntExpr(SignedIntegralConstantExpr e, SimpleType t private predicate convConstantLongExpr(SignedIntegralConstantExpr e) { e.getType() instanceof LongType and - e.getValue().toInt() >= 0 + e.getIntValue() >= 0 } /** 6.1.10: Implicit reference conversions involving type parameters. */ diff --git a/csharp/ql/lib/semmle/code/csharp/commons/ComparisonTest.qll b/csharp/ql/lib/semmle/code/csharp/commons/ComparisonTest.qll index b4641560892b..776e2e97c370 100644 --- a/csharp/ql/lib/semmle/code/csharp/commons/ComparisonTest.qll +++ b/csharp/ql/lib/semmle/code/csharp/commons/ComparisonTest.qll @@ -161,7 +161,7 @@ private newtype TComparisonTest = compare.getComparisonKind().isCompare() and outerKind = outer.getComparisonKind() and outer.getAnArgument() = compare.getExpr() and - i = outer.getAnArgument().getValue().toInt() + i = outer.getAnArgument().getIntValue() | outerKind.isEquality() and ( diff --git a/csharp/ql/lib/semmle/code/csharp/commons/Constants.qll b/csharp/ql/lib/semmle/code/csharp/commons/Constants.qll index 5025202eb217..a5f1bc43abee 100644 --- a/csharp/ql/lib/semmle/code/csharp/commons/Constants.qll +++ b/csharp/ql/lib/semmle/code/csharp/commons/Constants.qll @@ -32,13 +32,13 @@ private module ConstantComparisonOperation { private int maxValue(Expr expr) { if convertedType(expr) instanceof IntegralType and exists(expr.getValue()) - then result = expr.getValue().toInt() + then result = expr.getIntValue() else result = convertedType(expr).maxValue() } private int minValue(Expr expr) { if convertedType(expr) instanceof IntegralType and exists(expr.getValue()) - then result = expr.getValue().toInt() + then result = expr.getIntValue() else result = convertedType(expr).minValue() } diff --git a/csharp/ql/lib/semmle/code/csharp/controlflow/Guards.qll b/csharp/ql/lib/semmle/code/csharp/controlflow/Guards.qll index 6c1eb8c06eb9..66b591cfcd25 100644 --- a/csharp/ql/lib/semmle/code/csharp/controlflow/Guards.qll +++ b/csharp/ql/lib/semmle/code/csharp/controlflow/Guards.qll @@ -60,25 +60,16 @@ private module GuardsInput implements override boolean asBooleanValue() { boolConst(this, result) } } - private predicate intConst(Expr e, int i) { - e.getValue().toInt() = i and - ( - e.getType() instanceof Enum - or - e.getType() instanceof IntegralType - ) - } - private class IntegerConstant extends ConstantExpr { - IntegerConstant() { intConst(this, _) } + IntegerConstant() { exists(this.getIntValue()) } - override int asIntegerValue() { intConst(this, result) } + override int asIntegerValue() { result = this.getIntValue() } } private class EnumConst extends ConstantExpr { EnumConst() { this.getType() instanceof Enum and this.hasValue() } - override int asIntegerValue() { result = this.getValue().toInt() } + override int asIntegerValue() { result = this.getIntValue() } } private class StringConstant extends ConstantExpr instanceof StringLiteral { @@ -517,35 +508,35 @@ class EnumerableCollectionExpr extends Expr { | // x.Length == 0 ct.getComparisonKind().isEquality() and - ct.getAnArgument().getValue().toInt() = 0 and + ct.getAnArgument().getIntValue() = 0 and branch = isEmpty or // x.Length == k, k > 0 ct.getComparisonKind().isEquality() and - ct.getAnArgument().getValue().toInt() > 0 and + ct.getAnArgument().getIntValue() > 0 and branch = true and isEmpty = false or // x.Length != 0 ct.getComparisonKind().isInequality() and - ct.getAnArgument().getValue().toInt() = 0 and + ct.getAnArgument().getIntValue() = 0 and branch = isEmpty.booleanNot() or // x.Length != k, k != 0 ct.getComparisonKind().isInequality() and - ct.getAnArgument().getValue().toInt() != 0 and + ct.getAnArgument().getIntValue() != 0 and branch = false and isEmpty = false or // x.Length > k, k >= 0 ct.getComparisonKind().isLessThan() and - ct.getFirstArgument().getValue().toInt() >= 0 and + ct.getFirstArgument().getIntValue() >= 0 and branch = true and isEmpty = false or // x.Length >= k, k > 0 ct.getComparisonKind().isLessThanEquals() and - ct.getFirstArgument().getValue().toInt() > 0 and + ct.getFirstArgument().getIntValue() > 0 and branch = true and isEmpty = false ) diff --git a/csharp/ql/lib/semmle/code/csharp/dataflow/internal/rangeanalysis/ConstantUtils.qll b/csharp/ql/lib/semmle/code/csharp/dataflow/internal/rangeanalysis/ConstantUtils.qll index e3f5deb98989..bea31ed7f551 100644 --- a/csharp/ql/lib/semmle/code/csharp/dataflow/internal/rangeanalysis/ConstantUtils.qll +++ b/csharp/ql/lib/semmle/code/csharp/dataflow/internal/rangeanalysis/ConstantUtils.qll @@ -23,7 +23,7 @@ predicate systemArrayLengthAccess(PropertyAccess pa) { * - a read of the `Length` of an array with `val` lengths. */ private predicate constantIntegerExpr(ExprNode e, int val) { - e.getValue().toInt() = val + e.getExpr().getIntValue() = val or exists(ExprNode src | e = getAnExplicitDefinitionRead(src) and diff --git a/csharp/ql/lib/semmle/code/csharp/exprs/Expr.qll b/csharp/ql/lib/semmle/code/csharp/exprs/Expr.qll index 36eda82531c5..a26afb004901 100644 --- a/csharp/ql/lib/semmle/code/csharp/exprs/Expr.qll +++ b/csharp/ql/lib/semmle/code/csharp/exprs/Expr.qll @@ -57,6 +57,13 @@ class Expr extends ControlFlowElement, @expr { /** Gets the value of this expression, if any */ string getValue() { expr_value(this, result) } + /** Gets the integer value of this expression, if any. */ + cached + int getIntValue() { + result = this.getValue().toInt() and + (this.getType() instanceof IntegralType or this.getType() instanceof Enum) + } + /** Holds if this expression has a value. */ final predicate hasValue() { exists(this.getValue()) } diff --git a/csharp/ql/lib/semmle/code/csharp/frameworks/system/runtime/CompilerServices.qll b/csharp/ql/lib/semmle/code/csharp/frameworks/system/runtime/CompilerServices.qll index 2c0ba292b9c5..aca2cb2cb1c3 100644 --- a/csharp/ql/lib/semmle/code/csharp/frameworks/system/runtime/CompilerServices.qll +++ b/csharp/ql/lib/semmle/code/csharp/frameworks/system/runtime/CompilerServices.qll @@ -81,7 +81,7 @@ class SystemRuntimeCompilerServicesInlineArrayAttribute extends Attribute { /** * Gets the length of the inline array. */ - int getLength() { result = this.getConstructorArgument(0).getValue().toInt() } + int getLength() { result = this.getConstructorArgument(0).getIntValue() } } /** An attribute of type `System.Runtime.CompilerServices.OverloadResolutionPriority`. */ @@ -94,5 +94,5 @@ class SystemRuntimeCompilerServicesOverloadResolutionPriorityAttribute extends A /** * Gets the priority number. */ - int getPriority() { result = this.getConstructorArgument(0).getValue().toInt() } + int getPriority() { result = this.getConstructorArgument(0).getIntValue() } } diff --git a/csharp/ql/src/Likely Bugs/BadCheckOdd.ql b/csharp/ql/src/Likely Bugs/BadCheckOdd.ql index 34ae4b632aec..72924f9103d8 100644 --- a/csharp/ql/src/Likely Bugs/BadCheckOdd.ql +++ b/csharp/ql/src/Likely Bugs/BadCheckOdd.ql @@ -13,7 +13,7 @@ import csharp predicate isDefinitelyPositive(Expr e) { - e.getValue().toInt() >= 0 or + e.getIntValue() >= 0 or e.(PropertyAccess).getTarget().hasName("Length") or e.(MethodCall).getTarget().hasUndecoratedName("Count") } @@ -23,12 +23,12 @@ where t.getLeftOperand() = lhs and t.getRightOperand() = rhs and not isDefinitelyPositive(lhs.getLeftOperand().stripCasts()) and - lhs.getRightOperand().(IntegerLiteral).getValue() = "2" and + lhs.getRightOperand().(IntegerLiteral).getIntValue() = 2 and ( - t instanceof EQExpr and rhs.getValue() = "1" and parity = "oddness" + t instanceof EQExpr and rhs.getIntValue() = 1 and parity = "oddness" or - t instanceof NEExpr and rhs.getValue() = "1" and parity = "evenness" + t instanceof NEExpr and rhs.getIntValue() = 1 and parity = "evenness" or - t instanceof GTExpr and rhs.getValue() = "0" and parity = "oddness" + t instanceof GTExpr and rhs.getIntValue() = 0 and parity = "oddness" ) select t, "Possibly invalid test for " + parity + ". This will fail for negative numbers." diff --git a/csharp/ql/src/Likely Bugs/MishandlingJapaneseEra.ql b/csharp/ql/src/Likely Bugs/MishandlingJapaneseEra.ql index c8df36bf7bf2..3e54a3a00dbd 100644 --- a/csharp/ql/src/Likely Bugs/MishandlingJapaneseEra.ql +++ b/csharp/ql/src/Likely Bugs/MishandlingJapaneseEra.ql @@ -27,8 +27,8 @@ predicate isExactEraStartDateCreation(ObjectCreation cr) { cr.getType().hasFullyQualifiedName("System", "DateTime") or cr.getType().hasFullyQualifiedName("System", "DateTimeOffset") ) and - isEraStart(cr.getArgument(0).getValue().toInt(), cr.getArgument(1).getValue().toInt(), - cr.getArgument(2).getValue().toInt()) + isEraStart(cr.getArgument(0).getIntValue(), cr.getArgument(1).getIntValue(), + cr.getArgument(2).getIntValue()) } predicate isDateFromJapaneseCalendarToDateTime(MethodCall mc) { @@ -44,7 +44,7 @@ predicate isDateFromJapaneseCalendarToDateTime(MethodCall mc) { mc.getNumberOfArguments() = 7 // implicitly current era or mc.getNumberOfArguments() = 8 and - mc.getArgument(7).getValue() = "0" + mc.getArgument(7).getIntValue() = 0 ) // explicitly current era } diff --git a/csharp/ql/src/Likely Bugs/PossibleLossOfPrecision.ql b/csharp/ql/src/Likely Bugs/PossibleLossOfPrecision.ql index 8b719bb92a57..1c41d24fb3c1 100644 --- a/csharp/ql/src/Likely Bugs/PossibleLossOfPrecision.ql +++ b/csharp/ql/src/Likely Bugs/PossibleLossOfPrecision.ql @@ -40,8 +40,8 @@ predicate convertedToFloatOrDecimal(Expr e, Type t) { /** Holds if `div` is an exact integer division. */ predicate exactDivision(DivExpr div) { exists(int numerator, int denominator | - numerator = div.getNumerator().stripCasts().getValue().toInt() and - denominator = div.getDenominator().stripCasts().getValue().toInt() and + numerator = div.getNumerator().stripCasts().getIntValue() and + denominator = div.getDenominator().stripCasts().getIntValue() and numerator % denominator = 0 ) } diff --git a/csharp/ql/src/Security Features/InsufficientKeySize.ql b/csharp/ql/src/Security Features/InsufficientKeySize.ql index 02be9125835b..98a7852fbaf5 100644 --- a/csharp/ql/src/Security Features/InsufficientKeySize.ql +++ b/csharp/ql/src/Security Features/InsufficientKeySize.ql @@ -20,7 +20,7 @@ predicate incorrectUseOfRC2(Assignment e, string msg) { .getDeclaringType() .hasFullyQualifiedName("System.Security.Cryptography", "RC2CryptoServiceProvider") ) and - e.getRightOperand().getValue().toInt() < 128 and + e.getRightOperand().getIntValue() < 128 and msg = "Key size should be at least 128 bits for RC2 encryption." } @@ -28,7 +28,7 @@ predicate incorrectUseOfDsa(ObjectCreation e, string msg) { e.getTarget() .getDeclaringType() .hasFullyQualifiedName("System.Security.Cryptography", "DSACryptoServiceProvider") and - exists(Expr i | e.getArgument(0) = i and i.getValue().toInt() < 2048) and + exists(Expr i | e.getArgument(0) = i and i.getIntValue() < 2048) and msg = "Key size should be at least 2048 bits for DSA encryption." } @@ -36,7 +36,7 @@ predicate incorrectUseOfRsa(ObjectCreation e, string msg) { e.getTarget() .getDeclaringType() .hasFullyQualifiedName("System.Security.Cryptography", "RSACryptoServiceProvider") and - exists(Expr i | e.getArgument(0) = i and i.getValue().toInt() < 2048) and + exists(Expr i | e.getArgument(0) = i and i.getIntValue() < 2048) and msg = "Key size should be at least 2048 bits for RSA encryption." } From 19c4b2ff8f2c47fcfda886ed5fcf427f43408123 Mon Sep 17 00:00:00 2001 From: Jeroen Ketema Date: Mon, 13 Apr 2026 15:44:41 +0200 Subject: [PATCH 114/157] C++: Use `getConvSpecString` instead of `getConvSpecOffset` and `substring` --- cpp/ql/lib/semmle/code/cpp/commons/Printf.qll | 19 +++++++++++-------- cpp/ql/lib/semmle/code/cpp/commons/Scanf.qll | 13 +++++++++---- 2 files changed, 20 insertions(+), 12 deletions(-) diff --git a/cpp/ql/lib/semmle/code/cpp/commons/Printf.qll b/cpp/ql/lib/semmle/code/cpp/commons/Printf.qll index d189dd36f87c..253838d2ec39 100644 --- a/cpp/ql/lib/semmle/code/cpp/commons/Printf.qll +++ b/cpp/ql/lib/semmle/code/cpp/commons/Printf.qll @@ -459,6 +459,13 @@ class FormatLiteral extends Literal instanceof StringLiteral { */ int getConvSpecOffset(int n) { result = this.getFormat().indexOf("%", n, 0) } + /** + * Gets the nth conversion specifier string. + */ + private string getConvSpecString(int n) { + n >= 0 and result = "%" + this.getFormat().splitAt("%", n + 1) + } + /* * Each of these predicates gets a regular expressions to match each individual * parts of a conversion specifier. @@ -524,10 +531,8 @@ class FormatLiteral extends Literal instanceof StringLiteral { int n, string spec, string params, string flags, string width, string prec, string len, string conv ) { - exists(int offset, string fmt, string rst, string regexp | - offset = this.getConvSpecOffset(n) and - fmt = this.getFormat() and - rst = fmt.substring(offset, fmt.length()) and + exists(string rst, string regexp | + rst = this.getConvSpecString(n) and regexp = this.getConvSpecRegexp() and ( spec = rst.regexpCapture(regexp, 1) and @@ -554,10 +559,8 @@ class FormatLiteral extends Literal instanceof StringLiteral { * Gets the nth conversion specifier (including the initial `%`). */ string getConvSpec(int n) { - exists(int offset, string fmt, string rst, string regexp | - offset = this.getConvSpecOffset(n) and - fmt = this.getFormat() and - rst = fmt.substring(offset, fmt.length()) and + exists(string rst, string regexp | + rst = this.getConvSpecString(n) and regexp = this.getConvSpecRegexp() and result = rst.regexpCapture(regexp, 1) ) diff --git a/cpp/ql/lib/semmle/code/cpp/commons/Scanf.qll b/cpp/ql/lib/semmle/code/cpp/commons/Scanf.qll index f032ba4749e6..b683530e822e 100644 --- a/cpp/ql/lib/semmle/code/cpp/commons/Scanf.qll +++ b/cpp/ql/lib/semmle/code/cpp/commons/Scanf.qll @@ -194,6 +194,13 @@ class ScanfFormatLiteral extends Expr { ) } + /** + * Gets the nth conversion specifier string. + */ + private string getConvSpecString(int n) { + n >= 0 and result = "%" + this.getFormat().splitAt("%", n + 1) + } + /** * Gets the regular expression to match each individual part of a conversion specifier. */ @@ -227,10 +234,8 @@ class ScanfFormatLiteral extends Expr { * specifier. */ predicate parseConvSpec(int n, string spec, string width, string len, string conv) { - exists(int offset, string fmt, string rst, string regexp | - offset = this.getConvSpecOffset(n) and - fmt = this.getFormat() and - rst = fmt.substring(offset, fmt.length()) and + exists(string rst, string regexp | + rst = this.getConvSpecString(n) and regexp = this.getConvSpecRegexp() and ( spec = rst.regexpCapture(regexp, 1) and From b19f2c687426be76cb508df862b8e2da2490d2f8 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 14 Apr 2026 03:04:45 +0000 Subject: [PATCH 115/157] Bump the extractor-dependencies group in /go/extractor with 2 updates Bumps the extractor-dependencies group in /go/extractor with 2 updates: [golang.org/x/mod](https://github.com/golang/mod) and [golang.org/x/tools](https://github.com/golang/tools). Updates `golang.org/x/mod` from 0.34.0 to 0.35.0 - [Commits](https://github.com/golang/mod/compare/v0.34.0...v0.35.0) Updates `golang.org/x/tools` from 0.43.0 to 0.44.0 - [Release notes](https://github.com/golang/tools/releases) - [Commits](https://github.com/golang/tools/compare/v0.43.0...v0.44.0) --- updated-dependencies: - dependency-name: golang.org/x/mod dependency-version: 0.35.0 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: extractor-dependencies - dependency-name: golang.org/x/tools dependency-version: 0.44.0 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: extractor-dependencies ... Signed-off-by: dependabot[bot] --- go/extractor/go.mod | 4 ++-- go/extractor/go.sum | 8 ++++---- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/go/extractor/go.mod b/go/extractor/go.mod index ae43e8a51bd3..18415e544020 100644 --- a/go/extractor/go.mod +++ b/go/extractor/go.mod @@ -9,8 +9,8 @@ toolchain go1.26.0 // when adding or removing dependencies, run // bazel mod tidy require ( - golang.org/x/mod v0.34.0 - golang.org/x/tools v0.43.0 + golang.org/x/mod v0.35.0 + golang.org/x/tools v0.44.0 ) require github.com/stretchr/testify v1.11.1 diff --git a/go/extractor/go.sum b/go/extractor/go.sum index 8bb3f3dc9fc8..89e151102bd8 100644 --- a/go/extractor/go.sum +++ b/go/extractor/go.sum @@ -6,12 +6,12 @@ github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZb github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= github.com/stretchr/testify v1.11.1 h1:7s2iGBzp5EwR7/aIZr8ao5+dra3wiQyKjjFuvgVKu7U= github.com/stretchr/testify v1.11.1/go.mod h1:wZwfW3scLgRK+23gO65QZefKpKQRnfz6sD981Nm4B6U= -golang.org/x/mod v0.34.0 h1:xIHgNUUnW6sYkcM5Jleh05DvLOtwc6RitGHbDk4akRI= -golang.org/x/mod v0.34.0/go.mod h1:ykgH52iCZe79kzLLMhyCUzhMci+nQj+0XkbXpNYtVjY= +golang.org/x/mod v0.35.0 h1:Ww1D637e6Pg+Zb2KrWfHQUnH2dQRLBQyAtpr/haaJeM= +golang.org/x/mod v0.35.0/go.mod h1:+GwiRhIInF8wPm+4AoT6L0FA1QWAad3OMdTRx4tFYlU= golang.org/x/sync v0.20.0 h1:e0PTpb7pjO8GAtTs2dQ6jYa5BWYlMuX047Dco/pItO4= golang.org/x/sync v0.20.0/go.mod h1:9xrNwdLfx4jkKbNva9FpL6vEN7evnE43NNNJQ2LF3+0= -golang.org/x/tools v0.43.0 h1:12BdW9CeB3Z+J/I/wj34VMl8X+fEXBxVR90JeMX5E7s= -golang.org/x/tools v0.43.0/go.mod h1:uHkMso649BX2cZK6+RpuIPXS3ho2hZo4FVwfoy1vIk0= +golang.org/x/tools v0.44.0 h1:UP4ajHPIcuMjT1GqzDWRlalUEoY+uzoZKnhOjbIPD2c= +golang.org/x/tools v0.44.0/go.mod h1:KA0AfVErSdxRZIsOVipbv3rQhVXTnlU6UhKxHd1seDI= gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405 h1:yhCVgyC4o1eVCa2tZl7eS0r+SDo693bJlVdllGtEeKM= gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA= From 26715fc95c40363ffdef45fafb4f9a2745ddac69 Mon Sep 17 00:00:00 2001 From: Jeroen Ketema Date: Tue, 14 Apr 2026 08:03:51 +0200 Subject: [PATCH 116/157] C++: Rename `rst` to `convSpec` --- cpp/ql/lib/semmle/code/cpp/commons/Printf.qll | 28 +++++++++---------- cpp/ql/lib/semmle/code/cpp/commons/Scanf.qll | 12 ++++---- 2 files changed, 20 insertions(+), 20 deletions(-) diff --git a/cpp/ql/lib/semmle/code/cpp/commons/Printf.qll b/cpp/ql/lib/semmle/code/cpp/commons/Printf.qll index 253838d2ec39..624465761c2c 100644 --- a/cpp/ql/lib/semmle/code/cpp/commons/Printf.qll +++ b/cpp/ql/lib/semmle/code/cpp/commons/Printf.qll @@ -531,20 +531,20 @@ class FormatLiteral extends Literal instanceof StringLiteral { int n, string spec, string params, string flags, string width, string prec, string len, string conv ) { - exists(string rst, string regexp | - rst = this.getConvSpecString(n) and + exists(string convSpec, string regexp | + convSpec = this.getConvSpecString(n) and regexp = this.getConvSpecRegexp() and ( - spec = rst.regexpCapture(regexp, 1) and - params = rst.regexpCapture(regexp, 2) and - flags = rst.regexpCapture(regexp, 3) and - width = rst.regexpCapture(regexp, 4) and - prec = rst.regexpCapture(regexp, 5) and - len = rst.regexpCapture(regexp, 6) and - conv = rst.regexpCapture(regexp, 7) + spec = convSpec.regexpCapture(regexp, 1) and + params = convSpec.regexpCapture(regexp, 2) and + flags = convSpec.regexpCapture(regexp, 3) and + width = convSpec.regexpCapture(regexp, 4) and + prec = convSpec.regexpCapture(regexp, 5) and + len = convSpec.regexpCapture(regexp, 6) and + conv = convSpec.regexpCapture(regexp, 7) or - spec = rst.regexpCapture(regexp, 1) and - not exists(rst.regexpCapture(regexp, 2)) and + spec = convSpec.regexpCapture(regexp, 1) and + not exists(convSpec.regexpCapture(regexp, 2)) and params = "" and flags = "" and width = "" and @@ -559,10 +559,10 @@ class FormatLiteral extends Literal instanceof StringLiteral { * Gets the nth conversion specifier (including the initial `%`). */ string getConvSpec(int n) { - exists(string rst, string regexp | - rst = this.getConvSpecString(n) and + exists(string convSpec, string regexp | + convSpec = this.getConvSpecString(n) and regexp = this.getConvSpecRegexp() and - result = rst.regexpCapture(regexp, 1) + result = convSpec.regexpCapture(regexp, 1) ) } diff --git a/cpp/ql/lib/semmle/code/cpp/commons/Scanf.qll b/cpp/ql/lib/semmle/code/cpp/commons/Scanf.qll index b683530e822e..98280a522cfd 100644 --- a/cpp/ql/lib/semmle/code/cpp/commons/Scanf.qll +++ b/cpp/ql/lib/semmle/code/cpp/commons/Scanf.qll @@ -234,14 +234,14 @@ class ScanfFormatLiteral extends Expr { * specifier. */ predicate parseConvSpec(int n, string spec, string width, string len, string conv) { - exists(string rst, string regexp | - rst = this.getConvSpecString(n) and + exists(string convSpec, string regexp | + convSpec = this.getConvSpecString(n) and regexp = this.getConvSpecRegexp() and ( - spec = rst.regexpCapture(regexp, 1) and - width = rst.regexpCapture(regexp, 2) and - len = rst.regexpCapture(regexp, 3) and - conv = rst.regexpCapture(regexp, 4) + spec = convSpec.regexpCapture(regexp, 1) and + width = convSpec.regexpCapture(regexp, 2) and + len = convSpec.regexpCapture(regexp, 3) and + conv = convSpec.regexpCapture(regexp, 4) ) ) } From 0db62b2e687aa43b51eafcc4608bc607172901c3 Mon Sep 17 00:00:00 2001 From: Tom Hvitved Date: Tue, 14 Apr 2026 09:19:22 +0200 Subject: [PATCH 117/157] Type inference: Fix bad join Before ``` Pipeline standard for TypeInference::M2::SatisfiesConstraintWithTypeMatching::TermIsInstantiationOfCondition::typeParametersHaveEqualInstantiationToIndex/4#dde26112@d5eb7x9q was evaluated in 471 iterations totaling 24306ms (delta sizes total: 42097188). 5676156578 ~1% {7} r1 = JOIN `TypeInference::M2::SatisfiesConstraintWithTypeMatching::TermIsInstantiationOfCondition::typeParametersHaveEqualInstantiationToIndex/4#dde26112#prev_delta` WITH `TypeInference::M2::SatisfiesConstraintWithTypeMatching::TermIsInstantiationOfCondition::typeParametersEqual/4#a276e5d4#prev` ON FIRST 3 OUTPUT Lhs.0, Lhs.1, Lhs.2, Rhs.3, _, Lhs.3, _ {5} | REWRITE WITH Tmp.4 := 1, Out.4 := (Tmp.4 + In.5), Tmp.6 := 0, TEST Out.4 != Tmp.6 KEEPING 5 5676156578 ~1% {5} | SCAN OUTPUT In.1, In.4, In.3, In.0, In.2 41691564 ~1% {4} | JOIN WITH `TypeInference::M2::SatisfiesConstraintWithTypeMatching::TermIsInstantiationOfCondition::getNthTypeParameter/2#40c66343` ON FIRST 3 OUTPUT Lhs.3, Lhs.0, Lhs.4, Lhs.1 42097188 ~2% {4} r2 = SCAN `TypeInference::M2::SatisfiesConstraintWithTypeMatching::TermIsInstantiationOfCondition::typeParametersEqual/4#a276e5d4#prev_delta` OUTPUT In.1, In.3, In.0, In.2 42097188 ~1% {5} r3 = JOIN r2 WITH `TypeInference::M2::SatisfiesConstraintWithTypeMatching::TermIsInstantiationOfCondition::getNthTypeParameter/2#40c66343_021#join_rhs` ON FIRST 2 OUTPUT Lhs.2, Lhs.0, Lhs.3, Rhs.2, _ {4} | REWRITE WITH Tmp.4 := 0, TEST InOut.3 != Tmp.4 KEEPING 4 41691564 ~1% {5} | SCAN OUTPUT In.0, In.1, In.2, _, In.3 41691564 ~1% {5} | REWRITE WITH Tmp.3 := 1, Out.3 := (InOut.4 - Tmp.3) 0 ~0% {4} | JOIN WITH `TypeInference::M2::SatisfiesConstraintWithTypeMatching::TermIsInstantiationOfCondition::typeParametersHaveEqualInstantiationToIndex/4#dde26112#prev` ON FIRST 4 OUTPUT Lhs.0, Lhs.1, Lhs.2, Lhs.4 42097188 ~0% {6} r4 = JOIN r2 WITH `TypeInference::M2::SatisfiesConstraintWithTypeMatching::TermIsInstantiationOfCondition::getNthTypeParameter/2#40c66343_021#join_rhs` ON FIRST 2 OUTPUT Lhs.2, Lhs.0, Lhs.3, Lhs.1, Rhs.2, _ {5} | REWRITE WITH Tmp.5 := 0, TEST InOut.4 = Tmp.5 KEEPING 5 405624 ~1% {5} | SCAN OUTPUT In.1, _, In.3, In.0, In.2 405624 ~1% {5} | REWRITE WITH Out.1 := 0 405624 ~0% {4} | JOIN WITH `TypeInference::M2::SatisfiesConstraintWithTypeMatching::TermIsInstantiationOfCondition::getNthTypeParameter/2#40c66343` ON FIRST 3 OUTPUT Lhs.3, Lhs.0, Lhs.4, _ 405624 ~1% {4} | REWRITE WITH Out.3 := 0 42097188 ~1% {4} r5 = r1 UNION r3 UNION r4 42097188 ~1% {4} | AND NOT `TypeInference::M2::SatisfiesConstraintWithTypeMatching::TermIsInstantiationOfCondition::typeParametersHaveEqualInstantiationToIndex/4#dde26112#prev`(FIRST 4) return r5 ``` After ``` Pipeline standard for TypeInference::M2::SatisfiesConstraintWithTypeMatching::TermIsInstantiationOfCondition::typeParametersHaveEqualInstantiationToIndex/4#dde26112@96df1x2u was evaluated in 471 iterations totaling 4058ms (delta sizes total: 42097188). 42097188 ~0% {4} r1 = SCAN `TypeInference::M2::SatisfiesConstraintWithTypeMatching::TermIsInstantiationOfCondition::typeParametersEqual/5#ddfcf430#prev_delta` OUTPUT In.3, In.0, In.1, In.2 405624 ~0% {4} | JOIN WITH const_0 ON FIRST 1 OUTPUT Lhs.1, Lhs.2, Lhs.3, _ 405624 ~1% {4} | REWRITE WITH Out.3 := 0 42097188 ~1% {6} r2 = SCAN `TypeInference::M2::SatisfiesConstraintWithTypeMatching::TermIsInstantiationOfCondition::typeParametersHaveEqualInstantiationToIndex/4#dde26112#prev_delta` OUTPUT In.0, In.1, In.2, _, In.3, _ 42097188 ~1% {4} | REWRITE WITH Tmp.3 := 1, Out.3 := (Tmp.3 + In.4), Tmp.5 := 0, TEST Out.3 != Tmp.5 KEEPING 4 41691564 ~1% {4} | JOIN WITH `TypeInference::M2::SatisfiesConstraintWithTypeMatching::TermIsInstantiationOfCondition::typeParametersEqual/5#ddfcf430#prev` ON FIRST 4 OUTPUT Lhs.0, Lhs.1, Lhs.2, Lhs.3 42097188 ~1% {6} r3 = SCAN `TypeInference::M2::SatisfiesConstraintWithTypeMatching::TermIsInstantiationOfCondition::typeParametersEqual/5#ddfcf430#prev_delta` OUTPUT In.0, In.1, In.2, In.3, In.4, _ {5} | REWRITE WITH Tmp.5 := 0, TEST InOut.3 != Tmp.5 KEEPING 5 41691564 ~1% {5} | SCAN OUTPUT In.0, In.1, In.2, _, In.3 41691564 ~1% {5} | REWRITE WITH Tmp.3 := 1, Out.3 := (InOut.4 - Tmp.3) 0 ~0% {4} | JOIN WITH `TypeInference::M2::SatisfiesConstraintWithTypeMatching::TermIsInstantiationOfCondition::typeParametersHaveEqualInstantiationToIndex/4#dde26112#prev` ON FIRST 4 OUTPUT Lhs.0, Lhs.1, Lhs.2, Lhs.4 42097188 ~1% {4} r4 = r1 UNION r2 UNION r3 42097188 ~1% {4} | AND NOT `TypeInference::M2::SatisfiesConstraintWithTypeMatching::TermIsInstantiationOfCondition::typeParametersHaveEqualInstantiationToIndex/4#dde26112#prev`(FIRST 4) return r4 ``` --- .../typeinference/internal/TypeInference.qll | 22 +++++++++---------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/shared/typeinference/codeql/typeinference/internal/TypeInference.qll b/shared/typeinference/codeql/typeinference/internal/TypeInference.qll index 888ca65fa98a..9f4be49d878a 100644 --- a/shared/typeinference/codeql/typeinference/internal/TypeInference.qll +++ b/shared/typeinference/codeql/typeinference/internal/TypeInference.qll @@ -566,15 +566,17 @@ module Make1 Input1> { ) } + pragma[nomagic] private predicate typeParametersEqual( - App app, TypeAbstraction abs, Constraint constraint, TypeParameter tp + App app, TypeAbstraction abs, Constraint constraint, int i ) { - satisfiesConcreteTypes(app, abs, constraint) and - tp = getNthTypeParameter(abs, _) and - ( + exists(TypeParameter tp | + satisfiesConcreteTypes(app, abs, constraint) and + tp = getNthTypeParameter(abs, i) + | not exists(getNthTypeParameterPath(constraint, tp, _)) or - exists(int n | n = max(int i | exists(getNthTypeParameterPath(constraint, tp, i))) | + exists(int n | n = max(int j | exists(getNthTypeParameterPath(constraint, tp, j))) | // If the largest index is 0, then there are no equalities to check as // the type parameter only occurs once. if n = 0 then any() else typeParametersEqualToIndex(app, abs, constraint, tp, _, n) @@ -585,12 +587,10 @@ module Make1 Input1> { private predicate typeParametersHaveEqualInstantiationToIndex( App app, TypeAbstraction abs, Constraint constraint, int i ) { - exists(TypeParameter tp | tp = getNthTypeParameter(abs, i) | - typeParametersEqual(app, abs, constraint, tp) and - if i = 0 - then any() - else typeParametersHaveEqualInstantiationToIndex(app, abs, constraint, i - 1) - ) + typeParametersEqual(app, abs, constraint, i) and + if i = 0 + then any() + else typeParametersHaveEqualInstantiationToIndex(app, abs, constraint, i - 1) } /** From d69be77035878eda69d1edb4c7720a70f349441a Mon Sep 17 00:00:00 2001 From: Tom Hvitved Date: Tue, 14 Apr 2026 09:20:05 +0200 Subject: [PATCH 118/157] Rust: Avoid expensive regex calls Before ``` Pipeline standard for TypeInference::AssocFunctionResolution::AssocFunctionCall.hasIncompatibleTarget/5#85c07422@d5eb7r0w was evaluated in 782 iterations totaling 13208ms (delta sizes total: 20187834). 1464 ~2% {7} r1 = JOIN `TypeInference::AssocFunctionResolution::SelfArgIsInstantiationOf::argIsInstantiationOf/6#aaa87ac9#prev_delta` WITH `TypeInference::AssocFunctionResolution::OverloadedCallArgsAreInstantiationsOf::argsAreNotInstantiationsOf/2#6a6070f7#prev` ON FIRST 2 OUTPUT Lhs.5, _, Lhs.0, Lhs.1, Lhs.2, Lhs.3, Lhs.4 1464 ~0% {7} | REWRITE WITH Out.1 := "" 1464 ~0% {6} | JOIN WITH `FunctionType::AssocFunctionType.getTypeAt/1#dispred#d4d46f61` ON FIRST 2 OUTPUT Lhs.2, Lhs.3, Lhs.4, Lhs.5, Lhs.6, Rhs.2 173691 ~1% {7} r2 = JOIN `TypeInference::AssocFunctionResolution::OverloadedCallArgsAreInstantiationsOf::argsAreNotInstantiationsOf/2#6a6070f7#prev_delta` WITH `TypeInference::AssocFunctionResolution::SelfArgIsInstantiationOf::argIsInstantiationOf/6#aaa87ac9#prev` ON FIRST 2 OUTPUT Rhs.5, _, Lhs.0, Lhs.1, Rhs.2, Rhs.3, Rhs.4 173691 ~1% {7} | REWRITE WITH Out.1 := "" 173691 ~1% {6} | JOIN WITH `FunctionType::AssocFunctionType.getTypeAt/1#dispred#d4d46f61` ON FIRST 2 OUTPUT Lhs.2, Lhs.3, Lhs.4, Lhs.5, Lhs.6, Rhs.2 20022454 ~0% {7} r3 = SCAN `TypeInference::AssocFunctionResolution::SelfArgIsInstantiationOf::argIsNotInstantiationOf/6#1b8e512e#prev_delta` OUTPUT In.0, In.1, In.2, In.3, In.4, In.5, _ 20022454 ~0% {7} | REWRITE WITH Out.6 := "^([0-9]+)\\..*$" 20022175 ~2% {9} | JOIN WITH PRIMITIVE regexpCapture#bbff ON Lhs.5,Lhs.6 20022175 ~2% {10} | SCAN OUTPUT In.0, In.1, In.2, In.3, In.4, In.5, In.6, In.7, In.8, _ {9} | REWRITE WITH Tmp.9 := 1, TEST InOut.7 = Tmp.9 KEEPING 9 20022175 ~1% {7} | SCAN OUTPUT In.8, In.0, In.1, In.2, In.3, In.4, In.5 20022175 ~1% {8} | JOIN WITH `UnboundList::Make::encode/1#47b2ec3f_10#join_rhs` ON FIRST 1 OUTPUT Rhs.1, Lhs.1, Lhs.2, Lhs.3, Lhs.4, Lhs.5, Lhs.6, Lhs.0 20022175 ~0% {10} | JOIN WITH `Type::Type.getATypeParameter/0#dispred#ddf0e8ff_10#join_rhs` ON FIRST 1 OUTPUT Lhs.1, Lhs.2, Lhs.3, Lhs.4, Lhs.5, Rhs.1, _, Lhs.6, Lhs.7, _ {7} | REWRITE WITH Tmp.6 := length(In.8), Tmp.9 := 1, Tmp.6 := (Tmp.6 + Tmp.9), Out.6 := suffix(In.7,Tmp.6) KEEPING 7 20022175 ~0% {6} | SCAN OUTPUT In.0, In.1, In.2, In.3, In.4, In.5 20197330 ~0% {6} r4 = r1 UNION r2 UNION r3 20187834 ~0% {6} | AND NOT `TypeInference::AssocFunctionResolution::AssocFunctionCall.hasIncompatibleTarget/5#85c07422#prev`(FIRST 6) return r4 ``` After ``` Pipeline standard for TypeInference::AssocFunctionResolution::AssocFunctionCall.hasIncompatibleTarget/5#85c07422@a58ce91w was evaluated in 537 iterations totaling 382ms (delta sizes total: 20033950). 19862347 ~0% {7} r1 = SCAN `TypeInference::AssocFunctionResolution::SelfArgIsInstantiationOf::argIsNotInstantiationOf/6#1b8e512e#prev_delta` OUTPUT In.5, _, In.0, In.1, In.2, In.3, In.4 19862347 ~0% {7} | REWRITE WITH Out.1 := "" 174684 ~1% {7} r2 = SCAN `TypeInference::AssocFunctionResolution::AssocFunctionCall.hasIncompatibleArgsTarget/5#dispred#7d49b9f9#prev_delta` OUTPUT In.5, _, In.0, In.1, In.2, In.3, In.4 174684 ~1% {7} | REWRITE WITH Out.1 := "" 20037031 ~0% {7} r3 = r1 UNION r2 20037031 ~0% {6} | JOIN WITH `FunctionType::AssocFunctionType.getTypeAt/1#dispred#d4d46f61` ON FIRST 2 OUTPUT Lhs.2, Lhs.3, Lhs.4, Lhs.5, Lhs.6, Rhs.2 20033950 ~0% {6} | AND NOT `TypeInference::AssocFunctionResolution::AssocFunctionCall.hasIncompatibleTarget/5#85c07422#prev`(FIRST 6) return r3 ``` --- .../internal/typeinference/TypeInference.qll | 32 ++++++++++++------- 1 file changed, 20 insertions(+), 12 deletions(-) diff --git a/rust/ql/lib/codeql/rust/internal/typeinference/TypeInference.qll b/rust/ql/lib/codeql/rust/internal/typeinference/TypeInference.qll index c6a268be126f..08c5966940eb 100644 --- a/rust/ql/lib/codeql/rust/internal/typeinference/TypeInference.qll +++ b/rust/ql/lib/codeql/rust/internal/typeinference/TypeInference.qll @@ -1708,6 +1708,15 @@ private module AssocFunctionResolution { predicate hasReceiverAtPos(FunctionPosition pos) { this.hasReceiver() and pos.asPosition() = 0 } + pragma[nomagic] + private predicate hasIncompatibleArgsTarget( + ImplOrTraitItemNode i, FunctionPosition selfPos, DerefChain derefChain, BorrowKind borrow, + AssocFunctionType selfType + ) { + SelfArgIsInstantiationOf::argIsInstantiationOf(this, i, selfPos, derefChain, borrow, selfType) and + OverloadedCallArgsAreInstantiationsOf::argsAreNotInstantiationsOf(this, i) + } + /** * Holds if the function inside `i` with matching name and arity can be ruled * out as a target of this call, because the candidate receiver type represented @@ -1722,16 +1731,11 @@ private module AssocFunctionResolution { ImplOrTraitItemNode i, FunctionPosition selfPos, DerefChain derefChain, BorrowKind borrow, Type root ) { - exists(TypePath path | - SelfArgIsInstantiationOf::argIsNotInstantiationOf(this, i, selfPos, derefChain, borrow, path) and - path.isCons(root.getATypeParameter(), _) - ) - or - exists(AssocFunctionType selfType | - SelfArgIsInstantiationOf::argIsInstantiationOf(this, i, selfPos, derefChain, borrow, - selfType) and - OverloadedCallArgsAreInstantiationsOf::argsAreNotInstantiationsOf(this, i) and - root = selfType.getTypeAt(TypePath::nil()) + exists(AssocFunctionType selfType | root = selfType.getTypeAt(TypePath::nil()) | + this.hasIncompatibleArgsTarget(i, selfPos, derefChain, borrow, selfType) + or + SelfArgIsInstantiationOf::argIsNotInstantiationOf(this, i, selfPos, derefChain, borrow, + selfType) ) } @@ -2608,9 +2612,13 @@ private module AssocFunctionResolution { pragma[nomagic] predicate argIsNotInstantiationOf( AssocFunctionCall afc, ImplOrTraitItemNode i, FunctionPosition selfPos, DerefChain derefChain, - BorrowKind borrow, TypePath path + BorrowKind borrow, AssocFunctionType selfType ) { - argIsNotInstantiationOf(MkAssocFunctionCallCand(afc, selfPos, derefChain, borrow), i, _, path) + exists(TypePath path | + argIsNotInstantiationOf(MkAssocFunctionCallCand(afc, selfPos, derefChain, borrow), i, + selfType, path) and + not path.isEmpty() + ) } pragma[nomagic] From 0e66555e377ad6207d705e2b67bbf6b3821701ed Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Tue, 14 Apr 2026 08:10:53 +0000 Subject: [PATCH 119/157] Initial plan From 3483050526e70c4c92f30746f4696e41eb1bd076 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Tue, 14 Apr 2026 08:18:02 +0000 Subject: [PATCH 120/157] Fix false positive in MissedSelectOpportunity for async/await loops Agent-Logs-Url: https://github.com/github/codeql/sessions/3e8f4320-2bf4-45f5-b9ea-dad41d522d84 Co-authored-by: hvitved <3667920+hvitved@users.noreply.github.com> --- csharp/ql/lib/Linq/Helpers.qll | 8 +++-- .../MissedSelectOpportunity.cs | 32 +++++++++++++++++++ .../MissedSelectOpportunity.expected | 1 + .../MissedSelectOpportunity.qlref | 1 + .../Linq/MissedSelectOpportunity/options | 2 ++ 5 files changed, 41 insertions(+), 3 deletions(-) create mode 100644 csharp/ql/test/query-tests/Linq/MissedSelectOpportunity/MissedSelectOpportunity.cs create mode 100644 csharp/ql/test/query-tests/Linq/MissedSelectOpportunity/MissedSelectOpportunity.expected create mode 100644 csharp/ql/test/query-tests/Linq/MissedSelectOpportunity/MissedSelectOpportunity.qlref create mode 100644 csharp/ql/test/query-tests/Linq/MissedSelectOpportunity/options diff --git a/csharp/ql/lib/Linq/Helpers.qll b/csharp/ql/lib/Linq/Helpers.qll index 912b12b9457b..2a4d5c8c27a2 100644 --- a/csharp/ql/lib/Linq/Helpers.qll +++ b/csharp/ql/lib/Linq/Helpers.qll @@ -121,15 +121,17 @@ predicate missedOfTypeOpportunity(ForeachStmtEnumerable fes, LocalVariableDeclSt /** * Holds if `foreach` statement `fes` can be converted to a `.Select()` call. * That is, the loop variable is accessed only in the first statement of the - * block, the access is not a cast, and the first statement is a - * local variable declaration statement `s`. + * block, the access is not a cast, the first statement is a + * local variable declaration statement `s`, and the initializer does not + * contain an `await` expression (since `Select` does not support async lambdas). */ predicate missedSelectOpportunity(ForeachStmtGenericEnumerable fes, LocalVariableDeclStmt s) { s = firstStmt(fes) and forex(VariableAccess va | va = fes.getVariable().getAnAccess() | va = s.getAVariableDeclExpr().getAChildExpr*() ) and - not s.getAVariableDeclExpr().getInitializer() instanceof Cast + not s.getAVariableDeclExpr().getInitializer() instanceof Cast and + not s.getAVariableDeclExpr().getInitializer().getAChildExpr*() instanceof AwaitExpr } /** diff --git a/csharp/ql/test/query-tests/Linq/MissedSelectOpportunity/MissedSelectOpportunity.cs b/csharp/ql/test/query-tests/Linq/MissedSelectOpportunity/MissedSelectOpportunity.cs new file mode 100644 index 000000000000..a61eba16f149 --- /dev/null +++ b/csharp/ql/test/query-tests/Linq/MissedSelectOpportunity/MissedSelectOpportunity.cs @@ -0,0 +1,32 @@ +using System; +using System.Linq; +using System.Collections.Generic; +using System.Threading.Tasks; + +class MissedSelectOpportunity +{ + public void M1(List lst) + { + // BAD: Can be replaced with lst.Select(i => i * i) + foreach (int i in lst) + { + int j = i * i; + Console.WriteLine(j); + } + } + + public async Task M2(IEnumerable counters) + { + // GOOD: Cannot use Select because the initializer contains an await expression + foreach (var counter in counters) + { + var count = await counter.CountAsync(); + Console.WriteLine(count); + } + } + + public interface ICounter + { + Task CountAsync(); + } +} diff --git a/csharp/ql/test/query-tests/Linq/MissedSelectOpportunity/MissedSelectOpportunity.expected b/csharp/ql/test/query-tests/Linq/MissedSelectOpportunity/MissedSelectOpportunity.expected new file mode 100644 index 000000000000..bc6d464fa3b9 --- /dev/null +++ b/csharp/ql/test/query-tests/Linq/MissedSelectOpportunity/MissedSelectOpportunity.expected @@ -0,0 +1 @@ +| MissedSelectOpportunity.cs:11:9:15:9 | foreach (... ... in ...) ... | This foreach loop immediately $@ - consider mapping the sequence explicitly using '.Select(...)'. | MissedSelectOpportunity.cs:13:13:13:26 | ... ...; | maps its iteration variable to another variable | diff --git a/csharp/ql/test/query-tests/Linq/MissedSelectOpportunity/MissedSelectOpportunity.qlref b/csharp/ql/test/query-tests/Linq/MissedSelectOpportunity/MissedSelectOpportunity.qlref new file mode 100644 index 000000000000..8056fd74c47c --- /dev/null +++ b/csharp/ql/test/query-tests/Linq/MissedSelectOpportunity/MissedSelectOpportunity.qlref @@ -0,0 +1 @@ +Linq/MissedSelectOpportunity.ql diff --git a/csharp/ql/test/query-tests/Linq/MissedSelectOpportunity/options b/csharp/ql/test/query-tests/Linq/MissedSelectOpportunity/options new file mode 100644 index 000000000000..75c39b4541ba --- /dev/null +++ b/csharp/ql/test/query-tests/Linq/MissedSelectOpportunity/options @@ -0,0 +1,2 @@ +semmle-extractor-options: /nostdlib /noconfig +semmle-extractor-options: --load-sources-from-project:${testdir}/../../../resources/stubs/_frameworks/Microsoft.NETCore.App/Microsoft.NETCore.App.csproj From 12868e51402782f644653e9516b9c861c24f02a3 Mon Sep 17 00:00:00 2001 From: Jeroen Ketema Date: Tue, 14 Apr 2026 13:03:10 +0200 Subject: [PATCH 121/157] C++: Remove deprecated code added more than a year ago --- .../code/cpp/models/interfaces/NonThrowing.qll | 7 ------- .../semmle/code/cpp/models/interfaces/Throwing.qll | 13 ------------- 2 files changed, 20 deletions(-) diff --git a/cpp/ql/lib/semmle/code/cpp/models/interfaces/NonThrowing.qll b/cpp/ql/lib/semmle/code/cpp/models/interfaces/NonThrowing.qll index 85b9b66cd661..04826a487ca7 100644 --- a/cpp/ql/lib/semmle/code/cpp/models/interfaces/NonThrowing.qll +++ b/cpp/ql/lib/semmle/code/cpp/models/interfaces/NonThrowing.qll @@ -11,10 +11,3 @@ import semmle.code.cpp.models.Models * The function may still raise a structured exception handling (SEH) exception. */ abstract class NonCppThrowingFunction extends Function { } - -/** - * A function that is guaranteed to never throw. - * - * DEPRECATED: use `NonCppThrowingFunction` instead. - */ -deprecated class NonThrowingFunction = NonCppThrowingFunction; diff --git a/cpp/ql/lib/semmle/code/cpp/models/interfaces/Throwing.qll b/cpp/ql/lib/semmle/code/cpp/models/interfaces/Throwing.qll index 111b99533957..a781bab07c35 100644 --- a/cpp/ql/lib/semmle/code/cpp/models/interfaces/Throwing.qll +++ b/cpp/ql/lib/semmle/code/cpp/models/interfaces/Throwing.qll @@ -10,19 +10,6 @@ import semmle.code.cpp.Function import semmle.code.cpp.models.Models import semmle.code.cpp.models.interfaces.FunctionInputsAndOutputs -/** - * A function that is known to raise an exception. - * - * DEPRECATED: use `AlwaysSehThrowingFunction` instead. - */ -abstract deprecated class ThrowingFunction extends Function { - /** - * Holds if this function may throw an exception during evaluation. - * If `unconditional` is `true` the function always throws an exception. - */ - abstract predicate mayThrowException(boolean unconditional); -} - /** * A function that unconditionally raises a structured exception handling (SEH) exception. */ From 4b5ff0b89ee4e220f3bf4bd2e77b2b6426da3752 Mon Sep 17 00:00:00 2001 From: Taus Date: Fri, 10 Apr 2026 15:52:33 +0000 Subject: [PATCH 122/157] Python: Support unpacking in comprehensions in `tree-sitter-python` This is the easy part -- we just allow `dictionary_splat` or `list_splat` to appear in the same place as the expression. --- python/extractor/tsg-python/tsp/grammar.js | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/python/extractor/tsg-python/tsp/grammar.js b/python/extractor/tsg-python/tsp/grammar.js index 05b792340ddb..8f4dd8d7cf64 100644 --- a/python/extractor/tsg-python/tsp/grammar.js +++ b/python/extractor/tsg-python/tsp/grammar.js @@ -1031,28 +1031,28 @@ module.exports = grammar({ list_comprehension: $ => seq( '[', - field('body', $.expression), + field('body', choice($.expression, $.list_splat)), $._comprehension_clauses, ']' ), dictionary_comprehension: $ => seq( '{', - field('body', $.pair), + field('body', choice($.pair, $.dictionary_splat)), $._comprehension_clauses, '}' ), set_comprehension: $ => seq( '{', - field('body', $.expression), + field('body', choice($.expression, $.list_splat)), $._comprehension_clauses, '}' ), generator_expression: $ => seq( '(', - field('body', $.expression), + field('body', choice($.expression, $.list_splat)), $._comprehension_clauses, ')' ), From 97086c3cc90da92156c765c97697c654813e13f5 Mon Sep 17 00:00:00 2001 From: Taus Date: Fri, 10 Apr 2026 15:52:44 +0000 Subject: [PATCH 123/157] Python: Regenerate parser files --- .../extractor/tsg-python/tsp/src/grammar.json | 52 +- .../tsg-python/tsp/src/node-types.json | 16 + python/extractor/tsg-python/tsp/src/parser.c | 66874 ++++++++-------- 3 files changed, 33883 insertions(+), 33059 deletions(-) diff --git a/python/extractor/tsg-python/tsp/src/grammar.json b/python/extractor/tsg-python/tsp/src/grammar.json index 552597b18a9b..8fb9763034ef 100644 --- a/python/extractor/tsg-python/tsp/src/grammar.json +++ b/python/extractor/tsg-python/tsp/src/grammar.json @@ -5646,8 +5646,17 @@ "type": "FIELD", "name": "body", "content": { - "type": "SYMBOL", - "name": "expression" + "type": "CHOICE", + "members": [ + { + "type": "SYMBOL", + "name": "expression" + }, + { + "type": "SYMBOL", + "name": "list_splat" + } + ] } }, { @@ -5671,8 +5680,17 @@ "type": "FIELD", "name": "body", "content": { - "type": "SYMBOL", - "name": "pair" + "type": "CHOICE", + "members": [ + { + "type": "SYMBOL", + "name": "pair" + }, + { + "type": "SYMBOL", + "name": "dictionary_splat" + } + ] } }, { @@ -5696,8 +5714,17 @@ "type": "FIELD", "name": "body", "content": { - "type": "SYMBOL", - "name": "expression" + "type": "CHOICE", + "members": [ + { + "type": "SYMBOL", + "name": "expression" + }, + { + "type": "SYMBOL", + "name": "list_splat" + } + ] } }, { @@ -5721,8 +5748,17 @@ "type": "FIELD", "name": "body", "content": { - "type": "SYMBOL", - "name": "expression" + "type": "CHOICE", + "members": [ + { + "type": "SYMBOL", + "name": "expression" + }, + { + "type": "SYMBOL", + "name": "list_splat" + } + ] } }, { diff --git a/python/extractor/tsg-python/tsp/src/node-types.json b/python/extractor/tsg-python/tsp/src/node-types.json index f8659f44e2e8..6579591c6522 100644 --- a/python/extractor/tsg-python/tsp/src/node-types.json +++ b/python/extractor/tsg-python/tsp/src/node-types.json @@ -1162,6 +1162,10 @@ "multiple": false, "required": true, "types": [ + { + "type": "dictionary_splat", + "named": true + }, { "type": "pair", "named": true @@ -1702,6 +1706,10 @@ { "type": "expression", "named": true + }, + { + "type": "list_splat", + "named": true } ] } @@ -2079,6 +2087,10 @@ { "type": "expression", "named": true + }, + { + "type": "list_splat", + "named": true } ] } @@ -3179,6 +3191,10 @@ { "type": "expression", "named": true + }, + { + "type": "list_splat", + "named": true } ] } diff --git a/python/extractor/tsg-python/tsp/src/parser.c b/python/extractor/tsg-python/tsp/src/parser.c index c0d6afc81eeb..16db1b93d977 100644 --- a/python/extractor/tsg-python/tsp/src/parser.c +++ b/python/extractor/tsg-python/tsp/src/parser.c @@ -7,8 +7,8 @@ #endif #define LANGUAGE_VERSION 14 -#define STATE_COUNT 1734 -#define LARGE_STATE_COUNT 156 +#define STATE_COUNT 1755 +#define LARGE_STATE_COUNT 157 #define SYMBOL_COUNT 292 #define ALIAS_COUNT 3 #define TOKEN_COUNT 110 @@ -2265,8 +2265,8 @@ static const TSMapSlice ts_field_map_slices[PRODUCTION_ID_COUNT] = { [47] = {.index = 67, .length = 1}, [48] = {.index = 68, .length = 2}, [49] = {.index = 70, .length = 1}, - [51] = {.index = 71, .length = 3}, - [52] = {.index = 74, .length = 1}, + [51] = {.index = 71, .length = 1}, + [52] = {.index = 72, .length = 3}, [53] = {.index = 75, .length = 2}, [54] = {.index = 77, .length = 1}, [55] = {.index = 78, .length = 2}, @@ -2503,11 +2503,11 @@ static const TSFieldMapEntry ts_field_map_entries[] = { [70] = {field_module_name, 1}, [71] = + {field_body, 1}, + [72] = {field_element, 0}, {field_element, 1, .inherited = true}, {field_trailing_comma, 2}, - [74] = - {field_body, 1}, [75] = {field_argument, 0, .inherited = true}, {field_argument, 1, .inherited = true}, @@ -3088,8 +3088,8 @@ static const TSStateId ts_primary_state_ids[STATE_COUNT] = { [1] = 1, [2] = 2, [3] = 3, - [4] = 2, - [5] = 5, + [4] = 4, + [5] = 2, [6] = 6, [7] = 7, [8] = 8, @@ -3116,8 +3116,8 @@ static const TSStateId ts_primary_state_ids[STATE_COUNT] = { [29] = 29, [30] = 30, [31] = 31, - [32] = 5, - [33] = 7, + [32] = 4, + [33] = 6, [34] = 8, [35] = 9, [36] = 10, @@ -3143,13 +3143,13 @@ static const TSStateId ts_primary_state_ids[STATE_COUNT] = { [56] = 30, [57] = 31, [58] = 3, - [59] = 6, + [59] = 7, [60] = 60, [61] = 60, [62] = 62, - [63] = 63, - [64] = 60, - [65] = 63, + [63] = 60, + [64] = 64, + [65] = 62, [66] = 66, [67] = 66, [68] = 68, @@ -3158,65 +3158,65 @@ static const TSStateId ts_primary_state_ids[STATE_COUNT] = { [71] = 71, [72] = 72, [73] = 73, - [74] = 71, + [74] = 74, [75] = 75, [76] = 76, - [77] = 77, + [77] = 75, [78] = 78, [79] = 79, - [80] = 68, + [80] = 80, [81] = 81, [82] = 82, [83] = 83, [84] = 84, - [85] = 76, + [85] = 85, [86] = 86, [87] = 87, [88] = 88, - [89] = 69, - [90] = 70, - [91] = 91, - [92] = 72, - [93] = 78, - [94] = 79, + [89] = 89, + [90] = 69, + [91] = 74, + [92] = 70, + [93] = 76, + [94] = 68, [95] = 95, - [96] = 82, - [97] = 97, - [98] = 77, - [99] = 91, + [96] = 81, + [97] = 71, + [98] = 87, + [99] = 79, [100] = 100, [101] = 95, - [102] = 97, + [102] = 80, [103] = 103, - [104] = 103, - [105] = 105, - [106] = 105, - [107] = 81, - [108] = 108, - [109] = 108, + [104] = 100, + [105] = 103, + [106] = 106, + [107] = 107, + [108] = 107, + [109] = 82, [110] = 110, - [111] = 83, - [112] = 112, - [113] = 110, + [111] = 110, + [112] = 83, + [113] = 113, [114] = 84, [115] = 115, - [116] = 112, - [117] = 117, - [118] = 73, - [119] = 115, - [120] = 100, + [116] = 113, + [117] = 85, + [118] = 115, + [119] = 119, + [120] = 72, [121] = 86, - [122] = 117, - [123] = 87, - [124] = 124, + [122] = 73, + [123] = 106, + [124] = 119, [125] = 88, - [126] = 124, + [126] = 89, [127] = 127, - [128] = 127, + [128] = 128, [129] = 127, - [130] = 130, - [131] = 130, - [132] = 130, + [130] = 127, + [131] = 128, + [132] = 128, [133] = 133, [134] = 134, [135] = 135, @@ -3226,153 +3226,153 @@ static const TSStateId ts_primary_state_ids[STATE_COUNT] = { [139] = 136, [140] = 136, [141] = 141, - [142] = 142, - [143] = 137, - [144] = 135, - [145] = 145, + [142] = 137, + [143] = 143, + [144] = 144, + [145] = 136, [146] = 136, [147] = 137, - [148] = 136, - [149] = 137, - [150] = 145, + [148] = 135, + [149] = 134, + [150] = 137, [151] = 137, [152] = 137, - [153] = 153, + [153] = 144, [154] = 154, [155] = 155, [156] = 156, [157] = 157, - [158] = 158, + [158] = 157, [159] = 159, - [160] = 160, - [161] = 156, - [162] = 157, - [163] = 156, + [160] = 159, + [161] = 161, + [162] = 162, + [163] = 159, [164] = 164, - [165] = 164, - [166] = 164, - [167] = 164, - [168] = 168, - [169] = 168, - [170] = 170, + [165] = 165, + [166] = 165, + [167] = 165, + [168] = 165, + [169] = 169, + [170] = 169, [171] = 171, [172] = 172, [173] = 173, - [174] = 174, - [175] = 174, + [174] = 173, + [175] = 175, [176] = 176, - [177] = 168, + [177] = 177, [178] = 178, - [179] = 179, - [180] = 173, - [181] = 171, - [182] = 170, - [183] = 172, + [179] = 169, + [180] = 180, + [181] = 178, + [182] = 182, + [183] = 183, [184] = 184, - [185] = 185, - [186] = 174, - [187] = 187, - [188] = 174, - [189] = 189, + [185] = 171, + [186] = 178, + [187] = 172, + [188] = 178, + [189] = 184, [190] = 190, - [191] = 171, - [192] = 170, - [193] = 172, + [191] = 191, + [192] = 192, + [193] = 193, [194] = 194, - [195] = 195, - [196] = 196, - [197] = 197, + [195] = 193, + [196] = 194, + [197] = 173, [198] = 198, - [199] = 196, - [200] = 197, + [199] = 191, + [200] = 200, [201] = 201, [202] = 202, - [203] = 203, - [204] = 204, - [205] = 201, - [206] = 202, - [207] = 207, - [208] = 198, - [209] = 189, - [210] = 197, - [211] = 198, - [212] = 212, - [213] = 201, - [214] = 202, - [215] = 203, - [216] = 204, - [217] = 189, - [218] = 196, - [219] = 197, - [220] = 201, - [221] = 202, - [222] = 203, - [223] = 204, - [224] = 189, - [225] = 196, - [226] = 197, - [227] = 196, - [228] = 197, - [229] = 203, - [230] = 204, - [231] = 196, - [232] = 232, + [203] = 172, + [204] = 198, + [205] = 191, + [206] = 200, + [207] = 201, + [208] = 208, + [209] = 209, + [210] = 208, + [211] = 171, + [212] = 208, + [213] = 192, + [214] = 214, + [215] = 192, + [216] = 193, + [217] = 194, + [218] = 198, + [219] = 191, + [220] = 200, + [221] = 201, + [222] = 209, + [223] = 208, + [224] = 224, + [225] = 193, + [226] = 194, + [227] = 198, + [228] = 228, + [229] = 200, + [230] = 201, + [231] = 209, + [232] = 208, [233] = 233, - [234] = 234, - [235] = 235, - [236] = 236, - [237] = 237, - [238] = 233, - [239] = 239, - [240] = 233, - [241] = 233, - [242] = 242, + [234] = 209, + [235] = 208, + [236] = 209, + [237] = 209, + [238] = 238, + [239] = 238, + [240] = 240, + [241] = 238, + [242] = 238, [243] = 243, [244] = 244, [245] = 245, [246] = 246, - [247] = 245, - [248] = 244, + [247] = 247, + [248] = 248, [249] = 249, [250] = 250, - [251] = 250, + [251] = 248, [252] = 252, [253] = 249, [254] = 254, - [255] = 250, + [255] = 254, [256] = 254, - [257] = 250, - [258] = 252, - [259] = 249, - [260] = 252, - [261] = 249, - [262] = 254, - [263] = 252, - [264] = 264, + [257] = 257, + [258] = 258, + [259] = 257, + [260] = 258, + [261] = 257, + [262] = 258, + [263] = 257, + [264] = 258, [265] = 265, [266] = 266, [267] = 267, - [268] = 266, + [268] = 268, [269] = 269, [270] = 270, - [271] = 269, - [272] = 272, - [273] = 272, + [271] = 271, + [272] = 266, + [273] = 273, [274] = 274, [275] = 275, [276] = 276, - [277] = 267, - [278] = 275, - [279] = 276, + [277] = 270, + [278] = 278, + [279] = 279, [280] = 280, - [281] = 281, - [282] = 282, - [283] = 283, + [281] = 275, + [282] = 267, + [283] = 278, [284] = 284, - [285] = 264, - [286] = 274, - [287] = 265, - [288] = 288, + [285] = 284, + [286] = 280, + [287] = 274, + [288] = 271, [289] = 289, [290] = 290, [291] = 291, @@ -3386,42 +3386,42 @@ static const TSStateId ts_primary_state_ids[STATE_COUNT] = { [299] = 299, [300] = 300, [301] = 301, - [302] = 296, + [302] = 302, [303] = 303, - [304] = 304, - [305] = 305, - [306] = 306, + [304] = 292, + [305] = 295, + [306] = 290, [307] = 307, - [308] = 297, - [309] = 307, + [308] = 308, + [309] = 309, [310] = 310, [311] = 311, [312] = 312, [313] = 313, [314] = 314, [315] = 315, - [316] = 316, + [316] = 312, [317] = 317, [318] = 318, - [319] = 310, + [319] = 319, [320] = 320, [321] = 321, - [322] = 321, - [323] = 313, - [324] = 324, - [325] = 325, - [326] = 320, - [327] = 327, - [328] = 328, - [329] = 311, - [330] = 312, - [331] = 325, - [332] = 327, - [333] = 316, - [334] = 317, - [335] = 314, - [336] = 318, - [337] = 337, + [322] = 322, + [323] = 323, + [324] = 314, + [325] = 311, + [326] = 326, + [327] = 321, + [328] = 318, + [329] = 322, + [330] = 326, + [331] = 315, + [332] = 320, + [333] = 333, + [334] = 333, + [335] = 323, + [336] = 336, + [337] = 319, [338] = 338, [339] = 339, [340] = 340, @@ -3429,175 +3429,175 @@ static const TSStateId ts_primary_state_ids[STATE_COUNT] = { [342] = 342, [343] = 343, [344] = 344, - [345] = 339, + [345] = 345, [346] = 346, [347] = 347, [348] = 348, - [349] = 342, + [349] = 349, [350] = 350, - [351] = 351, + [351] = 346, [352] = 352, [353] = 353, [354] = 354, [355] = 355, - [356] = 337, - [357] = 357, - [358] = 340, - [359] = 359, + [356] = 356, + [357] = 342, + [358] = 338, + [359] = 339, [360] = 360, - [361] = 339, + [361] = 361, [362] = 362, - [363] = 342, + [363] = 363, [364] = 364, - [365] = 365, - [366] = 337, - [367] = 357, - [368] = 340, - [369] = 339, - [370] = 362, - [371] = 346, + [365] = 353, + [366] = 354, + [367] = 346, + [368] = 342, + [369] = 355, + [370] = 346, + [371] = 349, [372] = 372, - [373] = 342, - [374] = 364, - [375] = 375, - [376] = 376, - [377] = 377, - [378] = 378, - [379] = 379, - [380] = 362, - [381] = 346, - [382] = 357, - [383] = 375, - [384] = 343, - [385] = 385, - [386] = 337, - [387] = 378, - [388] = 357, - [389] = 346, - [390] = 376, - [391] = 346, - [392] = 340, - [393] = 339, - [394] = 375, - [395] = 362, - [396] = 396, - [397] = 376, - [398] = 343, - [399] = 399, - [400] = 376, - [401] = 376, - [402] = 362, + [373] = 353, + [374] = 374, + [375] = 355, + [376] = 338, + [377] = 339, + [378] = 360, + [379] = 342, + [380] = 353, + [381] = 360, + [382] = 338, + [383] = 339, + [384] = 360, + [385] = 342, + [386] = 386, + [387] = 387, + [388] = 349, + [389] = 372, + [390] = 349, + [391] = 372, + [392] = 350, + [393] = 393, + [394] = 394, + [395] = 374, + [396] = 372, + [397] = 374, + [398] = 398, + [399] = 372, + [400] = 400, + [401] = 343, + [402] = 398, [403] = 403, [404] = 404, - [405] = 342, - [406] = 406, - [407] = 337, + [405] = 405, + [406] = 346, + [407] = 407, [408] = 346, - [409] = 337, - [410] = 357, - [411] = 340, - [412] = 339, - [413] = 362, - [414] = 342, - [415] = 376, - [416] = 378, - [417] = 404, - [418] = 347, - [419] = 404, - [420] = 404, - [421] = 404, - [422] = 396, - [423] = 348, - [424] = 404, + [409] = 374, + [410] = 353, + [411] = 355, + [412] = 338, + [413] = 339, + [414] = 360, + [415] = 342, + [416] = 372, + [417] = 417, + [418] = 403, + [419] = 353, + [420] = 403, + [421] = 354, + [422] = 403, + [423] = 403, + [424] = 345, [425] = 425, - [426] = 357, - [427] = 340, - [428] = 360, + [426] = 355, + [427] = 425, + [428] = 339, [429] = 429, - [430] = 430, - [431] = 425, - [432] = 354, - [433] = 430, + [430] = 360, + [431] = 394, + [432] = 403, + [433] = 338, [434] = 434, - [435] = 435, - [436] = 436, - [437] = 437, - [438] = 438, + [435] = 405, + [436] = 348, + [437] = 347, + [438] = 355, [439] = 439, [440] = 440, - [441] = 438, + [441] = 441, [442] = 442, - [443] = 439, + [443] = 443, [444] = 444, - [445] = 445, + [445] = 444, [446] = 446, [447] = 447, - [448] = 446, - [449] = 447, + [448] = 448, + [449] = 448, [450] = 450, - [451] = 437, + [451] = 439, [452] = 452, - [453] = 442, - [454] = 444, - [455] = 445, - [456] = 435, + [453] = 453, + [454] = 447, + [455] = 455, + [456] = 441, [457] = 457, - [458] = 436, - [459] = 457, - [460] = 440, - [461] = 461, - [462] = 462, - [463] = 463, - [464] = 464, + [458] = 457, + [459] = 455, + [460] = 442, + [461] = 440, + [462] = 443, + [463] = 446, + [464] = 450, [465] = 465, [466] = 466, [467] = 467, - [468] = 461, + [468] = 468, [469] = 469, - [470] = 462, - [471] = 469, - [472] = 465, + [470] = 470, + [471] = 471, + [472] = 472, [473] = 473, [474] = 474, - [475] = 474, + [475] = 475, [476] = 476, - [477] = 463, + [477] = 475, [478] = 478, - [479] = 478, + [479] = 473, [480] = 480, - [481] = 467, - [482] = 482, - [483] = 473, - [484] = 466, - [485] = 485, - [486] = 464, - [487] = 487, - [488] = 488, - [489] = 489, - [490] = 490, - [491] = 491, - [492] = 492, + [481] = 480, + [482] = 474, + [483] = 483, + [484] = 476, + [485] = 483, + [486] = 486, + [487] = 467, + [488] = 468, + [489] = 472, + [490] = 486, + [491] = 478, + [492] = 317, [493] = 493, [494] = 494, - [495] = 489, - [496] = 324, - [497] = 497, + [495] = 495, + [496] = 496, + [497] = 493, [498] = 498, - [499] = 328, - [500] = 497, + [499] = 499, + [500] = 500, [501] = 501, [502] = 502, - [503] = 503, - [504] = 504, - [505] = 488, - [506] = 498, - [507] = 491, - [508] = 502, - [509] = 493, - [510] = 492, - [511] = 511, - [512] = 512, - [513] = 513, + [503] = 313, + [504] = 496, + [505] = 498, + [506] = 506, + [507] = 507, + [508] = 507, + [509] = 506, + [510] = 510, + [511] = 500, + [512] = 502, + [513] = 501, [514] = 514, [515] = 515, [516] = 516, @@ -3608,9 +3608,9 @@ static const TSStateId ts_primary_state_ids[STATE_COUNT] = { [521] = 521, [522] = 522, [523] = 523, - [524] = 514, - [525] = 515, - [526] = 517, + [524] = 524, + [525] = 525, + [526] = 526, [527] = 527, [528] = 528, [529] = 529, @@ -3624,172 +3624,172 @@ static const TSStateId ts_primary_state_ids[STATE_COUNT] = { [537] = 537, [538] = 538, [539] = 539, - [540] = 540, + [540] = 533, [541] = 541, [542] = 542, [543] = 543, - [544] = 527, + [544] = 544, [545] = 545, [546] = 546, [547] = 547, - [548] = 528, - [549] = 549, + [548] = 548, + [549] = 529, [550] = 550, - [551] = 551, - [552] = 529, + [551] = 531, + [552] = 538, [553] = 553, [554] = 554, - [555] = 555, - [556] = 530, - [557] = 557, - [558] = 558, + [555] = 544, + [556] = 556, + [557] = 554, + [558] = 545, [559] = 559, [560] = 560, - [561] = 561, - [562] = 562, - [563] = 531, - [564] = 564, - [565] = 565, + [561] = 519, + [562] = 539, + [563] = 520, + [564] = 556, + [565] = 521, [566] = 566, - [567] = 532, - [568] = 533, - [569] = 534, - [570] = 570, - [571] = 571, - [572] = 535, - [573] = 536, - [574] = 574, - [575] = 537, - [576] = 538, - [577] = 539, - [578] = 512, - [579] = 540, - [580] = 541, - [581] = 542, - [582] = 582, - [583] = 543, - [584] = 513, + [567] = 525, + [568] = 526, + [569] = 530, + [570] = 532, + [571] = 535, + [572] = 537, + [573] = 541, + [574] = 543, + [575] = 547, + [576] = 548, + [577] = 550, + [578] = 566, + [579] = 579, + [580] = 580, + [581] = 581, + [582] = 579, + [583] = 583, + [584] = 584, [585] = 585, - [586] = 545, - [587] = 546, - [588] = 588, - [589] = 547, - [590] = 590, - [591] = 511, - [592] = 549, - [593] = 551, - [594] = 553, - [595] = 554, - [596] = 555, - [597] = 558, - [598] = 559, - [599] = 516, - [600] = 560, - [601] = 561, - [602] = 562, - [603] = 518, - [604] = 564, - [605] = 565, - [606] = 519, - [607] = 520, - [608] = 521, - [609] = 522, - [610] = 550, - [611] = 566, - [612] = 574, - [613] = 523, - [614] = 570, - [615] = 615, - [616] = 616, - [617] = 616, - [618] = 616, - [619] = 616, - [620] = 616, - [621] = 616, - [622] = 622, - [623] = 623, - [624] = 624, - [625] = 625, + [586] = 586, + [587] = 587, + [588] = 528, + [589] = 589, + [590] = 536, + [591] = 542, + [592] = 553, + [593] = 546, + [594] = 580, + [595] = 595, + [596] = 596, + [597] = 516, + [598] = 517, + [599] = 518, + [600] = 581, + [601] = 586, + [602] = 522, + [603] = 523, + [604] = 559, + [605] = 534, + [606] = 595, + [607] = 596, + [608] = 514, + [609] = 583, + [610] = 584, + [611] = 611, + [612] = 587, + [613] = 585, + [614] = 614, + [615] = 560, + [616] = 611, + [617] = 617, + [618] = 618, + [619] = 619, + [620] = 620, + [621] = 620, + [622] = 620, + [623] = 620, + [624] = 620, + [625] = 620, [626] = 626, - [627] = 625, + [627] = 627, [628] = 628, [629] = 629, - [630] = 624, + [630] = 629, [631] = 631, [632] = 632, - [633] = 625, - [634] = 626, - [635] = 629, - [636] = 636, - [637] = 628, - [638] = 628, - [639] = 631, + [633] = 633, + [634] = 634, + [635] = 626, + [636] = 626, + [637] = 637, + [638] = 638, + [639] = 639, [640] = 640, - [641] = 631, - [642] = 642, - [643] = 640, - [644] = 642, - [645] = 645, - [646] = 628, - [647] = 631, - [648] = 640, - [649] = 642, - [650] = 622, - [651] = 651, - [652] = 623, - [653] = 624, + [641] = 634, + [642] = 628, + [643] = 628, + [644] = 644, + [645] = 644, + [646] = 629, + [647] = 633, + [648] = 648, + [649] = 634, + [650] = 637, + [651] = 648, + [652] = 633, + [653] = 626, [654] = 640, - [655] = 626, - [656] = 625, - [657] = 629, - [658] = 658, - [659] = 623, - [660] = 626, - [661] = 651, - [662] = 629, - [663] = 651, - [664] = 623, - [665] = 628, - [666] = 631, - [667] = 640, - [668] = 642, - [669] = 622, - [670] = 651, - [671] = 623, - [672] = 624, - [673] = 629, - [674] = 642, - [675] = 675, - [676] = 676, - [677] = 624, - [678] = 628, - [679] = 631, - [680] = 640, - [681] = 642, - [682] = 622, - [683] = 651, - [684] = 623, - [685] = 624, - [686] = 622, - [687] = 626, - [688] = 625, - [689] = 629, - [690] = 626, - [691] = 625, - [692] = 692, + [655] = 631, + [656] = 629, + [657] = 644, + [658] = 648, + [659] = 638, + [660] = 638, + [661] = 644, + [662] = 634, + [663] = 637, + [664] = 631, + [665] = 629, + [666] = 626, + [667] = 638, + [668] = 631, + [669] = 648, + [670] = 648, + [671] = 633, + [672] = 634, + [673] = 628, + [674] = 644, + [675] = 633, + [676] = 634, + [677] = 637, + [678] = 640, + [679] = 640, + [680] = 631, + [681] = 629, + [682] = 626, + [683] = 638, + [684] = 640, + [685] = 685, + [686] = 648, + [687] = 633, + [688] = 628, + [689] = 631, + [690] = 690, + [691] = 638, + [692] = 628, [693] = 693, - [694] = 651, - [695] = 622, - [696] = 696, - [697] = 697, + [694] = 694, + [695] = 637, + [696] = 637, + [697] = 644, [698] = 698, - [699] = 699, + [699] = 640, [700] = 700, [701] = 701, [702] = 702, [703] = 703, [704] = 704, - [705] = 705, + [705] = 704, [706] = 706, [707] = 707, [708] = 708, @@ -3810,7 +3810,7 @@ static const TSStateId ts_primary_state_ids[STATE_COUNT] = { [723] = 723, [724] = 724, [725] = 725, - [726] = 719, + [726] = 726, [727] = 727, [728] = 728, [729] = 729, @@ -3821,366 +3821,366 @@ static const TSStateId ts_primary_state_ids[STATE_COUNT] = { [734] = 734, [735] = 735, [736] = 736, - [737] = 735, - [738] = 693, + [737] = 737, + [738] = 738, [739] = 739, [740] = 740, - [741] = 740, - [742] = 742, + [741] = 741, + [742] = 739, [743] = 743, [744] = 744, - [745] = 744, + [745] = 745, [746] = 746, [747] = 747, [748] = 748, - [749] = 749, - [750] = 750, - [751] = 743, - [752] = 692, - [753] = 739, - [754] = 742, - [755] = 746, - [756] = 747, - [757] = 736, - [758] = 748, - [759] = 675, - [760] = 676, - [761] = 749, - [762] = 750, - [763] = 719, - [764] = 764, - [765] = 719, - [766] = 645, - [767] = 675, - [768] = 676, - [769] = 658, - [770] = 692, + [749] = 690, + [750] = 693, + [751] = 751, + [752] = 752, + [753] = 685, + [754] = 627, + [755] = 751, + [756] = 752, + [757] = 757, + [758] = 743, + [759] = 744, + [760] = 745, + [761] = 746, + [762] = 740, + [763] = 741, + [764] = 757, + [765] = 748, + [766] = 747, + [767] = 736, + [768] = 685, + [769] = 627, + [770] = 690, [771] = 693, - [772] = 700, - [773] = 764, - [774] = 676, - [775] = 645, - [776] = 658, - [777] = 720, - [778] = 693, - [779] = 692, - [780] = 719, - [781] = 781, - [782] = 675, - [783] = 781, - [784] = 740, - [785] = 739, - [786] = 740, - [787] = 697, - [788] = 698, - [789] = 744, - [790] = 736, - [791] = 735, - [792] = 719, - [793] = 645, - [794] = 658, - [795] = 696, - [796] = 699, - [797] = 743, - [798] = 746, - [799] = 735, + [772] = 698, + [773] = 704, + [774] = 774, + [775] = 704, + [776] = 685, + [777] = 627, + [778] = 778, + [779] = 694, + [780] = 704, + [781] = 694, + [782] = 698, + [783] = 737, + [784] = 690, + [785] = 693, + [786] = 778, + [787] = 774, + [788] = 741, + [789] = 704, + [790] = 694, + [791] = 698, + [792] = 702, + [793] = 701, + [794] = 703, + [795] = 700, + [796] = 751, + [797] = 752, + [798] = 757, + [799] = 747, [800] = 740, - [801] = 746, - [802] = 747, - [803] = 746, - [804] = 744, - [805] = 748, - [806] = 749, - [807] = 750, - [808] = 743, - [809] = 748, - [810] = 739, - [811] = 742, - [812] = 749, + [801] = 739, + [802] = 743, + [803] = 744, + [804] = 748, + [805] = 747, + [806] = 745, + [807] = 746, + [808] = 747, + [809] = 752, + [810] = 757, + [811] = 739, + [812] = 743, [813] = 744, - [814] = 736, - [815] = 750, - [816] = 743, - [817] = 747, + [814] = 745, + [815] = 746, + [816] = 740, + [817] = 741, [818] = 748, - [819] = 739, - [820] = 742, - [821] = 742, - [822] = 736, - [823] = 749, - [824] = 750, - [825] = 735, - [826] = 747, - [827] = 827, - [828] = 828, - [829] = 781, - [830] = 827, - [831] = 746, - [832] = 747, - [833] = 735, - [834] = 571, - [835] = 740, - [836] = 697, - [837] = 698, - [838] = 748, - [839] = 839, - [840] = 749, - [841] = 750, - [842] = 503, - [843] = 696, - [844] = 764, - [845] = 739, - [846] = 742, - [847] = 847, - [848] = 582, - [849] = 487, - [850] = 764, - [851] = 781, - [852] = 696, - [853] = 697, - [854] = 854, - [855] = 744, - [856] = 736, - [857] = 699, + [819] = 751, + [820] = 752, + [821] = 757, + [822] = 739, + [823] = 743, + [824] = 744, + [825] = 745, + [826] = 746, + [827] = 740, + [828] = 741, + [829] = 748, + [830] = 751, + [831] = 778, + [832] = 778, + [833] = 748, + [834] = 701, + [835] = 774, + [836] = 774, + [837] = 778, + [838] = 515, + [839] = 747, + [840] = 700, + [841] = 841, + [842] = 614, + [843] = 702, + [844] = 751, + [845] = 752, + [846] = 702, + [847] = 701, + [848] = 703, + [849] = 617, + [850] = 494, + [851] = 524, + [852] = 703, + [853] = 700, + [854] = 774, + [855] = 855, + [856] = 757, + [857] = 857, [858] = 858, - [859] = 585, - [860] = 698, - [861] = 557, - [862] = 862, - [863] = 781, - [864] = 699, - [865] = 764, - [866] = 743, - [867] = 718, - [868] = 732, - [869] = 701, - [870] = 715, - [871] = 781, - [872] = 582, - [873] = 709, - [874] = 874, - [875] = 875, - [876] = 710, - [877] = 557, - [878] = 725, - [879] = 764, - [880] = 711, - [881] = 733, - [882] = 701, - [883] = 571, - [884] = 709, - [885] = 721, - [886] = 707, - [887] = 722, - [888] = 710, - [889] = 889, - [890] = 703, - [891] = 708, - [892] = 711, - [893] = 731, - [894] = 704, - [895] = 702, - [896] = 708, - [897] = 706, - [898] = 723, - [899] = 899, - [900] = 734, - [901] = 714, - [902] = 712, - [903] = 734, - [904] = 700, - [905] = 720, - [906] = 705, - [907] = 732, - [908] = 718, - [909] = 700, - [910] = 720, - [911] = 721, - [912] = 722, - [913] = 723, - [914] = 724, - [915] = 713, - [916] = 324, - [917] = 733, - [918] = 724, - [919] = 717, - [920] = 725, - [921] = 728, - [922] = 730, - [923] = 923, - [924] = 924, - [925] = 729, - [926] = 704, - [927] = 714, - [928] = 716, - [929] = 716, - [930] = 731, - [931] = 702, - [932] = 713, - [933] = 727, - [934] = 728, - [935] = 729, - [936] = 727, - [937] = 705, - [938] = 703, - [939] = 715, - [940] = 706, - [941] = 707, - [942] = 712, - [943] = 328, - [944] = 730, - [945] = 717, - [946] = 722, - [947] = 728, - [948] = 729, - [949] = 707, - [950] = 708, - [951] = 703, - [952] = 706, - [953] = 712, - [954] = 862, - [955] = 328, - [956] = 723, - [957] = 717, - [958] = 704, - [959] = 705, - [960] = 714, - [961] = 730, - [962] = 732, - [963] = 701, - [964] = 715, - [965] = 709, - [966] = 710, - [967] = 724, - [968] = 711, - [969] = 969, + [859] = 618, + [860] = 470, + [861] = 861, + [862] = 739, + [863] = 743, + [864] = 744, + [865] = 745, + [866] = 746, + [867] = 740, + [868] = 741, + [869] = 869, + [870] = 869, + [871] = 871, + [872] = 499, + [873] = 734, + [874] = 723, + [875] = 724, + [876] = 313, + [877] = 723, + [878] = 707, + [879] = 725, + [880] = 726, + [881] = 727, + [882] = 728, + [883] = 729, + [884] = 730, + [885] = 731, + [886] = 732, + [887] = 733, + [888] = 734, + [889] = 735, + [890] = 709, + [891] = 710, + [892] = 736, + [893] = 737, + [894] = 711, + [895] = 708, + [896] = 896, + [897] = 897, + [898] = 725, + [899] = 712, + [900] = 716, + [901] = 713, + [902] = 714, + [903] = 726, + [904] = 727, + [905] = 728, + [906] = 317, + [907] = 778, + [908] = 729, + [909] = 730, + [910] = 731, + [911] = 706, + [912] = 715, + [913] = 774, + [914] = 515, + [915] = 736, + [916] = 737, + [917] = 614, + [918] = 706, + [919] = 715, + [920] = 719, + [921] = 709, + [922] = 710, + [923] = 707, + [924] = 524, + [925] = 708, + [926] = 738, + [927] = 713, + [928] = 721, + [929] = 724, + [930] = 722, + [931] = 931, + [932] = 711, + [933] = 716, + [934] = 934, + [935] = 935, + [936] = 714, + [937] = 717, + [938] = 718, + [939] = 939, + [940] = 719, + [941] = 732, + [942] = 733, + [943] = 718, + [944] = 738, + [945] = 735, + [946] = 721, + [947] = 717, + [948] = 722, + [949] = 720, + [950] = 720, + [951] = 712, + [952] = 722, + [953] = 708, + [954] = 709, + [955] = 710, + [956] = 711, + [957] = 712, + [958] = 713, + [959] = 317, + [960] = 715, + [961] = 716, + [962] = 717, + [963] = 718, + [964] = 719, + [965] = 738, + [966] = 721, + [967] = 723, + [968] = 724, + [969] = 313, [970] = 725, - [971] = 828, - [972] = 972, - [973] = 973, - [974] = 718, - [975] = 324, - [976] = 721, - [977] = 716, + [971] = 726, + [972] = 727, + [973] = 728, + [974] = 729, + [975] = 730, + [976] = 731, + [977] = 732, [978] = 733, [979] = 734, - [980] = 980, - [981] = 731, - [982] = 702, - [983] = 713, - [984] = 727, - [985] = 985, - [986] = 986, + [980] = 735, + [981] = 981, + [982] = 982, + [983] = 983, + [984] = 858, + [985] = 720, + [986] = 857, [987] = 987, - [988] = 988, - [989] = 989, - [990] = 990, + [988] = 706, + [989] = 707, + [990] = 714, [991] = 991, - [992] = 991, - [993] = 990, + [992] = 992, + [993] = 993, [994] = 994, [995] = 995, - [996] = 991, + [996] = 996, [997] = 997, - [998] = 998, - [999] = 999, - [1000] = 991, - [1001] = 1001, + [998] = 997, + [999] = 996, + [1000] = 1000, + [1001] = 996, [1002] = 1002, - [1003] = 991, - [1004] = 1004, - [1005] = 990, - [1006] = 990, + [1003] = 996, + [1004] = 997, + [1005] = 1005, + [1006] = 1006, [1007] = 1007, - [1008] = 990, + [1008] = 997, [1009] = 1009, - [1010] = 990, - [1011] = 991, + [1010] = 1010, + [1011] = 1011, [1012] = 1012, [1013] = 1013, - [1014] = 1014, - [1015] = 1014, - [1016] = 1014, + [1014] = 997, + [1015] = 996, + [1016] = 997, [1017] = 1017, - [1018] = 1014, - [1019] = 1019, - [1020] = 1014, - [1021] = 1014, + [1018] = 1018, + [1019] = 996, + [1020] = 1020, + [1021] = 1021, [1022] = 1022, - [1023] = 1023, - [1024] = 1024, - [1025] = 1024, - [1026] = 1026, - [1027] = 1027, - [1028] = 1027, + [1023] = 1021, + [1024] = 1021, + [1025] = 1021, + [1026] = 1021, + [1027] = 1021, + [1028] = 1028, [1029] = 1029, - [1030] = 1029, + [1030] = 1030, [1031] = 1031, - [1032] = 1032, + [1032] = 1031, [1033] = 1033, - [1034] = 1034, + [1034] = 1033, [1035] = 1035, - [1036] = 1036, + [1036] = 1035, [1037] = 1037, [1038] = 1038, [1039] = 1039, [1040] = 1040, [1041] = 1041, - [1042] = 1038, - [1043] = 1039, - [1044] = 1038, - [1045] = 1039, - [1046] = 1040, - [1047] = 1037, - [1048] = 1038, - [1049] = 1039, + [1042] = 1042, + [1043] = 1043, + [1044] = 1044, + [1045] = 1045, + [1046] = 1046, + [1047] = 1041, + [1048] = 1048, + [1049] = 1044, [1050] = 1040, - [1051] = 1037, - [1052] = 1039, - [1053] = 1037, - [1054] = 1040, - [1055] = 1041, - [1056] = 1056, - [1057] = 1057, - [1058] = 1041, - [1059] = 1041, - [1060] = 1060, - [1061] = 1061, - [1062] = 1037, - [1063] = 1063, + [1051] = 1046, + [1052] = 1052, + [1053] = 1053, + [1054] = 1044, + [1055] = 1040, + [1056] = 1052, + [1057] = 1046, + [1058] = 1052, + [1059] = 1044, + [1060] = 1044, + [1061] = 1040, + [1062] = 1046, + [1063] = 1041, [1064] = 1064, - [1065] = 1065, - [1066] = 1066, - [1067] = 1067, + [1065] = 1046, + [1066] = 1052, + [1067] = 1041, [1068] = 1068, - [1069] = 1065, - [1070] = 1068, - [1071] = 1064, + [1069] = 1069, + [1070] = 1070, + [1071] = 1071, [1072] = 1072, [1073] = 1073, - [1074] = 1063, - [1075] = 1064, - [1076] = 1076, + [1074] = 1070, + [1075] = 1075, + [1076] = 1072, [1077] = 1077, - [1078] = 1067, + [1078] = 1078, [1079] = 1079, - [1080] = 1072, - [1081] = 1073, - [1082] = 1066, - [1083] = 1068, - [1084] = 1079, - [1085] = 1079, - [1086] = 1079, - [1087] = 1064, - [1088] = 1088, - [1089] = 1076, - [1090] = 1068, - [1091] = 1091, - [1092] = 1092, - [1093] = 1093, - [1094] = 1094, - [1095] = 1095, - [1096] = 1096, + [1080] = 1080, + [1081] = 1081, + [1082] = 1082, + [1083] = 1071, + [1084] = 1070, + [1085] = 1077, + [1086] = 1070, + [1087] = 1075, + [1088] = 1073, + [1089] = 1082, + [1090] = 1080, + [1091] = 1081, + [1092] = 1080, + [1093] = 1075, + [1094] = 1075, + [1095] = 1080, + [1096] = 1069, [1097] = 1097, [1098] = 1098, [1099] = 1099, @@ -4188,34 +4188,34 @@ static const TSStateId ts_primary_state_ids[STATE_COUNT] = { [1101] = 1101, [1102] = 1102, [1103] = 1103, - [1104] = 1032, + [1104] = 1104, [1105] = 1105, - [1106] = 1031, + [1106] = 1106, [1107] = 1107, [1108] = 1108, - [1109] = 1109, + [1109] = 1098, [1110] = 1110, [1111] = 1111, - [1112] = 1112, + [1112] = 1071, [1113] = 1113, [1114] = 1114, - [1115] = 1115, + [1115] = 1073, [1116] = 1116, [1117] = 1117, - [1118] = 1118, - [1119] = 1067, - [1120] = 1072, - [1121] = 1073, - [1122] = 1076, - [1123] = 1063, - [1124] = 1066, - [1125] = 1065, - [1126] = 1073, + [1118] = 1077, + [1119] = 1119, + [1120] = 1120, + [1121] = 1072, + [1122] = 1122, + [1123] = 1081, + [1124] = 1124, + [1125] = 1125, + [1126] = 1037, [1127] = 1127, - [1128] = 1127, - [1129] = 1129, + [1128] = 1128, + [1129] = 1038, [1130] = 1130, - [1131] = 1094, + [1131] = 1037, [1132] = 1132, [1133] = 1133, [1134] = 1134, @@ -4223,119 +4223,119 @@ static const TSStateId ts_primary_state_ids[STATE_COUNT] = { [1136] = 1136, [1137] = 1137, [1138] = 1138, - [1139] = 1139, + [1139] = 1098, [1140] = 1140, - [1141] = 1067, - [1142] = 1094, + [1141] = 1141, + [1142] = 1142, [1143] = 1143, - [1144] = 1102, - [1145] = 1066, - [1146] = 1076, - [1147] = 1063, + [1144] = 1120, + [1145] = 1038, + [1146] = 1146, + [1147] = 1069, [1148] = 1148, [1149] = 1149, [1150] = 1150, - [1151] = 1143, - [1152] = 1065, - [1153] = 1153, - [1154] = 1153, - [1155] = 1072, - [1156] = 1032, - [1157] = 1157, - [1158] = 1067, - [1159] = 1072, - [1160] = 1073, - [1161] = 1076, - [1162] = 1063, - [1163] = 1066, - [1164] = 1065, - [1165] = 1165, - [1166] = 1166, - [1167] = 1031, - [1168] = 1168, - [1169] = 1169, - [1170] = 1170, + [1151] = 1151, + [1152] = 1081, + [1153] = 1081, + [1154] = 1077, + [1155] = 1073, + [1156] = 1069, + [1157] = 1071, + [1158] = 1158, + [1159] = 1098, + [1160] = 1160, + [1161] = 1082, + [1162] = 1077, + [1163] = 1082, + [1164] = 1073, + [1165] = 1069, + [1166] = 1072, + [1167] = 1071, + [1168] = 1082, + [1169] = 1125, + [1170] = 1072, [1171] = 1171, - [1172] = 1172, + [1172] = 1146, [1173] = 1173, [1174] = 1174, - [1175] = 1175, + [1175] = 1107, [1176] = 1176, [1177] = 1177, - [1178] = 1066, + [1178] = 1178, [1179] = 1179, [1180] = 1180, [1181] = 1181, - [1182] = 1182, + [1182] = 1077, [1183] = 1183, - [1184] = 1143, - [1185] = 1065, + [1184] = 1184, + [1185] = 1185, [1186] = 1186, - [1187] = 1067, - [1188] = 1188, - [1189] = 1031, - [1190] = 1190, + [1187] = 1187, + [1188] = 1082, + [1189] = 1073, + [1190] = 1069, [1191] = 1191, - [1192] = 1170, + [1192] = 1192, [1193] = 1193, - [1194] = 1072, - [1195] = 1102, - [1196] = 1188, - [1197] = 1073, - [1198] = 1076, - [1199] = 1170, - [1200] = 1063, - [1201] = 1201, + [1194] = 1184, + [1195] = 1195, + [1196] = 1186, + [1197] = 1072, + [1198] = 1037, + [1199] = 1199, + [1200] = 1200, + [1201] = 1071, [1202] = 1202, [1203] = 1203, - [1204] = 1174, + [1204] = 1204, [1205] = 1205, - [1206] = 1206, - [1207] = 1207, - [1208] = 1208, - [1209] = 1171, - [1210] = 1203, - [1211] = 1032, - [1212] = 1153, - [1213] = 1175, - [1214] = 1170, - [1215] = 1215, - [1216] = 1216, - [1217] = 1217, - [1218] = 1218, - [1219] = 1219, - [1220] = 1220, - [1221] = 1221, + [1206] = 1203, + [1207] = 1184, + [1208] = 1177, + [1209] = 1193, + [1210] = 1107, + [1211] = 1186, + [1212] = 1186, + [1213] = 1213, + [1214] = 1081, + [1215] = 1195, + [1216] = 1183, + [1217] = 1202, + [1218] = 1204, + [1219] = 1120, + [1220] = 1125, + [1221] = 1199, [1222] = 1222, [1223] = 1223, - [1224] = 1222, + [1224] = 1224, [1225] = 1225, - [1226] = 1226, - [1227] = 1227, - [1228] = 1217, - [1229] = 1229, - [1230] = 1230, + [1226] = 1202, + [1227] = 1204, + [1228] = 1203, + [1229] = 1202, + [1230] = 1204, [1231] = 1231, - [1232] = 1232, - [1233] = 1231, + [1232] = 1203, + [1233] = 1038, [1234] = 1234, [1235] = 1235, - [1236] = 1236, + [1236] = 1184, [1237] = 1237, - [1238] = 1238, + [1238] = 1125, [1239] = 1239, [1240] = 1240, - [1241] = 1238, - [1242] = 1242, - [1243] = 1201, + [1241] = 1241, + [1242] = 1039, + [1243] = 1243, [1244] = 1244, - [1245] = 1234, - [1246] = 1237, - [1247] = 1219, + [1245] = 1245, + [1246] = 1246, + [1247] = 1247, [1248] = 1248, - [1249] = 1033, - [1250] = 1220, - [1251] = 1251, + [1249] = 1249, + [1250] = 1250, + [1251] = 1245, [1252] = 1252, [1253] = 1253, [1254] = 1254, @@ -4344,52 +4344,52 @@ static const TSStateId ts_primary_state_ids[STATE_COUNT] = { [1257] = 1257, [1258] = 1258, [1259] = 1259, - [1260] = 1180, + [1260] = 1260, [1261] = 1261, - [1262] = 1262, + [1262] = 1256, [1263] = 1263, [1264] = 1264, - [1265] = 1265, - [1266] = 1262, + [1265] = 1253, + [1266] = 1266, [1267] = 1267, [1268] = 1268, [1269] = 1269, - [1270] = 1270, - [1271] = 1271, - [1272] = 1220, - [1273] = 1273, - [1274] = 1188, + [1270] = 1249, + [1271] = 1231, + [1272] = 1272, + [1273] = 1272, + [1274] = 1243, [1275] = 1275, [1276] = 1276, - [1277] = 1277, - [1278] = 1219, - [1279] = 1279, + [1277] = 1276, + [1278] = 1278, + [1279] = 1250, [1280] = 1280, [1281] = 1281, [1282] = 1282, - [1283] = 1273, - [1284] = 1231, + [1283] = 1283, + [1284] = 1284, [1285] = 1285, - [1286] = 1286, + [1286] = 1272, [1287] = 1287, - [1288] = 1288, + [1288] = 1243, [1289] = 1289, [1290] = 1290, - [1291] = 1269, - [1292] = 1292, - [1293] = 1293, - [1294] = 1056, + [1291] = 1291, + [1292] = 1224, + [1293] = 1053, + [1294] = 1294, [1295] = 1295, - [1296] = 1295, + [1296] = 1289, [1297] = 1297, [1298] = 1298, - [1299] = 1299, + [1299] = 1249, [1300] = 1300, - [1301] = 1299, + [1301] = 1291, [1302] = 1302, [1303] = 1303, [1304] = 1304, - [1305] = 1300, + [1305] = 1305, [1306] = 1306, [1307] = 1307, [1308] = 1308, @@ -4398,12 +4398,12 @@ static const TSStateId ts_primary_state_ids[STATE_COUNT] = { [1311] = 1311, [1312] = 1312, [1313] = 1313, - [1314] = 1061, - [1315] = 1035, - [1316] = 1316, - [1317] = 1262, - [1318] = 1308, - [1319] = 1281, + [1314] = 1285, + [1315] = 1315, + [1316] = 1199, + [1317] = 1317, + [1318] = 1318, + [1319] = 1319, [1320] = 1320, [1321] = 1321, [1322] = 1322, @@ -4416,208 +4416,208 @@ static const TSStateId ts_primary_state_ids[STATE_COUNT] = { [1329] = 1329, [1330] = 1330, [1331] = 1331, - [1332] = 1299, + [1332] = 1332, [1333] = 1333, - [1334] = 1289, - [1335] = 1300, - [1336] = 1306, - [1337] = 1337, - [1338] = 1338, + [1334] = 1334, + [1335] = 1335, + [1336] = 1336, + [1337] = 1300, + [1338] = 1304, [1339] = 1339, - [1340] = 1340, + [1340] = 1324, [1341] = 1341, [1342] = 1342, - [1343] = 1306, + [1343] = 1343, [1344] = 1344, - [1345] = 1306, - [1346] = 1346, + [1345] = 1345, + [1346] = 1345, [1347] = 1347, [1348] = 1348, - [1349] = 1306, + [1349] = 1349, [1350] = 1350, - [1351] = 1312, - [1352] = 1337, - [1353] = 1353, + [1351] = 1328, + [1352] = 1352, + [1353] = 1347, [1354] = 1354, - [1355] = 1309, - [1356] = 1327, + [1355] = 1355, + [1356] = 1330, [1357] = 1357, - [1358] = 1264, + [1358] = 1358, [1359] = 1359, [1360] = 1360, - [1361] = 1361, - [1362] = 1362, + [1361] = 1347, + [1362] = 1290, [1363] = 1363, - [1364] = 1357, - [1365] = 1365, + [1364] = 1364, + [1365] = 1347, [1366] = 1366, - [1367] = 1303, - [1368] = 1304, - [1369] = 1306, + [1367] = 1347, + [1368] = 1368, + [1369] = 1068, [1370] = 1370, - [1371] = 1371, + [1371] = 1359, [1372] = 1372, - [1373] = 1373, + [1373] = 1043, [1374] = 1374, - [1375] = 1307, - [1376] = 1359, - [1377] = 1377, - [1378] = 1378, + [1375] = 1334, + [1376] = 1350, + [1377] = 1363, + [1378] = 1331, [1379] = 1379, [1380] = 1380, [1381] = 1381, [1382] = 1382, [1383] = 1383, - [1384] = 1384, + [1384] = 1302, [1385] = 1385, - [1386] = 1386, - [1387] = 1384, - [1388] = 696, + [1386] = 1370, + [1387] = 1347, + [1388] = 1388, [1389] = 1389, [1390] = 1390, [1391] = 1391, [1392] = 1392, - [1393] = 1393, + [1393] = 1291, [1394] = 1394, [1395] = 1395, [1396] = 1396, [1397] = 1397, - [1398] = 1398, - [1399] = 1399, + [1398] = 1396, + [1399] = 1328, [1400] = 1400, [1401] = 1401, - [1402] = 1393, - [1403] = 1403, - [1404] = 1395, - [1405] = 1394, - [1406] = 1320, + [1402] = 1345, + [1403] = 1397, + [1404] = 1404, + [1405] = 1405, + [1406] = 1406, [1407] = 1407, [1408] = 1408, - [1409] = 1322, + [1409] = 1409, [1410] = 1410, [1411] = 1411, - [1412] = 1379, + [1412] = 1412, [1413] = 1413, - [1414] = 1251, - [1415] = 1384, - [1416] = 1393, - [1417] = 1394, + [1414] = 1335, + [1415] = 1336, + [1416] = 1416, + [1417] = 1417, [1418] = 1418, [1419] = 1419, - [1420] = 1397, + [1420] = 1420, [1421] = 1421, - [1422] = 1399, - [1423] = 1400, + [1422] = 1422, + [1423] = 1423, [1424] = 1424, [1425] = 1425, - [1426] = 1407, + [1426] = 1426, [1427] = 1427, - [1428] = 1386, - [1429] = 697, - [1430] = 1395, - [1431] = 1431, - [1432] = 1407, + [1428] = 1428, + [1429] = 1429, + [1430] = 1430, + [1431] = 1281, + [1432] = 1432, [1433] = 1433, - [1434] = 1397, + [1434] = 1434, [1435] = 1435, - [1436] = 1379, - [1437] = 1413, - [1438] = 1399, - [1439] = 1384, - [1440] = 1393, - [1441] = 1400, - [1442] = 1394, + [1436] = 1436, + [1437] = 1437, + [1438] = 1329, + [1439] = 1439, + [1440] = 1339, + [1441] = 1441, + [1442] = 1442, [1443] = 1443, [1444] = 1444, - [1445] = 1397, + [1445] = 1406, [1446] = 1446, - [1447] = 1399, - [1448] = 1400, + [1447] = 1432, + [1448] = 1448, [1449] = 1449, - [1450] = 1425, - [1451] = 1344, + [1450] = 1449, + [1451] = 1451, [1452] = 1452, [1453] = 1453, [1454] = 1454, [1455] = 1455, - [1456] = 1456, - [1457] = 1457, - [1458] = 1458, - [1459] = 1459, + [1456] = 1412, + [1457] = 1413, + [1458] = 1434, + [1459] = 1441, [1460] = 1460, - [1461] = 1461, + [1461] = 1432, [1462] = 1462, - [1463] = 1463, - [1464] = 1252, + [1463] = 1259, + [1464] = 1432, [1465] = 1465, - [1466] = 1466, - [1467] = 1467, - [1468] = 1468, - [1469] = 1469, - [1470] = 1463, + [1466] = 1449, + [1467] = 1327, + [1468] = 1452, + [1469] = 1453, + [1470] = 1454, [1471] = 1471, - [1472] = 1472, - [1473] = 1326, + [1472] = 1412, + [1473] = 1413, [1474] = 1474, - [1475] = 1328, - [1476] = 1230, + [1475] = 1434, + [1476] = 1441, [1477] = 1477, [1478] = 1478, - [1479] = 1395, + [1479] = 1449, [1480] = 1480, [1481] = 1481, - [1482] = 1482, - [1483] = 1483, + [1482] = 1452, + [1483] = 1481, [1484] = 1484, - [1485] = 1485, - [1486] = 1486, - [1487] = 1372, + [1485] = 702, + [1486] = 1452, + [1487] = 1487, [1488] = 1488, [1489] = 1489, - [1490] = 1490, + [1490] = 1453, [1491] = 1491, - [1492] = 1226, - [1493] = 1452, + [1492] = 1492, + [1493] = 1493, [1494] = 1494, - [1495] = 1495, - [1496] = 1401, - [1497] = 1497, - [1498] = 1379, + [1495] = 1407, + [1496] = 1452, + [1497] = 1453, + [1498] = 1498, [1499] = 1499, - [1500] = 1324, - [1501] = 1413, - [1502] = 1410, - [1503] = 1467, + [1500] = 1500, + [1501] = 1454, + [1502] = 1435, + [1503] = 1465, [1504] = 1504, - [1505] = 1407, + [1505] = 1505, [1506] = 1506, - [1507] = 1413, - [1508] = 1411, - [1509] = 1478, + [1507] = 1507, + [1508] = 1260, + [1509] = 703, [1510] = 1510, - [1511] = 1453, + [1511] = 1511, [1512] = 1512, [1513] = 1513, [1514] = 1514, [1515] = 1515, - [1516] = 1516, - [1517] = 1517, - [1518] = 1518, - [1519] = 1519, - [1520] = 1518, - [1521] = 1521, + [1516] = 1383, + [1517] = 1275, + [1518] = 1454, + [1519] = 1487, + [1520] = 1491, + [1521] = 1412, [1522] = 1522, - [1523] = 320, + [1523] = 1413, [1524] = 1524, - [1525] = 1525, - [1526] = 1526, - [1527] = 1527, + [1525] = 1434, + [1526] = 1441, + [1527] = 1492, [1528] = 1528, - [1529] = 1529, - [1530] = 1530, - [1531] = 1531, + [1529] = 1358, + [1530] = 1515, + [1531] = 1405, [1532] = 1532, - [1533] = 1186, + [1533] = 333, [1534] = 1534, [1535] = 1535, [1536] = 1536, @@ -4626,82 +4626,82 @@ static const TSStateId ts_primary_state_ids[STATE_COUNT] = { [1539] = 1539, [1540] = 1540, [1541] = 1541, - [1542] = 321, - [1543] = 1539, + [1542] = 1442, + [1543] = 1543, [1544] = 1544, [1545] = 1545, - [1546] = 1531, + [1546] = 1546, [1547] = 1547, - [1548] = 1548, + [1548] = 1538, [1549] = 1549, [1550] = 1550, [1551] = 1551, [1552] = 1552, - [1553] = 1381, - [1554] = 1391, - [1555] = 1550, - [1556] = 1547, + [1553] = 1553, + [1554] = 1554, + [1555] = 1555, + [1556] = 1556, [1557] = 1557, [1558] = 1558, [1559] = 1559, - [1560] = 1560, + [1560] = 1546, [1561] = 1561, - [1562] = 1548, + [1562] = 1562, [1563] = 1563, - [1564] = 310, + [1564] = 1551, [1565] = 1565, [1566] = 1566, [1567] = 1567, - [1568] = 1518, - [1569] = 1569, + [1568] = 1568, + [1569] = 1237, [1570] = 1570, [1571] = 1571, [1572] = 1572, [1573] = 1573, - [1574] = 1510, - [1575] = 318, - [1576] = 1576, + [1574] = 1574, + [1575] = 1575, + [1576] = 1544, [1577] = 1577, [1578] = 1578, [1579] = 1579, [1580] = 1580, - [1581] = 327, - [1582] = 1538, - [1583] = 1512, + [1581] = 1581, + [1582] = 318, + [1583] = 311, [1584] = 1584, [1585] = 1585, [1586] = 1586, - [1587] = 1545, - [1588] = 1588, + [1587] = 1587, + [1588] = 1573, [1589] = 1589, - [1590] = 1590, + [1590] = 1573, [1591] = 1591, [1592] = 1592, [1593] = 1593, - [1594] = 1594, + [1594] = 1547, [1595] = 1595, [1596] = 1596, - [1597] = 1597, - [1598] = 1598, - [1599] = 1599, - [1600] = 1600, + [1597] = 1572, + [1598] = 312, + [1599] = 1574, + [1600] = 1428, [1601] = 1601, [1602] = 1602, [1603] = 1603, [1604] = 1604, [1605] = 1605, - [1606] = 1606, - [1607] = 1607, - [1608] = 1594, + [1606] = 1507, + [1607] = 326, + [1608] = 1608, [1609] = 1609, [1610] = 1610, [1611] = 1611, - [1612] = 1612, + [1612] = 1541, [1613] = 1613, [1614] = 1614, [1615] = 1615, [1616] = 1616, - [1617] = 1617, + [1617] = 1616, [1618] = 1618, [1619] = 1619, [1620] = 1620, @@ -4711,113 +4711,134 @@ static const TSStateId ts_primary_state_ids[STATE_COUNT] = { [1624] = 1624, [1625] = 1625, [1626] = 1626, - [1627] = 1609, - [1628] = 1617, + [1627] = 1627, + [1628] = 1618, [1629] = 1629, - [1630] = 1593, + [1630] = 1630, [1631] = 1631, - [1632] = 1614, + [1632] = 1632, [1633] = 1633, [1634] = 1634, [1635] = 1635, [1636] = 1636, - [1637] = 1615, - [1638] = 1616, + [1637] = 1635, + [1638] = 1638, [1639] = 1639, - [1640] = 1640, + [1640] = 1615, [1641] = 1641, - [1642] = 1622, - [1643] = 1615, - [1644] = 1620, - [1645] = 1599, + [1642] = 1642, + [1643] = 1643, + [1644] = 1630, + [1645] = 1636, [1646] = 1646, - [1647] = 1633, + [1647] = 1647, [1648] = 1648, - [1649] = 1621, + [1649] = 1643, [1650] = 1650, - [1651] = 1607, + [1651] = 1651, [1652] = 1652, - [1653] = 1611, - [1654] = 1600, - [1655] = 1655, - [1656] = 1641, - [1657] = 1652, - [1658] = 1658, + [1653] = 1653, + [1654] = 1654, + [1655] = 1654, + [1656] = 1621, + [1657] = 1657, + [1658] = 1657, [1659] = 1659, - [1660] = 1660, - [1661] = 1661, - [1662] = 1597, - [1663] = 1663, + [1660] = 1614, + [1661] = 1647, + [1662] = 1662, + [1663] = 1634, [1664] = 1664, [1665] = 1665, - [1666] = 1603, - [1667] = 1601, - [1668] = 1668, - [1669] = 1655, - [1670] = 1652, + [1666] = 1624, + [1667] = 1639, + [1668] = 1631, + [1669] = 1657, + [1670] = 1670, [1671] = 1671, - [1672] = 1603, - [1673] = 1655, - [1674] = 1664, + [1672] = 1619, + [1673] = 1618, + [1674] = 1674, [1675] = 1675, [1676] = 1676, - [1677] = 1677, - [1678] = 1601, - [1679] = 1655, - [1680] = 1618, - [1681] = 1594, - [1682] = 1622, - [1683] = 1641, - [1684] = 1616, - [1685] = 1685, - [1686] = 1659, - [1687] = 1618, - [1688] = 1629, + [1677] = 1651, + [1678] = 1678, + [1679] = 1679, + [1680] = 1665, + [1681] = 1631, + [1682] = 1682, + [1683] = 1683, + [1684] = 1615, + [1685] = 1664, + [1686] = 1654, + [1687] = 1629, + [1688] = 1624, [1689] = 1689, [1690] = 1690, - [1691] = 1641, - [1692] = 1618, - [1693] = 1626, - [1694] = 1694, - [1695] = 1593, - [1696] = 1594, - [1697] = 1697, - [1698] = 1626, - [1699] = 1660, - [1700] = 1700, - [1701] = 1593, - [1702] = 1663, - [1703] = 1634, + [1691] = 1639, + [1692] = 1657, + [1693] = 1632, + [1694] = 1614, + [1695] = 1676, + [1696] = 1696, + [1697] = 1639, + [1698] = 1619, + [1699] = 1699, + [1700] = 1664, + [1701] = 1626, + [1702] = 1619, + [1703] = 1631, [1704] = 1704, - [1705] = 1622, - [1706] = 1592, + [1705] = 1705, + [1706] = 1706, [1707] = 1707, - [1708] = 1616, - [1709] = 1596, - [1710] = 1622, - [1711] = 1711, - [1712] = 1619, - [1713] = 1713, - [1714] = 1714, - [1715] = 1676, - [1716] = 1626, - [1717] = 1717, - [1718] = 1694, - [1719] = 1603, - [1720] = 1622, - [1721] = 1601, - [1722] = 1615, - [1723] = 1641, - [1724] = 1671, - [1725] = 1639, - [1726] = 1659, - [1727] = 1612, - [1728] = 1668, - [1729] = 1641, - [1730] = 1648, - [1731] = 1652, - [1732] = 1659, - [1733] = 1624, + [1708] = 1708, + [1709] = 1709, + [1710] = 1619, + [1711] = 1618, + [1712] = 1712, + [1713] = 1675, + [1714] = 1665, + [1715] = 1648, + [1716] = 1613, + [1717] = 1676, + [1718] = 1718, + [1719] = 1622, + [1720] = 1683, + [1721] = 1654, + [1722] = 1675, + [1723] = 1659, + [1724] = 1665, + [1725] = 1725, + [1726] = 1726, + [1727] = 1624, + [1728] = 1676, + [1729] = 1639, + [1730] = 1619, + [1731] = 1731, + [1732] = 1639, + [1733] = 1664, + [1734] = 1641, + [1735] = 1614, + [1736] = 1736, + [1737] = 1615, + [1738] = 1738, + [1739] = 1736, + [1740] = 1740, + [1741] = 1646, + [1742] = 1742, + [1743] = 1743, + [1744] = 1744, + [1745] = 1699, + [1746] = 1705, + [1747] = 1642, + [1748] = 1748, + [1749] = 1740, + [1750] = 1748, + [1751] = 1718, + [1752] = 1752, + [1753] = 1725, + [1754] = 1675, }; static const TSCharacterRange sym_identifier_character_set_1[] = { @@ -6509,9 +6530,9 @@ static const TSLexMode ts_lex_modes[STATE_COUNT] = { [59] = {.lex_state = 51, .external_lex_state = 3}, [60] = {.lex_state = 51, .external_lex_state = 3}, [61] = {.lex_state = 51, .external_lex_state = 3}, - [62] = {.lex_state = 51, .external_lex_state = 2}, + [62] = {.lex_state = 51, .external_lex_state = 3}, [63] = {.lex_state = 51, .external_lex_state = 3}, - [64] = {.lex_state = 51, .external_lex_state = 3}, + [64] = {.lex_state = 51, .external_lex_state = 2}, [65] = {.lex_state = 51, .external_lex_state = 2}, [66] = {.lex_state = 51, .external_lex_state = 4}, [67] = {.lex_state = 51, .external_lex_state = 4}, @@ -6522,10 +6543,10 @@ static const TSLexMode ts_lex_modes[STATE_COUNT] = { [72] = {.lex_state = 51, .external_lex_state = 5}, [73] = {.lex_state = 51, .external_lex_state = 5}, [74] = {.lex_state = 51, .external_lex_state = 5}, - [75] = {.lex_state = 51, .external_lex_state = 4}, + [75] = {.lex_state = 51, .external_lex_state = 5}, [76] = {.lex_state = 51, .external_lex_state = 5}, [77] = {.lex_state = 51, .external_lex_state = 5}, - [78] = {.lex_state = 51, .external_lex_state = 5}, + [78] = {.lex_state = 51, .external_lex_state = 4}, [79] = {.lex_state = 51, .external_lex_state = 5}, [80] = {.lex_state = 51, .external_lex_state = 5}, [81] = {.lex_state = 51, .external_lex_state = 5}, @@ -6581,23 +6602,23 @@ static const TSLexMode ts_lex_modes[STATE_COUNT] = { [131] = {.lex_state = 51, .external_lex_state = 4}, [132] = {.lex_state = 51, .external_lex_state = 4}, [133] = {.lex_state = 51, .external_lex_state = 2}, - [134] = {.lex_state = 51, .external_lex_state = 2}, - [135] = {.lex_state = 51, .external_lex_state = 4}, + [134] = {.lex_state = 51, .external_lex_state = 4}, + [135] = {.lex_state = 51, .external_lex_state = 2}, [136] = {.lex_state = 51, .external_lex_state = 2}, [137] = {.lex_state = 51, .external_lex_state = 2}, [138] = {.lex_state = 51, .external_lex_state = 2}, - [139] = {.lex_state = 51, .external_lex_state = 4}, - [140] = {.lex_state = 14, .external_lex_state = 2}, + [139] = {.lex_state = 14, .external_lex_state = 2}, + [140] = {.lex_state = 51, .external_lex_state = 4}, [141] = {.lex_state = 51, .external_lex_state = 2}, [142] = {.lex_state = 51, .external_lex_state = 2}, [143] = {.lex_state = 51, .external_lex_state = 2}, [144] = {.lex_state = 51, .external_lex_state = 2}, [145] = {.lex_state = 51, .external_lex_state = 2}, [146] = {.lex_state = 51, .external_lex_state = 2}, - [147] = {.lex_state = 51, .external_lex_state = 4}, + [147] = {.lex_state = 14, .external_lex_state = 2}, [148] = {.lex_state = 51, .external_lex_state = 2}, - [149] = {.lex_state = 14, .external_lex_state = 2}, - [150] = {.lex_state = 51, .external_lex_state = 2}, + [149] = {.lex_state = 51, .external_lex_state = 2}, + [150] = {.lex_state = 51, .external_lex_state = 4}, [151] = {.lex_state = 51, .external_lex_state = 2}, [152] = {.lex_state = 51, .external_lex_state = 2}, [153] = {.lex_state = 51, .external_lex_state = 2}, @@ -6621,36 +6642,36 @@ static const TSLexMode ts_lex_modes[STATE_COUNT] = { [171] = {.lex_state = 51, .external_lex_state = 2}, [172] = {.lex_state = 51, .external_lex_state = 2}, [173] = {.lex_state = 51, .external_lex_state = 2}, - [174] = {.lex_state = 51, .external_lex_state = 2}, + [174] = {.lex_state = 14, .external_lex_state = 2}, [175] = {.lex_state = 51, .external_lex_state = 2}, [176] = {.lex_state = 51, .external_lex_state = 2}, - [177] = {.lex_state = 51, .external_lex_state = 4}, - [178] = {.lex_state = 51, .external_lex_state = 4}, - [179] = {.lex_state = 51, .external_lex_state = 2}, + [177] = {.lex_state = 51, .external_lex_state = 2}, + [178] = {.lex_state = 51, .external_lex_state = 2}, + [179] = {.lex_state = 51, .external_lex_state = 4}, [180] = {.lex_state = 51, .external_lex_state = 2}, - [181] = {.lex_state = 14, .external_lex_state = 2}, - [182] = {.lex_state = 14, .external_lex_state = 2}, - [183] = {.lex_state = 14, .external_lex_state = 2}, + [181] = {.lex_state = 51, .external_lex_state = 2}, + [182] = {.lex_state = 51, .external_lex_state = 4}, + [183] = {.lex_state = 51, .external_lex_state = 2}, [184] = {.lex_state = 51, .external_lex_state = 2}, - [185] = {.lex_state = 51, .external_lex_state = 2}, + [185] = {.lex_state = 14, .external_lex_state = 2}, [186] = {.lex_state = 51, .external_lex_state = 2}, - [187] = {.lex_state = 51, .external_lex_state = 2}, + [187] = {.lex_state = 14, .external_lex_state = 2}, [188] = {.lex_state = 51, .external_lex_state = 2}, [189] = {.lex_state = 51, .external_lex_state = 2}, [190] = {.lex_state = 51, .external_lex_state = 2}, - [191] = {.lex_state = 51, .external_lex_state = 4}, - [192] = {.lex_state = 51, .external_lex_state = 4}, - [193] = {.lex_state = 51, .external_lex_state = 4}, + [191] = {.lex_state = 51, .external_lex_state = 2}, + [192] = {.lex_state = 51, .external_lex_state = 2}, + [193] = {.lex_state = 51, .external_lex_state = 2}, [194] = {.lex_state = 51, .external_lex_state = 2}, - [195] = {.lex_state = 51, .external_lex_state = 4}, + [195] = {.lex_state = 51, .external_lex_state = 2}, [196] = {.lex_state = 51, .external_lex_state = 2}, - [197] = {.lex_state = 51, .external_lex_state = 2}, + [197] = {.lex_state = 51, .external_lex_state = 4}, [198] = {.lex_state = 51, .external_lex_state = 2}, [199] = {.lex_state = 51, .external_lex_state = 2}, [200] = {.lex_state = 51, .external_lex_state = 2}, [201] = {.lex_state = 51, .external_lex_state = 2}, [202] = {.lex_state = 51, .external_lex_state = 2}, - [203] = {.lex_state = 51, .external_lex_state = 2}, + [203] = {.lex_state = 51, .external_lex_state = 4}, [204] = {.lex_state = 51, .external_lex_state = 2}, [205] = {.lex_state = 51, .external_lex_state = 2}, [206] = {.lex_state = 51, .external_lex_state = 2}, @@ -6658,7 +6679,7 @@ static const TSLexMode ts_lex_modes[STATE_COUNT] = { [208] = {.lex_state = 51, .external_lex_state = 2}, [209] = {.lex_state = 51, .external_lex_state = 2}, [210] = {.lex_state = 51, .external_lex_state = 2}, - [211] = {.lex_state = 51, .external_lex_state = 2}, + [211] = {.lex_state = 51, .external_lex_state = 4}, [212] = {.lex_state = 51, .external_lex_state = 2}, [213] = {.lex_state = 51, .external_lex_state = 2}, [214] = {.lex_state = 51, .external_lex_state = 2}, @@ -6680,7 +6701,7 @@ static const TSLexMode ts_lex_modes[STATE_COUNT] = { [230] = {.lex_state = 51, .external_lex_state = 2}, [231] = {.lex_state = 51, .external_lex_state = 2}, [232] = {.lex_state = 51, .external_lex_state = 2}, - [233] = {.lex_state = 51, .external_lex_state = 2}, + [233] = {.lex_state = 51, .external_lex_state = 4}, [234] = {.lex_state = 51, .external_lex_state = 2}, [235] = {.lex_state = 51, .external_lex_state = 2}, [236] = {.lex_state = 51, .external_lex_state = 2}, @@ -6714,41 +6735,41 @@ static const TSLexMode ts_lex_modes[STATE_COUNT] = { [264] = {.lex_state = 51, .external_lex_state = 2}, [265] = {.lex_state = 51, .external_lex_state = 2}, [266] = {.lex_state = 51, .external_lex_state = 3}, - [267] = {.lex_state = 51, .external_lex_state = 2}, + [267] = {.lex_state = 51, .external_lex_state = 3}, [268] = {.lex_state = 51, .external_lex_state = 2}, [269] = {.lex_state = 51, .external_lex_state = 2}, [270] = {.lex_state = 51, .external_lex_state = 2}, - [271] = {.lex_state = 51, .external_lex_state = 3}, + [271] = {.lex_state = 51, .external_lex_state = 2}, [272] = {.lex_state = 51, .external_lex_state = 2}, - [273] = {.lex_state = 51, .external_lex_state = 3}, + [273] = {.lex_state = 51, .external_lex_state = 2}, [274] = {.lex_state = 51, .external_lex_state = 2}, - [275] = {.lex_state = 51, .external_lex_state = 2}, + [275] = {.lex_state = 51, .external_lex_state = 3}, [276] = {.lex_state = 51, .external_lex_state = 2}, [277] = {.lex_state = 51, .external_lex_state = 2}, [278] = {.lex_state = 51, .external_lex_state = 2}, - [279] = {.lex_state = 51, .external_lex_state = 3}, + [279] = {.lex_state = 51, .external_lex_state = 2}, [280] = {.lex_state = 51, .external_lex_state = 2}, [281] = {.lex_state = 51, .external_lex_state = 2}, [282] = {.lex_state = 51, .external_lex_state = 2}, - [283] = {.lex_state = 51, .external_lex_state = 2}, + [283] = {.lex_state = 51, .external_lex_state = 3}, [284] = {.lex_state = 51, .external_lex_state = 2}, [285] = {.lex_state = 51, .external_lex_state = 2}, [286] = {.lex_state = 51, .external_lex_state = 2}, [287] = {.lex_state = 51, .external_lex_state = 2}, - [288] = {.lex_state = 51, .external_lex_state = 4}, + [288] = {.lex_state = 51, .external_lex_state = 2}, [289] = {.lex_state = 51, .external_lex_state = 2}, - [290] = {.lex_state = 51, .external_lex_state = 4}, + [290] = {.lex_state = 51, .external_lex_state = 2}, [291] = {.lex_state = 51, .external_lex_state = 4}, - [292] = {.lex_state = 51, .external_lex_state = 4}, + [292] = {.lex_state = 51, .external_lex_state = 2}, [293] = {.lex_state = 51, .external_lex_state = 2}, [294] = {.lex_state = 51, .external_lex_state = 2}, [295] = {.lex_state = 51, .external_lex_state = 2}, - [296] = {.lex_state = 51, .external_lex_state = 2}, + [296] = {.lex_state = 51, .external_lex_state = 4}, [297] = {.lex_state = 51, .external_lex_state = 2}, [298] = {.lex_state = 51, .external_lex_state = 2}, [299] = {.lex_state = 51, .external_lex_state = 2}, - [300] = {.lex_state = 51, .external_lex_state = 2}, - [301] = {.lex_state = 51, .external_lex_state = 2}, + [300] = {.lex_state = 51, .external_lex_state = 4}, + [301] = {.lex_state = 51, .external_lex_state = 4}, [302] = {.lex_state = 51, .external_lex_state = 2}, [303] = {.lex_state = 51, .external_lex_state = 2}, [304] = {.lex_state = 51, .external_lex_state = 2}, @@ -6757,34 +6778,34 @@ static const TSLexMode ts_lex_modes[STATE_COUNT] = { [307] = {.lex_state = 51, .external_lex_state = 2}, [308] = {.lex_state = 51, .external_lex_state = 2}, [309] = {.lex_state = 51, .external_lex_state = 2}, - [310] = {.lex_state = 51, .external_lex_state = 3}, + [310] = {.lex_state = 51, .external_lex_state = 2}, [311] = {.lex_state = 51, .external_lex_state = 2}, [312] = {.lex_state = 51, .external_lex_state = 2}, - [313] = {.lex_state = 51, .external_lex_state = 3}, + [313] = {.lex_state = 16}, [314] = {.lex_state = 51, .external_lex_state = 2}, [315] = {.lex_state = 51, .external_lex_state = 2}, - [316] = {.lex_state = 51, .external_lex_state = 2}, - [317] = {.lex_state = 51, .external_lex_state = 2}, + [316] = {.lex_state = 51, .external_lex_state = 3}, + [317] = {.lex_state = 16}, [318] = {.lex_state = 51, .external_lex_state = 3}, [319] = {.lex_state = 51, .external_lex_state = 2}, - [320] = {.lex_state = 51, .external_lex_state = 2}, - [321] = {.lex_state = 51, .external_lex_state = 2}, + [320] = {.lex_state = 51, .external_lex_state = 3}, + [321] = {.lex_state = 51, .external_lex_state = 3}, [322] = {.lex_state = 51, .external_lex_state = 3}, [323] = {.lex_state = 51, .external_lex_state = 2}, - [324] = {.lex_state = 16}, + [324] = {.lex_state = 51, .external_lex_state = 3}, [325] = {.lex_state = 51, .external_lex_state = 3}, - [326] = {.lex_state = 51, .external_lex_state = 3}, + [326] = {.lex_state = 51, .external_lex_state = 2}, [327] = {.lex_state = 51, .external_lex_state = 2}, - [328] = {.lex_state = 16}, - [329] = {.lex_state = 51, .external_lex_state = 3}, + [328] = {.lex_state = 51, .external_lex_state = 2}, + [329] = {.lex_state = 51, .external_lex_state = 2}, [330] = {.lex_state = 51, .external_lex_state = 3}, - [331] = {.lex_state = 51, .external_lex_state = 2}, - [332] = {.lex_state = 51, .external_lex_state = 3}, + [331] = {.lex_state = 51, .external_lex_state = 3}, + [332] = {.lex_state = 51, .external_lex_state = 2}, [333] = {.lex_state = 51, .external_lex_state = 3}, - [334] = {.lex_state = 51, .external_lex_state = 3}, + [334] = {.lex_state = 51, .external_lex_state = 2}, [335] = {.lex_state = 51, .external_lex_state = 2}, [336] = {.lex_state = 51, .external_lex_state = 2}, - [337] = {.lex_state = 51, .external_lex_state = 2}, + [337] = {.lex_state = 51, .external_lex_state = 3}, [338] = {.lex_state = 51, .external_lex_state = 2}, [339] = {.lex_state = 51, .external_lex_state = 2}, [340] = {.lex_state = 51, .external_lex_state = 2}, @@ -6794,10 +6815,10 @@ static const TSLexMode ts_lex_modes[STATE_COUNT] = { [344] = {.lex_state = 51, .external_lex_state = 2}, [345] = {.lex_state = 51, .external_lex_state = 2}, [346] = {.lex_state = 51, .external_lex_state = 2}, - [347] = {.lex_state = 51, .external_lex_state = 2}, + [347] = {.lex_state = 16, .external_lex_state = 6}, [348] = {.lex_state = 51, .external_lex_state = 2}, [349] = {.lex_state = 51, .external_lex_state = 2}, - [350] = {.lex_state = 51, .external_lex_state = 2}, + [350] = {.lex_state = 51, .external_lex_state = 3}, [351] = {.lex_state = 51, .external_lex_state = 2}, [352] = {.lex_state = 51, .external_lex_state = 2}, [353] = {.lex_state = 51, .external_lex_state = 2}, @@ -6821,7 +6842,7 @@ static const TSLexMode ts_lex_modes[STATE_COUNT] = { [371] = {.lex_state = 51, .external_lex_state = 2}, [372] = {.lex_state = 51, .external_lex_state = 2}, [373] = {.lex_state = 51, .external_lex_state = 2}, - [374] = {.lex_state = 51, .external_lex_state = 3}, + [374] = {.lex_state = 51, .external_lex_state = 2}, [375] = {.lex_state = 51, .external_lex_state = 2}, [376] = {.lex_state = 51, .external_lex_state = 2}, [377] = {.lex_state = 51, .external_lex_state = 2}, @@ -6877,195 +6898,195 @@ static const TSLexMode ts_lex_modes[STATE_COUNT] = { [427] = {.lex_state = 51, .external_lex_state = 2}, [428] = {.lex_state = 51, .external_lex_state = 2}, [429] = {.lex_state = 51, .external_lex_state = 2}, - [430] = {.lex_state = 16, .external_lex_state = 6}, + [430] = {.lex_state = 51, .external_lex_state = 2}, [431] = {.lex_state = 51, .external_lex_state = 2}, [432] = {.lex_state = 51, .external_lex_state = 2}, - [433] = {.lex_state = 16, .external_lex_state = 6}, + [433] = {.lex_state = 51, .external_lex_state = 2}, [434] = {.lex_state = 51, .external_lex_state = 2}, - [435] = {.lex_state = 51, .external_lex_state = 3}, - [436] = {.lex_state = 51, .external_lex_state = 3}, - [437] = {.lex_state = 51, .external_lex_state = 2}, + [435] = {.lex_state = 51, .external_lex_state = 2}, + [436] = {.lex_state = 51, .external_lex_state = 2}, + [437] = {.lex_state = 16, .external_lex_state = 6}, [438] = {.lex_state = 51, .external_lex_state = 2}, - [439] = {.lex_state = 51, .external_lex_state = 2}, + [439] = {.lex_state = 51, .external_lex_state = 3}, [440] = {.lex_state = 51, .external_lex_state = 3}, - [441] = {.lex_state = 51, .external_lex_state = 3}, + [441] = {.lex_state = 51, .external_lex_state = 2}, [442] = {.lex_state = 51, .external_lex_state = 2}, - [443] = {.lex_state = 51, .external_lex_state = 3}, + [443] = {.lex_state = 51, .external_lex_state = 2}, [444] = {.lex_state = 51, .external_lex_state = 3}, [445] = {.lex_state = 51, .external_lex_state = 2}, - [446] = {.lex_state = 51, .external_lex_state = 3}, - [447] = {.lex_state = 51, .external_lex_state = 3}, - [448] = {.lex_state = 51, .external_lex_state = 2}, + [446] = {.lex_state = 51, .external_lex_state = 2}, + [447] = {.lex_state = 51, .external_lex_state = 2}, + [448] = {.lex_state = 51, .external_lex_state = 3}, [449] = {.lex_state = 51, .external_lex_state = 2}, - [450] = {.lex_state = 16, .external_lex_state = 6}, - [451] = {.lex_state = 51, .external_lex_state = 3}, + [450] = {.lex_state = 51, .external_lex_state = 2}, + [451] = {.lex_state = 51, .external_lex_state = 2}, [452] = {.lex_state = 16, .external_lex_state = 7}, - [453] = {.lex_state = 51, .external_lex_state = 3}, - [454] = {.lex_state = 51, .external_lex_state = 2}, - [455] = {.lex_state = 51, .external_lex_state = 3}, - [456] = {.lex_state = 51, .external_lex_state = 2}, + [453] = {.lex_state = 16, .external_lex_state = 6}, + [454] = {.lex_state = 51, .external_lex_state = 3}, + [455] = {.lex_state = 51, .external_lex_state = 2}, + [456] = {.lex_state = 51, .external_lex_state = 3}, [457] = {.lex_state = 51, .external_lex_state = 2}, - [458] = {.lex_state = 51, .external_lex_state = 2}, + [458] = {.lex_state = 51, .external_lex_state = 3}, [459] = {.lex_state = 51, .external_lex_state = 3}, - [460] = {.lex_state = 51, .external_lex_state = 2}, + [460] = {.lex_state = 51, .external_lex_state = 3}, [461] = {.lex_state = 51, .external_lex_state = 2}, - [462] = {.lex_state = 51, .external_lex_state = 2}, + [462] = {.lex_state = 51, .external_lex_state = 3}, [463] = {.lex_state = 51, .external_lex_state = 3}, - [464] = {.lex_state = 51, .external_lex_state = 2}, + [464] = {.lex_state = 51, .external_lex_state = 3}, [465] = {.lex_state = 51, .external_lex_state = 2}, - [466] = {.lex_state = 51, .external_lex_state = 3}, + [466] = {.lex_state = 51, .external_lex_state = 2}, [467] = {.lex_state = 51, .external_lex_state = 2}, - [468] = {.lex_state = 51, .external_lex_state = 3}, - [469] = {.lex_state = 51, .external_lex_state = 3}, - [470] = {.lex_state = 51, .external_lex_state = 3}, + [468] = {.lex_state = 51, .external_lex_state = 2}, + [469] = {.lex_state = 16, .external_lex_state = 6}, + [470] = {.lex_state = 16}, [471] = {.lex_state = 51, .external_lex_state = 2}, - [472] = {.lex_state = 51, .external_lex_state = 3}, + [472] = {.lex_state = 51, .external_lex_state = 2}, [473] = {.lex_state = 51, .external_lex_state = 2}, [474] = {.lex_state = 51, .external_lex_state = 2}, - [475] = {.lex_state = 51, .external_lex_state = 3}, + [475] = {.lex_state = 51, .external_lex_state = 2}, [476] = {.lex_state = 51, .external_lex_state = 2}, - [477] = {.lex_state = 51, .external_lex_state = 2}, + [477] = {.lex_state = 51, .external_lex_state = 3}, [478] = {.lex_state = 51, .external_lex_state = 2}, [479] = {.lex_state = 51, .external_lex_state = 3}, - [480] = {.lex_state = 16, .external_lex_state = 6}, - [481] = {.lex_state = 51, .external_lex_state = 3}, - [482] = {.lex_state = 51, .external_lex_state = 2}, - [483] = {.lex_state = 51, .external_lex_state = 3}, - [484] = {.lex_state = 51, .external_lex_state = 2}, - [485] = {.lex_state = 51, .external_lex_state = 2}, + [480] = {.lex_state = 51, .external_lex_state = 3}, + [481] = {.lex_state = 51, .external_lex_state = 2}, + [482] = {.lex_state = 51, .external_lex_state = 3}, + [483] = {.lex_state = 51, .external_lex_state = 2}, + [484] = {.lex_state = 51, .external_lex_state = 3}, + [485] = {.lex_state = 51, .external_lex_state = 3}, [486] = {.lex_state = 51, .external_lex_state = 3}, - [487] = {.lex_state = 16, .external_lex_state = 6}, + [487] = {.lex_state = 51, .external_lex_state = 3}, [488] = {.lex_state = 51, .external_lex_state = 3}, - [489] = {.lex_state = 51, .external_lex_state = 2}, - [490] = {.lex_state = 16}, + [489] = {.lex_state = 51, .external_lex_state = 3}, + [490] = {.lex_state = 51, .external_lex_state = 2}, [491] = {.lex_state = 51, .external_lex_state = 3}, - [492] = {.lex_state = 51, .external_lex_state = 2}, + [492] = {.lex_state = 16, .external_lex_state = 6}, [493] = {.lex_state = 51, .external_lex_state = 2}, - [494] = {.lex_state = 16}, - [495] = {.lex_state = 51, .external_lex_state = 3}, - [496] = {.lex_state = 16, .external_lex_state = 6}, + [494] = {.lex_state = 16, .external_lex_state = 6}, + [495] = {.lex_state = 51, .external_lex_state = 2}, + [496] = {.lex_state = 51, .external_lex_state = 2}, [497] = {.lex_state = 51, .external_lex_state = 3}, [498] = {.lex_state = 51, .external_lex_state = 2}, [499] = {.lex_state = 16, .external_lex_state = 6}, - [500] = {.lex_state = 51, .external_lex_state = 2}, + [500] = {.lex_state = 51, .external_lex_state = 3}, [501] = {.lex_state = 51, .external_lex_state = 2}, [502] = {.lex_state = 51, .external_lex_state = 3}, [503] = {.lex_state = 16, .external_lex_state = 6}, - [504] = {.lex_state = 51, .external_lex_state = 2}, - [505] = {.lex_state = 51, .external_lex_state = 2}, - [506] = {.lex_state = 51, .external_lex_state = 3}, - [507] = {.lex_state = 51, .external_lex_state = 2}, + [504] = {.lex_state = 51, .external_lex_state = 3}, + [505] = {.lex_state = 51, .external_lex_state = 3}, + [506] = {.lex_state = 51, .external_lex_state = 2}, + [507] = {.lex_state = 51, .external_lex_state = 3}, [508] = {.lex_state = 51, .external_lex_state = 2}, [509] = {.lex_state = 51, .external_lex_state = 2}, [510] = {.lex_state = 51, .external_lex_state = 2}, - [511] = {.lex_state = 51, .external_lex_state = 3}, - [512] = {.lex_state = 51, .external_lex_state = 3}, - [513] = {.lex_state = 51, .external_lex_state = 3}, - [514] = {.lex_state = 51, .external_lex_state = 2}, - [515] = {.lex_state = 51, .external_lex_state = 2}, - [516] = {.lex_state = 51, .external_lex_state = 3}, + [511] = {.lex_state = 51, .external_lex_state = 2}, + [512] = {.lex_state = 51, .external_lex_state = 2}, + [513] = {.lex_state = 51, .external_lex_state = 2}, + [514] = {.lex_state = 51, .external_lex_state = 3}, + [515] = {.lex_state = 16, .external_lex_state = 6}, + [516] = {.lex_state = 51, .external_lex_state = 2}, [517] = {.lex_state = 51, .external_lex_state = 2}, - [518] = {.lex_state = 51, .external_lex_state = 3}, - [519] = {.lex_state = 51, .external_lex_state = 3}, - [520] = {.lex_state = 51, .external_lex_state = 3}, - [521] = {.lex_state = 51, .external_lex_state = 3}, - [522] = {.lex_state = 51, .external_lex_state = 3}, - [523] = {.lex_state = 51, .external_lex_state = 3}, - [524] = {.lex_state = 51, .external_lex_state = 3}, - [525] = {.lex_state = 51, .external_lex_state = 3}, - [526] = {.lex_state = 51, .external_lex_state = 3}, - [527] = {.lex_state = 51, .external_lex_state = 3}, - [528] = {.lex_state = 51, .external_lex_state = 3}, - [529] = {.lex_state = 51, .external_lex_state = 3}, - [530] = {.lex_state = 51, .external_lex_state = 3}, - [531] = {.lex_state = 51, .external_lex_state = 3}, - [532] = {.lex_state = 51, .external_lex_state = 3}, - [533] = {.lex_state = 51, .external_lex_state = 3}, + [518] = {.lex_state = 51, .external_lex_state = 2}, + [519] = {.lex_state = 51, .external_lex_state = 2}, + [520] = {.lex_state = 51, .external_lex_state = 2}, + [521] = {.lex_state = 51, .external_lex_state = 2}, + [522] = {.lex_state = 51, .external_lex_state = 2}, + [523] = {.lex_state = 51, .external_lex_state = 2}, + [524] = {.lex_state = 16, .external_lex_state = 6}, + [525] = {.lex_state = 51, .external_lex_state = 2}, + [526] = {.lex_state = 51, .external_lex_state = 2}, + [527] = {.lex_state = 51, .external_lex_state = 2}, + [528] = {.lex_state = 51, .external_lex_state = 2}, + [529] = {.lex_state = 51, .external_lex_state = 2}, + [530] = {.lex_state = 51, .external_lex_state = 2}, + [531] = {.lex_state = 51, .external_lex_state = 2}, + [532] = {.lex_state = 51, .external_lex_state = 2}, + [533] = {.lex_state = 51, .external_lex_state = 2}, [534] = {.lex_state = 51, .external_lex_state = 3}, - [535] = {.lex_state = 51, .external_lex_state = 3}, - [536] = {.lex_state = 51, .external_lex_state = 3}, - [537] = {.lex_state = 51, .external_lex_state = 3}, - [538] = {.lex_state = 51, .external_lex_state = 3}, - [539] = {.lex_state = 51, .external_lex_state = 3}, + [535] = {.lex_state = 51, .external_lex_state = 2}, + [536] = {.lex_state = 51, .external_lex_state = 2}, + [537] = {.lex_state = 51, .external_lex_state = 2}, + [538] = {.lex_state = 51, .external_lex_state = 2}, + [539] = {.lex_state = 51, .external_lex_state = 2}, [540] = {.lex_state = 51, .external_lex_state = 3}, - [541] = {.lex_state = 51, .external_lex_state = 3}, - [542] = {.lex_state = 51, .external_lex_state = 3}, - [543] = {.lex_state = 51, .external_lex_state = 3}, - [544] = {.lex_state = 51, .external_lex_state = 2}, + [541] = {.lex_state = 51, .external_lex_state = 2}, + [542] = {.lex_state = 51, .external_lex_state = 2}, + [543] = {.lex_state = 51, .external_lex_state = 2}, + [544] = {.lex_state = 51, .external_lex_state = 3}, [545] = {.lex_state = 51, .external_lex_state = 3}, [546] = {.lex_state = 51, .external_lex_state = 3}, - [547] = {.lex_state = 51, .external_lex_state = 3}, + [547] = {.lex_state = 51, .external_lex_state = 2}, [548] = {.lex_state = 51, .external_lex_state = 2}, [549] = {.lex_state = 51, .external_lex_state = 3}, [550] = {.lex_state = 51, .external_lex_state = 2}, [551] = {.lex_state = 51, .external_lex_state = 3}, - [552] = {.lex_state = 51, .external_lex_state = 2}, - [553] = {.lex_state = 51, .external_lex_state = 3}, + [552] = {.lex_state = 51, .external_lex_state = 3}, + [553] = {.lex_state = 51, .external_lex_state = 2}, [554] = {.lex_state = 51, .external_lex_state = 3}, - [555] = {.lex_state = 51, .external_lex_state = 3}, - [556] = {.lex_state = 51, .external_lex_state = 2}, - [557] = {.lex_state = 16, .external_lex_state = 6}, - [558] = {.lex_state = 51, .external_lex_state = 3}, + [555] = {.lex_state = 51, .external_lex_state = 2}, + [556] = {.lex_state = 51, .external_lex_state = 3}, + [557] = {.lex_state = 51, .external_lex_state = 2}, + [558] = {.lex_state = 51, .external_lex_state = 2}, [559] = {.lex_state = 51, .external_lex_state = 3}, [560] = {.lex_state = 51, .external_lex_state = 3}, [561] = {.lex_state = 51, .external_lex_state = 3}, [562] = {.lex_state = 51, .external_lex_state = 3}, - [563] = {.lex_state = 51, .external_lex_state = 2}, - [564] = {.lex_state = 51, .external_lex_state = 3}, + [563] = {.lex_state = 51, .external_lex_state = 3}, + [564] = {.lex_state = 51, .external_lex_state = 2}, [565] = {.lex_state = 51, .external_lex_state = 3}, [566] = {.lex_state = 51, .external_lex_state = 2}, - [567] = {.lex_state = 51, .external_lex_state = 2}, - [568] = {.lex_state = 51, .external_lex_state = 2}, - [569] = {.lex_state = 51, .external_lex_state = 2}, - [570] = {.lex_state = 51, .external_lex_state = 2}, - [571] = {.lex_state = 16, .external_lex_state = 6}, - [572] = {.lex_state = 51, .external_lex_state = 2}, - [573] = {.lex_state = 51, .external_lex_state = 2}, - [574] = {.lex_state = 51, .external_lex_state = 2}, - [575] = {.lex_state = 51, .external_lex_state = 2}, - [576] = {.lex_state = 51, .external_lex_state = 2}, - [577] = {.lex_state = 51, .external_lex_state = 2}, - [578] = {.lex_state = 51, .external_lex_state = 2}, - [579] = {.lex_state = 51, .external_lex_state = 2}, - [580] = {.lex_state = 51, .external_lex_state = 2}, - [581] = {.lex_state = 51, .external_lex_state = 2}, - [582] = {.lex_state = 16, .external_lex_state = 6}, - [583] = {.lex_state = 51, .external_lex_state = 2}, - [584] = {.lex_state = 51, .external_lex_state = 2}, - [585] = {.lex_state = 16}, - [586] = {.lex_state = 51, .external_lex_state = 2}, - [587] = {.lex_state = 51, .external_lex_state = 2}, - [588] = {.lex_state = 51, .external_lex_state = 2}, + [567] = {.lex_state = 51, .external_lex_state = 3}, + [568] = {.lex_state = 51, .external_lex_state = 3}, + [569] = {.lex_state = 51, .external_lex_state = 3}, + [570] = {.lex_state = 51, .external_lex_state = 3}, + [571] = {.lex_state = 51, .external_lex_state = 3}, + [572] = {.lex_state = 51, .external_lex_state = 3}, + [573] = {.lex_state = 51, .external_lex_state = 3}, + [574] = {.lex_state = 51, .external_lex_state = 3}, + [575] = {.lex_state = 51, .external_lex_state = 3}, + [576] = {.lex_state = 51, .external_lex_state = 3}, + [577] = {.lex_state = 51, .external_lex_state = 3}, + [578] = {.lex_state = 51, .external_lex_state = 3}, + [579] = {.lex_state = 51, .external_lex_state = 3}, + [580] = {.lex_state = 51, .external_lex_state = 3}, + [581] = {.lex_state = 51, .external_lex_state = 3}, + [582] = {.lex_state = 51, .external_lex_state = 2}, + [583] = {.lex_state = 51, .external_lex_state = 3}, + [584] = {.lex_state = 51, .external_lex_state = 3}, + [585] = {.lex_state = 51, .external_lex_state = 3}, + [586] = {.lex_state = 51, .external_lex_state = 3}, + [587] = {.lex_state = 51, .external_lex_state = 3}, + [588] = {.lex_state = 51, .external_lex_state = 3}, [589] = {.lex_state = 51, .external_lex_state = 2}, - [590] = {.lex_state = 51, .external_lex_state = 2}, - [591] = {.lex_state = 51, .external_lex_state = 2}, - [592] = {.lex_state = 51, .external_lex_state = 2}, + [590] = {.lex_state = 51, .external_lex_state = 3}, + [591] = {.lex_state = 51, .external_lex_state = 3}, + [592] = {.lex_state = 51, .external_lex_state = 3}, [593] = {.lex_state = 51, .external_lex_state = 2}, [594] = {.lex_state = 51, .external_lex_state = 2}, - [595] = {.lex_state = 51, .external_lex_state = 2}, - [596] = {.lex_state = 51, .external_lex_state = 2}, - [597] = {.lex_state = 51, .external_lex_state = 2}, - [598] = {.lex_state = 51, .external_lex_state = 2}, - [599] = {.lex_state = 51, .external_lex_state = 2}, + [595] = {.lex_state = 51, .external_lex_state = 3}, + [596] = {.lex_state = 51, .external_lex_state = 3}, + [597] = {.lex_state = 51, .external_lex_state = 3}, + [598] = {.lex_state = 51, .external_lex_state = 3}, + [599] = {.lex_state = 51, .external_lex_state = 3}, [600] = {.lex_state = 51, .external_lex_state = 2}, [601] = {.lex_state = 51, .external_lex_state = 2}, - [602] = {.lex_state = 51, .external_lex_state = 2}, - [603] = {.lex_state = 51, .external_lex_state = 2}, + [602] = {.lex_state = 51, .external_lex_state = 3}, + [603] = {.lex_state = 51, .external_lex_state = 3}, [604] = {.lex_state = 51, .external_lex_state = 2}, [605] = {.lex_state = 51, .external_lex_state = 2}, [606] = {.lex_state = 51, .external_lex_state = 2}, [607] = {.lex_state = 51, .external_lex_state = 2}, [608] = {.lex_state = 51, .external_lex_state = 2}, [609] = {.lex_state = 51, .external_lex_state = 2}, - [610] = {.lex_state = 51, .external_lex_state = 3}, - [611] = {.lex_state = 51, .external_lex_state = 3}, - [612] = {.lex_state = 51, .external_lex_state = 3}, + [610] = {.lex_state = 51, .external_lex_state = 2}, + [611] = {.lex_state = 51, .external_lex_state = 2}, + [612] = {.lex_state = 51, .external_lex_state = 2}, [613] = {.lex_state = 51, .external_lex_state = 2}, - [614] = {.lex_state = 51, .external_lex_state = 3}, + [614] = {.lex_state = 16, .external_lex_state = 6}, [615] = {.lex_state = 51, .external_lex_state = 2}, - [616] = {.lex_state = 51, .external_lex_state = 2}, - [617] = {.lex_state = 51, .external_lex_state = 2}, - [618] = {.lex_state = 51, .external_lex_state = 2}, + [616] = {.lex_state = 51, .external_lex_state = 3}, + [617] = {.lex_state = 16}, + [618] = {.lex_state = 16}, [619] = {.lex_state = 51, .external_lex_state = 2}, [620] = {.lex_state = 51, .external_lex_state = 2}, [621] = {.lex_state = 51, .external_lex_state = 2}, @@ -7074,7 +7095,7 @@ static const TSLexMode ts_lex_modes[STATE_COUNT] = { [624] = {.lex_state = 51, .external_lex_state = 2}, [625] = {.lex_state = 51, .external_lex_state = 2}, [626] = {.lex_state = 51, .external_lex_state = 2}, - [627] = {.lex_state = 51, .external_lex_state = 2}, + [627] = {.lex_state = 16, .external_lex_state = 8}, [628] = {.lex_state = 51, .external_lex_state = 2}, [629] = {.lex_state = 51, .external_lex_state = 2}, [630] = {.lex_state = 51, .external_lex_state = 2}, @@ -7092,7 +7113,7 @@ static const TSLexMode ts_lex_modes[STATE_COUNT] = { [642] = {.lex_state = 51, .external_lex_state = 2}, [643] = {.lex_state = 51, .external_lex_state = 2}, [644] = {.lex_state = 51, .external_lex_state = 2}, - [645] = {.lex_state = 16, .external_lex_state = 8}, + [645] = {.lex_state = 51, .external_lex_state = 2}, [646] = {.lex_state = 51, .external_lex_state = 2}, [647] = {.lex_state = 51, .external_lex_state = 2}, [648] = {.lex_state = 51, .external_lex_state = 2}, @@ -7105,7 +7126,7 @@ static const TSLexMode ts_lex_modes[STATE_COUNT] = { [655] = {.lex_state = 51, .external_lex_state = 2}, [656] = {.lex_state = 51, .external_lex_state = 2}, [657] = {.lex_state = 51, .external_lex_state = 2}, - [658] = {.lex_state = 16, .external_lex_state = 9}, + [658] = {.lex_state = 51, .external_lex_state = 2}, [659] = {.lex_state = 51, .external_lex_state = 2}, [660] = {.lex_state = 51, .external_lex_state = 2}, [661] = {.lex_state = 51, .external_lex_state = 2}, @@ -7122,8 +7143,8 @@ static const TSLexMode ts_lex_modes[STATE_COUNT] = { [672] = {.lex_state = 51, .external_lex_state = 2}, [673] = {.lex_state = 51, .external_lex_state = 2}, [674] = {.lex_state = 51, .external_lex_state = 2}, - [675] = {.lex_state = 16, .external_lex_state = 8}, - [676] = {.lex_state = 16, .external_lex_state = 9}, + [675] = {.lex_state = 51, .external_lex_state = 2}, + [676] = {.lex_state = 51, .external_lex_state = 2}, [677] = {.lex_state = 51, .external_lex_state = 2}, [678] = {.lex_state = 51, .external_lex_state = 2}, [679] = {.lex_state = 51, .external_lex_state = 2}, @@ -7132,25 +7153,25 @@ static const TSLexMode ts_lex_modes[STATE_COUNT] = { [682] = {.lex_state = 51, .external_lex_state = 2}, [683] = {.lex_state = 51, .external_lex_state = 2}, [684] = {.lex_state = 51, .external_lex_state = 2}, - [685] = {.lex_state = 51, .external_lex_state = 2}, + [685] = {.lex_state = 16, .external_lex_state = 9}, [686] = {.lex_state = 51, .external_lex_state = 2}, [687] = {.lex_state = 51, .external_lex_state = 2}, [688] = {.lex_state = 51, .external_lex_state = 2}, [689] = {.lex_state = 51, .external_lex_state = 2}, - [690] = {.lex_state = 51, .external_lex_state = 2}, + [690] = {.lex_state = 16, .external_lex_state = 9}, [691] = {.lex_state = 51, .external_lex_state = 2}, - [692] = {.lex_state = 16, .external_lex_state = 8}, - [693] = {.lex_state = 16, .external_lex_state = 9}, - [694] = {.lex_state = 51, .external_lex_state = 2}, + [692] = {.lex_state = 51, .external_lex_state = 2}, + [693] = {.lex_state = 16, .external_lex_state = 8}, + [694] = {.lex_state = 16, .external_lex_state = 9}, [695] = {.lex_state = 51, .external_lex_state = 2}, - [696] = {.lex_state = 16, .external_lex_state = 8}, - [697] = {.lex_state = 16, .external_lex_state = 8}, - [698] = {.lex_state = 16, .external_lex_state = 9}, - [699] = {.lex_state = 16, .external_lex_state = 9}, - [700] = {.lex_state = 15}, - [701] = {.lex_state = 16}, - [702] = {.lex_state = 16}, - [703] = {.lex_state = 16}, + [696] = {.lex_state = 51, .external_lex_state = 2}, + [697] = {.lex_state = 51, .external_lex_state = 2}, + [698] = {.lex_state = 16, .external_lex_state = 8}, + [699] = {.lex_state = 51, .external_lex_state = 2}, + [700] = {.lex_state = 16, .external_lex_state = 8}, + [701] = {.lex_state = 16, .external_lex_state = 8}, + [702] = {.lex_state = 16, .external_lex_state = 9}, + [703] = {.lex_state = 16, .external_lex_state = 9}, [704] = {.lex_state = 16}, [705] = {.lex_state = 16}, [706] = {.lex_state = 16}, @@ -7167,7 +7188,7 @@ static const TSLexMode ts_lex_modes[STATE_COUNT] = { [717] = {.lex_state = 16}, [718] = {.lex_state = 16}, [719] = {.lex_state = 16}, - [720] = {.lex_state = 15}, + [720] = {.lex_state = 16}, [721] = {.lex_state = 16}, [722] = {.lex_state = 16}, [723] = {.lex_state = 16}, @@ -7183,9 +7204,9 @@ static const TSLexMode ts_lex_modes[STATE_COUNT] = { [733] = {.lex_state = 16}, [734] = {.lex_state = 16}, [735] = {.lex_state = 16}, - [736] = {.lex_state = 16}, - [737] = {.lex_state = 16}, - [738] = {.lex_state = 16, .external_lex_state = 9}, + [736] = {.lex_state = 15}, + [737] = {.lex_state = 15}, + [738] = {.lex_state = 16}, [739] = {.lex_state = 16}, [740] = {.lex_state = 16}, [741] = {.lex_state = 16}, @@ -7196,209 +7217,209 @@ static const TSLexMode ts_lex_modes[STATE_COUNT] = { [746] = {.lex_state = 16}, [747] = {.lex_state = 16}, [748] = {.lex_state = 16}, - [749] = {.lex_state = 16}, - [750] = {.lex_state = 16}, + [749] = {.lex_state = 16, .external_lex_state = 9}, + [750] = {.lex_state = 16, .external_lex_state = 8}, [751] = {.lex_state = 16}, - [752] = {.lex_state = 16, .external_lex_state = 8}, - [753] = {.lex_state = 16}, - [754] = {.lex_state = 16}, + [752] = {.lex_state = 16}, + [753] = {.lex_state = 16, .external_lex_state = 9}, + [754] = {.lex_state = 16, .external_lex_state = 8}, [755] = {.lex_state = 16}, [756] = {.lex_state = 16}, [757] = {.lex_state = 16}, [758] = {.lex_state = 16}, - [759] = {.lex_state = 16, .external_lex_state = 8}, - [760] = {.lex_state = 16, .external_lex_state = 9}, + [759] = {.lex_state = 16}, + [760] = {.lex_state = 16}, [761] = {.lex_state = 16}, [762] = {.lex_state = 16}, - [763] = {.lex_state = 15}, + [763] = {.lex_state = 16}, [764] = {.lex_state = 16}, - [765] = {.lex_state = 16, .external_lex_state = 6}, - [766] = {.lex_state = 15, .external_lex_state = 8}, - [767] = {.lex_state = 15, .external_lex_state = 8}, + [765] = {.lex_state = 16}, + [766] = {.lex_state = 16}, + [767] = {.lex_state = 16}, [768] = {.lex_state = 15, .external_lex_state = 9}, - [769] = {.lex_state = 16, .external_lex_state = 10}, - [770] = {.lex_state = 15, .external_lex_state = 8}, - [771] = {.lex_state = 15, .external_lex_state = 9}, - [772] = {.lex_state = 16}, - [773] = {.lex_state = 16}, - [774] = {.lex_state = 16, .external_lex_state = 10}, - [775] = {.lex_state = 16, .external_lex_state = 7}, - [776] = {.lex_state = 15, .external_lex_state = 9}, - [777] = {.lex_state = 16}, - [778] = {.lex_state = 16, .external_lex_state = 10}, + [769] = {.lex_state = 15, .external_lex_state = 8}, + [770] = {.lex_state = 16, .external_lex_state = 7}, + [771] = {.lex_state = 16, .external_lex_state = 10}, + [772] = {.lex_state = 16, .external_lex_state = 10}, + [773] = {.lex_state = 16, .external_lex_state = 6}, + [774] = {.lex_state = 16}, + [775] = {.lex_state = 16}, + [776] = {.lex_state = 16, .external_lex_state = 7}, + [777] = {.lex_state = 16, .external_lex_state = 10}, + [778] = {.lex_state = 16}, [779] = {.lex_state = 16, .external_lex_state = 7}, - [780] = {.lex_state = 16}, - [781] = {.lex_state = 16}, - [782] = {.lex_state = 16, .external_lex_state = 7}, + [780] = {.lex_state = 15}, + [781] = {.lex_state = 15, .external_lex_state = 9}, + [782] = {.lex_state = 15, .external_lex_state = 8}, [783] = {.lex_state = 16}, - [784] = {.lex_state = 16}, - [785] = {.lex_state = 16, .external_lex_state = 6}, - [786] = {.lex_state = 16, .external_lex_state = 6}, - [787] = {.lex_state = 16, .external_lex_state = 8}, - [788] = {.lex_state = 16, .external_lex_state = 9}, - [789] = {.lex_state = 16, .external_lex_state = 6}, - [790] = {.lex_state = 16, .external_lex_state = 6}, - [791] = {.lex_state = 16, .external_lex_state = 6}, - [792] = {.lex_state = 16}, + [784] = {.lex_state = 15, .external_lex_state = 9}, + [785] = {.lex_state = 15, .external_lex_state = 8}, + [786] = {.lex_state = 16}, + [787] = {.lex_state = 16}, + [788] = {.lex_state = 16, .external_lex_state = 6}, + [789] = {.lex_state = 16}, + [790] = {.lex_state = 16, .external_lex_state = 9}, + [791] = {.lex_state = 16, .external_lex_state = 8}, + [792] = {.lex_state = 16, .external_lex_state = 9}, [793] = {.lex_state = 16, .external_lex_state = 8}, [794] = {.lex_state = 16, .external_lex_state = 9}, [795] = {.lex_state = 16, .external_lex_state = 8}, - [796] = {.lex_state = 16, .external_lex_state = 9}, + [796] = {.lex_state = 16, .external_lex_state = 6}, [797] = {.lex_state = 16, .external_lex_state = 6}, [798] = {.lex_state = 16, .external_lex_state = 6}, - [799] = {.lex_state = 15}, - [800] = {.lex_state = 15}, - [801] = {.lex_state = 15}, - [802] = {.lex_state = 15}, - [803] = {.lex_state = 16}, + [799] = {.lex_state = 16, .external_lex_state = 6}, + [800] = {.lex_state = 16, .external_lex_state = 6}, + [801] = {.lex_state = 16, .external_lex_state = 6}, + [802] = {.lex_state = 16, .external_lex_state = 6}, + [803] = {.lex_state = 16, .external_lex_state = 6}, [804] = {.lex_state = 15}, - [805] = {.lex_state = 16}, - [806] = {.lex_state = 16}, - [807] = {.lex_state = 16}, + [805] = {.lex_state = 15}, + [806] = {.lex_state = 16, .external_lex_state = 6}, + [807] = {.lex_state = 16, .external_lex_state = 6}, [808] = {.lex_state = 16}, [809] = {.lex_state = 15}, - [810] = {.lex_state = 16}, - [811] = {.lex_state = 16}, + [810] = {.lex_state = 15}, + [811] = {.lex_state = 15}, [812] = {.lex_state = 15}, - [813] = {.lex_state = 16}, - [814] = {.lex_state = 16}, + [813] = {.lex_state = 15}, + [814] = {.lex_state = 15}, [815] = {.lex_state = 15}, [816] = {.lex_state = 15}, - [817] = {.lex_state = 16, .external_lex_state = 6}, + [817] = {.lex_state = 15}, [818] = {.lex_state = 16, .external_lex_state = 6}, - [819] = {.lex_state = 15}, - [820] = {.lex_state = 15}, - [821] = {.lex_state = 16, .external_lex_state = 6}, - [822] = {.lex_state = 15}, - [823] = {.lex_state = 16, .external_lex_state = 6}, - [824] = {.lex_state = 16, .external_lex_state = 6}, + [819] = {.lex_state = 16}, + [820] = {.lex_state = 16}, + [821] = {.lex_state = 16}, + [822] = {.lex_state = 16}, + [823] = {.lex_state = 16}, + [824] = {.lex_state = 16}, [825] = {.lex_state = 16}, [826] = {.lex_state = 16}, - [827] = {.lex_state = 51, .external_lex_state = 2}, + [827] = {.lex_state = 16}, [828] = {.lex_state = 16}, [829] = {.lex_state = 16}, - [830] = {.lex_state = 51, .external_lex_state = 2}, - [831] = {.lex_state = 16}, - [832] = {.lex_state = 16}, + [830] = {.lex_state = 15}, + [831] = {.lex_state = 16, .external_lex_state = 6}, + [832] = {.lex_state = 15}, [833] = {.lex_state = 16}, - [834] = {.lex_state = 16}, - [835] = {.lex_state = 16}, - [836] = {.lex_state = 16, .external_lex_state = 7}, - [837] = {.lex_state = 15, .external_lex_state = 9}, + [834] = {.lex_state = 15, .external_lex_state = 8}, + [835] = {.lex_state = 16, .external_lex_state = 6}, + [836] = {.lex_state = 15}, + [837] = {.lex_state = 16}, [838] = {.lex_state = 16}, [839] = {.lex_state = 16}, - [840] = {.lex_state = 16}, - [841] = {.lex_state = 16}, + [840] = {.lex_state = 15, .external_lex_state = 8}, + [841] = {.lex_state = 51, .external_lex_state = 2}, [842] = {.lex_state = 16}, - [843] = {.lex_state = 15, .external_lex_state = 8}, - [844] = {.lex_state = 16, .external_lex_state = 6}, + [843] = {.lex_state = 16, .external_lex_state = 7}, + [844] = {.lex_state = 16}, [845] = {.lex_state = 16}, - [846] = {.lex_state = 16}, - [847] = {.lex_state = 51, .external_lex_state = 2}, - [848] = {.lex_state = 16}, + [846] = {.lex_state = 15, .external_lex_state = 9}, + [847] = {.lex_state = 16, .external_lex_state = 10}, + [848] = {.lex_state = 15, .external_lex_state = 9}, [849] = {.lex_state = 16}, [850] = {.lex_state = 16}, - [851] = {.lex_state = 16, .external_lex_state = 6}, + [851] = {.lex_state = 16}, [852] = {.lex_state = 16, .external_lex_state = 7}, - [853] = {.lex_state = 15, .external_lex_state = 8}, + [853] = {.lex_state = 16, .external_lex_state = 10}, [854] = {.lex_state = 16}, [855] = {.lex_state = 16}, [856] = {.lex_state = 16}, - [857] = {.lex_state = 16, .external_lex_state = 10}, - [858] = {.lex_state = 51, .external_lex_state = 2}, + [857] = {.lex_state = 16}, + [858] = {.lex_state = 16}, [859] = {.lex_state = 16}, - [860] = {.lex_state = 16, .external_lex_state = 10}, - [861] = {.lex_state = 16}, + [860] = {.lex_state = 16}, + [861] = {.lex_state = 51, .external_lex_state = 2}, [862] = {.lex_state = 16}, - [863] = {.lex_state = 15}, - [864] = {.lex_state = 15, .external_lex_state = 9}, - [865] = {.lex_state = 15}, + [863] = {.lex_state = 16}, + [864] = {.lex_state = 16}, + [865] = {.lex_state = 16}, [866] = {.lex_state = 16}, - [867] = {.lex_state = 16, .external_lex_state = 6}, - [868] = {.lex_state = 16, .external_lex_state = 6}, - [869] = {.lex_state = 15}, - [870] = {.lex_state = 15}, + [867] = {.lex_state = 16}, + [868] = {.lex_state = 16}, + [869] = {.lex_state = 51, .external_lex_state = 2}, + [870] = {.lex_state = 51, .external_lex_state = 2}, [871] = {.lex_state = 16}, [872] = {.lex_state = 16}, - [873] = {.lex_state = 15}, - [874] = {.lex_state = 51, .external_lex_state = 2}, - [875] = {.lex_state = 51, .external_lex_state = 2}, + [873] = {.lex_state = 16, .external_lex_state = 6}, + [874] = {.lex_state = 15}, + [875] = {.lex_state = 15}, [876] = {.lex_state = 15}, - [877] = {.lex_state = 16}, + [877] = {.lex_state = 16, .external_lex_state = 6}, [878] = {.lex_state = 15}, - [879] = {.lex_state = 16}, + [879] = {.lex_state = 15}, [880] = {.lex_state = 15}, - [881] = {.lex_state = 16, .external_lex_state = 6}, - [882] = {.lex_state = 16, .external_lex_state = 6}, - [883] = {.lex_state = 16}, - [884] = {.lex_state = 16, .external_lex_state = 6}, - [885] = {.lex_state = 16, .external_lex_state = 6}, + [881] = {.lex_state = 15}, + [882] = {.lex_state = 15}, + [883] = {.lex_state = 15}, + [884] = {.lex_state = 15}, + [885] = {.lex_state = 15}, [886] = {.lex_state = 15}, - [887] = {.lex_state = 16, .external_lex_state = 6}, - [888] = {.lex_state = 16, .external_lex_state = 6}, - [889] = {.lex_state = 51, .external_lex_state = 2}, - [890] = {.lex_state = 16, .external_lex_state = 6}, + [887] = {.lex_state = 15}, + [888] = {.lex_state = 15}, + [889] = {.lex_state = 15}, + [890] = {.lex_state = 15}, [891] = {.lex_state = 15}, - [892] = {.lex_state = 16, .external_lex_state = 6}, - [893] = {.lex_state = 16, .external_lex_state = 6}, + [892] = {.lex_state = 16}, + [893] = {.lex_state = 16}, [894] = {.lex_state = 15}, [895] = {.lex_state = 16, .external_lex_state = 6}, - [896] = {.lex_state = 16, .external_lex_state = 6}, - [897] = {.lex_state = 16, .external_lex_state = 6}, + [896] = {.lex_state = 51, .external_lex_state = 2}, + [897] = {.lex_state = 51, .external_lex_state = 2}, [898] = {.lex_state = 16, .external_lex_state = 6}, - [899] = {.lex_state = 51, .external_lex_state = 2}, + [899] = {.lex_state = 15}, [900] = {.lex_state = 16, .external_lex_state = 6}, - [901] = {.lex_state = 16, .external_lex_state = 6}, - [902] = {.lex_state = 16, .external_lex_state = 6}, - [903] = {.lex_state = 15}, + [901] = {.lex_state = 15}, + [902] = {.lex_state = 15}, + [903] = {.lex_state = 16, .external_lex_state = 6}, [904] = {.lex_state = 16, .external_lex_state = 6}, [905] = {.lex_state = 16, .external_lex_state = 6}, [906] = {.lex_state = 15}, - [907] = {.lex_state = 15}, - [908] = {.lex_state = 15}, - [909] = {.lex_state = 16}, - [910] = {.lex_state = 16}, - [911] = {.lex_state = 15}, + [907] = {.lex_state = 16}, + [908] = {.lex_state = 16, .external_lex_state = 6}, + [909] = {.lex_state = 16, .external_lex_state = 6}, + [910] = {.lex_state = 16, .external_lex_state = 6}, + [911] = {.lex_state = 16, .external_lex_state = 6}, [912] = {.lex_state = 15}, - [913] = {.lex_state = 15}, - [914] = {.lex_state = 15}, + [913] = {.lex_state = 16}, + [914] = {.lex_state = 16}, [915] = {.lex_state = 16, .external_lex_state = 6}, - [916] = {.lex_state = 15}, - [917] = {.lex_state = 15}, - [918] = {.lex_state = 16, .external_lex_state = 6}, + [916] = {.lex_state = 16, .external_lex_state = 6}, + [917] = {.lex_state = 16}, + [918] = {.lex_state = 15}, [919] = {.lex_state = 16, .external_lex_state = 6}, [920] = {.lex_state = 16, .external_lex_state = 6}, [921] = {.lex_state = 16, .external_lex_state = 6}, [922] = {.lex_state = 16, .external_lex_state = 6}, - [923] = {.lex_state = 51, .external_lex_state = 2}, - [924] = {.lex_state = 51, .external_lex_state = 2}, - [925] = {.lex_state = 16, .external_lex_state = 6}, + [923] = {.lex_state = 16, .external_lex_state = 6}, + [924] = {.lex_state = 16}, + [925] = {.lex_state = 15}, [926] = {.lex_state = 16, .external_lex_state = 6}, - [927] = {.lex_state = 15}, + [927] = {.lex_state = 16, .external_lex_state = 6}, [928] = {.lex_state = 16, .external_lex_state = 6}, - [929] = {.lex_state = 15}, - [930] = {.lex_state = 15}, - [931] = {.lex_state = 15}, - [932] = {.lex_state = 15}, + [929] = {.lex_state = 16, .external_lex_state = 6}, + [930] = {.lex_state = 16, .external_lex_state = 6}, + [931] = {.lex_state = 51, .external_lex_state = 2}, + [932] = {.lex_state = 16, .external_lex_state = 6}, [933] = {.lex_state = 15}, - [934] = {.lex_state = 15}, - [935] = {.lex_state = 15}, + [934] = {.lex_state = 51, .external_lex_state = 2}, + [935] = {.lex_state = 51, .external_lex_state = 2}, [936] = {.lex_state = 16, .external_lex_state = 6}, - [937] = {.lex_state = 16, .external_lex_state = 6}, + [937] = {.lex_state = 15}, [938] = {.lex_state = 15}, - [939] = {.lex_state = 16, .external_lex_state = 6}, + [939] = {.lex_state = 51, .external_lex_state = 2}, [940] = {.lex_state = 15}, [941] = {.lex_state = 16, .external_lex_state = 6}, - [942] = {.lex_state = 15}, - [943] = {.lex_state = 15}, + [942] = {.lex_state = 16, .external_lex_state = 6}, + [943] = {.lex_state = 16, .external_lex_state = 6}, [944] = {.lex_state = 15}, - [945] = {.lex_state = 15}, - [946] = {.lex_state = 16}, - [947] = {.lex_state = 16}, - [948] = {.lex_state = 16}, - [949] = {.lex_state = 16}, - [950] = {.lex_state = 16}, - [951] = {.lex_state = 16}, + [945] = {.lex_state = 16, .external_lex_state = 6}, + [946] = {.lex_state = 15}, + [947] = {.lex_state = 16, .external_lex_state = 6}, + [948] = {.lex_state = 15}, + [949] = {.lex_state = 15}, + [950] = {.lex_state = 16, .external_lex_state = 6}, + [951] = {.lex_state = 16, .external_lex_state = 6}, [952] = {.lex_state = 16}, [953] = {.lex_state = 16}, [954] = {.lex_state = 16}, @@ -7416,123 +7437,123 @@ static const TSLexMode ts_lex_modes[STATE_COUNT] = { [966] = {.lex_state = 16}, [967] = {.lex_state = 16}, [968] = {.lex_state = 16}, - [969] = {.lex_state = 51, .external_lex_state = 2}, + [969] = {.lex_state = 16}, [970] = {.lex_state = 16}, [971] = {.lex_state = 16}, - [972] = {.lex_state = 51, .external_lex_state = 2}, - [973] = {.lex_state = 51, .external_lex_state = 2}, + [972] = {.lex_state = 16}, + [973] = {.lex_state = 16}, [974] = {.lex_state = 16}, [975] = {.lex_state = 16}, [976] = {.lex_state = 16}, [977] = {.lex_state = 16}, [978] = {.lex_state = 16}, [979] = {.lex_state = 16}, - [980] = {.lex_state = 51, .external_lex_state = 2}, - [981] = {.lex_state = 16}, - [982] = {.lex_state = 16}, - [983] = {.lex_state = 16}, + [980] = {.lex_state = 16}, + [981] = {.lex_state = 51, .external_lex_state = 2}, + [982] = {.lex_state = 51, .external_lex_state = 2}, + [983] = {.lex_state = 51, .external_lex_state = 2}, [984] = {.lex_state = 16}, - [985] = {.lex_state = 51, .external_lex_state = 2}, - [986] = {.lex_state = 51, .external_lex_state = 2}, + [985] = {.lex_state = 16}, + [986] = {.lex_state = 16}, [987] = {.lex_state = 51, .external_lex_state = 2}, - [988] = {.lex_state = 51, .external_lex_state = 2}, - [989] = {.lex_state = 51, .external_lex_state = 2}, - [990] = {.lex_state = 0}, - [991] = {.lex_state = 0}, - [992] = {.lex_state = 51}, - [993] = {.lex_state = 51}, - [994] = {.lex_state = 51}, + [988] = {.lex_state = 16}, + [989] = {.lex_state = 16}, + [990] = {.lex_state = 16}, + [991] = {.lex_state = 51, .external_lex_state = 2}, + [992] = {.lex_state = 51, .external_lex_state = 2}, + [993] = {.lex_state = 51, .external_lex_state = 2}, + [994] = {.lex_state = 51, .external_lex_state = 2}, [995] = {.lex_state = 51, .external_lex_state = 2}, - [996] = {.lex_state = 51}, - [997] = {.lex_state = 16}, - [998] = {.lex_state = 51}, + [996] = {.lex_state = 0}, + [997] = {.lex_state = 51}, + [998] = {.lex_state = 0}, [999] = {.lex_state = 51}, - [1000] = {.lex_state = 0, .external_lex_state = 6}, - [1001] = {.lex_state = 51}, + [1000] = {.lex_state = 51}, + [1001] = {.lex_state = 0, .external_lex_state = 6}, [1002] = {.lex_state = 51}, [1003] = {.lex_state = 14}, - [1004] = {.lex_state = 16}, - [1005] = {.lex_state = 14}, - [1006] = {.lex_state = 51}, + [1004] = {.lex_state = 14}, + [1005] = {.lex_state = 51}, + [1006] = {.lex_state = 51, .external_lex_state = 2}, [1007] = {.lex_state = 51, .external_lex_state = 2}, [1008] = {.lex_state = 0, .external_lex_state = 6}, - [1009] = {.lex_state = 51, .external_lex_state = 2}, - [1010] = {.lex_state = 51}, - [1011] = {.lex_state = 51}, + [1009] = {.lex_state = 51}, + [1010] = {.lex_state = 51, .external_lex_state = 2}, + [1011] = {.lex_state = 16}, [1012] = {.lex_state = 51}, [1013] = {.lex_state = 16}, [1014] = {.lex_state = 51}, [1015] = {.lex_state = 51}, [1016] = {.lex_state = 51}, - [1017] = {.lex_state = 51}, + [1017] = {.lex_state = 16}, [1018] = {.lex_state = 51}, [1019] = {.lex_state = 51}, [1020] = {.lex_state = 51}, [1021] = {.lex_state = 51}, - [1022] = {.lex_state = 0}, - [1023] = {.lex_state = 51, .external_lex_state = 2}, - [1024] = {.lex_state = 0}, + [1022] = {.lex_state = 51}, + [1023] = {.lex_state = 51}, + [1024] = {.lex_state = 51}, [1025] = {.lex_state = 51}, [1026] = {.lex_state = 51}, - [1027] = {.lex_state = 0}, - [1028] = {.lex_state = 51}, - [1029] = {.lex_state = 0}, - [1030] = {.lex_state = 0}, - [1031] = {.lex_state = 51}, + [1027] = {.lex_state = 51}, + [1028] = {.lex_state = 0}, + [1029] = {.lex_state = 51, .external_lex_state = 2}, + [1030] = {.lex_state = 51}, + [1031] = {.lex_state = 0}, [1032] = {.lex_state = 51}, - [1033] = {.lex_state = 16}, - [1034] = {.lex_state = 18, .external_lex_state = 11}, - [1035] = {.lex_state = 51, .external_lex_state = 9}, - [1036] = {.lex_state = 16}, - [1037] = {.lex_state = 18, .external_lex_state = 11}, - [1038] = {.lex_state = 18, .external_lex_state = 11}, - [1039] = {.lex_state = 18, .external_lex_state = 11}, + [1033] = {.lex_state = 0}, + [1034] = {.lex_state = 51}, + [1035] = {.lex_state = 0}, + [1036] = {.lex_state = 0}, + [1037] = {.lex_state = 51}, + [1038] = {.lex_state = 51}, + [1039] = {.lex_state = 16}, [1040] = {.lex_state = 18, .external_lex_state = 11}, [1041] = {.lex_state = 51}, - [1042] = {.lex_state = 18, .external_lex_state = 11}, - [1043] = {.lex_state = 18, .external_lex_state = 11}, + [1042] = {.lex_state = 16}, + [1043] = {.lex_state = 51, .external_lex_state = 8}, [1044] = {.lex_state = 18, .external_lex_state = 11}, [1045] = {.lex_state = 18, .external_lex_state = 11}, [1046] = {.lex_state = 18, .external_lex_state = 11}, - [1047] = {.lex_state = 18, .external_lex_state = 11}, - [1048] = {.lex_state = 18, .external_lex_state = 11}, + [1047] = {.lex_state = 51}, + [1048] = {.lex_state = 0}, [1049] = {.lex_state = 18, .external_lex_state = 11}, [1050] = {.lex_state = 18, .external_lex_state = 11}, [1051] = {.lex_state = 18, .external_lex_state = 11}, [1052] = {.lex_state = 18, .external_lex_state = 11}, - [1053] = {.lex_state = 18, .external_lex_state = 11}, + [1053] = {.lex_state = 16}, [1054] = {.lex_state = 18, .external_lex_state = 11}, - [1055] = {.lex_state = 51}, - [1056] = {.lex_state = 16}, - [1057] = {.lex_state = 0}, - [1058] = {.lex_state = 51}, - [1059] = {.lex_state = 51}, - [1060] = {.lex_state = 16}, - [1061] = {.lex_state = 51, .external_lex_state = 8}, + [1055] = {.lex_state = 18, .external_lex_state = 11}, + [1056] = {.lex_state = 18, .external_lex_state = 11}, + [1057] = {.lex_state = 18, .external_lex_state = 11}, + [1058] = {.lex_state = 18, .external_lex_state = 11}, + [1059] = {.lex_state = 18, .external_lex_state = 11}, + [1060] = {.lex_state = 18, .external_lex_state = 11}, + [1061] = {.lex_state = 18, .external_lex_state = 11}, [1062] = {.lex_state = 18, .external_lex_state = 11}, - [1063] = {.lex_state = 0}, - [1064] = {.lex_state = 0}, - [1065] = {.lex_state = 0}, - [1066] = {.lex_state = 51}, - [1067] = {.lex_state = 0}, - [1068] = {.lex_state = 0}, - [1069] = {.lex_state = 51}, + [1063] = {.lex_state = 51}, + [1064] = {.lex_state = 16}, + [1065] = {.lex_state = 18, .external_lex_state = 11}, + [1066] = {.lex_state = 18, .external_lex_state = 11}, + [1067] = {.lex_state = 51}, + [1068] = {.lex_state = 51, .external_lex_state = 9}, + [1069] = {.lex_state = 0}, [1070] = {.lex_state = 0}, - [1071] = {.lex_state = 0}, + [1071] = {.lex_state = 51}, [1072] = {.lex_state = 0}, [1073] = {.lex_state = 0}, - [1074] = {.lex_state = 51}, + [1074] = {.lex_state = 0}, [1075] = {.lex_state = 0}, - [1076] = {.lex_state = 0}, - [1077] = {.lex_state = 51}, + [1076] = {.lex_state = 51}, + [1077] = {.lex_state = 0}, [1078] = {.lex_state = 51}, - [1079] = {.lex_state = 0}, - [1080] = {.lex_state = 51}, + [1079] = {.lex_state = 51}, + [1080] = {.lex_state = 0}, [1081] = {.lex_state = 51}, [1082] = {.lex_state = 0}, [1083] = {.lex_state = 0}, [1084] = {.lex_state = 0}, - [1085] = {.lex_state = 0}, + [1085] = {.lex_state = 51}, [1086] = {.lex_state = 0}, [1087] = {.lex_state = 0}, [1088] = {.lex_state = 51}, @@ -7540,581 +7561,581 @@ static const TSLexMode ts_lex_modes[STATE_COUNT] = { [1090] = {.lex_state = 0}, [1091] = {.lex_state = 0}, [1092] = {.lex_state = 0}, - [1093] = {.lex_state = 51}, - [1094] = {.lex_state = 51}, + [1093] = {.lex_state = 0}, + [1094] = {.lex_state = 0}, [1095] = {.lex_state = 0}, - [1096] = {.lex_state = 14}, + [1096] = {.lex_state = 51}, [1097] = {.lex_state = 0}, - [1098] = {.lex_state = 51}, + [1098] = {.lex_state = 0}, [1099] = {.lex_state = 0}, - [1100] = {.lex_state = 51}, - [1101] = {.lex_state = 0}, - [1102] = {.lex_state = 14}, - [1103] = {.lex_state = 51}, - [1104] = {.lex_state = 14}, + [1100] = {.lex_state = 0}, + [1101] = {.lex_state = 51}, + [1102] = {.lex_state = 51}, + [1103] = {.lex_state = 14}, + [1104] = {.lex_state = 0}, [1105] = {.lex_state = 51}, - [1106] = {.lex_state = 14}, - [1107] = {.lex_state = 51}, - [1108] = {.lex_state = 51}, + [1106] = {.lex_state = 0}, + [1107] = {.lex_state = 14}, + [1108] = {.lex_state = 0}, [1109] = {.lex_state = 51}, [1110] = {.lex_state = 51}, - [1111] = {.lex_state = 16}, - [1112] = {.lex_state = 0}, + [1111] = {.lex_state = 51}, + [1112] = {.lex_state = 0, .external_lex_state = 6}, [1113] = {.lex_state = 0}, [1114] = {.lex_state = 51}, - [1115] = {.lex_state = 51}, + [1115] = {.lex_state = 0, .external_lex_state = 6}, [1116] = {.lex_state = 51}, - [1117] = {.lex_state = 0}, - [1118] = {.lex_state = 51}, - [1119] = {.lex_state = 14}, + [1117] = {.lex_state = 51}, + [1118] = {.lex_state = 0, .external_lex_state = 6}, + [1119] = {.lex_state = 18, .external_lex_state = 11}, [1120] = {.lex_state = 14}, - [1121] = {.lex_state = 14}, - [1122] = {.lex_state = 14}, - [1123] = {.lex_state = 14}, - [1124] = {.lex_state = 14}, - [1125] = {.lex_state = 14}, + [1121] = {.lex_state = 0, .external_lex_state = 6}, + [1122] = {.lex_state = 0}, + [1123] = {.lex_state = 0, .external_lex_state = 6}, + [1124] = {.lex_state = 51}, + [1125] = {.lex_state = 51}, [1126] = {.lex_state = 0, .external_lex_state = 6}, - [1127] = {.lex_state = 0}, - [1128] = {.lex_state = 0}, - [1129] = {.lex_state = 51}, + [1127] = {.lex_state = 51}, + [1128] = {.lex_state = 51}, + [1129] = {.lex_state = 0, .external_lex_state = 6}, [1130] = {.lex_state = 51}, [1131] = {.lex_state = 14}, [1132] = {.lex_state = 51}, [1133] = {.lex_state = 51}, - [1134] = {.lex_state = 0, .external_lex_state = 6}, - [1135] = {.lex_state = 18, .external_lex_state = 11}, + [1134] = {.lex_state = 51}, + [1135] = {.lex_state = 0}, [1136] = {.lex_state = 51}, - [1137] = {.lex_state = 51}, + [1137] = {.lex_state = 0, .external_lex_state = 6}, [1138] = {.lex_state = 51}, - [1139] = {.lex_state = 51}, + [1139] = {.lex_state = 0, .external_lex_state = 6}, [1140] = {.lex_state = 51}, - [1141] = {.lex_state = 0, .external_lex_state = 6}, - [1142] = {.lex_state = 0, .external_lex_state = 6}, - [1143] = {.lex_state = 14}, - [1144] = {.lex_state = 0}, - [1145] = {.lex_state = 0, .external_lex_state = 6}, - [1146] = {.lex_state = 0, .external_lex_state = 6}, + [1141] = {.lex_state = 51}, + [1142] = {.lex_state = 51}, + [1143] = {.lex_state = 51}, + [1144] = {.lex_state = 51}, + [1145] = {.lex_state = 14}, + [1146] = {.lex_state = 0}, [1147] = {.lex_state = 0, .external_lex_state = 6}, [1148] = {.lex_state = 51}, [1149] = {.lex_state = 18, .external_lex_state = 11}, [1150] = {.lex_state = 51}, [1151] = {.lex_state = 51}, - [1152] = {.lex_state = 0, .external_lex_state = 6}, + [1152] = {.lex_state = 14}, [1153] = {.lex_state = 51}, - [1154] = {.lex_state = 14}, - [1155] = {.lex_state = 0, .external_lex_state = 6}, - [1156] = {.lex_state = 0, .external_lex_state = 6}, - [1157] = {.lex_state = 0}, + [1154] = {.lex_state = 51}, + [1155] = {.lex_state = 51}, + [1156] = {.lex_state = 51}, + [1157] = {.lex_state = 51}, [1158] = {.lex_state = 51}, - [1159] = {.lex_state = 51}, - [1160] = {.lex_state = 51}, - [1161] = {.lex_state = 51}, - [1162] = {.lex_state = 51}, + [1159] = {.lex_state = 14}, + [1160] = {.lex_state = 16}, + [1161] = {.lex_state = 0, .external_lex_state = 6}, + [1162] = {.lex_state = 14}, [1163] = {.lex_state = 51}, - [1164] = {.lex_state = 51}, - [1165] = {.lex_state = 0}, - [1166] = {.lex_state = 0}, - [1167] = {.lex_state = 0, .external_lex_state = 6}, - [1168] = {.lex_state = 51}, - [1169] = {.lex_state = 51}, - [1170] = {.lex_state = 0}, + [1164] = {.lex_state = 14}, + [1165] = {.lex_state = 14}, + [1166] = {.lex_state = 51}, + [1167] = {.lex_state = 14}, + [1168] = {.lex_state = 14}, + [1169] = {.lex_state = 14}, + [1170] = {.lex_state = 14}, [1171] = {.lex_state = 0}, [1172] = {.lex_state = 0}, [1173] = {.lex_state = 0}, - [1174] = {.lex_state = 51}, + [1174] = {.lex_state = 0}, [1175] = {.lex_state = 0}, - [1176] = {.lex_state = 0, .external_lex_state = 6}, - [1177] = {.lex_state = 16}, - [1178] = {.lex_state = 51}, - [1179] = {.lex_state = 0, .external_lex_state = 6}, + [1176] = {.lex_state = 51}, + [1177] = {.lex_state = 51}, + [1178] = {.lex_state = 0}, + [1179] = {.lex_state = 0}, [1180] = {.lex_state = 0}, [1181] = {.lex_state = 0, .external_lex_state = 6}, - [1182] = {.lex_state = 0, .external_lex_state = 6}, + [1182] = {.lex_state = 51}, [1183] = {.lex_state = 0}, - [1184] = {.lex_state = 0, .external_lex_state = 6}, - [1185] = {.lex_state = 51}, - [1186] = {.lex_state = 14}, - [1187] = {.lex_state = 51}, - [1188] = {.lex_state = 14}, + [1184] = {.lex_state = 0}, + [1185] = {.lex_state = 0}, + [1186] = {.lex_state = 0}, + [1187] = {.lex_state = 0}, + [1188] = {.lex_state = 51}, [1189] = {.lex_state = 51}, - [1190] = {.lex_state = 0}, - [1191] = {.lex_state = 0}, - [1192] = {.lex_state = 0}, - [1193] = {.lex_state = 0}, - [1194] = {.lex_state = 51}, - [1195] = {.lex_state = 0, .external_lex_state = 6}, + [1190] = {.lex_state = 51}, + [1191] = {.lex_state = 0, .external_lex_state = 6}, + [1192] = {.lex_state = 51}, + [1193] = {.lex_state = 51}, + [1194] = {.lex_state = 0}, + [1195] = {.lex_state = 0}, [1196] = {.lex_state = 0}, [1197] = {.lex_state = 51}, [1198] = {.lex_state = 51}, [1199] = {.lex_state = 0}, - [1200] = {.lex_state = 51}, + [1200] = {.lex_state = 0}, [1201] = {.lex_state = 51}, [1202] = {.lex_state = 0}, - [1203] = {.lex_state = 51}, - [1204] = {.lex_state = 51}, - [1205] = {.lex_state = 51}, - [1206] = {.lex_state = 0, .external_lex_state = 6}, - [1207] = {.lex_state = 0, .external_lex_state = 6}, - [1208] = {.lex_state = 0}, - [1209] = {.lex_state = 0}, - [1210] = {.lex_state = 51}, - [1211] = {.lex_state = 51}, - [1212] = {.lex_state = 0, .external_lex_state = 6}, - [1213] = {.lex_state = 0}, - [1214] = {.lex_state = 0}, - [1215] = {.lex_state = 51}, - [1216] = {.lex_state = 0, .external_lex_state = 6}, - [1217] = {.lex_state = 16, .external_lex_state = 6}, - [1218] = {.lex_state = 51}, - [1219] = {.lex_state = 14}, - [1220] = {.lex_state = 14}, - [1221] = {.lex_state = 51}, - [1222] = {.lex_state = 16}, - [1223] = {.lex_state = 51}, - [1224] = {.lex_state = 16, .external_lex_state = 6}, + [1203] = {.lex_state = 0}, + [1204] = {.lex_state = 0}, + [1205] = {.lex_state = 0}, + [1206] = {.lex_state = 0}, + [1207] = {.lex_state = 0}, + [1208] = {.lex_state = 51}, + [1209] = {.lex_state = 51}, + [1210] = {.lex_state = 0, .external_lex_state = 6}, + [1211] = {.lex_state = 0}, + [1212] = {.lex_state = 0}, + [1213] = {.lex_state = 16}, + [1214] = {.lex_state = 51}, + [1215] = {.lex_state = 0}, + [1216] = {.lex_state = 0}, + [1217] = {.lex_state = 0}, + [1218] = {.lex_state = 0}, + [1219] = {.lex_state = 0, .external_lex_state = 6}, + [1220] = {.lex_state = 0, .external_lex_state = 6}, + [1221] = {.lex_state = 14}, + [1222] = {.lex_state = 0}, + [1223] = {.lex_state = 0, .external_lex_state = 6}, + [1224] = {.lex_state = 0}, [1225] = {.lex_state = 0, .external_lex_state = 6}, - [1226] = {.lex_state = 18, .external_lex_state = 11}, - [1227] = {.lex_state = 51}, - [1228] = {.lex_state = 16}, + [1226] = {.lex_state = 0}, + [1227] = {.lex_state = 0}, + [1228] = {.lex_state = 0}, [1229] = {.lex_state = 0}, - [1230] = {.lex_state = 18, .external_lex_state = 11}, + [1230] = {.lex_state = 0}, [1231] = {.lex_state = 51}, [1232] = {.lex_state = 0}, - [1233] = {.lex_state = 14}, - [1234] = {.lex_state = 51}, - [1235] = {.lex_state = 51}, - [1236] = {.lex_state = 51}, - [1237] = {.lex_state = 51}, - [1238] = {.lex_state = 51}, - [1239] = {.lex_state = 51}, - [1240] = {.lex_state = 0, .external_lex_state = 6}, - [1241] = {.lex_state = 51}, - [1242] = {.lex_state = 0, .external_lex_state = 6}, - [1243] = {.lex_state = 0, .external_lex_state = 6}, + [1233] = {.lex_state = 51}, + [1234] = {.lex_state = 0}, + [1235] = {.lex_state = 0, .external_lex_state = 6}, + [1236] = {.lex_state = 0}, + [1237] = {.lex_state = 14}, + [1238] = {.lex_state = 0}, + [1239] = {.lex_state = 0, .external_lex_state = 6}, + [1240] = {.lex_state = 51}, + [1241] = {.lex_state = 0, .external_lex_state = 6}, + [1242] = {.lex_state = 16, .external_lex_state = 6}, + [1243] = {.lex_state = 51}, [1244] = {.lex_state = 51}, - [1245] = {.lex_state = 51}, + [1245] = {.lex_state = 16, .external_lex_state = 6}, [1246] = {.lex_state = 51}, - [1247] = {.lex_state = 51}, - [1248] = {.lex_state = 16}, - [1249] = {.lex_state = 16, .external_lex_state = 6}, + [1247] = {.lex_state = 0, .external_lex_state = 6}, + [1248] = {.lex_state = 18, .external_lex_state = 11}, + [1249] = {.lex_state = 51}, [1250] = {.lex_state = 51}, - [1251] = {.lex_state = 18, .external_lex_state = 11}, + [1251] = {.lex_state = 16}, [1252] = {.lex_state = 18, .external_lex_state = 11}, [1253] = {.lex_state = 51}, - [1254] = {.lex_state = 18, .external_lex_state = 11}, - [1255] = {.lex_state = 18, .external_lex_state = 11}, - [1256] = {.lex_state = 51}, + [1254] = {.lex_state = 51}, + [1255] = {.lex_state = 0, .external_lex_state = 6}, + [1256] = {.lex_state = 16}, [1257] = {.lex_state = 0}, [1258] = {.lex_state = 0}, - [1259] = {.lex_state = 51}, - [1260] = {.lex_state = 0}, - [1261] = {.lex_state = 0}, - [1262] = {.lex_state = 51}, - [1263] = {.lex_state = 0}, - [1264] = {.lex_state = 0, .external_lex_state = 6}, - [1265] = {.lex_state = 0, .external_lex_state = 6}, - [1266] = {.lex_state = 14}, - [1267] = {.lex_state = 0}, - [1268] = {.lex_state = 0, .external_lex_state = 6}, - [1269] = {.lex_state = 14}, - [1270] = {.lex_state = 0, .external_lex_state = 6}, - [1271] = {.lex_state = 0}, - [1272] = {.lex_state = 0, .external_lex_state = 6}, + [1259] = {.lex_state = 18, .external_lex_state = 11}, + [1260] = {.lex_state = 18, .external_lex_state = 11}, + [1261] = {.lex_state = 51}, + [1262] = {.lex_state = 16, .external_lex_state = 6}, + [1263] = {.lex_state = 51}, + [1264] = {.lex_state = 51}, + [1265] = {.lex_state = 51}, + [1266] = {.lex_state = 51}, + [1267] = {.lex_state = 51}, + [1268] = {.lex_state = 0}, + [1269] = {.lex_state = 16}, + [1270] = {.lex_state = 14}, + [1271] = {.lex_state = 0, .external_lex_state = 6}, + [1272] = {.lex_state = 14}, [1273] = {.lex_state = 51}, - [1274] = {.lex_state = 0, .external_lex_state = 6}, - [1275] = {.lex_state = 0}, - [1276] = {.lex_state = 0}, - [1277] = {.lex_state = 0, .external_lex_state = 6}, + [1274] = {.lex_state = 14}, + [1275] = {.lex_state = 18, .external_lex_state = 11}, + [1276] = {.lex_state = 51}, + [1277] = {.lex_state = 51}, [1278] = {.lex_state = 0, .external_lex_state = 6}, - [1279] = {.lex_state = 10}, - [1280] = {.lex_state = 0}, - [1281] = {.lex_state = 0, .external_lex_state = 6}, - [1282] = {.lex_state = 0}, - [1283] = {.lex_state = 51}, + [1279] = {.lex_state = 51}, + [1280] = {.lex_state = 51}, + [1281] = {.lex_state = 18, .external_lex_state = 11}, + [1282] = {.lex_state = 51}, + [1283] = {.lex_state = 0}, [1284] = {.lex_state = 0, .external_lex_state = 6}, - [1285] = {.lex_state = 0}, - [1286] = {.lex_state = 0}, - [1287] = {.lex_state = 0}, - [1288] = {.lex_state = 10}, - [1289] = {.lex_state = 0, .external_lex_state = 6}, - [1290] = {.lex_state = 0}, - [1291] = {.lex_state = 14}, - [1292] = {.lex_state = 10}, - [1293] = {.lex_state = 51}, - [1294] = {.lex_state = 16, .external_lex_state = 6}, + [1285] = {.lex_state = 51}, + [1286] = {.lex_state = 0, .external_lex_state = 6}, + [1287] = {.lex_state = 10}, + [1288] = {.lex_state = 0, .external_lex_state = 6}, + [1289] = {.lex_state = 14}, + [1290] = {.lex_state = 0, .external_lex_state = 6}, + [1291] = {.lex_state = 51}, + [1292] = {.lex_state = 0}, + [1293] = {.lex_state = 16, .external_lex_state = 6}, + [1294] = {.lex_state = 0}, [1295] = {.lex_state = 0, .external_lex_state = 6}, - [1296] = {.lex_state = 0}, - [1297] = {.lex_state = 0, .external_lex_state = 6}, - [1298] = {.lex_state = 0, .external_lex_state = 6}, + [1296] = {.lex_state = 14}, + [1297] = {.lex_state = 0}, + [1298] = {.lex_state = 0}, [1299] = {.lex_state = 0, .external_lex_state = 6}, [1300] = {.lex_state = 0, .external_lex_state = 6}, - [1301] = {.lex_state = 0, .external_lex_state = 6}, - [1302] = {.lex_state = 51}, + [1301] = {.lex_state = 14}, + [1302] = {.lex_state = 0, .external_lex_state = 6}, [1303] = {.lex_state = 0}, - [1304] = {.lex_state = 0}, - [1305] = {.lex_state = 0, .external_lex_state = 6}, + [1304] = {.lex_state = 0, .external_lex_state = 6}, + [1305] = {.lex_state = 10}, [1306] = {.lex_state = 0}, - [1307] = {.lex_state = 0}, - [1308] = {.lex_state = 14}, - [1309] = {.lex_state = 51}, - [1310] = {.lex_state = 0, .external_lex_state = 6}, + [1307] = {.lex_state = 51}, + [1308] = {.lex_state = 0}, + [1309] = {.lex_state = 0}, + [1310] = {.lex_state = 0}, [1311] = {.lex_state = 0}, [1312] = {.lex_state = 51}, - [1313] = {.lex_state = 51}, - [1314] = {.lex_state = 51, .external_lex_state = 8}, - [1315] = {.lex_state = 51, .external_lex_state = 9}, + [1313] = {.lex_state = 0, .external_lex_state = 6}, + [1314] = {.lex_state = 51}, + [1315] = {.lex_state = 10}, [1316] = {.lex_state = 0, .external_lex_state = 6}, - [1317] = {.lex_state = 0, .external_lex_state = 6}, - [1318] = {.lex_state = 14}, - [1319] = {.lex_state = 0}, - [1320] = {.lex_state = 0, .external_lex_state = 6}, - [1321] = {.lex_state = 0, .external_lex_state = 6}, + [1317] = {.lex_state = 0}, + [1318] = {.lex_state = 0}, + [1319] = {.lex_state = 0, .external_lex_state = 6}, + [1320] = {.lex_state = 0}, + [1321] = {.lex_state = 0}, [1322] = {.lex_state = 0, .external_lex_state = 6}, - [1323] = {.lex_state = 16}, - [1324] = {.lex_state = 51}, + [1323] = {.lex_state = 0, .external_lex_state = 6}, + [1324] = {.lex_state = 0}, [1325] = {.lex_state = 51}, [1326] = {.lex_state = 0, .external_lex_state = 6}, - [1327] = {.lex_state = 51}, + [1327] = {.lex_state = 0, .external_lex_state = 6}, [1328] = {.lex_state = 0, .external_lex_state = 6}, - [1329] = {.lex_state = 51}, - [1330] = {.lex_state = 0}, - [1331] = {.lex_state = 0}, + [1329] = {.lex_state = 0, .external_lex_state = 6}, + [1330] = {.lex_state = 14}, + [1331] = {.lex_state = 51}, [1332] = {.lex_state = 0, .external_lex_state = 6}, - [1333] = {.lex_state = 0}, + [1333] = {.lex_state = 51}, [1334] = {.lex_state = 0}, [1335] = {.lex_state = 0, .external_lex_state = 6}, - [1336] = {.lex_state = 0}, - [1337] = {.lex_state = 51}, - [1338] = {.lex_state = 0, .external_lex_state = 6}, - [1339] = {.lex_state = 51}, - [1340] = {.lex_state = 51}, + [1336] = {.lex_state = 0, .external_lex_state = 6}, + [1337] = {.lex_state = 0}, + [1338] = {.lex_state = 0}, + [1339] = {.lex_state = 0, .external_lex_state = 6}, + [1340] = {.lex_state = 0}, [1341] = {.lex_state = 0}, - [1342] = {.lex_state = 51}, - [1343] = {.lex_state = 0}, - [1344] = {.lex_state = 51}, - [1345] = {.lex_state = 0}, - [1346] = {.lex_state = 0}, + [1342] = {.lex_state = 0}, + [1343] = {.lex_state = 16}, + [1344] = {.lex_state = 0}, + [1345] = {.lex_state = 0, .external_lex_state = 6}, + [1346] = {.lex_state = 0, .external_lex_state = 6}, [1347] = {.lex_state = 0}, - [1348] = {.lex_state = 0}, + [1348] = {.lex_state = 51}, [1349] = {.lex_state = 0}, - [1350] = {.lex_state = 0, .external_lex_state = 6}, - [1351] = {.lex_state = 51}, - [1352] = {.lex_state = 51}, - [1353] = {.lex_state = 0, .external_lex_state = 6}, - [1354] = {.lex_state = 0, .external_lex_state = 6}, - [1355] = {.lex_state = 51}, - [1356] = {.lex_state = 51}, - [1357] = {.lex_state = 51}, - [1358] = {.lex_state = 0}, - [1359] = {.lex_state = 0}, - [1360] = {.lex_state = 0, .external_lex_state = 6}, + [1350] = {.lex_state = 51}, + [1351] = {.lex_state = 0, .external_lex_state = 6}, + [1352] = {.lex_state = 16}, + [1353] = {.lex_state = 0}, + [1354] = {.lex_state = 0}, + [1355] = {.lex_state = 0}, + [1356] = {.lex_state = 14}, + [1357] = {.lex_state = 0}, + [1358] = {.lex_state = 51}, + [1359] = {.lex_state = 51}, + [1360] = {.lex_state = 0}, [1361] = {.lex_state = 0}, [1362] = {.lex_state = 0}, - [1363] = {.lex_state = 0, .external_lex_state = 6}, + [1363] = {.lex_state = 51}, [1364] = {.lex_state = 51}, - [1365] = {.lex_state = 0, .external_lex_state = 6}, + [1365] = {.lex_state = 0}, [1366] = {.lex_state = 0, .external_lex_state = 6}, [1367] = {.lex_state = 0}, - [1368] = {.lex_state = 0}, - [1369] = {.lex_state = 0}, - [1370] = {.lex_state = 0, .external_lex_state = 6}, - [1371] = {.lex_state = 0}, + [1368] = {.lex_state = 0, .external_lex_state = 6}, + [1369] = {.lex_state = 51, .external_lex_state = 9}, + [1370] = {.lex_state = 51}, + [1371] = {.lex_state = 51}, [1372] = {.lex_state = 0, .external_lex_state = 6}, - [1373] = {.lex_state = 0}, - [1374] = {.lex_state = 16}, + [1373] = {.lex_state = 51, .external_lex_state = 8}, + [1374] = {.lex_state = 0}, [1375] = {.lex_state = 0}, - [1376] = {.lex_state = 0}, - [1377] = {.lex_state = 0}, - [1378] = {.lex_state = 0}, + [1376] = {.lex_state = 51}, + [1377] = {.lex_state = 51}, + [1378] = {.lex_state = 51}, [1379] = {.lex_state = 0}, - [1380] = {.lex_state = 51}, - [1381] = {.lex_state = 0, .external_lex_state = 6}, - [1382] = {.lex_state = 0}, + [1380] = {.lex_state = 0, .external_lex_state = 6}, + [1381] = {.lex_state = 0}, + [1382] = {.lex_state = 51}, [1383] = {.lex_state = 51}, [1384] = {.lex_state = 0}, [1385] = {.lex_state = 0}, [1386] = {.lex_state = 51}, [1387] = {.lex_state = 0}, [1388] = {.lex_state = 0, .external_lex_state = 6}, - [1389] = {.lex_state = 51}, - [1390] = {.lex_state = 0}, - [1391] = {.lex_state = 0, .external_lex_state = 6}, + [1389] = {.lex_state = 0}, + [1390] = {.lex_state = 0, .external_lex_state = 6}, + [1391] = {.lex_state = 0}, [1392] = {.lex_state = 0, .external_lex_state = 6}, - [1393] = {.lex_state = 0}, - [1394] = {.lex_state = 0}, - [1395] = {.lex_state = 0}, + [1393] = {.lex_state = 0, .external_lex_state = 6}, + [1394] = {.lex_state = 0, .external_lex_state = 6}, + [1395] = {.lex_state = 51}, [1396] = {.lex_state = 0}, [1397] = {.lex_state = 0}, [1398] = {.lex_state = 0}, - [1399] = {.lex_state = 0}, - [1400] = {.lex_state = 0}, - [1401] = {.lex_state = 14}, - [1402] = {.lex_state = 0}, + [1399] = {.lex_state = 0, .external_lex_state = 6}, + [1400] = {.lex_state = 51}, + [1401] = {.lex_state = 0, .external_lex_state = 6}, + [1402] = {.lex_state = 0, .external_lex_state = 6}, [1403] = {.lex_state = 0}, - [1404] = {.lex_state = 0}, + [1404] = {.lex_state = 0, .external_lex_state = 6}, [1405] = {.lex_state = 0}, - [1406] = {.lex_state = 0}, - [1407] = {.lex_state = 0}, - [1408] = {.lex_state = 16}, + [1406] = {.lex_state = 51}, + [1407] = {.lex_state = 51}, + [1408] = {.lex_state = 51}, [1409] = {.lex_state = 0}, [1410] = {.lex_state = 51}, - [1411] = {.lex_state = 0}, + [1411] = {.lex_state = 0, .external_lex_state = 6}, [1412] = {.lex_state = 0}, [1413] = {.lex_state = 0}, - [1414] = {.lex_state = 10}, + [1414] = {.lex_state = 0}, [1415] = {.lex_state = 0}, [1416] = {.lex_state = 0}, - [1417] = {.lex_state = 0}, + [1417] = {.lex_state = 51}, [1418] = {.lex_state = 0}, [1419] = {.lex_state = 0}, [1420] = {.lex_state = 0}, [1421] = {.lex_state = 0}, - [1422] = {.lex_state = 0}, + [1422] = {.lex_state = 51}, [1423] = {.lex_state = 0}, [1424] = {.lex_state = 0}, - [1425] = {.lex_state = 14}, + [1425] = {.lex_state = 0, .external_lex_state = 6}, [1426] = {.lex_state = 0}, [1427] = {.lex_state = 0}, - [1428] = {.lex_state = 0}, - [1429] = {.lex_state = 0, .external_lex_state = 6}, + [1428] = {.lex_state = 0, .external_lex_state = 6}, + [1429] = {.lex_state = 0}, [1430] = {.lex_state = 0}, - [1431] = {.lex_state = 0}, + [1431] = {.lex_state = 10}, [1432] = {.lex_state = 0}, [1433] = {.lex_state = 0}, [1434] = {.lex_state = 0}, - [1435] = {.lex_state = 0}, - [1436] = {.lex_state = 0}, - [1437] = {.lex_state = 0}, + [1435] = {.lex_state = 14}, + [1436] = {.lex_state = 0, .external_lex_state = 6}, + [1437] = {.lex_state = 51}, [1438] = {.lex_state = 0}, [1439] = {.lex_state = 0}, [1440] = {.lex_state = 0}, [1441] = {.lex_state = 0}, - [1442] = {.lex_state = 0}, - [1443] = {.lex_state = 51}, + [1442] = {.lex_state = 0, .external_lex_state = 6}, + [1443] = {.lex_state = 0}, [1444] = {.lex_state = 0}, [1445] = {.lex_state = 0}, - [1446] = {.lex_state = 10}, + [1446] = {.lex_state = 0, .external_lex_state = 6}, [1447] = {.lex_state = 0}, [1448] = {.lex_state = 0}, [1449] = {.lex_state = 0}, - [1450] = {.lex_state = 14}, - [1451] = {.lex_state = 0, .external_lex_state = 6}, + [1450] = {.lex_state = 0}, + [1451] = {.lex_state = 16}, [1452] = {.lex_state = 0}, - [1453] = {.lex_state = 51}, - [1454] = {.lex_state = 51}, + [1453] = {.lex_state = 0}, + [1454] = {.lex_state = 0}, [1455] = {.lex_state = 0}, [1456] = {.lex_state = 0}, [1457] = {.lex_state = 0}, - [1458] = {.lex_state = 0, .external_lex_state = 6}, + [1458] = {.lex_state = 0}, [1459] = {.lex_state = 0}, [1460] = {.lex_state = 0}, [1461] = {.lex_state = 0}, [1462] = {.lex_state = 0}, - [1463] = {.lex_state = 51}, - [1464] = {.lex_state = 10}, - [1465] = {.lex_state = 0, .external_lex_state = 6}, + [1463] = {.lex_state = 10}, + [1464] = {.lex_state = 0}, + [1465] = {.lex_state = 0}, [1466] = {.lex_state = 0}, - [1467] = {.lex_state = 51}, + [1467] = {.lex_state = 0}, [1468] = {.lex_state = 0}, [1469] = {.lex_state = 0}, - [1470] = {.lex_state = 51}, + [1470] = {.lex_state = 0}, [1471] = {.lex_state = 0}, [1472] = {.lex_state = 0}, [1473] = {.lex_state = 0}, - [1474] = {.lex_state = 0}, + [1474] = {.lex_state = 51}, [1475] = {.lex_state = 0}, - [1476] = {.lex_state = 10}, - [1477] = {.lex_state = 51}, - [1478] = {.lex_state = 0}, + [1476] = {.lex_state = 0}, + [1477] = {.lex_state = 0}, + [1478] = {.lex_state = 51}, [1479] = {.lex_state = 0}, [1480] = {.lex_state = 0}, [1481] = {.lex_state = 51}, [1482] = {.lex_state = 0}, [1483] = {.lex_state = 0}, [1484] = {.lex_state = 0}, - [1485] = {.lex_state = 0}, - [1486] = {.lex_state = 51}, - [1487] = {.lex_state = 0}, - [1488] = {.lex_state = 51}, + [1485] = {.lex_state = 0, .external_lex_state = 6}, + [1486] = {.lex_state = 0}, + [1487] = {.lex_state = 51}, + [1488] = {.lex_state = 0}, [1489] = {.lex_state = 0}, [1490] = {.lex_state = 0}, [1491] = {.lex_state = 51}, - [1492] = {.lex_state = 10}, + [1492] = {.lex_state = 14}, [1493] = {.lex_state = 0}, - [1494] = {.lex_state = 0, .external_lex_state = 6}, + [1494] = {.lex_state = 51}, [1495] = {.lex_state = 51}, - [1496] = {.lex_state = 14}, + [1496] = {.lex_state = 0}, [1497] = {.lex_state = 0}, [1498] = {.lex_state = 0}, - [1499] = {.lex_state = 0}, - [1500] = {.lex_state = 51}, + [1499] = {.lex_state = 10}, + [1500] = {.lex_state = 0}, [1501] = {.lex_state = 0}, - [1502] = {.lex_state = 0}, - [1503] = {.lex_state = 51}, - [1504] = {.lex_state = 51}, + [1502] = {.lex_state = 14}, + [1503] = {.lex_state = 0}, + [1504] = {.lex_state = 0}, [1505] = {.lex_state = 0}, [1506] = {.lex_state = 0}, - [1507] = {.lex_state = 0}, - [1508] = {.lex_state = 0}, - [1509] = {.lex_state = 0}, + [1507] = {.lex_state = 51}, + [1508] = {.lex_state = 10}, + [1509] = {.lex_state = 0, .external_lex_state = 6}, [1510] = {.lex_state = 51}, [1511] = {.lex_state = 0}, - [1512] = {.lex_state = 0}, - [1513] = {.lex_state = 0, .external_lex_state = 6}, + [1512] = {.lex_state = 51}, + [1513] = {.lex_state = 0}, [1514] = {.lex_state = 0}, [1515] = {.lex_state = 0}, - [1516] = {.lex_state = 0, .external_lex_state = 6}, - [1517] = {.lex_state = 0, .external_lex_state = 6}, + [1516] = {.lex_state = 51}, + [1517] = {.lex_state = 10}, [1518] = {.lex_state = 0}, [1519] = {.lex_state = 0}, - [1520] = {.lex_state = 0}, - [1521] = {.lex_state = 0, .external_lex_state = 6}, - [1522] = {.lex_state = 0, .external_lex_state = 6}, + [1520] = {.lex_state = 51}, + [1521] = {.lex_state = 0}, + [1522] = {.lex_state = 51}, [1523] = {.lex_state = 0}, - [1524] = {.lex_state = 0}, - [1525] = {.lex_state = 17}, - [1526] = {.lex_state = 0, .external_lex_state = 6}, - [1527] = {.lex_state = 0}, - [1528] = {.lex_state = 0, .external_lex_state = 6}, - [1529] = {.lex_state = 0}, - [1530] = {.lex_state = 0, .external_lex_state = 6}, - [1531] = {.lex_state = 17}, + [1524] = {.lex_state = 51}, + [1525] = {.lex_state = 0}, + [1526] = {.lex_state = 0}, + [1527] = {.lex_state = 14}, + [1528] = {.lex_state = 0}, + [1529] = {.lex_state = 0, .external_lex_state = 6}, + [1530] = {.lex_state = 0}, + [1531] = {.lex_state = 0}, [1532] = {.lex_state = 0}, - [1533] = {.lex_state = 0, .external_lex_state = 6}, - [1534] = {.lex_state = 0, .external_lex_state = 6}, - [1535] = {.lex_state = 0, .external_lex_state = 6}, - [1536] = {.lex_state = 0}, + [1533] = {.lex_state = 0}, + [1534] = {.lex_state = 0}, + [1535] = {.lex_state = 0}, + [1536] = {.lex_state = 17}, [1537] = {.lex_state = 0}, - [1538] = {.lex_state = 0}, - [1539] = {.lex_state = 17}, + [1538] = {.lex_state = 17}, + [1539] = {.lex_state = 0}, [1540] = {.lex_state = 0}, - [1541] = {.lex_state = 0}, + [1541] = {.lex_state = 17}, [1542] = {.lex_state = 0}, - [1543] = {.lex_state = 17}, - [1544] = {.lex_state = 0}, - [1545] = {.lex_state = 17}, + [1543] = {.lex_state = 16}, + [1544] = {.lex_state = 17}, + [1545] = {.lex_state = 0, .external_lex_state = 6}, [1546] = {.lex_state = 17}, - [1547] = {.lex_state = 17}, - [1548] = {.lex_state = 51}, + [1547] = {.lex_state = 51}, + [1548] = {.lex_state = 17}, [1549] = {.lex_state = 0}, - [1550] = {.lex_state = 51}, - [1551] = {.lex_state = 0}, + [1550] = {.lex_state = 17}, + [1551] = {.lex_state = 51}, [1552] = {.lex_state = 0, .external_lex_state = 6}, [1553] = {.lex_state = 0}, - [1554] = {.lex_state = 0}, - [1555] = {.lex_state = 51}, - [1556] = {.lex_state = 17}, + [1554] = {.lex_state = 0, .external_lex_state = 6}, + [1555] = {.lex_state = 0}, + [1556] = {.lex_state = 0}, [1557] = {.lex_state = 0}, - [1558] = {.lex_state = 16}, + [1558] = {.lex_state = 0}, [1559] = {.lex_state = 0, .external_lex_state = 6}, - [1560] = {.lex_state = 0}, - [1561] = {.lex_state = 0}, - [1562] = {.lex_state = 51}, - [1563] = {.lex_state = 0, .external_lex_state = 6}, - [1564] = {.lex_state = 0}, - [1565] = {.lex_state = 0}, - [1566] = {.lex_state = 0, .external_lex_state = 6}, + [1560] = {.lex_state = 17}, + [1561] = {.lex_state = 0, .external_lex_state = 6}, + [1562] = {.lex_state = 0}, + [1563] = {.lex_state = 0}, + [1564] = {.lex_state = 51}, + [1565] = {.lex_state = 0, .external_lex_state = 6}, + [1566] = {.lex_state = 0}, [1567] = {.lex_state = 0}, [1568] = {.lex_state = 0}, - [1569] = {.lex_state = 0}, - [1570] = {.lex_state = 0, .external_lex_state = 6}, + [1569] = {.lex_state = 0, .external_lex_state = 6}, + [1570] = {.lex_state = 0}, [1571] = {.lex_state = 0, .external_lex_state = 6}, - [1572] = {.lex_state = 0, .external_lex_state = 6}, - [1573] = {.lex_state = 0, .external_lex_state = 6}, - [1574] = {.lex_state = 51}, + [1572] = {.lex_state = 0}, + [1573] = {.lex_state = 0}, + [1574] = {.lex_state = 0}, [1575] = {.lex_state = 0}, - [1576] = {.lex_state = 0}, - [1577] = {.lex_state = 0, .external_lex_state = 6}, + [1576] = {.lex_state = 17}, + [1577] = {.lex_state = 0}, [1578] = {.lex_state = 0, .external_lex_state = 6}, - [1579] = {.lex_state = 0}, - [1580] = {.lex_state = 0}, - [1581] = {.lex_state = 0}, + [1579] = {.lex_state = 0, .external_lex_state = 6}, + [1580] = {.lex_state = 0, .external_lex_state = 6}, + [1581] = {.lex_state = 0, .external_lex_state = 6}, [1582] = {.lex_state = 0}, [1583] = {.lex_state = 0}, - [1584] = {.lex_state = 0}, - [1585] = {.lex_state = 0}, - [1586] = {.lex_state = 0}, - [1587] = {.lex_state = 17}, - [1588] = {.lex_state = 0, .external_lex_state = 6}, - [1589] = {.lex_state = 0}, - [1590] = {.lex_state = 17}, - [1591] = {.lex_state = 0}, - [1592] = {.lex_state = 51}, + [1584] = {.lex_state = 0, .external_lex_state = 6}, + [1585] = {.lex_state = 0, .external_lex_state = 6}, + [1586] = {.lex_state = 0, .external_lex_state = 6}, + [1587] = {.lex_state = 0}, + [1588] = {.lex_state = 0}, + [1589] = {.lex_state = 0, .external_lex_state = 6}, + [1590] = {.lex_state = 0}, + [1591] = {.lex_state = 0, .external_lex_state = 6}, + [1592] = {.lex_state = 0}, [1593] = {.lex_state = 0}, - [1594] = {.lex_state = 0}, + [1594] = {.lex_state = 51}, [1595] = {.lex_state = 0}, - [1596] = {.lex_state = 0}, + [1596] = {.lex_state = 0, .external_lex_state = 6}, [1597] = {.lex_state = 0}, [1598] = {.lex_state = 0}, - [1599] = {.lex_state = 51}, - [1600] = {.lex_state = 51}, + [1599] = {.lex_state = 0}, + [1600] = {.lex_state = 0}, [1601] = {.lex_state = 0}, - [1602] = {.lex_state = 51}, - [1603] = {.lex_state = 0}, + [1602] = {.lex_state = 0}, + [1603] = {.lex_state = 0, .external_lex_state = 6}, [1604] = {.lex_state = 0}, - [1605] = {.lex_state = 51}, + [1605] = {.lex_state = 0, .external_lex_state = 6}, [1606] = {.lex_state = 51}, - [1607] = {.lex_state = 51}, - [1608] = {.lex_state = 0}, - [1609] = {.lex_state = 51}, - [1610] = {.lex_state = 0}, - [1611] = {.lex_state = 51}, - [1612] = {.lex_state = 0}, - [1613] = {.lex_state = 0}, - [1614] = {.lex_state = 51}, + [1607] = {.lex_state = 0}, + [1608] = {.lex_state = 0, .external_lex_state = 6}, + [1609] = {.lex_state = 0}, + [1610] = {.lex_state = 0, .external_lex_state = 6}, + [1611] = {.lex_state = 0}, + [1612] = {.lex_state = 17}, + [1613] = {.lex_state = 51}, + [1614] = {.lex_state = 0}, [1615] = {.lex_state = 0}, [1616] = {.lex_state = 0}, - [1617] = {.lex_state = 51}, + [1617] = {.lex_state = 0}, [1618] = {.lex_state = 0}, - [1619] = {.lex_state = 51}, - [1620] = {.lex_state = 51}, - [1621] = {.lex_state = 51}, + [1619] = {.lex_state = 0}, + [1620] = {.lex_state = 0}, + [1621] = {.lex_state = 0}, [1622] = {.lex_state = 51}, [1623] = {.lex_state = 0}, [1624] = {.lex_state = 0}, [1625] = {.lex_state = 0}, - [1626] = {.lex_state = 0}, - [1627] = {.lex_state = 51}, - [1628] = {.lex_state = 51}, + [1626] = {.lex_state = 51}, + [1627] = {.lex_state = 0}, + [1628] = {.lex_state = 0}, [1629] = {.lex_state = 51}, - [1630] = {.lex_state = 0}, + [1630] = {.lex_state = 51}, [1631] = {.lex_state = 0}, [1632] = {.lex_state = 51}, - [1633] = {.lex_state = 51}, + [1633] = {.lex_state = 0}, [1634] = {.lex_state = 51}, - [1635] = {.lex_state = 0}, - [1636] = {.lex_state = 0}, - [1637] = {.lex_state = 0}, + [1635] = {.lex_state = 51}, + [1636] = {.lex_state = 51}, + [1637] = {.lex_state = 51}, [1638] = {.lex_state = 0}, - [1639] = {.lex_state = 0}, + [1639] = {.lex_state = 51}, [1640] = {.lex_state = 0}, [1641] = {.lex_state = 0}, [1642] = {.lex_state = 51}, - [1643] = {.lex_state = 0}, + [1643] = {.lex_state = 51}, [1644] = {.lex_state = 51}, [1645] = {.lex_state = 51}, [1646] = {.lex_state = 0}, [1647] = {.lex_state = 51}, - [1648] = {.lex_state = 0}, + [1648] = {.lex_state = 51}, [1649] = {.lex_state = 51}, [1650] = {.lex_state = 0}, - [1651] = {.lex_state = 51}, - [1652] = {.lex_state = 0}, - [1653] = {.lex_state = 51}, - [1654] = {.lex_state = 51}, + [1651] = {.lex_state = 0}, + [1652] = {.lex_state = 51}, + [1653] = {.lex_state = 0}, + [1654] = {.lex_state = 0}, [1655] = {.lex_state = 0}, [1656] = {.lex_state = 0}, [1657] = {.lex_state = 0}, - [1658] = {.lex_state = 51}, + [1658] = {.lex_state = 0}, [1659] = {.lex_state = 0}, - [1660] = {.lex_state = 51}, - [1661] = {.lex_state = 0}, + [1660] = {.lex_state = 0}, + [1661] = {.lex_state = 51}, [1662] = {.lex_state = 0}, - [1663] = {.lex_state = 0}, + [1663] = {.lex_state = 51}, [1664] = {.lex_state = 0}, [1665] = {.lex_state = 0}, [1666] = {.lex_state = 0}, - [1667] = {.lex_state = 0}, + [1667] = {.lex_state = 51}, [1668] = {.lex_state = 0}, [1669] = {.lex_state = 0}, [1670] = {.lex_state = 0}, @@ -8129,58 +8150,79 @@ static const TSLexMode ts_lex_modes[STATE_COUNT] = { [1679] = {.lex_state = 0}, [1680] = {.lex_state = 0}, [1681] = {.lex_state = 0}, - [1682] = {.lex_state = 51}, - [1683] = {.lex_state = 0}, + [1682] = {.lex_state = 0}, + [1683] = {.lex_state = 51}, [1684] = {.lex_state = 0}, [1685] = {.lex_state = 0}, [1686] = {.lex_state = 0}, - [1687] = {.lex_state = 0}, - [1688] = {.lex_state = 51}, - [1689] = {.lex_state = 0}, - [1690] = {.lex_state = 51}, - [1691] = {.lex_state = 0}, + [1687] = {.lex_state = 51}, + [1688] = {.lex_state = 0}, + [1689] = {.lex_state = 51}, + [1690] = {.lex_state = 0}, + [1691] = {.lex_state = 51}, [1692] = {.lex_state = 0}, - [1693] = {.lex_state = 0}, + [1693] = {.lex_state = 51}, [1694] = {.lex_state = 0}, [1695] = {.lex_state = 0}, [1696] = {.lex_state = 0}, - [1697] = {.lex_state = 0}, + [1697] = {.lex_state = 51}, [1698] = {.lex_state = 0}, - [1699] = {.lex_state = 51}, + [1699] = {.lex_state = 0}, [1700] = {.lex_state = 0}, - [1701] = {.lex_state = 0}, + [1701] = {.lex_state = 51}, [1702] = {.lex_state = 0}, - [1703] = {.lex_state = 51}, - [1704] = {.lex_state = 0}, - [1705] = {.lex_state = 51}, + [1703] = {.lex_state = 0}, + [1704] = {.lex_state = 51}, + [1705] = {.lex_state = 0}, [1706] = {.lex_state = 51}, - [1707] = {.lex_state = 51}, + [1707] = {.lex_state = 0}, [1708] = {.lex_state = 0}, [1709] = {.lex_state = 0}, - [1710] = {.lex_state = 51}, + [1710] = {.lex_state = 0}, [1711] = {.lex_state = 0}, - [1712] = {.lex_state = 51}, + [1712] = {.lex_state = 0}, [1713] = {.lex_state = 0}, [1714] = {.lex_state = 0}, - [1715] = {.lex_state = 0}, - [1716] = {.lex_state = 0}, + [1715] = {.lex_state = 51}, + [1716] = {.lex_state = 51}, [1717] = {.lex_state = 0}, [1718] = {.lex_state = 0}, - [1719] = {.lex_state = 0}, + [1719] = {.lex_state = 51}, [1720] = {.lex_state = 51}, [1721] = {.lex_state = 0}, [1722] = {.lex_state = 0}, [1723] = {.lex_state = 0}, [1724] = {.lex_state = 0}, - [1725] = {.lex_state = 0}, - [1726] = {.lex_state = 0}, + [1725] = {.lex_state = 51}, + [1726] = {.lex_state = 51}, [1727] = {.lex_state = 0}, [1728] = {.lex_state = 0}, - [1729] = {.lex_state = 0}, + [1729] = {.lex_state = 51}, [1730] = {.lex_state = 0}, [1731] = {.lex_state = 0}, - [1732] = {.lex_state = 0}, + [1732] = {.lex_state = 51}, [1733] = {.lex_state = 0}, + [1734] = {.lex_state = 0}, + [1735] = {.lex_state = 0}, + [1736] = {.lex_state = 0}, + [1737] = {.lex_state = 0}, + [1738] = {.lex_state = 0}, + [1739] = {.lex_state = 0}, + [1740] = {.lex_state = 0}, + [1741] = {.lex_state = 0}, + [1742] = {.lex_state = 0}, + [1743] = {.lex_state = 0}, + [1744] = {.lex_state = 0}, + [1745] = {.lex_state = 0}, + [1746] = {.lex_state = 0}, + [1747] = {.lex_state = 51}, + [1748] = {.lex_state = 0}, + [1749] = {.lex_state = 0}, + [1750] = {.lex_state = 0}, + [1751] = {.lex_state = 0}, + [1752] = {.lex_state = 51}, + [1753] = {.lex_state = 51}, + [1754] = {.lex_state = 0}, }; static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { @@ -8293,75 +8335,75 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__template_string_start] = ACTIONS(1), }, [STATE(1)] = { - [sym_module] = STATE(1610), - [sym__statement] = STATE(62), - [sym__simple_statements] = STATE(62), - [sym_import_statement] = STATE(1301), - [sym_future_import_statement] = STATE(1301), - [sym_import_from_statement] = STATE(1301), - [sym_print_statement] = STATE(1301), - [sym_assert_statement] = STATE(1301), - [sym_expression_statement] = STATE(1301), - [sym_named_expression] = STATE(1156), - [sym_return_statement] = STATE(1301), - [sym_delete_statement] = STATE(1301), - [sym_raise_statement] = STATE(1301), - [sym_pass_statement] = STATE(1301), - [sym_break_statement] = STATE(1301), - [sym_continue_statement] = STATE(1301), - [sym_if_statement] = STATE(62), - [sym_for_statement] = STATE(62), - [sym_while_statement] = STATE(62), - [sym_try_statement] = STATE(62), - [sym_with_statement] = STATE(62), - [sym_match_statement] = STATE(62), - [sym_function_definition] = STATE(62), - [sym_list_splat] = STATE(1520), - [sym_dictionary_splat] = STATE(1520), - [sym_global_statement] = STATE(1301), - [sym_nonlocal_statement] = STATE(1301), - [sym_exec_statement] = STATE(1301), - [sym_type_alias_statement] = STATE(1301), - [sym_class_definition] = STATE(62), - [sym_decorated_definition] = STATE(62), - [sym_decorator] = STATE(1128), - [sym_expression_list] = STATE(1522), - [sym_pattern] = STATE(1017), - [sym_tuple_pattern] = STATE(1001), - [sym_list_pattern] = STATE(1001), - [sym_list_splat_pattern] = STATE(1001), - [sym_expression] = STATE(1176), - [sym_primary_expression] = STATE(765), - [sym_not_operator] = STATE(1156), - [sym_boolean_operator] = STATE(1156), - [sym_binary_operator] = STATE(920), - [sym_unary_operator] = STATE(920), - [sym_comparison_operator] = STATE(1156), - [sym_lambda] = STATE(1156), - [sym_assignment] = STATE(1522), - [sym_augmented_assignment] = STATE(1522), - [sym_pattern_list] = STATE(1026), - [sym_yield] = STATE(1522), - [sym_attribute] = STATE(582), - [sym_subscript] = STATE(582), - [sym_call] = STATE(920), - [sym_list] = STATE(920), - [sym_set] = STATE(920), - [sym_tuple] = STATE(920), - [sym_dictionary] = STATE(920), - [sym_list_comprehension] = STATE(920), - [sym_dictionary_comprehension] = STATE(920), - [sym_set_comprehension] = STATE(920), - [sym_generator_expression] = STATE(920), - [sym_parenthesized_expression] = STATE(920), - [sym_conditional_expression] = STATE(1156), - [sym_concatenated_string] = STATE(920), - [sym_string] = STATE(775), - [sym_concatenated_template_string] = STATE(920), - [sym_template_string] = STATE(769), - [sym_await] = STATE(920), - [aux_sym_module_repeat1] = STATE(62), - [aux_sym_decorated_definition_repeat1] = STATE(1128), + [sym_module] = STATE(1708), + [sym__statement] = STATE(64), + [sym__simple_statements] = STATE(64), + [sym_import_statement] = STATE(1346), + [sym_future_import_statement] = STATE(1346), + [sym_import_from_statement] = STATE(1346), + [sym_print_statement] = STATE(1346), + [sym_assert_statement] = STATE(1346), + [sym_expression_statement] = STATE(1346), + [sym_named_expression] = STATE(1126), + [sym_return_statement] = STATE(1346), + [sym_delete_statement] = STATE(1346), + [sym_raise_statement] = STATE(1346), + [sym_pass_statement] = STATE(1346), + [sym_break_statement] = STATE(1346), + [sym_continue_statement] = STATE(1346), + [sym_if_statement] = STATE(64), + [sym_for_statement] = STATE(64), + [sym_while_statement] = STATE(64), + [sym_try_statement] = STATE(64), + [sym_with_statement] = STATE(64), + [sym_match_statement] = STATE(64), + [sym_function_definition] = STATE(64), + [sym_list_splat] = STATE(1590), + [sym_dictionary_splat] = STATE(1590), + [sym_global_statement] = STATE(1346), + [sym_nonlocal_statement] = STATE(1346), + [sym_exec_statement] = STATE(1346), + [sym_type_alias_statement] = STATE(1346), + [sym_class_definition] = STATE(64), + [sym_decorated_definition] = STATE(64), + [sym_decorator] = STATE(1172), + [sym_expression_list] = STATE(1545), + [sym_pattern] = STATE(1020), + [sym_tuple_pattern] = STATE(1005), + [sym_list_pattern] = STATE(1005), + [sym_list_splat_pattern] = STATE(1005), + [sym_expression] = STATE(1191), + [sym_primary_expression] = STATE(773), + [sym_not_operator] = STATE(1126), + [sym_boolean_operator] = STATE(1126), + [sym_binary_operator] = STATE(950), + [sym_unary_operator] = STATE(950), + [sym_comparison_operator] = STATE(1126), + [sym_lambda] = STATE(1126), + [sym_assignment] = STATE(1545), + [sym_augmented_assignment] = STATE(1545), + [sym_pattern_list] = STATE(1030), + [sym_yield] = STATE(1545), + [sym_attribute] = STATE(614), + [sym_subscript] = STATE(614), + [sym_call] = STATE(950), + [sym_list] = STATE(950), + [sym_set] = STATE(950), + [sym_tuple] = STATE(950), + [sym_dictionary] = STATE(950), + [sym_list_comprehension] = STATE(950), + [sym_dictionary_comprehension] = STATE(950), + [sym_set_comprehension] = STATE(950), + [sym_generator_expression] = STATE(950), + [sym_parenthesized_expression] = STATE(950), + [sym_conditional_expression] = STATE(1126), + [sym_concatenated_string] = STATE(950), + [sym_string] = STATE(779), + [sym_concatenated_template_string] = STATE(950), + [sym_template_string] = STATE(772), + [sym_await] = STATE(950), + [aux_sym_module_repeat1] = STATE(64), + [aux_sym_decorated_definition_repeat1] = STATE(1172), [ts_builtin_sym_end] = ACTIONS(5), [sym_identifier] = ACTIONS(7), [anon_sym_lazy] = ACTIONS(9), @@ -8412,75 +8454,75 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__template_string_start] = ACTIONS(85), }, [STATE(2)] = { - [sym__statement] = STATE(64), - [sym__simple_statements] = STATE(64), - [sym_import_statement] = STATE(1332), - [sym_future_import_statement] = STATE(1332), - [sym_import_from_statement] = STATE(1332), - [sym_print_statement] = STATE(1332), - [sym_assert_statement] = STATE(1332), - [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1156), - [sym_return_statement] = STATE(1332), - [sym_delete_statement] = STATE(1332), - [sym_raise_statement] = STATE(1332), - [sym_pass_statement] = STATE(1332), - [sym_break_statement] = STATE(1332), - [sym_continue_statement] = STATE(1332), - [sym_if_statement] = STATE(64), - [sym_for_statement] = STATE(64), - [sym_while_statement] = STATE(64), - [sym_try_statement] = STATE(64), - [sym_with_statement] = STATE(64), - [sym_match_statement] = STATE(64), - [sym_function_definition] = STATE(64), - [sym_list_splat] = STATE(1520), - [sym_dictionary_splat] = STATE(1520), - [sym_global_statement] = STATE(1332), - [sym_nonlocal_statement] = STATE(1332), - [sym_exec_statement] = STATE(1332), - [sym_type_alias_statement] = STATE(1332), - [sym_class_definition] = STATE(64), - [sym_decorated_definition] = STATE(64), - [sym_decorator] = STATE(1127), - [sym_block] = STATE(330), - [sym_expression_list] = STATE(1522), - [sym_pattern] = STATE(1017), - [sym_tuple_pattern] = STATE(1001), - [sym_list_pattern] = STATE(1001), - [sym_list_splat_pattern] = STATE(1001), - [sym_expression] = STATE(1176), - [sym_primary_expression] = STATE(765), - [sym_not_operator] = STATE(1156), - [sym_boolean_operator] = STATE(1156), - [sym_binary_operator] = STATE(920), - [sym_unary_operator] = STATE(920), - [sym_comparison_operator] = STATE(1156), - [sym_lambda] = STATE(1156), - [sym_assignment] = STATE(1522), - [sym_augmented_assignment] = STATE(1522), - [sym_pattern_list] = STATE(1026), - [sym_yield] = STATE(1522), - [sym_attribute] = STATE(582), - [sym_subscript] = STATE(582), - [sym_call] = STATE(920), - [sym_list] = STATE(920), - [sym_set] = STATE(920), - [sym_tuple] = STATE(920), - [sym_dictionary] = STATE(920), - [sym_list_comprehension] = STATE(920), - [sym_dictionary_comprehension] = STATE(920), - [sym_set_comprehension] = STATE(920), - [sym_generator_expression] = STATE(920), - [sym_parenthesized_expression] = STATE(920), - [sym_conditional_expression] = STATE(1156), - [sym_concatenated_string] = STATE(920), - [sym_string] = STATE(775), - [sym_concatenated_template_string] = STATE(920), - [sym_template_string] = STATE(769), - [sym_await] = STATE(920), - [aux_sym_module_repeat1] = STATE(64), - [aux_sym_decorated_definition_repeat1] = STATE(1127), + [sym__statement] = STATE(63), + [sym__simple_statements] = STATE(63), + [sym_import_statement] = STATE(1345), + [sym_future_import_statement] = STATE(1345), + [sym_import_from_statement] = STATE(1345), + [sym_print_statement] = STATE(1345), + [sym_assert_statement] = STATE(1345), + [sym_expression_statement] = STATE(1345), + [sym_named_expression] = STATE(1126), + [sym_return_statement] = STATE(1345), + [sym_delete_statement] = STATE(1345), + [sym_raise_statement] = STATE(1345), + [sym_pass_statement] = STATE(1345), + [sym_break_statement] = STATE(1345), + [sym_continue_statement] = STATE(1345), + [sym_if_statement] = STATE(63), + [sym_for_statement] = STATE(63), + [sym_while_statement] = STATE(63), + [sym_try_statement] = STATE(63), + [sym_with_statement] = STATE(63), + [sym_match_statement] = STATE(63), + [sym_function_definition] = STATE(63), + [sym_list_splat] = STATE(1590), + [sym_dictionary_splat] = STATE(1590), + [sym_global_statement] = STATE(1345), + [sym_nonlocal_statement] = STATE(1345), + [sym_exec_statement] = STATE(1345), + [sym_type_alias_statement] = STATE(1345), + [sym_class_definition] = STATE(63), + [sym_decorated_definition] = STATE(63), + [sym_decorator] = STATE(1146), + [sym_block] = STATE(491), + [sym_expression_list] = STATE(1545), + [sym_pattern] = STATE(1020), + [sym_tuple_pattern] = STATE(1005), + [sym_list_pattern] = STATE(1005), + [sym_list_splat_pattern] = STATE(1005), + [sym_expression] = STATE(1191), + [sym_primary_expression] = STATE(773), + [sym_not_operator] = STATE(1126), + [sym_boolean_operator] = STATE(1126), + [sym_binary_operator] = STATE(950), + [sym_unary_operator] = STATE(950), + [sym_comparison_operator] = STATE(1126), + [sym_lambda] = STATE(1126), + [sym_assignment] = STATE(1545), + [sym_augmented_assignment] = STATE(1545), + [sym_pattern_list] = STATE(1030), + [sym_yield] = STATE(1545), + [sym_attribute] = STATE(614), + [sym_subscript] = STATE(614), + [sym_call] = STATE(950), + [sym_list] = STATE(950), + [sym_set] = STATE(950), + [sym_tuple] = STATE(950), + [sym_dictionary] = STATE(950), + [sym_list_comprehension] = STATE(950), + [sym_dictionary_comprehension] = STATE(950), + [sym_set_comprehension] = STATE(950), + [sym_generator_expression] = STATE(950), + [sym_parenthesized_expression] = STATE(950), + [sym_conditional_expression] = STATE(1126), + [sym_concatenated_string] = STATE(950), + [sym_string] = STATE(779), + [sym_concatenated_template_string] = STATE(950), + [sym_template_string] = STATE(772), + [sym_await] = STATE(950), + [aux_sym_module_repeat1] = STATE(63), + [aux_sym_decorated_definition_repeat1] = STATE(1146), [sym_identifier] = ACTIONS(7), [anon_sym_lazy] = ACTIONS(9), [anon_sym_import] = ACTIONS(11), @@ -8533,19 +8575,19 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [STATE(3)] = { [sym__statement] = STATE(60), [sym__simple_statements] = STATE(60), - [sym_import_statement] = STATE(1332), - [sym_future_import_statement] = STATE(1332), - [sym_import_from_statement] = STATE(1332), - [sym_print_statement] = STATE(1332), - [sym_assert_statement] = STATE(1332), - [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1156), - [sym_return_statement] = STATE(1332), - [sym_delete_statement] = STATE(1332), - [sym_raise_statement] = STATE(1332), - [sym_pass_statement] = STATE(1332), - [sym_break_statement] = STATE(1332), - [sym_continue_statement] = STATE(1332), + [sym_import_statement] = STATE(1345), + [sym_future_import_statement] = STATE(1345), + [sym_import_from_statement] = STATE(1345), + [sym_print_statement] = STATE(1345), + [sym_assert_statement] = STATE(1345), + [sym_expression_statement] = STATE(1345), + [sym_named_expression] = STATE(1126), + [sym_return_statement] = STATE(1345), + [sym_delete_statement] = STATE(1345), + [sym_raise_statement] = STATE(1345), + [sym_pass_statement] = STATE(1345), + [sym_break_statement] = STATE(1345), + [sym_continue_statement] = STATE(1345), [sym_if_statement] = STATE(60), [sym_for_statement] = STATE(60), [sym_while_statement] = STATE(60), @@ -8553,53 +8595,53 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_with_statement] = STATE(60), [sym_match_statement] = STATE(60), [sym_function_definition] = STATE(60), - [sym_list_splat] = STATE(1520), - [sym_dictionary_splat] = STATE(1520), - [sym_global_statement] = STATE(1332), - [sym_nonlocal_statement] = STATE(1332), - [sym_exec_statement] = STATE(1332), - [sym_type_alias_statement] = STATE(1332), + [sym_list_splat] = STATE(1590), + [sym_dictionary_splat] = STATE(1590), + [sym_global_statement] = STATE(1345), + [sym_nonlocal_statement] = STATE(1345), + [sym_exec_statement] = STATE(1345), + [sym_type_alias_statement] = STATE(1345), [sym_class_definition] = STATE(60), [sym_decorated_definition] = STATE(60), - [sym_decorator] = STATE(1127), - [sym_block] = STATE(1213), - [sym_expression_list] = STATE(1522), - [sym_pattern] = STATE(1017), - [sym_tuple_pattern] = STATE(1001), - [sym_list_pattern] = STATE(1001), - [sym_list_splat_pattern] = STATE(1001), - [sym_expression] = STATE(1176), - [sym_primary_expression] = STATE(765), - [sym_not_operator] = STATE(1156), - [sym_boolean_operator] = STATE(1156), - [sym_binary_operator] = STATE(920), - [sym_unary_operator] = STATE(920), - [sym_comparison_operator] = STATE(1156), - [sym_lambda] = STATE(1156), - [sym_assignment] = STATE(1522), - [sym_augmented_assignment] = STATE(1522), - [sym_pattern_list] = STATE(1026), - [sym_yield] = STATE(1522), - [sym_attribute] = STATE(582), - [sym_subscript] = STATE(582), - [sym_call] = STATE(920), - [sym_list] = STATE(920), - [sym_set] = STATE(920), - [sym_tuple] = STATE(920), - [sym_dictionary] = STATE(920), - [sym_list_comprehension] = STATE(920), - [sym_dictionary_comprehension] = STATE(920), - [sym_set_comprehension] = STATE(920), - [sym_generator_expression] = STATE(920), - [sym_parenthesized_expression] = STATE(920), - [sym_conditional_expression] = STATE(1156), - [sym_concatenated_string] = STATE(920), - [sym_string] = STATE(775), - [sym_concatenated_template_string] = STATE(920), - [sym_template_string] = STATE(769), - [sym_await] = STATE(920), + [sym_decorator] = STATE(1146), + [sym_block] = STATE(1195), + [sym_expression_list] = STATE(1545), + [sym_pattern] = STATE(1020), + [sym_tuple_pattern] = STATE(1005), + [sym_list_pattern] = STATE(1005), + [sym_list_splat_pattern] = STATE(1005), + [sym_expression] = STATE(1191), + [sym_primary_expression] = STATE(773), + [sym_not_operator] = STATE(1126), + [sym_boolean_operator] = STATE(1126), + [sym_binary_operator] = STATE(950), + [sym_unary_operator] = STATE(950), + [sym_comparison_operator] = STATE(1126), + [sym_lambda] = STATE(1126), + [sym_assignment] = STATE(1545), + [sym_augmented_assignment] = STATE(1545), + [sym_pattern_list] = STATE(1030), + [sym_yield] = STATE(1545), + [sym_attribute] = STATE(614), + [sym_subscript] = STATE(614), + [sym_call] = STATE(950), + [sym_list] = STATE(950), + [sym_set] = STATE(950), + [sym_tuple] = STATE(950), + [sym_dictionary] = STATE(950), + [sym_list_comprehension] = STATE(950), + [sym_dictionary_comprehension] = STATE(950), + [sym_set_comprehension] = STATE(950), + [sym_generator_expression] = STATE(950), + [sym_parenthesized_expression] = STATE(950), + [sym_conditional_expression] = STATE(1126), + [sym_concatenated_string] = STATE(950), + [sym_string] = STATE(779), + [sym_concatenated_template_string] = STATE(950), + [sym_template_string] = STATE(772), + [sym_await] = STATE(950), [aux_sym_module_repeat1] = STATE(60), - [aux_sym_decorated_definition_repeat1] = STATE(1127), + [aux_sym_decorated_definition_repeat1] = STATE(1146), [sym_identifier] = ACTIONS(7), [anon_sym_lazy] = ACTIONS(9), [anon_sym_import] = ACTIONS(11), @@ -8652,19 +8694,19 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [STATE(4)] = { [sym__statement] = STATE(61), [sym__simple_statements] = STATE(61), - [sym_import_statement] = STATE(1332), - [sym_future_import_statement] = STATE(1332), - [sym_import_from_statement] = STATE(1332), - [sym_print_statement] = STATE(1332), - [sym_assert_statement] = STATE(1332), - [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1156), - [sym_return_statement] = STATE(1332), - [sym_delete_statement] = STATE(1332), - [sym_raise_statement] = STATE(1332), - [sym_pass_statement] = STATE(1332), - [sym_break_statement] = STATE(1332), - [sym_continue_statement] = STATE(1332), + [sym_import_statement] = STATE(1345), + [sym_future_import_statement] = STATE(1345), + [sym_import_from_statement] = STATE(1345), + [sym_print_statement] = STATE(1345), + [sym_assert_statement] = STATE(1345), + [sym_expression_statement] = STATE(1345), + [sym_named_expression] = STATE(1126), + [sym_return_statement] = STATE(1345), + [sym_delete_statement] = STATE(1345), + [sym_raise_statement] = STATE(1345), + [sym_pass_statement] = STATE(1345), + [sym_break_statement] = STATE(1345), + [sym_continue_statement] = STATE(1345), [sym_if_statement] = STATE(61), [sym_for_statement] = STATE(61), [sym_while_statement] = STATE(61), @@ -8672,53 +8714,53 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_with_statement] = STATE(61), [sym_match_statement] = STATE(61), [sym_function_definition] = STATE(61), - [sym_list_splat] = STATE(1520), - [sym_dictionary_splat] = STATE(1520), - [sym_global_statement] = STATE(1332), - [sym_nonlocal_statement] = STATE(1332), - [sym_exec_statement] = STATE(1332), - [sym_type_alias_statement] = STATE(1332), + [sym_list_splat] = STATE(1590), + [sym_dictionary_splat] = STATE(1590), + [sym_global_statement] = STATE(1345), + [sym_nonlocal_statement] = STATE(1345), + [sym_exec_statement] = STATE(1345), + [sym_type_alias_statement] = STATE(1345), [sym_class_definition] = STATE(61), [sym_decorated_definition] = STATE(61), - [sym_decorator] = STATE(1127), - [sym_block] = STATE(312), - [sym_expression_list] = STATE(1522), - [sym_pattern] = STATE(1017), - [sym_tuple_pattern] = STATE(1001), - [sym_list_pattern] = STATE(1001), - [sym_list_splat_pattern] = STATE(1001), - [sym_expression] = STATE(1176), - [sym_primary_expression] = STATE(765), - [sym_not_operator] = STATE(1156), - [sym_boolean_operator] = STATE(1156), - [sym_binary_operator] = STATE(920), - [sym_unary_operator] = STATE(920), - [sym_comparison_operator] = STATE(1156), - [sym_lambda] = STATE(1156), - [sym_assignment] = STATE(1522), - [sym_augmented_assignment] = STATE(1522), - [sym_pattern_list] = STATE(1026), - [sym_yield] = STATE(1522), - [sym_attribute] = STATE(582), - [sym_subscript] = STATE(582), - [sym_call] = STATE(920), - [sym_list] = STATE(920), - [sym_set] = STATE(920), - [sym_tuple] = STATE(920), - [sym_dictionary] = STATE(920), - [sym_list_comprehension] = STATE(920), - [sym_dictionary_comprehension] = STATE(920), - [sym_set_comprehension] = STATE(920), - [sym_generator_expression] = STATE(920), - [sym_parenthesized_expression] = STATE(920), - [sym_conditional_expression] = STATE(1156), - [sym_concatenated_string] = STATE(920), - [sym_string] = STATE(775), - [sym_concatenated_template_string] = STATE(920), - [sym_template_string] = STATE(769), - [sym_await] = STATE(920), + [sym_decorator] = STATE(1146), + [sym_block] = STATE(329), + [sym_expression_list] = STATE(1545), + [sym_pattern] = STATE(1020), + [sym_tuple_pattern] = STATE(1005), + [sym_list_pattern] = STATE(1005), + [sym_list_splat_pattern] = STATE(1005), + [sym_expression] = STATE(1191), + [sym_primary_expression] = STATE(773), + [sym_not_operator] = STATE(1126), + [sym_boolean_operator] = STATE(1126), + [sym_binary_operator] = STATE(950), + [sym_unary_operator] = STATE(950), + [sym_comparison_operator] = STATE(1126), + [sym_lambda] = STATE(1126), + [sym_assignment] = STATE(1545), + [sym_augmented_assignment] = STATE(1545), + [sym_pattern_list] = STATE(1030), + [sym_yield] = STATE(1545), + [sym_attribute] = STATE(614), + [sym_subscript] = STATE(614), + [sym_call] = STATE(950), + [sym_list] = STATE(950), + [sym_set] = STATE(950), + [sym_tuple] = STATE(950), + [sym_dictionary] = STATE(950), + [sym_list_comprehension] = STATE(950), + [sym_dictionary_comprehension] = STATE(950), + [sym_set_comprehension] = STATE(950), + [sym_generator_expression] = STATE(950), + [sym_parenthesized_expression] = STATE(950), + [sym_conditional_expression] = STATE(1126), + [sym_concatenated_string] = STATE(950), + [sym_string] = STATE(779), + [sym_concatenated_template_string] = STATE(950), + [sym_template_string] = STATE(772), + [sym_await] = STATE(950), [aux_sym_module_repeat1] = STATE(61), - [aux_sym_decorated_definition_repeat1] = STATE(1127), + [aux_sym_decorated_definition_repeat1] = STATE(1146), [sym_identifier] = ACTIONS(7), [anon_sym_lazy] = ACTIONS(9), [anon_sym_import] = ACTIONS(11), @@ -8771,19 +8813,19 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [STATE(5)] = { [sym__statement] = STATE(61), [sym__simple_statements] = STATE(61), - [sym_import_statement] = STATE(1332), - [sym_future_import_statement] = STATE(1332), - [sym_import_from_statement] = STATE(1332), - [sym_print_statement] = STATE(1332), - [sym_assert_statement] = STATE(1332), - [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1156), - [sym_return_statement] = STATE(1332), - [sym_delete_statement] = STATE(1332), - [sym_raise_statement] = STATE(1332), - [sym_pass_statement] = STATE(1332), - [sym_break_statement] = STATE(1332), - [sym_continue_statement] = STATE(1332), + [sym_import_statement] = STATE(1345), + [sym_future_import_statement] = STATE(1345), + [sym_import_from_statement] = STATE(1345), + [sym_print_statement] = STATE(1345), + [sym_assert_statement] = STATE(1345), + [sym_expression_statement] = STATE(1345), + [sym_named_expression] = STATE(1126), + [sym_return_statement] = STATE(1345), + [sym_delete_statement] = STATE(1345), + [sym_raise_statement] = STATE(1345), + [sym_pass_statement] = STATE(1345), + [sym_break_statement] = STATE(1345), + [sym_continue_statement] = STATE(1345), [sym_if_statement] = STATE(61), [sym_for_statement] = STATE(61), [sym_while_statement] = STATE(61), @@ -8791,53 +8833,53 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_with_statement] = STATE(61), [sym_match_statement] = STATE(61), [sym_function_definition] = STATE(61), - [sym_list_splat] = STATE(1520), - [sym_dictionary_splat] = STATE(1520), - [sym_global_statement] = STATE(1332), - [sym_nonlocal_statement] = STATE(1332), - [sym_exec_statement] = STATE(1332), - [sym_type_alias_statement] = STATE(1332), + [sym_list_splat] = STATE(1590), + [sym_dictionary_splat] = STATE(1590), + [sym_global_statement] = STATE(1345), + [sym_nonlocal_statement] = STATE(1345), + [sym_exec_statement] = STATE(1345), + [sym_type_alias_statement] = STATE(1345), [sym_class_definition] = STATE(61), [sym_decorated_definition] = STATE(61), - [sym_decorator] = STATE(1127), - [sym_block] = STATE(474), - [sym_expression_list] = STATE(1522), - [sym_pattern] = STATE(1017), - [sym_tuple_pattern] = STATE(1001), - [sym_list_pattern] = STATE(1001), - [sym_list_splat_pattern] = STATE(1001), - [sym_expression] = STATE(1176), - [sym_primary_expression] = STATE(765), - [sym_not_operator] = STATE(1156), - [sym_boolean_operator] = STATE(1156), - [sym_binary_operator] = STATE(920), - [sym_unary_operator] = STATE(920), - [sym_comparison_operator] = STATE(1156), - [sym_lambda] = STATE(1156), - [sym_assignment] = STATE(1522), - [sym_augmented_assignment] = STATE(1522), - [sym_pattern_list] = STATE(1026), - [sym_yield] = STATE(1522), - [sym_attribute] = STATE(582), - [sym_subscript] = STATE(582), - [sym_call] = STATE(920), - [sym_list] = STATE(920), - [sym_set] = STATE(920), - [sym_tuple] = STATE(920), - [sym_dictionary] = STATE(920), - [sym_list_comprehension] = STATE(920), - [sym_dictionary_comprehension] = STATE(920), - [sym_set_comprehension] = STATE(920), - [sym_generator_expression] = STATE(920), - [sym_parenthesized_expression] = STATE(920), - [sym_conditional_expression] = STATE(1156), - [sym_concatenated_string] = STATE(920), - [sym_string] = STATE(775), - [sym_concatenated_template_string] = STATE(920), - [sym_template_string] = STATE(769), - [sym_await] = STATE(920), + [sym_decorator] = STATE(1146), + [sym_block] = STATE(478), + [sym_expression_list] = STATE(1545), + [sym_pattern] = STATE(1020), + [sym_tuple_pattern] = STATE(1005), + [sym_list_pattern] = STATE(1005), + [sym_list_splat_pattern] = STATE(1005), + [sym_expression] = STATE(1191), + [sym_primary_expression] = STATE(773), + [sym_not_operator] = STATE(1126), + [sym_boolean_operator] = STATE(1126), + [sym_binary_operator] = STATE(950), + [sym_unary_operator] = STATE(950), + [sym_comparison_operator] = STATE(1126), + [sym_lambda] = STATE(1126), + [sym_assignment] = STATE(1545), + [sym_augmented_assignment] = STATE(1545), + [sym_pattern_list] = STATE(1030), + [sym_yield] = STATE(1545), + [sym_attribute] = STATE(614), + [sym_subscript] = STATE(614), + [sym_call] = STATE(950), + [sym_list] = STATE(950), + [sym_set] = STATE(950), + [sym_tuple] = STATE(950), + [sym_dictionary] = STATE(950), + [sym_list_comprehension] = STATE(950), + [sym_dictionary_comprehension] = STATE(950), + [sym_set_comprehension] = STATE(950), + [sym_generator_expression] = STATE(950), + [sym_parenthesized_expression] = STATE(950), + [sym_conditional_expression] = STATE(1126), + [sym_concatenated_string] = STATE(950), + [sym_string] = STATE(779), + [sym_concatenated_template_string] = STATE(950), + [sym_template_string] = STATE(772), + [sym_await] = STATE(950), [aux_sym_module_repeat1] = STATE(61), - [aux_sym_decorated_definition_repeat1] = STATE(1127), + [aux_sym_decorated_definition_repeat1] = STATE(1146), [sym_identifier] = ACTIONS(7), [anon_sym_lazy] = ACTIONS(9), [anon_sym_import] = ACTIONS(11), @@ -8890,19 +8932,19 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [STATE(6)] = { [sym__statement] = STATE(61), [sym__simple_statements] = STATE(61), - [sym_import_statement] = STATE(1332), - [sym_future_import_statement] = STATE(1332), - [sym_import_from_statement] = STATE(1332), - [sym_print_statement] = STATE(1332), - [sym_assert_statement] = STATE(1332), - [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1156), - [sym_return_statement] = STATE(1332), - [sym_delete_statement] = STATE(1332), - [sym_raise_statement] = STATE(1332), - [sym_pass_statement] = STATE(1332), - [sym_break_statement] = STATE(1332), - [sym_continue_statement] = STATE(1332), + [sym_import_statement] = STATE(1345), + [sym_future_import_statement] = STATE(1345), + [sym_import_from_statement] = STATE(1345), + [sym_print_statement] = STATE(1345), + [sym_assert_statement] = STATE(1345), + [sym_expression_statement] = STATE(1345), + [sym_named_expression] = STATE(1126), + [sym_return_statement] = STATE(1345), + [sym_delete_statement] = STATE(1345), + [sym_raise_statement] = STATE(1345), + [sym_pass_statement] = STATE(1345), + [sym_break_statement] = STATE(1345), + [sym_continue_statement] = STATE(1345), [sym_if_statement] = STATE(61), [sym_for_statement] = STATE(61), [sym_while_statement] = STATE(61), @@ -8910,53 +8952,53 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_with_statement] = STATE(61), [sym_match_statement] = STATE(61), [sym_function_definition] = STATE(61), - [sym_list_splat] = STATE(1520), - [sym_dictionary_splat] = STATE(1520), - [sym_global_statement] = STATE(1332), - [sym_nonlocal_statement] = STATE(1332), - [sym_exec_statement] = STATE(1332), - [sym_type_alias_statement] = STATE(1332), + [sym_list_splat] = STATE(1590), + [sym_dictionary_splat] = STATE(1590), + [sym_global_statement] = STATE(1345), + [sym_nonlocal_statement] = STATE(1345), + [sym_exec_statement] = STATE(1345), + [sym_type_alias_statement] = STATE(1345), [sym_class_definition] = STATE(61), [sym_decorated_definition] = STATE(61), - [sym_decorator] = STATE(1127), - [sym_block] = STATE(609), - [sym_expression_list] = STATE(1522), - [sym_pattern] = STATE(1017), - [sym_tuple_pattern] = STATE(1001), - [sym_list_pattern] = STATE(1001), - [sym_list_splat_pattern] = STATE(1001), - [sym_expression] = STATE(1176), - [sym_primary_expression] = STATE(765), - [sym_not_operator] = STATE(1156), - [sym_boolean_operator] = STATE(1156), - [sym_binary_operator] = STATE(920), - [sym_unary_operator] = STATE(920), - [sym_comparison_operator] = STATE(1156), - [sym_lambda] = STATE(1156), - [sym_assignment] = STATE(1522), - [sym_augmented_assignment] = STATE(1522), - [sym_pattern_list] = STATE(1026), - [sym_yield] = STATE(1522), - [sym_attribute] = STATE(582), - [sym_subscript] = STATE(582), - [sym_call] = STATE(920), - [sym_list] = STATE(920), - [sym_set] = STATE(920), - [sym_tuple] = STATE(920), - [sym_dictionary] = STATE(920), - [sym_list_comprehension] = STATE(920), - [sym_dictionary_comprehension] = STATE(920), - [sym_set_comprehension] = STATE(920), - [sym_generator_expression] = STATE(920), - [sym_parenthesized_expression] = STATE(920), - [sym_conditional_expression] = STATE(1156), - [sym_concatenated_string] = STATE(920), - [sym_string] = STATE(775), - [sym_concatenated_template_string] = STATE(920), - [sym_template_string] = STATE(769), - [sym_await] = STATE(920), + [sym_decorator] = STATE(1146), + [sym_block] = STATE(604), + [sym_expression_list] = STATE(1545), + [sym_pattern] = STATE(1020), + [sym_tuple_pattern] = STATE(1005), + [sym_list_pattern] = STATE(1005), + [sym_list_splat_pattern] = STATE(1005), + [sym_expression] = STATE(1191), + [sym_primary_expression] = STATE(773), + [sym_not_operator] = STATE(1126), + [sym_boolean_operator] = STATE(1126), + [sym_binary_operator] = STATE(950), + [sym_unary_operator] = STATE(950), + [sym_comparison_operator] = STATE(1126), + [sym_lambda] = STATE(1126), + [sym_assignment] = STATE(1545), + [sym_augmented_assignment] = STATE(1545), + [sym_pattern_list] = STATE(1030), + [sym_yield] = STATE(1545), + [sym_attribute] = STATE(614), + [sym_subscript] = STATE(614), + [sym_call] = STATE(950), + [sym_list] = STATE(950), + [sym_set] = STATE(950), + [sym_tuple] = STATE(950), + [sym_dictionary] = STATE(950), + [sym_list_comprehension] = STATE(950), + [sym_dictionary_comprehension] = STATE(950), + [sym_set_comprehension] = STATE(950), + [sym_generator_expression] = STATE(950), + [sym_parenthesized_expression] = STATE(950), + [sym_conditional_expression] = STATE(1126), + [sym_concatenated_string] = STATE(950), + [sym_string] = STATE(779), + [sym_concatenated_template_string] = STATE(950), + [sym_template_string] = STATE(772), + [sym_await] = STATE(950), [aux_sym_module_repeat1] = STATE(61), - [aux_sym_decorated_definition_repeat1] = STATE(1127), + [aux_sym_decorated_definition_repeat1] = STATE(1146), [sym_identifier] = ACTIONS(7), [anon_sym_lazy] = ACTIONS(9), [anon_sym_import] = ACTIONS(11), @@ -9009,19 +9051,19 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [STATE(7)] = { [sym__statement] = STATE(61), [sym__simple_statements] = STATE(61), - [sym_import_statement] = STATE(1332), - [sym_future_import_statement] = STATE(1332), - [sym_import_from_statement] = STATE(1332), - [sym_print_statement] = STATE(1332), - [sym_assert_statement] = STATE(1332), - [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1156), - [sym_return_statement] = STATE(1332), - [sym_delete_statement] = STATE(1332), - [sym_raise_statement] = STATE(1332), - [sym_pass_statement] = STATE(1332), - [sym_break_statement] = STATE(1332), - [sym_continue_statement] = STATE(1332), + [sym_import_statement] = STATE(1345), + [sym_future_import_statement] = STATE(1345), + [sym_import_from_statement] = STATE(1345), + [sym_print_statement] = STATE(1345), + [sym_assert_statement] = STATE(1345), + [sym_expression_statement] = STATE(1345), + [sym_named_expression] = STATE(1126), + [sym_return_statement] = STATE(1345), + [sym_delete_statement] = STATE(1345), + [sym_raise_statement] = STATE(1345), + [sym_pass_statement] = STATE(1345), + [sym_break_statement] = STATE(1345), + [sym_continue_statement] = STATE(1345), [sym_if_statement] = STATE(61), [sym_for_statement] = STATE(61), [sym_while_statement] = STATE(61), @@ -9029,53 +9071,53 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_with_statement] = STATE(61), [sym_match_statement] = STATE(61), [sym_function_definition] = STATE(61), - [sym_list_splat] = STATE(1520), - [sym_dictionary_splat] = STATE(1520), - [sym_global_statement] = STATE(1332), - [sym_nonlocal_statement] = STATE(1332), - [sym_exec_statement] = STATE(1332), - [sym_type_alias_statement] = STATE(1332), + [sym_list_splat] = STATE(1590), + [sym_dictionary_splat] = STATE(1590), + [sym_global_statement] = STATE(1345), + [sym_nonlocal_statement] = STATE(1345), + [sym_exec_statement] = STATE(1345), + [sym_type_alias_statement] = STATE(1345), [sym_class_definition] = STATE(61), [sym_decorated_definition] = STATE(61), - [sym_decorator] = STATE(1127), - [sym_block] = STATE(514), - [sym_expression_list] = STATE(1522), - [sym_pattern] = STATE(1017), - [sym_tuple_pattern] = STATE(1001), - [sym_list_pattern] = STATE(1001), - [sym_list_splat_pattern] = STATE(1001), - [sym_expression] = STATE(1176), - [sym_primary_expression] = STATE(765), - [sym_not_operator] = STATE(1156), - [sym_boolean_operator] = STATE(1156), - [sym_binary_operator] = STATE(920), - [sym_unary_operator] = STATE(920), - [sym_comparison_operator] = STATE(1156), - [sym_lambda] = STATE(1156), - [sym_assignment] = STATE(1522), - [sym_augmented_assignment] = STATE(1522), - [sym_pattern_list] = STATE(1026), - [sym_yield] = STATE(1522), - [sym_attribute] = STATE(582), - [sym_subscript] = STATE(582), - [sym_call] = STATE(920), - [sym_list] = STATE(920), - [sym_set] = STATE(920), - [sym_tuple] = STATE(920), - [sym_dictionary] = STATE(920), - [sym_list_comprehension] = STATE(920), - [sym_dictionary_comprehension] = STATE(920), - [sym_set_comprehension] = STATE(920), - [sym_generator_expression] = STATE(920), - [sym_parenthesized_expression] = STATE(920), - [sym_conditional_expression] = STATE(1156), - [sym_concatenated_string] = STATE(920), - [sym_string] = STATE(775), - [sym_concatenated_template_string] = STATE(920), - [sym_template_string] = STATE(769), - [sym_await] = STATE(920), + [sym_decorator] = STATE(1146), + [sym_block] = STATE(615), + [sym_expression_list] = STATE(1545), + [sym_pattern] = STATE(1020), + [sym_tuple_pattern] = STATE(1005), + [sym_list_pattern] = STATE(1005), + [sym_list_splat_pattern] = STATE(1005), + [sym_expression] = STATE(1191), + [sym_primary_expression] = STATE(773), + [sym_not_operator] = STATE(1126), + [sym_boolean_operator] = STATE(1126), + [sym_binary_operator] = STATE(950), + [sym_unary_operator] = STATE(950), + [sym_comparison_operator] = STATE(1126), + [sym_lambda] = STATE(1126), + [sym_assignment] = STATE(1545), + [sym_augmented_assignment] = STATE(1545), + [sym_pattern_list] = STATE(1030), + [sym_yield] = STATE(1545), + [sym_attribute] = STATE(614), + [sym_subscript] = STATE(614), + [sym_call] = STATE(950), + [sym_list] = STATE(950), + [sym_set] = STATE(950), + [sym_tuple] = STATE(950), + [sym_dictionary] = STATE(950), + [sym_list_comprehension] = STATE(950), + [sym_dictionary_comprehension] = STATE(950), + [sym_set_comprehension] = STATE(950), + [sym_generator_expression] = STATE(950), + [sym_parenthesized_expression] = STATE(950), + [sym_conditional_expression] = STATE(1126), + [sym_concatenated_string] = STATE(950), + [sym_string] = STATE(779), + [sym_concatenated_template_string] = STATE(950), + [sym_template_string] = STATE(772), + [sym_await] = STATE(950), [aux_sym_module_repeat1] = STATE(61), - [aux_sym_decorated_definition_repeat1] = STATE(1127), + [aux_sym_decorated_definition_repeat1] = STATE(1146), [sym_identifier] = ACTIONS(7), [anon_sym_lazy] = ACTIONS(9), [anon_sym_import] = ACTIONS(11), @@ -9128,19 +9170,19 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [STATE(8)] = { [sym__statement] = STATE(61), [sym__simple_statements] = STATE(61), - [sym_import_statement] = STATE(1332), - [sym_future_import_statement] = STATE(1332), - [sym_import_from_statement] = STATE(1332), - [sym_print_statement] = STATE(1332), - [sym_assert_statement] = STATE(1332), - [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1156), - [sym_return_statement] = STATE(1332), - [sym_delete_statement] = STATE(1332), - [sym_raise_statement] = STATE(1332), - [sym_pass_statement] = STATE(1332), - [sym_break_statement] = STATE(1332), - [sym_continue_statement] = STATE(1332), + [sym_import_statement] = STATE(1345), + [sym_future_import_statement] = STATE(1345), + [sym_import_from_statement] = STATE(1345), + [sym_print_statement] = STATE(1345), + [sym_assert_statement] = STATE(1345), + [sym_expression_statement] = STATE(1345), + [sym_named_expression] = STATE(1126), + [sym_return_statement] = STATE(1345), + [sym_delete_statement] = STATE(1345), + [sym_raise_statement] = STATE(1345), + [sym_pass_statement] = STATE(1345), + [sym_break_statement] = STATE(1345), + [sym_continue_statement] = STATE(1345), [sym_if_statement] = STATE(61), [sym_for_statement] = STATE(61), [sym_while_statement] = STATE(61), @@ -9148,53 +9190,53 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_with_statement] = STATE(61), [sym_match_statement] = STATE(61), [sym_function_definition] = STATE(61), - [sym_list_splat] = STATE(1520), - [sym_dictionary_splat] = STATE(1520), - [sym_global_statement] = STATE(1332), - [sym_nonlocal_statement] = STATE(1332), - [sym_exec_statement] = STATE(1332), - [sym_type_alias_statement] = STATE(1332), + [sym_list_splat] = STATE(1590), + [sym_dictionary_splat] = STATE(1590), + [sym_global_statement] = STATE(1345), + [sym_nonlocal_statement] = STATE(1345), + [sym_exec_statement] = STATE(1345), + [sym_type_alias_statement] = STATE(1345), [sym_class_definition] = STATE(61), [sym_decorated_definition] = STATE(61), - [sym_decorator] = STATE(1127), - [sym_block] = STATE(552), - [sym_expression_list] = STATE(1522), - [sym_pattern] = STATE(1017), - [sym_tuple_pattern] = STATE(1001), - [sym_list_pattern] = STATE(1001), - [sym_list_splat_pattern] = STATE(1001), - [sym_expression] = STATE(1176), - [sym_primary_expression] = STATE(765), - [sym_not_operator] = STATE(1156), - [sym_boolean_operator] = STATE(1156), - [sym_binary_operator] = STATE(920), - [sym_unary_operator] = STATE(920), - [sym_comparison_operator] = STATE(1156), - [sym_lambda] = STATE(1156), - [sym_assignment] = STATE(1522), - [sym_augmented_assignment] = STATE(1522), - [sym_pattern_list] = STATE(1026), - [sym_yield] = STATE(1522), - [sym_attribute] = STATE(582), - [sym_subscript] = STATE(582), - [sym_call] = STATE(920), - [sym_list] = STATE(920), - [sym_set] = STATE(920), - [sym_tuple] = STATE(920), - [sym_dictionary] = STATE(920), - [sym_list_comprehension] = STATE(920), - [sym_dictionary_comprehension] = STATE(920), - [sym_set_comprehension] = STATE(920), - [sym_generator_expression] = STATE(920), - [sym_parenthesized_expression] = STATE(920), - [sym_conditional_expression] = STATE(1156), - [sym_concatenated_string] = STATE(920), - [sym_string] = STATE(775), - [sym_concatenated_template_string] = STATE(920), - [sym_template_string] = STATE(769), - [sym_await] = STATE(920), + [sym_decorator] = STATE(1146), + [sym_block] = STATE(525), + [sym_expression_list] = STATE(1545), + [sym_pattern] = STATE(1020), + [sym_tuple_pattern] = STATE(1005), + [sym_list_pattern] = STATE(1005), + [sym_list_splat_pattern] = STATE(1005), + [sym_expression] = STATE(1191), + [sym_primary_expression] = STATE(773), + [sym_not_operator] = STATE(1126), + [sym_boolean_operator] = STATE(1126), + [sym_binary_operator] = STATE(950), + [sym_unary_operator] = STATE(950), + [sym_comparison_operator] = STATE(1126), + [sym_lambda] = STATE(1126), + [sym_assignment] = STATE(1545), + [sym_augmented_assignment] = STATE(1545), + [sym_pattern_list] = STATE(1030), + [sym_yield] = STATE(1545), + [sym_attribute] = STATE(614), + [sym_subscript] = STATE(614), + [sym_call] = STATE(950), + [sym_list] = STATE(950), + [sym_set] = STATE(950), + [sym_tuple] = STATE(950), + [sym_dictionary] = STATE(950), + [sym_list_comprehension] = STATE(950), + [sym_dictionary_comprehension] = STATE(950), + [sym_set_comprehension] = STATE(950), + [sym_generator_expression] = STATE(950), + [sym_parenthesized_expression] = STATE(950), + [sym_conditional_expression] = STATE(1126), + [sym_concatenated_string] = STATE(950), + [sym_string] = STATE(779), + [sym_concatenated_template_string] = STATE(950), + [sym_template_string] = STATE(772), + [sym_await] = STATE(950), [aux_sym_module_repeat1] = STATE(61), - [aux_sym_decorated_definition_repeat1] = STATE(1127), + [aux_sym_decorated_definition_repeat1] = STATE(1146), [sym_identifier] = ACTIONS(7), [anon_sym_lazy] = ACTIONS(9), [anon_sym_import] = ACTIONS(11), @@ -9247,19 +9289,19 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [STATE(9)] = { [sym__statement] = STATE(61), [sym__simple_statements] = STATE(61), - [sym_import_statement] = STATE(1332), - [sym_future_import_statement] = STATE(1332), - [sym_import_from_statement] = STATE(1332), - [sym_print_statement] = STATE(1332), - [sym_assert_statement] = STATE(1332), - [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1156), - [sym_return_statement] = STATE(1332), - [sym_delete_statement] = STATE(1332), - [sym_raise_statement] = STATE(1332), - [sym_pass_statement] = STATE(1332), - [sym_break_statement] = STATE(1332), - [sym_continue_statement] = STATE(1332), + [sym_import_statement] = STATE(1345), + [sym_future_import_statement] = STATE(1345), + [sym_import_from_statement] = STATE(1345), + [sym_print_statement] = STATE(1345), + [sym_assert_statement] = STATE(1345), + [sym_expression_statement] = STATE(1345), + [sym_named_expression] = STATE(1126), + [sym_return_statement] = STATE(1345), + [sym_delete_statement] = STATE(1345), + [sym_raise_statement] = STATE(1345), + [sym_pass_statement] = STATE(1345), + [sym_break_statement] = STATE(1345), + [sym_continue_statement] = STATE(1345), [sym_if_statement] = STATE(61), [sym_for_statement] = STATE(61), [sym_while_statement] = STATE(61), @@ -9267,53 +9309,53 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_with_statement] = STATE(61), [sym_match_statement] = STATE(61), [sym_function_definition] = STATE(61), - [sym_list_splat] = STATE(1520), - [sym_dictionary_splat] = STATE(1520), - [sym_global_statement] = STATE(1332), - [sym_nonlocal_statement] = STATE(1332), - [sym_exec_statement] = STATE(1332), - [sym_type_alias_statement] = STATE(1332), + [sym_list_splat] = STATE(1590), + [sym_dictionary_splat] = STATE(1590), + [sym_global_statement] = STATE(1345), + [sym_nonlocal_statement] = STATE(1345), + [sym_exec_statement] = STATE(1345), + [sym_type_alias_statement] = STATE(1345), [sym_class_definition] = STATE(61), [sym_decorated_definition] = STATE(61), - [sym_decorator] = STATE(1127), - [sym_block] = STATE(572), - [sym_expression_list] = STATE(1522), - [sym_pattern] = STATE(1017), - [sym_tuple_pattern] = STATE(1001), - [sym_list_pattern] = STATE(1001), - [sym_list_splat_pattern] = STATE(1001), - [sym_expression] = STATE(1176), - [sym_primary_expression] = STATE(765), - [sym_not_operator] = STATE(1156), - [sym_boolean_operator] = STATE(1156), - [sym_binary_operator] = STATE(920), - [sym_unary_operator] = STATE(920), - [sym_comparison_operator] = STATE(1156), - [sym_lambda] = STATE(1156), - [sym_assignment] = STATE(1522), - [sym_augmented_assignment] = STATE(1522), - [sym_pattern_list] = STATE(1026), - [sym_yield] = STATE(1522), - [sym_attribute] = STATE(582), - [sym_subscript] = STATE(582), - [sym_call] = STATE(920), - [sym_list] = STATE(920), - [sym_set] = STATE(920), - [sym_tuple] = STATE(920), - [sym_dictionary] = STATE(920), - [sym_list_comprehension] = STATE(920), - [sym_dictionary_comprehension] = STATE(920), - [sym_set_comprehension] = STATE(920), - [sym_generator_expression] = STATE(920), - [sym_parenthesized_expression] = STATE(920), - [sym_conditional_expression] = STATE(1156), - [sym_concatenated_string] = STATE(920), - [sym_string] = STATE(775), - [sym_concatenated_template_string] = STATE(920), - [sym_template_string] = STATE(769), - [sym_await] = STATE(920), + [sym_decorator] = STATE(1146), + [sym_block] = STATE(541), + [sym_expression_list] = STATE(1545), + [sym_pattern] = STATE(1020), + [sym_tuple_pattern] = STATE(1005), + [sym_list_pattern] = STATE(1005), + [sym_list_splat_pattern] = STATE(1005), + [sym_expression] = STATE(1191), + [sym_primary_expression] = STATE(773), + [sym_not_operator] = STATE(1126), + [sym_boolean_operator] = STATE(1126), + [sym_binary_operator] = STATE(950), + [sym_unary_operator] = STATE(950), + [sym_comparison_operator] = STATE(1126), + [sym_lambda] = STATE(1126), + [sym_assignment] = STATE(1545), + [sym_augmented_assignment] = STATE(1545), + [sym_pattern_list] = STATE(1030), + [sym_yield] = STATE(1545), + [sym_attribute] = STATE(614), + [sym_subscript] = STATE(614), + [sym_call] = STATE(950), + [sym_list] = STATE(950), + [sym_set] = STATE(950), + [sym_tuple] = STATE(950), + [sym_dictionary] = STATE(950), + [sym_list_comprehension] = STATE(950), + [sym_dictionary_comprehension] = STATE(950), + [sym_set_comprehension] = STATE(950), + [sym_generator_expression] = STATE(950), + [sym_parenthesized_expression] = STATE(950), + [sym_conditional_expression] = STATE(1126), + [sym_concatenated_string] = STATE(950), + [sym_string] = STATE(779), + [sym_concatenated_template_string] = STATE(950), + [sym_template_string] = STATE(772), + [sym_await] = STATE(950), [aux_sym_module_repeat1] = STATE(61), - [aux_sym_decorated_definition_repeat1] = STATE(1127), + [aux_sym_decorated_definition_repeat1] = STATE(1146), [sym_identifier] = ACTIONS(7), [anon_sym_lazy] = ACTIONS(9), [anon_sym_import] = ACTIONS(11), @@ -9366,19 +9408,19 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [STATE(10)] = { [sym__statement] = STATE(61), [sym__simple_statements] = STATE(61), - [sym_import_statement] = STATE(1332), - [sym_future_import_statement] = STATE(1332), - [sym_import_from_statement] = STATE(1332), - [sym_print_statement] = STATE(1332), - [sym_assert_statement] = STATE(1332), - [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1156), - [sym_return_statement] = STATE(1332), - [sym_delete_statement] = STATE(1332), - [sym_raise_statement] = STATE(1332), - [sym_pass_statement] = STATE(1332), - [sym_break_statement] = STATE(1332), - [sym_continue_statement] = STATE(1332), + [sym_import_statement] = STATE(1345), + [sym_future_import_statement] = STATE(1345), + [sym_import_from_statement] = STATE(1345), + [sym_print_statement] = STATE(1345), + [sym_assert_statement] = STATE(1345), + [sym_expression_statement] = STATE(1345), + [sym_named_expression] = STATE(1126), + [sym_return_statement] = STATE(1345), + [sym_delete_statement] = STATE(1345), + [sym_raise_statement] = STATE(1345), + [sym_pass_statement] = STATE(1345), + [sym_break_statement] = STATE(1345), + [sym_continue_statement] = STATE(1345), [sym_if_statement] = STATE(61), [sym_for_statement] = STATE(61), [sym_while_statement] = STATE(61), @@ -9386,53 +9428,53 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_with_statement] = STATE(61), [sym_match_statement] = STATE(61), [sym_function_definition] = STATE(61), - [sym_list_splat] = STATE(1520), - [sym_dictionary_splat] = STATE(1520), - [sym_global_statement] = STATE(1332), - [sym_nonlocal_statement] = STATE(1332), - [sym_exec_statement] = STATE(1332), - [sym_type_alias_statement] = STATE(1332), + [sym_list_splat] = STATE(1590), + [sym_dictionary_splat] = STATE(1590), + [sym_global_statement] = STATE(1345), + [sym_nonlocal_statement] = STATE(1345), + [sym_exec_statement] = STATE(1345), + [sym_type_alias_statement] = STATE(1345), [sym_class_definition] = STATE(61), [sym_decorated_definition] = STATE(61), - [sym_decorator] = STATE(1127), - [sym_block] = STATE(575), - [sym_expression_list] = STATE(1522), - [sym_pattern] = STATE(1017), - [sym_tuple_pattern] = STATE(1001), - [sym_list_pattern] = STATE(1001), - [sym_list_splat_pattern] = STATE(1001), - [sym_expression] = STATE(1176), - [sym_primary_expression] = STATE(765), - [sym_not_operator] = STATE(1156), - [sym_boolean_operator] = STATE(1156), - [sym_binary_operator] = STATE(920), - [sym_unary_operator] = STATE(920), - [sym_comparison_operator] = STATE(1156), - [sym_lambda] = STATE(1156), - [sym_assignment] = STATE(1522), - [sym_augmented_assignment] = STATE(1522), - [sym_pattern_list] = STATE(1026), - [sym_yield] = STATE(1522), - [sym_attribute] = STATE(582), - [sym_subscript] = STATE(582), - [sym_call] = STATE(920), - [sym_list] = STATE(920), - [sym_set] = STATE(920), - [sym_tuple] = STATE(920), - [sym_dictionary] = STATE(920), - [sym_list_comprehension] = STATE(920), - [sym_dictionary_comprehension] = STATE(920), - [sym_set_comprehension] = STATE(920), - [sym_generator_expression] = STATE(920), - [sym_parenthesized_expression] = STATE(920), - [sym_conditional_expression] = STATE(1156), - [sym_concatenated_string] = STATE(920), - [sym_string] = STATE(775), - [sym_concatenated_template_string] = STATE(920), - [sym_template_string] = STATE(769), - [sym_await] = STATE(920), + [sym_decorator] = STATE(1146), + [sym_block] = STATE(547), + [sym_expression_list] = STATE(1545), + [sym_pattern] = STATE(1020), + [sym_tuple_pattern] = STATE(1005), + [sym_list_pattern] = STATE(1005), + [sym_list_splat_pattern] = STATE(1005), + [sym_expression] = STATE(1191), + [sym_primary_expression] = STATE(773), + [sym_not_operator] = STATE(1126), + [sym_boolean_operator] = STATE(1126), + [sym_binary_operator] = STATE(950), + [sym_unary_operator] = STATE(950), + [sym_comparison_operator] = STATE(1126), + [sym_lambda] = STATE(1126), + [sym_assignment] = STATE(1545), + [sym_augmented_assignment] = STATE(1545), + [sym_pattern_list] = STATE(1030), + [sym_yield] = STATE(1545), + [sym_attribute] = STATE(614), + [sym_subscript] = STATE(614), + [sym_call] = STATE(950), + [sym_list] = STATE(950), + [sym_set] = STATE(950), + [sym_tuple] = STATE(950), + [sym_dictionary] = STATE(950), + [sym_list_comprehension] = STATE(950), + [sym_dictionary_comprehension] = STATE(950), + [sym_set_comprehension] = STATE(950), + [sym_generator_expression] = STATE(950), + [sym_parenthesized_expression] = STATE(950), + [sym_conditional_expression] = STATE(1126), + [sym_concatenated_string] = STATE(950), + [sym_string] = STATE(779), + [sym_concatenated_template_string] = STATE(950), + [sym_template_string] = STATE(772), + [sym_await] = STATE(950), [aux_sym_module_repeat1] = STATE(61), - [aux_sym_decorated_definition_repeat1] = STATE(1127), + [aux_sym_decorated_definition_repeat1] = STATE(1146), [sym_identifier] = ACTIONS(7), [anon_sym_lazy] = ACTIONS(9), [anon_sym_import] = ACTIONS(11), @@ -9485,19 +9527,19 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [STATE(11)] = { [sym__statement] = STATE(61), [sym__simple_statements] = STATE(61), - [sym_import_statement] = STATE(1332), - [sym_future_import_statement] = STATE(1332), - [sym_import_from_statement] = STATE(1332), - [sym_print_statement] = STATE(1332), - [sym_assert_statement] = STATE(1332), - [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1156), - [sym_return_statement] = STATE(1332), - [sym_delete_statement] = STATE(1332), - [sym_raise_statement] = STATE(1332), - [sym_pass_statement] = STATE(1332), - [sym_break_statement] = STATE(1332), - [sym_continue_statement] = STATE(1332), + [sym_import_statement] = STATE(1345), + [sym_future_import_statement] = STATE(1345), + [sym_import_from_statement] = STATE(1345), + [sym_print_statement] = STATE(1345), + [sym_assert_statement] = STATE(1345), + [sym_expression_statement] = STATE(1345), + [sym_named_expression] = STATE(1126), + [sym_return_statement] = STATE(1345), + [sym_delete_statement] = STATE(1345), + [sym_raise_statement] = STATE(1345), + [sym_pass_statement] = STATE(1345), + [sym_break_statement] = STATE(1345), + [sym_continue_statement] = STATE(1345), [sym_if_statement] = STATE(61), [sym_for_statement] = STATE(61), [sym_while_statement] = STATE(61), @@ -9505,53 +9547,53 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_with_statement] = STATE(61), [sym_match_statement] = STATE(61), [sym_function_definition] = STATE(61), - [sym_list_splat] = STATE(1520), - [sym_dictionary_splat] = STATE(1520), - [sym_global_statement] = STATE(1332), - [sym_nonlocal_statement] = STATE(1332), - [sym_exec_statement] = STATE(1332), - [sym_type_alias_statement] = STATE(1332), + [sym_list_splat] = STATE(1590), + [sym_dictionary_splat] = STATE(1590), + [sym_global_statement] = STATE(1345), + [sym_nonlocal_statement] = STATE(1345), + [sym_exec_statement] = STATE(1345), + [sym_type_alias_statement] = STATE(1345), [sym_class_definition] = STATE(61), [sym_decorated_definition] = STATE(61), - [sym_decorator] = STATE(1127), - [sym_block] = STATE(577), - [sym_expression_list] = STATE(1522), - [sym_pattern] = STATE(1017), - [sym_tuple_pattern] = STATE(1001), - [sym_list_pattern] = STATE(1001), - [sym_list_splat_pattern] = STATE(1001), - [sym_expression] = STATE(1176), - [sym_primary_expression] = STATE(765), - [sym_not_operator] = STATE(1156), - [sym_boolean_operator] = STATE(1156), - [sym_binary_operator] = STATE(920), - [sym_unary_operator] = STATE(920), - [sym_comparison_operator] = STATE(1156), - [sym_lambda] = STATE(1156), - [sym_assignment] = STATE(1522), - [sym_augmented_assignment] = STATE(1522), - [sym_pattern_list] = STATE(1026), - [sym_yield] = STATE(1522), - [sym_attribute] = STATE(582), - [sym_subscript] = STATE(582), - [sym_call] = STATE(920), - [sym_list] = STATE(920), - [sym_set] = STATE(920), - [sym_tuple] = STATE(920), - [sym_dictionary] = STATE(920), - [sym_list_comprehension] = STATE(920), - [sym_dictionary_comprehension] = STATE(920), - [sym_set_comprehension] = STATE(920), - [sym_generator_expression] = STATE(920), - [sym_parenthesized_expression] = STATE(920), - [sym_conditional_expression] = STATE(1156), - [sym_concatenated_string] = STATE(920), - [sym_string] = STATE(775), - [sym_concatenated_template_string] = STATE(920), - [sym_template_string] = STATE(769), - [sym_await] = STATE(920), + [sym_decorator] = STATE(1146), + [sym_block] = STATE(550), + [sym_expression_list] = STATE(1545), + [sym_pattern] = STATE(1020), + [sym_tuple_pattern] = STATE(1005), + [sym_list_pattern] = STATE(1005), + [sym_list_splat_pattern] = STATE(1005), + [sym_expression] = STATE(1191), + [sym_primary_expression] = STATE(773), + [sym_not_operator] = STATE(1126), + [sym_boolean_operator] = STATE(1126), + [sym_binary_operator] = STATE(950), + [sym_unary_operator] = STATE(950), + [sym_comparison_operator] = STATE(1126), + [sym_lambda] = STATE(1126), + [sym_assignment] = STATE(1545), + [sym_augmented_assignment] = STATE(1545), + [sym_pattern_list] = STATE(1030), + [sym_yield] = STATE(1545), + [sym_attribute] = STATE(614), + [sym_subscript] = STATE(614), + [sym_call] = STATE(950), + [sym_list] = STATE(950), + [sym_set] = STATE(950), + [sym_tuple] = STATE(950), + [sym_dictionary] = STATE(950), + [sym_list_comprehension] = STATE(950), + [sym_dictionary_comprehension] = STATE(950), + [sym_set_comprehension] = STATE(950), + [sym_generator_expression] = STATE(950), + [sym_parenthesized_expression] = STATE(950), + [sym_conditional_expression] = STATE(1126), + [sym_concatenated_string] = STATE(950), + [sym_string] = STATE(779), + [sym_concatenated_template_string] = STATE(950), + [sym_template_string] = STATE(772), + [sym_await] = STATE(950), [aux_sym_module_repeat1] = STATE(61), - [aux_sym_decorated_definition_repeat1] = STATE(1127), + [aux_sym_decorated_definition_repeat1] = STATE(1146), [sym_identifier] = ACTIONS(7), [anon_sym_lazy] = ACTIONS(9), [anon_sym_import] = ACTIONS(11), @@ -9604,19 +9646,19 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [STATE(12)] = { [sym__statement] = STATE(61), [sym__simple_statements] = STATE(61), - [sym_import_statement] = STATE(1332), - [sym_future_import_statement] = STATE(1332), - [sym_import_from_statement] = STATE(1332), - [sym_print_statement] = STATE(1332), - [sym_assert_statement] = STATE(1332), - [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1156), - [sym_return_statement] = STATE(1332), - [sym_delete_statement] = STATE(1332), - [sym_raise_statement] = STATE(1332), - [sym_pass_statement] = STATE(1332), - [sym_break_statement] = STATE(1332), - [sym_continue_statement] = STATE(1332), + [sym_import_statement] = STATE(1345), + [sym_future_import_statement] = STATE(1345), + [sym_import_from_statement] = STATE(1345), + [sym_print_statement] = STATE(1345), + [sym_assert_statement] = STATE(1345), + [sym_expression_statement] = STATE(1345), + [sym_named_expression] = STATE(1126), + [sym_return_statement] = STATE(1345), + [sym_delete_statement] = STATE(1345), + [sym_raise_statement] = STATE(1345), + [sym_pass_statement] = STATE(1345), + [sym_break_statement] = STATE(1345), + [sym_continue_statement] = STATE(1345), [sym_if_statement] = STATE(61), [sym_for_statement] = STATE(61), [sym_while_statement] = STATE(61), @@ -9624,53 +9666,53 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_with_statement] = STATE(61), [sym_match_statement] = STATE(61), [sym_function_definition] = STATE(61), - [sym_list_splat] = STATE(1520), - [sym_dictionary_splat] = STATE(1520), - [sym_global_statement] = STATE(1332), - [sym_nonlocal_statement] = STATE(1332), - [sym_exec_statement] = STATE(1332), - [sym_type_alias_statement] = STATE(1332), + [sym_list_splat] = STATE(1590), + [sym_dictionary_splat] = STATE(1590), + [sym_global_statement] = STATE(1345), + [sym_nonlocal_statement] = STATE(1345), + [sym_exec_statement] = STATE(1345), + [sym_type_alias_statement] = STATE(1345), [sym_class_definition] = STATE(61), [sym_decorated_definition] = STATE(61), - [sym_decorator] = STATE(1127), - [sym_block] = STATE(580), - [sym_expression_list] = STATE(1522), - [sym_pattern] = STATE(1017), - [sym_tuple_pattern] = STATE(1001), - [sym_list_pattern] = STATE(1001), - [sym_list_splat_pattern] = STATE(1001), - [sym_expression] = STATE(1176), - [sym_primary_expression] = STATE(765), - [sym_not_operator] = STATE(1156), - [sym_boolean_operator] = STATE(1156), - [sym_binary_operator] = STATE(920), - [sym_unary_operator] = STATE(920), - [sym_comparison_operator] = STATE(1156), - [sym_lambda] = STATE(1156), - [sym_assignment] = STATE(1522), - [sym_augmented_assignment] = STATE(1522), - [sym_pattern_list] = STATE(1026), - [sym_yield] = STATE(1522), - [sym_attribute] = STATE(582), - [sym_subscript] = STATE(582), - [sym_call] = STATE(920), - [sym_list] = STATE(920), - [sym_set] = STATE(920), - [sym_tuple] = STATE(920), - [sym_dictionary] = STATE(920), - [sym_list_comprehension] = STATE(920), - [sym_dictionary_comprehension] = STATE(920), - [sym_set_comprehension] = STATE(920), - [sym_generator_expression] = STATE(920), - [sym_parenthesized_expression] = STATE(920), - [sym_conditional_expression] = STATE(1156), - [sym_concatenated_string] = STATE(920), - [sym_string] = STATE(775), - [sym_concatenated_template_string] = STATE(920), - [sym_template_string] = STATE(769), - [sym_await] = STATE(920), + [sym_decorator] = STATE(1146), + [sym_block] = STATE(582), + [sym_expression_list] = STATE(1545), + [sym_pattern] = STATE(1020), + [sym_tuple_pattern] = STATE(1005), + [sym_list_pattern] = STATE(1005), + [sym_list_splat_pattern] = STATE(1005), + [sym_expression] = STATE(1191), + [sym_primary_expression] = STATE(773), + [sym_not_operator] = STATE(1126), + [sym_boolean_operator] = STATE(1126), + [sym_binary_operator] = STATE(950), + [sym_unary_operator] = STATE(950), + [sym_comparison_operator] = STATE(1126), + [sym_lambda] = STATE(1126), + [sym_assignment] = STATE(1545), + [sym_augmented_assignment] = STATE(1545), + [sym_pattern_list] = STATE(1030), + [sym_yield] = STATE(1545), + [sym_attribute] = STATE(614), + [sym_subscript] = STATE(614), + [sym_call] = STATE(950), + [sym_list] = STATE(950), + [sym_set] = STATE(950), + [sym_tuple] = STATE(950), + [sym_dictionary] = STATE(950), + [sym_list_comprehension] = STATE(950), + [sym_dictionary_comprehension] = STATE(950), + [sym_set_comprehension] = STATE(950), + [sym_generator_expression] = STATE(950), + [sym_parenthesized_expression] = STATE(950), + [sym_conditional_expression] = STATE(1126), + [sym_concatenated_string] = STATE(950), + [sym_string] = STATE(779), + [sym_concatenated_template_string] = STATE(950), + [sym_template_string] = STATE(772), + [sym_await] = STATE(950), [aux_sym_module_repeat1] = STATE(61), - [aux_sym_decorated_definition_repeat1] = STATE(1127), + [aux_sym_decorated_definition_repeat1] = STATE(1146), [sym_identifier] = ACTIONS(7), [anon_sym_lazy] = ACTIONS(9), [anon_sym_import] = ACTIONS(11), @@ -9723,19 +9765,19 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [STATE(13)] = { [sym__statement] = STATE(61), [sym__simple_statements] = STATE(61), - [sym_import_statement] = STATE(1332), - [sym_future_import_statement] = STATE(1332), - [sym_import_from_statement] = STATE(1332), - [sym_print_statement] = STATE(1332), - [sym_assert_statement] = STATE(1332), - [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1156), - [sym_return_statement] = STATE(1332), - [sym_delete_statement] = STATE(1332), - [sym_raise_statement] = STATE(1332), - [sym_pass_statement] = STATE(1332), - [sym_break_statement] = STATE(1332), - [sym_continue_statement] = STATE(1332), + [sym_import_statement] = STATE(1345), + [sym_future_import_statement] = STATE(1345), + [sym_import_from_statement] = STATE(1345), + [sym_print_statement] = STATE(1345), + [sym_assert_statement] = STATE(1345), + [sym_expression_statement] = STATE(1345), + [sym_named_expression] = STATE(1126), + [sym_return_statement] = STATE(1345), + [sym_delete_statement] = STATE(1345), + [sym_raise_statement] = STATE(1345), + [sym_pass_statement] = STATE(1345), + [sym_break_statement] = STATE(1345), + [sym_continue_statement] = STATE(1345), [sym_if_statement] = STATE(61), [sym_for_statement] = STATE(61), [sym_while_statement] = STATE(61), @@ -9743,53 +9785,53 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_with_statement] = STATE(61), [sym_match_statement] = STATE(61), [sym_function_definition] = STATE(61), - [sym_list_splat] = STATE(1520), - [sym_dictionary_splat] = STATE(1520), - [sym_global_statement] = STATE(1332), - [sym_nonlocal_statement] = STATE(1332), - [sym_exec_statement] = STATE(1332), - [sym_type_alias_statement] = STATE(1332), + [sym_list_splat] = STATE(1590), + [sym_dictionary_splat] = STATE(1590), + [sym_global_statement] = STATE(1345), + [sym_nonlocal_statement] = STATE(1345), + [sym_exec_statement] = STATE(1345), + [sym_type_alias_statement] = STATE(1345), [sym_class_definition] = STATE(61), [sym_decorated_definition] = STATE(61), - [sym_decorator] = STATE(1127), - [sym_block] = STATE(473), - [sym_expression_list] = STATE(1522), - [sym_pattern] = STATE(1017), - [sym_tuple_pattern] = STATE(1001), - [sym_list_pattern] = STATE(1001), - [sym_list_splat_pattern] = STATE(1001), - [sym_expression] = STATE(1176), - [sym_primary_expression] = STATE(765), - [sym_not_operator] = STATE(1156), - [sym_boolean_operator] = STATE(1156), - [sym_binary_operator] = STATE(920), - [sym_unary_operator] = STATE(920), - [sym_comparison_operator] = STATE(1156), - [sym_lambda] = STATE(1156), - [sym_assignment] = STATE(1522), - [sym_augmented_assignment] = STATE(1522), - [sym_pattern_list] = STATE(1026), - [sym_yield] = STATE(1522), - [sym_attribute] = STATE(582), - [sym_subscript] = STATE(582), - [sym_call] = STATE(920), - [sym_list] = STATE(920), - [sym_set] = STATE(920), - [sym_tuple] = STATE(920), - [sym_dictionary] = STATE(920), - [sym_list_comprehension] = STATE(920), - [sym_dictionary_comprehension] = STATE(920), - [sym_set_comprehension] = STATE(920), - [sym_generator_expression] = STATE(920), - [sym_parenthesized_expression] = STATE(920), - [sym_conditional_expression] = STATE(1156), - [sym_concatenated_string] = STATE(920), - [sym_string] = STATE(775), - [sym_concatenated_template_string] = STATE(920), - [sym_template_string] = STATE(769), - [sym_await] = STATE(920), + [sym_decorator] = STATE(1146), + [sym_block] = STATE(490), + [sym_expression_list] = STATE(1545), + [sym_pattern] = STATE(1020), + [sym_tuple_pattern] = STATE(1005), + [sym_list_pattern] = STATE(1005), + [sym_list_splat_pattern] = STATE(1005), + [sym_expression] = STATE(1191), + [sym_primary_expression] = STATE(773), + [sym_not_operator] = STATE(1126), + [sym_boolean_operator] = STATE(1126), + [sym_binary_operator] = STATE(950), + [sym_unary_operator] = STATE(950), + [sym_comparison_operator] = STATE(1126), + [sym_lambda] = STATE(1126), + [sym_assignment] = STATE(1545), + [sym_augmented_assignment] = STATE(1545), + [sym_pattern_list] = STATE(1030), + [sym_yield] = STATE(1545), + [sym_attribute] = STATE(614), + [sym_subscript] = STATE(614), + [sym_call] = STATE(950), + [sym_list] = STATE(950), + [sym_set] = STATE(950), + [sym_tuple] = STATE(950), + [sym_dictionary] = STATE(950), + [sym_list_comprehension] = STATE(950), + [sym_dictionary_comprehension] = STATE(950), + [sym_set_comprehension] = STATE(950), + [sym_generator_expression] = STATE(950), + [sym_parenthesized_expression] = STATE(950), + [sym_conditional_expression] = STATE(1126), + [sym_concatenated_string] = STATE(950), + [sym_string] = STATE(779), + [sym_concatenated_template_string] = STATE(950), + [sym_template_string] = STATE(772), + [sym_await] = STATE(950), [aux_sym_module_repeat1] = STATE(61), - [aux_sym_decorated_definition_repeat1] = STATE(1127), + [aux_sym_decorated_definition_repeat1] = STATE(1146), [sym_identifier] = ACTIONS(7), [anon_sym_lazy] = ACTIONS(9), [anon_sym_import] = ACTIONS(11), @@ -9842,19 +9884,19 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [STATE(14)] = { [sym__statement] = STATE(61), [sym__simple_statements] = STATE(61), - [sym_import_statement] = STATE(1332), - [sym_future_import_statement] = STATE(1332), - [sym_import_from_statement] = STATE(1332), - [sym_print_statement] = STATE(1332), - [sym_assert_statement] = STATE(1332), - [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1156), - [sym_return_statement] = STATE(1332), - [sym_delete_statement] = STATE(1332), - [sym_raise_statement] = STATE(1332), - [sym_pass_statement] = STATE(1332), - [sym_break_statement] = STATE(1332), - [sym_continue_statement] = STATE(1332), + [sym_import_statement] = STATE(1345), + [sym_future_import_statement] = STATE(1345), + [sym_import_from_statement] = STATE(1345), + [sym_print_statement] = STATE(1345), + [sym_assert_statement] = STATE(1345), + [sym_expression_statement] = STATE(1345), + [sym_named_expression] = STATE(1126), + [sym_return_statement] = STATE(1345), + [sym_delete_statement] = STATE(1345), + [sym_raise_statement] = STATE(1345), + [sym_pass_statement] = STATE(1345), + [sym_break_statement] = STATE(1345), + [sym_continue_statement] = STATE(1345), [sym_if_statement] = STATE(61), [sym_for_statement] = STATE(61), [sym_while_statement] = STATE(61), @@ -9862,53 +9904,53 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_with_statement] = STATE(61), [sym_match_statement] = STATE(61), [sym_function_definition] = STATE(61), - [sym_list_splat] = STATE(1520), - [sym_dictionary_splat] = STATE(1520), - [sym_global_statement] = STATE(1332), - [sym_nonlocal_statement] = STATE(1332), - [sym_exec_statement] = STATE(1332), - [sym_type_alias_statement] = STATE(1332), + [sym_list_splat] = STATE(1590), + [sym_dictionary_splat] = STATE(1590), + [sym_global_statement] = STATE(1345), + [sym_nonlocal_statement] = STATE(1345), + [sym_exec_statement] = STATE(1345), + [sym_type_alias_statement] = STATE(1345), [sym_class_definition] = STATE(61), [sym_decorated_definition] = STATE(61), - [sym_decorator] = STATE(1127), - [sym_block] = STATE(448), - [sym_expression_list] = STATE(1522), - [sym_pattern] = STATE(1017), - [sym_tuple_pattern] = STATE(1001), - [sym_list_pattern] = STATE(1001), - [sym_list_splat_pattern] = STATE(1001), - [sym_expression] = STATE(1176), - [sym_primary_expression] = STATE(765), - [sym_not_operator] = STATE(1156), - [sym_boolean_operator] = STATE(1156), - [sym_binary_operator] = STATE(920), - [sym_unary_operator] = STATE(920), - [sym_comparison_operator] = STATE(1156), - [sym_lambda] = STATE(1156), - [sym_assignment] = STATE(1522), - [sym_augmented_assignment] = STATE(1522), - [sym_pattern_list] = STATE(1026), - [sym_yield] = STATE(1522), - [sym_attribute] = STATE(582), - [sym_subscript] = STATE(582), - [sym_call] = STATE(920), - [sym_list] = STATE(920), - [sym_set] = STATE(920), - [sym_tuple] = STATE(920), - [sym_dictionary] = STATE(920), - [sym_list_comprehension] = STATE(920), - [sym_dictionary_comprehension] = STATE(920), - [sym_set_comprehension] = STATE(920), - [sym_generator_expression] = STATE(920), - [sym_parenthesized_expression] = STATE(920), - [sym_conditional_expression] = STATE(1156), - [sym_concatenated_string] = STATE(920), - [sym_string] = STATE(775), - [sym_concatenated_template_string] = STATE(920), - [sym_template_string] = STATE(769), - [sym_await] = STATE(920), + [sym_decorator] = STATE(1146), + [sym_block] = STATE(447), + [sym_expression_list] = STATE(1545), + [sym_pattern] = STATE(1020), + [sym_tuple_pattern] = STATE(1005), + [sym_list_pattern] = STATE(1005), + [sym_list_splat_pattern] = STATE(1005), + [sym_expression] = STATE(1191), + [sym_primary_expression] = STATE(773), + [sym_not_operator] = STATE(1126), + [sym_boolean_operator] = STATE(1126), + [sym_binary_operator] = STATE(950), + [sym_unary_operator] = STATE(950), + [sym_comparison_operator] = STATE(1126), + [sym_lambda] = STATE(1126), + [sym_assignment] = STATE(1545), + [sym_augmented_assignment] = STATE(1545), + [sym_pattern_list] = STATE(1030), + [sym_yield] = STATE(1545), + [sym_attribute] = STATE(614), + [sym_subscript] = STATE(614), + [sym_call] = STATE(950), + [sym_list] = STATE(950), + [sym_set] = STATE(950), + [sym_tuple] = STATE(950), + [sym_dictionary] = STATE(950), + [sym_list_comprehension] = STATE(950), + [sym_dictionary_comprehension] = STATE(950), + [sym_set_comprehension] = STATE(950), + [sym_generator_expression] = STATE(950), + [sym_parenthesized_expression] = STATE(950), + [sym_conditional_expression] = STATE(1126), + [sym_concatenated_string] = STATE(950), + [sym_string] = STATE(779), + [sym_concatenated_template_string] = STATE(950), + [sym_template_string] = STATE(772), + [sym_await] = STATE(950), [aux_sym_module_repeat1] = STATE(61), - [aux_sym_decorated_definition_repeat1] = STATE(1127), + [aux_sym_decorated_definition_repeat1] = STATE(1146), [sym_identifier] = ACTIONS(7), [anon_sym_lazy] = ACTIONS(9), [anon_sym_import] = ACTIONS(11), @@ -9961,19 +10003,19 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [STATE(15)] = { [sym__statement] = STATE(61), [sym__simple_statements] = STATE(61), - [sym_import_statement] = STATE(1332), - [sym_future_import_statement] = STATE(1332), - [sym_import_from_statement] = STATE(1332), - [sym_print_statement] = STATE(1332), - [sym_assert_statement] = STATE(1332), - [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1156), - [sym_return_statement] = STATE(1332), - [sym_delete_statement] = STATE(1332), - [sym_raise_statement] = STATE(1332), - [sym_pass_statement] = STATE(1332), - [sym_break_statement] = STATE(1332), - [sym_continue_statement] = STATE(1332), + [sym_import_statement] = STATE(1345), + [sym_future_import_statement] = STATE(1345), + [sym_import_from_statement] = STATE(1345), + [sym_print_statement] = STATE(1345), + [sym_assert_statement] = STATE(1345), + [sym_expression_statement] = STATE(1345), + [sym_named_expression] = STATE(1126), + [sym_return_statement] = STATE(1345), + [sym_delete_statement] = STATE(1345), + [sym_raise_statement] = STATE(1345), + [sym_pass_statement] = STATE(1345), + [sym_break_statement] = STATE(1345), + [sym_continue_statement] = STATE(1345), [sym_if_statement] = STATE(61), [sym_for_statement] = STATE(61), [sym_while_statement] = STATE(61), @@ -9981,53 +10023,53 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_with_statement] = STATE(61), [sym_match_statement] = STATE(61), [sym_function_definition] = STATE(61), - [sym_list_splat] = STATE(1520), - [sym_dictionary_splat] = STATE(1520), - [sym_global_statement] = STATE(1332), - [sym_nonlocal_statement] = STATE(1332), - [sym_exec_statement] = STATE(1332), - [sym_type_alias_statement] = STATE(1332), + [sym_list_splat] = STATE(1590), + [sym_dictionary_splat] = STATE(1590), + [sym_global_statement] = STATE(1345), + [sym_nonlocal_statement] = STATE(1345), + [sym_exec_statement] = STATE(1345), + [sym_type_alias_statement] = STATE(1345), [sym_class_definition] = STATE(61), [sym_decorated_definition] = STATE(61), - [sym_decorator] = STATE(1127), - [sym_block] = STATE(586), - [sym_expression_list] = STATE(1522), - [sym_pattern] = STATE(1017), - [sym_tuple_pattern] = STATE(1001), - [sym_list_pattern] = STATE(1001), - [sym_list_splat_pattern] = STATE(1001), - [sym_expression] = STATE(1176), - [sym_primary_expression] = STATE(765), - [sym_not_operator] = STATE(1156), - [sym_boolean_operator] = STATE(1156), - [sym_binary_operator] = STATE(920), - [sym_unary_operator] = STATE(920), - [sym_comparison_operator] = STATE(1156), - [sym_lambda] = STATE(1156), - [sym_assignment] = STATE(1522), - [sym_augmented_assignment] = STATE(1522), - [sym_pattern_list] = STATE(1026), - [sym_yield] = STATE(1522), - [sym_attribute] = STATE(582), - [sym_subscript] = STATE(582), - [sym_call] = STATE(920), - [sym_list] = STATE(920), - [sym_set] = STATE(920), - [sym_tuple] = STATE(920), - [sym_dictionary] = STATE(920), - [sym_list_comprehension] = STATE(920), - [sym_dictionary_comprehension] = STATE(920), - [sym_set_comprehension] = STATE(920), - [sym_generator_expression] = STATE(920), - [sym_parenthesized_expression] = STATE(920), - [sym_conditional_expression] = STATE(1156), - [sym_concatenated_string] = STATE(920), - [sym_string] = STATE(775), - [sym_concatenated_template_string] = STATE(920), - [sym_template_string] = STATE(769), - [sym_await] = STATE(920), + [sym_decorator] = STATE(1146), + [sym_block] = STATE(609), + [sym_expression_list] = STATE(1545), + [sym_pattern] = STATE(1020), + [sym_tuple_pattern] = STATE(1005), + [sym_list_pattern] = STATE(1005), + [sym_list_splat_pattern] = STATE(1005), + [sym_expression] = STATE(1191), + [sym_primary_expression] = STATE(773), + [sym_not_operator] = STATE(1126), + [sym_boolean_operator] = STATE(1126), + [sym_binary_operator] = STATE(950), + [sym_unary_operator] = STATE(950), + [sym_comparison_operator] = STATE(1126), + [sym_lambda] = STATE(1126), + [sym_assignment] = STATE(1545), + [sym_augmented_assignment] = STATE(1545), + [sym_pattern_list] = STATE(1030), + [sym_yield] = STATE(1545), + [sym_attribute] = STATE(614), + [sym_subscript] = STATE(614), + [sym_call] = STATE(950), + [sym_list] = STATE(950), + [sym_set] = STATE(950), + [sym_tuple] = STATE(950), + [sym_dictionary] = STATE(950), + [sym_list_comprehension] = STATE(950), + [sym_dictionary_comprehension] = STATE(950), + [sym_set_comprehension] = STATE(950), + [sym_generator_expression] = STATE(950), + [sym_parenthesized_expression] = STATE(950), + [sym_conditional_expression] = STATE(1126), + [sym_concatenated_string] = STATE(950), + [sym_string] = STATE(779), + [sym_concatenated_template_string] = STATE(950), + [sym_template_string] = STATE(772), + [sym_await] = STATE(950), [aux_sym_module_repeat1] = STATE(61), - [aux_sym_decorated_definition_repeat1] = STATE(1127), + [aux_sym_decorated_definition_repeat1] = STATE(1146), [sym_identifier] = ACTIONS(7), [anon_sym_lazy] = ACTIONS(9), [anon_sym_import] = ACTIONS(11), @@ -10080,19 +10122,19 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [STATE(16)] = { [sym__statement] = STATE(61), [sym__simple_statements] = STATE(61), - [sym_import_statement] = STATE(1332), - [sym_future_import_statement] = STATE(1332), - [sym_import_from_statement] = STATE(1332), - [sym_print_statement] = STATE(1332), - [sym_assert_statement] = STATE(1332), - [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1156), - [sym_return_statement] = STATE(1332), - [sym_delete_statement] = STATE(1332), - [sym_raise_statement] = STATE(1332), - [sym_pass_statement] = STATE(1332), - [sym_break_statement] = STATE(1332), - [sym_continue_statement] = STATE(1332), + [sym_import_statement] = STATE(1345), + [sym_future_import_statement] = STATE(1345), + [sym_import_from_statement] = STATE(1345), + [sym_print_statement] = STATE(1345), + [sym_assert_statement] = STATE(1345), + [sym_expression_statement] = STATE(1345), + [sym_named_expression] = STATE(1126), + [sym_return_statement] = STATE(1345), + [sym_delete_statement] = STATE(1345), + [sym_raise_statement] = STATE(1345), + [sym_pass_statement] = STATE(1345), + [sym_break_statement] = STATE(1345), + [sym_continue_statement] = STATE(1345), [sym_if_statement] = STATE(61), [sym_for_statement] = STATE(61), [sym_while_statement] = STATE(61), @@ -10100,53 +10142,53 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_with_statement] = STATE(61), [sym_match_statement] = STATE(61), [sym_function_definition] = STATE(61), - [sym_list_splat] = STATE(1520), - [sym_dictionary_splat] = STATE(1520), - [sym_global_statement] = STATE(1332), - [sym_nonlocal_statement] = STATE(1332), - [sym_exec_statement] = STATE(1332), - [sym_type_alias_statement] = STATE(1332), + [sym_list_splat] = STATE(1590), + [sym_dictionary_splat] = STATE(1590), + [sym_global_statement] = STATE(1345), + [sym_nonlocal_statement] = STATE(1345), + [sym_exec_statement] = STATE(1345), + [sym_type_alias_statement] = STATE(1345), [sym_class_definition] = STATE(61), [sym_decorated_definition] = STATE(61), - [sym_decorator] = STATE(1127), - [sym_block] = STATE(591), - [sym_expression_list] = STATE(1522), - [sym_pattern] = STATE(1017), - [sym_tuple_pattern] = STATE(1001), - [sym_list_pattern] = STATE(1001), - [sym_list_splat_pattern] = STATE(1001), - [sym_expression] = STATE(1176), - [sym_primary_expression] = STATE(765), - [sym_not_operator] = STATE(1156), - [sym_boolean_operator] = STATE(1156), - [sym_binary_operator] = STATE(920), - [sym_unary_operator] = STATE(920), - [sym_comparison_operator] = STATE(1156), - [sym_lambda] = STATE(1156), - [sym_assignment] = STATE(1522), - [sym_augmented_assignment] = STATE(1522), - [sym_pattern_list] = STATE(1026), - [sym_yield] = STATE(1522), - [sym_attribute] = STATE(582), - [sym_subscript] = STATE(582), - [sym_call] = STATE(920), - [sym_list] = STATE(920), - [sym_set] = STATE(920), - [sym_tuple] = STATE(920), - [sym_dictionary] = STATE(920), - [sym_list_comprehension] = STATE(920), - [sym_dictionary_comprehension] = STATE(920), - [sym_set_comprehension] = STATE(920), - [sym_generator_expression] = STATE(920), - [sym_parenthesized_expression] = STATE(920), - [sym_conditional_expression] = STATE(1156), - [sym_concatenated_string] = STATE(920), - [sym_string] = STATE(775), - [sym_concatenated_template_string] = STATE(920), - [sym_template_string] = STATE(769), - [sym_await] = STATE(920), + [sym_decorator] = STATE(1146), + [sym_block] = STATE(601), + [sym_expression_list] = STATE(1545), + [sym_pattern] = STATE(1020), + [sym_tuple_pattern] = STATE(1005), + [sym_list_pattern] = STATE(1005), + [sym_list_splat_pattern] = STATE(1005), + [sym_expression] = STATE(1191), + [sym_primary_expression] = STATE(773), + [sym_not_operator] = STATE(1126), + [sym_boolean_operator] = STATE(1126), + [sym_binary_operator] = STATE(950), + [sym_unary_operator] = STATE(950), + [sym_comparison_operator] = STATE(1126), + [sym_lambda] = STATE(1126), + [sym_assignment] = STATE(1545), + [sym_augmented_assignment] = STATE(1545), + [sym_pattern_list] = STATE(1030), + [sym_yield] = STATE(1545), + [sym_attribute] = STATE(614), + [sym_subscript] = STATE(614), + [sym_call] = STATE(950), + [sym_list] = STATE(950), + [sym_set] = STATE(950), + [sym_tuple] = STATE(950), + [sym_dictionary] = STATE(950), + [sym_list_comprehension] = STATE(950), + [sym_dictionary_comprehension] = STATE(950), + [sym_set_comprehension] = STATE(950), + [sym_generator_expression] = STATE(950), + [sym_parenthesized_expression] = STATE(950), + [sym_conditional_expression] = STATE(1126), + [sym_concatenated_string] = STATE(950), + [sym_string] = STATE(779), + [sym_concatenated_template_string] = STATE(950), + [sym_template_string] = STATE(772), + [sym_await] = STATE(950), [aux_sym_module_repeat1] = STATE(61), - [aux_sym_decorated_definition_repeat1] = STATE(1127), + [aux_sym_decorated_definition_repeat1] = STATE(1146), [sym_identifier] = ACTIONS(7), [anon_sym_lazy] = ACTIONS(9), [anon_sym_import] = ACTIONS(11), @@ -10199,19 +10241,19 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [STATE(17)] = { [sym__statement] = STATE(61), [sym__simple_statements] = STATE(61), - [sym_import_statement] = STATE(1332), - [sym_future_import_statement] = STATE(1332), - [sym_import_from_statement] = STATE(1332), - [sym_print_statement] = STATE(1332), - [sym_assert_statement] = STATE(1332), - [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1156), - [sym_return_statement] = STATE(1332), - [sym_delete_statement] = STATE(1332), - [sym_raise_statement] = STATE(1332), - [sym_pass_statement] = STATE(1332), - [sym_break_statement] = STATE(1332), - [sym_continue_statement] = STATE(1332), + [sym_import_statement] = STATE(1345), + [sym_future_import_statement] = STATE(1345), + [sym_import_from_statement] = STATE(1345), + [sym_print_statement] = STATE(1345), + [sym_assert_statement] = STATE(1345), + [sym_expression_statement] = STATE(1345), + [sym_named_expression] = STATE(1126), + [sym_return_statement] = STATE(1345), + [sym_delete_statement] = STATE(1345), + [sym_raise_statement] = STATE(1345), + [sym_pass_statement] = STATE(1345), + [sym_break_statement] = STATE(1345), + [sym_continue_statement] = STATE(1345), [sym_if_statement] = STATE(61), [sym_for_statement] = STATE(61), [sym_while_statement] = STATE(61), @@ -10219,53 +10261,53 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_with_statement] = STATE(61), [sym_match_statement] = STATE(61), [sym_function_definition] = STATE(61), - [sym_list_splat] = STATE(1520), - [sym_dictionary_splat] = STATE(1520), - [sym_global_statement] = STATE(1332), - [sym_nonlocal_statement] = STATE(1332), - [sym_exec_statement] = STATE(1332), - [sym_type_alias_statement] = STATE(1332), + [sym_list_splat] = STATE(1590), + [sym_dictionary_splat] = STATE(1590), + [sym_global_statement] = STATE(1345), + [sym_nonlocal_statement] = STATE(1345), + [sym_exec_statement] = STATE(1345), + [sym_type_alias_statement] = STATE(1345), [sym_class_definition] = STATE(61), [sym_decorated_definition] = STATE(61), - [sym_decorator] = STATE(1127), - [sym_block] = STATE(592), - [sym_expression_list] = STATE(1522), - [sym_pattern] = STATE(1017), - [sym_tuple_pattern] = STATE(1001), - [sym_list_pattern] = STATE(1001), - [sym_list_splat_pattern] = STATE(1001), - [sym_expression] = STATE(1176), - [sym_primary_expression] = STATE(765), - [sym_not_operator] = STATE(1156), - [sym_boolean_operator] = STATE(1156), - [sym_binary_operator] = STATE(920), - [sym_unary_operator] = STATE(920), - [sym_comparison_operator] = STATE(1156), - [sym_lambda] = STATE(1156), - [sym_assignment] = STATE(1522), - [sym_augmented_assignment] = STATE(1522), - [sym_pattern_list] = STATE(1026), - [sym_yield] = STATE(1522), - [sym_attribute] = STATE(582), - [sym_subscript] = STATE(582), - [sym_call] = STATE(920), - [sym_list] = STATE(920), - [sym_set] = STATE(920), - [sym_tuple] = STATE(920), - [sym_dictionary] = STATE(920), - [sym_list_comprehension] = STATE(920), - [sym_dictionary_comprehension] = STATE(920), - [sym_set_comprehension] = STATE(920), - [sym_generator_expression] = STATE(920), - [sym_parenthesized_expression] = STATE(920), - [sym_conditional_expression] = STATE(1156), - [sym_concatenated_string] = STATE(920), - [sym_string] = STATE(775), - [sym_concatenated_template_string] = STATE(920), - [sym_template_string] = STATE(769), - [sym_await] = STATE(920), + [sym_decorator] = STATE(1146), + [sym_block] = STATE(612), + [sym_expression_list] = STATE(1545), + [sym_pattern] = STATE(1020), + [sym_tuple_pattern] = STATE(1005), + [sym_list_pattern] = STATE(1005), + [sym_list_splat_pattern] = STATE(1005), + [sym_expression] = STATE(1191), + [sym_primary_expression] = STATE(773), + [sym_not_operator] = STATE(1126), + [sym_boolean_operator] = STATE(1126), + [sym_binary_operator] = STATE(950), + [sym_unary_operator] = STATE(950), + [sym_comparison_operator] = STATE(1126), + [sym_lambda] = STATE(1126), + [sym_assignment] = STATE(1545), + [sym_augmented_assignment] = STATE(1545), + [sym_pattern_list] = STATE(1030), + [sym_yield] = STATE(1545), + [sym_attribute] = STATE(614), + [sym_subscript] = STATE(614), + [sym_call] = STATE(950), + [sym_list] = STATE(950), + [sym_set] = STATE(950), + [sym_tuple] = STATE(950), + [sym_dictionary] = STATE(950), + [sym_list_comprehension] = STATE(950), + [sym_dictionary_comprehension] = STATE(950), + [sym_set_comprehension] = STATE(950), + [sym_generator_expression] = STATE(950), + [sym_parenthesized_expression] = STATE(950), + [sym_conditional_expression] = STATE(1126), + [sym_concatenated_string] = STATE(950), + [sym_string] = STATE(779), + [sym_concatenated_template_string] = STATE(950), + [sym_template_string] = STATE(772), + [sym_await] = STATE(950), [aux_sym_module_repeat1] = STATE(61), - [aux_sym_decorated_definition_repeat1] = STATE(1127), + [aux_sym_decorated_definition_repeat1] = STATE(1146), [sym_identifier] = ACTIONS(7), [anon_sym_lazy] = ACTIONS(9), [anon_sym_import] = ACTIONS(11), @@ -10318,19 +10360,19 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [STATE(18)] = { [sym__statement] = STATE(61), [sym__simple_statements] = STATE(61), - [sym_import_statement] = STATE(1332), - [sym_future_import_statement] = STATE(1332), - [sym_import_from_statement] = STATE(1332), - [sym_print_statement] = STATE(1332), - [sym_assert_statement] = STATE(1332), - [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1156), - [sym_return_statement] = STATE(1332), - [sym_delete_statement] = STATE(1332), - [sym_raise_statement] = STATE(1332), - [sym_pass_statement] = STATE(1332), - [sym_break_statement] = STATE(1332), - [sym_continue_statement] = STATE(1332), + [sym_import_statement] = STATE(1345), + [sym_future_import_statement] = STATE(1345), + [sym_import_from_statement] = STATE(1345), + [sym_print_statement] = STATE(1345), + [sym_assert_statement] = STATE(1345), + [sym_expression_statement] = STATE(1345), + [sym_named_expression] = STATE(1126), + [sym_return_statement] = STATE(1345), + [sym_delete_statement] = STATE(1345), + [sym_raise_statement] = STATE(1345), + [sym_pass_statement] = STATE(1345), + [sym_break_statement] = STATE(1345), + [sym_continue_statement] = STATE(1345), [sym_if_statement] = STATE(61), [sym_for_statement] = STATE(61), [sym_while_statement] = STATE(61), @@ -10338,53 +10380,53 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_with_statement] = STATE(61), [sym_match_statement] = STATE(61), [sym_function_definition] = STATE(61), - [sym_list_splat] = STATE(1520), - [sym_dictionary_splat] = STATE(1520), - [sym_global_statement] = STATE(1332), - [sym_nonlocal_statement] = STATE(1332), - [sym_exec_statement] = STATE(1332), - [sym_type_alias_statement] = STATE(1332), + [sym_list_splat] = STATE(1590), + [sym_dictionary_splat] = STATE(1590), + [sym_global_statement] = STATE(1345), + [sym_nonlocal_statement] = STATE(1345), + [sym_exec_statement] = STATE(1345), + [sym_type_alias_statement] = STATE(1345), [sym_class_definition] = STATE(61), [sym_decorated_definition] = STATE(61), - [sym_decorator] = STATE(1127), - [sym_block] = STATE(507), - [sym_expression_list] = STATE(1522), - [sym_pattern] = STATE(1017), - [sym_tuple_pattern] = STATE(1001), - [sym_list_pattern] = STATE(1001), - [sym_list_splat_pattern] = STATE(1001), - [sym_expression] = STATE(1176), - [sym_primary_expression] = STATE(765), - [sym_not_operator] = STATE(1156), - [sym_boolean_operator] = STATE(1156), - [sym_binary_operator] = STATE(920), - [sym_unary_operator] = STATE(920), - [sym_comparison_operator] = STATE(1156), - [sym_lambda] = STATE(1156), - [sym_assignment] = STATE(1522), - [sym_augmented_assignment] = STATE(1522), - [sym_pattern_list] = STATE(1026), - [sym_yield] = STATE(1522), - [sym_attribute] = STATE(582), - [sym_subscript] = STATE(582), - [sym_call] = STATE(920), - [sym_list] = STATE(920), - [sym_set] = STATE(920), - [sym_tuple] = STATE(920), - [sym_dictionary] = STATE(920), - [sym_list_comprehension] = STATE(920), - [sym_dictionary_comprehension] = STATE(920), - [sym_set_comprehension] = STATE(920), - [sym_generator_expression] = STATE(920), - [sym_parenthesized_expression] = STATE(920), - [sym_conditional_expression] = STATE(1156), - [sym_concatenated_string] = STATE(920), - [sym_string] = STATE(775), - [sym_concatenated_template_string] = STATE(920), - [sym_template_string] = STATE(769), - [sym_await] = STATE(920), + [sym_decorator] = STATE(1146), + [sym_block] = STATE(512), + [sym_expression_list] = STATE(1545), + [sym_pattern] = STATE(1020), + [sym_tuple_pattern] = STATE(1005), + [sym_list_pattern] = STATE(1005), + [sym_list_splat_pattern] = STATE(1005), + [sym_expression] = STATE(1191), + [sym_primary_expression] = STATE(773), + [sym_not_operator] = STATE(1126), + [sym_boolean_operator] = STATE(1126), + [sym_binary_operator] = STATE(950), + [sym_unary_operator] = STATE(950), + [sym_comparison_operator] = STATE(1126), + [sym_lambda] = STATE(1126), + [sym_assignment] = STATE(1545), + [sym_augmented_assignment] = STATE(1545), + [sym_pattern_list] = STATE(1030), + [sym_yield] = STATE(1545), + [sym_attribute] = STATE(614), + [sym_subscript] = STATE(614), + [sym_call] = STATE(950), + [sym_list] = STATE(950), + [sym_set] = STATE(950), + [sym_tuple] = STATE(950), + [sym_dictionary] = STATE(950), + [sym_list_comprehension] = STATE(950), + [sym_dictionary_comprehension] = STATE(950), + [sym_set_comprehension] = STATE(950), + [sym_generator_expression] = STATE(950), + [sym_parenthesized_expression] = STATE(950), + [sym_conditional_expression] = STATE(1126), + [sym_concatenated_string] = STATE(950), + [sym_string] = STATE(779), + [sym_concatenated_template_string] = STATE(950), + [sym_template_string] = STATE(772), + [sym_await] = STATE(950), [aux_sym_module_repeat1] = STATE(61), - [aux_sym_decorated_definition_repeat1] = STATE(1127), + [aux_sym_decorated_definition_repeat1] = STATE(1146), [sym_identifier] = ACTIONS(7), [anon_sym_lazy] = ACTIONS(9), [anon_sym_import] = ACTIONS(11), @@ -10437,19 +10479,19 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [STATE(19)] = { [sym__statement] = STATE(61), [sym__simple_statements] = STATE(61), - [sym_import_statement] = STATE(1332), - [sym_future_import_statement] = STATE(1332), - [sym_import_from_statement] = STATE(1332), - [sym_print_statement] = STATE(1332), - [sym_assert_statement] = STATE(1332), - [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1156), - [sym_return_statement] = STATE(1332), - [sym_delete_statement] = STATE(1332), - [sym_raise_statement] = STATE(1332), - [sym_pass_statement] = STATE(1332), - [sym_break_statement] = STATE(1332), - [sym_continue_statement] = STATE(1332), + [sym_import_statement] = STATE(1345), + [sym_future_import_statement] = STATE(1345), + [sym_import_from_statement] = STATE(1345), + [sym_print_statement] = STATE(1345), + [sym_assert_statement] = STATE(1345), + [sym_expression_statement] = STATE(1345), + [sym_named_expression] = STATE(1126), + [sym_return_statement] = STATE(1345), + [sym_delete_statement] = STATE(1345), + [sym_raise_statement] = STATE(1345), + [sym_pass_statement] = STATE(1345), + [sym_break_statement] = STATE(1345), + [sym_continue_statement] = STATE(1345), [sym_if_statement] = STATE(61), [sym_for_statement] = STATE(61), [sym_while_statement] = STATE(61), @@ -10457,53 +10499,53 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_with_statement] = STATE(61), [sym_match_statement] = STATE(61), [sym_function_definition] = STATE(61), - [sym_list_splat] = STATE(1520), - [sym_dictionary_splat] = STATE(1520), - [sym_global_statement] = STATE(1332), - [sym_nonlocal_statement] = STATE(1332), - [sym_exec_statement] = STATE(1332), - [sym_type_alias_statement] = STATE(1332), + [sym_list_splat] = STATE(1590), + [sym_dictionary_splat] = STATE(1590), + [sym_global_statement] = STATE(1345), + [sym_nonlocal_statement] = STATE(1345), + [sym_exec_statement] = STATE(1345), + [sym_type_alias_statement] = STATE(1345), [sym_class_definition] = STATE(61), [sym_decorated_definition] = STATE(61), - [sym_decorator] = STATE(1127), - [sym_block] = STATE(462), - [sym_expression_list] = STATE(1522), - [sym_pattern] = STATE(1017), - [sym_tuple_pattern] = STATE(1001), - [sym_list_pattern] = STATE(1001), - [sym_list_splat_pattern] = STATE(1001), - [sym_expression] = STATE(1176), - [sym_primary_expression] = STATE(765), - [sym_not_operator] = STATE(1156), - [sym_boolean_operator] = STATE(1156), - [sym_binary_operator] = STATE(920), - [sym_unary_operator] = STATE(920), - [sym_comparison_operator] = STATE(1156), - [sym_lambda] = STATE(1156), - [sym_assignment] = STATE(1522), - [sym_augmented_assignment] = STATE(1522), - [sym_pattern_list] = STATE(1026), - [sym_yield] = STATE(1522), - [sym_attribute] = STATE(582), - [sym_subscript] = STATE(582), - [sym_call] = STATE(920), - [sym_list] = STATE(920), - [sym_set] = STATE(920), - [sym_tuple] = STATE(920), - [sym_dictionary] = STATE(920), - [sym_list_comprehension] = STATE(920), - [sym_dictionary_comprehension] = STATE(920), - [sym_set_comprehension] = STATE(920), - [sym_generator_expression] = STATE(920), - [sym_parenthesized_expression] = STATE(920), - [sym_conditional_expression] = STATE(1156), - [sym_concatenated_string] = STATE(920), - [sym_string] = STATE(775), - [sym_concatenated_template_string] = STATE(920), - [sym_template_string] = STATE(769), - [sym_await] = STATE(920), + [sym_decorator] = STATE(1146), + [sym_block] = STATE(468), + [sym_expression_list] = STATE(1545), + [sym_pattern] = STATE(1020), + [sym_tuple_pattern] = STATE(1005), + [sym_list_pattern] = STATE(1005), + [sym_list_splat_pattern] = STATE(1005), + [sym_expression] = STATE(1191), + [sym_primary_expression] = STATE(773), + [sym_not_operator] = STATE(1126), + [sym_boolean_operator] = STATE(1126), + [sym_binary_operator] = STATE(950), + [sym_unary_operator] = STATE(950), + [sym_comparison_operator] = STATE(1126), + [sym_lambda] = STATE(1126), + [sym_assignment] = STATE(1545), + [sym_augmented_assignment] = STATE(1545), + [sym_pattern_list] = STATE(1030), + [sym_yield] = STATE(1545), + [sym_attribute] = STATE(614), + [sym_subscript] = STATE(614), + [sym_call] = STATE(950), + [sym_list] = STATE(950), + [sym_set] = STATE(950), + [sym_tuple] = STATE(950), + [sym_dictionary] = STATE(950), + [sym_list_comprehension] = STATE(950), + [sym_dictionary_comprehension] = STATE(950), + [sym_set_comprehension] = STATE(950), + [sym_generator_expression] = STATE(950), + [sym_parenthesized_expression] = STATE(950), + [sym_conditional_expression] = STATE(1126), + [sym_concatenated_string] = STATE(950), + [sym_string] = STATE(779), + [sym_concatenated_template_string] = STATE(950), + [sym_template_string] = STATE(772), + [sym_await] = STATE(950), [aux_sym_module_repeat1] = STATE(61), - [aux_sym_decorated_definition_repeat1] = STATE(1127), + [aux_sym_decorated_definition_repeat1] = STATE(1146), [sym_identifier] = ACTIONS(7), [anon_sym_lazy] = ACTIONS(9), [anon_sym_import] = ACTIONS(11), @@ -10556,19 +10598,19 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [STATE(20)] = { [sym__statement] = STATE(61), [sym__simple_statements] = STATE(61), - [sym_import_statement] = STATE(1332), - [sym_future_import_statement] = STATE(1332), - [sym_import_from_statement] = STATE(1332), - [sym_print_statement] = STATE(1332), - [sym_assert_statement] = STATE(1332), - [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1156), - [sym_return_statement] = STATE(1332), - [sym_delete_statement] = STATE(1332), - [sym_raise_statement] = STATE(1332), - [sym_pass_statement] = STATE(1332), - [sym_break_statement] = STATE(1332), - [sym_continue_statement] = STATE(1332), + [sym_import_statement] = STATE(1345), + [sym_future_import_statement] = STATE(1345), + [sym_import_from_statement] = STATE(1345), + [sym_print_statement] = STATE(1345), + [sym_assert_statement] = STATE(1345), + [sym_expression_statement] = STATE(1345), + [sym_named_expression] = STATE(1126), + [sym_return_statement] = STATE(1345), + [sym_delete_statement] = STATE(1345), + [sym_raise_statement] = STATE(1345), + [sym_pass_statement] = STATE(1345), + [sym_break_statement] = STATE(1345), + [sym_continue_statement] = STATE(1345), [sym_if_statement] = STATE(61), [sym_for_statement] = STATE(61), [sym_while_statement] = STATE(61), @@ -10576,53 +10618,53 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_with_statement] = STATE(61), [sym_match_statement] = STATE(61), [sym_function_definition] = STATE(61), - [sym_list_splat] = STATE(1520), - [sym_dictionary_splat] = STATE(1520), - [sym_global_statement] = STATE(1332), - [sym_nonlocal_statement] = STATE(1332), - [sym_exec_statement] = STATE(1332), - [sym_type_alias_statement] = STATE(1332), + [sym_list_splat] = STATE(1590), + [sym_dictionary_splat] = STATE(1590), + [sym_global_statement] = STATE(1345), + [sym_nonlocal_statement] = STATE(1345), + [sym_exec_statement] = STATE(1345), + [sym_type_alias_statement] = STATE(1345), [sym_class_definition] = STATE(61), [sym_decorated_definition] = STATE(61), - [sym_decorator] = STATE(1127), - [sym_block] = STATE(595), - [sym_expression_list] = STATE(1522), - [sym_pattern] = STATE(1017), - [sym_tuple_pattern] = STATE(1001), - [sym_list_pattern] = STATE(1001), - [sym_list_splat_pattern] = STATE(1001), - [sym_expression] = STATE(1176), - [sym_primary_expression] = STATE(765), - [sym_not_operator] = STATE(1156), - [sym_boolean_operator] = STATE(1156), - [sym_binary_operator] = STATE(920), - [sym_unary_operator] = STATE(920), - [sym_comparison_operator] = STATE(1156), - [sym_lambda] = STATE(1156), - [sym_assignment] = STATE(1522), - [sym_augmented_assignment] = STATE(1522), - [sym_pattern_list] = STATE(1026), - [sym_yield] = STATE(1522), - [sym_attribute] = STATE(582), - [sym_subscript] = STATE(582), - [sym_call] = STATE(920), - [sym_list] = STATE(920), - [sym_set] = STATE(920), - [sym_tuple] = STATE(920), - [sym_dictionary] = STATE(920), - [sym_list_comprehension] = STATE(920), - [sym_dictionary_comprehension] = STATE(920), - [sym_set_comprehension] = STATE(920), - [sym_generator_expression] = STATE(920), - [sym_parenthesized_expression] = STATE(920), - [sym_conditional_expression] = STATE(1156), - [sym_concatenated_string] = STATE(920), - [sym_string] = STATE(775), - [sym_concatenated_template_string] = STATE(920), - [sym_template_string] = STATE(769), - [sym_await] = STATE(920), + [sym_decorator] = STATE(1146), + [sym_block] = STATE(542), + [sym_expression_list] = STATE(1545), + [sym_pattern] = STATE(1020), + [sym_tuple_pattern] = STATE(1005), + [sym_list_pattern] = STATE(1005), + [sym_list_splat_pattern] = STATE(1005), + [sym_expression] = STATE(1191), + [sym_primary_expression] = STATE(773), + [sym_not_operator] = STATE(1126), + [sym_boolean_operator] = STATE(1126), + [sym_binary_operator] = STATE(950), + [sym_unary_operator] = STATE(950), + [sym_comparison_operator] = STATE(1126), + [sym_lambda] = STATE(1126), + [sym_assignment] = STATE(1545), + [sym_augmented_assignment] = STATE(1545), + [sym_pattern_list] = STATE(1030), + [sym_yield] = STATE(1545), + [sym_attribute] = STATE(614), + [sym_subscript] = STATE(614), + [sym_call] = STATE(950), + [sym_list] = STATE(950), + [sym_set] = STATE(950), + [sym_tuple] = STATE(950), + [sym_dictionary] = STATE(950), + [sym_list_comprehension] = STATE(950), + [sym_dictionary_comprehension] = STATE(950), + [sym_set_comprehension] = STATE(950), + [sym_generator_expression] = STATE(950), + [sym_parenthesized_expression] = STATE(950), + [sym_conditional_expression] = STATE(1126), + [sym_concatenated_string] = STATE(950), + [sym_string] = STATE(779), + [sym_concatenated_template_string] = STATE(950), + [sym_template_string] = STATE(772), + [sym_await] = STATE(950), [aux_sym_module_repeat1] = STATE(61), - [aux_sym_decorated_definition_repeat1] = STATE(1127), + [aux_sym_decorated_definition_repeat1] = STATE(1146), [sym_identifier] = ACTIONS(7), [anon_sym_lazy] = ACTIONS(9), [anon_sym_import] = ACTIONS(11), @@ -10675,19 +10717,19 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [STATE(21)] = { [sym__statement] = STATE(61), [sym__simple_statements] = STATE(61), - [sym_import_statement] = STATE(1332), - [sym_future_import_statement] = STATE(1332), - [sym_import_from_statement] = STATE(1332), - [sym_print_statement] = STATE(1332), - [sym_assert_statement] = STATE(1332), - [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1156), - [sym_return_statement] = STATE(1332), - [sym_delete_statement] = STATE(1332), - [sym_raise_statement] = STATE(1332), - [sym_pass_statement] = STATE(1332), - [sym_break_statement] = STATE(1332), - [sym_continue_statement] = STATE(1332), + [sym_import_statement] = STATE(1345), + [sym_future_import_statement] = STATE(1345), + [sym_import_from_statement] = STATE(1345), + [sym_print_statement] = STATE(1345), + [sym_assert_statement] = STATE(1345), + [sym_expression_statement] = STATE(1345), + [sym_named_expression] = STATE(1126), + [sym_return_statement] = STATE(1345), + [sym_delete_statement] = STATE(1345), + [sym_raise_statement] = STATE(1345), + [sym_pass_statement] = STATE(1345), + [sym_break_statement] = STATE(1345), + [sym_continue_statement] = STATE(1345), [sym_if_statement] = STATE(61), [sym_for_statement] = STATE(61), [sym_while_statement] = STATE(61), @@ -10695,53 +10737,53 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_with_statement] = STATE(61), [sym_match_statement] = STATE(61), [sym_function_definition] = STATE(61), - [sym_list_splat] = STATE(1520), - [sym_dictionary_splat] = STATE(1520), - [sym_global_statement] = STATE(1332), - [sym_nonlocal_statement] = STATE(1332), - [sym_exec_statement] = STATE(1332), - [sym_type_alias_statement] = STATE(1332), + [sym_list_splat] = STATE(1590), + [sym_dictionary_splat] = STATE(1590), + [sym_global_statement] = STATE(1345), + [sym_nonlocal_statement] = STATE(1345), + [sym_exec_statement] = STATE(1345), + [sym_type_alias_statement] = STATE(1345), [sym_class_definition] = STATE(61), [sym_decorated_definition] = STATE(61), - [sym_decorator] = STATE(1127), - [sym_block] = STATE(445), - [sym_expression_list] = STATE(1522), - [sym_pattern] = STATE(1017), - [sym_tuple_pattern] = STATE(1001), - [sym_list_pattern] = STATE(1001), - [sym_list_splat_pattern] = STATE(1001), - [sym_expression] = STATE(1176), - [sym_primary_expression] = STATE(765), - [sym_not_operator] = STATE(1156), - [sym_boolean_operator] = STATE(1156), - [sym_binary_operator] = STATE(920), - [sym_unary_operator] = STATE(920), - [sym_comparison_operator] = STATE(1156), - [sym_lambda] = STATE(1156), - [sym_assignment] = STATE(1522), - [sym_augmented_assignment] = STATE(1522), - [sym_pattern_list] = STATE(1026), - [sym_yield] = STATE(1522), - [sym_attribute] = STATE(582), - [sym_subscript] = STATE(582), - [sym_call] = STATE(920), - [sym_list] = STATE(920), - [sym_set] = STATE(920), - [sym_tuple] = STATE(920), - [sym_dictionary] = STATE(920), - [sym_list_comprehension] = STATE(920), - [sym_dictionary_comprehension] = STATE(920), - [sym_set_comprehension] = STATE(920), - [sym_generator_expression] = STATE(920), - [sym_parenthesized_expression] = STATE(920), - [sym_conditional_expression] = STATE(1156), - [sym_concatenated_string] = STATE(920), - [sym_string] = STATE(775), - [sym_concatenated_template_string] = STATE(920), - [sym_template_string] = STATE(769), - [sym_await] = STATE(920), + [sym_decorator] = STATE(1146), + [sym_block] = STATE(455), + [sym_expression_list] = STATE(1545), + [sym_pattern] = STATE(1020), + [sym_tuple_pattern] = STATE(1005), + [sym_list_pattern] = STATE(1005), + [sym_list_splat_pattern] = STATE(1005), + [sym_expression] = STATE(1191), + [sym_primary_expression] = STATE(773), + [sym_not_operator] = STATE(1126), + [sym_boolean_operator] = STATE(1126), + [sym_binary_operator] = STATE(950), + [sym_unary_operator] = STATE(950), + [sym_comparison_operator] = STATE(1126), + [sym_lambda] = STATE(1126), + [sym_assignment] = STATE(1545), + [sym_augmented_assignment] = STATE(1545), + [sym_pattern_list] = STATE(1030), + [sym_yield] = STATE(1545), + [sym_attribute] = STATE(614), + [sym_subscript] = STATE(614), + [sym_call] = STATE(950), + [sym_list] = STATE(950), + [sym_set] = STATE(950), + [sym_tuple] = STATE(950), + [sym_dictionary] = STATE(950), + [sym_list_comprehension] = STATE(950), + [sym_dictionary_comprehension] = STATE(950), + [sym_set_comprehension] = STATE(950), + [sym_generator_expression] = STATE(950), + [sym_parenthesized_expression] = STATE(950), + [sym_conditional_expression] = STATE(1126), + [sym_concatenated_string] = STATE(950), + [sym_string] = STATE(779), + [sym_concatenated_template_string] = STATE(950), + [sym_template_string] = STATE(772), + [sym_await] = STATE(950), [aux_sym_module_repeat1] = STATE(61), - [aux_sym_decorated_definition_repeat1] = STATE(1127), + [aux_sym_decorated_definition_repeat1] = STATE(1146), [sym_identifier] = ACTIONS(7), [anon_sym_lazy] = ACTIONS(9), [anon_sym_import] = ACTIONS(11), @@ -10794,19 +10836,19 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [STATE(22)] = { [sym__statement] = STATE(61), [sym__simple_statements] = STATE(61), - [sym_import_statement] = STATE(1332), - [sym_future_import_statement] = STATE(1332), - [sym_import_from_statement] = STATE(1332), - [sym_print_statement] = STATE(1332), - [sym_assert_statement] = STATE(1332), - [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1156), - [sym_return_statement] = STATE(1332), - [sym_delete_statement] = STATE(1332), - [sym_raise_statement] = STATE(1332), - [sym_pass_statement] = STATE(1332), - [sym_break_statement] = STATE(1332), - [sym_continue_statement] = STATE(1332), + [sym_import_statement] = STATE(1345), + [sym_future_import_statement] = STATE(1345), + [sym_import_from_statement] = STATE(1345), + [sym_print_statement] = STATE(1345), + [sym_assert_statement] = STATE(1345), + [sym_expression_statement] = STATE(1345), + [sym_named_expression] = STATE(1126), + [sym_return_statement] = STATE(1345), + [sym_delete_statement] = STATE(1345), + [sym_raise_statement] = STATE(1345), + [sym_pass_statement] = STATE(1345), + [sym_break_statement] = STATE(1345), + [sym_continue_statement] = STATE(1345), [sym_if_statement] = STATE(61), [sym_for_statement] = STATE(61), [sym_while_statement] = STATE(61), @@ -10814,53 +10856,53 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_with_statement] = STATE(61), [sym_match_statement] = STATE(61), [sym_function_definition] = STATE(61), - [sym_list_splat] = STATE(1520), - [sym_dictionary_splat] = STATE(1520), - [sym_global_statement] = STATE(1332), - [sym_nonlocal_statement] = STATE(1332), - [sym_exec_statement] = STATE(1332), - [sym_type_alias_statement] = STATE(1332), + [sym_list_splat] = STATE(1590), + [sym_dictionary_splat] = STATE(1590), + [sym_global_statement] = STATE(1345), + [sym_nonlocal_statement] = STATE(1345), + [sym_exec_statement] = STATE(1345), + [sym_type_alias_statement] = STATE(1345), [sym_class_definition] = STATE(61), [sym_decorated_definition] = STATE(61), - [sym_decorator] = STATE(1127), - [sym_block] = STATE(505), - [sym_expression_list] = STATE(1522), - [sym_pattern] = STATE(1017), - [sym_tuple_pattern] = STATE(1001), - [sym_list_pattern] = STATE(1001), - [sym_list_splat_pattern] = STATE(1001), - [sym_expression] = STATE(1176), - [sym_primary_expression] = STATE(765), - [sym_not_operator] = STATE(1156), - [sym_boolean_operator] = STATE(1156), - [sym_binary_operator] = STATE(920), - [sym_unary_operator] = STATE(920), - [sym_comparison_operator] = STATE(1156), - [sym_lambda] = STATE(1156), - [sym_assignment] = STATE(1522), - [sym_augmented_assignment] = STATE(1522), - [sym_pattern_list] = STATE(1026), - [sym_yield] = STATE(1522), - [sym_attribute] = STATE(582), - [sym_subscript] = STATE(582), - [sym_call] = STATE(920), - [sym_list] = STATE(920), - [sym_set] = STATE(920), - [sym_tuple] = STATE(920), - [sym_dictionary] = STATE(920), - [sym_list_comprehension] = STATE(920), - [sym_dictionary_comprehension] = STATE(920), - [sym_set_comprehension] = STATE(920), - [sym_generator_expression] = STATE(920), - [sym_parenthesized_expression] = STATE(920), - [sym_conditional_expression] = STATE(1156), - [sym_concatenated_string] = STATE(920), - [sym_string] = STATE(775), - [sym_concatenated_template_string] = STATE(920), - [sym_template_string] = STATE(769), - [sym_await] = STATE(920), + [sym_decorator] = STATE(1146), + [sym_block] = STATE(496), + [sym_expression_list] = STATE(1545), + [sym_pattern] = STATE(1020), + [sym_tuple_pattern] = STATE(1005), + [sym_list_pattern] = STATE(1005), + [sym_list_splat_pattern] = STATE(1005), + [sym_expression] = STATE(1191), + [sym_primary_expression] = STATE(773), + [sym_not_operator] = STATE(1126), + [sym_boolean_operator] = STATE(1126), + [sym_binary_operator] = STATE(950), + [sym_unary_operator] = STATE(950), + [sym_comparison_operator] = STATE(1126), + [sym_lambda] = STATE(1126), + [sym_assignment] = STATE(1545), + [sym_augmented_assignment] = STATE(1545), + [sym_pattern_list] = STATE(1030), + [sym_yield] = STATE(1545), + [sym_attribute] = STATE(614), + [sym_subscript] = STATE(614), + [sym_call] = STATE(950), + [sym_list] = STATE(950), + [sym_set] = STATE(950), + [sym_tuple] = STATE(950), + [sym_dictionary] = STATE(950), + [sym_list_comprehension] = STATE(950), + [sym_dictionary_comprehension] = STATE(950), + [sym_set_comprehension] = STATE(950), + [sym_generator_expression] = STATE(950), + [sym_parenthesized_expression] = STATE(950), + [sym_conditional_expression] = STATE(1126), + [sym_concatenated_string] = STATE(950), + [sym_string] = STATE(779), + [sym_concatenated_template_string] = STATE(950), + [sym_template_string] = STATE(772), + [sym_await] = STATE(950), [aux_sym_module_repeat1] = STATE(61), - [aux_sym_decorated_definition_repeat1] = STATE(1127), + [aux_sym_decorated_definition_repeat1] = STATE(1146), [sym_identifier] = ACTIONS(7), [anon_sym_lazy] = ACTIONS(9), [anon_sym_import] = ACTIONS(11), @@ -10913,19 +10955,19 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [STATE(23)] = { [sym__statement] = STATE(61), [sym__simple_statements] = STATE(61), - [sym_import_statement] = STATE(1332), - [sym_future_import_statement] = STATE(1332), - [sym_import_from_statement] = STATE(1332), - [sym_print_statement] = STATE(1332), - [sym_assert_statement] = STATE(1332), - [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1156), - [sym_return_statement] = STATE(1332), - [sym_delete_statement] = STATE(1332), - [sym_raise_statement] = STATE(1332), - [sym_pass_statement] = STATE(1332), - [sym_break_statement] = STATE(1332), - [sym_continue_statement] = STATE(1332), + [sym_import_statement] = STATE(1345), + [sym_future_import_statement] = STATE(1345), + [sym_import_from_statement] = STATE(1345), + [sym_print_statement] = STATE(1345), + [sym_assert_statement] = STATE(1345), + [sym_expression_statement] = STATE(1345), + [sym_named_expression] = STATE(1126), + [sym_return_statement] = STATE(1345), + [sym_delete_statement] = STATE(1345), + [sym_raise_statement] = STATE(1345), + [sym_pass_statement] = STATE(1345), + [sym_break_statement] = STATE(1345), + [sym_continue_statement] = STATE(1345), [sym_if_statement] = STATE(61), [sym_for_statement] = STATE(61), [sym_while_statement] = STATE(61), @@ -10933,53 +10975,53 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_with_statement] = STATE(61), [sym_match_statement] = STATE(61), [sym_function_definition] = STATE(61), - [sym_list_splat] = STATE(1520), - [sym_dictionary_splat] = STATE(1520), - [sym_global_statement] = STATE(1332), - [sym_nonlocal_statement] = STATE(1332), - [sym_exec_statement] = STATE(1332), - [sym_type_alias_statement] = STATE(1332), + [sym_list_splat] = STATE(1590), + [sym_dictionary_splat] = STATE(1590), + [sym_global_statement] = STATE(1345), + [sym_nonlocal_statement] = STATE(1345), + [sym_exec_statement] = STATE(1345), + [sym_type_alias_statement] = STATE(1345), [sym_class_definition] = STATE(61), [sym_decorated_definition] = STATE(61), - [sym_decorator] = STATE(1127), - [sym_block] = STATE(597), - [sym_expression_list] = STATE(1522), - [sym_pattern] = STATE(1017), - [sym_tuple_pattern] = STATE(1001), - [sym_list_pattern] = STATE(1001), - [sym_list_splat_pattern] = STATE(1001), - [sym_expression] = STATE(1176), - [sym_primary_expression] = STATE(765), - [sym_not_operator] = STATE(1156), - [sym_boolean_operator] = STATE(1156), - [sym_binary_operator] = STATE(920), - [sym_unary_operator] = STATE(920), - [sym_comparison_operator] = STATE(1156), - [sym_lambda] = STATE(1156), - [sym_assignment] = STATE(1522), - [sym_augmented_assignment] = STATE(1522), - [sym_pattern_list] = STATE(1026), - [sym_yield] = STATE(1522), - [sym_attribute] = STATE(582), - [sym_subscript] = STATE(582), - [sym_call] = STATE(920), - [sym_list] = STATE(920), - [sym_set] = STATE(920), - [sym_tuple] = STATE(920), - [sym_dictionary] = STATE(920), - [sym_list_comprehension] = STATE(920), - [sym_dictionary_comprehension] = STATE(920), - [sym_set_comprehension] = STATE(920), - [sym_generator_expression] = STATE(920), - [sym_parenthesized_expression] = STATE(920), - [sym_conditional_expression] = STATE(1156), - [sym_concatenated_string] = STATE(920), - [sym_string] = STATE(775), - [sym_concatenated_template_string] = STATE(920), - [sym_template_string] = STATE(769), - [sym_await] = STATE(920), + [sym_decorator] = STATE(1146), + [sym_block] = STATE(606), + [sym_expression_list] = STATE(1545), + [sym_pattern] = STATE(1020), + [sym_tuple_pattern] = STATE(1005), + [sym_list_pattern] = STATE(1005), + [sym_list_splat_pattern] = STATE(1005), + [sym_expression] = STATE(1191), + [sym_primary_expression] = STATE(773), + [sym_not_operator] = STATE(1126), + [sym_boolean_operator] = STATE(1126), + [sym_binary_operator] = STATE(950), + [sym_unary_operator] = STATE(950), + [sym_comparison_operator] = STATE(1126), + [sym_lambda] = STATE(1126), + [sym_assignment] = STATE(1545), + [sym_augmented_assignment] = STATE(1545), + [sym_pattern_list] = STATE(1030), + [sym_yield] = STATE(1545), + [sym_attribute] = STATE(614), + [sym_subscript] = STATE(614), + [sym_call] = STATE(950), + [sym_list] = STATE(950), + [sym_set] = STATE(950), + [sym_tuple] = STATE(950), + [sym_dictionary] = STATE(950), + [sym_list_comprehension] = STATE(950), + [sym_dictionary_comprehension] = STATE(950), + [sym_set_comprehension] = STATE(950), + [sym_generator_expression] = STATE(950), + [sym_parenthesized_expression] = STATE(950), + [sym_conditional_expression] = STATE(1126), + [sym_concatenated_string] = STATE(950), + [sym_string] = STATE(779), + [sym_concatenated_template_string] = STATE(950), + [sym_template_string] = STATE(772), + [sym_await] = STATE(950), [aux_sym_module_repeat1] = STATE(61), - [aux_sym_decorated_definition_repeat1] = STATE(1127), + [aux_sym_decorated_definition_repeat1] = STATE(1146), [sym_identifier] = ACTIONS(7), [anon_sym_lazy] = ACTIONS(9), [anon_sym_import] = ACTIONS(11), @@ -11032,19 +11074,19 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [STATE(24)] = { [sym__statement] = STATE(61), [sym__simple_statements] = STATE(61), - [sym_import_statement] = STATE(1332), - [sym_future_import_statement] = STATE(1332), - [sym_import_from_statement] = STATE(1332), - [sym_print_statement] = STATE(1332), - [sym_assert_statement] = STATE(1332), - [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1156), - [sym_return_statement] = STATE(1332), - [sym_delete_statement] = STATE(1332), - [sym_raise_statement] = STATE(1332), - [sym_pass_statement] = STATE(1332), - [sym_break_statement] = STATE(1332), - [sym_continue_statement] = STATE(1332), + [sym_import_statement] = STATE(1345), + [sym_future_import_statement] = STATE(1345), + [sym_import_from_statement] = STATE(1345), + [sym_print_statement] = STATE(1345), + [sym_assert_statement] = STATE(1345), + [sym_expression_statement] = STATE(1345), + [sym_named_expression] = STATE(1126), + [sym_return_statement] = STATE(1345), + [sym_delete_statement] = STATE(1345), + [sym_raise_statement] = STATE(1345), + [sym_pass_statement] = STATE(1345), + [sym_break_statement] = STATE(1345), + [sym_continue_statement] = STATE(1345), [sym_if_statement] = STATE(61), [sym_for_statement] = STATE(61), [sym_while_statement] = STATE(61), @@ -11052,53 +11094,53 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_with_statement] = STATE(61), [sym_match_statement] = STATE(61), [sym_function_definition] = STATE(61), - [sym_list_splat] = STATE(1520), - [sym_dictionary_splat] = STATE(1520), - [sym_global_statement] = STATE(1332), - [sym_nonlocal_statement] = STATE(1332), - [sym_exec_statement] = STATE(1332), - [sym_type_alias_statement] = STATE(1332), + [sym_list_splat] = STATE(1590), + [sym_dictionary_splat] = STATE(1590), + [sym_global_statement] = STATE(1345), + [sym_nonlocal_statement] = STATE(1345), + [sym_exec_statement] = STATE(1345), + [sym_type_alias_statement] = STATE(1345), [sym_class_definition] = STATE(61), [sym_decorated_definition] = STATE(61), - [sym_decorator] = STATE(1127), - [sym_block] = STATE(467), - [sym_expression_list] = STATE(1522), - [sym_pattern] = STATE(1017), - [sym_tuple_pattern] = STATE(1001), - [sym_list_pattern] = STATE(1001), - [sym_list_splat_pattern] = STATE(1001), - [sym_expression] = STATE(1176), - [sym_primary_expression] = STATE(765), - [sym_not_operator] = STATE(1156), - [sym_boolean_operator] = STATE(1156), - [sym_binary_operator] = STATE(920), - [sym_unary_operator] = STATE(920), - [sym_comparison_operator] = STATE(1156), - [sym_lambda] = STATE(1156), - [sym_assignment] = STATE(1522), - [sym_augmented_assignment] = STATE(1522), - [sym_pattern_list] = STATE(1026), - [sym_yield] = STATE(1522), - [sym_attribute] = STATE(582), - [sym_subscript] = STATE(582), - [sym_call] = STATE(920), - [sym_list] = STATE(920), - [sym_set] = STATE(920), - [sym_tuple] = STATE(920), - [sym_dictionary] = STATE(920), - [sym_list_comprehension] = STATE(920), - [sym_dictionary_comprehension] = STATE(920), - [sym_set_comprehension] = STATE(920), - [sym_generator_expression] = STATE(920), - [sym_parenthesized_expression] = STATE(920), - [sym_conditional_expression] = STATE(1156), - [sym_concatenated_string] = STATE(920), - [sym_string] = STATE(775), - [sym_concatenated_template_string] = STATE(920), - [sym_template_string] = STATE(769), - [sym_await] = STATE(920), + [sym_decorator] = STATE(1146), + [sym_block] = STATE(472), + [sym_expression_list] = STATE(1545), + [sym_pattern] = STATE(1020), + [sym_tuple_pattern] = STATE(1005), + [sym_list_pattern] = STATE(1005), + [sym_list_splat_pattern] = STATE(1005), + [sym_expression] = STATE(1191), + [sym_primary_expression] = STATE(773), + [sym_not_operator] = STATE(1126), + [sym_boolean_operator] = STATE(1126), + [sym_binary_operator] = STATE(950), + [sym_unary_operator] = STATE(950), + [sym_comparison_operator] = STATE(1126), + [sym_lambda] = STATE(1126), + [sym_assignment] = STATE(1545), + [sym_augmented_assignment] = STATE(1545), + [sym_pattern_list] = STATE(1030), + [sym_yield] = STATE(1545), + [sym_attribute] = STATE(614), + [sym_subscript] = STATE(614), + [sym_call] = STATE(950), + [sym_list] = STATE(950), + [sym_set] = STATE(950), + [sym_tuple] = STATE(950), + [sym_dictionary] = STATE(950), + [sym_list_comprehension] = STATE(950), + [sym_dictionary_comprehension] = STATE(950), + [sym_set_comprehension] = STATE(950), + [sym_generator_expression] = STATE(950), + [sym_parenthesized_expression] = STATE(950), + [sym_conditional_expression] = STATE(1126), + [sym_concatenated_string] = STATE(950), + [sym_string] = STATE(779), + [sym_concatenated_template_string] = STATE(950), + [sym_template_string] = STATE(772), + [sym_await] = STATE(950), [aux_sym_module_repeat1] = STATE(61), - [aux_sym_decorated_definition_repeat1] = STATE(1127), + [aux_sym_decorated_definition_repeat1] = STATE(1146), [sym_identifier] = ACTIONS(7), [anon_sym_lazy] = ACTIONS(9), [anon_sym_import] = ACTIONS(11), @@ -11151,19 +11193,19 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [STATE(25)] = { [sym__statement] = STATE(61), [sym__simple_statements] = STATE(61), - [sym_import_statement] = STATE(1332), - [sym_future_import_statement] = STATE(1332), - [sym_import_from_statement] = STATE(1332), - [sym_print_statement] = STATE(1332), - [sym_assert_statement] = STATE(1332), - [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1156), - [sym_return_statement] = STATE(1332), - [sym_delete_statement] = STATE(1332), - [sym_raise_statement] = STATE(1332), - [sym_pass_statement] = STATE(1332), - [sym_break_statement] = STATE(1332), - [sym_continue_statement] = STATE(1332), + [sym_import_statement] = STATE(1345), + [sym_future_import_statement] = STATE(1345), + [sym_import_from_statement] = STATE(1345), + [sym_print_statement] = STATE(1345), + [sym_assert_statement] = STATE(1345), + [sym_expression_statement] = STATE(1345), + [sym_named_expression] = STATE(1126), + [sym_return_statement] = STATE(1345), + [sym_delete_statement] = STATE(1345), + [sym_raise_statement] = STATE(1345), + [sym_pass_statement] = STATE(1345), + [sym_break_statement] = STATE(1345), + [sym_continue_statement] = STATE(1345), [sym_if_statement] = STATE(61), [sym_for_statement] = STATE(61), [sym_while_statement] = STATE(61), @@ -11171,53 +11213,53 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_with_statement] = STATE(61), [sym_match_statement] = STATE(61), [sym_function_definition] = STATE(61), - [sym_list_splat] = STATE(1520), - [sym_dictionary_splat] = STATE(1520), - [sym_global_statement] = STATE(1332), - [sym_nonlocal_statement] = STATE(1332), - [sym_exec_statement] = STATE(1332), - [sym_type_alias_statement] = STATE(1332), + [sym_list_splat] = STATE(1590), + [sym_dictionary_splat] = STATE(1590), + [sym_global_statement] = STATE(1345), + [sym_nonlocal_statement] = STATE(1345), + [sym_exec_statement] = STATE(1345), + [sym_type_alias_statement] = STATE(1345), [sym_class_definition] = STATE(61), [sym_decorated_definition] = STATE(61), - [sym_decorator] = STATE(1127), - [sym_block] = STATE(601), - [sym_expression_list] = STATE(1522), - [sym_pattern] = STATE(1017), - [sym_tuple_pattern] = STATE(1001), - [sym_list_pattern] = STATE(1001), - [sym_list_splat_pattern] = STATE(1001), - [sym_expression] = STATE(1176), - [sym_primary_expression] = STATE(765), - [sym_not_operator] = STATE(1156), - [sym_boolean_operator] = STATE(1156), - [sym_binary_operator] = STATE(920), - [sym_unary_operator] = STATE(920), - [sym_comparison_operator] = STATE(1156), - [sym_lambda] = STATE(1156), - [sym_assignment] = STATE(1522), - [sym_augmented_assignment] = STATE(1522), - [sym_pattern_list] = STATE(1026), - [sym_yield] = STATE(1522), - [sym_attribute] = STATE(582), - [sym_subscript] = STATE(582), - [sym_call] = STATE(920), - [sym_list] = STATE(920), - [sym_set] = STATE(920), - [sym_tuple] = STATE(920), - [sym_dictionary] = STATE(920), - [sym_list_comprehension] = STATE(920), - [sym_dictionary_comprehension] = STATE(920), - [sym_set_comprehension] = STATE(920), - [sym_generator_expression] = STATE(920), - [sym_parenthesized_expression] = STATE(920), - [sym_conditional_expression] = STATE(1156), - [sym_concatenated_string] = STATE(920), - [sym_string] = STATE(775), - [sym_concatenated_template_string] = STATE(920), - [sym_template_string] = STATE(769), - [sym_await] = STATE(920), + [sym_decorator] = STATE(1146), + [sym_block] = STATE(517), + [sym_expression_list] = STATE(1545), + [sym_pattern] = STATE(1020), + [sym_tuple_pattern] = STATE(1005), + [sym_list_pattern] = STATE(1005), + [sym_list_splat_pattern] = STATE(1005), + [sym_expression] = STATE(1191), + [sym_primary_expression] = STATE(773), + [sym_not_operator] = STATE(1126), + [sym_boolean_operator] = STATE(1126), + [sym_binary_operator] = STATE(950), + [sym_unary_operator] = STATE(950), + [sym_comparison_operator] = STATE(1126), + [sym_lambda] = STATE(1126), + [sym_assignment] = STATE(1545), + [sym_augmented_assignment] = STATE(1545), + [sym_pattern_list] = STATE(1030), + [sym_yield] = STATE(1545), + [sym_attribute] = STATE(614), + [sym_subscript] = STATE(614), + [sym_call] = STATE(950), + [sym_list] = STATE(950), + [sym_set] = STATE(950), + [sym_tuple] = STATE(950), + [sym_dictionary] = STATE(950), + [sym_list_comprehension] = STATE(950), + [sym_dictionary_comprehension] = STATE(950), + [sym_set_comprehension] = STATE(950), + [sym_generator_expression] = STATE(950), + [sym_parenthesized_expression] = STATE(950), + [sym_conditional_expression] = STATE(1126), + [sym_concatenated_string] = STATE(950), + [sym_string] = STATE(779), + [sym_concatenated_template_string] = STATE(950), + [sym_template_string] = STATE(772), + [sym_await] = STATE(950), [aux_sym_module_repeat1] = STATE(61), - [aux_sym_decorated_definition_repeat1] = STATE(1127), + [aux_sym_decorated_definition_repeat1] = STATE(1146), [sym_identifier] = ACTIONS(7), [anon_sym_lazy] = ACTIONS(9), [anon_sym_import] = ACTIONS(11), @@ -11270,19 +11312,19 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [STATE(26)] = { [sym__statement] = STATE(61), [sym__simple_statements] = STATE(61), - [sym_import_statement] = STATE(1332), - [sym_future_import_statement] = STATE(1332), - [sym_import_from_statement] = STATE(1332), - [sym_print_statement] = STATE(1332), - [sym_assert_statement] = STATE(1332), - [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1156), - [sym_return_statement] = STATE(1332), - [sym_delete_statement] = STATE(1332), - [sym_raise_statement] = STATE(1332), - [sym_pass_statement] = STATE(1332), - [sym_break_statement] = STATE(1332), - [sym_continue_statement] = STATE(1332), + [sym_import_statement] = STATE(1345), + [sym_future_import_statement] = STATE(1345), + [sym_import_from_statement] = STATE(1345), + [sym_print_statement] = STATE(1345), + [sym_assert_statement] = STATE(1345), + [sym_expression_statement] = STATE(1345), + [sym_named_expression] = STATE(1126), + [sym_return_statement] = STATE(1345), + [sym_delete_statement] = STATE(1345), + [sym_raise_statement] = STATE(1345), + [sym_pass_statement] = STATE(1345), + [sym_break_statement] = STATE(1345), + [sym_continue_statement] = STATE(1345), [sym_if_statement] = STATE(61), [sym_for_statement] = STATE(61), [sym_while_statement] = STATE(61), @@ -11290,53 +11332,53 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_with_statement] = STATE(61), [sym_match_statement] = STATE(61), [sym_function_definition] = STATE(61), - [sym_list_splat] = STATE(1520), - [sym_dictionary_splat] = STATE(1520), - [sym_global_statement] = STATE(1332), - [sym_nonlocal_statement] = STATE(1332), - [sym_exec_statement] = STATE(1332), - [sym_type_alias_statement] = STATE(1332), + [sym_list_splat] = STATE(1590), + [sym_dictionary_splat] = STATE(1590), + [sym_global_statement] = STATE(1345), + [sym_nonlocal_statement] = STATE(1345), + [sym_exec_statement] = STATE(1345), + [sym_type_alias_statement] = STATE(1345), [sym_class_definition] = STATE(61), [sym_decorated_definition] = STATE(61), - [sym_decorator] = STATE(1127), - [sym_block] = STATE(456), - [sym_expression_list] = STATE(1522), - [sym_pattern] = STATE(1017), - [sym_tuple_pattern] = STATE(1001), - [sym_list_pattern] = STATE(1001), - [sym_list_splat_pattern] = STATE(1001), - [sym_expression] = STATE(1176), - [sym_primary_expression] = STATE(765), - [sym_not_operator] = STATE(1156), - [sym_boolean_operator] = STATE(1156), - [sym_binary_operator] = STATE(920), - [sym_unary_operator] = STATE(920), - [sym_comparison_operator] = STATE(1156), - [sym_lambda] = STATE(1156), - [sym_assignment] = STATE(1522), - [sym_augmented_assignment] = STATE(1522), - [sym_pattern_list] = STATE(1026), - [sym_yield] = STATE(1522), - [sym_attribute] = STATE(582), - [sym_subscript] = STATE(582), - [sym_call] = STATE(920), - [sym_list] = STATE(920), - [sym_set] = STATE(920), - [sym_tuple] = STATE(920), - [sym_dictionary] = STATE(920), - [sym_list_comprehension] = STATE(920), - [sym_dictionary_comprehension] = STATE(920), - [sym_set_comprehension] = STATE(920), - [sym_generator_expression] = STATE(920), - [sym_parenthesized_expression] = STATE(920), - [sym_conditional_expression] = STATE(1156), - [sym_concatenated_string] = STATE(920), - [sym_string] = STATE(775), - [sym_concatenated_template_string] = STATE(920), - [sym_template_string] = STATE(769), - [sym_await] = STATE(920), + [sym_decorator] = STATE(1146), + [sym_block] = STATE(442), + [sym_expression_list] = STATE(1545), + [sym_pattern] = STATE(1020), + [sym_tuple_pattern] = STATE(1005), + [sym_list_pattern] = STATE(1005), + [sym_list_splat_pattern] = STATE(1005), + [sym_expression] = STATE(1191), + [sym_primary_expression] = STATE(773), + [sym_not_operator] = STATE(1126), + [sym_boolean_operator] = STATE(1126), + [sym_binary_operator] = STATE(950), + [sym_unary_operator] = STATE(950), + [sym_comparison_operator] = STATE(1126), + [sym_lambda] = STATE(1126), + [sym_assignment] = STATE(1545), + [sym_augmented_assignment] = STATE(1545), + [sym_pattern_list] = STATE(1030), + [sym_yield] = STATE(1545), + [sym_attribute] = STATE(614), + [sym_subscript] = STATE(614), + [sym_call] = STATE(950), + [sym_list] = STATE(950), + [sym_set] = STATE(950), + [sym_tuple] = STATE(950), + [sym_dictionary] = STATE(950), + [sym_list_comprehension] = STATE(950), + [sym_dictionary_comprehension] = STATE(950), + [sym_set_comprehension] = STATE(950), + [sym_generator_expression] = STATE(950), + [sym_parenthesized_expression] = STATE(950), + [sym_conditional_expression] = STATE(1126), + [sym_concatenated_string] = STATE(950), + [sym_string] = STATE(779), + [sym_concatenated_template_string] = STATE(950), + [sym_template_string] = STATE(772), + [sym_await] = STATE(950), [aux_sym_module_repeat1] = STATE(61), - [aux_sym_decorated_definition_repeat1] = STATE(1127), + [aux_sym_decorated_definition_repeat1] = STATE(1146), [sym_identifier] = ACTIONS(7), [anon_sym_lazy] = ACTIONS(9), [anon_sym_import] = ACTIONS(11), @@ -11389,19 +11431,19 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [STATE(27)] = { [sym__statement] = STATE(61), [sym__simple_statements] = STATE(61), - [sym_import_statement] = STATE(1332), - [sym_future_import_statement] = STATE(1332), - [sym_import_from_statement] = STATE(1332), - [sym_print_statement] = STATE(1332), - [sym_assert_statement] = STATE(1332), - [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1156), - [sym_return_statement] = STATE(1332), - [sym_delete_statement] = STATE(1332), - [sym_raise_statement] = STATE(1332), - [sym_pass_statement] = STATE(1332), - [sym_break_statement] = STATE(1332), - [sym_continue_statement] = STATE(1332), + [sym_import_statement] = STATE(1345), + [sym_future_import_statement] = STATE(1345), + [sym_import_from_statement] = STATE(1345), + [sym_print_statement] = STATE(1345), + [sym_assert_statement] = STATE(1345), + [sym_expression_statement] = STATE(1345), + [sym_named_expression] = STATE(1126), + [sym_return_statement] = STATE(1345), + [sym_delete_statement] = STATE(1345), + [sym_raise_statement] = STATE(1345), + [sym_pass_statement] = STATE(1345), + [sym_break_statement] = STATE(1345), + [sym_continue_statement] = STATE(1345), [sym_if_statement] = STATE(61), [sym_for_statement] = STATE(61), [sym_while_statement] = STATE(61), @@ -11409,53 +11451,53 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_with_statement] = STATE(61), [sym_match_statement] = STATE(61), [sym_function_definition] = STATE(61), - [sym_list_splat] = STATE(1520), - [sym_dictionary_splat] = STATE(1520), - [sym_global_statement] = STATE(1332), - [sym_nonlocal_statement] = STATE(1332), - [sym_exec_statement] = STATE(1332), - [sym_type_alias_statement] = STATE(1332), + [sym_list_splat] = STATE(1590), + [sym_dictionary_splat] = STATE(1590), + [sym_global_statement] = STATE(1345), + [sym_nonlocal_statement] = STATE(1345), + [sym_exec_statement] = STATE(1345), + [sym_type_alias_statement] = STATE(1345), [sym_class_definition] = STATE(61), [sym_decorated_definition] = STATE(61), - [sym_decorator] = STATE(1127), - [sym_block] = STATE(498), - [sym_expression_list] = STATE(1522), - [sym_pattern] = STATE(1017), - [sym_tuple_pattern] = STATE(1001), - [sym_list_pattern] = STATE(1001), - [sym_list_splat_pattern] = STATE(1001), - [sym_expression] = STATE(1176), - [sym_primary_expression] = STATE(765), - [sym_not_operator] = STATE(1156), - [sym_boolean_operator] = STATE(1156), - [sym_binary_operator] = STATE(920), - [sym_unary_operator] = STATE(920), - [sym_comparison_operator] = STATE(1156), - [sym_lambda] = STATE(1156), - [sym_assignment] = STATE(1522), - [sym_augmented_assignment] = STATE(1522), - [sym_pattern_list] = STATE(1026), - [sym_yield] = STATE(1522), - [sym_attribute] = STATE(582), - [sym_subscript] = STATE(582), - [sym_call] = STATE(920), - [sym_list] = STATE(920), - [sym_set] = STATE(920), - [sym_tuple] = STATE(920), - [sym_dictionary] = STATE(920), - [sym_list_comprehension] = STATE(920), - [sym_dictionary_comprehension] = STATE(920), - [sym_set_comprehension] = STATE(920), - [sym_generator_expression] = STATE(920), - [sym_parenthesized_expression] = STATE(920), - [sym_conditional_expression] = STATE(1156), - [sym_concatenated_string] = STATE(920), - [sym_string] = STATE(775), - [sym_concatenated_template_string] = STATE(920), - [sym_template_string] = STATE(769), - [sym_await] = STATE(920), + [sym_decorator] = STATE(1146), + [sym_block] = STATE(508), + [sym_expression_list] = STATE(1545), + [sym_pattern] = STATE(1020), + [sym_tuple_pattern] = STATE(1005), + [sym_list_pattern] = STATE(1005), + [sym_list_splat_pattern] = STATE(1005), + [sym_expression] = STATE(1191), + [sym_primary_expression] = STATE(773), + [sym_not_operator] = STATE(1126), + [sym_boolean_operator] = STATE(1126), + [sym_binary_operator] = STATE(950), + [sym_unary_operator] = STATE(950), + [sym_comparison_operator] = STATE(1126), + [sym_lambda] = STATE(1126), + [sym_assignment] = STATE(1545), + [sym_augmented_assignment] = STATE(1545), + [sym_pattern_list] = STATE(1030), + [sym_yield] = STATE(1545), + [sym_attribute] = STATE(614), + [sym_subscript] = STATE(614), + [sym_call] = STATE(950), + [sym_list] = STATE(950), + [sym_set] = STATE(950), + [sym_tuple] = STATE(950), + [sym_dictionary] = STATE(950), + [sym_list_comprehension] = STATE(950), + [sym_dictionary_comprehension] = STATE(950), + [sym_set_comprehension] = STATE(950), + [sym_generator_expression] = STATE(950), + [sym_parenthesized_expression] = STATE(950), + [sym_conditional_expression] = STATE(1126), + [sym_concatenated_string] = STATE(950), + [sym_string] = STATE(779), + [sym_concatenated_template_string] = STATE(950), + [sym_template_string] = STATE(772), + [sym_await] = STATE(950), [aux_sym_module_repeat1] = STATE(61), - [aux_sym_decorated_definition_repeat1] = STATE(1127), + [aux_sym_decorated_definition_repeat1] = STATE(1146), [sym_identifier] = ACTIONS(7), [anon_sym_lazy] = ACTIONS(9), [anon_sym_import] = ACTIONS(11), @@ -11508,19 +11550,19 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [STATE(28)] = { [sym__statement] = STATE(61), [sym__simple_statements] = STATE(61), - [sym_import_statement] = STATE(1332), - [sym_future_import_statement] = STATE(1332), - [sym_import_from_statement] = STATE(1332), - [sym_print_statement] = STATE(1332), - [sym_assert_statement] = STATE(1332), - [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1156), - [sym_return_statement] = STATE(1332), - [sym_delete_statement] = STATE(1332), - [sym_raise_statement] = STATE(1332), - [sym_pass_statement] = STATE(1332), - [sym_break_statement] = STATE(1332), - [sym_continue_statement] = STATE(1332), + [sym_import_statement] = STATE(1345), + [sym_future_import_statement] = STATE(1345), + [sym_import_from_statement] = STATE(1345), + [sym_print_statement] = STATE(1345), + [sym_assert_statement] = STATE(1345), + [sym_expression_statement] = STATE(1345), + [sym_named_expression] = STATE(1126), + [sym_return_statement] = STATE(1345), + [sym_delete_statement] = STATE(1345), + [sym_raise_statement] = STATE(1345), + [sym_pass_statement] = STATE(1345), + [sym_break_statement] = STATE(1345), + [sym_continue_statement] = STATE(1345), [sym_if_statement] = STATE(61), [sym_for_statement] = STATE(61), [sym_while_statement] = STATE(61), @@ -11528,53 +11570,53 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_with_statement] = STATE(61), [sym_match_statement] = STATE(61), [sym_function_definition] = STATE(61), - [sym_list_splat] = STATE(1520), - [sym_dictionary_splat] = STATE(1520), - [sym_global_statement] = STATE(1332), - [sym_nonlocal_statement] = STATE(1332), - [sym_exec_statement] = STATE(1332), - [sym_type_alias_statement] = STATE(1332), + [sym_list_splat] = STATE(1590), + [sym_dictionary_splat] = STATE(1590), + [sym_global_statement] = STATE(1345), + [sym_nonlocal_statement] = STATE(1345), + [sym_exec_statement] = STATE(1345), + [sym_type_alias_statement] = STATE(1345), [sym_class_definition] = STATE(61), [sym_decorated_definition] = STATE(61), - [sym_decorator] = STATE(1127), - [sym_block] = STATE(604), - [sym_expression_list] = STATE(1522), - [sym_pattern] = STATE(1017), - [sym_tuple_pattern] = STATE(1001), - [sym_list_pattern] = STATE(1001), - [sym_list_splat_pattern] = STATE(1001), - [sym_expression] = STATE(1176), - [sym_primary_expression] = STATE(765), - [sym_not_operator] = STATE(1156), - [sym_boolean_operator] = STATE(1156), - [sym_binary_operator] = STATE(920), - [sym_unary_operator] = STATE(920), - [sym_comparison_operator] = STATE(1156), - [sym_lambda] = STATE(1156), - [sym_assignment] = STATE(1522), - [sym_augmented_assignment] = STATE(1522), - [sym_pattern_list] = STATE(1026), - [sym_yield] = STATE(1522), - [sym_attribute] = STATE(582), - [sym_subscript] = STATE(582), - [sym_call] = STATE(920), - [sym_list] = STATE(920), - [sym_set] = STATE(920), - [sym_tuple] = STATE(920), - [sym_dictionary] = STATE(920), - [sym_list_comprehension] = STATE(920), - [sym_dictionary_comprehension] = STATE(920), - [sym_set_comprehension] = STATE(920), - [sym_generator_expression] = STATE(920), - [sym_parenthesized_expression] = STATE(920), - [sym_conditional_expression] = STATE(1156), - [sym_concatenated_string] = STATE(920), - [sym_string] = STATE(775), - [sym_concatenated_template_string] = STATE(920), - [sym_template_string] = STATE(769), - [sym_await] = STATE(920), + [sym_decorator] = STATE(1146), + [sym_block] = STATE(522), + [sym_expression_list] = STATE(1545), + [sym_pattern] = STATE(1020), + [sym_tuple_pattern] = STATE(1005), + [sym_list_pattern] = STATE(1005), + [sym_list_splat_pattern] = STATE(1005), + [sym_expression] = STATE(1191), + [sym_primary_expression] = STATE(773), + [sym_not_operator] = STATE(1126), + [sym_boolean_operator] = STATE(1126), + [sym_binary_operator] = STATE(950), + [sym_unary_operator] = STATE(950), + [sym_comparison_operator] = STATE(1126), + [sym_lambda] = STATE(1126), + [sym_assignment] = STATE(1545), + [sym_augmented_assignment] = STATE(1545), + [sym_pattern_list] = STATE(1030), + [sym_yield] = STATE(1545), + [sym_attribute] = STATE(614), + [sym_subscript] = STATE(614), + [sym_call] = STATE(950), + [sym_list] = STATE(950), + [sym_set] = STATE(950), + [sym_tuple] = STATE(950), + [sym_dictionary] = STATE(950), + [sym_list_comprehension] = STATE(950), + [sym_dictionary_comprehension] = STATE(950), + [sym_set_comprehension] = STATE(950), + [sym_generator_expression] = STATE(950), + [sym_parenthesized_expression] = STATE(950), + [sym_conditional_expression] = STATE(1126), + [sym_concatenated_string] = STATE(950), + [sym_string] = STATE(779), + [sym_concatenated_template_string] = STATE(950), + [sym_template_string] = STATE(772), + [sym_await] = STATE(950), [aux_sym_module_repeat1] = STATE(61), - [aux_sym_decorated_definition_repeat1] = STATE(1127), + [aux_sym_decorated_definition_repeat1] = STATE(1146), [sym_identifier] = ACTIONS(7), [anon_sym_lazy] = ACTIONS(9), [anon_sym_import] = ACTIONS(11), @@ -11627,19 +11669,19 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [STATE(29)] = { [sym__statement] = STATE(61), [sym__simple_statements] = STATE(61), - [sym_import_statement] = STATE(1332), - [sym_future_import_statement] = STATE(1332), - [sym_import_from_statement] = STATE(1332), - [sym_print_statement] = STATE(1332), - [sym_assert_statement] = STATE(1332), - [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1156), - [sym_return_statement] = STATE(1332), - [sym_delete_statement] = STATE(1332), - [sym_raise_statement] = STATE(1332), - [sym_pass_statement] = STATE(1332), - [sym_break_statement] = STATE(1332), - [sym_continue_statement] = STATE(1332), + [sym_import_statement] = STATE(1345), + [sym_future_import_statement] = STATE(1345), + [sym_import_from_statement] = STATE(1345), + [sym_print_statement] = STATE(1345), + [sym_assert_statement] = STATE(1345), + [sym_expression_statement] = STATE(1345), + [sym_named_expression] = STATE(1126), + [sym_return_statement] = STATE(1345), + [sym_delete_statement] = STATE(1345), + [sym_raise_statement] = STATE(1345), + [sym_pass_statement] = STATE(1345), + [sym_break_statement] = STATE(1345), + [sym_continue_statement] = STATE(1345), [sym_if_statement] = STATE(61), [sym_for_statement] = STATE(61), [sym_while_statement] = STATE(61), @@ -11647,53 +11689,53 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_with_statement] = STATE(61), [sym_match_statement] = STATE(61), [sym_function_definition] = STATE(61), - [sym_list_splat] = STATE(1520), - [sym_dictionary_splat] = STATE(1520), - [sym_global_statement] = STATE(1332), - [sym_nonlocal_statement] = STATE(1332), - [sym_exec_statement] = STATE(1332), - [sym_type_alias_statement] = STATE(1332), + [sym_list_splat] = STATE(1590), + [sym_dictionary_splat] = STATE(1590), + [sym_global_statement] = STATE(1345), + [sym_nonlocal_statement] = STATE(1345), + [sym_exec_statement] = STATE(1345), + [sym_type_alias_statement] = STATE(1345), [sym_class_definition] = STATE(61), [sym_decorated_definition] = STATE(61), - [sym_decorator] = STATE(1127), - [sym_block] = STATE(605), - [sym_expression_list] = STATE(1522), - [sym_pattern] = STATE(1017), - [sym_tuple_pattern] = STATE(1001), - [sym_list_pattern] = STATE(1001), - [sym_list_splat_pattern] = STATE(1001), - [sym_expression] = STATE(1176), - [sym_primary_expression] = STATE(765), - [sym_not_operator] = STATE(1156), - [sym_boolean_operator] = STATE(1156), - [sym_binary_operator] = STATE(920), - [sym_unary_operator] = STATE(920), - [sym_comparison_operator] = STATE(1156), - [sym_lambda] = STATE(1156), - [sym_assignment] = STATE(1522), - [sym_augmented_assignment] = STATE(1522), - [sym_pattern_list] = STATE(1026), - [sym_yield] = STATE(1522), - [sym_attribute] = STATE(582), - [sym_subscript] = STATE(582), - [sym_call] = STATE(920), - [sym_list] = STATE(920), - [sym_set] = STATE(920), - [sym_tuple] = STATE(920), - [sym_dictionary] = STATE(920), - [sym_list_comprehension] = STATE(920), - [sym_dictionary_comprehension] = STATE(920), - [sym_set_comprehension] = STATE(920), - [sym_generator_expression] = STATE(920), - [sym_parenthesized_expression] = STATE(920), - [sym_conditional_expression] = STATE(1156), - [sym_concatenated_string] = STATE(920), - [sym_string] = STATE(775), - [sym_concatenated_template_string] = STATE(920), - [sym_template_string] = STATE(769), - [sym_await] = STATE(920), + [sym_decorator] = STATE(1146), + [sym_block] = STATE(523), + [sym_expression_list] = STATE(1545), + [sym_pattern] = STATE(1020), + [sym_tuple_pattern] = STATE(1005), + [sym_list_pattern] = STATE(1005), + [sym_list_splat_pattern] = STATE(1005), + [sym_expression] = STATE(1191), + [sym_primary_expression] = STATE(773), + [sym_not_operator] = STATE(1126), + [sym_boolean_operator] = STATE(1126), + [sym_binary_operator] = STATE(950), + [sym_unary_operator] = STATE(950), + [sym_comparison_operator] = STATE(1126), + [sym_lambda] = STATE(1126), + [sym_assignment] = STATE(1545), + [sym_augmented_assignment] = STATE(1545), + [sym_pattern_list] = STATE(1030), + [sym_yield] = STATE(1545), + [sym_attribute] = STATE(614), + [sym_subscript] = STATE(614), + [sym_call] = STATE(950), + [sym_list] = STATE(950), + [sym_set] = STATE(950), + [sym_tuple] = STATE(950), + [sym_dictionary] = STATE(950), + [sym_list_comprehension] = STATE(950), + [sym_dictionary_comprehension] = STATE(950), + [sym_set_comprehension] = STATE(950), + [sym_generator_expression] = STATE(950), + [sym_parenthesized_expression] = STATE(950), + [sym_conditional_expression] = STATE(1126), + [sym_concatenated_string] = STATE(950), + [sym_string] = STATE(779), + [sym_concatenated_template_string] = STATE(950), + [sym_template_string] = STATE(772), + [sym_await] = STATE(950), [aux_sym_module_repeat1] = STATE(61), - [aux_sym_decorated_definition_repeat1] = STATE(1127), + [aux_sym_decorated_definition_repeat1] = STATE(1146), [sym_identifier] = ACTIONS(7), [anon_sym_lazy] = ACTIONS(9), [anon_sym_import] = ACTIONS(11), @@ -11746,19 +11788,19 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [STATE(30)] = { [sym__statement] = STATE(61), [sym__simple_statements] = STATE(61), - [sym_import_statement] = STATE(1332), - [sym_future_import_statement] = STATE(1332), - [sym_import_from_statement] = STATE(1332), - [sym_print_statement] = STATE(1332), - [sym_assert_statement] = STATE(1332), - [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1156), - [sym_return_statement] = STATE(1332), - [sym_delete_statement] = STATE(1332), - [sym_raise_statement] = STATE(1332), - [sym_pass_statement] = STATE(1332), - [sym_break_statement] = STATE(1332), - [sym_continue_statement] = STATE(1332), + [sym_import_statement] = STATE(1345), + [sym_future_import_statement] = STATE(1345), + [sym_import_from_statement] = STATE(1345), + [sym_print_statement] = STATE(1345), + [sym_assert_statement] = STATE(1345), + [sym_expression_statement] = STATE(1345), + [sym_named_expression] = STATE(1126), + [sym_return_statement] = STATE(1345), + [sym_delete_statement] = STATE(1345), + [sym_raise_statement] = STATE(1345), + [sym_pass_statement] = STATE(1345), + [sym_break_statement] = STATE(1345), + [sym_continue_statement] = STATE(1345), [sym_if_statement] = STATE(61), [sym_for_statement] = STATE(61), [sym_while_statement] = STATE(61), @@ -11766,53 +11808,53 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_with_statement] = STATE(61), [sym_match_statement] = STATE(61), [sym_function_definition] = STATE(61), - [sym_list_splat] = STATE(1520), - [sym_dictionary_splat] = STATE(1520), - [sym_global_statement] = STATE(1332), - [sym_nonlocal_statement] = STATE(1332), - [sym_exec_statement] = STATE(1332), - [sym_type_alias_statement] = STATE(1332), + [sym_list_splat] = STATE(1590), + [sym_dictionary_splat] = STATE(1590), + [sym_global_statement] = STATE(1345), + [sym_nonlocal_statement] = STATE(1345), + [sym_exec_statement] = STATE(1345), + [sym_type_alias_statement] = STATE(1345), [sym_class_definition] = STATE(61), [sym_decorated_definition] = STATE(61), - [sym_decorator] = STATE(1127), - [sym_block] = STATE(438), - [sym_expression_list] = STATE(1522), - [sym_pattern] = STATE(1017), - [sym_tuple_pattern] = STATE(1001), - [sym_list_pattern] = STATE(1001), - [sym_list_splat_pattern] = STATE(1001), - [sym_expression] = STATE(1176), - [sym_primary_expression] = STATE(765), - [sym_not_operator] = STATE(1156), - [sym_boolean_operator] = STATE(1156), - [sym_binary_operator] = STATE(920), - [sym_unary_operator] = STATE(920), - [sym_comparison_operator] = STATE(1156), - [sym_lambda] = STATE(1156), - [sym_assignment] = STATE(1522), - [sym_augmented_assignment] = STATE(1522), - [sym_pattern_list] = STATE(1026), - [sym_yield] = STATE(1522), - [sym_attribute] = STATE(582), - [sym_subscript] = STATE(582), - [sym_call] = STATE(920), - [sym_list] = STATE(920), - [sym_set] = STATE(920), - [sym_tuple] = STATE(920), - [sym_dictionary] = STATE(920), - [sym_list_comprehension] = STATE(920), - [sym_dictionary_comprehension] = STATE(920), - [sym_set_comprehension] = STATE(920), - [sym_generator_expression] = STATE(920), - [sym_parenthesized_expression] = STATE(920), - [sym_conditional_expression] = STATE(1156), - [sym_concatenated_string] = STATE(920), - [sym_string] = STATE(775), - [sym_concatenated_template_string] = STATE(920), - [sym_template_string] = STATE(769), - [sym_await] = STATE(920), + [sym_decorator] = STATE(1146), + [sym_block] = STATE(450), + [sym_expression_list] = STATE(1545), + [sym_pattern] = STATE(1020), + [sym_tuple_pattern] = STATE(1005), + [sym_list_pattern] = STATE(1005), + [sym_list_splat_pattern] = STATE(1005), + [sym_expression] = STATE(1191), + [sym_primary_expression] = STATE(773), + [sym_not_operator] = STATE(1126), + [sym_boolean_operator] = STATE(1126), + [sym_binary_operator] = STATE(950), + [sym_unary_operator] = STATE(950), + [sym_comparison_operator] = STATE(1126), + [sym_lambda] = STATE(1126), + [sym_assignment] = STATE(1545), + [sym_augmented_assignment] = STATE(1545), + [sym_pattern_list] = STATE(1030), + [sym_yield] = STATE(1545), + [sym_attribute] = STATE(614), + [sym_subscript] = STATE(614), + [sym_call] = STATE(950), + [sym_list] = STATE(950), + [sym_set] = STATE(950), + [sym_tuple] = STATE(950), + [sym_dictionary] = STATE(950), + [sym_list_comprehension] = STATE(950), + [sym_dictionary_comprehension] = STATE(950), + [sym_set_comprehension] = STATE(950), + [sym_generator_expression] = STATE(950), + [sym_parenthesized_expression] = STATE(950), + [sym_conditional_expression] = STATE(1126), + [sym_concatenated_string] = STATE(950), + [sym_string] = STATE(779), + [sym_concatenated_template_string] = STATE(950), + [sym_template_string] = STATE(772), + [sym_await] = STATE(950), [aux_sym_module_repeat1] = STATE(61), - [aux_sym_decorated_definition_repeat1] = STATE(1127), + [aux_sym_decorated_definition_repeat1] = STATE(1146), [sym_identifier] = ACTIONS(7), [anon_sym_lazy] = ACTIONS(9), [anon_sym_import] = ACTIONS(11), @@ -11865,19 +11907,19 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [STATE(31)] = { [sym__statement] = STATE(61), [sym__simple_statements] = STATE(61), - [sym_import_statement] = STATE(1332), - [sym_future_import_statement] = STATE(1332), - [sym_import_from_statement] = STATE(1332), - [sym_print_statement] = STATE(1332), - [sym_assert_statement] = STATE(1332), - [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1156), - [sym_return_statement] = STATE(1332), - [sym_delete_statement] = STATE(1332), - [sym_raise_statement] = STATE(1332), - [sym_pass_statement] = STATE(1332), - [sym_break_statement] = STATE(1332), - [sym_continue_statement] = STATE(1332), + [sym_import_statement] = STATE(1345), + [sym_future_import_statement] = STATE(1345), + [sym_import_from_statement] = STATE(1345), + [sym_print_statement] = STATE(1345), + [sym_assert_statement] = STATE(1345), + [sym_expression_statement] = STATE(1345), + [sym_named_expression] = STATE(1126), + [sym_return_statement] = STATE(1345), + [sym_delete_statement] = STATE(1345), + [sym_raise_statement] = STATE(1345), + [sym_pass_statement] = STATE(1345), + [sym_break_statement] = STATE(1345), + [sym_continue_statement] = STATE(1345), [sym_if_statement] = STATE(61), [sym_for_statement] = STATE(61), [sym_while_statement] = STATE(61), @@ -11885,53 +11927,53 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_with_statement] = STATE(61), [sym_match_statement] = STATE(61), [sym_function_definition] = STATE(61), - [sym_list_splat] = STATE(1520), - [sym_dictionary_splat] = STATE(1520), - [sym_global_statement] = STATE(1332), - [sym_nonlocal_statement] = STATE(1332), - [sym_exec_statement] = STATE(1332), - [sym_type_alias_statement] = STATE(1332), + [sym_list_splat] = STATE(1590), + [sym_dictionary_splat] = STATE(1590), + [sym_global_statement] = STATE(1345), + [sym_nonlocal_statement] = STATE(1345), + [sym_exec_statement] = STATE(1345), + [sym_type_alias_statement] = STATE(1345), [sym_class_definition] = STATE(61), [sym_decorated_definition] = STATE(61), - [sym_decorator] = STATE(1127), - [sym_block] = STATE(439), - [sym_expression_list] = STATE(1522), - [sym_pattern] = STATE(1017), - [sym_tuple_pattern] = STATE(1001), - [sym_list_pattern] = STATE(1001), - [sym_list_splat_pattern] = STATE(1001), - [sym_expression] = STATE(1176), - [sym_primary_expression] = STATE(765), - [sym_not_operator] = STATE(1156), - [sym_boolean_operator] = STATE(1156), - [sym_binary_operator] = STATE(920), - [sym_unary_operator] = STATE(920), - [sym_comparison_operator] = STATE(1156), - [sym_lambda] = STATE(1156), - [sym_assignment] = STATE(1522), - [sym_augmented_assignment] = STATE(1522), - [sym_pattern_list] = STATE(1026), - [sym_yield] = STATE(1522), - [sym_attribute] = STATE(582), - [sym_subscript] = STATE(582), - [sym_call] = STATE(920), - [sym_list] = STATE(920), - [sym_set] = STATE(920), - [sym_tuple] = STATE(920), - [sym_dictionary] = STATE(920), - [sym_list_comprehension] = STATE(920), - [sym_dictionary_comprehension] = STATE(920), - [sym_set_comprehension] = STATE(920), - [sym_generator_expression] = STATE(920), - [sym_parenthesized_expression] = STATE(920), - [sym_conditional_expression] = STATE(1156), - [sym_concatenated_string] = STATE(920), - [sym_string] = STATE(775), - [sym_concatenated_template_string] = STATE(920), - [sym_template_string] = STATE(769), - [sym_await] = STATE(920), + [sym_decorator] = STATE(1146), + [sym_block] = STATE(451), + [sym_expression_list] = STATE(1545), + [sym_pattern] = STATE(1020), + [sym_tuple_pattern] = STATE(1005), + [sym_list_pattern] = STATE(1005), + [sym_list_splat_pattern] = STATE(1005), + [sym_expression] = STATE(1191), + [sym_primary_expression] = STATE(773), + [sym_not_operator] = STATE(1126), + [sym_boolean_operator] = STATE(1126), + [sym_binary_operator] = STATE(950), + [sym_unary_operator] = STATE(950), + [sym_comparison_operator] = STATE(1126), + [sym_lambda] = STATE(1126), + [sym_assignment] = STATE(1545), + [sym_augmented_assignment] = STATE(1545), + [sym_pattern_list] = STATE(1030), + [sym_yield] = STATE(1545), + [sym_attribute] = STATE(614), + [sym_subscript] = STATE(614), + [sym_call] = STATE(950), + [sym_list] = STATE(950), + [sym_set] = STATE(950), + [sym_tuple] = STATE(950), + [sym_dictionary] = STATE(950), + [sym_list_comprehension] = STATE(950), + [sym_dictionary_comprehension] = STATE(950), + [sym_set_comprehension] = STATE(950), + [sym_generator_expression] = STATE(950), + [sym_parenthesized_expression] = STATE(950), + [sym_conditional_expression] = STATE(1126), + [sym_concatenated_string] = STATE(950), + [sym_string] = STATE(779), + [sym_concatenated_template_string] = STATE(950), + [sym_template_string] = STATE(772), + [sym_await] = STATE(950), [aux_sym_module_repeat1] = STATE(61), - [aux_sym_decorated_definition_repeat1] = STATE(1127), + [aux_sym_decorated_definition_repeat1] = STATE(1146), [sym_identifier] = ACTIONS(7), [anon_sym_lazy] = ACTIONS(9), [anon_sym_import] = ACTIONS(11), @@ -11982,75 +12024,75 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__template_string_start] = ACTIONS(85), }, [STATE(32)] = { - [sym__statement] = STATE(64), - [sym__simple_statements] = STATE(64), - [sym_import_statement] = STATE(1332), - [sym_future_import_statement] = STATE(1332), - [sym_import_from_statement] = STATE(1332), - [sym_print_statement] = STATE(1332), - [sym_assert_statement] = STATE(1332), - [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1156), - [sym_return_statement] = STATE(1332), - [sym_delete_statement] = STATE(1332), - [sym_raise_statement] = STATE(1332), - [sym_pass_statement] = STATE(1332), - [sym_break_statement] = STATE(1332), - [sym_continue_statement] = STATE(1332), - [sym_if_statement] = STATE(64), - [sym_for_statement] = STATE(64), - [sym_while_statement] = STATE(64), - [sym_try_statement] = STATE(64), - [sym_with_statement] = STATE(64), - [sym_match_statement] = STATE(64), - [sym_function_definition] = STATE(64), - [sym_list_splat] = STATE(1520), - [sym_dictionary_splat] = STATE(1520), - [sym_global_statement] = STATE(1332), - [sym_nonlocal_statement] = STATE(1332), - [sym_exec_statement] = STATE(1332), - [sym_type_alias_statement] = STATE(1332), - [sym_class_definition] = STATE(64), - [sym_decorated_definition] = STATE(64), - [sym_decorator] = STATE(1127), - [sym_block] = STATE(475), - [sym_expression_list] = STATE(1522), - [sym_pattern] = STATE(1017), - [sym_tuple_pattern] = STATE(1001), - [sym_list_pattern] = STATE(1001), - [sym_list_splat_pattern] = STATE(1001), - [sym_expression] = STATE(1176), - [sym_primary_expression] = STATE(765), - [sym_not_operator] = STATE(1156), - [sym_boolean_operator] = STATE(1156), - [sym_binary_operator] = STATE(920), - [sym_unary_operator] = STATE(920), - [sym_comparison_operator] = STATE(1156), - [sym_lambda] = STATE(1156), - [sym_assignment] = STATE(1522), - [sym_augmented_assignment] = STATE(1522), - [sym_pattern_list] = STATE(1026), - [sym_yield] = STATE(1522), - [sym_attribute] = STATE(582), - [sym_subscript] = STATE(582), - [sym_call] = STATE(920), - [sym_list] = STATE(920), - [sym_set] = STATE(920), - [sym_tuple] = STATE(920), - [sym_dictionary] = STATE(920), - [sym_list_comprehension] = STATE(920), - [sym_dictionary_comprehension] = STATE(920), - [sym_set_comprehension] = STATE(920), - [sym_generator_expression] = STATE(920), - [sym_parenthesized_expression] = STATE(920), - [sym_conditional_expression] = STATE(1156), - [sym_concatenated_string] = STATE(920), - [sym_string] = STATE(775), - [sym_concatenated_template_string] = STATE(920), - [sym_template_string] = STATE(769), - [sym_await] = STATE(920), - [aux_sym_module_repeat1] = STATE(64), - [aux_sym_decorated_definition_repeat1] = STATE(1127), + [sym__statement] = STATE(63), + [sym__simple_statements] = STATE(63), + [sym_import_statement] = STATE(1345), + [sym_future_import_statement] = STATE(1345), + [sym_import_from_statement] = STATE(1345), + [sym_print_statement] = STATE(1345), + [sym_assert_statement] = STATE(1345), + [sym_expression_statement] = STATE(1345), + [sym_named_expression] = STATE(1126), + [sym_return_statement] = STATE(1345), + [sym_delete_statement] = STATE(1345), + [sym_raise_statement] = STATE(1345), + [sym_pass_statement] = STATE(1345), + [sym_break_statement] = STATE(1345), + [sym_continue_statement] = STATE(1345), + [sym_if_statement] = STATE(63), + [sym_for_statement] = STATE(63), + [sym_while_statement] = STATE(63), + [sym_try_statement] = STATE(63), + [sym_with_statement] = STATE(63), + [sym_match_statement] = STATE(63), + [sym_function_definition] = STATE(63), + [sym_list_splat] = STATE(1590), + [sym_dictionary_splat] = STATE(1590), + [sym_global_statement] = STATE(1345), + [sym_nonlocal_statement] = STATE(1345), + [sym_exec_statement] = STATE(1345), + [sym_type_alias_statement] = STATE(1345), + [sym_class_definition] = STATE(63), + [sym_decorated_definition] = STATE(63), + [sym_decorator] = STATE(1146), + [sym_block] = STATE(322), + [sym_expression_list] = STATE(1545), + [sym_pattern] = STATE(1020), + [sym_tuple_pattern] = STATE(1005), + [sym_list_pattern] = STATE(1005), + [sym_list_splat_pattern] = STATE(1005), + [sym_expression] = STATE(1191), + [sym_primary_expression] = STATE(773), + [sym_not_operator] = STATE(1126), + [sym_boolean_operator] = STATE(1126), + [sym_binary_operator] = STATE(950), + [sym_unary_operator] = STATE(950), + [sym_comparison_operator] = STATE(1126), + [sym_lambda] = STATE(1126), + [sym_assignment] = STATE(1545), + [sym_augmented_assignment] = STATE(1545), + [sym_pattern_list] = STATE(1030), + [sym_yield] = STATE(1545), + [sym_attribute] = STATE(614), + [sym_subscript] = STATE(614), + [sym_call] = STATE(950), + [sym_list] = STATE(950), + [sym_set] = STATE(950), + [sym_tuple] = STATE(950), + [sym_dictionary] = STATE(950), + [sym_list_comprehension] = STATE(950), + [sym_dictionary_comprehension] = STATE(950), + [sym_set_comprehension] = STATE(950), + [sym_generator_expression] = STATE(950), + [sym_parenthesized_expression] = STATE(950), + [sym_conditional_expression] = STATE(1126), + [sym_concatenated_string] = STATE(950), + [sym_string] = STATE(779), + [sym_concatenated_template_string] = STATE(950), + [sym_template_string] = STATE(772), + [sym_await] = STATE(950), + [aux_sym_module_repeat1] = STATE(63), + [aux_sym_decorated_definition_repeat1] = STATE(1146), [sym_identifier] = ACTIONS(7), [anon_sym_lazy] = ACTIONS(9), [anon_sym_import] = ACTIONS(11), @@ -12101,75 +12143,75 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__template_string_start] = ACTIONS(85), }, [STATE(33)] = { - [sym__statement] = STATE(64), - [sym__simple_statements] = STATE(64), - [sym_import_statement] = STATE(1332), - [sym_future_import_statement] = STATE(1332), - [sym_import_from_statement] = STATE(1332), - [sym_print_statement] = STATE(1332), - [sym_assert_statement] = STATE(1332), - [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1156), - [sym_return_statement] = STATE(1332), - [sym_delete_statement] = STATE(1332), - [sym_raise_statement] = STATE(1332), - [sym_pass_statement] = STATE(1332), - [sym_break_statement] = STATE(1332), - [sym_continue_statement] = STATE(1332), - [sym_if_statement] = STATE(64), - [sym_for_statement] = STATE(64), - [sym_while_statement] = STATE(64), - [sym_try_statement] = STATE(64), - [sym_with_statement] = STATE(64), - [sym_match_statement] = STATE(64), - [sym_function_definition] = STATE(64), - [sym_list_splat] = STATE(1520), - [sym_dictionary_splat] = STATE(1520), - [sym_global_statement] = STATE(1332), - [sym_nonlocal_statement] = STATE(1332), - [sym_exec_statement] = STATE(1332), - [sym_type_alias_statement] = STATE(1332), - [sym_class_definition] = STATE(64), - [sym_decorated_definition] = STATE(64), - [sym_decorator] = STATE(1127), - [sym_block] = STATE(524), - [sym_expression_list] = STATE(1522), - [sym_pattern] = STATE(1017), - [sym_tuple_pattern] = STATE(1001), - [sym_list_pattern] = STATE(1001), - [sym_list_splat_pattern] = STATE(1001), - [sym_expression] = STATE(1176), - [sym_primary_expression] = STATE(765), - [sym_not_operator] = STATE(1156), - [sym_boolean_operator] = STATE(1156), - [sym_binary_operator] = STATE(920), - [sym_unary_operator] = STATE(920), - [sym_comparison_operator] = STATE(1156), - [sym_lambda] = STATE(1156), - [sym_assignment] = STATE(1522), - [sym_augmented_assignment] = STATE(1522), - [sym_pattern_list] = STATE(1026), - [sym_yield] = STATE(1522), - [sym_attribute] = STATE(582), - [sym_subscript] = STATE(582), - [sym_call] = STATE(920), - [sym_list] = STATE(920), - [sym_set] = STATE(920), - [sym_tuple] = STATE(920), - [sym_dictionary] = STATE(920), - [sym_list_comprehension] = STATE(920), - [sym_dictionary_comprehension] = STATE(920), - [sym_set_comprehension] = STATE(920), - [sym_generator_expression] = STATE(920), - [sym_parenthesized_expression] = STATE(920), - [sym_conditional_expression] = STATE(1156), - [sym_concatenated_string] = STATE(920), - [sym_string] = STATE(775), - [sym_concatenated_template_string] = STATE(920), - [sym_template_string] = STATE(769), - [sym_await] = STATE(920), - [aux_sym_module_repeat1] = STATE(64), - [aux_sym_decorated_definition_repeat1] = STATE(1127), + [sym__statement] = STATE(63), + [sym__simple_statements] = STATE(63), + [sym_import_statement] = STATE(1345), + [sym_future_import_statement] = STATE(1345), + [sym_import_from_statement] = STATE(1345), + [sym_print_statement] = STATE(1345), + [sym_assert_statement] = STATE(1345), + [sym_expression_statement] = STATE(1345), + [sym_named_expression] = STATE(1126), + [sym_return_statement] = STATE(1345), + [sym_delete_statement] = STATE(1345), + [sym_raise_statement] = STATE(1345), + [sym_pass_statement] = STATE(1345), + [sym_break_statement] = STATE(1345), + [sym_continue_statement] = STATE(1345), + [sym_if_statement] = STATE(63), + [sym_for_statement] = STATE(63), + [sym_while_statement] = STATE(63), + [sym_try_statement] = STATE(63), + [sym_with_statement] = STATE(63), + [sym_match_statement] = STATE(63), + [sym_function_definition] = STATE(63), + [sym_list_splat] = STATE(1590), + [sym_dictionary_splat] = STATE(1590), + [sym_global_statement] = STATE(1345), + [sym_nonlocal_statement] = STATE(1345), + [sym_exec_statement] = STATE(1345), + [sym_type_alias_statement] = STATE(1345), + [sym_class_definition] = STATE(63), + [sym_decorated_definition] = STATE(63), + [sym_decorator] = STATE(1146), + [sym_block] = STATE(559), + [sym_expression_list] = STATE(1545), + [sym_pattern] = STATE(1020), + [sym_tuple_pattern] = STATE(1005), + [sym_list_pattern] = STATE(1005), + [sym_list_splat_pattern] = STATE(1005), + [sym_expression] = STATE(1191), + [sym_primary_expression] = STATE(773), + [sym_not_operator] = STATE(1126), + [sym_boolean_operator] = STATE(1126), + [sym_binary_operator] = STATE(950), + [sym_unary_operator] = STATE(950), + [sym_comparison_operator] = STATE(1126), + [sym_lambda] = STATE(1126), + [sym_assignment] = STATE(1545), + [sym_augmented_assignment] = STATE(1545), + [sym_pattern_list] = STATE(1030), + [sym_yield] = STATE(1545), + [sym_attribute] = STATE(614), + [sym_subscript] = STATE(614), + [sym_call] = STATE(950), + [sym_list] = STATE(950), + [sym_set] = STATE(950), + [sym_tuple] = STATE(950), + [sym_dictionary] = STATE(950), + [sym_list_comprehension] = STATE(950), + [sym_dictionary_comprehension] = STATE(950), + [sym_set_comprehension] = STATE(950), + [sym_generator_expression] = STATE(950), + [sym_parenthesized_expression] = STATE(950), + [sym_conditional_expression] = STATE(1126), + [sym_concatenated_string] = STATE(950), + [sym_string] = STATE(779), + [sym_concatenated_template_string] = STATE(950), + [sym_template_string] = STATE(772), + [sym_await] = STATE(950), + [aux_sym_module_repeat1] = STATE(63), + [aux_sym_decorated_definition_repeat1] = STATE(1146), [sym_identifier] = ACTIONS(7), [anon_sym_lazy] = ACTIONS(9), [anon_sym_import] = ACTIONS(11), @@ -12220,75 +12262,75 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__template_string_start] = ACTIONS(85), }, [STATE(34)] = { - [sym__statement] = STATE(64), - [sym__simple_statements] = STATE(64), - [sym_import_statement] = STATE(1332), - [sym_future_import_statement] = STATE(1332), - [sym_import_from_statement] = STATE(1332), - [sym_print_statement] = STATE(1332), - [sym_assert_statement] = STATE(1332), - [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1156), - [sym_return_statement] = STATE(1332), - [sym_delete_statement] = STATE(1332), - [sym_raise_statement] = STATE(1332), - [sym_pass_statement] = STATE(1332), - [sym_break_statement] = STATE(1332), - [sym_continue_statement] = STATE(1332), - [sym_if_statement] = STATE(64), - [sym_for_statement] = STATE(64), - [sym_while_statement] = STATE(64), - [sym_try_statement] = STATE(64), - [sym_with_statement] = STATE(64), - [sym_match_statement] = STATE(64), - [sym_function_definition] = STATE(64), - [sym_list_splat] = STATE(1520), - [sym_dictionary_splat] = STATE(1520), - [sym_global_statement] = STATE(1332), - [sym_nonlocal_statement] = STATE(1332), - [sym_exec_statement] = STATE(1332), - [sym_type_alias_statement] = STATE(1332), - [sym_class_definition] = STATE(64), - [sym_decorated_definition] = STATE(64), - [sym_decorator] = STATE(1127), - [sym_block] = STATE(529), - [sym_expression_list] = STATE(1522), - [sym_pattern] = STATE(1017), - [sym_tuple_pattern] = STATE(1001), - [sym_list_pattern] = STATE(1001), - [sym_list_splat_pattern] = STATE(1001), - [sym_expression] = STATE(1176), - [sym_primary_expression] = STATE(765), - [sym_not_operator] = STATE(1156), - [sym_boolean_operator] = STATE(1156), - [sym_binary_operator] = STATE(920), - [sym_unary_operator] = STATE(920), - [sym_comparison_operator] = STATE(1156), - [sym_lambda] = STATE(1156), - [sym_assignment] = STATE(1522), - [sym_augmented_assignment] = STATE(1522), - [sym_pattern_list] = STATE(1026), - [sym_yield] = STATE(1522), - [sym_attribute] = STATE(582), - [sym_subscript] = STATE(582), - [sym_call] = STATE(920), - [sym_list] = STATE(920), - [sym_set] = STATE(920), - [sym_tuple] = STATE(920), - [sym_dictionary] = STATE(920), - [sym_list_comprehension] = STATE(920), - [sym_dictionary_comprehension] = STATE(920), - [sym_set_comprehension] = STATE(920), - [sym_generator_expression] = STATE(920), - [sym_parenthesized_expression] = STATE(920), - [sym_conditional_expression] = STATE(1156), - [sym_concatenated_string] = STATE(920), - [sym_string] = STATE(775), - [sym_concatenated_template_string] = STATE(920), - [sym_template_string] = STATE(769), - [sym_await] = STATE(920), - [aux_sym_module_repeat1] = STATE(64), - [aux_sym_decorated_definition_repeat1] = STATE(1127), + [sym__statement] = STATE(63), + [sym__simple_statements] = STATE(63), + [sym_import_statement] = STATE(1345), + [sym_future_import_statement] = STATE(1345), + [sym_import_from_statement] = STATE(1345), + [sym_print_statement] = STATE(1345), + [sym_assert_statement] = STATE(1345), + [sym_expression_statement] = STATE(1345), + [sym_named_expression] = STATE(1126), + [sym_return_statement] = STATE(1345), + [sym_delete_statement] = STATE(1345), + [sym_raise_statement] = STATE(1345), + [sym_pass_statement] = STATE(1345), + [sym_break_statement] = STATE(1345), + [sym_continue_statement] = STATE(1345), + [sym_if_statement] = STATE(63), + [sym_for_statement] = STATE(63), + [sym_while_statement] = STATE(63), + [sym_try_statement] = STATE(63), + [sym_with_statement] = STATE(63), + [sym_match_statement] = STATE(63), + [sym_function_definition] = STATE(63), + [sym_list_splat] = STATE(1590), + [sym_dictionary_splat] = STATE(1590), + [sym_global_statement] = STATE(1345), + [sym_nonlocal_statement] = STATE(1345), + [sym_exec_statement] = STATE(1345), + [sym_type_alias_statement] = STATE(1345), + [sym_class_definition] = STATE(63), + [sym_decorated_definition] = STATE(63), + [sym_decorator] = STATE(1146), + [sym_block] = STATE(567), + [sym_expression_list] = STATE(1545), + [sym_pattern] = STATE(1020), + [sym_tuple_pattern] = STATE(1005), + [sym_list_pattern] = STATE(1005), + [sym_list_splat_pattern] = STATE(1005), + [sym_expression] = STATE(1191), + [sym_primary_expression] = STATE(773), + [sym_not_operator] = STATE(1126), + [sym_boolean_operator] = STATE(1126), + [sym_binary_operator] = STATE(950), + [sym_unary_operator] = STATE(950), + [sym_comparison_operator] = STATE(1126), + [sym_lambda] = STATE(1126), + [sym_assignment] = STATE(1545), + [sym_augmented_assignment] = STATE(1545), + [sym_pattern_list] = STATE(1030), + [sym_yield] = STATE(1545), + [sym_attribute] = STATE(614), + [sym_subscript] = STATE(614), + [sym_call] = STATE(950), + [sym_list] = STATE(950), + [sym_set] = STATE(950), + [sym_tuple] = STATE(950), + [sym_dictionary] = STATE(950), + [sym_list_comprehension] = STATE(950), + [sym_dictionary_comprehension] = STATE(950), + [sym_set_comprehension] = STATE(950), + [sym_generator_expression] = STATE(950), + [sym_parenthesized_expression] = STATE(950), + [sym_conditional_expression] = STATE(1126), + [sym_concatenated_string] = STATE(950), + [sym_string] = STATE(779), + [sym_concatenated_template_string] = STATE(950), + [sym_template_string] = STATE(772), + [sym_await] = STATE(950), + [aux_sym_module_repeat1] = STATE(63), + [aux_sym_decorated_definition_repeat1] = STATE(1146), [sym_identifier] = ACTIONS(7), [anon_sym_lazy] = ACTIONS(9), [anon_sym_import] = ACTIONS(11), @@ -12339,75 +12381,75 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__template_string_start] = ACTIONS(85), }, [STATE(35)] = { - [sym__statement] = STATE(64), - [sym__simple_statements] = STATE(64), - [sym_import_statement] = STATE(1332), - [sym_future_import_statement] = STATE(1332), - [sym_import_from_statement] = STATE(1332), - [sym_print_statement] = STATE(1332), - [sym_assert_statement] = STATE(1332), - [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1156), - [sym_return_statement] = STATE(1332), - [sym_delete_statement] = STATE(1332), - [sym_raise_statement] = STATE(1332), - [sym_pass_statement] = STATE(1332), - [sym_break_statement] = STATE(1332), - [sym_continue_statement] = STATE(1332), - [sym_if_statement] = STATE(64), - [sym_for_statement] = STATE(64), - [sym_while_statement] = STATE(64), - [sym_try_statement] = STATE(64), - [sym_with_statement] = STATE(64), - [sym_match_statement] = STATE(64), - [sym_function_definition] = STATE(64), - [sym_list_splat] = STATE(1520), - [sym_dictionary_splat] = STATE(1520), - [sym_global_statement] = STATE(1332), - [sym_nonlocal_statement] = STATE(1332), - [sym_exec_statement] = STATE(1332), - [sym_type_alias_statement] = STATE(1332), - [sym_class_definition] = STATE(64), - [sym_decorated_definition] = STATE(64), - [sym_decorator] = STATE(1127), - [sym_block] = STATE(535), - [sym_expression_list] = STATE(1522), - [sym_pattern] = STATE(1017), - [sym_tuple_pattern] = STATE(1001), - [sym_list_pattern] = STATE(1001), - [sym_list_splat_pattern] = STATE(1001), - [sym_expression] = STATE(1176), - [sym_primary_expression] = STATE(765), - [sym_not_operator] = STATE(1156), - [sym_boolean_operator] = STATE(1156), - [sym_binary_operator] = STATE(920), - [sym_unary_operator] = STATE(920), - [sym_comparison_operator] = STATE(1156), - [sym_lambda] = STATE(1156), - [sym_assignment] = STATE(1522), - [sym_augmented_assignment] = STATE(1522), - [sym_pattern_list] = STATE(1026), - [sym_yield] = STATE(1522), - [sym_attribute] = STATE(582), - [sym_subscript] = STATE(582), - [sym_call] = STATE(920), - [sym_list] = STATE(920), - [sym_set] = STATE(920), - [sym_tuple] = STATE(920), - [sym_dictionary] = STATE(920), - [sym_list_comprehension] = STATE(920), - [sym_dictionary_comprehension] = STATE(920), - [sym_set_comprehension] = STATE(920), - [sym_generator_expression] = STATE(920), - [sym_parenthesized_expression] = STATE(920), - [sym_conditional_expression] = STATE(1156), - [sym_concatenated_string] = STATE(920), - [sym_string] = STATE(775), - [sym_concatenated_template_string] = STATE(920), - [sym_template_string] = STATE(769), - [sym_await] = STATE(920), - [aux_sym_module_repeat1] = STATE(64), - [aux_sym_decorated_definition_repeat1] = STATE(1127), + [sym__statement] = STATE(63), + [sym__simple_statements] = STATE(63), + [sym_import_statement] = STATE(1345), + [sym_future_import_statement] = STATE(1345), + [sym_import_from_statement] = STATE(1345), + [sym_print_statement] = STATE(1345), + [sym_assert_statement] = STATE(1345), + [sym_expression_statement] = STATE(1345), + [sym_named_expression] = STATE(1126), + [sym_return_statement] = STATE(1345), + [sym_delete_statement] = STATE(1345), + [sym_raise_statement] = STATE(1345), + [sym_pass_statement] = STATE(1345), + [sym_break_statement] = STATE(1345), + [sym_continue_statement] = STATE(1345), + [sym_if_statement] = STATE(63), + [sym_for_statement] = STATE(63), + [sym_while_statement] = STATE(63), + [sym_try_statement] = STATE(63), + [sym_with_statement] = STATE(63), + [sym_match_statement] = STATE(63), + [sym_function_definition] = STATE(63), + [sym_list_splat] = STATE(1590), + [sym_dictionary_splat] = STATE(1590), + [sym_global_statement] = STATE(1345), + [sym_nonlocal_statement] = STATE(1345), + [sym_exec_statement] = STATE(1345), + [sym_type_alias_statement] = STATE(1345), + [sym_class_definition] = STATE(63), + [sym_decorated_definition] = STATE(63), + [sym_decorator] = STATE(1146), + [sym_block] = STATE(573), + [sym_expression_list] = STATE(1545), + [sym_pattern] = STATE(1020), + [sym_tuple_pattern] = STATE(1005), + [sym_list_pattern] = STATE(1005), + [sym_list_splat_pattern] = STATE(1005), + [sym_expression] = STATE(1191), + [sym_primary_expression] = STATE(773), + [sym_not_operator] = STATE(1126), + [sym_boolean_operator] = STATE(1126), + [sym_binary_operator] = STATE(950), + [sym_unary_operator] = STATE(950), + [sym_comparison_operator] = STATE(1126), + [sym_lambda] = STATE(1126), + [sym_assignment] = STATE(1545), + [sym_augmented_assignment] = STATE(1545), + [sym_pattern_list] = STATE(1030), + [sym_yield] = STATE(1545), + [sym_attribute] = STATE(614), + [sym_subscript] = STATE(614), + [sym_call] = STATE(950), + [sym_list] = STATE(950), + [sym_set] = STATE(950), + [sym_tuple] = STATE(950), + [sym_dictionary] = STATE(950), + [sym_list_comprehension] = STATE(950), + [sym_dictionary_comprehension] = STATE(950), + [sym_set_comprehension] = STATE(950), + [sym_generator_expression] = STATE(950), + [sym_parenthesized_expression] = STATE(950), + [sym_conditional_expression] = STATE(1126), + [sym_concatenated_string] = STATE(950), + [sym_string] = STATE(779), + [sym_concatenated_template_string] = STATE(950), + [sym_template_string] = STATE(772), + [sym_await] = STATE(950), + [aux_sym_module_repeat1] = STATE(63), + [aux_sym_decorated_definition_repeat1] = STATE(1146), [sym_identifier] = ACTIONS(7), [anon_sym_lazy] = ACTIONS(9), [anon_sym_import] = ACTIONS(11), @@ -12458,75 +12500,75 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__template_string_start] = ACTIONS(85), }, [STATE(36)] = { - [sym__statement] = STATE(64), - [sym__simple_statements] = STATE(64), - [sym_import_statement] = STATE(1332), - [sym_future_import_statement] = STATE(1332), - [sym_import_from_statement] = STATE(1332), - [sym_print_statement] = STATE(1332), - [sym_assert_statement] = STATE(1332), - [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1156), - [sym_return_statement] = STATE(1332), - [sym_delete_statement] = STATE(1332), - [sym_raise_statement] = STATE(1332), - [sym_pass_statement] = STATE(1332), - [sym_break_statement] = STATE(1332), - [sym_continue_statement] = STATE(1332), - [sym_if_statement] = STATE(64), - [sym_for_statement] = STATE(64), - [sym_while_statement] = STATE(64), - [sym_try_statement] = STATE(64), - [sym_with_statement] = STATE(64), - [sym_match_statement] = STATE(64), - [sym_function_definition] = STATE(64), - [sym_list_splat] = STATE(1520), - [sym_dictionary_splat] = STATE(1520), - [sym_global_statement] = STATE(1332), - [sym_nonlocal_statement] = STATE(1332), - [sym_exec_statement] = STATE(1332), - [sym_type_alias_statement] = STATE(1332), - [sym_class_definition] = STATE(64), - [sym_decorated_definition] = STATE(64), - [sym_decorator] = STATE(1127), - [sym_block] = STATE(537), - [sym_expression_list] = STATE(1522), - [sym_pattern] = STATE(1017), - [sym_tuple_pattern] = STATE(1001), - [sym_list_pattern] = STATE(1001), - [sym_list_splat_pattern] = STATE(1001), - [sym_expression] = STATE(1176), - [sym_primary_expression] = STATE(765), - [sym_not_operator] = STATE(1156), - [sym_boolean_operator] = STATE(1156), - [sym_binary_operator] = STATE(920), - [sym_unary_operator] = STATE(920), - [sym_comparison_operator] = STATE(1156), - [sym_lambda] = STATE(1156), - [sym_assignment] = STATE(1522), - [sym_augmented_assignment] = STATE(1522), - [sym_pattern_list] = STATE(1026), - [sym_yield] = STATE(1522), - [sym_attribute] = STATE(582), - [sym_subscript] = STATE(582), - [sym_call] = STATE(920), - [sym_list] = STATE(920), - [sym_set] = STATE(920), - [sym_tuple] = STATE(920), - [sym_dictionary] = STATE(920), - [sym_list_comprehension] = STATE(920), - [sym_dictionary_comprehension] = STATE(920), - [sym_set_comprehension] = STATE(920), - [sym_generator_expression] = STATE(920), - [sym_parenthesized_expression] = STATE(920), - [sym_conditional_expression] = STATE(1156), - [sym_concatenated_string] = STATE(920), - [sym_string] = STATE(775), - [sym_concatenated_template_string] = STATE(920), - [sym_template_string] = STATE(769), - [sym_await] = STATE(920), - [aux_sym_module_repeat1] = STATE(64), - [aux_sym_decorated_definition_repeat1] = STATE(1127), + [sym__statement] = STATE(63), + [sym__simple_statements] = STATE(63), + [sym_import_statement] = STATE(1345), + [sym_future_import_statement] = STATE(1345), + [sym_import_from_statement] = STATE(1345), + [sym_print_statement] = STATE(1345), + [sym_assert_statement] = STATE(1345), + [sym_expression_statement] = STATE(1345), + [sym_named_expression] = STATE(1126), + [sym_return_statement] = STATE(1345), + [sym_delete_statement] = STATE(1345), + [sym_raise_statement] = STATE(1345), + [sym_pass_statement] = STATE(1345), + [sym_break_statement] = STATE(1345), + [sym_continue_statement] = STATE(1345), + [sym_if_statement] = STATE(63), + [sym_for_statement] = STATE(63), + [sym_while_statement] = STATE(63), + [sym_try_statement] = STATE(63), + [sym_with_statement] = STATE(63), + [sym_match_statement] = STATE(63), + [sym_function_definition] = STATE(63), + [sym_list_splat] = STATE(1590), + [sym_dictionary_splat] = STATE(1590), + [sym_global_statement] = STATE(1345), + [sym_nonlocal_statement] = STATE(1345), + [sym_exec_statement] = STATE(1345), + [sym_type_alias_statement] = STATE(1345), + [sym_class_definition] = STATE(63), + [sym_decorated_definition] = STATE(63), + [sym_decorator] = STATE(1146), + [sym_block] = STATE(575), + [sym_expression_list] = STATE(1545), + [sym_pattern] = STATE(1020), + [sym_tuple_pattern] = STATE(1005), + [sym_list_pattern] = STATE(1005), + [sym_list_splat_pattern] = STATE(1005), + [sym_expression] = STATE(1191), + [sym_primary_expression] = STATE(773), + [sym_not_operator] = STATE(1126), + [sym_boolean_operator] = STATE(1126), + [sym_binary_operator] = STATE(950), + [sym_unary_operator] = STATE(950), + [sym_comparison_operator] = STATE(1126), + [sym_lambda] = STATE(1126), + [sym_assignment] = STATE(1545), + [sym_augmented_assignment] = STATE(1545), + [sym_pattern_list] = STATE(1030), + [sym_yield] = STATE(1545), + [sym_attribute] = STATE(614), + [sym_subscript] = STATE(614), + [sym_call] = STATE(950), + [sym_list] = STATE(950), + [sym_set] = STATE(950), + [sym_tuple] = STATE(950), + [sym_dictionary] = STATE(950), + [sym_list_comprehension] = STATE(950), + [sym_dictionary_comprehension] = STATE(950), + [sym_set_comprehension] = STATE(950), + [sym_generator_expression] = STATE(950), + [sym_parenthesized_expression] = STATE(950), + [sym_conditional_expression] = STATE(1126), + [sym_concatenated_string] = STATE(950), + [sym_string] = STATE(779), + [sym_concatenated_template_string] = STATE(950), + [sym_template_string] = STATE(772), + [sym_await] = STATE(950), + [aux_sym_module_repeat1] = STATE(63), + [aux_sym_decorated_definition_repeat1] = STATE(1146), [sym_identifier] = ACTIONS(7), [anon_sym_lazy] = ACTIONS(9), [anon_sym_import] = ACTIONS(11), @@ -12577,75 +12619,75 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__template_string_start] = ACTIONS(85), }, [STATE(37)] = { - [sym__statement] = STATE(64), - [sym__simple_statements] = STATE(64), - [sym_import_statement] = STATE(1332), - [sym_future_import_statement] = STATE(1332), - [sym_import_from_statement] = STATE(1332), - [sym_print_statement] = STATE(1332), - [sym_assert_statement] = STATE(1332), - [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1156), - [sym_return_statement] = STATE(1332), - [sym_delete_statement] = STATE(1332), - [sym_raise_statement] = STATE(1332), - [sym_pass_statement] = STATE(1332), - [sym_break_statement] = STATE(1332), - [sym_continue_statement] = STATE(1332), - [sym_if_statement] = STATE(64), - [sym_for_statement] = STATE(64), - [sym_while_statement] = STATE(64), - [sym_try_statement] = STATE(64), - [sym_with_statement] = STATE(64), - [sym_match_statement] = STATE(64), - [sym_function_definition] = STATE(64), - [sym_list_splat] = STATE(1520), - [sym_dictionary_splat] = STATE(1520), - [sym_global_statement] = STATE(1332), - [sym_nonlocal_statement] = STATE(1332), - [sym_exec_statement] = STATE(1332), - [sym_type_alias_statement] = STATE(1332), - [sym_class_definition] = STATE(64), - [sym_decorated_definition] = STATE(64), - [sym_decorator] = STATE(1127), - [sym_block] = STATE(539), - [sym_expression_list] = STATE(1522), - [sym_pattern] = STATE(1017), - [sym_tuple_pattern] = STATE(1001), - [sym_list_pattern] = STATE(1001), - [sym_list_splat_pattern] = STATE(1001), - [sym_expression] = STATE(1176), - [sym_primary_expression] = STATE(765), - [sym_not_operator] = STATE(1156), - [sym_boolean_operator] = STATE(1156), - [sym_binary_operator] = STATE(920), - [sym_unary_operator] = STATE(920), - [sym_comparison_operator] = STATE(1156), - [sym_lambda] = STATE(1156), - [sym_assignment] = STATE(1522), - [sym_augmented_assignment] = STATE(1522), - [sym_pattern_list] = STATE(1026), - [sym_yield] = STATE(1522), - [sym_attribute] = STATE(582), - [sym_subscript] = STATE(582), - [sym_call] = STATE(920), - [sym_list] = STATE(920), - [sym_set] = STATE(920), - [sym_tuple] = STATE(920), - [sym_dictionary] = STATE(920), - [sym_list_comprehension] = STATE(920), - [sym_dictionary_comprehension] = STATE(920), - [sym_set_comprehension] = STATE(920), - [sym_generator_expression] = STATE(920), - [sym_parenthesized_expression] = STATE(920), - [sym_conditional_expression] = STATE(1156), - [sym_concatenated_string] = STATE(920), - [sym_string] = STATE(775), - [sym_concatenated_template_string] = STATE(920), - [sym_template_string] = STATE(769), - [sym_await] = STATE(920), - [aux_sym_module_repeat1] = STATE(64), - [aux_sym_decorated_definition_repeat1] = STATE(1127), + [sym__statement] = STATE(63), + [sym__simple_statements] = STATE(63), + [sym_import_statement] = STATE(1345), + [sym_future_import_statement] = STATE(1345), + [sym_import_from_statement] = STATE(1345), + [sym_print_statement] = STATE(1345), + [sym_assert_statement] = STATE(1345), + [sym_expression_statement] = STATE(1345), + [sym_named_expression] = STATE(1126), + [sym_return_statement] = STATE(1345), + [sym_delete_statement] = STATE(1345), + [sym_raise_statement] = STATE(1345), + [sym_pass_statement] = STATE(1345), + [sym_break_statement] = STATE(1345), + [sym_continue_statement] = STATE(1345), + [sym_if_statement] = STATE(63), + [sym_for_statement] = STATE(63), + [sym_while_statement] = STATE(63), + [sym_try_statement] = STATE(63), + [sym_with_statement] = STATE(63), + [sym_match_statement] = STATE(63), + [sym_function_definition] = STATE(63), + [sym_list_splat] = STATE(1590), + [sym_dictionary_splat] = STATE(1590), + [sym_global_statement] = STATE(1345), + [sym_nonlocal_statement] = STATE(1345), + [sym_exec_statement] = STATE(1345), + [sym_type_alias_statement] = STATE(1345), + [sym_class_definition] = STATE(63), + [sym_decorated_definition] = STATE(63), + [sym_decorator] = STATE(1146), + [sym_block] = STATE(577), + [sym_expression_list] = STATE(1545), + [sym_pattern] = STATE(1020), + [sym_tuple_pattern] = STATE(1005), + [sym_list_pattern] = STATE(1005), + [sym_list_splat_pattern] = STATE(1005), + [sym_expression] = STATE(1191), + [sym_primary_expression] = STATE(773), + [sym_not_operator] = STATE(1126), + [sym_boolean_operator] = STATE(1126), + [sym_binary_operator] = STATE(950), + [sym_unary_operator] = STATE(950), + [sym_comparison_operator] = STATE(1126), + [sym_lambda] = STATE(1126), + [sym_assignment] = STATE(1545), + [sym_augmented_assignment] = STATE(1545), + [sym_pattern_list] = STATE(1030), + [sym_yield] = STATE(1545), + [sym_attribute] = STATE(614), + [sym_subscript] = STATE(614), + [sym_call] = STATE(950), + [sym_list] = STATE(950), + [sym_set] = STATE(950), + [sym_tuple] = STATE(950), + [sym_dictionary] = STATE(950), + [sym_list_comprehension] = STATE(950), + [sym_dictionary_comprehension] = STATE(950), + [sym_set_comprehension] = STATE(950), + [sym_generator_expression] = STATE(950), + [sym_parenthesized_expression] = STATE(950), + [sym_conditional_expression] = STATE(1126), + [sym_concatenated_string] = STATE(950), + [sym_string] = STATE(779), + [sym_concatenated_template_string] = STATE(950), + [sym_template_string] = STATE(772), + [sym_await] = STATE(950), + [aux_sym_module_repeat1] = STATE(63), + [aux_sym_decorated_definition_repeat1] = STATE(1146), [sym_identifier] = ACTIONS(7), [anon_sym_lazy] = ACTIONS(9), [anon_sym_import] = ACTIONS(11), @@ -12696,75 +12738,75 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__template_string_start] = ACTIONS(85), }, [STATE(38)] = { - [sym__statement] = STATE(64), - [sym__simple_statements] = STATE(64), - [sym_import_statement] = STATE(1332), - [sym_future_import_statement] = STATE(1332), - [sym_import_from_statement] = STATE(1332), - [sym_print_statement] = STATE(1332), - [sym_assert_statement] = STATE(1332), - [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1156), - [sym_return_statement] = STATE(1332), - [sym_delete_statement] = STATE(1332), - [sym_raise_statement] = STATE(1332), - [sym_pass_statement] = STATE(1332), - [sym_break_statement] = STATE(1332), - [sym_continue_statement] = STATE(1332), - [sym_if_statement] = STATE(64), - [sym_for_statement] = STATE(64), - [sym_while_statement] = STATE(64), - [sym_try_statement] = STATE(64), - [sym_with_statement] = STATE(64), - [sym_match_statement] = STATE(64), - [sym_function_definition] = STATE(64), - [sym_list_splat] = STATE(1520), - [sym_dictionary_splat] = STATE(1520), - [sym_global_statement] = STATE(1332), - [sym_nonlocal_statement] = STATE(1332), - [sym_exec_statement] = STATE(1332), - [sym_type_alias_statement] = STATE(1332), - [sym_class_definition] = STATE(64), - [sym_decorated_definition] = STATE(64), - [sym_decorator] = STATE(1127), - [sym_block] = STATE(541), - [sym_expression_list] = STATE(1522), - [sym_pattern] = STATE(1017), - [sym_tuple_pattern] = STATE(1001), - [sym_list_pattern] = STATE(1001), - [sym_list_splat_pattern] = STATE(1001), - [sym_expression] = STATE(1176), - [sym_primary_expression] = STATE(765), - [sym_not_operator] = STATE(1156), - [sym_boolean_operator] = STATE(1156), - [sym_binary_operator] = STATE(920), - [sym_unary_operator] = STATE(920), - [sym_comparison_operator] = STATE(1156), - [sym_lambda] = STATE(1156), - [sym_assignment] = STATE(1522), - [sym_augmented_assignment] = STATE(1522), - [sym_pattern_list] = STATE(1026), - [sym_yield] = STATE(1522), - [sym_attribute] = STATE(582), - [sym_subscript] = STATE(582), - [sym_call] = STATE(920), - [sym_list] = STATE(920), - [sym_set] = STATE(920), - [sym_tuple] = STATE(920), - [sym_dictionary] = STATE(920), - [sym_list_comprehension] = STATE(920), - [sym_dictionary_comprehension] = STATE(920), - [sym_set_comprehension] = STATE(920), - [sym_generator_expression] = STATE(920), - [sym_parenthesized_expression] = STATE(920), - [sym_conditional_expression] = STATE(1156), - [sym_concatenated_string] = STATE(920), - [sym_string] = STATE(775), - [sym_concatenated_template_string] = STATE(920), - [sym_template_string] = STATE(769), - [sym_await] = STATE(920), - [aux_sym_module_repeat1] = STATE(64), - [aux_sym_decorated_definition_repeat1] = STATE(1127), + [sym__statement] = STATE(63), + [sym__simple_statements] = STATE(63), + [sym_import_statement] = STATE(1345), + [sym_future_import_statement] = STATE(1345), + [sym_import_from_statement] = STATE(1345), + [sym_print_statement] = STATE(1345), + [sym_assert_statement] = STATE(1345), + [sym_expression_statement] = STATE(1345), + [sym_named_expression] = STATE(1126), + [sym_return_statement] = STATE(1345), + [sym_delete_statement] = STATE(1345), + [sym_raise_statement] = STATE(1345), + [sym_pass_statement] = STATE(1345), + [sym_break_statement] = STATE(1345), + [sym_continue_statement] = STATE(1345), + [sym_if_statement] = STATE(63), + [sym_for_statement] = STATE(63), + [sym_while_statement] = STATE(63), + [sym_try_statement] = STATE(63), + [sym_with_statement] = STATE(63), + [sym_match_statement] = STATE(63), + [sym_function_definition] = STATE(63), + [sym_list_splat] = STATE(1590), + [sym_dictionary_splat] = STATE(1590), + [sym_global_statement] = STATE(1345), + [sym_nonlocal_statement] = STATE(1345), + [sym_exec_statement] = STATE(1345), + [sym_type_alias_statement] = STATE(1345), + [sym_class_definition] = STATE(63), + [sym_decorated_definition] = STATE(63), + [sym_decorator] = STATE(1146), + [sym_block] = STATE(579), + [sym_expression_list] = STATE(1545), + [sym_pattern] = STATE(1020), + [sym_tuple_pattern] = STATE(1005), + [sym_list_pattern] = STATE(1005), + [sym_list_splat_pattern] = STATE(1005), + [sym_expression] = STATE(1191), + [sym_primary_expression] = STATE(773), + [sym_not_operator] = STATE(1126), + [sym_boolean_operator] = STATE(1126), + [sym_binary_operator] = STATE(950), + [sym_unary_operator] = STATE(950), + [sym_comparison_operator] = STATE(1126), + [sym_lambda] = STATE(1126), + [sym_assignment] = STATE(1545), + [sym_augmented_assignment] = STATE(1545), + [sym_pattern_list] = STATE(1030), + [sym_yield] = STATE(1545), + [sym_attribute] = STATE(614), + [sym_subscript] = STATE(614), + [sym_call] = STATE(950), + [sym_list] = STATE(950), + [sym_set] = STATE(950), + [sym_tuple] = STATE(950), + [sym_dictionary] = STATE(950), + [sym_list_comprehension] = STATE(950), + [sym_dictionary_comprehension] = STATE(950), + [sym_set_comprehension] = STATE(950), + [sym_generator_expression] = STATE(950), + [sym_parenthesized_expression] = STATE(950), + [sym_conditional_expression] = STATE(1126), + [sym_concatenated_string] = STATE(950), + [sym_string] = STATE(779), + [sym_concatenated_template_string] = STATE(950), + [sym_template_string] = STATE(772), + [sym_await] = STATE(950), + [aux_sym_module_repeat1] = STATE(63), + [aux_sym_decorated_definition_repeat1] = STATE(1146), [sym_identifier] = ACTIONS(7), [anon_sym_lazy] = ACTIONS(9), [anon_sym_import] = ACTIONS(11), @@ -12815,75 +12857,75 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__template_string_start] = ACTIONS(85), }, [STATE(39)] = { - [sym__statement] = STATE(64), - [sym__simple_statements] = STATE(64), - [sym_import_statement] = STATE(1332), - [sym_future_import_statement] = STATE(1332), - [sym_import_from_statement] = STATE(1332), - [sym_print_statement] = STATE(1332), - [sym_assert_statement] = STATE(1332), - [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1156), - [sym_return_statement] = STATE(1332), - [sym_delete_statement] = STATE(1332), - [sym_raise_statement] = STATE(1332), - [sym_pass_statement] = STATE(1332), - [sym_break_statement] = STATE(1332), - [sym_continue_statement] = STATE(1332), - [sym_if_statement] = STATE(64), - [sym_for_statement] = STATE(64), - [sym_while_statement] = STATE(64), - [sym_try_statement] = STATE(64), - [sym_with_statement] = STATE(64), - [sym_match_statement] = STATE(64), - [sym_function_definition] = STATE(64), - [sym_list_splat] = STATE(1520), - [sym_dictionary_splat] = STATE(1520), - [sym_global_statement] = STATE(1332), - [sym_nonlocal_statement] = STATE(1332), - [sym_exec_statement] = STATE(1332), - [sym_type_alias_statement] = STATE(1332), - [sym_class_definition] = STATE(64), - [sym_decorated_definition] = STATE(64), - [sym_decorator] = STATE(1127), - [sym_block] = STATE(483), - [sym_expression_list] = STATE(1522), - [sym_pattern] = STATE(1017), - [sym_tuple_pattern] = STATE(1001), - [sym_list_pattern] = STATE(1001), - [sym_list_splat_pattern] = STATE(1001), - [sym_expression] = STATE(1176), - [sym_primary_expression] = STATE(765), - [sym_not_operator] = STATE(1156), - [sym_boolean_operator] = STATE(1156), - [sym_binary_operator] = STATE(920), - [sym_unary_operator] = STATE(920), - [sym_comparison_operator] = STATE(1156), - [sym_lambda] = STATE(1156), - [sym_assignment] = STATE(1522), - [sym_augmented_assignment] = STATE(1522), - [sym_pattern_list] = STATE(1026), - [sym_yield] = STATE(1522), - [sym_attribute] = STATE(582), - [sym_subscript] = STATE(582), - [sym_call] = STATE(920), - [sym_list] = STATE(920), - [sym_set] = STATE(920), - [sym_tuple] = STATE(920), - [sym_dictionary] = STATE(920), - [sym_list_comprehension] = STATE(920), - [sym_dictionary_comprehension] = STATE(920), - [sym_set_comprehension] = STATE(920), - [sym_generator_expression] = STATE(920), - [sym_parenthesized_expression] = STATE(920), - [sym_conditional_expression] = STATE(1156), - [sym_concatenated_string] = STATE(920), - [sym_string] = STATE(775), - [sym_concatenated_template_string] = STATE(920), - [sym_template_string] = STATE(769), - [sym_await] = STATE(920), - [aux_sym_module_repeat1] = STATE(64), - [aux_sym_decorated_definition_repeat1] = STATE(1127), + [sym__statement] = STATE(63), + [sym__simple_statements] = STATE(63), + [sym_import_statement] = STATE(1345), + [sym_future_import_statement] = STATE(1345), + [sym_import_from_statement] = STATE(1345), + [sym_print_statement] = STATE(1345), + [sym_assert_statement] = STATE(1345), + [sym_expression_statement] = STATE(1345), + [sym_named_expression] = STATE(1126), + [sym_return_statement] = STATE(1345), + [sym_delete_statement] = STATE(1345), + [sym_raise_statement] = STATE(1345), + [sym_pass_statement] = STATE(1345), + [sym_break_statement] = STATE(1345), + [sym_continue_statement] = STATE(1345), + [sym_if_statement] = STATE(63), + [sym_for_statement] = STATE(63), + [sym_while_statement] = STATE(63), + [sym_try_statement] = STATE(63), + [sym_with_statement] = STATE(63), + [sym_match_statement] = STATE(63), + [sym_function_definition] = STATE(63), + [sym_list_splat] = STATE(1590), + [sym_dictionary_splat] = STATE(1590), + [sym_global_statement] = STATE(1345), + [sym_nonlocal_statement] = STATE(1345), + [sym_exec_statement] = STATE(1345), + [sym_type_alias_statement] = STATE(1345), + [sym_class_definition] = STATE(63), + [sym_decorated_definition] = STATE(63), + [sym_decorator] = STATE(1146), + [sym_block] = STATE(486), + [sym_expression_list] = STATE(1545), + [sym_pattern] = STATE(1020), + [sym_tuple_pattern] = STATE(1005), + [sym_list_pattern] = STATE(1005), + [sym_list_splat_pattern] = STATE(1005), + [sym_expression] = STATE(1191), + [sym_primary_expression] = STATE(773), + [sym_not_operator] = STATE(1126), + [sym_boolean_operator] = STATE(1126), + [sym_binary_operator] = STATE(950), + [sym_unary_operator] = STATE(950), + [sym_comparison_operator] = STATE(1126), + [sym_lambda] = STATE(1126), + [sym_assignment] = STATE(1545), + [sym_augmented_assignment] = STATE(1545), + [sym_pattern_list] = STATE(1030), + [sym_yield] = STATE(1545), + [sym_attribute] = STATE(614), + [sym_subscript] = STATE(614), + [sym_call] = STATE(950), + [sym_list] = STATE(950), + [sym_set] = STATE(950), + [sym_tuple] = STATE(950), + [sym_dictionary] = STATE(950), + [sym_list_comprehension] = STATE(950), + [sym_dictionary_comprehension] = STATE(950), + [sym_set_comprehension] = STATE(950), + [sym_generator_expression] = STATE(950), + [sym_parenthesized_expression] = STATE(950), + [sym_conditional_expression] = STATE(1126), + [sym_concatenated_string] = STATE(950), + [sym_string] = STATE(779), + [sym_concatenated_template_string] = STATE(950), + [sym_template_string] = STATE(772), + [sym_await] = STATE(950), + [aux_sym_module_repeat1] = STATE(63), + [aux_sym_decorated_definition_repeat1] = STATE(1146), [sym_identifier] = ACTIONS(7), [anon_sym_lazy] = ACTIONS(9), [anon_sym_import] = ACTIONS(11), @@ -12934,75 +12976,75 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__template_string_start] = ACTIONS(85), }, [STATE(40)] = { - [sym__statement] = STATE(64), - [sym__simple_statements] = STATE(64), - [sym_import_statement] = STATE(1332), - [sym_future_import_statement] = STATE(1332), - [sym_import_from_statement] = STATE(1332), - [sym_print_statement] = STATE(1332), - [sym_assert_statement] = STATE(1332), - [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1156), - [sym_return_statement] = STATE(1332), - [sym_delete_statement] = STATE(1332), - [sym_raise_statement] = STATE(1332), - [sym_pass_statement] = STATE(1332), - [sym_break_statement] = STATE(1332), - [sym_continue_statement] = STATE(1332), - [sym_if_statement] = STATE(64), - [sym_for_statement] = STATE(64), - [sym_while_statement] = STATE(64), - [sym_try_statement] = STATE(64), - [sym_with_statement] = STATE(64), - [sym_match_statement] = STATE(64), - [sym_function_definition] = STATE(64), - [sym_list_splat] = STATE(1520), - [sym_dictionary_splat] = STATE(1520), - [sym_global_statement] = STATE(1332), - [sym_nonlocal_statement] = STATE(1332), - [sym_exec_statement] = STATE(1332), - [sym_type_alias_statement] = STATE(1332), - [sym_class_definition] = STATE(64), - [sym_decorated_definition] = STATE(64), - [sym_decorator] = STATE(1127), - [sym_block] = STATE(446), - [sym_expression_list] = STATE(1522), - [sym_pattern] = STATE(1017), - [sym_tuple_pattern] = STATE(1001), - [sym_list_pattern] = STATE(1001), - [sym_list_splat_pattern] = STATE(1001), - [sym_expression] = STATE(1176), - [sym_primary_expression] = STATE(765), - [sym_not_operator] = STATE(1156), - [sym_boolean_operator] = STATE(1156), - [sym_binary_operator] = STATE(920), - [sym_unary_operator] = STATE(920), - [sym_comparison_operator] = STATE(1156), - [sym_lambda] = STATE(1156), - [sym_assignment] = STATE(1522), - [sym_augmented_assignment] = STATE(1522), - [sym_pattern_list] = STATE(1026), - [sym_yield] = STATE(1522), - [sym_attribute] = STATE(582), - [sym_subscript] = STATE(582), - [sym_call] = STATE(920), - [sym_list] = STATE(920), - [sym_set] = STATE(920), - [sym_tuple] = STATE(920), - [sym_dictionary] = STATE(920), - [sym_list_comprehension] = STATE(920), - [sym_dictionary_comprehension] = STATE(920), - [sym_set_comprehension] = STATE(920), - [sym_generator_expression] = STATE(920), - [sym_parenthesized_expression] = STATE(920), - [sym_conditional_expression] = STATE(1156), - [sym_concatenated_string] = STATE(920), - [sym_string] = STATE(775), - [sym_concatenated_template_string] = STATE(920), - [sym_template_string] = STATE(769), - [sym_await] = STATE(920), - [aux_sym_module_repeat1] = STATE(64), - [aux_sym_decorated_definition_repeat1] = STATE(1127), + [sym__statement] = STATE(63), + [sym__simple_statements] = STATE(63), + [sym_import_statement] = STATE(1345), + [sym_future_import_statement] = STATE(1345), + [sym_import_from_statement] = STATE(1345), + [sym_print_statement] = STATE(1345), + [sym_assert_statement] = STATE(1345), + [sym_expression_statement] = STATE(1345), + [sym_named_expression] = STATE(1126), + [sym_return_statement] = STATE(1345), + [sym_delete_statement] = STATE(1345), + [sym_raise_statement] = STATE(1345), + [sym_pass_statement] = STATE(1345), + [sym_break_statement] = STATE(1345), + [sym_continue_statement] = STATE(1345), + [sym_if_statement] = STATE(63), + [sym_for_statement] = STATE(63), + [sym_while_statement] = STATE(63), + [sym_try_statement] = STATE(63), + [sym_with_statement] = STATE(63), + [sym_match_statement] = STATE(63), + [sym_function_definition] = STATE(63), + [sym_list_splat] = STATE(1590), + [sym_dictionary_splat] = STATE(1590), + [sym_global_statement] = STATE(1345), + [sym_nonlocal_statement] = STATE(1345), + [sym_exec_statement] = STATE(1345), + [sym_type_alias_statement] = STATE(1345), + [sym_class_definition] = STATE(63), + [sym_decorated_definition] = STATE(63), + [sym_decorator] = STATE(1146), + [sym_block] = STATE(454), + [sym_expression_list] = STATE(1545), + [sym_pattern] = STATE(1020), + [sym_tuple_pattern] = STATE(1005), + [sym_list_pattern] = STATE(1005), + [sym_list_splat_pattern] = STATE(1005), + [sym_expression] = STATE(1191), + [sym_primary_expression] = STATE(773), + [sym_not_operator] = STATE(1126), + [sym_boolean_operator] = STATE(1126), + [sym_binary_operator] = STATE(950), + [sym_unary_operator] = STATE(950), + [sym_comparison_operator] = STATE(1126), + [sym_lambda] = STATE(1126), + [sym_assignment] = STATE(1545), + [sym_augmented_assignment] = STATE(1545), + [sym_pattern_list] = STATE(1030), + [sym_yield] = STATE(1545), + [sym_attribute] = STATE(614), + [sym_subscript] = STATE(614), + [sym_call] = STATE(950), + [sym_list] = STATE(950), + [sym_set] = STATE(950), + [sym_tuple] = STATE(950), + [sym_dictionary] = STATE(950), + [sym_list_comprehension] = STATE(950), + [sym_dictionary_comprehension] = STATE(950), + [sym_set_comprehension] = STATE(950), + [sym_generator_expression] = STATE(950), + [sym_parenthesized_expression] = STATE(950), + [sym_conditional_expression] = STATE(1126), + [sym_concatenated_string] = STATE(950), + [sym_string] = STATE(779), + [sym_concatenated_template_string] = STATE(950), + [sym_template_string] = STATE(772), + [sym_await] = STATE(950), + [aux_sym_module_repeat1] = STATE(63), + [aux_sym_decorated_definition_repeat1] = STATE(1146), [sym_identifier] = ACTIONS(7), [anon_sym_lazy] = ACTIONS(9), [anon_sym_import] = ACTIONS(11), @@ -13053,75 +13095,75 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__template_string_start] = ACTIONS(85), }, [STATE(41)] = { - [sym__statement] = STATE(64), - [sym__simple_statements] = STATE(64), - [sym_import_statement] = STATE(1332), - [sym_future_import_statement] = STATE(1332), - [sym_import_from_statement] = STATE(1332), - [sym_print_statement] = STATE(1332), - [sym_assert_statement] = STATE(1332), - [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1156), - [sym_return_statement] = STATE(1332), - [sym_delete_statement] = STATE(1332), - [sym_raise_statement] = STATE(1332), - [sym_pass_statement] = STATE(1332), - [sym_break_statement] = STATE(1332), - [sym_continue_statement] = STATE(1332), - [sym_if_statement] = STATE(64), - [sym_for_statement] = STATE(64), - [sym_while_statement] = STATE(64), - [sym_try_statement] = STATE(64), - [sym_with_statement] = STATE(64), - [sym_match_statement] = STATE(64), - [sym_function_definition] = STATE(64), - [sym_list_splat] = STATE(1520), - [sym_dictionary_splat] = STATE(1520), - [sym_global_statement] = STATE(1332), - [sym_nonlocal_statement] = STATE(1332), - [sym_exec_statement] = STATE(1332), - [sym_type_alias_statement] = STATE(1332), - [sym_class_definition] = STATE(64), - [sym_decorated_definition] = STATE(64), - [sym_decorator] = STATE(1127), - [sym_block] = STATE(545), - [sym_expression_list] = STATE(1522), - [sym_pattern] = STATE(1017), - [sym_tuple_pattern] = STATE(1001), - [sym_list_pattern] = STATE(1001), - [sym_list_splat_pattern] = STATE(1001), - [sym_expression] = STATE(1176), - [sym_primary_expression] = STATE(765), - [sym_not_operator] = STATE(1156), - [sym_boolean_operator] = STATE(1156), - [sym_binary_operator] = STATE(920), - [sym_unary_operator] = STATE(920), - [sym_comparison_operator] = STATE(1156), - [sym_lambda] = STATE(1156), - [sym_assignment] = STATE(1522), - [sym_augmented_assignment] = STATE(1522), - [sym_pattern_list] = STATE(1026), - [sym_yield] = STATE(1522), - [sym_attribute] = STATE(582), - [sym_subscript] = STATE(582), - [sym_call] = STATE(920), - [sym_list] = STATE(920), - [sym_set] = STATE(920), - [sym_tuple] = STATE(920), - [sym_dictionary] = STATE(920), - [sym_list_comprehension] = STATE(920), - [sym_dictionary_comprehension] = STATE(920), - [sym_set_comprehension] = STATE(920), - [sym_generator_expression] = STATE(920), - [sym_parenthesized_expression] = STATE(920), - [sym_conditional_expression] = STATE(1156), - [sym_concatenated_string] = STATE(920), - [sym_string] = STATE(775), - [sym_concatenated_template_string] = STATE(920), - [sym_template_string] = STATE(769), - [sym_await] = STATE(920), - [aux_sym_module_repeat1] = STATE(64), - [aux_sym_decorated_definition_repeat1] = STATE(1127), + [sym__statement] = STATE(63), + [sym__simple_statements] = STATE(63), + [sym_import_statement] = STATE(1345), + [sym_future_import_statement] = STATE(1345), + [sym_import_from_statement] = STATE(1345), + [sym_print_statement] = STATE(1345), + [sym_assert_statement] = STATE(1345), + [sym_expression_statement] = STATE(1345), + [sym_named_expression] = STATE(1126), + [sym_return_statement] = STATE(1345), + [sym_delete_statement] = STATE(1345), + [sym_raise_statement] = STATE(1345), + [sym_pass_statement] = STATE(1345), + [sym_break_statement] = STATE(1345), + [sym_continue_statement] = STATE(1345), + [sym_if_statement] = STATE(63), + [sym_for_statement] = STATE(63), + [sym_while_statement] = STATE(63), + [sym_try_statement] = STATE(63), + [sym_with_statement] = STATE(63), + [sym_match_statement] = STATE(63), + [sym_function_definition] = STATE(63), + [sym_list_splat] = STATE(1590), + [sym_dictionary_splat] = STATE(1590), + [sym_global_statement] = STATE(1345), + [sym_nonlocal_statement] = STATE(1345), + [sym_exec_statement] = STATE(1345), + [sym_type_alias_statement] = STATE(1345), + [sym_class_definition] = STATE(63), + [sym_decorated_definition] = STATE(63), + [sym_decorator] = STATE(1146), + [sym_block] = STATE(583), + [sym_expression_list] = STATE(1545), + [sym_pattern] = STATE(1020), + [sym_tuple_pattern] = STATE(1005), + [sym_list_pattern] = STATE(1005), + [sym_list_splat_pattern] = STATE(1005), + [sym_expression] = STATE(1191), + [sym_primary_expression] = STATE(773), + [sym_not_operator] = STATE(1126), + [sym_boolean_operator] = STATE(1126), + [sym_binary_operator] = STATE(950), + [sym_unary_operator] = STATE(950), + [sym_comparison_operator] = STATE(1126), + [sym_lambda] = STATE(1126), + [sym_assignment] = STATE(1545), + [sym_augmented_assignment] = STATE(1545), + [sym_pattern_list] = STATE(1030), + [sym_yield] = STATE(1545), + [sym_attribute] = STATE(614), + [sym_subscript] = STATE(614), + [sym_call] = STATE(950), + [sym_list] = STATE(950), + [sym_set] = STATE(950), + [sym_tuple] = STATE(950), + [sym_dictionary] = STATE(950), + [sym_list_comprehension] = STATE(950), + [sym_dictionary_comprehension] = STATE(950), + [sym_set_comprehension] = STATE(950), + [sym_generator_expression] = STATE(950), + [sym_parenthesized_expression] = STATE(950), + [sym_conditional_expression] = STATE(1126), + [sym_concatenated_string] = STATE(950), + [sym_string] = STATE(779), + [sym_concatenated_template_string] = STATE(950), + [sym_template_string] = STATE(772), + [sym_await] = STATE(950), + [aux_sym_module_repeat1] = STATE(63), + [aux_sym_decorated_definition_repeat1] = STATE(1146), [sym_identifier] = ACTIONS(7), [anon_sym_lazy] = ACTIONS(9), [anon_sym_import] = ACTIONS(11), @@ -13172,75 +13214,75 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__template_string_start] = ACTIONS(85), }, [STATE(42)] = { - [sym__statement] = STATE(64), - [sym__simple_statements] = STATE(64), - [sym_import_statement] = STATE(1332), - [sym_future_import_statement] = STATE(1332), - [sym_import_from_statement] = STATE(1332), - [sym_print_statement] = STATE(1332), - [sym_assert_statement] = STATE(1332), - [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1156), - [sym_return_statement] = STATE(1332), - [sym_delete_statement] = STATE(1332), - [sym_raise_statement] = STATE(1332), - [sym_pass_statement] = STATE(1332), - [sym_break_statement] = STATE(1332), - [sym_continue_statement] = STATE(1332), - [sym_if_statement] = STATE(64), - [sym_for_statement] = STATE(64), - [sym_while_statement] = STATE(64), - [sym_try_statement] = STATE(64), - [sym_with_statement] = STATE(64), - [sym_match_statement] = STATE(64), - [sym_function_definition] = STATE(64), - [sym_list_splat] = STATE(1520), - [sym_dictionary_splat] = STATE(1520), - [sym_global_statement] = STATE(1332), - [sym_nonlocal_statement] = STATE(1332), - [sym_exec_statement] = STATE(1332), - [sym_type_alias_statement] = STATE(1332), - [sym_class_definition] = STATE(64), - [sym_decorated_definition] = STATE(64), - [sym_decorator] = STATE(1127), - [sym_block] = STATE(511), - [sym_expression_list] = STATE(1522), - [sym_pattern] = STATE(1017), - [sym_tuple_pattern] = STATE(1001), - [sym_list_pattern] = STATE(1001), - [sym_list_splat_pattern] = STATE(1001), - [sym_expression] = STATE(1176), - [sym_primary_expression] = STATE(765), - [sym_not_operator] = STATE(1156), - [sym_boolean_operator] = STATE(1156), - [sym_binary_operator] = STATE(920), - [sym_unary_operator] = STATE(920), - [sym_comparison_operator] = STATE(1156), - [sym_lambda] = STATE(1156), - [sym_assignment] = STATE(1522), - [sym_augmented_assignment] = STATE(1522), - [sym_pattern_list] = STATE(1026), - [sym_yield] = STATE(1522), - [sym_attribute] = STATE(582), - [sym_subscript] = STATE(582), - [sym_call] = STATE(920), - [sym_list] = STATE(920), - [sym_set] = STATE(920), - [sym_tuple] = STATE(920), - [sym_dictionary] = STATE(920), - [sym_list_comprehension] = STATE(920), - [sym_dictionary_comprehension] = STATE(920), - [sym_set_comprehension] = STATE(920), - [sym_generator_expression] = STATE(920), - [sym_parenthesized_expression] = STATE(920), - [sym_conditional_expression] = STATE(1156), - [sym_concatenated_string] = STATE(920), - [sym_string] = STATE(775), - [sym_concatenated_template_string] = STATE(920), - [sym_template_string] = STATE(769), - [sym_await] = STATE(920), - [aux_sym_module_repeat1] = STATE(64), - [aux_sym_decorated_definition_repeat1] = STATE(1127), + [sym__statement] = STATE(63), + [sym__simple_statements] = STATE(63), + [sym_import_statement] = STATE(1345), + [sym_future_import_statement] = STATE(1345), + [sym_import_from_statement] = STATE(1345), + [sym_print_statement] = STATE(1345), + [sym_assert_statement] = STATE(1345), + [sym_expression_statement] = STATE(1345), + [sym_named_expression] = STATE(1126), + [sym_return_statement] = STATE(1345), + [sym_delete_statement] = STATE(1345), + [sym_raise_statement] = STATE(1345), + [sym_pass_statement] = STATE(1345), + [sym_break_statement] = STATE(1345), + [sym_continue_statement] = STATE(1345), + [sym_if_statement] = STATE(63), + [sym_for_statement] = STATE(63), + [sym_while_statement] = STATE(63), + [sym_try_statement] = STATE(63), + [sym_with_statement] = STATE(63), + [sym_match_statement] = STATE(63), + [sym_function_definition] = STATE(63), + [sym_list_splat] = STATE(1590), + [sym_dictionary_splat] = STATE(1590), + [sym_global_statement] = STATE(1345), + [sym_nonlocal_statement] = STATE(1345), + [sym_exec_statement] = STATE(1345), + [sym_type_alias_statement] = STATE(1345), + [sym_class_definition] = STATE(63), + [sym_decorated_definition] = STATE(63), + [sym_decorator] = STATE(1146), + [sym_block] = STATE(586), + [sym_expression_list] = STATE(1545), + [sym_pattern] = STATE(1020), + [sym_tuple_pattern] = STATE(1005), + [sym_list_pattern] = STATE(1005), + [sym_list_splat_pattern] = STATE(1005), + [sym_expression] = STATE(1191), + [sym_primary_expression] = STATE(773), + [sym_not_operator] = STATE(1126), + [sym_boolean_operator] = STATE(1126), + [sym_binary_operator] = STATE(950), + [sym_unary_operator] = STATE(950), + [sym_comparison_operator] = STATE(1126), + [sym_lambda] = STATE(1126), + [sym_assignment] = STATE(1545), + [sym_augmented_assignment] = STATE(1545), + [sym_pattern_list] = STATE(1030), + [sym_yield] = STATE(1545), + [sym_attribute] = STATE(614), + [sym_subscript] = STATE(614), + [sym_call] = STATE(950), + [sym_list] = STATE(950), + [sym_set] = STATE(950), + [sym_tuple] = STATE(950), + [sym_dictionary] = STATE(950), + [sym_list_comprehension] = STATE(950), + [sym_dictionary_comprehension] = STATE(950), + [sym_set_comprehension] = STATE(950), + [sym_generator_expression] = STATE(950), + [sym_parenthesized_expression] = STATE(950), + [sym_conditional_expression] = STATE(1126), + [sym_concatenated_string] = STATE(950), + [sym_string] = STATE(779), + [sym_concatenated_template_string] = STATE(950), + [sym_template_string] = STATE(772), + [sym_await] = STATE(950), + [aux_sym_module_repeat1] = STATE(63), + [aux_sym_decorated_definition_repeat1] = STATE(1146), [sym_identifier] = ACTIONS(7), [anon_sym_lazy] = ACTIONS(9), [anon_sym_import] = ACTIONS(11), @@ -13291,75 +13333,75 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__template_string_start] = ACTIONS(85), }, [STATE(43)] = { - [sym__statement] = STATE(64), - [sym__simple_statements] = STATE(64), - [sym_import_statement] = STATE(1332), - [sym_future_import_statement] = STATE(1332), - [sym_import_from_statement] = STATE(1332), - [sym_print_statement] = STATE(1332), - [sym_assert_statement] = STATE(1332), - [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1156), - [sym_return_statement] = STATE(1332), - [sym_delete_statement] = STATE(1332), - [sym_raise_statement] = STATE(1332), - [sym_pass_statement] = STATE(1332), - [sym_break_statement] = STATE(1332), - [sym_continue_statement] = STATE(1332), - [sym_if_statement] = STATE(64), - [sym_for_statement] = STATE(64), - [sym_while_statement] = STATE(64), - [sym_try_statement] = STATE(64), - [sym_with_statement] = STATE(64), - [sym_match_statement] = STATE(64), - [sym_function_definition] = STATE(64), - [sym_list_splat] = STATE(1520), - [sym_dictionary_splat] = STATE(1520), - [sym_global_statement] = STATE(1332), - [sym_nonlocal_statement] = STATE(1332), - [sym_exec_statement] = STATE(1332), - [sym_type_alias_statement] = STATE(1332), - [sym_class_definition] = STATE(64), - [sym_decorated_definition] = STATE(64), - [sym_decorator] = STATE(1127), - [sym_block] = STATE(549), - [sym_expression_list] = STATE(1522), - [sym_pattern] = STATE(1017), - [sym_tuple_pattern] = STATE(1001), - [sym_list_pattern] = STATE(1001), - [sym_list_splat_pattern] = STATE(1001), - [sym_expression] = STATE(1176), - [sym_primary_expression] = STATE(765), - [sym_not_operator] = STATE(1156), - [sym_boolean_operator] = STATE(1156), - [sym_binary_operator] = STATE(920), - [sym_unary_operator] = STATE(920), - [sym_comparison_operator] = STATE(1156), - [sym_lambda] = STATE(1156), - [sym_assignment] = STATE(1522), - [sym_augmented_assignment] = STATE(1522), - [sym_pattern_list] = STATE(1026), - [sym_yield] = STATE(1522), - [sym_attribute] = STATE(582), - [sym_subscript] = STATE(582), - [sym_call] = STATE(920), - [sym_list] = STATE(920), - [sym_set] = STATE(920), - [sym_tuple] = STATE(920), - [sym_dictionary] = STATE(920), - [sym_list_comprehension] = STATE(920), - [sym_dictionary_comprehension] = STATE(920), - [sym_set_comprehension] = STATE(920), - [sym_generator_expression] = STATE(920), - [sym_parenthesized_expression] = STATE(920), - [sym_conditional_expression] = STATE(1156), - [sym_concatenated_string] = STATE(920), - [sym_string] = STATE(775), - [sym_concatenated_template_string] = STATE(920), - [sym_template_string] = STATE(769), - [sym_await] = STATE(920), - [aux_sym_module_repeat1] = STATE(64), - [aux_sym_decorated_definition_repeat1] = STATE(1127), + [sym__statement] = STATE(63), + [sym__simple_statements] = STATE(63), + [sym_import_statement] = STATE(1345), + [sym_future_import_statement] = STATE(1345), + [sym_import_from_statement] = STATE(1345), + [sym_print_statement] = STATE(1345), + [sym_assert_statement] = STATE(1345), + [sym_expression_statement] = STATE(1345), + [sym_named_expression] = STATE(1126), + [sym_return_statement] = STATE(1345), + [sym_delete_statement] = STATE(1345), + [sym_raise_statement] = STATE(1345), + [sym_pass_statement] = STATE(1345), + [sym_break_statement] = STATE(1345), + [sym_continue_statement] = STATE(1345), + [sym_if_statement] = STATE(63), + [sym_for_statement] = STATE(63), + [sym_while_statement] = STATE(63), + [sym_try_statement] = STATE(63), + [sym_with_statement] = STATE(63), + [sym_match_statement] = STATE(63), + [sym_function_definition] = STATE(63), + [sym_list_splat] = STATE(1590), + [sym_dictionary_splat] = STATE(1590), + [sym_global_statement] = STATE(1345), + [sym_nonlocal_statement] = STATE(1345), + [sym_exec_statement] = STATE(1345), + [sym_type_alias_statement] = STATE(1345), + [sym_class_definition] = STATE(63), + [sym_decorated_definition] = STATE(63), + [sym_decorator] = STATE(1146), + [sym_block] = STATE(587), + [sym_expression_list] = STATE(1545), + [sym_pattern] = STATE(1020), + [sym_tuple_pattern] = STATE(1005), + [sym_list_pattern] = STATE(1005), + [sym_list_splat_pattern] = STATE(1005), + [sym_expression] = STATE(1191), + [sym_primary_expression] = STATE(773), + [sym_not_operator] = STATE(1126), + [sym_boolean_operator] = STATE(1126), + [sym_binary_operator] = STATE(950), + [sym_unary_operator] = STATE(950), + [sym_comparison_operator] = STATE(1126), + [sym_lambda] = STATE(1126), + [sym_assignment] = STATE(1545), + [sym_augmented_assignment] = STATE(1545), + [sym_pattern_list] = STATE(1030), + [sym_yield] = STATE(1545), + [sym_attribute] = STATE(614), + [sym_subscript] = STATE(614), + [sym_call] = STATE(950), + [sym_list] = STATE(950), + [sym_set] = STATE(950), + [sym_tuple] = STATE(950), + [sym_dictionary] = STATE(950), + [sym_list_comprehension] = STATE(950), + [sym_dictionary_comprehension] = STATE(950), + [sym_set_comprehension] = STATE(950), + [sym_generator_expression] = STATE(950), + [sym_parenthesized_expression] = STATE(950), + [sym_conditional_expression] = STATE(1126), + [sym_concatenated_string] = STATE(950), + [sym_string] = STATE(779), + [sym_concatenated_template_string] = STATE(950), + [sym_template_string] = STATE(772), + [sym_await] = STATE(950), + [aux_sym_module_repeat1] = STATE(63), + [aux_sym_decorated_definition_repeat1] = STATE(1146), [sym_identifier] = ACTIONS(7), [anon_sym_lazy] = ACTIONS(9), [anon_sym_import] = ACTIONS(11), @@ -13410,75 +13452,75 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__template_string_start] = ACTIONS(85), }, [STATE(44)] = { - [sym__statement] = STATE(64), - [sym__simple_statements] = STATE(64), - [sym_import_statement] = STATE(1332), - [sym_future_import_statement] = STATE(1332), - [sym_import_from_statement] = STATE(1332), - [sym_print_statement] = STATE(1332), - [sym_assert_statement] = STATE(1332), - [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1156), - [sym_return_statement] = STATE(1332), - [sym_delete_statement] = STATE(1332), - [sym_raise_statement] = STATE(1332), - [sym_pass_statement] = STATE(1332), - [sym_break_statement] = STATE(1332), - [sym_continue_statement] = STATE(1332), - [sym_if_statement] = STATE(64), - [sym_for_statement] = STATE(64), - [sym_while_statement] = STATE(64), - [sym_try_statement] = STATE(64), - [sym_with_statement] = STATE(64), - [sym_match_statement] = STATE(64), - [sym_function_definition] = STATE(64), - [sym_list_splat] = STATE(1520), - [sym_dictionary_splat] = STATE(1520), - [sym_global_statement] = STATE(1332), - [sym_nonlocal_statement] = STATE(1332), - [sym_exec_statement] = STATE(1332), - [sym_type_alias_statement] = STATE(1332), - [sym_class_definition] = STATE(64), - [sym_decorated_definition] = STATE(64), - [sym_decorator] = STATE(1127), - [sym_block] = STATE(491), - [sym_expression_list] = STATE(1522), - [sym_pattern] = STATE(1017), - [sym_tuple_pattern] = STATE(1001), - [sym_list_pattern] = STATE(1001), - [sym_list_splat_pattern] = STATE(1001), - [sym_expression] = STATE(1176), - [sym_primary_expression] = STATE(765), - [sym_not_operator] = STATE(1156), - [sym_boolean_operator] = STATE(1156), - [sym_binary_operator] = STATE(920), - [sym_unary_operator] = STATE(920), - [sym_comparison_operator] = STATE(1156), - [sym_lambda] = STATE(1156), - [sym_assignment] = STATE(1522), - [sym_augmented_assignment] = STATE(1522), - [sym_pattern_list] = STATE(1026), - [sym_yield] = STATE(1522), - [sym_attribute] = STATE(582), - [sym_subscript] = STATE(582), - [sym_call] = STATE(920), - [sym_list] = STATE(920), - [sym_set] = STATE(920), - [sym_tuple] = STATE(920), - [sym_dictionary] = STATE(920), - [sym_list_comprehension] = STATE(920), - [sym_dictionary_comprehension] = STATE(920), - [sym_set_comprehension] = STATE(920), - [sym_generator_expression] = STATE(920), - [sym_parenthesized_expression] = STATE(920), - [sym_conditional_expression] = STATE(1156), - [sym_concatenated_string] = STATE(920), - [sym_string] = STATE(775), - [sym_concatenated_template_string] = STATE(920), - [sym_template_string] = STATE(769), - [sym_await] = STATE(920), - [aux_sym_module_repeat1] = STATE(64), - [aux_sym_decorated_definition_repeat1] = STATE(1127), + [sym__statement] = STATE(63), + [sym__simple_statements] = STATE(63), + [sym_import_statement] = STATE(1345), + [sym_future_import_statement] = STATE(1345), + [sym_import_from_statement] = STATE(1345), + [sym_print_statement] = STATE(1345), + [sym_assert_statement] = STATE(1345), + [sym_expression_statement] = STATE(1345), + [sym_named_expression] = STATE(1126), + [sym_return_statement] = STATE(1345), + [sym_delete_statement] = STATE(1345), + [sym_raise_statement] = STATE(1345), + [sym_pass_statement] = STATE(1345), + [sym_break_statement] = STATE(1345), + [sym_continue_statement] = STATE(1345), + [sym_if_statement] = STATE(63), + [sym_for_statement] = STATE(63), + [sym_while_statement] = STATE(63), + [sym_try_statement] = STATE(63), + [sym_with_statement] = STATE(63), + [sym_match_statement] = STATE(63), + [sym_function_definition] = STATE(63), + [sym_list_splat] = STATE(1590), + [sym_dictionary_splat] = STATE(1590), + [sym_global_statement] = STATE(1345), + [sym_nonlocal_statement] = STATE(1345), + [sym_exec_statement] = STATE(1345), + [sym_type_alias_statement] = STATE(1345), + [sym_class_definition] = STATE(63), + [sym_decorated_definition] = STATE(63), + [sym_decorator] = STATE(1146), + [sym_block] = STATE(502), + [sym_expression_list] = STATE(1545), + [sym_pattern] = STATE(1020), + [sym_tuple_pattern] = STATE(1005), + [sym_list_pattern] = STATE(1005), + [sym_list_splat_pattern] = STATE(1005), + [sym_expression] = STATE(1191), + [sym_primary_expression] = STATE(773), + [sym_not_operator] = STATE(1126), + [sym_boolean_operator] = STATE(1126), + [sym_binary_operator] = STATE(950), + [sym_unary_operator] = STATE(950), + [sym_comparison_operator] = STATE(1126), + [sym_lambda] = STATE(1126), + [sym_assignment] = STATE(1545), + [sym_augmented_assignment] = STATE(1545), + [sym_pattern_list] = STATE(1030), + [sym_yield] = STATE(1545), + [sym_attribute] = STATE(614), + [sym_subscript] = STATE(614), + [sym_call] = STATE(950), + [sym_list] = STATE(950), + [sym_set] = STATE(950), + [sym_tuple] = STATE(950), + [sym_dictionary] = STATE(950), + [sym_list_comprehension] = STATE(950), + [sym_dictionary_comprehension] = STATE(950), + [sym_set_comprehension] = STATE(950), + [sym_generator_expression] = STATE(950), + [sym_parenthesized_expression] = STATE(950), + [sym_conditional_expression] = STATE(1126), + [sym_concatenated_string] = STATE(950), + [sym_string] = STATE(779), + [sym_concatenated_template_string] = STATE(950), + [sym_template_string] = STATE(772), + [sym_await] = STATE(950), + [aux_sym_module_repeat1] = STATE(63), + [aux_sym_decorated_definition_repeat1] = STATE(1146), [sym_identifier] = ACTIONS(7), [anon_sym_lazy] = ACTIONS(9), [anon_sym_import] = ACTIONS(11), @@ -13529,75 +13571,75 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__template_string_start] = ACTIONS(85), }, [STATE(45)] = { - [sym__statement] = STATE(64), - [sym__simple_statements] = STATE(64), - [sym_import_statement] = STATE(1332), - [sym_future_import_statement] = STATE(1332), - [sym_import_from_statement] = STATE(1332), - [sym_print_statement] = STATE(1332), - [sym_assert_statement] = STATE(1332), - [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1156), - [sym_return_statement] = STATE(1332), - [sym_delete_statement] = STATE(1332), - [sym_raise_statement] = STATE(1332), - [sym_pass_statement] = STATE(1332), - [sym_break_statement] = STATE(1332), - [sym_continue_statement] = STATE(1332), - [sym_if_statement] = STATE(64), - [sym_for_statement] = STATE(64), - [sym_while_statement] = STATE(64), - [sym_try_statement] = STATE(64), - [sym_with_statement] = STATE(64), - [sym_match_statement] = STATE(64), - [sym_function_definition] = STATE(64), - [sym_list_splat] = STATE(1520), - [sym_dictionary_splat] = STATE(1520), - [sym_global_statement] = STATE(1332), - [sym_nonlocal_statement] = STATE(1332), - [sym_exec_statement] = STATE(1332), - [sym_type_alias_statement] = STATE(1332), - [sym_class_definition] = STATE(64), - [sym_decorated_definition] = STATE(64), - [sym_decorator] = STATE(1127), - [sym_block] = STATE(470), - [sym_expression_list] = STATE(1522), - [sym_pattern] = STATE(1017), - [sym_tuple_pattern] = STATE(1001), - [sym_list_pattern] = STATE(1001), - [sym_list_splat_pattern] = STATE(1001), - [sym_expression] = STATE(1176), - [sym_primary_expression] = STATE(765), - [sym_not_operator] = STATE(1156), - [sym_boolean_operator] = STATE(1156), - [sym_binary_operator] = STATE(920), - [sym_unary_operator] = STATE(920), - [sym_comparison_operator] = STATE(1156), - [sym_lambda] = STATE(1156), - [sym_assignment] = STATE(1522), - [sym_augmented_assignment] = STATE(1522), - [sym_pattern_list] = STATE(1026), - [sym_yield] = STATE(1522), - [sym_attribute] = STATE(582), - [sym_subscript] = STATE(582), - [sym_call] = STATE(920), - [sym_list] = STATE(920), - [sym_set] = STATE(920), - [sym_tuple] = STATE(920), - [sym_dictionary] = STATE(920), - [sym_list_comprehension] = STATE(920), - [sym_dictionary_comprehension] = STATE(920), - [sym_set_comprehension] = STATE(920), - [sym_generator_expression] = STATE(920), - [sym_parenthesized_expression] = STATE(920), - [sym_conditional_expression] = STATE(1156), - [sym_concatenated_string] = STATE(920), - [sym_string] = STATE(775), - [sym_concatenated_template_string] = STATE(920), - [sym_template_string] = STATE(769), - [sym_await] = STATE(920), - [aux_sym_module_repeat1] = STATE(64), - [aux_sym_decorated_definition_repeat1] = STATE(1127), + [sym__statement] = STATE(63), + [sym__simple_statements] = STATE(63), + [sym_import_statement] = STATE(1345), + [sym_future_import_statement] = STATE(1345), + [sym_import_from_statement] = STATE(1345), + [sym_print_statement] = STATE(1345), + [sym_assert_statement] = STATE(1345), + [sym_expression_statement] = STATE(1345), + [sym_named_expression] = STATE(1126), + [sym_return_statement] = STATE(1345), + [sym_delete_statement] = STATE(1345), + [sym_raise_statement] = STATE(1345), + [sym_pass_statement] = STATE(1345), + [sym_break_statement] = STATE(1345), + [sym_continue_statement] = STATE(1345), + [sym_if_statement] = STATE(63), + [sym_for_statement] = STATE(63), + [sym_while_statement] = STATE(63), + [sym_try_statement] = STATE(63), + [sym_with_statement] = STATE(63), + [sym_match_statement] = STATE(63), + [sym_function_definition] = STATE(63), + [sym_list_splat] = STATE(1590), + [sym_dictionary_splat] = STATE(1590), + [sym_global_statement] = STATE(1345), + [sym_nonlocal_statement] = STATE(1345), + [sym_exec_statement] = STATE(1345), + [sym_type_alias_statement] = STATE(1345), + [sym_class_definition] = STATE(63), + [sym_decorated_definition] = STATE(63), + [sym_decorator] = STATE(1146), + [sym_block] = STATE(488), + [sym_expression_list] = STATE(1545), + [sym_pattern] = STATE(1020), + [sym_tuple_pattern] = STATE(1005), + [sym_list_pattern] = STATE(1005), + [sym_list_splat_pattern] = STATE(1005), + [sym_expression] = STATE(1191), + [sym_primary_expression] = STATE(773), + [sym_not_operator] = STATE(1126), + [sym_boolean_operator] = STATE(1126), + [sym_binary_operator] = STATE(950), + [sym_unary_operator] = STATE(950), + [sym_comparison_operator] = STATE(1126), + [sym_lambda] = STATE(1126), + [sym_assignment] = STATE(1545), + [sym_augmented_assignment] = STATE(1545), + [sym_pattern_list] = STATE(1030), + [sym_yield] = STATE(1545), + [sym_attribute] = STATE(614), + [sym_subscript] = STATE(614), + [sym_call] = STATE(950), + [sym_list] = STATE(950), + [sym_set] = STATE(950), + [sym_tuple] = STATE(950), + [sym_dictionary] = STATE(950), + [sym_list_comprehension] = STATE(950), + [sym_dictionary_comprehension] = STATE(950), + [sym_set_comprehension] = STATE(950), + [sym_generator_expression] = STATE(950), + [sym_parenthesized_expression] = STATE(950), + [sym_conditional_expression] = STATE(1126), + [sym_concatenated_string] = STATE(950), + [sym_string] = STATE(779), + [sym_concatenated_template_string] = STATE(950), + [sym_template_string] = STATE(772), + [sym_await] = STATE(950), + [aux_sym_module_repeat1] = STATE(63), + [aux_sym_decorated_definition_repeat1] = STATE(1146), [sym_identifier] = ACTIONS(7), [anon_sym_lazy] = ACTIONS(9), [anon_sym_import] = ACTIONS(11), @@ -13648,75 +13690,75 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__template_string_start] = ACTIONS(85), }, [STATE(46)] = { - [sym__statement] = STATE(64), - [sym__simple_statements] = STATE(64), - [sym_import_statement] = STATE(1332), - [sym_future_import_statement] = STATE(1332), - [sym_import_from_statement] = STATE(1332), - [sym_print_statement] = STATE(1332), - [sym_assert_statement] = STATE(1332), - [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1156), - [sym_return_statement] = STATE(1332), - [sym_delete_statement] = STATE(1332), - [sym_raise_statement] = STATE(1332), - [sym_pass_statement] = STATE(1332), - [sym_break_statement] = STATE(1332), - [sym_continue_statement] = STATE(1332), - [sym_if_statement] = STATE(64), - [sym_for_statement] = STATE(64), - [sym_while_statement] = STATE(64), - [sym_try_statement] = STATE(64), - [sym_with_statement] = STATE(64), - [sym_match_statement] = STATE(64), - [sym_function_definition] = STATE(64), - [sym_list_splat] = STATE(1520), - [sym_dictionary_splat] = STATE(1520), - [sym_global_statement] = STATE(1332), - [sym_nonlocal_statement] = STATE(1332), - [sym_exec_statement] = STATE(1332), - [sym_type_alias_statement] = STATE(1332), - [sym_class_definition] = STATE(64), - [sym_decorated_definition] = STATE(64), - [sym_decorator] = STATE(1127), - [sym_block] = STATE(554), - [sym_expression_list] = STATE(1522), - [sym_pattern] = STATE(1017), - [sym_tuple_pattern] = STATE(1001), - [sym_list_pattern] = STATE(1001), - [sym_list_splat_pattern] = STATE(1001), - [sym_expression] = STATE(1176), - [sym_primary_expression] = STATE(765), - [sym_not_operator] = STATE(1156), - [sym_boolean_operator] = STATE(1156), - [sym_binary_operator] = STATE(920), - [sym_unary_operator] = STATE(920), - [sym_comparison_operator] = STATE(1156), - [sym_lambda] = STATE(1156), - [sym_assignment] = STATE(1522), - [sym_augmented_assignment] = STATE(1522), - [sym_pattern_list] = STATE(1026), - [sym_yield] = STATE(1522), - [sym_attribute] = STATE(582), - [sym_subscript] = STATE(582), - [sym_call] = STATE(920), - [sym_list] = STATE(920), - [sym_set] = STATE(920), - [sym_tuple] = STATE(920), - [sym_dictionary] = STATE(920), - [sym_list_comprehension] = STATE(920), - [sym_dictionary_comprehension] = STATE(920), - [sym_set_comprehension] = STATE(920), - [sym_generator_expression] = STATE(920), - [sym_parenthesized_expression] = STATE(920), - [sym_conditional_expression] = STATE(1156), - [sym_concatenated_string] = STATE(920), - [sym_string] = STATE(775), - [sym_concatenated_template_string] = STATE(920), - [sym_template_string] = STATE(769), - [sym_await] = STATE(920), - [aux_sym_module_repeat1] = STATE(64), - [aux_sym_decorated_definition_repeat1] = STATE(1127), + [sym__statement] = STATE(63), + [sym__simple_statements] = STATE(63), + [sym_import_statement] = STATE(1345), + [sym_future_import_statement] = STATE(1345), + [sym_import_from_statement] = STATE(1345), + [sym_print_statement] = STATE(1345), + [sym_assert_statement] = STATE(1345), + [sym_expression_statement] = STATE(1345), + [sym_named_expression] = STATE(1126), + [sym_return_statement] = STATE(1345), + [sym_delete_statement] = STATE(1345), + [sym_raise_statement] = STATE(1345), + [sym_pass_statement] = STATE(1345), + [sym_break_statement] = STATE(1345), + [sym_continue_statement] = STATE(1345), + [sym_if_statement] = STATE(63), + [sym_for_statement] = STATE(63), + [sym_while_statement] = STATE(63), + [sym_try_statement] = STATE(63), + [sym_with_statement] = STATE(63), + [sym_match_statement] = STATE(63), + [sym_function_definition] = STATE(63), + [sym_list_splat] = STATE(1590), + [sym_dictionary_splat] = STATE(1590), + [sym_global_statement] = STATE(1345), + [sym_nonlocal_statement] = STATE(1345), + [sym_exec_statement] = STATE(1345), + [sym_type_alias_statement] = STATE(1345), + [sym_class_definition] = STATE(63), + [sym_decorated_definition] = STATE(63), + [sym_decorator] = STATE(1146), + [sym_block] = STATE(591), + [sym_expression_list] = STATE(1545), + [sym_pattern] = STATE(1020), + [sym_tuple_pattern] = STATE(1005), + [sym_list_pattern] = STATE(1005), + [sym_list_splat_pattern] = STATE(1005), + [sym_expression] = STATE(1191), + [sym_primary_expression] = STATE(773), + [sym_not_operator] = STATE(1126), + [sym_boolean_operator] = STATE(1126), + [sym_binary_operator] = STATE(950), + [sym_unary_operator] = STATE(950), + [sym_comparison_operator] = STATE(1126), + [sym_lambda] = STATE(1126), + [sym_assignment] = STATE(1545), + [sym_augmented_assignment] = STATE(1545), + [sym_pattern_list] = STATE(1030), + [sym_yield] = STATE(1545), + [sym_attribute] = STATE(614), + [sym_subscript] = STATE(614), + [sym_call] = STATE(950), + [sym_list] = STATE(950), + [sym_set] = STATE(950), + [sym_tuple] = STATE(950), + [sym_dictionary] = STATE(950), + [sym_list_comprehension] = STATE(950), + [sym_dictionary_comprehension] = STATE(950), + [sym_set_comprehension] = STATE(950), + [sym_generator_expression] = STATE(950), + [sym_parenthesized_expression] = STATE(950), + [sym_conditional_expression] = STATE(1126), + [sym_concatenated_string] = STATE(950), + [sym_string] = STATE(779), + [sym_concatenated_template_string] = STATE(950), + [sym_template_string] = STATE(772), + [sym_await] = STATE(950), + [aux_sym_module_repeat1] = STATE(63), + [aux_sym_decorated_definition_repeat1] = STATE(1146), [sym_identifier] = ACTIONS(7), [anon_sym_lazy] = ACTIONS(9), [anon_sym_import] = ACTIONS(11), @@ -13767,75 +13809,75 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__template_string_start] = ACTIONS(85), }, [STATE(47)] = { - [sym__statement] = STATE(64), - [sym__simple_statements] = STATE(64), - [sym_import_statement] = STATE(1332), - [sym_future_import_statement] = STATE(1332), - [sym_import_from_statement] = STATE(1332), - [sym_print_statement] = STATE(1332), - [sym_assert_statement] = STATE(1332), - [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1156), - [sym_return_statement] = STATE(1332), - [sym_delete_statement] = STATE(1332), - [sym_raise_statement] = STATE(1332), - [sym_pass_statement] = STATE(1332), - [sym_break_statement] = STATE(1332), - [sym_continue_statement] = STATE(1332), - [sym_if_statement] = STATE(64), - [sym_for_statement] = STATE(64), - [sym_while_statement] = STATE(64), - [sym_try_statement] = STATE(64), - [sym_with_statement] = STATE(64), - [sym_match_statement] = STATE(64), - [sym_function_definition] = STATE(64), - [sym_list_splat] = STATE(1520), - [sym_dictionary_splat] = STATE(1520), - [sym_global_statement] = STATE(1332), - [sym_nonlocal_statement] = STATE(1332), - [sym_exec_statement] = STATE(1332), - [sym_type_alias_statement] = STATE(1332), - [sym_class_definition] = STATE(64), - [sym_decorated_definition] = STATE(64), - [sym_decorator] = STATE(1127), - [sym_block] = STATE(455), - [sym_expression_list] = STATE(1522), - [sym_pattern] = STATE(1017), - [sym_tuple_pattern] = STATE(1001), - [sym_list_pattern] = STATE(1001), - [sym_list_splat_pattern] = STATE(1001), - [sym_expression] = STATE(1176), - [sym_primary_expression] = STATE(765), - [sym_not_operator] = STATE(1156), - [sym_boolean_operator] = STATE(1156), - [sym_binary_operator] = STATE(920), - [sym_unary_operator] = STATE(920), - [sym_comparison_operator] = STATE(1156), - [sym_lambda] = STATE(1156), - [sym_assignment] = STATE(1522), - [sym_augmented_assignment] = STATE(1522), - [sym_pattern_list] = STATE(1026), - [sym_yield] = STATE(1522), - [sym_attribute] = STATE(582), - [sym_subscript] = STATE(582), - [sym_call] = STATE(920), - [sym_list] = STATE(920), - [sym_set] = STATE(920), - [sym_tuple] = STATE(920), - [sym_dictionary] = STATE(920), - [sym_list_comprehension] = STATE(920), - [sym_dictionary_comprehension] = STATE(920), - [sym_set_comprehension] = STATE(920), - [sym_generator_expression] = STATE(920), - [sym_parenthesized_expression] = STATE(920), - [sym_conditional_expression] = STATE(1156), - [sym_concatenated_string] = STATE(920), - [sym_string] = STATE(775), - [sym_concatenated_template_string] = STATE(920), - [sym_template_string] = STATE(769), - [sym_await] = STATE(920), - [aux_sym_module_repeat1] = STATE(64), - [aux_sym_decorated_definition_repeat1] = STATE(1127), + [sym__statement] = STATE(63), + [sym__simple_statements] = STATE(63), + [sym_import_statement] = STATE(1345), + [sym_future_import_statement] = STATE(1345), + [sym_import_from_statement] = STATE(1345), + [sym_print_statement] = STATE(1345), + [sym_assert_statement] = STATE(1345), + [sym_expression_statement] = STATE(1345), + [sym_named_expression] = STATE(1126), + [sym_return_statement] = STATE(1345), + [sym_delete_statement] = STATE(1345), + [sym_raise_statement] = STATE(1345), + [sym_pass_statement] = STATE(1345), + [sym_break_statement] = STATE(1345), + [sym_continue_statement] = STATE(1345), + [sym_if_statement] = STATE(63), + [sym_for_statement] = STATE(63), + [sym_while_statement] = STATE(63), + [sym_try_statement] = STATE(63), + [sym_with_statement] = STATE(63), + [sym_match_statement] = STATE(63), + [sym_function_definition] = STATE(63), + [sym_list_splat] = STATE(1590), + [sym_dictionary_splat] = STATE(1590), + [sym_global_statement] = STATE(1345), + [sym_nonlocal_statement] = STATE(1345), + [sym_exec_statement] = STATE(1345), + [sym_type_alias_statement] = STATE(1345), + [sym_class_definition] = STATE(63), + [sym_decorated_definition] = STATE(63), + [sym_decorator] = STATE(1146), + [sym_block] = STATE(459), + [sym_expression_list] = STATE(1545), + [sym_pattern] = STATE(1020), + [sym_tuple_pattern] = STATE(1005), + [sym_list_pattern] = STATE(1005), + [sym_list_splat_pattern] = STATE(1005), + [sym_expression] = STATE(1191), + [sym_primary_expression] = STATE(773), + [sym_not_operator] = STATE(1126), + [sym_boolean_operator] = STATE(1126), + [sym_binary_operator] = STATE(950), + [sym_unary_operator] = STATE(950), + [sym_comparison_operator] = STATE(1126), + [sym_lambda] = STATE(1126), + [sym_assignment] = STATE(1545), + [sym_augmented_assignment] = STATE(1545), + [sym_pattern_list] = STATE(1030), + [sym_yield] = STATE(1545), + [sym_attribute] = STATE(614), + [sym_subscript] = STATE(614), + [sym_call] = STATE(950), + [sym_list] = STATE(950), + [sym_set] = STATE(950), + [sym_tuple] = STATE(950), + [sym_dictionary] = STATE(950), + [sym_list_comprehension] = STATE(950), + [sym_dictionary_comprehension] = STATE(950), + [sym_set_comprehension] = STATE(950), + [sym_generator_expression] = STATE(950), + [sym_parenthesized_expression] = STATE(950), + [sym_conditional_expression] = STATE(1126), + [sym_concatenated_string] = STATE(950), + [sym_string] = STATE(779), + [sym_concatenated_template_string] = STATE(950), + [sym_template_string] = STATE(772), + [sym_await] = STATE(950), + [aux_sym_module_repeat1] = STATE(63), + [aux_sym_decorated_definition_repeat1] = STATE(1146), [sym_identifier] = ACTIONS(7), [anon_sym_lazy] = ACTIONS(9), [anon_sym_import] = ACTIONS(11), @@ -13886,75 +13928,75 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__template_string_start] = ACTIONS(85), }, [STATE(48)] = { - [sym__statement] = STATE(64), - [sym__simple_statements] = STATE(64), - [sym_import_statement] = STATE(1332), - [sym_future_import_statement] = STATE(1332), - [sym_import_from_statement] = STATE(1332), - [sym_print_statement] = STATE(1332), - [sym_assert_statement] = STATE(1332), - [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1156), - [sym_return_statement] = STATE(1332), - [sym_delete_statement] = STATE(1332), - [sym_raise_statement] = STATE(1332), - [sym_pass_statement] = STATE(1332), - [sym_break_statement] = STATE(1332), - [sym_continue_statement] = STATE(1332), - [sym_if_statement] = STATE(64), - [sym_for_statement] = STATE(64), - [sym_while_statement] = STATE(64), - [sym_try_statement] = STATE(64), - [sym_with_statement] = STATE(64), - [sym_match_statement] = STATE(64), - [sym_function_definition] = STATE(64), - [sym_list_splat] = STATE(1520), - [sym_dictionary_splat] = STATE(1520), - [sym_global_statement] = STATE(1332), - [sym_nonlocal_statement] = STATE(1332), - [sym_exec_statement] = STATE(1332), - [sym_type_alias_statement] = STATE(1332), - [sym_class_definition] = STATE(64), - [sym_decorated_definition] = STATE(64), - [sym_decorator] = STATE(1127), - [sym_block] = STATE(488), - [sym_expression_list] = STATE(1522), - [sym_pattern] = STATE(1017), - [sym_tuple_pattern] = STATE(1001), - [sym_list_pattern] = STATE(1001), - [sym_list_splat_pattern] = STATE(1001), - [sym_expression] = STATE(1176), - [sym_primary_expression] = STATE(765), - [sym_not_operator] = STATE(1156), - [sym_boolean_operator] = STATE(1156), - [sym_binary_operator] = STATE(920), - [sym_unary_operator] = STATE(920), - [sym_comparison_operator] = STATE(1156), - [sym_lambda] = STATE(1156), - [sym_assignment] = STATE(1522), - [sym_augmented_assignment] = STATE(1522), - [sym_pattern_list] = STATE(1026), - [sym_yield] = STATE(1522), - [sym_attribute] = STATE(582), - [sym_subscript] = STATE(582), - [sym_call] = STATE(920), - [sym_list] = STATE(920), - [sym_set] = STATE(920), - [sym_tuple] = STATE(920), - [sym_dictionary] = STATE(920), - [sym_list_comprehension] = STATE(920), - [sym_dictionary_comprehension] = STATE(920), - [sym_set_comprehension] = STATE(920), - [sym_generator_expression] = STATE(920), - [sym_parenthesized_expression] = STATE(920), - [sym_conditional_expression] = STATE(1156), - [sym_concatenated_string] = STATE(920), - [sym_string] = STATE(775), - [sym_concatenated_template_string] = STATE(920), - [sym_template_string] = STATE(769), - [sym_await] = STATE(920), - [aux_sym_module_repeat1] = STATE(64), - [aux_sym_decorated_definition_repeat1] = STATE(1127), + [sym__statement] = STATE(63), + [sym__simple_statements] = STATE(63), + [sym_import_statement] = STATE(1345), + [sym_future_import_statement] = STATE(1345), + [sym_import_from_statement] = STATE(1345), + [sym_print_statement] = STATE(1345), + [sym_assert_statement] = STATE(1345), + [sym_expression_statement] = STATE(1345), + [sym_named_expression] = STATE(1126), + [sym_return_statement] = STATE(1345), + [sym_delete_statement] = STATE(1345), + [sym_raise_statement] = STATE(1345), + [sym_pass_statement] = STATE(1345), + [sym_break_statement] = STATE(1345), + [sym_continue_statement] = STATE(1345), + [sym_if_statement] = STATE(63), + [sym_for_statement] = STATE(63), + [sym_while_statement] = STATE(63), + [sym_try_statement] = STATE(63), + [sym_with_statement] = STATE(63), + [sym_match_statement] = STATE(63), + [sym_function_definition] = STATE(63), + [sym_list_splat] = STATE(1590), + [sym_dictionary_splat] = STATE(1590), + [sym_global_statement] = STATE(1345), + [sym_nonlocal_statement] = STATE(1345), + [sym_exec_statement] = STATE(1345), + [sym_type_alias_statement] = STATE(1345), + [sym_class_definition] = STATE(63), + [sym_decorated_definition] = STATE(63), + [sym_decorator] = STATE(1146), + [sym_block] = STATE(504), + [sym_expression_list] = STATE(1545), + [sym_pattern] = STATE(1020), + [sym_tuple_pattern] = STATE(1005), + [sym_list_pattern] = STATE(1005), + [sym_list_splat_pattern] = STATE(1005), + [sym_expression] = STATE(1191), + [sym_primary_expression] = STATE(773), + [sym_not_operator] = STATE(1126), + [sym_boolean_operator] = STATE(1126), + [sym_binary_operator] = STATE(950), + [sym_unary_operator] = STATE(950), + [sym_comparison_operator] = STATE(1126), + [sym_lambda] = STATE(1126), + [sym_assignment] = STATE(1545), + [sym_augmented_assignment] = STATE(1545), + [sym_pattern_list] = STATE(1030), + [sym_yield] = STATE(1545), + [sym_attribute] = STATE(614), + [sym_subscript] = STATE(614), + [sym_call] = STATE(950), + [sym_list] = STATE(950), + [sym_set] = STATE(950), + [sym_tuple] = STATE(950), + [sym_dictionary] = STATE(950), + [sym_list_comprehension] = STATE(950), + [sym_dictionary_comprehension] = STATE(950), + [sym_set_comprehension] = STATE(950), + [sym_generator_expression] = STATE(950), + [sym_parenthesized_expression] = STATE(950), + [sym_conditional_expression] = STATE(1126), + [sym_concatenated_string] = STATE(950), + [sym_string] = STATE(779), + [sym_concatenated_template_string] = STATE(950), + [sym_template_string] = STATE(772), + [sym_await] = STATE(950), + [aux_sym_module_repeat1] = STATE(63), + [aux_sym_decorated_definition_repeat1] = STATE(1146), [sym_identifier] = ACTIONS(7), [anon_sym_lazy] = ACTIONS(9), [anon_sym_import] = ACTIONS(11), @@ -14005,75 +14047,75 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__template_string_start] = ACTIONS(85), }, [STATE(49)] = { - [sym__statement] = STATE(64), - [sym__simple_statements] = STATE(64), - [sym_import_statement] = STATE(1332), - [sym_future_import_statement] = STATE(1332), - [sym_import_from_statement] = STATE(1332), - [sym_print_statement] = STATE(1332), - [sym_assert_statement] = STATE(1332), - [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1156), - [sym_return_statement] = STATE(1332), - [sym_delete_statement] = STATE(1332), - [sym_raise_statement] = STATE(1332), - [sym_pass_statement] = STATE(1332), - [sym_break_statement] = STATE(1332), - [sym_continue_statement] = STATE(1332), - [sym_if_statement] = STATE(64), - [sym_for_statement] = STATE(64), - [sym_while_statement] = STATE(64), - [sym_try_statement] = STATE(64), - [sym_with_statement] = STATE(64), - [sym_match_statement] = STATE(64), - [sym_function_definition] = STATE(64), - [sym_list_splat] = STATE(1520), - [sym_dictionary_splat] = STATE(1520), - [sym_global_statement] = STATE(1332), - [sym_nonlocal_statement] = STATE(1332), - [sym_exec_statement] = STATE(1332), - [sym_type_alias_statement] = STATE(1332), - [sym_class_definition] = STATE(64), - [sym_decorated_definition] = STATE(64), - [sym_decorator] = STATE(1127), - [sym_block] = STATE(558), - [sym_expression_list] = STATE(1522), - [sym_pattern] = STATE(1017), - [sym_tuple_pattern] = STATE(1001), - [sym_list_pattern] = STATE(1001), - [sym_list_splat_pattern] = STATE(1001), - [sym_expression] = STATE(1176), - [sym_primary_expression] = STATE(765), - [sym_not_operator] = STATE(1156), - [sym_boolean_operator] = STATE(1156), - [sym_binary_operator] = STATE(920), - [sym_unary_operator] = STATE(920), - [sym_comparison_operator] = STATE(1156), - [sym_lambda] = STATE(1156), - [sym_assignment] = STATE(1522), - [sym_augmented_assignment] = STATE(1522), - [sym_pattern_list] = STATE(1026), - [sym_yield] = STATE(1522), - [sym_attribute] = STATE(582), - [sym_subscript] = STATE(582), - [sym_call] = STATE(920), - [sym_list] = STATE(920), - [sym_set] = STATE(920), - [sym_tuple] = STATE(920), - [sym_dictionary] = STATE(920), - [sym_list_comprehension] = STATE(920), - [sym_dictionary_comprehension] = STATE(920), - [sym_set_comprehension] = STATE(920), - [sym_generator_expression] = STATE(920), - [sym_parenthesized_expression] = STATE(920), - [sym_conditional_expression] = STATE(1156), - [sym_concatenated_string] = STATE(920), - [sym_string] = STATE(775), - [sym_concatenated_template_string] = STATE(920), - [sym_template_string] = STATE(769), - [sym_await] = STATE(920), - [aux_sym_module_repeat1] = STATE(64), - [aux_sym_decorated_definition_repeat1] = STATE(1127), + [sym__statement] = STATE(63), + [sym__simple_statements] = STATE(63), + [sym_import_statement] = STATE(1345), + [sym_future_import_statement] = STATE(1345), + [sym_import_from_statement] = STATE(1345), + [sym_print_statement] = STATE(1345), + [sym_assert_statement] = STATE(1345), + [sym_expression_statement] = STATE(1345), + [sym_named_expression] = STATE(1126), + [sym_return_statement] = STATE(1345), + [sym_delete_statement] = STATE(1345), + [sym_raise_statement] = STATE(1345), + [sym_pass_statement] = STATE(1345), + [sym_break_statement] = STATE(1345), + [sym_continue_statement] = STATE(1345), + [sym_if_statement] = STATE(63), + [sym_for_statement] = STATE(63), + [sym_while_statement] = STATE(63), + [sym_try_statement] = STATE(63), + [sym_with_statement] = STATE(63), + [sym_match_statement] = STATE(63), + [sym_function_definition] = STATE(63), + [sym_list_splat] = STATE(1590), + [sym_dictionary_splat] = STATE(1590), + [sym_global_statement] = STATE(1345), + [sym_nonlocal_statement] = STATE(1345), + [sym_exec_statement] = STATE(1345), + [sym_type_alias_statement] = STATE(1345), + [sym_class_definition] = STATE(63), + [sym_decorated_definition] = STATE(63), + [sym_decorator] = STATE(1146), + [sym_block] = STATE(595), + [sym_expression_list] = STATE(1545), + [sym_pattern] = STATE(1020), + [sym_tuple_pattern] = STATE(1005), + [sym_list_pattern] = STATE(1005), + [sym_list_splat_pattern] = STATE(1005), + [sym_expression] = STATE(1191), + [sym_primary_expression] = STATE(773), + [sym_not_operator] = STATE(1126), + [sym_boolean_operator] = STATE(1126), + [sym_binary_operator] = STATE(950), + [sym_unary_operator] = STATE(950), + [sym_comparison_operator] = STATE(1126), + [sym_lambda] = STATE(1126), + [sym_assignment] = STATE(1545), + [sym_augmented_assignment] = STATE(1545), + [sym_pattern_list] = STATE(1030), + [sym_yield] = STATE(1545), + [sym_attribute] = STATE(614), + [sym_subscript] = STATE(614), + [sym_call] = STATE(950), + [sym_list] = STATE(950), + [sym_set] = STATE(950), + [sym_tuple] = STATE(950), + [sym_dictionary] = STATE(950), + [sym_list_comprehension] = STATE(950), + [sym_dictionary_comprehension] = STATE(950), + [sym_set_comprehension] = STATE(950), + [sym_generator_expression] = STATE(950), + [sym_parenthesized_expression] = STATE(950), + [sym_conditional_expression] = STATE(1126), + [sym_concatenated_string] = STATE(950), + [sym_string] = STATE(779), + [sym_concatenated_template_string] = STATE(950), + [sym_template_string] = STATE(772), + [sym_await] = STATE(950), + [aux_sym_module_repeat1] = STATE(63), + [aux_sym_decorated_definition_repeat1] = STATE(1146), [sym_identifier] = ACTIONS(7), [anon_sym_lazy] = ACTIONS(9), [anon_sym_import] = ACTIONS(11), @@ -14124,75 +14166,75 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__template_string_start] = ACTIONS(85), }, [STATE(50)] = { - [sym__statement] = STATE(64), - [sym__simple_statements] = STATE(64), - [sym_import_statement] = STATE(1332), - [sym_future_import_statement] = STATE(1332), - [sym_import_from_statement] = STATE(1332), - [sym_print_statement] = STATE(1332), - [sym_assert_statement] = STATE(1332), - [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1156), - [sym_return_statement] = STATE(1332), - [sym_delete_statement] = STATE(1332), - [sym_raise_statement] = STATE(1332), - [sym_pass_statement] = STATE(1332), - [sym_break_statement] = STATE(1332), - [sym_continue_statement] = STATE(1332), - [sym_if_statement] = STATE(64), - [sym_for_statement] = STATE(64), - [sym_while_statement] = STATE(64), - [sym_try_statement] = STATE(64), - [sym_with_statement] = STATE(64), - [sym_match_statement] = STATE(64), - [sym_function_definition] = STATE(64), - [sym_list_splat] = STATE(1520), - [sym_dictionary_splat] = STATE(1520), - [sym_global_statement] = STATE(1332), - [sym_nonlocal_statement] = STATE(1332), - [sym_exec_statement] = STATE(1332), - [sym_type_alias_statement] = STATE(1332), - [sym_class_definition] = STATE(64), - [sym_decorated_definition] = STATE(64), - [sym_decorator] = STATE(1127), - [sym_block] = STATE(481), - [sym_expression_list] = STATE(1522), - [sym_pattern] = STATE(1017), - [sym_tuple_pattern] = STATE(1001), - [sym_list_pattern] = STATE(1001), - [sym_list_splat_pattern] = STATE(1001), - [sym_expression] = STATE(1176), - [sym_primary_expression] = STATE(765), - [sym_not_operator] = STATE(1156), - [sym_boolean_operator] = STATE(1156), - [sym_binary_operator] = STATE(920), - [sym_unary_operator] = STATE(920), - [sym_comparison_operator] = STATE(1156), - [sym_lambda] = STATE(1156), - [sym_assignment] = STATE(1522), - [sym_augmented_assignment] = STATE(1522), - [sym_pattern_list] = STATE(1026), - [sym_yield] = STATE(1522), - [sym_attribute] = STATE(582), - [sym_subscript] = STATE(582), - [sym_call] = STATE(920), - [sym_list] = STATE(920), - [sym_set] = STATE(920), - [sym_tuple] = STATE(920), - [sym_dictionary] = STATE(920), - [sym_list_comprehension] = STATE(920), - [sym_dictionary_comprehension] = STATE(920), - [sym_set_comprehension] = STATE(920), - [sym_generator_expression] = STATE(920), - [sym_parenthesized_expression] = STATE(920), - [sym_conditional_expression] = STATE(1156), - [sym_concatenated_string] = STATE(920), - [sym_string] = STATE(775), - [sym_concatenated_template_string] = STATE(920), - [sym_template_string] = STATE(769), - [sym_await] = STATE(920), - [aux_sym_module_repeat1] = STATE(64), - [aux_sym_decorated_definition_repeat1] = STATE(1127), + [sym__statement] = STATE(63), + [sym__simple_statements] = STATE(63), + [sym_import_statement] = STATE(1345), + [sym_future_import_statement] = STATE(1345), + [sym_import_from_statement] = STATE(1345), + [sym_print_statement] = STATE(1345), + [sym_assert_statement] = STATE(1345), + [sym_expression_statement] = STATE(1345), + [sym_named_expression] = STATE(1126), + [sym_return_statement] = STATE(1345), + [sym_delete_statement] = STATE(1345), + [sym_raise_statement] = STATE(1345), + [sym_pass_statement] = STATE(1345), + [sym_break_statement] = STATE(1345), + [sym_continue_statement] = STATE(1345), + [sym_if_statement] = STATE(63), + [sym_for_statement] = STATE(63), + [sym_while_statement] = STATE(63), + [sym_try_statement] = STATE(63), + [sym_with_statement] = STATE(63), + [sym_match_statement] = STATE(63), + [sym_function_definition] = STATE(63), + [sym_list_splat] = STATE(1590), + [sym_dictionary_splat] = STATE(1590), + [sym_global_statement] = STATE(1345), + [sym_nonlocal_statement] = STATE(1345), + [sym_exec_statement] = STATE(1345), + [sym_type_alias_statement] = STATE(1345), + [sym_class_definition] = STATE(63), + [sym_decorated_definition] = STATE(63), + [sym_decorator] = STATE(1146), + [sym_block] = STATE(489), + [sym_expression_list] = STATE(1545), + [sym_pattern] = STATE(1020), + [sym_tuple_pattern] = STATE(1005), + [sym_list_pattern] = STATE(1005), + [sym_list_splat_pattern] = STATE(1005), + [sym_expression] = STATE(1191), + [sym_primary_expression] = STATE(773), + [sym_not_operator] = STATE(1126), + [sym_boolean_operator] = STATE(1126), + [sym_binary_operator] = STATE(950), + [sym_unary_operator] = STATE(950), + [sym_comparison_operator] = STATE(1126), + [sym_lambda] = STATE(1126), + [sym_assignment] = STATE(1545), + [sym_augmented_assignment] = STATE(1545), + [sym_pattern_list] = STATE(1030), + [sym_yield] = STATE(1545), + [sym_attribute] = STATE(614), + [sym_subscript] = STATE(614), + [sym_call] = STATE(950), + [sym_list] = STATE(950), + [sym_set] = STATE(950), + [sym_tuple] = STATE(950), + [sym_dictionary] = STATE(950), + [sym_list_comprehension] = STATE(950), + [sym_dictionary_comprehension] = STATE(950), + [sym_set_comprehension] = STATE(950), + [sym_generator_expression] = STATE(950), + [sym_parenthesized_expression] = STATE(950), + [sym_conditional_expression] = STATE(1126), + [sym_concatenated_string] = STATE(950), + [sym_string] = STATE(779), + [sym_concatenated_template_string] = STATE(950), + [sym_template_string] = STATE(772), + [sym_await] = STATE(950), + [aux_sym_module_repeat1] = STATE(63), + [aux_sym_decorated_definition_repeat1] = STATE(1146), [sym_identifier] = ACTIONS(7), [anon_sym_lazy] = ACTIONS(9), [anon_sym_import] = ACTIONS(11), @@ -14243,75 +14285,75 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__template_string_start] = ACTIONS(85), }, [STATE(51)] = { - [sym__statement] = STATE(64), - [sym__simple_statements] = STATE(64), - [sym_import_statement] = STATE(1332), - [sym_future_import_statement] = STATE(1332), - [sym_import_from_statement] = STATE(1332), - [sym_print_statement] = STATE(1332), - [sym_assert_statement] = STATE(1332), - [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1156), - [sym_return_statement] = STATE(1332), - [sym_delete_statement] = STATE(1332), - [sym_raise_statement] = STATE(1332), - [sym_pass_statement] = STATE(1332), - [sym_break_statement] = STATE(1332), - [sym_continue_statement] = STATE(1332), - [sym_if_statement] = STATE(64), - [sym_for_statement] = STATE(64), - [sym_while_statement] = STATE(64), - [sym_try_statement] = STATE(64), - [sym_with_statement] = STATE(64), - [sym_match_statement] = STATE(64), - [sym_function_definition] = STATE(64), - [sym_list_splat] = STATE(1520), - [sym_dictionary_splat] = STATE(1520), - [sym_global_statement] = STATE(1332), - [sym_nonlocal_statement] = STATE(1332), - [sym_exec_statement] = STATE(1332), - [sym_type_alias_statement] = STATE(1332), - [sym_class_definition] = STATE(64), - [sym_decorated_definition] = STATE(64), - [sym_decorator] = STATE(1127), - [sym_block] = STATE(561), - [sym_expression_list] = STATE(1522), - [sym_pattern] = STATE(1017), - [sym_tuple_pattern] = STATE(1001), - [sym_list_pattern] = STATE(1001), - [sym_list_splat_pattern] = STATE(1001), - [sym_expression] = STATE(1176), - [sym_primary_expression] = STATE(765), - [sym_not_operator] = STATE(1156), - [sym_boolean_operator] = STATE(1156), - [sym_binary_operator] = STATE(920), - [sym_unary_operator] = STATE(920), - [sym_comparison_operator] = STATE(1156), - [sym_lambda] = STATE(1156), - [sym_assignment] = STATE(1522), - [sym_augmented_assignment] = STATE(1522), - [sym_pattern_list] = STATE(1026), - [sym_yield] = STATE(1522), - [sym_attribute] = STATE(582), - [sym_subscript] = STATE(582), - [sym_call] = STATE(920), - [sym_list] = STATE(920), - [sym_set] = STATE(920), - [sym_tuple] = STATE(920), - [sym_dictionary] = STATE(920), - [sym_list_comprehension] = STATE(920), - [sym_dictionary_comprehension] = STATE(920), - [sym_set_comprehension] = STATE(920), - [sym_generator_expression] = STATE(920), - [sym_parenthesized_expression] = STATE(920), - [sym_conditional_expression] = STATE(1156), - [sym_concatenated_string] = STATE(920), - [sym_string] = STATE(775), - [sym_concatenated_template_string] = STATE(920), - [sym_template_string] = STATE(769), - [sym_await] = STATE(920), - [aux_sym_module_repeat1] = STATE(64), - [aux_sym_decorated_definition_repeat1] = STATE(1127), + [sym__statement] = STATE(63), + [sym__simple_statements] = STATE(63), + [sym_import_statement] = STATE(1345), + [sym_future_import_statement] = STATE(1345), + [sym_import_from_statement] = STATE(1345), + [sym_print_statement] = STATE(1345), + [sym_assert_statement] = STATE(1345), + [sym_expression_statement] = STATE(1345), + [sym_named_expression] = STATE(1126), + [sym_return_statement] = STATE(1345), + [sym_delete_statement] = STATE(1345), + [sym_raise_statement] = STATE(1345), + [sym_pass_statement] = STATE(1345), + [sym_break_statement] = STATE(1345), + [sym_continue_statement] = STATE(1345), + [sym_if_statement] = STATE(63), + [sym_for_statement] = STATE(63), + [sym_while_statement] = STATE(63), + [sym_try_statement] = STATE(63), + [sym_with_statement] = STATE(63), + [sym_match_statement] = STATE(63), + [sym_function_definition] = STATE(63), + [sym_list_splat] = STATE(1590), + [sym_dictionary_splat] = STATE(1590), + [sym_global_statement] = STATE(1345), + [sym_nonlocal_statement] = STATE(1345), + [sym_exec_statement] = STATE(1345), + [sym_type_alias_statement] = STATE(1345), + [sym_class_definition] = STATE(63), + [sym_decorated_definition] = STATE(63), + [sym_decorator] = STATE(1146), + [sym_block] = STATE(598), + [sym_expression_list] = STATE(1545), + [sym_pattern] = STATE(1020), + [sym_tuple_pattern] = STATE(1005), + [sym_list_pattern] = STATE(1005), + [sym_list_splat_pattern] = STATE(1005), + [sym_expression] = STATE(1191), + [sym_primary_expression] = STATE(773), + [sym_not_operator] = STATE(1126), + [sym_boolean_operator] = STATE(1126), + [sym_binary_operator] = STATE(950), + [sym_unary_operator] = STATE(950), + [sym_comparison_operator] = STATE(1126), + [sym_lambda] = STATE(1126), + [sym_assignment] = STATE(1545), + [sym_augmented_assignment] = STATE(1545), + [sym_pattern_list] = STATE(1030), + [sym_yield] = STATE(1545), + [sym_attribute] = STATE(614), + [sym_subscript] = STATE(614), + [sym_call] = STATE(950), + [sym_list] = STATE(950), + [sym_set] = STATE(950), + [sym_tuple] = STATE(950), + [sym_dictionary] = STATE(950), + [sym_list_comprehension] = STATE(950), + [sym_dictionary_comprehension] = STATE(950), + [sym_set_comprehension] = STATE(950), + [sym_generator_expression] = STATE(950), + [sym_parenthesized_expression] = STATE(950), + [sym_conditional_expression] = STATE(1126), + [sym_concatenated_string] = STATE(950), + [sym_string] = STATE(779), + [sym_concatenated_template_string] = STATE(950), + [sym_template_string] = STATE(772), + [sym_await] = STATE(950), + [aux_sym_module_repeat1] = STATE(63), + [aux_sym_decorated_definition_repeat1] = STATE(1146), [sym_identifier] = ACTIONS(7), [anon_sym_lazy] = ACTIONS(9), [anon_sym_import] = ACTIONS(11), @@ -14362,75 +14404,75 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__template_string_start] = ACTIONS(85), }, [STATE(52)] = { - [sym__statement] = STATE(64), - [sym__simple_statements] = STATE(64), - [sym_import_statement] = STATE(1332), - [sym_future_import_statement] = STATE(1332), - [sym_import_from_statement] = STATE(1332), - [sym_print_statement] = STATE(1332), - [sym_assert_statement] = STATE(1332), - [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1156), - [sym_return_statement] = STATE(1332), - [sym_delete_statement] = STATE(1332), - [sym_raise_statement] = STATE(1332), - [sym_pass_statement] = STATE(1332), - [sym_break_statement] = STATE(1332), - [sym_continue_statement] = STATE(1332), - [sym_if_statement] = STATE(64), - [sym_for_statement] = STATE(64), - [sym_while_statement] = STATE(64), - [sym_try_statement] = STATE(64), - [sym_with_statement] = STATE(64), - [sym_match_statement] = STATE(64), - [sym_function_definition] = STATE(64), - [sym_list_splat] = STATE(1520), - [sym_dictionary_splat] = STATE(1520), - [sym_global_statement] = STATE(1332), - [sym_nonlocal_statement] = STATE(1332), - [sym_exec_statement] = STATE(1332), - [sym_type_alias_statement] = STATE(1332), - [sym_class_definition] = STATE(64), - [sym_decorated_definition] = STATE(64), - [sym_decorator] = STATE(1127), - [sym_block] = STATE(435), - [sym_expression_list] = STATE(1522), - [sym_pattern] = STATE(1017), - [sym_tuple_pattern] = STATE(1001), - [sym_list_pattern] = STATE(1001), - [sym_list_splat_pattern] = STATE(1001), - [sym_expression] = STATE(1176), - [sym_primary_expression] = STATE(765), - [sym_not_operator] = STATE(1156), - [sym_boolean_operator] = STATE(1156), - [sym_binary_operator] = STATE(920), - [sym_unary_operator] = STATE(920), - [sym_comparison_operator] = STATE(1156), - [sym_lambda] = STATE(1156), - [sym_assignment] = STATE(1522), - [sym_augmented_assignment] = STATE(1522), - [sym_pattern_list] = STATE(1026), - [sym_yield] = STATE(1522), - [sym_attribute] = STATE(582), - [sym_subscript] = STATE(582), - [sym_call] = STATE(920), - [sym_list] = STATE(920), - [sym_set] = STATE(920), - [sym_tuple] = STATE(920), - [sym_dictionary] = STATE(920), - [sym_list_comprehension] = STATE(920), - [sym_dictionary_comprehension] = STATE(920), - [sym_set_comprehension] = STATE(920), - [sym_generator_expression] = STATE(920), - [sym_parenthesized_expression] = STATE(920), - [sym_conditional_expression] = STATE(1156), - [sym_concatenated_string] = STATE(920), - [sym_string] = STATE(775), - [sym_concatenated_template_string] = STATE(920), - [sym_template_string] = STATE(769), - [sym_await] = STATE(920), - [aux_sym_module_repeat1] = STATE(64), - [aux_sym_decorated_definition_repeat1] = STATE(1127), + [sym__statement] = STATE(63), + [sym__simple_statements] = STATE(63), + [sym_import_statement] = STATE(1345), + [sym_future_import_statement] = STATE(1345), + [sym_import_from_statement] = STATE(1345), + [sym_print_statement] = STATE(1345), + [sym_assert_statement] = STATE(1345), + [sym_expression_statement] = STATE(1345), + [sym_named_expression] = STATE(1126), + [sym_return_statement] = STATE(1345), + [sym_delete_statement] = STATE(1345), + [sym_raise_statement] = STATE(1345), + [sym_pass_statement] = STATE(1345), + [sym_break_statement] = STATE(1345), + [sym_continue_statement] = STATE(1345), + [sym_if_statement] = STATE(63), + [sym_for_statement] = STATE(63), + [sym_while_statement] = STATE(63), + [sym_try_statement] = STATE(63), + [sym_with_statement] = STATE(63), + [sym_match_statement] = STATE(63), + [sym_function_definition] = STATE(63), + [sym_list_splat] = STATE(1590), + [sym_dictionary_splat] = STATE(1590), + [sym_global_statement] = STATE(1345), + [sym_nonlocal_statement] = STATE(1345), + [sym_exec_statement] = STATE(1345), + [sym_type_alias_statement] = STATE(1345), + [sym_class_definition] = STATE(63), + [sym_decorated_definition] = STATE(63), + [sym_decorator] = STATE(1146), + [sym_block] = STATE(460), + [sym_expression_list] = STATE(1545), + [sym_pattern] = STATE(1020), + [sym_tuple_pattern] = STATE(1005), + [sym_list_pattern] = STATE(1005), + [sym_list_splat_pattern] = STATE(1005), + [sym_expression] = STATE(1191), + [sym_primary_expression] = STATE(773), + [sym_not_operator] = STATE(1126), + [sym_boolean_operator] = STATE(1126), + [sym_binary_operator] = STATE(950), + [sym_unary_operator] = STATE(950), + [sym_comparison_operator] = STATE(1126), + [sym_lambda] = STATE(1126), + [sym_assignment] = STATE(1545), + [sym_augmented_assignment] = STATE(1545), + [sym_pattern_list] = STATE(1030), + [sym_yield] = STATE(1545), + [sym_attribute] = STATE(614), + [sym_subscript] = STATE(614), + [sym_call] = STATE(950), + [sym_list] = STATE(950), + [sym_set] = STATE(950), + [sym_tuple] = STATE(950), + [sym_dictionary] = STATE(950), + [sym_list_comprehension] = STATE(950), + [sym_dictionary_comprehension] = STATE(950), + [sym_set_comprehension] = STATE(950), + [sym_generator_expression] = STATE(950), + [sym_parenthesized_expression] = STATE(950), + [sym_conditional_expression] = STATE(1126), + [sym_concatenated_string] = STATE(950), + [sym_string] = STATE(779), + [sym_concatenated_template_string] = STATE(950), + [sym_template_string] = STATE(772), + [sym_await] = STATE(950), + [aux_sym_module_repeat1] = STATE(63), + [aux_sym_decorated_definition_repeat1] = STATE(1146), [sym_identifier] = ACTIONS(7), [anon_sym_lazy] = ACTIONS(9), [anon_sym_import] = ACTIONS(11), @@ -14481,75 +14523,75 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__template_string_start] = ACTIONS(85), }, [STATE(53)] = { - [sym__statement] = STATE(64), - [sym__simple_statements] = STATE(64), - [sym_import_statement] = STATE(1332), - [sym_future_import_statement] = STATE(1332), - [sym_import_from_statement] = STATE(1332), - [sym_print_statement] = STATE(1332), - [sym_assert_statement] = STATE(1332), - [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1156), - [sym_return_statement] = STATE(1332), - [sym_delete_statement] = STATE(1332), - [sym_raise_statement] = STATE(1332), - [sym_pass_statement] = STATE(1332), - [sym_break_statement] = STATE(1332), - [sym_continue_statement] = STATE(1332), - [sym_if_statement] = STATE(64), - [sym_for_statement] = STATE(64), - [sym_while_statement] = STATE(64), - [sym_try_statement] = STATE(64), - [sym_with_statement] = STATE(64), - [sym_match_statement] = STATE(64), - [sym_function_definition] = STATE(64), - [sym_list_splat] = STATE(1520), - [sym_dictionary_splat] = STATE(1520), - [sym_global_statement] = STATE(1332), - [sym_nonlocal_statement] = STATE(1332), - [sym_exec_statement] = STATE(1332), - [sym_type_alias_statement] = STATE(1332), - [sym_class_definition] = STATE(64), - [sym_decorated_definition] = STATE(64), - [sym_decorator] = STATE(1127), - [sym_block] = STATE(506), - [sym_expression_list] = STATE(1522), - [sym_pattern] = STATE(1017), - [sym_tuple_pattern] = STATE(1001), - [sym_list_pattern] = STATE(1001), - [sym_list_splat_pattern] = STATE(1001), - [sym_expression] = STATE(1176), - [sym_primary_expression] = STATE(765), - [sym_not_operator] = STATE(1156), - [sym_boolean_operator] = STATE(1156), - [sym_binary_operator] = STATE(920), - [sym_unary_operator] = STATE(920), - [sym_comparison_operator] = STATE(1156), - [sym_lambda] = STATE(1156), - [sym_assignment] = STATE(1522), - [sym_augmented_assignment] = STATE(1522), - [sym_pattern_list] = STATE(1026), - [sym_yield] = STATE(1522), - [sym_attribute] = STATE(582), - [sym_subscript] = STATE(582), - [sym_call] = STATE(920), - [sym_list] = STATE(920), - [sym_set] = STATE(920), - [sym_tuple] = STATE(920), - [sym_dictionary] = STATE(920), - [sym_list_comprehension] = STATE(920), - [sym_dictionary_comprehension] = STATE(920), - [sym_set_comprehension] = STATE(920), - [sym_generator_expression] = STATE(920), - [sym_parenthesized_expression] = STATE(920), - [sym_conditional_expression] = STATE(1156), - [sym_concatenated_string] = STATE(920), - [sym_string] = STATE(775), - [sym_concatenated_template_string] = STATE(920), - [sym_template_string] = STATE(769), - [sym_await] = STATE(920), - [aux_sym_module_repeat1] = STATE(64), - [aux_sym_decorated_definition_repeat1] = STATE(1127), + [sym__statement] = STATE(63), + [sym__simple_statements] = STATE(63), + [sym_import_statement] = STATE(1345), + [sym_future_import_statement] = STATE(1345), + [sym_import_from_statement] = STATE(1345), + [sym_print_statement] = STATE(1345), + [sym_assert_statement] = STATE(1345), + [sym_expression_statement] = STATE(1345), + [sym_named_expression] = STATE(1126), + [sym_return_statement] = STATE(1345), + [sym_delete_statement] = STATE(1345), + [sym_raise_statement] = STATE(1345), + [sym_pass_statement] = STATE(1345), + [sym_break_statement] = STATE(1345), + [sym_continue_statement] = STATE(1345), + [sym_if_statement] = STATE(63), + [sym_for_statement] = STATE(63), + [sym_while_statement] = STATE(63), + [sym_try_statement] = STATE(63), + [sym_with_statement] = STATE(63), + [sym_match_statement] = STATE(63), + [sym_function_definition] = STATE(63), + [sym_list_splat] = STATE(1590), + [sym_dictionary_splat] = STATE(1590), + [sym_global_statement] = STATE(1345), + [sym_nonlocal_statement] = STATE(1345), + [sym_exec_statement] = STATE(1345), + [sym_type_alias_statement] = STATE(1345), + [sym_class_definition] = STATE(63), + [sym_decorated_definition] = STATE(63), + [sym_decorator] = STATE(1146), + [sym_block] = STATE(507), + [sym_expression_list] = STATE(1545), + [sym_pattern] = STATE(1020), + [sym_tuple_pattern] = STATE(1005), + [sym_list_pattern] = STATE(1005), + [sym_list_splat_pattern] = STATE(1005), + [sym_expression] = STATE(1191), + [sym_primary_expression] = STATE(773), + [sym_not_operator] = STATE(1126), + [sym_boolean_operator] = STATE(1126), + [sym_binary_operator] = STATE(950), + [sym_unary_operator] = STATE(950), + [sym_comparison_operator] = STATE(1126), + [sym_lambda] = STATE(1126), + [sym_assignment] = STATE(1545), + [sym_augmented_assignment] = STATE(1545), + [sym_pattern_list] = STATE(1030), + [sym_yield] = STATE(1545), + [sym_attribute] = STATE(614), + [sym_subscript] = STATE(614), + [sym_call] = STATE(950), + [sym_list] = STATE(950), + [sym_set] = STATE(950), + [sym_tuple] = STATE(950), + [sym_dictionary] = STATE(950), + [sym_list_comprehension] = STATE(950), + [sym_dictionary_comprehension] = STATE(950), + [sym_set_comprehension] = STATE(950), + [sym_generator_expression] = STATE(950), + [sym_parenthesized_expression] = STATE(950), + [sym_conditional_expression] = STATE(1126), + [sym_concatenated_string] = STATE(950), + [sym_string] = STATE(779), + [sym_concatenated_template_string] = STATE(950), + [sym_template_string] = STATE(772), + [sym_await] = STATE(950), + [aux_sym_module_repeat1] = STATE(63), + [aux_sym_decorated_definition_repeat1] = STATE(1146), [sym_identifier] = ACTIONS(7), [anon_sym_lazy] = ACTIONS(9), [anon_sym_import] = ACTIONS(11), @@ -14600,75 +14642,75 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__template_string_start] = ACTIONS(85), }, [STATE(54)] = { - [sym__statement] = STATE(64), - [sym__simple_statements] = STATE(64), - [sym_import_statement] = STATE(1332), - [sym_future_import_statement] = STATE(1332), - [sym_import_from_statement] = STATE(1332), - [sym_print_statement] = STATE(1332), - [sym_assert_statement] = STATE(1332), - [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1156), - [sym_return_statement] = STATE(1332), - [sym_delete_statement] = STATE(1332), - [sym_raise_statement] = STATE(1332), - [sym_pass_statement] = STATE(1332), - [sym_break_statement] = STATE(1332), - [sym_continue_statement] = STATE(1332), - [sym_if_statement] = STATE(64), - [sym_for_statement] = STATE(64), - [sym_while_statement] = STATE(64), - [sym_try_statement] = STATE(64), - [sym_with_statement] = STATE(64), - [sym_match_statement] = STATE(64), - [sym_function_definition] = STATE(64), - [sym_list_splat] = STATE(1520), - [sym_dictionary_splat] = STATE(1520), - [sym_global_statement] = STATE(1332), - [sym_nonlocal_statement] = STATE(1332), - [sym_exec_statement] = STATE(1332), - [sym_type_alias_statement] = STATE(1332), - [sym_class_definition] = STATE(64), - [sym_decorated_definition] = STATE(64), - [sym_decorator] = STATE(1127), - [sym_block] = STATE(564), - [sym_expression_list] = STATE(1522), - [sym_pattern] = STATE(1017), - [sym_tuple_pattern] = STATE(1001), - [sym_list_pattern] = STATE(1001), - [sym_list_splat_pattern] = STATE(1001), - [sym_expression] = STATE(1176), - [sym_primary_expression] = STATE(765), - [sym_not_operator] = STATE(1156), - [sym_boolean_operator] = STATE(1156), - [sym_binary_operator] = STATE(920), - [sym_unary_operator] = STATE(920), - [sym_comparison_operator] = STATE(1156), - [sym_lambda] = STATE(1156), - [sym_assignment] = STATE(1522), - [sym_augmented_assignment] = STATE(1522), - [sym_pattern_list] = STATE(1026), - [sym_yield] = STATE(1522), - [sym_attribute] = STATE(582), - [sym_subscript] = STATE(582), - [sym_call] = STATE(920), - [sym_list] = STATE(920), - [sym_set] = STATE(920), - [sym_tuple] = STATE(920), - [sym_dictionary] = STATE(920), - [sym_list_comprehension] = STATE(920), - [sym_dictionary_comprehension] = STATE(920), - [sym_set_comprehension] = STATE(920), - [sym_generator_expression] = STATE(920), - [sym_parenthesized_expression] = STATE(920), - [sym_conditional_expression] = STATE(1156), - [sym_concatenated_string] = STATE(920), - [sym_string] = STATE(775), - [sym_concatenated_template_string] = STATE(920), - [sym_template_string] = STATE(769), - [sym_await] = STATE(920), - [aux_sym_module_repeat1] = STATE(64), - [aux_sym_decorated_definition_repeat1] = STATE(1127), + [sym__statement] = STATE(63), + [sym__simple_statements] = STATE(63), + [sym_import_statement] = STATE(1345), + [sym_future_import_statement] = STATE(1345), + [sym_import_from_statement] = STATE(1345), + [sym_print_statement] = STATE(1345), + [sym_assert_statement] = STATE(1345), + [sym_expression_statement] = STATE(1345), + [sym_named_expression] = STATE(1126), + [sym_return_statement] = STATE(1345), + [sym_delete_statement] = STATE(1345), + [sym_raise_statement] = STATE(1345), + [sym_pass_statement] = STATE(1345), + [sym_break_statement] = STATE(1345), + [sym_continue_statement] = STATE(1345), + [sym_if_statement] = STATE(63), + [sym_for_statement] = STATE(63), + [sym_while_statement] = STATE(63), + [sym_try_statement] = STATE(63), + [sym_with_statement] = STATE(63), + [sym_match_statement] = STATE(63), + [sym_function_definition] = STATE(63), + [sym_list_splat] = STATE(1590), + [sym_dictionary_splat] = STATE(1590), + [sym_global_statement] = STATE(1345), + [sym_nonlocal_statement] = STATE(1345), + [sym_exec_statement] = STATE(1345), + [sym_type_alias_statement] = STATE(1345), + [sym_class_definition] = STATE(63), + [sym_decorated_definition] = STATE(63), + [sym_decorator] = STATE(1146), + [sym_block] = STATE(602), + [sym_expression_list] = STATE(1545), + [sym_pattern] = STATE(1020), + [sym_tuple_pattern] = STATE(1005), + [sym_list_pattern] = STATE(1005), + [sym_list_splat_pattern] = STATE(1005), + [sym_expression] = STATE(1191), + [sym_primary_expression] = STATE(773), + [sym_not_operator] = STATE(1126), + [sym_boolean_operator] = STATE(1126), + [sym_binary_operator] = STATE(950), + [sym_unary_operator] = STATE(950), + [sym_comparison_operator] = STATE(1126), + [sym_lambda] = STATE(1126), + [sym_assignment] = STATE(1545), + [sym_augmented_assignment] = STATE(1545), + [sym_pattern_list] = STATE(1030), + [sym_yield] = STATE(1545), + [sym_attribute] = STATE(614), + [sym_subscript] = STATE(614), + [sym_call] = STATE(950), + [sym_list] = STATE(950), + [sym_set] = STATE(950), + [sym_tuple] = STATE(950), + [sym_dictionary] = STATE(950), + [sym_list_comprehension] = STATE(950), + [sym_dictionary_comprehension] = STATE(950), + [sym_set_comprehension] = STATE(950), + [sym_generator_expression] = STATE(950), + [sym_parenthesized_expression] = STATE(950), + [sym_conditional_expression] = STATE(1126), + [sym_concatenated_string] = STATE(950), + [sym_string] = STATE(779), + [sym_concatenated_template_string] = STATE(950), + [sym_template_string] = STATE(772), + [sym_await] = STATE(950), + [aux_sym_module_repeat1] = STATE(63), + [aux_sym_decorated_definition_repeat1] = STATE(1146), [sym_identifier] = ACTIONS(7), [anon_sym_lazy] = ACTIONS(9), [anon_sym_import] = ACTIONS(11), @@ -14719,75 +14761,75 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__template_string_start] = ACTIONS(85), }, [STATE(55)] = { - [sym__statement] = STATE(64), - [sym__simple_statements] = STATE(64), - [sym_import_statement] = STATE(1332), - [sym_future_import_statement] = STATE(1332), - [sym_import_from_statement] = STATE(1332), - [sym_print_statement] = STATE(1332), - [sym_assert_statement] = STATE(1332), - [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1156), - [sym_return_statement] = STATE(1332), - [sym_delete_statement] = STATE(1332), - [sym_raise_statement] = STATE(1332), - [sym_pass_statement] = STATE(1332), - [sym_break_statement] = STATE(1332), - [sym_continue_statement] = STATE(1332), - [sym_if_statement] = STATE(64), - [sym_for_statement] = STATE(64), - [sym_while_statement] = STATE(64), - [sym_try_statement] = STATE(64), - [sym_with_statement] = STATE(64), - [sym_match_statement] = STATE(64), - [sym_function_definition] = STATE(64), - [sym_list_splat] = STATE(1520), - [sym_dictionary_splat] = STATE(1520), - [sym_global_statement] = STATE(1332), - [sym_nonlocal_statement] = STATE(1332), - [sym_exec_statement] = STATE(1332), - [sym_type_alias_statement] = STATE(1332), - [sym_class_definition] = STATE(64), - [sym_decorated_definition] = STATE(64), - [sym_decorator] = STATE(1127), - [sym_block] = STATE(565), - [sym_expression_list] = STATE(1522), - [sym_pattern] = STATE(1017), - [sym_tuple_pattern] = STATE(1001), - [sym_list_pattern] = STATE(1001), - [sym_list_splat_pattern] = STATE(1001), - [sym_expression] = STATE(1176), - [sym_primary_expression] = STATE(765), - [sym_not_operator] = STATE(1156), - [sym_boolean_operator] = STATE(1156), - [sym_binary_operator] = STATE(920), - [sym_unary_operator] = STATE(920), - [sym_comparison_operator] = STATE(1156), - [sym_lambda] = STATE(1156), - [sym_assignment] = STATE(1522), - [sym_augmented_assignment] = STATE(1522), - [sym_pattern_list] = STATE(1026), - [sym_yield] = STATE(1522), - [sym_attribute] = STATE(582), - [sym_subscript] = STATE(582), - [sym_call] = STATE(920), - [sym_list] = STATE(920), - [sym_set] = STATE(920), - [sym_tuple] = STATE(920), - [sym_dictionary] = STATE(920), - [sym_list_comprehension] = STATE(920), - [sym_dictionary_comprehension] = STATE(920), - [sym_set_comprehension] = STATE(920), - [sym_generator_expression] = STATE(920), - [sym_parenthesized_expression] = STATE(920), - [sym_conditional_expression] = STATE(1156), - [sym_concatenated_string] = STATE(920), - [sym_string] = STATE(775), - [sym_concatenated_template_string] = STATE(920), - [sym_template_string] = STATE(769), - [sym_await] = STATE(920), - [aux_sym_module_repeat1] = STATE(64), - [aux_sym_decorated_definition_repeat1] = STATE(1127), + [sym__statement] = STATE(63), + [sym__simple_statements] = STATE(63), + [sym_import_statement] = STATE(1345), + [sym_future_import_statement] = STATE(1345), + [sym_import_from_statement] = STATE(1345), + [sym_print_statement] = STATE(1345), + [sym_assert_statement] = STATE(1345), + [sym_expression_statement] = STATE(1345), + [sym_named_expression] = STATE(1126), + [sym_return_statement] = STATE(1345), + [sym_delete_statement] = STATE(1345), + [sym_raise_statement] = STATE(1345), + [sym_pass_statement] = STATE(1345), + [sym_break_statement] = STATE(1345), + [sym_continue_statement] = STATE(1345), + [sym_if_statement] = STATE(63), + [sym_for_statement] = STATE(63), + [sym_while_statement] = STATE(63), + [sym_try_statement] = STATE(63), + [sym_with_statement] = STATE(63), + [sym_match_statement] = STATE(63), + [sym_function_definition] = STATE(63), + [sym_list_splat] = STATE(1590), + [sym_dictionary_splat] = STATE(1590), + [sym_global_statement] = STATE(1345), + [sym_nonlocal_statement] = STATE(1345), + [sym_exec_statement] = STATE(1345), + [sym_type_alias_statement] = STATE(1345), + [sym_class_definition] = STATE(63), + [sym_decorated_definition] = STATE(63), + [sym_decorator] = STATE(1146), + [sym_block] = STATE(603), + [sym_expression_list] = STATE(1545), + [sym_pattern] = STATE(1020), + [sym_tuple_pattern] = STATE(1005), + [sym_list_pattern] = STATE(1005), + [sym_list_splat_pattern] = STATE(1005), + [sym_expression] = STATE(1191), + [sym_primary_expression] = STATE(773), + [sym_not_operator] = STATE(1126), + [sym_boolean_operator] = STATE(1126), + [sym_binary_operator] = STATE(950), + [sym_unary_operator] = STATE(950), + [sym_comparison_operator] = STATE(1126), + [sym_lambda] = STATE(1126), + [sym_assignment] = STATE(1545), + [sym_augmented_assignment] = STATE(1545), + [sym_pattern_list] = STATE(1030), + [sym_yield] = STATE(1545), + [sym_attribute] = STATE(614), + [sym_subscript] = STATE(614), + [sym_call] = STATE(950), + [sym_list] = STATE(950), + [sym_set] = STATE(950), + [sym_tuple] = STATE(950), + [sym_dictionary] = STATE(950), + [sym_list_comprehension] = STATE(950), + [sym_dictionary_comprehension] = STATE(950), + [sym_set_comprehension] = STATE(950), + [sym_generator_expression] = STATE(950), + [sym_parenthesized_expression] = STATE(950), + [sym_conditional_expression] = STATE(1126), + [sym_concatenated_string] = STATE(950), + [sym_string] = STATE(779), + [sym_concatenated_template_string] = STATE(950), + [sym_template_string] = STATE(772), + [sym_await] = STATE(950), + [aux_sym_module_repeat1] = STATE(63), + [aux_sym_decorated_definition_repeat1] = STATE(1146), [sym_identifier] = ACTIONS(7), [anon_sym_lazy] = ACTIONS(9), [anon_sym_import] = ACTIONS(11), @@ -14838,75 +14880,75 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__template_string_start] = ACTIONS(85), }, [STATE(56)] = { - [sym__statement] = STATE(64), - [sym__simple_statements] = STATE(64), - [sym_import_statement] = STATE(1332), - [sym_future_import_statement] = STATE(1332), - [sym_import_from_statement] = STATE(1332), - [sym_print_statement] = STATE(1332), - [sym_assert_statement] = STATE(1332), - [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1156), - [sym_return_statement] = STATE(1332), - [sym_delete_statement] = STATE(1332), - [sym_raise_statement] = STATE(1332), - [sym_pass_statement] = STATE(1332), - [sym_break_statement] = STATE(1332), - [sym_continue_statement] = STATE(1332), - [sym_if_statement] = STATE(64), - [sym_for_statement] = STATE(64), - [sym_while_statement] = STATE(64), - [sym_try_statement] = STATE(64), - [sym_with_statement] = STATE(64), - [sym_match_statement] = STATE(64), - [sym_function_definition] = STATE(64), - [sym_list_splat] = STATE(1520), - [sym_dictionary_splat] = STATE(1520), - [sym_global_statement] = STATE(1332), - [sym_nonlocal_statement] = STATE(1332), - [sym_exec_statement] = STATE(1332), - [sym_type_alias_statement] = STATE(1332), - [sym_class_definition] = STATE(64), - [sym_decorated_definition] = STATE(64), - [sym_decorator] = STATE(1127), - [sym_block] = STATE(441), - [sym_expression_list] = STATE(1522), - [sym_pattern] = STATE(1017), - [sym_tuple_pattern] = STATE(1001), - [sym_list_pattern] = STATE(1001), - [sym_list_splat_pattern] = STATE(1001), - [sym_expression] = STATE(1176), - [sym_primary_expression] = STATE(765), - [sym_not_operator] = STATE(1156), - [sym_boolean_operator] = STATE(1156), - [sym_binary_operator] = STATE(920), - [sym_unary_operator] = STATE(920), - [sym_comparison_operator] = STATE(1156), - [sym_lambda] = STATE(1156), - [sym_assignment] = STATE(1522), - [sym_augmented_assignment] = STATE(1522), - [sym_pattern_list] = STATE(1026), - [sym_yield] = STATE(1522), - [sym_attribute] = STATE(582), - [sym_subscript] = STATE(582), - [sym_call] = STATE(920), - [sym_list] = STATE(920), - [sym_set] = STATE(920), - [sym_tuple] = STATE(920), - [sym_dictionary] = STATE(920), - [sym_list_comprehension] = STATE(920), - [sym_dictionary_comprehension] = STATE(920), - [sym_set_comprehension] = STATE(920), - [sym_generator_expression] = STATE(920), - [sym_parenthesized_expression] = STATE(920), - [sym_conditional_expression] = STATE(1156), - [sym_concatenated_string] = STATE(920), - [sym_string] = STATE(775), - [sym_concatenated_template_string] = STATE(920), - [sym_template_string] = STATE(769), - [sym_await] = STATE(920), - [aux_sym_module_repeat1] = STATE(64), - [aux_sym_decorated_definition_repeat1] = STATE(1127), + [sym__statement] = STATE(63), + [sym__simple_statements] = STATE(63), + [sym_import_statement] = STATE(1345), + [sym_future_import_statement] = STATE(1345), + [sym_import_from_statement] = STATE(1345), + [sym_print_statement] = STATE(1345), + [sym_assert_statement] = STATE(1345), + [sym_expression_statement] = STATE(1345), + [sym_named_expression] = STATE(1126), + [sym_return_statement] = STATE(1345), + [sym_delete_statement] = STATE(1345), + [sym_raise_statement] = STATE(1345), + [sym_pass_statement] = STATE(1345), + [sym_break_statement] = STATE(1345), + [sym_continue_statement] = STATE(1345), + [sym_if_statement] = STATE(63), + [sym_for_statement] = STATE(63), + [sym_while_statement] = STATE(63), + [sym_try_statement] = STATE(63), + [sym_with_statement] = STATE(63), + [sym_match_statement] = STATE(63), + [sym_function_definition] = STATE(63), + [sym_list_splat] = STATE(1590), + [sym_dictionary_splat] = STATE(1590), + [sym_global_statement] = STATE(1345), + [sym_nonlocal_statement] = STATE(1345), + [sym_exec_statement] = STATE(1345), + [sym_type_alias_statement] = STATE(1345), + [sym_class_definition] = STATE(63), + [sym_decorated_definition] = STATE(63), + [sym_decorator] = STATE(1146), + [sym_block] = STATE(464), + [sym_expression_list] = STATE(1545), + [sym_pattern] = STATE(1020), + [sym_tuple_pattern] = STATE(1005), + [sym_list_pattern] = STATE(1005), + [sym_list_splat_pattern] = STATE(1005), + [sym_expression] = STATE(1191), + [sym_primary_expression] = STATE(773), + [sym_not_operator] = STATE(1126), + [sym_boolean_operator] = STATE(1126), + [sym_binary_operator] = STATE(950), + [sym_unary_operator] = STATE(950), + [sym_comparison_operator] = STATE(1126), + [sym_lambda] = STATE(1126), + [sym_assignment] = STATE(1545), + [sym_augmented_assignment] = STATE(1545), + [sym_pattern_list] = STATE(1030), + [sym_yield] = STATE(1545), + [sym_attribute] = STATE(614), + [sym_subscript] = STATE(614), + [sym_call] = STATE(950), + [sym_list] = STATE(950), + [sym_set] = STATE(950), + [sym_tuple] = STATE(950), + [sym_dictionary] = STATE(950), + [sym_list_comprehension] = STATE(950), + [sym_dictionary_comprehension] = STATE(950), + [sym_set_comprehension] = STATE(950), + [sym_generator_expression] = STATE(950), + [sym_parenthesized_expression] = STATE(950), + [sym_conditional_expression] = STATE(1126), + [sym_concatenated_string] = STATE(950), + [sym_string] = STATE(779), + [sym_concatenated_template_string] = STATE(950), + [sym_template_string] = STATE(772), + [sym_await] = STATE(950), + [aux_sym_module_repeat1] = STATE(63), + [aux_sym_decorated_definition_repeat1] = STATE(1146), [sym_identifier] = ACTIONS(7), [anon_sym_lazy] = ACTIONS(9), [anon_sym_import] = ACTIONS(11), @@ -14957,75 +14999,75 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__template_string_start] = ACTIONS(85), }, [STATE(57)] = { - [sym__statement] = STATE(64), - [sym__simple_statements] = STATE(64), - [sym_import_statement] = STATE(1332), - [sym_future_import_statement] = STATE(1332), - [sym_import_from_statement] = STATE(1332), - [sym_print_statement] = STATE(1332), - [sym_assert_statement] = STATE(1332), - [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1156), - [sym_return_statement] = STATE(1332), - [sym_delete_statement] = STATE(1332), - [sym_raise_statement] = STATE(1332), - [sym_pass_statement] = STATE(1332), - [sym_break_statement] = STATE(1332), - [sym_continue_statement] = STATE(1332), - [sym_if_statement] = STATE(64), - [sym_for_statement] = STATE(64), - [sym_while_statement] = STATE(64), - [sym_try_statement] = STATE(64), - [sym_with_statement] = STATE(64), - [sym_match_statement] = STATE(64), - [sym_function_definition] = STATE(64), - [sym_list_splat] = STATE(1520), - [sym_dictionary_splat] = STATE(1520), - [sym_global_statement] = STATE(1332), - [sym_nonlocal_statement] = STATE(1332), - [sym_exec_statement] = STATE(1332), - [sym_type_alias_statement] = STATE(1332), - [sym_class_definition] = STATE(64), - [sym_decorated_definition] = STATE(64), - [sym_decorator] = STATE(1127), - [sym_block] = STATE(443), - [sym_expression_list] = STATE(1522), - [sym_pattern] = STATE(1017), - [sym_tuple_pattern] = STATE(1001), - [sym_list_pattern] = STATE(1001), - [sym_list_splat_pattern] = STATE(1001), - [sym_expression] = STATE(1176), - [sym_primary_expression] = STATE(765), - [sym_not_operator] = STATE(1156), - [sym_boolean_operator] = STATE(1156), - [sym_binary_operator] = STATE(920), - [sym_unary_operator] = STATE(920), - [sym_comparison_operator] = STATE(1156), - [sym_lambda] = STATE(1156), - [sym_assignment] = STATE(1522), - [sym_augmented_assignment] = STATE(1522), - [sym_pattern_list] = STATE(1026), - [sym_yield] = STATE(1522), - [sym_attribute] = STATE(582), - [sym_subscript] = STATE(582), - [sym_call] = STATE(920), - [sym_list] = STATE(920), - [sym_set] = STATE(920), - [sym_tuple] = STATE(920), - [sym_dictionary] = STATE(920), - [sym_list_comprehension] = STATE(920), - [sym_dictionary_comprehension] = STATE(920), - [sym_set_comprehension] = STATE(920), - [sym_generator_expression] = STATE(920), - [sym_parenthesized_expression] = STATE(920), - [sym_conditional_expression] = STATE(1156), - [sym_concatenated_string] = STATE(920), - [sym_string] = STATE(775), - [sym_concatenated_template_string] = STATE(920), - [sym_template_string] = STATE(769), - [sym_await] = STATE(920), - [aux_sym_module_repeat1] = STATE(64), - [aux_sym_decorated_definition_repeat1] = STATE(1127), + [sym__statement] = STATE(63), + [sym__simple_statements] = STATE(63), + [sym_import_statement] = STATE(1345), + [sym_future_import_statement] = STATE(1345), + [sym_import_from_statement] = STATE(1345), + [sym_print_statement] = STATE(1345), + [sym_assert_statement] = STATE(1345), + [sym_expression_statement] = STATE(1345), + [sym_named_expression] = STATE(1126), + [sym_return_statement] = STATE(1345), + [sym_delete_statement] = STATE(1345), + [sym_raise_statement] = STATE(1345), + [sym_pass_statement] = STATE(1345), + [sym_break_statement] = STATE(1345), + [sym_continue_statement] = STATE(1345), + [sym_if_statement] = STATE(63), + [sym_for_statement] = STATE(63), + [sym_while_statement] = STATE(63), + [sym_try_statement] = STATE(63), + [sym_with_statement] = STATE(63), + [sym_match_statement] = STATE(63), + [sym_function_definition] = STATE(63), + [sym_list_splat] = STATE(1590), + [sym_dictionary_splat] = STATE(1590), + [sym_global_statement] = STATE(1345), + [sym_nonlocal_statement] = STATE(1345), + [sym_exec_statement] = STATE(1345), + [sym_type_alias_statement] = STATE(1345), + [sym_class_definition] = STATE(63), + [sym_decorated_definition] = STATE(63), + [sym_decorator] = STATE(1146), + [sym_block] = STATE(439), + [sym_expression_list] = STATE(1545), + [sym_pattern] = STATE(1020), + [sym_tuple_pattern] = STATE(1005), + [sym_list_pattern] = STATE(1005), + [sym_list_splat_pattern] = STATE(1005), + [sym_expression] = STATE(1191), + [sym_primary_expression] = STATE(773), + [sym_not_operator] = STATE(1126), + [sym_boolean_operator] = STATE(1126), + [sym_binary_operator] = STATE(950), + [sym_unary_operator] = STATE(950), + [sym_comparison_operator] = STATE(1126), + [sym_lambda] = STATE(1126), + [sym_assignment] = STATE(1545), + [sym_augmented_assignment] = STATE(1545), + [sym_pattern_list] = STATE(1030), + [sym_yield] = STATE(1545), + [sym_attribute] = STATE(614), + [sym_subscript] = STATE(614), + [sym_call] = STATE(950), + [sym_list] = STATE(950), + [sym_set] = STATE(950), + [sym_tuple] = STATE(950), + [sym_dictionary] = STATE(950), + [sym_list_comprehension] = STATE(950), + [sym_dictionary_comprehension] = STATE(950), + [sym_set_comprehension] = STATE(950), + [sym_generator_expression] = STATE(950), + [sym_parenthesized_expression] = STATE(950), + [sym_conditional_expression] = STATE(1126), + [sym_concatenated_string] = STATE(950), + [sym_string] = STATE(779), + [sym_concatenated_template_string] = STATE(950), + [sym_template_string] = STATE(772), + [sym_await] = STATE(950), + [aux_sym_module_repeat1] = STATE(63), + [aux_sym_decorated_definition_repeat1] = STATE(1146), [sym_identifier] = ACTIONS(7), [anon_sym_lazy] = ACTIONS(9), [anon_sym_import] = ACTIONS(11), @@ -15078,19 +15120,19 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [STATE(58)] = { [sym__statement] = STATE(60), [sym__simple_statements] = STATE(60), - [sym_import_statement] = STATE(1332), - [sym_future_import_statement] = STATE(1332), - [sym_import_from_statement] = STATE(1332), - [sym_print_statement] = STATE(1332), - [sym_assert_statement] = STATE(1332), - [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1156), - [sym_return_statement] = STATE(1332), - [sym_delete_statement] = STATE(1332), - [sym_raise_statement] = STATE(1332), - [sym_pass_statement] = STATE(1332), - [sym_break_statement] = STATE(1332), - [sym_continue_statement] = STATE(1332), + [sym_import_statement] = STATE(1345), + [sym_future_import_statement] = STATE(1345), + [sym_import_from_statement] = STATE(1345), + [sym_print_statement] = STATE(1345), + [sym_assert_statement] = STATE(1345), + [sym_expression_statement] = STATE(1345), + [sym_named_expression] = STATE(1126), + [sym_return_statement] = STATE(1345), + [sym_delete_statement] = STATE(1345), + [sym_raise_statement] = STATE(1345), + [sym_pass_statement] = STATE(1345), + [sym_break_statement] = STATE(1345), + [sym_continue_statement] = STATE(1345), [sym_if_statement] = STATE(60), [sym_for_statement] = STATE(60), [sym_while_statement] = STATE(60), @@ -15098,53 +15140,53 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_with_statement] = STATE(60), [sym_match_statement] = STATE(60), [sym_function_definition] = STATE(60), - [sym_list_splat] = STATE(1520), - [sym_dictionary_splat] = STATE(1520), - [sym_global_statement] = STATE(1332), - [sym_nonlocal_statement] = STATE(1332), - [sym_exec_statement] = STATE(1332), - [sym_type_alias_statement] = STATE(1332), + [sym_list_splat] = STATE(1590), + [sym_dictionary_splat] = STATE(1590), + [sym_global_statement] = STATE(1345), + [sym_nonlocal_statement] = STATE(1345), + [sym_exec_statement] = STATE(1345), + [sym_type_alias_statement] = STATE(1345), [sym_class_definition] = STATE(60), [sym_decorated_definition] = STATE(60), - [sym_decorator] = STATE(1127), - [sym_block] = STATE(1175), - [sym_expression_list] = STATE(1522), - [sym_pattern] = STATE(1017), - [sym_tuple_pattern] = STATE(1001), - [sym_list_pattern] = STATE(1001), - [sym_list_splat_pattern] = STATE(1001), - [sym_expression] = STATE(1176), - [sym_primary_expression] = STATE(765), - [sym_not_operator] = STATE(1156), - [sym_boolean_operator] = STATE(1156), - [sym_binary_operator] = STATE(920), - [sym_unary_operator] = STATE(920), - [sym_comparison_operator] = STATE(1156), - [sym_lambda] = STATE(1156), - [sym_assignment] = STATE(1522), - [sym_augmented_assignment] = STATE(1522), - [sym_pattern_list] = STATE(1026), - [sym_yield] = STATE(1522), - [sym_attribute] = STATE(582), - [sym_subscript] = STATE(582), - [sym_call] = STATE(920), - [sym_list] = STATE(920), - [sym_set] = STATE(920), - [sym_tuple] = STATE(920), - [sym_dictionary] = STATE(920), - [sym_list_comprehension] = STATE(920), - [sym_dictionary_comprehension] = STATE(920), - [sym_set_comprehension] = STATE(920), - [sym_generator_expression] = STATE(920), - [sym_parenthesized_expression] = STATE(920), - [sym_conditional_expression] = STATE(1156), - [sym_concatenated_string] = STATE(920), - [sym_string] = STATE(775), - [sym_concatenated_template_string] = STATE(920), - [sym_template_string] = STATE(769), - [sym_await] = STATE(920), + [sym_decorator] = STATE(1146), + [sym_block] = STATE(1215), + [sym_expression_list] = STATE(1545), + [sym_pattern] = STATE(1020), + [sym_tuple_pattern] = STATE(1005), + [sym_list_pattern] = STATE(1005), + [sym_list_splat_pattern] = STATE(1005), + [sym_expression] = STATE(1191), + [sym_primary_expression] = STATE(773), + [sym_not_operator] = STATE(1126), + [sym_boolean_operator] = STATE(1126), + [sym_binary_operator] = STATE(950), + [sym_unary_operator] = STATE(950), + [sym_comparison_operator] = STATE(1126), + [sym_lambda] = STATE(1126), + [sym_assignment] = STATE(1545), + [sym_augmented_assignment] = STATE(1545), + [sym_pattern_list] = STATE(1030), + [sym_yield] = STATE(1545), + [sym_attribute] = STATE(614), + [sym_subscript] = STATE(614), + [sym_call] = STATE(950), + [sym_list] = STATE(950), + [sym_set] = STATE(950), + [sym_tuple] = STATE(950), + [sym_dictionary] = STATE(950), + [sym_list_comprehension] = STATE(950), + [sym_dictionary_comprehension] = STATE(950), + [sym_set_comprehension] = STATE(950), + [sym_generator_expression] = STATE(950), + [sym_parenthesized_expression] = STATE(950), + [sym_conditional_expression] = STATE(1126), + [sym_concatenated_string] = STATE(950), + [sym_string] = STATE(779), + [sym_concatenated_template_string] = STATE(950), + [sym_template_string] = STATE(772), + [sym_await] = STATE(950), [aux_sym_module_repeat1] = STATE(60), - [aux_sym_decorated_definition_repeat1] = STATE(1127), + [aux_sym_decorated_definition_repeat1] = STATE(1146), [sym_identifier] = ACTIONS(7), [anon_sym_lazy] = ACTIONS(9), [anon_sym_import] = ACTIONS(11), @@ -15195,140 +15237,21 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__template_string_start] = ACTIONS(85), }, [STATE(59)] = { - [sym__statement] = STATE(64), - [sym__simple_statements] = STATE(64), - [sym_import_statement] = STATE(1332), - [sym_future_import_statement] = STATE(1332), - [sym_import_from_statement] = STATE(1332), - [sym_print_statement] = STATE(1332), - [sym_assert_statement] = STATE(1332), - [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1156), - [sym_return_statement] = STATE(1332), - [sym_delete_statement] = STATE(1332), - [sym_raise_statement] = STATE(1332), - [sym_pass_statement] = STATE(1332), - [sym_break_statement] = STATE(1332), - [sym_continue_statement] = STATE(1332), - [sym_if_statement] = STATE(64), - [sym_for_statement] = STATE(64), - [sym_while_statement] = STATE(64), - [sym_try_statement] = STATE(64), - [sym_with_statement] = STATE(64), - [sym_match_statement] = STATE(64), - [sym_function_definition] = STATE(64), - [sym_list_splat] = STATE(1520), - [sym_dictionary_splat] = STATE(1520), - [sym_global_statement] = STATE(1332), - [sym_nonlocal_statement] = STATE(1332), - [sym_exec_statement] = STATE(1332), - [sym_type_alias_statement] = STATE(1332), - [sym_class_definition] = STATE(64), - [sym_decorated_definition] = STATE(64), - [sym_decorator] = STATE(1127), - [sym_block] = STATE(522), - [sym_expression_list] = STATE(1522), - [sym_pattern] = STATE(1017), - [sym_tuple_pattern] = STATE(1001), - [sym_list_pattern] = STATE(1001), - [sym_list_splat_pattern] = STATE(1001), - [sym_expression] = STATE(1176), - [sym_primary_expression] = STATE(765), - [sym_not_operator] = STATE(1156), - [sym_boolean_operator] = STATE(1156), - [sym_binary_operator] = STATE(920), - [sym_unary_operator] = STATE(920), - [sym_comparison_operator] = STATE(1156), - [sym_lambda] = STATE(1156), - [sym_assignment] = STATE(1522), - [sym_augmented_assignment] = STATE(1522), - [sym_pattern_list] = STATE(1026), - [sym_yield] = STATE(1522), - [sym_attribute] = STATE(582), - [sym_subscript] = STATE(582), - [sym_call] = STATE(920), - [sym_list] = STATE(920), - [sym_set] = STATE(920), - [sym_tuple] = STATE(920), - [sym_dictionary] = STATE(920), - [sym_list_comprehension] = STATE(920), - [sym_dictionary_comprehension] = STATE(920), - [sym_set_comprehension] = STATE(920), - [sym_generator_expression] = STATE(920), - [sym_parenthesized_expression] = STATE(920), - [sym_conditional_expression] = STATE(1156), - [sym_concatenated_string] = STATE(920), - [sym_string] = STATE(775), - [sym_concatenated_template_string] = STATE(920), - [sym_template_string] = STATE(769), - [sym_await] = STATE(920), - [aux_sym_module_repeat1] = STATE(64), - [aux_sym_decorated_definition_repeat1] = STATE(1127), - [sym_identifier] = ACTIONS(7), - [anon_sym_lazy] = ACTIONS(9), - [anon_sym_import] = ACTIONS(11), - [anon_sym_from] = ACTIONS(13), - [anon_sym_LPAREN] = ACTIONS(15), - [anon_sym_STAR] = ACTIONS(17), - [anon_sym_print] = ACTIONS(19), - [anon_sym_assert] = ACTIONS(21), - [anon_sym_return] = ACTIONS(23), - [anon_sym_del] = ACTIONS(25), - [anon_sym_raise] = ACTIONS(27), - [anon_sym_pass] = ACTIONS(29), - [anon_sym_break] = ACTIONS(31), - [anon_sym_continue] = ACTIONS(33), - [anon_sym_if] = ACTIONS(87), - [anon_sym_async] = ACTIONS(89), - [anon_sym_for] = ACTIONS(91), - [anon_sym_while] = ACTIONS(93), - [anon_sym_try] = ACTIONS(95), - [anon_sym_with] = ACTIONS(97), - [anon_sym_match] = ACTIONS(99), - [anon_sym_DASH] = ACTIONS(49), - [anon_sym_PLUS] = ACTIONS(49), - [anon_sym_LBRACK] = ACTIONS(51), - [anon_sym_LBRACE] = ACTIONS(53), - [anon_sym_STAR_STAR] = ACTIONS(55), - [anon_sym_def] = ACTIONS(101), - [anon_sym_global] = ACTIONS(59), - [anon_sym_nonlocal] = ACTIONS(61), - [anon_sym_exec] = ACTIONS(63), - [anon_sym_type] = ACTIONS(65), - [anon_sym_class] = ACTIONS(103), - [anon_sym_AT] = ACTIONS(69), - [anon_sym_not] = ACTIONS(71), - [anon_sym_TILDE] = ACTIONS(49), - [anon_sym_lambda] = ACTIONS(73), - [anon_sym_yield] = ACTIONS(75), - [sym_ellipsis] = ACTIONS(77), - [sym_integer] = ACTIONS(79), - [sym_float] = ACTIONS(77), - [anon_sym_await] = ACTIONS(81), - [sym_true] = ACTIONS(79), - [sym_false] = ACTIONS(79), - [sym_none] = ACTIONS(79), - [sym_comment] = ACTIONS(3), - [sym__dedent] = ACTIONS(105), - [sym__string_start] = ACTIONS(83), - [sym__template_string_start] = ACTIONS(85), - }, - [STATE(60)] = { [sym__statement] = STATE(63), [sym__simple_statements] = STATE(63), - [sym_import_statement] = STATE(1332), - [sym_future_import_statement] = STATE(1332), - [sym_import_from_statement] = STATE(1332), - [sym_print_statement] = STATE(1332), - [sym_assert_statement] = STATE(1332), - [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1156), - [sym_return_statement] = STATE(1332), - [sym_delete_statement] = STATE(1332), - [sym_raise_statement] = STATE(1332), - [sym_pass_statement] = STATE(1332), - [sym_break_statement] = STATE(1332), - [sym_continue_statement] = STATE(1332), + [sym_import_statement] = STATE(1345), + [sym_future_import_statement] = STATE(1345), + [sym_import_from_statement] = STATE(1345), + [sym_print_statement] = STATE(1345), + [sym_assert_statement] = STATE(1345), + [sym_expression_statement] = STATE(1345), + [sym_named_expression] = STATE(1126), + [sym_return_statement] = STATE(1345), + [sym_delete_statement] = STATE(1345), + [sym_raise_statement] = STATE(1345), + [sym_pass_statement] = STATE(1345), + [sym_break_statement] = STATE(1345), + [sym_continue_statement] = STATE(1345), [sym_if_statement] = STATE(63), [sym_for_statement] = STATE(63), [sym_while_statement] = STATE(63), @@ -15336,52 +15259,53 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_with_statement] = STATE(63), [sym_match_statement] = STATE(63), [sym_function_definition] = STATE(63), - [sym_list_splat] = STATE(1520), - [sym_dictionary_splat] = STATE(1520), - [sym_global_statement] = STATE(1332), - [sym_nonlocal_statement] = STATE(1332), - [sym_exec_statement] = STATE(1332), - [sym_type_alias_statement] = STATE(1332), + [sym_list_splat] = STATE(1590), + [sym_dictionary_splat] = STATE(1590), + [sym_global_statement] = STATE(1345), + [sym_nonlocal_statement] = STATE(1345), + [sym_exec_statement] = STATE(1345), + [sym_type_alias_statement] = STATE(1345), [sym_class_definition] = STATE(63), [sym_decorated_definition] = STATE(63), - [sym_decorator] = STATE(1127), - [sym_expression_list] = STATE(1522), - [sym_pattern] = STATE(1017), - [sym_tuple_pattern] = STATE(1001), - [sym_list_pattern] = STATE(1001), - [sym_list_splat_pattern] = STATE(1001), - [sym_expression] = STATE(1176), - [sym_primary_expression] = STATE(765), - [sym_not_operator] = STATE(1156), - [sym_boolean_operator] = STATE(1156), - [sym_binary_operator] = STATE(920), - [sym_unary_operator] = STATE(920), - [sym_comparison_operator] = STATE(1156), - [sym_lambda] = STATE(1156), - [sym_assignment] = STATE(1522), - [sym_augmented_assignment] = STATE(1522), - [sym_pattern_list] = STATE(1026), - [sym_yield] = STATE(1522), - [sym_attribute] = STATE(582), - [sym_subscript] = STATE(582), - [sym_call] = STATE(920), - [sym_list] = STATE(920), - [sym_set] = STATE(920), - [sym_tuple] = STATE(920), - [sym_dictionary] = STATE(920), - [sym_list_comprehension] = STATE(920), - [sym_dictionary_comprehension] = STATE(920), - [sym_set_comprehension] = STATE(920), - [sym_generator_expression] = STATE(920), - [sym_parenthesized_expression] = STATE(920), - [sym_conditional_expression] = STATE(1156), - [sym_concatenated_string] = STATE(920), - [sym_string] = STATE(775), - [sym_concatenated_template_string] = STATE(920), - [sym_template_string] = STATE(769), - [sym_await] = STATE(920), + [sym_decorator] = STATE(1146), + [sym_block] = STATE(560), + [sym_expression_list] = STATE(1545), + [sym_pattern] = STATE(1020), + [sym_tuple_pattern] = STATE(1005), + [sym_list_pattern] = STATE(1005), + [sym_list_splat_pattern] = STATE(1005), + [sym_expression] = STATE(1191), + [sym_primary_expression] = STATE(773), + [sym_not_operator] = STATE(1126), + [sym_boolean_operator] = STATE(1126), + [sym_binary_operator] = STATE(950), + [sym_unary_operator] = STATE(950), + [sym_comparison_operator] = STATE(1126), + [sym_lambda] = STATE(1126), + [sym_assignment] = STATE(1545), + [sym_augmented_assignment] = STATE(1545), + [sym_pattern_list] = STATE(1030), + [sym_yield] = STATE(1545), + [sym_attribute] = STATE(614), + [sym_subscript] = STATE(614), + [sym_call] = STATE(950), + [sym_list] = STATE(950), + [sym_set] = STATE(950), + [sym_tuple] = STATE(950), + [sym_dictionary] = STATE(950), + [sym_list_comprehension] = STATE(950), + [sym_dictionary_comprehension] = STATE(950), + [sym_set_comprehension] = STATE(950), + [sym_generator_expression] = STATE(950), + [sym_parenthesized_expression] = STATE(950), + [sym_conditional_expression] = STATE(1126), + [sym_concatenated_string] = STATE(950), + [sym_string] = STATE(779), + [sym_concatenated_template_string] = STATE(950), + [sym_template_string] = STATE(772), + [sym_await] = STATE(950), [aux_sym_module_repeat1] = STATE(63), - [aux_sym_decorated_definition_repeat1] = STATE(1127), + [aux_sym_decorated_definition_repeat1] = STATE(1146), [sym_identifier] = ACTIONS(7), [anon_sym_lazy] = ACTIONS(9), [anon_sym_import] = ACTIONS(11), @@ -15427,79 +15351,79 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_false] = ACTIONS(79), [sym_none] = ACTIONS(79), [sym_comment] = ACTIONS(3), - [sym__dedent] = ACTIONS(111), + [sym__dedent] = ACTIONS(105), [sym__string_start] = ACTIONS(83), [sym__template_string_start] = ACTIONS(85), }, - [STATE(61)] = { - [sym__statement] = STATE(63), - [sym__simple_statements] = STATE(63), - [sym_import_statement] = STATE(1332), - [sym_future_import_statement] = STATE(1332), - [sym_import_from_statement] = STATE(1332), - [sym_print_statement] = STATE(1332), - [sym_assert_statement] = STATE(1332), - [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1156), - [sym_return_statement] = STATE(1332), - [sym_delete_statement] = STATE(1332), - [sym_raise_statement] = STATE(1332), - [sym_pass_statement] = STATE(1332), - [sym_break_statement] = STATE(1332), - [sym_continue_statement] = STATE(1332), - [sym_if_statement] = STATE(63), - [sym_for_statement] = STATE(63), - [sym_while_statement] = STATE(63), - [sym_try_statement] = STATE(63), - [sym_with_statement] = STATE(63), - [sym_match_statement] = STATE(63), - [sym_function_definition] = STATE(63), - [sym_list_splat] = STATE(1520), - [sym_dictionary_splat] = STATE(1520), - [sym_global_statement] = STATE(1332), - [sym_nonlocal_statement] = STATE(1332), - [sym_exec_statement] = STATE(1332), - [sym_type_alias_statement] = STATE(1332), - [sym_class_definition] = STATE(63), - [sym_decorated_definition] = STATE(63), - [sym_decorator] = STATE(1127), - [sym_expression_list] = STATE(1522), - [sym_pattern] = STATE(1017), - [sym_tuple_pattern] = STATE(1001), - [sym_list_pattern] = STATE(1001), - [sym_list_splat_pattern] = STATE(1001), - [sym_expression] = STATE(1176), - [sym_primary_expression] = STATE(765), - [sym_not_operator] = STATE(1156), - [sym_boolean_operator] = STATE(1156), - [sym_binary_operator] = STATE(920), - [sym_unary_operator] = STATE(920), - [sym_comparison_operator] = STATE(1156), - [sym_lambda] = STATE(1156), - [sym_assignment] = STATE(1522), - [sym_augmented_assignment] = STATE(1522), - [sym_pattern_list] = STATE(1026), - [sym_yield] = STATE(1522), - [sym_attribute] = STATE(582), - [sym_subscript] = STATE(582), - [sym_call] = STATE(920), - [sym_list] = STATE(920), - [sym_set] = STATE(920), - [sym_tuple] = STATE(920), - [sym_dictionary] = STATE(920), - [sym_list_comprehension] = STATE(920), - [sym_dictionary_comprehension] = STATE(920), - [sym_set_comprehension] = STATE(920), - [sym_generator_expression] = STATE(920), - [sym_parenthesized_expression] = STATE(920), - [sym_conditional_expression] = STATE(1156), - [sym_concatenated_string] = STATE(920), - [sym_string] = STATE(775), - [sym_concatenated_template_string] = STATE(920), - [sym_template_string] = STATE(769), - [sym_await] = STATE(920), - [aux_sym_module_repeat1] = STATE(63), - [aux_sym_decorated_definition_repeat1] = STATE(1127), + [STATE(60)] = { + [sym__statement] = STATE(62), + [sym__simple_statements] = STATE(62), + [sym_import_statement] = STATE(1345), + [sym_future_import_statement] = STATE(1345), + [sym_import_from_statement] = STATE(1345), + [sym_print_statement] = STATE(1345), + [sym_assert_statement] = STATE(1345), + [sym_expression_statement] = STATE(1345), + [sym_named_expression] = STATE(1126), + [sym_return_statement] = STATE(1345), + [sym_delete_statement] = STATE(1345), + [sym_raise_statement] = STATE(1345), + [sym_pass_statement] = STATE(1345), + [sym_break_statement] = STATE(1345), + [sym_continue_statement] = STATE(1345), + [sym_if_statement] = STATE(62), + [sym_for_statement] = STATE(62), + [sym_while_statement] = STATE(62), + [sym_try_statement] = STATE(62), + [sym_with_statement] = STATE(62), + [sym_match_statement] = STATE(62), + [sym_function_definition] = STATE(62), + [sym_list_splat] = STATE(1590), + [sym_dictionary_splat] = STATE(1590), + [sym_global_statement] = STATE(1345), + [sym_nonlocal_statement] = STATE(1345), + [sym_exec_statement] = STATE(1345), + [sym_type_alias_statement] = STATE(1345), + [sym_class_definition] = STATE(62), + [sym_decorated_definition] = STATE(62), + [sym_decorator] = STATE(1146), + [sym_expression_list] = STATE(1545), + [sym_pattern] = STATE(1020), + [sym_tuple_pattern] = STATE(1005), + [sym_list_pattern] = STATE(1005), + [sym_list_splat_pattern] = STATE(1005), + [sym_expression] = STATE(1191), + [sym_primary_expression] = STATE(773), + [sym_not_operator] = STATE(1126), + [sym_boolean_operator] = STATE(1126), + [sym_binary_operator] = STATE(950), + [sym_unary_operator] = STATE(950), + [sym_comparison_operator] = STATE(1126), + [sym_lambda] = STATE(1126), + [sym_assignment] = STATE(1545), + [sym_augmented_assignment] = STATE(1545), + [sym_pattern_list] = STATE(1030), + [sym_yield] = STATE(1545), + [sym_attribute] = STATE(614), + [sym_subscript] = STATE(614), + [sym_call] = STATE(950), + [sym_list] = STATE(950), + [sym_set] = STATE(950), + [sym_tuple] = STATE(950), + [sym_dictionary] = STATE(950), + [sym_list_comprehension] = STATE(950), + [sym_dictionary_comprehension] = STATE(950), + [sym_set_comprehension] = STATE(950), + [sym_generator_expression] = STATE(950), + [sym_parenthesized_expression] = STATE(950), + [sym_conditional_expression] = STATE(1126), + [sym_concatenated_string] = STATE(950), + [sym_string] = STATE(779), + [sym_concatenated_template_string] = STATE(950), + [sym_template_string] = STATE(772), + [sym_await] = STATE(950), + [aux_sym_module_repeat1] = STATE(62), + [aux_sym_decorated_definition_repeat1] = STATE(1146), [sym_identifier] = ACTIONS(7), [anon_sym_lazy] = ACTIONS(9), [anon_sym_import] = ACTIONS(11), @@ -15545,80 +15469,79 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_false] = ACTIONS(79), [sym_none] = ACTIONS(79), [sym_comment] = ACTIONS(3), - [sym__dedent] = ACTIONS(113), + [sym__dedent] = ACTIONS(111), [sym__string_start] = ACTIONS(83), [sym__template_string_start] = ACTIONS(85), }, - [STATE(62)] = { - [sym__statement] = STATE(65), - [sym__simple_statements] = STATE(65), - [sym_import_statement] = STATE(1301), - [sym_future_import_statement] = STATE(1301), - [sym_import_from_statement] = STATE(1301), - [sym_print_statement] = STATE(1301), - [sym_assert_statement] = STATE(1301), - [sym_expression_statement] = STATE(1301), - [sym_named_expression] = STATE(1156), - [sym_return_statement] = STATE(1301), - [sym_delete_statement] = STATE(1301), - [sym_raise_statement] = STATE(1301), - [sym_pass_statement] = STATE(1301), - [sym_break_statement] = STATE(1301), - [sym_continue_statement] = STATE(1301), - [sym_if_statement] = STATE(65), - [sym_for_statement] = STATE(65), - [sym_while_statement] = STATE(65), - [sym_try_statement] = STATE(65), - [sym_with_statement] = STATE(65), - [sym_match_statement] = STATE(65), - [sym_function_definition] = STATE(65), - [sym_list_splat] = STATE(1520), - [sym_dictionary_splat] = STATE(1520), - [sym_global_statement] = STATE(1301), - [sym_nonlocal_statement] = STATE(1301), - [sym_exec_statement] = STATE(1301), - [sym_type_alias_statement] = STATE(1301), - [sym_class_definition] = STATE(65), - [sym_decorated_definition] = STATE(65), - [sym_decorator] = STATE(1128), - [sym_expression_list] = STATE(1522), - [sym_pattern] = STATE(1017), - [sym_tuple_pattern] = STATE(1001), - [sym_list_pattern] = STATE(1001), - [sym_list_splat_pattern] = STATE(1001), - [sym_expression] = STATE(1176), - [sym_primary_expression] = STATE(765), - [sym_not_operator] = STATE(1156), - [sym_boolean_operator] = STATE(1156), - [sym_binary_operator] = STATE(920), - [sym_unary_operator] = STATE(920), - [sym_comparison_operator] = STATE(1156), - [sym_lambda] = STATE(1156), - [sym_assignment] = STATE(1522), - [sym_augmented_assignment] = STATE(1522), - [sym_pattern_list] = STATE(1026), - [sym_yield] = STATE(1522), - [sym_attribute] = STATE(582), - [sym_subscript] = STATE(582), - [sym_call] = STATE(920), - [sym_list] = STATE(920), - [sym_set] = STATE(920), - [sym_tuple] = STATE(920), - [sym_dictionary] = STATE(920), - [sym_list_comprehension] = STATE(920), - [sym_dictionary_comprehension] = STATE(920), - [sym_set_comprehension] = STATE(920), - [sym_generator_expression] = STATE(920), - [sym_parenthesized_expression] = STATE(920), - [sym_conditional_expression] = STATE(1156), - [sym_concatenated_string] = STATE(920), - [sym_string] = STATE(775), - [sym_concatenated_template_string] = STATE(920), - [sym_template_string] = STATE(769), - [sym_await] = STATE(920), - [aux_sym_module_repeat1] = STATE(65), - [aux_sym_decorated_definition_repeat1] = STATE(1128), - [ts_builtin_sym_end] = ACTIONS(115), + [STATE(61)] = { + [sym__statement] = STATE(62), + [sym__simple_statements] = STATE(62), + [sym_import_statement] = STATE(1345), + [sym_future_import_statement] = STATE(1345), + [sym_import_from_statement] = STATE(1345), + [sym_print_statement] = STATE(1345), + [sym_assert_statement] = STATE(1345), + [sym_expression_statement] = STATE(1345), + [sym_named_expression] = STATE(1126), + [sym_return_statement] = STATE(1345), + [sym_delete_statement] = STATE(1345), + [sym_raise_statement] = STATE(1345), + [sym_pass_statement] = STATE(1345), + [sym_break_statement] = STATE(1345), + [sym_continue_statement] = STATE(1345), + [sym_if_statement] = STATE(62), + [sym_for_statement] = STATE(62), + [sym_while_statement] = STATE(62), + [sym_try_statement] = STATE(62), + [sym_with_statement] = STATE(62), + [sym_match_statement] = STATE(62), + [sym_function_definition] = STATE(62), + [sym_list_splat] = STATE(1590), + [sym_dictionary_splat] = STATE(1590), + [sym_global_statement] = STATE(1345), + [sym_nonlocal_statement] = STATE(1345), + [sym_exec_statement] = STATE(1345), + [sym_type_alias_statement] = STATE(1345), + [sym_class_definition] = STATE(62), + [sym_decorated_definition] = STATE(62), + [sym_decorator] = STATE(1146), + [sym_expression_list] = STATE(1545), + [sym_pattern] = STATE(1020), + [sym_tuple_pattern] = STATE(1005), + [sym_list_pattern] = STATE(1005), + [sym_list_splat_pattern] = STATE(1005), + [sym_expression] = STATE(1191), + [sym_primary_expression] = STATE(773), + [sym_not_operator] = STATE(1126), + [sym_boolean_operator] = STATE(1126), + [sym_binary_operator] = STATE(950), + [sym_unary_operator] = STATE(950), + [sym_comparison_operator] = STATE(1126), + [sym_lambda] = STATE(1126), + [sym_assignment] = STATE(1545), + [sym_augmented_assignment] = STATE(1545), + [sym_pattern_list] = STATE(1030), + [sym_yield] = STATE(1545), + [sym_attribute] = STATE(614), + [sym_subscript] = STATE(614), + [sym_call] = STATE(950), + [sym_list] = STATE(950), + [sym_set] = STATE(950), + [sym_tuple] = STATE(950), + [sym_dictionary] = STATE(950), + [sym_list_comprehension] = STATE(950), + [sym_dictionary_comprehension] = STATE(950), + [sym_set_comprehension] = STATE(950), + [sym_generator_expression] = STATE(950), + [sym_parenthesized_expression] = STATE(950), + [sym_conditional_expression] = STATE(1126), + [sym_concatenated_string] = STATE(950), + [sym_string] = STATE(779), + [sym_concatenated_template_string] = STATE(950), + [sym_template_string] = STATE(772), + [sym_await] = STATE(950), + [aux_sym_module_repeat1] = STATE(62), + [aux_sym_decorated_definition_repeat1] = STATE(1146), [sym_identifier] = ACTIONS(7), [anon_sym_lazy] = ACTIONS(9), [anon_sym_import] = ACTIONS(11), @@ -15633,24 +15556,24 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_pass] = ACTIONS(29), [anon_sym_break] = ACTIONS(31), [anon_sym_continue] = ACTIONS(33), - [anon_sym_if] = ACTIONS(35), - [anon_sym_async] = ACTIONS(37), - [anon_sym_for] = ACTIONS(39), - [anon_sym_while] = ACTIONS(41), - [anon_sym_try] = ACTIONS(43), - [anon_sym_with] = ACTIONS(45), - [anon_sym_match] = ACTIONS(47), + [anon_sym_if] = ACTIONS(87), + [anon_sym_async] = ACTIONS(89), + [anon_sym_for] = ACTIONS(91), + [anon_sym_while] = ACTIONS(93), + [anon_sym_try] = ACTIONS(95), + [anon_sym_with] = ACTIONS(97), + [anon_sym_match] = ACTIONS(99), [anon_sym_DASH] = ACTIONS(49), [anon_sym_PLUS] = ACTIONS(49), [anon_sym_LBRACK] = ACTIONS(51), [anon_sym_LBRACE] = ACTIONS(53), [anon_sym_STAR_STAR] = ACTIONS(55), - [anon_sym_def] = ACTIONS(57), + [anon_sym_def] = ACTIONS(101), [anon_sym_global] = ACTIONS(59), [anon_sym_nonlocal] = ACTIONS(61), [anon_sym_exec] = ACTIONS(63), [anon_sym_type] = ACTIONS(65), - [anon_sym_class] = ACTIONS(67), + [anon_sym_class] = ACTIONS(103), [anon_sym_AT] = ACTIONS(69), [anon_sym_not] = ACTIONS(71), [anon_sym_TILDE] = ACTIONS(49), @@ -15664,196 +15587,197 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_false] = ACTIONS(79), [sym_none] = ACTIONS(79), [sym_comment] = ACTIONS(3), + [sym__dedent] = ACTIONS(113), [sym__string_start] = ACTIONS(83), [sym__template_string_start] = ACTIONS(85), }, - [STATE(63)] = { - [sym__statement] = STATE(63), - [sym__simple_statements] = STATE(63), - [sym_import_statement] = STATE(1332), - [sym_future_import_statement] = STATE(1332), - [sym_import_from_statement] = STATE(1332), - [sym_print_statement] = STATE(1332), - [sym_assert_statement] = STATE(1332), - [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1156), - [sym_return_statement] = STATE(1332), - [sym_delete_statement] = STATE(1332), - [sym_raise_statement] = STATE(1332), - [sym_pass_statement] = STATE(1332), - [sym_break_statement] = STATE(1332), - [sym_continue_statement] = STATE(1332), - [sym_if_statement] = STATE(63), - [sym_for_statement] = STATE(63), - [sym_while_statement] = STATE(63), - [sym_try_statement] = STATE(63), - [sym_with_statement] = STATE(63), - [sym_match_statement] = STATE(63), - [sym_function_definition] = STATE(63), - [sym_list_splat] = STATE(1520), - [sym_dictionary_splat] = STATE(1520), - [sym_global_statement] = STATE(1332), - [sym_nonlocal_statement] = STATE(1332), - [sym_exec_statement] = STATE(1332), - [sym_type_alias_statement] = STATE(1332), - [sym_class_definition] = STATE(63), - [sym_decorated_definition] = STATE(63), - [sym_decorator] = STATE(1127), - [sym_expression_list] = STATE(1522), - [sym_pattern] = STATE(1017), - [sym_tuple_pattern] = STATE(1001), - [sym_list_pattern] = STATE(1001), - [sym_list_splat_pattern] = STATE(1001), - [sym_expression] = STATE(1176), - [sym_primary_expression] = STATE(765), - [sym_not_operator] = STATE(1156), - [sym_boolean_operator] = STATE(1156), - [sym_binary_operator] = STATE(920), - [sym_unary_operator] = STATE(920), - [sym_comparison_operator] = STATE(1156), - [sym_lambda] = STATE(1156), - [sym_assignment] = STATE(1522), - [sym_augmented_assignment] = STATE(1522), - [sym_pattern_list] = STATE(1026), - [sym_yield] = STATE(1522), - [sym_attribute] = STATE(582), - [sym_subscript] = STATE(582), - [sym_call] = STATE(920), - [sym_list] = STATE(920), - [sym_set] = STATE(920), - [sym_tuple] = STATE(920), - [sym_dictionary] = STATE(920), - [sym_list_comprehension] = STATE(920), - [sym_dictionary_comprehension] = STATE(920), - [sym_set_comprehension] = STATE(920), - [sym_generator_expression] = STATE(920), - [sym_parenthesized_expression] = STATE(920), - [sym_conditional_expression] = STATE(1156), - [sym_concatenated_string] = STATE(920), - [sym_string] = STATE(775), - [sym_concatenated_template_string] = STATE(920), - [sym_template_string] = STATE(769), - [sym_await] = STATE(920), - [aux_sym_module_repeat1] = STATE(63), - [aux_sym_decorated_definition_repeat1] = STATE(1127), - [sym_identifier] = ACTIONS(117), - [anon_sym_lazy] = ACTIONS(120), - [anon_sym_import] = ACTIONS(123), - [anon_sym_from] = ACTIONS(126), - [anon_sym_LPAREN] = ACTIONS(129), - [anon_sym_STAR] = ACTIONS(132), - [anon_sym_print] = ACTIONS(135), - [anon_sym_assert] = ACTIONS(138), - [anon_sym_return] = ACTIONS(141), - [anon_sym_del] = ACTIONS(144), - [anon_sym_raise] = ACTIONS(147), - [anon_sym_pass] = ACTIONS(150), - [anon_sym_break] = ACTIONS(153), - [anon_sym_continue] = ACTIONS(156), - [anon_sym_if] = ACTIONS(159), - [anon_sym_async] = ACTIONS(162), - [anon_sym_for] = ACTIONS(165), - [anon_sym_while] = ACTIONS(168), - [anon_sym_try] = ACTIONS(171), - [anon_sym_with] = ACTIONS(174), - [anon_sym_match] = ACTIONS(177), - [anon_sym_DASH] = ACTIONS(180), - [anon_sym_PLUS] = ACTIONS(180), - [anon_sym_LBRACK] = ACTIONS(183), - [anon_sym_LBRACE] = ACTIONS(186), - [anon_sym_STAR_STAR] = ACTIONS(189), - [anon_sym_def] = ACTIONS(192), - [anon_sym_global] = ACTIONS(195), - [anon_sym_nonlocal] = ACTIONS(198), - [anon_sym_exec] = ACTIONS(201), - [anon_sym_type] = ACTIONS(204), - [anon_sym_class] = ACTIONS(207), - [anon_sym_AT] = ACTIONS(210), - [anon_sym_not] = ACTIONS(213), - [anon_sym_TILDE] = ACTIONS(180), - [anon_sym_lambda] = ACTIONS(216), - [anon_sym_yield] = ACTIONS(219), - [sym_ellipsis] = ACTIONS(222), - [sym_integer] = ACTIONS(225), - [sym_float] = ACTIONS(222), - [anon_sym_await] = ACTIONS(228), - [sym_true] = ACTIONS(225), - [sym_false] = ACTIONS(225), - [sym_none] = ACTIONS(225), + [STATE(62)] = { + [sym__statement] = STATE(62), + [sym__simple_statements] = STATE(62), + [sym_import_statement] = STATE(1345), + [sym_future_import_statement] = STATE(1345), + [sym_import_from_statement] = STATE(1345), + [sym_print_statement] = STATE(1345), + [sym_assert_statement] = STATE(1345), + [sym_expression_statement] = STATE(1345), + [sym_named_expression] = STATE(1126), + [sym_return_statement] = STATE(1345), + [sym_delete_statement] = STATE(1345), + [sym_raise_statement] = STATE(1345), + [sym_pass_statement] = STATE(1345), + [sym_break_statement] = STATE(1345), + [sym_continue_statement] = STATE(1345), + [sym_if_statement] = STATE(62), + [sym_for_statement] = STATE(62), + [sym_while_statement] = STATE(62), + [sym_try_statement] = STATE(62), + [sym_with_statement] = STATE(62), + [sym_match_statement] = STATE(62), + [sym_function_definition] = STATE(62), + [sym_list_splat] = STATE(1590), + [sym_dictionary_splat] = STATE(1590), + [sym_global_statement] = STATE(1345), + [sym_nonlocal_statement] = STATE(1345), + [sym_exec_statement] = STATE(1345), + [sym_type_alias_statement] = STATE(1345), + [sym_class_definition] = STATE(62), + [sym_decorated_definition] = STATE(62), + [sym_decorator] = STATE(1146), + [sym_expression_list] = STATE(1545), + [sym_pattern] = STATE(1020), + [sym_tuple_pattern] = STATE(1005), + [sym_list_pattern] = STATE(1005), + [sym_list_splat_pattern] = STATE(1005), + [sym_expression] = STATE(1191), + [sym_primary_expression] = STATE(773), + [sym_not_operator] = STATE(1126), + [sym_boolean_operator] = STATE(1126), + [sym_binary_operator] = STATE(950), + [sym_unary_operator] = STATE(950), + [sym_comparison_operator] = STATE(1126), + [sym_lambda] = STATE(1126), + [sym_assignment] = STATE(1545), + [sym_augmented_assignment] = STATE(1545), + [sym_pattern_list] = STATE(1030), + [sym_yield] = STATE(1545), + [sym_attribute] = STATE(614), + [sym_subscript] = STATE(614), + [sym_call] = STATE(950), + [sym_list] = STATE(950), + [sym_set] = STATE(950), + [sym_tuple] = STATE(950), + [sym_dictionary] = STATE(950), + [sym_list_comprehension] = STATE(950), + [sym_dictionary_comprehension] = STATE(950), + [sym_set_comprehension] = STATE(950), + [sym_generator_expression] = STATE(950), + [sym_parenthesized_expression] = STATE(950), + [sym_conditional_expression] = STATE(1126), + [sym_concatenated_string] = STATE(950), + [sym_string] = STATE(779), + [sym_concatenated_template_string] = STATE(950), + [sym_template_string] = STATE(772), + [sym_await] = STATE(950), + [aux_sym_module_repeat1] = STATE(62), + [aux_sym_decorated_definition_repeat1] = STATE(1146), + [sym_identifier] = ACTIONS(115), + [anon_sym_lazy] = ACTIONS(118), + [anon_sym_import] = ACTIONS(121), + [anon_sym_from] = ACTIONS(124), + [anon_sym_LPAREN] = ACTIONS(127), + [anon_sym_STAR] = ACTIONS(130), + [anon_sym_print] = ACTIONS(133), + [anon_sym_assert] = ACTIONS(136), + [anon_sym_return] = ACTIONS(139), + [anon_sym_del] = ACTIONS(142), + [anon_sym_raise] = ACTIONS(145), + [anon_sym_pass] = ACTIONS(148), + [anon_sym_break] = ACTIONS(151), + [anon_sym_continue] = ACTIONS(154), + [anon_sym_if] = ACTIONS(157), + [anon_sym_async] = ACTIONS(160), + [anon_sym_for] = ACTIONS(163), + [anon_sym_while] = ACTIONS(166), + [anon_sym_try] = ACTIONS(169), + [anon_sym_with] = ACTIONS(172), + [anon_sym_match] = ACTIONS(175), + [anon_sym_DASH] = ACTIONS(178), + [anon_sym_PLUS] = ACTIONS(178), + [anon_sym_LBRACK] = ACTIONS(181), + [anon_sym_LBRACE] = ACTIONS(184), + [anon_sym_STAR_STAR] = ACTIONS(187), + [anon_sym_def] = ACTIONS(190), + [anon_sym_global] = ACTIONS(193), + [anon_sym_nonlocal] = ACTIONS(196), + [anon_sym_exec] = ACTIONS(199), + [anon_sym_type] = ACTIONS(202), + [anon_sym_class] = ACTIONS(205), + [anon_sym_AT] = ACTIONS(208), + [anon_sym_not] = ACTIONS(211), + [anon_sym_TILDE] = ACTIONS(178), + [anon_sym_lambda] = ACTIONS(214), + [anon_sym_yield] = ACTIONS(217), + [sym_ellipsis] = ACTIONS(220), + [sym_integer] = ACTIONS(223), + [sym_float] = ACTIONS(220), + [anon_sym_await] = ACTIONS(226), + [sym_true] = ACTIONS(223), + [sym_false] = ACTIONS(223), + [sym_none] = ACTIONS(223), [sym_comment] = ACTIONS(3), - [sym__dedent] = ACTIONS(231), - [sym__string_start] = ACTIONS(233), - [sym__template_string_start] = ACTIONS(236), + [sym__dedent] = ACTIONS(229), + [sym__string_start] = ACTIONS(231), + [sym__template_string_start] = ACTIONS(234), }, - [STATE(64)] = { - [sym__statement] = STATE(63), - [sym__simple_statements] = STATE(63), - [sym_import_statement] = STATE(1332), - [sym_future_import_statement] = STATE(1332), - [sym_import_from_statement] = STATE(1332), - [sym_print_statement] = STATE(1332), - [sym_assert_statement] = STATE(1332), - [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1156), - [sym_return_statement] = STATE(1332), - [sym_delete_statement] = STATE(1332), - [sym_raise_statement] = STATE(1332), - [sym_pass_statement] = STATE(1332), - [sym_break_statement] = STATE(1332), - [sym_continue_statement] = STATE(1332), - [sym_if_statement] = STATE(63), - [sym_for_statement] = STATE(63), - [sym_while_statement] = STATE(63), - [sym_try_statement] = STATE(63), - [sym_with_statement] = STATE(63), - [sym_match_statement] = STATE(63), - [sym_function_definition] = STATE(63), - [sym_list_splat] = STATE(1520), - [sym_dictionary_splat] = STATE(1520), - [sym_global_statement] = STATE(1332), - [sym_nonlocal_statement] = STATE(1332), - [sym_exec_statement] = STATE(1332), - [sym_type_alias_statement] = STATE(1332), - [sym_class_definition] = STATE(63), - [sym_decorated_definition] = STATE(63), - [sym_decorator] = STATE(1127), - [sym_expression_list] = STATE(1522), - [sym_pattern] = STATE(1017), - [sym_tuple_pattern] = STATE(1001), - [sym_list_pattern] = STATE(1001), - [sym_list_splat_pattern] = STATE(1001), - [sym_expression] = STATE(1176), - [sym_primary_expression] = STATE(765), - [sym_not_operator] = STATE(1156), - [sym_boolean_operator] = STATE(1156), - [sym_binary_operator] = STATE(920), - [sym_unary_operator] = STATE(920), - [sym_comparison_operator] = STATE(1156), - [sym_lambda] = STATE(1156), - [sym_assignment] = STATE(1522), - [sym_augmented_assignment] = STATE(1522), - [sym_pattern_list] = STATE(1026), - [sym_yield] = STATE(1522), - [sym_attribute] = STATE(582), - [sym_subscript] = STATE(582), - [sym_call] = STATE(920), - [sym_list] = STATE(920), - [sym_set] = STATE(920), - [sym_tuple] = STATE(920), - [sym_dictionary] = STATE(920), - [sym_list_comprehension] = STATE(920), - [sym_dictionary_comprehension] = STATE(920), - [sym_set_comprehension] = STATE(920), - [sym_generator_expression] = STATE(920), - [sym_parenthesized_expression] = STATE(920), - [sym_conditional_expression] = STATE(1156), - [sym_concatenated_string] = STATE(920), - [sym_string] = STATE(775), - [sym_concatenated_template_string] = STATE(920), - [sym_template_string] = STATE(769), - [sym_await] = STATE(920), - [aux_sym_module_repeat1] = STATE(63), - [aux_sym_decorated_definition_repeat1] = STATE(1127), + [STATE(63)] = { + [sym__statement] = STATE(62), + [sym__simple_statements] = STATE(62), + [sym_import_statement] = STATE(1345), + [sym_future_import_statement] = STATE(1345), + [sym_import_from_statement] = STATE(1345), + [sym_print_statement] = STATE(1345), + [sym_assert_statement] = STATE(1345), + [sym_expression_statement] = STATE(1345), + [sym_named_expression] = STATE(1126), + [sym_return_statement] = STATE(1345), + [sym_delete_statement] = STATE(1345), + [sym_raise_statement] = STATE(1345), + [sym_pass_statement] = STATE(1345), + [sym_break_statement] = STATE(1345), + [sym_continue_statement] = STATE(1345), + [sym_if_statement] = STATE(62), + [sym_for_statement] = STATE(62), + [sym_while_statement] = STATE(62), + [sym_try_statement] = STATE(62), + [sym_with_statement] = STATE(62), + [sym_match_statement] = STATE(62), + [sym_function_definition] = STATE(62), + [sym_list_splat] = STATE(1590), + [sym_dictionary_splat] = STATE(1590), + [sym_global_statement] = STATE(1345), + [sym_nonlocal_statement] = STATE(1345), + [sym_exec_statement] = STATE(1345), + [sym_type_alias_statement] = STATE(1345), + [sym_class_definition] = STATE(62), + [sym_decorated_definition] = STATE(62), + [sym_decorator] = STATE(1146), + [sym_expression_list] = STATE(1545), + [sym_pattern] = STATE(1020), + [sym_tuple_pattern] = STATE(1005), + [sym_list_pattern] = STATE(1005), + [sym_list_splat_pattern] = STATE(1005), + [sym_expression] = STATE(1191), + [sym_primary_expression] = STATE(773), + [sym_not_operator] = STATE(1126), + [sym_boolean_operator] = STATE(1126), + [sym_binary_operator] = STATE(950), + [sym_unary_operator] = STATE(950), + [sym_comparison_operator] = STATE(1126), + [sym_lambda] = STATE(1126), + [sym_assignment] = STATE(1545), + [sym_augmented_assignment] = STATE(1545), + [sym_pattern_list] = STATE(1030), + [sym_yield] = STATE(1545), + [sym_attribute] = STATE(614), + [sym_subscript] = STATE(614), + [sym_call] = STATE(950), + [sym_list] = STATE(950), + [sym_set] = STATE(950), + [sym_tuple] = STATE(950), + [sym_dictionary] = STATE(950), + [sym_list_comprehension] = STATE(950), + [sym_dictionary_comprehension] = STATE(950), + [sym_set_comprehension] = STATE(950), + [sym_generator_expression] = STATE(950), + [sym_parenthesized_expression] = STATE(950), + [sym_conditional_expression] = STATE(1126), + [sym_concatenated_string] = STATE(950), + [sym_string] = STATE(779), + [sym_concatenated_template_string] = STATE(950), + [sym_template_string] = STATE(772), + [sym_await] = STATE(950), + [aux_sym_module_repeat1] = STATE(62), + [aux_sym_decorated_definition_repeat1] = STATE(1146), [sym_identifier] = ACTIONS(7), [anon_sym_lazy] = ACTIONS(9), [anon_sym_import] = ACTIONS(11), @@ -15899,26 +15823,144 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_false] = ACTIONS(79), [sym_none] = ACTIONS(79), [sym_comment] = ACTIONS(3), - [sym__dedent] = ACTIONS(239), + [sym__dedent] = ACTIONS(237), + [sym__string_start] = ACTIONS(83), + [sym__template_string_start] = ACTIONS(85), + }, + [STATE(64)] = { + [sym__statement] = STATE(65), + [sym__simple_statements] = STATE(65), + [sym_import_statement] = STATE(1346), + [sym_future_import_statement] = STATE(1346), + [sym_import_from_statement] = STATE(1346), + [sym_print_statement] = STATE(1346), + [sym_assert_statement] = STATE(1346), + [sym_expression_statement] = STATE(1346), + [sym_named_expression] = STATE(1126), + [sym_return_statement] = STATE(1346), + [sym_delete_statement] = STATE(1346), + [sym_raise_statement] = STATE(1346), + [sym_pass_statement] = STATE(1346), + [sym_break_statement] = STATE(1346), + [sym_continue_statement] = STATE(1346), + [sym_if_statement] = STATE(65), + [sym_for_statement] = STATE(65), + [sym_while_statement] = STATE(65), + [sym_try_statement] = STATE(65), + [sym_with_statement] = STATE(65), + [sym_match_statement] = STATE(65), + [sym_function_definition] = STATE(65), + [sym_list_splat] = STATE(1590), + [sym_dictionary_splat] = STATE(1590), + [sym_global_statement] = STATE(1346), + [sym_nonlocal_statement] = STATE(1346), + [sym_exec_statement] = STATE(1346), + [sym_type_alias_statement] = STATE(1346), + [sym_class_definition] = STATE(65), + [sym_decorated_definition] = STATE(65), + [sym_decorator] = STATE(1172), + [sym_expression_list] = STATE(1545), + [sym_pattern] = STATE(1020), + [sym_tuple_pattern] = STATE(1005), + [sym_list_pattern] = STATE(1005), + [sym_list_splat_pattern] = STATE(1005), + [sym_expression] = STATE(1191), + [sym_primary_expression] = STATE(773), + [sym_not_operator] = STATE(1126), + [sym_boolean_operator] = STATE(1126), + [sym_binary_operator] = STATE(950), + [sym_unary_operator] = STATE(950), + [sym_comparison_operator] = STATE(1126), + [sym_lambda] = STATE(1126), + [sym_assignment] = STATE(1545), + [sym_augmented_assignment] = STATE(1545), + [sym_pattern_list] = STATE(1030), + [sym_yield] = STATE(1545), + [sym_attribute] = STATE(614), + [sym_subscript] = STATE(614), + [sym_call] = STATE(950), + [sym_list] = STATE(950), + [sym_set] = STATE(950), + [sym_tuple] = STATE(950), + [sym_dictionary] = STATE(950), + [sym_list_comprehension] = STATE(950), + [sym_dictionary_comprehension] = STATE(950), + [sym_set_comprehension] = STATE(950), + [sym_generator_expression] = STATE(950), + [sym_parenthesized_expression] = STATE(950), + [sym_conditional_expression] = STATE(1126), + [sym_concatenated_string] = STATE(950), + [sym_string] = STATE(779), + [sym_concatenated_template_string] = STATE(950), + [sym_template_string] = STATE(772), + [sym_await] = STATE(950), + [aux_sym_module_repeat1] = STATE(65), + [aux_sym_decorated_definition_repeat1] = STATE(1172), + [ts_builtin_sym_end] = ACTIONS(239), + [sym_identifier] = ACTIONS(7), + [anon_sym_lazy] = ACTIONS(9), + [anon_sym_import] = ACTIONS(11), + [anon_sym_from] = ACTIONS(13), + [anon_sym_LPAREN] = ACTIONS(15), + [anon_sym_STAR] = ACTIONS(17), + [anon_sym_print] = ACTIONS(19), + [anon_sym_assert] = ACTIONS(21), + [anon_sym_return] = ACTIONS(23), + [anon_sym_del] = ACTIONS(25), + [anon_sym_raise] = ACTIONS(27), + [anon_sym_pass] = ACTIONS(29), + [anon_sym_break] = ACTIONS(31), + [anon_sym_continue] = ACTIONS(33), + [anon_sym_if] = ACTIONS(35), + [anon_sym_async] = ACTIONS(37), + [anon_sym_for] = ACTIONS(39), + [anon_sym_while] = ACTIONS(41), + [anon_sym_try] = ACTIONS(43), + [anon_sym_with] = ACTIONS(45), + [anon_sym_match] = ACTIONS(47), + [anon_sym_DASH] = ACTIONS(49), + [anon_sym_PLUS] = ACTIONS(49), + [anon_sym_LBRACK] = ACTIONS(51), + [anon_sym_LBRACE] = ACTIONS(53), + [anon_sym_STAR_STAR] = ACTIONS(55), + [anon_sym_def] = ACTIONS(57), + [anon_sym_global] = ACTIONS(59), + [anon_sym_nonlocal] = ACTIONS(61), + [anon_sym_exec] = ACTIONS(63), + [anon_sym_type] = ACTIONS(65), + [anon_sym_class] = ACTIONS(67), + [anon_sym_AT] = ACTIONS(69), + [anon_sym_not] = ACTIONS(71), + [anon_sym_TILDE] = ACTIONS(49), + [anon_sym_lambda] = ACTIONS(73), + [anon_sym_yield] = ACTIONS(75), + [sym_ellipsis] = ACTIONS(77), + [sym_integer] = ACTIONS(79), + [sym_float] = ACTIONS(77), + [anon_sym_await] = ACTIONS(81), + [sym_true] = ACTIONS(79), + [sym_false] = ACTIONS(79), + [sym_none] = ACTIONS(79), + [sym_comment] = ACTIONS(3), [sym__string_start] = ACTIONS(83), [sym__template_string_start] = ACTIONS(85), }, [STATE(65)] = { [sym__statement] = STATE(65), [sym__simple_statements] = STATE(65), - [sym_import_statement] = STATE(1301), - [sym_future_import_statement] = STATE(1301), - [sym_import_from_statement] = STATE(1301), - [sym_print_statement] = STATE(1301), - [sym_assert_statement] = STATE(1301), - [sym_expression_statement] = STATE(1301), - [sym_named_expression] = STATE(1156), - [sym_return_statement] = STATE(1301), - [sym_delete_statement] = STATE(1301), - [sym_raise_statement] = STATE(1301), - [sym_pass_statement] = STATE(1301), - [sym_break_statement] = STATE(1301), - [sym_continue_statement] = STATE(1301), + [sym_import_statement] = STATE(1346), + [sym_future_import_statement] = STATE(1346), + [sym_import_from_statement] = STATE(1346), + [sym_print_statement] = STATE(1346), + [sym_assert_statement] = STATE(1346), + [sym_expression_statement] = STATE(1346), + [sym_named_expression] = STATE(1126), + [sym_return_statement] = STATE(1346), + [sym_delete_statement] = STATE(1346), + [sym_raise_statement] = STATE(1346), + [sym_pass_statement] = STATE(1346), + [sym_break_statement] = STATE(1346), + [sym_continue_statement] = STATE(1346), [sym_if_statement] = STATE(65), [sym_for_statement] = STATE(65), [sym_while_statement] = STATE(65), @@ -15926,67 +15968,67 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_with_statement] = STATE(65), [sym_match_statement] = STATE(65), [sym_function_definition] = STATE(65), - [sym_list_splat] = STATE(1520), - [sym_dictionary_splat] = STATE(1520), - [sym_global_statement] = STATE(1301), - [sym_nonlocal_statement] = STATE(1301), - [sym_exec_statement] = STATE(1301), - [sym_type_alias_statement] = STATE(1301), + [sym_list_splat] = STATE(1590), + [sym_dictionary_splat] = STATE(1590), + [sym_global_statement] = STATE(1346), + [sym_nonlocal_statement] = STATE(1346), + [sym_exec_statement] = STATE(1346), + [sym_type_alias_statement] = STATE(1346), [sym_class_definition] = STATE(65), [sym_decorated_definition] = STATE(65), - [sym_decorator] = STATE(1128), - [sym_expression_list] = STATE(1522), - [sym_pattern] = STATE(1017), - [sym_tuple_pattern] = STATE(1001), - [sym_list_pattern] = STATE(1001), - [sym_list_splat_pattern] = STATE(1001), - [sym_expression] = STATE(1176), - [sym_primary_expression] = STATE(765), - [sym_not_operator] = STATE(1156), - [sym_boolean_operator] = STATE(1156), - [sym_binary_operator] = STATE(920), - [sym_unary_operator] = STATE(920), - [sym_comparison_operator] = STATE(1156), - [sym_lambda] = STATE(1156), - [sym_assignment] = STATE(1522), - [sym_augmented_assignment] = STATE(1522), - [sym_pattern_list] = STATE(1026), - [sym_yield] = STATE(1522), - [sym_attribute] = STATE(582), - [sym_subscript] = STATE(582), - [sym_call] = STATE(920), - [sym_list] = STATE(920), - [sym_set] = STATE(920), - [sym_tuple] = STATE(920), - [sym_dictionary] = STATE(920), - [sym_list_comprehension] = STATE(920), - [sym_dictionary_comprehension] = STATE(920), - [sym_set_comprehension] = STATE(920), - [sym_generator_expression] = STATE(920), - [sym_parenthesized_expression] = STATE(920), - [sym_conditional_expression] = STATE(1156), - [sym_concatenated_string] = STATE(920), - [sym_string] = STATE(775), - [sym_concatenated_template_string] = STATE(920), - [sym_template_string] = STATE(769), - [sym_await] = STATE(920), + [sym_decorator] = STATE(1172), + [sym_expression_list] = STATE(1545), + [sym_pattern] = STATE(1020), + [sym_tuple_pattern] = STATE(1005), + [sym_list_pattern] = STATE(1005), + [sym_list_splat_pattern] = STATE(1005), + [sym_expression] = STATE(1191), + [sym_primary_expression] = STATE(773), + [sym_not_operator] = STATE(1126), + [sym_boolean_operator] = STATE(1126), + [sym_binary_operator] = STATE(950), + [sym_unary_operator] = STATE(950), + [sym_comparison_operator] = STATE(1126), + [sym_lambda] = STATE(1126), + [sym_assignment] = STATE(1545), + [sym_augmented_assignment] = STATE(1545), + [sym_pattern_list] = STATE(1030), + [sym_yield] = STATE(1545), + [sym_attribute] = STATE(614), + [sym_subscript] = STATE(614), + [sym_call] = STATE(950), + [sym_list] = STATE(950), + [sym_set] = STATE(950), + [sym_tuple] = STATE(950), + [sym_dictionary] = STATE(950), + [sym_list_comprehension] = STATE(950), + [sym_dictionary_comprehension] = STATE(950), + [sym_set_comprehension] = STATE(950), + [sym_generator_expression] = STATE(950), + [sym_parenthesized_expression] = STATE(950), + [sym_conditional_expression] = STATE(1126), + [sym_concatenated_string] = STATE(950), + [sym_string] = STATE(779), + [sym_concatenated_template_string] = STATE(950), + [sym_template_string] = STATE(772), + [sym_await] = STATE(950), [aux_sym_module_repeat1] = STATE(65), - [aux_sym_decorated_definition_repeat1] = STATE(1128), - [ts_builtin_sym_end] = ACTIONS(231), - [sym_identifier] = ACTIONS(117), - [anon_sym_lazy] = ACTIONS(120), - [anon_sym_import] = ACTIONS(123), - [anon_sym_from] = ACTIONS(126), - [anon_sym_LPAREN] = ACTIONS(129), - [anon_sym_STAR] = ACTIONS(132), - [anon_sym_print] = ACTIONS(135), - [anon_sym_assert] = ACTIONS(138), - [anon_sym_return] = ACTIONS(141), - [anon_sym_del] = ACTIONS(144), - [anon_sym_raise] = ACTIONS(147), - [anon_sym_pass] = ACTIONS(150), - [anon_sym_break] = ACTIONS(153), - [anon_sym_continue] = ACTIONS(156), + [aux_sym_decorated_definition_repeat1] = STATE(1172), + [ts_builtin_sym_end] = ACTIONS(229), + [sym_identifier] = ACTIONS(115), + [anon_sym_lazy] = ACTIONS(118), + [anon_sym_import] = ACTIONS(121), + [anon_sym_from] = ACTIONS(124), + [anon_sym_LPAREN] = ACTIONS(127), + [anon_sym_STAR] = ACTIONS(130), + [anon_sym_print] = ACTIONS(133), + [anon_sym_assert] = ACTIONS(136), + [anon_sym_return] = ACTIONS(139), + [anon_sym_del] = ACTIONS(142), + [anon_sym_raise] = ACTIONS(145), + [anon_sym_pass] = ACTIONS(148), + [anon_sym_break] = ACTIONS(151), + [anon_sym_continue] = ACTIONS(154), [anon_sym_if] = ACTIONS(241), [anon_sym_async] = ACTIONS(244), [anon_sym_for] = ACTIONS(247), @@ -15994,64 +16036,64 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_try] = ACTIONS(253), [anon_sym_with] = ACTIONS(256), [anon_sym_match] = ACTIONS(259), - [anon_sym_DASH] = ACTIONS(180), - [anon_sym_PLUS] = ACTIONS(180), - [anon_sym_LBRACK] = ACTIONS(183), - [anon_sym_LBRACE] = ACTIONS(186), - [anon_sym_STAR_STAR] = ACTIONS(189), + [anon_sym_DASH] = ACTIONS(178), + [anon_sym_PLUS] = ACTIONS(178), + [anon_sym_LBRACK] = ACTIONS(181), + [anon_sym_LBRACE] = ACTIONS(184), + [anon_sym_STAR_STAR] = ACTIONS(187), [anon_sym_def] = ACTIONS(262), - [anon_sym_global] = ACTIONS(195), - [anon_sym_nonlocal] = ACTIONS(198), - [anon_sym_exec] = ACTIONS(201), - [anon_sym_type] = ACTIONS(204), + [anon_sym_global] = ACTIONS(193), + [anon_sym_nonlocal] = ACTIONS(196), + [anon_sym_exec] = ACTIONS(199), + [anon_sym_type] = ACTIONS(202), [anon_sym_class] = ACTIONS(265), - [anon_sym_AT] = ACTIONS(210), - [anon_sym_not] = ACTIONS(213), - [anon_sym_TILDE] = ACTIONS(180), - [anon_sym_lambda] = ACTIONS(216), - [anon_sym_yield] = ACTIONS(219), - [sym_ellipsis] = ACTIONS(222), - [sym_integer] = ACTIONS(225), - [sym_float] = ACTIONS(222), - [anon_sym_await] = ACTIONS(228), - [sym_true] = ACTIONS(225), - [sym_false] = ACTIONS(225), - [sym_none] = ACTIONS(225), + [anon_sym_AT] = ACTIONS(208), + [anon_sym_not] = ACTIONS(211), + [anon_sym_TILDE] = ACTIONS(178), + [anon_sym_lambda] = ACTIONS(214), + [anon_sym_yield] = ACTIONS(217), + [sym_ellipsis] = ACTIONS(220), + [sym_integer] = ACTIONS(223), + [sym_float] = ACTIONS(220), + [anon_sym_await] = ACTIONS(226), + [sym_true] = ACTIONS(223), + [sym_false] = ACTIONS(223), + [sym_none] = ACTIONS(223), [sym_comment] = ACTIONS(3), - [sym__string_start] = ACTIONS(233), - [sym__template_string_start] = ACTIONS(236), + [sym__string_start] = ACTIONS(231), + [sym__template_string_start] = ACTIONS(234), }, [STATE(66)] = { - [sym_named_expression] = STATE(1032), - [sym_list_splat] = STATE(1518), - [sym_dictionary_splat] = STATE(1518), - [sym_expression_list] = STATE(1654), - [sym_expression] = STATE(1245), - [sym_primary_expression] = STATE(719), - [sym_not_operator] = STATE(1032), - [sym_boolean_operator] = STATE(1032), - [sym_binary_operator] = STATE(725), - [sym_unary_operator] = STATE(725), - [sym_comparison_operator] = STATE(1032), - [sym_lambda] = STATE(1032), - [sym_attribute] = STATE(725), - [sym_subscript] = STATE(725), - [sym_call] = STATE(725), - [sym_list] = STATE(725), - [sym_set] = STATE(725), - [sym_tuple] = STATE(725), - [sym_dictionary] = STATE(725), - [sym_list_comprehension] = STATE(725), - [sym_dictionary_comprehension] = STATE(725), - [sym_set_comprehension] = STATE(725), - [sym_generator_expression] = STATE(725), - [sym_parenthesized_expression] = STATE(725), - [sym_conditional_expression] = STATE(1032), - [sym_concatenated_string] = STATE(725), - [sym_string] = STATE(645), - [sym_concatenated_template_string] = STATE(725), - [sym_template_string] = STATE(658), - [sym_await] = STATE(725), + [sym_named_expression] = STATE(1037), + [sym_list_splat] = STATE(1573), + [sym_dictionary_splat] = STATE(1573), + [sym_expression_list] = STATE(1725), + [sym_expression] = STATE(1277), + [sym_primary_expression] = STATE(704), + [sym_not_operator] = STATE(1037), + [sym_boolean_operator] = STATE(1037), + [sym_binary_operator] = STATE(720), + [sym_unary_operator] = STATE(720), + [sym_comparison_operator] = STATE(1037), + [sym_lambda] = STATE(1037), + [sym_attribute] = STATE(720), + [sym_subscript] = STATE(720), + [sym_call] = STATE(720), + [sym_list] = STATE(720), + [sym_set] = STATE(720), + [sym_tuple] = STATE(720), + [sym_dictionary] = STATE(720), + [sym_list_comprehension] = STATE(720), + [sym_dictionary_comprehension] = STATE(720), + [sym_set_comprehension] = STATE(720), + [sym_generator_expression] = STATE(720), + [sym_parenthesized_expression] = STATE(720), + [sym_conditional_expression] = STATE(1037), + [sym_concatenated_string] = STATE(720), + [sym_string] = STATE(694), + [sym_concatenated_template_string] = STATE(720), + [sym_template_string] = STATE(698), + [sym_await] = STATE(720), [sym_identifier] = ACTIONS(268), [anon_sym_lazy] = ACTIONS(270), [anon_sym_DOT] = ACTIONS(272), @@ -16122,36 +16164,36 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__template_string_start] = ACTIONS(317), }, [STATE(67)] = { - [sym_named_expression] = STATE(1032), - [sym_list_splat] = STATE(1518), - [sym_dictionary_splat] = STATE(1518), - [sym_expression_list] = STATE(1600), - [sym_expression] = STATE(1234), - [sym_primary_expression] = STATE(719), - [sym_not_operator] = STATE(1032), - [sym_boolean_operator] = STATE(1032), - [sym_binary_operator] = STATE(725), - [sym_unary_operator] = STATE(725), - [sym_comparison_operator] = STATE(1032), - [sym_lambda] = STATE(1032), - [sym_attribute] = STATE(725), - [sym_subscript] = STATE(725), - [sym_call] = STATE(725), - [sym_list] = STATE(725), - [sym_set] = STATE(725), - [sym_tuple] = STATE(725), - [sym_dictionary] = STATE(725), - [sym_list_comprehension] = STATE(725), - [sym_dictionary_comprehension] = STATE(725), - [sym_set_comprehension] = STATE(725), - [sym_generator_expression] = STATE(725), - [sym_parenthesized_expression] = STATE(725), - [sym_conditional_expression] = STATE(1032), - [sym_concatenated_string] = STATE(725), - [sym_string] = STATE(645), - [sym_concatenated_template_string] = STATE(725), - [sym_template_string] = STATE(658), - [sym_await] = STATE(725), + [sym_named_expression] = STATE(1037), + [sym_list_splat] = STATE(1573), + [sym_dictionary_splat] = STATE(1573), + [sym_expression_list] = STATE(1753), + [sym_expression] = STATE(1276), + [sym_primary_expression] = STATE(704), + [sym_not_operator] = STATE(1037), + [sym_boolean_operator] = STATE(1037), + [sym_binary_operator] = STATE(720), + [sym_unary_operator] = STATE(720), + [sym_comparison_operator] = STATE(1037), + [sym_lambda] = STATE(1037), + [sym_attribute] = STATE(720), + [sym_subscript] = STATE(720), + [sym_call] = STATE(720), + [sym_list] = STATE(720), + [sym_set] = STATE(720), + [sym_tuple] = STATE(720), + [sym_dictionary] = STATE(720), + [sym_list_comprehension] = STATE(720), + [sym_dictionary_comprehension] = STATE(720), + [sym_set_comprehension] = STATE(720), + [sym_generator_expression] = STATE(720), + [sym_parenthesized_expression] = STATE(720), + [sym_conditional_expression] = STATE(1037), + [sym_concatenated_string] = STATE(720), + [sym_string] = STATE(694), + [sym_concatenated_template_string] = STATE(720), + [sym_template_string] = STATE(698), + [sym_await] = STATE(720), [sym_identifier] = ACTIONS(268), [anon_sym_lazy] = ACTIONS(270), [anon_sym_DOT] = ACTIONS(272), @@ -16222,61 +16264,61 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__template_string_start] = ACTIONS(317), }, [STATE(68)] = { - [sym__simple_statements] = STATE(614), - [sym_import_statement] = STATE(1332), - [sym_future_import_statement] = STATE(1332), - [sym_import_from_statement] = STATE(1332), - [sym_print_statement] = STATE(1332), - [sym_assert_statement] = STATE(1332), - [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1156), - [sym_return_statement] = STATE(1332), - [sym_delete_statement] = STATE(1332), - [sym_raise_statement] = STATE(1332), - [sym_pass_statement] = STATE(1332), - [sym_break_statement] = STATE(1332), - [sym_continue_statement] = STATE(1332), - [sym_list_splat] = STATE(1520), - [sym_dictionary_splat] = STATE(1520), - [sym_global_statement] = STATE(1332), - [sym_nonlocal_statement] = STATE(1332), - [sym_exec_statement] = STATE(1332), - [sym_type_alias_statement] = STATE(1332), - [sym_expression_list] = STATE(1522), - [sym_pattern] = STATE(1017), - [sym_tuple_pattern] = STATE(1001), - [sym_list_pattern] = STATE(1001), - [sym_list_splat_pattern] = STATE(1001), - [sym_expression] = STATE(1176), - [sym_primary_expression] = STATE(765), - [sym_not_operator] = STATE(1156), - [sym_boolean_operator] = STATE(1156), - [sym_binary_operator] = STATE(920), - [sym_unary_operator] = STATE(920), - [sym_comparison_operator] = STATE(1156), - [sym_lambda] = STATE(1156), - [sym_assignment] = STATE(1522), - [sym_augmented_assignment] = STATE(1522), - [sym_pattern_list] = STATE(1026), - [sym_yield] = STATE(1522), - [sym_attribute] = STATE(582), - [sym_subscript] = STATE(582), - [sym_call] = STATE(920), - [sym_list] = STATE(920), - [sym_set] = STATE(920), - [sym_tuple] = STATE(920), - [sym_dictionary] = STATE(920), - [sym_list_comprehension] = STATE(920), - [sym_dictionary_comprehension] = STATE(920), - [sym_set_comprehension] = STATE(920), - [sym_generator_expression] = STATE(920), - [sym_parenthesized_expression] = STATE(920), - [sym_conditional_expression] = STATE(1156), - [sym_concatenated_string] = STATE(920), - [sym_string] = STATE(775), - [sym_concatenated_template_string] = STATE(920), - [sym_template_string] = STATE(769), - [sym_await] = STATE(920), + [sym__simple_statements] = STATE(616), + [sym_import_statement] = STATE(1345), + [sym_future_import_statement] = STATE(1345), + [sym_import_from_statement] = STATE(1345), + [sym_print_statement] = STATE(1345), + [sym_assert_statement] = STATE(1345), + [sym_expression_statement] = STATE(1345), + [sym_named_expression] = STATE(1126), + [sym_return_statement] = STATE(1345), + [sym_delete_statement] = STATE(1345), + [sym_raise_statement] = STATE(1345), + [sym_pass_statement] = STATE(1345), + [sym_break_statement] = STATE(1345), + [sym_continue_statement] = STATE(1345), + [sym_list_splat] = STATE(1590), + [sym_dictionary_splat] = STATE(1590), + [sym_global_statement] = STATE(1345), + [sym_nonlocal_statement] = STATE(1345), + [sym_exec_statement] = STATE(1345), + [sym_type_alias_statement] = STATE(1345), + [sym_expression_list] = STATE(1545), + [sym_pattern] = STATE(1020), + [sym_tuple_pattern] = STATE(1005), + [sym_list_pattern] = STATE(1005), + [sym_list_splat_pattern] = STATE(1005), + [sym_expression] = STATE(1191), + [sym_primary_expression] = STATE(773), + [sym_not_operator] = STATE(1126), + [sym_boolean_operator] = STATE(1126), + [sym_binary_operator] = STATE(950), + [sym_unary_operator] = STATE(950), + [sym_comparison_operator] = STATE(1126), + [sym_lambda] = STATE(1126), + [sym_assignment] = STATE(1545), + [sym_augmented_assignment] = STATE(1545), + [sym_pattern_list] = STATE(1030), + [sym_yield] = STATE(1545), + [sym_attribute] = STATE(614), + [sym_subscript] = STATE(614), + [sym_call] = STATE(950), + [sym_list] = STATE(950), + [sym_set] = STATE(950), + [sym_tuple] = STATE(950), + [sym_dictionary] = STATE(950), + [sym_list_comprehension] = STATE(950), + [sym_dictionary_comprehension] = STATE(950), + [sym_set_comprehension] = STATE(950), + [sym_generator_expression] = STATE(950), + [sym_parenthesized_expression] = STATE(950), + [sym_conditional_expression] = STATE(1126), + [sym_concatenated_string] = STATE(950), + [sym_string] = STATE(779), + [sym_concatenated_template_string] = STATE(950), + [sym_template_string] = STATE(772), + [sym_await] = STATE(950), [sym_identifier] = ACTIONS(7), [anon_sym_lazy] = ACTIONS(9), [anon_sym_import] = ACTIONS(11), @@ -16320,61 +16362,61 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__template_string_start] = ACTIONS(85), }, [STATE(69)] = { - [sym__simple_statements] = STATE(567), - [sym_import_statement] = STATE(1301), - [sym_future_import_statement] = STATE(1301), - [sym_import_from_statement] = STATE(1301), - [sym_print_statement] = STATE(1301), - [sym_assert_statement] = STATE(1301), - [sym_expression_statement] = STATE(1301), - [sym_named_expression] = STATE(1156), - [sym_return_statement] = STATE(1301), - [sym_delete_statement] = STATE(1301), - [sym_raise_statement] = STATE(1301), - [sym_pass_statement] = STATE(1301), - [sym_break_statement] = STATE(1301), - [sym_continue_statement] = STATE(1301), - [sym_list_splat] = STATE(1520), - [sym_dictionary_splat] = STATE(1520), - [sym_global_statement] = STATE(1301), - [sym_nonlocal_statement] = STATE(1301), - [sym_exec_statement] = STATE(1301), - [sym_type_alias_statement] = STATE(1301), - [sym_expression_list] = STATE(1522), - [sym_pattern] = STATE(1017), - [sym_tuple_pattern] = STATE(1001), - [sym_list_pattern] = STATE(1001), - [sym_list_splat_pattern] = STATE(1001), - [sym_expression] = STATE(1176), - [sym_primary_expression] = STATE(765), - [sym_not_operator] = STATE(1156), - [sym_boolean_operator] = STATE(1156), - [sym_binary_operator] = STATE(920), - [sym_unary_operator] = STATE(920), - [sym_comparison_operator] = STATE(1156), - [sym_lambda] = STATE(1156), - [sym_assignment] = STATE(1522), - [sym_augmented_assignment] = STATE(1522), - [sym_pattern_list] = STATE(1026), - [sym_yield] = STATE(1522), - [sym_attribute] = STATE(582), - [sym_subscript] = STATE(582), - [sym_call] = STATE(920), - [sym_list] = STATE(920), - [sym_set] = STATE(920), - [sym_tuple] = STATE(920), - [sym_dictionary] = STATE(920), - [sym_list_comprehension] = STATE(920), - [sym_dictionary_comprehension] = STATE(920), - [sym_set_comprehension] = STATE(920), - [sym_generator_expression] = STATE(920), - [sym_parenthesized_expression] = STATE(920), - [sym_conditional_expression] = STATE(1156), - [sym_concatenated_string] = STATE(920), - [sym_string] = STATE(775), - [sym_concatenated_template_string] = STATE(920), - [sym_template_string] = STATE(769), - [sym_await] = STATE(920), + [sym__simple_statements] = STATE(493), + [sym_import_statement] = STATE(1346), + [sym_future_import_statement] = STATE(1346), + [sym_import_from_statement] = STATE(1346), + [sym_print_statement] = STATE(1346), + [sym_assert_statement] = STATE(1346), + [sym_expression_statement] = STATE(1346), + [sym_named_expression] = STATE(1126), + [sym_return_statement] = STATE(1346), + [sym_delete_statement] = STATE(1346), + [sym_raise_statement] = STATE(1346), + [sym_pass_statement] = STATE(1346), + [sym_break_statement] = STATE(1346), + [sym_continue_statement] = STATE(1346), + [sym_list_splat] = STATE(1590), + [sym_dictionary_splat] = STATE(1590), + [sym_global_statement] = STATE(1346), + [sym_nonlocal_statement] = STATE(1346), + [sym_exec_statement] = STATE(1346), + [sym_type_alias_statement] = STATE(1346), + [sym_expression_list] = STATE(1545), + [sym_pattern] = STATE(1020), + [sym_tuple_pattern] = STATE(1005), + [sym_list_pattern] = STATE(1005), + [sym_list_splat_pattern] = STATE(1005), + [sym_expression] = STATE(1191), + [sym_primary_expression] = STATE(773), + [sym_not_operator] = STATE(1126), + [sym_boolean_operator] = STATE(1126), + [sym_binary_operator] = STATE(950), + [sym_unary_operator] = STATE(950), + [sym_comparison_operator] = STATE(1126), + [sym_lambda] = STATE(1126), + [sym_assignment] = STATE(1545), + [sym_augmented_assignment] = STATE(1545), + [sym_pattern_list] = STATE(1030), + [sym_yield] = STATE(1545), + [sym_attribute] = STATE(614), + [sym_subscript] = STATE(614), + [sym_call] = STATE(950), + [sym_list] = STATE(950), + [sym_set] = STATE(950), + [sym_tuple] = STATE(950), + [sym_dictionary] = STATE(950), + [sym_list_comprehension] = STATE(950), + [sym_dictionary_comprehension] = STATE(950), + [sym_set_comprehension] = STATE(950), + [sym_generator_expression] = STATE(950), + [sym_parenthesized_expression] = STATE(950), + [sym_conditional_expression] = STATE(1126), + [sym_concatenated_string] = STATE(950), + [sym_string] = STATE(779), + [sym_concatenated_template_string] = STATE(950), + [sym_template_string] = STATE(772), + [sym_await] = STATE(950), [sym_identifier] = ACTIONS(7), [anon_sym_lazy] = ACTIONS(9), [anon_sym_import] = ACTIONS(11), @@ -16418,61 +16460,61 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__template_string_start] = ACTIONS(85), }, [STATE(70)] = { - [sym__simple_statements] = STATE(573), - [sym_import_statement] = STATE(1301), - [sym_future_import_statement] = STATE(1301), - [sym_import_from_statement] = STATE(1301), - [sym_print_statement] = STATE(1301), - [sym_assert_statement] = STATE(1301), - [sym_expression_statement] = STATE(1301), - [sym_named_expression] = STATE(1156), - [sym_return_statement] = STATE(1301), - [sym_delete_statement] = STATE(1301), - [sym_raise_statement] = STATE(1301), - [sym_pass_statement] = STATE(1301), - [sym_break_statement] = STATE(1301), - [sym_continue_statement] = STATE(1301), - [sym_list_splat] = STATE(1520), - [sym_dictionary_splat] = STATE(1520), - [sym_global_statement] = STATE(1301), - [sym_nonlocal_statement] = STATE(1301), - [sym_exec_statement] = STATE(1301), - [sym_type_alias_statement] = STATE(1301), - [sym_expression_list] = STATE(1522), - [sym_pattern] = STATE(1017), - [sym_tuple_pattern] = STATE(1001), - [sym_list_pattern] = STATE(1001), - [sym_list_splat_pattern] = STATE(1001), - [sym_expression] = STATE(1176), - [sym_primary_expression] = STATE(765), - [sym_not_operator] = STATE(1156), - [sym_boolean_operator] = STATE(1156), - [sym_binary_operator] = STATE(920), - [sym_unary_operator] = STATE(920), - [sym_comparison_operator] = STATE(1156), - [sym_lambda] = STATE(1156), - [sym_assignment] = STATE(1522), - [sym_augmented_assignment] = STATE(1522), - [sym_pattern_list] = STATE(1026), - [sym_yield] = STATE(1522), - [sym_attribute] = STATE(582), - [sym_subscript] = STATE(582), - [sym_call] = STATE(920), - [sym_list] = STATE(920), - [sym_set] = STATE(920), - [sym_tuple] = STATE(920), - [sym_dictionary] = STATE(920), - [sym_list_comprehension] = STATE(920), - [sym_dictionary_comprehension] = STATE(920), - [sym_set_comprehension] = STATE(920), - [sym_generator_expression] = STATE(920), - [sym_parenthesized_expression] = STATE(920), - [sym_conditional_expression] = STATE(1156), - [sym_concatenated_string] = STATE(920), - [sym_string] = STATE(775), - [sym_concatenated_template_string] = STATE(920), - [sym_template_string] = STATE(769), - [sym_await] = STATE(920), + [sym__simple_statements] = STATE(320), + [sym_import_statement] = STATE(1345), + [sym_future_import_statement] = STATE(1345), + [sym_import_from_statement] = STATE(1345), + [sym_print_statement] = STATE(1345), + [sym_assert_statement] = STATE(1345), + [sym_expression_statement] = STATE(1345), + [sym_named_expression] = STATE(1126), + [sym_return_statement] = STATE(1345), + [sym_delete_statement] = STATE(1345), + [sym_raise_statement] = STATE(1345), + [sym_pass_statement] = STATE(1345), + [sym_break_statement] = STATE(1345), + [sym_continue_statement] = STATE(1345), + [sym_list_splat] = STATE(1590), + [sym_dictionary_splat] = STATE(1590), + [sym_global_statement] = STATE(1345), + [sym_nonlocal_statement] = STATE(1345), + [sym_exec_statement] = STATE(1345), + [sym_type_alias_statement] = STATE(1345), + [sym_expression_list] = STATE(1545), + [sym_pattern] = STATE(1020), + [sym_tuple_pattern] = STATE(1005), + [sym_list_pattern] = STATE(1005), + [sym_list_splat_pattern] = STATE(1005), + [sym_expression] = STATE(1191), + [sym_primary_expression] = STATE(773), + [sym_not_operator] = STATE(1126), + [sym_boolean_operator] = STATE(1126), + [sym_binary_operator] = STATE(950), + [sym_unary_operator] = STATE(950), + [sym_comparison_operator] = STATE(1126), + [sym_lambda] = STATE(1126), + [sym_assignment] = STATE(1545), + [sym_augmented_assignment] = STATE(1545), + [sym_pattern_list] = STATE(1030), + [sym_yield] = STATE(1545), + [sym_attribute] = STATE(614), + [sym_subscript] = STATE(614), + [sym_call] = STATE(950), + [sym_list] = STATE(950), + [sym_set] = STATE(950), + [sym_tuple] = STATE(950), + [sym_dictionary] = STATE(950), + [sym_list_comprehension] = STATE(950), + [sym_dictionary_comprehension] = STATE(950), + [sym_set_comprehension] = STATE(950), + [sym_generator_expression] = STATE(950), + [sym_parenthesized_expression] = STATE(950), + [sym_conditional_expression] = STATE(1126), + [sym_concatenated_string] = STATE(950), + [sym_string] = STATE(779), + [sym_concatenated_template_string] = STATE(950), + [sym_template_string] = STATE(772), + [sym_await] = STATE(950), [sym_identifier] = ACTIONS(7), [anon_sym_lazy] = ACTIONS(9), [anon_sym_import] = ACTIONS(11), @@ -16517,60 +16559,60 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { }, [STATE(71)] = { [sym__simple_statements] = STATE(477), - [sym_import_statement] = STATE(1301), - [sym_future_import_statement] = STATE(1301), - [sym_import_from_statement] = STATE(1301), - [sym_print_statement] = STATE(1301), - [sym_assert_statement] = STATE(1301), - [sym_expression_statement] = STATE(1301), - [sym_named_expression] = STATE(1156), - [sym_return_statement] = STATE(1301), - [sym_delete_statement] = STATE(1301), - [sym_raise_statement] = STATE(1301), - [sym_pass_statement] = STATE(1301), - [sym_break_statement] = STATE(1301), - [sym_continue_statement] = STATE(1301), - [sym_list_splat] = STATE(1520), - [sym_dictionary_splat] = STATE(1520), - [sym_global_statement] = STATE(1301), - [sym_nonlocal_statement] = STATE(1301), - [sym_exec_statement] = STATE(1301), - [sym_type_alias_statement] = STATE(1301), - [sym_expression_list] = STATE(1522), - [sym_pattern] = STATE(1017), - [sym_tuple_pattern] = STATE(1001), - [sym_list_pattern] = STATE(1001), - [sym_list_splat_pattern] = STATE(1001), - [sym_expression] = STATE(1176), - [sym_primary_expression] = STATE(765), - [sym_not_operator] = STATE(1156), - [sym_boolean_operator] = STATE(1156), - [sym_binary_operator] = STATE(920), - [sym_unary_operator] = STATE(920), - [sym_comparison_operator] = STATE(1156), - [sym_lambda] = STATE(1156), - [sym_assignment] = STATE(1522), - [sym_augmented_assignment] = STATE(1522), - [sym_pattern_list] = STATE(1026), - [sym_yield] = STATE(1522), - [sym_attribute] = STATE(582), - [sym_subscript] = STATE(582), - [sym_call] = STATE(920), - [sym_list] = STATE(920), - [sym_set] = STATE(920), - [sym_tuple] = STATE(920), - [sym_dictionary] = STATE(920), - [sym_list_comprehension] = STATE(920), - [sym_dictionary_comprehension] = STATE(920), - [sym_set_comprehension] = STATE(920), - [sym_generator_expression] = STATE(920), - [sym_parenthesized_expression] = STATE(920), - [sym_conditional_expression] = STATE(1156), - [sym_concatenated_string] = STATE(920), - [sym_string] = STATE(775), - [sym_concatenated_template_string] = STATE(920), - [sym_template_string] = STATE(769), - [sym_await] = STATE(920), + [sym_import_statement] = STATE(1345), + [sym_future_import_statement] = STATE(1345), + [sym_import_from_statement] = STATE(1345), + [sym_print_statement] = STATE(1345), + [sym_assert_statement] = STATE(1345), + [sym_expression_statement] = STATE(1345), + [sym_named_expression] = STATE(1126), + [sym_return_statement] = STATE(1345), + [sym_delete_statement] = STATE(1345), + [sym_raise_statement] = STATE(1345), + [sym_pass_statement] = STATE(1345), + [sym_break_statement] = STATE(1345), + [sym_continue_statement] = STATE(1345), + [sym_list_splat] = STATE(1590), + [sym_dictionary_splat] = STATE(1590), + [sym_global_statement] = STATE(1345), + [sym_nonlocal_statement] = STATE(1345), + [sym_exec_statement] = STATE(1345), + [sym_type_alias_statement] = STATE(1345), + [sym_expression_list] = STATE(1545), + [sym_pattern] = STATE(1020), + [sym_tuple_pattern] = STATE(1005), + [sym_list_pattern] = STATE(1005), + [sym_list_splat_pattern] = STATE(1005), + [sym_expression] = STATE(1191), + [sym_primary_expression] = STATE(773), + [sym_not_operator] = STATE(1126), + [sym_boolean_operator] = STATE(1126), + [sym_binary_operator] = STATE(950), + [sym_unary_operator] = STATE(950), + [sym_comparison_operator] = STATE(1126), + [sym_lambda] = STATE(1126), + [sym_assignment] = STATE(1545), + [sym_augmented_assignment] = STATE(1545), + [sym_pattern_list] = STATE(1030), + [sym_yield] = STATE(1545), + [sym_attribute] = STATE(614), + [sym_subscript] = STATE(614), + [sym_call] = STATE(950), + [sym_list] = STATE(950), + [sym_set] = STATE(950), + [sym_tuple] = STATE(950), + [sym_dictionary] = STATE(950), + [sym_list_comprehension] = STATE(950), + [sym_dictionary_comprehension] = STATE(950), + [sym_set_comprehension] = STATE(950), + [sym_generator_expression] = STATE(950), + [sym_parenthesized_expression] = STATE(950), + [sym_conditional_expression] = STATE(1126), + [sym_concatenated_string] = STATE(950), + [sym_string] = STATE(779), + [sym_concatenated_template_string] = STATE(950), + [sym_template_string] = STATE(772), + [sym_await] = STATE(950), [sym_identifier] = ACTIONS(7), [anon_sym_lazy] = ACTIONS(9), [anon_sym_import] = ACTIONS(11), @@ -16614,61 +16656,61 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__template_string_start] = ACTIONS(85), }, [STATE(72)] = { - [sym__simple_statements] = STATE(576), - [sym_import_statement] = STATE(1301), - [sym_future_import_statement] = STATE(1301), - [sym_import_from_statement] = STATE(1301), - [sym_print_statement] = STATE(1301), - [sym_assert_statement] = STATE(1301), - [sym_expression_statement] = STATE(1301), - [sym_named_expression] = STATE(1156), - [sym_return_statement] = STATE(1301), - [sym_delete_statement] = STATE(1301), - [sym_raise_statement] = STATE(1301), - [sym_pass_statement] = STATE(1301), - [sym_break_statement] = STATE(1301), - [sym_continue_statement] = STATE(1301), - [sym_list_splat] = STATE(1520), - [sym_dictionary_splat] = STATE(1520), - [sym_global_statement] = STATE(1301), - [sym_nonlocal_statement] = STATE(1301), - [sym_exec_statement] = STATE(1301), - [sym_type_alias_statement] = STATE(1301), - [sym_expression_list] = STATE(1522), - [sym_pattern] = STATE(1017), - [sym_tuple_pattern] = STATE(1001), - [sym_list_pattern] = STATE(1001), - [sym_list_splat_pattern] = STATE(1001), - [sym_expression] = STATE(1176), - [sym_primary_expression] = STATE(765), - [sym_not_operator] = STATE(1156), - [sym_boolean_operator] = STATE(1156), - [sym_binary_operator] = STATE(920), - [sym_unary_operator] = STATE(920), - [sym_comparison_operator] = STATE(1156), - [sym_lambda] = STATE(1156), - [sym_assignment] = STATE(1522), - [sym_augmented_assignment] = STATE(1522), - [sym_pattern_list] = STATE(1026), - [sym_yield] = STATE(1522), - [sym_attribute] = STATE(582), - [sym_subscript] = STATE(582), - [sym_call] = STATE(920), - [sym_list] = STATE(920), - [sym_set] = STATE(920), - [sym_tuple] = STATE(920), - [sym_dictionary] = STATE(920), - [sym_list_comprehension] = STATE(920), - [sym_dictionary_comprehension] = STATE(920), - [sym_set_comprehension] = STATE(920), - [sym_generator_expression] = STATE(920), - [sym_parenthesized_expression] = STATE(920), - [sym_conditional_expression] = STATE(1156), - [sym_concatenated_string] = STATE(920), - [sym_string] = STATE(775), - [sym_concatenated_template_string] = STATE(920), - [sym_template_string] = STATE(769), - [sym_await] = STATE(920), + [sym__simple_statements] = STATE(544), + [sym_import_statement] = STATE(1345), + [sym_future_import_statement] = STATE(1345), + [sym_import_from_statement] = STATE(1345), + [sym_print_statement] = STATE(1345), + [sym_assert_statement] = STATE(1345), + [sym_expression_statement] = STATE(1345), + [sym_named_expression] = STATE(1126), + [sym_return_statement] = STATE(1345), + [sym_delete_statement] = STATE(1345), + [sym_raise_statement] = STATE(1345), + [sym_pass_statement] = STATE(1345), + [sym_break_statement] = STATE(1345), + [sym_continue_statement] = STATE(1345), + [sym_list_splat] = STATE(1590), + [sym_dictionary_splat] = STATE(1590), + [sym_global_statement] = STATE(1345), + [sym_nonlocal_statement] = STATE(1345), + [sym_exec_statement] = STATE(1345), + [sym_type_alias_statement] = STATE(1345), + [sym_expression_list] = STATE(1545), + [sym_pattern] = STATE(1020), + [sym_tuple_pattern] = STATE(1005), + [sym_list_pattern] = STATE(1005), + [sym_list_splat_pattern] = STATE(1005), + [sym_expression] = STATE(1191), + [sym_primary_expression] = STATE(773), + [sym_not_operator] = STATE(1126), + [sym_boolean_operator] = STATE(1126), + [sym_binary_operator] = STATE(950), + [sym_unary_operator] = STATE(950), + [sym_comparison_operator] = STATE(1126), + [sym_lambda] = STATE(1126), + [sym_assignment] = STATE(1545), + [sym_augmented_assignment] = STATE(1545), + [sym_pattern_list] = STATE(1030), + [sym_yield] = STATE(1545), + [sym_attribute] = STATE(614), + [sym_subscript] = STATE(614), + [sym_call] = STATE(950), + [sym_list] = STATE(950), + [sym_set] = STATE(950), + [sym_tuple] = STATE(950), + [sym_dictionary] = STATE(950), + [sym_list_comprehension] = STATE(950), + [sym_dictionary_comprehension] = STATE(950), + [sym_set_comprehension] = STATE(950), + [sym_generator_expression] = STATE(950), + [sym_parenthesized_expression] = STATE(950), + [sym_conditional_expression] = STATE(1126), + [sym_concatenated_string] = STATE(950), + [sym_string] = STATE(779), + [sym_concatenated_template_string] = STATE(950), + [sym_template_string] = STATE(772), + [sym_await] = STATE(950), [sym_identifier] = ACTIONS(7), [anon_sym_lazy] = ACTIONS(9), [anon_sym_import] = ACTIONS(11), @@ -16712,61 +16754,61 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__template_string_start] = ACTIONS(85), }, [STATE(73)] = { - [sym__simple_statements] = STATE(325), - [sym_import_statement] = STATE(1332), - [sym_future_import_statement] = STATE(1332), - [sym_import_from_statement] = STATE(1332), - [sym_print_statement] = STATE(1332), - [sym_assert_statement] = STATE(1332), - [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1156), - [sym_return_statement] = STATE(1332), - [sym_delete_statement] = STATE(1332), - [sym_raise_statement] = STATE(1332), - [sym_pass_statement] = STATE(1332), - [sym_break_statement] = STATE(1332), - [sym_continue_statement] = STATE(1332), - [sym_list_splat] = STATE(1520), - [sym_dictionary_splat] = STATE(1520), - [sym_global_statement] = STATE(1332), - [sym_nonlocal_statement] = STATE(1332), - [sym_exec_statement] = STATE(1332), - [sym_type_alias_statement] = STATE(1332), - [sym_expression_list] = STATE(1522), - [sym_pattern] = STATE(1017), - [sym_tuple_pattern] = STATE(1001), - [sym_list_pattern] = STATE(1001), - [sym_list_splat_pattern] = STATE(1001), - [sym_expression] = STATE(1176), - [sym_primary_expression] = STATE(765), - [sym_not_operator] = STATE(1156), - [sym_boolean_operator] = STATE(1156), - [sym_binary_operator] = STATE(920), - [sym_unary_operator] = STATE(920), - [sym_comparison_operator] = STATE(1156), - [sym_lambda] = STATE(1156), - [sym_assignment] = STATE(1522), - [sym_augmented_assignment] = STATE(1522), - [sym_pattern_list] = STATE(1026), - [sym_yield] = STATE(1522), - [sym_attribute] = STATE(582), - [sym_subscript] = STATE(582), - [sym_call] = STATE(920), - [sym_list] = STATE(920), - [sym_set] = STATE(920), - [sym_tuple] = STATE(920), - [sym_dictionary] = STATE(920), - [sym_list_comprehension] = STATE(920), - [sym_dictionary_comprehension] = STATE(920), - [sym_set_comprehension] = STATE(920), - [sym_generator_expression] = STATE(920), - [sym_parenthesized_expression] = STATE(920), - [sym_conditional_expression] = STATE(1156), - [sym_concatenated_string] = STATE(920), - [sym_string] = STATE(775), - [sym_concatenated_template_string] = STATE(920), - [sym_template_string] = STATE(769), - [sym_await] = STATE(920), + [sym__simple_statements] = STATE(514), + [sym_import_statement] = STATE(1345), + [sym_future_import_statement] = STATE(1345), + [sym_import_from_statement] = STATE(1345), + [sym_print_statement] = STATE(1345), + [sym_assert_statement] = STATE(1345), + [sym_expression_statement] = STATE(1345), + [sym_named_expression] = STATE(1126), + [sym_return_statement] = STATE(1345), + [sym_delete_statement] = STATE(1345), + [sym_raise_statement] = STATE(1345), + [sym_pass_statement] = STATE(1345), + [sym_break_statement] = STATE(1345), + [sym_continue_statement] = STATE(1345), + [sym_list_splat] = STATE(1590), + [sym_dictionary_splat] = STATE(1590), + [sym_global_statement] = STATE(1345), + [sym_nonlocal_statement] = STATE(1345), + [sym_exec_statement] = STATE(1345), + [sym_type_alias_statement] = STATE(1345), + [sym_expression_list] = STATE(1545), + [sym_pattern] = STATE(1020), + [sym_tuple_pattern] = STATE(1005), + [sym_list_pattern] = STATE(1005), + [sym_list_splat_pattern] = STATE(1005), + [sym_expression] = STATE(1191), + [sym_primary_expression] = STATE(773), + [sym_not_operator] = STATE(1126), + [sym_boolean_operator] = STATE(1126), + [sym_binary_operator] = STATE(950), + [sym_unary_operator] = STATE(950), + [sym_comparison_operator] = STATE(1126), + [sym_lambda] = STATE(1126), + [sym_assignment] = STATE(1545), + [sym_augmented_assignment] = STATE(1545), + [sym_pattern_list] = STATE(1030), + [sym_yield] = STATE(1545), + [sym_attribute] = STATE(614), + [sym_subscript] = STATE(614), + [sym_call] = STATE(950), + [sym_list] = STATE(950), + [sym_set] = STATE(950), + [sym_tuple] = STATE(950), + [sym_dictionary] = STATE(950), + [sym_list_comprehension] = STATE(950), + [sym_dictionary_comprehension] = STATE(950), + [sym_set_comprehension] = STATE(950), + [sym_generator_expression] = STATE(950), + [sym_parenthesized_expression] = STATE(950), + [sym_conditional_expression] = STATE(1126), + [sym_concatenated_string] = STATE(950), + [sym_string] = STATE(779), + [sym_concatenated_template_string] = STATE(950), + [sym_template_string] = STATE(772), + [sym_await] = STATE(950), [sym_identifier] = ACTIONS(7), [anon_sym_lazy] = ACTIONS(9), [anon_sym_import] = ACTIONS(11), @@ -16810,61 +16852,61 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__template_string_start] = ACTIONS(85), }, [STATE(74)] = { - [sym__simple_statements] = STATE(463), - [sym_import_statement] = STATE(1332), - [sym_future_import_statement] = STATE(1332), - [sym_import_from_statement] = STATE(1332), - [sym_print_statement] = STATE(1332), - [sym_assert_statement] = STATE(1332), - [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1156), - [sym_return_statement] = STATE(1332), - [sym_delete_statement] = STATE(1332), - [sym_raise_statement] = STATE(1332), - [sym_pass_statement] = STATE(1332), - [sym_break_statement] = STATE(1332), - [sym_continue_statement] = STATE(1332), - [sym_list_splat] = STATE(1520), - [sym_dictionary_splat] = STATE(1520), - [sym_global_statement] = STATE(1332), - [sym_nonlocal_statement] = STATE(1332), - [sym_exec_statement] = STATE(1332), - [sym_type_alias_statement] = STATE(1332), - [sym_expression_list] = STATE(1522), - [sym_pattern] = STATE(1017), - [sym_tuple_pattern] = STATE(1001), - [sym_list_pattern] = STATE(1001), - [sym_list_splat_pattern] = STATE(1001), - [sym_expression] = STATE(1176), - [sym_primary_expression] = STATE(765), - [sym_not_operator] = STATE(1156), - [sym_boolean_operator] = STATE(1156), - [sym_binary_operator] = STATE(920), - [sym_unary_operator] = STATE(920), - [sym_comparison_operator] = STATE(1156), - [sym_lambda] = STATE(1156), - [sym_assignment] = STATE(1522), - [sym_augmented_assignment] = STATE(1522), - [sym_pattern_list] = STATE(1026), - [sym_yield] = STATE(1522), - [sym_attribute] = STATE(582), - [sym_subscript] = STATE(582), - [sym_call] = STATE(920), - [sym_list] = STATE(920), - [sym_set] = STATE(920), - [sym_tuple] = STATE(920), - [sym_dictionary] = STATE(920), - [sym_list_comprehension] = STATE(920), - [sym_dictionary_comprehension] = STATE(920), - [sym_set_comprehension] = STATE(920), - [sym_generator_expression] = STATE(920), - [sym_parenthesized_expression] = STATE(920), - [sym_conditional_expression] = STATE(1156), - [sym_concatenated_string] = STATE(920), - [sym_string] = STATE(775), - [sym_concatenated_template_string] = STATE(920), - [sym_template_string] = STATE(769), - [sym_await] = STATE(920), + [sym__simple_statements] = STATE(483), + [sym_import_statement] = STATE(1346), + [sym_future_import_statement] = STATE(1346), + [sym_import_from_statement] = STATE(1346), + [sym_print_statement] = STATE(1346), + [sym_assert_statement] = STATE(1346), + [sym_expression_statement] = STATE(1346), + [sym_named_expression] = STATE(1126), + [sym_return_statement] = STATE(1346), + [sym_delete_statement] = STATE(1346), + [sym_raise_statement] = STATE(1346), + [sym_pass_statement] = STATE(1346), + [sym_break_statement] = STATE(1346), + [sym_continue_statement] = STATE(1346), + [sym_list_splat] = STATE(1590), + [sym_dictionary_splat] = STATE(1590), + [sym_global_statement] = STATE(1346), + [sym_nonlocal_statement] = STATE(1346), + [sym_exec_statement] = STATE(1346), + [sym_type_alias_statement] = STATE(1346), + [sym_expression_list] = STATE(1545), + [sym_pattern] = STATE(1020), + [sym_tuple_pattern] = STATE(1005), + [sym_list_pattern] = STATE(1005), + [sym_list_splat_pattern] = STATE(1005), + [sym_expression] = STATE(1191), + [sym_primary_expression] = STATE(773), + [sym_not_operator] = STATE(1126), + [sym_boolean_operator] = STATE(1126), + [sym_binary_operator] = STATE(950), + [sym_unary_operator] = STATE(950), + [sym_comparison_operator] = STATE(1126), + [sym_lambda] = STATE(1126), + [sym_assignment] = STATE(1545), + [sym_augmented_assignment] = STATE(1545), + [sym_pattern_list] = STATE(1030), + [sym_yield] = STATE(1545), + [sym_attribute] = STATE(614), + [sym_subscript] = STATE(614), + [sym_call] = STATE(950), + [sym_list] = STATE(950), + [sym_set] = STATE(950), + [sym_tuple] = STATE(950), + [sym_dictionary] = STATE(950), + [sym_list_comprehension] = STATE(950), + [sym_dictionary_comprehension] = STATE(950), + [sym_set_comprehension] = STATE(950), + [sym_generator_expression] = STATE(950), + [sym_parenthesized_expression] = STATE(950), + [sym_conditional_expression] = STATE(1126), + [sym_concatenated_string] = STATE(950), + [sym_string] = STATE(779), + [sym_concatenated_template_string] = STATE(950), + [sym_template_string] = STATE(772), + [sym_await] = STATE(950), [sym_identifier] = ACTIONS(7), [anon_sym_lazy] = ACTIONS(9), [anon_sym_import] = ACTIONS(11), @@ -16908,48 +16950,342 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__template_string_start] = ACTIONS(85), }, [STATE(75)] = { - [sym_chevron] = STATE(1370), - [sym_named_expression] = STATE(1156), - [sym_expression] = STATE(1181), - [sym_primary_expression] = STATE(765), - [sym_not_operator] = STATE(1156), - [sym_boolean_operator] = STATE(1156), - [sym_binary_operator] = STATE(920), - [sym_unary_operator] = STATE(920), - [sym_comparison_operator] = STATE(1156), - [sym_lambda] = STATE(1156), - [sym_attribute] = STATE(920), - [sym_subscript] = STATE(920), - [sym_call] = STATE(920), - [sym_list] = STATE(920), - [sym_set] = STATE(920), - [sym_tuple] = STATE(920), - [sym_dictionary] = STATE(920), - [sym_list_comprehension] = STATE(920), - [sym_dictionary_comprehension] = STATE(920), - [sym_set_comprehension] = STATE(920), - [sym_generator_expression] = STATE(920), - [sym_parenthesized_expression] = STATE(920), - [sym_conditional_expression] = STATE(1156), - [sym_concatenated_string] = STATE(920), - [sym_string] = STATE(775), - [sym_concatenated_template_string] = STATE(920), - [sym_template_string] = STATE(769), - [sym_await] = STATE(920), - [sym_identifier] = ACTIONS(349), - [anon_sym_lazy] = ACTIONS(351), + [sym__simple_statements] = STATE(551), + [sym_import_statement] = STATE(1345), + [sym_future_import_statement] = STATE(1345), + [sym_import_from_statement] = STATE(1345), + [sym_print_statement] = STATE(1345), + [sym_assert_statement] = STATE(1345), + [sym_expression_statement] = STATE(1345), + [sym_named_expression] = STATE(1126), + [sym_return_statement] = STATE(1345), + [sym_delete_statement] = STATE(1345), + [sym_raise_statement] = STATE(1345), + [sym_pass_statement] = STATE(1345), + [sym_break_statement] = STATE(1345), + [sym_continue_statement] = STATE(1345), + [sym_list_splat] = STATE(1590), + [sym_dictionary_splat] = STATE(1590), + [sym_global_statement] = STATE(1345), + [sym_nonlocal_statement] = STATE(1345), + [sym_exec_statement] = STATE(1345), + [sym_type_alias_statement] = STATE(1345), + [sym_expression_list] = STATE(1545), + [sym_pattern] = STATE(1020), + [sym_tuple_pattern] = STATE(1005), + [sym_list_pattern] = STATE(1005), + [sym_list_splat_pattern] = STATE(1005), + [sym_expression] = STATE(1191), + [sym_primary_expression] = STATE(773), + [sym_not_operator] = STATE(1126), + [sym_boolean_operator] = STATE(1126), + [sym_binary_operator] = STATE(950), + [sym_unary_operator] = STATE(950), + [sym_comparison_operator] = STATE(1126), + [sym_lambda] = STATE(1126), + [sym_assignment] = STATE(1545), + [sym_augmented_assignment] = STATE(1545), + [sym_pattern_list] = STATE(1030), + [sym_yield] = STATE(1545), + [sym_attribute] = STATE(614), + [sym_subscript] = STATE(614), + [sym_call] = STATE(950), + [sym_list] = STATE(950), + [sym_set] = STATE(950), + [sym_tuple] = STATE(950), + [sym_dictionary] = STATE(950), + [sym_list_comprehension] = STATE(950), + [sym_dictionary_comprehension] = STATE(950), + [sym_set_comprehension] = STATE(950), + [sym_generator_expression] = STATE(950), + [sym_parenthesized_expression] = STATE(950), + [sym_conditional_expression] = STATE(1126), + [sym_concatenated_string] = STATE(950), + [sym_string] = STATE(779), + [sym_concatenated_template_string] = STATE(950), + [sym_template_string] = STATE(772), + [sym_await] = STATE(950), + [sym_identifier] = ACTIONS(7), + [anon_sym_lazy] = ACTIONS(9), + [anon_sym_import] = ACTIONS(11), + [anon_sym_from] = ACTIONS(13), + [anon_sym_LPAREN] = ACTIONS(15), + [anon_sym_STAR] = ACTIONS(17), + [anon_sym_print] = ACTIONS(19), + [anon_sym_assert] = ACTIONS(21), + [anon_sym_return] = ACTIONS(23), + [anon_sym_del] = ACTIONS(25), + [anon_sym_raise] = ACTIONS(27), + [anon_sym_pass] = ACTIONS(29), + [anon_sym_break] = ACTIONS(31), + [anon_sym_continue] = ACTIONS(33), + [anon_sym_async] = ACTIONS(319), + [anon_sym_match] = ACTIONS(319), + [anon_sym_DASH] = ACTIONS(49), + [anon_sym_PLUS] = ACTIONS(49), + [anon_sym_LBRACK] = ACTIONS(51), + [anon_sym_LBRACE] = ACTIONS(53), + [anon_sym_STAR_STAR] = ACTIONS(55), + [anon_sym_global] = ACTIONS(59), + [anon_sym_nonlocal] = ACTIONS(61), + [anon_sym_exec] = ACTIONS(63), + [anon_sym_type] = ACTIONS(65), + [anon_sym_not] = ACTIONS(71), + [anon_sym_TILDE] = ACTIONS(49), + [anon_sym_lambda] = ACTIONS(73), + [anon_sym_yield] = ACTIONS(75), + [sym_ellipsis] = ACTIONS(77), + [sym_integer] = ACTIONS(79), + [sym_float] = ACTIONS(77), + [anon_sym_await] = ACTIONS(81), + [sym_true] = ACTIONS(79), + [sym_false] = ACTIONS(79), + [sym_none] = ACTIONS(79), + [sym_comment] = ACTIONS(3), + [sym__newline] = ACTIONS(349), + [sym__indent] = ACTIONS(351), + [sym__string_start] = ACTIONS(83), + [sym__template_string_start] = ACTIONS(85), + }, + [STATE(76)] = { + [sym__simple_statements] = STATE(594), + [sym_import_statement] = STATE(1346), + [sym_future_import_statement] = STATE(1346), + [sym_import_from_statement] = STATE(1346), + [sym_print_statement] = STATE(1346), + [sym_assert_statement] = STATE(1346), + [sym_expression_statement] = STATE(1346), + [sym_named_expression] = STATE(1126), + [sym_return_statement] = STATE(1346), + [sym_delete_statement] = STATE(1346), + [sym_raise_statement] = STATE(1346), + [sym_pass_statement] = STATE(1346), + [sym_break_statement] = STATE(1346), + [sym_continue_statement] = STATE(1346), + [sym_list_splat] = STATE(1590), + [sym_dictionary_splat] = STATE(1590), + [sym_global_statement] = STATE(1346), + [sym_nonlocal_statement] = STATE(1346), + [sym_exec_statement] = STATE(1346), + [sym_type_alias_statement] = STATE(1346), + [sym_expression_list] = STATE(1545), + [sym_pattern] = STATE(1020), + [sym_tuple_pattern] = STATE(1005), + [sym_list_pattern] = STATE(1005), + [sym_list_splat_pattern] = STATE(1005), + [sym_expression] = STATE(1191), + [sym_primary_expression] = STATE(773), + [sym_not_operator] = STATE(1126), + [sym_boolean_operator] = STATE(1126), + [sym_binary_operator] = STATE(950), + [sym_unary_operator] = STATE(950), + [sym_comparison_operator] = STATE(1126), + [sym_lambda] = STATE(1126), + [sym_assignment] = STATE(1545), + [sym_augmented_assignment] = STATE(1545), + [sym_pattern_list] = STATE(1030), + [sym_yield] = STATE(1545), + [sym_attribute] = STATE(614), + [sym_subscript] = STATE(614), + [sym_call] = STATE(950), + [sym_list] = STATE(950), + [sym_set] = STATE(950), + [sym_tuple] = STATE(950), + [sym_dictionary] = STATE(950), + [sym_list_comprehension] = STATE(950), + [sym_dictionary_comprehension] = STATE(950), + [sym_set_comprehension] = STATE(950), + [sym_generator_expression] = STATE(950), + [sym_parenthesized_expression] = STATE(950), + [sym_conditional_expression] = STATE(1126), + [sym_concatenated_string] = STATE(950), + [sym_string] = STATE(779), + [sym_concatenated_template_string] = STATE(950), + [sym_template_string] = STATE(772), + [sym_await] = STATE(950), + [sym_identifier] = ACTIONS(7), + [anon_sym_lazy] = ACTIONS(9), + [anon_sym_import] = ACTIONS(11), + [anon_sym_from] = ACTIONS(13), + [anon_sym_LPAREN] = ACTIONS(15), + [anon_sym_STAR] = ACTIONS(17), + [anon_sym_print] = ACTIONS(19), + [anon_sym_assert] = ACTIONS(21), + [anon_sym_return] = ACTIONS(23), + [anon_sym_del] = ACTIONS(25), + [anon_sym_raise] = ACTIONS(27), + [anon_sym_pass] = ACTIONS(29), + [anon_sym_break] = ACTIONS(31), + [anon_sym_continue] = ACTIONS(33), + [anon_sym_async] = ACTIONS(319), + [anon_sym_match] = ACTIONS(319), + [anon_sym_DASH] = ACTIONS(49), + [anon_sym_PLUS] = ACTIONS(49), + [anon_sym_LBRACK] = ACTIONS(51), + [anon_sym_LBRACE] = ACTIONS(53), + [anon_sym_STAR_STAR] = ACTIONS(55), + [anon_sym_global] = ACTIONS(59), + [anon_sym_nonlocal] = ACTIONS(61), + [anon_sym_exec] = ACTIONS(63), + [anon_sym_type] = ACTIONS(65), + [anon_sym_not] = ACTIONS(71), + [anon_sym_TILDE] = ACTIONS(49), + [anon_sym_lambda] = ACTIONS(73), + [anon_sym_yield] = ACTIONS(75), + [sym_ellipsis] = ACTIONS(77), + [sym_integer] = ACTIONS(79), + [sym_float] = ACTIONS(77), + [anon_sym_await] = ACTIONS(81), + [sym_true] = ACTIONS(79), + [sym_false] = ACTIONS(79), + [sym_none] = ACTIONS(79), + [sym_comment] = ACTIONS(3), + [sym__newline] = ACTIONS(353), + [sym__indent] = ACTIONS(355), + [sym__string_start] = ACTIONS(83), + [sym__template_string_start] = ACTIONS(85), + }, + [STATE(77)] = { + [sym__simple_statements] = STATE(531), + [sym_import_statement] = STATE(1346), + [sym_future_import_statement] = STATE(1346), + [sym_import_from_statement] = STATE(1346), + [sym_print_statement] = STATE(1346), + [sym_assert_statement] = STATE(1346), + [sym_expression_statement] = STATE(1346), + [sym_named_expression] = STATE(1126), + [sym_return_statement] = STATE(1346), + [sym_delete_statement] = STATE(1346), + [sym_raise_statement] = STATE(1346), + [sym_pass_statement] = STATE(1346), + [sym_break_statement] = STATE(1346), + [sym_continue_statement] = STATE(1346), + [sym_list_splat] = STATE(1590), + [sym_dictionary_splat] = STATE(1590), + [sym_global_statement] = STATE(1346), + [sym_nonlocal_statement] = STATE(1346), + [sym_exec_statement] = STATE(1346), + [sym_type_alias_statement] = STATE(1346), + [sym_expression_list] = STATE(1545), + [sym_pattern] = STATE(1020), + [sym_tuple_pattern] = STATE(1005), + [sym_list_pattern] = STATE(1005), + [sym_list_splat_pattern] = STATE(1005), + [sym_expression] = STATE(1191), + [sym_primary_expression] = STATE(773), + [sym_not_operator] = STATE(1126), + [sym_boolean_operator] = STATE(1126), + [sym_binary_operator] = STATE(950), + [sym_unary_operator] = STATE(950), + [sym_comparison_operator] = STATE(1126), + [sym_lambda] = STATE(1126), + [sym_assignment] = STATE(1545), + [sym_augmented_assignment] = STATE(1545), + [sym_pattern_list] = STATE(1030), + [sym_yield] = STATE(1545), + [sym_attribute] = STATE(614), + [sym_subscript] = STATE(614), + [sym_call] = STATE(950), + [sym_list] = STATE(950), + [sym_set] = STATE(950), + [sym_tuple] = STATE(950), + [sym_dictionary] = STATE(950), + [sym_list_comprehension] = STATE(950), + [sym_dictionary_comprehension] = STATE(950), + [sym_set_comprehension] = STATE(950), + [sym_generator_expression] = STATE(950), + [sym_parenthesized_expression] = STATE(950), + [sym_conditional_expression] = STATE(1126), + [sym_concatenated_string] = STATE(950), + [sym_string] = STATE(779), + [sym_concatenated_template_string] = STATE(950), + [sym_template_string] = STATE(772), + [sym_await] = STATE(950), + [sym_identifier] = ACTIONS(7), + [anon_sym_lazy] = ACTIONS(9), + [anon_sym_import] = ACTIONS(11), + [anon_sym_from] = ACTIONS(13), + [anon_sym_LPAREN] = ACTIONS(15), + [anon_sym_STAR] = ACTIONS(17), + [anon_sym_print] = ACTIONS(19), + [anon_sym_assert] = ACTIONS(21), + [anon_sym_return] = ACTIONS(23), + [anon_sym_del] = ACTIONS(25), + [anon_sym_raise] = ACTIONS(27), + [anon_sym_pass] = ACTIONS(29), + [anon_sym_break] = ACTIONS(31), + [anon_sym_continue] = ACTIONS(33), + [anon_sym_async] = ACTIONS(319), + [anon_sym_match] = ACTIONS(319), + [anon_sym_DASH] = ACTIONS(49), + [anon_sym_PLUS] = ACTIONS(49), + [anon_sym_LBRACK] = ACTIONS(51), + [anon_sym_LBRACE] = ACTIONS(53), + [anon_sym_STAR_STAR] = ACTIONS(55), + [anon_sym_global] = ACTIONS(59), + [anon_sym_nonlocal] = ACTIONS(61), + [anon_sym_exec] = ACTIONS(63), + [anon_sym_type] = ACTIONS(65), + [anon_sym_not] = ACTIONS(71), + [anon_sym_TILDE] = ACTIONS(49), + [anon_sym_lambda] = ACTIONS(73), + [anon_sym_yield] = ACTIONS(75), + [sym_ellipsis] = ACTIONS(77), + [sym_integer] = ACTIONS(79), + [sym_float] = ACTIONS(77), + [anon_sym_await] = ACTIONS(81), + [sym_true] = ACTIONS(79), + [sym_false] = ACTIONS(79), + [sym_none] = ACTIONS(79), + [sym_comment] = ACTIONS(3), + [sym__newline] = ACTIONS(357), + [sym__indent] = ACTIONS(359), + [sym__string_start] = ACTIONS(83), + [sym__template_string_start] = ACTIONS(85), + }, + [STATE(78)] = { + [sym_chevron] = STATE(1323), + [sym_named_expression] = STATE(1126), + [sym_expression] = STATE(1223), + [sym_primary_expression] = STATE(773), + [sym_not_operator] = STATE(1126), + [sym_boolean_operator] = STATE(1126), + [sym_binary_operator] = STATE(950), + [sym_unary_operator] = STATE(950), + [sym_comparison_operator] = STATE(1126), + [sym_lambda] = STATE(1126), + [sym_attribute] = STATE(950), + [sym_subscript] = STATE(950), + [sym_call] = STATE(950), + [sym_list] = STATE(950), + [sym_set] = STATE(950), + [sym_tuple] = STATE(950), + [sym_dictionary] = STATE(950), + [sym_list_comprehension] = STATE(950), + [sym_dictionary_comprehension] = STATE(950), + [sym_set_comprehension] = STATE(950), + [sym_generator_expression] = STATE(950), + [sym_parenthesized_expression] = STATE(950), + [sym_conditional_expression] = STATE(1126), + [sym_concatenated_string] = STATE(950), + [sym_string] = STATE(779), + [sym_concatenated_template_string] = STATE(950), + [sym_template_string] = STATE(772), + [sym_await] = STATE(950), + [sym_identifier] = ACTIONS(361), + [anon_sym_lazy] = ACTIONS(363), [anon_sym_DOT] = ACTIONS(272), [anon_sym_LPAREN] = ACTIONS(303), [anon_sym_COMMA] = ACTIONS(277), [anon_sym_STAR] = ACTIONS(272), - [anon_sym_print] = ACTIONS(351), - [anon_sym_GT_GT] = ACTIONS(353), + [anon_sym_print] = ACTIONS(363), + [anon_sym_GT_GT] = ACTIONS(365), [anon_sym_COLON_EQ] = ACTIONS(283), [anon_sym_if] = ACTIONS(272), [anon_sym_COLON] = ACTIONS(285), - [anon_sym_async] = ACTIONS(351), + [anon_sym_async] = ACTIONS(363), [anon_sym_in] = ACTIONS(272), - [anon_sym_match] = ACTIONS(351), + [anon_sym_match] = ACTIONS(363), [anon_sym_PIPE] = ACTIONS(272), [anon_sym_DASH] = ACTIONS(272), [anon_sym_PLUS] = ACTIONS(272), @@ -16957,8 +17293,8 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_LBRACE] = ACTIONS(53), [anon_sym_STAR_STAR] = ACTIONS(272), [anon_sym_EQ] = ACTIONS(285), - [anon_sym_exec] = ACTIONS(351), - [anon_sym_type] = ACTIONS(351), + [anon_sym_exec] = ACTIONS(363), + [anon_sym_type] = ACTIONS(363), [anon_sym_AT] = ACTIONS(272), [anon_sym_not] = ACTIONS(272), [anon_sym_and] = ACTIONS(272), @@ -16995,7 +17331,7 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_ellipsis] = ACTIONS(77), [sym_integer] = ACTIONS(79), [sym_float] = ACTIONS(77), - [anon_sym_await] = ACTIONS(355), + [anon_sym_await] = ACTIONS(367), [sym_true] = ACTIONS(79), [sym_false] = ACTIONS(79), [sym_none] = ACTIONS(79), @@ -17005,62 +17341,62 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(83), [sym__template_string_start] = ACTIONS(85), }, - [STATE(76)] = { - [sym__simple_statements] = STATE(513), - [sym_import_statement] = STATE(1332), - [sym_future_import_statement] = STATE(1332), - [sym_import_from_statement] = STATE(1332), - [sym_print_statement] = STATE(1332), - [sym_assert_statement] = STATE(1332), - [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1156), - [sym_return_statement] = STATE(1332), - [sym_delete_statement] = STATE(1332), - [sym_raise_statement] = STATE(1332), - [sym_pass_statement] = STATE(1332), - [sym_break_statement] = STATE(1332), - [sym_continue_statement] = STATE(1332), - [sym_list_splat] = STATE(1520), - [sym_dictionary_splat] = STATE(1520), - [sym_global_statement] = STATE(1332), - [sym_nonlocal_statement] = STATE(1332), - [sym_exec_statement] = STATE(1332), - [sym_type_alias_statement] = STATE(1332), - [sym_expression_list] = STATE(1522), - [sym_pattern] = STATE(1017), - [sym_tuple_pattern] = STATE(1001), - [sym_list_pattern] = STATE(1001), - [sym_list_splat_pattern] = STATE(1001), - [sym_expression] = STATE(1176), - [sym_primary_expression] = STATE(765), - [sym_not_operator] = STATE(1156), - [sym_boolean_operator] = STATE(1156), - [sym_binary_operator] = STATE(920), - [sym_unary_operator] = STATE(920), - [sym_comparison_operator] = STATE(1156), - [sym_lambda] = STATE(1156), - [sym_assignment] = STATE(1522), - [sym_augmented_assignment] = STATE(1522), - [sym_pattern_list] = STATE(1026), - [sym_yield] = STATE(1522), - [sym_attribute] = STATE(582), - [sym_subscript] = STATE(582), - [sym_call] = STATE(920), - [sym_list] = STATE(920), - [sym_set] = STATE(920), - [sym_tuple] = STATE(920), - [sym_dictionary] = STATE(920), - [sym_list_comprehension] = STATE(920), - [sym_dictionary_comprehension] = STATE(920), - [sym_set_comprehension] = STATE(920), - [sym_generator_expression] = STATE(920), - [sym_parenthesized_expression] = STATE(920), - [sym_conditional_expression] = STATE(1156), - [sym_concatenated_string] = STATE(920), - [sym_string] = STATE(775), - [sym_concatenated_template_string] = STATE(920), - [sym_template_string] = STATE(769), - [sym_await] = STATE(920), + [STATE(79)] = { + [sym__simple_statements] = STATE(561), + [sym_import_statement] = STATE(1345), + [sym_future_import_statement] = STATE(1345), + [sym_import_from_statement] = STATE(1345), + [sym_print_statement] = STATE(1345), + [sym_assert_statement] = STATE(1345), + [sym_expression_statement] = STATE(1345), + [sym_named_expression] = STATE(1126), + [sym_return_statement] = STATE(1345), + [sym_delete_statement] = STATE(1345), + [sym_raise_statement] = STATE(1345), + [sym_pass_statement] = STATE(1345), + [sym_break_statement] = STATE(1345), + [sym_continue_statement] = STATE(1345), + [sym_list_splat] = STATE(1590), + [sym_dictionary_splat] = STATE(1590), + [sym_global_statement] = STATE(1345), + [sym_nonlocal_statement] = STATE(1345), + [sym_exec_statement] = STATE(1345), + [sym_type_alias_statement] = STATE(1345), + [sym_expression_list] = STATE(1545), + [sym_pattern] = STATE(1020), + [sym_tuple_pattern] = STATE(1005), + [sym_list_pattern] = STATE(1005), + [sym_list_splat_pattern] = STATE(1005), + [sym_expression] = STATE(1191), + [sym_primary_expression] = STATE(773), + [sym_not_operator] = STATE(1126), + [sym_boolean_operator] = STATE(1126), + [sym_binary_operator] = STATE(950), + [sym_unary_operator] = STATE(950), + [sym_comparison_operator] = STATE(1126), + [sym_lambda] = STATE(1126), + [sym_assignment] = STATE(1545), + [sym_augmented_assignment] = STATE(1545), + [sym_pattern_list] = STATE(1030), + [sym_yield] = STATE(1545), + [sym_attribute] = STATE(614), + [sym_subscript] = STATE(614), + [sym_call] = STATE(950), + [sym_list] = STATE(950), + [sym_set] = STATE(950), + [sym_tuple] = STATE(950), + [sym_dictionary] = STATE(950), + [sym_list_comprehension] = STATE(950), + [sym_dictionary_comprehension] = STATE(950), + [sym_set_comprehension] = STATE(950), + [sym_generator_expression] = STATE(950), + [sym_parenthesized_expression] = STATE(950), + [sym_conditional_expression] = STATE(1126), + [sym_concatenated_string] = STATE(950), + [sym_string] = STATE(779), + [sym_concatenated_template_string] = STATE(950), + [sym_template_string] = STATE(772), + [sym_await] = STATE(950), [sym_identifier] = ACTIONS(7), [anon_sym_lazy] = ACTIONS(9), [anon_sym_import] = ACTIONS(11), @@ -17098,67 +17434,67 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_false] = ACTIONS(79), [sym_none] = ACTIONS(79), [sym_comment] = ACTIONS(3), - [sym__newline] = ACTIONS(357), - [sym__indent] = ACTIONS(359), + [sym__newline] = ACTIONS(369), + [sym__indent] = ACTIONS(371), [sym__string_start] = ACTIONS(83), [sym__template_string_start] = ACTIONS(85), }, - [STATE(77)] = { - [sym__simple_statements] = STATE(518), - [sym_import_statement] = STATE(1332), - [sym_future_import_statement] = STATE(1332), - [sym_import_from_statement] = STATE(1332), - [sym_print_statement] = STATE(1332), - [sym_assert_statement] = STATE(1332), - [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1156), - [sym_return_statement] = STATE(1332), - [sym_delete_statement] = STATE(1332), - [sym_raise_statement] = STATE(1332), - [sym_pass_statement] = STATE(1332), - [sym_break_statement] = STATE(1332), - [sym_continue_statement] = STATE(1332), - [sym_list_splat] = STATE(1520), - [sym_dictionary_splat] = STATE(1520), - [sym_global_statement] = STATE(1332), - [sym_nonlocal_statement] = STATE(1332), - [sym_exec_statement] = STATE(1332), - [sym_type_alias_statement] = STATE(1332), - [sym_expression_list] = STATE(1522), - [sym_pattern] = STATE(1017), - [sym_tuple_pattern] = STATE(1001), - [sym_list_pattern] = STATE(1001), - [sym_list_splat_pattern] = STATE(1001), - [sym_expression] = STATE(1176), - [sym_primary_expression] = STATE(765), - [sym_not_operator] = STATE(1156), - [sym_boolean_operator] = STATE(1156), - [sym_binary_operator] = STATE(920), - [sym_unary_operator] = STATE(920), - [sym_comparison_operator] = STATE(1156), - [sym_lambda] = STATE(1156), - [sym_assignment] = STATE(1522), - [sym_augmented_assignment] = STATE(1522), - [sym_pattern_list] = STATE(1026), - [sym_yield] = STATE(1522), - [sym_attribute] = STATE(582), - [sym_subscript] = STATE(582), - [sym_call] = STATE(920), - [sym_list] = STATE(920), - [sym_set] = STATE(920), - [sym_tuple] = STATE(920), - [sym_dictionary] = STATE(920), - [sym_list_comprehension] = STATE(920), - [sym_dictionary_comprehension] = STATE(920), - [sym_set_comprehension] = STATE(920), - [sym_generator_expression] = STATE(920), - [sym_parenthesized_expression] = STATE(920), - [sym_conditional_expression] = STATE(1156), - [sym_concatenated_string] = STATE(920), - [sym_string] = STATE(775), - [sym_concatenated_template_string] = STATE(920), - [sym_template_string] = STATE(769), - [sym_await] = STATE(920), + [STATE(80)] = { + [sym__simple_statements] = STATE(562), + [sym_import_statement] = STATE(1345), + [sym_future_import_statement] = STATE(1345), + [sym_import_from_statement] = STATE(1345), + [sym_print_statement] = STATE(1345), + [sym_assert_statement] = STATE(1345), + [sym_expression_statement] = STATE(1345), + [sym_named_expression] = STATE(1126), + [sym_return_statement] = STATE(1345), + [sym_delete_statement] = STATE(1345), + [sym_raise_statement] = STATE(1345), + [sym_pass_statement] = STATE(1345), + [sym_break_statement] = STATE(1345), + [sym_continue_statement] = STATE(1345), + [sym_list_splat] = STATE(1590), + [sym_dictionary_splat] = STATE(1590), + [sym_global_statement] = STATE(1345), + [sym_nonlocal_statement] = STATE(1345), + [sym_exec_statement] = STATE(1345), + [sym_type_alias_statement] = STATE(1345), + [sym_expression_list] = STATE(1545), + [sym_pattern] = STATE(1020), + [sym_tuple_pattern] = STATE(1005), + [sym_list_pattern] = STATE(1005), + [sym_list_splat_pattern] = STATE(1005), + [sym_expression] = STATE(1191), + [sym_primary_expression] = STATE(773), + [sym_not_operator] = STATE(1126), + [sym_boolean_operator] = STATE(1126), + [sym_binary_operator] = STATE(950), + [sym_unary_operator] = STATE(950), + [sym_comparison_operator] = STATE(1126), + [sym_lambda] = STATE(1126), + [sym_assignment] = STATE(1545), + [sym_augmented_assignment] = STATE(1545), + [sym_pattern_list] = STATE(1030), + [sym_yield] = STATE(1545), + [sym_attribute] = STATE(614), + [sym_subscript] = STATE(614), + [sym_call] = STATE(950), + [sym_list] = STATE(950), + [sym_set] = STATE(950), + [sym_tuple] = STATE(950), + [sym_dictionary] = STATE(950), + [sym_list_comprehension] = STATE(950), + [sym_dictionary_comprehension] = STATE(950), + [sym_set_comprehension] = STATE(950), + [sym_generator_expression] = STATE(950), + [sym_parenthesized_expression] = STATE(950), + [sym_conditional_expression] = STATE(1126), + [sym_concatenated_string] = STATE(950), + [sym_string] = STATE(779), + [sym_concatenated_template_string] = STATE(950), + [sym_template_string] = STATE(772), + [sym_await] = STATE(950), [sym_identifier] = ACTIONS(7), [anon_sym_lazy] = ACTIONS(9), [anon_sym_import] = ACTIONS(11), @@ -17196,67 +17532,67 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_false] = ACTIONS(79), [sym_none] = ACTIONS(79), [sym_comment] = ACTIONS(3), - [sym__newline] = ACTIONS(361), - [sym__indent] = ACTIONS(363), + [sym__newline] = ACTIONS(373), + [sym__indent] = ACTIONS(375), [sym__string_start] = ACTIONS(83), [sym__template_string_start] = ACTIONS(85), }, - [STATE(78)] = { - [sym__simple_statements] = STATE(500), - [sym_import_statement] = STATE(1301), - [sym_future_import_statement] = STATE(1301), - [sym_import_from_statement] = STATE(1301), - [sym_print_statement] = STATE(1301), - [sym_assert_statement] = STATE(1301), - [sym_expression_statement] = STATE(1301), - [sym_named_expression] = STATE(1156), - [sym_return_statement] = STATE(1301), - [sym_delete_statement] = STATE(1301), - [sym_raise_statement] = STATE(1301), - [sym_pass_statement] = STATE(1301), - [sym_break_statement] = STATE(1301), - [sym_continue_statement] = STATE(1301), - [sym_list_splat] = STATE(1520), - [sym_dictionary_splat] = STATE(1520), - [sym_global_statement] = STATE(1301), - [sym_nonlocal_statement] = STATE(1301), - [sym_exec_statement] = STATE(1301), - [sym_type_alias_statement] = STATE(1301), - [sym_expression_list] = STATE(1522), - [sym_pattern] = STATE(1017), - [sym_tuple_pattern] = STATE(1001), - [sym_list_pattern] = STATE(1001), - [sym_list_splat_pattern] = STATE(1001), - [sym_expression] = STATE(1176), - [sym_primary_expression] = STATE(765), - [sym_not_operator] = STATE(1156), - [sym_boolean_operator] = STATE(1156), - [sym_binary_operator] = STATE(920), - [sym_unary_operator] = STATE(920), - [sym_comparison_operator] = STATE(1156), - [sym_lambda] = STATE(1156), - [sym_assignment] = STATE(1522), - [sym_augmented_assignment] = STATE(1522), - [sym_pattern_list] = STATE(1026), - [sym_yield] = STATE(1522), - [sym_attribute] = STATE(582), - [sym_subscript] = STATE(582), - [sym_call] = STATE(920), - [sym_list] = STATE(920), - [sym_set] = STATE(920), - [sym_tuple] = STATE(920), - [sym_dictionary] = STATE(920), - [sym_list_comprehension] = STATE(920), - [sym_dictionary_comprehension] = STATE(920), - [sym_set_comprehension] = STATE(920), - [sym_generator_expression] = STATE(920), - [sym_parenthesized_expression] = STATE(920), - [sym_conditional_expression] = STATE(1156), - [sym_concatenated_string] = STATE(920), - [sym_string] = STATE(775), - [sym_concatenated_template_string] = STATE(920), - [sym_template_string] = STATE(769), - [sym_await] = STATE(920), + [STATE(81)] = { + [sym__simple_statements] = STATE(441), + [sym_import_statement] = STATE(1346), + [sym_future_import_statement] = STATE(1346), + [sym_import_from_statement] = STATE(1346), + [sym_print_statement] = STATE(1346), + [sym_assert_statement] = STATE(1346), + [sym_expression_statement] = STATE(1346), + [sym_named_expression] = STATE(1126), + [sym_return_statement] = STATE(1346), + [sym_delete_statement] = STATE(1346), + [sym_raise_statement] = STATE(1346), + [sym_pass_statement] = STATE(1346), + [sym_break_statement] = STATE(1346), + [sym_continue_statement] = STATE(1346), + [sym_list_splat] = STATE(1590), + [sym_dictionary_splat] = STATE(1590), + [sym_global_statement] = STATE(1346), + [sym_nonlocal_statement] = STATE(1346), + [sym_exec_statement] = STATE(1346), + [sym_type_alias_statement] = STATE(1346), + [sym_expression_list] = STATE(1545), + [sym_pattern] = STATE(1020), + [sym_tuple_pattern] = STATE(1005), + [sym_list_pattern] = STATE(1005), + [sym_list_splat_pattern] = STATE(1005), + [sym_expression] = STATE(1191), + [sym_primary_expression] = STATE(773), + [sym_not_operator] = STATE(1126), + [sym_boolean_operator] = STATE(1126), + [sym_binary_operator] = STATE(950), + [sym_unary_operator] = STATE(950), + [sym_comparison_operator] = STATE(1126), + [sym_lambda] = STATE(1126), + [sym_assignment] = STATE(1545), + [sym_augmented_assignment] = STATE(1545), + [sym_pattern_list] = STATE(1030), + [sym_yield] = STATE(1545), + [sym_attribute] = STATE(614), + [sym_subscript] = STATE(614), + [sym_call] = STATE(950), + [sym_list] = STATE(950), + [sym_set] = STATE(950), + [sym_tuple] = STATE(950), + [sym_dictionary] = STATE(950), + [sym_list_comprehension] = STATE(950), + [sym_dictionary_comprehension] = STATE(950), + [sym_set_comprehension] = STATE(950), + [sym_generator_expression] = STATE(950), + [sym_parenthesized_expression] = STATE(950), + [sym_conditional_expression] = STATE(1126), + [sym_concatenated_string] = STATE(950), + [sym_string] = STATE(779), + [sym_concatenated_template_string] = STATE(950), + [sym_template_string] = STATE(772), + [sym_await] = STATE(950), [sym_identifier] = ACTIONS(7), [anon_sym_lazy] = ACTIONS(9), [anon_sym_import] = ACTIONS(11), @@ -17294,67 +17630,67 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_false] = ACTIONS(79), [sym_none] = ACTIONS(79), [sym_comment] = ACTIONS(3), - [sym__newline] = ACTIONS(365), - [sym__indent] = ACTIONS(367), + [sym__newline] = ACTIONS(377), + [sym__indent] = ACTIONS(379), [sym__string_start] = ACTIONS(83), [sym__template_string_start] = ACTIONS(85), }, - [STATE(79)] = { - [sym__simple_statements] = STATE(465), - [sym_import_statement] = STATE(1301), - [sym_future_import_statement] = STATE(1301), - [sym_import_from_statement] = STATE(1301), - [sym_print_statement] = STATE(1301), - [sym_assert_statement] = STATE(1301), - [sym_expression_statement] = STATE(1301), - [sym_named_expression] = STATE(1156), - [sym_return_statement] = STATE(1301), - [sym_delete_statement] = STATE(1301), - [sym_raise_statement] = STATE(1301), - [sym_pass_statement] = STATE(1301), - [sym_break_statement] = STATE(1301), - [sym_continue_statement] = STATE(1301), - [sym_list_splat] = STATE(1520), - [sym_dictionary_splat] = STATE(1520), - [sym_global_statement] = STATE(1301), - [sym_nonlocal_statement] = STATE(1301), - [sym_exec_statement] = STATE(1301), - [sym_type_alias_statement] = STATE(1301), - [sym_expression_list] = STATE(1522), - [sym_pattern] = STATE(1017), - [sym_tuple_pattern] = STATE(1001), - [sym_list_pattern] = STATE(1001), - [sym_list_splat_pattern] = STATE(1001), - [sym_expression] = STATE(1176), - [sym_primary_expression] = STATE(765), - [sym_not_operator] = STATE(1156), - [sym_boolean_operator] = STATE(1156), - [sym_binary_operator] = STATE(920), - [sym_unary_operator] = STATE(920), - [sym_comparison_operator] = STATE(1156), - [sym_lambda] = STATE(1156), - [sym_assignment] = STATE(1522), - [sym_augmented_assignment] = STATE(1522), - [sym_pattern_list] = STATE(1026), - [sym_yield] = STATE(1522), - [sym_attribute] = STATE(582), - [sym_subscript] = STATE(582), - [sym_call] = STATE(920), - [sym_list] = STATE(920), - [sym_set] = STATE(920), - [sym_tuple] = STATE(920), - [sym_dictionary] = STATE(920), - [sym_list_comprehension] = STATE(920), - [sym_dictionary_comprehension] = STATE(920), - [sym_set_comprehension] = STATE(920), - [sym_generator_expression] = STATE(920), - [sym_parenthesized_expression] = STATE(920), - [sym_conditional_expression] = STATE(1156), - [sym_concatenated_string] = STATE(920), - [sym_string] = STATE(775), - [sym_concatenated_template_string] = STATE(920), - [sym_template_string] = STATE(769), - [sym_await] = STATE(920), + [STATE(82)] = { + [sym__simple_statements] = STATE(568), + [sym_import_statement] = STATE(1345), + [sym_future_import_statement] = STATE(1345), + [sym_import_from_statement] = STATE(1345), + [sym_print_statement] = STATE(1345), + [sym_assert_statement] = STATE(1345), + [sym_expression_statement] = STATE(1345), + [sym_named_expression] = STATE(1126), + [sym_return_statement] = STATE(1345), + [sym_delete_statement] = STATE(1345), + [sym_raise_statement] = STATE(1345), + [sym_pass_statement] = STATE(1345), + [sym_break_statement] = STATE(1345), + [sym_continue_statement] = STATE(1345), + [sym_list_splat] = STATE(1590), + [sym_dictionary_splat] = STATE(1590), + [sym_global_statement] = STATE(1345), + [sym_nonlocal_statement] = STATE(1345), + [sym_exec_statement] = STATE(1345), + [sym_type_alias_statement] = STATE(1345), + [sym_expression_list] = STATE(1545), + [sym_pattern] = STATE(1020), + [sym_tuple_pattern] = STATE(1005), + [sym_list_pattern] = STATE(1005), + [sym_list_splat_pattern] = STATE(1005), + [sym_expression] = STATE(1191), + [sym_primary_expression] = STATE(773), + [sym_not_operator] = STATE(1126), + [sym_boolean_operator] = STATE(1126), + [sym_binary_operator] = STATE(950), + [sym_unary_operator] = STATE(950), + [sym_comparison_operator] = STATE(1126), + [sym_lambda] = STATE(1126), + [sym_assignment] = STATE(1545), + [sym_augmented_assignment] = STATE(1545), + [sym_pattern_list] = STATE(1030), + [sym_yield] = STATE(1545), + [sym_attribute] = STATE(614), + [sym_subscript] = STATE(614), + [sym_call] = STATE(950), + [sym_list] = STATE(950), + [sym_set] = STATE(950), + [sym_tuple] = STATE(950), + [sym_dictionary] = STATE(950), + [sym_list_comprehension] = STATE(950), + [sym_dictionary_comprehension] = STATE(950), + [sym_set_comprehension] = STATE(950), + [sym_generator_expression] = STATE(950), + [sym_parenthesized_expression] = STATE(950), + [sym_conditional_expression] = STATE(1126), + [sym_concatenated_string] = STATE(950), + [sym_string] = STATE(779), + [sym_concatenated_template_string] = STATE(950), + [sym_template_string] = STATE(772), + [sym_await] = STATE(950), [sym_identifier] = ACTIONS(7), [anon_sym_lazy] = ACTIONS(9), [anon_sym_import] = ACTIONS(11), @@ -17392,67 +17728,263 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_false] = ACTIONS(79), [sym_none] = ACTIONS(79), [sym_comment] = ACTIONS(3), - [sym__newline] = ACTIONS(369), - [sym__indent] = ACTIONS(371), + [sym__newline] = ACTIONS(381), + [sym__indent] = ACTIONS(383), [sym__string_start] = ACTIONS(83), [sym__template_string_start] = ACTIONS(85), }, - [STATE(80)] = { + [STATE(83)] = { + [sym__simple_statements] = STATE(482), + [sym_import_statement] = STATE(1345), + [sym_future_import_statement] = STATE(1345), + [sym_import_from_statement] = STATE(1345), + [sym_print_statement] = STATE(1345), + [sym_assert_statement] = STATE(1345), + [sym_expression_statement] = STATE(1345), + [sym_named_expression] = STATE(1126), + [sym_return_statement] = STATE(1345), + [sym_delete_statement] = STATE(1345), + [sym_raise_statement] = STATE(1345), + [sym_pass_statement] = STATE(1345), + [sym_break_statement] = STATE(1345), + [sym_continue_statement] = STATE(1345), + [sym_list_splat] = STATE(1590), + [sym_dictionary_splat] = STATE(1590), + [sym_global_statement] = STATE(1345), + [sym_nonlocal_statement] = STATE(1345), + [sym_exec_statement] = STATE(1345), + [sym_type_alias_statement] = STATE(1345), + [sym_expression_list] = STATE(1545), + [sym_pattern] = STATE(1020), + [sym_tuple_pattern] = STATE(1005), + [sym_list_pattern] = STATE(1005), + [sym_list_splat_pattern] = STATE(1005), + [sym_expression] = STATE(1191), + [sym_primary_expression] = STATE(773), + [sym_not_operator] = STATE(1126), + [sym_boolean_operator] = STATE(1126), + [sym_binary_operator] = STATE(950), + [sym_unary_operator] = STATE(950), + [sym_comparison_operator] = STATE(1126), + [sym_lambda] = STATE(1126), + [sym_assignment] = STATE(1545), + [sym_augmented_assignment] = STATE(1545), + [sym_pattern_list] = STATE(1030), + [sym_yield] = STATE(1545), + [sym_attribute] = STATE(614), + [sym_subscript] = STATE(614), + [sym_call] = STATE(950), + [sym_list] = STATE(950), + [sym_set] = STATE(950), + [sym_tuple] = STATE(950), + [sym_dictionary] = STATE(950), + [sym_list_comprehension] = STATE(950), + [sym_dictionary_comprehension] = STATE(950), + [sym_set_comprehension] = STATE(950), + [sym_generator_expression] = STATE(950), + [sym_parenthesized_expression] = STATE(950), + [sym_conditional_expression] = STATE(1126), + [sym_concatenated_string] = STATE(950), + [sym_string] = STATE(779), + [sym_concatenated_template_string] = STATE(950), + [sym_template_string] = STATE(772), + [sym_await] = STATE(950), + [sym_identifier] = ACTIONS(7), + [anon_sym_lazy] = ACTIONS(9), + [anon_sym_import] = ACTIONS(11), + [anon_sym_from] = ACTIONS(13), + [anon_sym_LPAREN] = ACTIONS(15), + [anon_sym_STAR] = ACTIONS(17), + [anon_sym_print] = ACTIONS(19), + [anon_sym_assert] = ACTIONS(21), + [anon_sym_return] = ACTIONS(23), + [anon_sym_del] = ACTIONS(25), + [anon_sym_raise] = ACTIONS(27), + [anon_sym_pass] = ACTIONS(29), + [anon_sym_break] = ACTIONS(31), + [anon_sym_continue] = ACTIONS(33), + [anon_sym_async] = ACTIONS(319), + [anon_sym_match] = ACTIONS(319), + [anon_sym_DASH] = ACTIONS(49), + [anon_sym_PLUS] = ACTIONS(49), + [anon_sym_LBRACK] = ACTIONS(51), + [anon_sym_LBRACE] = ACTIONS(53), + [anon_sym_STAR_STAR] = ACTIONS(55), + [anon_sym_global] = ACTIONS(59), + [anon_sym_nonlocal] = ACTIONS(61), + [anon_sym_exec] = ACTIONS(63), + [anon_sym_type] = ACTIONS(65), + [anon_sym_not] = ACTIONS(71), + [anon_sym_TILDE] = ACTIONS(49), + [anon_sym_lambda] = ACTIONS(73), + [anon_sym_yield] = ACTIONS(75), + [sym_ellipsis] = ACTIONS(77), + [sym_integer] = ACTIONS(79), + [sym_float] = ACTIONS(77), + [anon_sym_await] = ACTIONS(81), + [sym_true] = ACTIONS(79), + [sym_false] = ACTIONS(79), + [sym_none] = ACTIONS(79), + [sym_comment] = ACTIONS(3), + [sym__newline] = ACTIONS(385), + [sym__indent] = ACTIONS(387), + [sym__string_start] = ACTIONS(83), + [sym__template_string_start] = ACTIONS(85), + }, + [STATE(84)] = { + [sym__simple_statements] = STATE(448), + [sym_import_statement] = STATE(1345), + [sym_future_import_statement] = STATE(1345), + [sym_import_from_statement] = STATE(1345), + [sym_print_statement] = STATE(1345), + [sym_assert_statement] = STATE(1345), + [sym_expression_statement] = STATE(1345), + [sym_named_expression] = STATE(1126), + [sym_return_statement] = STATE(1345), + [sym_delete_statement] = STATE(1345), + [sym_raise_statement] = STATE(1345), + [sym_pass_statement] = STATE(1345), + [sym_break_statement] = STATE(1345), + [sym_continue_statement] = STATE(1345), + [sym_list_splat] = STATE(1590), + [sym_dictionary_splat] = STATE(1590), + [sym_global_statement] = STATE(1345), + [sym_nonlocal_statement] = STATE(1345), + [sym_exec_statement] = STATE(1345), + [sym_type_alias_statement] = STATE(1345), + [sym_expression_list] = STATE(1545), + [sym_pattern] = STATE(1020), + [sym_tuple_pattern] = STATE(1005), + [sym_list_pattern] = STATE(1005), + [sym_list_splat_pattern] = STATE(1005), + [sym_expression] = STATE(1191), + [sym_primary_expression] = STATE(773), + [sym_not_operator] = STATE(1126), + [sym_boolean_operator] = STATE(1126), + [sym_binary_operator] = STATE(950), + [sym_unary_operator] = STATE(950), + [sym_comparison_operator] = STATE(1126), + [sym_lambda] = STATE(1126), + [sym_assignment] = STATE(1545), + [sym_augmented_assignment] = STATE(1545), + [sym_pattern_list] = STATE(1030), + [sym_yield] = STATE(1545), + [sym_attribute] = STATE(614), + [sym_subscript] = STATE(614), + [sym_call] = STATE(950), + [sym_list] = STATE(950), + [sym_set] = STATE(950), + [sym_tuple] = STATE(950), + [sym_dictionary] = STATE(950), + [sym_list_comprehension] = STATE(950), + [sym_dictionary_comprehension] = STATE(950), + [sym_set_comprehension] = STATE(950), + [sym_generator_expression] = STATE(950), + [sym_parenthesized_expression] = STATE(950), + [sym_conditional_expression] = STATE(1126), + [sym_concatenated_string] = STATE(950), + [sym_string] = STATE(779), + [sym_concatenated_template_string] = STATE(950), + [sym_template_string] = STATE(772), + [sym_await] = STATE(950), + [sym_identifier] = ACTIONS(7), + [anon_sym_lazy] = ACTIONS(9), + [anon_sym_import] = ACTIONS(11), + [anon_sym_from] = ACTIONS(13), + [anon_sym_LPAREN] = ACTIONS(15), + [anon_sym_STAR] = ACTIONS(17), + [anon_sym_print] = ACTIONS(19), + [anon_sym_assert] = ACTIONS(21), + [anon_sym_return] = ACTIONS(23), + [anon_sym_del] = ACTIONS(25), + [anon_sym_raise] = ACTIONS(27), + [anon_sym_pass] = ACTIONS(29), + [anon_sym_break] = ACTIONS(31), + [anon_sym_continue] = ACTIONS(33), + [anon_sym_async] = ACTIONS(319), + [anon_sym_match] = ACTIONS(319), + [anon_sym_DASH] = ACTIONS(49), + [anon_sym_PLUS] = ACTIONS(49), + [anon_sym_LBRACK] = ACTIONS(51), + [anon_sym_LBRACE] = ACTIONS(53), + [anon_sym_STAR_STAR] = ACTIONS(55), + [anon_sym_global] = ACTIONS(59), + [anon_sym_nonlocal] = ACTIONS(61), + [anon_sym_exec] = ACTIONS(63), + [anon_sym_type] = ACTIONS(65), + [anon_sym_not] = ACTIONS(71), + [anon_sym_TILDE] = ACTIONS(49), + [anon_sym_lambda] = ACTIONS(73), + [anon_sym_yield] = ACTIONS(75), + [sym_ellipsis] = ACTIONS(77), + [sym_integer] = ACTIONS(79), + [sym_float] = ACTIONS(77), + [anon_sym_await] = ACTIONS(81), + [sym_true] = ACTIONS(79), + [sym_false] = ACTIONS(79), + [sym_none] = ACTIONS(79), + [sym_comment] = ACTIONS(3), + [sym__newline] = ACTIONS(389), + [sym__indent] = ACTIONS(391), + [sym__string_start] = ACTIONS(83), + [sym__template_string_start] = ACTIONS(85), + }, + [STATE(85)] = { [sym__simple_statements] = STATE(570), - [sym_import_statement] = STATE(1301), - [sym_future_import_statement] = STATE(1301), - [sym_import_from_statement] = STATE(1301), - [sym_print_statement] = STATE(1301), - [sym_assert_statement] = STATE(1301), - [sym_expression_statement] = STATE(1301), - [sym_named_expression] = STATE(1156), - [sym_return_statement] = STATE(1301), - [sym_delete_statement] = STATE(1301), - [sym_raise_statement] = STATE(1301), - [sym_pass_statement] = STATE(1301), - [sym_break_statement] = STATE(1301), - [sym_continue_statement] = STATE(1301), - [sym_list_splat] = STATE(1520), - [sym_dictionary_splat] = STATE(1520), - [sym_global_statement] = STATE(1301), - [sym_nonlocal_statement] = STATE(1301), - [sym_exec_statement] = STATE(1301), - [sym_type_alias_statement] = STATE(1301), - [sym_expression_list] = STATE(1522), - [sym_pattern] = STATE(1017), - [sym_tuple_pattern] = STATE(1001), - [sym_list_pattern] = STATE(1001), - [sym_list_splat_pattern] = STATE(1001), - [sym_expression] = STATE(1176), - [sym_primary_expression] = STATE(765), - [sym_not_operator] = STATE(1156), - [sym_boolean_operator] = STATE(1156), - [sym_binary_operator] = STATE(920), - [sym_unary_operator] = STATE(920), - [sym_comparison_operator] = STATE(1156), - [sym_lambda] = STATE(1156), - [sym_assignment] = STATE(1522), - [sym_augmented_assignment] = STATE(1522), - [sym_pattern_list] = STATE(1026), - [sym_yield] = STATE(1522), - [sym_attribute] = STATE(582), - [sym_subscript] = STATE(582), - [sym_call] = STATE(920), - [sym_list] = STATE(920), - [sym_set] = STATE(920), - [sym_tuple] = STATE(920), - [sym_dictionary] = STATE(920), - [sym_list_comprehension] = STATE(920), - [sym_dictionary_comprehension] = STATE(920), - [sym_set_comprehension] = STATE(920), - [sym_generator_expression] = STATE(920), - [sym_parenthesized_expression] = STATE(920), - [sym_conditional_expression] = STATE(1156), - [sym_concatenated_string] = STATE(920), - [sym_string] = STATE(775), - [sym_concatenated_template_string] = STATE(920), - [sym_template_string] = STATE(769), - [sym_await] = STATE(920), + [sym_import_statement] = STATE(1345), + [sym_future_import_statement] = STATE(1345), + [sym_import_from_statement] = STATE(1345), + [sym_print_statement] = STATE(1345), + [sym_assert_statement] = STATE(1345), + [sym_expression_statement] = STATE(1345), + [sym_named_expression] = STATE(1126), + [sym_return_statement] = STATE(1345), + [sym_delete_statement] = STATE(1345), + [sym_raise_statement] = STATE(1345), + [sym_pass_statement] = STATE(1345), + [sym_break_statement] = STATE(1345), + [sym_continue_statement] = STATE(1345), + [sym_list_splat] = STATE(1590), + [sym_dictionary_splat] = STATE(1590), + [sym_global_statement] = STATE(1345), + [sym_nonlocal_statement] = STATE(1345), + [sym_exec_statement] = STATE(1345), + [sym_type_alias_statement] = STATE(1345), + [sym_expression_list] = STATE(1545), + [sym_pattern] = STATE(1020), + [sym_tuple_pattern] = STATE(1005), + [sym_list_pattern] = STATE(1005), + [sym_list_splat_pattern] = STATE(1005), + [sym_expression] = STATE(1191), + [sym_primary_expression] = STATE(773), + [sym_not_operator] = STATE(1126), + [sym_boolean_operator] = STATE(1126), + [sym_binary_operator] = STATE(950), + [sym_unary_operator] = STATE(950), + [sym_comparison_operator] = STATE(1126), + [sym_lambda] = STATE(1126), + [sym_assignment] = STATE(1545), + [sym_augmented_assignment] = STATE(1545), + [sym_pattern_list] = STATE(1030), + [sym_yield] = STATE(1545), + [sym_attribute] = STATE(614), + [sym_subscript] = STATE(614), + [sym_call] = STATE(950), + [sym_list] = STATE(950), + [sym_set] = STATE(950), + [sym_tuple] = STATE(950), + [sym_dictionary] = STATE(950), + [sym_list_comprehension] = STATE(950), + [sym_dictionary_comprehension] = STATE(950), + [sym_set_comprehension] = STATE(950), + [sym_generator_expression] = STATE(950), + [sym_parenthesized_expression] = STATE(950), + [sym_conditional_expression] = STATE(1126), + [sym_concatenated_string] = STATE(950), + [sym_string] = STATE(779), + [sym_concatenated_template_string] = STATE(950), + [sym_template_string] = STATE(772), + [sym_await] = STATE(950), [sym_identifier] = ACTIONS(7), [anon_sym_lazy] = ACTIONS(9), [anon_sym_import] = ACTIONS(11), @@ -17490,67 +18022,67 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_false] = ACTIONS(79), [sym_none] = ACTIONS(79), [sym_comment] = ACTIONS(3), - [sym__newline] = ACTIONS(373), - [sym__indent] = ACTIONS(375), + [sym__newline] = ACTIONS(393), + [sym__indent] = ACTIONS(395), [sym__string_start] = ACTIONS(83), [sym__template_string_start] = ACTIONS(85), }, - [STATE(81)] = { - [sym__simple_statements] = STATE(523), - [sym_import_statement] = STATE(1332), - [sym_future_import_statement] = STATE(1332), - [sym_import_from_statement] = STATE(1332), - [sym_print_statement] = STATE(1332), - [sym_assert_statement] = STATE(1332), - [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1156), - [sym_return_statement] = STATE(1332), - [sym_delete_statement] = STATE(1332), - [sym_raise_statement] = STATE(1332), - [sym_pass_statement] = STATE(1332), - [sym_break_statement] = STATE(1332), - [sym_continue_statement] = STATE(1332), - [sym_list_splat] = STATE(1520), - [sym_dictionary_splat] = STATE(1520), - [sym_global_statement] = STATE(1332), - [sym_nonlocal_statement] = STATE(1332), - [sym_exec_statement] = STATE(1332), - [sym_type_alias_statement] = STATE(1332), - [sym_expression_list] = STATE(1522), - [sym_pattern] = STATE(1017), - [sym_tuple_pattern] = STATE(1001), - [sym_list_pattern] = STATE(1001), - [sym_list_splat_pattern] = STATE(1001), - [sym_expression] = STATE(1176), - [sym_primary_expression] = STATE(765), - [sym_not_operator] = STATE(1156), - [sym_boolean_operator] = STATE(1156), - [sym_binary_operator] = STATE(920), - [sym_unary_operator] = STATE(920), - [sym_comparison_operator] = STATE(1156), - [sym_lambda] = STATE(1156), - [sym_assignment] = STATE(1522), - [sym_augmented_assignment] = STATE(1522), - [sym_pattern_list] = STATE(1026), - [sym_yield] = STATE(1522), - [sym_attribute] = STATE(582), - [sym_subscript] = STATE(582), - [sym_call] = STATE(920), - [sym_list] = STATE(920), - [sym_set] = STATE(920), - [sym_tuple] = STATE(920), - [sym_dictionary] = STATE(920), - [sym_list_comprehension] = STATE(920), - [sym_dictionary_comprehension] = STATE(920), - [sym_set_comprehension] = STATE(920), - [sym_generator_expression] = STATE(920), - [sym_parenthesized_expression] = STATE(920), - [sym_conditional_expression] = STATE(1156), - [sym_concatenated_string] = STATE(920), - [sym_string] = STATE(775), - [sym_concatenated_template_string] = STATE(920), - [sym_template_string] = STATE(769), - [sym_await] = STATE(920), + [STATE(86)] = { + [sym__simple_statements] = STATE(574), + [sym_import_statement] = STATE(1345), + [sym_future_import_statement] = STATE(1345), + [sym_import_from_statement] = STATE(1345), + [sym_print_statement] = STATE(1345), + [sym_assert_statement] = STATE(1345), + [sym_expression_statement] = STATE(1345), + [sym_named_expression] = STATE(1126), + [sym_return_statement] = STATE(1345), + [sym_delete_statement] = STATE(1345), + [sym_raise_statement] = STATE(1345), + [sym_pass_statement] = STATE(1345), + [sym_break_statement] = STATE(1345), + [sym_continue_statement] = STATE(1345), + [sym_list_splat] = STATE(1590), + [sym_dictionary_splat] = STATE(1590), + [sym_global_statement] = STATE(1345), + [sym_nonlocal_statement] = STATE(1345), + [sym_exec_statement] = STATE(1345), + [sym_type_alias_statement] = STATE(1345), + [sym_expression_list] = STATE(1545), + [sym_pattern] = STATE(1020), + [sym_tuple_pattern] = STATE(1005), + [sym_list_pattern] = STATE(1005), + [sym_list_splat_pattern] = STATE(1005), + [sym_expression] = STATE(1191), + [sym_primary_expression] = STATE(773), + [sym_not_operator] = STATE(1126), + [sym_boolean_operator] = STATE(1126), + [sym_binary_operator] = STATE(950), + [sym_unary_operator] = STATE(950), + [sym_comparison_operator] = STATE(1126), + [sym_lambda] = STATE(1126), + [sym_assignment] = STATE(1545), + [sym_augmented_assignment] = STATE(1545), + [sym_pattern_list] = STATE(1030), + [sym_yield] = STATE(1545), + [sym_attribute] = STATE(614), + [sym_subscript] = STATE(614), + [sym_call] = STATE(950), + [sym_list] = STATE(950), + [sym_set] = STATE(950), + [sym_tuple] = STATE(950), + [sym_dictionary] = STATE(950), + [sym_list_comprehension] = STATE(950), + [sym_dictionary_comprehension] = STATE(950), + [sym_set_comprehension] = STATE(950), + [sym_generator_expression] = STATE(950), + [sym_parenthesized_expression] = STATE(950), + [sym_conditional_expression] = STATE(1126), + [sym_concatenated_string] = STATE(950), + [sym_string] = STATE(779), + [sym_concatenated_template_string] = STATE(950), + [sym_template_string] = STATE(772), + [sym_await] = STATE(950), [sym_identifier] = ACTIONS(7), [anon_sym_lazy] = ACTIONS(9), [anon_sym_import] = ACTIONS(11), @@ -17588,67 +18120,67 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_false] = ACTIONS(79), [sym_none] = ACTIONS(79), [sym_comment] = ACTIONS(3), - [sym__newline] = ACTIONS(377), - [sym__indent] = ACTIONS(379), + [sym__newline] = ACTIONS(397), + [sym__indent] = ACTIONS(399), [sym__string_start] = ACTIONS(83), [sym__template_string_start] = ACTIONS(85), }, - [STATE(82)] = { - [sym__simple_statements] = STATE(581), - [sym_import_statement] = STATE(1301), - [sym_future_import_statement] = STATE(1301), - [sym_import_from_statement] = STATE(1301), - [sym_print_statement] = STATE(1301), - [sym_assert_statement] = STATE(1301), - [sym_expression_statement] = STATE(1301), - [sym_named_expression] = STATE(1156), - [sym_return_statement] = STATE(1301), - [sym_delete_statement] = STATE(1301), - [sym_raise_statement] = STATE(1301), - [sym_pass_statement] = STATE(1301), - [sym_break_statement] = STATE(1301), - [sym_continue_statement] = STATE(1301), - [sym_list_splat] = STATE(1520), - [sym_dictionary_splat] = STATE(1520), - [sym_global_statement] = STATE(1301), - [sym_nonlocal_statement] = STATE(1301), - [sym_exec_statement] = STATE(1301), - [sym_type_alias_statement] = STATE(1301), - [sym_expression_list] = STATE(1522), - [sym_pattern] = STATE(1017), - [sym_tuple_pattern] = STATE(1001), - [sym_list_pattern] = STATE(1001), - [sym_list_splat_pattern] = STATE(1001), - [sym_expression] = STATE(1176), - [sym_primary_expression] = STATE(765), - [sym_not_operator] = STATE(1156), - [sym_boolean_operator] = STATE(1156), - [sym_binary_operator] = STATE(920), - [sym_unary_operator] = STATE(920), - [sym_comparison_operator] = STATE(1156), - [sym_lambda] = STATE(1156), - [sym_assignment] = STATE(1522), - [sym_augmented_assignment] = STATE(1522), - [sym_pattern_list] = STATE(1026), - [sym_yield] = STATE(1522), - [sym_attribute] = STATE(582), - [sym_subscript] = STATE(582), - [sym_call] = STATE(920), - [sym_list] = STATE(920), - [sym_set] = STATE(920), - [sym_tuple] = STATE(920), - [sym_dictionary] = STATE(920), - [sym_list_comprehension] = STATE(920), - [sym_dictionary_comprehension] = STATE(920), - [sym_set_comprehension] = STATE(920), - [sym_generator_expression] = STATE(920), - [sym_parenthesized_expression] = STATE(920), - [sym_conditional_expression] = STATE(1156), - [sym_concatenated_string] = STATE(920), - [sym_string] = STATE(775), - [sym_concatenated_template_string] = STATE(920), - [sym_template_string] = STATE(769), - [sym_await] = STATE(920), + [STATE(87)] = { + [sym__simple_statements] = STATE(511), + [sym_import_statement] = STATE(1346), + [sym_future_import_statement] = STATE(1346), + [sym_import_from_statement] = STATE(1346), + [sym_print_statement] = STATE(1346), + [sym_assert_statement] = STATE(1346), + [sym_expression_statement] = STATE(1346), + [sym_named_expression] = STATE(1126), + [sym_return_statement] = STATE(1346), + [sym_delete_statement] = STATE(1346), + [sym_raise_statement] = STATE(1346), + [sym_pass_statement] = STATE(1346), + [sym_break_statement] = STATE(1346), + [sym_continue_statement] = STATE(1346), + [sym_list_splat] = STATE(1590), + [sym_dictionary_splat] = STATE(1590), + [sym_global_statement] = STATE(1346), + [sym_nonlocal_statement] = STATE(1346), + [sym_exec_statement] = STATE(1346), + [sym_type_alias_statement] = STATE(1346), + [sym_expression_list] = STATE(1545), + [sym_pattern] = STATE(1020), + [sym_tuple_pattern] = STATE(1005), + [sym_list_pattern] = STATE(1005), + [sym_list_splat_pattern] = STATE(1005), + [sym_expression] = STATE(1191), + [sym_primary_expression] = STATE(773), + [sym_not_operator] = STATE(1126), + [sym_boolean_operator] = STATE(1126), + [sym_binary_operator] = STATE(950), + [sym_unary_operator] = STATE(950), + [sym_comparison_operator] = STATE(1126), + [sym_lambda] = STATE(1126), + [sym_assignment] = STATE(1545), + [sym_augmented_assignment] = STATE(1545), + [sym_pattern_list] = STATE(1030), + [sym_yield] = STATE(1545), + [sym_attribute] = STATE(614), + [sym_subscript] = STATE(614), + [sym_call] = STATE(950), + [sym_list] = STATE(950), + [sym_set] = STATE(950), + [sym_tuple] = STATE(950), + [sym_dictionary] = STATE(950), + [sym_list_comprehension] = STATE(950), + [sym_dictionary_comprehension] = STATE(950), + [sym_set_comprehension] = STATE(950), + [sym_generator_expression] = STATE(950), + [sym_parenthesized_expression] = STATE(950), + [sym_conditional_expression] = STATE(1126), + [sym_concatenated_string] = STATE(950), + [sym_string] = STATE(779), + [sym_concatenated_template_string] = STATE(950), + [sym_template_string] = STATE(772), + [sym_await] = STATE(950), [sym_identifier] = ACTIONS(7), [anon_sym_lazy] = ACTIONS(9), [anon_sym_import] = ACTIONS(11), @@ -17686,67 +18218,67 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_false] = ACTIONS(79), [sym_none] = ACTIONS(79), [sym_comment] = ACTIONS(3), - [sym__newline] = ACTIONS(381), - [sym__indent] = ACTIONS(383), + [sym__newline] = ACTIONS(401), + [sym__indent] = ACTIONS(403), [sym__string_start] = ACTIONS(83), [sym__template_string_start] = ACTIONS(85), }, - [STATE(83)] = { - [sym__simple_statements] = STATE(525), - [sym_import_statement] = STATE(1332), - [sym_future_import_statement] = STATE(1332), - [sym_import_from_statement] = STATE(1332), - [sym_print_statement] = STATE(1332), - [sym_assert_statement] = STATE(1332), - [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1156), - [sym_return_statement] = STATE(1332), - [sym_delete_statement] = STATE(1332), - [sym_raise_statement] = STATE(1332), - [sym_pass_statement] = STATE(1332), - [sym_break_statement] = STATE(1332), - [sym_continue_statement] = STATE(1332), - [sym_list_splat] = STATE(1520), - [sym_dictionary_splat] = STATE(1520), - [sym_global_statement] = STATE(1332), - [sym_nonlocal_statement] = STATE(1332), - [sym_exec_statement] = STATE(1332), - [sym_type_alias_statement] = STATE(1332), - [sym_expression_list] = STATE(1522), - [sym_pattern] = STATE(1017), - [sym_tuple_pattern] = STATE(1001), - [sym_list_pattern] = STATE(1001), - [sym_list_splat_pattern] = STATE(1001), - [sym_expression] = STATE(1176), - [sym_primary_expression] = STATE(765), - [sym_not_operator] = STATE(1156), - [sym_boolean_operator] = STATE(1156), - [sym_binary_operator] = STATE(920), - [sym_unary_operator] = STATE(920), - [sym_comparison_operator] = STATE(1156), - [sym_lambda] = STATE(1156), - [sym_assignment] = STATE(1522), - [sym_augmented_assignment] = STATE(1522), - [sym_pattern_list] = STATE(1026), - [sym_yield] = STATE(1522), - [sym_attribute] = STATE(582), - [sym_subscript] = STATE(582), - [sym_call] = STATE(920), - [sym_list] = STATE(920), - [sym_set] = STATE(920), - [sym_tuple] = STATE(920), - [sym_dictionary] = STATE(920), - [sym_list_comprehension] = STATE(920), - [sym_dictionary_comprehension] = STATE(920), - [sym_set_comprehension] = STATE(920), - [sym_generator_expression] = STATE(920), - [sym_parenthesized_expression] = STATE(920), - [sym_conditional_expression] = STATE(1156), - [sym_concatenated_string] = STATE(920), - [sym_string] = STATE(775), - [sym_concatenated_template_string] = STATE(920), - [sym_template_string] = STATE(769), - [sym_await] = STATE(920), + [STATE(88)] = { + [sym__simple_statements] = STATE(576), + [sym_import_statement] = STATE(1345), + [sym_future_import_statement] = STATE(1345), + [sym_import_from_statement] = STATE(1345), + [sym_print_statement] = STATE(1345), + [sym_assert_statement] = STATE(1345), + [sym_expression_statement] = STATE(1345), + [sym_named_expression] = STATE(1126), + [sym_return_statement] = STATE(1345), + [sym_delete_statement] = STATE(1345), + [sym_raise_statement] = STATE(1345), + [sym_pass_statement] = STATE(1345), + [sym_break_statement] = STATE(1345), + [sym_continue_statement] = STATE(1345), + [sym_list_splat] = STATE(1590), + [sym_dictionary_splat] = STATE(1590), + [sym_global_statement] = STATE(1345), + [sym_nonlocal_statement] = STATE(1345), + [sym_exec_statement] = STATE(1345), + [sym_type_alias_statement] = STATE(1345), + [sym_expression_list] = STATE(1545), + [sym_pattern] = STATE(1020), + [sym_tuple_pattern] = STATE(1005), + [sym_list_pattern] = STATE(1005), + [sym_list_splat_pattern] = STATE(1005), + [sym_expression] = STATE(1191), + [sym_primary_expression] = STATE(773), + [sym_not_operator] = STATE(1126), + [sym_boolean_operator] = STATE(1126), + [sym_binary_operator] = STATE(950), + [sym_unary_operator] = STATE(950), + [sym_comparison_operator] = STATE(1126), + [sym_lambda] = STATE(1126), + [sym_assignment] = STATE(1545), + [sym_augmented_assignment] = STATE(1545), + [sym_pattern_list] = STATE(1030), + [sym_yield] = STATE(1545), + [sym_attribute] = STATE(614), + [sym_subscript] = STATE(614), + [sym_call] = STATE(950), + [sym_list] = STATE(950), + [sym_set] = STATE(950), + [sym_tuple] = STATE(950), + [sym_dictionary] = STATE(950), + [sym_list_comprehension] = STATE(950), + [sym_dictionary_comprehension] = STATE(950), + [sym_set_comprehension] = STATE(950), + [sym_generator_expression] = STATE(950), + [sym_parenthesized_expression] = STATE(950), + [sym_conditional_expression] = STATE(1126), + [sym_concatenated_string] = STATE(950), + [sym_string] = STATE(779), + [sym_concatenated_template_string] = STATE(950), + [sym_template_string] = STATE(772), + [sym_await] = STATE(950), [sym_identifier] = ACTIONS(7), [anon_sym_lazy] = ACTIONS(9), [anon_sym_import] = ACTIONS(11), @@ -17784,67 +18316,67 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_false] = ACTIONS(79), [sym_none] = ACTIONS(79), [sym_comment] = ACTIONS(3), - [sym__newline] = ACTIONS(385), - [sym__indent] = ACTIONS(387), + [sym__newline] = ACTIONS(405), + [sym__indent] = ACTIONS(407), [sym__string_start] = ACTIONS(83), [sym__template_string_start] = ACTIONS(85), }, - [STATE(84)] = { - [sym__simple_statements] = STATE(526), - [sym_import_statement] = STATE(1332), - [sym_future_import_statement] = STATE(1332), - [sym_import_from_statement] = STATE(1332), - [sym_print_statement] = STATE(1332), - [sym_assert_statement] = STATE(1332), - [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1156), - [sym_return_statement] = STATE(1332), - [sym_delete_statement] = STATE(1332), - [sym_raise_statement] = STATE(1332), - [sym_pass_statement] = STATE(1332), - [sym_break_statement] = STATE(1332), - [sym_continue_statement] = STATE(1332), - [sym_list_splat] = STATE(1520), - [sym_dictionary_splat] = STATE(1520), - [sym_global_statement] = STATE(1332), - [sym_nonlocal_statement] = STATE(1332), - [sym_exec_statement] = STATE(1332), - [sym_type_alias_statement] = STATE(1332), - [sym_expression_list] = STATE(1522), - [sym_pattern] = STATE(1017), - [sym_tuple_pattern] = STATE(1001), - [sym_list_pattern] = STATE(1001), - [sym_list_splat_pattern] = STATE(1001), - [sym_expression] = STATE(1176), - [sym_primary_expression] = STATE(765), - [sym_not_operator] = STATE(1156), - [sym_boolean_operator] = STATE(1156), - [sym_binary_operator] = STATE(920), - [sym_unary_operator] = STATE(920), - [sym_comparison_operator] = STATE(1156), - [sym_lambda] = STATE(1156), - [sym_assignment] = STATE(1522), - [sym_augmented_assignment] = STATE(1522), - [sym_pattern_list] = STATE(1026), - [sym_yield] = STATE(1522), - [sym_attribute] = STATE(582), - [sym_subscript] = STATE(582), - [sym_call] = STATE(920), - [sym_list] = STATE(920), - [sym_set] = STATE(920), - [sym_tuple] = STATE(920), - [sym_dictionary] = STATE(920), - [sym_list_comprehension] = STATE(920), - [sym_dictionary_comprehension] = STATE(920), - [sym_set_comprehension] = STATE(920), - [sym_generator_expression] = STATE(920), - [sym_parenthesized_expression] = STATE(920), - [sym_conditional_expression] = STATE(1156), - [sym_concatenated_string] = STATE(920), - [sym_string] = STATE(775), - [sym_concatenated_template_string] = STATE(920), - [sym_template_string] = STATE(769), - [sym_await] = STATE(920), + [STATE(89)] = { + [sym__simple_statements] = STATE(613), + [sym_import_statement] = STATE(1346), + [sym_future_import_statement] = STATE(1346), + [sym_import_from_statement] = STATE(1346), + [sym_print_statement] = STATE(1346), + [sym_assert_statement] = STATE(1346), + [sym_expression_statement] = STATE(1346), + [sym_named_expression] = STATE(1126), + [sym_return_statement] = STATE(1346), + [sym_delete_statement] = STATE(1346), + [sym_raise_statement] = STATE(1346), + [sym_pass_statement] = STATE(1346), + [sym_break_statement] = STATE(1346), + [sym_continue_statement] = STATE(1346), + [sym_list_splat] = STATE(1590), + [sym_dictionary_splat] = STATE(1590), + [sym_global_statement] = STATE(1346), + [sym_nonlocal_statement] = STATE(1346), + [sym_exec_statement] = STATE(1346), + [sym_type_alias_statement] = STATE(1346), + [sym_expression_list] = STATE(1545), + [sym_pattern] = STATE(1020), + [sym_tuple_pattern] = STATE(1005), + [sym_list_pattern] = STATE(1005), + [sym_list_splat_pattern] = STATE(1005), + [sym_expression] = STATE(1191), + [sym_primary_expression] = STATE(773), + [sym_not_operator] = STATE(1126), + [sym_boolean_operator] = STATE(1126), + [sym_binary_operator] = STATE(950), + [sym_unary_operator] = STATE(950), + [sym_comparison_operator] = STATE(1126), + [sym_lambda] = STATE(1126), + [sym_assignment] = STATE(1545), + [sym_augmented_assignment] = STATE(1545), + [sym_pattern_list] = STATE(1030), + [sym_yield] = STATE(1545), + [sym_attribute] = STATE(614), + [sym_subscript] = STATE(614), + [sym_call] = STATE(950), + [sym_list] = STATE(950), + [sym_set] = STATE(950), + [sym_tuple] = STATE(950), + [sym_dictionary] = STATE(950), + [sym_list_comprehension] = STATE(950), + [sym_dictionary_comprehension] = STATE(950), + [sym_set_comprehension] = STATE(950), + [sym_generator_expression] = STATE(950), + [sym_parenthesized_expression] = STATE(950), + [sym_conditional_expression] = STATE(1126), + [sym_concatenated_string] = STATE(950), + [sym_string] = STATE(779), + [sym_concatenated_template_string] = STATE(950), + [sym_template_string] = STATE(772), + [sym_await] = STATE(950), [sym_identifier] = ACTIONS(7), [anon_sym_lazy] = ACTIONS(9), [anon_sym_import] = ACTIONS(11), @@ -17882,67 +18414,67 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_false] = ACTIONS(79), [sym_none] = ACTIONS(79), [sym_comment] = ACTIONS(3), - [sym__newline] = ACTIONS(389), - [sym__indent] = ACTIONS(391), + [sym__newline] = ACTIONS(409), + [sym__indent] = ACTIONS(411), [sym__string_start] = ACTIONS(83), [sym__template_string_start] = ACTIONS(85), }, - [STATE(85)] = { - [sym__simple_statements] = STATE(584), - [sym_import_statement] = STATE(1301), - [sym_future_import_statement] = STATE(1301), - [sym_import_from_statement] = STATE(1301), - [sym_print_statement] = STATE(1301), - [sym_assert_statement] = STATE(1301), - [sym_expression_statement] = STATE(1301), - [sym_named_expression] = STATE(1156), - [sym_return_statement] = STATE(1301), - [sym_delete_statement] = STATE(1301), - [sym_raise_statement] = STATE(1301), - [sym_pass_statement] = STATE(1301), - [sym_break_statement] = STATE(1301), - [sym_continue_statement] = STATE(1301), - [sym_list_splat] = STATE(1520), - [sym_dictionary_splat] = STATE(1520), - [sym_global_statement] = STATE(1301), - [sym_nonlocal_statement] = STATE(1301), - [sym_exec_statement] = STATE(1301), - [sym_type_alias_statement] = STATE(1301), - [sym_expression_list] = STATE(1522), - [sym_pattern] = STATE(1017), - [sym_tuple_pattern] = STATE(1001), - [sym_list_pattern] = STATE(1001), - [sym_list_splat_pattern] = STATE(1001), - [sym_expression] = STATE(1176), - [sym_primary_expression] = STATE(765), - [sym_not_operator] = STATE(1156), - [sym_boolean_operator] = STATE(1156), - [sym_binary_operator] = STATE(920), - [sym_unary_operator] = STATE(920), - [sym_comparison_operator] = STATE(1156), - [sym_lambda] = STATE(1156), - [sym_assignment] = STATE(1522), - [sym_augmented_assignment] = STATE(1522), - [sym_pattern_list] = STATE(1026), - [sym_yield] = STATE(1522), - [sym_attribute] = STATE(582), - [sym_subscript] = STATE(582), - [sym_call] = STATE(920), - [sym_list] = STATE(920), - [sym_set] = STATE(920), - [sym_tuple] = STATE(920), - [sym_dictionary] = STATE(920), - [sym_list_comprehension] = STATE(920), - [sym_dictionary_comprehension] = STATE(920), - [sym_set_comprehension] = STATE(920), - [sym_generator_expression] = STATE(920), - [sym_parenthesized_expression] = STATE(920), - [sym_conditional_expression] = STATE(1156), - [sym_concatenated_string] = STATE(920), - [sym_string] = STATE(775), - [sym_concatenated_template_string] = STATE(920), - [sym_template_string] = STATE(769), - [sym_await] = STATE(920), + [STATE(90)] = { + [sym__simple_statements] = STATE(497), + [sym_import_statement] = STATE(1345), + [sym_future_import_statement] = STATE(1345), + [sym_import_from_statement] = STATE(1345), + [sym_print_statement] = STATE(1345), + [sym_assert_statement] = STATE(1345), + [sym_expression_statement] = STATE(1345), + [sym_named_expression] = STATE(1126), + [sym_return_statement] = STATE(1345), + [sym_delete_statement] = STATE(1345), + [sym_raise_statement] = STATE(1345), + [sym_pass_statement] = STATE(1345), + [sym_break_statement] = STATE(1345), + [sym_continue_statement] = STATE(1345), + [sym_list_splat] = STATE(1590), + [sym_dictionary_splat] = STATE(1590), + [sym_global_statement] = STATE(1345), + [sym_nonlocal_statement] = STATE(1345), + [sym_exec_statement] = STATE(1345), + [sym_type_alias_statement] = STATE(1345), + [sym_expression_list] = STATE(1545), + [sym_pattern] = STATE(1020), + [sym_tuple_pattern] = STATE(1005), + [sym_list_pattern] = STATE(1005), + [sym_list_splat_pattern] = STATE(1005), + [sym_expression] = STATE(1191), + [sym_primary_expression] = STATE(773), + [sym_not_operator] = STATE(1126), + [sym_boolean_operator] = STATE(1126), + [sym_binary_operator] = STATE(950), + [sym_unary_operator] = STATE(950), + [sym_comparison_operator] = STATE(1126), + [sym_lambda] = STATE(1126), + [sym_assignment] = STATE(1545), + [sym_augmented_assignment] = STATE(1545), + [sym_pattern_list] = STATE(1030), + [sym_yield] = STATE(1545), + [sym_attribute] = STATE(614), + [sym_subscript] = STATE(614), + [sym_call] = STATE(950), + [sym_list] = STATE(950), + [sym_set] = STATE(950), + [sym_tuple] = STATE(950), + [sym_dictionary] = STATE(950), + [sym_list_comprehension] = STATE(950), + [sym_dictionary_comprehension] = STATE(950), + [sym_set_comprehension] = STATE(950), + [sym_generator_expression] = STATE(950), + [sym_parenthesized_expression] = STATE(950), + [sym_conditional_expression] = STATE(1126), + [sym_concatenated_string] = STATE(950), + [sym_string] = STATE(779), + [sym_concatenated_template_string] = STATE(950), + [sym_template_string] = STATE(772), + [sym_await] = STATE(950), [sym_identifier] = ACTIONS(7), [anon_sym_lazy] = ACTIONS(9), [anon_sym_import] = ACTIONS(11), @@ -17980,67 +18512,67 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_false] = ACTIONS(79), [sym_none] = ACTIONS(79), [sym_comment] = ACTIONS(3), - [sym__newline] = ACTIONS(393), - [sym__indent] = ACTIONS(395), + [sym__newline] = ACTIONS(413), + [sym__indent] = ACTIONS(415), [sym__string_start] = ACTIONS(83), [sym__template_string_start] = ACTIONS(85), }, - [STATE(86)] = { - [sym__simple_statements] = STATE(530), - [sym_import_statement] = STATE(1332), - [sym_future_import_statement] = STATE(1332), - [sym_import_from_statement] = STATE(1332), - [sym_print_statement] = STATE(1332), - [sym_assert_statement] = STATE(1332), - [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1156), - [sym_return_statement] = STATE(1332), - [sym_delete_statement] = STATE(1332), - [sym_raise_statement] = STATE(1332), - [sym_pass_statement] = STATE(1332), - [sym_break_statement] = STATE(1332), - [sym_continue_statement] = STATE(1332), - [sym_list_splat] = STATE(1520), - [sym_dictionary_splat] = STATE(1520), - [sym_global_statement] = STATE(1332), - [sym_nonlocal_statement] = STATE(1332), - [sym_exec_statement] = STATE(1332), - [sym_type_alias_statement] = STATE(1332), - [sym_expression_list] = STATE(1522), - [sym_pattern] = STATE(1017), - [sym_tuple_pattern] = STATE(1001), - [sym_list_pattern] = STATE(1001), - [sym_list_splat_pattern] = STATE(1001), - [sym_expression] = STATE(1176), - [sym_primary_expression] = STATE(765), - [sym_not_operator] = STATE(1156), - [sym_boolean_operator] = STATE(1156), - [sym_binary_operator] = STATE(920), - [sym_unary_operator] = STATE(920), - [sym_comparison_operator] = STATE(1156), - [sym_lambda] = STATE(1156), - [sym_assignment] = STATE(1522), - [sym_augmented_assignment] = STATE(1522), - [sym_pattern_list] = STATE(1026), - [sym_yield] = STATE(1522), - [sym_attribute] = STATE(582), - [sym_subscript] = STATE(582), - [sym_call] = STATE(920), - [sym_list] = STATE(920), - [sym_set] = STATE(920), - [sym_tuple] = STATE(920), - [sym_dictionary] = STATE(920), - [sym_list_comprehension] = STATE(920), - [sym_dictionary_comprehension] = STATE(920), - [sym_set_comprehension] = STATE(920), - [sym_generator_expression] = STATE(920), - [sym_parenthesized_expression] = STATE(920), - [sym_conditional_expression] = STATE(1156), - [sym_concatenated_string] = STATE(920), - [sym_string] = STATE(775), - [sym_concatenated_template_string] = STATE(920), - [sym_template_string] = STATE(769), - [sym_await] = STATE(920), + [STATE(91)] = { + [sym__simple_statements] = STATE(485), + [sym_import_statement] = STATE(1345), + [sym_future_import_statement] = STATE(1345), + [sym_import_from_statement] = STATE(1345), + [sym_print_statement] = STATE(1345), + [sym_assert_statement] = STATE(1345), + [sym_expression_statement] = STATE(1345), + [sym_named_expression] = STATE(1126), + [sym_return_statement] = STATE(1345), + [sym_delete_statement] = STATE(1345), + [sym_raise_statement] = STATE(1345), + [sym_pass_statement] = STATE(1345), + [sym_break_statement] = STATE(1345), + [sym_continue_statement] = STATE(1345), + [sym_list_splat] = STATE(1590), + [sym_dictionary_splat] = STATE(1590), + [sym_global_statement] = STATE(1345), + [sym_nonlocal_statement] = STATE(1345), + [sym_exec_statement] = STATE(1345), + [sym_type_alias_statement] = STATE(1345), + [sym_expression_list] = STATE(1545), + [sym_pattern] = STATE(1020), + [sym_tuple_pattern] = STATE(1005), + [sym_list_pattern] = STATE(1005), + [sym_list_splat_pattern] = STATE(1005), + [sym_expression] = STATE(1191), + [sym_primary_expression] = STATE(773), + [sym_not_operator] = STATE(1126), + [sym_boolean_operator] = STATE(1126), + [sym_binary_operator] = STATE(950), + [sym_unary_operator] = STATE(950), + [sym_comparison_operator] = STATE(1126), + [sym_lambda] = STATE(1126), + [sym_assignment] = STATE(1545), + [sym_augmented_assignment] = STATE(1545), + [sym_pattern_list] = STATE(1030), + [sym_yield] = STATE(1545), + [sym_attribute] = STATE(614), + [sym_subscript] = STATE(614), + [sym_call] = STATE(950), + [sym_list] = STATE(950), + [sym_set] = STATE(950), + [sym_tuple] = STATE(950), + [sym_dictionary] = STATE(950), + [sym_list_comprehension] = STATE(950), + [sym_dictionary_comprehension] = STATE(950), + [sym_set_comprehension] = STATE(950), + [sym_generator_expression] = STATE(950), + [sym_parenthesized_expression] = STATE(950), + [sym_conditional_expression] = STATE(1126), + [sym_concatenated_string] = STATE(950), + [sym_string] = STATE(779), + [sym_concatenated_template_string] = STATE(950), + [sym_template_string] = STATE(772), + [sym_await] = STATE(950), [sym_identifier] = ACTIONS(7), [anon_sym_lazy] = ACTIONS(9), [anon_sym_import] = ACTIONS(11), @@ -18078,67 +18610,67 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_false] = ACTIONS(79), [sym_none] = ACTIONS(79), [sym_comment] = ACTIONS(3), - [sym__newline] = ACTIONS(397), - [sym__indent] = ACTIONS(399), + [sym__newline] = ACTIONS(417), + [sym__indent] = ACTIONS(419), [sym__string_start] = ACTIONS(83), [sym__template_string_start] = ACTIONS(85), }, - [STATE(87)] = { - [sym__simple_statements] = STATE(486), - [sym_import_statement] = STATE(1332), - [sym_future_import_statement] = STATE(1332), - [sym_import_from_statement] = STATE(1332), - [sym_print_statement] = STATE(1332), - [sym_assert_statement] = STATE(1332), - [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1156), - [sym_return_statement] = STATE(1332), - [sym_delete_statement] = STATE(1332), - [sym_raise_statement] = STATE(1332), - [sym_pass_statement] = STATE(1332), - [sym_break_statement] = STATE(1332), - [sym_continue_statement] = STATE(1332), - [sym_list_splat] = STATE(1520), - [sym_dictionary_splat] = STATE(1520), - [sym_global_statement] = STATE(1332), - [sym_nonlocal_statement] = STATE(1332), - [sym_exec_statement] = STATE(1332), - [sym_type_alias_statement] = STATE(1332), - [sym_expression_list] = STATE(1522), - [sym_pattern] = STATE(1017), - [sym_tuple_pattern] = STATE(1001), - [sym_list_pattern] = STATE(1001), - [sym_list_splat_pattern] = STATE(1001), - [sym_expression] = STATE(1176), - [sym_primary_expression] = STATE(765), - [sym_not_operator] = STATE(1156), - [sym_boolean_operator] = STATE(1156), - [sym_binary_operator] = STATE(920), - [sym_unary_operator] = STATE(920), - [sym_comparison_operator] = STATE(1156), - [sym_lambda] = STATE(1156), - [sym_assignment] = STATE(1522), - [sym_augmented_assignment] = STATE(1522), - [sym_pattern_list] = STATE(1026), - [sym_yield] = STATE(1522), - [sym_attribute] = STATE(582), - [sym_subscript] = STATE(582), - [sym_call] = STATE(920), - [sym_list] = STATE(920), - [sym_set] = STATE(920), - [sym_tuple] = STATE(920), - [sym_dictionary] = STATE(920), - [sym_list_comprehension] = STATE(920), - [sym_dictionary_comprehension] = STATE(920), - [sym_set_comprehension] = STATE(920), - [sym_generator_expression] = STATE(920), - [sym_parenthesized_expression] = STATE(920), - [sym_conditional_expression] = STATE(1156), - [sym_concatenated_string] = STATE(920), - [sym_string] = STATE(775), - [sym_concatenated_template_string] = STATE(920), - [sym_template_string] = STATE(769), - [sym_await] = STATE(920), + [STATE(92)] = { + [sym__simple_statements] = STATE(332), + [sym_import_statement] = STATE(1346), + [sym_future_import_statement] = STATE(1346), + [sym_import_from_statement] = STATE(1346), + [sym_print_statement] = STATE(1346), + [sym_assert_statement] = STATE(1346), + [sym_expression_statement] = STATE(1346), + [sym_named_expression] = STATE(1126), + [sym_return_statement] = STATE(1346), + [sym_delete_statement] = STATE(1346), + [sym_raise_statement] = STATE(1346), + [sym_pass_statement] = STATE(1346), + [sym_break_statement] = STATE(1346), + [sym_continue_statement] = STATE(1346), + [sym_list_splat] = STATE(1590), + [sym_dictionary_splat] = STATE(1590), + [sym_global_statement] = STATE(1346), + [sym_nonlocal_statement] = STATE(1346), + [sym_exec_statement] = STATE(1346), + [sym_type_alias_statement] = STATE(1346), + [sym_expression_list] = STATE(1545), + [sym_pattern] = STATE(1020), + [sym_tuple_pattern] = STATE(1005), + [sym_list_pattern] = STATE(1005), + [sym_list_splat_pattern] = STATE(1005), + [sym_expression] = STATE(1191), + [sym_primary_expression] = STATE(773), + [sym_not_operator] = STATE(1126), + [sym_boolean_operator] = STATE(1126), + [sym_binary_operator] = STATE(950), + [sym_unary_operator] = STATE(950), + [sym_comparison_operator] = STATE(1126), + [sym_lambda] = STATE(1126), + [sym_assignment] = STATE(1545), + [sym_augmented_assignment] = STATE(1545), + [sym_pattern_list] = STATE(1030), + [sym_yield] = STATE(1545), + [sym_attribute] = STATE(614), + [sym_subscript] = STATE(614), + [sym_call] = STATE(950), + [sym_list] = STATE(950), + [sym_set] = STATE(950), + [sym_tuple] = STATE(950), + [sym_dictionary] = STATE(950), + [sym_list_comprehension] = STATE(950), + [sym_dictionary_comprehension] = STATE(950), + [sym_set_comprehension] = STATE(950), + [sym_generator_expression] = STATE(950), + [sym_parenthesized_expression] = STATE(950), + [sym_conditional_expression] = STATE(1126), + [sym_concatenated_string] = STATE(950), + [sym_string] = STATE(779), + [sym_concatenated_template_string] = STATE(950), + [sym_template_string] = STATE(772), + [sym_await] = STATE(950), [sym_identifier] = ACTIONS(7), [anon_sym_lazy] = ACTIONS(9), [anon_sym_import] = ACTIONS(11), @@ -18176,67 +18708,67 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_false] = ACTIONS(79), [sym_none] = ACTIONS(79), [sym_comment] = ACTIONS(3), - [sym__newline] = ACTIONS(401), - [sym__indent] = ACTIONS(403), + [sym__newline] = ACTIONS(421), + [sym__indent] = ACTIONS(423), [sym__string_start] = ACTIONS(83), [sym__template_string_start] = ACTIONS(85), }, - [STATE(88)] = { - [sym__simple_statements] = STATE(444), - [sym_import_statement] = STATE(1332), - [sym_future_import_statement] = STATE(1332), - [sym_import_from_statement] = STATE(1332), - [sym_print_statement] = STATE(1332), - [sym_assert_statement] = STATE(1332), - [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1156), - [sym_return_statement] = STATE(1332), - [sym_delete_statement] = STATE(1332), - [sym_raise_statement] = STATE(1332), - [sym_pass_statement] = STATE(1332), - [sym_break_statement] = STATE(1332), - [sym_continue_statement] = STATE(1332), - [sym_list_splat] = STATE(1520), - [sym_dictionary_splat] = STATE(1520), - [sym_global_statement] = STATE(1332), - [sym_nonlocal_statement] = STATE(1332), - [sym_exec_statement] = STATE(1332), - [sym_type_alias_statement] = STATE(1332), - [sym_expression_list] = STATE(1522), - [sym_pattern] = STATE(1017), - [sym_tuple_pattern] = STATE(1001), - [sym_list_pattern] = STATE(1001), - [sym_list_splat_pattern] = STATE(1001), - [sym_expression] = STATE(1176), - [sym_primary_expression] = STATE(765), - [sym_not_operator] = STATE(1156), - [sym_boolean_operator] = STATE(1156), - [sym_binary_operator] = STATE(920), - [sym_unary_operator] = STATE(920), - [sym_comparison_operator] = STATE(1156), - [sym_lambda] = STATE(1156), - [sym_assignment] = STATE(1522), - [sym_augmented_assignment] = STATE(1522), - [sym_pattern_list] = STATE(1026), - [sym_yield] = STATE(1522), - [sym_attribute] = STATE(582), - [sym_subscript] = STATE(582), - [sym_call] = STATE(920), - [sym_list] = STATE(920), - [sym_set] = STATE(920), - [sym_tuple] = STATE(920), - [sym_dictionary] = STATE(920), - [sym_list_comprehension] = STATE(920), - [sym_dictionary_comprehension] = STATE(920), - [sym_set_comprehension] = STATE(920), - [sym_generator_expression] = STATE(920), - [sym_parenthesized_expression] = STATE(920), - [sym_conditional_expression] = STATE(1156), - [sym_concatenated_string] = STATE(920), - [sym_string] = STATE(775), - [sym_concatenated_template_string] = STATE(920), - [sym_template_string] = STATE(769), - [sym_await] = STATE(920), + [STATE(93)] = { + [sym__simple_statements] = STATE(580), + [sym_import_statement] = STATE(1345), + [sym_future_import_statement] = STATE(1345), + [sym_import_from_statement] = STATE(1345), + [sym_print_statement] = STATE(1345), + [sym_assert_statement] = STATE(1345), + [sym_expression_statement] = STATE(1345), + [sym_named_expression] = STATE(1126), + [sym_return_statement] = STATE(1345), + [sym_delete_statement] = STATE(1345), + [sym_raise_statement] = STATE(1345), + [sym_pass_statement] = STATE(1345), + [sym_break_statement] = STATE(1345), + [sym_continue_statement] = STATE(1345), + [sym_list_splat] = STATE(1590), + [sym_dictionary_splat] = STATE(1590), + [sym_global_statement] = STATE(1345), + [sym_nonlocal_statement] = STATE(1345), + [sym_exec_statement] = STATE(1345), + [sym_type_alias_statement] = STATE(1345), + [sym_expression_list] = STATE(1545), + [sym_pattern] = STATE(1020), + [sym_tuple_pattern] = STATE(1005), + [sym_list_pattern] = STATE(1005), + [sym_list_splat_pattern] = STATE(1005), + [sym_expression] = STATE(1191), + [sym_primary_expression] = STATE(773), + [sym_not_operator] = STATE(1126), + [sym_boolean_operator] = STATE(1126), + [sym_binary_operator] = STATE(950), + [sym_unary_operator] = STATE(950), + [sym_comparison_operator] = STATE(1126), + [sym_lambda] = STATE(1126), + [sym_assignment] = STATE(1545), + [sym_augmented_assignment] = STATE(1545), + [sym_pattern_list] = STATE(1030), + [sym_yield] = STATE(1545), + [sym_attribute] = STATE(614), + [sym_subscript] = STATE(614), + [sym_call] = STATE(950), + [sym_list] = STATE(950), + [sym_set] = STATE(950), + [sym_tuple] = STATE(950), + [sym_dictionary] = STATE(950), + [sym_list_comprehension] = STATE(950), + [sym_dictionary_comprehension] = STATE(950), + [sym_set_comprehension] = STATE(950), + [sym_generator_expression] = STATE(950), + [sym_parenthesized_expression] = STATE(950), + [sym_conditional_expression] = STATE(1126), + [sym_concatenated_string] = STATE(950), + [sym_string] = STATE(779), + [sym_concatenated_template_string] = STATE(950), + [sym_template_string] = STATE(772), + [sym_await] = STATE(950), [sym_identifier] = ACTIONS(7), [anon_sym_lazy] = ACTIONS(9), [anon_sym_import] = ACTIONS(11), @@ -18274,67 +18806,67 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_false] = ACTIONS(79), [sym_none] = ACTIONS(79), [sym_comment] = ACTIONS(3), - [sym__newline] = ACTIONS(405), - [sym__indent] = ACTIONS(407), + [sym__newline] = ACTIONS(425), + [sym__indent] = ACTIONS(427), [sym__string_start] = ACTIONS(83), [sym__template_string_start] = ACTIONS(85), }, - [STATE(89)] = { - [sym__simple_statements] = STATE(532), - [sym_import_statement] = STATE(1332), - [sym_future_import_statement] = STATE(1332), - [sym_import_from_statement] = STATE(1332), - [sym_print_statement] = STATE(1332), - [sym_assert_statement] = STATE(1332), - [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1156), - [sym_return_statement] = STATE(1332), - [sym_delete_statement] = STATE(1332), - [sym_raise_statement] = STATE(1332), - [sym_pass_statement] = STATE(1332), - [sym_break_statement] = STATE(1332), - [sym_continue_statement] = STATE(1332), - [sym_list_splat] = STATE(1520), - [sym_dictionary_splat] = STATE(1520), - [sym_global_statement] = STATE(1332), - [sym_nonlocal_statement] = STATE(1332), - [sym_exec_statement] = STATE(1332), - [sym_type_alias_statement] = STATE(1332), - [sym_expression_list] = STATE(1522), - [sym_pattern] = STATE(1017), - [sym_tuple_pattern] = STATE(1001), - [sym_list_pattern] = STATE(1001), - [sym_list_splat_pattern] = STATE(1001), - [sym_expression] = STATE(1176), - [sym_primary_expression] = STATE(765), - [sym_not_operator] = STATE(1156), - [sym_boolean_operator] = STATE(1156), - [sym_binary_operator] = STATE(920), - [sym_unary_operator] = STATE(920), - [sym_comparison_operator] = STATE(1156), - [sym_lambda] = STATE(1156), - [sym_assignment] = STATE(1522), - [sym_augmented_assignment] = STATE(1522), - [sym_pattern_list] = STATE(1026), - [sym_yield] = STATE(1522), - [sym_attribute] = STATE(582), - [sym_subscript] = STATE(582), - [sym_call] = STATE(920), - [sym_list] = STATE(920), - [sym_set] = STATE(920), - [sym_tuple] = STATE(920), - [sym_dictionary] = STATE(920), - [sym_list_comprehension] = STATE(920), - [sym_dictionary_comprehension] = STATE(920), - [sym_set_comprehension] = STATE(920), - [sym_generator_expression] = STATE(920), - [sym_parenthesized_expression] = STATE(920), - [sym_conditional_expression] = STATE(1156), - [sym_concatenated_string] = STATE(920), - [sym_string] = STATE(775), - [sym_concatenated_template_string] = STATE(920), - [sym_template_string] = STATE(769), - [sym_await] = STATE(920), + [STATE(94)] = { + [sym__simple_statements] = STATE(611), + [sym_import_statement] = STATE(1346), + [sym_future_import_statement] = STATE(1346), + [sym_import_from_statement] = STATE(1346), + [sym_print_statement] = STATE(1346), + [sym_assert_statement] = STATE(1346), + [sym_expression_statement] = STATE(1346), + [sym_named_expression] = STATE(1126), + [sym_return_statement] = STATE(1346), + [sym_delete_statement] = STATE(1346), + [sym_raise_statement] = STATE(1346), + [sym_pass_statement] = STATE(1346), + [sym_break_statement] = STATE(1346), + [sym_continue_statement] = STATE(1346), + [sym_list_splat] = STATE(1590), + [sym_dictionary_splat] = STATE(1590), + [sym_global_statement] = STATE(1346), + [sym_nonlocal_statement] = STATE(1346), + [sym_exec_statement] = STATE(1346), + [sym_type_alias_statement] = STATE(1346), + [sym_expression_list] = STATE(1545), + [sym_pattern] = STATE(1020), + [sym_tuple_pattern] = STATE(1005), + [sym_list_pattern] = STATE(1005), + [sym_list_splat_pattern] = STATE(1005), + [sym_expression] = STATE(1191), + [sym_primary_expression] = STATE(773), + [sym_not_operator] = STATE(1126), + [sym_boolean_operator] = STATE(1126), + [sym_binary_operator] = STATE(950), + [sym_unary_operator] = STATE(950), + [sym_comparison_operator] = STATE(1126), + [sym_lambda] = STATE(1126), + [sym_assignment] = STATE(1545), + [sym_augmented_assignment] = STATE(1545), + [sym_pattern_list] = STATE(1030), + [sym_yield] = STATE(1545), + [sym_attribute] = STATE(614), + [sym_subscript] = STATE(614), + [sym_call] = STATE(950), + [sym_list] = STATE(950), + [sym_set] = STATE(950), + [sym_tuple] = STATE(950), + [sym_dictionary] = STATE(950), + [sym_list_comprehension] = STATE(950), + [sym_dictionary_comprehension] = STATE(950), + [sym_set_comprehension] = STATE(950), + [sym_generator_expression] = STATE(950), + [sym_parenthesized_expression] = STATE(950), + [sym_conditional_expression] = STATE(1126), + [sym_concatenated_string] = STATE(950), + [sym_string] = STATE(779), + [sym_concatenated_template_string] = STATE(950), + [sym_template_string] = STATE(772), + [sym_await] = STATE(950), [sym_identifier] = ACTIONS(7), [anon_sym_lazy] = ACTIONS(9), [anon_sym_import] = ACTIONS(11), @@ -18372,67 +18904,67 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_false] = ACTIONS(79), [sym_none] = ACTIONS(79), [sym_comment] = ACTIONS(3), - [sym__newline] = ACTIONS(409), - [sym__indent] = ACTIONS(411), + [sym__newline] = ACTIONS(429), + [sym__indent] = ACTIONS(431), [sym__string_start] = ACTIONS(83), [sym__template_string_start] = ACTIONS(85), }, - [STATE(90)] = { - [sym__simple_statements] = STATE(536), - [sym_import_statement] = STATE(1332), - [sym_future_import_statement] = STATE(1332), - [sym_import_from_statement] = STATE(1332), - [sym_print_statement] = STATE(1332), - [sym_assert_statement] = STATE(1332), - [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1156), - [sym_return_statement] = STATE(1332), - [sym_delete_statement] = STATE(1332), - [sym_raise_statement] = STATE(1332), - [sym_pass_statement] = STATE(1332), - [sym_break_statement] = STATE(1332), - [sym_continue_statement] = STATE(1332), - [sym_list_splat] = STATE(1520), - [sym_dictionary_splat] = STATE(1520), - [sym_global_statement] = STATE(1332), - [sym_nonlocal_statement] = STATE(1332), - [sym_exec_statement] = STATE(1332), - [sym_type_alias_statement] = STATE(1332), - [sym_expression_list] = STATE(1522), - [sym_pattern] = STATE(1017), - [sym_tuple_pattern] = STATE(1001), - [sym_list_pattern] = STATE(1001), - [sym_list_splat_pattern] = STATE(1001), - [sym_expression] = STATE(1176), - [sym_primary_expression] = STATE(765), - [sym_not_operator] = STATE(1156), - [sym_boolean_operator] = STATE(1156), - [sym_binary_operator] = STATE(920), - [sym_unary_operator] = STATE(920), - [sym_comparison_operator] = STATE(1156), - [sym_lambda] = STATE(1156), - [sym_assignment] = STATE(1522), - [sym_augmented_assignment] = STATE(1522), - [sym_pattern_list] = STATE(1026), - [sym_yield] = STATE(1522), - [sym_attribute] = STATE(582), - [sym_subscript] = STATE(582), - [sym_call] = STATE(920), - [sym_list] = STATE(920), - [sym_set] = STATE(920), - [sym_tuple] = STATE(920), - [sym_dictionary] = STATE(920), - [sym_list_comprehension] = STATE(920), - [sym_dictionary_comprehension] = STATE(920), - [sym_set_comprehension] = STATE(920), - [sym_generator_expression] = STATE(920), - [sym_parenthesized_expression] = STATE(920), - [sym_conditional_expression] = STATE(1156), - [sym_concatenated_string] = STATE(920), - [sym_string] = STATE(775), - [sym_concatenated_template_string] = STATE(920), - [sym_template_string] = STATE(769), - [sym_await] = STATE(920), + [STATE(95)] = { + [sym__simple_statements] = STATE(467), + [sym_import_statement] = STATE(1346), + [sym_future_import_statement] = STATE(1346), + [sym_import_from_statement] = STATE(1346), + [sym_print_statement] = STATE(1346), + [sym_assert_statement] = STATE(1346), + [sym_expression_statement] = STATE(1346), + [sym_named_expression] = STATE(1126), + [sym_return_statement] = STATE(1346), + [sym_delete_statement] = STATE(1346), + [sym_raise_statement] = STATE(1346), + [sym_pass_statement] = STATE(1346), + [sym_break_statement] = STATE(1346), + [sym_continue_statement] = STATE(1346), + [sym_list_splat] = STATE(1590), + [sym_dictionary_splat] = STATE(1590), + [sym_global_statement] = STATE(1346), + [sym_nonlocal_statement] = STATE(1346), + [sym_exec_statement] = STATE(1346), + [sym_type_alias_statement] = STATE(1346), + [sym_expression_list] = STATE(1545), + [sym_pattern] = STATE(1020), + [sym_tuple_pattern] = STATE(1005), + [sym_list_pattern] = STATE(1005), + [sym_list_splat_pattern] = STATE(1005), + [sym_expression] = STATE(1191), + [sym_primary_expression] = STATE(773), + [sym_not_operator] = STATE(1126), + [sym_boolean_operator] = STATE(1126), + [sym_binary_operator] = STATE(950), + [sym_unary_operator] = STATE(950), + [sym_comparison_operator] = STATE(1126), + [sym_lambda] = STATE(1126), + [sym_assignment] = STATE(1545), + [sym_augmented_assignment] = STATE(1545), + [sym_pattern_list] = STATE(1030), + [sym_yield] = STATE(1545), + [sym_attribute] = STATE(614), + [sym_subscript] = STATE(614), + [sym_call] = STATE(950), + [sym_list] = STATE(950), + [sym_set] = STATE(950), + [sym_tuple] = STATE(950), + [sym_dictionary] = STATE(950), + [sym_list_comprehension] = STATE(950), + [sym_dictionary_comprehension] = STATE(950), + [sym_set_comprehension] = STATE(950), + [sym_generator_expression] = STATE(950), + [sym_parenthesized_expression] = STATE(950), + [sym_conditional_expression] = STATE(1126), + [sym_concatenated_string] = STATE(950), + [sym_string] = STATE(779), + [sym_concatenated_template_string] = STATE(950), + [sym_template_string] = STATE(772), + [sym_await] = STATE(950), [sym_identifier] = ACTIONS(7), [anon_sym_lazy] = ACTIONS(9), [anon_sym_import] = ACTIONS(11), @@ -18470,67 +19002,67 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_false] = ACTIONS(79), [sym_none] = ACTIONS(79), [sym_comment] = ACTIONS(3), - [sym__newline] = ACTIONS(413), - [sym__indent] = ACTIONS(415), + [sym__newline] = ACTIONS(433), + [sym__indent] = ACTIONS(435), [sym__string_start] = ACTIONS(83), [sym__template_string_start] = ACTIONS(85), }, - [STATE(91)] = { - [sym__simple_statements] = STATE(449), - [sym_import_statement] = STATE(1301), - [sym_future_import_statement] = STATE(1301), - [sym_import_from_statement] = STATE(1301), - [sym_print_statement] = STATE(1301), - [sym_assert_statement] = STATE(1301), - [sym_expression_statement] = STATE(1301), - [sym_named_expression] = STATE(1156), - [sym_return_statement] = STATE(1301), - [sym_delete_statement] = STATE(1301), - [sym_raise_statement] = STATE(1301), - [sym_pass_statement] = STATE(1301), - [sym_break_statement] = STATE(1301), - [sym_continue_statement] = STATE(1301), - [sym_list_splat] = STATE(1520), - [sym_dictionary_splat] = STATE(1520), - [sym_global_statement] = STATE(1301), - [sym_nonlocal_statement] = STATE(1301), - [sym_exec_statement] = STATE(1301), - [sym_type_alias_statement] = STATE(1301), - [sym_expression_list] = STATE(1522), - [sym_pattern] = STATE(1017), - [sym_tuple_pattern] = STATE(1001), - [sym_list_pattern] = STATE(1001), - [sym_list_splat_pattern] = STATE(1001), - [sym_expression] = STATE(1176), - [sym_primary_expression] = STATE(765), - [sym_not_operator] = STATE(1156), - [sym_boolean_operator] = STATE(1156), - [sym_binary_operator] = STATE(920), - [sym_unary_operator] = STATE(920), - [sym_comparison_operator] = STATE(1156), - [sym_lambda] = STATE(1156), - [sym_assignment] = STATE(1522), - [sym_augmented_assignment] = STATE(1522), - [sym_pattern_list] = STATE(1026), - [sym_yield] = STATE(1522), - [sym_attribute] = STATE(582), - [sym_subscript] = STATE(582), - [sym_call] = STATE(920), - [sym_list] = STATE(920), - [sym_set] = STATE(920), - [sym_tuple] = STATE(920), - [sym_dictionary] = STATE(920), - [sym_list_comprehension] = STATE(920), - [sym_dictionary_comprehension] = STATE(920), - [sym_set_comprehension] = STATE(920), - [sym_generator_expression] = STATE(920), - [sym_parenthesized_expression] = STATE(920), - [sym_conditional_expression] = STATE(1156), - [sym_concatenated_string] = STATE(920), - [sym_string] = STATE(775), - [sym_concatenated_template_string] = STATE(920), - [sym_template_string] = STATE(769), - [sym_await] = STATE(920), + [STATE(96)] = { + [sym__simple_statements] = STATE(456), + [sym_import_statement] = STATE(1345), + [sym_future_import_statement] = STATE(1345), + [sym_import_from_statement] = STATE(1345), + [sym_print_statement] = STATE(1345), + [sym_assert_statement] = STATE(1345), + [sym_expression_statement] = STATE(1345), + [sym_named_expression] = STATE(1126), + [sym_return_statement] = STATE(1345), + [sym_delete_statement] = STATE(1345), + [sym_raise_statement] = STATE(1345), + [sym_pass_statement] = STATE(1345), + [sym_break_statement] = STATE(1345), + [sym_continue_statement] = STATE(1345), + [sym_list_splat] = STATE(1590), + [sym_dictionary_splat] = STATE(1590), + [sym_global_statement] = STATE(1345), + [sym_nonlocal_statement] = STATE(1345), + [sym_exec_statement] = STATE(1345), + [sym_type_alias_statement] = STATE(1345), + [sym_expression_list] = STATE(1545), + [sym_pattern] = STATE(1020), + [sym_tuple_pattern] = STATE(1005), + [sym_list_pattern] = STATE(1005), + [sym_list_splat_pattern] = STATE(1005), + [sym_expression] = STATE(1191), + [sym_primary_expression] = STATE(773), + [sym_not_operator] = STATE(1126), + [sym_boolean_operator] = STATE(1126), + [sym_binary_operator] = STATE(950), + [sym_unary_operator] = STATE(950), + [sym_comparison_operator] = STATE(1126), + [sym_lambda] = STATE(1126), + [sym_assignment] = STATE(1545), + [sym_augmented_assignment] = STATE(1545), + [sym_pattern_list] = STATE(1030), + [sym_yield] = STATE(1545), + [sym_attribute] = STATE(614), + [sym_subscript] = STATE(614), + [sym_call] = STATE(950), + [sym_list] = STATE(950), + [sym_set] = STATE(950), + [sym_tuple] = STATE(950), + [sym_dictionary] = STATE(950), + [sym_list_comprehension] = STATE(950), + [sym_dictionary_comprehension] = STATE(950), + [sym_set_comprehension] = STATE(950), + [sym_generator_expression] = STATE(950), + [sym_parenthesized_expression] = STATE(950), + [sym_conditional_expression] = STATE(1126), + [sym_concatenated_string] = STATE(950), + [sym_string] = STATE(779), + [sym_concatenated_template_string] = STATE(950), + [sym_template_string] = STATE(772), + [sym_await] = STATE(950), [sym_identifier] = ACTIONS(7), [anon_sym_lazy] = ACTIONS(9), [anon_sym_import] = ACTIONS(11), @@ -18568,67 +19100,67 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_false] = ACTIONS(79), [sym_none] = ACTIONS(79), [sym_comment] = ACTIONS(3), - [sym__newline] = ACTIONS(417), - [sym__indent] = ACTIONS(419), + [sym__newline] = ACTIONS(437), + [sym__indent] = ACTIONS(439), [sym__string_start] = ACTIONS(83), [sym__template_string_start] = ACTIONS(85), }, - [STATE(92)] = { - [sym__simple_statements] = STATE(538), - [sym_import_statement] = STATE(1332), - [sym_future_import_statement] = STATE(1332), - [sym_import_from_statement] = STATE(1332), - [sym_print_statement] = STATE(1332), - [sym_assert_statement] = STATE(1332), - [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1156), - [sym_return_statement] = STATE(1332), - [sym_delete_statement] = STATE(1332), - [sym_raise_statement] = STATE(1332), - [sym_pass_statement] = STATE(1332), - [sym_break_statement] = STATE(1332), - [sym_continue_statement] = STATE(1332), - [sym_list_splat] = STATE(1520), - [sym_dictionary_splat] = STATE(1520), - [sym_global_statement] = STATE(1332), - [sym_nonlocal_statement] = STATE(1332), - [sym_exec_statement] = STATE(1332), - [sym_type_alias_statement] = STATE(1332), - [sym_expression_list] = STATE(1522), - [sym_pattern] = STATE(1017), - [sym_tuple_pattern] = STATE(1001), - [sym_list_pattern] = STATE(1001), - [sym_list_splat_pattern] = STATE(1001), - [sym_expression] = STATE(1176), - [sym_primary_expression] = STATE(765), - [sym_not_operator] = STATE(1156), - [sym_boolean_operator] = STATE(1156), - [sym_binary_operator] = STATE(920), - [sym_unary_operator] = STATE(920), - [sym_comparison_operator] = STATE(1156), - [sym_lambda] = STATE(1156), - [sym_assignment] = STATE(1522), - [sym_augmented_assignment] = STATE(1522), - [sym_pattern_list] = STATE(1026), - [sym_yield] = STATE(1522), - [sym_attribute] = STATE(582), - [sym_subscript] = STATE(582), - [sym_call] = STATE(920), - [sym_list] = STATE(920), - [sym_set] = STATE(920), - [sym_tuple] = STATE(920), - [sym_dictionary] = STATE(920), - [sym_list_comprehension] = STATE(920), - [sym_dictionary_comprehension] = STATE(920), - [sym_set_comprehension] = STATE(920), - [sym_generator_expression] = STATE(920), - [sym_parenthesized_expression] = STATE(920), - [sym_conditional_expression] = STATE(1156), - [sym_concatenated_string] = STATE(920), - [sym_string] = STATE(775), - [sym_concatenated_template_string] = STATE(920), - [sym_template_string] = STATE(769), - [sym_await] = STATE(920), + [STATE(97)] = { + [sym__simple_statements] = STATE(475), + [sym_import_statement] = STATE(1346), + [sym_future_import_statement] = STATE(1346), + [sym_import_from_statement] = STATE(1346), + [sym_print_statement] = STATE(1346), + [sym_assert_statement] = STATE(1346), + [sym_expression_statement] = STATE(1346), + [sym_named_expression] = STATE(1126), + [sym_return_statement] = STATE(1346), + [sym_delete_statement] = STATE(1346), + [sym_raise_statement] = STATE(1346), + [sym_pass_statement] = STATE(1346), + [sym_break_statement] = STATE(1346), + [sym_continue_statement] = STATE(1346), + [sym_list_splat] = STATE(1590), + [sym_dictionary_splat] = STATE(1590), + [sym_global_statement] = STATE(1346), + [sym_nonlocal_statement] = STATE(1346), + [sym_exec_statement] = STATE(1346), + [sym_type_alias_statement] = STATE(1346), + [sym_expression_list] = STATE(1545), + [sym_pattern] = STATE(1020), + [sym_tuple_pattern] = STATE(1005), + [sym_list_pattern] = STATE(1005), + [sym_list_splat_pattern] = STATE(1005), + [sym_expression] = STATE(1191), + [sym_primary_expression] = STATE(773), + [sym_not_operator] = STATE(1126), + [sym_boolean_operator] = STATE(1126), + [sym_binary_operator] = STATE(950), + [sym_unary_operator] = STATE(950), + [sym_comparison_operator] = STATE(1126), + [sym_lambda] = STATE(1126), + [sym_assignment] = STATE(1545), + [sym_augmented_assignment] = STATE(1545), + [sym_pattern_list] = STATE(1030), + [sym_yield] = STATE(1545), + [sym_attribute] = STATE(614), + [sym_subscript] = STATE(614), + [sym_call] = STATE(950), + [sym_list] = STATE(950), + [sym_set] = STATE(950), + [sym_tuple] = STATE(950), + [sym_dictionary] = STATE(950), + [sym_list_comprehension] = STATE(950), + [sym_dictionary_comprehension] = STATE(950), + [sym_set_comprehension] = STATE(950), + [sym_generator_expression] = STATE(950), + [sym_parenthesized_expression] = STATE(950), + [sym_conditional_expression] = STATE(1126), + [sym_concatenated_string] = STATE(950), + [sym_string] = STATE(779), + [sym_concatenated_template_string] = STATE(950), + [sym_template_string] = STATE(772), + [sym_await] = STATE(950), [sym_identifier] = ACTIONS(7), [anon_sym_lazy] = ACTIONS(9), [anon_sym_import] = ACTIONS(11), @@ -18666,67 +19198,67 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_false] = ACTIONS(79), [sym_none] = ACTIONS(79), [sym_comment] = ACTIONS(3), - [sym__newline] = ACTIONS(421), - [sym__indent] = ACTIONS(423), + [sym__newline] = ACTIONS(441), + [sym__indent] = ACTIONS(443), [sym__string_start] = ACTIONS(83), [sym__template_string_start] = ACTIONS(85), }, - [STATE(93)] = { - [sym__simple_statements] = STATE(497), - [sym_import_statement] = STATE(1332), - [sym_future_import_statement] = STATE(1332), - [sym_import_from_statement] = STATE(1332), - [sym_print_statement] = STATE(1332), - [sym_assert_statement] = STATE(1332), - [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1156), - [sym_return_statement] = STATE(1332), - [sym_delete_statement] = STATE(1332), - [sym_raise_statement] = STATE(1332), - [sym_pass_statement] = STATE(1332), - [sym_break_statement] = STATE(1332), - [sym_continue_statement] = STATE(1332), - [sym_list_splat] = STATE(1520), - [sym_dictionary_splat] = STATE(1520), - [sym_global_statement] = STATE(1332), - [sym_nonlocal_statement] = STATE(1332), - [sym_exec_statement] = STATE(1332), - [sym_type_alias_statement] = STATE(1332), - [sym_expression_list] = STATE(1522), - [sym_pattern] = STATE(1017), - [sym_tuple_pattern] = STATE(1001), - [sym_list_pattern] = STATE(1001), - [sym_list_splat_pattern] = STATE(1001), - [sym_expression] = STATE(1176), - [sym_primary_expression] = STATE(765), - [sym_not_operator] = STATE(1156), - [sym_boolean_operator] = STATE(1156), - [sym_binary_operator] = STATE(920), - [sym_unary_operator] = STATE(920), - [sym_comparison_operator] = STATE(1156), - [sym_lambda] = STATE(1156), - [sym_assignment] = STATE(1522), - [sym_augmented_assignment] = STATE(1522), - [sym_pattern_list] = STATE(1026), - [sym_yield] = STATE(1522), - [sym_attribute] = STATE(582), - [sym_subscript] = STATE(582), - [sym_call] = STATE(920), - [sym_list] = STATE(920), - [sym_set] = STATE(920), - [sym_tuple] = STATE(920), - [sym_dictionary] = STATE(920), - [sym_list_comprehension] = STATE(920), - [sym_dictionary_comprehension] = STATE(920), - [sym_set_comprehension] = STATE(920), - [sym_generator_expression] = STATE(920), - [sym_parenthesized_expression] = STATE(920), - [sym_conditional_expression] = STATE(1156), - [sym_concatenated_string] = STATE(920), - [sym_string] = STATE(775), - [sym_concatenated_template_string] = STATE(920), - [sym_template_string] = STATE(769), - [sym_await] = STATE(920), + [STATE(98)] = { + [sym__simple_statements] = STATE(500), + [sym_import_statement] = STATE(1345), + [sym_future_import_statement] = STATE(1345), + [sym_import_from_statement] = STATE(1345), + [sym_print_statement] = STATE(1345), + [sym_assert_statement] = STATE(1345), + [sym_expression_statement] = STATE(1345), + [sym_named_expression] = STATE(1126), + [sym_return_statement] = STATE(1345), + [sym_delete_statement] = STATE(1345), + [sym_raise_statement] = STATE(1345), + [sym_pass_statement] = STATE(1345), + [sym_break_statement] = STATE(1345), + [sym_continue_statement] = STATE(1345), + [sym_list_splat] = STATE(1590), + [sym_dictionary_splat] = STATE(1590), + [sym_global_statement] = STATE(1345), + [sym_nonlocal_statement] = STATE(1345), + [sym_exec_statement] = STATE(1345), + [sym_type_alias_statement] = STATE(1345), + [sym_expression_list] = STATE(1545), + [sym_pattern] = STATE(1020), + [sym_tuple_pattern] = STATE(1005), + [sym_list_pattern] = STATE(1005), + [sym_list_splat_pattern] = STATE(1005), + [sym_expression] = STATE(1191), + [sym_primary_expression] = STATE(773), + [sym_not_operator] = STATE(1126), + [sym_boolean_operator] = STATE(1126), + [sym_binary_operator] = STATE(950), + [sym_unary_operator] = STATE(950), + [sym_comparison_operator] = STATE(1126), + [sym_lambda] = STATE(1126), + [sym_assignment] = STATE(1545), + [sym_augmented_assignment] = STATE(1545), + [sym_pattern_list] = STATE(1030), + [sym_yield] = STATE(1545), + [sym_attribute] = STATE(614), + [sym_subscript] = STATE(614), + [sym_call] = STATE(950), + [sym_list] = STATE(950), + [sym_set] = STATE(950), + [sym_tuple] = STATE(950), + [sym_dictionary] = STATE(950), + [sym_list_comprehension] = STATE(950), + [sym_dictionary_comprehension] = STATE(950), + [sym_set_comprehension] = STATE(950), + [sym_generator_expression] = STATE(950), + [sym_parenthesized_expression] = STATE(950), + [sym_conditional_expression] = STATE(1126), + [sym_concatenated_string] = STATE(950), + [sym_string] = STATE(779), + [sym_concatenated_template_string] = STATE(950), + [sym_template_string] = STATE(772), + [sym_await] = STATE(950), [sym_identifier] = ACTIONS(7), [anon_sym_lazy] = ACTIONS(9), [anon_sym_import] = ACTIONS(11), @@ -18764,67 +19296,67 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_false] = ACTIONS(79), [sym_none] = ACTIONS(79), [sym_comment] = ACTIONS(3), - [sym__newline] = ACTIONS(425), - [sym__indent] = ACTIONS(427), + [sym__newline] = ACTIONS(445), + [sym__indent] = ACTIONS(447), [sym__string_start] = ACTIONS(83), [sym__template_string_start] = ACTIONS(85), }, - [STATE(94)] = { - [sym__simple_statements] = STATE(472), - [sym_import_statement] = STATE(1332), - [sym_future_import_statement] = STATE(1332), - [sym_import_from_statement] = STATE(1332), - [sym_print_statement] = STATE(1332), - [sym_assert_statement] = STATE(1332), - [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1156), - [sym_return_statement] = STATE(1332), - [sym_delete_statement] = STATE(1332), - [sym_raise_statement] = STATE(1332), - [sym_pass_statement] = STATE(1332), - [sym_break_statement] = STATE(1332), - [sym_continue_statement] = STATE(1332), - [sym_list_splat] = STATE(1520), - [sym_dictionary_splat] = STATE(1520), - [sym_global_statement] = STATE(1332), - [sym_nonlocal_statement] = STATE(1332), - [sym_exec_statement] = STATE(1332), - [sym_type_alias_statement] = STATE(1332), - [sym_expression_list] = STATE(1522), - [sym_pattern] = STATE(1017), - [sym_tuple_pattern] = STATE(1001), - [sym_list_pattern] = STATE(1001), - [sym_list_splat_pattern] = STATE(1001), - [sym_expression] = STATE(1176), - [sym_primary_expression] = STATE(765), - [sym_not_operator] = STATE(1156), - [sym_boolean_operator] = STATE(1156), - [sym_binary_operator] = STATE(920), - [sym_unary_operator] = STATE(920), - [sym_comparison_operator] = STATE(1156), - [sym_lambda] = STATE(1156), - [sym_assignment] = STATE(1522), - [sym_augmented_assignment] = STATE(1522), - [sym_pattern_list] = STATE(1026), - [sym_yield] = STATE(1522), - [sym_attribute] = STATE(582), - [sym_subscript] = STATE(582), - [sym_call] = STATE(920), - [sym_list] = STATE(920), - [sym_set] = STATE(920), - [sym_tuple] = STATE(920), - [sym_dictionary] = STATE(920), - [sym_list_comprehension] = STATE(920), - [sym_dictionary_comprehension] = STATE(920), - [sym_set_comprehension] = STATE(920), - [sym_generator_expression] = STATE(920), - [sym_parenthesized_expression] = STATE(920), - [sym_conditional_expression] = STATE(1156), - [sym_concatenated_string] = STATE(920), - [sym_string] = STATE(775), - [sym_concatenated_template_string] = STATE(920), - [sym_template_string] = STATE(769), - [sym_await] = STATE(920), + [STATE(99)] = { + [sym__simple_statements] = STATE(519), + [sym_import_statement] = STATE(1346), + [sym_future_import_statement] = STATE(1346), + [sym_import_from_statement] = STATE(1346), + [sym_print_statement] = STATE(1346), + [sym_assert_statement] = STATE(1346), + [sym_expression_statement] = STATE(1346), + [sym_named_expression] = STATE(1126), + [sym_return_statement] = STATE(1346), + [sym_delete_statement] = STATE(1346), + [sym_raise_statement] = STATE(1346), + [sym_pass_statement] = STATE(1346), + [sym_break_statement] = STATE(1346), + [sym_continue_statement] = STATE(1346), + [sym_list_splat] = STATE(1590), + [sym_dictionary_splat] = STATE(1590), + [sym_global_statement] = STATE(1346), + [sym_nonlocal_statement] = STATE(1346), + [sym_exec_statement] = STATE(1346), + [sym_type_alias_statement] = STATE(1346), + [sym_expression_list] = STATE(1545), + [sym_pattern] = STATE(1020), + [sym_tuple_pattern] = STATE(1005), + [sym_list_pattern] = STATE(1005), + [sym_list_splat_pattern] = STATE(1005), + [sym_expression] = STATE(1191), + [sym_primary_expression] = STATE(773), + [sym_not_operator] = STATE(1126), + [sym_boolean_operator] = STATE(1126), + [sym_binary_operator] = STATE(950), + [sym_unary_operator] = STATE(950), + [sym_comparison_operator] = STATE(1126), + [sym_lambda] = STATE(1126), + [sym_assignment] = STATE(1545), + [sym_augmented_assignment] = STATE(1545), + [sym_pattern_list] = STATE(1030), + [sym_yield] = STATE(1545), + [sym_attribute] = STATE(614), + [sym_subscript] = STATE(614), + [sym_call] = STATE(950), + [sym_list] = STATE(950), + [sym_set] = STATE(950), + [sym_tuple] = STATE(950), + [sym_dictionary] = STATE(950), + [sym_list_comprehension] = STATE(950), + [sym_dictionary_comprehension] = STATE(950), + [sym_set_comprehension] = STATE(950), + [sym_generator_expression] = STATE(950), + [sym_parenthesized_expression] = STATE(950), + [sym_conditional_expression] = STATE(1126), + [sym_concatenated_string] = STATE(950), + [sym_string] = STATE(779), + [sym_concatenated_template_string] = STATE(950), + [sym_template_string] = STATE(772), + [sym_await] = STATE(950), [sym_identifier] = ACTIONS(7), [anon_sym_lazy] = ACTIONS(9), [anon_sym_import] = ACTIONS(11), @@ -18862,67 +19394,67 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_false] = ACTIONS(79), [sym_none] = ACTIONS(79), [sym_comment] = ACTIONS(3), - [sym__newline] = ACTIONS(429), - [sym__indent] = ACTIONS(431), + [sym__newline] = ACTIONS(449), + [sym__indent] = ACTIONS(451), [sym__string_start] = ACTIONS(83), [sym__template_string_start] = ACTIONS(85), }, - [STATE(95)] = { - [sym__simple_statements] = STATE(508), - [sym_import_statement] = STATE(1301), - [sym_future_import_statement] = STATE(1301), - [sym_import_from_statement] = STATE(1301), - [sym_print_statement] = STATE(1301), - [sym_assert_statement] = STATE(1301), - [sym_expression_statement] = STATE(1301), - [sym_named_expression] = STATE(1156), - [sym_return_statement] = STATE(1301), - [sym_delete_statement] = STATE(1301), - [sym_raise_statement] = STATE(1301), - [sym_pass_statement] = STATE(1301), - [sym_break_statement] = STATE(1301), - [sym_continue_statement] = STATE(1301), - [sym_list_splat] = STATE(1520), - [sym_dictionary_splat] = STATE(1520), - [sym_global_statement] = STATE(1301), - [sym_nonlocal_statement] = STATE(1301), - [sym_exec_statement] = STATE(1301), - [sym_type_alias_statement] = STATE(1301), - [sym_expression_list] = STATE(1522), - [sym_pattern] = STATE(1017), - [sym_tuple_pattern] = STATE(1001), - [sym_list_pattern] = STATE(1001), - [sym_list_splat_pattern] = STATE(1001), - [sym_expression] = STATE(1176), - [sym_primary_expression] = STATE(765), - [sym_not_operator] = STATE(1156), - [sym_boolean_operator] = STATE(1156), - [sym_binary_operator] = STATE(920), - [sym_unary_operator] = STATE(920), - [sym_comparison_operator] = STATE(1156), - [sym_lambda] = STATE(1156), - [sym_assignment] = STATE(1522), - [sym_augmented_assignment] = STATE(1522), - [sym_pattern_list] = STATE(1026), - [sym_yield] = STATE(1522), - [sym_attribute] = STATE(582), - [sym_subscript] = STATE(582), - [sym_call] = STATE(920), - [sym_list] = STATE(920), - [sym_set] = STATE(920), - [sym_tuple] = STATE(920), - [sym_dictionary] = STATE(920), - [sym_list_comprehension] = STATE(920), - [sym_dictionary_comprehension] = STATE(920), - [sym_set_comprehension] = STATE(920), - [sym_generator_expression] = STATE(920), - [sym_parenthesized_expression] = STATE(920), - [sym_conditional_expression] = STATE(1156), - [sym_concatenated_string] = STATE(920), - [sym_string] = STATE(775), - [sym_concatenated_template_string] = STATE(920), - [sym_template_string] = STATE(769), - [sym_await] = STATE(920), + [STATE(100)] = { + [sym__simple_statements] = STATE(536), + [sym_import_statement] = STATE(1346), + [sym_future_import_statement] = STATE(1346), + [sym_import_from_statement] = STATE(1346), + [sym_print_statement] = STATE(1346), + [sym_assert_statement] = STATE(1346), + [sym_expression_statement] = STATE(1346), + [sym_named_expression] = STATE(1126), + [sym_return_statement] = STATE(1346), + [sym_delete_statement] = STATE(1346), + [sym_raise_statement] = STATE(1346), + [sym_pass_statement] = STATE(1346), + [sym_break_statement] = STATE(1346), + [sym_continue_statement] = STATE(1346), + [sym_list_splat] = STATE(1590), + [sym_dictionary_splat] = STATE(1590), + [sym_global_statement] = STATE(1346), + [sym_nonlocal_statement] = STATE(1346), + [sym_exec_statement] = STATE(1346), + [sym_type_alias_statement] = STATE(1346), + [sym_expression_list] = STATE(1545), + [sym_pattern] = STATE(1020), + [sym_tuple_pattern] = STATE(1005), + [sym_list_pattern] = STATE(1005), + [sym_list_splat_pattern] = STATE(1005), + [sym_expression] = STATE(1191), + [sym_primary_expression] = STATE(773), + [sym_not_operator] = STATE(1126), + [sym_boolean_operator] = STATE(1126), + [sym_binary_operator] = STATE(950), + [sym_unary_operator] = STATE(950), + [sym_comparison_operator] = STATE(1126), + [sym_lambda] = STATE(1126), + [sym_assignment] = STATE(1545), + [sym_augmented_assignment] = STATE(1545), + [sym_pattern_list] = STATE(1030), + [sym_yield] = STATE(1545), + [sym_attribute] = STATE(614), + [sym_subscript] = STATE(614), + [sym_call] = STATE(950), + [sym_list] = STATE(950), + [sym_set] = STATE(950), + [sym_tuple] = STATE(950), + [sym_dictionary] = STATE(950), + [sym_list_comprehension] = STATE(950), + [sym_dictionary_comprehension] = STATE(950), + [sym_set_comprehension] = STATE(950), + [sym_generator_expression] = STATE(950), + [sym_parenthesized_expression] = STATE(950), + [sym_conditional_expression] = STATE(1126), + [sym_concatenated_string] = STATE(950), + [sym_string] = STATE(779), + [sym_concatenated_template_string] = STATE(950), + [sym_template_string] = STATE(772), + [sym_await] = STATE(950), [sym_identifier] = ACTIONS(7), [anon_sym_lazy] = ACTIONS(9), [anon_sym_import] = ACTIONS(11), @@ -18960,67 +19492,67 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_false] = ACTIONS(79), [sym_none] = ACTIONS(79), [sym_comment] = ACTIONS(3), - [sym__newline] = ACTIONS(433), - [sym__indent] = ACTIONS(435), + [sym__newline] = ACTIONS(453), + [sym__indent] = ACTIONS(455), [sym__string_start] = ACTIONS(83), [sym__template_string_start] = ACTIONS(85), }, - [STATE(96)] = { - [sym__simple_statements] = STATE(542), - [sym_import_statement] = STATE(1332), - [sym_future_import_statement] = STATE(1332), - [sym_import_from_statement] = STATE(1332), - [sym_print_statement] = STATE(1332), - [sym_assert_statement] = STATE(1332), - [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1156), - [sym_return_statement] = STATE(1332), - [sym_delete_statement] = STATE(1332), - [sym_raise_statement] = STATE(1332), - [sym_pass_statement] = STATE(1332), - [sym_break_statement] = STATE(1332), - [sym_continue_statement] = STATE(1332), - [sym_list_splat] = STATE(1520), - [sym_dictionary_splat] = STATE(1520), - [sym_global_statement] = STATE(1332), - [sym_nonlocal_statement] = STATE(1332), - [sym_exec_statement] = STATE(1332), - [sym_type_alias_statement] = STATE(1332), - [sym_expression_list] = STATE(1522), - [sym_pattern] = STATE(1017), - [sym_tuple_pattern] = STATE(1001), - [sym_list_pattern] = STATE(1001), - [sym_list_splat_pattern] = STATE(1001), - [sym_expression] = STATE(1176), - [sym_primary_expression] = STATE(765), - [sym_not_operator] = STATE(1156), - [sym_boolean_operator] = STATE(1156), - [sym_binary_operator] = STATE(920), - [sym_unary_operator] = STATE(920), - [sym_comparison_operator] = STATE(1156), - [sym_lambda] = STATE(1156), - [sym_assignment] = STATE(1522), - [sym_augmented_assignment] = STATE(1522), - [sym_pattern_list] = STATE(1026), - [sym_yield] = STATE(1522), - [sym_attribute] = STATE(582), - [sym_subscript] = STATE(582), - [sym_call] = STATE(920), - [sym_list] = STATE(920), - [sym_set] = STATE(920), - [sym_tuple] = STATE(920), - [sym_dictionary] = STATE(920), - [sym_list_comprehension] = STATE(920), - [sym_dictionary_comprehension] = STATE(920), - [sym_set_comprehension] = STATE(920), - [sym_generator_expression] = STATE(920), - [sym_parenthesized_expression] = STATE(920), - [sym_conditional_expression] = STATE(1156), - [sym_concatenated_string] = STATE(920), - [sym_string] = STATE(775), - [sym_concatenated_template_string] = STATE(920), - [sym_template_string] = STATE(769), - [sym_await] = STATE(920), + [STATE(101)] = { + [sym__simple_statements] = STATE(487), + [sym_import_statement] = STATE(1345), + [sym_future_import_statement] = STATE(1345), + [sym_import_from_statement] = STATE(1345), + [sym_print_statement] = STATE(1345), + [sym_assert_statement] = STATE(1345), + [sym_expression_statement] = STATE(1345), + [sym_named_expression] = STATE(1126), + [sym_return_statement] = STATE(1345), + [sym_delete_statement] = STATE(1345), + [sym_raise_statement] = STATE(1345), + [sym_pass_statement] = STATE(1345), + [sym_break_statement] = STATE(1345), + [sym_continue_statement] = STATE(1345), + [sym_list_splat] = STATE(1590), + [sym_dictionary_splat] = STATE(1590), + [sym_global_statement] = STATE(1345), + [sym_nonlocal_statement] = STATE(1345), + [sym_exec_statement] = STATE(1345), + [sym_type_alias_statement] = STATE(1345), + [sym_expression_list] = STATE(1545), + [sym_pattern] = STATE(1020), + [sym_tuple_pattern] = STATE(1005), + [sym_list_pattern] = STATE(1005), + [sym_list_splat_pattern] = STATE(1005), + [sym_expression] = STATE(1191), + [sym_primary_expression] = STATE(773), + [sym_not_operator] = STATE(1126), + [sym_boolean_operator] = STATE(1126), + [sym_binary_operator] = STATE(950), + [sym_unary_operator] = STATE(950), + [sym_comparison_operator] = STATE(1126), + [sym_lambda] = STATE(1126), + [sym_assignment] = STATE(1545), + [sym_augmented_assignment] = STATE(1545), + [sym_pattern_list] = STATE(1030), + [sym_yield] = STATE(1545), + [sym_attribute] = STATE(614), + [sym_subscript] = STATE(614), + [sym_call] = STATE(950), + [sym_list] = STATE(950), + [sym_set] = STATE(950), + [sym_tuple] = STATE(950), + [sym_dictionary] = STATE(950), + [sym_list_comprehension] = STATE(950), + [sym_dictionary_comprehension] = STATE(950), + [sym_set_comprehension] = STATE(950), + [sym_generator_expression] = STATE(950), + [sym_parenthesized_expression] = STATE(950), + [sym_conditional_expression] = STATE(1126), + [sym_concatenated_string] = STATE(950), + [sym_string] = STATE(779), + [sym_concatenated_template_string] = STATE(950), + [sym_template_string] = STATE(772), + [sym_await] = STATE(950), [sym_identifier] = ACTIONS(7), [anon_sym_lazy] = ACTIONS(9), [anon_sym_import] = ACTIONS(11), @@ -19058,67 +19590,67 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_false] = ACTIONS(79), [sym_none] = ACTIONS(79), [sym_comment] = ACTIONS(3), - [sym__newline] = ACTIONS(437), - [sym__indent] = ACTIONS(439), + [sym__newline] = ACTIONS(457), + [sym__indent] = ACTIONS(459), [sym__string_start] = ACTIONS(83), [sym__template_string_start] = ACTIONS(85), }, - [STATE(97)] = { - [sym__simple_statements] = STATE(589), - [sym_import_statement] = STATE(1301), - [sym_future_import_statement] = STATE(1301), - [sym_import_from_statement] = STATE(1301), - [sym_print_statement] = STATE(1301), - [sym_assert_statement] = STATE(1301), - [sym_expression_statement] = STATE(1301), - [sym_named_expression] = STATE(1156), - [sym_return_statement] = STATE(1301), - [sym_delete_statement] = STATE(1301), - [sym_raise_statement] = STATE(1301), - [sym_pass_statement] = STATE(1301), - [sym_break_statement] = STATE(1301), - [sym_continue_statement] = STATE(1301), - [sym_list_splat] = STATE(1520), - [sym_dictionary_splat] = STATE(1520), - [sym_global_statement] = STATE(1301), - [sym_nonlocal_statement] = STATE(1301), - [sym_exec_statement] = STATE(1301), - [sym_type_alias_statement] = STATE(1301), - [sym_expression_list] = STATE(1522), - [sym_pattern] = STATE(1017), - [sym_tuple_pattern] = STATE(1001), - [sym_list_pattern] = STATE(1001), - [sym_list_splat_pattern] = STATE(1001), - [sym_expression] = STATE(1176), - [sym_primary_expression] = STATE(765), - [sym_not_operator] = STATE(1156), - [sym_boolean_operator] = STATE(1156), - [sym_binary_operator] = STATE(920), - [sym_unary_operator] = STATE(920), - [sym_comparison_operator] = STATE(1156), - [sym_lambda] = STATE(1156), - [sym_assignment] = STATE(1522), - [sym_augmented_assignment] = STATE(1522), - [sym_pattern_list] = STATE(1026), - [sym_yield] = STATE(1522), - [sym_attribute] = STATE(582), - [sym_subscript] = STATE(582), - [sym_call] = STATE(920), - [sym_list] = STATE(920), - [sym_set] = STATE(920), - [sym_tuple] = STATE(920), - [sym_dictionary] = STATE(920), - [sym_list_comprehension] = STATE(920), - [sym_dictionary_comprehension] = STATE(920), - [sym_set_comprehension] = STATE(920), - [sym_generator_expression] = STATE(920), - [sym_parenthesized_expression] = STATE(920), - [sym_conditional_expression] = STATE(1156), - [sym_concatenated_string] = STATE(920), - [sym_string] = STATE(775), - [sym_concatenated_template_string] = STATE(920), - [sym_template_string] = STATE(769), - [sym_await] = STATE(920), + [STATE(102)] = { + [sym__simple_statements] = STATE(539), + [sym_import_statement] = STATE(1346), + [sym_future_import_statement] = STATE(1346), + [sym_import_from_statement] = STATE(1346), + [sym_print_statement] = STATE(1346), + [sym_assert_statement] = STATE(1346), + [sym_expression_statement] = STATE(1346), + [sym_named_expression] = STATE(1126), + [sym_return_statement] = STATE(1346), + [sym_delete_statement] = STATE(1346), + [sym_raise_statement] = STATE(1346), + [sym_pass_statement] = STATE(1346), + [sym_break_statement] = STATE(1346), + [sym_continue_statement] = STATE(1346), + [sym_list_splat] = STATE(1590), + [sym_dictionary_splat] = STATE(1590), + [sym_global_statement] = STATE(1346), + [sym_nonlocal_statement] = STATE(1346), + [sym_exec_statement] = STATE(1346), + [sym_type_alias_statement] = STATE(1346), + [sym_expression_list] = STATE(1545), + [sym_pattern] = STATE(1020), + [sym_tuple_pattern] = STATE(1005), + [sym_list_pattern] = STATE(1005), + [sym_list_splat_pattern] = STATE(1005), + [sym_expression] = STATE(1191), + [sym_primary_expression] = STATE(773), + [sym_not_operator] = STATE(1126), + [sym_boolean_operator] = STATE(1126), + [sym_binary_operator] = STATE(950), + [sym_unary_operator] = STATE(950), + [sym_comparison_operator] = STATE(1126), + [sym_lambda] = STATE(1126), + [sym_assignment] = STATE(1545), + [sym_augmented_assignment] = STATE(1545), + [sym_pattern_list] = STATE(1030), + [sym_yield] = STATE(1545), + [sym_attribute] = STATE(614), + [sym_subscript] = STATE(614), + [sym_call] = STATE(950), + [sym_list] = STATE(950), + [sym_set] = STATE(950), + [sym_tuple] = STATE(950), + [sym_dictionary] = STATE(950), + [sym_list_comprehension] = STATE(950), + [sym_dictionary_comprehension] = STATE(950), + [sym_set_comprehension] = STATE(950), + [sym_generator_expression] = STATE(950), + [sym_parenthesized_expression] = STATE(950), + [sym_conditional_expression] = STATE(1126), + [sym_concatenated_string] = STATE(950), + [sym_string] = STATE(779), + [sym_concatenated_template_string] = STATE(950), + [sym_template_string] = STATE(772), + [sym_await] = STATE(950), [sym_identifier] = ACTIONS(7), [anon_sym_lazy] = ACTIONS(9), [anon_sym_import] = ACTIONS(11), @@ -19156,67 +19688,67 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_false] = ACTIONS(79), [sym_none] = ACTIONS(79), [sym_comment] = ACTIONS(3), - [sym__newline] = ACTIONS(441), - [sym__indent] = ACTIONS(443), + [sym__newline] = ACTIONS(461), + [sym__indent] = ACTIONS(463), [sym__string_start] = ACTIONS(83), [sym__template_string_start] = ACTIONS(85), }, - [STATE(98)] = { - [sym__simple_statements] = STATE(603), - [sym_import_statement] = STATE(1301), - [sym_future_import_statement] = STATE(1301), - [sym_import_from_statement] = STATE(1301), - [sym_print_statement] = STATE(1301), - [sym_assert_statement] = STATE(1301), - [sym_expression_statement] = STATE(1301), - [sym_named_expression] = STATE(1156), - [sym_return_statement] = STATE(1301), - [sym_delete_statement] = STATE(1301), - [sym_raise_statement] = STATE(1301), - [sym_pass_statement] = STATE(1301), - [sym_break_statement] = STATE(1301), - [sym_continue_statement] = STATE(1301), - [sym_list_splat] = STATE(1520), - [sym_dictionary_splat] = STATE(1520), - [sym_global_statement] = STATE(1301), - [sym_nonlocal_statement] = STATE(1301), - [sym_exec_statement] = STATE(1301), - [sym_type_alias_statement] = STATE(1301), - [sym_expression_list] = STATE(1522), - [sym_pattern] = STATE(1017), - [sym_tuple_pattern] = STATE(1001), - [sym_list_pattern] = STATE(1001), - [sym_list_splat_pattern] = STATE(1001), - [sym_expression] = STATE(1176), - [sym_primary_expression] = STATE(765), - [sym_not_operator] = STATE(1156), - [sym_boolean_operator] = STATE(1156), - [sym_binary_operator] = STATE(920), - [sym_unary_operator] = STATE(920), - [sym_comparison_operator] = STATE(1156), - [sym_lambda] = STATE(1156), - [sym_assignment] = STATE(1522), - [sym_augmented_assignment] = STATE(1522), - [sym_pattern_list] = STATE(1026), - [sym_yield] = STATE(1522), - [sym_attribute] = STATE(582), - [sym_subscript] = STATE(582), - [sym_call] = STATE(920), - [sym_list] = STATE(920), - [sym_set] = STATE(920), - [sym_tuple] = STATE(920), - [sym_dictionary] = STATE(920), - [sym_list_comprehension] = STATE(920), - [sym_dictionary_comprehension] = STATE(920), - [sym_set_comprehension] = STATE(920), - [sym_generator_expression] = STATE(920), - [sym_parenthesized_expression] = STATE(920), - [sym_conditional_expression] = STATE(1156), - [sym_concatenated_string] = STATE(920), - [sym_string] = STATE(775), - [sym_concatenated_template_string] = STATE(920), - [sym_template_string] = STATE(769), - [sym_await] = STATE(920), + [STATE(103)] = { + [sym__simple_statements] = STATE(457), + [sym_import_statement] = STATE(1346), + [sym_future_import_statement] = STATE(1346), + [sym_import_from_statement] = STATE(1346), + [sym_print_statement] = STATE(1346), + [sym_assert_statement] = STATE(1346), + [sym_expression_statement] = STATE(1346), + [sym_named_expression] = STATE(1126), + [sym_return_statement] = STATE(1346), + [sym_delete_statement] = STATE(1346), + [sym_raise_statement] = STATE(1346), + [sym_pass_statement] = STATE(1346), + [sym_break_statement] = STATE(1346), + [sym_continue_statement] = STATE(1346), + [sym_list_splat] = STATE(1590), + [sym_dictionary_splat] = STATE(1590), + [sym_global_statement] = STATE(1346), + [sym_nonlocal_statement] = STATE(1346), + [sym_exec_statement] = STATE(1346), + [sym_type_alias_statement] = STATE(1346), + [sym_expression_list] = STATE(1545), + [sym_pattern] = STATE(1020), + [sym_tuple_pattern] = STATE(1005), + [sym_list_pattern] = STATE(1005), + [sym_list_splat_pattern] = STATE(1005), + [sym_expression] = STATE(1191), + [sym_primary_expression] = STATE(773), + [sym_not_operator] = STATE(1126), + [sym_boolean_operator] = STATE(1126), + [sym_binary_operator] = STATE(950), + [sym_unary_operator] = STATE(950), + [sym_comparison_operator] = STATE(1126), + [sym_lambda] = STATE(1126), + [sym_assignment] = STATE(1545), + [sym_augmented_assignment] = STATE(1545), + [sym_pattern_list] = STATE(1030), + [sym_yield] = STATE(1545), + [sym_attribute] = STATE(614), + [sym_subscript] = STATE(614), + [sym_call] = STATE(950), + [sym_list] = STATE(950), + [sym_set] = STATE(950), + [sym_tuple] = STATE(950), + [sym_dictionary] = STATE(950), + [sym_list_comprehension] = STATE(950), + [sym_dictionary_comprehension] = STATE(950), + [sym_set_comprehension] = STATE(950), + [sym_generator_expression] = STATE(950), + [sym_parenthesized_expression] = STATE(950), + [sym_conditional_expression] = STATE(1126), + [sym_concatenated_string] = STATE(950), + [sym_string] = STATE(779), + [sym_concatenated_template_string] = STATE(950), + [sym_template_string] = STATE(772), + [sym_await] = STATE(950), [sym_identifier] = ACTIONS(7), [anon_sym_lazy] = ACTIONS(9), [anon_sym_import] = ACTIONS(11), @@ -19254,67 +19786,67 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_false] = ACTIONS(79), [sym_none] = ACTIONS(79), [sym_comment] = ACTIONS(3), - [sym__newline] = ACTIONS(445), - [sym__indent] = ACTIONS(447), + [sym__newline] = ACTIONS(465), + [sym__indent] = ACTIONS(467), [sym__string_start] = ACTIONS(83), [sym__template_string_start] = ACTIONS(85), }, - [STATE(99)] = { - [sym__simple_statements] = STATE(447), - [sym_import_statement] = STATE(1332), - [sym_future_import_statement] = STATE(1332), - [sym_import_from_statement] = STATE(1332), - [sym_print_statement] = STATE(1332), - [sym_assert_statement] = STATE(1332), - [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1156), - [sym_return_statement] = STATE(1332), - [sym_delete_statement] = STATE(1332), - [sym_raise_statement] = STATE(1332), - [sym_pass_statement] = STATE(1332), - [sym_break_statement] = STATE(1332), - [sym_continue_statement] = STATE(1332), - [sym_list_splat] = STATE(1520), - [sym_dictionary_splat] = STATE(1520), - [sym_global_statement] = STATE(1332), - [sym_nonlocal_statement] = STATE(1332), - [sym_exec_statement] = STATE(1332), - [sym_type_alias_statement] = STATE(1332), - [sym_expression_list] = STATE(1522), - [sym_pattern] = STATE(1017), - [sym_tuple_pattern] = STATE(1001), - [sym_list_pattern] = STATE(1001), - [sym_list_splat_pattern] = STATE(1001), - [sym_expression] = STATE(1176), - [sym_primary_expression] = STATE(765), - [sym_not_operator] = STATE(1156), - [sym_boolean_operator] = STATE(1156), - [sym_binary_operator] = STATE(920), - [sym_unary_operator] = STATE(920), - [sym_comparison_operator] = STATE(1156), - [sym_lambda] = STATE(1156), - [sym_assignment] = STATE(1522), - [sym_augmented_assignment] = STATE(1522), - [sym_pattern_list] = STATE(1026), - [sym_yield] = STATE(1522), - [sym_attribute] = STATE(582), - [sym_subscript] = STATE(582), - [sym_call] = STATE(920), - [sym_list] = STATE(920), - [sym_set] = STATE(920), - [sym_tuple] = STATE(920), - [sym_dictionary] = STATE(920), - [sym_list_comprehension] = STATE(920), - [sym_dictionary_comprehension] = STATE(920), - [sym_set_comprehension] = STATE(920), - [sym_generator_expression] = STATE(920), - [sym_parenthesized_expression] = STATE(920), - [sym_conditional_expression] = STATE(1156), - [sym_concatenated_string] = STATE(920), - [sym_string] = STATE(775), - [sym_concatenated_template_string] = STATE(920), - [sym_template_string] = STATE(769), - [sym_await] = STATE(920), + [STATE(104)] = { + [sym__simple_statements] = STATE(590), + [sym_import_statement] = STATE(1345), + [sym_future_import_statement] = STATE(1345), + [sym_import_from_statement] = STATE(1345), + [sym_print_statement] = STATE(1345), + [sym_assert_statement] = STATE(1345), + [sym_expression_statement] = STATE(1345), + [sym_named_expression] = STATE(1126), + [sym_return_statement] = STATE(1345), + [sym_delete_statement] = STATE(1345), + [sym_raise_statement] = STATE(1345), + [sym_pass_statement] = STATE(1345), + [sym_break_statement] = STATE(1345), + [sym_continue_statement] = STATE(1345), + [sym_list_splat] = STATE(1590), + [sym_dictionary_splat] = STATE(1590), + [sym_global_statement] = STATE(1345), + [sym_nonlocal_statement] = STATE(1345), + [sym_exec_statement] = STATE(1345), + [sym_type_alias_statement] = STATE(1345), + [sym_expression_list] = STATE(1545), + [sym_pattern] = STATE(1020), + [sym_tuple_pattern] = STATE(1005), + [sym_list_pattern] = STATE(1005), + [sym_list_splat_pattern] = STATE(1005), + [sym_expression] = STATE(1191), + [sym_primary_expression] = STATE(773), + [sym_not_operator] = STATE(1126), + [sym_boolean_operator] = STATE(1126), + [sym_binary_operator] = STATE(950), + [sym_unary_operator] = STATE(950), + [sym_comparison_operator] = STATE(1126), + [sym_lambda] = STATE(1126), + [sym_assignment] = STATE(1545), + [sym_augmented_assignment] = STATE(1545), + [sym_pattern_list] = STATE(1030), + [sym_yield] = STATE(1545), + [sym_attribute] = STATE(614), + [sym_subscript] = STATE(614), + [sym_call] = STATE(950), + [sym_list] = STATE(950), + [sym_set] = STATE(950), + [sym_tuple] = STATE(950), + [sym_dictionary] = STATE(950), + [sym_list_comprehension] = STATE(950), + [sym_dictionary_comprehension] = STATE(950), + [sym_set_comprehension] = STATE(950), + [sym_generator_expression] = STATE(950), + [sym_parenthesized_expression] = STATE(950), + [sym_conditional_expression] = STATE(1126), + [sym_concatenated_string] = STATE(950), + [sym_string] = STATE(779), + [sym_concatenated_template_string] = STATE(950), + [sym_template_string] = STATE(772), + [sym_await] = STATE(950), [sym_identifier] = ACTIONS(7), [anon_sym_lazy] = ACTIONS(9), [anon_sym_import] = ACTIONS(11), @@ -19352,67 +19884,67 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_false] = ACTIONS(79), [sym_none] = ACTIONS(79), [sym_comment] = ACTIONS(3), - [sym__newline] = ACTIONS(449), - [sym__indent] = ACTIONS(451), + [sym__newline] = ACTIONS(469), + [sym__indent] = ACTIONS(471), [sym__string_start] = ACTIONS(83), [sym__template_string_start] = ACTIONS(85), }, - [STATE(100)] = { - [sym__simple_statements] = STATE(460), - [sym_import_statement] = STATE(1301), - [sym_future_import_statement] = STATE(1301), - [sym_import_from_statement] = STATE(1301), - [sym_print_statement] = STATE(1301), - [sym_assert_statement] = STATE(1301), - [sym_expression_statement] = STATE(1301), - [sym_named_expression] = STATE(1156), - [sym_return_statement] = STATE(1301), - [sym_delete_statement] = STATE(1301), - [sym_raise_statement] = STATE(1301), - [sym_pass_statement] = STATE(1301), - [sym_break_statement] = STATE(1301), - [sym_continue_statement] = STATE(1301), - [sym_list_splat] = STATE(1520), - [sym_dictionary_splat] = STATE(1520), - [sym_global_statement] = STATE(1301), - [sym_nonlocal_statement] = STATE(1301), - [sym_exec_statement] = STATE(1301), - [sym_type_alias_statement] = STATE(1301), - [sym_expression_list] = STATE(1522), - [sym_pattern] = STATE(1017), - [sym_tuple_pattern] = STATE(1001), - [sym_list_pattern] = STATE(1001), - [sym_list_splat_pattern] = STATE(1001), - [sym_expression] = STATE(1176), - [sym_primary_expression] = STATE(765), - [sym_not_operator] = STATE(1156), - [sym_boolean_operator] = STATE(1156), - [sym_binary_operator] = STATE(920), - [sym_unary_operator] = STATE(920), - [sym_comparison_operator] = STATE(1156), - [sym_lambda] = STATE(1156), - [sym_assignment] = STATE(1522), - [sym_augmented_assignment] = STATE(1522), - [sym_pattern_list] = STATE(1026), - [sym_yield] = STATE(1522), - [sym_attribute] = STATE(582), - [sym_subscript] = STATE(582), - [sym_call] = STATE(920), - [sym_list] = STATE(920), - [sym_set] = STATE(920), - [sym_tuple] = STATE(920), - [sym_dictionary] = STATE(920), - [sym_list_comprehension] = STATE(920), - [sym_dictionary_comprehension] = STATE(920), - [sym_set_comprehension] = STATE(920), - [sym_generator_expression] = STATE(920), - [sym_parenthesized_expression] = STATE(920), - [sym_conditional_expression] = STATE(1156), - [sym_concatenated_string] = STATE(920), - [sym_string] = STATE(775), - [sym_concatenated_template_string] = STATE(920), - [sym_template_string] = STATE(769), - [sym_await] = STATE(920), + [STATE(105)] = { + [sym__simple_statements] = STATE(458), + [sym_import_statement] = STATE(1345), + [sym_future_import_statement] = STATE(1345), + [sym_import_from_statement] = STATE(1345), + [sym_print_statement] = STATE(1345), + [sym_assert_statement] = STATE(1345), + [sym_expression_statement] = STATE(1345), + [sym_named_expression] = STATE(1126), + [sym_return_statement] = STATE(1345), + [sym_delete_statement] = STATE(1345), + [sym_raise_statement] = STATE(1345), + [sym_pass_statement] = STATE(1345), + [sym_break_statement] = STATE(1345), + [sym_continue_statement] = STATE(1345), + [sym_list_splat] = STATE(1590), + [sym_dictionary_splat] = STATE(1590), + [sym_global_statement] = STATE(1345), + [sym_nonlocal_statement] = STATE(1345), + [sym_exec_statement] = STATE(1345), + [sym_type_alias_statement] = STATE(1345), + [sym_expression_list] = STATE(1545), + [sym_pattern] = STATE(1020), + [sym_tuple_pattern] = STATE(1005), + [sym_list_pattern] = STATE(1005), + [sym_list_splat_pattern] = STATE(1005), + [sym_expression] = STATE(1191), + [sym_primary_expression] = STATE(773), + [sym_not_operator] = STATE(1126), + [sym_boolean_operator] = STATE(1126), + [sym_binary_operator] = STATE(950), + [sym_unary_operator] = STATE(950), + [sym_comparison_operator] = STATE(1126), + [sym_lambda] = STATE(1126), + [sym_assignment] = STATE(1545), + [sym_augmented_assignment] = STATE(1545), + [sym_pattern_list] = STATE(1030), + [sym_yield] = STATE(1545), + [sym_attribute] = STATE(614), + [sym_subscript] = STATE(614), + [sym_call] = STATE(950), + [sym_list] = STATE(950), + [sym_set] = STATE(950), + [sym_tuple] = STATE(950), + [sym_dictionary] = STATE(950), + [sym_list_comprehension] = STATE(950), + [sym_dictionary_comprehension] = STATE(950), + [sym_set_comprehension] = STATE(950), + [sym_generator_expression] = STATE(950), + [sym_parenthesized_expression] = STATE(950), + [sym_conditional_expression] = STATE(1126), + [sym_concatenated_string] = STATE(950), + [sym_string] = STATE(779), + [sym_concatenated_template_string] = STATE(950), + [sym_template_string] = STATE(772), + [sym_await] = STATE(950), [sym_identifier] = ACTIONS(7), [anon_sym_lazy] = ACTIONS(9), [anon_sym_import] = ACTIONS(11), @@ -19450,67 +19982,67 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_false] = ACTIONS(79), [sym_none] = ACTIONS(79), [sym_comment] = ACTIONS(3), - [sym__newline] = ACTIONS(453), - [sym__indent] = ACTIONS(455), + [sym__newline] = ACTIONS(473), + [sym__indent] = ACTIONS(475), [sym__string_start] = ACTIONS(83), [sym__template_string_start] = ACTIONS(85), }, - [STATE(101)] = { - [sym__simple_statements] = STATE(502), - [sym_import_statement] = STATE(1332), - [sym_future_import_statement] = STATE(1332), - [sym_import_from_statement] = STATE(1332), - [sym_print_statement] = STATE(1332), - [sym_assert_statement] = STATE(1332), - [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1156), - [sym_return_statement] = STATE(1332), - [sym_delete_statement] = STATE(1332), - [sym_raise_statement] = STATE(1332), - [sym_pass_statement] = STATE(1332), - [sym_break_statement] = STATE(1332), - [sym_continue_statement] = STATE(1332), - [sym_list_splat] = STATE(1520), - [sym_dictionary_splat] = STATE(1520), - [sym_global_statement] = STATE(1332), - [sym_nonlocal_statement] = STATE(1332), - [sym_exec_statement] = STATE(1332), - [sym_type_alias_statement] = STATE(1332), - [sym_expression_list] = STATE(1522), - [sym_pattern] = STATE(1017), - [sym_tuple_pattern] = STATE(1001), - [sym_list_pattern] = STATE(1001), - [sym_list_splat_pattern] = STATE(1001), - [sym_expression] = STATE(1176), - [sym_primary_expression] = STATE(765), - [sym_not_operator] = STATE(1156), - [sym_boolean_operator] = STATE(1156), - [sym_binary_operator] = STATE(920), - [sym_unary_operator] = STATE(920), - [sym_comparison_operator] = STATE(1156), - [sym_lambda] = STATE(1156), - [sym_assignment] = STATE(1522), - [sym_augmented_assignment] = STATE(1522), - [sym_pattern_list] = STATE(1026), - [sym_yield] = STATE(1522), - [sym_attribute] = STATE(582), - [sym_subscript] = STATE(582), - [sym_call] = STATE(920), - [sym_list] = STATE(920), - [sym_set] = STATE(920), - [sym_tuple] = STATE(920), - [sym_dictionary] = STATE(920), - [sym_list_comprehension] = STATE(920), - [sym_dictionary_comprehension] = STATE(920), - [sym_set_comprehension] = STATE(920), - [sym_generator_expression] = STATE(920), - [sym_parenthesized_expression] = STATE(920), - [sym_conditional_expression] = STATE(1156), - [sym_concatenated_string] = STATE(920), - [sym_string] = STATE(775), - [sym_concatenated_template_string] = STATE(920), - [sym_template_string] = STATE(769), - [sym_await] = STATE(920), + [STATE(106)] = { + [sym__simple_statements] = STATE(1216), + [sym_import_statement] = STATE(1402), + [sym_future_import_statement] = STATE(1402), + [sym_import_from_statement] = STATE(1402), + [sym_print_statement] = STATE(1402), + [sym_assert_statement] = STATE(1402), + [sym_expression_statement] = STATE(1402), + [sym_named_expression] = STATE(1126), + [sym_return_statement] = STATE(1402), + [sym_delete_statement] = STATE(1402), + [sym_raise_statement] = STATE(1402), + [sym_pass_statement] = STATE(1402), + [sym_break_statement] = STATE(1402), + [sym_continue_statement] = STATE(1402), + [sym_list_splat] = STATE(1590), + [sym_dictionary_splat] = STATE(1590), + [sym_global_statement] = STATE(1402), + [sym_nonlocal_statement] = STATE(1402), + [sym_exec_statement] = STATE(1402), + [sym_type_alias_statement] = STATE(1402), + [sym_expression_list] = STATE(1545), + [sym_pattern] = STATE(1020), + [sym_tuple_pattern] = STATE(1005), + [sym_list_pattern] = STATE(1005), + [sym_list_splat_pattern] = STATE(1005), + [sym_expression] = STATE(1191), + [sym_primary_expression] = STATE(773), + [sym_not_operator] = STATE(1126), + [sym_boolean_operator] = STATE(1126), + [sym_binary_operator] = STATE(950), + [sym_unary_operator] = STATE(950), + [sym_comparison_operator] = STATE(1126), + [sym_lambda] = STATE(1126), + [sym_assignment] = STATE(1545), + [sym_augmented_assignment] = STATE(1545), + [sym_pattern_list] = STATE(1030), + [sym_yield] = STATE(1545), + [sym_attribute] = STATE(614), + [sym_subscript] = STATE(614), + [sym_call] = STATE(950), + [sym_list] = STATE(950), + [sym_set] = STATE(950), + [sym_tuple] = STATE(950), + [sym_dictionary] = STATE(950), + [sym_list_comprehension] = STATE(950), + [sym_dictionary_comprehension] = STATE(950), + [sym_set_comprehension] = STATE(950), + [sym_generator_expression] = STATE(950), + [sym_parenthesized_expression] = STATE(950), + [sym_conditional_expression] = STATE(1126), + [sym_concatenated_string] = STATE(950), + [sym_string] = STATE(779), + [sym_concatenated_template_string] = STATE(950), + [sym_template_string] = STATE(772), + [sym_await] = STATE(950), [sym_identifier] = ACTIONS(7), [anon_sym_lazy] = ACTIONS(9), [anon_sym_import] = ACTIONS(11), @@ -19548,67 +20080,67 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_false] = ACTIONS(79), [sym_none] = ACTIONS(79), [sym_comment] = ACTIONS(3), - [sym__newline] = ACTIONS(457), - [sym__indent] = ACTIONS(459), + [sym__newline] = ACTIONS(477), + [sym__indent] = ACTIONS(479), [sym__string_start] = ACTIONS(83), [sym__template_string_start] = ACTIONS(85), }, - [STATE(102)] = { - [sym__simple_statements] = STATE(547), - [sym_import_statement] = STATE(1332), - [sym_future_import_statement] = STATE(1332), - [sym_import_from_statement] = STATE(1332), - [sym_print_statement] = STATE(1332), - [sym_assert_statement] = STATE(1332), - [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1156), - [sym_return_statement] = STATE(1332), - [sym_delete_statement] = STATE(1332), - [sym_raise_statement] = STATE(1332), - [sym_pass_statement] = STATE(1332), - [sym_break_statement] = STATE(1332), - [sym_continue_statement] = STATE(1332), - [sym_list_splat] = STATE(1520), - [sym_dictionary_splat] = STATE(1520), - [sym_global_statement] = STATE(1332), - [sym_nonlocal_statement] = STATE(1332), - [sym_exec_statement] = STATE(1332), - [sym_type_alias_statement] = STATE(1332), - [sym_expression_list] = STATE(1522), - [sym_pattern] = STATE(1017), - [sym_tuple_pattern] = STATE(1001), - [sym_list_pattern] = STATE(1001), - [sym_list_splat_pattern] = STATE(1001), - [sym_expression] = STATE(1176), - [sym_primary_expression] = STATE(765), - [sym_not_operator] = STATE(1156), - [sym_boolean_operator] = STATE(1156), - [sym_binary_operator] = STATE(920), - [sym_unary_operator] = STATE(920), - [sym_comparison_operator] = STATE(1156), - [sym_lambda] = STATE(1156), - [sym_assignment] = STATE(1522), - [sym_augmented_assignment] = STATE(1522), - [sym_pattern_list] = STATE(1026), - [sym_yield] = STATE(1522), - [sym_attribute] = STATE(582), - [sym_subscript] = STATE(582), - [sym_call] = STATE(920), - [sym_list] = STATE(920), - [sym_set] = STATE(920), - [sym_tuple] = STATE(920), - [sym_dictionary] = STATE(920), - [sym_list_comprehension] = STATE(920), - [sym_dictionary_comprehension] = STATE(920), - [sym_set_comprehension] = STATE(920), - [sym_generator_expression] = STATE(920), - [sym_parenthesized_expression] = STATE(920), - [sym_conditional_expression] = STATE(1156), - [sym_concatenated_string] = STATE(920), - [sym_string] = STATE(775), - [sym_concatenated_template_string] = STATE(920), - [sym_template_string] = STATE(769), - [sym_await] = STATE(920), + [STATE(107)] = { + [sym__simple_statements] = STATE(498), + [sym_import_statement] = STATE(1346), + [sym_future_import_statement] = STATE(1346), + [sym_import_from_statement] = STATE(1346), + [sym_print_statement] = STATE(1346), + [sym_assert_statement] = STATE(1346), + [sym_expression_statement] = STATE(1346), + [sym_named_expression] = STATE(1126), + [sym_return_statement] = STATE(1346), + [sym_delete_statement] = STATE(1346), + [sym_raise_statement] = STATE(1346), + [sym_pass_statement] = STATE(1346), + [sym_break_statement] = STATE(1346), + [sym_continue_statement] = STATE(1346), + [sym_list_splat] = STATE(1590), + [sym_dictionary_splat] = STATE(1590), + [sym_global_statement] = STATE(1346), + [sym_nonlocal_statement] = STATE(1346), + [sym_exec_statement] = STATE(1346), + [sym_type_alias_statement] = STATE(1346), + [sym_expression_list] = STATE(1545), + [sym_pattern] = STATE(1020), + [sym_tuple_pattern] = STATE(1005), + [sym_list_pattern] = STATE(1005), + [sym_list_splat_pattern] = STATE(1005), + [sym_expression] = STATE(1191), + [sym_primary_expression] = STATE(773), + [sym_not_operator] = STATE(1126), + [sym_boolean_operator] = STATE(1126), + [sym_binary_operator] = STATE(950), + [sym_unary_operator] = STATE(950), + [sym_comparison_operator] = STATE(1126), + [sym_lambda] = STATE(1126), + [sym_assignment] = STATE(1545), + [sym_augmented_assignment] = STATE(1545), + [sym_pattern_list] = STATE(1030), + [sym_yield] = STATE(1545), + [sym_attribute] = STATE(614), + [sym_subscript] = STATE(614), + [sym_call] = STATE(950), + [sym_list] = STATE(950), + [sym_set] = STATE(950), + [sym_tuple] = STATE(950), + [sym_dictionary] = STATE(950), + [sym_list_comprehension] = STATE(950), + [sym_dictionary_comprehension] = STATE(950), + [sym_set_comprehension] = STATE(950), + [sym_generator_expression] = STATE(950), + [sym_parenthesized_expression] = STATE(950), + [sym_conditional_expression] = STATE(1126), + [sym_concatenated_string] = STATE(950), + [sym_string] = STATE(779), + [sym_concatenated_template_string] = STATE(950), + [sym_template_string] = STATE(772), + [sym_await] = STATE(950), [sym_identifier] = ACTIONS(7), [anon_sym_lazy] = ACTIONS(9), [anon_sym_import] = ACTIONS(11), @@ -19646,557 +20178,67 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_false] = ACTIONS(79), [sym_none] = ACTIONS(79), [sym_comment] = ACTIONS(3), - [sym__newline] = ACTIONS(461), - [sym__indent] = ACTIONS(463), + [sym__newline] = ACTIONS(481), + [sym__indent] = ACTIONS(483), [sym__string_start] = ACTIONS(83), [sym__template_string_start] = ACTIONS(85), }, - [STATE(103)] = { - [sym__simple_statements] = STATE(461), - [sym_import_statement] = STATE(1301), - [sym_future_import_statement] = STATE(1301), - [sym_import_from_statement] = STATE(1301), - [sym_print_statement] = STATE(1301), - [sym_assert_statement] = STATE(1301), - [sym_expression_statement] = STATE(1301), - [sym_named_expression] = STATE(1156), - [sym_return_statement] = STATE(1301), - [sym_delete_statement] = STATE(1301), - [sym_raise_statement] = STATE(1301), - [sym_pass_statement] = STATE(1301), - [sym_break_statement] = STATE(1301), - [sym_continue_statement] = STATE(1301), - [sym_list_splat] = STATE(1520), - [sym_dictionary_splat] = STATE(1520), - [sym_global_statement] = STATE(1301), - [sym_nonlocal_statement] = STATE(1301), - [sym_exec_statement] = STATE(1301), - [sym_type_alias_statement] = STATE(1301), - [sym_expression_list] = STATE(1522), - [sym_pattern] = STATE(1017), - [sym_tuple_pattern] = STATE(1001), - [sym_list_pattern] = STATE(1001), - [sym_list_splat_pattern] = STATE(1001), - [sym_expression] = STATE(1176), - [sym_primary_expression] = STATE(765), - [sym_not_operator] = STATE(1156), - [sym_boolean_operator] = STATE(1156), - [sym_binary_operator] = STATE(920), - [sym_unary_operator] = STATE(920), - [sym_comparison_operator] = STATE(1156), - [sym_lambda] = STATE(1156), - [sym_assignment] = STATE(1522), - [sym_augmented_assignment] = STATE(1522), - [sym_pattern_list] = STATE(1026), - [sym_yield] = STATE(1522), - [sym_attribute] = STATE(582), - [sym_subscript] = STATE(582), - [sym_call] = STATE(920), - [sym_list] = STATE(920), - [sym_set] = STATE(920), - [sym_tuple] = STATE(920), - [sym_dictionary] = STATE(920), - [sym_list_comprehension] = STATE(920), - [sym_dictionary_comprehension] = STATE(920), - [sym_set_comprehension] = STATE(920), - [sym_generator_expression] = STATE(920), - [sym_parenthesized_expression] = STATE(920), - [sym_conditional_expression] = STATE(1156), - [sym_concatenated_string] = STATE(920), - [sym_string] = STATE(775), - [sym_concatenated_template_string] = STATE(920), - [sym_template_string] = STATE(769), - [sym_await] = STATE(920), - [sym_identifier] = ACTIONS(7), - [anon_sym_lazy] = ACTIONS(9), - [anon_sym_import] = ACTIONS(11), - [anon_sym_from] = ACTIONS(13), - [anon_sym_LPAREN] = ACTIONS(15), - [anon_sym_STAR] = ACTIONS(17), - [anon_sym_print] = ACTIONS(19), - [anon_sym_assert] = ACTIONS(21), - [anon_sym_return] = ACTIONS(23), - [anon_sym_del] = ACTIONS(25), - [anon_sym_raise] = ACTIONS(27), - [anon_sym_pass] = ACTIONS(29), - [anon_sym_break] = ACTIONS(31), - [anon_sym_continue] = ACTIONS(33), - [anon_sym_async] = ACTIONS(319), - [anon_sym_match] = ACTIONS(319), - [anon_sym_DASH] = ACTIONS(49), - [anon_sym_PLUS] = ACTIONS(49), - [anon_sym_LBRACK] = ACTIONS(51), - [anon_sym_LBRACE] = ACTIONS(53), - [anon_sym_STAR_STAR] = ACTIONS(55), - [anon_sym_global] = ACTIONS(59), - [anon_sym_nonlocal] = ACTIONS(61), - [anon_sym_exec] = ACTIONS(63), - [anon_sym_type] = ACTIONS(65), - [anon_sym_not] = ACTIONS(71), - [anon_sym_TILDE] = ACTIONS(49), - [anon_sym_lambda] = ACTIONS(73), - [anon_sym_yield] = ACTIONS(75), - [sym_ellipsis] = ACTIONS(77), - [sym_integer] = ACTIONS(79), - [sym_float] = ACTIONS(77), - [anon_sym_await] = ACTIONS(81), - [sym_true] = ACTIONS(79), - [sym_false] = ACTIONS(79), - [sym_none] = ACTIONS(79), - [sym_comment] = ACTIONS(3), - [sym__newline] = ACTIONS(465), - [sym__indent] = ACTIONS(467), - [sym__string_start] = ACTIONS(83), - [sym__template_string_start] = ACTIONS(85), - }, - [STATE(104)] = { - [sym__simple_statements] = STATE(468), - [sym_import_statement] = STATE(1332), - [sym_future_import_statement] = STATE(1332), - [sym_import_from_statement] = STATE(1332), - [sym_print_statement] = STATE(1332), - [sym_assert_statement] = STATE(1332), - [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1156), - [sym_return_statement] = STATE(1332), - [sym_delete_statement] = STATE(1332), - [sym_raise_statement] = STATE(1332), - [sym_pass_statement] = STATE(1332), - [sym_break_statement] = STATE(1332), - [sym_continue_statement] = STATE(1332), - [sym_list_splat] = STATE(1520), - [sym_dictionary_splat] = STATE(1520), - [sym_global_statement] = STATE(1332), - [sym_nonlocal_statement] = STATE(1332), - [sym_exec_statement] = STATE(1332), - [sym_type_alias_statement] = STATE(1332), - [sym_expression_list] = STATE(1522), - [sym_pattern] = STATE(1017), - [sym_tuple_pattern] = STATE(1001), - [sym_list_pattern] = STATE(1001), - [sym_list_splat_pattern] = STATE(1001), - [sym_expression] = STATE(1176), - [sym_primary_expression] = STATE(765), - [sym_not_operator] = STATE(1156), - [sym_boolean_operator] = STATE(1156), - [sym_binary_operator] = STATE(920), - [sym_unary_operator] = STATE(920), - [sym_comparison_operator] = STATE(1156), - [sym_lambda] = STATE(1156), - [sym_assignment] = STATE(1522), - [sym_augmented_assignment] = STATE(1522), - [sym_pattern_list] = STATE(1026), - [sym_yield] = STATE(1522), - [sym_attribute] = STATE(582), - [sym_subscript] = STATE(582), - [sym_call] = STATE(920), - [sym_list] = STATE(920), - [sym_set] = STATE(920), - [sym_tuple] = STATE(920), - [sym_dictionary] = STATE(920), - [sym_list_comprehension] = STATE(920), - [sym_dictionary_comprehension] = STATE(920), - [sym_set_comprehension] = STATE(920), - [sym_generator_expression] = STATE(920), - [sym_parenthesized_expression] = STATE(920), - [sym_conditional_expression] = STATE(1156), - [sym_concatenated_string] = STATE(920), - [sym_string] = STATE(775), - [sym_concatenated_template_string] = STATE(920), - [sym_template_string] = STATE(769), - [sym_await] = STATE(920), - [sym_identifier] = ACTIONS(7), - [anon_sym_lazy] = ACTIONS(9), - [anon_sym_import] = ACTIONS(11), - [anon_sym_from] = ACTIONS(13), - [anon_sym_LPAREN] = ACTIONS(15), - [anon_sym_STAR] = ACTIONS(17), - [anon_sym_print] = ACTIONS(19), - [anon_sym_assert] = ACTIONS(21), - [anon_sym_return] = ACTIONS(23), - [anon_sym_del] = ACTIONS(25), - [anon_sym_raise] = ACTIONS(27), - [anon_sym_pass] = ACTIONS(29), - [anon_sym_break] = ACTIONS(31), - [anon_sym_continue] = ACTIONS(33), - [anon_sym_async] = ACTIONS(319), - [anon_sym_match] = ACTIONS(319), - [anon_sym_DASH] = ACTIONS(49), - [anon_sym_PLUS] = ACTIONS(49), - [anon_sym_LBRACK] = ACTIONS(51), - [anon_sym_LBRACE] = ACTIONS(53), - [anon_sym_STAR_STAR] = ACTIONS(55), - [anon_sym_global] = ACTIONS(59), - [anon_sym_nonlocal] = ACTIONS(61), - [anon_sym_exec] = ACTIONS(63), - [anon_sym_type] = ACTIONS(65), - [anon_sym_not] = ACTIONS(71), - [anon_sym_TILDE] = ACTIONS(49), - [anon_sym_lambda] = ACTIONS(73), - [anon_sym_yield] = ACTIONS(75), - [sym_ellipsis] = ACTIONS(77), - [sym_integer] = ACTIONS(79), - [sym_float] = ACTIONS(77), - [anon_sym_await] = ACTIONS(81), - [sym_true] = ACTIONS(79), - [sym_false] = ACTIONS(79), - [sym_none] = ACTIONS(79), - [sym_comment] = ACTIONS(3), - [sym__newline] = ACTIONS(469), - [sym__indent] = ACTIONS(471), - [sym__string_start] = ACTIONS(83), - [sym__template_string_start] = ACTIONS(85), - }, - [STATE(105)] = { - [sym__simple_statements] = STATE(594), - [sym_import_statement] = STATE(1301), - [sym_future_import_statement] = STATE(1301), - [sym_import_from_statement] = STATE(1301), - [sym_print_statement] = STATE(1301), - [sym_assert_statement] = STATE(1301), - [sym_expression_statement] = STATE(1301), - [sym_named_expression] = STATE(1156), - [sym_return_statement] = STATE(1301), - [sym_delete_statement] = STATE(1301), - [sym_raise_statement] = STATE(1301), - [sym_pass_statement] = STATE(1301), - [sym_break_statement] = STATE(1301), - [sym_continue_statement] = STATE(1301), - [sym_list_splat] = STATE(1520), - [sym_dictionary_splat] = STATE(1520), - [sym_global_statement] = STATE(1301), - [sym_nonlocal_statement] = STATE(1301), - [sym_exec_statement] = STATE(1301), - [sym_type_alias_statement] = STATE(1301), - [sym_expression_list] = STATE(1522), - [sym_pattern] = STATE(1017), - [sym_tuple_pattern] = STATE(1001), - [sym_list_pattern] = STATE(1001), - [sym_list_splat_pattern] = STATE(1001), - [sym_expression] = STATE(1176), - [sym_primary_expression] = STATE(765), - [sym_not_operator] = STATE(1156), - [sym_boolean_operator] = STATE(1156), - [sym_binary_operator] = STATE(920), - [sym_unary_operator] = STATE(920), - [sym_comparison_operator] = STATE(1156), - [sym_lambda] = STATE(1156), - [sym_assignment] = STATE(1522), - [sym_augmented_assignment] = STATE(1522), - [sym_pattern_list] = STATE(1026), - [sym_yield] = STATE(1522), - [sym_attribute] = STATE(582), - [sym_subscript] = STATE(582), - [sym_call] = STATE(920), - [sym_list] = STATE(920), - [sym_set] = STATE(920), - [sym_tuple] = STATE(920), - [sym_dictionary] = STATE(920), - [sym_list_comprehension] = STATE(920), - [sym_dictionary_comprehension] = STATE(920), - [sym_set_comprehension] = STATE(920), - [sym_generator_expression] = STATE(920), - [sym_parenthesized_expression] = STATE(920), - [sym_conditional_expression] = STATE(1156), - [sym_concatenated_string] = STATE(920), - [sym_string] = STATE(775), - [sym_concatenated_template_string] = STATE(920), - [sym_template_string] = STATE(769), - [sym_await] = STATE(920), - [sym_identifier] = ACTIONS(7), - [anon_sym_lazy] = ACTIONS(9), - [anon_sym_import] = ACTIONS(11), - [anon_sym_from] = ACTIONS(13), - [anon_sym_LPAREN] = ACTIONS(15), - [anon_sym_STAR] = ACTIONS(17), - [anon_sym_print] = ACTIONS(19), - [anon_sym_assert] = ACTIONS(21), - [anon_sym_return] = ACTIONS(23), - [anon_sym_del] = ACTIONS(25), - [anon_sym_raise] = ACTIONS(27), - [anon_sym_pass] = ACTIONS(29), - [anon_sym_break] = ACTIONS(31), - [anon_sym_continue] = ACTIONS(33), - [anon_sym_async] = ACTIONS(319), - [anon_sym_match] = ACTIONS(319), - [anon_sym_DASH] = ACTIONS(49), - [anon_sym_PLUS] = ACTIONS(49), - [anon_sym_LBRACK] = ACTIONS(51), - [anon_sym_LBRACE] = ACTIONS(53), - [anon_sym_STAR_STAR] = ACTIONS(55), - [anon_sym_global] = ACTIONS(59), - [anon_sym_nonlocal] = ACTIONS(61), - [anon_sym_exec] = ACTIONS(63), - [anon_sym_type] = ACTIONS(65), - [anon_sym_not] = ACTIONS(71), - [anon_sym_TILDE] = ACTIONS(49), - [anon_sym_lambda] = ACTIONS(73), - [anon_sym_yield] = ACTIONS(75), - [sym_ellipsis] = ACTIONS(77), - [sym_integer] = ACTIONS(79), - [sym_float] = ACTIONS(77), - [anon_sym_await] = ACTIONS(81), - [sym_true] = ACTIONS(79), - [sym_false] = ACTIONS(79), - [sym_none] = ACTIONS(79), - [sym_comment] = ACTIONS(3), - [sym__newline] = ACTIONS(473), - [sym__indent] = ACTIONS(475), - [sym__string_start] = ACTIONS(83), - [sym__template_string_start] = ACTIONS(85), - }, - [STATE(106)] = { - [sym__simple_statements] = STATE(553), - [sym_import_statement] = STATE(1332), - [sym_future_import_statement] = STATE(1332), - [sym_import_from_statement] = STATE(1332), - [sym_print_statement] = STATE(1332), - [sym_assert_statement] = STATE(1332), - [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1156), - [sym_return_statement] = STATE(1332), - [sym_delete_statement] = STATE(1332), - [sym_raise_statement] = STATE(1332), - [sym_pass_statement] = STATE(1332), - [sym_break_statement] = STATE(1332), - [sym_continue_statement] = STATE(1332), - [sym_list_splat] = STATE(1520), - [sym_dictionary_splat] = STATE(1520), - [sym_global_statement] = STATE(1332), - [sym_nonlocal_statement] = STATE(1332), - [sym_exec_statement] = STATE(1332), - [sym_type_alias_statement] = STATE(1332), - [sym_expression_list] = STATE(1522), - [sym_pattern] = STATE(1017), - [sym_tuple_pattern] = STATE(1001), - [sym_list_pattern] = STATE(1001), - [sym_list_splat_pattern] = STATE(1001), - [sym_expression] = STATE(1176), - [sym_primary_expression] = STATE(765), - [sym_not_operator] = STATE(1156), - [sym_boolean_operator] = STATE(1156), - [sym_binary_operator] = STATE(920), - [sym_unary_operator] = STATE(920), - [sym_comparison_operator] = STATE(1156), - [sym_lambda] = STATE(1156), - [sym_assignment] = STATE(1522), - [sym_augmented_assignment] = STATE(1522), - [sym_pattern_list] = STATE(1026), - [sym_yield] = STATE(1522), - [sym_attribute] = STATE(582), - [sym_subscript] = STATE(582), - [sym_call] = STATE(920), - [sym_list] = STATE(920), - [sym_set] = STATE(920), - [sym_tuple] = STATE(920), - [sym_dictionary] = STATE(920), - [sym_list_comprehension] = STATE(920), - [sym_dictionary_comprehension] = STATE(920), - [sym_set_comprehension] = STATE(920), - [sym_generator_expression] = STATE(920), - [sym_parenthesized_expression] = STATE(920), - [sym_conditional_expression] = STATE(1156), - [sym_concatenated_string] = STATE(920), - [sym_string] = STATE(775), - [sym_concatenated_template_string] = STATE(920), - [sym_template_string] = STATE(769), - [sym_await] = STATE(920), - [sym_identifier] = ACTIONS(7), - [anon_sym_lazy] = ACTIONS(9), - [anon_sym_import] = ACTIONS(11), - [anon_sym_from] = ACTIONS(13), - [anon_sym_LPAREN] = ACTIONS(15), - [anon_sym_STAR] = ACTIONS(17), - [anon_sym_print] = ACTIONS(19), - [anon_sym_assert] = ACTIONS(21), - [anon_sym_return] = ACTIONS(23), - [anon_sym_del] = ACTIONS(25), - [anon_sym_raise] = ACTIONS(27), - [anon_sym_pass] = ACTIONS(29), - [anon_sym_break] = ACTIONS(31), - [anon_sym_continue] = ACTIONS(33), - [anon_sym_async] = ACTIONS(319), - [anon_sym_match] = ACTIONS(319), - [anon_sym_DASH] = ACTIONS(49), - [anon_sym_PLUS] = ACTIONS(49), - [anon_sym_LBRACK] = ACTIONS(51), - [anon_sym_LBRACE] = ACTIONS(53), - [anon_sym_STAR_STAR] = ACTIONS(55), - [anon_sym_global] = ACTIONS(59), - [anon_sym_nonlocal] = ACTIONS(61), - [anon_sym_exec] = ACTIONS(63), - [anon_sym_type] = ACTIONS(65), - [anon_sym_not] = ACTIONS(71), - [anon_sym_TILDE] = ACTIONS(49), - [anon_sym_lambda] = ACTIONS(73), - [anon_sym_yield] = ACTIONS(75), - [sym_ellipsis] = ACTIONS(77), - [sym_integer] = ACTIONS(79), - [sym_float] = ACTIONS(77), - [anon_sym_await] = ACTIONS(81), - [sym_true] = ACTIONS(79), - [sym_false] = ACTIONS(79), - [sym_none] = ACTIONS(79), - [sym_comment] = ACTIONS(3), - [sym__newline] = ACTIONS(477), - [sym__indent] = ACTIONS(479), - [sym__string_start] = ACTIONS(83), - [sym__template_string_start] = ACTIONS(85), - }, - [STATE(107)] = { - [sym__simple_statements] = STATE(613), - [sym_import_statement] = STATE(1301), - [sym_future_import_statement] = STATE(1301), - [sym_import_from_statement] = STATE(1301), - [sym_print_statement] = STATE(1301), - [sym_assert_statement] = STATE(1301), - [sym_expression_statement] = STATE(1301), - [sym_named_expression] = STATE(1156), - [sym_return_statement] = STATE(1301), - [sym_delete_statement] = STATE(1301), - [sym_raise_statement] = STATE(1301), - [sym_pass_statement] = STATE(1301), - [sym_break_statement] = STATE(1301), - [sym_continue_statement] = STATE(1301), - [sym_list_splat] = STATE(1520), - [sym_dictionary_splat] = STATE(1520), - [sym_global_statement] = STATE(1301), - [sym_nonlocal_statement] = STATE(1301), - [sym_exec_statement] = STATE(1301), - [sym_type_alias_statement] = STATE(1301), - [sym_expression_list] = STATE(1522), - [sym_pattern] = STATE(1017), - [sym_tuple_pattern] = STATE(1001), - [sym_list_pattern] = STATE(1001), - [sym_list_splat_pattern] = STATE(1001), - [sym_expression] = STATE(1176), - [sym_primary_expression] = STATE(765), - [sym_not_operator] = STATE(1156), - [sym_boolean_operator] = STATE(1156), - [sym_binary_operator] = STATE(920), - [sym_unary_operator] = STATE(920), - [sym_comparison_operator] = STATE(1156), - [sym_lambda] = STATE(1156), - [sym_assignment] = STATE(1522), - [sym_augmented_assignment] = STATE(1522), - [sym_pattern_list] = STATE(1026), - [sym_yield] = STATE(1522), - [sym_attribute] = STATE(582), - [sym_subscript] = STATE(582), - [sym_call] = STATE(920), - [sym_list] = STATE(920), - [sym_set] = STATE(920), - [sym_tuple] = STATE(920), - [sym_dictionary] = STATE(920), - [sym_list_comprehension] = STATE(920), - [sym_dictionary_comprehension] = STATE(920), - [sym_set_comprehension] = STATE(920), - [sym_generator_expression] = STATE(920), - [sym_parenthesized_expression] = STATE(920), - [sym_conditional_expression] = STATE(1156), - [sym_concatenated_string] = STATE(920), - [sym_string] = STATE(775), - [sym_concatenated_template_string] = STATE(920), - [sym_template_string] = STATE(769), - [sym_await] = STATE(920), - [sym_identifier] = ACTIONS(7), - [anon_sym_lazy] = ACTIONS(9), - [anon_sym_import] = ACTIONS(11), - [anon_sym_from] = ACTIONS(13), - [anon_sym_LPAREN] = ACTIONS(15), - [anon_sym_STAR] = ACTIONS(17), - [anon_sym_print] = ACTIONS(19), - [anon_sym_assert] = ACTIONS(21), - [anon_sym_return] = ACTIONS(23), - [anon_sym_del] = ACTIONS(25), - [anon_sym_raise] = ACTIONS(27), - [anon_sym_pass] = ACTIONS(29), - [anon_sym_break] = ACTIONS(31), - [anon_sym_continue] = ACTIONS(33), - [anon_sym_async] = ACTIONS(319), - [anon_sym_match] = ACTIONS(319), - [anon_sym_DASH] = ACTIONS(49), - [anon_sym_PLUS] = ACTIONS(49), - [anon_sym_LBRACK] = ACTIONS(51), - [anon_sym_LBRACE] = ACTIONS(53), - [anon_sym_STAR_STAR] = ACTIONS(55), - [anon_sym_global] = ACTIONS(59), - [anon_sym_nonlocal] = ACTIONS(61), - [anon_sym_exec] = ACTIONS(63), - [anon_sym_type] = ACTIONS(65), - [anon_sym_not] = ACTIONS(71), - [anon_sym_TILDE] = ACTIONS(49), - [anon_sym_lambda] = ACTIONS(73), - [anon_sym_yield] = ACTIONS(75), - [sym_ellipsis] = ACTIONS(77), - [sym_integer] = ACTIONS(79), - [sym_float] = ACTIONS(77), - [anon_sym_await] = ACTIONS(81), - [sym_true] = ACTIONS(79), - [sym_false] = ACTIONS(79), - [sym_none] = ACTIONS(79), - [sym_comment] = ACTIONS(3), - [sym__newline] = ACTIONS(481), - [sym__indent] = ACTIONS(483), - [sym__string_start] = ACTIONS(83), - [sym__template_string_start] = ACTIONS(85), - }, - [STATE(108)] = { - [sym__simple_statements] = STATE(453), - [sym_import_statement] = STATE(1332), - [sym_future_import_statement] = STATE(1332), - [sym_import_from_statement] = STATE(1332), - [sym_print_statement] = STATE(1332), - [sym_assert_statement] = STATE(1332), - [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1156), - [sym_return_statement] = STATE(1332), - [sym_delete_statement] = STATE(1332), - [sym_raise_statement] = STATE(1332), - [sym_pass_statement] = STATE(1332), - [sym_break_statement] = STATE(1332), - [sym_continue_statement] = STATE(1332), - [sym_list_splat] = STATE(1520), - [sym_dictionary_splat] = STATE(1520), - [sym_global_statement] = STATE(1332), - [sym_nonlocal_statement] = STATE(1332), - [sym_exec_statement] = STATE(1332), - [sym_type_alias_statement] = STATE(1332), - [sym_expression_list] = STATE(1522), - [sym_pattern] = STATE(1017), - [sym_tuple_pattern] = STATE(1001), - [sym_list_pattern] = STATE(1001), - [sym_list_splat_pattern] = STATE(1001), - [sym_expression] = STATE(1176), - [sym_primary_expression] = STATE(765), - [sym_not_operator] = STATE(1156), - [sym_boolean_operator] = STATE(1156), - [sym_binary_operator] = STATE(920), - [sym_unary_operator] = STATE(920), - [sym_comparison_operator] = STATE(1156), - [sym_lambda] = STATE(1156), - [sym_assignment] = STATE(1522), - [sym_augmented_assignment] = STATE(1522), - [sym_pattern_list] = STATE(1026), - [sym_yield] = STATE(1522), - [sym_attribute] = STATE(582), - [sym_subscript] = STATE(582), - [sym_call] = STATE(920), - [sym_list] = STATE(920), - [sym_set] = STATE(920), - [sym_tuple] = STATE(920), - [sym_dictionary] = STATE(920), - [sym_list_comprehension] = STATE(920), - [sym_dictionary_comprehension] = STATE(920), - [sym_set_comprehension] = STATE(920), - [sym_generator_expression] = STATE(920), - [sym_parenthesized_expression] = STATE(920), - [sym_conditional_expression] = STATE(1156), - [sym_concatenated_string] = STATE(920), - [sym_string] = STATE(775), - [sym_concatenated_template_string] = STATE(920), - [sym_template_string] = STATE(769), - [sym_await] = STATE(920), + [STATE(108)] = { + [sym__simple_statements] = STATE(505), + [sym_import_statement] = STATE(1345), + [sym_future_import_statement] = STATE(1345), + [sym_import_from_statement] = STATE(1345), + [sym_print_statement] = STATE(1345), + [sym_assert_statement] = STATE(1345), + [sym_expression_statement] = STATE(1345), + [sym_named_expression] = STATE(1126), + [sym_return_statement] = STATE(1345), + [sym_delete_statement] = STATE(1345), + [sym_raise_statement] = STATE(1345), + [sym_pass_statement] = STATE(1345), + [sym_break_statement] = STATE(1345), + [sym_continue_statement] = STATE(1345), + [sym_list_splat] = STATE(1590), + [sym_dictionary_splat] = STATE(1590), + [sym_global_statement] = STATE(1345), + [sym_nonlocal_statement] = STATE(1345), + [sym_exec_statement] = STATE(1345), + [sym_type_alias_statement] = STATE(1345), + [sym_expression_list] = STATE(1545), + [sym_pattern] = STATE(1020), + [sym_tuple_pattern] = STATE(1005), + [sym_list_pattern] = STATE(1005), + [sym_list_splat_pattern] = STATE(1005), + [sym_expression] = STATE(1191), + [sym_primary_expression] = STATE(773), + [sym_not_operator] = STATE(1126), + [sym_boolean_operator] = STATE(1126), + [sym_binary_operator] = STATE(950), + [sym_unary_operator] = STATE(950), + [sym_comparison_operator] = STATE(1126), + [sym_lambda] = STATE(1126), + [sym_assignment] = STATE(1545), + [sym_augmented_assignment] = STATE(1545), + [sym_pattern_list] = STATE(1030), + [sym_yield] = STATE(1545), + [sym_attribute] = STATE(614), + [sym_subscript] = STATE(614), + [sym_call] = STATE(950), + [sym_list] = STATE(950), + [sym_set] = STATE(950), + [sym_tuple] = STATE(950), + [sym_dictionary] = STATE(950), + [sym_list_comprehension] = STATE(950), + [sym_dictionary_comprehension] = STATE(950), + [sym_set_comprehension] = STATE(950), + [sym_generator_expression] = STATE(950), + [sym_parenthesized_expression] = STATE(950), + [sym_conditional_expression] = STATE(1126), + [sym_concatenated_string] = STATE(950), + [sym_string] = STATE(779), + [sym_concatenated_template_string] = STATE(950), + [sym_template_string] = STATE(772), + [sym_await] = STATE(950), [sym_identifier] = ACTIONS(7), [anon_sym_lazy] = ACTIONS(9), [anon_sym_import] = ACTIONS(11), @@ -20240,61 +20282,61 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__template_string_start] = ACTIONS(85), }, [STATE(109)] = { - [sym__simple_statements] = STATE(442), - [sym_import_statement] = STATE(1301), - [sym_future_import_statement] = STATE(1301), - [sym_import_from_statement] = STATE(1301), - [sym_print_statement] = STATE(1301), - [sym_assert_statement] = STATE(1301), - [sym_expression_statement] = STATE(1301), - [sym_named_expression] = STATE(1156), - [sym_return_statement] = STATE(1301), - [sym_delete_statement] = STATE(1301), - [sym_raise_statement] = STATE(1301), - [sym_pass_statement] = STATE(1301), - [sym_break_statement] = STATE(1301), - [sym_continue_statement] = STATE(1301), - [sym_list_splat] = STATE(1520), - [sym_dictionary_splat] = STATE(1520), - [sym_global_statement] = STATE(1301), - [sym_nonlocal_statement] = STATE(1301), - [sym_exec_statement] = STATE(1301), - [sym_type_alias_statement] = STATE(1301), - [sym_expression_list] = STATE(1522), - [sym_pattern] = STATE(1017), - [sym_tuple_pattern] = STATE(1001), - [sym_list_pattern] = STATE(1001), - [sym_list_splat_pattern] = STATE(1001), - [sym_expression] = STATE(1176), - [sym_primary_expression] = STATE(765), - [sym_not_operator] = STATE(1156), - [sym_boolean_operator] = STATE(1156), - [sym_binary_operator] = STATE(920), - [sym_unary_operator] = STATE(920), - [sym_comparison_operator] = STATE(1156), - [sym_lambda] = STATE(1156), - [sym_assignment] = STATE(1522), - [sym_augmented_assignment] = STATE(1522), - [sym_pattern_list] = STATE(1026), - [sym_yield] = STATE(1522), - [sym_attribute] = STATE(582), - [sym_subscript] = STATE(582), - [sym_call] = STATE(920), - [sym_list] = STATE(920), - [sym_set] = STATE(920), - [sym_tuple] = STATE(920), - [sym_dictionary] = STATE(920), - [sym_list_comprehension] = STATE(920), - [sym_dictionary_comprehension] = STATE(920), - [sym_set_comprehension] = STATE(920), - [sym_generator_expression] = STATE(920), - [sym_parenthesized_expression] = STATE(920), - [sym_conditional_expression] = STATE(1156), - [sym_concatenated_string] = STATE(920), - [sym_string] = STATE(775), - [sym_concatenated_template_string] = STATE(920), - [sym_template_string] = STATE(769), - [sym_await] = STATE(920), + [sym__simple_statements] = STATE(526), + [sym_import_statement] = STATE(1346), + [sym_future_import_statement] = STATE(1346), + [sym_import_from_statement] = STATE(1346), + [sym_print_statement] = STATE(1346), + [sym_assert_statement] = STATE(1346), + [sym_expression_statement] = STATE(1346), + [sym_named_expression] = STATE(1126), + [sym_return_statement] = STATE(1346), + [sym_delete_statement] = STATE(1346), + [sym_raise_statement] = STATE(1346), + [sym_pass_statement] = STATE(1346), + [sym_break_statement] = STATE(1346), + [sym_continue_statement] = STATE(1346), + [sym_list_splat] = STATE(1590), + [sym_dictionary_splat] = STATE(1590), + [sym_global_statement] = STATE(1346), + [sym_nonlocal_statement] = STATE(1346), + [sym_exec_statement] = STATE(1346), + [sym_type_alias_statement] = STATE(1346), + [sym_expression_list] = STATE(1545), + [sym_pattern] = STATE(1020), + [sym_tuple_pattern] = STATE(1005), + [sym_list_pattern] = STATE(1005), + [sym_list_splat_pattern] = STATE(1005), + [sym_expression] = STATE(1191), + [sym_primary_expression] = STATE(773), + [sym_not_operator] = STATE(1126), + [sym_boolean_operator] = STATE(1126), + [sym_binary_operator] = STATE(950), + [sym_unary_operator] = STATE(950), + [sym_comparison_operator] = STATE(1126), + [sym_lambda] = STATE(1126), + [sym_assignment] = STATE(1545), + [sym_augmented_assignment] = STATE(1545), + [sym_pattern_list] = STATE(1030), + [sym_yield] = STATE(1545), + [sym_attribute] = STATE(614), + [sym_subscript] = STATE(614), + [sym_call] = STATE(950), + [sym_list] = STATE(950), + [sym_set] = STATE(950), + [sym_tuple] = STATE(950), + [sym_dictionary] = STATE(950), + [sym_list_comprehension] = STATE(950), + [sym_dictionary_comprehension] = STATE(950), + [sym_set_comprehension] = STATE(950), + [sym_generator_expression] = STATE(950), + [sym_parenthesized_expression] = STATE(950), + [sym_conditional_expression] = STATE(1126), + [sym_concatenated_string] = STATE(950), + [sym_string] = STATE(779), + [sym_concatenated_template_string] = STATE(950), + [sym_template_string] = STATE(772), + [sym_await] = STATE(950), [sym_identifier] = ACTIONS(7), [anon_sym_lazy] = ACTIONS(9), [anon_sym_import] = ACTIONS(11), @@ -20338,61 +20380,61 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__template_string_start] = ACTIONS(85), }, [STATE(110)] = { - [sym__simple_statements] = STATE(495), - [sym_import_statement] = STATE(1332), - [sym_future_import_statement] = STATE(1332), - [sym_import_from_statement] = STATE(1332), - [sym_print_statement] = STATE(1332), - [sym_assert_statement] = STATE(1332), - [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1156), - [sym_return_statement] = STATE(1332), - [sym_delete_statement] = STATE(1332), - [sym_raise_statement] = STATE(1332), - [sym_pass_statement] = STATE(1332), - [sym_break_statement] = STATE(1332), - [sym_continue_statement] = STATE(1332), - [sym_list_splat] = STATE(1520), - [sym_dictionary_splat] = STATE(1520), - [sym_global_statement] = STATE(1332), - [sym_nonlocal_statement] = STATE(1332), - [sym_exec_statement] = STATE(1332), - [sym_type_alias_statement] = STATE(1332), - [sym_expression_list] = STATE(1522), - [sym_pattern] = STATE(1017), - [sym_tuple_pattern] = STATE(1001), - [sym_list_pattern] = STATE(1001), - [sym_list_splat_pattern] = STATE(1001), - [sym_expression] = STATE(1176), - [sym_primary_expression] = STATE(765), - [sym_not_operator] = STATE(1156), - [sym_boolean_operator] = STATE(1156), - [sym_binary_operator] = STATE(920), - [sym_unary_operator] = STATE(920), - [sym_comparison_operator] = STATE(1156), - [sym_lambda] = STATE(1156), - [sym_assignment] = STATE(1522), - [sym_augmented_assignment] = STATE(1522), - [sym_pattern_list] = STATE(1026), - [sym_yield] = STATE(1522), - [sym_attribute] = STATE(582), - [sym_subscript] = STATE(582), - [sym_call] = STATE(920), - [sym_list] = STATE(920), - [sym_set] = STATE(920), - [sym_tuple] = STATE(920), - [sym_dictionary] = STATE(920), - [sym_list_comprehension] = STATE(920), - [sym_dictionary_comprehension] = STATE(920), - [sym_set_comprehension] = STATE(920), - [sym_generator_expression] = STATE(920), - [sym_parenthesized_expression] = STATE(920), - [sym_conditional_expression] = STATE(1156), - [sym_concatenated_string] = STATE(920), - [sym_string] = STATE(775), - [sym_concatenated_template_string] = STATE(920), - [sym_template_string] = STATE(769), - [sym_await] = STATE(920), + [sym__simple_statements] = STATE(596), + [sym_import_statement] = STATE(1345), + [sym_future_import_statement] = STATE(1345), + [sym_import_from_statement] = STATE(1345), + [sym_print_statement] = STATE(1345), + [sym_assert_statement] = STATE(1345), + [sym_expression_statement] = STATE(1345), + [sym_named_expression] = STATE(1126), + [sym_return_statement] = STATE(1345), + [sym_delete_statement] = STATE(1345), + [sym_raise_statement] = STATE(1345), + [sym_pass_statement] = STATE(1345), + [sym_break_statement] = STATE(1345), + [sym_continue_statement] = STATE(1345), + [sym_list_splat] = STATE(1590), + [sym_dictionary_splat] = STATE(1590), + [sym_global_statement] = STATE(1345), + [sym_nonlocal_statement] = STATE(1345), + [sym_exec_statement] = STATE(1345), + [sym_type_alias_statement] = STATE(1345), + [sym_expression_list] = STATE(1545), + [sym_pattern] = STATE(1020), + [sym_tuple_pattern] = STATE(1005), + [sym_list_pattern] = STATE(1005), + [sym_list_splat_pattern] = STATE(1005), + [sym_expression] = STATE(1191), + [sym_primary_expression] = STATE(773), + [sym_not_operator] = STATE(1126), + [sym_boolean_operator] = STATE(1126), + [sym_binary_operator] = STATE(950), + [sym_unary_operator] = STATE(950), + [sym_comparison_operator] = STATE(1126), + [sym_lambda] = STATE(1126), + [sym_assignment] = STATE(1545), + [sym_augmented_assignment] = STATE(1545), + [sym_pattern_list] = STATE(1030), + [sym_yield] = STATE(1545), + [sym_attribute] = STATE(614), + [sym_subscript] = STATE(614), + [sym_call] = STATE(950), + [sym_list] = STATE(950), + [sym_set] = STATE(950), + [sym_tuple] = STATE(950), + [sym_dictionary] = STATE(950), + [sym_list_comprehension] = STATE(950), + [sym_dictionary_comprehension] = STATE(950), + [sym_set_comprehension] = STATE(950), + [sym_generator_expression] = STATE(950), + [sym_parenthesized_expression] = STATE(950), + [sym_conditional_expression] = STATE(1126), + [sym_concatenated_string] = STATE(950), + [sym_string] = STATE(779), + [sym_concatenated_template_string] = STATE(950), + [sym_template_string] = STATE(772), + [sym_await] = STATE(950), [sym_identifier] = ACTIONS(7), [anon_sym_lazy] = ACTIONS(9), [anon_sym_import] = ACTIONS(11), @@ -20436,61 +20478,61 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__template_string_start] = ACTIONS(85), }, [STATE(111)] = { - [sym__simple_statements] = STATE(515), - [sym_import_statement] = STATE(1301), - [sym_future_import_statement] = STATE(1301), - [sym_import_from_statement] = STATE(1301), - [sym_print_statement] = STATE(1301), - [sym_assert_statement] = STATE(1301), - [sym_expression_statement] = STATE(1301), - [sym_named_expression] = STATE(1156), - [sym_return_statement] = STATE(1301), - [sym_delete_statement] = STATE(1301), - [sym_raise_statement] = STATE(1301), - [sym_pass_statement] = STATE(1301), - [sym_break_statement] = STATE(1301), - [sym_continue_statement] = STATE(1301), - [sym_list_splat] = STATE(1520), - [sym_dictionary_splat] = STATE(1520), - [sym_global_statement] = STATE(1301), - [sym_nonlocal_statement] = STATE(1301), - [sym_exec_statement] = STATE(1301), - [sym_type_alias_statement] = STATE(1301), - [sym_expression_list] = STATE(1522), - [sym_pattern] = STATE(1017), - [sym_tuple_pattern] = STATE(1001), - [sym_list_pattern] = STATE(1001), - [sym_list_splat_pattern] = STATE(1001), - [sym_expression] = STATE(1176), - [sym_primary_expression] = STATE(765), - [sym_not_operator] = STATE(1156), - [sym_boolean_operator] = STATE(1156), - [sym_binary_operator] = STATE(920), - [sym_unary_operator] = STATE(920), - [sym_comparison_operator] = STATE(1156), - [sym_lambda] = STATE(1156), - [sym_assignment] = STATE(1522), - [sym_augmented_assignment] = STATE(1522), - [sym_pattern_list] = STATE(1026), - [sym_yield] = STATE(1522), - [sym_attribute] = STATE(582), - [sym_subscript] = STATE(582), - [sym_call] = STATE(920), - [sym_list] = STATE(920), - [sym_set] = STATE(920), - [sym_tuple] = STATE(920), - [sym_dictionary] = STATE(920), - [sym_list_comprehension] = STATE(920), - [sym_dictionary_comprehension] = STATE(920), - [sym_set_comprehension] = STATE(920), - [sym_generator_expression] = STATE(920), - [sym_parenthesized_expression] = STATE(920), - [sym_conditional_expression] = STATE(1156), - [sym_concatenated_string] = STATE(920), - [sym_string] = STATE(775), - [sym_concatenated_template_string] = STATE(920), - [sym_template_string] = STATE(769), - [sym_await] = STATE(920), + [sym__simple_statements] = STATE(607), + [sym_import_statement] = STATE(1346), + [sym_future_import_statement] = STATE(1346), + [sym_import_from_statement] = STATE(1346), + [sym_print_statement] = STATE(1346), + [sym_assert_statement] = STATE(1346), + [sym_expression_statement] = STATE(1346), + [sym_named_expression] = STATE(1126), + [sym_return_statement] = STATE(1346), + [sym_delete_statement] = STATE(1346), + [sym_raise_statement] = STATE(1346), + [sym_pass_statement] = STATE(1346), + [sym_break_statement] = STATE(1346), + [sym_continue_statement] = STATE(1346), + [sym_list_splat] = STATE(1590), + [sym_dictionary_splat] = STATE(1590), + [sym_global_statement] = STATE(1346), + [sym_nonlocal_statement] = STATE(1346), + [sym_exec_statement] = STATE(1346), + [sym_type_alias_statement] = STATE(1346), + [sym_expression_list] = STATE(1545), + [sym_pattern] = STATE(1020), + [sym_tuple_pattern] = STATE(1005), + [sym_list_pattern] = STATE(1005), + [sym_list_splat_pattern] = STATE(1005), + [sym_expression] = STATE(1191), + [sym_primary_expression] = STATE(773), + [sym_not_operator] = STATE(1126), + [sym_boolean_operator] = STATE(1126), + [sym_binary_operator] = STATE(950), + [sym_unary_operator] = STATE(950), + [sym_comparison_operator] = STATE(1126), + [sym_lambda] = STATE(1126), + [sym_assignment] = STATE(1545), + [sym_augmented_assignment] = STATE(1545), + [sym_pattern_list] = STATE(1030), + [sym_yield] = STATE(1545), + [sym_attribute] = STATE(614), + [sym_subscript] = STATE(614), + [sym_call] = STATE(950), + [sym_list] = STATE(950), + [sym_set] = STATE(950), + [sym_tuple] = STATE(950), + [sym_dictionary] = STATE(950), + [sym_list_comprehension] = STATE(950), + [sym_dictionary_comprehension] = STATE(950), + [sym_set_comprehension] = STATE(950), + [sym_generator_expression] = STATE(950), + [sym_parenthesized_expression] = STATE(950), + [sym_conditional_expression] = STATE(1126), + [sym_concatenated_string] = STATE(950), + [sym_string] = STATE(779), + [sym_concatenated_template_string] = STATE(950), + [sym_template_string] = STATE(772), + [sym_await] = STATE(950), [sym_identifier] = ACTIONS(7), [anon_sym_lazy] = ACTIONS(9), [anon_sym_import] = ACTIONS(11), @@ -20534,61 +20576,61 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__template_string_start] = ACTIONS(85), }, [STATE(112)] = { - [sym__simple_statements] = STATE(559), - [sym_import_statement] = STATE(1332), - [sym_future_import_statement] = STATE(1332), - [sym_import_from_statement] = STATE(1332), - [sym_print_statement] = STATE(1332), - [sym_assert_statement] = STATE(1332), - [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1156), - [sym_return_statement] = STATE(1332), - [sym_delete_statement] = STATE(1332), - [sym_raise_statement] = STATE(1332), - [sym_pass_statement] = STATE(1332), - [sym_break_statement] = STATE(1332), - [sym_continue_statement] = STATE(1332), - [sym_list_splat] = STATE(1520), - [sym_dictionary_splat] = STATE(1520), - [sym_global_statement] = STATE(1332), - [sym_nonlocal_statement] = STATE(1332), - [sym_exec_statement] = STATE(1332), - [sym_type_alias_statement] = STATE(1332), - [sym_expression_list] = STATE(1522), - [sym_pattern] = STATE(1017), - [sym_tuple_pattern] = STATE(1001), - [sym_list_pattern] = STATE(1001), - [sym_list_splat_pattern] = STATE(1001), - [sym_expression] = STATE(1176), - [sym_primary_expression] = STATE(765), - [sym_not_operator] = STATE(1156), - [sym_boolean_operator] = STATE(1156), - [sym_binary_operator] = STATE(920), - [sym_unary_operator] = STATE(920), - [sym_comparison_operator] = STATE(1156), - [sym_lambda] = STATE(1156), - [sym_assignment] = STATE(1522), - [sym_augmented_assignment] = STATE(1522), - [sym_pattern_list] = STATE(1026), - [sym_yield] = STATE(1522), - [sym_attribute] = STATE(582), - [sym_subscript] = STATE(582), - [sym_call] = STATE(920), - [sym_list] = STATE(920), - [sym_set] = STATE(920), - [sym_tuple] = STATE(920), - [sym_dictionary] = STATE(920), - [sym_list_comprehension] = STATE(920), - [sym_dictionary_comprehension] = STATE(920), - [sym_set_comprehension] = STATE(920), - [sym_generator_expression] = STATE(920), - [sym_parenthesized_expression] = STATE(920), - [sym_conditional_expression] = STATE(1156), - [sym_concatenated_string] = STATE(920), - [sym_string] = STATE(775), - [sym_concatenated_template_string] = STATE(920), - [sym_template_string] = STATE(769), - [sym_await] = STATE(920), + [sym__simple_statements] = STATE(474), + [sym_import_statement] = STATE(1346), + [sym_future_import_statement] = STATE(1346), + [sym_import_from_statement] = STATE(1346), + [sym_print_statement] = STATE(1346), + [sym_assert_statement] = STATE(1346), + [sym_expression_statement] = STATE(1346), + [sym_named_expression] = STATE(1126), + [sym_return_statement] = STATE(1346), + [sym_delete_statement] = STATE(1346), + [sym_raise_statement] = STATE(1346), + [sym_pass_statement] = STATE(1346), + [sym_break_statement] = STATE(1346), + [sym_continue_statement] = STATE(1346), + [sym_list_splat] = STATE(1590), + [sym_dictionary_splat] = STATE(1590), + [sym_global_statement] = STATE(1346), + [sym_nonlocal_statement] = STATE(1346), + [sym_exec_statement] = STATE(1346), + [sym_type_alias_statement] = STATE(1346), + [sym_expression_list] = STATE(1545), + [sym_pattern] = STATE(1020), + [sym_tuple_pattern] = STATE(1005), + [sym_list_pattern] = STATE(1005), + [sym_list_splat_pattern] = STATE(1005), + [sym_expression] = STATE(1191), + [sym_primary_expression] = STATE(773), + [sym_not_operator] = STATE(1126), + [sym_boolean_operator] = STATE(1126), + [sym_binary_operator] = STATE(950), + [sym_unary_operator] = STATE(950), + [sym_comparison_operator] = STATE(1126), + [sym_lambda] = STATE(1126), + [sym_assignment] = STATE(1545), + [sym_augmented_assignment] = STATE(1545), + [sym_pattern_list] = STATE(1030), + [sym_yield] = STATE(1545), + [sym_attribute] = STATE(614), + [sym_subscript] = STATE(614), + [sym_call] = STATE(950), + [sym_list] = STATE(950), + [sym_set] = STATE(950), + [sym_tuple] = STATE(950), + [sym_dictionary] = STATE(950), + [sym_list_comprehension] = STATE(950), + [sym_dictionary_comprehension] = STATE(950), + [sym_set_comprehension] = STATE(950), + [sym_generator_expression] = STATE(950), + [sym_parenthesized_expression] = STATE(950), + [sym_conditional_expression] = STATE(1126), + [sym_concatenated_string] = STATE(950), + [sym_string] = STATE(779), + [sym_concatenated_template_string] = STATE(950), + [sym_template_string] = STATE(772), + [sym_await] = STATE(950), [sym_identifier] = ACTIONS(7), [anon_sym_lazy] = ACTIONS(9), [anon_sym_import] = ACTIONS(11), @@ -20632,61 +20674,61 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__template_string_start] = ACTIONS(85), }, [STATE(113)] = { - [sym__simple_statements] = STATE(489), - [sym_import_statement] = STATE(1301), - [sym_future_import_statement] = STATE(1301), - [sym_import_from_statement] = STATE(1301), - [sym_print_statement] = STATE(1301), - [sym_assert_statement] = STATE(1301), - [sym_expression_statement] = STATE(1301), - [sym_named_expression] = STATE(1156), - [sym_return_statement] = STATE(1301), - [sym_delete_statement] = STATE(1301), - [sym_raise_statement] = STATE(1301), - [sym_pass_statement] = STATE(1301), - [sym_break_statement] = STATE(1301), - [sym_continue_statement] = STATE(1301), - [sym_list_splat] = STATE(1520), - [sym_dictionary_splat] = STATE(1520), - [sym_global_statement] = STATE(1301), - [sym_nonlocal_statement] = STATE(1301), - [sym_exec_statement] = STATE(1301), - [sym_type_alias_statement] = STATE(1301), - [sym_expression_list] = STATE(1522), - [sym_pattern] = STATE(1017), - [sym_tuple_pattern] = STATE(1001), - [sym_list_pattern] = STATE(1001), - [sym_list_splat_pattern] = STATE(1001), - [sym_expression] = STATE(1176), - [sym_primary_expression] = STATE(765), - [sym_not_operator] = STATE(1156), - [sym_boolean_operator] = STATE(1156), - [sym_binary_operator] = STATE(920), - [sym_unary_operator] = STATE(920), - [sym_comparison_operator] = STATE(1156), - [sym_lambda] = STATE(1156), - [sym_assignment] = STATE(1522), - [sym_augmented_assignment] = STATE(1522), - [sym_pattern_list] = STATE(1026), - [sym_yield] = STATE(1522), - [sym_attribute] = STATE(582), - [sym_subscript] = STATE(582), - [sym_call] = STATE(920), - [sym_list] = STATE(920), - [sym_set] = STATE(920), - [sym_tuple] = STATE(920), - [sym_dictionary] = STATE(920), - [sym_list_comprehension] = STATE(920), - [sym_dictionary_comprehension] = STATE(920), - [sym_set_comprehension] = STATE(920), - [sym_generator_expression] = STATE(920), - [sym_parenthesized_expression] = STATE(920), - [sym_conditional_expression] = STATE(1156), - [sym_concatenated_string] = STATE(920), - [sym_string] = STATE(775), - [sym_concatenated_template_string] = STATE(920), - [sym_template_string] = STATE(769), - [sym_await] = STATE(920), + [sym__simple_statements] = STATE(599), + [sym_import_statement] = STATE(1345), + [sym_future_import_statement] = STATE(1345), + [sym_import_from_statement] = STATE(1345), + [sym_print_statement] = STATE(1345), + [sym_assert_statement] = STATE(1345), + [sym_expression_statement] = STATE(1345), + [sym_named_expression] = STATE(1126), + [sym_return_statement] = STATE(1345), + [sym_delete_statement] = STATE(1345), + [sym_raise_statement] = STATE(1345), + [sym_pass_statement] = STATE(1345), + [sym_break_statement] = STATE(1345), + [sym_continue_statement] = STATE(1345), + [sym_list_splat] = STATE(1590), + [sym_dictionary_splat] = STATE(1590), + [sym_global_statement] = STATE(1345), + [sym_nonlocal_statement] = STATE(1345), + [sym_exec_statement] = STATE(1345), + [sym_type_alias_statement] = STATE(1345), + [sym_expression_list] = STATE(1545), + [sym_pattern] = STATE(1020), + [sym_tuple_pattern] = STATE(1005), + [sym_list_pattern] = STATE(1005), + [sym_list_splat_pattern] = STATE(1005), + [sym_expression] = STATE(1191), + [sym_primary_expression] = STATE(773), + [sym_not_operator] = STATE(1126), + [sym_boolean_operator] = STATE(1126), + [sym_binary_operator] = STATE(950), + [sym_unary_operator] = STATE(950), + [sym_comparison_operator] = STATE(1126), + [sym_lambda] = STATE(1126), + [sym_assignment] = STATE(1545), + [sym_augmented_assignment] = STATE(1545), + [sym_pattern_list] = STATE(1030), + [sym_yield] = STATE(1545), + [sym_attribute] = STATE(614), + [sym_subscript] = STATE(614), + [sym_call] = STATE(950), + [sym_list] = STATE(950), + [sym_set] = STATE(950), + [sym_tuple] = STATE(950), + [sym_dictionary] = STATE(950), + [sym_list_comprehension] = STATE(950), + [sym_dictionary_comprehension] = STATE(950), + [sym_set_comprehension] = STATE(950), + [sym_generator_expression] = STATE(950), + [sym_parenthesized_expression] = STATE(950), + [sym_conditional_expression] = STATE(1126), + [sym_concatenated_string] = STATE(950), + [sym_string] = STATE(779), + [sym_concatenated_template_string] = STATE(950), + [sym_template_string] = STATE(772), + [sym_await] = STATE(950), [sym_identifier] = ACTIONS(7), [anon_sym_lazy] = ACTIONS(9), [anon_sym_import] = ACTIONS(11), @@ -20730,61 +20772,61 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__template_string_start] = ACTIONS(85), }, [STATE(114)] = { - [sym__simple_statements] = STATE(517), - [sym_import_statement] = STATE(1301), - [sym_future_import_statement] = STATE(1301), - [sym_import_from_statement] = STATE(1301), - [sym_print_statement] = STATE(1301), - [sym_assert_statement] = STATE(1301), - [sym_expression_statement] = STATE(1301), - [sym_named_expression] = STATE(1156), - [sym_return_statement] = STATE(1301), - [sym_delete_statement] = STATE(1301), - [sym_raise_statement] = STATE(1301), - [sym_pass_statement] = STATE(1301), - [sym_break_statement] = STATE(1301), - [sym_continue_statement] = STATE(1301), - [sym_list_splat] = STATE(1520), - [sym_dictionary_splat] = STATE(1520), - [sym_global_statement] = STATE(1301), - [sym_nonlocal_statement] = STATE(1301), - [sym_exec_statement] = STATE(1301), - [sym_type_alias_statement] = STATE(1301), - [sym_expression_list] = STATE(1522), - [sym_pattern] = STATE(1017), - [sym_tuple_pattern] = STATE(1001), - [sym_list_pattern] = STATE(1001), - [sym_list_splat_pattern] = STATE(1001), - [sym_expression] = STATE(1176), - [sym_primary_expression] = STATE(765), - [sym_not_operator] = STATE(1156), - [sym_boolean_operator] = STATE(1156), - [sym_binary_operator] = STATE(920), - [sym_unary_operator] = STATE(920), - [sym_comparison_operator] = STATE(1156), - [sym_lambda] = STATE(1156), - [sym_assignment] = STATE(1522), - [sym_augmented_assignment] = STATE(1522), - [sym_pattern_list] = STATE(1026), - [sym_yield] = STATE(1522), - [sym_attribute] = STATE(582), - [sym_subscript] = STATE(582), - [sym_call] = STATE(920), - [sym_list] = STATE(920), - [sym_set] = STATE(920), - [sym_tuple] = STATE(920), - [sym_dictionary] = STATE(920), - [sym_list_comprehension] = STATE(920), - [sym_dictionary_comprehension] = STATE(920), - [sym_set_comprehension] = STATE(920), - [sym_generator_expression] = STATE(920), - [sym_parenthesized_expression] = STATE(920), - [sym_conditional_expression] = STATE(1156), - [sym_concatenated_string] = STATE(920), - [sym_string] = STATE(775), - [sym_concatenated_template_string] = STATE(920), - [sym_template_string] = STATE(769), - [sym_await] = STATE(920), + [sym__simple_statements] = STATE(449), + [sym_import_statement] = STATE(1346), + [sym_future_import_statement] = STATE(1346), + [sym_import_from_statement] = STATE(1346), + [sym_print_statement] = STATE(1346), + [sym_assert_statement] = STATE(1346), + [sym_expression_statement] = STATE(1346), + [sym_named_expression] = STATE(1126), + [sym_return_statement] = STATE(1346), + [sym_delete_statement] = STATE(1346), + [sym_raise_statement] = STATE(1346), + [sym_pass_statement] = STATE(1346), + [sym_break_statement] = STATE(1346), + [sym_continue_statement] = STATE(1346), + [sym_list_splat] = STATE(1590), + [sym_dictionary_splat] = STATE(1590), + [sym_global_statement] = STATE(1346), + [sym_nonlocal_statement] = STATE(1346), + [sym_exec_statement] = STATE(1346), + [sym_type_alias_statement] = STATE(1346), + [sym_expression_list] = STATE(1545), + [sym_pattern] = STATE(1020), + [sym_tuple_pattern] = STATE(1005), + [sym_list_pattern] = STATE(1005), + [sym_list_splat_pattern] = STATE(1005), + [sym_expression] = STATE(1191), + [sym_primary_expression] = STATE(773), + [sym_not_operator] = STATE(1126), + [sym_boolean_operator] = STATE(1126), + [sym_binary_operator] = STATE(950), + [sym_unary_operator] = STATE(950), + [sym_comparison_operator] = STATE(1126), + [sym_lambda] = STATE(1126), + [sym_assignment] = STATE(1545), + [sym_augmented_assignment] = STATE(1545), + [sym_pattern_list] = STATE(1030), + [sym_yield] = STATE(1545), + [sym_attribute] = STATE(614), + [sym_subscript] = STATE(614), + [sym_call] = STATE(950), + [sym_list] = STATE(950), + [sym_set] = STATE(950), + [sym_tuple] = STATE(950), + [sym_dictionary] = STATE(950), + [sym_list_comprehension] = STATE(950), + [sym_dictionary_comprehension] = STATE(950), + [sym_set_comprehension] = STATE(950), + [sym_generator_expression] = STATE(950), + [sym_parenthesized_expression] = STATE(950), + [sym_conditional_expression] = STATE(1126), + [sym_concatenated_string] = STATE(950), + [sym_string] = STATE(779), + [sym_concatenated_template_string] = STATE(950), + [sym_template_string] = STATE(772), + [sym_await] = STATE(950), [sym_identifier] = ACTIONS(7), [anon_sym_lazy] = ACTIONS(9), [anon_sym_import] = ACTIONS(11), @@ -20828,61 +20870,61 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__template_string_start] = ACTIONS(85), }, [STATE(115)] = { - [sym__simple_statements] = STATE(562), - [sym_import_statement] = STATE(1332), - [sym_future_import_statement] = STATE(1332), - [sym_import_from_statement] = STATE(1332), - [sym_print_statement] = STATE(1332), - [sym_assert_statement] = STATE(1332), - [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1156), - [sym_return_statement] = STATE(1332), - [sym_delete_statement] = STATE(1332), - [sym_raise_statement] = STATE(1332), - [sym_pass_statement] = STATE(1332), - [sym_break_statement] = STATE(1332), - [sym_continue_statement] = STATE(1332), - [sym_list_splat] = STATE(1520), - [sym_dictionary_splat] = STATE(1520), - [sym_global_statement] = STATE(1332), - [sym_nonlocal_statement] = STATE(1332), - [sym_exec_statement] = STATE(1332), - [sym_type_alias_statement] = STATE(1332), - [sym_expression_list] = STATE(1522), - [sym_pattern] = STATE(1017), - [sym_tuple_pattern] = STATE(1001), - [sym_list_pattern] = STATE(1001), - [sym_list_splat_pattern] = STATE(1001), - [sym_expression] = STATE(1176), - [sym_primary_expression] = STATE(765), - [sym_not_operator] = STATE(1156), - [sym_boolean_operator] = STATE(1156), - [sym_binary_operator] = STATE(920), - [sym_unary_operator] = STATE(920), - [sym_comparison_operator] = STATE(1156), - [sym_lambda] = STATE(1156), - [sym_assignment] = STATE(1522), - [sym_augmented_assignment] = STATE(1522), - [sym_pattern_list] = STATE(1026), - [sym_yield] = STATE(1522), - [sym_attribute] = STATE(582), - [sym_subscript] = STATE(582), - [sym_call] = STATE(920), - [sym_list] = STATE(920), - [sym_set] = STATE(920), - [sym_tuple] = STATE(920), - [sym_dictionary] = STATE(920), - [sym_list_comprehension] = STATE(920), - [sym_dictionary_comprehension] = STATE(920), - [sym_set_comprehension] = STATE(920), - [sym_generator_expression] = STATE(920), - [sym_parenthesized_expression] = STATE(920), - [sym_conditional_expression] = STATE(1156), - [sym_concatenated_string] = STATE(920), - [sym_string] = STATE(775), - [sym_concatenated_template_string] = STATE(920), - [sym_template_string] = STATE(769), - [sym_await] = STATE(920), + [sym__simple_statements] = STATE(462), + [sym_import_statement] = STATE(1345), + [sym_future_import_statement] = STATE(1345), + [sym_import_from_statement] = STATE(1345), + [sym_print_statement] = STATE(1345), + [sym_assert_statement] = STATE(1345), + [sym_expression_statement] = STATE(1345), + [sym_named_expression] = STATE(1126), + [sym_return_statement] = STATE(1345), + [sym_delete_statement] = STATE(1345), + [sym_raise_statement] = STATE(1345), + [sym_pass_statement] = STATE(1345), + [sym_break_statement] = STATE(1345), + [sym_continue_statement] = STATE(1345), + [sym_list_splat] = STATE(1590), + [sym_dictionary_splat] = STATE(1590), + [sym_global_statement] = STATE(1345), + [sym_nonlocal_statement] = STATE(1345), + [sym_exec_statement] = STATE(1345), + [sym_type_alias_statement] = STATE(1345), + [sym_expression_list] = STATE(1545), + [sym_pattern] = STATE(1020), + [sym_tuple_pattern] = STATE(1005), + [sym_list_pattern] = STATE(1005), + [sym_list_splat_pattern] = STATE(1005), + [sym_expression] = STATE(1191), + [sym_primary_expression] = STATE(773), + [sym_not_operator] = STATE(1126), + [sym_boolean_operator] = STATE(1126), + [sym_binary_operator] = STATE(950), + [sym_unary_operator] = STATE(950), + [sym_comparison_operator] = STATE(1126), + [sym_lambda] = STATE(1126), + [sym_assignment] = STATE(1545), + [sym_augmented_assignment] = STATE(1545), + [sym_pattern_list] = STATE(1030), + [sym_yield] = STATE(1545), + [sym_attribute] = STATE(614), + [sym_subscript] = STATE(614), + [sym_call] = STATE(950), + [sym_list] = STATE(950), + [sym_set] = STATE(950), + [sym_tuple] = STATE(950), + [sym_dictionary] = STATE(950), + [sym_list_comprehension] = STATE(950), + [sym_dictionary_comprehension] = STATE(950), + [sym_set_comprehension] = STATE(950), + [sym_generator_expression] = STATE(950), + [sym_parenthesized_expression] = STATE(950), + [sym_conditional_expression] = STATE(1126), + [sym_concatenated_string] = STATE(950), + [sym_string] = STATE(779), + [sym_concatenated_template_string] = STATE(950), + [sym_template_string] = STATE(772), + [sym_await] = STATE(950), [sym_identifier] = ACTIONS(7), [anon_sym_lazy] = ACTIONS(9), [anon_sym_import] = ACTIONS(11), @@ -20926,61 +20968,61 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__template_string_start] = ACTIONS(85), }, [STATE(116)] = { - [sym__simple_statements] = STATE(598), - [sym_import_statement] = STATE(1301), - [sym_future_import_statement] = STATE(1301), - [sym_import_from_statement] = STATE(1301), - [sym_print_statement] = STATE(1301), - [sym_assert_statement] = STATE(1301), - [sym_expression_statement] = STATE(1301), - [sym_named_expression] = STATE(1156), - [sym_return_statement] = STATE(1301), - [sym_delete_statement] = STATE(1301), - [sym_raise_statement] = STATE(1301), - [sym_pass_statement] = STATE(1301), - [sym_break_statement] = STATE(1301), - [sym_continue_statement] = STATE(1301), - [sym_list_splat] = STATE(1520), - [sym_dictionary_splat] = STATE(1520), - [sym_global_statement] = STATE(1301), - [sym_nonlocal_statement] = STATE(1301), - [sym_exec_statement] = STATE(1301), - [sym_type_alias_statement] = STATE(1301), - [sym_expression_list] = STATE(1522), - [sym_pattern] = STATE(1017), - [sym_tuple_pattern] = STATE(1001), - [sym_list_pattern] = STATE(1001), - [sym_list_splat_pattern] = STATE(1001), - [sym_expression] = STATE(1176), - [sym_primary_expression] = STATE(765), - [sym_not_operator] = STATE(1156), - [sym_boolean_operator] = STATE(1156), - [sym_binary_operator] = STATE(920), - [sym_unary_operator] = STATE(920), - [sym_comparison_operator] = STATE(1156), - [sym_lambda] = STATE(1156), - [sym_assignment] = STATE(1522), - [sym_augmented_assignment] = STATE(1522), - [sym_pattern_list] = STATE(1026), - [sym_yield] = STATE(1522), - [sym_attribute] = STATE(582), - [sym_subscript] = STATE(582), - [sym_call] = STATE(920), - [sym_list] = STATE(920), - [sym_set] = STATE(920), - [sym_tuple] = STATE(920), - [sym_dictionary] = STATE(920), - [sym_list_comprehension] = STATE(920), - [sym_dictionary_comprehension] = STATE(920), - [sym_set_comprehension] = STATE(920), - [sym_generator_expression] = STATE(920), - [sym_parenthesized_expression] = STATE(920), - [sym_conditional_expression] = STATE(1156), - [sym_concatenated_string] = STATE(920), - [sym_string] = STATE(775), - [sym_concatenated_template_string] = STATE(920), - [sym_template_string] = STATE(769), - [sym_await] = STATE(920), + [sym__simple_statements] = STATE(518), + [sym_import_statement] = STATE(1346), + [sym_future_import_statement] = STATE(1346), + [sym_import_from_statement] = STATE(1346), + [sym_print_statement] = STATE(1346), + [sym_assert_statement] = STATE(1346), + [sym_expression_statement] = STATE(1346), + [sym_named_expression] = STATE(1126), + [sym_return_statement] = STATE(1346), + [sym_delete_statement] = STATE(1346), + [sym_raise_statement] = STATE(1346), + [sym_pass_statement] = STATE(1346), + [sym_break_statement] = STATE(1346), + [sym_continue_statement] = STATE(1346), + [sym_list_splat] = STATE(1590), + [sym_dictionary_splat] = STATE(1590), + [sym_global_statement] = STATE(1346), + [sym_nonlocal_statement] = STATE(1346), + [sym_exec_statement] = STATE(1346), + [sym_type_alias_statement] = STATE(1346), + [sym_expression_list] = STATE(1545), + [sym_pattern] = STATE(1020), + [sym_tuple_pattern] = STATE(1005), + [sym_list_pattern] = STATE(1005), + [sym_list_splat_pattern] = STATE(1005), + [sym_expression] = STATE(1191), + [sym_primary_expression] = STATE(773), + [sym_not_operator] = STATE(1126), + [sym_boolean_operator] = STATE(1126), + [sym_binary_operator] = STATE(950), + [sym_unary_operator] = STATE(950), + [sym_comparison_operator] = STATE(1126), + [sym_lambda] = STATE(1126), + [sym_assignment] = STATE(1545), + [sym_augmented_assignment] = STATE(1545), + [sym_pattern_list] = STATE(1030), + [sym_yield] = STATE(1545), + [sym_attribute] = STATE(614), + [sym_subscript] = STATE(614), + [sym_call] = STATE(950), + [sym_list] = STATE(950), + [sym_set] = STATE(950), + [sym_tuple] = STATE(950), + [sym_dictionary] = STATE(950), + [sym_list_comprehension] = STATE(950), + [sym_dictionary_comprehension] = STATE(950), + [sym_set_comprehension] = STATE(950), + [sym_generator_expression] = STATE(950), + [sym_parenthesized_expression] = STATE(950), + [sym_conditional_expression] = STATE(1126), + [sym_concatenated_string] = STATE(950), + [sym_string] = STATE(779), + [sym_concatenated_template_string] = STATE(950), + [sym_template_string] = STATE(772), + [sym_await] = STATE(950), [sym_identifier] = ACTIONS(7), [anon_sym_lazy] = ACTIONS(9), [anon_sym_import] = ACTIONS(11), @@ -21024,61 +21066,61 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__template_string_start] = ACTIONS(85), }, [STATE(117)] = { - [sym__simple_statements] = STATE(459), - [sym_import_statement] = STATE(1332), - [sym_future_import_statement] = STATE(1332), - [sym_import_from_statement] = STATE(1332), - [sym_print_statement] = STATE(1332), - [sym_assert_statement] = STATE(1332), - [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1156), - [sym_return_statement] = STATE(1332), - [sym_delete_statement] = STATE(1332), - [sym_raise_statement] = STATE(1332), - [sym_pass_statement] = STATE(1332), - [sym_break_statement] = STATE(1332), - [sym_continue_statement] = STATE(1332), - [sym_list_splat] = STATE(1520), - [sym_dictionary_splat] = STATE(1520), - [sym_global_statement] = STATE(1332), - [sym_nonlocal_statement] = STATE(1332), - [sym_exec_statement] = STATE(1332), - [sym_type_alias_statement] = STATE(1332), - [sym_expression_list] = STATE(1522), - [sym_pattern] = STATE(1017), - [sym_tuple_pattern] = STATE(1001), - [sym_list_pattern] = STATE(1001), - [sym_list_splat_pattern] = STATE(1001), - [sym_expression] = STATE(1176), - [sym_primary_expression] = STATE(765), - [sym_not_operator] = STATE(1156), - [sym_boolean_operator] = STATE(1156), - [sym_binary_operator] = STATE(920), - [sym_unary_operator] = STATE(920), - [sym_comparison_operator] = STATE(1156), - [sym_lambda] = STATE(1156), - [sym_assignment] = STATE(1522), - [sym_augmented_assignment] = STATE(1522), - [sym_pattern_list] = STATE(1026), - [sym_yield] = STATE(1522), - [sym_attribute] = STATE(582), - [sym_subscript] = STATE(582), - [sym_call] = STATE(920), - [sym_list] = STATE(920), - [sym_set] = STATE(920), - [sym_tuple] = STATE(920), - [sym_dictionary] = STATE(920), - [sym_list_comprehension] = STATE(920), - [sym_dictionary_comprehension] = STATE(920), - [sym_set_comprehension] = STATE(920), - [sym_generator_expression] = STATE(920), - [sym_parenthesized_expression] = STATE(920), - [sym_conditional_expression] = STATE(1156), - [sym_concatenated_string] = STATE(920), - [sym_string] = STATE(775), - [sym_concatenated_template_string] = STATE(920), - [sym_template_string] = STATE(769), - [sym_await] = STATE(920), + [sym__simple_statements] = STATE(532), + [sym_import_statement] = STATE(1346), + [sym_future_import_statement] = STATE(1346), + [sym_import_from_statement] = STATE(1346), + [sym_print_statement] = STATE(1346), + [sym_assert_statement] = STATE(1346), + [sym_expression_statement] = STATE(1346), + [sym_named_expression] = STATE(1126), + [sym_return_statement] = STATE(1346), + [sym_delete_statement] = STATE(1346), + [sym_raise_statement] = STATE(1346), + [sym_pass_statement] = STATE(1346), + [sym_break_statement] = STATE(1346), + [sym_continue_statement] = STATE(1346), + [sym_list_splat] = STATE(1590), + [sym_dictionary_splat] = STATE(1590), + [sym_global_statement] = STATE(1346), + [sym_nonlocal_statement] = STATE(1346), + [sym_exec_statement] = STATE(1346), + [sym_type_alias_statement] = STATE(1346), + [sym_expression_list] = STATE(1545), + [sym_pattern] = STATE(1020), + [sym_tuple_pattern] = STATE(1005), + [sym_list_pattern] = STATE(1005), + [sym_list_splat_pattern] = STATE(1005), + [sym_expression] = STATE(1191), + [sym_primary_expression] = STATE(773), + [sym_not_operator] = STATE(1126), + [sym_boolean_operator] = STATE(1126), + [sym_binary_operator] = STATE(950), + [sym_unary_operator] = STATE(950), + [sym_comparison_operator] = STATE(1126), + [sym_lambda] = STATE(1126), + [sym_assignment] = STATE(1545), + [sym_augmented_assignment] = STATE(1545), + [sym_pattern_list] = STATE(1030), + [sym_yield] = STATE(1545), + [sym_attribute] = STATE(614), + [sym_subscript] = STATE(614), + [sym_call] = STATE(950), + [sym_list] = STATE(950), + [sym_set] = STATE(950), + [sym_tuple] = STATE(950), + [sym_dictionary] = STATE(950), + [sym_list_comprehension] = STATE(950), + [sym_dictionary_comprehension] = STATE(950), + [sym_set_comprehension] = STATE(950), + [sym_generator_expression] = STATE(950), + [sym_parenthesized_expression] = STATE(950), + [sym_conditional_expression] = STATE(1126), + [sym_concatenated_string] = STATE(950), + [sym_string] = STATE(779), + [sym_concatenated_template_string] = STATE(950), + [sym_template_string] = STATE(772), + [sym_await] = STATE(950), [sym_identifier] = ACTIONS(7), [anon_sym_lazy] = ACTIONS(9), [anon_sym_import] = ACTIONS(11), @@ -21122,61 +21164,61 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__template_string_start] = ACTIONS(85), }, [STATE(118)] = { - [sym__simple_statements] = STATE(331), - [sym_import_statement] = STATE(1301), - [sym_future_import_statement] = STATE(1301), - [sym_import_from_statement] = STATE(1301), - [sym_print_statement] = STATE(1301), - [sym_assert_statement] = STATE(1301), - [sym_expression_statement] = STATE(1301), - [sym_named_expression] = STATE(1156), - [sym_return_statement] = STATE(1301), - [sym_delete_statement] = STATE(1301), - [sym_raise_statement] = STATE(1301), - [sym_pass_statement] = STATE(1301), - [sym_break_statement] = STATE(1301), - [sym_continue_statement] = STATE(1301), - [sym_list_splat] = STATE(1520), - [sym_dictionary_splat] = STATE(1520), - [sym_global_statement] = STATE(1301), - [sym_nonlocal_statement] = STATE(1301), - [sym_exec_statement] = STATE(1301), - [sym_type_alias_statement] = STATE(1301), - [sym_expression_list] = STATE(1522), - [sym_pattern] = STATE(1017), - [sym_tuple_pattern] = STATE(1001), - [sym_list_pattern] = STATE(1001), - [sym_list_splat_pattern] = STATE(1001), - [sym_expression] = STATE(1176), - [sym_primary_expression] = STATE(765), - [sym_not_operator] = STATE(1156), - [sym_boolean_operator] = STATE(1156), - [sym_binary_operator] = STATE(920), - [sym_unary_operator] = STATE(920), - [sym_comparison_operator] = STATE(1156), - [sym_lambda] = STATE(1156), - [sym_assignment] = STATE(1522), - [sym_augmented_assignment] = STATE(1522), - [sym_pattern_list] = STATE(1026), - [sym_yield] = STATE(1522), - [sym_attribute] = STATE(582), - [sym_subscript] = STATE(582), - [sym_call] = STATE(920), - [sym_list] = STATE(920), - [sym_set] = STATE(920), - [sym_tuple] = STATE(920), - [sym_dictionary] = STATE(920), - [sym_list_comprehension] = STATE(920), - [sym_dictionary_comprehension] = STATE(920), - [sym_set_comprehension] = STATE(920), - [sym_generator_expression] = STATE(920), - [sym_parenthesized_expression] = STATE(920), - [sym_conditional_expression] = STATE(1156), - [sym_concatenated_string] = STATE(920), - [sym_string] = STATE(775), - [sym_concatenated_template_string] = STATE(920), - [sym_template_string] = STATE(769), - [sym_await] = STATE(920), + [sym__simple_statements] = STATE(443), + [sym_import_statement] = STATE(1346), + [sym_future_import_statement] = STATE(1346), + [sym_import_from_statement] = STATE(1346), + [sym_print_statement] = STATE(1346), + [sym_assert_statement] = STATE(1346), + [sym_expression_statement] = STATE(1346), + [sym_named_expression] = STATE(1126), + [sym_return_statement] = STATE(1346), + [sym_delete_statement] = STATE(1346), + [sym_raise_statement] = STATE(1346), + [sym_pass_statement] = STATE(1346), + [sym_break_statement] = STATE(1346), + [sym_continue_statement] = STATE(1346), + [sym_list_splat] = STATE(1590), + [sym_dictionary_splat] = STATE(1590), + [sym_global_statement] = STATE(1346), + [sym_nonlocal_statement] = STATE(1346), + [sym_exec_statement] = STATE(1346), + [sym_type_alias_statement] = STATE(1346), + [sym_expression_list] = STATE(1545), + [sym_pattern] = STATE(1020), + [sym_tuple_pattern] = STATE(1005), + [sym_list_pattern] = STATE(1005), + [sym_list_splat_pattern] = STATE(1005), + [sym_expression] = STATE(1191), + [sym_primary_expression] = STATE(773), + [sym_not_operator] = STATE(1126), + [sym_boolean_operator] = STATE(1126), + [sym_binary_operator] = STATE(950), + [sym_unary_operator] = STATE(950), + [sym_comparison_operator] = STATE(1126), + [sym_lambda] = STATE(1126), + [sym_assignment] = STATE(1545), + [sym_augmented_assignment] = STATE(1545), + [sym_pattern_list] = STATE(1030), + [sym_yield] = STATE(1545), + [sym_attribute] = STATE(614), + [sym_subscript] = STATE(614), + [sym_call] = STATE(950), + [sym_list] = STATE(950), + [sym_set] = STATE(950), + [sym_tuple] = STATE(950), + [sym_dictionary] = STATE(950), + [sym_list_comprehension] = STATE(950), + [sym_dictionary_comprehension] = STATE(950), + [sym_set_comprehension] = STATE(950), + [sym_generator_expression] = STATE(950), + [sym_parenthesized_expression] = STATE(950), + [sym_conditional_expression] = STATE(1126), + [sym_concatenated_string] = STATE(950), + [sym_string] = STATE(779), + [sym_concatenated_template_string] = STATE(950), + [sym_template_string] = STATE(772), + [sym_await] = STATE(950), [sym_identifier] = ACTIONS(7), [anon_sym_lazy] = ACTIONS(9), [anon_sym_import] = ACTIONS(11), @@ -21220,61 +21262,61 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__template_string_start] = ACTIONS(85), }, [STATE(119)] = { - [sym__simple_statements] = STATE(602), - [sym_import_statement] = STATE(1301), - [sym_future_import_statement] = STATE(1301), - [sym_import_from_statement] = STATE(1301), - [sym_print_statement] = STATE(1301), - [sym_assert_statement] = STATE(1301), - [sym_expression_statement] = STATE(1301), - [sym_named_expression] = STATE(1156), - [sym_return_statement] = STATE(1301), - [sym_delete_statement] = STATE(1301), - [sym_raise_statement] = STATE(1301), - [sym_pass_statement] = STATE(1301), - [sym_break_statement] = STATE(1301), - [sym_continue_statement] = STATE(1301), - [sym_list_splat] = STATE(1520), - [sym_dictionary_splat] = STATE(1520), - [sym_global_statement] = STATE(1301), - [sym_nonlocal_statement] = STATE(1301), - [sym_exec_statement] = STATE(1301), - [sym_type_alias_statement] = STATE(1301), - [sym_expression_list] = STATE(1522), - [sym_pattern] = STATE(1017), - [sym_tuple_pattern] = STATE(1001), - [sym_list_pattern] = STATE(1001), - [sym_list_splat_pattern] = STATE(1001), - [sym_expression] = STATE(1176), - [sym_primary_expression] = STATE(765), - [sym_not_operator] = STATE(1156), - [sym_boolean_operator] = STATE(1156), - [sym_binary_operator] = STATE(920), - [sym_unary_operator] = STATE(920), - [sym_comparison_operator] = STATE(1156), - [sym_lambda] = STATE(1156), - [sym_assignment] = STATE(1522), - [sym_augmented_assignment] = STATE(1522), - [sym_pattern_list] = STATE(1026), - [sym_yield] = STATE(1522), - [sym_attribute] = STATE(582), - [sym_subscript] = STATE(582), - [sym_call] = STATE(920), - [sym_list] = STATE(920), - [sym_set] = STATE(920), - [sym_tuple] = STATE(920), - [sym_dictionary] = STATE(920), - [sym_list_comprehension] = STATE(920), - [sym_dictionary_comprehension] = STATE(920), - [sym_set_comprehension] = STATE(920), - [sym_generator_expression] = STATE(920), - [sym_parenthesized_expression] = STATE(920), - [sym_conditional_expression] = STATE(1156), - [sym_concatenated_string] = STATE(920), - [sym_string] = STATE(775), - [sym_concatenated_template_string] = STATE(920), - [sym_template_string] = STATE(769), - [sym_await] = STATE(920), + [sym__simple_statements] = STATE(463), + [sym_import_statement] = STATE(1345), + [sym_future_import_statement] = STATE(1345), + [sym_import_from_statement] = STATE(1345), + [sym_print_statement] = STATE(1345), + [sym_assert_statement] = STATE(1345), + [sym_expression_statement] = STATE(1345), + [sym_named_expression] = STATE(1126), + [sym_return_statement] = STATE(1345), + [sym_delete_statement] = STATE(1345), + [sym_raise_statement] = STATE(1345), + [sym_pass_statement] = STATE(1345), + [sym_break_statement] = STATE(1345), + [sym_continue_statement] = STATE(1345), + [sym_list_splat] = STATE(1590), + [sym_dictionary_splat] = STATE(1590), + [sym_global_statement] = STATE(1345), + [sym_nonlocal_statement] = STATE(1345), + [sym_exec_statement] = STATE(1345), + [sym_type_alias_statement] = STATE(1345), + [sym_expression_list] = STATE(1545), + [sym_pattern] = STATE(1020), + [sym_tuple_pattern] = STATE(1005), + [sym_list_pattern] = STATE(1005), + [sym_list_splat_pattern] = STATE(1005), + [sym_expression] = STATE(1191), + [sym_primary_expression] = STATE(773), + [sym_not_operator] = STATE(1126), + [sym_boolean_operator] = STATE(1126), + [sym_binary_operator] = STATE(950), + [sym_unary_operator] = STATE(950), + [sym_comparison_operator] = STATE(1126), + [sym_lambda] = STATE(1126), + [sym_assignment] = STATE(1545), + [sym_augmented_assignment] = STATE(1545), + [sym_pattern_list] = STATE(1030), + [sym_yield] = STATE(1545), + [sym_attribute] = STATE(614), + [sym_subscript] = STATE(614), + [sym_call] = STATE(950), + [sym_list] = STATE(950), + [sym_set] = STATE(950), + [sym_tuple] = STATE(950), + [sym_dictionary] = STATE(950), + [sym_list_comprehension] = STATE(950), + [sym_dictionary_comprehension] = STATE(950), + [sym_set_comprehension] = STATE(950), + [sym_generator_expression] = STATE(950), + [sym_parenthesized_expression] = STATE(950), + [sym_conditional_expression] = STATE(1126), + [sym_concatenated_string] = STATE(950), + [sym_string] = STATE(779), + [sym_concatenated_template_string] = STATE(950), + [sym_template_string] = STATE(772), + [sym_await] = STATE(950), [sym_identifier] = ACTIONS(7), [anon_sym_lazy] = ACTIONS(9), [anon_sym_import] = ACTIONS(11), @@ -21318,61 +21360,61 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__template_string_start] = ACTIONS(85), }, [STATE(120)] = { - [sym__simple_statements] = STATE(440), - [sym_import_statement] = STATE(1332), - [sym_future_import_statement] = STATE(1332), - [sym_import_from_statement] = STATE(1332), - [sym_print_statement] = STATE(1332), - [sym_assert_statement] = STATE(1332), - [sym_expression_statement] = STATE(1332), - [sym_named_expression] = STATE(1156), - [sym_return_statement] = STATE(1332), - [sym_delete_statement] = STATE(1332), - [sym_raise_statement] = STATE(1332), - [sym_pass_statement] = STATE(1332), - [sym_break_statement] = STATE(1332), - [sym_continue_statement] = STATE(1332), - [sym_list_splat] = STATE(1520), - [sym_dictionary_splat] = STATE(1520), - [sym_global_statement] = STATE(1332), - [sym_nonlocal_statement] = STATE(1332), - [sym_exec_statement] = STATE(1332), - [sym_type_alias_statement] = STATE(1332), - [sym_expression_list] = STATE(1522), - [sym_pattern] = STATE(1017), - [sym_tuple_pattern] = STATE(1001), - [sym_list_pattern] = STATE(1001), - [sym_list_splat_pattern] = STATE(1001), - [sym_expression] = STATE(1176), - [sym_primary_expression] = STATE(765), - [sym_not_operator] = STATE(1156), - [sym_boolean_operator] = STATE(1156), - [sym_binary_operator] = STATE(920), - [sym_unary_operator] = STATE(920), - [sym_comparison_operator] = STATE(1156), - [sym_lambda] = STATE(1156), - [sym_assignment] = STATE(1522), - [sym_augmented_assignment] = STATE(1522), - [sym_pattern_list] = STATE(1026), - [sym_yield] = STATE(1522), - [sym_attribute] = STATE(582), - [sym_subscript] = STATE(582), - [sym_call] = STATE(920), - [sym_list] = STATE(920), - [sym_set] = STATE(920), - [sym_tuple] = STATE(920), - [sym_dictionary] = STATE(920), - [sym_list_comprehension] = STATE(920), - [sym_dictionary_comprehension] = STATE(920), - [sym_set_comprehension] = STATE(920), - [sym_generator_expression] = STATE(920), - [sym_parenthesized_expression] = STATE(920), - [sym_conditional_expression] = STATE(1156), - [sym_concatenated_string] = STATE(920), - [sym_string] = STATE(775), - [sym_concatenated_template_string] = STATE(920), - [sym_template_string] = STATE(769), - [sym_await] = STATE(920), + [sym__simple_statements] = STATE(555), + [sym_import_statement] = STATE(1346), + [sym_future_import_statement] = STATE(1346), + [sym_import_from_statement] = STATE(1346), + [sym_print_statement] = STATE(1346), + [sym_assert_statement] = STATE(1346), + [sym_expression_statement] = STATE(1346), + [sym_named_expression] = STATE(1126), + [sym_return_statement] = STATE(1346), + [sym_delete_statement] = STATE(1346), + [sym_raise_statement] = STATE(1346), + [sym_pass_statement] = STATE(1346), + [sym_break_statement] = STATE(1346), + [sym_continue_statement] = STATE(1346), + [sym_list_splat] = STATE(1590), + [sym_dictionary_splat] = STATE(1590), + [sym_global_statement] = STATE(1346), + [sym_nonlocal_statement] = STATE(1346), + [sym_exec_statement] = STATE(1346), + [sym_type_alias_statement] = STATE(1346), + [sym_expression_list] = STATE(1545), + [sym_pattern] = STATE(1020), + [sym_tuple_pattern] = STATE(1005), + [sym_list_pattern] = STATE(1005), + [sym_list_splat_pattern] = STATE(1005), + [sym_expression] = STATE(1191), + [sym_primary_expression] = STATE(773), + [sym_not_operator] = STATE(1126), + [sym_boolean_operator] = STATE(1126), + [sym_binary_operator] = STATE(950), + [sym_unary_operator] = STATE(950), + [sym_comparison_operator] = STATE(1126), + [sym_lambda] = STATE(1126), + [sym_assignment] = STATE(1545), + [sym_augmented_assignment] = STATE(1545), + [sym_pattern_list] = STATE(1030), + [sym_yield] = STATE(1545), + [sym_attribute] = STATE(614), + [sym_subscript] = STATE(614), + [sym_call] = STATE(950), + [sym_list] = STATE(950), + [sym_set] = STATE(950), + [sym_tuple] = STATE(950), + [sym_dictionary] = STATE(950), + [sym_list_comprehension] = STATE(950), + [sym_dictionary_comprehension] = STATE(950), + [sym_set_comprehension] = STATE(950), + [sym_generator_expression] = STATE(950), + [sym_parenthesized_expression] = STATE(950), + [sym_conditional_expression] = STATE(1126), + [sym_concatenated_string] = STATE(950), + [sym_string] = STATE(779), + [sym_concatenated_template_string] = STATE(950), + [sym_template_string] = STATE(772), + [sym_await] = STATE(950), [sym_identifier] = ACTIONS(7), [anon_sym_lazy] = ACTIONS(9), [anon_sym_import] = ACTIONS(11), @@ -21416,61 +21458,61 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__template_string_start] = ACTIONS(85), }, [STATE(121)] = { - [sym__simple_statements] = STATE(556), - [sym_import_statement] = STATE(1301), - [sym_future_import_statement] = STATE(1301), - [sym_import_from_statement] = STATE(1301), - [sym_print_statement] = STATE(1301), - [sym_assert_statement] = STATE(1301), - [sym_expression_statement] = STATE(1301), - [sym_named_expression] = STATE(1156), - [sym_return_statement] = STATE(1301), - [sym_delete_statement] = STATE(1301), - [sym_raise_statement] = STATE(1301), - [sym_pass_statement] = STATE(1301), - [sym_break_statement] = STATE(1301), - [sym_continue_statement] = STATE(1301), - [sym_list_splat] = STATE(1520), - [sym_dictionary_splat] = STATE(1520), - [sym_global_statement] = STATE(1301), - [sym_nonlocal_statement] = STATE(1301), - [sym_exec_statement] = STATE(1301), - [sym_type_alias_statement] = STATE(1301), - [sym_expression_list] = STATE(1522), - [sym_pattern] = STATE(1017), - [sym_tuple_pattern] = STATE(1001), - [sym_list_pattern] = STATE(1001), - [sym_list_splat_pattern] = STATE(1001), - [sym_expression] = STATE(1176), - [sym_primary_expression] = STATE(765), - [sym_not_operator] = STATE(1156), - [sym_boolean_operator] = STATE(1156), - [sym_binary_operator] = STATE(920), - [sym_unary_operator] = STATE(920), - [sym_comparison_operator] = STATE(1156), - [sym_lambda] = STATE(1156), - [sym_assignment] = STATE(1522), - [sym_augmented_assignment] = STATE(1522), - [sym_pattern_list] = STATE(1026), - [sym_yield] = STATE(1522), - [sym_attribute] = STATE(582), - [sym_subscript] = STATE(582), - [sym_call] = STATE(920), - [sym_list] = STATE(920), - [sym_set] = STATE(920), - [sym_tuple] = STATE(920), - [sym_dictionary] = STATE(920), - [sym_list_comprehension] = STATE(920), - [sym_dictionary_comprehension] = STATE(920), - [sym_set_comprehension] = STATE(920), - [sym_generator_expression] = STATE(920), - [sym_parenthesized_expression] = STATE(920), - [sym_conditional_expression] = STATE(1156), - [sym_concatenated_string] = STATE(920), - [sym_string] = STATE(775), - [sym_concatenated_template_string] = STATE(920), - [sym_template_string] = STATE(769), - [sym_await] = STATE(920), + [sym__simple_statements] = STATE(543), + [sym_import_statement] = STATE(1346), + [sym_future_import_statement] = STATE(1346), + [sym_import_from_statement] = STATE(1346), + [sym_print_statement] = STATE(1346), + [sym_assert_statement] = STATE(1346), + [sym_expression_statement] = STATE(1346), + [sym_named_expression] = STATE(1126), + [sym_return_statement] = STATE(1346), + [sym_delete_statement] = STATE(1346), + [sym_raise_statement] = STATE(1346), + [sym_pass_statement] = STATE(1346), + [sym_break_statement] = STATE(1346), + [sym_continue_statement] = STATE(1346), + [sym_list_splat] = STATE(1590), + [sym_dictionary_splat] = STATE(1590), + [sym_global_statement] = STATE(1346), + [sym_nonlocal_statement] = STATE(1346), + [sym_exec_statement] = STATE(1346), + [sym_type_alias_statement] = STATE(1346), + [sym_expression_list] = STATE(1545), + [sym_pattern] = STATE(1020), + [sym_tuple_pattern] = STATE(1005), + [sym_list_pattern] = STATE(1005), + [sym_list_splat_pattern] = STATE(1005), + [sym_expression] = STATE(1191), + [sym_primary_expression] = STATE(773), + [sym_not_operator] = STATE(1126), + [sym_boolean_operator] = STATE(1126), + [sym_binary_operator] = STATE(950), + [sym_unary_operator] = STATE(950), + [sym_comparison_operator] = STATE(1126), + [sym_lambda] = STATE(1126), + [sym_assignment] = STATE(1545), + [sym_augmented_assignment] = STATE(1545), + [sym_pattern_list] = STATE(1030), + [sym_yield] = STATE(1545), + [sym_attribute] = STATE(614), + [sym_subscript] = STATE(614), + [sym_call] = STATE(950), + [sym_list] = STATE(950), + [sym_set] = STATE(950), + [sym_tuple] = STATE(950), + [sym_dictionary] = STATE(950), + [sym_list_comprehension] = STATE(950), + [sym_dictionary_comprehension] = STATE(950), + [sym_set_comprehension] = STATE(950), + [sym_generator_expression] = STATE(950), + [sym_parenthesized_expression] = STATE(950), + [sym_conditional_expression] = STATE(1126), + [sym_concatenated_string] = STATE(950), + [sym_string] = STATE(779), + [sym_concatenated_template_string] = STATE(950), + [sym_template_string] = STATE(772), + [sym_await] = STATE(950), [sym_identifier] = ACTIONS(7), [anon_sym_lazy] = ACTIONS(9), [anon_sym_import] = ACTIONS(11), @@ -21514,61 +21556,61 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__template_string_start] = ACTIONS(85), }, [STATE(122)] = { - [sym__simple_statements] = STATE(457), - [sym_import_statement] = STATE(1301), - [sym_future_import_statement] = STATE(1301), - [sym_import_from_statement] = STATE(1301), - [sym_print_statement] = STATE(1301), - [sym_assert_statement] = STATE(1301), - [sym_expression_statement] = STATE(1301), - [sym_named_expression] = STATE(1156), - [sym_return_statement] = STATE(1301), - [sym_delete_statement] = STATE(1301), - [sym_raise_statement] = STATE(1301), - [sym_pass_statement] = STATE(1301), - [sym_break_statement] = STATE(1301), - [sym_continue_statement] = STATE(1301), - [sym_list_splat] = STATE(1520), - [sym_dictionary_splat] = STATE(1520), - [sym_global_statement] = STATE(1301), - [sym_nonlocal_statement] = STATE(1301), - [sym_exec_statement] = STATE(1301), - [sym_type_alias_statement] = STATE(1301), - [sym_expression_list] = STATE(1522), - [sym_pattern] = STATE(1017), - [sym_tuple_pattern] = STATE(1001), - [sym_list_pattern] = STATE(1001), - [sym_list_splat_pattern] = STATE(1001), - [sym_expression] = STATE(1176), - [sym_primary_expression] = STATE(765), - [sym_not_operator] = STATE(1156), - [sym_boolean_operator] = STATE(1156), - [sym_binary_operator] = STATE(920), - [sym_unary_operator] = STATE(920), - [sym_comparison_operator] = STATE(1156), - [sym_lambda] = STATE(1156), - [sym_assignment] = STATE(1522), - [sym_augmented_assignment] = STATE(1522), - [sym_pattern_list] = STATE(1026), - [sym_yield] = STATE(1522), - [sym_attribute] = STATE(582), - [sym_subscript] = STATE(582), - [sym_call] = STATE(920), - [sym_list] = STATE(920), - [sym_set] = STATE(920), - [sym_tuple] = STATE(920), - [sym_dictionary] = STATE(920), - [sym_list_comprehension] = STATE(920), - [sym_dictionary_comprehension] = STATE(920), - [sym_set_comprehension] = STATE(920), - [sym_generator_expression] = STATE(920), - [sym_parenthesized_expression] = STATE(920), - [sym_conditional_expression] = STATE(1156), - [sym_concatenated_string] = STATE(920), - [sym_string] = STATE(775), - [sym_concatenated_template_string] = STATE(920), - [sym_template_string] = STATE(769), - [sym_await] = STATE(920), + [sym__simple_statements] = STATE(608), + [sym_import_statement] = STATE(1346), + [sym_future_import_statement] = STATE(1346), + [sym_import_from_statement] = STATE(1346), + [sym_print_statement] = STATE(1346), + [sym_assert_statement] = STATE(1346), + [sym_expression_statement] = STATE(1346), + [sym_named_expression] = STATE(1126), + [sym_return_statement] = STATE(1346), + [sym_delete_statement] = STATE(1346), + [sym_raise_statement] = STATE(1346), + [sym_pass_statement] = STATE(1346), + [sym_break_statement] = STATE(1346), + [sym_continue_statement] = STATE(1346), + [sym_list_splat] = STATE(1590), + [sym_dictionary_splat] = STATE(1590), + [sym_global_statement] = STATE(1346), + [sym_nonlocal_statement] = STATE(1346), + [sym_exec_statement] = STATE(1346), + [sym_type_alias_statement] = STATE(1346), + [sym_expression_list] = STATE(1545), + [sym_pattern] = STATE(1020), + [sym_tuple_pattern] = STATE(1005), + [sym_list_pattern] = STATE(1005), + [sym_list_splat_pattern] = STATE(1005), + [sym_expression] = STATE(1191), + [sym_primary_expression] = STATE(773), + [sym_not_operator] = STATE(1126), + [sym_boolean_operator] = STATE(1126), + [sym_binary_operator] = STATE(950), + [sym_unary_operator] = STATE(950), + [sym_comparison_operator] = STATE(1126), + [sym_lambda] = STATE(1126), + [sym_assignment] = STATE(1545), + [sym_augmented_assignment] = STATE(1545), + [sym_pattern_list] = STATE(1030), + [sym_yield] = STATE(1545), + [sym_attribute] = STATE(614), + [sym_subscript] = STATE(614), + [sym_call] = STATE(950), + [sym_list] = STATE(950), + [sym_set] = STATE(950), + [sym_tuple] = STATE(950), + [sym_dictionary] = STATE(950), + [sym_list_comprehension] = STATE(950), + [sym_dictionary_comprehension] = STATE(950), + [sym_set_comprehension] = STATE(950), + [sym_generator_expression] = STATE(950), + [sym_parenthesized_expression] = STATE(950), + [sym_conditional_expression] = STATE(1126), + [sym_concatenated_string] = STATE(950), + [sym_string] = STATE(779), + [sym_concatenated_template_string] = STATE(950), + [sym_template_string] = STATE(772), + [sym_await] = STATE(950), [sym_identifier] = ACTIONS(7), [anon_sym_lazy] = ACTIONS(9), [anon_sym_import] = ACTIONS(11), @@ -21612,61 +21654,61 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__template_string_start] = ACTIONS(85), }, [STATE(123)] = { - [sym__simple_statements] = STATE(464), - [sym_import_statement] = STATE(1301), - [sym_future_import_statement] = STATE(1301), - [sym_import_from_statement] = STATE(1301), - [sym_print_statement] = STATE(1301), - [sym_assert_statement] = STATE(1301), - [sym_expression_statement] = STATE(1301), - [sym_named_expression] = STATE(1156), - [sym_return_statement] = STATE(1301), - [sym_delete_statement] = STATE(1301), - [sym_raise_statement] = STATE(1301), - [sym_pass_statement] = STATE(1301), - [sym_break_statement] = STATE(1301), - [sym_continue_statement] = STATE(1301), - [sym_list_splat] = STATE(1520), - [sym_dictionary_splat] = STATE(1520), - [sym_global_statement] = STATE(1301), - [sym_nonlocal_statement] = STATE(1301), - [sym_exec_statement] = STATE(1301), - [sym_type_alias_statement] = STATE(1301), - [sym_expression_list] = STATE(1522), - [sym_pattern] = STATE(1017), - [sym_tuple_pattern] = STATE(1001), - [sym_list_pattern] = STATE(1001), - [sym_list_splat_pattern] = STATE(1001), - [sym_expression] = STATE(1176), - [sym_primary_expression] = STATE(765), - [sym_not_operator] = STATE(1156), - [sym_boolean_operator] = STATE(1156), - [sym_binary_operator] = STATE(920), - [sym_unary_operator] = STATE(920), - [sym_comparison_operator] = STATE(1156), - [sym_lambda] = STATE(1156), - [sym_assignment] = STATE(1522), - [sym_augmented_assignment] = STATE(1522), - [sym_pattern_list] = STATE(1026), - [sym_yield] = STATE(1522), - [sym_attribute] = STATE(582), - [sym_subscript] = STATE(582), - [sym_call] = STATE(920), - [sym_list] = STATE(920), - [sym_set] = STATE(920), - [sym_tuple] = STATE(920), - [sym_dictionary] = STATE(920), - [sym_list_comprehension] = STATE(920), - [sym_dictionary_comprehension] = STATE(920), - [sym_set_comprehension] = STATE(920), - [sym_generator_expression] = STATE(920), - [sym_parenthesized_expression] = STATE(920), - [sym_conditional_expression] = STATE(1156), - [sym_concatenated_string] = STATE(920), - [sym_string] = STATE(775), - [sym_concatenated_template_string] = STATE(920), - [sym_template_string] = STATE(769), - [sym_await] = STATE(920), + [sym__simple_statements] = STATE(1183), + [sym_import_statement] = STATE(1402), + [sym_future_import_statement] = STATE(1402), + [sym_import_from_statement] = STATE(1402), + [sym_print_statement] = STATE(1402), + [sym_assert_statement] = STATE(1402), + [sym_expression_statement] = STATE(1402), + [sym_named_expression] = STATE(1126), + [sym_return_statement] = STATE(1402), + [sym_delete_statement] = STATE(1402), + [sym_raise_statement] = STATE(1402), + [sym_pass_statement] = STATE(1402), + [sym_break_statement] = STATE(1402), + [sym_continue_statement] = STATE(1402), + [sym_list_splat] = STATE(1590), + [sym_dictionary_splat] = STATE(1590), + [sym_global_statement] = STATE(1402), + [sym_nonlocal_statement] = STATE(1402), + [sym_exec_statement] = STATE(1402), + [sym_type_alias_statement] = STATE(1402), + [sym_expression_list] = STATE(1545), + [sym_pattern] = STATE(1020), + [sym_tuple_pattern] = STATE(1005), + [sym_list_pattern] = STATE(1005), + [sym_list_splat_pattern] = STATE(1005), + [sym_expression] = STATE(1191), + [sym_primary_expression] = STATE(773), + [sym_not_operator] = STATE(1126), + [sym_boolean_operator] = STATE(1126), + [sym_binary_operator] = STATE(950), + [sym_unary_operator] = STATE(950), + [sym_comparison_operator] = STATE(1126), + [sym_lambda] = STATE(1126), + [sym_assignment] = STATE(1545), + [sym_augmented_assignment] = STATE(1545), + [sym_pattern_list] = STATE(1030), + [sym_yield] = STATE(1545), + [sym_attribute] = STATE(614), + [sym_subscript] = STATE(614), + [sym_call] = STATE(950), + [sym_list] = STATE(950), + [sym_set] = STATE(950), + [sym_tuple] = STATE(950), + [sym_dictionary] = STATE(950), + [sym_list_comprehension] = STATE(950), + [sym_dictionary_comprehension] = STATE(950), + [sym_set_comprehension] = STATE(950), + [sym_generator_expression] = STATE(950), + [sym_parenthesized_expression] = STATE(950), + [sym_conditional_expression] = STATE(1126), + [sym_concatenated_string] = STATE(950), + [sym_string] = STATE(779), + [sym_concatenated_template_string] = STATE(950), + [sym_template_string] = STATE(772), + [sym_await] = STATE(950), [sym_identifier] = ACTIONS(7), [anon_sym_lazy] = ACTIONS(9), [anon_sym_import] = ACTIONS(11), @@ -21710,61 +21752,61 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__template_string_start] = ACTIONS(85), }, [STATE(124)] = { - [sym__simple_statements] = STATE(1171), - [sym_import_statement] = STATE(1299), - [sym_future_import_statement] = STATE(1299), - [sym_import_from_statement] = STATE(1299), - [sym_print_statement] = STATE(1299), - [sym_assert_statement] = STATE(1299), - [sym_expression_statement] = STATE(1299), - [sym_named_expression] = STATE(1156), - [sym_return_statement] = STATE(1299), - [sym_delete_statement] = STATE(1299), - [sym_raise_statement] = STATE(1299), - [sym_pass_statement] = STATE(1299), - [sym_break_statement] = STATE(1299), - [sym_continue_statement] = STATE(1299), - [sym_list_splat] = STATE(1520), - [sym_dictionary_splat] = STATE(1520), - [sym_global_statement] = STATE(1299), - [sym_nonlocal_statement] = STATE(1299), - [sym_exec_statement] = STATE(1299), - [sym_type_alias_statement] = STATE(1299), - [sym_expression_list] = STATE(1522), - [sym_pattern] = STATE(1017), - [sym_tuple_pattern] = STATE(1001), - [sym_list_pattern] = STATE(1001), - [sym_list_splat_pattern] = STATE(1001), - [sym_expression] = STATE(1176), - [sym_primary_expression] = STATE(765), - [sym_not_operator] = STATE(1156), - [sym_boolean_operator] = STATE(1156), - [sym_binary_operator] = STATE(920), - [sym_unary_operator] = STATE(920), - [sym_comparison_operator] = STATE(1156), - [sym_lambda] = STATE(1156), - [sym_assignment] = STATE(1522), - [sym_augmented_assignment] = STATE(1522), - [sym_pattern_list] = STATE(1026), - [sym_yield] = STATE(1522), - [sym_attribute] = STATE(582), - [sym_subscript] = STATE(582), - [sym_call] = STATE(920), - [sym_list] = STATE(920), - [sym_set] = STATE(920), - [sym_tuple] = STATE(920), - [sym_dictionary] = STATE(920), - [sym_list_comprehension] = STATE(920), - [sym_dictionary_comprehension] = STATE(920), - [sym_set_comprehension] = STATE(920), - [sym_generator_expression] = STATE(920), - [sym_parenthesized_expression] = STATE(920), - [sym_conditional_expression] = STATE(1156), - [sym_concatenated_string] = STATE(920), - [sym_string] = STATE(775), - [sym_concatenated_template_string] = STATE(920), - [sym_template_string] = STATE(769), - [sym_await] = STATE(920), + [sym__simple_statements] = STATE(446), + [sym_import_statement] = STATE(1346), + [sym_future_import_statement] = STATE(1346), + [sym_import_from_statement] = STATE(1346), + [sym_print_statement] = STATE(1346), + [sym_assert_statement] = STATE(1346), + [sym_expression_statement] = STATE(1346), + [sym_named_expression] = STATE(1126), + [sym_return_statement] = STATE(1346), + [sym_delete_statement] = STATE(1346), + [sym_raise_statement] = STATE(1346), + [sym_pass_statement] = STATE(1346), + [sym_break_statement] = STATE(1346), + [sym_continue_statement] = STATE(1346), + [sym_list_splat] = STATE(1590), + [sym_dictionary_splat] = STATE(1590), + [sym_global_statement] = STATE(1346), + [sym_nonlocal_statement] = STATE(1346), + [sym_exec_statement] = STATE(1346), + [sym_type_alias_statement] = STATE(1346), + [sym_expression_list] = STATE(1545), + [sym_pattern] = STATE(1020), + [sym_tuple_pattern] = STATE(1005), + [sym_list_pattern] = STATE(1005), + [sym_list_splat_pattern] = STATE(1005), + [sym_expression] = STATE(1191), + [sym_primary_expression] = STATE(773), + [sym_not_operator] = STATE(1126), + [sym_boolean_operator] = STATE(1126), + [sym_binary_operator] = STATE(950), + [sym_unary_operator] = STATE(950), + [sym_comparison_operator] = STATE(1126), + [sym_lambda] = STATE(1126), + [sym_assignment] = STATE(1545), + [sym_augmented_assignment] = STATE(1545), + [sym_pattern_list] = STATE(1030), + [sym_yield] = STATE(1545), + [sym_attribute] = STATE(614), + [sym_subscript] = STATE(614), + [sym_call] = STATE(950), + [sym_list] = STATE(950), + [sym_set] = STATE(950), + [sym_tuple] = STATE(950), + [sym_dictionary] = STATE(950), + [sym_list_comprehension] = STATE(950), + [sym_dictionary_comprehension] = STATE(950), + [sym_set_comprehension] = STATE(950), + [sym_generator_expression] = STATE(950), + [sym_parenthesized_expression] = STATE(950), + [sym_conditional_expression] = STATE(1126), + [sym_concatenated_string] = STATE(950), + [sym_string] = STATE(779), + [sym_concatenated_template_string] = STATE(950), + [sym_template_string] = STATE(772), + [sym_await] = STATE(950), [sym_identifier] = ACTIONS(7), [anon_sym_lazy] = ACTIONS(9), [anon_sym_import] = ACTIONS(11), @@ -21808,61 +21850,61 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__template_string_start] = ACTIONS(85), }, [STATE(125)] = { - [sym__simple_statements] = STATE(454), - [sym_import_statement] = STATE(1301), - [sym_future_import_statement] = STATE(1301), - [sym_import_from_statement] = STATE(1301), - [sym_print_statement] = STATE(1301), - [sym_assert_statement] = STATE(1301), - [sym_expression_statement] = STATE(1301), - [sym_named_expression] = STATE(1156), - [sym_return_statement] = STATE(1301), - [sym_delete_statement] = STATE(1301), - [sym_raise_statement] = STATE(1301), - [sym_pass_statement] = STATE(1301), - [sym_break_statement] = STATE(1301), - [sym_continue_statement] = STATE(1301), - [sym_list_splat] = STATE(1520), - [sym_dictionary_splat] = STATE(1520), - [sym_global_statement] = STATE(1301), - [sym_nonlocal_statement] = STATE(1301), - [sym_exec_statement] = STATE(1301), - [sym_type_alias_statement] = STATE(1301), - [sym_expression_list] = STATE(1522), - [sym_pattern] = STATE(1017), - [sym_tuple_pattern] = STATE(1001), - [sym_list_pattern] = STATE(1001), - [sym_list_splat_pattern] = STATE(1001), - [sym_expression] = STATE(1176), - [sym_primary_expression] = STATE(765), - [sym_not_operator] = STATE(1156), - [sym_boolean_operator] = STATE(1156), - [sym_binary_operator] = STATE(920), - [sym_unary_operator] = STATE(920), - [sym_comparison_operator] = STATE(1156), - [sym_lambda] = STATE(1156), - [sym_assignment] = STATE(1522), - [sym_augmented_assignment] = STATE(1522), - [sym_pattern_list] = STATE(1026), - [sym_yield] = STATE(1522), - [sym_attribute] = STATE(582), - [sym_subscript] = STATE(582), - [sym_call] = STATE(920), - [sym_list] = STATE(920), - [sym_set] = STATE(920), - [sym_tuple] = STATE(920), - [sym_dictionary] = STATE(920), - [sym_list_comprehension] = STATE(920), - [sym_dictionary_comprehension] = STATE(920), - [sym_set_comprehension] = STATE(920), - [sym_generator_expression] = STATE(920), - [sym_parenthesized_expression] = STATE(920), - [sym_conditional_expression] = STATE(1156), - [sym_concatenated_string] = STATE(920), - [sym_string] = STATE(775), - [sym_concatenated_template_string] = STATE(920), - [sym_template_string] = STATE(769), - [sym_await] = STATE(920), + [sym__simple_statements] = STATE(548), + [sym_import_statement] = STATE(1346), + [sym_future_import_statement] = STATE(1346), + [sym_import_from_statement] = STATE(1346), + [sym_print_statement] = STATE(1346), + [sym_assert_statement] = STATE(1346), + [sym_expression_statement] = STATE(1346), + [sym_named_expression] = STATE(1126), + [sym_return_statement] = STATE(1346), + [sym_delete_statement] = STATE(1346), + [sym_raise_statement] = STATE(1346), + [sym_pass_statement] = STATE(1346), + [sym_break_statement] = STATE(1346), + [sym_continue_statement] = STATE(1346), + [sym_list_splat] = STATE(1590), + [sym_dictionary_splat] = STATE(1590), + [sym_global_statement] = STATE(1346), + [sym_nonlocal_statement] = STATE(1346), + [sym_exec_statement] = STATE(1346), + [sym_type_alias_statement] = STATE(1346), + [sym_expression_list] = STATE(1545), + [sym_pattern] = STATE(1020), + [sym_tuple_pattern] = STATE(1005), + [sym_list_pattern] = STATE(1005), + [sym_list_splat_pattern] = STATE(1005), + [sym_expression] = STATE(1191), + [sym_primary_expression] = STATE(773), + [sym_not_operator] = STATE(1126), + [sym_boolean_operator] = STATE(1126), + [sym_binary_operator] = STATE(950), + [sym_unary_operator] = STATE(950), + [sym_comparison_operator] = STATE(1126), + [sym_lambda] = STATE(1126), + [sym_assignment] = STATE(1545), + [sym_augmented_assignment] = STATE(1545), + [sym_pattern_list] = STATE(1030), + [sym_yield] = STATE(1545), + [sym_attribute] = STATE(614), + [sym_subscript] = STATE(614), + [sym_call] = STATE(950), + [sym_list] = STATE(950), + [sym_set] = STATE(950), + [sym_tuple] = STATE(950), + [sym_dictionary] = STATE(950), + [sym_list_comprehension] = STATE(950), + [sym_dictionary_comprehension] = STATE(950), + [sym_set_comprehension] = STATE(950), + [sym_generator_expression] = STATE(950), + [sym_parenthesized_expression] = STATE(950), + [sym_conditional_expression] = STATE(1126), + [sym_concatenated_string] = STATE(950), + [sym_string] = STATE(779), + [sym_concatenated_template_string] = STATE(950), + [sym_template_string] = STATE(772), + [sym_await] = STATE(950), [sym_identifier] = ACTIONS(7), [anon_sym_lazy] = ACTIONS(9), [anon_sym_import] = ACTIONS(11), @@ -21906,61 +21948,61 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__template_string_start] = ACTIONS(85), }, [STATE(126)] = { - [sym__simple_statements] = STATE(1209), - [sym_import_statement] = STATE(1299), - [sym_future_import_statement] = STATE(1299), - [sym_import_from_statement] = STATE(1299), - [sym_print_statement] = STATE(1299), - [sym_assert_statement] = STATE(1299), - [sym_expression_statement] = STATE(1299), - [sym_named_expression] = STATE(1156), - [sym_return_statement] = STATE(1299), - [sym_delete_statement] = STATE(1299), - [sym_raise_statement] = STATE(1299), - [sym_pass_statement] = STATE(1299), - [sym_break_statement] = STATE(1299), - [sym_continue_statement] = STATE(1299), - [sym_list_splat] = STATE(1520), - [sym_dictionary_splat] = STATE(1520), - [sym_global_statement] = STATE(1299), - [sym_nonlocal_statement] = STATE(1299), - [sym_exec_statement] = STATE(1299), - [sym_type_alias_statement] = STATE(1299), - [sym_expression_list] = STATE(1522), - [sym_pattern] = STATE(1017), - [sym_tuple_pattern] = STATE(1001), - [sym_list_pattern] = STATE(1001), - [sym_list_splat_pattern] = STATE(1001), - [sym_expression] = STATE(1176), - [sym_primary_expression] = STATE(765), - [sym_not_operator] = STATE(1156), - [sym_boolean_operator] = STATE(1156), - [sym_binary_operator] = STATE(920), - [sym_unary_operator] = STATE(920), - [sym_comparison_operator] = STATE(1156), - [sym_lambda] = STATE(1156), - [sym_assignment] = STATE(1522), - [sym_augmented_assignment] = STATE(1522), - [sym_pattern_list] = STATE(1026), - [sym_yield] = STATE(1522), - [sym_attribute] = STATE(582), - [sym_subscript] = STATE(582), - [sym_call] = STATE(920), - [sym_list] = STATE(920), - [sym_set] = STATE(920), - [sym_tuple] = STATE(920), - [sym_dictionary] = STATE(920), - [sym_list_comprehension] = STATE(920), - [sym_dictionary_comprehension] = STATE(920), - [sym_set_comprehension] = STATE(920), - [sym_generator_expression] = STATE(920), - [sym_parenthesized_expression] = STATE(920), - [sym_conditional_expression] = STATE(1156), - [sym_concatenated_string] = STATE(920), - [sym_string] = STATE(775), - [sym_concatenated_template_string] = STATE(920), - [sym_template_string] = STATE(769), - [sym_await] = STATE(920), + [sym__simple_statements] = STATE(585), + [sym_import_statement] = STATE(1345), + [sym_future_import_statement] = STATE(1345), + [sym_import_from_statement] = STATE(1345), + [sym_print_statement] = STATE(1345), + [sym_assert_statement] = STATE(1345), + [sym_expression_statement] = STATE(1345), + [sym_named_expression] = STATE(1126), + [sym_return_statement] = STATE(1345), + [sym_delete_statement] = STATE(1345), + [sym_raise_statement] = STATE(1345), + [sym_pass_statement] = STATE(1345), + [sym_break_statement] = STATE(1345), + [sym_continue_statement] = STATE(1345), + [sym_list_splat] = STATE(1590), + [sym_dictionary_splat] = STATE(1590), + [sym_global_statement] = STATE(1345), + [sym_nonlocal_statement] = STATE(1345), + [sym_exec_statement] = STATE(1345), + [sym_type_alias_statement] = STATE(1345), + [sym_expression_list] = STATE(1545), + [sym_pattern] = STATE(1020), + [sym_tuple_pattern] = STATE(1005), + [sym_list_pattern] = STATE(1005), + [sym_list_splat_pattern] = STATE(1005), + [sym_expression] = STATE(1191), + [sym_primary_expression] = STATE(773), + [sym_not_operator] = STATE(1126), + [sym_boolean_operator] = STATE(1126), + [sym_binary_operator] = STATE(950), + [sym_unary_operator] = STATE(950), + [sym_comparison_operator] = STATE(1126), + [sym_lambda] = STATE(1126), + [sym_assignment] = STATE(1545), + [sym_augmented_assignment] = STATE(1545), + [sym_pattern_list] = STATE(1030), + [sym_yield] = STATE(1545), + [sym_attribute] = STATE(614), + [sym_subscript] = STATE(614), + [sym_call] = STATE(950), + [sym_list] = STATE(950), + [sym_set] = STATE(950), + [sym_tuple] = STATE(950), + [sym_dictionary] = STATE(950), + [sym_list_comprehension] = STATE(950), + [sym_dictionary_comprehension] = STATE(950), + [sym_set_comprehension] = STATE(950), + [sym_generator_expression] = STATE(950), + [sym_parenthesized_expression] = STATE(950), + [sym_conditional_expression] = STATE(1126), + [sym_concatenated_string] = STATE(950), + [sym_string] = STATE(779), + [sym_concatenated_template_string] = STATE(950), + [sym_template_string] = STATE(772), + [sym_await] = STATE(950), [sym_identifier] = ACTIONS(7), [anon_sym_lazy] = ACTIONS(9), [anon_sym_import] = ACTIONS(11), @@ -22004,60 +22046,60 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__template_string_start] = ACTIONS(85), }, [STATE(127)] = { - [sym_import_statement] = STATE(1566), - [sym_future_import_statement] = STATE(1566), - [sym_import_from_statement] = STATE(1566), - [sym_print_statement] = STATE(1566), - [sym_assert_statement] = STATE(1566), - [sym_expression_statement] = STATE(1566), - [sym_named_expression] = STATE(1156), - [sym_return_statement] = STATE(1566), - [sym_delete_statement] = STATE(1566), - [sym_raise_statement] = STATE(1566), - [sym_pass_statement] = STATE(1566), - [sym_break_statement] = STATE(1566), - [sym_continue_statement] = STATE(1566), - [sym_list_splat] = STATE(1520), - [sym_dictionary_splat] = STATE(1520), - [sym_global_statement] = STATE(1566), - [sym_nonlocal_statement] = STATE(1566), - [sym_exec_statement] = STATE(1566), - [sym_type_alias_statement] = STATE(1566), - [sym_expression_list] = STATE(1522), - [sym_pattern] = STATE(1017), - [sym_tuple_pattern] = STATE(1001), - [sym_list_pattern] = STATE(1001), - [sym_list_splat_pattern] = STATE(1001), - [sym_expression] = STATE(1176), - [sym_primary_expression] = STATE(765), - [sym_not_operator] = STATE(1156), - [sym_boolean_operator] = STATE(1156), - [sym_binary_operator] = STATE(920), - [sym_unary_operator] = STATE(920), - [sym_comparison_operator] = STATE(1156), - [sym_lambda] = STATE(1156), - [sym_assignment] = STATE(1522), - [sym_augmented_assignment] = STATE(1522), - [sym_pattern_list] = STATE(1026), - [sym_yield] = STATE(1522), - [sym_attribute] = STATE(582), - [sym_subscript] = STATE(582), - [sym_call] = STATE(920), - [sym_list] = STATE(920), - [sym_set] = STATE(920), - [sym_tuple] = STATE(920), - [sym_dictionary] = STATE(920), - [sym_list_comprehension] = STATE(920), - [sym_dictionary_comprehension] = STATE(920), - [sym_set_comprehension] = STATE(920), - [sym_generator_expression] = STATE(920), - [sym_parenthesized_expression] = STATE(920), - [sym_conditional_expression] = STATE(1156), - [sym_concatenated_string] = STATE(920), - [sym_string] = STATE(775), - [sym_concatenated_template_string] = STATE(920), - [sym_template_string] = STATE(769), - [sym_await] = STATE(920), + [sym_import_statement] = STATE(1578), + [sym_future_import_statement] = STATE(1578), + [sym_import_from_statement] = STATE(1578), + [sym_print_statement] = STATE(1578), + [sym_assert_statement] = STATE(1578), + [sym_expression_statement] = STATE(1578), + [sym_named_expression] = STATE(1126), + [sym_return_statement] = STATE(1578), + [sym_delete_statement] = STATE(1578), + [sym_raise_statement] = STATE(1578), + [sym_pass_statement] = STATE(1578), + [sym_break_statement] = STATE(1578), + [sym_continue_statement] = STATE(1578), + [sym_list_splat] = STATE(1590), + [sym_dictionary_splat] = STATE(1590), + [sym_global_statement] = STATE(1578), + [sym_nonlocal_statement] = STATE(1578), + [sym_exec_statement] = STATE(1578), + [sym_type_alias_statement] = STATE(1578), + [sym_expression_list] = STATE(1545), + [sym_pattern] = STATE(1020), + [sym_tuple_pattern] = STATE(1005), + [sym_list_pattern] = STATE(1005), + [sym_list_splat_pattern] = STATE(1005), + [sym_expression] = STATE(1191), + [sym_primary_expression] = STATE(773), + [sym_not_operator] = STATE(1126), + [sym_boolean_operator] = STATE(1126), + [sym_binary_operator] = STATE(950), + [sym_unary_operator] = STATE(950), + [sym_comparison_operator] = STATE(1126), + [sym_lambda] = STATE(1126), + [sym_assignment] = STATE(1545), + [sym_augmented_assignment] = STATE(1545), + [sym_pattern_list] = STATE(1030), + [sym_yield] = STATE(1545), + [sym_attribute] = STATE(614), + [sym_subscript] = STATE(614), + [sym_call] = STATE(950), + [sym_list] = STATE(950), + [sym_set] = STATE(950), + [sym_tuple] = STATE(950), + [sym_dictionary] = STATE(950), + [sym_list_comprehension] = STATE(950), + [sym_dictionary_comprehension] = STATE(950), + [sym_set_comprehension] = STATE(950), + [sym_generator_expression] = STATE(950), + [sym_parenthesized_expression] = STATE(950), + [sym_conditional_expression] = STATE(1126), + [sym_concatenated_string] = STATE(950), + [sym_string] = STATE(779), + [sym_concatenated_template_string] = STATE(950), + [sym_template_string] = STATE(772), + [sym_await] = STATE(950), [sym_identifier] = ACTIONS(7), [anon_sym_lazy] = ACTIONS(9), [anon_sym_import] = ACTIONS(11), @@ -22100,60 +22142,60 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__template_string_start] = ACTIONS(85), }, [STATE(128)] = { - [sym_import_statement] = STATE(1566), - [sym_future_import_statement] = STATE(1566), - [sym_import_from_statement] = STATE(1566), - [sym_print_statement] = STATE(1566), - [sym_assert_statement] = STATE(1566), - [sym_expression_statement] = STATE(1566), - [sym_named_expression] = STATE(1156), - [sym_return_statement] = STATE(1566), - [sym_delete_statement] = STATE(1566), - [sym_raise_statement] = STATE(1566), - [sym_pass_statement] = STATE(1566), - [sym_break_statement] = STATE(1566), - [sym_continue_statement] = STATE(1566), - [sym_list_splat] = STATE(1520), - [sym_dictionary_splat] = STATE(1520), - [sym_global_statement] = STATE(1566), - [sym_nonlocal_statement] = STATE(1566), - [sym_exec_statement] = STATE(1566), - [sym_type_alias_statement] = STATE(1566), - [sym_expression_list] = STATE(1522), - [sym_pattern] = STATE(1017), - [sym_tuple_pattern] = STATE(1001), - [sym_list_pattern] = STATE(1001), - [sym_list_splat_pattern] = STATE(1001), - [sym_expression] = STATE(1176), - [sym_primary_expression] = STATE(765), - [sym_not_operator] = STATE(1156), - [sym_boolean_operator] = STATE(1156), - [sym_binary_operator] = STATE(920), - [sym_unary_operator] = STATE(920), - [sym_comparison_operator] = STATE(1156), - [sym_lambda] = STATE(1156), - [sym_assignment] = STATE(1522), - [sym_augmented_assignment] = STATE(1522), - [sym_pattern_list] = STATE(1026), - [sym_yield] = STATE(1522), - [sym_attribute] = STATE(582), - [sym_subscript] = STATE(582), - [sym_call] = STATE(920), - [sym_list] = STATE(920), - [sym_set] = STATE(920), - [sym_tuple] = STATE(920), - [sym_dictionary] = STATE(920), - [sym_list_comprehension] = STATE(920), - [sym_dictionary_comprehension] = STATE(920), - [sym_set_comprehension] = STATE(920), - [sym_generator_expression] = STATE(920), - [sym_parenthesized_expression] = STATE(920), - [sym_conditional_expression] = STATE(1156), - [sym_concatenated_string] = STATE(920), - [sym_string] = STATE(775), - [sym_concatenated_template_string] = STATE(920), - [sym_template_string] = STATE(769), - [sym_await] = STATE(920), + [sym_import_statement] = STATE(1578), + [sym_future_import_statement] = STATE(1578), + [sym_import_from_statement] = STATE(1578), + [sym_print_statement] = STATE(1578), + [sym_assert_statement] = STATE(1578), + [sym_expression_statement] = STATE(1578), + [sym_named_expression] = STATE(1126), + [sym_return_statement] = STATE(1578), + [sym_delete_statement] = STATE(1578), + [sym_raise_statement] = STATE(1578), + [sym_pass_statement] = STATE(1578), + [sym_break_statement] = STATE(1578), + [sym_continue_statement] = STATE(1578), + [sym_list_splat] = STATE(1590), + [sym_dictionary_splat] = STATE(1590), + [sym_global_statement] = STATE(1578), + [sym_nonlocal_statement] = STATE(1578), + [sym_exec_statement] = STATE(1578), + [sym_type_alias_statement] = STATE(1578), + [sym_expression_list] = STATE(1545), + [sym_pattern] = STATE(1020), + [sym_tuple_pattern] = STATE(1005), + [sym_list_pattern] = STATE(1005), + [sym_list_splat_pattern] = STATE(1005), + [sym_expression] = STATE(1191), + [sym_primary_expression] = STATE(773), + [sym_not_operator] = STATE(1126), + [sym_boolean_operator] = STATE(1126), + [sym_binary_operator] = STATE(950), + [sym_unary_operator] = STATE(950), + [sym_comparison_operator] = STATE(1126), + [sym_lambda] = STATE(1126), + [sym_assignment] = STATE(1545), + [sym_augmented_assignment] = STATE(1545), + [sym_pattern_list] = STATE(1030), + [sym_yield] = STATE(1545), + [sym_attribute] = STATE(614), + [sym_subscript] = STATE(614), + [sym_call] = STATE(950), + [sym_list] = STATE(950), + [sym_set] = STATE(950), + [sym_tuple] = STATE(950), + [sym_dictionary] = STATE(950), + [sym_list_comprehension] = STATE(950), + [sym_dictionary_comprehension] = STATE(950), + [sym_set_comprehension] = STATE(950), + [sym_generator_expression] = STATE(950), + [sym_parenthesized_expression] = STATE(950), + [sym_conditional_expression] = STATE(1126), + [sym_concatenated_string] = STATE(950), + [sym_string] = STATE(779), + [sym_concatenated_template_string] = STATE(950), + [sym_template_string] = STATE(772), + [sym_await] = STATE(950), [sym_identifier] = ACTIONS(7), [anon_sym_lazy] = ACTIONS(9), [anon_sym_import] = ACTIONS(11), @@ -22196,60 +22238,60 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__template_string_start] = ACTIONS(85), }, [STATE(129)] = { - [sym_import_statement] = STATE(1566), - [sym_future_import_statement] = STATE(1566), - [sym_import_from_statement] = STATE(1566), - [sym_print_statement] = STATE(1566), - [sym_assert_statement] = STATE(1566), - [sym_expression_statement] = STATE(1566), - [sym_named_expression] = STATE(1156), - [sym_return_statement] = STATE(1566), - [sym_delete_statement] = STATE(1566), - [sym_raise_statement] = STATE(1566), - [sym_pass_statement] = STATE(1566), - [sym_break_statement] = STATE(1566), - [sym_continue_statement] = STATE(1566), - [sym_list_splat] = STATE(1520), - [sym_dictionary_splat] = STATE(1520), - [sym_global_statement] = STATE(1566), - [sym_nonlocal_statement] = STATE(1566), - [sym_exec_statement] = STATE(1566), - [sym_type_alias_statement] = STATE(1566), - [sym_expression_list] = STATE(1522), - [sym_pattern] = STATE(1017), - [sym_tuple_pattern] = STATE(1001), - [sym_list_pattern] = STATE(1001), - [sym_list_splat_pattern] = STATE(1001), - [sym_expression] = STATE(1176), - [sym_primary_expression] = STATE(765), - [sym_not_operator] = STATE(1156), - [sym_boolean_operator] = STATE(1156), - [sym_binary_operator] = STATE(920), - [sym_unary_operator] = STATE(920), - [sym_comparison_operator] = STATE(1156), - [sym_lambda] = STATE(1156), - [sym_assignment] = STATE(1522), - [sym_augmented_assignment] = STATE(1522), - [sym_pattern_list] = STATE(1026), - [sym_yield] = STATE(1522), - [sym_attribute] = STATE(582), - [sym_subscript] = STATE(582), - [sym_call] = STATE(920), - [sym_list] = STATE(920), - [sym_set] = STATE(920), - [sym_tuple] = STATE(920), - [sym_dictionary] = STATE(920), - [sym_list_comprehension] = STATE(920), - [sym_dictionary_comprehension] = STATE(920), - [sym_set_comprehension] = STATE(920), - [sym_generator_expression] = STATE(920), - [sym_parenthesized_expression] = STATE(920), - [sym_conditional_expression] = STATE(1156), - [sym_concatenated_string] = STATE(920), - [sym_string] = STATE(775), - [sym_concatenated_template_string] = STATE(920), - [sym_template_string] = STATE(769), - [sym_await] = STATE(920), + [sym_import_statement] = STATE(1578), + [sym_future_import_statement] = STATE(1578), + [sym_import_from_statement] = STATE(1578), + [sym_print_statement] = STATE(1578), + [sym_assert_statement] = STATE(1578), + [sym_expression_statement] = STATE(1578), + [sym_named_expression] = STATE(1126), + [sym_return_statement] = STATE(1578), + [sym_delete_statement] = STATE(1578), + [sym_raise_statement] = STATE(1578), + [sym_pass_statement] = STATE(1578), + [sym_break_statement] = STATE(1578), + [sym_continue_statement] = STATE(1578), + [sym_list_splat] = STATE(1590), + [sym_dictionary_splat] = STATE(1590), + [sym_global_statement] = STATE(1578), + [sym_nonlocal_statement] = STATE(1578), + [sym_exec_statement] = STATE(1578), + [sym_type_alias_statement] = STATE(1578), + [sym_expression_list] = STATE(1545), + [sym_pattern] = STATE(1020), + [sym_tuple_pattern] = STATE(1005), + [sym_list_pattern] = STATE(1005), + [sym_list_splat_pattern] = STATE(1005), + [sym_expression] = STATE(1191), + [sym_primary_expression] = STATE(773), + [sym_not_operator] = STATE(1126), + [sym_boolean_operator] = STATE(1126), + [sym_binary_operator] = STATE(950), + [sym_unary_operator] = STATE(950), + [sym_comparison_operator] = STATE(1126), + [sym_lambda] = STATE(1126), + [sym_assignment] = STATE(1545), + [sym_augmented_assignment] = STATE(1545), + [sym_pattern_list] = STATE(1030), + [sym_yield] = STATE(1545), + [sym_attribute] = STATE(614), + [sym_subscript] = STATE(614), + [sym_call] = STATE(950), + [sym_list] = STATE(950), + [sym_set] = STATE(950), + [sym_tuple] = STATE(950), + [sym_dictionary] = STATE(950), + [sym_list_comprehension] = STATE(950), + [sym_dictionary_comprehension] = STATE(950), + [sym_set_comprehension] = STATE(950), + [sym_generator_expression] = STATE(950), + [sym_parenthesized_expression] = STATE(950), + [sym_conditional_expression] = STATE(1126), + [sym_concatenated_string] = STATE(950), + [sym_string] = STATE(779), + [sym_concatenated_template_string] = STATE(950), + [sym_template_string] = STATE(772), + [sym_await] = STATE(950), [sym_identifier] = ACTIONS(7), [anon_sym_lazy] = ACTIONS(9), [anon_sym_import] = ACTIONS(11), @@ -22292,60 +22334,60 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__template_string_start] = ACTIONS(85), }, [STATE(130)] = { - [sym_import_statement] = STATE(1566), - [sym_future_import_statement] = STATE(1566), - [sym_import_from_statement] = STATE(1566), - [sym_print_statement] = STATE(1566), - [sym_assert_statement] = STATE(1566), - [sym_expression_statement] = STATE(1566), - [sym_named_expression] = STATE(1156), - [sym_return_statement] = STATE(1566), - [sym_delete_statement] = STATE(1566), - [sym_raise_statement] = STATE(1566), - [sym_pass_statement] = STATE(1566), - [sym_break_statement] = STATE(1566), - [sym_continue_statement] = STATE(1566), - [sym_list_splat] = STATE(1520), - [sym_dictionary_splat] = STATE(1520), - [sym_global_statement] = STATE(1566), - [sym_nonlocal_statement] = STATE(1566), - [sym_exec_statement] = STATE(1566), - [sym_type_alias_statement] = STATE(1566), - [sym_expression_list] = STATE(1522), - [sym_pattern] = STATE(1017), - [sym_tuple_pattern] = STATE(1001), - [sym_list_pattern] = STATE(1001), - [sym_list_splat_pattern] = STATE(1001), - [sym_expression] = STATE(1176), - [sym_primary_expression] = STATE(765), - [sym_not_operator] = STATE(1156), - [sym_boolean_operator] = STATE(1156), - [sym_binary_operator] = STATE(920), - [sym_unary_operator] = STATE(920), - [sym_comparison_operator] = STATE(1156), - [sym_lambda] = STATE(1156), - [sym_assignment] = STATE(1522), - [sym_augmented_assignment] = STATE(1522), - [sym_pattern_list] = STATE(1026), - [sym_yield] = STATE(1522), - [sym_attribute] = STATE(582), - [sym_subscript] = STATE(582), - [sym_call] = STATE(920), - [sym_list] = STATE(920), - [sym_set] = STATE(920), - [sym_tuple] = STATE(920), - [sym_dictionary] = STATE(920), - [sym_list_comprehension] = STATE(920), - [sym_dictionary_comprehension] = STATE(920), - [sym_set_comprehension] = STATE(920), - [sym_generator_expression] = STATE(920), - [sym_parenthesized_expression] = STATE(920), - [sym_conditional_expression] = STATE(1156), - [sym_concatenated_string] = STATE(920), - [sym_string] = STATE(775), - [sym_concatenated_template_string] = STATE(920), - [sym_template_string] = STATE(769), - [sym_await] = STATE(920), + [sym_import_statement] = STATE(1578), + [sym_future_import_statement] = STATE(1578), + [sym_import_from_statement] = STATE(1578), + [sym_print_statement] = STATE(1578), + [sym_assert_statement] = STATE(1578), + [sym_expression_statement] = STATE(1578), + [sym_named_expression] = STATE(1126), + [sym_return_statement] = STATE(1578), + [sym_delete_statement] = STATE(1578), + [sym_raise_statement] = STATE(1578), + [sym_pass_statement] = STATE(1578), + [sym_break_statement] = STATE(1578), + [sym_continue_statement] = STATE(1578), + [sym_list_splat] = STATE(1590), + [sym_dictionary_splat] = STATE(1590), + [sym_global_statement] = STATE(1578), + [sym_nonlocal_statement] = STATE(1578), + [sym_exec_statement] = STATE(1578), + [sym_type_alias_statement] = STATE(1578), + [sym_expression_list] = STATE(1545), + [sym_pattern] = STATE(1020), + [sym_tuple_pattern] = STATE(1005), + [sym_list_pattern] = STATE(1005), + [sym_list_splat_pattern] = STATE(1005), + [sym_expression] = STATE(1191), + [sym_primary_expression] = STATE(773), + [sym_not_operator] = STATE(1126), + [sym_boolean_operator] = STATE(1126), + [sym_binary_operator] = STATE(950), + [sym_unary_operator] = STATE(950), + [sym_comparison_operator] = STATE(1126), + [sym_lambda] = STATE(1126), + [sym_assignment] = STATE(1545), + [sym_augmented_assignment] = STATE(1545), + [sym_pattern_list] = STATE(1030), + [sym_yield] = STATE(1545), + [sym_attribute] = STATE(614), + [sym_subscript] = STATE(614), + [sym_call] = STATE(950), + [sym_list] = STATE(950), + [sym_set] = STATE(950), + [sym_tuple] = STATE(950), + [sym_dictionary] = STATE(950), + [sym_list_comprehension] = STATE(950), + [sym_dictionary_comprehension] = STATE(950), + [sym_set_comprehension] = STATE(950), + [sym_generator_expression] = STATE(950), + [sym_parenthesized_expression] = STATE(950), + [sym_conditional_expression] = STATE(1126), + [sym_concatenated_string] = STATE(950), + [sym_string] = STATE(779), + [sym_concatenated_template_string] = STATE(950), + [sym_template_string] = STATE(772), + [sym_await] = STATE(950), [sym_identifier] = ACTIONS(7), [anon_sym_lazy] = ACTIONS(9), [anon_sym_import] = ACTIONS(11), @@ -22388,60 +22430,60 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__template_string_start] = ACTIONS(85), }, [STATE(131)] = { - [sym_import_statement] = STATE(1566), - [sym_future_import_statement] = STATE(1566), - [sym_import_from_statement] = STATE(1566), - [sym_print_statement] = STATE(1566), - [sym_assert_statement] = STATE(1566), - [sym_expression_statement] = STATE(1566), - [sym_named_expression] = STATE(1156), - [sym_return_statement] = STATE(1566), - [sym_delete_statement] = STATE(1566), - [sym_raise_statement] = STATE(1566), - [sym_pass_statement] = STATE(1566), - [sym_break_statement] = STATE(1566), - [sym_continue_statement] = STATE(1566), - [sym_list_splat] = STATE(1520), - [sym_dictionary_splat] = STATE(1520), - [sym_global_statement] = STATE(1566), - [sym_nonlocal_statement] = STATE(1566), - [sym_exec_statement] = STATE(1566), - [sym_type_alias_statement] = STATE(1566), - [sym_expression_list] = STATE(1522), - [sym_pattern] = STATE(1017), - [sym_tuple_pattern] = STATE(1001), - [sym_list_pattern] = STATE(1001), - [sym_list_splat_pattern] = STATE(1001), - [sym_expression] = STATE(1176), - [sym_primary_expression] = STATE(765), - [sym_not_operator] = STATE(1156), - [sym_boolean_operator] = STATE(1156), - [sym_binary_operator] = STATE(920), - [sym_unary_operator] = STATE(920), - [sym_comparison_operator] = STATE(1156), - [sym_lambda] = STATE(1156), - [sym_assignment] = STATE(1522), - [sym_augmented_assignment] = STATE(1522), - [sym_pattern_list] = STATE(1026), - [sym_yield] = STATE(1522), - [sym_attribute] = STATE(582), - [sym_subscript] = STATE(582), - [sym_call] = STATE(920), - [sym_list] = STATE(920), - [sym_set] = STATE(920), - [sym_tuple] = STATE(920), - [sym_dictionary] = STATE(920), - [sym_list_comprehension] = STATE(920), - [sym_dictionary_comprehension] = STATE(920), - [sym_set_comprehension] = STATE(920), - [sym_generator_expression] = STATE(920), - [sym_parenthesized_expression] = STATE(920), - [sym_conditional_expression] = STATE(1156), - [sym_concatenated_string] = STATE(920), - [sym_string] = STATE(775), - [sym_concatenated_template_string] = STATE(920), - [sym_template_string] = STATE(769), - [sym_await] = STATE(920), + [sym_import_statement] = STATE(1578), + [sym_future_import_statement] = STATE(1578), + [sym_import_from_statement] = STATE(1578), + [sym_print_statement] = STATE(1578), + [sym_assert_statement] = STATE(1578), + [sym_expression_statement] = STATE(1578), + [sym_named_expression] = STATE(1126), + [sym_return_statement] = STATE(1578), + [sym_delete_statement] = STATE(1578), + [sym_raise_statement] = STATE(1578), + [sym_pass_statement] = STATE(1578), + [sym_break_statement] = STATE(1578), + [sym_continue_statement] = STATE(1578), + [sym_list_splat] = STATE(1590), + [sym_dictionary_splat] = STATE(1590), + [sym_global_statement] = STATE(1578), + [sym_nonlocal_statement] = STATE(1578), + [sym_exec_statement] = STATE(1578), + [sym_type_alias_statement] = STATE(1578), + [sym_expression_list] = STATE(1545), + [sym_pattern] = STATE(1020), + [sym_tuple_pattern] = STATE(1005), + [sym_list_pattern] = STATE(1005), + [sym_list_splat_pattern] = STATE(1005), + [sym_expression] = STATE(1191), + [sym_primary_expression] = STATE(773), + [sym_not_operator] = STATE(1126), + [sym_boolean_operator] = STATE(1126), + [sym_binary_operator] = STATE(950), + [sym_unary_operator] = STATE(950), + [sym_comparison_operator] = STATE(1126), + [sym_lambda] = STATE(1126), + [sym_assignment] = STATE(1545), + [sym_augmented_assignment] = STATE(1545), + [sym_pattern_list] = STATE(1030), + [sym_yield] = STATE(1545), + [sym_attribute] = STATE(614), + [sym_subscript] = STATE(614), + [sym_call] = STATE(950), + [sym_list] = STATE(950), + [sym_set] = STATE(950), + [sym_tuple] = STATE(950), + [sym_dictionary] = STATE(950), + [sym_list_comprehension] = STATE(950), + [sym_dictionary_comprehension] = STATE(950), + [sym_set_comprehension] = STATE(950), + [sym_generator_expression] = STATE(950), + [sym_parenthesized_expression] = STATE(950), + [sym_conditional_expression] = STATE(1126), + [sym_concatenated_string] = STATE(950), + [sym_string] = STATE(779), + [sym_concatenated_template_string] = STATE(950), + [sym_template_string] = STATE(772), + [sym_await] = STATE(950), [sym_identifier] = ACTIONS(7), [anon_sym_lazy] = ACTIONS(9), [anon_sym_import] = ACTIONS(11), @@ -22484,60 +22526,60 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__template_string_start] = ACTIONS(85), }, [STATE(132)] = { - [sym_import_statement] = STATE(1566), - [sym_future_import_statement] = STATE(1566), - [sym_import_from_statement] = STATE(1566), - [sym_print_statement] = STATE(1566), - [sym_assert_statement] = STATE(1566), - [sym_expression_statement] = STATE(1566), - [sym_named_expression] = STATE(1156), - [sym_return_statement] = STATE(1566), - [sym_delete_statement] = STATE(1566), - [sym_raise_statement] = STATE(1566), - [sym_pass_statement] = STATE(1566), - [sym_break_statement] = STATE(1566), - [sym_continue_statement] = STATE(1566), - [sym_list_splat] = STATE(1520), - [sym_dictionary_splat] = STATE(1520), - [sym_global_statement] = STATE(1566), - [sym_nonlocal_statement] = STATE(1566), - [sym_exec_statement] = STATE(1566), - [sym_type_alias_statement] = STATE(1566), - [sym_expression_list] = STATE(1522), - [sym_pattern] = STATE(1017), - [sym_tuple_pattern] = STATE(1001), - [sym_list_pattern] = STATE(1001), - [sym_list_splat_pattern] = STATE(1001), - [sym_expression] = STATE(1176), - [sym_primary_expression] = STATE(765), - [sym_not_operator] = STATE(1156), - [sym_boolean_operator] = STATE(1156), - [sym_binary_operator] = STATE(920), - [sym_unary_operator] = STATE(920), - [sym_comparison_operator] = STATE(1156), - [sym_lambda] = STATE(1156), - [sym_assignment] = STATE(1522), - [sym_augmented_assignment] = STATE(1522), - [sym_pattern_list] = STATE(1026), - [sym_yield] = STATE(1522), - [sym_attribute] = STATE(582), - [sym_subscript] = STATE(582), - [sym_call] = STATE(920), - [sym_list] = STATE(920), - [sym_set] = STATE(920), - [sym_tuple] = STATE(920), - [sym_dictionary] = STATE(920), - [sym_list_comprehension] = STATE(920), - [sym_dictionary_comprehension] = STATE(920), - [sym_set_comprehension] = STATE(920), - [sym_generator_expression] = STATE(920), - [sym_parenthesized_expression] = STATE(920), - [sym_conditional_expression] = STATE(1156), - [sym_concatenated_string] = STATE(920), - [sym_string] = STATE(775), - [sym_concatenated_template_string] = STATE(920), - [sym_template_string] = STATE(769), - [sym_await] = STATE(920), + [sym_import_statement] = STATE(1578), + [sym_future_import_statement] = STATE(1578), + [sym_import_from_statement] = STATE(1578), + [sym_print_statement] = STATE(1578), + [sym_assert_statement] = STATE(1578), + [sym_expression_statement] = STATE(1578), + [sym_named_expression] = STATE(1126), + [sym_return_statement] = STATE(1578), + [sym_delete_statement] = STATE(1578), + [sym_raise_statement] = STATE(1578), + [sym_pass_statement] = STATE(1578), + [sym_break_statement] = STATE(1578), + [sym_continue_statement] = STATE(1578), + [sym_list_splat] = STATE(1590), + [sym_dictionary_splat] = STATE(1590), + [sym_global_statement] = STATE(1578), + [sym_nonlocal_statement] = STATE(1578), + [sym_exec_statement] = STATE(1578), + [sym_type_alias_statement] = STATE(1578), + [sym_expression_list] = STATE(1545), + [sym_pattern] = STATE(1020), + [sym_tuple_pattern] = STATE(1005), + [sym_list_pattern] = STATE(1005), + [sym_list_splat_pattern] = STATE(1005), + [sym_expression] = STATE(1191), + [sym_primary_expression] = STATE(773), + [sym_not_operator] = STATE(1126), + [sym_boolean_operator] = STATE(1126), + [sym_binary_operator] = STATE(950), + [sym_unary_operator] = STATE(950), + [sym_comparison_operator] = STATE(1126), + [sym_lambda] = STATE(1126), + [sym_assignment] = STATE(1545), + [sym_augmented_assignment] = STATE(1545), + [sym_pattern_list] = STATE(1030), + [sym_yield] = STATE(1545), + [sym_attribute] = STATE(614), + [sym_subscript] = STATE(614), + [sym_call] = STATE(950), + [sym_list] = STATE(950), + [sym_set] = STATE(950), + [sym_tuple] = STATE(950), + [sym_dictionary] = STATE(950), + [sym_list_comprehension] = STATE(950), + [sym_dictionary_comprehension] = STATE(950), + [sym_set_comprehension] = STATE(950), + [sym_generator_expression] = STATE(950), + [sym_parenthesized_expression] = STATE(950), + [sym_conditional_expression] = STATE(1126), + [sym_concatenated_string] = STATE(950), + [sym_string] = STATE(779), + [sym_concatenated_template_string] = STATE(950), + [sym_template_string] = STATE(772), + [sym_await] = STATE(950), [sym_identifier] = ACTIONS(7), [anon_sym_lazy] = ACTIONS(9), [anon_sym_import] = ACTIONS(11), @@ -22580,60 +22622,60 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__template_string_start] = ACTIONS(85), }, [STATE(133)] = { - [sym_import_statement] = STATE(1566), - [sym_future_import_statement] = STATE(1566), - [sym_import_from_statement] = STATE(1566), - [sym_print_statement] = STATE(1566), - [sym_assert_statement] = STATE(1566), - [sym_expression_statement] = STATE(1566), - [sym_named_expression] = STATE(1156), - [sym_return_statement] = STATE(1566), - [sym_delete_statement] = STATE(1566), - [sym_raise_statement] = STATE(1566), - [sym_pass_statement] = STATE(1566), - [sym_break_statement] = STATE(1566), - [sym_continue_statement] = STATE(1566), - [sym_list_splat] = STATE(1520), - [sym_dictionary_splat] = STATE(1520), - [sym_global_statement] = STATE(1566), - [sym_nonlocal_statement] = STATE(1566), - [sym_exec_statement] = STATE(1566), - [sym_type_alias_statement] = STATE(1566), - [sym_expression_list] = STATE(1522), - [sym_pattern] = STATE(1017), - [sym_tuple_pattern] = STATE(1001), - [sym_list_pattern] = STATE(1001), - [sym_list_splat_pattern] = STATE(1001), - [sym_expression] = STATE(1176), - [sym_primary_expression] = STATE(765), - [sym_not_operator] = STATE(1156), - [sym_boolean_operator] = STATE(1156), - [sym_binary_operator] = STATE(920), - [sym_unary_operator] = STATE(920), - [sym_comparison_operator] = STATE(1156), - [sym_lambda] = STATE(1156), - [sym_assignment] = STATE(1522), - [sym_augmented_assignment] = STATE(1522), - [sym_pattern_list] = STATE(1026), - [sym_yield] = STATE(1522), - [sym_attribute] = STATE(582), - [sym_subscript] = STATE(582), - [sym_call] = STATE(920), - [sym_list] = STATE(920), - [sym_set] = STATE(920), - [sym_tuple] = STATE(920), - [sym_dictionary] = STATE(920), - [sym_list_comprehension] = STATE(920), - [sym_dictionary_comprehension] = STATE(920), - [sym_set_comprehension] = STATE(920), - [sym_generator_expression] = STATE(920), - [sym_parenthesized_expression] = STATE(920), - [sym_conditional_expression] = STATE(1156), - [sym_concatenated_string] = STATE(920), - [sym_string] = STATE(775), - [sym_concatenated_template_string] = STATE(920), - [sym_template_string] = STATE(769), - [sym_await] = STATE(920), + [sym_import_statement] = STATE(1578), + [sym_future_import_statement] = STATE(1578), + [sym_import_from_statement] = STATE(1578), + [sym_print_statement] = STATE(1578), + [sym_assert_statement] = STATE(1578), + [sym_expression_statement] = STATE(1578), + [sym_named_expression] = STATE(1126), + [sym_return_statement] = STATE(1578), + [sym_delete_statement] = STATE(1578), + [sym_raise_statement] = STATE(1578), + [sym_pass_statement] = STATE(1578), + [sym_break_statement] = STATE(1578), + [sym_continue_statement] = STATE(1578), + [sym_list_splat] = STATE(1590), + [sym_dictionary_splat] = STATE(1590), + [sym_global_statement] = STATE(1578), + [sym_nonlocal_statement] = STATE(1578), + [sym_exec_statement] = STATE(1578), + [sym_type_alias_statement] = STATE(1578), + [sym_expression_list] = STATE(1545), + [sym_pattern] = STATE(1020), + [sym_tuple_pattern] = STATE(1005), + [sym_list_pattern] = STATE(1005), + [sym_list_splat_pattern] = STATE(1005), + [sym_expression] = STATE(1191), + [sym_primary_expression] = STATE(773), + [sym_not_operator] = STATE(1126), + [sym_boolean_operator] = STATE(1126), + [sym_binary_operator] = STATE(950), + [sym_unary_operator] = STATE(950), + [sym_comparison_operator] = STATE(1126), + [sym_lambda] = STATE(1126), + [sym_assignment] = STATE(1545), + [sym_augmented_assignment] = STATE(1545), + [sym_pattern_list] = STATE(1030), + [sym_yield] = STATE(1545), + [sym_attribute] = STATE(614), + [sym_subscript] = STATE(614), + [sym_call] = STATE(950), + [sym_list] = STATE(950), + [sym_set] = STATE(950), + [sym_tuple] = STATE(950), + [sym_dictionary] = STATE(950), + [sym_list_comprehension] = STATE(950), + [sym_dictionary_comprehension] = STATE(950), + [sym_set_comprehension] = STATE(950), + [sym_generator_expression] = STATE(950), + [sym_parenthesized_expression] = STATE(950), + [sym_conditional_expression] = STATE(1126), + [sym_concatenated_string] = STATE(950), + [sym_string] = STATE(779), + [sym_concatenated_template_string] = STATE(950), + [sym_template_string] = STATE(772), + [sym_await] = STATE(950), [sym_identifier] = ACTIONS(7), [anon_sym_lazy] = ACTIONS(9), [anon_sym_import] = ACTIONS(11), @@ -22675,138 +22717,49 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__template_string_start] = ACTIONS(85), }, [STATE(134)] = { - [sym_primary_expression] = STATE(741), - [sym_binary_operator] = STATE(725), - [sym_unary_operator] = STATE(725), - [sym_attribute] = STATE(725), - [sym_subscript] = STATE(725), - [sym_call] = STATE(725), - [sym_list] = STATE(725), - [sym_set] = STATE(725), - [sym_tuple] = STATE(725), - [sym_dictionary] = STATE(725), - [sym_list_comprehension] = STATE(725), - [sym_dictionary_comprehension] = STATE(725), - [sym_set_comprehension] = STATE(725), - [sym_generator_expression] = STATE(725), - [sym_parenthesized_expression] = STATE(725), - [sym_concatenated_string] = STATE(725), - [sym_string] = STATE(645), - [sym_concatenated_template_string] = STATE(725), - [sym_template_string] = STATE(658), - [sym_await] = STATE(725), - [sym_identifier] = ACTIONS(311), + [sym_primary_expression] = STATE(799), + [sym_binary_operator] = STATE(950), + [sym_unary_operator] = STATE(950), + [sym_attribute] = STATE(950), + [sym_subscript] = STATE(950), + [sym_call] = STATE(950), + [sym_list] = STATE(950), + [sym_set] = STATE(950), + [sym_tuple] = STATE(950), + [sym_dictionary] = STATE(950), + [sym_list_comprehension] = STATE(950), + [sym_dictionary_comprehension] = STATE(950), + [sym_set_comprehension] = STATE(950), + [sym_generator_expression] = STATE(950), + [sym_parenthesized_expression] = STATE(950), + [sym_concatenated_string] = STATE(950), + [sym_string] = STATE(779), + [sym_concatenated_template_string] = STATE(950), + [sym_template_string] = STATE(772), + [sym_await] = STATE(950), + [sym_identifier] = ACTIONS(79), [anon_sym_lazy] = ACTIONS(573), [anon_sym_DOT] = ACTIONS(272), [anon_sym_LPAREN] = ACTIONS(575), - [anon_sym_RPAREN] = ACTIONS(577), - [anon_sym_COMMA] = ACTIONS(577), - [anon_sym_STAR] = ACTIONS(272), - [anon_sym_print] = ACTIONS(573), - [anon_sym_GT_GT] = ACTIONS(272), - [anon_sym_COLON_EQ] = ACTIONS(580), - [anon_sym_if] = ACTIONS(272), - [anon_sym_COLON] = ACTIONS(582), - [anon_sym_async] = ACTIONS(573), - [anon_sym_in] = ACTIONS(272), - [anon_sym_match] = ACTIONS(573), - [anon_sym_PIPE] = ACTIONS(272), - [anon_sym_DASH] = ACTIONS(584), - [anon_sym_PLUS] = ACTIONS(584), - [anon_sym_LBRACK] = ACTIONS(586), - [anon_sym_RBRACK] = ACTIONS(577), - [anon_sym_LBRACE] = ACTIONS(293), - [anon_sym_STAR_STAR] = ACTIONS(272), - [anon_sym_EQ] = ACTIONS(582), - [anon_sym_exec] = ACTIONS(573), - [anon_sym_type] = ACTIONS(573), - [anon_sym_AT] = ACTIONS(272), - [anon_sym_not] = ACTIONS(272), - [anon_sym_and] = ACTIONS(272), - [anon_sym_or] = ACTIONS(272), - [anon_sym_SLASH] = ACTIONS(272), - [anon_sym_PERCENT] = ACTIONS(272), - [anon_sym_SLASH_SLASH] = ACTIONS(272), - [anon_sym_AMP] = ACTIONS(272), - [anon_sym_CARET] = ACTIONS(272), - [anon_sym_LT_LT] = ACTIONS(272), - [anon_sym_TILDE] = ACTIONS(301), - [anon_sym_LT] = ACTIONS(272), - [anon_sym_LT_EQ] = ACTIONS(303), - [anon_sym_EQ_EQ] = ACTIONS(303), - [anon_sym_BANG_EQ] = ACTIONS(303), - [anon_sym_GT_EQ] = ACTIONS(303), - [anon_sym_GT] = ACTIONS(272), - [anon_sym_LT_GT] = ACTIONS(303), - [anon_sym_is] = ACTIONS(272), - [anon_sym_PLUS_EQ] = ACTIONS(588), - [anon_sym_DASH_EQ] = ACTIONS(588), - [anon_sym_STAR_EQ] = ACTIONS(588), - [anon_sym_SLASH_EQ] = ACTIONS(588), - [anon_sym_AT_EQ] = ACTIONS(588), - [anon_sym_SLASH_SLASH_EQ] = ACTIONS(588), - [anon_sym_PERCENT_EQ] = ACTIONS(588), - [anon_sym_STAR_STAR_EQ] = ACTIONS(588), - [anon_sym_GT_GT_EQ] = ACTIONS(588), - [anon_sym_LT_LT_EQ] = ACTIONS(588), - [anon_sym_AMP_EQ] = ACTIONS(588), - [anon_sym_CARET_EQ] = ACTIONS(588), - [anon_sym_PIPE_EQ] = ACTIONS(588), - [sym_ellipsis] = ACTIONS(309), - [sym_integer] = ACTIONS(311), - [sym_float] = ACTIONS(309), - [anon_sym_await] = ACTIONS(590), - [sym_true] = ACTIONS(311), - [sym_false] = ACTIONS(311), - [sym_none] = ACTIONS(311), - [sym_comment] = ACTIONS(3), - [sym__string_start] = ACTIONS(315), - [sym__template_string_start] = ACTIONS(317), - }, - [STATE(135)] = { - [sym_primary_expression] = STATE(786), - [sym_binary_operator] = STATE(920), - [sym_unary_operator] = STATE(920), - [sym_attribute] = STATE(920), - [sym_subscript] = STATE(920), - [sym_call] = STATE(920), - [sym_list] = STATE(920), - [sym_set] = STATE(920), - [sym_tuple] = STATE(920), - [sym_dictionary] = STATE(920), - [sym_list_comprehension] = STATE(920), - [sym_dictionary_comprehension] = STATE(920), - [sym_set_comprehension] = STATE(920), - [sym_generator_expression] = STATE(920), - [sym_parenthesized_expression] = STATE(920), - [sym_concatenated_string] = STATE(920), - [sym_string] = STATE(775), - [sym_concatenated_template_string] = STATE(920), - [sym_template_string] = STATE(769), - [sym_await] = STATE(920), - [sym_identifier] = ACTIONS(79), - [anon_sym_lazy] = ACTIONS(592), - [anon_sym_DOT] = ACTIONS(272), - [anon_sym_LPAREN] = ACTIONS(594), [anon_sym_COMMA] = ACTIONS(277), [anon_sym_STAR] = ACTIONS(272), - [anon_sym_print] = ACTIONS(592), + [anon_sym_print] = ACTIONS(573), [anon_sym_GT_GT] = ACTIONS(272), [anon_sym_COLON_EQ] = ACTIONS(283), [anon_sym_if] = ACTIONS(272), [anon_sym_COLON] = ACTIONS(285), - [anon_sym_async] = ACTIONS(592), + [anon_sym_async] = ACTIONS(573), [anon_sym_in] = ACTIONS(272), - [anon_sym_match] = ACTIONS(592), + [anon_sym_match] = ACTIONS(573), [anon_sym_PIPE] = ACTIONS(272), - [anon_sym_DASH] = ACTIONS(596), - [anon_sym_PLUS] = ACTIONS(596), - [anon_sym_LBRACK] = ACTIONS(598), + [anon_sym_DASH] = ACTIONS(577), + [anon_sym_PLUS] = ACTIONS(577), + [anon_sym_LBRACK] = ACTIONS(579), [anon_sym_LBRACE] = ACTIONS(53), [anon_sym_STAR_STAR] = ACTIONS(272), [anon_sym_EQ] = ACTIONS(285), - [anon_sym_exec] = ACTIONS(592), - [anon_sym_type] = ACTIONS(592), + [anon_sym_exec] = ACTIONS(573), + [anon_sym_type] = ACTIONS(573), [anon_sym_AT] = ACTIONS(272), [anon_sym_not] = ACTIONS(272), [anon_sym_and] = ACTIONS(272), @@ -22842,7 +22795,7 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_ellipsis] = ACTIONS(77), [sym_integer] = ACTIONS(79), [sym_float] = ACTIONS(77), - [anon_sym_await] = ACTIONS(600), + [anon_sym_await] = ACTIONS(581), [sym_true] = ACTIONS(79), [sym_false] = ACTIONS(79), [sym_none] = ACTIONS(79), @@ -22852,54 +22805,141 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(83), [sym__template_string_start] = ACTIONS(85), }, + [STATE(135)] = { + [sym_primary_expression] = STATE(766), + [sym_binary_operator] = STATE(720), + [sym_unary_operator] = STATE(720), + [sym_attribute] = STATE(720), + [sym_subscript] = STATE(720), + [sym_call] = STATE(720), + [sym_list] = STATE(720), + [sym_set] = STATE(720), + [sym_tuple] = STATE(720), + [sym_dictionary] = STATE(720), + [sym_list_comprehension] = STATE(720), + [sym_dictionary_comprehension] = STATE(720), + [sym_set_comprehension] = STATE(720), + [sym_generator_expression] = STATE(720), + [sym_parenthesized_expression] = STATE(720), + [sym_concatenated_string] = STATE(720), + [sym_string] = STATE(694), + [sym_concatenated_template_string] = STATE(720), + [sym_template_string] = STATE(698), + [sym_await] = STATE(720), + [sym_identifier] = ACTIONS(311), + [anon_sym_lazy] = ACTIONS(583), + [anon_sym_DOT] = ACTIONS(272), + [anon_sym_LPAREN] = ACTIONS(585), + [anon_sym_COMMA] = ACTIONS(587), + [anon_sym_STAR] = ACTIONS(272), + [anon_sym_print] = ACTIONS(583), + [anon_sym_GT_GT] = ACTIONS(272), + [anon_sym_COLON_EQ] = ACTIONS(590), + [anon_sym_if] = ACTIONS(272), + [anon_sym_COLON] = ACTIONS(592), + [anon_sym_async] = ACTIONS(583), + [anon_sym_in] = ACTIONS(272), + [anon_sym_match] = ACTIONS(583), + [anon_sym_PIPE] = ACTIONS(272), + [anon_sym_DASH] = ACTIONS(594), + [anon_sym_PLUS] = ACTIONS(594), + [anon_sym_LBRACK] = ACTIONS(596), + [anon_sym_LBRACE] = ACTIONS(293), + [anon_sym_STAR_STAR] = ACTIONS(272), + [anon_sym_EQ] = ACTIONS(592), + [anon_sym_exec] = ACTIONS(583), + [anon_sym_type] = ACTIONS(583), + [anon_sym_AT] = ACTIONS(272), + [anon_sym_not] = ACTIONS(272), + [anon_sym_and] = ACTIONS(272), + [anon_sym_or] = ACTIONS(272), + [anon_sym_SLASH] = ACTIONS(272), + [anon_sym_PERCENT] = ACTIONS(272), + [anon_sym_SLASH_SLASH] = ACTIONS(272), + [anon_sym_AMP] = ACTIONS(272), + [anon_sym_CARET] = ACTIONS(272), + [anon_sym_LT_LT] = ACTIONS(272), + [anon_sym_TILDE] = ACTIONS(301), + [anon_sym_LT] = ACTIONS(272), + [anon_sym_LT_EQ] = ACTIONS(303), + [anon_sym_EQ_EQ] = ACTIONS(303), + [anon_sym_BANG_EQ] = ACTIONS(303), + [anon_sym_GT_EQ] = ACTIONS(303), + [anon_sym_GT] = ACTIONS(272), + [anon_sym_LT_GT] = ACTIONS(303), + [anon_sym_is] = ACTIONS(272), + [anon_sym_PLUS_EQ] = ACTIONS(598), + [anon_sym_DASH_EQ] = ACTIONS(598), + [anon_sym_STAR_EQ] = ACTIONS(598), + [anon_sym_SLASH_EQ] = ACTIONS(598), + [anon_sym_AT_EQ] = ACTIONS(598), + [anon_sym_SLASH_SLASH_EQ] = ACTIONS(598), + [anon_sym_PERCENT_EQ] = ACTIONS(598), + [anon_sym_STAR_STAR_EQ] = ACTIONS(598), + [anon_sym_GT_GT_EQ] = ACTIONS(598), + [anon_sym_LT_LT_EQ] = ACTIONS(598), + [anon_sym_AMP_EQ] = ACTIONS(598), + [anon_sym_CARET_EQ] = ACTIONS(598), + [anon_sym_PIPE_EQ] = ACTIONS(598), + [sym_ellipsis] = ACTIONS(309), + [sym_integer] = ACTIONS(311), + [sym_float] = ACTIONS(309), + [anon_sym_await] = ACTIONS(600), + [sym_true] = ACTIONS(311), + [sym_false] = ACTIONS(311), + [sym_none] = ACTIONS(311), + [sym_comment] = ACTIONS(3), + [sym__string_start] = ACTIONS(315), + [sym__template_string_start] = ACTIONS(317), + }, [STATE(136)] = { - [sym_primary_expression] = STATE(741), - [sym_binary_operator] = STATE(725), - [sym_unary_operator] = STATE(725), - [sym_attribute] = STATE(725), - [sym_subscript] = STATE(725), - [sym_call] = STATE(725), - [sym_list] = STATE(725), - [sym_set] = STATE(725), - [sym_tuple] = STATE(725), - [sym_dictionary] = STATE(725), - [sym_list_comprehension] = STATE(725), - [sym_dictionary_comprehension] = STATE(725), - [sym_set_comprehension] = STATE(725), - [sym_generator_expression] = STATE(725), - [sym_parenthesized_expression] = STATE(725), - [sym_concatenated_string] = STATE(725), - [sym_string] = STATE(645), - [sym_concatenated_template_string] = STATE(725), - [sym_template_string] = STATE(658), - [sym_await] = STATE(725), + [sym_primary_expression] = STATE(766), + [sym_binary_operator] = STATE(720), + [sym_unary_operator] = STATE(720), + [sym_attribute] = STATE(720), + [sym_subscript] = STATE(720), + [sym_call] = STATE(720), + [sym_list] = STATE(720), + [sym_set] = STATE(720), + [sym_tuple] = STATE(720), + [sym_dictionary] = STATE(720), + [sym_list_comprehension] = STATE(720), + [sym_dictionary_comprehension] = STATE(720), + [sym_set_comprehension] = STATE(720), + [sym_generator_expression] = STATE(720), + [sym_parenthesized_expression] = STATE(720), + [sym_concatenated_string] = STATE(720), + [sym_string] = STATE(694), + [sym_concatenated_template_string] = STATE(720), + [sym_template_string] = STATE(698), + [sym_await] = STATE(720), [sym_identifier] = ACTIONS(311), - [anon_sym_lazy] = ACTIONS(573), + [anon_sym_lazy] = ACTIONS(583), [anon_sym_DOT] = ACTIONS(272), - [anon_sym_LPAREN] = ACTIONS(575), + [anon_sym_LPAREN] = ACTIONS(585), [anon_sym_RPAREN] = ACTIONS(303), [anon_sym_COMMA] = ACTIONS(303), [anon_sym_STAR] = ACTIONS(272), - [anon_sym_print] = ACTIONS(573), + [anon_sym_print] = ACTIONS(583), [anon_sym_GT_GT] = ACTIONS(303), - [anon_sym_COLON_EQ] = ACTIONS(580), + [anon_sym_COLON_EQ] = ACTIONS(590), [anon_sym_if] = ACTIONS(272), [anon_sym_COLON] = ACTIONS(272), [anon_sym_else] = ACTIONS(272), - [anon_sym_async] = ACTIONS(573), + [anon_sym_async] = ACTIONS(583), [anon_sym_in] = ACTIONS(272), - [anon_sym_match] = ACTIONS(573), + [anon_sym_match] = ACTIONS(583), [anon_sym_PIPE] = ACTIONS(303), [anon_sym_DASH] = ACTIONS(301), [anon_sym_PLUS] = ACTIONS(301), - [anon_sym_LBRACK] = ACTIONS(586), + [anon_sym_LBRACK] = ACTIONS(596), [anon_sym_RBRACK] = ACTIONS(303), [anon_sym_LBRACE] = ACTIONS(293), [anon_sym_RBRACE] = ACTIONS(303), [anon_sym_STAR_STAR] = ACTIONS(303), [anon_sym_EQ] = ACTIONS(272), - [anon_sym_exec] = ACTIONS(573), - [anon_sym_type] = ACTIONS(573), + [anon_sym_exec] = ACTIONS(583), + [anon_sym_type] = ACTIONS(583), [anon_sym_AT] = ACTIONS(303), [anon_sym_not] = ACTIONS(272), [anon_sym_and] = ACTIONS(272), @@ -22922,7 +22962,7 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_ellipsis] = ACTIONS(309), [sym_integer] = ACTIONS(311), [sym_float] = ACTIONS(309), - [anon_sym_await] = ACTIONS(590), + [anon_sym_await] = ACTIONS(600), [sym_true] = ACTIONS(311), [sym_false] = ACTIONS(311), [sym_none] = ACTIONS(311), @@ -22931,52 +22971,52 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__template_string_start] = ACTIONS(317), }, [STATE(137)] = { - [sym_primary_expression] = STATE(741), - [sym_binary_operator] = STATE(725), - [sym_unary_operator] = STATE(725), - [sym_attribute] = STATE(725), - [sym_subscript] = STATE(725), - [sym_call] = STATE(725), - [sym_list] = STATE(725), - [sym_set] = STATE(725), - [sym_tuple] = STATE(725), - [sym_dictionary] = STATE(725), - [sym_list_comprehension] = STATE(725), - [sym_dictionary_comprehension] = STATE(725), - [sym_set_comprehension] = STATE(725), - [sym_generator_expression] = STATE(725), - [sym_parenthesized_expression] = STATE(725), - [sym_concatenated_string] = STATE(725), - [sym_string] = STATE(645), - [sym_concatenated_template_string] = STATE(725), - [sym_template_string] = STATE(658), - [sym_await] = STATE(725), + [sym_primary_expression] = STATE(766), + [sym_binary_operator] = STATE(720), + [sym_unary_operator] = STATE(720), + [sym_attribute] = STATE(720), + [sym_subscript] = STATE(720), + [sym_call] = STATE(720), + [sym_list] = STATE(720), + [sym_set] = STATE(720), + [sym_tuple] = STATE(720), + [sym_dictionary] = STATE(720), + [sym_list_comprehension] = STATE(720), + [sym_dictionary_comprehension] = STATE(720), + [sym_set_comprehension] = STATE(720), + [sym_generator_expression] = STATE(720), + [sym_parenthesized_expression] = STATE(720), + [sym_concatenated_string] = STATE(720), + [sym_string] = STATE(694), + [sym_concatenated_template_string] = STATE(720), + [sym_template_string] = STATE(698), + [sym_await] = STATE(720), [sym_identifier] = ACTIONS(311), - [anon_sym_lazy] = ACTIONS(573), + [anon_sym_lazy] = ACTIONS(583), [anon_sym_DOT] = ACTIONS(272), - [anon_sym_LPAREN] = ACTIONS(575), + [anon_sym_LPAREN] = ACTIONS(585), [anon_sym_RPAREN] = ACTIONS(303), [anon_sym_COMMA] = ACTIONS(303), [anon_sym_STAR] = ACTIONS(272), - [anon_sym_print] = ACTIONS(573), + [anon_sym_print] = ACTIONS(583), [anon_sym_GT_GT] = ACTIONS(303), [anon_sym_if] = ACTIONS(272), [anon_sym_COLON] = ACTIONS(303), [anon_sym_else] = ACTIONS(272), - [anon_sym_async] = ACTIONS(573), + [anon_sym_async] = ACTIONS(583), [anon_sym_in] = ACTIONS(272), - [anon_sym_match] = ACTIONS(573), + [anon_sym_match] = ACTIONS(583), [anon_sym_PIPE] = ACTIONS(303), [anon_sym_DASH] = ACTIONS(301), [anon_sym_PLUS] = ACTIONS(301), - [anon_sym_LBRACK] = ACTIONS(586), + [anon_sym_LBRACK] = ACTIONS(596), [anon_sym_RBRACK] = ACTIONS(303), [anon_sym_LBRACE] = ACTIONS(293), [anon_sym_RBRACE] = ACTIONS(303), [anon_sym_STAR_STAR] = ACTIONS(303), [anon_sym_EQ] = ACTIONS(272), - [anon_sym_exec] = ACTIONS(573), - [anon_sym_type] = ACTIONS(573), + [anon_sym_exec] = ACTIONS(583), + [anon_sym_type] = ACTIONS(583), [anon_sym_AT] = ACTIONS(303), [anon_sym_not] = ACTIONS(272), [anon_sym_and] = ACTIONS(272), @@ -22999,7 +23039,7 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_ellipsis] = ACTIONS(309), [sym_integer] = ACTIONS(311), [sym_float] = ACTIONS(309), - [anon_sym_await] = ACTIONS(590), + [anon_sym_await] = ACTIONS(600), [sym_true] = ACTIONS(311), [sym_false] = ACTIONS(311), [sym_none] = ACTIONS(311), @@ -23008,42 +23048,42 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__template_string_start] = ACTIONS(317), }, [STATE(138)] = { - [sym_primary_expression] = STATE(740), - [sym_binary_operator] = STATE(725), - [sym_unary_operator] = STATE(725), - [sym_attribute] = STATE(725), - [sym_subscript] = STATE(725), - [sym_call] = STATE(725), - [sym_list] = STATE(725), - [sym_set] = STATE(725), - [sym_tuple] = STATE(725), - [sym_dictionary] = STATE(725), - [sym_list_comprehension] = STATE(725), - [sym_dictionary_comprehension] = STATE(725), - [sym_set_comprehension] = STATE(725), - [sym_generator_expression] = STATE(725), - [sym_parenthesized_expression] = STATE(725), - [sym_concatenated_string] = STATE(725), - [sym_string] = STATE(645), - [sym_concatenated_template_string] = STATE(725), - [sym_template_string] = STATE(658), - [sym_await] = STATE(725), + [sym_primary_expression] = STATE(747), + [sym_binary_operator] = STATE(720), + [sym_unary_operator] = STATE(720), + [sym_attribute] = STATE(720), + [sym_subscript] = STATE(720), + [sym_call] = STATE(720), + [sym_list] = STATE(720), + [sym_set] = STATE(720), + [sym_tuple] = STATE(720), + [sym_dictionary] = STATE(720), + [sym_list_comprehension] = STATE(720), + [sym_dictionary_comprehension] = STATE(720), + [sym_set_comprehension] = STATE(720), + [sym_generator_expression] = STATE(720), + [sym_parenthesized_expression] = STATE(720), + [sym_concatenated_string] = STATE(720), + [sym_string] = STATE(694), + [sym_concatenated_template_string] = STATE(720), + [sym_template_string] = STATE(698), + [sym_await] = STATE(720), [sym_identifier] = ACTIONS(311), - [anon_sym_lazy] = ACTIONS(573), + [anon_sym_lazy] = ACTIONS(583), [anon_sym_DOT] = ACTIONS(272), [anon_sym_LPAREN] = ACTIONS(602), [anon_sym_RPAREN] = ACTIONS(303), [anon_sym_COMMA] = ACTIONS(303), [anon_sym_as] = ACTIONS(272), [anon_sym_STAR] = ACTIONS(272), - [anon_sym_print] = ACTIONS(573), + [anon_sym_print] = ACTIONS(583), [anon_sym_GT_GT] = ACTIONS(303), [anon_sym_COLON_EQ] = ACTIONS(604), [anon_sym_if] = ACTIONS(272), - [anon_sym_async] = ACTIONS(573), + [anon_sym_async] = ACTIONS(583), [anon_sym_for] = ACTIONS(272), [anon_sym_in] = ACTIONS(272), - [anon_sym_match] = ACTIONS(573), + [anon_sym_match] = ACTIONS(583), [anon_sym_PIPE] = ACTIONS(303), [anon_sym_DASH] = ACTIONS(606), [anon_sym_PLUS] = ACTIONS(606), @@ -23052,8 +23092,8 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_LBRACE] = ACTIONS(293), [anon_sym_RBRACE] = ACTIONS(303), [anon_sym_STAR_STAR] = ACTIONS(303), - [anon_sym_exec] = ACTIONS(573), - [anon_sym_type] = ACTIONS(573), + [anon_sym_exec] = ACTIONS(583), + [anon_sym_type] = ACTIONS(583), [anon_sym_AT] = ACTIONS(303), [anon_sym_not] = ACTIONS(272), [anon_sym_and] = ACTIONS(272), @@ -23085,49 +23125,49 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__template_string_start] = ACTIONS(317), }, [STATE(139)] = { - [sym_primary_expression] = STATE(786), - [sym_binary_operator] = STATE(920), - [sym_unary_operator] = STATE(920), - [sym_attribute] = STATE(920), - [sym_subscript] = STATE(920), - [sym_call] = STATE(920), - [sym_list] = STATE(920), - [sym_set] = STATE(920), - [sym_tuple] = STATE(920), - [sym_dictionary] = STATE(920), - [sym_list_comprehension] = STATE(920), - [sym_dictionary_comprehension] = STATE(920), - [sym_set_comprehension] = STATE(920), - [sym_generator_expression] = STATE(920), - [sym_parenthesized_expression] = STATE(920), - [sym_concatenated_string] = STATE(920), - [sym_string] = STATE(775), - [sym_concatenated_template_string] = STATE(920), - [sym_template_string] = STATE(769), - [sym_await] = STATE(920), - [sym_identifier] = ACTIONS(79), - [anon_sym_lazy] = ACTIONS(592), + [sym_primary_expression] = STATE(805), + [sym_binary_operator] = STATE(949), + [sym_unary_operator] = STATE(949), + [sym_attribute] = STATE(949), + [sym_subscript] = STATE(949), + [sym_call] = STATE(949), + [sym_list] = STATE(949), + [sym_set] = STATE(949), + [sym_tuple] = STATE(949), + [sym_dictionary] = STATE(949), + [sym_list_comprehension] = STATE(949), + [sym_dictionary_comprehension] = STATE(949), + [sym_set_comprehension] = STATE(949), + [sym_generator_expression] = STATE(949), + [sym_parenthesized_expression] = STATE(949), + [sym_concatenated_string] = STATE(949), + [sym_string] = STATE(781), + [sym_concatenated_template_string] = STATE(949), + [sym_template_string] = STATE(782), + [sym_await] = STATE(949), + [sym_identifier] = ACTIONS(612), + [anon_sym_lazy] = ACTIONS(614), [anon_sym_DOT] = ACTIONS(272), - [anon_sym_from] = ACTIONS(272), - [anon_sym_LPAREN] = ACTIONS(594), + [anon_sym_LPAREN] = ACTIONS(616), [anon_sym_COMMA] = ACTIONS(303), [anon_sym_STAR] = ACTIONS(272), - [anon_sym_print] = ACTIONS(592), + [anon_sym_print] = ACTIONS(614), [anon_sym_GT_GT] = ACTIONS(303), - [anon_sym_COLON_EQ] = ACTIONS(283), + [anon_sym_COLON_EQ] = ACTIONS(618), [anon_sym_if] = ACTIONS(272), - [anon_sym_async] = ACTIONS(592), + [anon_sym_async] = ACTIONS(614), [anon_sym_in] = ACTIONS(272), - [anon_sym_match] = ACTIONS(592), + [anon_sym_match] = ACTIONS(614), [anon_sym_PIPE] = ACTIONS(303), - [anon_sym_DASH] = ACTIONS(49), - [anon_sym_PLUS] = ACTIONS(49), - [anon_sym_LBRACK] = ACTIONS(598), - [anon_sym_LBRACE] = ACTIONS(53), + [anon_sym_DASH] = ACTIONS(620), + [anon_sym_PLUS] = ACTIONS(620), + [anon_sym_LBRACK] = ACTIONS(622), + [anon_sym_LBRACE] = ACTIONS(624), + [anon_sym_RBRACE] = ACTIONS(303), [anon_sym_STAR_STAR] = ACTIONS(303), [anon_sym_EQ] = ACTIONS(272), - [anon_sym_exec] = ACTIONS(592), - [anon_sym_type] = ACTIONS(592), + [anon_sym_exec] = ACTIONS(614), + [anon_sym_type] = ACTIONS(614), [anon_sym_AT] = ACTIONS(303), [anon_sym_not] = ACTIONS(272), [anon_sym_and] = ACTIONS(272), @@ -23138,7 +23178,7 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_AMP] = ACTIONS(303), [anon_sym_CARET] = ACTIONS(303), [anon_sym_LT_LT] = ACTIONS(303), - [anon_sym_TILDE] = ACTIONS(49), + [anon_sym_TILDE] = ACTIONS(620), [anon_sym_LT] = ACTIONS(272), [anon_sym_LT_EQ] = ACTIONS(303), [anon_sym_EQ_EQ] = ACTIONS(303), @@ -23147,63 +23187,63 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_GT] = ACTIONS(272), [anon_sym_LT_GT] = ACTIONS(303), [anon_sym_is] = ACTIONS(272), - [sym_ellipsis] = ACTIONS(77), - [sym_integer] = ACTIONS(79), - [sym_float] = ACTIONS(77), - [anon_sym_await] = ACTIONS(600), - [sym_true] = ACTIONS(79), - [sym_false] = ACTIONS(79), - [sym_none] = ACTIONS(79), + [sym_ellipsis] = ACTIONS(626), + [anon_sym_COLON2] = ACTIONS(303), + [sym_type_conversion] = ACTIONS(303), + [sym_integer] = ACTIONS(612), + [sym_float] = ACTIONS(626), + [anon_sym_await] = ACTIONS(628), + [sym_true] = ACTIONS(612), + [sym_false] = ACTIONS(612), + [sym_none] = ACTIONS(612), [sym_comment] = ACTIONS(3), - [anon_sym_SEMI] = ACTIONS(303), - [sym__newline] = ACTIONS(303), - [sym__string_start] = ACTIONS(83), - [sym__template_string_start] = ACTIONS(85), + [sym__string_start] = ACTIONS(630), + [sym__template_string_start] = ACTIONS(632), }, [STATE(140)] = { - [sym_primary_expression] = STATE(800), - [sym_binary_operator] = STATE(878), - [sym_unary_operator] = STATE(878), - [sym_attribute] = STATE(878), - [sym_subscript] = STATE(878), - [sym_call] = STATE(878), - [sym_list] = STATE(878), - [sym_set] = STATE(878), - [sym_tuple] = STATE(878), - [sym_dictionary] = STATE(878), - [sym_list_comprehension] = STATE(878), - [sym_dictionary_comprehension] = STATE(878), - [sym_set_comprehension] = STATE(878), - [sym_generator_expression] = STATE(878), - [sym_parenthesized_expression] = STATE(878), - [sym_concatenated_string] = STATE(878), - [sym_string] = STATE(766), - [sym_concatenated_template_string] = STATE(878), - [sym_template_string] = STATE(776), - [sym_await] = STATE(878), - [sym_identifier] = ACTIONS(612), - [anon_sym_lazy] = ACTIONS(614), + [sym_primary_expression] = STATE(799), + [sym_binary_operator] = STATE(950), + [sym_unary_operator] = STATE(950), + [sym_attribute] = STATE(950), + [sym_subscript] = STATE(950), + [sym_call] = STATE(950), + [sym_list] = STATE(950), + [sym_set] = STATE(950), + [sym_tuple] = STATE(950), + [sym_dictionary] = STATE(950), + [sym_list_comprehension] = STATE(950), + [sym_dictionary_comprehension] = STATE(950), + [sym_set_comprehension] = STATE(950), + [sym_generator_expression] = STATE(950), + [sym_parenthesized_expression] = STATE(950), + [sym_concatenated_string] = STATE(950), + [sym_string] = STATE(779), + [sym_concatenated_template_string] = STATE(950), + [sym_template_string] = STATE(772), + [sym_await] = STATE(950), + [sym_identifier] = ACTIONS(79), + [anon_sym_lazy] = ACTIONS(573), [anon_sym_DOT] = ACTIONS(272), - [anon_sym_LPAREN] = ACTIONS(616), + [anon_sym_from] = ACTIONS(272), + [anon_sym_LPAREN] = ACTIONS(575), [anon_sym_COMMA] = ACTIONS(303), [anon_sym_STAR] = ACTIONS(272), - [anon_sym_print] = ACTIONS(614), + [anon_sym_print] = ACTIONS(573), [anon_sym_GT_GT] = ACTIONS(303), - [anon_sym_COLON_EQ] = ACTIONS(618), + [anon_sym_COLON_EQ] = ACTIONS(283), [anon_sym_if] = ACTIONS(272), - [anon_sym_async] = ACTIONS(614), + [anon_sym_async] = ACTIONS(573), [anon_sym_in] = ACTIONS(272), - [anon_sym_match] = ACTIONS(614), + [anon_sym_match] = ACTIONS(573), [anon_sym_PIPE] = ACTIONS(303), - [anon_sym_DASH] = ACTIONS(620), - [anon_sym_PLUS] = ACTIONS(620), - [anon_sym_LBRACK] = ACTIONS(622), - [anon_sym_LBRACE] = ACTIONS(624), - [anon_sym_RBRACE] = ACTIONS(303), + [anon_sym_DASH] = ACTIONS(49), + [anon_sym_PLUS] = ACTIONS(49), + [anon_sym_LBRACK] = ACTIONS(579), + [anon_sym_LBRACE] = ACTIONS(53), [anon_sym_STAR_STAR] = ACTIONS(303), [anon_sym_EQ] = ACTIONS(272), - [anon_sym_exec] = ACTIONS(614), - [anon_sym_type] = ACTIONS(614), + [anon_sym_exec] = ACTIONS(573), + [anon_sym_type] = ACTIONS(573), [anon_sym_AT] = ACTIONS(303), [anon_sym_not] = ACTIONS(272), [anon_sym_and] = ACTIONS(272), @@ -23214,7 +23254,7 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_AMP] = ACTIONS(303), [anon_sym_CARET] = ACTIONS(303), [anon_sym_LT_LT] = ACTIONS(303), - [anon_sym_TILDE] = ACTIONS(620), + [anon_sym_TILDE] = ACTIONS(49), [anon_sym_LT] = ACTIONS(272), [anon_sym_LT_EQ] = ACTIONS(303), [anon_sym_EQ_EQ] = ACTIONS(303), @@ -23223,63 +23263,63 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_GT] = ACTIONS(272), [anon_sym_LT_GT] = ACTIONS(303), [anon_sym_is] = ACTIONS(272), - [sym_ellipsis] = ACTIONS(626), - [anon_sym_COLON2] = ACTIONS(303), - [sym_type_conversion] = ACTIONS(303), - [sym_integer] = ACTIONS(612), - [sym_float] = ACTIONS(626), - [anon_sym_await] = ACTIONS(628), - [sym_true] = ACTIONS(612), - [sym_false] = ACTIONS(612), - [sym_none] = ACTIONS(612), + [sym_ellipsis] = ACTIONS(77), + [sym_integer] = ACTIONS(79), + [sym_float] = ACTIONS(77), + [anon_sym_await] = ACTIONS(581), + [sym_true] = ACTIONS(79), + [sym_false] = ACTIONS(79), + [sym_none] = ACTIONS(79), [sym_comment] = ACTIONS(3), - [sym__string_start] = ACTIONS(630), - [sym__template_string_start] = ACTIONS(632), + [anon_sym_SEMI] = ACTIONS(303), + [sym__newline] = ACTIONS(303), + [sym__string_start] = ACTIONS(83), + [sym__template_string_start] = ACTIONS(85), }, [STATE(141)] = { - [sym_primary_expression] = STATE(741), - [sym_binary_operator] = STATE(725), - [sym_unary_operator] = STATE(725), - [sym_attribute] = STATE(725), - [sym_subscript] = STATE(725), - [sym_call] = STATE(725), - [sym_list] = STATE(725), - [sym_set] = STATE(725), - [sym_tuple] = STATE(725), - [sym_dictionary] = STATE(725), - [sym_list_comprehension] = STATE(725), - [sym_dictionary_comprehension] = STATE(725), - [sym_set_comprehension] = STATE(725), - [sym_generator_expression] = STATE(725), - [sym_parenthesized_expression] = STATE(725), - [sym_concatenated_string] = STATE(725), - [sym_string] = STATE(645), - [sym_concatenated_template_string] = STATE(725), - [sym_template_string] = STATE(658), - [sym_await] = STATE(725), + [sym_primary_expression] = STATE(766), + [sym_binary_operator] = STATE(720), + [sym_unary_operator] = STATE(720), + [sym_attribute] = STATE(720), + [sym_subscript] = STATE(720), + [sym_call] = STATE(720), + [sym_list] = STATE(720), + [sym_set] = STATE(720), + [sym_tuple] = STATE(720), + [sym_dictionary] = STATE(720), + [sym_list_comprehension] = STATE(720), + [sym_dictionary_comprehension] = STATE(720), + [sym_set_comprehension] = STATE(720), + [sym_generator_expression] = STATE(720), + [sym_parenthesized_expression] = STATE(720), + [sym_concatenated_string] = STATE(720), + [sym_string] = STATE(694), + [sym_concatenated_template_string] = STATE(720), + [sym_template_string] = STATE(698), + [sym_await] = STATE(720), [sym_identifier] = ACTIONS(311), - [anon_sym_lazy] = ACTIONS(573), + [anon_sym_lazy] = ACTIONS(583), [anon_sym_DOT] = ACTIONS(272), - [anon_sym_LPAREN] = ACTIONS(575), + [anon_sym_LPAREN] = ACTIONS(585), [anon_sym_RPAREN] = ACTIONS(307), [anon_sym_COMMA] = ACTIONS(307), [anon_sym_STAR] = ACTIONS(272), - [anon_sym_print] = ACTIONS(573), + [anon_sym_print] = ACTIONS(583), [anon_sym_GT_GT] = ACTIONS(272), [anon_sym_COLON] = ACTIONS(307), - [anon_sym_async] = ACTIONS(573), + [anon_sym_async] = ACTIONS(583), [anon_sym_in] = ACTIONS(285), - [anon_sym_match] = ACTIONS(573), + [anon_sym_match] = ACTIONS(583), [anon_sym_PIPE] = ACTIONS(272), - [anon_sym_DASH] = ACTIONS(584), - [anon_sym_PLUS] = ACTIONS(584), - [anon_sym_LBRACK] = ACTIONS(586), + [anon_sym_DASH] = ACTIONS(594), + [anon_sym_PLUS] = ACTIONS(594), + [anon_sym_LBRACK] = ACTIONS(596), [anon_sym_RBRACK] = ACTIONS(307), [anon_sym_LBRACE] = ACTIONS(293), [anon_sym_STAR_STAR] = ACTIONS(272), [anon_sym_EQ] = ACTIONS(307), - [anon_sym_exec] = ACTIONS(573), - [anon_sym_type] = ACTIONS(573), + [anon_sym_exec] = ACTIONS(583), + [anon_sym_type] = ACTIONS(583), [anon_sym_AT] = ACTIONS(272), [anon_sym_SLASH] = ACTIONS(272), [anon_sym_PERCENT] = ACTIONS(272), @@ -23304,7 +23344,7 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_ellipsis] = ACTIONS(309), [sym_integer] = ACTIONS(311), [sym_float] = ACTIONS(309), - [anon_sym_await] = ACTIONS(590), + [anon_sym_await] = ACTIONS(600), [sym_true] = ACTIONS(311), [sym_false] = ACTIONS(311), [sym_none] = ACTIONS(311), @@ -23313,117 +23353,41 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__template_string_start] = ACTIONS(317), }, [STATE(142)] = { - [sym_primary_expression] = STATE(741), - [sym_binary_operator] = STATE(725), - [sym_unary_operator] = STATE(725), - [sym_attribute] = STATE(725), - [sym_subscript] = STATE(725), - [sym_call] = STATE(725), - [sym_list] = STATE(725), - [sym_set] = STATE(725), - [sym_tuple] = STATE(725), - [sym_dictionary] = STATE(725), - [sym_list_comprehension] = STATE(725), - [sym_dictionary_comprehension] = STATE(725), - [sym_set_comprehension] = STATE(725), - [sym_generator_expression] = STATE(725), - [sym_parenthesized_expression] = STATE(725), - [sym_concatenated_string] = STATE(725), - [sym_string] = STATE(645), - [sym_concatenated_template_string] = STATE(725), - [sym_template_string] = STATE(658), - [sym_await] = STATE(725), - [sym_identifier] = ACTIONS(311), - [anon_sym_lazy] = ACTIONS(573), - [anon_sym_DOT] = ACTIONS(272), - [anon_sym_LPAREN] = ACTIONS(575), - [anon_sym_RPAREN] = ACTIONS(588), - [anon_sym_COMMA] = ACTIONS(588), - [anon_sym_STAR] = ACTIONS(272), - [anon_sym_print] = ACTIONS(573), - [anon_sym_GT_GT] = ACTIONS(272), - [anon_sym_COLON] = ACTIONS(588), - [anon_sym_async] = ACTIONS(573), - [anon_sym_in] = ACTIONS(582), - [anon_sym_match] = ACTIONS(573), - [anon_sym_PIPE] = ACTIONS(272), - [anon_sym_DASH] = ACTIONS(584), - [anon_sym_PLUS] = ACTIONS(584), - [anon_sym_LBRACK] = ACTIONS(586), - [anon_sym_RBRACK] = ACTIONS(588), - [anon_sym_LBRACE] = ACTIONS(293), - [anon_sym_STAR_STAR] = ACTIONS(272), - [anon_sym_EQ] = ACTIONS(588), - [anon_sym_exec] = ACTIONS(573), - [anon_sym_type] = ACTIONS(573), - [anon_sym_AT] = ACTIONS(272), - [anon_sym_SLASH] = ACTIONS(272), - [anon_sym_PERCENT] = ACTIONS(272), - [anon_sym_SLASH_SLASH] = ACTIONS(272), - [anon_sym_AMP] = ACTIONS(272), - [anon_sym_CARET] = ACTIONS(272), - [anon_sym_LT_LT] = ACTIONS(272), - [anon_sym_TILDE] = ACTIONS(301), - [anon_sym_PLUS_EQ] = ACTIONS(588), - [anon_sym_DASH_EQ] = ACTIONS(588), - [anon_sym_STAR_EQ] = ACTIONS(588), - [anon_sym_SLASH_EQ] = ACTIONS(588), - [anon_sym_AT_EQ] = ACTIONS(588), - [anon_sym_SLASH_SLASH_EQ] = ACTIONS(588), - [anon_sym_PERCENT_EQ] = ACTIONS(588), - [anon_sym_STAR_STAR_EQ] = ACTIONS(588), - [anon_sym_GT_GT_EQ] = ACTIONS(588), - [anon_sym_LT_LT_EQ] = ACTIONS(588), - [anon_sym_AMP_EQ] = ACTIONS(588), - [anon_sym_CARET_EQ] = ACTIONS(588), - [anon_sym_PIPE_EQ] = ACTIONS(588), - [sym_ellipsis] = ACTIONS(309), - [sym_integer] = ACTIONS(311), - [sym_float] = ACTIONS(309), - [anon_sym_await] = ACTIONS(590), - [sym_true] = ACTIONS(311), - [sym_false] = ACTIONS(311), - [sym_none] = ACTIONS(311), - [sym_comment] = ACTIONS(3), - [sym__string_start] = ACTIONS(315), - [sym__template_string_start] = ACTIONS(317), - }, - [STATE(143)] = { - [sym_primary_expression] = STATE(740), - [sym_binary_operator] = STATE(725), - [sym_unary_operator] = STATE(725), - [sym_attribute] = STATE(725), - [sym_subscript] = STATE(725), - [sym_call] = STATE(725), - [sym_list] = STATE(725), - [sym_set] = STATE(725), - [sym_tuple] = STATE(725), - [sym_dictionary] = STATE(725), - [sym_list_comprehension] = STATE(725), - [sym_dictionary_comprehension] = STATE(725), - [sym_set_comprehension] = STATE(725), - [sym_generator_expression] = STATE(725), - [sym_parenthesized_expression] = STATE(725), - [sym_concatenated_string] = STATE(725), - [sym_string] = STATE(645), - [sym_concatenated_template_string] = STATE(725), - [sym_template_string] = STATE(658), - [sym_await] = STATE(725), + [sym_primary_expression] = STATE(747), + [sym_binary_operator] = STATE(720), + [sym_unary_operator] = STATE(720), + [sym_attribute] = STATE(720), + [sym_subscript] = STATE(720), + [sym_call] = STATE(720), + [sym_list] = STATE(720), + [sym_set] = STATE(720), + [sym_tuple] = STATE(720), + [sym_dictionary] = STATE(720), + [sym_list_comprehension] = STATE(720), + [sym_dictionary_comprehension] = STATE(720), + [sym_set_comprehension] = STATE(720), + [sym_generator_expression] = STATE(720), + [sym_parenthesized_expression] = STATE(720), + [sym_concatenated_string] = STATE(720), + [sym_string] = STATE(694), + [sym_concatenated_template_string] = STATE(720), + [sym_template_string] = STATE(698), + [sym_await] = STATE(720), [sym_identifier] = ACTIONS(311), - [anon_sym_lazy] = ACTIONS(573), + [anon_sym_lazy] = ACTIONS(583), [anon_sym_DOT] = ACTIONS(272), [anon_sym_LPAREN] = ACTIONS(602), [anon_sym_RPAREN] = ACTIONS(303), [anon_sym_COMMA] = ACTIONS(303), [anon_sym_as] = ACTIONS(272), [anon_sym_STAR] = ACTIONS(272), - [anon_sym_print] = ACTIONS(573), + [anon_sym_print] = ACTIONS(583), [anon_sym_GT_GT] = ACTIONS(303), [anon_sym_if] = ACTIONS(272), - [anon_sym_async] = ACTIONS(573), + [anon_sym_async] = ACTIONS(583), [anon_sym_for] = ACTIONS(272), [anon_sym_in] = ACTIONS(272), - [anon_sym_match] = ACTIONS(573), + [anon_sym_match] = ACTIONS(583), [anon_sym_PIPE] = ACTIONS(303), [anon_sym_DASH] = ACTIONS(606), [anon_sym_PLUS] = ACTIONS(606), @@ -23432,8 +23396,8 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_LBRACE] = ACTIONS(293), [anon_sym_RBRACE] = ACTIONS(303), [anon_sym_STAR_STAR] = ACTIONS(303), - [anon_sym_exec] = ACTIONS(573), - [anon_sym_type] = ACTIONS(573), + [anon_sym_exec] = ACTIONS(583), + [anon_sym_type] = ACTIONS(583), [anon_sym_AT] = ACTIONS(303), [anon_sym_not] = ACTIONS(272), [anon_sym_and] = ACTIONS(272), @@ -23464,51 +23428,127 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(315), [sym__template_string_start] = ACTIONS(317), }, + [STATE(143)] = { + [sym_primary_expression] = STATE(766), + [sym_binary_operator] = STATE(720), + [sym_unary_operator] = STATE(720), + [sym_attribute] = STATE(720), + [sym_subscript] = STATE(720), + [sym_call] = STATE(720), + [sym_list] = STATE(720), + [sym_set] = STATE(720), + [sym_tuple] = STATE(720), + [sym_dictionary] = STATE(720), + [sym_list_comprehension] = STATE(720), + [sym_dictionary_comprehension] = STATE(720), + [sym_set_comprehension] = STATE(720), + [sym_generator_expression] = STATE(720), + [sym_parenthesized_expression] = STATE(720), + [sym_concatenated_string] = STATE(720), + [sym_string] = STATE(694), + [sym_concatenated_template_string] = STATE(720), + [sym_template_string] = STATE(698), + [sym_await] = STATE(720), + [sym_identifier] = ACTIONS(311), + [anon_sym_lazy] = ACTIONS(583), + [anon_sym_DOT] = ACTIONS(272), + [anon_sym_LPAREN] = ACTIONS(585), + [anon_sym_RPAREN] = ACTIONS(598), + [anon_sym_COMMA] = ACTIONS(598), + [anon_sym_STAR] = ACTIONS(272), + [anon_sym_print] = ACTIONS(583), + [anon_sym_GT_GT] = ACTIONS(272), + [anon_sym_COLON] = ACTIONS(598), + [anon_sym_async] = ACTIONS(583), + [anon_sym_in] = ACTIONS(592), + [anon_sym_match] = ACTIONS(583), + [anon_sym_PIPE] = ACTIONS(272), + [anon_sym_DASH] = ACTIONS(594), + [anon_sym_PLUS] = ACTIONS(594), + [anon_sym_LBRACK] = ACTIONS(596), + [anon_sym_RBRACK] = ACTIONS(598), + [anon_sym_LBRACE] = ACTIONS(293), + [anon_sym_STAR_STAR] = ACTIONS(272), + [anon_sym_EQ] = ACTIONS(598), + [anon_sym_exec] = ACTIONS(583), + [anon_sym_type] = ACTIONS(583), + [anon_sym_AT] = ACTIONS(272), + [anon_sym_SLASH] = ACTIONS(272), + [anon_sym_PERCENT] = ACTIONS(272), + [anon_sym_SLASH_SLASH] = ACTIONS(272), + [anon_sym_AMP] = ACTIONS(272), + [anon_sym_CARET] = ACTIONS(272), + [anon_sym_LT_LT] = ACTIONS(272), + [anon_sym_TILDE] = ACTIONS(301), + [anon_sym_PLUS_EQ] = ACTIONS(598), + [anon_sym_DASH_EQ] = ACTIONS(598), + [anon_sym_STAR_EQ] = ACTIONS(598), + [anon_sym_SLASH_EQ] = ACTIONS(598), + [anon_sym_AT_EQ] = ACTIONS(598), + [anon_sym_SLASH_SLASH_EQ] = ACTIONS(598), + [anon_sym_PERCENT_EQ] = ACTIONS(598), + [anon_sym_STAR_STAR_EQ] = ACTIONS(598), + [anon_sym_GT_GT_EQ] = ACTIONS(598), + [anon_sym_LT_LT_EQ] = ACTIONS(598), + [anon_sym_AMP_EQ] = ACTIONS(598), + [anon_sym_CARET_EQ] = ACTIONS(598), + [anon_sym_PIPE_EQ] = ACTIONS(598), + [sym_ellipsis] = ACTIONS(309), + [sym_integer] = ACTIONS(311), + [sym_float] = ACTIONS(309), + [anon_sym_await] = ACTIONS(600), + [sym_true] = ACTIONS(311), + [sym_false] = ACTIONS(311), + [sym_none] = ACTIONS(311), + [sym_comment] = ACTIONS(3), + [sym__string_start] = ACTIONS(315), + [sym__template_string_start] = ACTIONS(317), + }, [STATE(144)] = { - [sym_primary_expression] = STATE(740), - [sym_binary_operator] = STATE(725), - [sym_unary_operator] = STATE(725), - [sym_attribute] = STATE(725), - [sym_subscript] = STATE(725), - [sym_call] = STATE(725), - [sym_list] = STATE(725), - [sym_set] = STATE(725), - [sym_tuple] = STATE(725), - [sym_dictionary] = STATE(725), - [sym_list_comprehension] = STATE(725), - [sym_dictionary_comprehension] = STATE(725), - [sym_set_comprehension] = STATE(725), - [sym_generator_expression] = STATE(725), - [sym_parenthesized_expression] = STATE(725), - [sym_concatenated_string] = STATE(725), - [sym_string] = STATE(645), - [sym_concatenated_template_string] = STATE(725), - [sym_template_string] = STATE(658), - [sym_await] = STATE(725), + [sym_primary_expression] = STATE(747), + [sym_binary_operator] = STATE(720), + [sym_unary_operator] = STATE(720), + [sym_attribute] = STATE(720), + [sym_subscript] = STATE(720), + [sym_call] = STATE(720), + [sym_list] = STATE(720), + [sym_set] = STATE(720), + [sym_tuple] = STATE(720), + [sym_dictionary] = STATE(720), + [sym_list_comprehension] = STATE(720), + [sym_dictionary_comprehension] = STATE(720), + [sym_set_comprehension] = STATE(720), + [sym_generator_expression] = STATE(720), + [sym_parenthesized_expression] = STATE(720), + [sym_concatenated_string] = STATE(720), + [sym_string] = STATE(694), + [sym_concatenated_template_string] = STATE(720), + [sym_template_string] = STATE(698), + [sym_await] = STATE(720), [sym_identifier] = ACTIONS(311), - [anon_sym_lazy] = ACTIONS(573), + [anon_sym_lazy] = ACTIONS(583), [anon_sym_DOT] = ACTIONS(272), [anon_sym_LPAREN] = ACTIONS(602), - [anon_sym_RPAREN] = ACTIONS(277), - [anon_sym_COMMA] = ACTIONS(277), + [anon_sym_RPAREN] = ACTIONS(303), + [anon_sym_COMMA] = ACTIONS(303), [anon_sym_STAR] = ACTIONS(272), - [anon_sym_print] = ACTIONS(573), + [anon_sym_print] = ACTIONS(583), [anon_sym_GT_GT] = ACTIONS(303), [anon_sym_COLON_EQ] = ACTIONS(604), [anon_sym_if] = ACTIONS(272), - [anon_sym_async] = ACTIONS(573), + [anon_sym_async] = ACTIONS(583), [anon_sym_for] = ACTIONS(272), [anon_sym_in] = ACTIONS(272), - [anon_sym_match] = ACTIONS(573), + [anon_sym_match] = ACTIONS(583), [anon_sym_PIPE] = ACTIONS(303), [anon_sym_DASH] = ACTIONS(606), [anon_sym_PLUS] = ACTIONS(606), [anon_sym_LBRACK] = ACTIONS(608), - [anon_sym_RBRACK] = ACTIONS(277), [anon_sym_LBRACE] = ACTIONS(293), [anon_sym_STAR_STAR] = ACTIONS(303), - [anon_sym_exec] = ACTIONS(573), - [anon_sym_type] = ACTIONS(573), + [anon_sym_EQ] = ACTIONS(634), + [anon_sym_exec] = ACTIONS(583), + [anon_sym_type] = ACTIONS(583), [anon_sym_AT] = ACTIONS(303), [anon_sym_not] = ACTIONS(272), [anon_sym_and] = ACTIONS(272), @@ -23540,50 +23580,50 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__template_string_start] = ACTIONS(317), }, [STATE(145)] = { - [sym_primary_expression] = STATE(740), - [sym_binary_operator] = STATE(725), - [sym_unary_operator] = STATE(725), - [sym_attribute] = STATE(725), - [sym_subscript] = STATE(725), - [sym_call] = STATE(725), - [sym_list] = STATE(725), - [sym_set] = STATE(725), - [sym_tuple] = STATE(725), - [sym_dictionary] = STATE(725), - [sym_list_comprehension] = STATE(725), - [sym_dictionary_comprehension] = STATE(725), - [sym_set_comprehension] = STATE(725), - [sym_generator_expression] = STATE(725), - [sym_parenthesized_expression] = STATE(725), - [sym_concatenated_string] = STATE(725), - [sym_string] = STATE(645), - [sym_concatenated_template_string] = STATE(725), - [sym_template_string] = STATE(658), - [sym_await] = STATE(725), + [sym_primary_expression] = STATE(808), + [sym_binary_operator] = STATE(720), + [sym_unary_operator] = STATE(720), + [sym_attribute] = STATE(720), + [sym_subscript] = STATE(720), + [sym_call] = STATE(720), + [sym_list] = STATE(720), + [sym_set] = STATE(720), + [sym_tuple] = STATE(720), + [sym_dictionary] = STATE(720), + [sym_list_comprehension] = STATE(720), + [sym_dictionary_comprehension] = STATE(720), + [sym_set_comprehension] = STATE(720), + [sym_generator_expression] = STATE(720), + [sym_parenthesized_expression] = STATE(720), + [sym_concatenated_string] = STATE(720), + [sym_string] = STATE(694), + [sym_concatenated_template_string] = STATE(720), + [sym_template_string] = STATE(698), + [sym_await] = STATE(720), [sym_identifier] = ACTIONS(311), - [anon_sym_lazy] = ACTIONS(573), + [anon_sym_lazy] = ACTIONS(583), [anon_sym_DOT] = ACTIONS(272), - [anon_sym_LPAREN] = ACTIONS(602), - [anon_sym_RPAREN] = ACTIONS(303), + [anon_sym_LPAREN] = ACTIONS(636), [anon_sym_COMMA] = ACTIONS(303), [anon_sym_STAR] = ACTIONS(272), - [anon_sym_print] = ACTIONS(573), + [anon_sym_print] = ACTIONS(583), [anon_sym_GT_GT] = ACTIONS(303), - [anon_sym_COLON_EQ] = ACTIONS(604), + [anon_sym_COLON_EQ] = ACTIONS(638), [anon_sym_if] = ACTIONS(272), - [anon_sym_async] = ACTIONS(573), + [anon_sym_COLON] = ACTIONS(272), + [anon_sym_async] = ACTIONS(583), [anon_sym_for] = ACTIONS(272), [anon_sym_in] = ACTIONS(272), - [anon_sym_match] = ACTIONS(573), + [anon_sym_match] = ACTIONS(583), [anon_sym_PIPE] = ACTIONS(303), - [anon_sym_DASH] = ACTIONS(606), - [anon_sym_PLUS] = ACTIONS(606), - [anon_sym_LBRACK] = ACTIONS(608), + [anon_sym_DASH] = ACTIONS(640), + [anon_sym_PLUS] = ACTIONS(640), + [anon_sym_LBRACK] = ACTIONS(642), [anon_sym_LBRACE] = ACTIONS(293), + [anon_sym_RBRACE] = ACTIONS(303), [anon_sym_STAR_STAR] = ACTIONS(303), - [anon_sym_EQ] = ACTIONS(634), - [anon_sym_exec] = ACTIONS(573), - [anon_sym_type] = ACTIONS(573), + [anon_sym_exec] = ACTIONS(583), + [anon_sym_type] = ACTIONS(583), [anon_sym_AT] = ACTIONS(303), [anon_sym_not] = ACTIONS(272), [anon_sym_and] = ACTIONS(272), @@ -23594,7 +23634,7 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_AMP] = ACTIONS(303), [anon_sym_CARET] = ACTIONS(303), [anon_sym_LT_LT] = ACTIONS(303), - [anon_sym_TILDE] = ACTIONS(606), + [anon_sym_TILDE] = ACTIONS(640), [anon_sym_LT] = ACTIONS(272), [anon_sym_LT_EQ] = ACTIONS(303), [anon_sym_EQ_EQ] = ACTIONS(303), @@ -23606,7 +23646,7 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_ellipsis] = ACTIONS(309), [sym_integer] = ACTIONS(311), [sym_float] = ACTIONS(309), - [anon_sym_await] = ACTIONS(610), + [anon_sym_await] = ACTIONS(644), [sym_true] = ACTIONS(311), [sym_false] = ACTIONS(311), [sym_none] = ACTIONS(311), @@ -23615,50 +23655,50 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__template_string_start] = ACTIONS(317), }, [STATE(146)] = { - [sym_primary_expression] = STATE(835), - [sym_binary_operator] = STATE(970), - [sym_unary_operator] = STATE(970), - [sym_attribute] = STATE(970), - [sym_subscript] = STATE(970), - [sym_call] = STATE(970), - [sym_list] = STATE(970), - [sym_set] = STATE(970), - [sym_tuple] = STATE(970), - [sym_dictionary] = STATE(970), - [sym_list_comprehension] = STATE(970), - [sym_dictionary_comprehension] = STATE(970), - [sym_set_comprehension] = STATE(970), - [sym_generator_expression] = STATE(970), - [sym_parenthesized_expression] = STATE(970), - [sym_concatenated_string] = STATE(970), - [sym_string] = STATE(793), - [sym_concatenated_template_string] = STATE(970), - [sym_template_string] = STATE(794), - [sym_await] = STATE(970), - [sym_identifier] = ACTIONS(636), - [anon_sym_lazy] = ACTIONS(638), + [sym_primary_expression] = STATE(839), + [sym_binary_operator] = STATE(985), + [sym_unary_operator] = STATE(985), + [sym_attribute] = STATE(985), + [sym_subscript] = STATE(985), + [sym_call] = STATE(985), + [sym_list] = STATE(985), + [sym_set] = STATE(985), + [sym_tuple] = STATE(985), + [sym_dictionary] = STATE(985), + [sym_list_comprehension] = STATE(985), + [sym_dictionary_comprehension] = STATE(985), + [sym_set_comprehension] = STATE(985), + [sym_generator_expression] = STATE(985), + [sym_parenthesized_expression] = STATE(985), + [sym_concatenated_string] = STATE(985), + [sym_string] = STATE(790), + [sym_concatenated_template_string] = STATE(985), + [sym_template_string] = STATE(791), + [sym_await] = STATE(985), + [sym_identifier] = ACTIONS(646), + [anon_sym_lazy] = ACTIONS(648), [anon_sym_DOT] = ACTIONS(272), - [anon_sym_LPAREN] = ACTIONS(640), + [anon_sym_LPAREN] = ACTIONS(650), [anon_sym_RPAREN] = ACTIONS(303), [anon_sym_COMMA] = ACTIONS(303), [anon_sym_as] = ACTIONS(272), [anon_sym_STAR] = ACTIONS(272), - [anon_sym_print] = ACTIONS(638), + [anon_sym_print] = ACTIONS(648), [anon_sym_GT_GT] = ACTIONS(303), - [anon_sym_COLON_EQ] = ACTIONS(642), + [anon_sym_COLON_EQ] = ACTIONS(652), [anon_sym_if] = ACTIONS(272), [anon_sym_COLON] = ACTIONS(272), - [anon_sym_async] = ACTIONS(638), + [anon_sym_async] = ACTIONS(648), [anon_sym_in] = ACTIONS(272), - [anon_sym_match] = ACTIONS(638), + [anon_sym_match] = ACTIONS(648), [anon_sym_PIPE] = ACTIONS(303), - [anon_sym_DASH] = ACTIONS(644), - [anon_sym_PLUS] = ACTIONS(644), - [anon_sym_LBRACK] = ACTIONS(646), - [anon_sym_LBRACE] = ACTIONS(648), + [anon_sym_DASH] = ACTIONS(654), + [anon_sym_PLUS] = ACTIONS(654), + [anon_sym_LBRACK] = ACTIONS(656), + [anon_sym_LBRACE] = ACTIONS(658), [anon_sym_STAR_STAR] = ACTIONS(303), - [anon_sym_exec] = ACTIONS(638), - [anon_sym_type] = ACTIONS(638), + [anon_sym_exec] = ACTIONS(648), + [anon_sym_type] = ACTIONS(648), [anon_sym_AT] = ACTIONS(303), [anon_sym_not] = ACTIONS(272), [anon_sym_and] = ACTIONS(272), @@ -23669,7 +23709,7 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_AMP] = ACTIONS(303), [anon_sym_CARET] = ACTIONS(303), [anon_sym_LT_LT] = ACTIONS(303), - [anon_sym_TILDE] = ACTIONS(644), + [anon_sym_TILDE] = ACTIONS(654), [anon_sym_LT] = ACTIONS(272), [anon_sym_LT_EQ] = ACTIONS(303), [anon_sym_EQ_EQ] = ACTIONS(303), @@ -23678,60 +23718,60 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_GT] = ACTIONS(272), [anon_sym_LT_GT] = ACTIONS(303), [anon_sym_is] = ACTIONS(272), - [sym_ellipsis] = ACTIONS(650), - [sym_integer] = ACTIONS(636), - [sym_float] = ACTIONS(650), - [anon_sym_await] = ACTIONS(652), - [sym_true] = ACTIONS(636), - [sym_false] = ACTIONS(636), - [sym_none] = ACTIONS(636), + [sym_ellipsis] = ACTIONS(660), + [sym_integer] = ACTIONS(646), + [sym_float] = ACTIONS(660), + [anon_sym_await] = ACTIONS(662), + [sym_true] = ACTIONS(646), + [sym_false] = ACTIONS(646), + [sym_none] = ACTIONS(646), [sym_comment] = ACTIONS(3), - [sym__string_start] = ACTIONS(654), - [sym__template_string_start] = ACTIONS(656), + [sym__string_start] = ACTIONS(664), + [sym__template_string_start] = ACTIONS(666), }, [STATE(147)] = { - [sym_primary_expression] = STATE(786), - [sym_binary_operator] = STATE(920), - [sym_unary_operator] = STATE(920), - [sym_attribute] = STATE(920), - [sym_subscript] = STATE(920), - [sym_call] = STATE(920), - [sym_list] = STATE(920), - [sym_set] = STATE(920), - [sym_tuple] = STATE(920), - [sym_dictionary] = STATE(920), - [sym_list_comprehension] = STATE(920), - [sym_dictionary_comprehension] = STATE(920), - [sym_set_comprehension] = STATE(920), - [sym_generator_expression] = STATE(920), - [sym_parenthesized_expression] = STATE(920), - [sym_concatenated_string] = STATE(920), - [sym_string] = STATE(775), - [sym_concatenated_template_string] = STATE(920), - [sym_template_string] = STATE(769), - [sym_await] = STATE(920), - [sym_identifier] = ACTIONS(79), - [anon_sym_lazy] = ACTIONS(592), + [sym_primary_expression] = STATE(805), + [sym_binary_operator] = STATE(949), + [sym_unary_operator] = STATE(949), + [sym_attribute] = STATE(949), + [sym_subscript] = STATE(949), + [sym_call] = STATE(949), + [sym_list] = STATE(949), + [sym_set] = STATE(949), + [sym_tuple] = STATE(949), + [sym_dictionary] = STATE(949), + [sym_list_comprehension] = STATE(949), + [sym_dictionary_comprehension] = STATE(949), + [sym_set_comprehension] = STATE(949), + [sym_generator_expression] = STATE(949), + [sym_parenthesized_expression] = STATE(949), + [sym_concatenated_string] = STATE(949), + [sym_string] = STATE(781), + [sym_concatenated_template_string] = STATE(949), + [sym_template_string] = STATE(782), + [sym_await] = STATE(949), + [sym_identifier] = ACTIONS(612), + [anon_sym_lazy] = ACTIONS(614), [anon_sym_DOT] = ACTIONS(272), - [anon_sym_from] = ACTIONS(272), - [anon_sym_LPAREN] = ACTIONS(594), + [anon_sym_LPAREN] = ACTIONS(616), [anon_sym_COMMA] = ACTIONS(303), [anon_sym_STAR] = ACTIONS(272), - [anon_sym_print] = ACTIONS(592), + [anon_sym_print] = ACTIONS(614), [anon_sym_GT_GT] = ACTIONS(303), [anon_sym_if] = ACTIONS(272), - [anon_sym_async] = ACTIONS(592), + [anon_sym_async] = ACTIONS(614), [anon_sym_in] = ACTIONS(272), - [anon_sym_match] = ACTIONS(592), + [anon_sym_match] = ACTIONS(614), [anon_sym_PIPE] = ACTIONS(303), - [anon_sym_DASH] = ACTIONS(49), - [anon_sym_PLUS] = ACTIONS(49), - [anon_sym_LBRACK] = ACTIONS(598), - [anon_sym_LBRACE] = ACTIONS(53), + [anon_sym_DASH] = ACTIONS(620), + [anon_sym_PLUS] = ACTIONS(620), + [anon_sym_LBRACK] = ACTIONS(622), + [anon_sym_LBRACE] = ACTIONS(624), + [anon_sym_RBRACE] = ACTIONS(303), [anon_sym_STAR_STAR] = ACTIONS(303), [anon_sym_EQ] = ACTIONS(272), - [anon_sym_exec] = ACTIONS(592), - [anon_sym_type] = ACTIONS(592), + [anon_sym_exec] = ACTIONS(614), + [anon_sym_type] = ACTIONS(614), [anon_sym_AT] = ACTIONS(303), [anon_sym_not] = ACTIONS(272), [anon_sym_and] = ACTIONS(272), @@ -23742,7 +23782,7 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_AMP] = ACTIONS(303), [anon_sym_CARET] = ACTIONS(303), [anon_sym_LT_LT] = ACTIONS(303), - [anon_sym_TILDE] = ACTIONS(49), + [anon_sym_TILDE] = ACTIONS(620), [anon_sym_LT] = ACTIONS(272), [anon_sym_LT_EQ] = ACTIONS(303), [anon_sym_EQ_EQ] = ACTIONS(303), @@ -23751,64 +23791,64 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_GT] = ACTIONS(272), [anon_sym_LT_GT] = ACTIONS(303), [anon_sym_is] = ACTIONS(272), - [sym_ellipsis] = ACTIONS(77), - [sym_integer] = ACTIONS(79), - [sym_float] = ACTIONS(77), - [anon_sym_await] = ACTIONS(600), - [sym_true] = ACTIONS(79), - [sym_false] = ACTIONS(79), - [sym_none] = ACTIONS(79), + [sym_ellipsis] = ACTIONS(626), + [anon_sym_COLON2] = ACTIONS(303), + [sym_type_conversion] = ACTIONS(303), + [sym_integer] = ACTIONS(612), + [sym_float] = ACTIONS(626), + [anon_sym_await] = ACTIONS(628), + [sym_true] = ACTIONS(612), + [sym_false] = ACTIONS(612), + [sym_none] = ACTIONS(612), [sym_comment] = ACTIONS(3), - [anon_sym_SEMI] = ACTIONS(303), - [sym__newline] = ACTIONS(303), - [sym__string_start] = ACTIONS(83), - [sym__template_string_start] = ACTIONS(85), + [sym__string_start] = ACTIONS(630), + [sym__template_string_start] = ACTIONS(632), }, [STATE(148)] = { - [sym_primary_expression] = STATE(784), - [sym_binary_operator] = STATE(725), - [sym_unary_operator] = STATE(725), - [sym_attribute] = STATE(725), - [sym_subscript] = STATE(725), - [sym_call] = STATE(725), - [sym_list] = STATE(725), - [sym_set] = STATE(725), - [sym_tuple] = STATE(725), - [sym_dictionary] = STATE(725), - [sym_list_comprehension] = STATE(725), - [sym_dictionary_comprehension] = STATE(725), - [sym_set_comprehension] = STATE(725), - [sym_generator_expression] = STATE(725), - [sym_parenthesized_expression] = STATE(725), - [sym_concatenated_string] = STATE(725), - [sym_string] = STATE(645), - [sym_concatenated_template_string] = STATE(725), - [sym_template_string] = STATE(658), - [sym_await] = STATE(725), + [sym_primary_expression] = STATE(747), + [sym_binary_operator] = STATE(720), + [sym_unary_operator] = STATE(720), + [sym_attribute] = STATE(720), + [sym_subscript] = STATE(720), + [sym_call] = STATE(720), + [sym_list] = STATE(720), + [sym_set] = STATE(720), + [sym_tuple] = STATE(720), + [sym_dictionary] = STATE(720), + [sym_list_comprehension] = STATE(720), + [sym_dictionary_comprehension] = STATE(720), + [sym_set_comprehension] = STATE(720), + [sym_generator_expression] = STATE(720), + [sym_parenthesized_expression] = STATE(720), + [sym_concatenated_string] = STATE(720), + [sym_string] = STATE(694), + [sym_concatenated_template_string] = STATE(720), + [sym_template_string] = STATE(698), + [sym_await] = STATE(720), [sym_identifier] = ACTIONS(311), - [anon_sym_lazy] = ACTIONS(573), + [anon_sym_lazy] = ACTIONS(583), [anon_sym_DOT] = ACTIONS(272), - [anon_sym_LPAREN] = ACTIONS(658), - [anon_sym_COMMA] = ACTIONS(303), + [anon_sym_LPAREN] = ACTIONS(602), + [anon_sym_RPAREN] = ACTIONS(587), + [anon_sym_COMMA] = ACTIONS(587), [anon_sym_STAR] = ACTIONS(272), - [anon_sym_print] = ACTIONS(573), + [anon_sym_print] = ACTIONS(583), [anon_sym_GT_GT] = ACTIONS(303), - [anon_sym_COLON_EQ] = ACTIONS(660), + [anon_sym_COLON_EQ] = ACTIONS(604), [anon_sym_if] = ACTIONS(272), - [anon_sym_COLON] = ACTIONS(272), - [anon_sym_async] = ACTIONS(573), + [anon_sym_async] = ACTIONS(583), [anon_sym_for] = ACTIONS(272), [anon_sym_in] = ACTIONS(272), - [anon_sym_match] = ACTIONS(573), + [anon_sym_match] = ACTIONS(583), [anon_sym_PIPE] = ACTIONS(303), - [anon_sym_DASH] = ACTIONS(662), - [anon_sym_PLUS] = ACTIONS(662), - [anon_sym_LBRACK] = ACTIONS(664), + [anon_sym_DASH] = ACTIONS(606), + [anon_sym_PLUS] = ACTIONS(606), + [anon_sym_LBRACK] = ACTIONS(608), + [anon_sym_RBRACK] = ACTIONS(587), [anon_sym_LBRACE] = ACTIONS(293), - [anon_sym_RBRACE] = ACTIONS(303), [anon_sym_STAR_STAR] = ACTIONS(303), - [anon_sym_exec] = ACTIONS(573), - [anon_sym_type] = ACTIONS(573), + [anon_sym_exec] = ACTIONS(583), + [anon_sym_type] = ACTIONS(583), [anon_sym_AT] = ACTIONS(303), [anon_sym_not] = ACTIONS(272), [anon_sym_and] = ACTIONS(272), @@ -23819,7 +23859,7 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_AMP] = ACTIONS(303), [anon_sym_CARET] = ACTIONS(303), [anon_sym_LT_LT] = ACTIONS(303), - [anon_sym_TILDE] = ACTIONS(662), + [anon_sym_TILDE] = ACTIONS(606), [anon_sym_LT] = ACTIONS(272), [anon_sym_LT_EQ] = ACTIONS(303), [anon_sym_EQ_EQ] = ACTIONS(303), @@ -23831,7 +23871,7 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_ellipsis] = ACTIONS(309), [sym_integer] = ACTIONS(311), [sym_float] = ACTIONS(309), - [anon_sym_await] = ACTIONS(666), + [anon_sym_await] = ACTIONS(610), [sym_true] = ACTIONS(311), [sym_false] = ACTIONS(311), [sym_none] = ACTIONS(311), @@ -23840,48 +23880,50 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__template_string_start] = ACTIONS(317), }, [STATE(149)] = { - [sym_primary_expression] = STATE(800), - [sym_binary_operator] = STATE(878), - [sym_unary_operator] = STATE(878), - [sym_attribute] = STATE(878), - [sym_subscript] = STATE(878), - [sym_call] = STATE(878), - [sym_list] = STATE(878), - [sym_set] = STATE(878), - [sym_tuple] = STATE(878), - [sym_dictionary] = STATE(878), - [sym_list_comprehension] = STATE(878), - [sym_dictionary_comprehension] = STATE(878), - [sym_set_comprehension] = STATE(878), - [sym_generator_expression] = STATE(878), - [sym_parenthesized_expression] = STATE(878), - [sym_concatenated_string] = STATE(878), - [sym_string] = STATE(766), - [sym_concatenated_template_string] = STATE(878), - [sym_template_string] = STATE(776), - [sym_await] = STATE(878), - [sym_identifier] = ACTIONS(612), - [anon_sym_lazy] = ACTIONS(614), + [sym_primary_expression] = STATE(747), + [sym_binary_operator] = STATE(720), + [sym_unary_operator] = STATE(720), + [sym_attribute] = STATE(720), + [sym_subscript] = STATE(720), + [sym_call] = STATE(720), + [sym_list] = STATE(720), + [sym_set] = STATE(720), + [sym_tuple] = STATE(720), + [sym_dictionary] = STATE(720), + [sym_list_comprehension] = STATE(720), + [sym_dictionary_comprehension] = STATE(720), + [sym_set_comprehension] = STATE(720), + [sym_generator_expression] = STATE(720), + [sym_parenthesized_expression] = STATE(720), + [sym_concatenated_string] = STATE(720), + [sym_string] = STATE(694), + [sym_concatenated_template_string] = STATE(720), + [sym_template_string] = STATE(698), + [sym_await] = STATE(720), + [sym_identifier] = ACTIONS(311), + [anon_sym_lazy] = ACTIONS(583), [anon_sym_DOT] = ACTIONS(272), - [anon_sym_LPAREN] = ACTIONS(616), - [anon_sym_COMMA] = ACTIONS(303), + [anon_sym_LPAREN] = ACTIONS(602), + [anon_sym_RPAREN] = ACTIONS(277), + [anon_sym_COMMA] = ACTIONS(277), [anon_sym_STAR] = ACTIONS(272), - [anon_sym_print] = ACTIONS(614), + [anon_sym_print] = ACTIONS(583), [anon_sym_GT_GT] = ACTIONS(303), + [anon_sym_COLON_EQ] = ACTIONS(604), [anon_sym_if] = ACTIONS(272), - [anon_sym_async] = ACTIONS(614), + [anon_sym_async] = ACTIONS(583), + [anon_sym_for] = ACTIONS(272), [anon_sym_in] = ACTIONS(272), - [anon_sym_match] = ACTIONS(614), + [anon_sym_match] = ACTIONS(583), [anon_sym_PIPE] = ACTIONS(303), - [anon_sym_DASH] = ACTIONS(620), - [anon_sym_PLUS] = ACTIONS(620), - [anon_sym_LBRACK] = ACTIONS(622), - [anon_sym_LBRACE] = ACTIONS(624), - [anon_sym_RBRACE] = ACTIONS(303), + [anon_sym_DASH] = ACTIONS(606), + [anon_sym_PLUS] = ACTIONS(606), + [anon_sym_LBRACK] = ACTIONS(608), + [anon_sym_RBRACK] = ACTIONS(277), + [anon_sym_LBRACE] = ACTIONS(293), [anon_sym_STAR_STAR] = ACTIONS(303), - [anon_sym_EQ] = ACTIONS(272), - [anon_sym_exec] = ACTIONS(614), - [anon_sym_type] = ACTIONS(614), + [anon_sym_exec] = ACTIONS(583), + [anon_sym_type] = ACTIONS(583), [anon_sym_AT] = ACTIONS(303), [anon_sym_not] = ACTIONS(272), [anon_sym_and] = ACTIONS(272), @@ -23892,7 +23934,7 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_AMP] = ACTIONS(303), [anon_sym_CARET] = ACTIONS(303), [anon_sym_LT_LT] = ACTIONS(303), - [anon_sym_TILDE] = ACTIONS(620), + [anon_sym_TILDE] = ACTIONS(606), [anon_sym_LT] = ACTIONS(272), [anon_sym_LT_EQ] = ACTIONS(303), [anon_sym_EQ_EQ] = ACTIONS(303), @@ -23901,61 +23943,58 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_GT] = ACTIONS(272), [anon_sym_LT_GT] = ACTIONS(303), [anon_sym_is] = ACTIONS(272), - [sym_ellipsis] = ACTIONS(626), - [anon_sym_COLON2] = ACTIONS(303), - [sym_type_conversion] = ACTIONS(303), - [sym_integer] = ACTIONS(612), - [sym_float] = ACTIONS(626), - [anon_sym_await] = ACTIONS(628), - [sym_true] = ACTIONS(612), - [sym_false] = ACTIONS(612), - [sym_none] = ACTIONS(612), + [sym_ellipsis] = ACTIONS(309), + [sym_integer] = ACTIONS(311), + [sym_float] = ACTIONS(309), + [anon_sym_await] = ACTIONS(610), + [sym_true] = ACTIONS(311), + [sym_false] = ACTIONS(311), + [sym_none] = ACTIONS(311), [sym_comment] = ACTIONS(3), - [sym__string_start] = ACTIONS(630), - [sym__template_string_start] = ACTIONS(632), + [sym__string_start] = ACTIONS(315), + [sym__template_string_start] = ACTIONS(317), }, [STATE(150)] = { - [sym_primary_expression] = STATE(741), - [sym_binary_operator] = STATE(725), - [sym_unary_operator] = STATE(725), - [sym_attribute] = STATE(725), - [sym_subscript] = STATE(725), - [sym_call] = STATE(725), - [sym_list] = STATE(725), - [sym_set] = STATE(725), - [sym_tuple] = STATE(725), - [sym_dictionary] = STATE(725), - [sym_list_comprehension] = STATE(725), - [sym_dictionary_comprehension] = STATE(725), - [sym_set_comprehension] = STATE(725), - [sym_generator_expression] = STATE(725), - [sym_parenthesized_expression] = STATE(725), - [sym_concatenated_string] = STATE(725), - [sym_string] = STATE(645), - [sym_concatenated_template_string] = STATE(725), - [sym_template_string] = STATE(658), - [sym_await] = STATE(725), - [sym_identifier] = ACTIONS(311), + [sym_primary_expression] = STATE(799), + [sym_binary_operator] = STATE(950), + [sym_unary_operator] = STATE(950), + [sym_attribute] = STATE(950), + [sym_subscript] = STATE(950), + [sym_call] = STATE(950), + [sym_list] = STATE(950), + [sym_set] = STATE(950), + [sym_tuple] = STATE(950), + [sym_dictionary] = STATE(950), + [sym_list_comprehension] = STATE(950), + [sym_dictionary_comprehension] = STATE(950), + [sym_set_comprehension] = STATE(950), + [sym_generator_expression] = STATE(950), + [sym_parenthesized_expression] = STATE(950), + [sym_concatenated_string] = STATE(950), + [sym_string] = STATE(779), + [sym_concatenated_template_string] = STATE(950), + [sym_template_string] = STATE(772), + [sym_await] = STATE(950), + [sym_identifier] = ACTIONS(79), [anon_sym_lazy] = ACTIONS(573), [anon_sym_DOT] = ACTIONS(272), + [anon_sym_from] = ACTIONS(272), [anon_sym_LPAREN] = ACTIONS(575), - [anon_sym_RPAREN] = ACTIONS(303), [anon_sym_COMMA] = ACTIONS(303), [anon_sym_STAR] = ACTIONS(272), [anon_sym_print] = ACTIONS(573), [anon_sym_GT_GT] = ACTIONS(303), - [anon_sym_COLON_EQ] = ACTIONS(580), [anon_sym_if] = ACTIONS(272), [anon_sym_async] = ACTIONS(573), [anon_sym_in] = ACTIONS(272), [anon_sym_match] = ACTIONS(573), [anon_sym_PIPE] = ACTIONS(303), - [anon_sym_DASH] = ACTIONS(301), - [anon_sym_PLUS] = ACTIONS(301), - [anon_sym_LBRACK] = ACTIONS(586), - [anon_sym_LBRACE] = ACTIONS(293), + [anon_sym_DASH] = ACTIONS(49), + [anon_sym_PLUS] = ACTIONS(49), + [anon_sym_LBRACK] = ACTIONS(579), + [anon_sym_LBRACE] = ACTIONS(53), [anon_sym_STAR_STAR] = ACTIONS(303), - [anon_sym_EQ] = ACTIONS(634), + [anon_sym_EQ] = ACTIONS(272), [anon_sym_exec] = ACTIONS(573), [anon_sym_type] = ACTIONS(573), [anon_sym_AT] = ACTIONS(303), @@ -23968,7 +24007,83 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_AMP] = ACTIONS(303), [anon_sym_CARET] = ACTIONS(303), [anon_sym_LT_LT] = ACTIONS(303), - [anon_sym_TILDE] = ACTIONS(301), + [anon_sym_TILDE] = ACTIONS(49), + [anon_sym_LT] = ACTIONS(272), + [anon_sym_LT_EQ] = ACTIONS(303), + [anon_sym_EQ_EQ] = ACTIONS(303), + [anon_sym_BANG_EQ] = ACTIONS(303), + [anon_sym_GT_EQ] = ACTIONS(303), + [anon_sym_GT] = ACTIONS(272), + [anon_sym_LT_GT] = ACTIONS(303), + [anon_sym_is] = ACTIONS(272), + [sym_ellipsis] = ACTIONS(77), + [sym_integer] = ACTIONS(79), + [sym_float] = ACTIONS(77), + [anon_sym_await] = ACTIONS(581), + [sym_true] = ACTIONS(79), + [sym_false] = ACTIONS(79), + [sym_none] = ACTIONS(79), + [sym_comment] = ACTIONS(3), + [anon_sym_SEMI] = ACTIONS(303), + [sym__newline] = ACTIONS(303), + [sym__string_start] = ACTIONS(83), + [sym__template_string_start] = ACTIONS(85), + }, + [STATE(151)] = { + [sym_primary_expression] = STATE(808), + [sym_binary_operator] = STATE(720), + [sym_unary_operator] = STATE(720), + [sym_attribute] = STATE(720), + [sym_subscript] = STATE(720), + [sym_call] = STATE(720), + [sym_list] = STATE(720), + [sym_set] = STATE(720), + [sym_tuple] = STATE(720), + [sym_dictionary] = STATE(720), + [sym_list_comprehension] = STATE(720), + [sym_dictionary_comprehension] = STATE(720), + [sym_set_comprehension] = STATE(720), + [sym_generator_expression] = STATE(720), + [sym_parenthesized_expression] = STATE(720), + [sym_concatenated_string] = STATE(720), + [sym_string] = STATE(694), + [sym_concatenated_template_string] = STATE(720), + [sym_template_string] = STATE(698), + [sym_await] = STATE(720), + [sym_identifier] = ACTIONS(311), + [anon_sym_lazy] = ACTIONS(583), + [anon_sym_DOT] = ACTIONS(272), + [anon_sym_LPAREN] = ACTIONS(636), + [anon_sym_COMMA] = ACTIONS(303), + [anon_sym_STAR] = ACTIONS(272), + [anon_sym_print] = ACTIONS(583), + [anon_sym_GT_GT] = ACTIONS(303), + [anon_sym_if] = ACTIONS(272), + [anon_sym_COLON] = ACTIONS(303), + [anon_sym_async] = ACTIONS(583), + [anon_sym_for] = ACTIONS(272), + [anon_sym_in] = ACTIONS(272), + [anon_sym_match] = ACTIONS(583), + [anon_sym_PIPE] = ACTIONS(303), + [anon_sym_DASH] = ACTIONS(640), + [anon_sym_PLUS] = ACTIONS(640), + [anon_sym_LBRACK] = ACTIONS(642), + [anon_sym_LBRACE] = ACTIONS(293), + [anon_sym_RBRACE] = ACTIONS(303), + [anon_sym_STAR_STAR] = ACTIONS(303), + [anon_sym_exec] = ACTIONS(583), + [anon_sym_type] = ACTIONS(583), + [anon_sym_AT] = ACTIONS(303), + [anon_sym_not] = ACTIONS(272), + [anon_sym_and] = ACTIONS(272), + [anon_sym_or] = ACTIONS(272), + [anon_sym_SLASH] = ACTIONS(272), + [anon_sym_PERCENT] = ACTIONS(303), + [anon_sym_SLASH_SLASH] = ACTIONS(303), + [anon_sym_AMP] = ACTIONS(303), + [anon_sym_CARET] = ACTIONS(303), + [anon_sym_LT_LT] = ACTIONS(303), + [anon_sym_TILDE] = ACTIONS(640), [anon_sym_LT] = ACTIONS(272), [anon_sym_LT_EQ] = ACTIONS(303), [anon_sym_EQ_EQ] = ACTIONS(303), @@ -23980,7 +24095,7 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_ellipsis] = ACTIONS(309), [sym_integer] = ACTIONS(311), [sym_float] = ACTIONS(309), - [anon_sym_await] = ACTIONS(590), + [anon_sym_await] = ACTIONS(644), [sym_true] = ACTIONS(311), [sym_false] = ACTIONS(311), [sym_none] = ACTIONS(311), @@ -23988,50 +24103,50 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(315), [sym__template_string_start] = ACTIONS(317), }, - [STATE(151)] = { - [sym_primary_expression] = STATE(835), - [sym_binary_operator] = STATE(970), - [sym_unary_operator] = STATE(970), - [sym_attribute] = STATE(970), - [sym_subscript] = STATE(970), - [sym_call] = STATE(970), - [sym_list] = STATE(970), - [sym_set] = STATE(970), - [sym_tuple] = STATE(970), - [sym_dictionary] = STATE(970), - [sym_list_comprehension] = STATE(970), - [sym_dictionary_comprehension] = STATE(970), - [sym_set_comprehension] = STATE(970), - [sym_generator_expression] = STATE(970), - [sym_parenthesized_expression] = STATE(970), - [sym_concatenated_string] = STATE(970), - [sym_string] = STATE(793), - [sym_concatenated_template_string] = STATE(970), - [sym_template_string] = STATE(794), - [sym_await] = STATE(970), - [sym_identifier] = ACTIONS(636), - [anon_sym_lazy] = ACTIONS(638), + [STATE(152)] = { + [sym_primary_expression] = STATE(839), + [sym_binary_operator] = STATE(985), + [sym_unary_operator] = STATE(985), + [sym_attribute] = STATE(985), + [sym_subscript] = STATE(985), + [sym_call] = STATE(985), + [sym_list] = STATE(985), + [sym_set] = STATE(985), + [sym_tuple] = STATE(985), + [sym_dictionary] = STATE(985), + [sym_list_comprehension] = STATE(985), + [sym_dictionary_comprehension] = STATE(985), + [sym_set_comprehension] = STATE(985), + [sym_generator_expression] = STATE(985), + [sym_parenthesized_expression] = STATE(985), + [sym_concatenated_string] = STATE(985), + [sym_string] = STATE(790), + [sym_concatenated_template_string] = STATE(985), + [sym_template_string] = STATE(791), + [sym_await] = STATE(985), + [sym_identifier] = ACTIONS(646), + [anon_sym_lazy] = ACTIONS(648), [anon_sym_DOT] = ACTIONS(272), - [anon_sym_LPAREN] = ACTIONS(640), + [anon_sym_LPAREN] = ACTIONS(650), [anon_sym_RPAREN] = ACTIONS(303), [anon_sym_COMMA] = ACTIONS(303), [anon_sym_as] = ACTIONS(272), [anon_sym_STAR] = ACTIONS(272), - [anon_sym_print] = ACTIONS(638), + [anon_sym_print] = ACTIONS(648), [anon_sym_GT_GT] = ACTIONS(303), [anon_sym_if] = ACTIONS(272), [anon_sym_COLON] = ACTIONS(303), - [anon_sym_async] = ACTIONS(638), + [anon_sym_async] = ACTIONS(648), [anon_sym_in] = ACTIONS(272), - [anon_sym_match] = ACTIONS(638), + [anon_sym_match] = ACTIONS(648), [anon_sym_PIPE] = ACTIONS(303), - [anon_sym_DASH] = ACTIONS(644), - [anon_sym_PLUS] = ACTIONS(644), - [anon_sym_LBRACK] = ACTIONS(646), - [anon_sym_LBRACE] = ACTIONS(648), + [anon_sym_DASH] = ACTIONS(654), + [anon_sym_PLUS] = ACTIONS(654), + [anon_sym_LBRACK] = ACTIONS(656), + [anon_sym_LBRACE] = ACTIONS(658), [anon_sym_STAR_STAR] = ACTIONS(303), - [anon_sym_exec] = ACTIONS(638), - [anon_sym_type] = ACTIONS(638), + [anon_sym_exec] = ACTIONS(648), + [anon_sym_type] = ACTIONS(648), [anon_sym_AT] = ACTIONS(303), [anon_sym_not] = ACTIONS(272), [anon_sym_and] = ACTIONS(272), @@ -24042,7 +24157,7 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_AMP] = ACTIONS(303), [anon_sym_CARET] = ACTIONS(303), [anon_sym_LT_LT] = ACTIONS(303), - [anon_sym_TILDE] = ACTIONS(644), + [anon_sym_TILDE] = ACTIONS(654), [anon_sym_LT] = ACTIONS(272), [anon_sym_LT_EQ] = ACTIONS(303), [anon_sym_EQ_EQ] = ACTIONS(303), @@ -24051,61 +24166,61 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_GT] = ACTIONS(272), [anon_sym_LT_GT] = ACTIONS(303), [anon_sym_is] = ACTIONS(272), - [sym_ellipsis] = ACTIONS(650), - [sym_integer] = ACTIONS(636), - [sym_float] = ACTIONS(650), - [anon_sym_await] = ACTIONS(652), - [sym_true] = ACTIONS(636), - [sym_false] = ACTIONS(636), - [sym_none] = ACTIONS(636), + [sym_ellipsis] = ACTIONS(660), + [sym_integer] = ACTIONS(646), + [sym_float] = ACTIONS(660), + [anon_sym_await] = ACTIONS(662), + [sym_true] = ACTIONS(646), + [sym_false] = ACTIONS(646), + [sym_none] = ACTIONS(646), [sym_comment] = ACTIONS(3), - [sym__string_start] = ACTIONS(654), - [sym__template_string_start] = ACTIONS(656), + [sym__string_start] = ACTIONS(664), + [sym__template_string_start] = ACTIONS(666), }, - [STATE(152)] = { - [sym_primary_expression] = STATE(784), - [sym_binary_operator] = STATE(725), - [sym_unary_operator] = STATE(725), - [sym_attribute] = STATE(725), - [sym_subscript] = STATE(725), - [sym_call] = STATE(725), - [sym_list] = STATE(725), - [sym_set] = STATE(725), - [sym_tuple] = STATE(725), - [sym_dictionary] = STATE(725), - [sym_list_comprehension] = STATE(725), - [sym_dictionary_comprehension] = STATE(725), - [sym_set_comprehension] = STATE(725), - [sym_generator_expression] = STATE(725), - [sym_parenthesized_expression] = STATE(725), - [sym_concatenated_string] = STATE(725), - [sym_string] = STATE(645), - [sym_concatenated_template_string] = STATE(725), - [sym_template_string] = STATE(658), - [sym_await] = STATE(725), + [STATE(153)] = { + [sym_primary_expression] = STATE(766), + [sym_binary_operator] = STATE(720), + [sym_unary_operator] = STATE(720), + [sym_attribute] = STATE(720), + [sym_subscript] = STATE(720), + [sym_call] = STATE(720), + [sym_list] = STATE(720), + [sym_set] = STATE(720), + [sym_tuple] = STATE(720), + [sym_dictionary] = STATE(720), + [sym_list_comprehension] = STATE(720), + [sym_dictionary_comprehension] = STATE(720), + [sym_set_comprehension] = STATE(720), + [sym_generator_expression] = STATE(720), + [sym_parenthesized_expression] = STATE(720), + [sym_concatenated_string] = STATE(720), + [sym_string] = STATE(694), + [sym_concatenated_template_string] = STATE(720), + [sym_template_string] = STATE(698), + [sym_await] = STATE(720), [sym_identifier] = ACTIONS(311), - [anon_sym_lazy] = ACTIONS(573), + [anon_sym_lazy] = ACTIONS(583), [anon_sym_DOT] = ACTIONS(272), - [anon_sym_LPAREN] = ACTIONS(658), + [anon_sym_LPAREN] = ACTIONS(585), + [anon_sym_RPAREN] = ACTIONS(303), [anon_sym_COMMA] = ACTIONS(303), [anon_sym_STAR] = ACTIONS(272), - [anon_sym_print] = ACTIONS(573), + [anon_sym_print] = ACTIONS(583), [anon_sym_GT_GT] = ACTIONS(303), + [anon_sym_COLON_EQ] = ACTIONS(590), [anon_sym_if] = ACTIONS(272), - [anon_sym_COLON] = ACTIONS(303), - [anon_sym_async] = ACTIONS(573), - [anon_sym_for] = ACTIONS(272), + [anon_sym_async] = ACTIONS(583), [anon_sym_in] = ACTIONS(272), - [anon_sym_match] = ACTIONS(573), + [anon_sym_match] = ACTIONS(583), [anon_sym_PIPE] = ACTIONS(303), - [anon_sym_DASH] = ACTIONS(662), - [anon_sym_PLUS] = ACTIONS(662), - [anon_sym_LBRACK] = ACTIONS(664), + [anon_sym_DASH] = ACTIONS(301), + [anon_sym_PLUS] = ACTIONS(301), + [anon_sym_LBRACK] = ACTIONS(596), [anon_sym_LBRACE] = ACTIONS(293), - [anon_sym_RBRACE] = ACTIONS(303), [anon_sym_STAR_STAR] = ACTIONS(303), - [anon_sym_exec] = ACTIONS(573), - [anon_sym_type] = ACTIONS(573), + [anon_sym_EQ] = ACTIONS(634), + [anon_sym_exec] = ACTIONS(583), + [anon_sym_type] = ACTIONS(583), [anon_sym_AT] = ACTIONS(303), [anon_sym_not] = ACTIONS(272), [anon_sym_and] = ACTIONS(272), @@ -24116,7 +24231,7 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_AMP] = ACTIONS(303), [anon_sym_CARET] = ACTIONS(303), [anon_sym_LT_LT] = ACTIONS(303), - [anon_sym_TILDE] = ACTIONS(662), + [anon_sym_TILDE] = ACTIONS(301), [anon_sym_LT] = ACTIONS(272), [anon_sym_LT_EQ] = ACTIONS(303), [anon_sym_EQ_EQ] = ACTIONS(303), @@ -24128,7 +24243,7 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_ellipsis] = ACTIONS(309), [sym_integer] = ACTIONS(311), [sym_float] = ACTIONS(309), - [anon_sym_await] = ACTIONS(666), + [anon_sym_await] = ACTIONS(600), [sym_true] = ACTIONS(311), [sym_false] = ACTIONS(311), [sym_none] = ACTIONS(311), @@ -24136,46 +24251,46 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(315), [sym__template_string_start] = ACTIONS(317), }, - [STATE(153)] = { - [sym_named_expression] = STATE(1156), - [sym_list_splat] = STATE(1520), - [sym_dictionary_splat] = STATE(1520), - [sym_expression_list] = STATE(1570), - [sym_pattern] = STATE(1017), - [sym_tuple_pattern] = STATE(1001), - [sym_list_pattern] = STATE(1001), - [sym_list_splat_pattern] = STATE(1001), - [sym_expression] = STATE(1179), - [sym_primary_expression] = STATE(765), - [sym_not_operator] = STATE(1156), - [sym_boolean_operator] = STATE(1156), - [sym_binary_operator] = STATE(920), - [sym_unary_operator] = STATE(920), - [sym_comparison_operator] = STATE(1156), - [sym_lambda] = STATE(1156), - [sym_assignment] = STATE(1570), - [sym_augmented_assignment] = STATE(1570), - [sym_pattern_list] = STATE(1026), - [sym__right_hand_side] = STATE(1570), - [sym_yield] = STATE(1570), - [sym_attribute] = STATE(582), - [sym_subscript] = STATE(582), - [sym_call] = STATE(920), - [sym_list] = STATE(920), - [sym_set] = STATE(920), - [sym_tuple] = STATE(920), - [sym_dictionary] = STATE(920), - [sym_list_comprehension] = STATE(920), - [sym_dictionary_comprehension] = STATE(920), - [sym_set_comprehension] = STATE(920), - [sym_generator_expression] = STATE(920), - [sym_parenthesized_expression] = STATE(920), - [sym_conditional_expression] = STATE(1156), - [sym_concatenated_string] = STATE(920), - [sym_string] = STATE(775), - [sym_concatenated_template_string] = STATE(920), - [sym_template_string] = STATE(769), - [sym_await] = STATE(920), + [STATE(154)] = { + [sym_named_expression] = STATE(1126), + [sym_list_splat] = STATE(1590), + [sym_dictionary_splat] = STATE(1590), + [sym_expression_list] = STATE(1586), + [sym_pattern] = STATE(1020), + [sym_tuple_pattern] = STATE(1005), + [sym_list_pattern] = STATE(1005), + [sym_list_splat_pattern] = STATE(1005), + [sym_expression] = STATE(1181), + [sym_primary_expression] = STATE(773), + [sym_not_operator] = STATE(1126), + [sym_boolean_operator] = STATE(1126), + [sym_binary_operator] = STATE(950), + [sym_unary_operator] = STATE(950), + [sym_comparison_operator] = STATE(1126), + [sym_lambda] = STATE(1126), + [sym_assignment] = STATE(1586), + [sym_augmented_assignment] = STATE(1586), + [sym_pattern_list] = STATE(1030), + [sym__right_hand_side] = STATE(1586), + [sym_yield] = STATE(1586), + [sym_attribute] = STATE(614), + [sym_subscript] = STATE(614), + [sym_call] = STATE(950), + [sym_list] = STATE(950), + [sym_set] = STATE(950), + [sym_tuple] = STATE(950), + [sym_dictionary] = STATE(950), + [sym_list_comprehension] = STATE(950), + [sym_dictionary_comprehension] = STATE(950), + [sym_set_comprehension] = STATE(950), + [sym_generator_expression] = STATE(950), + [sym_parenthesized_expression] = STATE(950), + [sym_conditional_expression] = STATE(1126), + [sym_concatenated_string] = STATE(950), + [sym_string] = STATE(779), + [sym_concatenated_template_string] = STATE(950), + [sym_template_string] = STATE(772), + [sym_await] = STATE(950), [sym_identifier] = ACTIONS(7), [anon_sym_lazy] = ACTIONS(319), [anon_sym_LPAREN] = ACTIONS(15), @@ -24205,46 +24320,46 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(83), [sym__template_string_start] = ACTIONS(85), }, - [STATE(154)] = { - [sym_named_expression] = STATE(1156), - [sym_list_splat] = STATE(1520), - [sym_dictionary_splat] = STATE(1520), - [sym_expression_list] = STATE(1516), - [sym_pattern] = STATE(1017), - [sym_tuple_pattern] = STATE(1001), - [sym_list_pattern] = STATE(1001), - [sym_list_splat_pattern] = STATE(1001), - [sym_expression] = STATE(1179), - [sym_primary_expression] = STATE(765), - [sym_not_operator] = STATE(1156), - [sym_boolean_operator] = STATE(1156), - [sym_binary_operator] = STATE(920), - [sym_unary_operator] = STATE(920), - [sym_comparison_operator] = STATE(1156), - [sym_lambda] = STATE(1156), - [sym_assignment] = STATE(1516), - [sym_augmented_assignment] = STATE(1516), - [sym_pattern_list] = STATE(1026), - [sym__right_hand_side] = STATE(1516), - [sym_yield] = STATE(1516), - [sym_attribute] = STATE(582), - [sym_subscript] = STATE(582), - [sym_call] = STATE(920), - [sym_list] = STATE(920), - [sym_set] = STATE(920), - [sym_tuple] = STATE(920), - [sym_dictionary] = STATE(920), - [sym_list_comprehension] = STATE(920), - [sym_dictionary_comprehension] = STATE(920), - [sym_set_comprehension] = STATE(920), - [sym_generator_expression] = STATE(920), - [sym_parenthesized_expression] = STATE(920), - [sym_conditional_expression] = STATE(1156), - [sym_concatenated_string] = STATE(920), - [sym_string] = STATE(775), - [sym_concatenated_template_string] = STATE(920), - [sym_template_string] = STATE(769), - [sym_await] = STATE(920), + [STATE(155)] = { + [sym_named_expression] = STATE(1126), + [sym_list_splat] = STATE(1590), + [sym_dictionary_splat] = STATE(1590), + [sym_expression_list] = STATE(1608), + [sym_pattern] = STATE(1020), + [sym_tuple_pattern] = STATE(1005), + [sym_list_pattern] = STATE(1005), + [sym_list_splat_pattern] = STATE(1005), + [sym_expression] = STATE(1181), + [sym_primary_expression] = STATE(773), + [sym_not_operator] = STATE(1126), + [sym_boolean_operator] = STATE(1126), + [sym_binary_operator] = STATE(950), + [sym_unary_operator] = STATE(950), + [sym_comparison_operator] = STATE(1126), + [sym_lambda] = STATE(1126), + [sym_assignment] = STATE(1608), + [sym_augmented_assignment] = STATE(1608), + [sym_pattern_list] = STATE(1030), + [sym__right_hand_side] = STATE(1608), + [sym_yield] = STATE(1608), + [sym_attribute] = STATE(614), + [sym_subscript] = STATE(614), + [sym_call] = STATE(950), + [sym_list] = STATE(950), + [sym_set] = STATE(950), + [sym_tuple] = STATE(950), + [sym_dictionary] = STATE(950), + [sym_list_comprehension] = STATE(950), + [sym_dictionary_comprehension] = STATE(950), + [sym_set_comprehension] = STATE(950), + [sym_generator_expression] = STATE(950), + [sym_parenthesized_expression] = STATE(950), + [sym_conditional_expression] = STATE(1126), + [sym_concatenated_string] = STATE(950), + [sym_string] = STATE(779), + [sym_concatenated_template_string] = STATE(950), + [sym_template_string] = STATE(772), + [sym_await] = STATE(950), [sym_identifier] = ACTIONS(7), [anon_sym_lazy] = ACTIONS(319), [anon_sym_LPAREN] = ACTIONS(15), @@ -24274,46 +24389,46 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__string_start] = ACTIONS(83), [sym__template_string_start] = ACTIONS(85), }, - [STATE(155)] = { - [sym_named_expression] = STATE(1156), - [sym_list_splat] = STATE(1520), - [sym_dictionary_splat] = STATE(1520), - [sym_expression_list] = STATE(1526), - [sym_pattern] = STATE(1017), - [sym_tuple_pattern] = STATE(1001), - [sym_list_pattern] = STATE(1001), - [sym_list_splat_pattern] = STATE(1001), - [sym_expression] = STATE(1179), - [sym_primary_expression] = STATE(765), - [sym_not_operator] = STATE(1156), - [sym_boolean_operator] = STATE(1156), - [sym_binary_operator] = STATE(920), - [sym_unary_operator] = STATE(920), - [sym_comparison_operator] = STATE(1156), - [sym_lambda] = STATE(1156), - [sym_assignment] = STATE(1526), - [sym_augmented_assignment] = STATE(1526), - [sym_pattern_list] = STATE(1026), - [sym__right_hand_side] = STATE(1526), - [sym_yield] = STATE(1526), - [sym_attribute] = STATE(582), - [sym_subscript] = STATE(582), - [sym_call] = STATE(920), - [sym_list] = STATE(920), - [sym_set] = STATE(920), - [sym_tuple] = STATE(920), - [sym_dictionary] = STATE(920), - [sym_list_comprehension] = STATE(920), - [sym_dictionary_comprehension] = STATE(920), - [sym_set_comprehension] = STATE(920), - [sym_generator_expression] = STATE(920), - [sym_parenthesized_expression] = STATE(920), - [sym_conditional_expression] = STATE(1156), - [sym_concatenated_string] = STATE(920), - [sym_string] = STATE(775), - [sym_concatenated_template_string] = STATE(920), - [sym_template_string] = STATE(769), - [sym_await] = STATE(920), + [STATE(156)] = { + [sym_named_expression] = STATE(1126), + [sym_list_splat] = STATE(1590), + [sym_dictionary_splat] = STATE(1590), + [sym_expression_list] = STATE(1610), + [sym_pattern] = STATE(1020), + [sym_tuple_pattern] = STATE(1005), + [sym_list_pattern] = STATE(1005), + [sym_list_splat_pattern] = STATE(1005), + [sym_expression] = STATE(1181), + [sym_primary_expression] = STATE(773), + [sym_not_operator] = STATE(1126), + [sym_boolean_operator] = STATE(1126), + [sym_binary_operator] = STATE(950), + [sym_unary_operator] = STATE(950), + [sym_comparison_operator] = STATE(1126), + [sym_lambda] = STATE(1126), + [sym_assignment] = STATE(1610), + [sym_augmented_assignment] = STATE(1610), + [sym_pattern_list] = STATE(1030), + [sym__right_hand_side] = STATE(1610), + [sym_yield] = STATE(1610), + [sym_attribute] = STATE(614), + [sym_subscript] = STATE(614), + [sym_call] = STATE(950), + [sym_list] = STATE(950), + [sym_set] = STATE(950), + [sym_tuple] = STATE(950), + [sym_dictionary] = STATE(950), + [sym_list_comprehension] = STATE(950), + [sym_dictionary_comprehension] = STATE(950), + [sym_set_comprehension] = STATE(950), + [sym_generator_expression] = STATE(950), + [sym_parenthesized_expression] = STATE(950), + [sym_conditional_expression] = STATE(1126), + [sym_concatenated_string] = STATE(950), + [sym_string] = STATE(779), + [sym_concatenated_template_string] = STATE(950), + [sym_template_string] = STATE(772), + [sym_await] = STATE(950), [sym_identifier] = ACTIONS(7), [anon_sym_lazy] = ACTIONS(319), [anon_sym_LPAREN] = ACTIONS(15), @@ -24346,7 +24461,7 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { }; static const uint16_t ts_small_parse_table[] = { - [0] = 29, + [0] = 31, ACTIONS(3), 1, sym_comment, ACTIONS(293), 1, @@ -24360,11 +24475,11 @@ static const uint16_t ts_small_parse_table[] = { ACTIONS(672), 1, anon_sym_LPAREN, ACTIONS(674), 1, - anon_sym_STAR, + anon_sym_RPAREN, ACTIONS(676), 1, - anon_sym_LBRACK, + anon_sym_STAR, ACTIONS(678), 1, - anon_sym_RBRACK, + anon_sym_LBRACK, ACTIONS(680), 1, anon_sym_not, ACTIONS(682), 1, @@ -24373,38 +24488,40 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_yield, ACTIONS(686), 1, anon_sym_await, - STATE(645), 1, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(726), 1, + STATE(705), 1, sym_primary_expression, - STATE(1084), 1, + STATE(1070), 1, sym_expression, - STATE(1311), 1, + STATE(1217), 1, + sym_list_splat, + STATE(1294), 1, + sym_parenthesized_list_splat, + STATE(1355), 1, sym_pattern, - STATE(1675), 1, - sym__patterns, - STATE(1693), 1, + STATE(1461), 1, + sym_yield, + STATE(1721), 1, sym__collection_elements, + STATE(1742), 1, + sym__patterns, ACTIONS(309), 2, sym_ellipsis, sym_float, - STATE(872), 2, + STATE(917), 2, sym_attribute, sym_subscript, ACTIONS(606), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1001), 3, + STATE(1005), 3, sym_tuple_pattern, sym_list_pattern, sym_list_splat_pattern, - STATE(1290), 3, - sym_list_splat, - sym_parenthesized_list_splat, - sym_yield, ACTIONS(311), 4, sym_integer, sym_true, @@ -24417,14 +24534,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(725), 15, + STATE(720), 15, sym_binary_operator, sym_unary_operator, sym_call, @@ -24440,7 +24557,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [123] = 30, + [127] = 31, ACTIONS(3), 1, sym_comment, ACTIONS(293), 1, @@ -24453,9 +24570,9 @@ static const uint16_t ts_small_parse_table[] = { sym_identifier, ACTIONS(672), 1, anon_sym_LPAREN, - ACTIONS(674), 1, - anon_sym_STAR, ACTIONS(676), 1, + anon_sym_STAR, + ACTIONS(678), 1, anon_sym_LBRACK, ACTIONS(680), 1, anon_sym_not, @@ -24467,36 +24584,37 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_await, ACTIONS(688), 1, anon_sym_RPAREN, - STATE(645), 1, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(726), 1, + STATE(705), 1, sym_primary_expression, - STATE(1068), 1, + STATE(1086), 1, sym_expression, - STATE(1311), 1, + STATE(1202), 1, + sym_list_splat, + STATE(1294), 1, + sym_parenthesized_list_splat, + STATE(1355), 1, sym_pattern, - STATE(1479), 1, + STATE(1432), 1, sym_yield, - STATE(1689), 1, - sym__patterns, - STATE(1692), 1, + STATE(1686), 1, sym__collection_elements, + STATE(1742), 1, + sym__patterns, ACTIONS(309), 2, sym_ellipsis, sym_float, - STATE(872), 2, + STATE(917), 2, sym_attribute, sym_subscript, - STATE(1290), 2, - sym_list_splat, - sym_parenthesized_list_splat, ACTIONS(606), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1001), 3, + STATE(1005), 3, sym_tuple_pattern, sym_list_pattern, sym_list_splat_pattern, @@ -24512,14 +24630,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(725), 15, + STATE(720), 15, sym_binary_operator, sym_unary_operator, sym_call, @@ -24535,7 +24653,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [248] = 31, + [254] = 30, ACTIONS(3), 1, sym_comment, ACTIONS(293), 1, @@ -24548,9 +24666,9 @@ static const uint16_t ts_small_parse_table[] = { sym_identifier, ACTIONS(672), 1, anon_sym_LPAREN, - ACTIONS(674), 1, - anon_sym_STAR, ACTIONS(676), 1, + anon_sym_STAR, + ACTIONS(678), 1, anon_sym_LBRACK, ACTIONS(680), 1, anon_sym_not, @@ -24561,38 +24679,37 @@ static const uint16_t ts_small_parse_table[] = { ACTIONS(686), 1, anon_sym_await, ACTIONS(690), 1, - anon_sym_RPAREN, - STATE(645), 1, + anon_sym_RBRACK, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(726), 1, + STATE(705), 1, sym_primary_expression, - STATE(1083), 1, + STATE(1080), 1, sym_expression, - STATE(1311), 1, - sym_pattern, - STATE(1385), 1, + STATE(1204), 1, sym_list_splat, - STATE(1390), 1, - sym_parenthesized_list_splat, - STATE(1395), 1, - sym_yield, - STATE(1680), 1, + STATE(1355), 1, + sym_pattern, + STATE(1657), 1, sym__collection_elements, - STATE(1689), 1, + STATE(1690), 1, sym__patterns, ACTIONS(309), 2, sym_ellipsis, sym_float, - STATE(872), 2, + STATE(917), 2, sym_attribute, sym_subscript, + STATE(1294), 2, + sym_parenthesized_list_splat, + sym_yield, ACTIONS(606), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1001), 3, + STATE(1005), 3, sym_tuple_pattern, sym_list_pattern, sym_list_splat_pattern, @@ -24608,14 +24725,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(725), 15, + STATE(720), 15, sym_binary_operator, sym_unary_operator, sym_call, @@ -24631,47 +24748,63 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [375] = 23, + [379] = 30, ACTIONS(3), 1, sym_comment, ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(301), 1, - anon_sym_TILDE, ACTIONS(315), 1, sym__string_start, ACTIONS(317), 1, sym__template_string_start, - ACTIONS(692), 1, + ACTIONS(668), 1, sym_identifier, - ACTIONS(696), 1, + ACTIONS(672), 1, anon_sym_LPAREN, - ACTIONS(698), 1, + ACTIONS(676), 1, anon_sym_STAR, - ACTIONS(702), 1, - anon_sym_in, - ACTIONS(704), 1, + ACTIONS(678), 1, anon_sym_LBRACK, - ACTIONS(706), 1, + ACTIONS(680), 1, + anon_sym_not, + ACTIONS(682), 1, + anon_sym_lambda, + ACTIONS(684), 1, + anon_sym_yield, + ACTIONS(686), 1, anon_sym_await, - STATE(645), 1, + ACTIONS(692), 1, + anon_sym_RBRACK, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(998), 1, - sym_pattern, - STATE(1013), 1, + STATE(705), 1, sym_primary_expression, + STATE(1095), 1, + sym_expression, + STATE(1218), 1, + sym_list_splat, + STATE(1355), 1, + sym_pattern, + STATE(1690), 1, + sym__patterns, + STATE(1692), 1, + sym__collection_elements, ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(584), 2, - anon_sym_DASH, - anon_sym_PLUS, - STATE(848), 2, + STATE(917), 2, sym_attribute, sym_subscript, - STATE(1001), 3, + STATE(1294), 2, + sym_parenthesized_list_splat, + sym_yield, + ACTIONS(606), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + STATE(1005), 3, sym_tuple_pattern, sym_list_pattern, sym_list_splat_pattern, @@ -24680,30 +24813,21 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - ACTIONS(694), 6, + ACTIONS(670), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - ACTIONS(700), 15, - anon_sym_COLON, - anon_sym_EQ, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_STAR_EQ, - anon_sym_SLASH_EQ, - anon_sym_AT_EQ, - anon_sym_SLASH_SLASH_EQ, - anon_sym_PERCENT_EQ, - anon_sym_STAR_STAR_EQ, - anon_sym_GT_GT_EQ, - anon_sym_LT_LT_EQ, - anon_sym_AMP_EQ, - anon_sym_CARET_EQ, - anon_sym_PIPE_EQ, - STATE(725), 15, + STATE(1037), 6, + sym_named_expression, + sym_not_operator, + sym_boolean_operator, + sym_comparison_operator, + sym_lambda, + sym_conditional_expression, + STATE(720), 15, sym_binary_operator, sym_unary_operator, sym_call, @@ -24719,7 +24843,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [486] = 23, + [504] = 23, ACTIONS(3), 1, sym_comment, ACTIONS(293), 1, @@ -24730,36 +24854,124 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(317), 1, sym__template_string_start, - ACTIONS(692), 1, + ACTIONS(694), 1, sym_identifier, - ACTIONS(696), 1, - anon_sym_LPAREN, ACTIONS(698), 1, + anon_sym_LPAREN, + ACTIONS(700), 1, anon_sym_STAR, ACTIONS(704), 1, + anon_sym_in, + ACTIONS(706), 1, anon_sym_LBRACK, + ACTIONS(708), 1, + anon_sym_await, + STATE(694), 1, + sym_string, + STATE(698), 1, + sym_template_string, + STATE(1002), 1, + sym_pattern, + STATE(1017), 1, + sym_primary_expression, + ACTIONS(309), 2, + sym_ellipsis, + sym_float, + ACTIONS(594), 2, + anon_sym_DASH, + anon_sym_PLUS, + STATE(842), 2, + sym_attribute, + sym_subscript, + STATE(1005), 3, + sym_tuple_pattern, + sym_list_pattern, + sym_list_splat_pattern, + ACTIONS(311), 4, + sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(696), 6, + anon_sym_lazy, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + ACTIONS(702), 15, + anon_sym_COLON, + anon_sym_EQ, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_AT_EQ, + anon_sym_SLASH_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_STAR_STAR_EQ, + anon_sym_GT_GT_EQ, + anon_sym_LT_LT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + STATE(720), 15, + sym_binary_operator, + sym_unary_operator, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [615] = 23, + ACTIONS(3), 1, + sym_comment, + ACTIONS(293), 1, + anon_sym_LBRACE, + ACTIONS(301), 1, + anon_sym_TILDE, + ACTIONS(315), 1, + sym__string_start, + ACTIONS(317), 1, + sym__template_string_start, + ACTIONS(694), 1, + sym_identifier, + ACTIONS(698), 1, + anon_sym_LPAREN, + ACTIONS(700), 1, + anon_sym_STAR, ACTIONS(706), 1, + anon_sym_LBRACK, + ACTIONS(708), 1, anon_sym_await, - ACTIONS(710), 1, + ACTIONS(712), 1, anon_sym_in, - STATE(645), 1, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(998), 1, + STATE(1002), 1, sym_pattern, - STATE(1013), 1, + STATE(1017), 1, sym_primary_expression, ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(584), 2, + ACTIONS(594), 2, anon_sym_DASH, anon_sym_PLUS, - STATE(848), 2, + STATE(842), 2, sym_attribute, sym_subscript, - STATE(1001), 3, + STATE(1005), 3, sym_tuple_pattern, sym_list_pattern, sym_list_splat_pattern, @@ -24768,14 +24980,14 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - ACTIONS(694), 6, + ACTIONS(696), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - ACTIONS(708), 15, + ACTIONS(710), 15, anon_sym_COLON, anon_sym_EQ, anon_sym_PLUS_EQ, @@ -24791,7 +25003,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, - STATE(725), 15, + STATE(720), 15, sym_binary_operator, sym_unary_operator, sym_call, @@ -24807,7 +25019,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [597] = 29, + [726] = 30, ACTIONS(3), 1, sym_comment, ACTIONS(293), 1, @@ -24820,9 +25032,9 @@ static const uint16_t ts_small_parse_table[] = { sym_identifier, ACTIONS(672), 1, anon_sym_LPAREN, - ACTIONS(674), 1, - anon_sym_STAR, ACTIONS(676), 1, + anon_sym_STAR, + ACTIONS(678), 1, anon_sym_LBRACK, ACTIONS(680), 1, anon_sym_not, @@ -24832,40 +25044,41 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_yield, ACTIONS(686), 1, anon_sym_await, - ACTIONS(712), 1, + ACTIONS(714), 1, anon_sym_RBRACK, - STATE(645), 1, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(726), 1, + STATE(705), 1, sym_primary_expression, - STATE(1079), 1, + STATE(1080), 1, sym_expression, - STATE(1311), 1, + STATE(1204), 1, + sym_list_splat, + STATE(1355), 1, sym_pattern, - STATE(1675), 1, - sym__patterns, - STATE(1716), 1, + STATE(1657), 1, sym__collection_elements, + STATE(1690), 1, + sym__patterns, ACTIONS(309), 2, sym_ellipsis, sym_float, - STATE(872), 2, + STATE(917), 2, sym_attribute, sym_subscript, + STATE(1294), 2, + sym_parenthesized_list_splat, + sym_yield, ACTIONS(606), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1001), 3, + STATE(1005), 3, sym_tuple_pattern, sym_list_pattern, sym_list_splat_pattern, - STATE(1290), 3, - sym_list_splat, - sym_parenthesized_list_splat, - sym_yield, ACTIONS(311), 4, sym_integer, sym_true, @@ -24878,14 +25091,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(725), 15, + STATE(720), 15, sym_binary_operator, sym_unary_operator, sym_call, @@ -24901,7 +25114,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [720] = 30, + [851] = 31, ACTIONS(3), 1, sym_comment, ACTIONS(293), 1, @@ -24914,9 +25127,9 @@ static const uint16_t ts_small_parse_table[] = { sym_identifier, ACTIONS(672), 1, anon_sym_LPAREN, - ACTIONS(674), 1, - anon_sym_STAR, ACTIONS(676), 1, + anon_sym_STAR, + ACTIONS(678), 1, anon_sym_LBRACK, ACTIONS(680), 1, anon_sym_not, @@ -24926,38 +25139,39 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_yield, ACTIONS(686), 1, anon_sym_await, - ACTIONS(714), 1, + ACTIONS(716), 1, anon_sym_RPAREN, - STATE(645), 1, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(726), 1, + STATE(705), 1, sym_primary_expression, - STATE(1083), 1, + STATE(1086), 1, sym_expression, - STATE(1311), 1, + STATE(1187), 1, + sym_list_splat, + STATE(1355), 1, sym_pattern, - STATE(1395), 1, + STATE(1432), 1, sym_yield, - STATE(1680), 1, + STATE(1455), 1, + sym_parenthesized_list_splat, + STATE(1686), 1, sym__collection_elements, - STATE(1689), 1, + STATE(1742), 1, sym__patterns, ACTIONS(309), 2, sym_ellipsis, sym_float, - STATE(872), 2, + STATE(917), 2, sym_attribute, sym_subscript, - STATE(1290), 2, - sym_list_splat, - sym_parenthesized_list_splat, ACTIONS(606), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1001), 3, + STATE(1005), 3, sym_tuple_pattern, sym_list_pattern, sym_list_splat_pattern, @@ -24973,14 +25187,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(725), 15, + STATE(720), 15, sym_binary_operator, sym_unary_operator, sym_call, @@ -24996,7 +25210,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [845] = 29, + [978] = 29, ACTIONS(3), 1, sym_comment, ACTIONS(293), 1, @@ -25005,78 +25219,77 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(317), 1, sym__template_string_start, - ACTIONS(668), 1, + ACTIONS(642), 1, + anon_sym_LBRACK, + ACTIONS(684), 1, + anon_sym_yield, + ACTIONS(718), 1, sym_identifier, - ACTIONS(672), 1, + ACTIONS(722), 1, anon_sym_LPAREN, - ACTIONS(674), 1, + ACTIONS(724), 1, + anon_sym_COMMA, + ACTIONS(726), 1, anon_sym_STAR, - ACTIONS(676), 1, - anon_sym_LBRACK, - ACTIONS(680), 1, + ACTIONS(728), 1, + anon_sym_RBRACE, + ACTIONS(730), 1, + anon_sym_STAR_STAR, + ACTIONS(732), 1, anon_sym_not, - ACTIONS(682), 1, + ACTIONS(734), 1, anon_sym_lambda, - ACTIONS(684), 1, - anon_sym_yield, - ACTIONS(686), 1, + ACTIONS(736), 1, anon_sym_await, - ACTIONS(716), 1, - anon_sym_RBRACK, - STATE(645), 1, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(726), 1, + STATE(775), 1, sym_primary_expression, - STATE(1079), 1, + STATE(1047), 1, sym_expression, - STATE(1311), 1, - sym_pattern, - STATE(1675), 1, - sym__patterns, - STATE(1716), 1, + STATE(1203), 1, + sym_list_splat, + STATE(1727), 1, sym__collection_elements, ACTIONS(309), 2, sym_ellipsis, sym_float, - STATE(872), 2, - sym_attribute, - sym_subscript, - ACTIONS(606), 3, + STATE(1207), 2, + sym_dictionary_splat, + sym_pair, + STATE(1294), 2, + sym_parenthesized_list_splat, + sym_yield, + ACTIONS(640), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1001), 3, - sym_tuple_pattern, - sym_list_pattern, - sym_list_splat_pattern, - STATE(1290), 3, - sym_list_splat, - sym_parenthesized_list_splat, - sym_yield, ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(670), 6, + ACTIONS(720), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(725), 15, + STATE(720), 17, sym_binary_operator, sym_unary_operator, + sym_attribute, + sym_subscript, sym_call, sym_list, sym_set, @@ -25090,18 +25303,16 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [968] = 29, + [1100] = 29, ACTIONS(3), 1, sym_comment, - ACTIONS(55), 1, - anon_sym_STAR_STAR, ACTIONS(293), 1, anon_sym_LBRACE, ACTIONS(315), 1, sym__string_start, ACTIONS(317), 1, sym__template_string_start, - ACTIONS(664), 1, + ACTIONS(642), 1, anon_sym_LBRACK, ACTIONS(684), 1, anon_sym_yield, @@ -25109,43 +25320,45 @@ static const uint16_t ts_small_parse_table[] = { sym_identifier, ACTIONS(722), 1, anon_sym_LPAREN, - ACTIONS(724), 1, - anon_sym_COMMA, ACTIONS(726), 1, anon_sym_STAR, - ACTIONS(728), 1, - anon_sym_RBRACE, ACTIONS(730), 1, - anon_sym_not, + anon_sym_STAR_STAR, ACTIONS(732), 1, - anon_sym_lambda, + anon_sym_not, ACTIONS(734), 1, + anon_sym_lambda, + ACTIONS(736), 1, anon_sym_await, - STATE(645), 1, + ACTIONS(738), 1, + anon_sym_COMMA, + ACTIONS(740), 1, + anon_sym_RBRACE, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(780), 1, + STATE(775), 1, sym_primary_expression, - STATE(1059), 1, + STATE(1063), 1, sym_expression, - STATE(1199), 1, - sym_pair, - STATE(1432), 1, - sym_dictionary_splat, - STATE(1638), 1, + STATE(1206), 1, + sym_list_splat, + STATE(1624), 1, sym__collection_elements, ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(662), 3, + STATE(1236), 2, + sym_dictionary_splat, + sym_pair, + STATE(1294), 2, + sym_parenthesized_list_splat, + sym_yield, + ACTIONS(640), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1290), 3, - sym_list_splat, - sym_parenthesized_list_splat, - sym_yield, ACTIONS(311), 4, sym_integer, sym_true, @@ -25158,14 +25371,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(725), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -25183,18 +25396,16 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [1090] = 29, + [1222] = 29, ACTIONS(3), 1, sym_comment, - ACTIONS(55), 1, - anon_sym_STAR_STAR, ACTIONS(293), 1, anon_sym_LBRACE, ACTIONS(315), 1, sym__string_start, ACTIONS(317), 1, sym__template_string_start, - ACTIONS(664), 1, + ACTIONS(642), 1, anon_sym_LBRACK, ACTIONS(684), 1, anon_sym_yield, @@ -25205,40 +25416,42 @@ static const uint16_t ts_small_parse_table[] = { ACTIONS(726), 1, anon_sym_STAR, ACTIONS(730), 1, - anon_sym_not, + anon_sym_STAR_STAR, ACTIONS(732), 1, - anon_sym_lambda, + anon_sym_not, ACTIONS(734), 1, - anon_sym_await, + anon_sym_lambda, ACTIONS(736), 1, + anon_sym_await, + ACTIONS(742), 1, anon_sym_COMMA, - ACTIONS(738), 1, + ACTIONS(744), 1, anon_sym_RBRACE, - STATE(645), 1, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(780), 1, + STATE(775), 1, sym_primary_expression, - STATE(1055), 1, + STATE(1041), 1, sym_expression, - STATE(1214), 1, - sym_pair, - STATE(1426), 1, - sym_dictionary_splat, - STATE(1616), 1, + STATE(1232), 1, + sym_list_splat, + STATE(1666), 1, sym__collection_elements, ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(662), 3, + STATE(1194), 2, + sym_dictionary_splat, + sym_pair, + STATE(1294), 2, + sym_parenthesized_list_splat, + sym_yield, + ACTIONS(640), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1290), 3, - sym_list_splat, - sym_parenthesized_list_splat, - sym_yield, ACTIONS(311), 4, sym_integer, sym_true, @@ -25251,14 +25464,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(725), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -25276,18 +25489,16 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [1212] = 29, + [1344] = 29, ACTIONS(3), 1, sym_comment, - ACTIONS(55), 1, - anon_sym_STAR_STAR, ACTIONS(293), 1, anon_sym_LBRACE, ACTIONS(315), 1, sym__string_start, ACTIONS(317), 1, sym__template_string_start, - ACTIONS(664), 1, + ACTIONS(642), 1, anon_sym_LBRACK, ACTIONS(684), 1, anon_sym_yield, @@ -25298,40 +25509,42 @@ static const uint16_t ts_small_parse_table[] = { ACTIONS(726), 1, anon_sym_STAR, ACTIONS(730), 1, - anon_sym_not, + anon_sym_STAR_STAR, ACTIONS(732), 1, - anon_sym_lambda, + anon_sym_not, ACTIONS(734), 1, + anon_sym_lambda, + ACTIONS(736), 1, anon_sym_await, - ACTIONS(740), 1, + ACTIONS(746), 1, anon_sym_COMMA, - ACTIONS(742), 1, + ACTIONS(748), 1, anon_sym_RBRACE, - STATE(645), 1, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(780), 1, + STATE(775), 1, sym_primary_expression, - STATE(1058), 1, + STATE(1067), 1, sym_expression, - STATE(1192), 1, - sym_pair, - STATE(1407), 1, - sym_dictionary_splat, - STATE(1708), 1, + STATE(1228), 1, + sym_list_splat, + STATE(1688), 1, sym__collection_elements, ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(662), 3, + STATE(1184), 2, + sym_dictionary_splat, + sym_pair, + STATE(1294), 2, + sym_parenthesized_list_splat, + sym_yield, + ACTIONS(640), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1290), 3, - sym_list_splat, - sym_parenthesized_list_splat, - sym_yield, ACTIONS(311), 4, sym_integer, sym_true, @@ -25344,14 +25557,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(725), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -25369,82 +25582,78 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [1334] = 29, + [1466] = 26, ACTIONS(3), 1, sym_comment, ACTIONS(55), 1, anon_sym_STAR_STAR, - ACTIONS(293), 1, + ACTIONS(616), 1, + anon_sym_LPAREN, + ACTIONS(622), 1, + anon_sym_LBRACK, + ACTIONS(624), 1, anon_sym_LBRACE, - ACTIONS(315), 1, + ACTIONS(630), 1, sym__string_start, - ACTIONS(317), 1, + ACTIONS(632), 1, sym__template_string_start, - ACTIONS(664), 1, - anon_sym_LBRACK, - ACTIONS(684), 1, - anon_sym_yield, - ACTIONS(718), 1, + ACTIONS(750), 1, sym_identifier, - ACTIONS(722), 1, - anon_sym_LPAREN, - ACTIONS(726), 1, + ACTIONS(754), 1, + anon_sym_from, + ACTIONS(756), 1, anon_sym_STAR, - ACTIONS(730), 1, + ACTIONS(760), 1, anon_sym_not, - ACTIONS(732), 1, + ACTIONS(762), 1, anon_sym_lambda, - ACTIONS(734), 1, + ACTIONS(764), 1, anon_sym_await, - ACTIONS(744), 1, - anon_sym_COMMA, - ACTIONS(746), 1, - anon_sym_RBRACE, - STATE(645), 1, - sym_string, - STATE(658), 1, - sym_template_string, STATE(780), 1, sym_primary_expression, - STATE(1041), 1, + STATE(781), 1, + sym_string, + STATE(782), 1, + sym_template_string, + STATE(1107), 1, sym_expression, - STATE(1170), 1, - sym_pair, - STATE(1505), 1, - sym_dictionary_splat, - STATE(1684), 1, - sym__collection_elements, - ACTIONS(309), 2, + STATE(1237), 1, + sym_expression_list, + ACTIONS(626), 2, sym_ellipsis, sym_float, - ACTIONS(662), 3, + STATE(1588), 2, + sym_list_splat, + sym_dictionary_splat, + ACTIONS(620), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1290), 3, - sym_list_splat, - sym_parenthesized_list_splat, - sym_yield, - ACTIONS(311), 4, + ACTIONS(612), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(720), 6, + ACTIONS(758), 4, + anon_sym_RBRACE, + anon_sym_EQ, + anon_sym_COLON2, + sym_type_conversion, + ACTIONS(752), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, + STATE(1131), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(725), 17, + STATE(949), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -25462,7 +25671,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [1456] = 26, + [1581] = 26, ACTIONS(3), 1, sym_comment, ACTIONS(55), 1, @@ -25479,30 +25688,30 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(317), 1, sym__template_string_start, - ACTIONS(575), 1, + ACTIONS(585), 1, anon_sym_LPAREN, - ACTIONS(586), 1, + ACTIONS(596), 1, anon_sym_LBRACK, - ACTIONS(726), 1, + ACTIONS(756), 1, anon_sym_STAR, - ACTIONS(748), 1, + ACTIONS(766), 1, anon_sym_from, - ACTIONS(752), 1, + ACTIONS(768), 1, anon_sym_not, - STATE(645), 1, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(719), 1, + STATE(704), 1, sym_primary_expression, - STATE(1144), 1, + STATE(1175), 1, sym_expression, - STATE(1186), 1, + STATE(1237), 1, sym_expression_list, ACTIONS(309), 2, sym_ellipsis, sym_float, - STATE(1518), 2, + STATE(1573), 2, sym_list_splat, sym_dictionary_splat, ACTIONS(301), 3, @@ -25514,7 +25723,7 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - ACTIONS(750), 4, + ACTIONS(758), 4, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_RBRACK, @@ -25526,14 +25735,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(725), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -25551,78 +25760,75 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [1571] = 26, + [1696] = 24, ACTIONS(3), 1, sym_comment, ACTIONS(55), 1, anon_sym_STAR_STAR, - ACTIONS(616), 1, - anon_sym_LPAREN, - ACTIONS(622), 1, - anon_sym_LBRACK, - ACTIONS(624), 1, + ACTIONS(268), 1, + sym_identifier, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(630), 1, + ACTIONS(305), 1, + anon_sym_lambda, + ACTIONS(313), 1, + anon_sym_await, + ACTIONS(315), 1, sym__string_start, - ACTIONS(632), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(726), 1, + ACTIONS(585), 1, + anon_sym_LPAREN, + ACTIONS(596), 1, + anon_sym_LBRACK, + ACTIONS(756), 1, anon_sym_STAR, - ACTIONS(754), 1, - sym_identifier, - ACTIONS(758), 1, - anon_sym_from, - ACTIONS(760), 1, + ACTIONS(768), 1, anon_sym_not, - ACTIONS(762), 1, - anon_sym_lambda, - ACTIONS(764), 1, - anon_sym_await, - STATE(763), 1, - sym_primary_expression, - STATE(766), 1, + STATE(694), 1, sym_string, - STATE(776), 1, + STATE(698), 1, sym_template_string, - STATE(1102), 1, + STATE(704), 1, + sym_primary_expression, + STATE(1144), 1, sym_expression, - STATE(1186), 1, - sym_expression_list, - ACTIONS(626), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - STATE(1568), 2, + STATE(1291), 2, sym_list_splat, sym_dictionary_splat, - ACTIONS(620), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(612), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(750), 4, + ACTIONS(770), 5, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_COLON, + anon_sym_RBRACK, anon_sym_RBRACE, - anon_sym_EQ, - anon_sym_COLON2, - sym_type_conversion, - ACTIONS(756), 6, + ACTIONS(270), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1104), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(878), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -25640,7 +25846,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [1686] = 24, + [1806] = 24, ACTIONS(3), 1, sym_comment, ACTIONS(55), 1, @@ -25657,26 +25863,26 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(317), 1, sym__template_string_start, - ACTIONS(575), 1, + ACTIONS(585), 1, anon_sym_LPAREN, - ACTIONS(586), 1, + ACTIONS(596), 1, anon_sym_LBRACK, - ACTIONS(726), 1, + ACTIONS(756), 1, anon_sym_STAR, - ACTIONS(752), 1, + ACTIONS(768), 1, anon_sym_not, - STATE(645), 1, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(719), 1, + STATE(704), 1, sym_primary_expression, - STATE(1153), 1, + STATE(1144), 1, sym_expression, ACTIONS(309), 2, sym_ellipsis, sym_float, - STATE(1262), 2, + STATE(1291), 2, sym_list_splat, sym_dictionary_splat, ACTIONS(301), 3, @@ -25688,7 +25894,7 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - ACTIONS(766), 5, + ACTIONS(770), 5, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_COLON, @@ -25701,14 +25907,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(725), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -25726,7 +25932,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [1796] = 24, + [1916] = 24, ACTIONS(3), 1, sym_comment, ACTIONS(55), 1, @@ -25743,26 +25949,26 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(317), 1, sym__template_string_start, - ACTIONS(575), 1, + ACTIONS(585), 1, anon_sym_LPAREN, - ACTIONS(586), 1, + ACTIONS(596), 1, anon_sym_LBRACK, - ACTIONS(726), 1, + ACTIONS(756), 1, anon_sym_STAR, - ACTIONS(752), 1, + ACTIONS(768), 1, anon_sym_not, - STATE(645), 1, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(719), 1, + STATE(704), 1, sym_primary_expression, - STATE(1153), 1, + STATE(1144), 1, sym_expression, ACTIONS(309), 2, sym_ellipsis, sym_float, - STATE(1262), 2, + STATE(1291), 2, sym_list_splat, sym_dictionary_splat, ACTIONS(301), 3, @@ -25774,7 +25980,7 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - ACTIONS(768), 5, + ACTIONS(772), 5, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_COLON, @@ -25787,14 +25993,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(725), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -25812,75 +26018,74 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [1906] = 24, + [2026] = 24, ACTIONS(3), 1, sym_comment, - ACTIONS(55), 1, - anon_sym_STAR_STAR, - ACTIONS(268), 1, - sym_identifier, - ACTIONS(293), 1, + ACTIONS(616), 1, + anon_sym_LPAREN, + ACTIONS(622), 1, + anon_sym_LBRACK, + ACTIONS(624), 1, anon_sym_LBRACE, - ACTIONS(305), 1, - anon_sym_lambda, - ACTIONS(313), 1, - anon_sym_await, - ACTIONS(315), 1, + ACTIONS(630), 1, sym__string_start, - ACTIONS(317), 1, + ACTIONS(632), 1, sym__template_string_start, - ACTIONS(575), 1, - anon_sym_LPAREN, - ACTIONS(586), 1, - anon_sym_LBRACK, - ACTIONS(726), 1, - anon_sym_STAR, - ACTIONS(752), 1, + ACTIONS(750), 1, + sym_identifier, + ACTIONS(760), 1, anon_sym_not, - STATE(645), 1, + ACTIONS(762), 1, + anon_sym_lambda, + ACTIONS(764), 1, + anon_sym_await, + ACTIONS(774), 1, + anon_sym_STAR, + ACTIONS(776), 1, + anon_sym_STAR_STAR, + STATE(780), 1, + sym_primary_expression, + STATE(781), 1, sym_string, - STATE(658), 1, + STATE(782), 1, sym_template_string, - STATE(719), 1, - sym_primary_expression, - STATE(1153), 1, + STATE(1120), 1, sym_expression, - ACTIONS(309), 2, + ACTIONS(626), 2, sym_ellipsis, sym_float, - STATE(1262), 2, + STATE(1301), 2, sym_list_splat, sym_dictionary_splat, - ACTIONS(301), 3, + ACTIONS(620), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(311), 4, + ACTIONS(612), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(766), 5, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_COLON, - anon_sym_RBRACK, + ACTIONS(772), 4, anon_sym_RBRACE, - ACTIONS(270), 6, + anon_sym_EQ, + anon_sym_COLON2, + sym_type_conversion, + ACTIONS(752), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, + STATE(1131), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(725), 17, + STATE(949), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -25898,75 +26103,74 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [2016] = 25, + [2135] = 24, ACTIONS(3), 1, sym_comment, - ACTIONS(55), 1, - anon_sym_STAR_STAR, - ACTIONS(616), 1, - anon_sym_LPAREN, - ACTIONS(622), 1, - anon_sym_LBRACK, - ACTIONS(624), 1, - anon_sym_LBRACE, - ACTIONS(630), 1, - sym__string_start, - ACTIONS(632), 1, - sym__template_string_start, - ACTIONS(726), 1, - anon_sym_STAR, - ACTIONS(754), 1, + ACTIONS(268), 1, sym_identifier, - ACTIONS(760), 1, - anon_sym_not, - ACTIONS(762), 1, + ACTIONS(293), 1, + anon_sym_LBRACE, + ACTIONS(305), 1, anon_sym_lambda, - ACTIONS(764), 1, + ACTIONS(313), 1, anon_sym_await, - ACTIONS(770), 1, + ACTIONS(315), 1, + sym__string_start, + ACTIONS(317), 1, + sym__template_string_start, + ACTIONS(596), 1, + anon_sym_LBRACK, + ACTIONS(684), 1, anon_sym_yield, - STATE(763), 1, - sym_primary_expression, - STATE(766), 1, + ACTIONS(768), 1, + anon_sym_not, + ACTIONS(778), 1, + anon_sym_LPAREN, + ACTIONS(782), 1, + anon_sym_STAR, + STATE(694), 1, sym_string, - STATE(776), 1, + STATE(698), 1, sym_template_string, - STATE(1096), 1, + STATE(704), 1, + sym_primary_expression, + STATE(1179), 1, sym_expression, - ACTIONS(626), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - STATE(1568), 2, - sym_list_splat, - sym_dictionary_splat, - ACTIONS(620), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1291), 3, - sym_expression_list, + ACTIONS(780), 3, + anon_sym_RPAREN, + anon_sym_RBRACK, + anon_sym_RBRACE, + STATE(1354), 3, + sym_list_splat, + sym_parenthesized_list_splat, sym_yield, - sym__f_expression, - ACTIONS(612), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(756), 6, + ACTIONS(270), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1104), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(878), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -25984,76 +26188,74 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [2127] = 26, + [2244] = 24, ACTIONS(3), 1, sym_comment, - ACTIONS(55), 1, - anon_sym_STAR_STAR, + ACTIONS(268), 1, + sym_identifier, ACTIONS(293), 1, anon_sym_LBRACE, + ACTIONS(305), 1, + anon_sym_lambda, + ACTIONS(313), 1, + anon_sym_await, ACTIONS(315), 1, sym__string_start, ACTIONS(317), 1, sym__template_string_start, - ACTIONS(608), 1, + ACTIONS(596), 1, anon_sym_LBRACK, - ACTIONS(680), 1, + ACTIONS(684), 1, + anon_sym_yield, + ACTIONS(768), 1, anon_sym_not, - ACTIONS(682), 1, - anon_sym_lambda, - ACTIONS(726), 1, - anon_sym_STAR, - ACTIONS(772), 1, - sym_identifier, - ACTIONS(776), 1, - anon_sym_LPAREN, ACTIONS(778), 1, - anon_sym_RPAREN, - ACTIONS(780), 1, - anon_sym_COMMA, + anon_sym_LPAREN, ACTIONS(782), 1, - anon_sym_await, - STATE(645), 1, + anon_sym_STAR, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(726), 1, + STATE(704), 1, sym_primary_expression, - STATE(1075), 1, + STATE(1179), 1, sym_expression, - STATE(1440), 1, - sym_parenthesized_list_splat, ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(606), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1439), 3, + ACTIONS(780), 3, + anon_sym_RPAREN, + anon_sym_RBRACK, + anon_sym_RBRACE, + STATE(1354), 3, sym_list_splat, - sym_dictionary_splat, - sym_keyword_argument, + sym_parenthesized_list_splat, + sym_yield, ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(774), 6, + ACTIONS(270), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(725), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -26071,76 +26273,74 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [2240] = 26, + [2353] = 24, ACTIONS(3), 1, sym_comment, - ACTIONS(55), 1, - anon_sym_STAR_STAR, + ACTIONS(268), 1, + sym_identifier, ACTIONS(293), 1, anon_sym_LBRACE, + ACTIONS(305), 1, + anon_sym_lambda, + ACTIONS(313), 1, + anon_sym_await, ACTIONS(315), 1, sym__string_start, ACTIONS(317), 1, sym__template_string_start, - ACTIONS(608), 1, + ACTIONS(596), 1, anon_sym_LBRACK, - ACTIONS(680), 1, + ACTIONS(684), 1, + anon_sym_yield, + ACTIONS(768), 1, anon_sym_not, - ACTIONS(682), 1, - anon_sym_lambda, - ACTIONS(726), 1, - anon_sym_STAR, - ACTIONS(772), 1, - sym_identifier, - ACTIONS(776), 1, + ACTIONS(778), 1, anon_sym_LPAREN, ACTIONS(782), 1, - anon_sym_await, - ACTIONS(784), 1, - anon_sym_RPAREN, - ACTIONS(786), 1, - anon_sym_COMMA, - STATE(645), 1, + anon_sym_STAR, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(726), 1, + STATE(704), 1, sym_primary_expression, - STATE(1064), 1, + STATE(1179), 1, sym_expression, - STATE(1402), 1, - sym_parenthesized_list_splat, ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(606), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1384), 3, + ACTIONS(780), 3, + anon_sym_RPAREN, + anon_sym_RBRACK, + anon_sym_RBRACE, + STATE(1354), 3, sym_list_splat, - sym_dictionary_splat, - sym_keyword_argument, + sym_parenthesized_list_splat, + sym_yield, ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(774), 6, + ACTIONS(270), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(725), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -26158,74 +26358,77 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [2353] = 24, + [2462] = 27, ACTIONS(3), 1, sym_comment, - ACTIONS(268), 1, - sym_identifier, + ACTIONS(55), 1, + anon_sym_STAR_STAR, ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(305), 1, - anon_sym_lambda, - ACTIONS(313), 1, - anon_sym_await, ACTIONS(315), 1, sym__string_start, ACTIONS(317), 1, sym__template_string_start, - ACTIONS(586), 1, + ACTIONS(608), 1, anon_sym_LBRACK, - ACTIONS(684), 1, - anon_sym_yield, - ACTIONS(752), 1, + ACTIONS(680), 1, anon_sym_not, + ACTIONS(682), 1, + anon_sym_lambda, + ACTIONS(726), 1, + anon_sym_STAR, + ACTIONS(784), 1, + sym_identifier, ACTIONS(788), 1, anon_sym_LPAREN, + ACTIONS(790), 1, + anon_sym_RPAREN, ACTIONS(792), 1, - anon_sym_STAR, - STATE(645), 1, + anon_sym_COMMA, + ACTIONS(794), 1, + anon_sym_await, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(719), 1, + STATE(705), 1, sym_primary_expression, - STATE(1193), 1, + STATE(1087), 1, sym_expression, + STATE(1212), 1, + sym_list_splat, + STATE(1490), 1, + sym_parenthesized_list_splat, ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(301), 3, + STATE(1486), 2, + sym_dictionary_splat, + sym_keyword_argument, + ACTIONS(606), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(790), 3, - anon_sym_RPAREN, - anon_sym_RBRACK, - anon_sym_RBRACE, - STATE(1348), 3, - sym_list_splat, - sym_parenthesized_list_splat, - sym_yield, ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(270), 6, + ACTIONS(786), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(725), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -26243,7 +26446,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [2462] = 26, + [2577] = 26, ACTIONS(3), 1, sym_comment, ACTIONS(53), 1, @@ -26258,35 +26461,35 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(85), 1, sym__template_string_start, - ACTIONS(349), 1, + ACTIONS(361), 1, sym_identifier, - ACTIONS(355), 1, + ACTIONS(367), 1, anon_sym_await, - ACTIONS(594), 1, + ACTIONS(575), 1, anon_sym_LPAREN, - ACTIONS(598), 1, + ACTIONS(579), 1, anon_sym_LBRACK, - ACTIONS(726), 1, + ACTIONS(756), 1, anon_sym_STAR, - ACTIONS(794), 1, + ACTIONS(796), 1, anon_sym_from, - STATE(765), 1, - sym_primary_expression, - STATE(769), 1, + STATE(772), 1, sym_template_string, - STATE(775), 1, + STATE(773), 1, + sym_primary_expression, + STATE(779), 1, sym_string, - STATE(1195), 1, + STATE(1210), 1, sym_expression, - STATE(1533), 1, + STATE(1569), 1, sym_expression_list, ACTIONS(77), 2, sym_ellipsis, sym_float, - ACTIONS(750), 2, + ACTIONS(758), 2, sym__newline, anon_sym_SEMI, - STATE(1520), 2, + STATE(1590), 2, sym_list_splat, sym_dictionary_splat, ACTIONS(49), 3, @@ -26298,21 +26501,21 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - ACTIONS(351), 6, + ACTIONS(363), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1156), 6, + STATE(1126), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(920), 17, + STATE(950), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -26330,76 +26533,74 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [2575] = 26, + [2690] = 24, ACTIONS(3), 1, sym_comment, - ACTIONS(53), 1, + ACTIONS(268), 1, + sym_identifier, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(55), 1, - anon_sym_STAR_STAR, - ACTIONS(71), 1, - anon_sym_not, - ACTIONS(73), 1, + ACTIONS(305), 1, anon_sym_lambda, - ACTIONS(83), 1, + ACTIONS(313), 1, + anon_sym_await, + ACTIONS(315), 1, sym__string_start, - ACTIONS(85), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(349), 1, - sym_identifier, - ACTIONS(355), 1, - anon_sym_await, - ACTIONS(594), 1, - anon_sym_LPAREN, - ACTIONS(598), 1, + ACTIONS(596), 1, anon_sym_LBRACK, - ACTIONS(726), 1, + ACTIONS(684), 1, + anon_sym_yield, + ACTIONS(768), 1, + anon_sym_not, + ACTIONS(778), 1, + anon_sym_LPAREN, + ACTIONS(782), 1, anon_sym_STAR, - ACTIONS(796), 1, - anon_sym_from, - STATE(765), 1, - sym_primary_expression, - STATE(769), 1, - sym_template_string, - STATE(775), 1, + STATE(694), 1, sym_string, - STATE(1134), 1, + STATE(698), 1, + sym_template_string, + STATE(704), 1, + sym_primary_expression, + STATE(1179), 1, sym_expression, - STATE(1458), 1, - sym_expression_list, - ACTIONS(77), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(798), 2, - sym__newline, - anon_sym_SEMI, - STATE(1520), 2, - sym_list_splat, - sym_dictionary_splat, - ACTIONS(49), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(79), 4, + ACTIONS(798), 3, + anon_sym_RPAREN, + anon_sym_RBRACK, + anon_sym_RBRACE, + STATE(1354), 3, + sym_list_splat, + sym_parenthesized_list_splat, + sym_yield, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(351), 6, + ACTIONS(270), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1156), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(920), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -26417,76 +26618,77 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [2688] = 26, + [2799] = 27, ACTIONS(3), 1, sym_comment, ACTIONS(55), 1, anon_sym_STAR_STAR, ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(305), 1, - anon_sym_lambda, ACTIONS(315), 1, sym__string_start, ACTIONS(317), 1, sym__template_string_start, - ACTIONS(586), 1, + ACTIONS(608), 1, anon_sym_LBRACK, + ACTIONS(680), 1, + anon_sym_not, + ACTIONS(682), 1, + anon_sym_lambda, ACTIONS(726), 1, anon_sym_STAR, - ACTIONS(752), 1, - anon_sym_not, + ACTIONS(784), 1, + sym_identifier, ACTIONS(788), 1, anon_sym_LPAREN, + ACTIONS(794), 1, + anon_sym_await, ACTIONS(800), 1, - sym_identifier, - ACTIONS(804), 1, anon_sym_RPAREN, - ACTIONS(806), 1, + ACTIONS(802), 1, anon_sym_COMMA, - ACTIONS(808), 1, - anon_sym_await, - STATE(645), 1, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(719), 1, + STATE(705), 1, sym_primary_expression, - STATE(1232), 1, + STATE(1094), 1, sym_expression, - STATE(1393), 1, + STATE(1211), 1, + sym_list_splat, + STATE(1497), 1, sym_parenthesized_list_splat, ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(301), 3, + STATE(1496), 2, + sym_dictionary_splat, + sym_keyword_argument, + ACTIONS(606), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1387), 3, - sym_list_splat, - sym_dictionary_splat, - sym_keyword_argument, ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(802), 6, + ACTIONS(786), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(725), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -26504,75 +26706,76 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [2801] = 25, + [2914] = 26, ACTIONS(3), 1, sym_comment, + ACTIONS(53), 1, + anon_sym_LBRACE, ACTIONS(55), 1, anon_sym_STAR_STAR, - ACTIONS(616), 1, - anon_sym_LPAREN, - ACTIONS(622), 1, - anon_sym_LBRACK, - ACTIONS(624), 1, - anon_sym_LBRACE, - ACTIONS(630), 1, + ACTIONS(71), 1, + anon_sym_not, + ACTIONS(73), 1, + anon_sym_lambda, + ACTIONS(83), 1, sym__string_start, - ACTIONS(632), 1, + ACTIONS(85), 1, sym__template_string_start, - ACTIONS(726), 1, - anon_sym_STAR, - ACTIONS(754), 1, + ACTIONS(361), 1, sym_identifier, - ACTIONS(760), 1, - anon_sym_not, - ACTIONS(762), 1, - anon_sym_lambda, - ACTIONS(764), 1, + ACTIONS(367), 1, anon_sym_await, - ACTIONS(770), 1, - anon_sym_yield, - STATE(763), 1, + ACTIONS(575), 1, + anon_sym_LPAREN, + ACTIONS(579), 1, + anon_sym_LBRACK, + ACTIONS(756), 1, + anon_sym_STAR, + ACTIONS(804), 1, + anon_sym_from, + STATE(772), 1, + sym_template_string, + STATE(773), 1, sym_primary_expression, - STATE(766), 1, + STATE(779), 1, sym_string, - STATE(776), 1, - sym_template_string, - STATE(1096), 1, + STATE(1137), 1, sym_expression, - ACTIONS(626), 2, + STATE(1446), 1, + sym_expression_list, + ACTIONS(77), 2, sym_ellipsis, sym_float, - STATE(1568), 2, + ACTIONS(806), 2, + sym__newline, + anon_sym_SEMI, + STATE(1590), 2, sym_list_splat, sym_dictionary_splat, - ACTIONS(620), 3, + ACTIONS(49), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1269), 3, - sym_expression_list, - sym_yield, - sym__f_expression, - ACTIONS(612), 4, + ACTIONS(79), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(756), 6, + ACTIONS(363), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1104), 6, + STATE(1126), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(878), 17, + STATE(950), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -26590,74 +26793,78 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [2912] = 24, + [3027] = 28, ACTIONS(3), 1, sym_comment, - ACTIONS(616), 1, - anon_sym_LPAREN, - ACTIONS(622), 1, - anon_sym_LBRACK, - ACTIONS(624), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(630), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(632), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(754), 1, - sym_identifier, - ACTIONS(760), 1, + ACTIONS(608), 1, + anon_sym_LBRACK, + ACTIONS(680), 1, anon_sym_not, - ACTIONS(762), 1, + ACTIONS(682), 1, anon_sym_lambda, - ACTIONS(764), 1, - anon_sym_await, - ACTIONS(810), 1, - anon_sym_STAR, + ACTIONS(684), 1, + anon_sym_yield, + ACTIONS(788), 1, + anon_sym_LPAREN, + ACTIONS(808), 1, + sym_identifier, ACTIONS(812), 1, - anon_sym_STAR_STAR, - STATE(763), 1, - sym_primary_expression, - STATE(766), 1, + anon_sym_RPAREN, + ACTIONS(814), 1, + anon_sym_STAR, + ACTIONS(816), 1, + anon_sym_await, + STATE(694), 1, sym_string, - STATE(776), 1, + STATE(698), 1, sym_template_string, - STATE(1154), 1, + STATE(705), 1, + sym_primary_expression, + STATE(1048), 1, sym_expression, - ACTIONS(626), 2, + STATE(1226), 1, + sym_list_splat, + STATE(1294), 1, + sym_parenthesized_list_splat, + STATE(1447), 1, + sym_yield, + STATE(1484), 1, + sym_with_item, + STATE(1654), 1, + sym__collection_elements, + ACTIONS(309), 2, sym_ellipsis, sym_float, - STATE(1266), 2, - sym_list_splat, - sym_dictionary_splat, - ACTIONS(620), 3, + ACTIONS(606), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(612), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(768), 4, - anon_sym_RBRACE, - anon_sym_EQ, - anon_sym_COLON2, - sym_type_conversion, - ACTIONS(756), 6, + ACTIONS(810), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1104), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(878), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -26675,9 +26882,11 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [3021] = 24, + [3144] = 25, ACTIONS(3), 1, sym_comment, + ACTIONS(55), 1, + anon_sym_STAR_STAR, ACTIONS(616), 1, anon_sym_LPAREN, ACTIONS(622), 1, @@ -26688,61 +26897,60 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(632), 1, sym__template_string_start, - ACTIONS(754), 1, + ACTIONS(750), 1, sym_identifier, + ACTIONS(756), 1, + anon_sym_STAR, ACTIONS(760), 1, anon_sym_not, ACTIONS(762), 1, anon_sym_lambda, ACTIONS(764), 1, anon_sym_await, - ACTIONS(810), 1, - anon_sym_STAR, - ACTIONS(812), 1, - anon_sym_STAR_STAR, - STATE(763), 1, + ACTIONS(818), 1, + anon_sym_yield, + STATE(780), 1, sym_primary_expression, - STATE(766), 1, + STATE(781), 1, sym_string, - STATE(776), 1, + STATE(782), 1, sym_template_string, - STATE(1154), 1, + STATE(1103), 1, sym_expression, ACTIONS(626), 2, sym_ellipsis, sym_float, - STATE(1266), 2, + STATE(1588), 2, sym_list_splat, sym_dictionary_splat, ACTIONS(620), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, + STATE(1296), 3, + sym_expression_list, + sym_yield, + sym__f_expression, ACTIONS(612), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(766), 4, - anon_sym_RBRACE, - anon_sym_EQ, - anon_sym_COLON2, - sym_type_conversion, - ACTIONS(756), 6, + ACTIONS(752), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1104), 6, + STATE(1131), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(878), 17, + STATE(949), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -26760,7 +26968,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [3130] = 24, + [3255] = 24, ACTIONS(3), 1, sym_comment, ACTIONS(616), 1, @@ -26773,7 +26981,7 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(632), 1, sym__template_string_start, - ACTIONS(754), 1, + ACTIONS(750), 1, sym_identifier, ACTIONS(760), 1, anon_sym_not, @@ -26781,22 +26989,22 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_lambda, ACTIONS(764), 1, anon_sym_await, - ACTIONS(810), 1, + ACTIONS(774), 1, anon_sym_STAR, - ACTIONS(812), 1, + ACTIONS(776), 1, anon_sym_STAR_STAR, - STATE(763), 1, + STATE(780), 1, sym_primary_expression, - STATE(766), 1, + STATE(781), 1, sym_string, - STATE(776), 1, + STATE(782), 1, sym_template_string, - STATE(1154), 1, + STATE(1120), 1, sym_expression, ACTIONS(626), 2, sym_ellipsis, sym_float, - STATE(1266), 2, + STATE(1301), 2, sym_list_splat, sym_dictionary_splat, ACTIONS(620), 3, @@ -26808,26 +27016,26 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - ACTIONS(766), 4, + ACTIONS(770), 4, anon_sym_RBRACE, anon_sym_EQ, anon_sym_COLON2, sym_type_conversion, - ACTIONS(756), 6, + ACTIONS(752), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1104), 6, + STATE(1131), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(878), 17, + STATE(949), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -26845,74 +27053,77 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [3239] = 24, + [3364] = 27, ACTIONS(3), 1, sym_comment, - ACTIONS(268), 1, - sym_identifier, + ACTIONS(55), 1, + anon_sym_STAR_STAR, ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(305), 1, - anon_sym_lambda, - ACTIONS(313), 1, - anon_sym_await, ACTIONS(315), 1, sym__string_start, ACTIONS(317), 1, sym__template_string_start, - ACTIONS(586), 1, + ACTIONS(608), 1, anon_sym_LBRACK, - ACTIONS(684), 1, - anon_sym_yield, - ACTIONS(752), 1, + ACTIONS(680), 1, anon_sym_not, + ACTIONS(682), 1, + anon_sym_lambda, + ACTIONS(726), 1, + anon_sym_STAR, + ACTIONS(784), 1, + sym_identifier, ACTIONS(788), 1, anon_sym_LPAREN, - ACTIONS(792), 1, - anon_sym_STAR, - STATE(645), 1, + ACTIONS(794), 1, + anon_sym_await, + ACTIONS(820), 1, + anon_sym_RPAREN, + ACTIONS(822), 1, + anon_sym_COMMA, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(719), 1, + STATE(705), 1, sym_primary_expression, - STATE(1193), 1, + STATE(1093), 1, sym_expression, + STATE(1186), 1, + sym_list_splat, + STATE(1453), 1, + sym_parenthesized_list_splat, ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(301), 3, + STATE(1452), 2, + sym_dictionary_splat, + sym_keyword_argument, + ACTIONS(606), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(814), 3, - anon_sym_RPAREN, - anon_sym_RBRACK, - anon_sym_RBRACE, - STATE(1348), 3, - sym_list_splat, - sym_parenthesized_list_splat, - sym_yield, ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(270), 6, + ACTIONS(786), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(725), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -26930,74 +27141,74 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [3348] = 24, + [3479] = 24, ACTIONS(3), 1, sym_comment, - ACTIONS(268), 1, - sym_identifier, - ACTIONS(293), 1, + ACTIONS(616), 1, + anon_sym_LPAREN, + ACTIONS(622), 1, + anon_sym_LBRACK, + ACTIONS(624), 1, anon_sym_LBRACE, - ACTIONS(305), 1, - anon_sym_lambda, - ACTIONS(313), 1, - anon_sym_await, - ACTIONS(315), 1, + ACTIONS(630), 1, sym__string_start, - ACTIONS(317), 1, + ACTIONS(632), 1, sym__template_string_start, - ACTIONS(586), 1, - anon_sym_LBRACK, - ACTIONS(684), 1, - anon_sym_yield, - ACTIONS(752), 1, + ACTIONS(750), 1, + sym_identifier, + ACTIONS(760), 1, anon_sym_not, - ACTIONS(788), 1, - anon_sym_LPAREN, - ACTIONS(792), 1, + ACTIONS(762), 1, + anon_sym_lambda, + ACTIONS(764), 1, + anon_sym_await, + ACTIONS(774), 1, anon_sym_STAR, - STATE(645), 1, + ACTIONS(776), 1, + anon_sym_STAR_STAR, + STATE(780), 1, + sym_primary_expression, + STATE(781), 1, sym_string, - STATE(658), 1, + STATE(782), 1, sym_template_string, - STATE(719), 1, - sym_primary_expression, - STATE(1193), 1, + STATE(1120), 1, sym_expression, - ACTIONS(309), 2, + ACTIONS(626), 2, sym_ellipsis, sym_float, - ACTIONS(301), 3, + STATE(1301), 2, + sym_list_splat, + sym_dictionary_splat, + ACTIONS(620), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(814), 3, - anon_sym_RPAREN, - anon_sym_RBRACK, - anon_sym_RBRACE, - STATE(1348), 3, - sym_list_splat, - sym_parenthesized_list_splat, - sym_yield, - ACTIONS(311), 4, + ACTIONS(612), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(270), 6, + ACTIONS(770), 4, + anon_sym_RBRACE, + anon_sym_EQ, + anon_sym_COLON2, + sym_type_conversion, + ACTIONS(752), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, + STATE(1131), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(725), 17, + STATE(949), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -27015,7 +27226,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [3457] = 26, + [3588] = 27, ACTIONS(3), 1, sym_comment, ACTIONS(55), 1, @@ -27034,57 +27245,58 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_lambda, ACTIONS(726), 1, anon_sym_STAR, - ACTIONS(772), 1, + ACTIONS(784), 1, sym_identifier, - ACTIONS(776), 1, + ACTIONS(788), 1, anon_sym_LPAREN, - ACTIONS(782), 1, + ACTIONS(794), 1, anon_sym_await, - ACTIONS(804), 1, + ACTIONS(824), 1, anon_sym_RPAREN, - ACTIONS(806), 1, + ACTIONS(826), 1, anon_sym_COMMA, - STATE(645), 1, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(726), 1, + STATE(705), 1, sym_primary_expression, - STATE(1087), 1, + STATE(1075), 1, sym_expression, - STATE(1393), 1, + STATE(1196), 1, + sym_list_splat, + STATE(1469), 1, sym_parenthesized_list_splat, ACTIONS(309), 2, sym_ellipsis, sym_float, + STATE(1482), 2, + sym_dictionary_splat, + sym_keyword_argument, ACTIONS(606), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1387), 3, - sym_list_splat, - sym_dictionary_splat, - sym_keyword_argument, ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(774), 6, + ACTIONS(786), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(725), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -27102,77 +27314,75 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [3570] = 27, + [3703] = 25, ACTIONS(3), 1, sym_comment, - ACTIONS(293), 1, + ACTIONS(55), 1, + anon_sym_STAR_STAR, + ACTIONS(616), 1, + anon_sym_LPAREN, + ACTIONS(622), 1, + anon_sym_LBRACK, + ACTIONS(624), 1, anon_sym_LBRACE, - ACTIONS(315), 1, + ACTIONS(630), 1, sym__string_start, - ACTIONS(317), 1, + ACTIONS(632), 1, sym__template_string_start, - ACTIONS(608), 1, - anon_sym_LBRACK, - ACTIONS(680), 1, + ACTIONS(750), 1, + sym_identifier, + ACTIONS(756), 1, + anon_sym_STAR, + ACTIONS(760), 1, anon_sym_not, - ACTIONS(682), 1, + ACTIONS(762), 1, anon_sym_lambda, - ACTIONS(684), 1, - anon_sym_yield, - ACTIONS(776), 1, - anon_sym_LPAREN, - ACTIONS(792), 1, - anon_sym_STAR, - ACTIONS(816), 1, - sym_identifier, - ACTIONS(820), 1, - anon_sym_RPAREN, - ACTIONS(822), 1, + ACTIONS(764), 1, anon_sym_await, - STATE(645), 1, + ACTIONS(818), 1, + anon_sym_yield, + STATE(780), 1, + sym_primary_expression, + STATE(781), 1, sym_string, - STATE(658), 1, + STATE(782), 1, sym_template_string, - STATE(726), 1, - sym_primary_expression, - STATE(1057), 1, + STATE(1103), 1, sym_expression, - STATE(1404), 1, - sym_yield, - STATE(1484), 1, - sym_with_item, - STATE(1687), 1, - sym__collection_elements, - ACTIONS(309), 2, + ACTIONS(626), 2, sym_ellipsis, sym_float, - STATE(1290), 2, + STATE(1588), 2, sym_list_splat, - sym_parenthesized_list_splat, - ACTIONS(606), 3, + sym_dictionary_splat, + ACTIONS(620), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(311), 4, + STATE(1289), 3, + sym_expression_list, + sym_yield, + sym__f_expression, + ACTIONS(612), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(818), 6, + ACTIONS(752), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, + STATE(1131), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(725), 17, + STATE(949), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -27190,53 +27400,53 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [3685] = 26, + [3814] = 26, ACTIONS(3), 1, sym_comment, ACTIONS(55), 1, anon_sym_STAR_STAR, ACTIONS(293), 1, anon_sym_LBRACE, + ACTIONS(305), 1, + anon_sym_lambda, ACTIONS(315), 1, sym__string_start, ACTIONS(317), 1, sym__template_string_start, - ACTIONS(608), 1, + ACTIONS(596), 1, anon_sym_LBRACK, - ACTIONS(680), 1, - anon_sym_not, - ACTIONS(682), 1, - anon_sym_lambda, - ACTIONS(726), 1, + ACTIONS(756), 1, anon_sym_STAR, - ACTIONS(772), 1, - sym_identifier, - ACTIONS(776), 1, + ACTIONS(768), 1, + anon_sym_not, + ACTIONS(778), 1, anon_sym_LPAREN, - ACTIONS(782), 1, - anon_sym_await, - ACTIONS(824), 1, + ACTIONS(800), 1, anon_sym_RPAREN, - ACTIONS(826), 1, + ACTIONS(802), 1, anon_sym_COMMA, - STATE(645), 1, + ACTIONS(828), 1, + sym_identifier, + ACTIONS(832), 1, + anon_sym_await, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(726), 1, + STATE(704), 1, sym_primary_expression, - STATE(1071), 1, + STATE(1258), 1, sym_expression, - STATE(1416), 1, + STATE(1497), 1, sym_parenthesized_list_splat, ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(606), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1415), 3, + STATE(1468), 3, sym_list_splat, sym_dictionary_splat, sym_keyword_argument, @@ -27245,21 +27455,21 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - ACTIONS(774), 6, + ACTIONS(830), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(725), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -27277,7 +27487,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [3798] = 25, + [3927] = 25, ACTIONS(3), 1, sym_comment, ACTIONS(55), 1, @@ -27290,29 +27500,29 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(317), 1, sym__template_string_start, - ACTIONS(586), 1, + ACTIONS(596), 1, anon_sym_LBRACK, - ACTIONS(726), 1, + ACTIONS(756), 1, anon_sym_STAR, - ACTIONS(752), 1, + ACTIONS(768), 1, anon_sym_not, - ACTIONS(788), 1, + ACTIONS(778), 1, anon_sym_LPAREN, - ACTIONS(800), 1, + ACTIONS(828), 1, sym_identifier, - ACTIONS(808), 1, + ACTIONS(832), 1, anon_sym_await, - ACTIONS(828), 1, + ACTIONS(834), 1, anon_sym_RPAREN, - STATE(645), 1, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(719), 1, + STATE(704), 1, sym_primary_expression, - STATE(1280), 1, + STATE(1321), 1, sym_expression, - STATE(1524), 1, + STATE(1540), 1, sym_parenthesized_list_splat, ACTIONS(309), 2, sym_ellipsis, @@ -27321,7 +27531,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1567), 3, + STATE(1539), 3, sym_list_splat, sym_dictionary_splat, sym_keyword_argument, @@ -27330,21 +27540,21 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - ACTIONS(802), 6, + ACTIONS(830), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(725), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -27362,7 +27572,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [3908] = 23, + [4037] = 27, ACTIONS(3), 1, sym_comment, ACTIONS(293), 1, @@ -27371,63 +27581,67 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(317), 1, sym__template_string_start, - ACTIONS(602), 1, - anon_sym_LPAREN, ACTIONS(608), 1, anon_sym_LBRACK, ACTIONS(680), 1, anon_sym_not, - ACTIONS(816), 1, + ACTIONS(682), 1, + anon_sym_lambda, + ACTIONS(684), 1, + anon_sym_yield, + ACTIONS(788), 1, + anon_sym_LPAREN, + ACTIONS(808), 1, sym_identifier, - ACTIONS(822), 1, + ACTIONS(814), 1, + anon_sym_STAR, + ACTIONS(816), 1, anon_sym_await, - ACTIONS(834), 1, - anon_sym_lambda, - STATE(645), 1, + ACTIONS(836), 1, + anon_sym_RPAREN, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(726), 1, + STATE(705), 1, sym_primary_expression, - STATE(1092), 1, + STATE(1086), 1, sym_expression, + STATE(1187), 1, + sym_list_splat, + STATE(1432), 1, + sym_yield, + STATE(1455), 1, + sym_parenthesized_list_splat, + STATE(1686), 1, + sym__collection_elements, ACTIONS(309), 2, sym_ellipsis, sym_float, - STATE(1173), 2, - sym__expression_within_for_in_clause, - sym_lambda_within_for_in_clause, ACTIONS(606), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(830), 3, - anon_sym_RPAREN, - anon_sym_RBRACK, - anon_sym_RBRACE, - ACTIONS(832), 3, - anon_sym_if, - anon_sym_async, - anon_sym_for, ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(818), 5, + ACTIONS(810), 6, anon_sym_lazy, anon_sym_print, + anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(725), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -27445,74 +27659,74 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [4014] = 25, + [4151] = 25, ACTIONS(3), 1, sym_comment, - ACTIONS(53), 1, + ACTIONS(55), 1, + anon_sym_STAR_STAR, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(71), 1, - anon_sym_not, - ACTIONS(73), 1, + ACTIONS(305), 1, anon_sym_lambda, - ACTIONS(83), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(85), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(349), 1, + ACTIONS(596), 1, + anon_sym_LBRACK, + ACTIONS(756), 1, + anon_sym_STAR, + ACTIONS(768), 1, + anon_sym_not, + ACTIONS(778), 1, + anon_sym_LPAREN, + ACTIONS(828), 1, sym_identifier, - ACTIONS(355), 1, + ACTIONS(832), 1, anon_sym_await, - ACTIONS(594), 1, - anon_sym_LPAREN, - ACTIONS(598), 1, - anon_sym_LBRACK, - ACTIONS(836), 1, - anon_sym_from, ACTIONS(838), 1, - anon_sym_STAR, - ACTIONS(840), 1, - anon_sym_STAR_STAR, - STATE(765), 1, - sym_primary_expression, - STATE(769), 1, - sym_template_string, - STATE(775), 1, + anon_sym_RPAREN, + STATE(694), 1, sym_string, - STATE(1212), 1, + STATE(698), 1, + sym_template_string, + STATE(704), 1, + sym_primary_expression, + STATE(1321), 1, sym_expression, - ACTIONS(77), 2, + STATE(1540), 1, + sym_parenthesized_list_splat, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(768), 2, - sym__newline, - anon_sym_SEMI, - STATE(1317), 2, - sym_list_splat, - sym_dictionary_splat, - ACTIONS(49), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(79), 4, + STATE(1539), 3, + sym_list_splat, + sym_dictionary_splat, + sym_keyword_argument, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(351), 6, + ACTIONS(830), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1156), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(920), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -27530,74 +27744,74 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [4124] = 25, + [4261] = 25, ACTIONS(3), 1, sym_comment, - ACTIONS(53), 1, + ACTIONS(55), 1, + anon_sym_STAR_STAR, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(71), 1, - anon_sym_not, - ACTIONS(73), 1, + ACTIONS(305), 1, anon_sym_lambda, - ACTIONS(83), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(85), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(349), 1, - sym_identifier, - ACTIONS(355), 1, - anon_sym_await, - ACTIONS(594), 1, - anon_sym_LPAREN, - ACTIONS(598), 1, + ACTIONS(596), 1, anon_sym_LBRACK, - ACTIONS(838), 1, + ACTIONS(756), 1, anon_sym_STAR, + ACTIONS(768), 1, + anon_sym_not, + ACTIONS(778), 1, + anon_sym_LPAREN, + ACTIONS(828), 1, + sym_identifier, + ACTIONS(832), 1, + anon_sym_await, ACTIONS(840), 1, - anon_sym_STAR_STAR, - ACTIONS(842), 1, - anon_sym_from, - STATE(765), 1, - sym_primary_expression, - STATE(769), 1, - sym_template_string, - STATE(775), 1, + anon_sym_RPAREN, + STATE(694), 1, sym_string, - STATE(1212), 1, + STATE(698), 1, + sym_template_string, + STATE(704), 1, + sym_primary_expression, + STATE(1321), 1, sym_expression, - ACTIONS(77), 2, + STATE(1540), 1, + sym_parenthesized_list_splat, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(766), 2, - sym__newline, - anon_sym_SEMI, - STATE(1317), 2, - sym_list_splat, - sym_dictionary_splat, - ACTIONS(49), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(79), 4, + STATE(1539), 3, + sym_list_splat, + sym_dictionary_splat, + sym_keyword_argument, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(351), 6, + ACTIONS(830), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1156), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(920), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -27615,74 +27829,74 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [4234] = 25, + [4371] = 25, ACTIONS(3), 1, sym_comment, - ACTIONS(53), 1, + ACTIONS(55), 1, + anon_sym_STAR_STAR, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(71), 1, - anon_sym_not, - ACTIONS(73), 1, + ACTIONS(305), 1, anon_sym_lambda, - ACTIONS(83), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(85), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(349), 1, - sym_identifier, - ACTIONS(355), 1, - anon_sym_await, - ACTIONS(594), 1, - anon_sym_LPAREN, - ACTIONS(598), 1, + ACTIONS(596), 1, anon_sym_LBRACK, - ACTIONS(838), 1, + ACTIONS(756), 1, anon_sym_STAR, - ACTIONS(840), 1, - anon_sym_STAR_STAR, + ACTIONS(768), 1, + anon_sym_not, + ACTIONS(778), 1, + anon_sym_LPAREN, + ACTIONS(828), 1, + sym_identifier, + ACTIONS(832), 1, + anon_sym_await, ACTIONS(842), 1, - anon_sym_from, - STATE(765), 1, - sym_primary_expression, - STATE(769), 1, - sym_template_string, - STATE(775), 1, + anon_sym_RPAREN, + STATE(694), 1, sym_string, - STATE(1212), 1, + STATE(698), 1, + sym_template_string, + STATE(704), 1, + sym_primary_expression, + STATE(1321), 1, sym_expression, - ACTIONS(77), 2, + STATE(1540), 1, + sym_parenthesized_list_splat, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(766), 2, - sym__newline, - anon_sym_SEMI, - STATE(1317), 2, - sym_list_splat, - sym_dictionary_splat, - ACTIONS(49), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(79), 4, + STATE(1539), 3, + sym_list_splat, + sym_dictionary_splat, + sym_keyword_argument, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(351), 6, + ACTIONS(830), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1156), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(920), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -27700,72 +27914,74 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [4344] = 23, + [4481] = 25, ACTIONS(3), 1, sym_comment, + ACTIONS(55), 1, + anon_sym_STAR_STAR, ACTIONS(293), 1, anon_sym_LBRACE, + ACTIONS(305), 1, + anon_sym_lambda, ACTIONS(315), 1, sym__string_start, ACTIONS(317), 1, sym__template_string_start, - ACTIONS(602), 1, - anon_sym_LPAREN, - ACTIONS(608), 1, + ACTIONS(596), 1, anon_sym_LBRACK, - ACTIONS(680), 1, + ACTIONS(756), 1, + anon_sym_STAR, + ACTIONS(768), 1, anon_sym_not, - ACTIONS(816), 1, + ACTIONS(778), 1, + anon_sym_LPAREN, + ACTIONS(828), 1, sym_identifier, - ACTIONS(822), 1, + ACTIONS(832), 1, anon_sym_await, - ACTIONS(834), 1, - anon_sym_lambda, - STATE(645), 1, + ACTIONS(844), 1, + anon_sym_RPAREN, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(726), 1, + STATE(704), 1, sym_primary_expression, - STATE(1092), 1, + STATE(1321), 1, sym_expression, + STATE(1540), 1, + sym_parenthesized_list_splat, ACTIONS(309), 2, sym_ellipsis, sym_float, - STATE(1173), 2, - sym__expression_within_for_in_clause, - sym_lambda_within_for_in_clause, - ACTIONS(606), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(844), 3, - anon_sym_RPAREN, - anon_sym_RBRACK, - anon_sym_RBRACE, - ACTIONS(846), 3, - anon_sym_if, - anon_sym_async, - anon_sym_for, + STATE(1539), 3, + sym_list_splat, + sym_dictionary_splat, + sym_keyword_argument, ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(818), 5, + ACTIONS(830), 6, anon_sym_lazy, anon_sym_print, + anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(725), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -27783,13 +27999,11 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [4450] = 25, + [4591] = 25, ACTIONS(3), 1, sym_comment, ACTIONS(53), 1, anon_sym_LBRACE, - ACTIONS(55), 1, - anon_sym_STAR_STAR, ACTIONS(71), 1, anon_sym_not, ACTIONS(73), 1, @@ -27798,33 +28012,35 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(85), 1, sym__template_string_start, - ACTIONS(349), 1, + ACTIONS(361), 1, sym_identifier, - ACTIONS(355), 1, + ACTIONS(367), 1, anon_sym_await, - ACTIONS(594), 1, + ACTIONS(575), 1, anon_sym_LPAREN, - ACTIONS(598), 1, + ACTIONS(579), 1, anon_sym_LBRACK, - ACTIONS(726), 1, + ACTIONS(846), 1, + anon_sym_from, + ACTIONS(848), 1, anon_sym_STAR, - STATE(765), 1, - sym_primary_expression, - STATE(769), 1, + ACTIONS(850), 1, + anon_sym_STAR_STAR, + STATE(772), 1, sym_template_string, - STATE(775), 1, + STATE(773), 1, + sym_primary_expression, + STATE(779), 1, sym_string, - STATE(1206), 1, + STATE(1219), 1, sym_expression, - STATE(1530), 1, - sym_expression_list, ACTIONS(77), 2, sym_ellipsis, sym_float, - ACTIONS(848), 2, + ACTIONS(772), 2, sym__newline, anon_sym_SEMI, - STATE(1520), 2, + STATE(1393), 2, sym_list_splat, sym_dictionary_splat, ACTIONS(49), 3, @@ -27836,21 +28052,21 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - ACTIONS(351), 6, + ACTIONS(363), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1156), 6, + STATE(1126), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(920), 17, + STATE(950), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -27868,75 +28084,74 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [4560] = 26, + [4701] = 25, ACTIONS(3), 1, sym_comment, + ACTIONS(55), 1, + anon_sym_STAR_STAR, ACTIONS(293), 1, anon_sym_LBRACE, + ACTIONS(305), 1, + anon_sym_lambda, ACTIONS(315), 1, sym__string_start, ACTIONS(317), 1, sym__template_string_start, - ACTIONS(608), 1, + ACTIONS(596), 1, anon_sym_LBRACK, - ACTIONS(680), 1, + ACTIONS(756), 1, + anon_sym_STAR, + ACTIONS(768), 1, anon_sym_not, - ACTIONS(682), 1, - anon_sym_lambda, - ACTIONS(684), 1, - anon_sym_yield, - ACTIONS(776), 1, + ACTIONS(778), 1, anon_sym_LPAREN, - ACTIONS(792), 1, - anon_sym_STAR, - ACTIONS(816), 1, + ACTIONS(828), 1, sym_identifier, - ACTIONS(822), 1, + ACTIONS(832), 1, anon_sym_await, - ACTIONS(850), 1, + ACTIONS(852), 1, anon_sym_RPAREN, - STATE(645), 1, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(726), 1, + STATE(704), 1, sym_primary_expression, - STATE(1068), 1, + STATE(1321), 1, sym_expression, - STATE(1479), 1, - sym_yield, - STATE(1692), 1, - sym__collection_elements, + STATE(1540), 1, + sym_parenthesized_list_splat, ACTIONS(309), 2, sym_ellipsis, sym_float, - STATE(1290), 2, - sym_list_splat, - sym_parenthesized_list_splat, - ACTIONS(606), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, + STATE(1539), 3, + sym_list_splat, + sym_dictionary_splat, + sym_keyword_argument, ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(818), 6, + ACTIONS(830), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(725), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -27954,74 +28169,74 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [4672] = 25, + [4811] = 25, ACTIONS(3), 1, sym_comment, + ACTIONS(55), 1, + anon_sym_STAR_STAR, ACTIONS(293), 1, anon_sym_LBRACE, + ACTIONS(305), 1, + anon_sym_lambda, ACTIONS(315), 1, sym__string_start, ACTIONS(317), 1, sym__template_string_start, - ACTIONS(608), 1, + ACTIONS(596), 1, anon_sym_LBRACK, - ACTIONS(680), 1, + ACTIONS(756), 1, + anon_sym_STAR, + ACTIONS(768), 1, anon_sym_not, - ACTIONS(682), 1, - anon_sym_lambda, - ACTIONS(684), 1, - anon_sym_yield, - ACTIONS(776), 1, + ACTIONS(778), 1, anon_sym_LPAREN, - ACTIONS(792), 1, - anon_sym_STAR, - ACTIONS(816), 1, + ACTIONS(828), 1, sym_identifier, - ACTIONS(822), 1, + ACTIONS(832), 1, anon_sym_await, - ACTIONS(852), 1, - anon_sym_RBRACK, - STATE(645), 1, + ACTIONS(854), 1, + anon_sym_RPAREN, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(726), 1, + STATE(704), 1, sym_primary_expression, - STATE(1084), 1, + STATE(1321), 1, sym_expression, - STATE(1693), 1, - sym__collection_elements, + STATE(1540), 1, + sym_parenthesized_list_splat, ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(606), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1290), 3, + STATE(1539), 3, sym_list_splat, - sym_parenthesized_list_splat, - sym_yield, + sym_dictionary_splat, + sym_keyword_argument, ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(818), 6, + ACTIONS(830), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(725), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -28039,76 +28254,74 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [4782] = 27, + [4921] = 25, ACTIONS(3), 1, sym_comment, + ACTIONS(55), 1, + anon_sym_STAR_STAR, ACTIONS(293), 1, anon_sym_LBRACE, + ACTIONS(305), 1, + anon_sym_lambda, ACTIONS(315), 1, sym__string_start, ACTIONS(317), 1, sym__template_string_start, - ACTIONS(608), 1, + ACTIONS(596), 1, anon_sym_LBRACK, - ACTIONS(680), 1, + ACTIONS(756), 1, + anon_sym_STAR, + ACTIONS(768), 1, anon_sym_not, - ACTIONS(682), 1, - anon_sym_lambda, - ACTIONS(684), 1, - anon_sym_yield, - ACTIONS(776), 1, + ACTIONS(778), 1, anon_sym_LPAREN, - ACTIONS(792), 1, - anon_sym_STAR, - ACTIONS(816), 1, + ACTIONS(828), 1, sym_identifier, - ACTIONS(822), 1, + ACTIONS(832), 1, anon_sym_await, - ACTIONS(854), 1, + ACTIONS(856), 1, anon_sym_RPAREN, - STATE(645), 1, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(726), 1, + STATE(704), 1, sym_primary_expression, - STATE(1083), 1, + STATE(1321), 1, sym_expression, - STATE(1385), 1, - sym_list_splat, - STATE(1390), 1, + STATE(1540), 1, sym_parenthesized_list_splat, - STATE(1395), 1, - sym_yield, - STATE(1680), 1, - sym__collection_elements, ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(606), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, + STATE(1539), 3, + sym_list_splat, + sym_dictionary_splat, + sym_keyword_argument, ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(818), 6, + ACTIONS(830), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(725), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -28126,75 +28339,74 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [4896] = 26, + [5031] = 25, ACTIONS(3), 1, sym_comment, + ACTIONS(55), 1, + anon_sym_STAR_STAR, ACTIONS(293), 1, anon_sym_LBRACE, + ACTIONS(305), 1, + anon_sym_lambda, ACTIONS(315), 1, sym__string_start, ACTIONS(317), 1, sym__template_string_start, - ACTIONS(608), 1, + ACTIONS(596), 1, anon_sym_LBRACK, - ACTIONS(680), 1, + ACTIONS(756), 1, + anon_sym_STAR, + ACTIONS(768), 1, anon_sym_not, - ACTIONS(682), 1, - anon_sym_lambda, - ACTIONS(684), 1, - anon_sym_yield, - ACTIONS(776), 1, + ACTIONS(778), 1, anon_sym_LPAREN, - ACTIONS(792), 1, - anon_sym_STAR, - ACTIONS(816), 1, + ACTIONS(828), 1, sym_identifier, - ACTIONS(820), 1, - anon_sym_RPAREN, - ACTIONS(822), 1, + ACTIONS(832), 1, anon_sym_await, - STATE(645), 1, + ACTIONS(858), 1, + anon_sym_RPAREN, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(726), 1, + STATE(704), 1, sym_primary_expression, - STATE(1083), 1, + STATE(1321), 1, sym_expression, - STATE(1395), 1, - sym_yield, - STATE(1680), 1, - sym__collection_elements, + STATE(1540), 1, + sym_parenthesized_list_splat, ACTIONS(309), 2, sym_ellipsis, sym_float, - STATE(1290), 2, - sym_list_splat, - sym_parenthesized_list_splat, - ACTIONS(606), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, + STATE(1539), 3, + sym_list_splat, + sym_dictionary_splat, + sym_keyword_argument, ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(818), 6, + ACTIONS(830), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(725), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -28212,7 +28424,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [5008] = 25, + [5141] = 23, ACTIONS(3), 1, sym_comment, ACTIONS(293), 1, @@ -28221,65 +28433,63 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(317), 1, sym__template_string_start, + ACTIONS(602), 1, + anon_sym_LPAREN, ACTIONS(608), 1, anon_sym_LBRACK, ACTIONS(680), 1, anon_sym_not, - ACTIONS(682), 1, - anon_sym_lambda, - ACTIONS(684), 1, - anon_sym_yield, - ACTIONS(776), 1, - anon_sym_LPAREN, - ACTIONS(792), 1, - anon_sym_STAR, - ACTIONS(816), 1, + ACTIONS(808), 1, sym_identifier, - ACTIONS(822), 1, + ACTIONS(816), 1, anon_sym_await, - ACTIONS(856), 1, - anon_sym_RBRACK, - STATE(645), 1, + ACTIONS(864), 1, + anon_sym_lambda, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(726), 1, + STATE(705), 1, sym_primary_expression, - STATE(1079), 1, + STATE(1097), 1, sym_expression, - STATE(1716), 1, - sym__collection_elements, ACTIONS(309), 2, sym_ellipsis, sym_float, + STATE(1222), 2, + sym__expression_within_for_in_clause, + sym_lambda_within_for_in_clause, ACTIONS(606), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1290), 3, - sym_list_splat, - sym_parenthesized_list_splat, - sym_yield, + ACTIONS(860), 3, + anon_sym_RPAREN, + anon_sym_RBRACK, + anon_sym_RBRACE, + ACTIONS(862), 3, + anon_sym_if, + anon_sym_async, + anon_sym_for, ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(818), 6, + ACTIONS(810), 5, anon_sym_lazy, anon_sym_print, - anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(725), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -28297,74 +28507,74 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [5118] = 25, + [5247] = 25, ACTIONS(3), 1, sym_comment, - ACTIONS(55), 1, - anon_sym_STAR_STAR, - ACTIONS(293), 1, + ACTIONS(53), 1, anon_sym_LBRACE, - ACTIONS(305), 1, + ACTIONS(71), 1, + anon_sym_not, + ACTIONS(73), 1, anon_sym_lambda, - ACTIONS(315), 1, + ACTIONS(83), 1, sym__string_start, - ACTIONS(317), 1, + ACTIONS(85), 1, sym__template_string_start, - ACTIONS(586), 1, - anon_sym_LBRACK, - ACTIONS(726), 1, - anon_sym_STAR, - ACTIONS(752), 1, - anon_sym_not, - ACTIONS(788), 1, - anon_sym_LPAREN, - ACTIONS(800), 1, + ACTIONS(361), 1, sym_identifier, - ACTIONS(808), 1, + ACTIONS(367), 1, anon_sym_await, - ACTIONS(858), 1, - anon_sym_RPAREN, - STATE(645), 1, - sym_string, - STATE(658), 1, + ACTIONS(575), 1, + anon_sym_LPAREN, + ACTIONS(579), 1, + anon_sym_LBRACK, + ACTIONS(848), 1, + anon_sym_STAR, + ACTIONS(850), 1, + anon_sym_STAR_STAR, + ACTIONS(866), 1, + anon_sym_from, + STATE(772), 1, sym_template_string, - STATE(719), 1, + STATE(773), 1, sym_primary_expression, - STATE(1280), 1, + STATE(779), 1, + sym_string, + STATE(1219), 1, sym_expression, - STATE(1524), 1, - sym_parenthesized_list_splat, - ACTIONS(309), 2, + ACTIONS(77), 2, sym_ellipsis, sym_float, - ACTIONS(301), 3, + ACTIONS(770), 2, + sym__newline, + anon_sym_SEMI, + STATE(1393), 2, + sym_list_splat, + sym_dictionary_splat, + ACTIONS(49), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1567), 3, - sym_list_splat, - sym_dictionary_splat, - sym_keyword_argument, - ACTIONS(311), 4, + ACTIONS(79), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(802), 6, + ACTIONS(363), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, + STATE(1126), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(725), 17, + STATE(950), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -28382,7 +28592,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [5228] = 25, + [5357] = 25, ACTIONS(3), 1, sym_comment, ACTIONS(55), 1, @@ -28395,29 +28605,29 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(317), 1, sym__template_string_start, - ACTIONS(586), 1, + ACTIONS(596), 1, anon_sym_LBRACK, - ACTIONS(726), 1, + ACTIONS(756), 1, anon_sym_STAR, - ACTIONS(752), 1, + ACTIONS(768), 1, anon_sym_not, - ACTIONS(788), 1, + ACTIONS(778), 1, anon_sym_LPAREN, - ACTIONS(800), 1, + ACTIONS(828), 1, sym_identifier, - ACTIONS(808), 1, + ACTIONS(832), 1, anon_sym_await, - ACTIONS(860), 1, + ACTIONS(868), 1, anon_sym_RPAREN, - STATE(645), 1, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(719), 1, + STATE(704), 1, sym_primary_expression, - STATE(1280), 1, + STATE(1321), 1, sym_expression, - STATE(1524), 1, + STATE(1540), 1, sym_parenthesized_list_splat, ACTIONS(309), 2, sym_ellipsis, @@ -28426,7 +28636,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1567), 3, + STATE(1539), 3, sym_list_splat, sym_dictionary_splat, sym_keyword_argument, @@ -28435,21 +28645,21 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - ACTIONS(802), 6, + ACTIONS(830), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(725), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -28467,7 +28677,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [5338] = 25, + [5467] = 25, ACTIONS(3), 1, sym_comment, ACTIONS(55), 1, @@ -28480,29 +28690,29 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(317), 1, sym__template_string_start, - ACTIONS(586), 1, + ACTIONS(596), 1, anon_sym_LBRACK, - ACTIONS(726), 1, + ACTIONS(756), 1, anon_sym_STAR, - ACTIONS(752), 1, + ACTIONS(768), 1, anon_sym_not, - ACTIONS(788), 1, + ACTIONS(778), 1, anon_sym_LPAREN, - ACTIONS(800), 1, + ACTIONS(828), 1, sym_identifier, - ACTIONS(808), 1, + ACTIONS(832), 1, anon_sym_await, - ACTIONS(862), 1, + ACTIONS(870), 1, anon_sym_RPAREN, - STATE(645), 1, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(719), 1, + STATE(704), 1, sym_primary_expression, - STATE(1280), 1, + STATE(1321), 1, sym_expression, - STATE(1524), 1, + STATE(1540), 1, sym_parenthesized_list_splat, ACTIONS(309), 2, sym_ellipsis, @@ -28511,7 +28721,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1567), 3, + STATE(1539), 3, sym_list_splat, sym_dictionary_splat, sym_keyword_argument, @@ -28520,21 +28730,21 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - ACTIONS(802), 6, + ACTIONS(830), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(725), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -28552,7 +28762,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [5448] = 25, + [5577] = 25, ACTIONS(3), 1, sym_comment, ACTIONS(55), 1, @@ -28565,29 +28775,29 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(317), 1, sym__template_string_start, - ACTIONS(586), 1, + ACTIONS(596), 1, anon_sym_LBRACK, - ACTIONS(726), 1, + ACTIONS(756), 1, anon_sym_STAR, - ACTIONS(752), 1, + ACTIONS(768), 1, anon_sym_not, - ACTIONS(788), 1, + ACTIONS(778), 1, anon_sym_LPAREN, - ACTIONS(800), 1, + ACTIONS(828), 1, sym_identifier, - ACTIONS(808), 1, + ACTIONS(832), 1, anon_sym_await, - ACTIONS(864), 1, + ACTIONS(872), 1, anon_sym_RPAREN, - STATE(645), 1, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(719), 1, + STATE(704), 1, sym_primary_expression, - STATE(1280), 1, + STATE(1321), 1, sym_expression, - STATE(1524), 1, + STATE(1540), 1, sym_parenthesized_list_splat, ACTIONS(309), 2, sym_ellipsis, @@ -28596,7 +28806,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1567), 3, + STATE(1539), 3, sym_list_splat, sym_dictionary_splat, sym_keyword_argument, @@ -28605,21 +28815,21 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - ACTIONS(802), 6, + ACTIONS(830), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(725), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -28637,7 +28847,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [5558] = 25, + [5687] = 25, ACTIONS(3), 1, sym_comment, ACTIONS(55), 1, @@ -28650,29 +28860,29 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(317), 1, sym__template_string_start, - ACTIONS(586), 1, + ACTIONS(596), 1, anon_sym_LBRACK, - ACTIONS(726), 1, + ACTIONS(756), 1, anon_sym_STAR, - ACTIONS(752), 1, + ACTIONS(768), 1, anon_sym_not, - ACTIONS(788), 1, + ACTIONS(778), 1, anon_sym_LPAREN, - ACTIONS(800), 1, + ACTIONS(828), 1, sym_identifier, - ACTIONS(808), 1, + ACTIONS(832), 1, anon_sym_await, - ACTIONS(866), 1, + ACTIONS(874), 1, anon_sym_RPAREN, - STATE(645), 1, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(719), 1, + STATE(704), 1, sym_primary_expression, - STATE(1280), 1, + STATE(1321), 1, sym_expression, - STATE(1524), 1, + STATE(1540), 1, sym_parenthesized_list_splat, ACTIONS(309), 2, sym_ellipsis, @@ -28681,7 +28891,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1567), 3, + STATE(1539), 3, sym_list_splat, sym_dictionary_splat, sym_keyword_argument, @@ -28690,21 +28900,21 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - ACTIONS(802), 6, + ACTIONS(830), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(725), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -28722,74 +28932,75 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [5668] = 25, + [5797] = 26, ACTIONS(3), 1, sym_comment, - ACTIONS(55), 1, - anon_sym_STAR_STAR, ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(305), 1, - anon_sym_lambda, ACTIONS(315), 1, sym__string_start, ACTIONS(317), 1, sym__template_string_start, - ACTIONS(586), 1, + ACTIONS(608), 1, anon_sym_LBRACK, - ACTIONS(726), 1, - anon_sym_STAR, - ACTIONS(752), 1, + ACTIONS(680), 1, anon_sym_not, + ACTIONS(682), 1, + anon_sym_lambda, + ACTIONS(684), 1, + anon_sym_yield, ACTIONS(788), 1, anon_sym_LPAREN, - ACTIONS(800), 1, - sym_identifier, ACTIONS(808), 1, + sym_identifier, + ACTIONS(814), 1, + anon_sym_STAR, + ACTIONS(816), 1, anon_sym_await, - ACTIONS(868), 1, - anon_sym_RPAREN, - STATE(645), 1, + ACTIONS(876), 1, + anon_sym_RBRACK, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(719), 1, + STATE(705), 1, sym_primary_expression, - STATE(1280), 1, + STATE(1080), 1, sym_expression, - STATE(1524), 1, - sym_parenthesized_list_splat, + STATE(1204), 1, + sym_list_splat, + STATE(1657), 1, + sym__collection_elements, ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(301), 3, + STATE(1294), 2, + sym_parenthesized_list_splat, + sym_yield, + ACTIONS(606), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1567), 3, - sym_list_splat, - sym_dictionary_splat, - sym_keyword_argument, ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(802), 6, + ACTIONS(810), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(725), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -28807,7 +29018,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [5778] = 23, + [5909] = 27, ACTIONS(3), 1, sym_comment, ACTIONS(293), 1, @@ -28816,63 +29027,67 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(317), 1, sym__template_string_start, - ACTIONS(602), 1, - anon_sym_LPAREN, ACTIONS(608), 1, anon_sym_LBRACK, ACTIONS(680), 1, anon_sym_not, - ACTIONS(816), 1, + ACTIONS(682), 1, + anon_sym_lambda, + ACTIONS(684), 1, + anon_sym_yield, + ACTIONS(788), 1, + anon_sym_LPAREN, + ACTIONS(808), 1, sym_identifier, - ACTIONS(822), 1, + ACTIONS(814), 1, + anon_sym_STAR, + ACTIONS(816), 1, anon_sym_await, - ACTIONS(834), 1, - anon_sym_lambda, - STATE(645), 1, + ACTIONS(878), 1, + anon_sym_RPAREN, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(726), 1, + STATE(705), 1, sym_primary_expression, - STATE(1092), 1, + STATE(1070), 1, sym_expression, + STATE(1217), 1, + sym_list_splat, + STATE(1294), 1, + sym_parenthesized_list_splat, + STATE(1461), 1, + sym_yield, + STATE(1721), 1, + sym__collection_elements, ACTIONS(309), 2, sym_ellipsis, sym_float, - STATE(1173), 2, - sym__expression_within_for_in_clause, - sym_lambda_within_for_in_clause, ACTIONS(606), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(870), 3, - anon_sym_RPAREN, - anon_sym_RBRACK, - anon_sym_RBRACE, - ACTIONS(872), 3, - anon_sym_if, - anon_sym_async, - anon_sym_for, ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(818), 5, + ACTIONS(810), 6, anon_sym_lazy, anon_sym_print, + anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(725), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -28890,7 +29105,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [5884] = 27, + [6023] = 26, ACTIONS(3), 1, sym_comment, ACTIONS(293), 1, @@ -28907,35 +29122,34 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_lambda, ACTIONS(684), 1, anon_sym_yield, - ACTIONS(776), 1, + ACTIONS(788), 1, anon_sym_LPAREN, - ACTIONS(792), 1, + ACTIONS(808), 1, + sym_identifier, + ACTIONS(814), 1, anon_sym_STAR, ACTIONS(816), 1, - sym_identifier, - ACTIONS(822), 1, anon_sym_await, - ACTIONS(874), 1, - anon_sym_RPAREN, - STATE(645), 1, + ACTIONS(880), 1, + anon_sym_RBRACK, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(726), 1, + STATE(705), 1, sym_primary_expression, - STATE(1083), 1, + STATE(1095), 1, sym_expression, - STATE(1385), 1, + STATE(1218), 1, sym_list_splat, - STATE(1390), 1, - sym_parenthesized_list_splat, - STATE(1395), 1, - sym_yield, - STATE(1680), 1, + STATE(1692), 1, sym__collection_elements, ACTIONS(309), 2, sym_ellipsis, sym_float, + STATE(1294), 2, + sym_parenthesized_list_splat, + sym_yield, ACTIONS(606), 3, anon_sym_DASH, anon_sym_PLUS, @@ -28945,21 +29159,21 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - ACTIONS(818), 6, + ACTIONS(810), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(725), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -28977,74 +29191,74 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [5998] = 25, + [6135] = 25, ACTIONS(3), 1, sym_comment, - ACTIONS(55), 1, - anon_sym_STAR_STAR, - ACTIONS(293), 1, + ACTIONS(53), 1, anon_sym_LBRACE, - ACTIONS(305), 1, + ACTIONS(71), 1, + anon_sym_not, + ACTIONS(73), 1, anon_sym_lambda, - ACTIONS(315), 1, + ACTIONS(83), 1, sym__string_start, - ACTIONS(317), 1, + ACTIONS(85), 1, sym__template_string_start, - ACTIONS(586), 1, - anon_sym_LBRACK, - ACTIONS(726), 1, - anon_sym_STAR, - ACTIONS(752), 1, - anon_sym_not, - ACTIONS(788), 1, - anon_sym_LPAREN, - ACTIONS(800), 1, + ACTIONS(361), 1, sym_identifier, - ACTIONS(808), 1, + ACTIONS(367), 1, anon_sym_await, - ACTIONS(876), 1, - anon_sym_RPAREN, - STATE(645), 1, - sym_string, - STATE(658), 1, + ACTIONS(575), 1, + anon_sym_LPAREN, + ACTIONS(579), 1, + anon_sym_LBRACK, + ACTIONS(848), 1, + anon_sym_STAR, + ACTIONS(850), 1, + anon_sym_STAR_STAR, + ACTIONS(866), 1, + anon_sym_from, + STATE(772), 1, sym_template_string, - STATE(719), 1, + STATE(773), 1, sym_primary_expression, - STATE(1280), 1, + STATE(779), 1, + sym_string, + STATE(1219), 1, sym_expression, - STATE(1524), 1, - sym_parenthesized_list_splat, - ACTIONS(309), 2, + ACTIONS(77), 2, sym_ellipsis, sym_float, - ACTIONS(301), 3, + ACTIONS(770), 2, + sym__newline, + anon_sym_SEMI, + STATE(1393), 2, + sym_list_splat, + sym_dictionary_splat, + ACTIONS(49), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1567), 3, - sym_list_splat, - sym_dictionary_splat, - sym_keyword_argument, - ACTIONS(311), 4, + ACTIONS(79), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(802), 6, + ACTIONS(363), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, + STATE(1126), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(725), 17, + STATE(950), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -29062,7 +29276,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [6108] = 25, + [6245] = 26, ACTIONS(3), 1, sym_comment, ACTIONS(293), 1, @@ -29079,57 +29293,58 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_lambda, ACTIONS(684), 1, anon_sym_yield, - ACTIONS(776), 1, + ACTIONS(788), 1, anon_sym_LPAREN, - ACTIONS(792), 1, + ACTIONS(808), 1, + sym_identifier, + ACTIONS(814), 1, anon_sym_STAR, ACTIONS(816), 1, - sym_identifier, - ACTIONS(822), 1, anon_sym_await, - ACTIONS(878), 1, + ACTIONS(882), 1, anon_sym_RBRACK, - STATE(645), 1, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(726), 1, + STATE(705), 1, sym_primary_expression, - STATE(1079), 1, + STATE(1080), 1, sym_expression, - STATE(1716), 1, + STATE(1204), 1, + sym_list_splat, + STATE(1657), 1, sym__collection_elements, ACTIONS(309), 2, sym_ellipsis, sym_float, + STATE(1294), 2, + sym_parenthesized_list_splat, + sym_yield, ACTIONS(606), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1290), 3, - sym_list_splat, - sym_parenthesized_list_splat, - sym_yield, ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(818), 6, + ACTIONS(810), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(725), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -29147,7 +29362,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [6218] = 27, + [6357] = 27, ACTIONS(3), 1, sym_comment, ACTIONS(293), 1, @@ -29164,31 +29379,31 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_lambda, ACTIONS(684), 1, anon_sym_yield, - ACTIONS(776), 1, + ACTIONS(788), 1, anon_sym_LPAREN, - ACTIONS(792), 1, - anon_sym_STAR, - ACTIONS(816), 1, + ACTIONS(808), 1, sym_identifier, - ACTIONS(820), 1, + ACTIONS(812), 1, anon_sym_RPAREN, - ACTIONS(822), 1, + ACTIONS(814), 1, + anon_sym_STAR, + ACTIONS(816), 1, anon_sym_await, - STATE(645), 1, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(726), 1, + STATE(705), 1, sym_primary_expression, - STATE(1083), 1, + STATE(1086), 1, sym_expression, - STATE(1385), 1, + STATE(1187), 1, sym_list_splat, - STATE(1390), 1, - sym_parenthesized_list_splat, - STATE(1395), 1, + STATE(1432), 1, sym_yield, - STATE(1680), 1, + STATE(1455), 1, + sym_parenthesized_list_splat, + STATE(1686), 1, sym__collection_elements, ACTIONS(309), 2, sym_ellipsis, @@ -29202,21 +29417,21 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - ACTIONS(818), 6, + ACTIONS(810), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(725), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -29234,7 +29449,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [6332] = 23, + [6471] = 23, ACTIONS(3), 1, sym_comment, ACTIONS(293), 1, @@ -29249,35 +29464,35 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LBRACK, ACTIONS(680), 1, anon_sym_not, - ACTIONS(816), 1, + ACTIONS(808), 1, sym_identifier, - ACTIONS(822), 1, + ACTIONS(816), 1, anon_sym_await, - ACTIONS(834), 1, + ACTIONS(864), 1, anon_sym_lambda, - STATE(645), 1, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(726), 1, + STATE(705), 1, sym_primary_expression, - STATE(1092), 1, + STATE(1097), 1, sym_expression, ACTIONS(309), 2, sym_ellipsis, sym_float, - STATE(1173), 2, + STATE(1222), 2, sym__expression_within_for_in_clause, sym_lambda_within_for_in_clause, ACTIONS(606), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(880), 3, + ACTIONS(884), 3, anon_sym_RPAREN, anon_sym_RBRACK, anon_sym_RBRACE, - ACTIONS(882), 3, + ACTIONS(886), 3, anon_sym_if, anon_sym_async, anon_sym_for, @@ -29286,20 +29501,20 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - ACTIONS(818), 5, + ACTIONS(810), 5, anon_sym_lazy, anon_sym_print, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(725), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -29317,74 +29532,76 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [6438] = 25, + [6577] = 27, ACTIONS(3), 1, sym_comment, - ACTIONS(55), 1, - anon_sym_STAR_STAR, ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(305), 1, - anon_sym_lambda, ACTIONS(315), 1, sym__string_start, ACTIONS(317), 1, sym__template_string_start, - ACTIONS(586), 1, + ACTIONS(608), 1, anon_sym_LBRACK, - ACTIONS(726), 1, - anon_sym_STAR, - ACTIONS(752), 1, + ACTIONS(680), 1, anon_sym_not, + ACTIONS(682), 1, + anon_sym_lambda, + ACTIONS(684), 1, + anon_sym_yield, ACTIONS(788), 1, anon_sym_LPAREN, - ACTIONS(800), 1, - sym_identifier, ACTIONS(808), 1, + sym_identifier, + ACTIONS(814), 1, + anon_sym_STAR, + ACTIONS(816), 1, anon_sym_await, - ACTIONS(884), 1, + ACTIONS(888), 1, anon_sym_RPAREN, - STATE(645), 1, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(719), 1, + STATE(705), 1, sym_primary_expression, - STATE(1280), 1, + STATE(1086), 1, sym_expression, - STATE(1524), 1, + STATE(1187), 1, + sym_list_splat, + STATE(1432), 1, + sym_yield, + STATE(1455), 1, sym_parenthesized_list_splat, + STATE(1686), 1, + sym__collection_elements, ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(301), 3, + ACTIONS(606), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1567), 3, - sym_list_splat, - sym_dictionary_splat, - sym_keyword_argument, ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(802), 6, + ACTIONS(810), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(725), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -29402,7 +29619,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [6548] = 25, + [6691] = 25, ACTIONS(3), 1, sym_comment, ACTIONS(55), 1, @@ -29415,29 +29632,29 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(317), 1, sym__template_string_start, - ACTIONS(586), 1, + ACTIONS(596), 1, anon_sym_LBRACK, - ACTIONS(726), 1, + ACTIONS(756), 1, anon_sym_STAR, - ACTIONS(752), 1, + ACTIONS(768), 1, anon_sym_not, - ACTIONS(788), 1, + ACTIONS(778), 1, anon_sym_LPAREN, - ACTIONS(800), 1, + ACTIONS(828), 1, sym_identifier, - ACTIONS(808), 1, + ACTIONS(832), 1, anon_sym_await, - ACTIONS(886), 1, + ACTIONS(890), 1, anon_sym_RPAREN, - STATE(645), 1, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(719), 1, + STATE(704), 1, sym_primary_expression, - STATE(1280), 1, + STATE(1321), 1, sym_expression, - STATE(1524), 1, + STATE(1540), 1, sym_parenthesized_list_splat, ACTIONS(309), 2, sym_ellipsis, @@ -29446,7 +29663,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1567), 3, + STATE(1539), 3, sym_list_splat, sym_dictionary_splat, sym_keyword_argument, @@ -29455,21 +29672,21 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - ACTIONS(802), 6, + ACTIONS(830), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(725), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -29487,7 +29704,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [6658] = 25, + [6801] = 25, ACTIONS(3), 1, sym_comment, ACTIONS(55), 1, @@ -29500,29 +29717,29 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(317), 1, sym__template_string_start, - ACTIONS(586), 1, + ACTIONS(596), 1, anon_sym_LBRACK, - ACTIONS(726), 1, + ACTIONS(756), 1, anon_sym_STAR, - ACTIONS(752), 1, + ACTIONS(768), 1, anon_sym_not, - ACTIONS(788), 1, + ACTIONS(778), 1, anon_sym_LPAREN, - ACTIONS(800), 1, + ACTIONS(828), 1, sym_identifier, - ACTIONS(808), 1, + ACTIONS(832), 1, anon_sym_await, - ACTIONS(888), 1, + ACTIONS(892), 1, anon_sym_RPAREN, - STATE(645), 1, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(719), 1, + STATE(704), 1, sym_primary_expression, - STATE(1280), 1, + STATE(1321), 1, sym_expression, - STATE(1524), 1, + STATE(1540), 1, sym_parenthesized_list_splat, ACTIONS(309), 2, sym_ellipsis, @@ -29531,7 +29748,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1567), 3, + STATE(1539), 3, sym_list_splat, sym_dictionary_splat, sym_keyword_argument, @@ -29540,21 +29757,21 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - ACTIONS(802), 6, + ACTIONS(830), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(725), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -29572,7 +29789,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [6768] = 25, + [6911] = 25, ACTIONS(3), 1, sym_comment, ACTIONS(55), 1, @@ -29585,29 +29802,29 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(317), 1, sym__template_string_start, - ACTIONS(586), 1, + ACTIONS(596), 1, anon_sym_LBRACK, - ACTIONS(726), 1, + ACTIONS(756), 1, anon_sym_STAR, - ACTIONS(752), 1, + ACTIONS(768), 1, anon_sym_not, - ACTIONS(788), 1, + ACTIONS(778), 1, anon_sym_LPAREN, - ACTIONS(800), 1, + ACTIONS(828), 1, sym_identifier, - ACTIONS(808), 1, + ACTIONS(832), 1, anon_sym_await, - ACTIONS(890), 1, + ACTIONS(894), 1, anon_sym_RPAREN, - STATE(645), 1, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(719), 1, + STATE(704), 1, sym_primary_expression, - STATE(1280), 1, + STATE(1321), 1, sym_expression, - STATE(1524), 1, + STATE(1540), 1, sym_parenthesized_list_splat, ACTIONS(309), 2, sym_ellipsis, @@ -29616,7 +29833,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1567), 3, + STATE(1539), 3, sym_list_splat, sym_dictionary_splat, sym_keyword_argument, @@ -29625,21 +29842,21 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - ACTIONS(802), 6, + ACTIONS(830), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(725), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -29657,7 +29874,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [6878] = 25, + [7021] = 25, ACTIONS(3), 1, sym_comment, ACTIONS(55), 1, @@ -29670,29 +29887,29 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(317), 1, sym__template_string_start, - ACTIONS(586), 1, + ACTIONS(596), 1, anon_sym_LBRACK, - ACTIONS(726), 1, + ACTIONS(756), 1, anon_sym_STAR, - ACTIONS(752), 1, + ACTIONS(768), 1, anon_sym_not, - ACTIONS(788), 1, + ACTIONS(778), 1, anon_sym_LPAREN, - ACTIONS(800), 1, + ACTIONS(828), 1, sym_identifier, - ACTIONS(808), 1, + ACTIONS(832), 1, anon_sym_await, - ACTIONS(892), 1, + ACTIONS(896), 1, anon_sym_RPAREN, - STATE(645), 1, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(719), 1, + STATE(704), 1, sym_primary_expression, - STATE(1280), 1, + STATE(1321), 1, sym_expression, - STATE(1524), 1, + STATE(1540), 1, sym_parenthesized_list_splat, ACTIONS(309), 2, sym_ellipsis, @@ -29701,7 +29918,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1567), 3, + STATE(1539), 3, sym_list_splat, sym_dictionary_splat, sym_keyword_argument, @@ -29710,21 +29927,21 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - ACTIONS(802), 6, + ACTIONS(830), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(725), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -29742,75 +29959,74 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [6988] = 26, + [7131] = 25, ACTIONS(3), 1, sym_comment, + ACTIONS(55), 1, + anon_sym_STAR_STAR, ACTIONS(293), 1, anon_sym_LBRACE, + ACTIONS(305), 1, + anon_sym_lambda, ACTIONS(315), 1, sym__string_start, ACTIONS(317), 1, sym__template_string_start, - ACTIONS(608), 1, + ACTIONS(596), 1, anon_sym_LBRACK, - ACTIONS(680), 1, + ACTIONS(756), 1, + anon_sym_STAR, + ACTIONS(768), 1, anon_sym_not, - ACTIONS(682), 1, - anon_sym_lambda, - ACTIONS(684), 1, - anon_sym_yield, - ACTIONS(776), 1, + ACTIONS(778), 1, anon_sym_LPAREN, - ACTIONS(792), 1, - anon_sym_STAR, - ACTIONS(816), 1, + ACTIONS(828), 1, sym_identifier, - ACTIONS(822), 1, + ACTIONS(832), 1, anon_sym_await, - ACTIONS(854), 1, + ACTIONS(898), 1, anon_sym_RPAREN, - STATE(645), 1, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(726), 1, + STATE(704), 1, sym_primary_expression, - STATE(1083), 1, + STATE(1321), 1, sym_expression, - STATE(1395), 1, - sym_yield, - STATE(1680), 1, - sym__collection_elements, + STATE(1540), 1, + sym_parenthesized_list_splat, ACTIONS(309), 2, sym_ellipsis, sym_float, - STATE(1290), 2, - sym_list_splat, - sym_parenthesized_list_splat, - ACTIONS(606), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, + STATE(1539), 3, + sym_list_splat, + sym_dictionary_splat, + sym_keyword_argument, ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(818), 6, + ACTIONS(830), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(725), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -29828,74 +30044,74 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [7100] = 25, + [7241] = 25, ACTIONS(3), 1, sym_comment, + ACTIONS(55), 1, + anon_sym_STAR_STAR, ACTIONS(293), 1, anon_sym_LBRACE, + ACTIONS(305), 1, + anon_sym_lambda, ACTIONS(315), 1, sym__string_start, ACTIONS(317), 1, sym__template_string_start, - ACTIONS(608), 1, + ACTIONS(596), 1, anon_sym_LBRACK, - ACTIONS(680), 1, + ACTIONS(756), 1, + anon_sym_STAR, + ACTIONS(768), 1, anon_sym_not, - ACTIONS(682), 1, - anon_sym_lambda, - ACTIONS(684), 1, - anon_sym_yield, - ACTIONS(776), 1, + ACTIONS(778), 1, anon_sym_LPAREN, - ACTIONS(792), 1, - anon_sym_STAR, - ACTIONS(816), 1, + ACTIONS(828), 1, sym_identifier, - ACTIONS(822), 1, + ACTIONS(832), 1, anon_sym_await, - ACTIONS(894), 1, - anon_sym_RBRACK, - STATE(645), 1, + ACTIONS(900), 1, + anon_sym_RPAREN, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(726), 1, + STATE(704), 1, sym_primary_expression, - STATE(1086), 1, + STATE(1321), 1, sym_expression, - STATE(1626), 1, - sym__collection_elements, + STATE(1540), 1, + sym_parenthesized_list_splat, ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(606), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1290), 3, + STATE(1539), 3, sym_list_splat, - sym_parenthesized_list_splat, - sym_yield, + sym_dictionary_splat, + sym_keyword_argument, ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(818), 6, + ACTIONS(830), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(725), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -29913,74 +30129,76 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [7210] = 25, + [7351] = 27, ACTIONS(3), 1, sym_comment, - ACTIONS(55), 1, - anon_sym_STAR_STAR, ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(305), 1, - anon_sym_lambda, ACTIONS(315), 1, sym__string_start, ACTIONS(317), 1, sym__template_string_start, - ACTIONS(586), 1, + ACTIONS(608), 1, anon_sym_LBRACK, - ACTIONS(726), 1, - anon_sym_STAR, - ACTIONS(752), 1, + ACTIONS(680), 1, anon_sym_not, + ACTIONS(682), 1, + anon_sym_lambda, + ACTIONS(684), 1, + anon_sym_yield, ACTIONS(788), 1, anon_sym_LPAREN, - ACTIONS(800), 1, - sym_identifier, ACTIONS(808), 1, + sym_identifier, + ACTIONS(814), 1, + anon_sym_STAR, + ACTIONS(816), 1, anon_sym_await, - ACTIONS(896), 1, + ACTIONS(888), 1, anon_sym_RPAREN, - STATE(645), 1, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(719), 1, + STATE(705), 1, sym_primary_expression, - STATE(1280), 1, + STATE(1086), 1, sym_expression, - STATE(1524), 1, + STATE(1202), 1, + sym_list_splat, + STATE(1294), 1, sym_parenthesized_list_splat, + STATE(1432), 1, + sym_yield, + STATE(1686), 1, + sym__collection_elements, ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(301), 3, + ACTIONS(606), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1567), 3, - sym_list_splat, - sym_dictionary_splat, - sym_keyword_argument, ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(802), 6, + ACTIONS(810), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(725), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -29998,74 +30216,75 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [7320] = 25, + [7465] = 26, ACTIONS(3), 1, sym_comment, - ACTIONS(55), 1, - anon_sym_STAR_STAR, ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(305), 1, - anon_sym_lambda, ACTIONS(315), 1, sym__string_start, ACTIONS(317), 1, sym__template_string_start, - ACTIONS(586), 1, + ACTIONS(608), 1, anon_sym_LBRACK, - ACTIONS(726), 1, - anon_sym_STAR, - ACTIONS(752), 1, + ACTIONS(680), 1, anon_sym_not, + ACTIONS(682), 1, + anon_sym_lambda, + ACTIONS(684), 1, + anon_sym_yield, ACTIONS(788), 1, anon_sym_LPAREN, - ACTIONS(800), 1, - sym_identifier, ACTIONS(808), 1, + sym_identifier, + ACTIONS(814), 1, + anon_sym_STAR, + ACTIONS(816), 1, anon_sym_await, - ACTIONS(898), 1, - anon_sym_RPAREN, - STATE(645), 1, + ACTIONS(902), 1, + anon_sym_RBRACK, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(719), 1, + STATE(705), 1, sym_primary_expression, - STATE(1280), 1, + STATE(1092), 1, sym_expression, - STATE(1524), 1, - sym_parenthesized_list_splat, + STATE(1230), 1, + sym_list_splat, + STATE(1658), 1, + sym__collection_elements, ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(301), 3, + STATE(1294), 2, + sym_parenthesized_list_splat, + sym_yield, + ACTIONS(606), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1567), 3, - sym_list_splat, - sym_dictionary_splat, - sym_keyword_argument, ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(802), 6, + ACTIONS(810), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(725), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -30083,74 +30302,72 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [7430] = 25, + [7577] = 23, ACTIONS(3), 1, sym_comment, - ACTIONS(55), 1, - anon_sym_STAR_STAR, ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(305), 1, - anon_sym_lambda, ACTIONS(315), 1, sym__string_start, ACTIONS(317), 1, sym__template_string_start, - ACTIONS(586), 1, + ACTIONS(602), 1, + anon_sym_LPAREN, + ACTIONS(608), 1, anon_sym_LBRACK, - ACTIONS(726), 1, - anon_sym_STAR, - ACTIONS(752), 1, + ACTIONS(680), 1, anon_sym_not, - ACTIONS(788), 1, - anon_sym_LPAREN, - ACTIONS(800), 1, - sym_identifier, ACTIONS(808), 1, + sym_identifier, + ACTIONS(816), 1, anon_sym_await, - ACTIONS(900), 1, - anon_sym_RPAREN, - STATE(645), 1, + ACTIONS(864), 1, + anon_sym_lambda, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(719), 1, + STATE(705), 1, sym_primary_expression, - STATE(1280), 1, + STATE(1097), 1, sym_expression, - STATE(1524), 1, - sym_parenthesized_list_splat, ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(301), 3, + STATE(1222), 2, + sym__expression_within_for_in_clause, + sym_lambda_within_for_in_clause, + ACTIONS(606), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1567), 3, - sym_list_splat, - sym_dictionary_splat, - sym_keyword_argument, + ACTIONS(904), 3, + anon_sym_RPAREN, + anon_sym_RBRACK, + anon_sym_RBRACE, + ACTIONS(906), 3, + anon_sym_if, + anon_sym_async, + anon_sym_for, ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(802), 6, + ACTIONS(810), 5, anon_sym_lazy, anon_sym_print, - anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(725), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -30168,7 +30385,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [7540] = 25, + [7683] = 25, ACTIONS(3), 1, sym_comment, ACTIONS(55), 1, @@ -30181,29 +30398,29 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(317), 1, sym__template_string_start, - ACTIONS(586), 1, + ACTIONS(596), 1, anon_sym_LBRACK, - ACTIONS(726), 1, + ACTIONS(756), 1, anon_sym_STAR, - ACTIONS(752), 1, + ACTIONS(768), 1, anon_sym_not, - ACTIONS(788), 1, + ACTIONS(778), 1, anon_sym_LPAREN, - ACTIONS(800), 1, + ACTIONS(828), 1, sym_identifier, - ACTIONS(808), 1, + ACTIONS(832), 1, anon_sym_await, - ACTIONS(902), 1, + ACTIONS(908), 1, anon_sym_RPAREN, - STATE(645), 1, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(719), 1, + STATE(704), 1, sym_primary_expression, - STATE(1280), 1, + STATE(1321), 1, sym_expression, - STATE(1524), 1, + STATE(1540), 1, sym_parenthesized_list_splat, ACTIONS(309), 2, sym_ellipsis, @@ -30212,7 +30429,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1567), 3, + STATE(1539), 3, sym_list_splat, sym_dictionary_splat, sym_keyword_argument, @@ -30221,21 +30438,21 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - ACTIONS(802), 6, + ACTIONS(830), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(725), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -30253,7 +30470,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [7650] = 25, + [7793] = 25, ACTIONS(3), 1, sym_comment, ACTIONS(55), 1, @@ -30266,29 +30483,29 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(317), 1, sym__template_string_start, - ACTIONS(586), 1, + ACTIONS(596), 1, anon_sym_LBRACK, - ACTIONS(726), 1, + ACTIONS(756), 1, anon_sym_STAR, - ACTIONS(752), 1, + ACTIONS(768), 1, anon_sym_not, - ACTIONS(788), 1, + ACTIONS(778), 1, anon_sym_LPAREN, - ACTIONS(800), 1, + ACTIONS(828), 1, sym_identifier, - ACTIONS(808), 1, + ACTIONS(832), 1, anon_sym_await, - ACTIONS(904), 1, + ACTIONS(910), 1, anon_sym_RPAREN, - STATE(645), 1, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(719), 1, + STATE(704), 1, sym_primary_expression, - STATE(1280), 1, + STATE(1321), 1, sym_expression, - STATE(1524), 1, + STATE(1540), 1, sym_parenthesized_list_splat, ACTIONS(309), 2, sym_ellipsis, @@ -30297,7 +30514,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1567), 3, + STATE(1539), 3, sym_list_splat, sym_dictionary_splat, sym_keyword_argument, @@ -30306,21 +30523,21 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - ACTIONS(802), 6, + ACTIONS(830), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(725), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -30338,75 +30555,74 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [7760] = 26, + [7903] = 25, ACTIONS(3), 1, sym_comment, + ACTIONS(55), 1, + anon_sym_STAR_STAR, ACTIONS(293), 1, anon_sym_LBRACE, + ACTIONS(305), 1, + anon_sym_lambda, ACTIONS(315), 1, sym__string_start, ACTIONS(317), 1, sym__template_string_start, - ACTIONS(608), 1, + ACTIONS(596), 1, anon_sym_LBRACK, - ACTIONS(680), 1, + ACTIONS(756), 1, + anon_sym_STAR, + ACTIONS(768), 1, anon_sym_not, - ACTIONS(682), 1, - anon_sym_lambda, - ACTIONS(684), 1, - anon_sym_yield, - ACTIONS(776), 1, + ACTIONS(778), 1, anon_sym_LPAREN, - ACTIONS(792), 1, - anon_sym_STAR, - ACTIONS(816), 1, + ACTIONS(828), 1, sym_identifier, - ACTIONS(822), 1, + ACTIONS(832), 1, anon_sym_await, - ACTIONS(874), 1, + ACTIONS(912), 1, anon_sym_RPAREN, - STATE(645), 1, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(726), 1, + STATE(704), 1, sym_primary_expression, - STATE(1083), 1, + STATE(1321), 1, sym_expression, - STATE(1395), 1, - sym_yield, - STATE(1680), 1, - sym__collection_elements, + STATE(1540), 1, + sym_parenthesized_list_splat, ACTIONS(309), 2, sym_ellipsis, sym_float, - STATE(1290), 2, - sym_list_splat, - sym_parenthesized_list_splat, - ACTIONS(606), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, + STATE(1539), 3, + sym_list_splat, + sym_dictionary_splat, + sym_keyword_argument, ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(818), 6, + ACTIONS(830), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(725), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -30424,7 +30640,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [7872] = 25, + [8013] = 23, ACTIONS(3), 1, sym_comment, ACTIONS(293), 1, @@ -30433,65 +30649,63 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(317), 1, sym__template_string_start, + ACTIONS(602), 1, + anon_sym_LPAREN, ACTIONS(608), 1, anon_sym_LBRACK, ACTIONS(680), 1, anon_sym_not, - ACTIONS(682), 1, - anon_sym_lambda, - ACTIONS(684), 1, - anon_sym_yield, - ACTIONS(776), 1, - anon_sym_LPAREN, - ACTIONS(792), 1, - anon_sym_STAR, - ACTIONS(816), 1, + ACTIONS(808), 1, sym_identifier, - ACTIONS(822), 1, + ACTIONS(816), 1, anon_sym_await, - ACTIONS(894), 1, - anon_sym_RBRACK, - STATE(645), 1, + ACTIONS(864), 1, + anon_sym_lambda, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(726), 1, + STATE(705), 1, sym_primary_expression, - STATE(1079), 1, + STATE(1097), 1, sym_expression, - STATE(1716), 1, - sym__collection_elements, ACTIONS(309), 2, sym_ellipsis, sym_float, + STATE(1222), 2, + sym__expression_within_for_in_clause, + sym_lambda_within_for_in_clause, ACTIONS(606), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1290), 3, - sym_list_splat, - sym_parenthesized_list_splat, - sym_yield, + ACTIONS(914), 3, + anon_sym_RPAREN, + anon_sym_RBRACK, + anon_sym_RBRACE, + ACTIONS(916), 3, + anon_sym_if, + anon_sym_async, + anon_sym_for, ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(818), 6, + ACTIONS(810), 5, anon_sym_lazy, anon_sym_print, - anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(725), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -30509,75 +30723,74 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [7982] = 26, + [8119] = 25, ACTIONS(3), 1, sym_comment, + ACTIONS(55), 1, + anon_sym_STAR_STAR, ACTIONS(293), 1, anon_sym_LBRACE, + ACTIONS(305), 1, + anon_sym_lambda, ACTIONS(315), 1, sym__string_start, ACTIONS(317), 1, sym__template_string_start, - ACTIONS(608), 1, + ACTIONS(596), 1, anon_sym_LBRACK, - ACTIONS(680), 1, + ACTIONS(756), 1, + anon_sym_STAR, + ACTIONS(768), 1, anon_sym_not, - ACTIONS(682), 1, - anon_sym_lambda, - ACTIONS(684), 1, - anon_sym_yield, - ACTIONS(776), 1, + ACTIONS(778), 1, anon_sym_LPAREN, - ACTIONS(792), 1, - anon_sym_STAR, - ACTIONS(816), 1, + ACTIONS(828), 1, sym_identifier, - ACTIONS(820), 1, - anon_sym_RPAREN, - ACTIONS(822), 1, + ACTIONS(832), 1, anon_sym_await, - STATE(645), 1, + ACTIONS(918), 1, + anon_sym_RPAREN, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(726), 1, + STATE(704), 1, sym_primary_expression, - STATE(1090), 1, + STATE(1321), 1, sym_expression, - STATE(1404), 1, - sym_yield, - STATE(1687), 1, - sym__collection_elements, + STATE(1540), 1, + sym_parenthesized_list_splat, ACTIONS(309), 2, sym_ellipsis, sym_float, - STATE(1290), 2, - sym_list_splat, - sym_parenthesized_list_splat, - ACTIONS(606), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, + STATE(1539), 3, + sym_list_splat, + sym_dictionary_splat, + sym_keyword_argument, ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(818), 6, + ACTIONS(830), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(725), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -30595,74 +30808,74 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [8094] = 25, + [8229] = 25, ACTIONS(3), 1, sym_comment, + ACTIONS(55), 1, + anon_sym_STAR_STAR, ACTIONS(293), 1, anon_sym_LBRACE, + ACTIONS(305), 1, + anon_sym_lambda, ACTIONS(315), 1, sym__string_start, ACTIONS(317), 1, sym__template_string_start, - ACTIONS(608), 1, + ACTIONS(596), 1, anon_sym_LBRACK, - ACTIONS(680), 1, + ACTIONS(756), 1, + anon_sym_STAR, + ACTIONS(768), 1, anon_sym_not, - ACTIONS(682), 1, - anon_sym_lambda, - ACTIONS(684), 1, - anon_sym_yield, - ACTIONS(776), 1, + ACTIONS(778), 1, anon_sym_LPAREN, - ACTIONS(792), 1, - anon_sym_STAR, - ACTIONS(816), 1, + ACTIONS(828), 1, sym_identifier, - ACTIONS(822), 1, + ACTIONS(832), 1, anon_sym_await, - ACTIONS(856), 1, - anon_sym_RBRACK, - STATE(645), 1, + ACTIONS(920), 1, + anon_sym_RPAREN, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(726), 1, + STATE(704), 1, sym_primary_expression, - STATE(1085), 1, + STATE(1321), 1, sym_expression, - STATE(1698), 1, - sym__collection_elements, + STATE(1540), 1, + sym_parenthesized_list_splat, ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(606), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1290), 3, + STATE(1539), 3, sym_list_splat, - sym_parenthesized_list_splat, - sym_yield, + sym_dictionary_splat, + sym_keyword_argument, ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(818), 6, + ACTIONS(830), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(725), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -30680,74 +30893,76 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [8204] = 25, + [8339] = 27, ACTIONS(3), 1, sym_comment, - ACTIONS(55), 1, - anon_sym_STAR_STAR, ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(305), 1, - anon_sym_lambda, ACTIONS(315), 1, sym__string_start, ACTIONS(317), 1, sym__template_string_start, - ACTIONS(586), 1, + ACTIONS(608), 1, anon_sym_LBRACK, - ACTIONS(726), 1, - anon_sym_STAR, - ACTIONS(752), 1, + ACTIONS(680), 1, anon_sym_not, + ACTIONS(682), 1, + anon_sym_lambda, + ACTIONS(684), 1, + anon_sym_yield, ACTIONS(788), 1, anon_sym_LPAREN, - ACTIONS(800), 1, - sym_identifier, ACTIONS(808), 1, + sym_identifier, + ACTIONS(814), 1, + anon_sym_STAR, + ACTIONS(816), 1, anon_sym_await, - ACTIONS(906), 1, + ACTIONS(836), 1, anon_sym_RPAREN, - STATE(645), 1, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(719), 1, + STATE(705), 1, sym_primary_expression, - STATE(1280), 1, + STATE(1086), 1, sym_expression, - STATE(1524), 1, + STATE(1202), 1, + sym_list_splat, + STATE(1294), 1, sym_parenthesized_list_splat, + STATE(1432), 1, + sym_yield, + STATE(1686), 1, + sym__collection_elements, ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(301), 3, + ACTIONS(606), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1567), 3, - sym_list_splat, - sym_dictionary_splat, - sym_keyword_argument, ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(802), 6, + ACTIONS(810), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(725), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -30765,74 +30980,75 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [8314] = 25, + [8453] = 26, ACTIONS(3), 1, sym_comment, - ACTIONS(55), 1, - anon_sym_STAR_STAR, ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(305), 1, - anon_sym_lambda, ACTIONS(315), 1, sym__string_start, ACTIONS(317), 1, sym__template_string_start, - ACTIONS(586), 1, + ACTIONS(608), 1, anon_sym_LBRACK, - ACTIONS(726), 1, - anon_sym_STAR, - ACTIONS(752), 1, + ACTIONS(680), 1, anon_sym_not, + ACTIONS(682), 1, + anon_sym_lambda, + ACTIONS(684), 1, + anon_sym_yield, ACTIONS(788), 1, anon_sym_LPAREN, - ACTIONS(800), 1, - sym_identifier, ACTIONS(808), 1, + sym_identifier, + ACTIONS(814), 1, + anon_sym_STAR, + ACTIONS(816), 1, anon_sym_await, - ACTIONS(908), 1, - anon_sym_RPAREN, - STATE(645), 1, + ACTIONS(902), 1, + anon_sym_RBRACK, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(719), 1, + STATE(705), 1, sym_primary_expression, - STATE(1280), 1, + STATE(1080), 1, sym_expression, - STATE(1524), 1, - sym_parenthesized_list_splat, + STATE(1204), 1, + sym_list_splat, + STATE(1657), 1, + sym__collection_elements, ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(301), 3, + STATE(1294), 2, + sym_parenthesized_list_splat, + sym_yield, + ACTIONS(606), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1567), 3, - sym_list_splat, - sym_dictionary_splat, - sym_keyword_argument, ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(802), 6, + ACTIONS(810), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(725), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -30850,7 +31066,92 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [8424] = 26, + [8565] = 25, + ACTIONS(3), 1, + sym_comment, + ACTIONS(53), 1, + anon_sym_LBRACE, + ACTIONS(55), 1, + anon_sym_STAR_STAR, + ACTIONS(71), 1, + anon_sym_not, + ACTIONS(73), 1, + anon_sym_lambda, + ACTIONS(83), 1, + sym__string_start, + ACTIONS(85), 1, + sym__template_string_start, + ACTIONS(361), 1, + sym_identifier, + ACTIONS(367), 1, + anon_sym_await, + ACTIONS(575), 1, + anon_sym_LPAREN, + ACTIONS(579), 1, + anon_sym_LBRACK, + ACTIONS(756), 1, + anon_sym_STAR, + STATE(772), 1, + sym_template_string, + STATE(773), 1, + sym_primary_expression, + STATE(779), 1, + sym_string, + STATE(1235), 1, + sym_expression, + STATE(1591), 1, + sym_expression_list, + ACTIONS(77), 2, + sym_ellipsis, + sym_float, + ACTIONS(922), 2, + sym__newline, + anon_sym_SEMI, + STATE(1590), 2, + sym_list_splat, + sym_dictionary_splat, + ACTIONS(49), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(79), 4, + sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(363), 6, + anon_sym_lazy, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(1126), 6, + sym_named_expression, + sym_not_operator, + sym_boolean_operator, + sym_comparison_operator, + sym_lambda, + sym_conditional_expression, + STATE(950), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [8675] = 27, ACTIONS(3), 1, sym_comment, ACTIONS(293), 1, @@ -30867,34 +31168,35 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_lambda, ACTIONS(684), 1, anon_sym_yield, - ACTIONS(776), 1, + ACTIONS(788), 1, anon_sym_LPAREN, - ACTIONS(792), 1, + ACTIONS(808), 1, + sym_identifier, + ACTIONS(812), 1, + anon_sym_RPAREN, + ACTIONS(814), 1, anon_sym_STAR, ACTIONS(816), 1, - sym_identifier, - ACTIONS(822), 1, anon_sym_await, - ACTIONS(854), 1, - anon_sym_RPAREN, - STATE(645), 1, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(726), 1, + STATE(705), 1, sym_primary_expression, - STATE(1070), 1, + STATE(1074), 1, sym_expression, - STATE(1430), 1, + STATE(1226), 1, + sym_list_splat, + STATE(1294), 1, + sym_parenthesized_list_splat, + STATE(1447), 1, sym_yield, - STATE(1618), 1, + STATE(1654), 1, sym__collection_elements, ACTIONS(309), 2, sym_ellipsis, sym_float, - STATE(1290), 2, - sym_list_splat, - sym_parenthesized_list_splat, ACTIONS(606), 3, anon_sym_DASH, anon_sym_PLUS, @@ -30904,21 +31206,21 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - ACTIONS(818), 6, + ACTIONS(810), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(725), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -30936,72 +31238,75 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [8536] = 24, + [8789] = 26, ACTIONS(3), 1, sym_comment, - ACTIONS(268), 1, - sym_identifier, ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(305), 1, - anon_sym_lambda, - ACTIONS(313), 1, - anon_sym_await, ACTIONS(315), 1, sym__string_start, ACTIONS(317), 1, sym__template_string_start, - ACTIONS(575), 1, - anon_sym_LPAREN, - ACTIONS(586), 1, + ACTIONS(608), 1, anon_sym_LBRACK, - ACTIONS(752), 1, + ACTIONS(680), 1, anon_sym_not, - ACTIONS(792), 1, + ACTIONS(682), 1, + anon_sym_lambda, + ACTIONS(684), 1, + anon_sym_yield, + ACTIONS(788), 1, + anon_sym_LPAREN, + ACTIONS(808), 1, + sym_identifier, + ACTIONS(814), 1, anon_sym_STAR, - ACTIONS(910), 1, - anon_sym_COLON, - ACTIONS(912), 1, + ACTIONS(816), 1, + anon_sym_await, + ACTIONS(876), 1, anon_sym_RBRACK, - STATE(645), 1, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(719), 1, + STATE(705), 1, sym_primary_expression, - STATE(1236), 1, + STATE(1090), 1, sym_expression, + STATE(1227), 1, + sym_list_splat, + STATE(1669), 1, + sym__collection_elements, ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(301), 3, + STATE(1294), 2, + sym_parenthesized_list_splat, + sym_yield, + ACTIONS(606), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1515), 3, - sym_list_splat, - sym__index_expression, - sym_slice, ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(270), 6, + ACTIONS(810), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(725), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -31019,72 +31324,76 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [8643] = 24, + [8901] = 27, ACTIONS(3), 1, sym_comment, - ACTIONS(268), 1, - sym_identifier, ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(305), 1, - anon_sym_lambda, - ACTIONS(313), 1, - anon_sym_await, ACTIONS(315), 1, sym__string_start, ACTIONS(317), 1, sym__template_string_start, - ACTIONS(575), 1, - anon_sym_LPAREN, - ACTIONS(586), 1, + ACTIONS(608), 1, anon_sym_LBRACK, - ACTIONS(752), 1, + ACTIONS(680), 1, anon_sym_not, - ACTIONS(792), 1, + ACTIONS(682), 1, + anon_sym_lambda, + ACTIONS(684), 1, + anon_sym_yield, + ACTIONS(788), 1, + anon_sym_LPAREN, + ACTIONS(808), 1, + sym_identifier, + ACTIONS(812), 1, + anon_sym_RPAREN, + ACTIONS(814), 1, anon_sym_STAR, - ACTIONS(910), 1, - anon_sym_COLON, - STATE(645), 1, + ACTIONS(816), 1, + anon_sym_await, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(719), 1, + STATE(705), 1, sym_primary_expression, - STATE(1236), 1, + STATE(1086), 1, sym_expression, - STATE(1696), 1, - sym_index_expression_list, + STATE(1202), 1, + sym_list_splat, + STATE(1294), 1, + sym_parenthesized_list_splat, + STATE(1432), 1, + sym_yield, + STATE(1686), 1, + sym__collection_elements, ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(301), 3, + ACTIONS(606), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1394), 3, - sym_list_splat, - sym__index_expression, - sym_slice, ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(270), 6, + ACTIONS(810), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(725), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -31102,72 +31411,76 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [8750] = 24, + [9015] = 27, ACTIONS(3), 1, sym_comment, - ACTIONS(55), 1, - anon_sym_STAR_STAR, ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(305), 1, - anon_sym_lambda, ACTIONS(315), 1, sym__string_start, ACTIONS(317), 1, sym__template_string_start, - ACTIONS(586), 1, + ACTIONS(608), 1, anon_sym_LBRACK, - ACTIONS(726), 1, - anon_sym_STAR, - ACTIONS(752), 1, + ACTIONS(680), 1, anon_sym_not, + ACTIONS(682), 1, + anon_sym_lambda, + ACTIONS(684), 1, + anon_sym_yield, ACTIONS(788), 1, anon_sym_LPAREN, - ACTIONS(800), 1, - sym_identifier, ACTIONS(808), 1, + sym_identifier, + ACTIONS(814), 1, + anon_sym_STAR, + ACTIONS(816), 1, anon_sym_await, - STATE(645), 1, + ACTIONS(888), 1, + anon_sym_RPAREN, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(719), 1, + STATE(705), 1, sym_primary_expression, - STATE(1280), 1, + STATE(1084), 1, sym_expression, - STATE(1524), 1, + STATE(1229), 1, + sym_list_splat, + STATE(1294), 1, sym_parenthesized_list_splat, + STATE(1464), 1, + sym_yield, + STATE(1655), 1, + sym__collection_elements, ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(301), 3, + ACTIONS(606), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1567), 3, - sym_list_splat, - sym_dictionary_splat, - sym_keyword_argument, ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(802), 6, + ACTIONS(810), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(725), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -31185,7 +31498,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [8857] = 24, + [9129] = 24, ACTIONS(3), 1, sym_comment, ACTIONS(268), 1, @@ -31200,26 +31513,26 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(317), 1, sym__template_string_start, - ACTIONS(575), 1, + ACTIONS(585), 1, anon_sym_LPAREN, - ACTIONS(586), 1, + ACTIONS(596), 1, anon_sym_LBRACK, - ACTIONS(752), 1, + ACTIONS(768), 1, anon_sym_not, - ACTIONS(792), 1, + ACTIONS(782), 1, anon_sym_STAR, - ACTIONS(910), 1, + ACTIONS(924), 1, anon_sym_COLON, - ACTIONS(914), 1, - anon_sym_RBRACK, - STATE(645), 1, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(719), 1, + STATE(704), 1, sym_primary_expression, - STATE(1236), 1, + STATE(1246), 1, sym_expression, + STATE(1614), 1, + sym_index_expression_list, ACTIONS(309), 2, sym_ellipsis, sym_float, @@ -31227,7 +31540,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1515), 3, + STATE(1454), 3, sym_list_splat, sym__index_expression, sym_slice, @@ -31243,14 +31556,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(725), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -31268,66 +31581,72 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [8964] = 18, + [9236] = 24, ACTIONS(3), 1, sym_comment, + ACTIONS(268), 1, + sym_identifier, ACTIONS(293), 1, anon_sym_LBRACE, + ACTIONS(305), 1, + anon_sym_lambda, + ACTIONS(313), 1, + anon_sym_await, ACTIONS(315), 1, sym__string_start, ACTIONS(317), 1, sym__template_string_start, - ACTIONS(575), 1, + ACTIONS(585), 1, anon_sym_LPAREN, - ACTIONS(586), 1, + ACTIONS(596), 1, anon_sym_LBRACK, - ACTIONS(590), 1, - anon_sym_await, - STATE(645), 1, + ACTIONS(768), 1, + anon_sym_not, + ACTIONS(782), 1, + anon_sym_STAR, + ACTIONS(924), 1, + anon_sym_COLON, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(741), 1, + STATE(704), 1, sym_primary_expression, + STATE(1246), 1, + sym_expression, + STATE(1694), 1, + sym_index_expression_list, ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(272), 3, - anon_sym_DOT, - anon_sym_STAR, - anon_sym_SLASH, ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(916), 3, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_COLON, - ACTIONS(311), 5, + STATE(1470), 3, + sym_list_splat, + sym__index_expression, + sym_slice, + ACTIONS(311), 4, sym_integer, - sym_identifier, sym_true, sym_false, sym_none, - ACTIONS(573), 6, + ACTIONS(270), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - ACTIONS(303), 9, - anon_sym_GT_GT, - anon_sym_PIPE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, - STATE(725), 17, + STATE(1037), 6, + sym_named_expression, + sym_not_operator, + sym_boolean_operator, + sym_comparison_operator, + sym_lambda, + sym_conditional_expression, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -31345,7 +31664,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [9059] = 24, + [9343] = 24, ACTIONS(3), 1, sym_comment, ACTIONS(268), 1, @@ -31360,25 +31679,25 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(317), 1, sym__template_string_start, - ACTIONS(586), 1, + ACTIONS(596), 1, anon_sym_LBRACK, ACTIONS(684), 1, anon_sym_yield, - ACTIONS(752), 1, + ACTIONS(768), 1, anon_sym_not, - ACTIONS(788), 1, + ACTIONS(778), 1, anon_sym_LPAREN, - ACTIONS(792), 1, - anon_sym_STAR, - ACTIONS(814), 1, + ACTIONS(780), 1, anon_sym_RPAREN, - STATE(645), 1, + ACTIONS(782), 1, + anon_sym_STAR, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(719), 1, + STATE(704), 1, sym_primary_expression, - STATE(1193), 1, + STATE(1179), 1, sym_expression, ACTIONS(309), 2, sym_ellipsis, @@ -31387,7 +31706,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1348), 3, + STATE(1354), 3, sym_list_splat, sym_parenthesized_list_splat, sym_yield, @@ -31403,14 +31722,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(725), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -31428,7 +31747,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [9166] = 24, + [9450] = 24, ACTIONS(3), 1, sym_comment, ACTIONS(268), 1, @@ -31443,25 +31762,25 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(317), 1, sym__template_string_start, - ACTIONS(575), 1, + ACTIONS(585), 1, anon_sym_LPAREN, - ACTIONS(586), 1, + ACTIONS(596), 1, anon_sym_LBRACK, - ACTIONS(752), 1, + ACTIONS(768), 1, anon_sym_not, - ACTIONS(792), 1, + ACTIONS(782), 1, anon_sym_STAR, - ACTIONS(910), 1, + ACTIONS(924), 1, anon_sym_COLON, - STATE(645), 1, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(719), 1, + STATE(704), 1, sym_primary_expression, - STATE(1236), 1, + STATE(1246), 1, sym_expression, - STATE(1594), 1, + STATE(1660), 1, sym_index_expression_list, ACTIONS(309), 2, sym_ellipsis, @@ -31470,7 +31789,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1405), 3, + STATE(1501), 3, sym_list_splat, sym__index_expression, sym_slice, @@ -31486,14 +31805,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(725), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -31511,7 +31830,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [9273] = 24, + [9557] = 24, ACTIONS(3), 1, sym_comment, ACTIONS(268), 1, @@ -31526,26 +31845,26 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(317), 1, sym__template_string_start, - ACTIONS(586), 1, + ACTIONS(585), 1, + anon_sym_LPAREN, + ACTIONS(596), 1, anon_sym_LBRACK, - ACTIONS(684), 1, - anon_sym_yield, - ACTIONS(752), 1, + ACTIONS(768), 1, anon_sym_not, - ACTIONS(788), 1, - anon_sym_LPAREN, - ACTIONS(792), 1, + ACTIONS(782), 1, anon_sym_STAR, - ACTIONS(814), 1, - anon_sym_RPAREN, - STATE(645), 1, + ACTIONS(924), 1, + anon_sym_COLON, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(719), 1, + STATE(704), 1, sym_primary_expression, - STATE(1193), 1, + STATE(1246), 1, sym_expression, + STATE(1735), 1, + sym_index_expression_list, ACTIONS(309), 2, sym_ellipsis, sym_float, @@ -31553,10 +31872,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1348), 3, + STATE(1518), 3, sym_list_splat, - sym_parenthesized_list_splat, - sym_yield, + sym__index_expression, + sym_slice, ACTIONS(311), 4, sym_integer, sym_true, @@ -31569,14 +31888,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(725), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -31594,7 +31913,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [9380] = 24, + [9664] = 24, ACTIONS(3), 1, sym_comment, ACTIONS(268), 1, @@ -31609,26 +31928,26 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(317), 1, sym__template_string_start, - ACTIONS(575), 1, + ACTIONS(585), 1, anon_sym_LPAREN, - ACTIONS(586), 1, + ACTIONS(596), 1, anon_sym_LBRACK, - ACTIONS(752), 1, + ACTIONS(768), 1, anon_sym_not, - ACTIONS(792), 1, + ACTIONS(782), 1, anon_sym_STAR, - ACTIONS(910), 1, + ACTIONS(924), 1, anon_sym_COLON, - STATE(645), 1, + ACTIONS(926), 1, + anon_sym_RBRACK, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(719), 1, + STATE(704), 1, sym_primary_expression, - STATE(1236), 1, + STATE(1246), 1, sym_expression, - STATE(1608), 1, - sym_index_expression_list, ACTIONS(309), 2, sym_ellipsis, sym_float, @@ -31636,7 +31955,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1417), 3, + STATE(1535), 3, sym_list_splat, sym__index_expression, sym_slice, @@ -31652,14 +31971,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(725), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -31677,72 +31996,66 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [9487] = 24, + [9771] = 18, ACTIONS(3), 1, sym_comment, - ACTIONS(268), 1, - sym_identifier, ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(305), 1, - anon_sym_lambda, - ACTIONS(313), 1, - anon_sym_await, ACTIONS(315), 1, sym__string_start, ACTIONS(317), 1, sym__template_string_start, - ACTIONS(575), 1, + ACTIONS(585), 1, anon_sym_LPAREN, - ACTIONS(586), 1, + ACTIONS(596), 1, anon_sym_LBRACK, - ACTIONS(752), 1, - anon_sym_not, - ACTIONS(792), 1, - anon_sym_STAR, - ACTIONS(910), 1, - anon_sym_COLON, - STATE(645), 1, + ACTIONS(600), 1, + anon_sym_await, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(719), 1, + STATE(766), 1, sym_primary_expression, - STATE(1236), 1, - sym_expression, - STATE(1681), 1, - sym_index_expression_list, ACTIONS(309), 2, sym_ellipsis, sym_float, + ACTIONS(272), 3, + anon_sym_DOT, + anon_sym_STAR, + anon_sym_SLASH, ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1442), 3, - sym_list_splat, - sym__index_expression, - sym_slice, - ACTIONS(311), 4, + ACTIONS(928), 3, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_COLON, + ACTIONS(311), 5, sym_integer, + sym_identifier, sym_true, sym_false, sym_none, - ACTIONS(270), 6, + ACTIONS(583), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, - sym_named_expression, - sym_not_operator, - sym_boolean_operator, - sym_comparison_operator, - sym_lambda, - sym_conditional_expression, - STATE(725), 17, + ACTIONS(303), 9, + anon_sym_GT_GT, + anon_sym_PIPE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -31760,7 +32073,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [9594] = 23, + [9866] = 24, ACTIONS(3), 1, sym_comment, ACTIONS(268), 1, @@ -31775,23 +32088,25 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(317), 1, sym__template_string_start, - ACTIONS(586), 1, + ACTIONS(585), 1, + anon_sym_LPAREN, + ACTIONS(596), 1, anon_sym_LBRACK, - ACTIONS(684), 1, - anon_sym_yield, - ACTIONS(752), 1, + ACTIONS(768), 1, anon_sym_not, - ACTIONS(788), 1, - anon_sym_LPAREN, - ACTIONS(792), 1, + ACTIONS(782), 1, anon_sym_STAR, - STATE(645), 1, + ACTIONS(924), 1, + anon_sym_COLON, + ACTIONS(930), 1, + anon_sym_RBRACK, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(719), 1, + STATE(704), 1, sym_primary_expression, - STATE(1193), 1, + STATE(1246), 1, sym_expression, ACTIONS(309), 2, sym_ellipsis, @@ -31800,10 +32115,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1348), 3, + STATE(1535), 3, sym_list_splat, - sym_parenthesized_list_splat, - sym_yield, + sym__index_expression, + sym_slice, ACTIONS(311), 4, sym_integer, sym_true, @@ -31816,14 +32131,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(725), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -31841,39 +32156,41 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [9698] = 23, + [9973] = 24, ACTIONS(3), 1, sym_comment, - ACTIONS(268), 1, - sym_identifier, + ACTIONS(55), 1, + anon_sym_STAR_STAR, ACTIONS(293), 1, anon_sym_LBRACE, ACTIONS(305), 1, anon_sym_lambda, - ACTIONS(313), 1, - anon_sym_await, ACTIONS(315), 1, sym__string_start, ACTIONS(317), 1, sym__template_string_start, - ACTIONS(575), 1, - anon_sym_LPAREN, - ACTIONS(586), 1, + ACTIONS(596), 1, anon_sym_LBRACK, - ACTIONS(752), 1, - anon_sym_not, - ACTIONS(792), 1, + ACTIONS(756), 1, anon_sym_STAR, - ACTIONS(910), 1, - anon_sym_COLON, - STATE(645), 1, + ACTIONS(768), 1, + anon_sym_not, + ACTIONS(778), 1, + anon_sym_LPAREN, + ACTIONS(828), 1, + sym_identifier, + ACTIONS(832), 1, + anon_sym_await, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(719), 1, + STATE(704), 1, sym_primary_expression, - STATE(1236), 1, + STATE(1321), 1, sym_expression, + STATE(1540), 1, + sym_parenthesized_list_splat, ACTIONS(309), 2, sym_ellipsis, sym_float, @@ -31881,30 +32198,30 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1515), 3, + STATE(1539), 3, sym_list_splat, - sym__index_expression, - sym_slice, + sym_dictionary_splat, + sym_keyword_argument, ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(270), 6, + ACTIONS(830), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(725), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -31922,71 +32239,71 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [9802] = 24, + [10080] = 24, ACTIONS(3), 1, sym_comment, + ACTIONS(53), 1, + anon_sym_LBRACE, ACTIONS(55), 1, anon_sym_STAR_STAR, - ACTIONS(268), 1, - sym_identifier, - ACTIONS(293), 1, - anon_sym_LBRACE, - ACTIONS(305), 1, + ACTIONS(71), 1, + anon_sym_not, + ACTIONS(73), 1, anon_sym_lambda, - ACTIONS(313), 1, - anon_sym_await, - ACTIONS(315), 1, + ACTIONS(83), 1, sym__string_start, - ACTIONS(317), 1, + ACTIONS(85), 1, sym__template_string_start, + ACTIONS(361), 1, + sym_identifier, + ACTIONS(367), 1, + anon_sym_await, ACTIONS(575), 1, anon_sym_LPAREN, - ACTIONS(586), 1, + ACTIONS(579), 1, anon_sym_LBRACK, - ACTIONS(726), 1, + ACTIONS(756), 1, anon_sym_STAR, - ACTIONS(752), 1, - anon_sym_not, - STATE(645), 1, - sym_string, - STATE(658), 1, + STATE(772), 1, sym_template_string, - STATE(719), 1, + STATE(773), 1, sym_primary_expression, - STATE(1246), 1, + STATE(779), 1, + sym_string, + STATE(1239), 1, sym_expression, - STATE(1632), 1, + STATE(1554), 1, sym_expression_list, - ACTIONS(309), 2, + ACTIONS(77), 2, sym_ellipsis, sym_float, - STATE(1518), 2, + STATE(1590), 2, sym_list_splat, sym_dictionary_splat, - ACTIONS(301), 3, + ACTIONS(49), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(311), 4, + ACTIONS(79), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(270), 6, + ACTIONS(363), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, + STATE(1126), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(725), 17, + STATE(950), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -32004,7 +32321,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [9908] = 24, + [10186] = 24, ACTIONS(3), 1, sym_comment, ACTIONS(55), 1, @@ -32021,28 +32338,28 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(317), 1, sym__template_string_start, - ACTIONS(575), 1, + ACTIONS(585), 1, anon_sym_LPAREN, - ACTIONS(586), 1, + ACTIONS(596), 1, anon_sym_LBRACK, - ACTIONS(726), 1, + ACTIONS(756), 1, anon_sym_STAR, - ACTIONS(752), 1, + ACTIONS(768), 1, anon_sym_not, - STATE(645), 1, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(719), 1, + STATE(704), 1, sym_primary_expression, - STATE(1241), 1, + STATE(1265), 1, sym_expression, - STATE(1649), 1, + STATE(1645), 1, sym_expression_list, ACTIONS(309), 2, sym_ellipsis, sym_float, - STATE(1518), 2, + STATE(1573), 2, sym_list_splat, sym_dictionary_splat, ACTIONS(301), 3, @@ -32061,96 +32378,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, - sym_named_expression, - sym_not_operator, - sym_boolean_operator, - sym_comparison_operator, - sym_lambda, - sym_conditional_expression, - STATE(725), 17, - sym_binary_operator, - sym_unary_operator, - sym_attribute, - sym_subscript, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [10014] = 24, - ACTIONS(3), 1, - sym_comment, - ACTIONS(53), 1, - anon_sym_LBRACE, - ACTIONS(55), 1, - anon_sym_STAR_STAR, - ACTIONS(71), 1, - anon_sym_not, - ACTIONS(73), 1, - anon_sym_lambda, - ACTIONS(83), 1, - sym__string_start, - ACTIONS(85), 1, - sym__template_string_start, - ACTIONS(349), 1, - sym_identifier, - ACTIONS(355), 1, - anon_sym_await, - ACTIONS(594), 1, - anon_sym_LPAREN, - ACTIONS(598), 1, - anon_sym_LBRACK, - ACTIONS(726), 1, - anon_sym_STAR, - STATE(765), 1, - sym_primary_expression, - STATE(769), 1, - sym_template_string, - STATE(775), 1, - sym_string, - STATE(1207), 1, - sym_expression, - STATE(1571), 1, - sym_expression_list, - ACTIONS(77), 2, - sym_ellipsis, - sym_float, - STATE(1520), 2, - sym_list_splat, - sym_dictionary_splat, - ACTIONS(49), 3, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_TILDE, - ACTIONS(79), 4, - sym_integer, - sym_true, - sym_false, - sym_none, - ACTIONS(351), 6, - anon_sym_lazy, - anon_sym_print, - anon_sym_async, - anon_sym_match, - anon_sym_exec, - anon_sym_type, - STATE(1156), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(920), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -32168,7 +32403,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [10120] = 24, + [10292] = 24, ACTIONS(3), 1, sym_comment, ACTIONS(55), 1, @@ -32185,28 +32420,28 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(317), 1, sym__template_string_start, - ACTIONS(575), 1, + ACTIONS(585), 1, anon_sym_LPAREN, - ACTIONS(586), 1, + ACTIONS(596), 1, anon_sym_LBRACK, - ACTIONS(726), 1, + ACTIONS(756), 1, anon_sym_STAR, - ACTIONS(752), 1, + ACTIONS(768), 1, anon_sym_not, - STATE(645), 1, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(719), 1, + STATE(704), 1, sym_primary_expression, - STATE(1238), 1, + STATE(1279), 1, sym_expression, - STATE(1621), 1, + STATE(1687), 1, sym_expression_list, ACTIONS(309), 2, sym_ellipsis, sym_float, - STATE(1518), 2, + STATE(1573), 2, sym_list_splat, sym_dictionary_splat, ACTIONS(301), 3, @@ -32225,14 +32460,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(725), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -32250,11 +32485,9 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [10226] = 24, + [10398] = 23, ACTIONS(3), 1, sym_comment, - ACTIONS(55), 1, - anon_sym_STAR_STAR, ACTIONS(268), 1, sym_identifier, ACTIONS(293), 1, @@ -32267,34 +32500,35 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(317), 1, sym__template_string_start, - ACTIONS(575), 1, - anon_sym_LPAREN, - ACTIONS(586), 1, + ACTIONS(596), 1, anon_sym_LBRACK, - ACTIONS(726), 1, - anon_sym_STAR, - ACTIONS(752), 1, + ACTIONS(684), 1, + anon_sym_yield, + ACTIONS(768), 1, anon_sym_not, - STATE(645), 1, + ACTIONS(778), 1, + anon_sym_LPAREN, + ACTIONS(782), 1, + anon_sym_STAR, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(719), 1, + STATE(704), 1, sym_primary_expression, - STATE(1237), 1, + STATE(1179), 1, sym_expression, - STATE(1614), 1, - sym_expression_list, ACTIONS(309), 2, sym_ellipsis, sym_float, - STATE(1518), 2, - sym_list_splat, - sym_dictionary_splat, ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, + STATE(1354), 3, + sym_list_splat, + sym_parenthesized_list_splat, + sym_yield, ACTIONS(311), 4, sym_integer, sym_true, @@ -32307,14 +32541,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(725), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -32332,7 +32566,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [10332] = 23, + [10502] = 24, ACTIONS(3), 1, sym_comment, ACTIONS(55), 1, @@ -32349,28 +32583,30 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(317), 1, sym__template_string_start, - ACTIONS(575), 1, + ACTIONS(585), 1, anon_sym_LPAREN, - ACTIONS(586), 1, + ACTIONS(596), 1, anon_sym_LBRACK, - ACTIONS(752), 1, + ACTIONS(756), 1, + anon_sym_STAR, + ACTIONS(768), 1, anon_sym_not, - ACTIONS(918), 1, - anon_sym_RBRACE, - STATE(645), 1, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(719), 1, + STATE(704), 1, sym_primary_expression, - STATE(1313), 1, + STATE(1253), 1, sym_expression, + STATE(1636), 1, + sym_expression_list, ACTIONS(309), 2, sym_ellipsis, sym_float, - STATE(1569), 2, + STATE(1573), 2, + sym_list_splat, sym_dictionary_splat, - sym_pair, ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, @@ -32387,14 +32623,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(725), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -32412,11 +32648,9 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [10435] = 23, + [10608] = 23, ACTIONS(3), 1, sym_comment, - ACTIONS(55), 1, - anon_sym_STAR_STAR, ACTIONS(268), 1, sym_identifier, ACTIONS(293), 1, @@ -32429,32 +32663,35 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(317), 1, sym__template_string_start, - ACTIONS(575), 1, + ACTIONS(585), 1, anon_sym_LPAREN, - ACTIONS(586), 1, + ACTIONS(596), 1, anon_sym_LBRACK, - ACTIONS(752), 1, + ACTIONS(768), 1, anon_sym_not, - ACTIONS(920), 1, - anon_sym_RBRACE, - STATE(645), 1, + ACTIONS(782), 1, + anon_sym_STAR, + ACTIONS(924), 1, + anon_sym_COLON, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(719), 1, + STATE(704), 1, sym_primary_expression, - STATE(1313), 1, + STATE(1246), 1, sym_expression, ACTIONS(309), 2, sym_ellipsis, sym_float, - STATE(1569), 2, - sym_dictionary_splat, - sym_pair, ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, + STATE(1535), 3, + sym_list_splat, + sym__index_expression, + sym_slice, ACTIONS(311), 4, sym_integer, sym_true, @@ -32467,14 +32704,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(725), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -32492,7 +32729,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [10538] = 23, + [10712] = 24, ACTIONS(3), 1, sym_comment, ACTIONS(55), 1, @@ -32509,28 +32746,30 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(317), 1, sym__template_string_start, - ACTIONS(575), 1, + ACTIONS(585), 1, anon_sym_LPAREN, - ACTIONS(586), 1, + ACTIONS(596), 1, anon_sym_LBRACK, - ACTIONS(752), 1, + ACTIONS(756), 1, + anon_sym_STAR, + ACTIONS(768), 1, anon_sym_not, - ACTIONS(922), 1, - anon_sym_RBRACE, - STATE(645), 1, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(719), 1, + STATE(704), 1, sym_primary_expression, - STATE(1313), 1, + STATE(1250), 1, sym_expression, + STATE(1629), 1, + sym_expression_list, ACTIONS(309), 2, sym_ellipsis, sym_float, - STATE(1569), 2, + STATE(1573), 2, + sym_list_splat, sym_dictionary_splat, - sym_pair, ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, @@ -32547,14 +32786,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(725), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -32572,149 +32811,69 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [10641] = 23, + [10818] = 23, ACTIONS(3), 1, sym_comment, - ACTIONS(55), 1, - anon_sym_STAR_STAR, - ACTIONS(268), 1, - sym_identifier, - ACTIONS(293), 1, - anon_sym_LBRACE, - ACTIONS(305), 1, - anon_sym_lambda, - ACTIONS(313), 1, - anon_sym_await, - ACTIONS(315), 1, - sym__string_start, - ACTIONS(317), 1, - sym__template_string_start, - ACTIONS(575), 1, + ACTIONS(616), 1, anon_sym_LPAREN, - ACTIONS(586), 1, + ACTIONS(622), 1, anon_sym_LBRACK, - ACTIONS(752), 1, - anon_sym_not, - ACTIONS(924), 1, - anon_sym_RBRACE, - STATE(645), 1, - sym_string, - STATE(658), 1, - sym_template_string, - STATE(719), 1, - sym_primary_expression, - STATE(1313), 1, - sym_expression, - ACTIONS(309), 2, - sym_ellipsis, - sym_float, - STATE(1569), 2, - sym_dictionary_splat, - sym_pair, - ACTIONS(301), 3, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_TILDE, - ACTIONS(311), 4, - sym_integer, - sym_true, - sym_false, - sym_none, - ACTIONS(270), 6, - anon_sym_lazy, - anon_sym_print, - anon_sym_async, - anon_sym_match, - anon_sym_exec, - anon_sym_type, - STATE(1032), 6, - sym_named_expression, - sym_not_operator, - sym_boolean_operator, - sym_comparison_operator, - sym_lambda, - sym_conditional_expression, - STATE(725), 17, - sym_binary_operator, - sym_unary_operator, - sym_attribute, - sym_subscript, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [10744] = 23, - ACTIONS(3), 1, - sym_comment, - ACTIONS(55), 1, - anon_sym_STAR_STAR, - ACTIONS(268), 1, - sym_identifier, - ACTIONS(293), 1, + ACTIONS(624), 1, anon_sym_LBRACE, - ACTIONS(305), 1, - anon_sym_lambda, - ACTIONS(313), 1, - anon_sym_await, - ACTIONS(315), 1, + ACTIONS(630), 1, sym__string_start, - ACTIONS(317), 1, + ACTIONS(632), 1, sym__template_string_start, - ACTIONS(575), 1, - anon_sym_LPAREN, - ACTIONS(586), 1, - anon_sym_LBRACK, - ACTIONS(752), 1, + ACTIONS(750), 1, + sym_identifier, + ACTIONS(760), 1, anon_sym_not, - ACTIONS(926), 1, - anon_sym_RBRACE, - STATE(645), 1, + ACTIONS(762), 1, + anon_sym_lambda, + ACTIONS(764), 1, + anon_sym_await, + ACTIONS(774), 1, + anon_sym_STAR, + ACTIONS(776), 1, + anon_sym_STAR_STAR, + STATE(780), 1, + sym_primary_expression, + STATE(781), 1, sym_string, - STATE(658), 1, + STATE(782), 1, sym_template_string, - STATE(719), 1, - sym_primary_expression, - STATE(1313), 1, + STATE(1120), 1, sym_expression, - ACTIONS(309), 2, + ACTIONS(626), 2, sym_ellipsis, sym_float, - STATE(1569), 2, + STATE(1301), 2, + sym_list_splat, sym_dictionary_splat, - sym_pair, - ACTIONS(301), 3, + ACTIONS(620), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(311), 4, + ACTIONS(612), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(270), 6, + ACTIONS(752), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, + STATE(1131), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(725), 17, + STATE(949), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -32732,7 +32891,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [10847] = 23, + [10921] = 23, ACTIONS(3), 1, sym_comment, ACTIONS(53), 1, @@ -32745,30 +32904,30 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(85), 1, sym__template_string_start, - ACTIONS(349), 1, + ACTIONS(361), 1, sym_identifier, - ACTIONS(355), 1, + ACTIONS(367), 1, anon_sym_await, - ACTIONS(594), 1, + ACTIONS(575), 1, anon_sym_LPAREN, - ACTIONS(598), 1, + ACTIONS(579), 1, anon_sym_LBRACK, - ACTIONS(838), 1, + ACTIONS(848), 1, anon_sym_STAR, - ACTIONS(840), 1, + ACTIONS(850), 1, anon_sym_STAR_STAR, - STATE(765), 1, - sym_primary_expression, - STATE(769), 1, + STATE(772), 1, sym_template_string, - STATE(775), 1, + STATE(773), 1, + sym_primary_expression, + STATE(779), 1, sym_string, - STATE(1212), 1, + STATE(1219), 1, sym_expression, ACTIONS(77), 2, sym_ellipsis, sym_float, - STATE(1317), 2, + STATE(1393), 2, sym_list_splat, sym_dictionary_splat, ACTIONS(49), 3, @@ -32780,21 +32939,21 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - ACTIONS(351), 6, + ACTIONS(363), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1156), 6, + STATE(1126), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(920), 17, + STATE(950), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -32812,7 +32971,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [10950] = 23, + [11024] = 23, ACTIONS(3), 1, sym_comment, ACTIONS(55), 1, @@ -32829,28 +32988,28 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(317), 1, sym__template_string_start, - ACTIONS(575), 1, + ACTIONS(585), 1, anon_sym_LPAREN, - ACTIONS(586), 1, + ACTIONS(596), 1, anon_sym_LBRACK, - ACTIONS(752), 1, + ACTIONS(756), 1, + anon_sym_STAR, + ACTIONS(768), 1, anon_sym_not, - ACTIONS(928), 1, - anon_sym_RBRACE, - STATE(645), 1, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(719), 1, + STATE(704), 1, sym_primary_expression, - STATE(1313), 1, + STATE(1144), 1, sym_expression, ACTIONS(309), 2, sym_ellipsis, sym_float, - STATE(1569), 2, + STATE(1291), 2, + sym_list_splat, sym_dictionary_splat, - sym_pair, ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, @@ -32867,94 +33026,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, - sym_named_expression, - sym_not_operator, - sym_boolean_operator, - sym_comparison_operator, - sym_lambda, - sym_conditional_expression, - STATE(725), 17, - sym_binary_operator, - sym_unary_operator, - sym_attribute, - sym_subscript, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [11053] = 23, - ACTIONS(3), 1, - sym_comment, - ACTIONS(616), 1, - anon_sym_LPAREN, - ACTIONS(622), 1, - anon_sym_LBRACK, - ACTIONS(624), 1, - anon_sym_LBRACE, - ACTIONS(630), 1, - sym__string_start, - ACTIONS(632), 1, - sym__template_string_start, - ACTIONS(754), 1, - sym_identifier, - ACTIONS(760), 1, - anon_sym_not, - ACTIONS(762), 1, - anon_sym_lambda, - ACTIONS(764), 1, - anon_sym_await, - ACTIONS(810), 1, - anon_sym_STAR, - ACTIONS(812), 1, - anon_sym_STAR_STAR, - STATE(763), 1, - sym_primary_expression, - STATE(766), 1, - sym_string, - STATE(776), 1, - sym_template_string, - STATE(1154), 1, - sym_expression, - ACTIONS(626), 2, - sym_ellipsis, - sym_float, - STATE(1266), 2, - sym_list_splat, - sym_dictionary_splat, - ACTIONS(620), 3, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_TILDE, - ACTIONS(612), 4, - sym_integer, - sym_true, - sym_false, - sym_none, - ACTIONS(756), 6, - anon_sym_lazy, - anon_sym_print, - anon_sym_async, - anon_sym_match, - anon_sym_exec, - anon_sym_type, - STATE(1104), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(878), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -32972,7 +33051,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [11156] = 23, + [11127] = 23, ACTIONS(3), 1, sym_comment, ACTIONS(55), 1, @@ -32989,26 +33068,26 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(317), 1, sym__template_string_start, - ACTIONS(575), 1, + ACTIONS(585), 1, anon_sym_LPAREN, - ACTIONS(586), 1, + ACTIONS(596), 1, anon_sym_LBRACK, - ACTIONS(752), 1, + ACTIONS(768), 1, anon_sym_not, - ACTIONS(930), 1, + ACTIONS(932), 1, anon_sym_RBRACE, - STATE(645), 1, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(719), 1, + STATE(704), 1, sym_primary_expression, - STATE(1313), 1, + STATE(1395), 1, sym_expression, ACTIONS(309), 2, sym_ellipsis, sym_float, - STATE(1569), 2, + STATE(1567), 2, sym_dictionary_splat, sym_pair, ACTIONS(301), 3, @@ -33027,14 +33106,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(725), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -33052,7 +33131,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [11259] = 23, + [11230] = 23, ACTIONS(3), 1, sym_comment, ACTIONS(55), 1, @@ -33069,26 +33148,26 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(317), 1, sym__template_string_start, - ACTIONS(575), 1, + ACTIONS(585), 1, anon_sym_LPAREN, - ACTIONS(586), 1, + ACTIONS(596), 1, anon_sym_LBRACK, - ACTIONS(752), 1, + ACTIONS(768), 1, anon_sym_not, - ACTIONS(932), 1, + ACTIONS(934), 1, anon_sym_RBRACE, - STATE(645), 1, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(719), 1, + STATE(704), 1, sym_primary_expression, - STATE(1313), 1, + STATE(1395), 1, sym_expression, ACTIONS(309), 2, sym_ellipsis, sym_float, - STATE(1569), 2, + STATE(1567), 2, sym_dictionary_splat, sym_pair, ACTIONS(301), 3, @@ -33107,14 +33186,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(725), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -33132,7 +33211,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [11362] = 23, + [11333] = 23, ACTIONS(3), 1, sym_comment, ACTIONS(55), 1, @@ -33149,26 +33228,26 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(317), 1, sym__template_string_start, - ACTIONS(575), 1, + ACTIONS(585), 1, anon_sym_LPAREN, - ACTIONS(586), 1, + ACTIONS(596), 1, anon_sym_LBRACK, - ACTIONS(752), 1, + ACTIONS(768), 1, anon_sym_not, - ACTIONS(934), 1, + ACTIONS(936), 1, anon_sym_RBRACE, - STATE(645), 1, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(719), 1, + STATE(704), 1, sym_primary_expression, - STATE(1313), 1, + STATE(1395), 1, sym_expression, ACTIONS(309), 2, sym_ellipsis, sym_float, - STATE(1569), 2, + STATE(1567), 2, sym_dictionary_splat, sym_pair, ACTIONS(301), 3, @@ -33187,14 +33266,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(725), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -33212,7 +33291,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [11465] = 23, + [11436] = 23, ACTIONS(3), 1, sym_comment, ACTIONS(55), 1, @@ -33229,26 +33308,26 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(317), 1, sym__template_string_start, - ACTIONS(575), 1, + ACTIONS(585), 1, anon_sym_LPAREN, - ACTIONS(586), 1, + ACTIONS(596), 1, anon_sym_LBRACK, - ACTIONS(752), 1, + ACTIONS(768), 1, anon_sym_not, - ACTIONS(936), 1, + ACTIONS(938), 1, anon_sym_RBRACE, - STATE(645), 1, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(719), 1, + STATE(704), 1, sym_primary_expression, - STATE(1313), 1, + STATE(1395), 1, sym_expression, ACTIONS(309), 2, sym_ellipsis, sym_float, - STATE(1569), 2, + STATE(1567), 2, sym_dictionary_splat, sym_pair, ACTIONS(301), 3, @@ -33267,14 +33346,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(725), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -33292,7 +33371,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [11568] = 23, + [11539] = 23, ACTIONS(3), 1, sym_comment, ACTIONS(55), 1, @@ -33309,26 +33388,26 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(317), 1, sym__template_string_start, - ACTIONS(575), 1, + ACTIONS(585), 1, anon_sym_LPAREN, - ACTIONS(586), 1, + ACTIONS(596), 1, anon_sym_LBRACK, - ACTIONS(752), 1, + ACTIONS(768), 1, anon_sym_not, - ACTIONS(938), 1, + ACTIONS(940), 1, anon_sym_RBRACE, - STATE(645), 1, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(719), 1, + STATE(704), 1, sym_primary_expression, - STATE(1313), 1, + STATE(1395), 1, sym_expression, ACTIONS(309), 2, sym_ellipsis, sym_float, - STATE(1569), 2, + STATE(1567), 2, sym_dictionary_splat, sym_pair, ACTIONS(301), 3, @@ -33347,14 +33426,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(725), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -33372,7 +33451,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [11671] = 23, + [11642] = 23, ACTIONS(3), 1, sym_comment, ACTIONS(55), 1, @@ -33389,28 +33468,28 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(317), 1, sym__template_string_start, - ACTIONS(575), 1, + ACTIONS(585), 1, anon_sym_LPAREN, - ACTIONS(586), 1, + ACTIONS(596), 1, anon_sym_LBRACK, - ACTIONS(726), 1, - anon_sym_STAR, - ACTIONS(752), 1, + ACTIONS(768), 1, anon_sym_not, - STATE(645), 1, + ACTIONS(942), 1, + anon_sym_RBRACE, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(719), 1, + STATE(704), 1, sym_primary_expression, - STATE(1153), 1, + STATE(1395), 1, sym_expression, ACTIONS(309), 2, sym_ellipsis, sym_float, - STATE(1262), 2, - sym_list_splat, + STATE(1567), 2, sym_dictionary_splat, + sym_pair, ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, @@ -33427,14 +33506,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(725), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -33452,7 +33531,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [11774] = 23, + [11745] = 23, ACTIONS(3), 1, sym_comment, ACTIONS(55), 1, @@ -33469,26 +33548,26 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(317), 1, sym__template_string_start, - ACTIONS(575), 1, + ACTIONS(585), 1, anon_sym_LPAREN, - ACTIONS(586), 1, + ACTIONS(596), 1, anon_sym_LBRACK, - ACTIONS(752), 1, + ACTIONS(768), 1, anon_sym_not, - ACTIONS(940), 1, + ACTIONS(944), 1, anon_sym_RBRACE, - STATE(645), 1, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(719), 1, + STATE(704), 1, sym_primary_expression, - STATE(1313), 1, + STATE(1395), 1, sym_expression, ACTIONS(309), 2, sym_ellipsis, sym_float, - STATE(1569), 2, + STATE(1567), 2, sym_dictionary_splat, sym_pair, ACTIONS(301), 3, @@ -33507,14 +33586,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(725), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -33532,9 +33611,11 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [11877] = 23, + [11848] = 23, ACTIONS(3), 1, sym_comment, + ACTIONS(55), 1, + anon_sym_STAR_STAR, ACTIONS(268), 1, sym_identifier, ACTIONS(293), 1, @@ -33547,29 +33628,28 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(317), 1, sym__template_string_start, - ACTIONS(575), 1, + ACTIONS(585), 1, anon_sym_LPAREN, - ACTIONS(586), 1, + ACTIONS(596), 1, anon_sym_LBRACK, - ACTIONS(752), 1, + ACTIONS(768), 1, anon_sym_not, - ACTIONS(792), 1, - anon_sym_STAR, - STATE(645), 1, + ACTIONS(946), 1, + anon_sym_RBRACE, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(719), 1, + STATE(704), 1, sym_primary_expression, - STATE(1201), 1, + STATE(1395), 1, sym_expression, - STATE(1344), 1, - sym_list_splat, - STATE(1609), 1, - sym_type, ACTIONS(309), 2, sym_ellipsis, sym_float, + STATE(1567), 2, + sym_dictionary_splat, + sym_pair, ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, @@ -33586,14 +33666,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(725), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -33611,9 +33691,11 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [11979] = 23, + [11951] = 22, ACTIONS(3), 1, sym_comment, + ACTIONS(55), 1, + anon_sym_STAR_STAR, ACTIONS(268), 1, sym_identifier, ACTIONS(293), 1, @@ -33626,29 +33708,26 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(317), 1, sym__template_string_start, - ACTIONS(575), 1, + ACTIONS(585), 1, anon_sym_LPAREN, - ACTIONS(586), 1, + ACTIONS(596), 1, anon_sym_LBRACK, - ACTIONS(752), 1, + ACTIONS(768), 1, anon_sym_not, - ACTIONS(792), 1, - anon_sym_STAR, - STATE(645), 1, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(719), 1, + STATE(704), 1, sym_primary_expression, - STATE(1201), 1, + STATE(1395), 1, sym_expression, - STATE(1344), 1, - sym_list_splat, - STATE(1647), 1, - sym_type, ACTIONS(309), 2, sym_ellipsis, sym_float, + STATE(1567), 2, + sym_dictionary_splat, + sym_pair, ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, @@ -33665,14 +33744,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(725), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -33690,23 +33769,23 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [12081] = 9, + [12051] = 9, ACTIONS(3), 1, sym_comment, - ACTIONS(946), 1, + ACTIONS(952), 1, anon_sym_else, - ACTIONS(948), 1, + ACTIONS(954), 1, anon_sym_except, - ACTIONS(950), 1, + ACTIONS(956), 1, anon_sym_finally, - STATE(479), 1, + STATE(480), 1, sym_else_clause, - STATE(520), 1, + STATE(554), 1, sym_finally_clause, - STATE(333), 2, - sym_except_clause, - aux_sym_try_statement_repeat1, - ACTIONS(944), 13, + STATE(331), 2, + sym_except_group_clause, + aux_sym_try_statement_repeat2, + ACTIONS(950), 13, sym__dedent, sym__string_start, sym__template_string_start, @@ -33720,7 +33799,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(942), 34, + ACTIONS(948), 34, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -33755,170 +33834,26 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [12155] = 23, + [12125] = 9, ACTIONS(3), 1, sym_comment, - ACTIONS(640), 1, - anon_sym_LPAREN, - ACTIONS(646), 1, - anon_sym_LBRACK, - ACTIONS(648), 1, - anon_sym_LBRACE, - ACTIONS(654), 1, - sym__string_start, - ACTIONS(656), 1, - sym__template_string_start, ACTIONS(952), 1, - sym_identifier, - ACTIONS(956), 1, - anon_sym_STAR, - ACTIONS(958), 1, - anon_sym_COLON, - ACTIONS(960), 1, - anon_sym_not, - ACTIONS(962), 1, - anon_sym_lambda, - ACTIONS(964), 1, - anon_sym_await, - STATE(792), 1, - sym_primary_expression, - STATE(793), 1, - sym_string, - STATE(794), 1, - sym_template_string, - STATE(1210), 1, - sym_expression, - STATE(1562), 1, - sym_exception_list, - ACTIONS(650), 2, - sym_ellipsis, - sym_float, - ACTIONS(644), 3, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_TILDE, - ACTIONS(636), 4, - sym_integer, - sym_true, - sym_false, - sym_none, - ACTIONS(954), 6, - anon_sym_lazy, - anon_sym_print, - anon_sym_async, - anon_sym_match, - anon_sym_exec, - anon_sym_type, - STATE(1211), 6, - sym_named_expression, - sym_not_operator, - sym_boolean_operator, - sym_comparison_operator, - sym_lambda, - sym_conditional_expression, - STATE(970), 17, - sym_binary_operator, - sym_unary_operator, - sym_attribute, - sym_subscript, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [12257] = 9, - ACTIONS(3), 1, - sym_comment, - ACTIONS(966), 1, anon_sym_else, - ACTIONS(968), 1, + ACTIONS(954), 1, anon_sym_except, - ACTIONS(970), 1, - anon_sym_finally, - STATE(478), 1, - sym_else_clause, - STATE(607), 1, - sym_finally_clause, - STATE(316), 2, - sym_except_clause, - aux_sym_try_statement_repeat1, - ACTIONS(944), 13, - sym__string_start, - sym__template_string_start, - ts_builtin_sym_end, - anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, - sym_ellipsis, - sym_float, - ACTIONS(942), 34, - anon_sym_lazy, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, - anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, - anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_with, - anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, - anon_sym_exec, - anon_sym_type, - anon_sym_class, - anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, - anon_sym_await, - sym_true, - sym_false, - sym_none, - [12331] = 9, - ACTIONS(3), 1, - sym_comment, - ACTIONS(966), 1, - anon_sym_else, - ACTIONS(970), 1, + ACTIONS(956), 1, anon_sym_finally, - ACTIONS(972), 1, - anon_sym_except, - STATE(478), 1, + STATE(484), 1, sym_else_clause, - STATE(607), 1, + STATE(572), 1, sym_finally_clause, - STATE(317), 2, + STATE(331), 2, sym_except_group_clause, aux_sym_try_statement_repeat2, - ACTIONS(944), 13, + ACTIONS(960), 13, + sym__dedent, sym__string_start, sym__template_string_start, - ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -33929,7 +33864,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(942), 34, + ACTIONS(958), 34, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -33964,7 +33899,7 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [12405] = 22, + [12199] = 23, ACTIONS(3), 1, sym_comment, ACTIONS(268), 1, @@ -33979,28 +33914,29 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(317), 1, sym__template_string_start, - ACTIONS(575), 1, + ACTIONS(585), 1, anon_sym_LPAREN, - ACTIONS(586), 1, + ACTIONS(596), 1, anon_sym_LBRACK, - ACTIONS(752), 1, + ACTIONS(768), 1, anon_sym_not, - ACTIONS(976), 1, - anon_sym_COLON, - STATE(645), 1, + ACTIONS(782), 1, + anon_sym_STAR, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(719), 1, + STATE(704), 1, sym_primary_expression, - STATE(1256), 1, + STATE(1231), 1, sym_expression, + STATE(1333), 1, + sym_type, + STATE(1358), 1, + sym_list_splat, ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(974), 2, - anon_sym_COMMA, - anon_sym_RBRACK, ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, @@ -34017,14 +33953,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(725), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -34042,263 +33978,147 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [12505] = 9, + [12301] = 23, ACTIONS(3), 1, sym_comment, - ACTIONS(946), 1, - anon_sym_else, - ACTIONS(950), 1, - anon_sym_finally, - ACTIONS(978), 1, - anon_sym_except, - STATE(479), 1, - sym_else_clause, - STATE(520), 1, - sym_finally_clause, - STATE(334), 2, - sym_except_group_clause, - aux_sym_try_statement_repeat2, - ACTIONS(944), 13, - sym__dedent, - sym__string_start, - sym__template_string_start, - anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_LBRACK, + ACTIONS(53), 1, anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, - sym_ellipsis, - sym_float, - ACTIONS(942), 34, - anon_sym_lazy, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, - anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, - anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_with, - anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, - anon_sym_exec, - anon_sym_type, - anon_sym_class, + ACTIONS(71), 1, anon_sym_not, + ACTIONS(73), 1, anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, - anon_sym_await, - sym_true, - sym_false, - sym_none, - [12579] = 9, - ACTIONS(3), 1, - sym_comment, - ACTIONS(966), 1, - anon_sym_else, - ACTIONS(968), 1, - anon_sym_except, - ACTIONS(970), 1, - anon_sym_finally, - STATE(484), 1, - sym_else_clause, - STATE(569), 1, - sym_finally_clause, - STATE(316), 2, - sym_except_clause, - aux_sym_try_statement_repeat1, - ACTIONS(980), 13, + ACTIONS(83), 1, sym__string_start, + ACTIONS(85), 1, sym__template_string_start, - ts_builtin_sym_end, + ACTIONS(361), 1, + sym_identifier, + ACTIONS(367), 1, + anon_sym_await, + ACTIONS(575), 1, anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, + ACTIONS(579), 1, anon_sym_LBRACK, - anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, + ACTIONS(962), 1, + anon_sym_STAR, + STATE(772), 1, + sym_template_string, + STATE(773), 1, + sym_primary_expression, + STATE(779), 1, + sym_string, + STATE(1271), 1, + sym_expression, + STATE(1436), 1, + sym_type, + STATE(1529), 1, + sym_list_splat, + ACTIONS(77), 2, sym_ellipsis, sym_float, - ACTIONS(982), 34, - anon_sym_lazy, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, - anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, - anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_with, - anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, - anon_sym_exec, - anon_sym_type, - anon_sym_class, - anon_sym_not, - anon_sym_lambda, - anon_sym_yield, + ACTIONS(49), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(79), 4, sym_integer, - sym_identifier, - anon_sym_await, sym_true, sym_false, sym_none, - [12653] = 9, - ACTIONS(3), 1, - sym_comment, - ACTIONS(946), 1, - anon_sym_else, - ACTIONS(948), 1, - anon_sym_except, - ACTIONS(950), 1, - anon_sym_finally, - STATE(466), 1, - sym_else_clause, - STATE(534), 1, - sym_finally_clause, - STATE(333), 2, - sym_except_clause, - aux_sym_try_statement_repeat1, - ACTIONS(980), 13, - sym__dedent, - sym__string_start, - sym__template_string_start, - anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, - sym_ellipsis, - sym_float, - ACTIONS(982), 34, + ACTIONS(363), 6, anon_sym_lazy, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_with, anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - anon_sym_class, - anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, - anon_sym_await, - sym_true, - sym_false, - sym_none, - [12727] = 23, + STATE(1126), 6, + sym_named_expression, + sym_not_operator, + sym_boolean_operator, + sym_comparison_operator, + sym_lambda, + sym_conditional_expression, + STATE(950), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [12403] = 23, ACTIONS(3), 1, sym_comment, - ACTIONS(268), 1, - sym_identifier, - ACTIONS(293), 1, + ACTIONS(650), 1, + anon_sym_LPAREN, + ACTIONS(656), 1, + anon_sym_LBRACK, + ACTIONS(658), 1, anon_sym_LBRACE, - ACTIONS(305), 1, - anon_sym_lambda, - ACTIONS(313), 1, - anon_sym_await, - ACTIONS(315), 1, + ACTIONS(664), 1, sym__string_start, - ACTIONS(317), 1, + ACTIONS(666), 1, sym__template_string_start, - ACTIONS(575), 1, - anon_sym_LPAREN, - ACTIONS(586), 1, - anon_sym_LBRACK, - ACTIONS(752), 1, - anon_sym_not, - ACTIONS(792), 1, + ACTIONS(964), 1, + sym_identifier, + ACTIONS(968), 1, anon_sym_STAR, - STATE(645), 1, + ACTIONS(970), 1, + anon_sym_COLON, + ACTIONS(972), 1, + anon_sym_not, + ACTIONS(974), 1, + anon_sym_lambda, + ACTIONS(976), 1, + anon_sym_await, + STATE(789), 1, + sym_primary_expression, + STATE(790), 1, sym_string, - STATE(658), 1, + STATE(791), 1, sym_template_string, - STATE(719), 1, - sym_primary_expression, - STATE(1201), 1, + STATE(1177), 1, sym_expression, - STATE(1344), 1, - sym_list_splat, - STATE(1688), 1, - sym_type, - ACTIONS(309), 2, + STATE(1594), 1, + sym_exception_list, + ACTIONS(660), 2, sym_ellipsis, sym_float, - ACTIONS(301), 3, + ACTIONS(654), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(311), 4, + ACTIONS(646), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(270), 6, + ACTIONS(966), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, + STATE(1198), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(725), 17, + STATE(985), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -34316,7 +34136,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [12829] = 23, + [12505] = 23, ACTIONS(3), 1, sym_comment, ACTIONS(268), 1, @@ -34331,25 +34151,25 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(317), 1, sym__template_string_start, - ACTIONS(575), 1, + ACTIONS(585), 1, anon_sym_LPAREN, - ACTIONS(586), 1, + ACTIONS(596), 1, anon_sym_LBRACK, - ACTIONS(752), 1, + ACTIONS(768), 1, anon_sym_not, - ACTIONS(792), 1, + ACTIONS(782), 1, anon_sym_STAR, - STATE(645), 1, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(719), 1, + STATE(704), 1, sym_primary_expression, - STATE(1201), 1, + STATE(1231), 1, sym_expression, - STATE(1344), 1, + STATE(1358), 1, sym_list_splat, - STATE(1703), 1, + STATE(1643), 1, sym_type, ACTIONS(309), 2, sym_ellipsis, @@ -34370,14 +34190,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(725), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -34395,23 +34215,23 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [12931] = 9, + [12607] = 9, ACTIONS(3), 1, sym_comment, - ACTIONS(966), 1, + ACTIONS(978), 1, anon_sym_else, - ACTIONS(970), 1, - anon_sym_finally, - ACTIONS(972), 1, + ACTIONS(980), 1, anon_sym_except, - STATE(484), 1, + ACTIONS(982), 1, + anon_sym_finally, + STATE(481), 1, sym_else_clause, - STATE(569), 1, + STATE(557), 1, sym_finally_clause, - STATE(317), 2, + STATE(315), 2, sym_except_group_clause, aux_sym_try_statement_repeat2, - ACTIONS(980), 13, + ACTIONS(950), 13, sym__string_start, sym__template_string_start, ts_builtin_sym_end, @@ -34425,7 +34245,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(982), 34, + ACTIONS(948), 34, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -34460,68 +34280,68 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [13005] = 23, + [12681] = 23, ACTIONS(3), 1, sym_comment, - ACTIONS(640), 1, - anon_sym_LPAREN, - ACTIONS(646), 1, - anon_sym_LBRACK, - ACTIONS(648), 1, + ACTIONS(268), 1, + sym_identifier, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(654), 1, + ACTIONS(305), 1, + anon_sym_lambda, + ACTIONS(313), 1, + anon_sym_await, + ACTIONS(315), 1, sym__string_start, - ACTIONS(656), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(952), 1, - sym_identifier, - ACTIONS(960), 1, + ACTIONS(585), 1, + anon_sym_LPAREN, + ACTIONS(596), 1, + anon_sym_LBRACK, + ACTIONS(768), 1, anon_sym_not, - ACTIONS(962), 1, - anon_sym_lambda, - ACTIONS(964), 1, - anon_sym_await, - ACTIONS(984), 1, + ACTIONS(782), 1, anon_sym_STAR, - ACTIONS(986), 1, - anon_sym_COLON, - STATE(792), 1, - sym_primary_expression, - STATE(793), 1, + STATE(694), 1, sym_string, - STATE(794), 1, + STATE(698), 1, sym_template_string, - STATE(1203), 1, + STATE(704), 1, + sym_primary_expression, + STATE(1231), 1, sym_expression, - STATE(1548), 1, - sym_exception_list, - ACTIONS(650), 2, + STATE(1358), 1, + sym_list_splat, + STATE(1494), 1, + sym_type, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(644), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(636), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(954), 6, + ACTIONS(270), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1211), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(970), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -34539,7 +34359,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [13107] = 23, + [12783] = 23, ACTIONS(3), 1, sym_comment, ACTIONS(268), 1, @@ -34554,25 +34374,25 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(317), 1, sym__template_string_start, - ACTIONS(575), 1, + ACTIONS(585), 1, anon_sym_LPAREN, - ACTIONS(586), 1, + ACTIONS(596), 1, anon_sym_LBRACK, - ACTIONS(752), 1, + ACTIONS(768), 1, anon_sym_not, - ACTIONS(792), 1, + ACTIONS(782), 1, anon_sym_STAR, - STATE(645), 1, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(719), 1, + STATE(704), 1, sym_primary_expression, - STATE(1201), 1, + STATE(1231), 1, sym_expression, - STATE(1344), 1, + STATE(1358), 1, sym_list_splat, - STATE(1634), 1, + STATE(1715), 1, sym_type, ACTIONS(309), 2, sym_ellipsis, @@ -34593,14 +34413,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(725), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -34618,23 +34438,23 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [13209] = 9, + [12885] = 9, ACTIONS(3), 1, sym_comment, - ACTIONS(946), 1, + ACTIONS(952), 1, anon_sym_else, - ACTIONS(950), 1, + ACTIONS(956), 1, anon_sym_finally, - ACTIONS(978), 1, + ACTIONS(984), 1, anon_sym_except, - STATE(466), 1, + STATE(484), 1, sym_else_clause, - STATE(534), 1, + STATE(572), 1, sym_finally_clause, - STATE(334), 2, - sym_except_group_clause, - aux_sym_try_statement_repeat2, - ACTIONS(980), 13, + STATE(324), 2, + sym_except_clause, + aux_sym_try_statement_repeat1, + ACTIONS(960), 13, sym__dedent, sym__string_start, sym__template_string_start, @@ -34648,7 +34468,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(982), 34, + ACTIONS(958), 34, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -34683,11 +34503,9 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [13283] = 22, + [12959] = 22, ACTIONS(3), 1, sym_comment, - ACTIONS(55), 1, - anon_sym_STAR_STAR, ACTIONS(268), 1, sym_identifier, ACTIONS(293), 1, @@ -34700,26 +34518,28 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(317), 1, sym__template_string_start, - ACTIONS(575), 1, + ACTIONS(585), 1, anon_sym_LPAREN, - ACTIONS(586), 1, + ACTIONS(596), 1, anon_sym_LBRACK, - ACTIONS(752), 1, + ACTIONS(768), 1, anon_sym_not, - STATE(645), 1, + ACTIONS(988), 1, + anon_sym_COLON, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(719), 1, + STATE(704), 1, sym_primary_expression, - STATE(1313), 1, + STATE(1264), 1, sym_expression, ACTIONS(309), 2, sym_ellipsis, sym_float, - STATE(1569), 2, - sym_dictionary_splat, - sym_pair, + ACTIONS(986), 2, + anon_sym_COMMA, + anon_sym_RBRACK, ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, @@ -34736,14 +34556,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(725), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -34761,68 +34581,68 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [13383] = 23, + [13059] = 23, ACTIONS(3), 1, sym_comment, - ACTIONS(268), 1, - sym_identifier, - ACTIONS(293), 1, + ACTIONS(650), 1, + anon_sym_LPAREN, + ACTIONS(656), 1, + anon_sym_LBRACK, + ACTIONS(658), 1, anon_sym_LBRACE, - ACTIONS(305), 1, - anon_sym_lambda, - ACTIONS(313), 1, - anon_sym_await, - ACTIONS(315), 1, + ACTIONS(664), 1, sym__string_start, - ACTIONS(317), 1, + ACTIONS(666), 1, sym__template_string_start, - ACTIONS(575), 1, - anon_sym_LPAREN, - ACTIONS(586), 1, - anon_sym_LBRACK, - ACTIONS(752), 1, + ACTIONS(964), 1, + sym_identifier, + ACTIONS(972), 1, anon_sym_not, - ACTIONS(792), 1, + ACTIONS(974), 1, + anon_sym_lambda, + ACTIONS(976), 1, + anon_sym_await, + ACTIONS(990), 1, anon_sym_STAR, - STATE(645), 1, + ACTIONS(992), 1, + anon_sym_COLON, + STATE(789), 1, + sym_primary_expression, + STATE(790), 1, sym_string, - STATE(658), 1, + STATE(791), 1, sym_template_string, - STATE(719), 1, - sym_primary_expression, - STATE(1201), 1, + STATE(1208), 1, sym_expression, - STATE(1325), 1, - sym_type, - STATE(1344), 1, - sym_list_splat, - ACTIONS(309), 2, + STATE(1547), 1, + sym_exception_list, + ACTIONS(660), 2, sym_ellipsis, sym_float, - ACTIONS(301), 3, + ACTIONS(654), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(311), 4, + ACTIONS(646), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(270), 6, + ACTIONS(966), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, + STATE(1198), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(725), 17, + STATE(985), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -34840,7 +34660,72 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [13485] = 22, + [13161] = 9, + ACTIONS(3), 1, + sym_comment, + ACTIONS(978), 1, + anon_sym_else, + ACTIONS(982), 1, + anon_sym_finally, + ACTIONS(994), 1, + anon_sym_except, + STATE(481), 1, + sym_else_clause, + STATE(557), 1, + sym_finally_clause, + STATE(314), 2, + sym_except_clause, + aux_sym_try_statement_repeat1, + ACTIONS(950), 13, + sym__string_start, + sym__template_string_start, + ts_builtin_sym_end, + anon_sym_LPAREN, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_TILDE, + sym_ellipsis, + sym_float, + ACTIONS(948), 34, + anon_sym_lazy, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, + anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, + anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_with, + anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, + anon_sym_exec, + anon_sym_type, + anon_sym_class, + anon_sym_not, + anon_sym_lambda, + anon_sym_yield, + sym_integer, + sym_identifier, + anon_sym_await, + sym_true, + sym_false, + sym_none, + [13235] = 22, ACTIONS(3), 1, sym_comment, ACTIONS(268), 1, @@ -34855,26 +34740,26 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(317), 1, sym__template_string_start, - ACTIONS(575), 1, + ACTIONS(585), 1, anon_sym_LPAREN, - ACTIONS(586), 1, + ACTIONS(596), 1, anon_sym_LBRACK, - ACTIONS(752), 1, + ACTIONS(768), 1, anon_sym_not, - ACTIONS(990), 1, + ACTIONS(998), 1, anon_sym_COLON, - STATE(645), 1, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(719), 1, + STATE(704), 1, sym_primary_expression, - STATE(1223), 1, + STATE(1244), 1, sym_expression, ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(988), 2, + ACTIONS(996), 2, anon_sym_COMMA, anon_sym_RBRACK, ACTIONS(301), 3, @@ -34893,14 +34778,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(725), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -34918,68 +34803,68 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [13585] = 23, + [13335] = 23, ACTIONS(3), 1, sym_comment, - ACTIONS(53), 1, + ACTIONS(268), 1, + sym_identifier, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(71), 1, - anon_sym_not, - ACTIONS(73), 1, + ACTIONS(305), 1, anon_sym_lambda, - ACTIONS(83), 1, + ACTIONS(313), 1, + anon_sym_await, + ACTIONS(315), 1, sym__string_start, - ACTIONS(85), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(349), 1, - sym_identifier, - ACTIONS(355), 1, - anon_sym_await, - ACTIONS(594), 1, + ACTIONS(585), 1, anon_sym_LPAREN, - ACTIONS(598), 1, + ACTIONS(596), 1, anon_sym_LBRACK, - ACTIONS(992), 1, + ACTIONS(768), 1, + anon_sym_not, + ACTIONS(782), 1, anon_sym_STAR, - STATE(765), 1, - sym_primary_expression, - STATE(769), 1, - sym_template_string, - STATE(775), 1, + STATE(694), 1, sym_string, - STATE(1243), 1, + STATE(698), 1, + sym_template_string, + STATE(704), 1, + sym_primary_expression, + STATE(1231), 1, sym_expression, - STATE(1392), 1, - sym_type, - STATE(1451), 1, + STATE(1358), 1, sym_list_splat, - ACTIONS(77), 2, + STATE(1630), 1, + sym_type, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(49), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(79), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(351), 6, + ACTIONS(270), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1156), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(920), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -34997,7 +34882,202 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [13687] = 23, + [13437] = 9, + ACTIONS(3), 1, + sym_comment, + ACTIONS(978), 1, + anon_sym_else, + ACTIONS(982), 1, + anon_sym_finally, + ACTIONS(994), 1, + anon_sym_except, + STATE(476), 1, + sym_else_clause, + STATE(537), 1, + sym_finally_clause, + STATE(314), 2, + sym_except_clause, + aux_sym_try_statement_repeat1, + ACTIONS(960), 13, + sym__string_start, + sym__template_string_start, + ts_builtin_sym_end, + anon_sym_LPAREN, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_TILDE, + sym_ellipsis, + sym_float, + ACTIONS(958), 34, + anon_sym_lazy, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, + anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, + anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_with, + anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, + anon_sym_exec, + anon_sym_type, + anon_sym_class, + anon_sym_not, + anon_sym_lambda, + anon_sym_yield, + sym_integer, + sym_identifier, + anon_sym_await, + sym_true, + sym_false, + sym_none, + [13511] = 9, + ACTIONS(3), 1, + sym_comment, + ACTIONS(978), 1, + anon_sym_else, + ACTIONS(980), 1, + anon_sym_except, + ACTIONS(982), 1, + anon_sym_finally, + STATE(476), 1, + sym_else_clause, + STATE(537), 1, + sym_finally_clause, + STATE(315), 2, + sym_except_group_clause, + aux_sym_try_statement_repeat2, + ACTIONS(960), 13, + sym__string_start, + sym__template_string_start, + ts_builtin_sym_end, + anon_sym_LPAREN, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_TILDE, + sym_ellipsis, + sym_float, + ACTIONS(958), 34, + anon_sym_lazy, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, + anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, + anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_with, + anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, + anon_sym_exec, + anon_sym_type, + anon_sym_class, + anon_sym_not, + anon_sym_lambda, + anon_sym_yield, + sym_integer, + sym_identifier, + anon_sym_await, + sym_true, + sym_false, + sym_none, + [13585] = 9, + ACTIONS(3), 1, + sym_comment, + ACTIONS(952), 1, + anon_sym_else, + ACTIONS(956), 1, + anon_sym_finally, + ACTIONS(984), 1, + anon_sym_except, + STATE(480), 1, + sym_else_clause, + STATE(554), 1, + sym_finally_clause, + STATE(324), 2, + sym_except_clause, + aux_sym_try_statement_repeat1, + ACTIONS(950), 13, + sym__dedent, + sym__string_start, + sym__template_string_start, + anon_sym_LPAREN, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_TILDE, + sym_ellipsis, + sym_float, + ACTIONS(948), 34, + anon_sym_lazy, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, + anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, + anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_with, + anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, + anon_sym_exec, + anon_sym_type, + anon_sym_class, + anon_sym_not, + anon_sym_lambda, + anon_sym_yield, + sym_integer, + sym_identifier, + anon_sym_await, + sym_true, + sym_false, + sym_none, + [13659] = 23, ACTIONS(3), 1, sym_comment, ACTIONS(268), 1, @@ -35012,25 +35092,25 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(317), 1, sym__template_string_start, - ACTIONS(575), 1, + ACTIONS(585), 1, anon_sym_LPAREN, - ACTIONS(586), 1, + ACTIONS(596), 1, anon_sym_LBRACK, - ACTIONS(752), 1, + ACTIONS(768), 1, anon_sym_not, - ACTIONS(792), 1, + ACTIONS(782), 1, anon_sym_STAR, - STATE(645), 1, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(719), 1, + STATE(704), 1, sym_primary_expression, - STATE(1201), 1, + STATE(1231), 1, sym_expression, - STATE(1344), 1, + STATE(1358), 1, sym_list_splat, - STATE(1389), 1, + STATE(1747), 1, sym_type, ACTIONS(309), 2, sym_ellipsis, @@ -35051,14 +35131,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(725), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -35076,7 +35156,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [13789] = 23, + [13761] = 23, ACTIONS(3), 1, sym_comment, ACTIONS(268), 1, @@ -35091,25 +35171,25 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(317), 1, sym__template_string_start, - ACTIONS(575), 1, + ACTIONS(585), 1, anon_sym_LPAREN, - ACTIONS(586), 1, + ACTIONS(596), 1, anon_sym_LBRACK, - ACTIONS(752), 1, + ACTIONS(768), 1, anon_sym_not, - ACTIONS(792), 1, + ACTIONS(782), 1, anon_sym_STAR, - STATE(645), 1, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(719), 1, + STATE(704), 1, sym_primary_expression, - STATE(1201), 1, + STATE(1231), 1, sym_expression, - STATE(1344), 1, + STATE(1358), 1, sym_list_splat, - STATE(1627), 1, + STATE(1642), 1, sym_type, ACTIONS(309), 2, sym_ellipsis, @@ -35130,14 +35210,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(725), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -35155,7 +35235,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [13891] = 23, + [13863] = 23, ACTIONS(3), 1, sym_comment, ACTIONS(268), 1, @@ -35170,25 +35250,25 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(317), 1, sym__template_string_start, - ACTIONS(575), 1, + ACTIONS(585), 1, anon_sym_LPAREN, - ACTIONS(586), 1, + ACTIONS(596), 1, anon_sym_LBRACK, - ACTIONS(752), 1, + ACTIONS(768), 1, anon_sym_not, - ACTIONS(792), 1, + ACTIONS(782), 1, anon_sym_STAR, - STATE(645), 1, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(719), 1, + STATE(704), 1, sym_primary_expression, - STATE(1201), 1, + STATE(1231), 1, sym_expression, - STATE(1344), 1, + STATE(1358), 1, sym_list_splat, - STATE(1629), 1, + STATE(1644), 1, sym_type, ACTIONS(309), 2, sym_ellipsis, @@ -35209,14 +35289,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(725), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -35234,7 +35314,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [13993] = 23, + [13965] = 23, ACTIONS(3), 1, sym_comment, ACTIONS(268), 1, @@ -35249,25 +35329,25 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(317), 1, sym__template_string_start, - ACTIONS(575), 1, + ACTIONS(585), 1, anon_sym_LPAREN, - ACTIONS(586), 1, + ACTIONS(596), 1, anon_sym_LBRACK, - ACTIONS(752), 1, + ACTIONS(768), 1, anon_sym_not, - ACTIONS(792), 1, + ACTIONS(782), 1, anon_sym_STAR, - STATE(645), 1, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(719), 1, + STATE(704), 1, sym_primary_expression, - STATE(1201), 1, + STATE(1231), 1, sym_expression, - STATE(1344), 1, + STATE(1358), 1, sym_list_splat, - STATE(1633), 1, + STATE(1648), 1, sym_type, ACTIONS(309), 2, sym_ellipsis, @@ -35288,14 +35368,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(725), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -35313,65 +35393,68 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [14095] = 21, + [14067] = 23, ACTIONS(3), 1, sym_comment, - ACTIONS(53), 1, + ACTIONS(268), 1, + sym_identifier, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(71), 1, - anon_sym_not, - ACTIONS(73), 1, + ACTIONS(305), 1, anon_sym_lambda, - ACTIONS(83), 1, + ACTIONS(313), 1, + anon_sym_await, + ACTIONS(315), 1, sym__string_start, - ACTIONS(85), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(349), 1, - sym_identifier, - ACTIONS(355), 1, - anon_sym_await, - ACTIONS(594), 1, + ACTIONS(585), 1, anon_sym_LPAREN, - ACTIONS(598), 1, + ACTIONS(596), 1, anon_sym_LBRACK, - STATE(765), 1, - sym_primary_expression, - STATE(769), 1, - sym_template_string, - STATE(775), 1, + ACTIONS(768), 1, + anon_sym_not, + ACTIONS(782), 1, + anon_sym_STAR, + STATE(694), 1, sym_string, - STATE(1240), 1, + STATE(698), 1, + sym_template_string, + STATE(704), 1, + sym_primary_expression, + STATE(1231), 1, sym_expression, - ACTIONS(77), 2, + STATE(1358), 1, + sym_list_splat, + STATE(1649), 1, + sym_type, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(994), 2, - sym__newline, - anon_sym_SEMI, - ACTIONS(49), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(79), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(351), 6, + ACTIONS(270), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1156), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(920), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -35389,65 +35472,66 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [14192] = 21, + [14169] = 22, ACTIONS(3), 1, sym_comment, - ACTIONS(268), 1, - sym_identifier, - ACTIONS(293), 1, + ACTIONS(650), 1, + anon_sym_LPAREN, + ACTIONS(656), 1, + anon_sym_LBRACK, + ACTIONS(658), 1, anon_sym_LBRACE, - ACTIONS(305), 1, - anon_sym_lambda, - ACTIONS(313), 1, - anon_sym_await, - ACTIONS(315), 1, + ACTIONS(664), 1, sym__string_start, - ACTIONS(317), 1, + ACTIONS(666), 1, sym__template_string_start, - ACTIONS(575), 1, - anon_sym_LPAREN, - ACTIONS(586), 1, - anon_sym_LBRACK, - ACTIONS(752), 1, + ACTIONS(964), 1, + sym_identifier, + ACTIONS(972), 1, anon_sym_not, - STATE(645), 1, + ACTIONS(974), 1, + anon_sym_lambda, + ACTIONS(976), 1, + anon_sym_await, + ACTIONS(1000), 1, + anon_sym_RPAREN, + STATE(789), 1, + sym_primary_expression, + STATE(790), 1, sym_string, - STATE(658), 1, + STATE(791), 1, sym_template_string, - STATE(719), 1, - sym_primary_expression, - STATE(1276), 1, + STATE(1192), 1, sym_expression, - ACTIONS(309), 2, + STATE(1522), 1, + sym_with_item, + ACTIONS(660), 2, sym_ellipsis, sym_float, - ACTIONS(996), 2, - anon_sym_COMMA, - anon_sym_RBRACK, - ACTIONS(301), 3, + ACTIONS(654), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(311), 4, + ACTIONS(646), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(270), 6, + ACTIONS(966), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, + STATE(1198), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(725), 17, + STATE(985), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -35465,65 +35549,66 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [14289] = 21, + [14268] = 22, ACTIONS(3), 1, sym_comment, - ACTIONS(53), 1, + ACTIONS(656), 1, + anon_sym_LBRACK, + ACTIONS(658), 1, anon_sym_LBRACE, - ACTIONS(71), 1, - anon_sym_not, - ACTIONS(73), 1, - anon_sym_lambda, - ACTIONS(83), 1, + ACTIONS(664), 1, sym__string_start, - ACTIONS(85), 1, + ACTIONS(666), 1, sym__template_string_start, - ACTIONS(349), 1, + ACTIONS(964), 1, sym_identifier, - ACTIONS(355), 1, + ACTIONS(972), 1, + anon_sym_not, + ACTIONS(974), 1, + anon_sym_lambda, + ACTIONS(976), 1, anon_sym_await, - ACTIONS(594), 1, + ACTIONS(1002), 1, anon_sym_LPAREN, - ACTIONS(598), 1, - anon_sym_LBRACK, - STATE(765), 1, + STATE(789), 1, sym_primary_expression, - STATE(769), 1, - sym_template_string, - STATE(775), 1, + STATE(790), 1, sym_string, - STATE(1240), 1, + STATE(791), 1, + sym_template_string, + STATE(1192), 1, sym_expression, - ACTIONS(77), 2, + STATE(1478), 1, + sym_with_item, + STATE(1719), 1, + sym_with_clause, + ACTIONS(660), 2, sym_ellipsis, sym_float, - ACTIONS(998), 2, - sym__newline, - anon_sym_SEMI, - ACTIONS(49), 3, + ACTIONS(654), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(79), 4, + ACTIONS(646), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(351), 6, + ACTIONS(966), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1156), 6, + STATE(1198), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(920), 17, + STATE(985), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -35541,7 +35626,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [14386] = 21, + [14367] = 21, ACTIONS(3), 1, sym_comment, ACTIONS(53), 1, @@ -35554,26 +35639,26 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(85), 1, sym__template_string_start, - ACTIONS(349), 1, + ACTIONS(361), 1, sym_identifier, - ACTIONS(355), 1, + ACTIONS(367), 1, anon_sym_await, - ACTIONS(594), 1, + ACTIONS(575), 1, anon_sym_LPAREN, - ACTIONS(598), 1, + ACTIONS(579), 1, anon_sym_LBRACK, - STATE(765), 1, - sym_primary_expression, - STATE(769), 1, + STATE(772), 1, sym_template_string, - STATE(775), 1, + STATE(773), 1, + sym_primary_expression, + STATE(779), 1, sym_string, - STATE(1240), 1, + STATE(1278), 1, sym_expression, ACTIONS(77), 2, sym_ellipsis, sym_float, - ACTIONS(1000), 2, + ACTIONS(1004), 2, sym__newline, anon_sym_SEMI, ACTIONS(49), 3, @@ -35585,21 +35670,21 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - ACTIONS(351), 6, + ACTIONS(363), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1156), 6, + STATE(1126), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(920), 17, + STATE(950), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -35617,65 +35702,66 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [14483] = 21, + [14464] = 22, ACTIONS(3), 1, sym_comment, - ACTIONS(53), 1, + ACTIONS(650), 1, + anon_sym_LPAREN, + ACTIONS(656), 1, + anon_sym_LBRACK, + ACTIONS(658), 1, anon_sym_LBRACE, - ACTIONS(71), 1, - anon_sym_not, - ACTIONS(73), 1, - anon_sym_lambda, - ACTIONS(83), 1, + ACTIONS(664), 1, sym__string_start, - ACTIONS(85), 1, + ACTIONS(666), 1, sym__template_string_start, - ACTIONS(349), 1, + ACTIONS(964), 1, sym_identifier, - ACTIONS(355), 1, + ACTIONS(970), 1, + anon_sym_COLON, + ACTIONS(972), 1, + anon_sym_not, + ACTIONS(974), 1, + anon_sym_lambda, + ACTIONS(976), 1, anon_sym_await, - ACTIONS(594), 1, - anon_sym_LPAREN, - ACTIONS(598), 1, - anon_sym_LBRACK, - STATE(765), 1, + STATE(789), 1, sym_primary_expression, - STATE(769), 1, - sym_template_string, - STATE(775), 1, + STATE(790), 1, sym_string, - STATE(1240), 1, + STATE(791), 1, + sym_template_string, + STATE(1177), 1, sym_expression, - ACTIONS(77), 2, + STATE(1594), 1, + sym_exception_list, + ACTIONS(660), 2, sym_ellipsis, sym_float, - ACTIONS(1002), 2, - sym__newline, - anon_sym_SEMI, - ACTIONS(49), 3, + ACTIONS(654), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(79), 4, + ACTIONS(646), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(351), 6, + ACTIONS(966), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1156), 6, + STATE(1198), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(920), 17, + STATE(985), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -35693,42 +35779,42 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [14580] = 21, + [14563] = 21, ACTIONS(3), 1, sym_comment, - ACTIONS(268), 1, - sym_identifier, ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(305), 1, - anon_sym_lambda, - ACTIONS(313), 1, - anon_sym_await, ACTIONS(315), 1, sym__string_start, ACTIONS(317), 1, sym__template_string_start, - ACTIONS(575), 1, + ACTIONS(602), 1, anon_sym_LPAREN, - ACTIONS(586), 1, + ACTIONS(608), 1, anon_sym_LBRACK, - ACTIONS(752), 1, + ACTIONS(680), 1, anon_sym_not, - STATE(645), 1, + ACTIONS(808), 1, + sym_identifier, + ACTIONS(816), 1, + anon_sym_await, + ACTIONS(864), 1, + anon_sym_lambda, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(719), 1, + STATE(705), 1, sym_primary_expression, - STATE(1261), 1, + STATE(1104), 1, sym_expression, ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(1004), 2, - anon_sym_COMMA, - anon_sym_RBRACK, - ACTIONS(301), 3, + STATE(1178), 2, + sym__expression_within_for_in_clause, + sym_lambda_within_for_in_clause, + ACTIONS(606), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, @@ -35737,21 +35823,21 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - ACTIONS(270), 6, + ACTIONS(810), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(725), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -35769,42 +35855,43 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [14677] = 21, + [14660] = 22, ACTIONS(3), 1, sym_comment, + ACTIONS(268), 1, + sym_identifier, ACTIONS(293), 1, anon_sym_LBRACE, + ACTIONS(305), 1, + anon_sym_lambda, + ACTIONS(313), 1, + anon_sym_await, ACTIONS(315), 1, sym__string_start, ACTIONS(317), 1, sym__template_string_start, - ACTIONS(602), 1, + ACTIONS(585), 1, anon_sym_LPAREN, - ACTIONS(608), 1, + ACTIONS(596), 1, anon_sym_LBRACK, - ACTIONS(680), 1, + ACTIONS(768), 1, anon_sym_not, - ACTIONS(816), 1, - sym_identifier, - ACTIONS(822), 1, - anon_sym_await, - ACTIONS(834), 1, - anon_sym_lambda, - STATE(645), 1, + ACTIONS(782), 1, + anon_sym_STAR, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(726), 1, + STATE(704), 1, sym_primary_expression, - STATE(1097), 1, + STATE(1317), 1, sym_expression, + STATE(1566), 1, + sym_list_splat, ACTIONS(309), 2, sym_ellipsis, sym_float, - STATE(1208), 2, - sym__expression_within_for_in_clause, - sym_lambda_within_for_in_clause, - ACTIONS(606), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, @@ -35813,21 +35900,21 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - ACTIONS(818), 6, + ACTIONS(270), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(725), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -35845,66 +35932,66 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [14774] = 22, + [14759] = 22, ACTIONS(3), 1, sym_comment, - ACTIONS(640), 1, - anon_sym_LPAREN, - ACTIONS(646), 1, + ACTIONS(656), 1, anon_sym_LBRACK, - ACTIONS(648), 1, + ACTIONS(658), 1, anon_sym_LBRACE, - ACTIONS(654), 1, + ACTIONS(664), 1, sym__string_start, - ACTIONS(656), 1, + ACTIONS(666), 1, sym__template_string_start, - ACTIONS(952), 1, + ACTIONS(964), 1, sym_identifier, - ACTIONS(960), 1, + ACTIONS(972), 1, anon_sym_not, - ACTIONS(962), 1, + ACTIONS(974), 1, anon_sym_lambda, - ACTIONS(964), 1, + ACTIONS(976), 1, anon_sym_await, - ACTIONS(1006), 1, - anon_sym_RPAREN, - STATE(792), 1, + ACTIONS(1002), 1, + anon_sym_LPAREN, + STATE(789), 1, sym_primary_expression, - STATE(793), 1, + STATE(790), 1, sym_string, - STATE(794), 1, + STATE(791), 1, sym_template_string, - STATE(1205), 1, + STATE(1192), 1, sym_expression, - STATE(1481), 1, + STATE(1478), 1, sym_with_item, - ACTIONS(650), 2, + STATE(1716), 1, + sym_with_clause, + ACTIONS(660), 2, sym_ellipsis, sym_float, - ACTIONS(644), 3, + ACTIONS(654), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(636), 4, + ACTIONS(646), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(954), 6, + ACTIONS(966), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1211), 6, + STATE(1198), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(970), 17, + STATE(985), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -35922,143 +36009,65 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [14873] = 22, + [14858] = 21, ACTIONS(3), 1, sym_comment, - ACTIONS(640), 1, - anon_sym_LPAREN, - ACTIONS(646), 1, - anon_sym_LBRACK, - ACTIONS(648), 1, + ACTIONS(53), 1, anon_sym_LBRACE, - ACTIONS(654), 1, - sym__string_start, - ACTIONS(656), 1, - sym__template_string_start, - ACTIONS(952), 1, - sym_identifier, - ACTIONS(960), 1, + ACTIONS(71), 1, anon_sym_not, - ACTIONS(962), 1, + ACTIONS(73), 1, anon_sym_lambda, - ACTIONS(964), 1, - anon_sym_await, - ACTIONS(986), 1, - anon_sym_COLON, - STATE(792), 1, - sym_primary_expression, - STATE(793), 1, - sym_string, - STATE(794), 1, - sym_template_string, - STATE(1203), 1, - sym_expression, - STATE(1548), 1, - sym_exception_list, - ACTIONS(650), 2, - sym_ellipsis, - sym_float, - ACTIONS(644), 3, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_TILDE, - ACTIONS(636), 4, - sym_integer, - sym_true, - sym_false, - sym_none, - ACTIONS(954), 6, - anon_sym_lazy, - anon_sym_print, - anon_sym_async, - anon_sym_match, - anon_sym_exec, - anon_sym_type, - STATE(1211), 6, - sym_named_expression, - sym_not_operator, - sym_boolean_operator, - sym_comparison_operator, - sym_lambda, - sym_conditional_expression, - STATE(970), 17, - sym_binary_operator, - sym_unary_operator, - sym_attribute, - sym_subscript, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [14972] = 22, - ACTIONS(3), 1, - sym_comment, - ACTIONS(646), 1, - anon_sym_LBRACK, - ACTIONS(648), 1, - anon_sym_LBRACE, - ACTIONS(654), 1, + ACTIONS(83), 1, sym__string_start, - ACTIONS(656), 1, + ACTIONS(85), 1, sym__template_string_start, - ACTIONS(952), 1, + ACTIONS(361), 1, sym_identifier, - ACTIONS(960), 1, - anon_sym_not, - ACTIONS(962), 1, - anon_sym_lambda, - ACTIONS(964), 1, + ACTIONS(367), 1, anon_sym_await, - ACTIONS(1008), 1, + ACTIONS(575), 1, anon_sym_LPAREN, - STATE(792), 1, + ACTIONS(579), 1, + anon_sym_LBRACK, + STATE(772), 1, + sym_template_string, + STATE(773), 1, sym_primary_expression, - STATE(793), 1, + STATE(779), 1, sym_string, - STATE(794), 1, - sym_template_string, - STATE(1205), 1, + STATE(1278), 1, sym_expression, - STATE(1477), 1, - sym_with_item, - STATE(1651), 1, - sym_with_clause, - ACTIONS(650), 2, + ACTIONS(77), 2, sym_ellipsis, sym_float, - ACTIONS(644), 3, + ACTIONS(1006), 2, + sym__newline, + anon_sym_SEMI, + ACTIONS(49), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(636), 4, + ACTIONS(79), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(954), 6, + ACTIONS(363), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1211), 6, + STATE(1126), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(970), 17, + STATE(950), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -36076,7 +36085,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [15071] = 21, + [14955] = 21, ACTIONS(3), 1, sym_comment, ACTIONS(268), 1, @@ -36091,24 +36100,24 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(317), 1, sym__template_string_start, - ACTIONS(575), 1, + ACTIONS(585), 1, anon_sym_LPAREN, - ACTIONS(586), 1, + ACTIONS(596), 1, anon_sym_LBRACK, - ACTIONS(752), 1, + ACTIONS(768), 1, anon_sym_not, - STATE(645), 1, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(719), 1, + STATE(704), 1, sym_primary_expression, - STATE(1285), 1, + STATE(1320), 1, sym_expression, ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(1010), 2, + ACTIONS(1008), 2, anon_sym_COMMA, anon_sym_RBRACK, ACTIONS(301), 3, @@ -36127,14 +36136,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(725), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -36152,42 +36161,42 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [15168] = 21, + [15052] = 21, ACTIONS(3), 1, sym_comment, + ACTIONS(268), 1, + sym_identifier, ACTIONS(293), 1, anon_sym_LBRACE, + ACTIONS(305), 1, + anon_sym_lambda, + ACTIONS(313), 1, + anon_sym_await, ACTIONS(315), 1, sym__string_start, ACTIONS(317), 1, sym__template_string_start, - ACTIONS(602), 1, + ACTIONS(585), 1, anon_sym_LPAREN, - ACTIONS(608), 1, + ACTIONS(596), 1, anon_sym_LBRACK, - ACTIONS(680), 1, + ACTIONS(768), 1, anon_sym_not, - ACTIONS(816), 1, - sym_identifier, - ACTIONS(822), 1, - anon_sym_await, - ACTIONS(834), 1, - anon_sym_lambda, - STATE(645), 1, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(726), 1, + STATE(704), 1, sym_primary_expression, - STATE(1092), 1, + STATE(1303), 1, sym_expression, ACTIONS(309), 2, sym_ellipsis, sym_float, - STATE(1173), 2, - sym__expression_within_for_in_clause, - sym_lambda_within_for_in_clause, - ACTIONS(606), 3, + ACTIONS(1010), 2, + anon_sym_COMMA, + anon_sym_RBRACK, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, @@ -36196,21 +36205,21 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - ACTIONS(818), 6, + ACTIONS(270), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(725), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -36228,7 +36237,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [15265] = 21, + [15149] = 21, ACTIONS(3), 1, sym_comment, ACTIONS(293), 1, @@ -36243,24 +36252,24 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LBRACK, ACTIONS(680), 1, anon_sym_not, - ACTIONS(816), 1, + ACTIONS(808), 1, sym_identifier, - ACTIONS(822), 1, + ACTIONS(816), 1, anon_sym_await, - ACTIONS(834), 1, + ACTIONS(864), 1, anon_sym_lambda, - STATE(645), 1, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(726), 1, + STATE(705), 1, sym_primary_expression, - STATE(1092), 1, + STATE(1097), 1, sym_expression, ACTIONS(309), 2, sym_ellipsis, sym_float, - STATE(1165), 2, + STATE(1174), 2, sym__expression_within_for_in_clause, sym_lambda_within_for_in_clause, ACTIONS(606), 3, @@ -36272,21 +36281,21 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - ACTIONS(818), 6, + ACTIONS(810), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(725), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -36304,65 +36313,65 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [15362] = 21, + [15246] = 21, ACTIONS(3), 1, sym_comment, - ACTIONS(293), 1, + ACTIONS(53), 1, anon_sym_LBRACE, - ACTIONS(315), 1, + ACTIONS(71), 1, + anon_sym_not, + ACTIONS(73), 1, + anon_sym_lambda, + ACTIONS(83), 1, sym__string_start, - ACTIONS(317), 1, + ACTIONS(85), 1, sym__template_string_start, - ACTIONS(602), 1, - anon_sym_LPAREN, - ACTIONS(608), 1, - anon_sym_LBRACK, - ACTIONS(680), 1, - anon_sym_not, - ACTIONS(816), 1, + ACTIONS(361), 1, sym_identifier, - ACTIONS(822), 1, + ACTIONS(367), 1, anon_sym_await, - ACTIONS(834), 1, - anon_sym_lambda, - STATE(645), 1, - sym_string, - STATE(658), 1, + ACTIONS(575), 1, + anon_sym_LPAREN, + ACTIONS(579), 1, + anon_sym_LBRACK, + STATE(772), 1, sym_template_string, - STATE(726), 1, + STATE(773), 1, sym_primary_expression, - STATE(1092), 1, + STATE(779), 1, + sym_string, + STATE(1278), 1, sym_expression, - ACTIONS(309), 2, + ACTIONS(77), 2, sym_ellipsis, sym_float, - STATE(1117), 2, - sym__expression_within_for_in_clause, - sym_lambda_within_for_in_clause, - ACTIONS(606), 3, + ACTIONS(1012), 2, + sym__newline, + anon_sym_SEMI, + ACTIONS(49), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(311), 4, + ACTIONS(79), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(818), 6, + ACTIONS(363), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, + STATE(1126), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(725), 17, + STATE(950), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -36380,66 +36389,65 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [15459] = 22, + [15343] = 21, ACTIONS(3), 1, sym_comment, - ACTIONS(640), 1, - anon_sym_LPAREN, - ACTIONS(646), 1, - anon_sym_LBRACK, - ACTIONS(648), 1, + ACTIONS(53), 1, anon_sym_LBRACE, - ACTIONS(654), 1, + ACTIONS(71), 1, + anon_sym_not, + ACTIONS(73), 1, + anon_sym_lambda, + ACTIONS(83), 1, sym__string_start, - ACTIONS(656), 1, + ACTIONS(85), 1, sym__template_string_start, - ACTIONS(952), 1, + ACTIONS(361), 1, sym_identifier, - ACTIONS(958), 1, - anon_sym_COLON, - ACTIONS(960), 1, - anon_sym_not, - ACTIONS(962), 1, - anon_sym_lambda, - ACTIONS(964), 1, + ACTIONS(367), 1, anon_sym_await, - STATE(792), 1, + ACTIONS(575), 1, + anon_sym_LPAREN, + ACTIONS(579), 1, + anon_sym_LBRACK, + STATE(772), 1, + sym_template_string, + STATE(773), 1, sym_primary_expression, - STATE(793), 1, + STATE(779), 1, sym_string, - STATE(794), 1, - sym_template_string, - STATE(1210), 1, + STATE(1278), 1, sym_expression, - STATE(1562), 1, - sym_exception_list, - ACTIONS(650), 2, + ACTIONS(77), 2, sym_ellipsis, sym_float, - ACTIONS(644), 3, + ACTIONS(1014), 2, + sym__newline, + anon_sym_SEMI, + ACTIONS(49), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(636), 4, + ACTIONS(79), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(954), 6, + ACTIONS(363), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1211), 6, + STATE(1126), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(970), 17, + STATE(950), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -36457,66 +36465,65 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [15558] = 22, + [15440] = 21, ACTIONS(3), 1, sym_comment, - ACTIONS(640), 1, - anon_sym_LPAREN, - ACTIONS(646), 1, - anon_sym_LBRACK, - ACTIONS(648), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(654), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(656), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(952), 1, - sym_identifier, - ACTIONS(960), 1, + ACTIONS(602), 1, + anon_sym_LPAREN, + ACTIONS(608), 1, + anon_sym_LBRACK, + ACTIONS(680), 1, anon_sym_not, - ACTIONS(962), 1, - anon_sym_lambda, - ACTIONS(964), 1, + ACTIONS(808), 1, + sym_identifier, + ACTIONS(816), 1, anon_sym_await, - ACTIONS(1012), 1, - anon_sym_RPAREN, - STATE(792), 1, - sym_primary_expression, - STATE(793), 1, + ACTIONS(864), 1, + anon_sym_lambda, + STATE(694), 1, sym_string, - STATE(794), 1, + STATE(698), 1, sym_template_string, - STATE(1205), 1, + STATE(705), 1, + sym_primary_expression, + STATE(1097), 1, sym_expression, - STATE(1481), 1, - sym_with_item, - ACTIONS(650), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(644), 3, + STATE(1135), 2, + sym__expression_within_for_in_clause, + sym_lambda_within_for_in_clause, + ACTIONS(606), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(636), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(954), 6, + ACTIONS(810), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1211), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(970), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -36534,7 +36541,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [15657] = 22, + [15537] = 21, ACTIONS(3), 1, sym_comment, ACTIONS(268), 1, @@ -36549,27 +36556,26 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(317), 1, sym__template_string_start, - ACTIONS(575), 1, + ACTIONS(585), 1, anon_sym_LPAREN, - ACTIONS(586), 1, + ACTIONS(596), 1, anon_sym_LBRACK, - ACTIONS(752), 1, + ACTIONS(768), 1, anon_sym_not, - ACTIONS(792), 1, - anon_sym_STAR, - STATE(645), 1, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(719), 1, + STATE(704), 1, sym_primary_expression, - STATE(1282), 1, + STATE(1318), 1, sym_expression, - STATE(1549), 1, - sym_list_splat, ACTIONS(309), 2, sym_ellipsis, sym_float, + ACTIONS(1016), 2, + anon_sym_COMMA, + anon_sym_RBRACK, ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, @@ -36586,14 +36592,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(725), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -36611,65 +36617,220 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [15756] = 21, + [15634] = 22, ACTIONS(3), 1, sym_comment, - ACTIONS(268), 1, - sym_identifier, - ACTIONS(293), 1, + ACTIONS(650), 1, + anon_sym_LPAREN, + ACTIONS(656), 1, + anon_sym_LBRACK, + ACTIONS(658), 1, anon_sym_LBRACE, - ACTIONS(305), 1, + ACTIONS(664), 1, + sym__string_start, + ACTIONS(666), 1, + sym__template_string_start, + ACTIONS(964), 1, + sym_identifier, + ACTIONS(972), 1, + anon_sym_not, + ACTIONS(974), 1, anon_sym_lambda, - ACTIONS(313), 1, + ACTIONS(976), 1, anon_sym_await, - ACTIONS(315), 1, + ACTIONS(992), 1, + anon_sym_COLON, + STATE(789), 1, + sym_primary_expression, + STATE(790), 1, + sym_string, + STATE(791), 1, + sym_template_string, + STATE(1208), 1, + sym_expression, + STATE(1547), 1, + sym_exception_list, + ACTIONS(660), 2, + sym_ellipsis, + sym_float, + ACTIONS(654), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(646), 4, + sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(966), 6, + anon_sym_lazy, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(1198), 6, + sym_named_expression, + sym_not_operator, + sym_boolean_operator, + sym_comparison_operator, + sym_lambda, + sym_conditional_expression, + STATE(985), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [15733] = 22, + ACTIONS(3), 1, + sym_comment, + ACTIONS(656), 1, + anon_sym_LBRACK, + ACTIONS(658), 1, + anon_sym_LBRACE, + ACTIONS(664), 1, sym__string_start, - ACTIONS(317), 1, + ACTIONS(666), 1, sym__template_string_start, - ACTIONS(575), 1, + ACTIONS(964), 1, + sym_identifier, + ACTIONS(972), 1, + anon_sym_not, + ACTIONS(974), 1, + anon_sym_lambda, + ACTIONS(976), 1, + anon_sym_await, + ACTIONS(1002), 1, anon_sym_LPAREN, - ACTIONS(586), 1, + STATE(789), 1, + sym_primary_expression, + STATE(790), 1, + sym_string, + STATE(791), 1, + sym_template_string, + STATE(1192), 1, + sym_expression, + STATE(1478), 1, + sym_with_item, + STATE(1613), 1, + sym_with_clause, + ACTIONS(660), 2, + sym_ellipsis, + sym_float, + ACTIONS(654), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(646), 4, + sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(966), 6, + anon_sym_lazy, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(1198), 6, + sym_named_expression, + sym_not_operator, + sym_boolean_operator, + sym_comparison_operator, + sym_lambda, + sym_conditional_expression, + STATE(985), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [15832] = 22, + ACTIONS(3), 1, + sym_comment, + ACTIONS(656), 1, anon_sym_LBRACK, - ACTIONS(752), 1, + ACTIONS(658), 1, + anon_sym_LBRACE, + ACTIONS(664), 1, + sym__string_start, + ACTIONS(666), 1, + sym__template_string_start, + ACTIONS(964), 1, + sym_identifier, + ACTIONS(972), 1, anon_sym_not, - STATE(645), 1, + ACTIONS(974), 1, + anon_sym_lambda, + ACTIONS(976), 1, + anon_sym_await, + ACTIONS(1002), 1, + anon_sym_LPAREN, + STATE(789), 1, + sym_primary_expression, + STATE(790), 1, sym_string, - STATE(658), 1, + STATE(791), 1, sym_template_string, - STATE(719), 1, - sym_primary_expression, - STATE(1258), 1, + STATE(1192), 1, sym_expression, - ACTIONS(309), 2, + STATE(1478), 1, + sym_with_item, + STATE(1622), 1, + sym_with_clause, + ACTIONS(660), 2, sym_ellipsis, sym_float, - ACTIONS(1014), 2, - anon_sym_COMMA, - anon_sym_RBRACK, - ACTIONS(301), 3, + ACTIONS(654), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(311), 4, + ACTIONS(646), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(270), 6, + ACTIONS(966), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, + STATE(1198), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(725), 17, + STATE(985), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -36687,7 +36848,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [15853] = 21, + [15931] = 21, ACTIONS(3), 1, sym_comment, ACTIONS(293), 1, @@ -36702,24 +36863,24 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LBRACK, ACTIONS(680), 1, anon_sym_not, - ACTIONS(816), 1, + ACTIONS(808), 1, sym_identifier, - ACTIONS(822), 1, + ACTIONS(816), 1, anon_sym_await, - ACTIONS(834), 1, + ACTIONS(864), 1, anon_sym_lambda, - STATE(645), 1, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(726), 1, + STATE(705), 1, sym_primary_expression, - STATE(1099), 1, + STATE(1097), 1, sym_expression, ACTIONS(309), 2, sym_ellipsis, sym_float, - STATE(1172), 2, + STATE(1222), 2, sym__expression_within_for_in_clause, sym_lambda_within_for_in_clause, ACTIONS(606), 3, @@ -36731,21 +36892,21 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - ACTIONS(818), 6, + ACTIONS(810), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(725), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -36763,66 +36924,65 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [15950] = 22, + [16028] = 21, ACTIONS(3), 1, sym_comment, - ACTIONS(646), 1, - anon_sym_LBRACK, - ACTIONS(648), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(654), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(656), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(952), 1, - sym_identifier, - ACTIONS(960), 1, + ACTIONS(602), 1, + anon_sym_LPAREN, + ACTIONS(608), 1, + anon_sym_LBRACK, + ACTIONS(680), 1, anon_sym_not, - ACTIONS(962), 1, - anon_sym_lambda, - ACTIONS(964), 1, + ACTIONS(808), 1, + sym_identifier, + ACTIONS(816), 1, anon_sym_await, - ACTIONS(1008), 1, - anon_sym_LPAREN, - STATE(792), 1, - sym_primary_expression, - STATE(793), 1, + ACTIONS(864), 1, + anon_sym_lambda, + STATE(694), 1, sym_string, - STATE(794), 1, + STATE(698), 1, sym_template_string, - STATE(1205), 1, + STATE(705), 1, + sym_primary_expression, + STATE(1099), 1, sym_expression, - STATE(1477), 1, - sym_with_item, - STATE(1599), 1, - sym_with_clause, - ACTIONS(650), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(644), 3, + STATE(1205), 2, + sym__expression_within_for_in_clause, + sym_lambda_within_for_in_clause, + ACTIONS(606), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(636), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(954), 6, + ACTIONS(810), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1211), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(970), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -36840,66 +37000,66 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [16049] = 22, + [16125] = 22, ACTIONS(3), 1, sym_comment, - ACTIONS(646), 1, + ACTIONS(650), 1, + anon_sym_LPAREN, + ACTIONS(656), 1, anon_sym_LBRACK, - ACTIONS(648), 1, + ACTIONS(658), 1, anon_sym_LBRACE, - ACTIONS(654), 1, + ACTIONS(664), 1, sym__string_start, - ACTIONS(656), 1, + ACTIONS(666), 1, sym__template_string_start, - ACTIONS(952), 1, + ACTIONS(964), 1, sym_identifier, - ACTIONS(960), 1, + ACTIONS(972), 1, anon_sym_not, - ACTIONS(962), 1, + ACTIONS(974), 1, anon_sym_lambda, - ACTIONS(964), 1, + ACTIONS(976), 1, anon_sym_await, - ACTIONS(1008), 1, - anon_sym_LPAREN, - STATE(792), 1, + ACTIONS(1018), 1, + anon_sym_RPAREN, + STATE(789), 1, sym_primary_expression, - STATE(793), 1, + STATE(790), 1, sym_string, - STATE(794), 1, + STATE(791), 1, sym_template_string, - STATE(1205), 1, + STATE(1192), 1, sym_expression, - STATE(1477), 1, + STATE(1522), 1, sym_with_item, - STATE(1607), 1, - sym_with_clause, - ACTIONS(650), 2, + ACTIONS(660), 2, sym_ellipsis, sym_float, - ACTIONS(644), 3, + ACTIONS(654), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(636), 4, + ACTIONS(646), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(954), 6, + ACTIONS(966), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1211), 6, + STATE(1198), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(970), 17, + STATE(985), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -36917,66 +37077,65 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [16148] = 22, + [16224] = 21, ACTIONS(3), 1, sym_comment, - ACTIONS(646), 1, - anon_sym_LBRACK, - ACTIONS(648), 1, - anon_sym_LBRACE, - ACTIONS(654), 1, - sym__string_start, - ACTIONS(656), 1, - sym__template_string_start, - ACTIONS(952), 1, + ACTIONS(268), 1, sym_identifier, - ACTIONS(960), 1, - anon_sym_not, - ACTIONS(962), 1, + ACTIONS(293), 1, + anon_sym_LBRACE, + ACTIONS(305), 1, anon_sym_lambda, - ACTIONS(964), 1, + ACTIONS(313), 1, anon_sym_await, - ACTIONS(1008), 1, + ACTIONS(315), 1, + sym__string_start, + ACTIONS(317), 1, + sym__template_string_start, + ACTIONS(585), 1, anon_sym_LPAREN, - STATE(792), 1, - sym_primary_expression, - STATE(793), 1, + ACTIONS(596), 1, + anon_sym_LBRACK, + ACTIONS(768), 1, + anon_sym_not, + STATE(694), 1, sym_string, - STATE(794), 1, + STATE(698), 1, sym_template_string, - STATE(1205), 1, + STATE(704), 1, + sym_primary_expression, + STATE(1283), 1, sym_expression, - STATE(1477), 1, - sym_with_item, - STATE(1645), 1, - sym_with_clause, - ACTIONS(650), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(644), 3, + ACTIONS(1020), 2, + anon_sym_COMMA, + anon_sym_RBRACK, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(636), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(954), 6, + ACTIONS(270), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1211), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(970), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -36994,13 +37153,13 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [16247] = 3, + [16321] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1018), 13, - sym__dedent, + ACTIONS(1022), 13, sym__string_start, sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -37011,7 +37170,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1016), 39, + ACTIONS(1024), 39, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -37051,20 +37210,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [16307] = 8, + [16381] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(966), 1, - anon_sym_else, - ACTIONS(1024), 1, - anon_sym_elif, - STATE(364), 1, - aux_sym_if_statement_repeat1, - STATE(471), 1, - sym_elif_clause, - STATE(544), 1, - sym_else_clause, - ACTIONS(1020), 13, + ACTIONS(1026), 13, sym__string_start, sym__template_string_start, ts_builtin_sym_end, @@ -37078,7 +37227,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1022), 34, + ACTIONS(1028), 39, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -37092,12 +37241,17 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_break, anon_sym_continue, anon_sym_if, + anon_sym_elif, + anon_sym_else, anon_sym_async, anon_sym_for, anon_sym_while, anon_sym_try, + anon_sym_except, + anon_sym_finally, anon_sym_with, anon_sym_match, + anon_sym_case, anon_sym_def, anon_sym_global, anon_sym_nonlocal, @@ -37113,20 +37267,72 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [16377] = 8, + [16441] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(966), 1, + ACTIONS(1032), 17, + anon_sym_as, + anon_sym_STAR, + anon_sym_GT_GT, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_STAR_STAR, + anon_sym_EQ, + anon_sym_AT, + anon_sym_SLASH, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1030), 35, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_if, + anon_sym_COLON, anon_sym_else, - ACTIONS(1024), 1, - anon_sym_elif, - STATE(323), 1, - aux_sym_if_statement_repeat1, - STATE(471), 1, - sym_elif_clause, - STATE(548), 1, - sym_else_clause, - ACTIONS(1026), 13, + anon_sym_async, + anon_sym_for, + anon_sym_in, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_AT_EQ, + anon_sym_SLASH_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_STAR_STAR_EQ, + anon_sym_GT_GT_EQ, + anon_sym_LT_LT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + [16501] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1038), 1, + anon_sym_except, + STATE(314), 2, + sym_except_clause, + aux_sym_try_statement_repeat1, + ACTIONS(1034), 13, sym__string_start, sym__template_string_start, ts_builtin_sym_end, @@ -37140,7 +37346,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1028), 34, + ACTIONS(1036), 36, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -37154,10 +37360,12 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_break, anon_sym_continue, anon_sym_if, + anon_sym_else, anon_sym_async, anon_sym_for, anon_sym_while, anon_sym_try, + anon_sym_finally, anon_sym_with, anon_sym_match, anon_sym_def, @@ -37175,23 +37383,18 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [16447] = 8, + [16565] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(946), 1, - anon_sym_else, - ACTIONS(1034), 1, - anon_sym_elif, - STATE(374), 1, - aux_sym_if_statement_repeat1, - STATE(469), 1, - sym_elif_clause, - STATE(540), 1, - sym_else_clause, - ACTIONS(1032), 13, - sym__dedent, + ACTIONS(1045), 1, + anon_sym_except, + STATE(315), 2, + sym_except_group_clause, + aux_sym_try_statement_repeat2, + ACTIONS(1041), 13, sym__string_start, sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -37202,7 +37405,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1030), 34, + ACTIONS(1043), 36, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -37216,10 +37419,12 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_break, anon_sym_continue, anon_sym_if, + anon_sym_else, anon_sym_async, anon_sym_for, anon_sym_while, anon_sym_try, + anon_sym_finally, anon_sym_with, anon_sym_match, anon_sym_def, @@ -37237,168 +37442,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [16517] = 21, - ACTIONS(3), 1, - sym_comment, - ACTIONS(640), 1, - anon_sym_LPAREN, - ACTIONS(646), 1, - anon_sym_LBRACK, - ACTIONS(648), 1, - anon_sym_LBRACE, - ACTIONS(654), 1, - sym__string_start, - ACTIONS(656), 1, - sym__template_string_start, - ACTIONS(952), 1, - sym_identifier, - ACTIONS(960), 1, - anon_sym_not, - ACTIONS(962), 1, - anon_sym_lambda, - ACTIONS(964), 1, - anon_sym_await, - STATE(792), 1, - sym_primary_expression, - STATE(793), 1, - sym_string, - STATE(794), 1, - sym_template_string, - STATE(1174), 1, - sym_expression, - STATE(1555), 1, - sym_exception_list, - ACTIONS(650), 2, - sym_ellipsis, - sym_float, - ACTIONS(644), 3, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_TILDE, - ACTIONS(636), 4, - sym_integer, - sym_true, - sym_false, - sym_none, - ACTIONS(954), 6, - anon_sym_lazy, - anon_sym_print, - anon_sym_async, - anon_sym_match, - anon_sym_exec, - anon_sym_type, - STATE(1211), 6, - sym_named_expression, - sym_not_operator, - sym_boolean_operator, - sym_comparison_operator, - sym_lambda, - sym_conditional_expression, - STATE(970), 17, - sym_binary_operator, - sym_unary_operator, - sym_attribute, - sym_subscript, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [16613] = 21, - ACTIONS(3), 1, - sym_comment, - ACTIONS(640), 1, - anon_sym_LPAREN, - ACTIONS(646), 1, - anon_sym_LBRACK, - ACTIONS(648), 1, - anon_sym_LBRACE, - ACTIONS(654), 1, - sym__string_start, - ACTIONS(656), 1, - sym__template_string_start, - ACTIONS(952), 1, - sym_identifier, - ACTIONS(960), 1, - anon_sym_not, - ACTIONS(962), 1, - anon_sym_lambda, - ACTIONS(964), 1, - anon_sym_await, - STATE(792), 1, - sym_primary_expression, - STATE(793), 1, - sym_string, - STATE(794), 1, - sym_template_string, - STATE(1205), 1, - sym_expression, - STATE(1481), 1, - sym_with_item, - ACTIONS(650), 2, - sym_ellipsis, - sym_float, - ACTIONS(644), 3, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_TILDE, - ACTIONS(636), 4, - sym_integer, - sym_true, - sym_false, - sym_none, - ACTIONS(954), 6, - anon_sym_lazy, - anon_sym_print, - anon_sym_async, - anon_sym_match, - anon_sym_exec, - anon_sym_type, - STATE(1211), 6, - sym_named_expression, - sym_not_operator, - sym_boolean_operator, - sym_comparison_operator, - sym_lambda, - sym_conditional_expression, - STATE(970), 17, - sym_binary_operator, - sym_unary_operator, - sym_attribute, - sym_subscript, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [16709] = 5, + [16629] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1040), 1, - anon_sym_except, - STATE(316), 2, - sym_except_clause, - aux_sym_try_statement_repeat1, - ACTIONS(1036), 13, + ACTIONS(1026), 13, + sym__dedent, sym__string_start, sym__template_string_start, - ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -37409,7 +37459,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1038), 36, + ACTIONS(1028), 39, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -37423,14 +37473,17 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_break, anon_sym_continue, anon_sym_if, + anon_sym_elif, anon_sym_else, anon_sym_async, anon_sym_for, anon_sym_while, anon_sym_try, + anon_sym_except, anon_sym_finally, anon_sym_with, anon_sym_match, + anon_sym_case, anon_sym_def, anon_sym_global, anon_sym_nonlocal, @@ -37446,69 +37499,67 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [16773] = 5, + [16689] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1047), 1, - anon_sym_except, - STATE(317), 2, - sym_except_group_clause, - aux_sym_try_statement_repeat2, - ACTIONS(1043), 13, - sym__string_start, - sym__template_string_start, - ts_builtin_sym_end, - anon_sym_LPAREN, + ACTIONS(1050), 17, + anon_sym_as, + anon_sym_STAR, + anon_sym_GT_GT, + anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_LBRACE, anon_sym_STAR_STAR, + anon_sym_EQ, anon_sym_AT, - anon_sym_TILDE, - sym_ellipsis, - sym_float, - ACTIONS(1045), 36, - anon_sym_lazy, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, - anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, + anon_sym_SLASH, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1048), 35, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, anon_sym_if, + anon_sym_COLON, anon_sym_else, anon_sym_async, anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_finally, - anon_sym_with, - anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, - anon_sym_exec, - anon_sym_type, - anon_sym_class, + anon_sym_in, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RBRACE, anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, - anon_sym_await, - sym_true, - sym_false, - sym_none, - [16837] = 3, + anon_sym_and, + anon_sym_or, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_AT_EQ, + anon_sym_SLASH_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_STAR_STAR_EQ, + anon_sym_GT_GT_EQ, + anon_sym_LT_LT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + [16749] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1052), 13, + ACTIONS(1054), 13, sym__dedent, sym__string_start, sym__template_string_start, @@ -37522,7 +37573,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1050), 39, + ACTIONS(1052), 39, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -37562,10 +37613,20 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [16897] = 3, + [16809] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(1018), 13, + ACTIONS(978), 1, + anon_sym_else, + ACTIONS(1060), 1, + anon_sym_elif, + STATE(392), 1, + aux_sym_if_statement_repeat1, + STATE(473), 1, + sym_elif_clause, + STATE(566), 1, + sym_else_clause, + ACTIONS(1056), 13, sym__string_start, sym__template_string_start, ts_builtin_sym_end, @@ -37579,7 +37640,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1016), 39, + ACTIONS(1058), 34, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -37593,17 +37654,12 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_break, anon_sym_continue, anon_sym_if, - anon_sym_elif, - anon_sym_else, anon_sym_async, anon_sym_for, anon_sym_while, anon_sym_try, - anon_sym_except, - anon_sym_finally, anon_sym_with, anon_sym_match, - anon_sym_case, anon_sym_def, anon_sym_global, anon_sym_nonlocal, @@ -37619,13 +37675,23 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [16957] = 3, + [16879] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(1054), 13, + ACTIONS(952), 1, + anon_sym_else, + ACTIONS(1066), 1, + anon_sym_elif, + STATE(321), 1, + aux_sym_if_statement_repeat1, + STATE(479), 1, + sym_elif_clause, + STATE(549), 1, + sym_else_clause, + ACTIONS(1064), 13, + sym__dedent, sym__string_start, sym__template_string_start, - ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -37636,7 +37702,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1056), 39, + ACTIONS(1062), 34, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -37650,17 +37716,12 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_break, anon_sym_continue, anon_sym_if, - anon_sym_elif, - anon_sym_else, anon_sym_async, anon_sym_for, anon_sym_while, anon_sym_try, - anon_sym_except, - anon_sym_finally, anon_sym_with, anon_sym_match, - anon_sym_case, anon_sym_def, anon_sym_global, anon_sym_nonlocal, @@ -37676,13 +37737,23 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [17017] = 3, + [16949] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(1058), 13, + ACTIONS(952), 1, + anon_sym_else, + ACTIONS(1066), 1, + anon_sym_elif, + STATE(350), 1, + aux_sym_if_statement_repeat1, + STATE(479), 1, + sym_elif_clause, + STATE(563), 1, + sym_else_clause, + ACTIONS(1070), 13, + sym__dedent, sym__string_start, sym__template_string_start, - ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -37693,7 +37764,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1060), 39, + ACTIONS(1068), 34, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -37707,17 +37778,12 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_break, anon_sym_continue, anon_sym_if, - anon_sym_elif, - anon_sym_else, anon_sym_async, anon_sym_for, anon_sym_while, anon_sym_try, - anon_sym_except, - anon_sym_finally, anon_sym_with, anon_sym_match, - anon_sym_case, anon_sym_def, anon_sym_global, anon_sym_nonlocal, @@ -37733,10 +37799,20 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [17077] = 3, + [17019] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(1058), 13, + ACTIONS(952), 1, + anon_sym_else, + ACTIONS(1066), 1, + anon_sym_elif, + STATE(337), 1, + aux_sym_if_statement_repeat1, + STATE(479), 1, + sym_elif_clause, + STATE(565), 1, + sym_else_clause, + ACTIONS(1074), 13, sym__dedent, sym__string_start, sym__template_string_start, @@ -37750,7 +37826,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1060), 39, + ACTIONS(1072), 34, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -37764,17 +37840,12 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_break, anon_sym_continue, anon_sym_if, - anon_sym_elif, - anon_sym_else, anon_sym_async, anon_sym_for, anon_sym_while, anon_sym_try, - anon_sym_except, - anon_sym_finally, anon_sym_with, anon_sym_match, - anon_sym_case, anon_sym_def, anon_sym_global, anon_sym_nonlocal, @@ -37790,23 +37861,93 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [17137] = 8, + [17089] = 21, ACTIONS(3), 1, sym_comment, - ACTIONS(966), 1, - anon_sym_else, - ACTIONS(1024), 1, - anon_sym_elif, - STATE(364), 1, - aux_sym_if_statement_repeat1, - STATE(471), 1, - sym_elif_clause, - STATE(579), 1, - sym_else_clause, - ACTIONS(1032), 13, + ACTIONS(650), 1, + anon_sym_LPAREN, + ACTIONS(656), 1, + anon_sym_LBRACK, + ACTIONS(658), 1, + anon_sym_LBRACE, + ACTIONS(664), 1, + sym__string_start, + ACTIONS(666), 1, + sym__template_string_start, + ACTIONS(964), 1, + sym_identifier, + ACTIONS(972), 1, + anon_sym_not, + ACTIONS(974), 1, + anon_sym_lambda, + ACTIONS(976), 1, + anon_sym_await, + STATE(789), 1, + sym_primary_expression, + STATE(790), 1, + sym_string, + STATE(791), 1, + sym_template_string, + STATE(1193), 1, + sym_expression, + STATE(1564), 1, + sym_exception_list, + ACTIONS(660), 2, + sym_ellipsis, + sym_float, + ACTIONS(654), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(646), 4, + sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(966), 6, + anon_sym_lazy, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(1198), 6, + sym_named_expression, + sym_not_operator, + sym_boolean_operator, + sym_comparison_operator, + sym_lambda, + sym_conditional_expression, + STATE(985), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [17185] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1076), 1, + anon_sym_except, + STATE(324), 2, + sym_except_clause, + aux_sym_try_statement_repeat1, + ACTIONS(1034), 13, + sym__dedent, sym__string_start, sym__template_string_start, - ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -37817,7 +37958,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1030), 34, + ACTIONS(1036), 36, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -37831,10 +37972,12 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_break, anon_sym_continue, anon_sym_if, + anon_sym_else, anon_sym_async, anon_sym_for, anon_sym_while, anon_sym_try, + anon_sym_finally, anon_sym_with, anon_sym_match, anon_sym_def, @@ -37852,77 +37995,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [17207] = 3, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1064), 17, - anon_sym_as, - anon_sym_STAR, - anon_sym_GT_GT, - anon_sym_PIPE, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_STAR_STAR, - anon_sym_EQ, - anon_sym_AT, - anon_sym_SLASH, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1062), 35, - anon_sym_DOT, - anon_sym_LPAREN, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_if, - anon_sym_COLON, - anon_sym_else, - anon_sym_async, - anon_sym_for, - anon_sym_in, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_RBRACE, - anon_sym_not, - anon_sym_and, - anon_sym_or, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - anon_sym_is, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_STAR_EQ, - anon_sym_SLASH_EQ, - anon_sym_AT_EQ, - anon_sym_SLASH_SLASH_EQ, - anon_sym_PERCENT_EQ, - anon_sym_STAR_STAR_EQ, - anon_sym_GT_GT_EQ, - anon_sym_LT_LT_EQ, - anon_sym_AMP_EQ, - anon_sym_CARET_EQ, - anon_sym_PIPE_EQ, - [17267] = 8, + [17249] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(946), 1, - anon_sym_else, - ACTIONS(1034), 1, - anon_sym_elif, - STATE(329), 1, - aux_sym_if_statement_repeat1, - STATE(469), 1, - sym_elif_clause, - STATE(516), 1, - sym_else_clause, - ACTIONS(1068), 13, + ACTIONS(1022), 13, sym__dedent, sym__string_start, sym__template_string_start, @@ -37936,7 +38012,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1066), 34, + ACTIONS(1024), 39, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -37950,12 +38026,17 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_break, anon_sym_continue, anon_sym_if, + anon_sym_elif, + anon_sym_else, anon_sym_async, anon_sym_for, anon_sym_while, anon_sym_try, + anon_sym_except, + anon_sym_finally, anon_sym_with, anon_sym_match, + anon_sym_case, anon_sym_def, anon_sym_global, anon_sym_nonlocal, @@ -37971,13 +38052,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [17337] = 3, + [17309] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1054), 13, - sym__dedent, + ACTIONS(1079), 13, sym__string_start, sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -37988,7 +38069,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1056), 39, + ACTIONS(1081), 39, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -38028,9 +38109,19 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [17397] = 3, + [17369] = 8, ACTIONS(3), 1, sym_comment, + ACTIONS(978), 1, + anon_sym_else, + ACTIONS(1060), 1, + anon_sym_elif, + STATE(392), 1, + aux_sym_if_statement_repeat1, + STATE(473), 1, + sym_elif_clause, + STATE(520), 1, + sym_else_clause, ACTIONS(1070), 13, sym__string_start, sym__template_string_start, @@ -38045,7 +38136,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1072), 39, + ACTIONS(1068), 34, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -38059,17 +38150,12 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_break, anon_sym_continue, anon_sym_if, - anon_sym_elif, - anon_sym_else, anon_sym_async, anon_sym_for, anon_sym_while, anon_sym_try, - anon_sym_except, - anon_sym_finally, anon_sym_with, anon_sym_match, - anon_sym_case, anon_sym_def, anon_sym_global, anon_sym_nonlocal, @@ -38085,80 +38171,80 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [17457] = 3, + [17439] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1076), 17, - anon_sym_as, - anon_sym_STAR, - anon_sym_GT_GT, - anon_sym_PIPE, + ACTIONS(1054), 13, + sym__string_start, + sym__template_string_start, + ts_builtin_sym_end, + anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_LBRACE, anon_sym_STAR_STAR, - anon_sym_EQ, anon_sym_AT, - anon_sym_SLASH, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1074), 35, - anon_sym_DOT, - anon_sym_LPAREN, - anon_sym_RPAREN, - anon_sym_COMMA, + anon_sym_TILDE, + sym_ellipsis, + sym_float, + ACTIONS(1052), 39, + anon_sym_lazy, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, + anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, anon_sym_if, - anon_sym_COLON, + anon_sym_elif, anon_sym_else, anon_sym_async, anon_sym_for, - anon_sym_in, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_RBRACE, + anon_sym_while, + anon_sym_try, + anon_sym_except, + anon_sym_finally, + anon_sym_with, + anon_sym_match, + anon_sym_case, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, + anon_sym_exec, + anon_sym_type, + anon_sym_class, anon_sym_not, - anon_sym_and, - anon_sym_or, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - anon_sym_is, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_STAR_EQ, - anon_sym_SLASH_EQ, - anon_sym_AT_EQ, - anon_sym_SLASH_SLASH_EQ, - anon_sym_PERCENT_EQ, - anon_sym_STAR_STAR_EQ, - anon_sym_GT_GT_EQ, - anon_sym_LT_LT_EQ, - anon_sym_AMP_EQ, - anon_sym_CARET_EQ, - anon_sym_PIPE_EQ, - [17517] = 8, + anon_sym_lambda, + anon_sym_yield, + sym_integer, + sym_identifier, + anon_sym_await, + sym_true, + sym_false, + sym_none, + [17499] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(946), 1, + ACTIONS(978), 1, anon_sym_else, - ACTIONS(1034), 1, + ACTIONS(1060), 1, anon_sym_elif, - STATE(374), 1, + STATE(319), 1, aux_sym_if_statement_repeat1, - STATE(469), 1, + STATE(473), 1, sym_elif_clause, - STATE(527), 1, + STATE(521), 1, sym_else_clause, - ACTIONS(1020), 13, - sym__dedent, + ACTIONS(1074), 13, sym__string_start, sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -38169,7 +38255,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1022), 34, + ACTIONS(1072), 34, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -38204,20 +38290,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [17587] = 8, + [17569] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(946), 1, - anon_sym_else, - ACTIONS(1034), 1, - anon_sym_elif, - STATE(313), 1, - aux_sym_if_statement_repeat1, - STATE(469), 1, - sym_elif_clause, - STATE(528), 1, - sym_else_clause, - ACTIONS(1026), 13, + ACTIONS(1079), 13, sym__dedent, sym__string_start, sym__template_string_start, @@ -38231,7 +38307,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1028), 34, + ACTIONS(1081), 39, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -38245,12 +38321,17 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_break, anon_sym_continue, anon_sym_if, + anon_sym_elif, + anon_sym_else, anon_sym_async, anon_sym_for, anon_sym_while, anon_sym_try, + anon_sym_except, + anon_sym_finally, anon_sym_with, anon_sym_match, + anon_sym_case, anon_sym_def, anon_sym_global, anon_sym_nonlocal, @@ -38266,23 +38347,18 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [17657] = 8, + [17629] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(966), 1, - anon_sym_else, - ACTIONS(1024), 1, - anon_sym_elif, - STATE(311), 1, - aux_sym_if_statement_repeat1, - STATE(471), 1, - sym_elif_clause, - STATE(599), 1, - sym_else_clause, - ACTIONS(1068), 13, + ACTIONS(1083), 1, + anon_sym_except, + STATE(331), 2, + sym_except_group_clause, + aux_sym_try_statement_repeat2, + ACTIONS(1041), 13, + sym__dedent, sym__string_start, sym__template_string_start, - ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -38293,7 +38369,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1066), 34, + ACTIONS(1043), 36, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -38307,10 +38383,12 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_break, anon_sym_continue, anon_sym_if, + anon_sym_else, anon_sym_async, anon_sym_for, anon_sym_while, anon_sym_try, + anon_sym_finally, anon_sym_with, anon_sym_match, anon_sym_def, @@ -38328,13 +38406,23 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [17727] = 3, + [17693] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(1070), 13, - sym__dedent, + ACTIONS(978), 1, + anon_sym_else, + ACTIONS(1060), 1, + anon_sym_elif, + STATE(327), 1, + aux_sym_if_statement_repeat1, + STATE(473), 1, + sym_elif_clause, + STATE(529), 1, + sym_else_clause, + ACTIONS(1064), 13, sym__string_start, sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -38345,7 +38433,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1072), 39, + ACTIONS(1062), 34, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -38359,17 +38447,12 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_break, anon_sym_continue, anon_sym_if, - anon_sym_elif, - anon_sym_else, anon_sym_async, anon_sym_for, anon_sym_while, anon_sym_try, - anon_sym_except, - anon_sym_finally, anon_sym_with, anon_sym_match, - anon_sym_case, anon_sym_def, anon_sym_global, anon_sym_nonlocal, @@ -38385,15 +38468,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [17787] = 5, + [17763] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1078), 1, - anon_sym_except, - STATE(333), 2, - sym_except_clause, - aux_sym_try_statement_repeat1, - ACTIONS(1036), 13, + ACTIONS(1088), 13, sym__dedent, sym__string_start, sym__template_string_start, @@ -38407,7 +38485,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1038), 36, + ACTIONS(1086), 39, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -38421,14 +38499,17 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_break, anon_sym_continue, anon_sym_if, + anon_sym_elif, anon_sym_else, anon_sym_async, anon_sym_for, anon_sym_while, anon_sym_try, + anon_sym_except, anon_sym_finally, anon_sym_with, anon_sym_match, + anon_sym_case, anon_sym_def, anon_sym_global, anon_sym_nonlocal, @@ -38444,18 +38525,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [17851] = 5, + [17823] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1081), 1, - anon_sym_except, - STATE(334), 2, - sym_except_group_clause, - aux_sym_try_statement_repeat2, - ACTIONS(1043), 13, - sym__dedent, + ACTIONS(1088), 13, sym__string_start, sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -38466,7 +38542,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1045), 36, + ACTIONS(1086), 39, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -38480,14 +38556,17 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_break, anon_sym_continue, anon_sym_if, + anon_sym_elif, anon_sym_else, anon_sym_async, anon_sym_for, anon_sym_while, anon_sym_try, + anon_sym_except, anon_sym_finally, anon_sym_with, anon_sym_match, + anon_sym_case, anon_sym_def, anon_sym_global, anon_sym_nonlocal, @@ -38503,64 +38582,64 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [17915] = 21, + [17883] = 21, ACTIONS(3), 1, sym_comment, - ACTIONS(640), 1, + ACTIONS(650), 1, anon_sym_LPAREN, - ACTIONS(646), 1, + ACTIONS(656), 1, anon_sym_LBRACK, - ACTIONS(648), 1, + ACTIONS(658), 1, anon_sym_LBRACE, - ACTIONS(654), 1, + ACTIONS(664), 1, sym__string_start, - ACTIONS(656), 1, + ACTIONS(666), 1, sym__template_string_start, - ACTIONS(952), 1, + ACTIONS(964), 1, sym_identifier, - ACTIONS(960), 1, + ACTIONS(972), 1, anon_sym_not, - ACTIONS(962), 1, + ACTIONS(974), 1, anon_sym_lambda, - ACTIONS(964), 1, + ACTIONS(976), 1, anon_sym_await, - STATE(792), 1, + STATE(789), 1, sym_primary_expression, - STATE(793), 1, + STATE(790), 1, sym_string, - STATE(794), 1, + STATE(791), 1, sym_template_string, - STATE(1204), 1, + STATE(1209), 1, sym_expression, - STATE(1550), 1, + STATE(1551), 1, sym_exception_list, - ACTIONS(650), 2, + ACTIONS(660), 2, sym_ellipsis, sym_float, - ACTIONS(644), 3, + ACTIONS(654), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(636), 4, + ACTIONS(646), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(954), 6, + ACTIONS(966), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1211), 6, + STATE(1198), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(970), 17, + STATE(985), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -38578,13 +38657,98 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [18011] = 3, + [17979] = 21, ACTIONS(3), 1, sym_comment, - ACTIONS(1052), 13, + ACTIONS(650), 1, + anon_sym_LPAREN, + ACTIONS(656), 1, + anon_sym_LBRACK, + ACTIONS(658), 1, + anon_sym_LBRACE, + ACTIONS(664), 1, + sym__string_start, + ACTIONS(666), 1, + sym__template_string_start, + ACTIONS(964), 1, + sym_identifier, + ACTIONS(972), 1, + anon_sym_not, + ACTIONS(974), 1, + anon_sym_lambda, + ACTIONS(976), 1, + anon_sym_await, + STATE(789), 1, + sym_primary_expression, + STATE(790), 1, + sym_string, + STATE(791), 1, + sym_template_string, + STATE(1192), 1, + sym_expression, + STATE(1522), 1, + sym_with_item, + ACTIONS(660), 2, + sym_ellipsis, + sym_float, + ACTIONS(654), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(646), 4, + sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(966), 6, + anon_sym_lazy, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(1198), 6, + sym_named_expression, + sym_not_operator, + sym_boolean_operator, + sym_comparison_operator, + sym_lambda, + sym_conditional_expression, + STATE(985), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [18075] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(952), 1, + anon_sym_else, + ACTIONS(1066), 1, + anon_sym_elif, + STATE(350), 1, + aux_sym_if_statement_repeat1, + STATE(479), 1, + sym_elif_clause, + STATE(578), 1, + sym_else_clause, + ACTIONS(1056), 13, + sym__dedent, sym__string_start, sym__template_string_start, - ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -38595,7 +38759,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1050), 39, + ACTIONS(1058), 34, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -38609,17 +38773,12 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_break, anon_sym_continue, anon_sym_if, - anon_sym_elif, - anon_sym_else, anon_sym_async, anon_sym_for, anon_sym_while, anon_sym_try, - anon_sym_except, - anon_sym_finally, anon_sym_with, anon_sym_match, - anon_sym_case, anon_sym_def, anon_sym_global, anon_sym_nonlocal, @@ -38635,62 +38794,62 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [18071] = 20, + [18145] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(53), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(71), 1, - anon_sym_not, - ACTIONS(73), 1, - anon_sym_lambda, - ACTIONS(83), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(85), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(349), 1, - sym_identifier, - ACTIONS(355), 1, - anon_sym_await, - ACTIONS(594), 1, + ACTIONS(602), 1, anon_sym_LPAREN, - ACTIONS(598), 1, + ACTIONS(608), 1, anon_sym_LBRACK, - STATE(765), 1, - sym_primary_expression, - STATE(769), 1, - sym_template_string, - STATE(775), 1, + ACTIONS(680), 1, + anon_sym_not, + ACTIONS(682), 1, + anon_sym_lambda, + ACTIONS(808), 1, + sym_identifier, + ACTIONS(816), 1, + anon_sym_await, + STATE(694), 1, sym_string, - STATE(1155), 1, + STATE(698), 1, + sym_template_string, + STATE(705), 1, + sym_primary_expression, + STATE(1069), 1, sym_expression, - ACTIONS(77), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(49), 3, + ACTIONS(606), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(79), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(351), 6, + ACTIONS(810), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1156), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(920), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -38708,7 +38867,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [18164] = 20, + [18238] = 20, ACTIONS(3), 1, sym_comment, ACTIONS(53), 1, @@ -38721,21 +38880,21 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(85), 1, sym__template_string_start, - ACTIONS(349), 1, + ACTIONS(361), 1, sym_identifier, - ACTIONS(355), 1, + ACTIONS(367), 1, anon_sym_await, - ACTIONS(594), 1, + ACTIONS(575), 1, anon_sym_LPAREN, - ACTIONS(598), 1, + ACTIONS(579), 1, anon_sym_LBRACK, - STATE(765), 1, - sym_primary_expression, - STATE(769), 1, + STATE(772), 1, sym_template_string, - STATE(775), 1, + STATE(773), 1, + sym_primary_expression, + STATE(779), 1, sym_string, - STATE(1225), 1, + STATE(1112), 1, sym_expression, ACTIONS(77), 2, sym_ellipsis, @@ -38749,21 +38908,21 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - ACTIONS(351), 6, + ACTIONS(363), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1156), 6, + STATE(1126), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(920), 17, + STATE(950), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -38781,7 +38940,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [18257] = 20, + [18331] = 20, ACTIONS(3), 1, sym_comment, ACTIONS(53), 1, @@ -38794,21 +38953,21 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(85), 1, sym__template_string_start, - ACTIONS(349), 1, + ACTIONS(361), 1, sym_identifier, - ACTIONS(355), 1, + ACTIONS(367), 1, anon_sym_await, - ACTIONS(594), 1, + ACTIONS(575), 1, anon_sym_LPAREN, - ACTIONS(598), 1, + ACTIONS(579), 1, anon_sym_LBRACK, - STATE(765), 1, - sym_primary_expression, - STATE(769), 1, + STATE(772), 1, sym_template_string, - STATE(775), 1, + STATE(773), 1, + sym_primary_expression, + STATE(779), 1, sym_string, - STATE(1147), 1, + STATE(1241), 1, sym_expression, ACTIONS(77), 2, sym_ellipsis, @@ -38822,21 +38981,21 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - ACTIONS(351), 6, + ACTIONS(363), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1156), 6, + STATE(1126), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(920), 17, + STATE(950), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -38854,62 +39013,62 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [18350] = 20, + [18424] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(268), 1, - sym_identifier, - ACTIONS(293), 1, + ACTIONS(53), 1, anon_sym_LBRACE, - ACTIONS(305), 1, + ACTIONS(71), 1, + anon_sym_not, + ACTIONS(73), 1, anon_sym_lambda, - ACTIONS(313), 1, - anon_sym_await, - ACTIONS(315), 1, + ACTIONS(83), 1, sym__string_start, - ACTIONS(317), 1, + ACTIONS(85), 1, sym__template_string_start, + ACTIONS(361), 1, + sym_identifier, + ACTIONS(367), 1, + anon_sym_await, ACTIONS(575), 1, anon_sym_LPAREN, - ACTIONS(586), 1, + ACTIONS(579), 1, anon_sym_LBRACK, - ACTIONS(752), 1, - anon_sym_not, - STATE(645), 1, - sym_string, - STATE(658), 1, + STATE(772), 1, sym_template_string, - STATE(719), 1, + STATE(773), 1, sym_primary_expression, - STATE(1089), 1, + STATE(779), 1, + sym_string, + STATE(1295), 1, sym_expression, - ACTIONS(309), 2, + ACTIONS(77), 2, sym_ellipsis, sym_float, - ACTIONS(301), 3, + ACTIONS(49), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(311), 4, + ACTIONS(79), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(270), 6, + ACTIONS(363), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, + STATE(1126), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(725), 17, + STATE(950), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -38927,62 +39086,62 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [18443] = 20, + [18517] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(53), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(71), 1, - anon_sym_not, - ACTIONS(73), 1, - anon_sym_lambda, - ACTIONS(83), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(85), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(349), 1, - sym_identifier, - ACTIONS(355), 1, - anon_sym_await, - ACTIONS(594), 1, + ACTIONS(602), 1, anon_sym_LPAREN, - ACTIONS(598), 1, + ACTIONS(608), 1, anon_sym_LBRACK, - STATE(765), 1, - sym_primary_expression, - STATE(769), 1, - sym_template_string, - STATE(775), 1, + ACTIONS(680), 1, + anon_sym_not, + ACTIONS(682), 1, + anon_sym_lambda, + ACTIONS(808), 1, + sym_identifier, + ACTIONS(816), 1, + anon_sym_await, + STATE(694), 1, sym_string, - STATE(1270), 1, + STATE(698), 1, + sym_template_string, + STATE(705), 1, + sym_primary_expression, + STATE(1072), 1, sym_expression, - ACTIONS(77), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(49), 3, + ACTIONS(606), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(79), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(351), 6, + ACTIONS(810), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1156), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(920), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -39000,38 +39159,41 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [18536] = 20, + [18610] = 21, ACTIONS(3), 1, sym_comment, - ACTIONS(268), 1, - sym_identifier, ACTIONS(293), 1, anon_sym_LBRACE, ACTIONS(305), 1, anon_sym_lambda, - ACTIONS(313), 1, - anon_sym_await, ACTIONS(315), 1, sym__string_start, ACTIONS(317), 1, sym__template_string_start, - ACTIONS(575), 1, + ACTIONS(585), 1, anon_sym_LPAREN, - ACTIONS(586), 1, + ACTIONS(596), 1, anon_sym_LBRACK, - ACTIONS(752), 1, + ACTIONS(768), 1, anon_sym_not, - STATE(645), 1, + ACTIONS(1090), 1, + sym_identifier, + ACTIONS(1094), 1, + anon_sym_await, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(719), 1, + STATE(704), 1, sym_primary_expression, - STATE(1069), 1, + STATE(1109), 1, sym_expression, ACTIONS(309), 2, sym_ellipsis, sym_float, + STATE(470), 2, + sym_attribute, + sym_subscript, ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, @@ -39041,25 +39203,23 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - ACTIONS(270), 6, + ACTIONS(1092), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(725), 17, + STATE(720), 15, sym_binary_operator, sym_unary_operator, - sym_attribute, - sym_subscript, sym_call, sym_list, sym_set, @@ -39073,7 +39233,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [18629] = 20, + [18705] = 20, ACTIONS(3), 1, sym_comment, ACTIONS(268), 1, @@ -39088,19 +39248,19 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(317), 1, sym__template_string_start, - ACTIONS(575), 1, + ACTIONS(585), 1, anon_sym_LPAREN, - ACTIONS(586), 1, + ACTIONS(596), 1, anon_sym_LBRACK, - ACTIONS(752), 1, + ACTIONS(768), 1, anon_sym_not, - STATE(645), 1, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(719), 1, + STATE(704), 1, sym_primary_expression, - STATE(1094), 1, + STATE(1268), 1, sym_expression, ACTIONS(309), 2, sym_ellipsis, @@ -39121,14 +39281,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(725), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -39146,62 +39306,62 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [18722] = 20, + [18798] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(53), 1, + ACTIONS(268), 1, + sym_identifier, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(71), 1, - anon_sym_not, - ACTIONS(73), 1, + ACTIONS(305), 1, anon_sym_lambda, - ACTIONS(83), 1, + ACTIONS(313), 1, + anon_sym_await, + ACTIONS(315), 1, sym__string_start, - ACTIONS(85), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(349), 1, - sym_identifier, - ACTIONS(355), 1, - anon_sym_await, - ACTIONS(594), 1, + ACTIONS(585), 1, anon_sym_LPAREN, - ACTIONS(598), 1, + ACTIONS(596), 1, anon_sym_LBRACK, - STATE(765), 1, - sym_primary_expression, - STATE(769), 1, - sym_template_string, - STATE(775), 1, + ACTIONS(768), 1, + anon_sym_not, + STATE(694), 1, sym_string, - STATE(1265), 1, + STATE(698), 1, + sym_template_string, + STATE(704), 1, + sym_primary_expression, + STATE(1386), 1, sym_expression, - ACTIONS(77), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(49), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(79), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(351), 6, + ACTIONS(270), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1156), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(920), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -39219,62 +39379,62 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [18815] = 20, + [18891] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(268), 1, - sym_identifier, - ACTIONS(293), 1, + ACTIONS(53), 1, anon_sym_LBRACE, - ACTIONS(305), 1, + ACTIONS(71), 1, + anon_sym_not, + ACTIONS(73), 1, anon_sym_lambda, - ACTIONS(313), 1, - anon_sym_await, - ACTIONS(315), 1, + ACTIONS(83), 1, sym__string_start, - ACTIONS(317), 1, + ACTIONS(85), 1, sym__template_string_start, + ACTIONS(361), 1, + sym_identifier, + ACTIONS(367), 1, + anon_sym_await, ACTIONS(575), 1, anon_sym_LPAREN, - ACTIONS(586), 1, + ACTIONS(579), 1, anon_sym_LBRACK, - ACTIONS(752), 1, - anon_sym_not, - STATE(645), 1, - sym_string, - STATE(658), 1, + STATE(772), 1, sym_template_string, - STATE(719), 1, + STATE(773), 1, sym_primary_expression, - STATE(1074), 1, + STATE(779), 1, + sym_string, + STATE(1123), 1, sym_expression, - ACTIONS(309), 2, + ACTIONS(77), 2, sym_ellipsis, sym_float, - ACTIONS(301), 3, + ACTIONS(49), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(311), 4, + ACTIONS(79), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(270), 6, + ACTIONS(363), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, + STATE(1126), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(725), 17, + STATE(950), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -39292,62 +39452,125 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [18908] = 20, + [18984] = 10, ACTIONS(3), 1, sym_comment, - ACTIONS(616), 1, + ACTIONS(277), 1, + anon_sym_COMMA, + ACTIONS(283), 1, + anon_sym_COLON_EQ, + ACTIONS(1096), 1, + anon_sym_for, + ACTIONS(1098), 1, + anon_sym_with, + ACTIONS(1100), 1, + anon_sym_def, + ACTIONS(285), 2, + anon_sym_COLON, + anon_sym_EQ, + ACTIONS(307), 13, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_AT_EQ, + anon_sym_SLASH_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_STAR_STAR_EQ, + anon_sym_GT_GT_EQ, + anon_sym_LT_LT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + ACTIONS(272), 15, + anon_sym_STAR, + anon_sym_GT_GT, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_SLASH, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT, + anon_sym_GT, + ACTIONS(303), 16, + sym__newline, + anon_sym_DOT, anon_sym_LPAREN, - ACTIONS(622), 1, + anon_sym_if, + anon_sym_in, anon_sym_LBRACK, - ACTIONS(624), 1, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + anon_sym_SEMI, + [19057] = 20, + ACTIONS(3), 1, + sym_comment, + ACTIONS(268), 1, + sym_identifier, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(630), 1, + ACTIONS(305), 1, + anon_sym_lambda, + ACTIONS(313), 1, + anon_sym_await, + ACTIONS(315), 1, sym__string_start, - ACTIONS(632), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(754), 1, - sym_identifier, - ACTIONS(760), 1, + ACTIONS(585), 1, + anon_sym_LPAREN, + ACTIONS(596), 1, + anon_sym_LBRACK, + ACTIONS(768), 1, anon_sym_not, - ACTIONS(762), 1, - anon_sym_lambda, - ACTIONS(764), 1, - anon_sym_await, - STATE(763), 1, - sym_primary_expression, - STATE(766), 1, + STATE(694), 1, sym_string, - STATE(776), 1, + STATE(698), 1, sym_template_string, - STATE(1119), 1, + STATE(704), 1, + sym_primary_expression, + STATE(1331), 1, sym_expression, - ACTIONS(626), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(620), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(612), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(756), 6, + ACTIONS(270), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1104), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(878), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -39365,39 +39588,39 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [19001] = 20, + [19150] = 20, ACTIONS(3), 1, sym_comment, + ACTIONS(268), 1, + sym_identifier, ACTIONS(293), 1, anon_sym_LBRACE, + ACTIONS(305), 1, + anon_sym_lambda, + ACTIONS(313), 1, + anon_sym_await, ACTIONS(315), 1, sym__string_start, ACTIONS(317), 1, sym__template_string_start, - ACTIONS(602), 1, + ACTIONS(585), 1, anon_sym_LPAREN, - ACTIONS(608), 1, + ACTIONS(596), 1, anon_sym_LBRACK, - ACTIONS(680), 1, + ACTIONS(768), 1, anon_sym_not, - ACTIONS(682), 1, - anon_sym_lambda, - ACTIONS(816), 1, - sym_identifier, - ACTIONS(822), 1, - anon_sym_await, - STATE(645), 1, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(726), 1, + STATE(704), 1, sym_primary_expression, - STATE(1180), 1, + STATE(1125), 1, sym_expression, ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(606), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, @@ -39406,21 +39629,21 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - ACTIONS(818), 6, + ACTIONS(270), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(725), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -39438,62 +39661,121 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [19094] = 20, + [19243] = 6, ACTIONS(3), 1, sym_comment, - ACTIONS(268), 1, - sym_identifier, - ACTIONS(293), 1, + ACTIONS(1106), 1, + anon_sym_elif, + STATE(350), 1, + aux_sym_if_statement_repeat1, + STATE(479), 1, + sym_elif_clause, + ACTIONS(1104), 13, + sym__dedent, + sym__string_start, + sym__template_string_start, + anon_sym_LPAREN, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, anon_sym_LBRACE, - ACTIONS(305), 1, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_TILDE, + sym_ellipsis, + sym_float, + ACTIONS(1102), 35, + anon_sym_lazy, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, + anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, + anon_sym_else, + anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_with, + anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, + anon_sym_exec, + anon_sym_type, + anon_sym_class, + anon_sym_not, anon_sym_lambda, - ACTIONS(313), 1, + anon_sym_yield, + sym_integer, + sym_identifier, anon_sym_await, - ACTIONS(315), 1, - sym__string_start, - ACTIONS(317), 1, - sym__template_string_start, - ACTIONS(575), 1, + sym_true, + sym_false, + sym_none, + [19308] = 20, + ACTIONS(3), 1, + sym_comment, + ACTIONS(650), 1, anon_sym_LPAREN, - ACTIONS(586), 1, + ACTIONS(656), 1, anon_sym_LBRACK, - ACTIONS(752), 1, + ACTIONS(658), 1, + anon_sym_LBRACE, + ACTIONS(664), 1, + sym__string_start, + ACTIONS(666), 1, + sym__template_string_start, + ACTIONS(964), 1, + sym_identifier, + ACTIONS(972), 1, anon_sym_not, - STATE(645), 1, + ACTIONS(974), 1, + anon_sym_lambda, + ACTIONS(976), 1, + anon_sym_await, + STATE(789), 1, + sym_primary_expression, + STATE(790), 1, sym_string, - STATE(658), 1, + STATE(791), 1, sym_template_string, - STATE(719), 1, - sym_primary_expression, - STATE(1337), 1, + STATE(1214), 1, sym_expression, - ACTIONS(309), 2, + ACTIONS(660), 2, sym_ellipsis, sym_float, - ACTIONS(301), 3, + ACTIONS(654), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(311), 4, + ACTIONS(646), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(270), 6, + ACTIONS(966), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, + STATE(1198), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(725), 17, + STATE(985), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -39511,7 +39793,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [19187] = 20, + [19401] = 20, ACTIONS(3), 1, sym_comment, ACTIONS(53), 1, @@ -39524,21 +39806,21 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(85), 1, sym__template_string_start, - ACTIONS(349), 1, + ACTIONS(361), 1, sym_identifier, - ACTIONS(355), 1, + ACTIONS(367), 1, anon_sym_await, - ACTIONS(594), 1, + ACTIONS(575), 1, anon_sym_LPAREN, - ACTIONS(598), 1, + ACTIONS(579), 1, anon_sym_LBRACK, - STATE(765), 1, - sym_primary_expression, - STATE(769), 1, + STATE(772), 1, sym_template_string, - STATE(775), 1, + STATE(773), 1, + sym_primary_expression, + STATE(779), 1, sym_string, - STATE(1152), 1, + STATE(1255), 1, sym_expression, ACTIONS(77), 2, sym_ellipsis, @@ -39552,21 +39834,21 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - ACTIONS(351), 6, + ACTIONS(363), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1156), 6, + STATE(1126), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(920), 17, + STATE(950), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -39584,7 +39866,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [19280] = 20, + [19494] = 20, ACTIONS(3), 1, sym_comment, ACTIONS(268), 1, @@ -39599,19 +39881,19 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(317), 1, sym__template_string_start, - ACTIONS(575), 1, + ACTIONS(585), 1, anon_sym_LPAREN, - ACTIONS(586), 1, + ACTIONS(596), 1, anon_sym_LBRACK, - ACTIONS(752), 1, + ACTIONS(768), 1, anon_sym_not, - STATE(645), 1, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(719), 1, + STATE(704), 1, sym_primary_expression, - STATE(1263), 1, + STATE(1085), 1, sym_expression, ACTIONS(309), 2, sym_ellipsis, @@ -39632,14 +39914,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(725), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -39657,7 +39939,80 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [19373] = 20, + [19587] = 20, + ACTIONS(3), 1, + sym_comment, + ACTIONS(616), 1, + anon_sym_LPAREN, + ACTIONS(622), 1, + anon_sym_LBRACK, + ACTIONS(624), 1, + anon_sym_LBRACE, + ACTIONS(630), 1, + sym__string_start, + ACTIONS(632), 1, + sym__template_string_start, + ACTIONS(750), 1, + sym_identifier, + ACTIONS(760), 1, + anon_sym_not, + ACTIONS(762), 1, + anon_sym_lambda, + ACTIONS(764), 1, + anon_sym_await, + STATE(780), 1, + sym_primary_expression, + STATE(781), 1, + sym_string, + STATE(782), 1, + sym_template_string, + STATE(1221), 1, + sym_expression, + ACTIONS(626), 2, + sym_ellipsis, + sym_float, + ACTIONS(620), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(612), 4, + sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(752), 6, + anon_sym_lazy, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(1131), 6, + sym_named_expression, + sym_not_operator, + sym_boolean_operator, + sym_comparison_operator, + sym_lambda, + sym_conditional_expression, + STATE(949), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [19680] = 20, ACTIONS(3), 1, sym_comment, ACTIONS(268), 1, @@ -39672,19 +40027,19 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(317), 1, sym__template_string_start, - ACTIONS(575), 1, + ACTIONS(585), 1, anon_sym_LPAREN, - ACTIONS(586), 1, + ACTIONS(596), 1, anon_sym_LBRACK, - ACTIONS(752), 1, + ACTIONS(768), 1, anon_sym_not, - STATE(645), 1, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(719), 1, + STATE(704), 1, sym_primary_expression, - STATE(1275), 1, + STATE(1088), 1, sym_expression, ACTIONS(309), 2, sym_ellipsis, @@ -39705,14 +40060,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(725), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -39730,62 +40085,62 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [19466] = 20, + [19773] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(53), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(71), 1, - anon_sym_not, - ACTIONS(73), 1, - anon_sym_lambda, - ACTIONS(83), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(85), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(349), 1, - sym_identifier, - ACTIONS(355), 1, - anon_sym_await, - ACTIONS(594), 1, + ACTIONS(602), 1, anon_sym_LPAREN, - ACTIONS(598), 1, + ACTIONS(608), 1, anon_sym_LBRACK, - STATE(765), 1, - sym_primary_expression, - STATE(769), 1, - sym_template_string, - STATE(775), 1, + ACTIONS(680), 1, + anon_sym_not, + ACTIONS(682), 1, + anon_sym_lambda, + ACTIONS(808), 1, + sym_identifier, + ACTIONS(816), 1, + anon_sym_await, + STATE(694), 1, sym_string, - STATE(1182), 1, + STATE(698), 1, + sym_template_string, + STATE(705), 1, + sym_primary_expression, + STATE(1171), 1, sym_expression, - ACTIONS(77), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(49), 3, + ACTIONS(606), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(79), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(351), 6, + ACTIONS(810), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1156), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(920), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -39803,7 +40158,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [19559] = 20, + [19866] = 20, ACTIONS(3), 1, sym_comment, ACTIONS(53), 1, @@ -39816,21 +40171,21 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(85), 1, sym__template_string_start, - ACTIONS(349), 1, + ACTIONS(361), 1, sym_identifier, - ACTIONS(355), 1, + ACTIONS(367), 1, anon_sym_await, - ACTIONS(594), 1, + ACTIONS(575), 1, anon_sym_LPAREN, - ACTIONS(598), 1, + ACTIONS(579), 1, anon_sym_LBRACK, - STATE(765), 1, - sym_primary_expression, - STATE(769), 1, + STATE(772), 1, sym_template_string, - STATE(775), 1, + STATE(773), 1, + sym_primary_expression, + STATE(779), 1, sym_string, - STATE(1268), 1, + STATE(1121), 1, sym_expression, ACTIONS(77), 2, sym_ellipsis, @@ -39844,21 +40199,21 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - ACTIONS(351), 6, + ACTIONS(363), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1156), 6, + STATE(1126), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(920), 17, + STATE(950), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -39876,7 +40231,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [19652] = 20, + [19959] = 20, ACTIONS(3), 1, sym_comment, ACTIONS(268), 1, @@ -39891,19 +40246,19 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(317), 1, sym__template_string_start, - ACTIONS(575), 1, + ACTIONS(585), 1, anon_sym_LPAREN, - ACTIONS(586), 1, + ACTIONS(596), 1, anon_sym_LBRACK, - ACTIONS(752), 1, + ACTIONS(768), 1, anon_sym_not, - STATE(645), 1, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(719), 1, + STATE(704), 1, sym_primary_expression, - STATE(1364), 1, + STATE(1096), 1, sym_expression, ACTIONS(309), 2, sym_ellipsis, @@ -39924,14 +40279,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(725), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -39949,7 +40304,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [19745] = 20, + [20052] = 20, ACTIONS(3), 1, sym_comment, ACTIONS(268), 1, @@ -39964,19 +40319,19 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(317), 1, sym__template_string_start, - ACTIONS(575), 1, + ACTIONS(585), 1, anon_sym_LPAREN, - ACTIONS(586), 1, + ACTIONS(596), 1, anon_sym_LBRACK, - ACTIONS(752), 1, + ACTIONS(768), 1, anon_sym_not, - STATE(645), 1, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(719), 1, + STATE(704), 1, sym_primary_expression, - STATE(1339), 1, + STATE(1071), 1, sym_expression, ACTIONS(309), 2, sym_ellipsis, @@ -39997,14 +40352,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(725), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -40022,62 +40377,62 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [19838] = 20, + [20145] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(640), 1, - anon_sym_LPAREN, - ACTIONS(646), 1, - anon_sym_LBRACK, - ACTIONS(648), 1, + ACTIONS(268), 1, + sym_identifier, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(654), 1, + ACTIONS(305), 1, + anon_sym_lambda, + ACTIONS(313), 1, + anon_sym_await, + ACTIONS(315), 1, sym__string_start, - ACTIONS(656), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(952), 1, - sym_identifier, - ACTIONS(960), 1, + ACTIONS(585), 1, + anon_sym_LPAREN, + ACTIONS(596), 1, + anon_sym_LBRACK, + ACTIONS(768), 1, anon_sym_not, - ACTIONS(962), 1, - anon_sym_lambda, - ACTIONS(964), 1, - anon_sym_await, - STATE(792), 1, - sym_primary_expression, - STATE(793), 1, + STATE(694), 1, sym_string, - STATE(794), 1, + STATE(698), 1, sym_template_string, - STATE(1194), 1, + STATE(704), 1, + sym_primary_expression, + STATE(1089), 1, sym_expression, - ACTIONS(650), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(644), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(636), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(954), 6, + ACTIONS(270), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1211), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(970), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -40095,62 +40450,62 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [19931] = 20, + [20238] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(640), 1, - anon_sym_LPAREN, - ACTIONS(646), 1, - anon_sym_LBRACK, - ACTIONS(648), 1, + ACTIONS(268), 1, + sym_identifier, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(654), 1, + ACTIONS(305), 1, + anon_sym_lambda, + ACTIONS(313), 1, + anon_sym_await, + ACTIONS(315), 1, sym__string_start, - ACTIONS(656), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(952), 1, - sym_identifier, - ACTIONS(960), 1, + ACTIONS(585), 1, + anon_sym_LPAREN, + ACTIONS(596), 1, + anon_sym_LBRACK, + ACTIONS(768), 1, anon_sym_not, - ACTIONS(962), 1, - anon_sym_lambda, - ACTIONS(964), 1, - anon_sym_await, - STATE(792), 1, - sym_primary_expression, - STATE(793), 1, + STATE(694), 1, sym_string, - STATE(794), 1, + STATE(698), 1, sym_template_string, - STATE(1197), 1, + STATE(704), 1, + sym_primary_expression, + STATE(1267), 1, sym_expression, - ACTIONS(650), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(644), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(636), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(954), 6, + ACTIONS(270), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1211), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(970), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -40168,62 +40523,62 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [20024] = 20, + [20331] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(640), 1, - anon_sym_LPAREN, - ACTIONS(646), 1, - anon_sym_LBRACK, - ACTIONS(648), 1, + ACTIONS(268), 1, + sym_identifier, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(654), 1, + ACTIONS(305), 1, + anon_sym_lambda, + ACTIONS(313), 1, + anon_sym_await, + ACTIONS(315), 1, sym__string_start, - ACTIONS(656), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(952), 1, - sym_identifier, - ACTIONS(960), 1, + ACTIONS(585), 1, + anon_sym_LPAREN, + ACTIONS(596), 1, + anon_sym_LBRACK, + ACTIONS(768), 1, anon_sym_not, - ACTIONS(962), 1, - anon_sym_lambda, - ACTIONS(964), 1, - anon_sym_await, - STATE(792), 1, - sym_primary_expression, - STATE(793), 1, + STATE(694), 1, sym_string, - STATE(794), 1, + STATE(698), 1, sym_template_string, - STATE(1198), 1, + STATE(704), 1, + sym_primary_expression, + STATE(1297), 1, sym_expression, - ACTIONS(650), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(644), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(636), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(954), 6, + ACTIONS(270), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1211), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(970), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -40241,62 +40596,62 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [20117] = 20, + [20424] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(53), 1, + ACTIONS(268), 1, + sym_identifier, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(71), 1, - anon_sym_not, - ACTIONS(73), 1, + ACTIONS(305), 1, anon_sym_lambda, - ACTIONS(83), 1, + ACTIONS(313), 1, + anon_sym_await, + ACTIONS(315), 1, sym__string_start, - ACTIONS(85), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(349), 1, - sym_identifier, - ACTIONS(355), 1, - anon_sym_await, - ACTIONS(594), 1, + ACTIONS(585), 1, anon_sym_LPAREN, - ACTIONS(598), 1, + ACTIONS(596), 1, anon_sym_LBRACK, - STATE(765), 1, - sym_primary_expression, - STATE(769), 1, - sym_template_string, - STATE(775), 1, + ACTIONS(768), 1, + anon_sym_not, + STATE(694), 1, sym_string, - STATE(1240), 1, + STATE(698), 1, + sym_template_string, + STATE(704), 1, + sym_primary_expression, + STATE(1298), 1, sym_expression, - ACTIONS(77), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(49), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(79), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(351), 6, + ACTIONS(270), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1156), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(920), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -40314,62 +40669,62 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [20210] = 20, + [20517] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(268), 1, - sym_identifier, - ACTIONS(293), 1, + ACTIONS(53), 1, anon_sym_LBRACE, - ACTIONS(305), 1, + ACTIONS(71), 1, + anon_sym_not, + ACTIONS(73), 1, anon_sym_lambda, - ACTIONS(313), 1, - anon_sym_await, - ACTIONS(315), 1, + ACTIONS(83), 1, sym__string_start, - ACTIONS(317), 1, + ACTIONS(85), 1, sym__template_string_start, + ACTIONS(361), 1, + sym_identifier, + ACTIONS(367), 1, + anon_sym_await, ACTIONS(575), 1, anon_sym_LPAREN, - ACTIONS(586), 1, + ACTIONS(579), 1, anon_sym_LBRACK, - ACTIONS(752), 1, - anon_sym_not, - STATE(645), 1, - sym_string, - STATE(658), 1, + STATE(772), 1, sym_template_string, - STATE(719), 1, + STATE(773), 1, sym_primary_expression, - STATE(1309), 1, + STATE(779), 1, + sym_string, + STATE(1313), 1, sym_expression, - ACTIONS(309), 2, + ACTIONS(77), 2, sym_ellipsis, sym_float, - ACTIONS(301), 3, + ACTIONS(49), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(311), 4, + ACTIONS(79), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(270), 6, + ACTIONS(363), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, + STATE(1126), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(725), 17, + STATE(950), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -40387,62 +40742,62 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [20303] = 20, + [20610] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(640), 1, - anon_sym_LPAREN, - ACTIONS(646), 1, - anon_sym_LBRACK, - ACTIONS(648), 1, + ACTIONS(53), 1, anon_sym_LBRACE, - ACTIONS(654), 1, + ACTIONS(71), 1, + anon_sym_not, + ACTIONS(73), 1, + anon_sym_lambda, + ACTIONS(83), 1, sym__string_start, - ACTIONS(656), 1, + ACTIONS(85), 1, sym__template_string_start, - ACTIONS(952), 1, + ACTIONS(361), 1, sym_identifier, - ACTIONS(960), 1, - anon_sym_not, - ACTIONS(962), 1, - anon_sym_lambda, - ACTIONS(964), 1, + ACTIONS(367), 1, anon_sym_await, - STATE(792), 1, + ACTIONS(575), 1, + anon_sym_LPAREN, + ACTIONS(579), 1, + anon_sym_LBRACK, + STATE(772), 1, + sym_template_string, + STATE(773), 1, sym_primary_expression, - STATE(793), 1, + STATE(779), 1, sym_string, - STATE(794), 1, - sym_template_string, - STATE(1200), 1, + STATE(1118), 1, sym_expression, - ACTIONS(650), 2, + ACTIONS(77), 2, sym_ellipsis, sym_float, - ACTIONS(644), 3, + ACTIONS(49), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(636), 4, + ACTIONS(79), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(954), 6, + ACTIONS(363), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1211), 6, + STATE(1126), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(970), 17, + STATE(950), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -40460,62 +40815,62 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [20396] = 20, + [20703] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(640), 1, - anon_sym_LPAREN, - ACTIONS(646), 1, - anon_sym_LBRACK, - ACTIONS(648), 1, + ACTIONS(53), 1, anon_sym_LBRACE, - ACTIONS(654), 1, + ACTIONS(71), 1, + anon_sym_not, + ACTIONS(73), 1, + anon_sym_lambda, + ACTIONS(83), 1, sym__string_start, - ACTIONS(656), 1, + ACTIONS(85), 1, sym__template_string_start, - ACTIONS(952), 1, + ACTIONS(361), 1, sym_identifier, - ACTIONS(960), 1, - anon_sym_not, - ACTIONS(962), 1, - anon_sym_lambda, - ACTIONS(964), 1, + ACTIONS(367), 1, anon_sym_await, - STATE(792), 1, + ACTIONS(575), 1, + anon_sym_LPAREN, + ACTIONS(579), 1, + anon_sym_LBRACK, + STATE(772), 1, + sym_template_string, + STATE(773), 1, sym_primary_expression, - STATE(793), 1, + STATE(779), 1, sym_string, - STATE(794), 1, - sym_template_string, - STATE(1178), 1, + STATE(1316), 1, sym_expression, - ACTIONS(650), 2, + ACTIONS(77), 2, sym_ellipsis, sym_float, - ACTIONS(644), 3, + ACTIONS(49), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(636), 4, + ACTIONS(79), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(954), 6, + ACTIONS(363), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1211), 6, + STATE(1126), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(970), 17, + STATE(950), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -40533,62 +40888,62 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [20489] = 20, + [20796] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(640), 1, - anon_sym_LPAREN, - ACTIONS(646), 1, - anon_sym_LBRACK, - ACTIONS(648), 1, + ACTIONS(268), 1, + sym_identifier, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(654), 1, + ACTIONS(305), 1, + anon_sym_lambda, + ACTIONS(313), 1, + anon_sym_await, + ACTIONS(315), 1, sym__string_start, - ACTIONS(656), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(952), 1, - sym_identifier, - ACTIONS(960), 1, + ACTIONS(585), 1, + anon_sym_LPAREN, + ACTIONS(596), 1, + anon_sym_LBRACK, + ACTIONS(768), 1, anon_sym_not, - ACTIONS(962), 1, - anon_sym_lambda, - ACTIONS(964), 1, - anon_sym_await, - STATE(792), 1, - sym_primary_expression, - STATE(793), 1, + STATE(694), 1, sym_string, - STATE(794), 1, + STATE(698), 1, sym_template_string, - STATE(1185), 1, + STATE(704), 1, + sym_primary_expression, + STATE(1081), 1, sym_expression, - ACTIONS(650), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(644), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(636), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(954), 6, + ACTIONS(270), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1211), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(970), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -40606,100 +40961,38 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [20582] = 6, + [20889] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(1088), 1, - anon_sym_elif, - STATE(364), 1, - aux_sym_if_statement_repeat1, - STATE(471), 1, - sym_elif_clause, - ACTIONS(1084), 13, - sym__string_start, - sym__template_string_start, - ts_builtin_sym_end, - anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, - sym_ellipsis, - sym_float, - ACTIONS(1086), 35, - anon_sym_lazy, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, - anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, - anon_sym_else, - anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_with, - anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, - anon_sym_exec, - anon_sym_type, - anon_sym_class, - anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, + ACTIONS(268), 1, sym_identifier, - anon_sym_await, - sym_true, - sym_false, - sym_none, - [20647] = 21, - ACTIONS(3), 1, - sym_comment, ACTIONS(293), 1, anon_sym_LBRACE, ACTIONS(305), 1, anon_sym_lambda, + ACTIONS(313), 1, + anon_sym_await, ACTIONS(315), 1, sym__string_start, ACTIONS(317), 1, sym__template_string_start, - ACTIONS(575), 1, + ACTIONS(585), 1, anon_sym_LPAREN, - ACTIONS(586), 1, + ACTIONS(596), 1, anon_sym_LBRACK, - ACTIONS(752), 1, + ACTIONS(768), 1, anon_sym_not, - ACTIONS(1091), 1, - sym_identifier, - ACTIONS(1095), 1, - anon_sym_await, - STATE(645), 1, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(719), 1, + STATE(704), 1, sym_primary_expression, - STATE(1094), 1, + STATE(1076), 1, sym_expression, ACTIONS(309), 2, sym_ellipsis, sym_float, - STATE(585), 2, - sym_attribute, - sym_subscript, ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, @@ -40709,23 +41002,25 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - ACTIONS(1093), 6, + ACTIONS(270), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(725), 15, + STATE(720), 17, sym_binary_operator, sym_unary_operator, + sym_attribute, + sym_subscript, sym_call, sym_list, sym_set, @@ -40739,62 +41034,62 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [20742] = 20, + [20982] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(616), 1, - anon_sym_LPAREN, - ACTIONS(622), 1, - anon_sym_LBRACK, - ACTIONS(624), 1, + ACTIONS(53), 1, anon_sym_LBRACE, - ACTIONS(630), 1, + ACTIONS(71), 1, + anon_sym_not, + ACTIONS(73), 1, + anon_sym_lambda, + ACTIONS(83), 1, sym__string_start, - ACTIONS(632), 1, + ACTIONS(85), 1, sym__template_string_start, - ACTIONS(754), 1, + ACTIONS(361), 1, sym_identifier, - ACTIONS(760), 1, - anon_sym_not, - ACTIONS(762), 1, - anon_sym_lambda, - ACTIONS(764), 1, + ACTIONS(367), 1, anon_sym_await, - STATE(763), 1, + ACTIONS(575), 1, + anon_sym_LPAREN, + ACTIONS(579), 1, + anon_sym_LBRACK, + STATE(772), 1, + sym_template_string, + STATE(773), 1, sym_primary_expression, - STATE(766), 1, + STATE(779), 1, sym_string, - STATE(776), 1, - sym_template_string, - STATE(1120), 1, + STATE(1115), 1, sym_expression, - ACTIONS(626), 2, + ACTIONS(77), 2, sym_ellipsis, sym_float, - ACTIONS(620), 3, + ACTIONS(49), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(612), 4, + ACTIONS(79), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(756), 6, + ACTIONS(363), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1104), 6, + STATE(1126), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(878), 17, + STATE(950), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -40812,7 +41107,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [20835] = 20, + [21075] = 20, ACTIONS(3), 1, sym_comment, ACTIONS(616), 1, @@ -40825,7 +41120,7 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(632), 1, sym__template_string_start, - ACTIONS(754), 1, + ACTIONS(750), 1, sym_identifier, ACTIONS(760), 1, anon_sym_not, @@ -40833,13 +41128,13 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_lambda, ACTIONS(764), 1, anon_sym_await, - STATE(763), 1, + STATE(780), 1, sym_primary_expression, - STATE(766), 1, + STATE(781), 1, sym_string, - STATE(776), 1, + STATE(782), 1, sym_template_string, - STATE(1121), 1, + STATE(1152), 1, sym_expression, ACTIONS(626), 2, sym_ellipsis, @@ -40853,21 +41148,21 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - ACTIONS(756), 6, + ACTIONS(752), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1104), 6, + STATE(1131), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(878), 17, + STATE(949), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -40885,62 +41180,135 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [20928] = 20, + [21168] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(616), 1, - anon_sym_LPAREN, - ACTIONS(622), 1, - anon_sym_LBRACK, - ACTIONS(624), 1, + ACTIONS(53), 1, anon_sym_LBRACE, - ACTIONS(630), 1, + ACTIONS(71), 1, + anon_sym_not, + ACTIONS(73), 1, + anon_sym_lambda, + ACTIONS(83), 1, sym__string_start, - ACTIONS(632), 1, + ACTIONS(85), 1, sym__template_string_start, - ACTIONS(754), 1, + ACTIONS(361), 1, sym_identifier, - ACTIONS(760), 1, - anon_sym_not, - ACTIONS(762), 1, - anon_sym_lambda, - ACTIONS(764), 1, + ACTIONS(367), 1, anon_sym_await, - STATE(763), 1, + ACTIONS(575), 1, + anon_sym_LPAREN, + ACTIONS(579), 1, + anon_sym_LBRACK, + STATE(772), 1, + sym_template_string, + STATE(773), 1, sym_primary_expression, - STATE(766), 1, + STATE(779), 1, + sym_string, + STATE(1220), 1, + sym_expression, + ACTIONS(77), 2, + sym_ellipsis, + sym_float, + ACTIONS(49), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(79), 4, + sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(363), 6, + anon_sym_lazy, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(1126), 6, + sym_named_expression, + sym_not_operator, + sym_boolean_operator, + sym_comparison_operator, + sym_lambda, + sym_conditional_expression, + STATE(950), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [21261] = 20, + ACTIONS(3), 1, + sym_comment, + ACTIONS(268), 1, + sym_identifier, + ACTIONS(293), 1, + anon_sym_LBRACE, + ACTIONS(305), 1, + anon_sym_lambda, + ACTIONS(313), 1, + anon_sym_await, + ACTIONS(315), 1, + sym__string_start, + ACTIONS(317), 1, + sym__template_string_start, + ACTIONS(585), 1, + anon_sym_LPAREN, + ACTIONS(596), 1, + anon_sym_LBRACK, + ACTIONS(768), 1, + anon_sym_not, + STATE(694), 1, sym_string, - STATE(776), 1, + STATE(698), 1, sym_template_string, - STATE(1122), 1, + STATE(704), 1, + sym_primary_expression, + STATE(1038), 1, sym_expression, - ACTIONS(626), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(620), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(612), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(756), 6, + ACTIONS(270), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1104), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(878), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -40958,62 +41326,62 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [21021] = 20, + [21354] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(616), 1, + ACTIONS(650), 1, anon_sym_LPAREN, - ACTIONS(622), 1, + ACTIONS(656), 1, anon_sym_LBRACK, - ACTIONS(624), 1, + ACTIONS(658), 1, anon_sym_LBRACE, - ACTIONS(630), 1, + ACTIONS(664), 1, sym__string_start, - ACTIONS(632), 1, + ACTIONS(666), 1, sym__template_string_start, - ACTIONS(754), 1, + ACTIONS(964), 1, sym_identifier, - ACTIONS(760), 1, + ACTIONS(972), 1, anon_sym_not, - ACTIONS(762), 1, + ACTIONS(974), 1, anon_sym_lambda, - ACTIONS(764), 1, + ACTIONS(976), 1, anon_sym_await, - STATE(763), 1, + STATE(789), 1, sym_primary_expression, - STATE(766), 1, + STATE(790), 1, sym_string, - STATE(776), 1, + STATE(791), 1, sym_template_string, - STATE(1123), 1, + STATE(1182), 1, sym_expression, - ACTIONS(626), 2, + ACTIONS(660), 2, sym_ellipsis, sym_float, - ACTIONS(620), 3, + ACTIONS(654), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(612), 4, + ACTIONS(646), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(756), 6, + ACTIONS(966), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1104), 6, + STATE(1198), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(878), 17, + STATE(985), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -41031,7 +41399,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [21114] = 20, + [21447] = 20, ACTIONS(3), 1, sym_comment, ACTIONS(616), 1, @@ -41044,7 +41412,7 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(632), 1, sym__template_string_start, - ACTIONS(754), 1, + ACTIONS(750), 1, sym_identifier, ACTIONS(760), 1, anon_sym_not, @@ -41052,13 +41420,13 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_lambda, ACTIONS(764), 1, anon_sym_await, - STATE(763), 1, + STATE(780), 1, sym_primary_expression, - STATE(766), 1, + STATE(781), 1, sym_string, - STATE(776), 1, + STATE(782), 1, sym_template_string, - STATE(1124), 1, + STATE(1159), 1, sym_expression, ACTIONS(626), 2, sym_ellipsis, @@ -41072,21 +41440,21 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - ACTIONS(756), 6, + ACTIONS(752), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1104), 6, + STATE(1131), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(878), 17, + STATE(949), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -41104,62 +41472,62 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [21207] = 20, + [21540] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(268), 1, - sym_identifier, - ACTIONS(293), 1, + ACTIONS(650), 1, + anon_sym_LPAREN, + ACTIONS(656), 1, + anon_sym_LBRACK, + ACTIONS(658), 1, anon_sym_LBRACE, - ACTIONS(305), 1, - anon_sym_lambda, - ACTIONS(313), 1, - anon_sym_await, - ACTIONS(315), 1, + ACTIONS(664), 1, sym__string_start, - ACTIONS(317), 1, + ACTIONS(666), 1, sym__template_string_start, - ACTIONS(575), 1, - anon_sym_LPAREN, - ACTIONS(586), 1, - anon_sym_LBRACK, - ACTIONS(752), 1, + ACTIONS(964), 1, + sym_identifier, + ACTIONS(972), 1, anon_sym_not, - STATE(645), 1, + ACTIONS(974), 1, + anon_sym_lambda, + ACTIONS(976), 1, + anon_sym_await, + STATE(789), 1, + sym_primary_expression, + STATE(790), 1, sym_string, - STATE(658), 1, + STATE(791), 1, sym_template_string, - STATE(719), 1, - sym_primary_expression, - STATE(1078), 1, + STATE(1189), 1, sym_expression, - ACTIONS(309), 2, + ACTIONS(660), 2, sym_ellipsis, sym_float, - ACTIONS(301), 3, + ACTIONS(654), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(311), 4, + ACTIONS(646), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(270), 6, + ACTIONS(966), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, + STATE(1198), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(725), 17, + STATE(985), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -41177,62 +41545,62 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [21300] = 20, + [21633] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(268), 1, - sym_identifier, - ACTIONS(293), 1, + ACTIONS(650), 1, + anon_sym_LPAREN, + ACTIONS(656), 1, + anon_sym_LBRACK, + ACTIONS(658), 1, anon_sym_LBRACE, - ACTIONS(305), 1, - anon_sym_lambda, - ACTIONS(313), 1, - anon_sym_await, - ACTIONS(315), 1, + ACTIONS(664), 1, sym__string_start, - ACTIONS(317), 1, + ACTIONS(666), 1, sym__template_string_start, - ACTIONS(575), 1, - anon_sym_LPAREN, - ACTIONS(586), 1, - anon_sym_LBRACK, - ACTIONS(752), 1, + ACTIONS(964), 1, + sym_identifier, + ACTIONS(972), 1, anon_sym_not, - STATE(645), 1, + ACTIONS(974), 1, + anon_sym_lambda, + ACTIONS(976), 1, + anon_sym_await, + STATE(789), 1, + sym_primary_expression, + STATE(790), 1, sym_string, - STATE(658), 1, + STATE(791), 1, sym_template_string, - STATE(719), 1, - sym_primary_expression, - STATE(1229), 1, + STATE(1190), 1, sym_expression, - ACTIONS(309), 2, + ACTIONS(660), 2, sym_ellipsis, sym_float, - ACTIONS(301), 3, + ACTIONS(654), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(311), 4, + ACTIONS(646), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(270), 6, + ACTIONS(966), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, + STATE(1198), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(725), 17, + STATE(985), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -41250,62 +41618,62 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [21393] = 20, + [21726] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(616), 1, + ACTIONS(650), 1, anon_sym_LPAREN, - ACTIONS(622), 1, + ACTIONS(656), 1, anon_sym_LBRACK, - ACTIONS(624), 1, + ACTIONS(658), 1, anon_sym_LBRACE, - ACTIONS(630), 1, + ACTIONS(664), 1, sym__string_start, - ACTIONS(632), 1, + ACTIONS(666), 1, sym__template_string_start, - ACTIONS(754), 1, + ACTIONS(964), 1, sym_identifier, - ACTIONS(760), 1, + ACTIONS(972), 1, anon_sym_not, - ACTIONS(762), 1, + ACTIONS(974), 1, anon_sym_lambda, - ACTIONS(764), 1, + ACTIONS(976), 1, anon_sym_await, - STATE(763), 1, + STATE(789), 1, sym_primary_expression, - STATE(766), 1, + STATE(790), 1, sym_string, - STATE(776), 1, + STATE(791), 1, sym_template_string, - STATE(1125), 1, + STATE(1201), 1, sym_expression, - ACTIONS(626), 2, + ACTIONS(660), 2, sym_ellipsis, sym_float, - ACTIONS(620), 3, + ACTIONS(654), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(612), 4, + ACTIONS(646), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(756), 6, + ACTIONS(966), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1104), 6, + STATE(1198), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(878), 17, + STATE(985), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -41323,121 +41691,62 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [21486] = 6, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1097), 1, - anon_sym_elif, - STATE(374), 1, - aux_sym_if_statement_repeat1, - STATE(469), 1, - sym_elif_clause, - ACTIONS(1084), 13, - sym__dedent, - sym__string_start, - sym__template_string_start, - anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, - sym_ellipsis, - sym_float, - ACTIONS(1086), 35, - anon_sym_lazy, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, - anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, - anon_sym_else, - anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_with, - anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, - anon_sym_exec, - anon_sym_type, - anon_sym_class, - anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, - anon_sym_await, - sym_true, - sym_false, - sym_none, - [21551] = 20, + [21819] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(616), 1, + ACTIONS(650), 1, anon_sym_LPAREN, - ACTIONS(622), 1, + ACTIONS(656), 1, anon_sym_LBRACK, - ACTIONS(624), 1, + ACTIONS(658), 1, anon_sym_LBRACE, - ACTIONS(630), 1, + ACTIONS(664), 1, sym__string_start, - ACTIONS(632), 1, + ACTIONS(666), 1, sym__template_string_start, - ACTIONS(754), 1, + ACTIONS(964), 1, sym_identifier, - ACTIONS(760), 1, + ACTIONS(972), 1, anon_sym_not, - ACTIONS(762), 1, + ACTIONS(974), 1, anon_sym_lambda, - ACTIONS(764), 1, + ACTIONS(976), 1, anon_sym_await, - STATE(763), 1, + STATE(789), 1, sym_primary_expression, - STATE(766), 1, + STATE(790), 1, sym_string, - STATE(776), 1, + STATE(791), 1, sym_template_string, - STATE(1143), 1, + STATE(1188), 1, sym_expression, - ACTIONS(626), 2, + ACTIONS(660), 2, sym_ellipsis, sym_float, - ACTIONS(620), 3, + ACTIONS(654), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(612), 4, + ACTIONS(646), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(756), 6, + ACTIONS(966), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1104), 6, + STATE(1198), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(878), 17, + STATE(985), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -41455,62 +41764,62 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [21644] = 20, + [21912] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(268), 1, - sym_identifier, - ACTIONS(293), 1, + ACTIONS(650), 1, + anon_sym_LPAREN, + ACTIONS(656), 1, + anon_sym_LBRACK, + ACTIONS(658), 1, anon_sym_LBRACE, - ACTIONS(305), 1, - anon_sym_lambda, - ACTIONS(313), 1, - anon_sym_await, - ACTIONS(315), 1, + ACTIONS(664), 1, sym__string_start, - ACTIONS(317), 1, + ACTIONS(666), 1, sym__template_string_start, - ACTIONS(575), 1, - anon_sym_LPAREN, - ACTIONS(586), 1, - anon_sym_LBRACK, - ACTIONS(752), 1, + ACTIONS(964), 1, + sym_identifier, + ACTIONS(972), 1, anon_sym_not, - STATE(645), 1, + ACTIONS(974), 1, + anon_sym_lambda, + ACTIONS(976), 1, + anon_sym_await, + STATE(789), 1, + sym_primary_expression, + STATE(790), 1, sym_string, - STATE(658), 1, + STATE(791), 1, sym_template_string, - STATE(719), 1, - sym_primary_expression, - STATE(1031), 1, + STATE(1197), 1, sym_expression, - ACTIONS(309), 2, + ACTIONS(660), 2, sym_ellipsis, sym_float, - ACTIONS(301), 3, + ACTIONS(654), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(311), 4, + ACTIONS(646), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(270), 6, + ACTIONS(966), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, + STATE(1198), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(725), 17, + STATE(985), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -41528,62 +41837,62 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [21737] = 20, + [22005] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(53), 1, + ACTIONS(616), 1, + anon_sym_LPAREN, + ACTIONS(622), 1, + anon_sym_LBRACK, + ACTIONS(624), 1, anon_sym_LBRACE, - ACTIONS(71), 1, - anon_sym_not, - ACTIONS(73), 1, - anon_sym_lambda, - ACTIONS(83), 1, + ACTIONS(630), 1, sym__string_start, - ACTIONS(85), 1, + ACTIONS(632), 1, sym__template_string_start, - ACTIONS(349), 1, + ACTIONS(750), 1, sym_identifier, - ACTIONS(355), 1, + ACTIONS(760), 1, + anon_sym_not, + ACTIONS(762), 1, + anon_sym_lambda, + ACTIONS(764), 1, anon_sym_await, - ACTIONS(594), 1, - anon_sym_LPAREN, - ACTIONS(598), 1, - anon_sym_LBRACK, - STATE(765), 1, + STATE(780), 1, sym_primary_expression, - STATE(769), 1, - sym_template_string, - STATE(775), 1, + STATE(781), 1, sym_string, - STATE(1366), 1, + STATE(782), 1, + sym_template_string, + STATE(1162), 1, sym_expression, - ACTIONS(77), 2, + ACTIONS(626), 2, sym_ellipsis, sym_float, - ACTIONS(49), 3, + ACTIONS(620), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(79), 4, + ACTIONS(612), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(351), 6, + ACTIONS(752), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1156), 6, + STATE(1131), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(920), 17, + STATE(949), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -41601,7 +41910,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [21830] = 20, + [22098] = 20, ACTIONS(3), 1, sym_comment, ACTIONS(53), 1, @@ -41614,21 +41923,21 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(85), 1, sym__template_string_start, - ACTIONS(349), 1, + ACTIONS(361), 1, sym_identifier, - ACTIONS(355), 1, + ACTIONS(367), 1, anon_sym_await, - ACTIONS(594), 1, + ACTIONS(575), 1, anon_sym_LPAREN, - ACTIONS(598), 1, + ACTIONS(579), 1, anon_sym_LBRACK, - STATE(765), 1, - sym_primary_expression, - STATE(769), 1, + STATE(772), 1, sym_template_string, - STATE(775), 1, + STATE(773), 1, + sym_primary_expression, + STATE(779), 1, sym_string, - STATE(1274), 1, + STATE(1161), 1, sym_expression, ACTIONS(77), 2, sym_ellipsis, @@ -41642,21 +41951,21 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - ACTIONS(351), 6, + ACTIONS(363), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1156), 6, + STATE(1126), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(920), 17, + STATE(950), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -41674,62 +41983,62 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [21923] = 20, + [22191] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(268), 1, - sym_identifier, - ACTIONS(293), 1, + ACTIONS(616), 1, + anon_sym_LPAREN, + ACTIONS(622), 1, + anon_sym_LBRACK, + ACTIONS(624), 1, anon_sym_LBRACE, - ACTIONS(305), 1, - anon_sym_lambda, - ACTIONS(313), 1, - anon_sym_await, - ACTIONS(315), 1, + ACTIONS(630), 1, sym__string_start, - ACTIONS(317), 1, + ACTIONS(632), 1, sym__template_string_start, - ACTIONS(575), 1, - anon_sym_LPAREN, - ACTIONS(586), 1, - anon_sym_LBRACK, - ACTIONS(752), 1, + ACTIONS(750), 1, + sym_identifier, + ACTIONS(760), 1, anon_sym_not, - STATE(645), 1, + ACTIONS(762), 1, + anon_sym_lambda, + ACTIONS(764), 1, + anon_sym_await, + STATE(780), 1, + sym_primary_expression, + STATE(781), 1, sym_string, - STATE(658), 1, + STATE(782), 1, sym_template_string, - STATE(719), 1, - sym_primary_expression, - STATE(1244), 1, + STATE(1165), 1, sym_expression, - ACTIONS(309), 2, + ACTIONS(626), 2, sym_ellipsis, sym_float, - ACTIONS(301), 3, + ACTIONS(620), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(311), 4, + ACTIONS(612), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(270), 6, + ACTIONS(752), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, + STATE(1131), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(725), 17, + STATE(949), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -41747,62 +42056,62 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [22016] = 20, + [22284] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(53), 1, + ACTIONS(616), 1, + anon_sym_LPAREN, + ACTIONS(622), 1, + anon_sym_LBRACK, + ACTIONS(624), 1, anon_sym_LBRACE, - ACTIONS(71), 1, - anon_sym_not, - ACTIONS(73), 1, - anon_sym_lambda, - ACTIONS(83), 1, + ACTIONS(630), 1, sym__string_start, - ACTIONS(85), 1, + ACTIONS(632), 1, sym__template_string_start, - ACTIONS(349), 1, + ACTIONS(750), 1, sym_identifier, - ACTIONS(355), 1, + ACTIONS(760), 1, + anon_sym_not, + ACTIONS(762), 1, + anon_sym_lambda, + ACTIONS(764), 1, anon_sym_await, - ACTIONS(594), 1, - anon_sym_LPAREN, - ACTIONS(598), 1, - anon_sym_LBRACK, - STATE(765), 1, + STATE(780), 1, sym_primary_expression, - STATE(769), 1, - sym_template_string, - STATE(775), 1, + STATE(781), 1, sym_string, - STATE(1145), 1, + STATE(782), 1, + sym_template_string, + STATE(1167), 1, sym_expression, - ACTIONS(77), 2, + ACTIONS(626), 2, sym_ellipsis, sym_float, - ACTIONS(49), 3, + ACTIONS(620), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(79), 4, + ACTIONS(612), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(351), 6, + ACTIONS(752), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1156), 6, + STATE(1131), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(920), 17, + STATE(949), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -41820,62 +42129,62 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [22109] = 20, + [22377] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(293), 1, + ACTIONS(616), 1, + anon_sym_LPAREN, + ACTIONS(622), 1, + anon_sym_LBRACK, + ACTIONS(624), 1, anon_sym_LBRACE, - ACTIONS(315), 1, + ACTIONS(630), 1, sym__string_start, - ACTIONS(317), 1, + ACTIONS(632), 1, sym__template_string_start, - ACTIONS(602), 1, - anon_sym_LPAREN, - ACTIONS(608), 1, - anon_sym_LBRACK, - ACTIONS(680), 1, + ACTIONS(750), 1, + sym_identifier, + ACTIONS(760), 1, anon_sym_not, - ACTIONS(682), 1, + ACTIONS(762), 1, anon_sym_lambda, - ACTIONS(816), 1, - sym_identifier, - ACTIONS(822), 1, + ACTIONS(764), 1, anon_sym_await, - STATE(645), 1, + STATE(780), 1, + sym_primary_expression, + STATE(781), 1, sym_string, - STATE(658), 1, + STATE(782), 1, sym_template_string, - STATE(726), 1, - sym_primary_expression, - STATE(1067), 1, + STATE(1168), 1, sym_expression, - ACTIONS(309), 2, + ACTIONS(626), 2, sym_ellipsis, sym_float, - ACTIONS(606), 3, + ACTIONS(620), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(311), 4, + ACTIONS(612), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(818), 6, + ACTIONS(752), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, + STATE(1131), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(725), 17, + STATE(949), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -41893,62 +42202,62 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [22202] = 20, + [22470] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(53), 1, + ACTIONS(616), 1, + anon_sym_LPAREN, + ACTIONS(622), 1, + anon_sym_LBRACK, + ACTIONS(624), 1, anon_sym_LBRACE, - ACTIONS(71), 1, - anon_sym_not, - ACTIONS(73), 1, - anon_sym_lambda, - ACTIONS(83), 1, + ACTIONS(630), 1, sym__string_start, - ACTIONS(85), 1, + ACTIONS(632), 1, sym__template_string_start, - ACTIONS(349), 1, + ACTIONS(750), 1, sym_identifier, - ACTIONS(355), 1, + ACTIONS(760), 1, + anon_sym_not, + ACTIONS(762), 1, + anon_sym_lambda, + ACTIONS(764), 1, anon_sym_await, - ACTIONS(594), 1, - anon_sym_LPAREN, - ACTIONS(598), 1, - anon_sym_LBRACK, - STATE(765), 1, + STATE(780), 1, sym_primary_expression, - STATE(769), 1, - sym_template_string, - STATE(775), 1, + STATE(781), 1, sym_string, - STATE(1126), 1, + STATE(782), 1, + sym_template_string, + STATE(1170), 1, sym_expression, - ACTIONS(77), 2, + ACTIONS(626), 2, sym_ellipsis, sym_float, - ACTIONS(49), 3, + ACTIONS(620), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(79), 4, + ACTIONS(612), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(351), 6, + ACTIONS(752), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1156), 6, + STATE(1131), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(920), 17, + STATE(949), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -41966,62 +42275,62 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [22295] = 20, + [22563] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(268), 1, - sym_identifier, - ACTIONS(293), 1, + ACTIONS(53), 1, anon_sym_LBRACE, - ACTIONS(305), 1, + ACTIONS(71), 1, + anon_sym_not, + ACTIONS(73), 1, anon_sym_lambda, - ACTIONS(313), 1, - anon_sym_await, - ACTIONS(315), 1, + ACTIONS(83), 1, sym__string_start, - ACTIONS(317), 1, + ACTIONS(85), 1, sym__template_string_start, + ACTIONS(361), 1, + sym_identifier, + ACTIONS(367), 1, + anon_sym_await, ACTIONS(575), 1, anon_sym_LPAREN, - ACTIONS(586), 1, + ACTIONS(579), 1, anon_sym_LBRACK, - ACTIONS(752), 1, - anon_sym_not, - STATE(645), 1, - sym_string, - STATE(658), 1, + STATE(772), 1, sym_template_string, - STATE(719), 1, + STATE(773), 1, sym_primary_expression, - STATE(1151), 1, + STATE(779), 1, + sym_string, + STATE(1326), 1, sym_expression, - ACTIONS(309), 2, + ACTIONS(77), 2, sym_ellipsis, sym_float, - ACTIONS(301), 3, + ACTIONS(49), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(311), 4, + ACTIONS(79), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(270), 6, + ACTIONS(363), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, + STATE(1126), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(725), 17, + STATE(950), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -42039,7 +42348,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [22388] = 20, + [22656] = 20, ACTIONS(3), 1, sym_comment, ACTIONS(53), 1, @@ -42052,21 +42361,21 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(85), 1, sym__template_string_start, - ACTIONS(349), 1, + ACTIONS(361), 1, sym_identifier, - ACTIONS(355), 1, + ACTIONS(367), 1, anon_sym_await, - ACTIONS(594), 1, + ACTIONS(575), 1, anon_sym_LPAREN, - ACTIONS(598), 1, + ACTIONS(579), 1, anon_sym_LBRACK, - STATE(765), 1, - sym_primary_expression, - STATE(769), 1, + STATE(772), 1, sym_template_string, - STATE(775), 1, + STATE(773), 1, + sym_primary_expression, + STATE(779), 1, sym_string, - STATE(1142), 1, + STATE(1247), 1, sym_expression, ACTIONS(77), 2, sym_ellipsis, @@ -42080,21 +42389,21 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - ACTIONS(351), 6, + ACTIONS(363), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1156), 6, + STATE(1126), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(920), 17, + STATE(950), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -42112,62 +42421,62 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [22481] = 20, + [22749] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(293), 1, + ACTIONS(616), 1, + anon_sym_LPAREN, + ACTIONS(622), 1, + anon_sym_LBRACK, + ACTIONS(624), 1, anon_sym_LBRACE, - ACTIONS(315), 1, + ACTIONS(630), 1, sym__string_start, - ACTIONS(317), 1, + ACTIONS(632), 1, sym__template_string_start, - ACTIONS(602), 1, - anon_sym_LPAREN, - ACTIONS(608), 1, - anon_sym_LBRACK, - ACTIONS(680), 1, + ACTIONS(750), 1, + sym_identifier, + ACTIONS(760), 1, anon_sym_not, - ACTIONS(682), 1, + ACTIONS(762), 1, anon_sym_lambda, - ACTIONS(816), 1, - sym_identifier, - ACTIONS(822), 1, + ACTIONS(764), 1, anon_sym_await, - STATE(645), 1, + STATE(780), 1, + sym_primary_expression, + STATE(781), 1, sym_string, - STATE(658), 1, + STATE(782), 1, sym_template_string, - STATE(726), 1, - sym_primary_expression, - STATE(1157), 1, + STATE(1169), 1, sym_expression, - ACTIONS(309), 2, + ACTIONS(626), 2, sym_ellipsis, sym_float, - ACTIONS(606), 3, + ACTIONS(620), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(311), 4, + ACTIONS(612), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(818), 6, + ACTIONS(752), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, + STATE(1131), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(725), 17, + STATE(949), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -42185,62 +42494,62 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [22574] = 20, + [22842] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(293), 1, + ACTIONS(650), 1, + anon_sym_LPAREN, + ACTIONS(656), 1, + anon_sym_LBRACK, + ACTIONS(658), 1, anon_sym_LBRACE, - ACTIONS(315), 1, + ACTIONS(664), 1, sym__string_start, - ACTIONS(317), 1, + ACTIONS(666), 1, sym__template_string_start, - ACTIONS(602), 1, - anon_sym_LPAREN, - ACTIONS(608), 1, - anon_sym_LBRACK, - ACTIONS(680), 1, + ACTIONS(964), 1, + sym_identifier, + ACTIONS(972), 1, anon_sym_not, - ACTIONS(682), 1, + ACTIONS(974), 1, anon_sym_lambda, - ACTIONS(816), 1, - sym_identifier, - ACTIONS(822), 1, + ACTIONS(976), 1, anon_sym_await, - STATE(645), 1, + STATE(789), 1, + sym_primary_expression, + STATE(790), 1, sym_string, - STATE(658), 1, + STATE(791), 1, sym_template_string, - STATE(726), 1, - sym_primary_expression, - STATE(1072), 1, + STATE(1233), 1, sym_expression, - ACTIONS(309), 2, + ACTIONS(660), 2, sym_ellipsis, sym_float, - ACTIONS(606), 3, + ACTIONS(654), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(311), 4, + ACTIONS(646), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(818), 6, + ACTIONS(966), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, + STATE(1198), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(725), 17, + STATE(985), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -42258,39 +42567,39 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [22667] = 20, + [22935] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(268), 1, - sym_identifier, ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(305), 1, - anon_sym_lambda, - ACTIONS(313), 1, - anon_sym_await, ACTIONS(315), 1, sym__string_start, ACTIONS(317), 1, sym__template_string_start, - ACTIONS(575), 1, + ACTIONS(602), 1, anon_sym_LPAREN, - ACTIONS(586), 1, + ACTIONS(608), 1, anon_sym_LBRACK, - ACTIONS(752), 1, + ACTIONS(680), 1, anon_sym_not, - STATE(645), 1, + ACTIONS(682), 1, + anon_sym_lambda, + ACTIONS(808), 1, + sym_identifier, + ACTIONS(816), 1, + anon_sym_await, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(719), 1, + STATE(705), 1, sym_primary_expression, - STATE(1196), 1, + STATE(1238), 1, sym_expression, ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(301), 3, + ACTIONS(606), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, @@ -42299,21 +42608,21 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - ACTIONS(270), 6, + ACTIONS(810), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(725), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -42331,7 +42640,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [22760] = 20, + [23028] = 20, ACTIONS(3), 1, sym_comment, ACTIONS(293), 1, @@ -42348,17 +42657,17 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_not, ACTIONS(682), 1, anon_sym_lambda, - ACTIONS(816), 1, + ACTIONS(808), 1, sym_identifier, - ACTIONS(822), 1, + ACTIONS(816), 1, anon_sym_await, - STATE(645), 1, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(726), 1, + STATE(705), 1, sym_primary_expression, - STATE(1073), 1, + STATE(1038), 1, sym_expression, ACTIONS(309), 2, sym_ellipsis, @@ -42372,21 +42681,21 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - ACTIONS(818), 6, + ACTIONS(810), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(725), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -42404,62 +42713,121 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [22853] = 20, + [23121] = 6, ACTIONS(3), 1, sym_comment, - ACTIONS(640), 1, + ACTIONS(1109), 1, + anon_sym_elif, + STATE(392), 1, + aux_sym_if_statement_repeat1, + STATE(473), 1, + sym_elif_clause, + ACTIONS(1104), 13, + sym__string_start, + sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, - ACTIONS(646), 1, + anon_sym_DASH, + anon_sym_PLUS, anon_sym_LBRACK, - ACTIONS(648), 1, anon_sym_LBRACE, - ACTIONS(654), 1, - sym__string_start, - ACTIONS(656), 1, - sym__template_string_start, - ACTIONS(952), 1, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_TILDE, + sym_ellipsis, + sym_float, + ACTIONS(1102), 35, + anon_sym_lazy, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, + anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, + anon_sym_else, + anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_with, + anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, + anon_sym_exec, + anon_sym_type, + anon_sym_class, + anon_sym_not, + anon_sym_lambda, + anon_sym_yield, + sym_integer, sym_identifier, - ACTIONS(960), 1, + anon_sym_await, + sym_true, + sym_false, + sym_none, + [23186] = 20, + ACTIONS(3), 1, + sym_comment, + ACTIONS(53), 1, + anon_sym_LBRACE, + ACTIONS(71), 1, anon_sym_not, - ACTIONS(962), 1, + ACTIONS(73), 1, anon_sym_lambda, - ACTIONS(964), 1, + ACTIONS(83), 1, + sym__string_start, + ACTIONS(85), 1, + sym__template_string_start, + ACTIONS(361), 1, + sym_identifier, + ACTIONS(367), 1, anon_sym_await, - STATE(792), 1, + ACTIONS(575), 1, + anon_sym_LPAREN, + ACTIONS(579), 1, + anon_sym_LBRACK, + STATE(772), 1, + sym_template_string, + STATE(773), 1, sym_primary_expression, - STATE(793), 1, + STATE(779), 1, sym_string, - STATE(794), 1, - sym_template_string, - STATE(1187), 1, + STATE(1278), 1, sym_expression, - ACTIONS(650), 2, + ACTIONS(77), 2, sym_ellipsis, sym_float, - ACTIONS(644), 3, + ACTIONS(49), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(636), 4, + ACTIONS(79), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(954), 6, + ACTIONS(363), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1211), 6, + STATE(1126), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(970), 17, + STATE(950), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -42477,62 +42845,62 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [22946] = 20, + [23279] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(640), 1, - anon_sym_LPAREN, - ACTIONS(646), 1, - anon_sym_LBRACK, - ACTIONS(648), 1, + ACTIONS(268), 1, + sym_identifier, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(654), 1, + ACTIONS(305), 1, + anon_sym_lambda, + ACTIONS(313), 1, + anon_sym_await, + ACTIONS(315), 1, sym__string_start, - ACTIONS(656), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(952), 1, - sym_identifier, - ACTIONS(960), 1, + ACTIONS(585), 1, + anon_sym_LPAREN, + ACTIONS(596), 1, + anon_sym_LBRACK, + ACTIONS(768), 1, anon_sym_not, - ACTIONS(962), 1, - anon_sym_lambda, - ACTIONS(964), 1, - anon_sym_await, - STATE(792), 1, - sym_primary_expression, - STATE(793), 1, + STATE(694), 1, sym_string, - STATE(794), 1, + STATE(698), 1, sym_template_string, - STATE(1189), 1, + STATE(704), 1, + sym_primary_expression, + STATE(1350), 1, sym_expression, - ACTIONS(650), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(644), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(636), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(954), 6, + ACTIONS(270), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1211), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(970), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -42550,62 +42918,62 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [23039] = 20, + [23372] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(53), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(71), 1, - anon_sym_not, - ACTIONS(73), 1, - anon_sym_lambda, - ACTIONS(83), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(85), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(349), 1, - sym_identifier, - ACTIONS(355), 1, - anon_sym_await, - ACTIONS(594), 1, + ACTIONS(602), 1, anon_sym_LPAREN, - ACTIONS(598), 1, + ACTIONS(608), 1, anon_sym_LBRACK, - STATE(765), 1, - sym_primary_expression, - STATE(769), 1, - sym_template_string, - STATE(775), 1, + ACTIONS(680), 1, + anon_sym_not, + ACTIONS(682), 1, + anon_sym_lambda, + ACTIONS(808), 1, + sym_identifier, + ACTIONS(816), 1, + anon_sym_await, + STATE(694), 1, sym_string, - STATE(1141), 1, + STATE(698), 1, + sym_template_string, + STATE(705), 1, + sym_primary_expression, + STATE(1098), 1, sym_expression, - ACTIONS(77), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(49), 3, + ACTIONS(606), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(79), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(351), 6, + ACTIONS(810), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1156), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(920), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -42623,62 +42991,62 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [23132] = 20, + [23465] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(293), 1, + ACTIONS(53), 1, anon_sym_LBRACE, - ACTIONS(315), 1, - sym__string_start, - ACTIONS(317), 1, - sym__template_string_start, - ACTIONS(602), 1, - anon_sym_LPAREN, - ACTIONS(608), 1, - anon_sym_LBRACK, - ACTIONS(680), 1, + ACTIONS(71), 1, anon_sym_not, - ACTIONS(682), 1, + ACTIONS(73), 1, anon_sym_lambda, - ACTIONS(816), 1, + ACTIONS(83), 1, + sym__string_start, + ACTIONS(85), 1, + sym__template_string_start, + ACTIONS(361), 1, sym_identifier, - ACTIONS(822), 1, + ACTIONS(367), 1, anon_sym_await, - STATE(645), 1, - sym_string, - STATE(658), 1, + ACTIONS(575), 1, + anon_sym_LPAREN, + ACTIONS(579), 1, + anon_sym_LBRACK, + STATE(772), 1, sym_template_string, - STATE(726), 1, + STATE(773), 1, sym_primary_expression, - STATE(1076), 1, + STATE(779), 1, + sym_string, + STATE(1129), 1, sym_expression, - ACTIONS(309), 2, + ACTIONS(77), 2, sym_ellipsis, sym_float, - ACTIONS(606), 3, + ACTIONS(49), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(311), 4, + ACTIONS(79), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(818), 6, + ACTIONS(363), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, + STATE(1126), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(725), 17, + STATE(950), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -42696,39 +43064,39 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [23225] = 20, + [23558] = 20, ACTIONS(3), 1, sym_comment, + ACTIONS(268), 1, + sym_identifier, ACTIONS(293), 1, anon_sym_LBRACE, + ACTIONS(305), 1, + anon_sym_lambda, + ACTIONS(313), 1, + anon_sym_await, ACTIONS(315), 1, sym__string_start, ACTIONS(317), 1, sym__template_string_start, - ACTIONS(602), 1, + ACTIONS(585), 1, anon_sym_LPAREN, - ACTIONS(608), 1, + ACTIONS(596), 1, anon_sym_LBRACK, - ACTIONS(680), 1, + ACTIONS(768), 1, anon_sym_not, - ACTIONS(682), 1, - anon_sym_lambda, - ACTIONS(816), 1, - sym_identifier, - ACTIONS(822), 1, - anon_sym_await, - STATE(645), 1, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(726), 1, + STATE(704), 1, sym_primary_expression, - STATE(1063), 1, + STATE(1109), 1, sym_expression, ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(606), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, @@ -42737,21 +43105,21 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - ACTIONS(818), 6, + ACTIONS(270), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(725), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -42769,62 +43137,62 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [23318] = 20, + [23651] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(53), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(71), 1, - anon_sym_not, - ACTIONS(73), 1, - anon_sym_lambda, - ACTIONS(83), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(85), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(349), 1, - sym_identifier, - ACTIONS(355), 1, - anon_sym_await, - ACTIONS(594), 1, + ACTIONS(602), 1, anon_sym_LPAREN, - ACTIONS(598), 1, + ACTIONS(608), 1, anon_sym_LBRACK, - STATE(765), 1, - sym_primary_expression, - STATE(769), 1, - sym_template_string, - STATE(775), 1, + ACTIONS(680), 1, + anon_sym_not, + ACTIONS(682), 1, + anon_sym_lambda, + ACTIONS(808), 1, + sym_identifier, + ACTIONS(816), 1, + anon_sym_await, + STATE(694), 1, sym_string, - STATE(1184), 1, + STATE(698), 1, + sym_template_string, + STATE(705), 1, + sym_primary_expression, + STATE(1224), 1, sym_expression, - ACTIONS(77), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(49), 3, + ACTIONS(606), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(79), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(351), 6, + ACTIONS(810), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1156), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(920), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -42842,62 +43210,62 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [23411] = 20, + [23744] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(293), 1, + ACTIONS(616), 1, + anon_sym_LPAREN, + ACTIONS(622), 1, + anon_sym_LBRACK, + ACTIONS(624), 1, anon_sym_LBRACE, - ACTIONS(315), 1, + ACTIONS(630), 1, sym__string_start, - ACTIONS(317), 1, + ACTIONS(632), 1, sym__template_string_start, - ACTIONS(602), 1, - anon_sym_LPAREN, - ACTIONS(608), 1, - anon_sym_LBRACK, - ACTIONS(680), 1, + ACTIONS(750), 1, + sym_identifier, + ACTIONS(760), 1, anon_sym_not, - ACTIONS(682), 1, + ACTIONS(762), 1, anon_sym_lambda, - ACTIONS(816), 1, - sym_identifier, - ACTIONS(822), 1, + ACTIONS(764), 1, anon_sym_await, - STATE(645), 1, + STATE(780), 1, + sym_primary_expression, + STATE(781), 1, sym_string, - STATE(658), 1, + STATE(782), 1, sym_template_string, - STATE(726), 1, - sym_primary_expression, - STATE(1082), 1, + STATE(1145), 1, sym_expression, - ACTIONS(309), 2, + ACTIONS(626), 2, sym_ellipsis, sym_float, - ACTIONS(606), 3, + ACTIONS(620), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(311), 4, + ACTIONS(612), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(818), 6, + ACTIONS(752), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, + STATE(1131), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(725), 17, + STATE(949), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -42915,62 +43283,62 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [23504] = 20, + [23837] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(268), 1, - sym_identifier, - ACTIONS(293), 1, + ACTIONS(53), 1, anon_sym_LBRACE, - ACTIONS(305), 1, + ACTIONS(71), 1, + anon_sym_not, + ACTIONS(73), 1, anon_sym_lambda, - ACTIONS(313), 1, - anon_sym_await, - ACTIONS(315), 1, + ACTIONS(83), 1, sym__string_start, - ACTIONS(317), 1, + ACTIONS(85), 1, sym__template_string_start, + ACTIONS(361), 1, + sym_identifier, + ACTIONS(367), 1, + anon_sym_await, ACTIONS(575), 1, anon_sym_LPAREN, - ACTIONS(586), 1, + ACTIONS(579), 1, anon_sym_LBRACK, - ACTIONS(752), 1, - anon_sym_not, - STATE(645), 1, - sym_string, - STATE(658), 1, + STATE(772), 1, sym_template_string, - STATE(719), 1, + STATE(773), 1, sym_primary_expression, - STATE(1312), 1, + STATE(779), 1, + sym_string, + STATE(1225), 1, sym_expression, - ACTIONS(309), 2, + ACTIONS(77), 2, sym_ellipsis, sym_float, - ACTIONS(301), 3, + ACTIONS(49), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(311), 4, + ACTIONS(79), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(270), 6, + ACTIONS(363), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, + STATE(1126), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(725), 17, + STATE(950), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -42988,7 +43356,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [23597] = 20, + [23930] = 21, ACTIONS(3), 1, sym_comment, ACTIONS(293), 1, @@ -43005,21 +43373,24 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_not, ACTIONS(682), 1, anon_sym_lambda, - ACTIONS(816), 1, + ACTIONS(1112), 1, sym_identifier, - ACTIONS(822), 1, + ACTIONS(1116), 1, anon_sym_await, - STATE(645), 1, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(726), 1, + STATE(705), 1, sym_primary_expression, - STATE(1031), 1, + STATE(1098), 1, sym_expression, ACTIONS(309), 2, sym_ellipsis, sym_float, + STATE(470), 2, + sym_attribute, + sym_subscript, ACTIONS(606), 3, anon_sym_DASH, anon_sym_PLUS, @@ -43029,25 +43400,23 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - ACTIONS(818), 6, + ACTIONS(1114), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(725), 17, + STATE(720), 15, sym_binary_operator, sym_unary_operator, - sym_attribute, - sym_subscript, sym_call, sym_list, sym_set, @@ -43061,62 +43430,62 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [23690] = 20, + [24025] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(616), 1, - anon_sym_LPAREN, - ACTIONS(622), 1, - anon_sym_LBRACK, - ACTIONS(624), 1, + ACTIONS(268), 1, + sym_identifier, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(630), 1, + ACTIONS(305), 1, + anon_sym_lambda, + ACTIONS(313), 1, + anon_sym_await, + ACTIONS(315), 1, sym__string_start, - ACTIONS(632), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(754), 1, - sym_identifier, - ACTIONS(760), 1, + ACTIONS(585), 1, + anon_sym_LPAREN, + ACTIONS(596), 1, + anon_sym_LBRACK, + ACTIONS(768), 1, anon_sym_not, - ACTIONS(762), 1, - anon_sym_lambda, - ACTIONS(764), 1, - anon_sym_await, - STATE(763), 1, - sym_primary_expression, - STATE(766), 1, + STATE(694), 1, sym_string, - STATE(776), 1, + STATE(698), 1, sym_template_string, - STATE(1131), 1, + STATE(704), 1, + sym_primary_expression, + STATE(1292), 1, sym_expression, - ACTIONS(626), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(620), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(612), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(756), 6, + ACTIONS(270), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1104), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(878), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -43134,62 +43503,62 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [23783] = 20, + [24118] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(53), 1, + ACTIONS(268), 1, + sym_identifier, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(71), 1, - anon_sym_not, - ACTIONS(73), 1, + ACTIONS(305), 1, anon_sym_lambda, - ACTIONS(83), 1, + ACTIONS(313), 1, + anon_sym_await, + ACTIONS(315), 1, sym__string_start, - ACTIONS(85), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(349), 1, - sym_identifier, - ACTIONS(355), 1, - anon_sym_await, - ACTIONS(594), 1, + ACTIONS(585), 1, anon_sym_LPAREN, - ACTIONS(598), 1, + ACTIONS(596), 1, anon_sym_LBRACK, - STATE(765), 1, - sym_primary_expression, - STATE(769), 1, - sym_template_string, - STATE(775), 1, + ACTIONS(768), 1, + anon_sym_not, + STATE(694), 1, sym_string, - STATE(1277), 1, + STATE(698), 1, + sym_template_string, + STATE(704), 1, + sym_primary_expression, + STATE(1347), 1, sym_expression, - ACTIONS(77), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(49), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(79), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(351), 6, + ACTIONS(270), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1156), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(920), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -43207,7 +43576,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [23876] = 20, + [24211] = 20, ACTIONS(3), 1, sym_comment, ACTIONS(53), 1, @@ -43220,21 +43589,21 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(85), 1, sym__template_string_start, - ACTIONS(349), 1, + ACTIONS(361), 1, sym_identifier, - ACTIONS(355), 1, + ACTIONS(367), 1, anon_sym_await, - ACTIONS(594), 1, + ACTIONS(575), 1, anon_sym_LPAREN, - ACTIONS(598), 1, + ACTIONS(579), 1, anon_sym_LBRACK, - STATE(765), 1, - sym_primary_expression, - STATE(769), 1, + STATE(772), 1, sym_template_string, - STATE(775), 1, + STATE(773), 1, + sym_primary_expression, + STATE(779), 1, sym_string, - STATE(1167), 1, + STATE(1284), 1, sym_expression, ACTIONS(77), 2, sym_ellipsis, @@ -43248,21 +43617,21 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - ACTIONS(351), 6, + ACTIONS(363), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1156), 6, + STATE(1126), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(920), 17, + STATE(950), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -43280,62 +43649,62 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [23969] = 20, + [24304] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(616), 1, - anon_sym_LPAREN, - ACTIONS(622), 1, - anon_sym_LBRACK, - ACTIONS(624), 1, + ACTIONS(268), 1, + sym_identifier, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(630), 1, + ACTIONS(305), 1, + anon_sym_lambda, + ACTIONS(313), 1, + anon_sym_await, + ACTIONS(315), 1, sym__string_start, - ACTIONS(632), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(754), 1, - sym_identifier, - ACTIONS(760), 1, + ACTIONS(585), 1, + anon_sym_LPAREN, + ACTIONS(596), 1, + anon_sym_LBRACK, + ACTIONS(768), 1, anon_sym_not, - ACTIONS(762), 1, - anon_sym_lambda, - ACTIONS(764), 1, - anon_sym_await, - STATE(763), 1, - sym_primary_expression, - STATE(766), 1, + STATE(694), 1, sym_string, - STATE(776), 1, + STATE(698), 1, sym_template_string, - STATE(1106), 1, + STATE(704), 1, + sym_primary_expression, + STATE(1363), 1, sym_expression, - ACTIONS(626), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(620), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(612), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(756), 6, + ACTIONS(270), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1104), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(878), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -43353,39 +43722,39 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [24062] = 20, + [24397] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(268), 1, - sym_identifier, ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(305), 1, - anon_sym_lambda, - ACTIONS(313), 1, - anon_sym_await, ACTIONS(315), 1, sym__string_start, ACTIONS(317), 1, sym__template_string_start, - ACTIONS(575), 1, + ACTIONS(602), 1, anon_sym_LPAREN, - ACTIONS(586), 1, + ACTIONS(608), 1, anon_sym_LBRACK, - ACTIONS(752), 1, + ACTIONS(680), 1, anon_sym_not, - STATE(645), 1, + ACTIONS(682), 1, + anon_sym_lambda, + ACTIONS(808), 1, + sym_identifier, + ACTIONS(816), 1, + anon_sym_await, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(719), 1, + STATE(705), 1, sym_primary_expression, - STATE(1066), 1, + STATE(1091), 1, sym_expression, ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(301), 3, + ACTIONS(606), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, @@ -43394,21 +43763,21 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - ACTIONS(270), 6, + ACTIONS(810), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(725), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -43426,7 +43795,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [24155] = 20, + [24490] = 20, ACTIONS(3), 1, sym_comment, ACTIONS(53), 1, @@ -43439,21 +43808,21 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(85), 1, sym__template_string_start, - ACTIONS(349), 1, + ACTIONS(361), 1, sym_identifier, - ACTIONS(355), 1, + ACTIONS(367), 1, anon_sym_await, - ACTIONS(594), 1, + ACTIONS(575), 1, anon_sym_LPAREN, - ACTIONS(598), 1, + ACTIONS(579), 1, anon_sym_LBRACK, - STATE(765), 1, - sym_primary_expression, - STATE(769), 1, + STATE(772), 1, sym_template_string, - STATE(775), 1, + STATE(773), 1, + sym_primary_expression, + STATE(779), 1, sym_string, - STATE(1216), 1, + STATE(1319), 1, sym_expression, ACTIONS(77), 2, sym_ellipsis, @@ -43467,94 +43836,21 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - ACTIONS(351), 6, - anon_sym_lazy, - anon_sym_print, - anon_sym_async, - anon_sym_match, - anon_sym_exec, - anon_sym_type, - STATE(1156), 6, - sym_named_expression, - sym_not_operator, - sym_boolean_operator, - sym_comparison_operator, - sym_lambda, - sym_conditional_expression, - STATE(920), 17, - sym_binary_operator, - sym_unary_operator, - sym_attribute, - sym_subscript, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [24248] = 20, - ACTIONS(3), 1, - sym_comment, - ACTIONS(268), 1, - sym_identifier, - ACTIONS(293), 1, - anon_sym_LBRACE, - ACTIONS(305), 1, - anon_sym_lambda, - ACTIONS(313), 1, - anon_sym_await, - ACTIONS(315), 1, - sym__string_start, - ACTIONS(317), 1, - sym__template_string_start, - ACTIONS(575), 1, - anon_sym_LPAREN, - ACTIONS(586), 1, - anon_sym_LBRACK, - ACTIONS(752), 1, - anon_sym_not, - STATE(645), 1, - sym_string, - STATE(658), 1, - sym_template_string, - STATE(719), 1, - sym_primary_expression, - STATE(1306), 1, - sym_expression, - ACTIONS(309), 2, - sym_ellipsis, - sym_float, - ACTIONS(301), 3, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_TILDE, - ACTIONS(311), 4, - sym_integer, - sym_true, - sym_false, - sym_none, - ACTIONS(270), 6, + ACTIONS(363), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, + STATE(1126), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(725), 17, + STATE(950), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -43572,7 +43868,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [24341] = 20, + [24583] = 20, ACTIONS(3), 1, sym_comment, ACTIONS(293), 1, @@ -43581,30 +43877,30 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(317), 1, sym__template_string_start, - ACTIONS(602), 1, + ACTIONS(636), 1, anon_sym_LPAREN, - ACTIONS(608), 1, + ACTIONS(642), 1, anon_sym_LBRACK, - ACTIONS(680), 1, + ACTIONS(718), 1, + sym_identifier, + ACTIONS(732), 1, anon_sym_not, - ACTIONS(682), 1, + ACTIONS(734), 1, anon_sym_lambda, - ACTIONS(816), 1, - sym_identifier, - ACTIONS(822), 1, + ACTIONS(736), 1, anon_sym_await, - STATE(645), 1, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(726), 1, + STATE(775), 1, sym_primary_expression, - STATE(1065), 1, + STATE(1153), 1, sym_expression, ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(606), 3, + ACTIONS(640), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, @@ -43613,21 +43909,21 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - ACTIONS(818), 6, + ACTIONS(720), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(725), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -43645,135 +43941,62 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [24434] = 20, + [24676] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(268), 1, - sym_identifier, - ACTIONS(293), 1, + ACTIONS(53), 1, anon_sym_LBRACE, - ACTIONS(305), 1, + ACTIONS(71), 1, + anon_sym_not, + ACTIONS(73), 1, anon_sym_lambda, - ACTIONS(313), 1, - anon_sym_await, - ACTIONS(315), 1, + ACTIONS(83), 1, sym__string_start, - ACTIONS(317), 1, + ACTIONS(85), 1, sym__template_string_start, - ACTIONS(575), 1, - anon_sym_LPAREN, - ACTIONS(586), 1, - anon_sym_LBRACK, - ACTIONS(752), 1, - anon_sym_not, - STATE(645), 1, - sym_string, - STATE(658), 1, - sym_template_string, - STATE(719), 1, - sym_primary_expression, - STATE(1235), 1, - sym_expression, - ACTIONS(309), 2, - sym_ellipsis, - sym_float, - ACTIONS(301), 3, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_TILDE, - ACTIONS(311), 4, - sym_integer, - sym_true, - sym_false, - sym_none, - ACTIONS(270), 6, - anon_sym_lazy, - anon_sym_print, - anon_sym_async, - anon_sym_match, - anon_sym_exec, - anon_sym_type, - STATE(1032), 6, - sym_named_expression, - sym_not_operator, - sym_boolean_operator, - sym_comparison_operator, - sym_lambda, - sym_conditional_expression, - STATE(725), 17, - sym_binary_operator, - sym_unary_operator, - sym_attribute, - sym_subscript, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [24527] = 20, - ACTIONS(3), 1, - sym_comment, - ACTIONS(268), 1, + ACTIONS(361), 1, sym_identifier, - ACTIONS(293), 1, - anon_sym_LBRACE, - ACTIONS(305), 1, - anon_sym_lambda, - ACTIONS(313), 1, + ACTIONS(367), 1, anon_sym_await, - ACTIONS(315), 1, - sym__string_start, - ACTIONS(317), 1, - sym__template_string_start, ACTIONS(575), 1, anon_sym_LPAREN, - ACTIONS(586), 1, + ACTIONS(579), 1, anon_sym_LBRACK, - ACTIONS(752), 1, - anon_sym_not, - STATE(645), 1, - sym_string, - STATE(658), 1, + STATE(772), 1, sym_template_string, - STATE(719), 1, + STATE(773), 1, sym_primary_expression, - STATE(1080), 1, + STATE(779), 1, + sym_string, + STATE(1139), 1, sym_expression, - ACTIONS(309), 2, + ACTIONS(77), 2, sym_ellipsis, sym_float, - ACTIONS(301), 3, + ACTIONS(49), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(311), 4, + ACTIONS(79), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(270), 6, + ACTIONS(363), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, + STATE(1126), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(725), 17, + STATE(950), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -43791,7 +44014,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [24620] = 20, + [24769] = 20, ACTIONS(3), 1, sym_comment, ACTIONS(293), 1, @@ -43800,30 +44023,30 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(317), 1, sym__template_string_start, - ACTIONS(658), 1, + ACTIONS(636), 1, anon_sym_LPAREN, - ACTIONS(664), 1, + ACTIONS(642), 1, anon_sym_LBRACK, ACTIONS(718), 1, sym_identifier, - ACTIONS(730), 1, - anon_sym_not, ACTIONS(732), 1, - anon_sym_lambda, + anon_sym_not, ACTIONS(734), 1, + anon_sym_lambda, + ACTIONS(736), 1, anon_sym_await, - STATE(645), 1, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(780), 1, + STATE(775), 1, sym_primary_expression, - STATE(1158), 1, + STATE(1154), 1, sym_expression, ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(662), 3, + ACTIONS(640), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, @@ -43839,14 +44062,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(725), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -43864,7 +44087,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [24713] = 20, + [24862] = 20, ACTIONS(3), 1, sym_comment, ACTIONS(293), 1, @@ -43873,30 +44096,30 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(317), 1, sym__template_string_start, - ACTIONS(658), 1, + ACTIONS(636), 1, anon_sym_LPAREN, - ACTIONS(664), 1, + ACTIONS(642), 1, anon_sym_LBRACK, ACTIONS(718), 1, sym_identifier, - ACTIONS(730), 1, - anon_sym_not, ACTIONS(732), 1, - anon_sym_lambda, + anon_sym_not, ACTIONS(734), 1, + anon_sym_lambda, + ACTIONS(736), 1, anon_sym_await, - STATE(645), 1, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(780), 1, + STATE(775), 1, sym_primary_expression, - STATE(1159), 1, + STATE(1155), 1, sym_expression, ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(662), 3, + ACTIONS(640), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, @@ -43912,14 +44135,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(725), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -43937,7 +44160,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [24806] = 20, + [24955] = 20, ACTIONS(3), 1, sym_comment, ACTIONS(293), 1, @@ -43946,30 +44169,30 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(317), 1, sym__template_string_start, - ACTIONS(658), 1, + ACTIONS(636), 1, anon_sym_LPAREN, - ACTIONS(664), 1, + ACTIONS(642), 1, anon_sym_LBRACK, ACTIONS(718), 1, sym_identifier, - ACTIONS(730), 1, - anon_sym_not, ACTIONS(732), 1, - anon_sym_lambda, + anon_sym_not, ACTIONS(734), 1, + anon_sym_lambda, + ACTIONS(736), 1, anon_sym_await, - STATE(645), 1, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(780), 1, + STATE(775), 1, sym_primary_expression, - STATE(1160), 1, + STATE(1156), 1, sym_expression, ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(662), 3, + ACTIONS(640), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, @@ -43985,14 +44208,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(725), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -44010,7 +44233,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [24899] = 20, + [25048] = 20, ACTIONS(3), 1, sym_comment, ACTIONS(293), 1, @@ -44019,30 +44242,30 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(317), 1, sym__template_string_start, - ACTIONS(658), 1, + ACTIONS(636), 1, anon_sym_LPAREN, - ACTIONS(664), 1, + ACTIONS(642), 1, anon_sym_LBRACK, ACTIONS(718), 1, sym_identifier, - ACTIONS(730), 1, - anon_sym_not, ACTIONS(732), 1, - anon_sym_lambda, + anon_sym_not, ACTIONS(734), 1, + anon_sym_lambda, + ACTIONS(736), 1, anon_sym_await, - STATE(645), 1, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(780), 1, + STATE(775), 1, sym_primary_expression, - STATE(1161), 1, + STATE(1157), 1, sym_expression, ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(662), 3, + ACTIONS(640), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, @@ -44058,14 +44281,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(725), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -44083,7 +44306,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [24992] = 20, + [25141] = 20, ACTIONS(3), 1, sym_comment, ACTIONS(293), 1, @@ -44092,30 +44315,30 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(317), 1, sym__template_string_start, - ACTIONS(658), 1, + ACTIONS(636), 1, anon_sym_LPAREN, - ACTIONS(664), 1, + ACTIONS(642), 1, anon_sym_LBRACK, ACTIONS(718), 1, sym_identifier, - ACTIONS(730), 1, - anon_sym_not, ACTIONS(732), 1, - anon_sym_lambda, + anon_sym_not, ACTIONS(734), 1, + anon_sym_lambda, + ACTIONS(736), 1, anon_sym_await, - STATE(645), 1, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(780), 1, + STATE(775), 1, sym_primary_expression, - STATE(1162), 1, + STATE(1163), 1, sym_expression, ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(662), 3, + ACTIONS(640), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, @@ -44131,14 +44354,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(725), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -44156,7 +44379,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [25085] = 20, + [25234] = 20, ACTIONS(3), 1, sym_comment, ACTIONS(293), 1, @@ -44165,30 +44388,30 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(317), 1, sym__template_string_start, - ACTIONS(658), 1, + ACTIONS(636), 1, anon_sym_LPAREN, - ACTIONS(664), 1, + ACTIONS(642), 1, anon_sym_LBRACK, ACTIONS(718), 1, sym_identifier, - ACTIONS(730), 1, - anon_sym_not, ACTIONS(732), 1, - anon_sym_lambda, + anon_sym_not, ACTIONS(734), 1, + anon_sym_lambda, + ACTIONS(736), 1, anon_sym_await, - STATE(645), 1, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(780), 1, + STATE(775), 1, sym_primary_expression, - STATE(1163), 1, + STATE(1166), 1, sym_expression, ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(662), 3, + ACTIONS(640), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, @@ -44204,14 +44427,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(725), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -44229,7 +44452,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [25178] = 20, + [25327] = 20, ACTIONS(3), 1, sym_comment, ACTIONS(293), 1, @@ -44238,30 +44461,30 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(317), 1, sym__template_string_start, - ACTIONS(658), 1, + ACTIONS(636), 1, anon_sym_LPAREN, - ACTIONS(664), 1, + ACTIONS(642), 1, anon_sym_LBRACK, ACTIONS(718), 1, sym_identifier, - ACTIONS(730), 1, - anon_sym_not, ACTIONS(732), 1, - anon_sym_lambda, + anon_sym_not, ACTIONS(734), 1, + anon_sym_lambda, + ACTIONS(736), 1, anon_sym_await, - STATE(645), 1, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(780), 1, + STATE(775), 1, sym_primary_expression, - STATE(1164), 1, + STATE(1038), 1, sym_expression, ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(662), 3, + ACTIONS(640), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, @@ -44277,14 +44500,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(725), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -44302,39 +44525,112 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [25271] = 20, + [25420] = 20, ACTIONS(3), 1, sym_comment, + ACTIONS(650), 1, + anon_sym_LPAREN, + ACTIONS(656), 1, + anon_sym_LBRACK, + ACTIONS(658), 1, + anon_sym_LBRACE, + ACTIONS(664), 1, + sym__string_start, + ACTIONS(666), 1, + sym__template_string_start, + ACTIONS(964), 1, + sym_identifier, + ACTIONS(972), 1, + anon_sym_not, + ACTIONS(974), 1, + anon_sym_lambda, + ACTIONS(976), 1, + anon_sym_await, + STATE(789), 1, + sym_primary_expression, + STATE(790), 1, + sym_string, + STATE(791), 1, + sym_template_string, + STATE(1266), 1, + sym_expression, + ACTIONS(660), 2, + sym_ellipsis, + sym_float, + ACTIONS(654), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(646), 4, + sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(966), 6, + anon_sym_lazy, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(1198), 6, + sym_named_expression, + sym_not_operator, + sym_boolean_operator, + sym_comparison_operator, + sym_lambda, + sym_conditional_expression, + STATE(985), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [25513] = 20, + ACTIONS(3), 1, + sym_comment, + ACTIONS(268), 1, + sym_identifier, ACTIONS(293), 1, anon_sym_LBRACE, + ACTIONS(305), 1, + anon_sym_lambda, + ACTIONS(313), 1, + anon_sym_await, ACTIONS(315), 1, sym__string_start, ACTIONS(317), 1, sym__template_string_start, - ACTIONS(658), 1, + ACTIONS(585), 1, anon_sym_LPAREN, - ACTIONS(664), 1, + ACTIONS(596), 1, anon_sym_LBRACK, - ACTIONS(718), 1, - sym_identifier, - ACTIONS(730), 1, + ACTIONS(768), 1, anon_sym_not, - ACTIONS(732), 1, - anon_sym_lambda, - ACTIONS(734), 1, - anon_sym_await, - STATE(645), 1, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(780), 1, + STATE(704), 1, sym_primary_expression, - STATE(1031), 1, + STATE(1353), 1, sym_expression, ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(662), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, @@ -44343,21 +44639,21 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - ACTIONS(720), 6, + ACTIONS(270), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(725), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -44375,62 +44671,62 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [25364] = 20, + [25606] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(616), 1, - anon_sym_LPAREN, - ACTIONS(622), 1, - anon_sym_LBRACK, - ACTIONS(624), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(630), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(632), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(754), 1, - sym_identifier, - ACTIONS(760), 1, + ACTIONS(602), 1, + anon_sym_LPAREN, + ACTIONS(608), 1, + anon_sym_LBRACK, + ACTIONS(680), 1, anon_sym_not, - ACTIONS(762), 1, + ACTIONS(682), 1, anon_sym_lambda, - ACTIONS(764), 1, + ACTIONS(808), 1, + sym_identifier, + ACTIONS(816), 1, anon_sym_await, - STATE(763), 1, - sym_primary_expression, - STATE(766), 1, + STATE(694), 1, sym_string, - STATE(776), 1, + STATE(698), 1, sym_template_string, - STATE(1188), 1, + STATE(705), 1, + sym_primary_expression, + STATE(1077), 1, sym_expression, - ACTIONS(626), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(620), 3, + ACTIONS(606), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(612), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(756), 6, + ACTIONS(810), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1104), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(878), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -44448,7 +44744,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [25457] = 20, + [25699] = 20, ACTIONS(3), 1, sym_comment, ACTIONS(268), 1, @@ -44463,19 +44759,19 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(317), 1, sym__template_string_start, - ACTIONS(575), 1, + ACTIONS(585), 1, anon_sym_LPAREN, - ACTIONS(586), 1, + ACTIONS(596), 1, anon_sym_LBRACK, - ACTIONS(752), 1, + ACTIONS(768), 1, anon_sym_not, - STATE(645), 1, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(719), 1, + STATE(704), 1, sym_primary_expression, - STATE(1336), 1, + STATE(1361), 1, sym_expression, ACTIONS(309), 2, sym_ellipsis, @@ -44496,14 +44792,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(725), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -44521,7 +44817,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [25550] = 20, + [25792] = 20, ACTIONS(3), 1, sym_comment, ACTIONS(268), 1, @@ -44536,19 +44832,19 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(317), 1, sym__template_string_start, - ACTIONS(575), 1, + ACTIONS(585), 1, anon_sym_LPAREN, - ACTIONS(586), 1, + ACTIONS(596), 1, anon_sym_LBRACK, - ACTIONS(752), 1, + ACTIONS(768), 1, anon_sym_not, - STATE(645), 1, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(719), 1, + STATE(704), 1, sym_primary_expression, - STATE(1260), 1, + STATE(1199), 1, sym_expression, ACTIONS(309), 2, sym_ellipsis, @@ -44569,14 +44865,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(725), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -44594,7 +44890,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [25643] = 20, + [25885] = 20, ACTIONS(3), 1, sym_comment, ACTIONS(268), 1, @@ -44609,19 +44905,19 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(317), 1, sym__template_string_start, - ACTIONS(575), 1, + ACTIONS(585), 1, anon_sym_LPAREN, - ACTIONS(586), 1, + ACTIONS(596), 1, anon_sym_LBRACK, - ACTIONS(752), 1, + ACTIONS(768), 1, anon_sym_not, - STATE(645), 1, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(719), 1, + STATE(704), 1, sym_primary_expression, - STATE(1345), 1, + STATE(1387), 1, sym_expression, ACTIONS(309), 2, sym_ellipsis, @@ -44642,14 +44938,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(725), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -44667,7 +44963,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [25736] = 20, + [25978] = 20, ACTIONS(3), 1, sym_comment, ACTIONS(268), 1, @@ -44682,19 +44978,19 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(317), 1, sym__template_string_start, - ACTIONS(575), 1, + ACTIONS(585), 1, anon_sym_LPAREN, - ACTIONS(586), 1, + ACTIONS(596), 1, anon_sym_LBRACK, - ACTIONS(752), 1, + ACTIONS(768), 1, anon_sym_not, - STATE(645), 1, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(719), 1, + STATE(704), 1, sym_primary_expression, - STATE(1369), 1, + STATE(1367), 1, sym_expression, ACTIONS(309), 2, sym_ellipsis, @@ -44715,14 +45011,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(725), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -44740,7 +45036,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [25829] = 20, + [26071] = 20, ACTIONS(3), 1, sym_comment, ACTIONS(268), 1, @@ -44755,19 +45051,19 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(317), 1, sym__template_string_start, - ACTIONS(575), 1, + ACTIONS(585), 1, anon_sym_LPAREN, - ACTIONS(586), 1, + ACTIONS(596), 1, anon_sym_LBRACK, - ACTIONS(752), 1, + ACTIONS(768), 1, anon_sym_not, - STATE(645), 1, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(719), 1, + STATE(704), 1, sym_primary_expression, - STATE(1349), 1, + STATE(1370), 1, sym_expression, ACTIONS(309), 2, sym_ellipsis, @@ -44788,14 +45084,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(725), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -44813,7 +45109,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [25922] = 20, + [26164] = 20, ACTIONS(3), 1, sym_comment, ACTIONS(268), 1, @@ -44828,19 +45124,19 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(317), 1, sym__template_string_start, - ACTIONS(575), 1, + ACTIONS(585), 1, anon_sym_LPAREN, - ACTIONS(586), 1, + ACTIONS(596), 1, anon_sym_LBRACK, - ACTIONS(752), 1, + ACTIONS(768), 1, anon_sym_not, - STATE(645), 1, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(719), 1, + STATE(704), 1, sym_primary_expression, - STATE(1351), 1, + STATE(1371), 1, sym_expression, ACTIONS(309), 2, sym_ellipsis, @@ -44861,14 +45157,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(725), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -44886,39 +45182,39 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [26015] = 20, + [26257] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(268), 1, - sym_identifier, ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(305), 1, - anon_sym_lambda, - ACTIONS(313), 1, - anon_sym_await, ACTIONS(315), 1, sym__string_start, ACTIONS(317), 1, sym__template_string_start, - ACTIONS(575), 1, + ACTIONS(602), 1, anon_sym_LPAREN, - ACTIONS(586), 1, + ACTIONS(608), 1, anon_sym_LBRACK, - ACTIONS(752), 1, + ACTIONS(680), 1, anon_sym_not, - STATE(645), 1, + ACTIONS(682), 1, + anon_sym_lambda, + ACTIONS(808), 1, + sym_identifier, + ACTIONS(816), 1, + anon_sym_await, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(719), 1, + STATE(705), 1, sym_primary_expression, - STATE(1352), 1, + STATE(1073), 1, sym_expression, ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(301), 3, + ACTIONS(606), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, @@ -44927,21 +45223,21 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - ACTIONS(270), 6, + ACTIONS(810), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(725), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -44959,7 +45255,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [26108] = 20, + [26350] = 20, ACTIONS(3), 1, sym_comment, ACTIONS(268), 1, @@ -44974,19 +45270,19 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(317), 1, sym__template_string_start, - ACTIONS(575), 1, + ACTIONS(585), 1, anon_sym_LPAREN, - ACTIONS(586), 1, + ACTIONS(596), 1, anon_sym_LBRACK, - ACTIONS(752), 1, + ACTIONS(768), 1, anon_sym_not, - STATE(645), 1, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(719), 1, + STATE(704), 1, sym_primary_expression, - STATE(1343), 1, + STATE(1359), 1, sym_expression, ACTIONS(309), 2, sym_ellipsis, @@ -45007,14 +45303,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(725), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -45032,39 +45328,39 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [26201] = 20, + [26443] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(268), 1, - sym_identifier, ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(305), 1, - anon_sym_lambda, - ACTIONS(313), 1, - anon_sym_await, ACTIONS(315), 1, sym__string_start, ACTIONS(317), 1, sym__template_string_start, - ACTIONS(575), 1, + ACTIONS(602), 1, anon_sym_LPAREN, - ACTIONS(586), 1, + ACTIONS(608), 1, anon_sym_LBRACK, - ACTIONS(752), 1, + ACTIONS(680), 1, anon_sym_not, - STATE(645), 1, + ACTIONS(682), 1, + anon_sym_lambda, + ACTIONS(808), 1, + sym_identifier, + ACTIONS(816), 1, + anon_sym_await, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(719), 1, + STATE(705), 1, sym_primary_expression, - STATE(1327), 1, + STATE(1083), 1, sym_expression, ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(301), 3, + ACTIONS(606), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, @@ -45073,21 +45369,21 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - ACTIONS(270), 6, + ACTIONS(810), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(725), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -45105,7 +45401,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [26294] = 20, + [26536] = 20, ACTIONS(3), 1, sym_comment, ACTIONS(268), 1, @@ -45120,19 +45416,19 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(317), 1, sym__template_string_start, - ACTIONS(575), 1, + ACTIONS(585), 1, anon_sym_LPAREN, - ACTIONS(586), 1, + ACTIONS(596), 1, anon_sym_LBRACK, - ACTIONS(752), 1, + ACTIONS(768), 1, anon_sym_not, - STATE(645), 1, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(719), 1, + STATE(704), 1, sym_primary_expression, - STATE(1081), 1, + STATE(1325), 1, sym_expression, ACTIONS(309), 2, sym_ellipsis, @@ -45153,14 +45449,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(725), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -45178,62 +45474,62 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [26387] = 20, + [26629] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(53), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(71), 1, - anon_sym_not, - ACTIONS(73), 1, - anon_sym_lambda, - ACTIONS(83), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(85), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(349), 1, - sym_identifier, - ACTIONS(355), 1, - anon_sym_await, - ACTIONS(594), 1, + ACTIONS(602), 1, anon_sym_LPAREN, - ACTIONS(598), 1, + ACTIONS(608), 1, anon_sym_LBRACK, - STATE(765), 1, - sym_primary_expression, - STATE(769), 1, - sym_template_string, - STATE(775), 1, + ACTIONS(680), 1, + anon_sym_not, + ACTIONS(682), 1, + anon_sym_lambda, + ACTIONS(808), 1, + sym_identifier, + ACTIONS(816), 1, + anon_sym_await, + STATE(694), 1, sym_string, - STATE(1146), 1, + STATE(698), 1, + sym_template_string, + STATE(705), 1, + sym_primary_expression, + STATE(1082), 1, sym_expression, - ACTIONS(77), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(49), 3, + ACTIONS(606), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(79), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(351), 6, + ACTIONS(810), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1156), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(920), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -45251,7 +45547,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [26480] = 20, + [26722] = 20, ACTIONS(3), 1, sym_comment, ACTIONS(268), 1, @@ -45266,19 +45562,19 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(317), 1, sym__template_string_start, - ACTIONS(575), 1, + ACTIONS(585), 1, anon_sym_LPAREN, - ACTIONS(586), 1, + ACTIONS(596), 1, anon_sym_LBRACK, - ACTIONS(752), 1, + ACTIONS(768), 1, anon_sym_not, - STATE(645), 1, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(719), 1, + STATE(704), 1, sym_primary_expression, - STATE(1355), 1, + STATE(1376), 1, sym_expression, ACTIONS(309), 2, sym_ellipsis, @@ -45299,14 +45595,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(725), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -45324,62 +45620,62 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [26573] = 20, + [26815] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(640), 1, - anon_sym_LPAREN, - ACTIONS(646), 1, - anon_sym_LBRACK, - ACTIONS(648), 1, + ACTIONS(268), 1, + sym_identifier, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(654), 1, + ACTIONS(305), 1, + anon_sym_lambda, + ACTIONS(313), 1, + anon_sym_await, + ACTIONS(315), 1, sym__string_start, - ACTIONS(656), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(952), 1, - sym_identifier, - ACTIONS(960), 1, + ACTIONS(585), 1, + anon_sym_LPAREN, + ACTIONS(596), 1, + anon_sym_LBRACK, + ACTIONS(768), 1, anon_sym_not, - ACTIONS(962), 1, - anon_sym_lambda, - ACTIONS(964), 1, - anon_sym_await, - STATE(792), 1, - sym_primary_expression, - STATE(793), 1, + STATE(694), 1, sym_string, - STATE(794), 1, + STATE(698), 1, sym_template_string, - STATE(1253), 1, + STATE(704), 1, + sym_primary_expression, + STATE(1365), 1, sym_expression, - ACTIONS(650), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(644), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(636), 4, + ACTIONS(311), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(954), 6, + ACTIONS(270), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1211), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(970), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -45397,70 +45693,153 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [26666] = 10, + [26908] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(277), 1, - anon_sym_COMMA, - ACTIONS(283), 1, - anon_sym_COLON_EQ, - ACTIONS(1100), 1, - anon_sym_for, - ACTIONS(1102), 1, - anon_sym_with, - ACTIONS(1104), 1, - anon_sym_def, - ACTIONS(285), 2, - anon_sym_COLON, - anon_sym_EQ, - ACTIONS(307), 13, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_STAR_EQ, - anon_sym_SLASH_EQ, - anon_sym_AT_EQ, - anon_sym_SLASH_SLASH_EQ, - anon_sym_PERCENT_EQ, - anon_sym_STAR_STAR_EQ, - anon_sym_GT_GT_EQ, - anon_sym_LT_LT_EQ, - anon_sym_AMP_EQ, - anon_sym_CARET_EQ, - anon_sym_PIPE_EQ, - ACTIONS(272), 15, - anon_sym_STAR, - anon_sym_GT_GT, - anon_sym_PIPE, + ACTIONS(53), 1, + anon_sym_LBRACE, + ACTIONS(71), 1, + anon_sym_not, + ACTIONS(73), 1, + anon_sym_lambda, + ACTIONS(83), 1, + sym__string_start, + ACTIONS(85), 1, + sym__template_string_start, + ACTIONS(361), 1, + sym_identifier, + ACTIONS(367), 1, + anon_sym_await, + ACTIONS(575), 1, + anon_sym_LPAREN, + ACTIONS(579), 1, + anon_sym_LBRACK, + STATE(772), 1, + sym_template_string, + STATE(773), 1, + sym_primary_expression, + STATE(779), 1, + sym_string, + STATE(1147), 1, + sym_expression, + ACTIONS(77), 2, + sym_ellipsis, + sym_float, + ACTIONS(49), 3, anon_sym_DASH, anon_sym_PLUS, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_SLASH, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, - anon_sym_LT, - anon_sym_GT, - ACTIONS(303), 16, - sym__newline, - anon_sym_DOT, + anon_sym_TILDE, + ACTIONS(79), 4, + sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(363), 6, + anon_sym_lazy, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(1126), 6, + sym_named_expression, + sym_not_operator, + sym_boolean_operator, + sym_comparison_operator, + sym_lambda, + sym_conditional_expression, + STATE(950), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [27001] = 20, + ACTIONS(3), 1, + sym_comment, + ACTIONS(268), 1, + sym_identifier, + ACTIONS(293), 1, + anon_sym_LBRACE, + ACTIONS(305), 1, + anon_sym_lambda, + ACTIONS(313), 1, + anon_sym_await, + ACTIONS(315), 1, + sym__string_start, + ACTIONS(317), 1, + sym__template_string_start, + ACTIONS(585), 1, anon_sym_LPAREN, - anon_sym_if, - anon_sym_in, + ACTIONS(596), 1, anon_sym_LBRACK, + ACTIONS(768), 1, anon_sym_not, - anon_sym_and, - anon_sym_or, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - anon_sym_is, - anon_sym_SEMI, - [26739] = 20, + STATE(694), 1, + sym_string, + STATE(698), 1, + sym_template_string, + STATE(704), 1, + sym_primary_expression, + STATE(1261), 1, + sym_expression, + ACTIONS(309), 2, + sym_ellipsis, + sym_float, + ACTIONS(301), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(311), 4, + sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(270), 6, + anon_sym_lazy, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(1037), 6, + sym_named_expression, + sym_not_operator, + sym_boolean_operator, + sym_comparison_operator, + sym_lambda, + sym_conditional_expression, + STATE(720), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [27094] = 20, ACTIONS(3), 1, sym_comment, ACTIONS(268), 1, @@ -45475,19 +45854,19 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(317), 1, sym__template_string_start, - ACTIONS(575), 1, + ACTIONS(585), 1, anon_sym_LPAREN, - ACTIONS(586), 1, + ACTIONS(596), 1, anon_sym_LBRACK, - ACTIONS(752), 1, + ACTIONS(768), 1, anon_sym_not, - STATE(645), 1, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(719), 1, + STATE(704), 1, sym_primary_expression, - STATE(1356), 1, + STATE(1377), 1, sym_expression, ACTIONS(309), 2, sym_ellipsis, @@ -45508,14 +45887,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(725), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -45533,7 +45912,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [26832] = 20, + [27187] = 20, ACTIONS(3), 1, sym_comment, ACTIONS(268), 1, @@ -45548,19 +45927,19 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(317), 1, sym__template_string_start, - ACTIONS(575), 1, + ACTIONS(585), 1, anon_sym_LPAREN, - ACTIONS(586), 1, + ACTIONS(596), 1, anon_sym_LBRACK, - ACTIONS(752), 1, + ACTIONS(768), 1, anon_sym_not, - STATE(645), 1, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(719), 1, + STATE(704), 1, sym_primary_expression, - STATE(1357), 1, + STATE(1378), 1, sym_expression, ACTIONS(309), 2, sym_ellipsis, @@ -45581,14 +45960,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1032), 6, + STATE(1037), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(725), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -45606,18 +45985,18 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [26925] = 10, + [27280] = 10, ACTIONS(3), 1, sym_comment, ACTIONS(277), 1, anon_sym_COMMA, ACTIONS(283), 1, anon_sym_COLON_EQ, - ACTIONS(1106), 1, + ACTIONS(1118), 1, anon_sym_for, - ACTIONS(1108), 1, + ACTIONS(1120), 1, anon_sym_with, - ACTIONS(1110), 1, + ACTIONS(1122), 1, anon_sym_def, ACTIONS(285), 2, anon_sym_COLON, @@ -45669,62 +46048,62 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LT_GT, anon_sym_is, anon_sym_SEMI, - [26998] = 20, + [27353] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(53), 1, + ACTIONS(616), 1, + anon_sym_LPAREN, + ACTIONS(622), 1, + anon_sym_LBRACK, + ACTIONS(624), 1, anon_sym_LBRACE, - ACTIONS(71), 1, - anon_sym_not, - ACTIONS(73), 1, - anon_sym_lambda, - ACTIONS(83), 1, + ACTIONS(630), 1, sym__string_start, - ACTIONS(85), 1, + ACTIONS(632), 1, sym__template_string_start, - ACTIONS(349), 1, + ACTIONS(750), 1, sym_identifier, - ACTIONS(355), 1, + ACTIONS(760), 1, + anon_sym_not, + ACTIONS(762), 1, + anon_sym_lambda, + ACTIONS(764), 1, anon_sym_await, - ACTIONS(594), 1, - anon_sym_LPAREN, - ACTIONS(598), 1, - anon_sym_LBRACK, - STATE(765), 1, + STATE(780), 1, sym_primary_expression, - STATE(769), 1, - sym_template_string, - STATE(775), 1, + STATE(781), 1, sym_string, - STATE(1242), 1, + STATE(782), 1, + sym_template_string, + STATE(1164), 1, sym_expression, - ACTIONS(77), 2, + ACTIONS(626), 2, sym_ellipsis, sym_float, - ACTIONS(49), 3, + ACTIONS(620), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(79), 4, + ACTIONS(612), 4, sym_integer, sym_true, sym_false, sym_none, - ACTIONS(351), 6, + ACTIONS(752), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(1156), 6, + STATE(1131), 6, sym_named_expression, sym_not_operator, sym_boolean_operator, sym_comparison_operator, sym_lambda, sym_conditional_expression, - STATE(920), 17, + STATE(949), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -45742,10 +46121,10 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [27091] = 3, + [27446] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1114), 13, + ACTIONS(1126), 13, sym__dedent, sym__string_start, sym__template_string_start, @@ -45759,7 +46138,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1112), 37, + ACTIONS(1124), 37, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -45797,15 +46176,15 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [27149] = 5, + [27504] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(1120), 1, + ACTIONS(1132), 1, anon_sym_case, - STATE(436), 2, + STATE(444), 2, sym_case_block, aux_sym_cases_repeat1, - ACTIONS(1118), 13, + ACTIONS(1130), 13, sym__dedent, sym__string_start, sym__template_string_start, @@ -45819,64 +46198,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1116), 34, - anon_sym_lazy, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, - anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, - anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_with, - anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, - anon_sym_exec, - anon_sym_type, - anon_sym_class, - anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, - anon_sym_await, - sym_true, - sym_false, - sym_none, - [27211] = 5, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1127), 1, - anon_sym_case, - STATE(458), 2, - sym_case_block, - aux_sym_cases_repeat1, - ACTIONS(1123), 13, - sym__string_start, - sym__template_string_start, - ts_builtin_sym_end, - anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, - sym_ellipsis, - sym_float, - ACTIONS(1125), 34, + ACTIONS(1128), 34, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -45911,10 +46233,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [27273] = 3, + [27566] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1129), 13, + ACTIONS(1134), 13, sym__string_start, sym__template_string_start, ts_builtin_sym_end, @@ -45928,7 +46250,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1131), 37, + ACTIONS(1136), 37, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -45966,10 +46288,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [27331] = 3, + [27624] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1133), 13, + ACTIONS(1138), 13, sym__string_start, sym__template_string_start, ts_builtin_sym_end, @@ -45983,7 +46305,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1135), 37, + ACTIONS(1140), 37, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -46021,13 +46343,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [27389] = 3, + [27682] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1139), 13, - sym__dedent, + ACTIONS(1142), 13, sym__string_start, sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -46038,7 +46360,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1137), 37, + ACTIONS(1144), 37, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -46076,10 +46398,15 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [27447] = 3, + [27740] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(1129), 13, + ACTIONS(1150), 1, + anon_sym_case, + STATE(444), 2, + sym_case_block, + aux_sym_cases_repeat1, + ACTIONS(1148), 13, sym__dedent, sym__string_start, sym__template_string_start, @@ -46093,7 +46420,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1131), 37, + ACTIONS(1146), 34, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -46107,13 +46434,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_break, anon_sym_continue, anon_sym_if, - anon_sym_else, anon_sym_async, anon_sym_for, anon_sym_while, anon_sym_try, - anon_sym_except, - anon_sym_finally, anon_sym_with, anon_sym_match, anon_sym_def, @@ -46131,10 +46455,15 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [27505] = 3, + [27802] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(1141), 13, + ACTIONS(1153), 1, + anon_sym_case, + STATE(445), 2, + sym_case_block, + aux_sym_cases_repeat1, + ACTIONS(1148), 13, sym__string_start, sym__template_string_start, ts_builtin_sym_end, @@ -46148,7 +46477,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1143), 37, + ACTIONS(1146), 34, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -46162,68 +46491,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_break, anon_sym_continue, anon_sym_if, - anon_sym_else, anon_sym_async, anon_sym_for, anon_sym_while, anon_sym_try, - anon_sym_except, - anon_sym_finally, - anon_sym_with, - anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, - anon_sym_exec, - anon_sym_type, - anon_sym_class, - anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, - anon_sym_await, - sym_true, - sym_false, - sym_none, - [27563] = 3, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1133), 13, - sym__dedent, - sym__string_start, - sym__template_string_start, - anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, - sym_ellipsis, - sym_float, - ACTIONS(1135), 37, - anon_sym_lazy, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, - anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, - anon_sym_else, - anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_except, - anon_sym_finally, anon_sym_with, anon_sym_match, anon_sym_def, @@ -46241,13 +46512,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [27621] = 3, + [27864] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1147), 13, - sym__dedent, + ACTIONS(1156), 13, sym__string_start, sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -46258,7 +46529,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1145), 37, + ACTIONS(1158), 37, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -46296,10 +46567,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [27679] = 3, + [27922] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1149), 13, + ACTIONS(1160), 13, sym__string_start, sym__template_string_start, ts_builtin_sym_end, @@ -46313,7 +46584,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1151), 37, + ACTIONS(1162), 37, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -46351,10 +46622,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [27737] = 3, + [27980] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1155), 13, + ACTIONS(1166), 13, sym__dedent, sym__string_start, sym__template_string_start, @@ -46368,7 +46639,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1153), 37, + ACTIONS(1164), 37, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -46406,13 +46677,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [27795] = 3, + [28038] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1159), 13, - sym__dedent, + ACTIONS(1166), 13, sym__string_start, sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -46423,7 +46694,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1157), 37, + ACTIONS(1164), 37, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -46461,10 +46732,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [27853] = 3, + [28096] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1155), 13, + ACTIONS(1168), 13, sym__string_start, sym__template_string_start, ts_builtin_sym_end, @@ -46478,7 +46749,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1153), 37, + ACTIONS(1170), 37, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -46516,10 +46787,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [27911] = 3, + [28154] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1159), 13, + ACTIONS(1126), 13, sym__string_start, sym__template_string_start, ts_builtin_sym_end, @@ -46533,7 +46804,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1157), 37, + ACTIONS(1124), 37, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -46571,17 +46842,17 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [27969] = 9, + [28212] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(277), 1, anon_sym_COMMA, ACTIONS(283), 1, anon_sym_COLON_EQ, - ACTIONS(1161), 1, - anon_sym_import, - ACTIONS(1163), 1, - anon_sym_from, + ACTIONS(1172), 1, + sym__string_start, + STATE(1411), 1, + sym_string, ACTIONS(285), 2, anon_sym_COLON, anon_sym_EQ, @@ -46632,74 +46903,17 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LT_GT, anon_sym_is, anon_sym_SEMI, - [28039] = 5, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1165), 1, - anon_sym_case, - STATE(436), 2, - sym_case_block, - aux_sym_cases_repeat1, - ACTIONS(1123), 13, - sym__dedent, - sym__string_start, - sym__template_string_start, - anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, - sym_ellipsis, - sym_float, - ACTIONS(1125), 34, - anon_sym_lazy, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, - anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, - anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_with, - anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, - anon_sym_exec, - anon_sym_type, - anon_sym_class, - anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, - anon_sym_await, - sym_true, - sym_false, - sym_none, - [28101] = 9, + [28282] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(277), 1, anon_sym_COMMA, ACTIONS(283), 1, anon_sym_COLON_EQ, - ACTIONS(1167), 1, - sym__string_start, - STATE(1465), 1, - sym_string, + ACTIONS(1174), 1, + anon_sym_import, + ACTIONS(1176), 1, + anon_sym_from, ACTIONS(285), 2, anon_sym_COLON, anon_sym_EQ, @@ -46750,10 +46964,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LT_GT, anon_sym_is, anon_sym_SEMI, - [28171] = 3, + [28352] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1141), 13, + ACTIONS(1160), 13, sym__dedent, sym__string_start, sym__template_string_start, @@ -46767,7 +46981,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1143), 37, + ACTIONS(1162), 37, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -46805,10 +47019,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [28229] = 3, + [28410] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1147), 13, + ACTIONS(1178), 13, sym__string_start, sym__template_string_start, ts_builtin_sym_end, @@ -46822,7 +47036,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1145), 37, + ACTIONS(1180), 37, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -46860,10 +47074,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [28287] = 3, + [28468] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1149), 13, + ACTIONS(1134), 13, sym__dedent, sym__string_start, sym__template_string_start, @@ -46877,7 +47091,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1151), 37, + ACTIONS(1136), 37, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -46915,10 +47129,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [28345] = 3, + [28526] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1114), 13, + ACTIONS(1182), 13, sym__string_start, sym__template_string_start, ts_builtin_sym_end, @@ -46932,7 +47146,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1112), 37, + ACTIONS(1184), 37, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -46970,13 +47184,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [28403] = 3, + [28584] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1169), 13, + ACTIONS(1182), 13, + sym__dedent, sym__string_start, sym__template_string_start, - ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -46987,7 +47201,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1171), 37, + ACTIONS(1184), 37, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -47025,67 +47239,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [28461] = 5, + [28642] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1173), 1, - anon_sym_case, - STATE(458), 2, - sym_case_block, - aux_sym_cases_repeat1, - ACTIONS(1118), 13, - sym__string_start, - sym__template_string_start, - ts_builtin_sym_end, - anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, - sym_ellipsis, - sym_float, - ACTIONS(1116), 34, - anon_sym_lazy, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, - anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, - anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_with, - anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, - anon_sym_exec, - anon_sym_type, - anon_sym_class, - anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, - anon_sym_await, - sym_true, - sym_false, - sym_none, - [28523] = 3, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1169), 13, + ACTIONS(1178), 13, sym__dedent, sym__string_start, sym__template_string_start, @@ -47099,7 +47256,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1171), 37, + ACTIONS(1180), 37, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -47137,13 +47294,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [28581] = 3, + [28700] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1139), 13, + ACTIONS(1138), 13, + sym__dedent, sym__string_start, sym__template_string_start, - ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -47154,7 +47311,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1137), 37, + ACTIONS(1140), 37, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -47192,10 +47349,15 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [28639] = 3, + [28758] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(1176), 13, + ACTIONS(1186), 1, + anon_sym_case, + STATE(445), 2, + sym_case_block, + aux_sym_cases_repeat1, + ACTIONS(1130), 13, sym__string_start, sym__template_string_start, ts_builtin_sym_end, @@ -47209,7 +47371,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1178), 36, + ACTIONS(1128), 34, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -47223,8 +47385,6 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_break, anon_sym_continue, anon_sym_if, - anon_sym_elif, - anon_sym_else, anon_sym_async, anon_sym_for, anon_sym_while, @@ -47246,17 +47406,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [28696] = 5, + [28820] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(966), 1, - anon_sym_else, - STATE(600), 1, - sym_else_clause, - ACTIONS(1180), 13, + ACTIONS(1142), 13, + sym__dedent, sym__string_start, sym__template_string_start, - ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -47267,7 +47423,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1182), 34, + ACTIONS(1144), 37, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -47281,10 +47437,13 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_break, anon_sym_continue, anon_sym_if, + anon_sym_else, anon_sym_async, anon_sym_for, anon_sym_while, anon_sym_try, + anon_sym_except, + anon_sym_finally, anon_sym_with, anon_sym_match, anon_sym_def, @@ -47302,14 +47461,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [28757] = 5, + [28878] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(946), 1, - anon_sym_else, - STATE(519), 1, - sym_else_clause, - ACTIONS(1186), 13, + ACTIONS(1156), 13, sym__dedent, sym__string_start, sym__template_string_start, @@ -47323,7 +47478,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1184), 34, + ACTIONS(1158), 37, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -47337,66 +47492,13 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_break, anon_sym_continue, anon_sym_if, - anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_with, - anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, - anon_sym_exec, - anon_sym_type, - anon_sym_class, - anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, - anon_sym_await, - sym_true, - sym_false, - sym_none, - [28818] = 5, - ACTIONS(3), 1, - sym_comment, - ACTIONS(966), 1, anon_sym_else, - STATE(583), 1, - sym_else_clause, - ACTIONS(1188), 13, - sym__string_start, - sym__template_string_start, - ts_builtin_sym_end, - anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, - sym_ellipsis, - sym_float, - ACTIONS(1190), 34, - anon_sym_lazy, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, - anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, anon_sym_async, anon_sym_for, anon_sym_while, anon_sym_try, + anon_sym_except, + anon_sym_finally, anon_sym_with, anon_sym_match, anon_sym_def, @@ -47414,17 +47516,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [28879] = 5, + [28936] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(966), 1, - anon_sym_else, - STATE(593), 1, - sym_else_clause, - ACTIONS(1192), 13, + ACTIONS(1168), 13, + sym__dedent, sym__string_start, sym__template_string_start, - ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -47435,7 +47533,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1194), 34, + ACTIONS(1170), 37, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -47449,10 +47547,13 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_break, anon_sym_continue, anon_sym_if, + anon_sym_else, anon_sym_async, anon_sym_for, anon_sym_while, anon_sym_try, + anon_sym_except, + anon_sym_finally, anon_sym_with, anon_sym_match, anon_sym_def, @@ -47470,17 +47571,158 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [28940] = 5, + [28994] = 22, ACTIONS(3), 1, sym_comment, - ACTIONS(950), 1, - anon_sym_finally, - STATE(546), 1, - sym_finally_clause, - ACTIONS(1198), 13, - sym__dedent, + ACTIONS(293), 1, + anon_sym_LBRACE, + ACTIONS(315), 1, + sym__string_start, + ACTIONS(317), 1, + sym__template_string_start, + ACTIONS(694), 1, + sym_identifier, + ACTIONS(698), 1, + anon_sym_LPAREN, + ACTIONS(706), 1, + anon_sym_LBRACK, + ACTIONS(708), 1, + anon_sym_await, + ACTIONS(1188), 1, + anon_sym_RPAREN, + ACTIONS(1190), 1, + anon_sym_STAR, + STATE(694), 1, + sym_string, + STATE(698), 1, + sym_template_string, + STATE(1017), 1, + sym_primary_expression, + STATE(1355), 1, + sym_pattern, + STATE(1742), 1, + sym__patterns, + ACTIONS(309), 2, + sym_ellipsis, + sym_float, + STATE(842), 2, + sym_attribute, + sym_subscript, + ACTIONS(301), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + STATE(1005), 3, + sym_tuple_pattern, + sym_list_pattern, + sym_list_splat_pattern, + ACTIONS(311), 4, + sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(696), 6, + anon_sym_lazy, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(720), 15, + sym_binary_operator, + sym_unary_operator, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [29089] = 21, + ACTIONS(3), 1, + sym_comment, + ACTIONS(293), 1, + anon_sym_LBRACE, + ACTIONS(315), 1, + sym__string_start, + ACTIONS(317), 1, + sym__template_string_start, + ACTIONS(694), 1, + sym_identifier, + ACTIONS(698), 1, + anon_sym_LPAREN, + ACTIONS(706), 1, + anon_sym_LBRACK, + ACTIONS(708), 1, + anon_sym_await, + ACTIONS(1190), 1, + anon_sym_STAR, + STATE(694), 1, + sym_string, + STATE(698), 1, + sym_template_string, + STATE(1002), 1, + sym_pattern, + STATE(1017), 1, + sym_primary_expression, + ACTIONS(309), 2, + sym_ellipsis, + sym_float, + ACTIONS(1192), 2, + anon_sym_RPAREN, + anon_sym_RBRACK, + STATE(842), 2, + sym_attribute, + sym_subscript, + ACTIONS(301), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + STATE(1005), 3, + sym_tuple_pattern, + sym_list_pattern, + sym_list_splat_pattern, + ACTIONS(311), 4, + sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(696), 6, + anon_sym_lazy, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(720), 15, + sym_binary_operator, + sym_unary_operator, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [29182] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1194), 13, sym__string_start, sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -47491,7 +47733,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1196), 34, + ACTIONS(1196), 36, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -47505,6 +47747,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_break, anon_sym_continue, anon_sym_if, + anon_sym_elif, + anon_sym_else, anon_sym_async, anon_sym_for, anon_sym_while, @@ -47526,10 +47770,14 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [29001] = 3, + [29239] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(1200), 13, + ACTIONS(978), 1, + anon_sym_else, + STATE(516), 1, + sym_else_clause, + ACTIONS(1198), 13, sym__string_start, sym__template_string_start, ts_builtin_sym_end, @@ -47543,7 +47791,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1202), 36, + ACTIONS(1200), 34, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -47557,8 +47805,6 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_break, anon_sym_continue, anon_sym_if, - anon_sym_elif, - anon_sym_else, anon_sym_async, anon_sym_for, anon_sym_while, @@ -47580,13 +47826,201 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [29058] = 3, + [29300] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(1176), 13, - sym__dedent, + ACTIONS(277), 1, + anon_sym_COMMA, + ACTIONS(283), 1, + anon_sym_COLON_EQ, + ACTIONS(1202), 1, + sym_identifier, + ACTIONS(285), 2, + anon_sym_COLON, + anon_sym_EQ, + ACTIONS(303), 10, + sym__newline, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_LBRACK, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_SEMI, + ACTIONS(307), 13, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_AT_EQ, + anon_sym_SLASH_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_STAR_STAR_EQ, + anon_sym_GT_GT_EQ, + anon_sym_LT_LT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + ACTIONS(272), 21, + anon_sym_STAR, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_SLASH, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT, + anon_sym_GT, + anon_sym_is, + [29367] = 6, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1213), 1, + anon_sym_EQ, + ACTIONS(1206), 3, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_RBRACK, + ACTIONS(1211), 14, + anon_sym_COLON, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_AT_EQ, + anon_sym_SLASH_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_STAR_STAR_EQ, + anon_sym_GT_GT_EQ, + anon_sym_LT_LT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + ACTIONS(1209), 15, + anon_sym_STAR, + anon_sym_GT_GT, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_SLASH, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1204), 16, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_if, + anon_sym_async, + anon_sym_for, + anon_sym_in, + anon_sym_LBRACK, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [29430] = 21, + ACTIONS(3), 1, + sym_comment, + ACTIONS(293), 1, + anon_sym_LBRACE, + ACTIONS(315), 1, + sym__string_start, + ACTIONS(317), 1, + sym__template_string_start, + ACTIONS(694), 1, + sym_identifier, + ACTIONS(698), 1, + anon_sym_LPAREN, + ACTIONS(706), 1, + anon_sym_LBRACK, + ACTIONS(708), 1, + anon_sym_await, + ACTIONS(1190), 1, + anon_sym_STAR, + STATE(694), 1, + sym_string, + STATE(698), 1, + sym_template_string, + STATE(1002), 1, + sym_pattern, + STATE(1017), 1, + sym_primary_expression, + ACTIONS(309), 2, + sym_ellipsis, + sym_float, + ACTIONS(1215), 2, + anon_sym_RPAREN, + anon_sym_RBRACK, + STATE(842), 2, + sym_attribute, + sym_subscript, + ACTIONS(301), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + STATE(1005), 3, + sym_tuple_pattern, + sym_list_pattern, + sym_list_splat_pattern, + ACTIONS(311), 4, + sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(696), 6, + anon_sym_lazy, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(720), 15, + sym_binary_operator, + sym_unary_operator, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [29523] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1217), 13, sym__string_start, sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -47597,7 +48031,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1178), 36, + ACTIONS(1219), 36, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -47634,13 +48068,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [29115] = 3, + [29580] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1206), 13, - sym__dedent, + ACTIONS(1221), 13, sym__string_start, sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -47651,7 +48085,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1204), 36, + ACTIONS(1223), 36, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -47688,17 +48122,17 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [29172] = 5, + [29637] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(946), 1, + ACTIONS(978), 1, anon_sym_else, - STATE(560), 1, + STATE(600), 1, sym_else_clause, - ACTIONS(1180), 13, - sym__dedent, + ACTIONS(1225), 13, sym__string_start, sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -47709,7 +48143,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1182), 34, + ACTIONS(1227), 34, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -47744,10 +48178,14 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [29233] = 3, + [29698] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(1206), 13, + ACTIONS(978), 1, + anon_sym_else, + STATE(538), 1, + sym_else_clause, + ACTIONS(1229), 13, sym__string_start, sym__template_string_start, ts_builtin_sym_end, @@ -47761,7 +48199,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1204), 36, + ACTIONS(1231), 34, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -47775,8 +48213,6 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_break, anon_sym_continue, anon_sym_if, - anon_sym_elif, - anon_sym_else, anon_sym_async, anon_sym_for, anon_sym_while, @@ -47798,17 +48234,17 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [29290] = 5, + [29759] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(946), 1, - anon_sym_else, - STATE(551), 1, - sym_else_clause, - ACTIONS(1192), 13, - sym__dedent, + ACTIONS(982), 1, + anon_sym_finally, + STATE(610), 1, + sym_finally_clause, + ACTIONS(1233), 13, sym__string_start, sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -47819,7 +48255,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1194), 34, + ACTIONS(1235), 34, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -47854,17 +48290,17 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [29351] = 5, + [29820] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(966), 1, + ACTIONS(952), 1, anon_sym_else, - STATE(596), 1, + STATE(552), 1, sym_else_clause, - ACTIONS(1208), 13, + ACTIONS(1229), 13, + sym__dedent, sym__string_start, sym__template_string_start, - ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -47875,7 +48311,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1210), 34, + ACTIONS(1231), 34, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -47910,14 +48346,14 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [29412] = 5, + [29881] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(966), 1, + ACTIONS(978), 1, anon_sym_else, - STATE(563), 1, + STATE(530), 1, sym_else_clause, - ACTIONS(1212), 13, + ACTIONS(1237), 13, sym__string_start, sym__template_string_start, ts_builtin_sym_end, @@ -47931,7 +48367,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1214), 34, + ACTIONS(1239), 34, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -47966,14 +48402,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [29473] = 5, + [29942] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(946), 1, - anon_sym_else, - STATE(531), 1, - sym_else_clause, - ACTIONS(1212), 13, + ACTIONS(1221), 13, sym__dedent, sym__string_start, sym__template_string_start, @@ -47987,7 +48419,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1214), 34, + ACTIONS(1223), 36, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -48001,6 +48433,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_break, anon_sym_continue, anon_sym_if, + anon_sym_elif, + anon_sym_else, anon_sym_async, anon_sym_for, anon_sym_while, @@ -48022,87 +48456,70 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [29534] = 22, + [29999] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(293), 1, - anon_sym_LBRACE, - ACTIONS(315), 1, + ACTIONS(956), 1, + anon_sym_finally, + STATE(571), 1, + sym_finally_clause, + ACTIONS(1243), 13, + sym__dedent, sym__string_start, - ACTIONS(317), 1, sym__template_string_start, - ACTIONS(692), 1, - sym_identifier, - ACTIONS(696), 1, anon_sym_LPAREN, - ACTIONS(704), 1, - anon_sym_LBRACK, - ACTIONS(706), 1, - anon_sym_await, - ACTIONS(1216), 1, - anon_sym_RPAREN, - ACTIONS(1218), 1, - anon_sym_STAR, - STATE(645), 1, - sym_string, - STATE(658), 1, - sym_template_string, - STATE(1013), 1, - sym_primary_expression, - STATE(1311), 1, - sym_pattern, - STATE(1689), 1, - sym__patterns, - ACTIONS(309), 2, - sym_ellipsis, - sym_float, - STATE(848), 2, - sym_attribute, - sym_subscript, - ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, anon_sym_TILDE, - STATE(1001), 3, - sym_tuple_pattern, - sym_list_pattern, - sym_list_splat_pattern, - ACTIONS(311), 4, - sym_integer, - sym_true, - sym_false, - sym_none, - ACTIONS(694), 6, + sym_ellipsis, + sym_float, + ACTIONS(1241), 34, anon_sym_lazy, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_with, anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - STATE(725), 15, - sym_binary_operator, - sym_unary_operator, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [29629] = 5, + anon_sym_class, + anon_sym_not, + anon_sym_lambda, + anon_sym_yield, + sym_integer, + sym_identifier, + anon_sym_await, + sym_true, + sym_false, + sym_none, + [30060] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(966), 1, - anon_sym_else, - STATE(606), 1, - sym_else_clause, - ACTIONS(1186), 13, + ACTIONS(982), 1, + anon_sym_finally, + STATE(535), 1, + sym_finally_clause, + ACTIONS(1243), 13, sym__string_start, sym__template_string_start, ts_builtin_sym_end, @@ -48116,7 +48533,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1184), 34, + ACTIONS(1241), 34, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -48151,17 +48568,17 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [29690] = 5, + [30121] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(970), 1, - anon_sym_finally, - STATE(568), 1, - sym_finally_clause, - ACTIONS(1220), 13, + ACTIONS(952), 1, + anon_sym_else, + STATE(581), 1, + sym_else_clause, + ACTIONS(1225), 13, + sym__dedent, sym__string_start, sym__template_string_start, - ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -48172,7 +48589,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1222), 34, + ACTIONS(1227), 34, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -48207,17 +48624,17 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [29751] = 5, + [30182] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(950), 1, - anon_sym_finally, - STATE(533), 1, - sym_finally_clause, - ACTIONS(1220), 13, - sym__dedent, + ACTIONS(978), 1, + anon_sym_else, + STATE(528), 1, + sym_else_clause, + ACTIONS(1245), 13, sym__string_start, sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -48228,7 +48645,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1222), 34, + ACTIONS(1247), 34, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -48263,69 +48680,14 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [29812] = 8, - ACTIONS(3), 1, - sym_comment, - ACTIONS(277), 1, - anon_sym_COMMA, - ACTIONS(283), 1, - anon_sym_COLON_EQ, - ACTIONS(1224), 1, - sym_identifier, - ACTIONS(285), 2, - anon_sym_COLON, - anon_sym_EQ, - ACTIONS(303), 10, - sym__newline, - anon_sym_DOT, - anon_sym_LPAREN, - anon_sym_LBRACK, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - anon_sym_SEMI, - ACTIONS(307), 13, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_STAR_EQ, - anon_sym_SLASH_EQ, - anon_sym_AT_EQ, - anon_sym_SLASH_SLASH_EQ, - anon_sym_PERCENT_EQ, - anon_sym_STAR_STAR_EQ, - anon_sym_GT_GT_EQ, - anon_sym_LT_LT_EQ, - anon_sym_AMP_EQ, - anon_sym_CARET_EQ, - anon_sym_PIPE_EQ, - ACTIONS(272), 21, - anon_sym_STAR, - anon_sym_GT_GT, - anon_sym_if, - anon_sym_in, - anon_sym_PIPE, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_not, - anon_sym_and, - anon_sym_or, - anon_sym_SLASH, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, - anon_sym_LT, - anon_sym_GT, - anon_sym_is, - [29879] = 3, + [30243] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(1200), 13, + ACTIONS(956), 1, + anon_sym_finally, + STATE(584), 1, + sym_finally_clause, + ACTIONS(1233), 13, sym__dedent, sym__string_start, sym__template_string_start, @@ -48339,7 +48701,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1202), 36, + ACTIONS(1235), 34, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -48353,8 +48715,6 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_break, anon_sym_continue, anon_sym_if, - anon_sym_elif, - anon_sym_else, anon_sym_async, anon_sym_for, anon_sym_while, @@ -48376,86 +48736,14 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [29936] = 21, + [30304] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(293), 1, - anon_sym_LBRACE, - ACTIONS(315), 1, - sym__string_start, - ACTIONS(317), 1, - sym__template_string_start, - ACTIONS(692), 1, - sym_identifier, - ACTIONS(696), 1, - anon_sym_LPAREN, - ACTIONS(704), 1, - anon_sym_LBRACK, - ACTIONS(706), 1, - anon_sym_await, - ACTIONS(1218), 1, - anon_sym_STAR, - STATE(645), 1, - sym_string, - STATE(658), 1, - sym_template_string, - STATE(998), 1, - sym_pattern, - STATE(1013), 1, - sym_primary_expression, - ACTIONS(309), 2, - sym_ellipsis, - sym_float, - ACTIONS(1226), 2, - anon_sym_RPAREN, - anon_sym_RBRACK, - STATE(848), 2, - sym_attribute, - sym_subscript, - ACTIONS(301), 3, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_TILDE, - STATE(1001), 3, - sym_tuple_pattern, - sym_list_pattern, - sym_list_splat_pattern, - ACTIONS(311), 4, - sym_integer, - sym_true, - sym_false, - sym_none, - ACTIONS(694), 6, - anon_sym_lazy, - anon_sym_print, - anon_sym_async, - anon_sym_match, - anon_sym_exec, - anon_sym_type, - STATE(725), 15, - sym_binary_operator, - sym_unary_operator, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [30029] = 5, - ACTIONS(3), 1, - sym_comment, - ACTIONS(946), 1, + ACTIONS(952), 1, anon_sym_else, - STATE(555), 1, + STATE(588), 1, sym_else_clause, - ACTIONS(1208), 13, + ACTIONS(1245), 13, sym__dedent, sym__string_start, sym__template_string_start, @@ -48469,7 +48757,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1210), 34, + ACTIONS(1247), 34, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -48504,17 +48792,17 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [30090] = 5, + [30365] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(970), 1, - anon_sym_finally, - STATE(587), 1, - sym_finally_clause, - ACTIONS(1198), 13, + ACTIONS(952), 1, + anon_sym_else, + STATE(592), 1, + sym_else_clause, + ACTIONS(1251), 13, + sym__dedent, sym__string_start, sym__template_string_start, - ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -48525,7 +48813,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1196), 34, + ACTIONS(1249), 34, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -48560,86 +48848,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [30151] = 21, - ACTIONS(3), 1, - sym_comment, - ACTIONS(293), 1, - anon_sym_LBRACE, - ACTIONS(315), 1, - sym__string_start, - ACTIONS(317), 1, - sym__template_string_start, - ACTIONS(692), 1, - sym_identifier, - ACTIONS(696), 1, - anon_sym_LPAREN, - ACTIONS(704), 1, - anon_sym_LBRACK, - ACTIONS(706), 1, - anon_sym_await, - ACTIONS(1218), 1, - anon_sym_STAR, - STATE(645), 1, - sym_string, - STATE(658), 1, - sym_template_string, - STATE(998), 1, - sym_pattern, - STATE(1013), 1, - sym_primary_expression, - ACTIONS(309), 2, - sym_ellipsis, - sym_float, - ACTIONS(1228), 2, - anon_sym_RPAREN, - anon_sym_RBRACK, - STATE(848), 2, - sym_attribute, - sym_subscript, - ACTIONS(301), 3, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_TILDE, - STATE(1001), 3, - sym_tuple_pattern, - sym_list_pattern, - sym_list_splat_pattern, - ACTIONS(311), 4, - sym_integer, - sym_true, - sym_false, - sym_none, - ACTIONS(694), 6, - anon_sym_lazy, - anon_sym_print, - anon_sym_async, - anon_sym_match, - anon_sym_exec, - anon_sym_type, - STATE(725), 15, - sym_binary_operator, - sym_unary_operator, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [30244] = 5, + [30426] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(946), 1, - anon_sym_else, - STATE(543), 1, - sym_else_clause, - ACTIONS(1188), 13, + ACTIONS(1194), 13, sym__dedent, sym__string_start, sym__template_string_start, @@ -48653,7 +48865,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1190), 34, + ACTIONS(1196), 36, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -48667,6 +48879,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_break, anon_sym_continue, anon_sym_if, + anon_sym_elif, + anon_sym_else, anon_sym_async, anon_sym_for, anon_sym_while, @@ -48688,67 +48902,14 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [30305] = 7, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1232), 1, - anon_sym_COMMA, - ACTIONS(1237), 1, - anon_sym_COLON_EQ, - ACTIONS(1239), 2, - anon_sym_COLON, - anon_sym_EQ, - ACTIONS(1241), 13, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_STAR_EQ, - anon_sym_SLASH_EQ, - anon_sym_AT_EQ, - anon_sym_SLASH_SLASH_EQ, - anon_sym_PERCENT_EQ, - anon_sym_STAR_STAR_EQ, - anon_sym_GT_GT_EQ, - anon_sym_LT_LT_EQ, - anon_sym_AMP_EQ, - anon_sym_CARET_EQ, - anon_sym_PIPE_EQ, - ACTIONS(1235), 15, - anon_sym_STAR, - anon_sym_GT_GT, - anon_sym_PIPE, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_SLASH, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1230), 16, - sym__newline, - anon_sym_DOT, - anon_sym_LPAREN, - anon_sym_if, - anon_sym_in, - anon_sym_LBRACK, - anon_sym_not, - anon_sym_and, - anon_sym_or, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - anon_sym_is, - anon_sym_SEMI, - [30369] = 3, + [30483] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(1245), 13, + ACTIONS(952), 1, + anon_sym_else, + STATE(597), 1, + sym_else_clause, + ACTIONS(1198), 13, sym__dedent, sym__string_start, sym__template_string_start, @@ -48762,7 +48923,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1243), 35, + ACTIONS(1200), 34, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -48782,7 +48943,6 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_try, anon_sym_with, anon_sym_match, - anon_sym_case, anon_sym_def, anon_sym_global, anon_sym_nonlocal, @@ -48798,13 +48958,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [30425] = 3, + [30544] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1247), 13, + ACTIONS(1217), 13, + sym__dedent, sym__string_start, sym__template_string_start, - ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -48815,7 +48975,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1249), 35, + ACTIONS(1219), 36, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -48829,13 +48989,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_break, anon_sym_continue, anon_sym_if, + anon_sym_elif, + anon_sym_else, anon_sym_async, anon_sym_for, anon_sym_while, anon_sym_try, anon_sym_with, anon_sym_match, - anon_sym_case, anon_sym_def, anon_sym_global, anon_sym_nonlocal, @@ -48851,70 +49012,17 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [30481] = 7, - ACTIONS(3), 1, - sym_comment, - ACTIONS(580), 1, - anon_sym_COLON_EQ, - ACTIONS(582), 2, - anon_sym_COLON, - anon_sym_EQ, - ACTIONS(577), 3, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_RBRACK, - ACTIONS(588), 13, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_STAR_EQ, - anon_sym_SLASH_EQ, - anon_sym_AT_EQ, - anon_sym_SLASH_SLASH_EQ, - anon_sym_PERCENT_EQ, - anon_sym_STAR_STAR_EQ, - anon_sym_GT_GT_EQ, - anon_sym_LT_LT_EQ, - anon_sym_AMP_EQ, - anon_sym_CARET_EQ, - anon_sym_PIPE_EQ, - ACTIONS(303), 14, - anon_sym_DOT, - anon_sym_LPAREN, - anon_sym_if, - anon_sym_in, - anon_sym_LBRACK, - anon_sym_not, - anon_sym_and, - anon_sym_or, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - anon_sym_is, - ACTIONS(272), 15, - anon_sym_STAR, - anon_sym_GT_GT, - anon_sym_PIPE, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_SLASH, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, - anon_sym_LT, - anon_sym_GT, - [30545] = 3, + [30601] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(1253), 13, - sym__dedent, + ACTIONS(978), 1, + anon_sym_else, + STATE(553), 1, + sym_else_clause, + ACTIONS(1251), 13, sym__string_start, sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -48925,7 +49033,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1251), 35, + ACTIONS(1249), 34, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -48943,7 +49051,6 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_for, anon_sym_while, anon_sym_try, - anon_sym_finally, anon_sym_with, anon_sym_match, anon_sym_def, @@ -48961,209 +49068,14 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [30601] = 21, - ACTIONS(3), 1, - sym_comment, - ACTIONS(293), 1, - anon_sym_LBRACE, - ACTIONS(315), 1, - sym__string_start, - ACTIONS(317), 1, - sym__template_string_start, - ACTIONS(692), 1, - sym_identifier, - ACTIONS(696), 1, - anon_sym_LPAREN, - ACTIONS(704), 1, - anon_sym_LBRACK, - ACTIONS(706), 1, - anon_sym_await, - ACTIONS(1218), 1, - anon_sym_STAR, - STATE(645), 1, - sym_string, - STATE(658), 1, - sym_template_string, - STATE(1013), 1, - sym_primary_expression, - STATE(1478), 1, - sym_pattern, - STATE(1648), 1, - sym_pattern_list, - ACTIONS(309), 2, - sym_ellipsis, - sym_float, - STATE(848), 2, - sym_attribute, - sym_subscript, - ACTIONS(301), 3, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_TILDE, - STATE(1001), 3, - sym_tuple_pattern, - sym_list_pattern, - sym_list_splat_pattern, - ACTIONS(311), 4, - sym_integer, - sym_true, - sym_false, - sym_none, - ACTIONS(694), 6, - anon_sym_lazy, - anon_sym_print, - anon_sym_async, - anon_sym_match, - anon_sym_exec, - anon_sym_type, - STATE(725), 15, - sym_binary_operator, - sym_unary_operator, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [30693] = 21, - ACTIONS(3), 1, - sym_comment, - ACTIONS(293), 1, - anon_sym_LBRACE, - ACTIONS(315), 1, - sym__string_start, - ACTIONS(317), 1, - sym__template_string_start, - ACTIONS(692), 1, - sym_identifier, - ACTIONS(696), 1, - anon_sym_LPAREN, - ACTIONS(704), 1, - anon_sym_LBRACK, - ACTIONS(706), 1, - anon_sym_await, - ACTIONS(1218), 1, - anon_sym_STAR, - STATE(645), 1, - sym_string, - STATE(658), 1, - sym_template_string, - STATE(1013), 1, - sym_primary_expression, - STATE(1411), 1, - sym_pattern, - STATE(1612), 1, - sym_pattern_list, - ACTIONS(309), 2, - sym_ellipsis, - sym_float, - STATE(848), 2, - sym_attribute, - sym_subscript, - ACTIONS(301), 3, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_TILDE, - STATE(1001), 3, - sym_tuple_pattern, - sym_list_pattern, - sym_list_splat_pattern, - ACTIONS(311), 4, - sym_integer, - sym_true, - sym_false, - sym_none, - ACTIONS(694), 6, - anon_sym_lazy, - anon_sym_print, - anon_sym_async, - anon_sym_match, - anon_sym_exec, - anon_sym_type, - STATE(725), 15, - sym_binary_operator, - sym_unary_operator, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [30785] = 7, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1258), 1, - anon_sym_COLON_EQ, - ACTIONS(1260), 2, - anon_sym_COLON, - anon_sym_EQ, - ACTIONS(1255), 3, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_RBRACK, - ACTIONS(1262), 13, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_STAR_EQ, - anon_sym_SLASH_EQ, - anon_sym_AT_EQ, - anon_sym_SLASH_SLASH_EQ, - anon_sym_PERCENT_EQ, - anon_sym_STAR_STAR_EQ, - anon_sym_GT_GT_EQ, - anon_sym_LT_LT_EQ, - anon_sym_AMP_EQ, - anon_sym_CARET_EQ, - anon_sym_PIPE_EQ, - ACTIONS(1230), 14, - anon_sym_DOT, - anon_sym_LPAREN, - anon_sym_if, - anon_sym_in, - anon_sym_LBRACK, - anon_sym_not, - anon_sym_and, - anon_sym_or, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - anon_sym_is, - ACTIONS(1235), 15, - anon_sym_STAR, - anon_sym_GT_GT, - anon_sym_PIPE, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_SLASH, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, - anon_sym_LT, - anon_sym_GT, - [30849] = 3, + [30662] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(1247), 13, + ACTIONS(952), 1, + anon_sym_else, + STATE(569), 1, + sym_else_clause, + ACTIONS(1237), 13, sym__dedent, sym__string_start, sym__template_string_start, @@ -49177,7 +49089,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1249), 35, + ACTIONS(1239), 34, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -49197,7 +49109,6 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_try, anon_sym_with, anon_sym_match, - anon_sym_case, anon_sym_def, anon_sym_global, anon_sym_nonlocal, @@ -49213,10 +49124,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [30905] = 3, + [30723] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1064), 16, + ACTIONS(1050), 16, anon_sym_STAR, anon_sym_GT_GT, anon_sym_PIPE, @@ -49233,7 +49144,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LT_LT, anon_sym_LT, anon_sym_GT, - ACTIONS(1062), 32, + ACTIONS(1048), 32, sym__newline, anon_sym_DOT, anon_sym_from, @@ -49266,63 +49177,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_SEMI, - [30961] = 3, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1266), 13, - sym__dedent, - sym__string_start, - sym__template_string_start, - anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, - sym_ellipsis, - sym_float, - ACTIONS(1264), 35, - anon_sym_lazy, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, - anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, - anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_finally, - anon_sym_with, - anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, - anon_sym_exec, - anon_sym_type, - anon_sym_class, - anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, - anon_sym_await, - sym_true, - sym_false, - sym_none, - [31017] = 3, + [30779] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1268), 13, + ACTIONS(1253), 13, sym__string_start, sym__template_string_start, ts_builtin_sym_end, @@ -49336,7 +49194,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1270), 35, + ACTIONS(1255), 35, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -49354,9 +49212,9 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_for, anon_sym_while, anon_sym_try, + anon_sym_finally, anon_sym_with, anon_sym_match, - anon_sym_case, anon_sym_def, anon_sym_global, anon_sym_nonlocal, @@ -49372,17 +49230,37 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [31073] = 3, + [30835] = 7, ACTIONS(3), 1, sym_comment, - ACTIONS(1076), 16, + ACTIONS(277), 1, + anon_sym_COMMA, + ACTIONS(283), 1, + anon_sym_COLON_EQ, + ACTIONS(285), 2, + anon_sym_COLON, + anon_sym_EQ, + ACTIONS(307), 13, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_AT_EQ, + anon_sym_SLASH_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_STAR_STAR_EQ, + anon_sym_GT_GT_EQ, + anon_sym_LT_LT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + ACTIONS(272), 15, anon_sym_STAR, anon_sym_GT_GT, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR_STAR, - anon_sym_EQ, anon_sym_AT, anon_sym_SLASH, anon_sym_PERCENT, @@ -49392,14 +49270,11 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LT_LT, anon_sym_LT, anon_sym_GT, - ACTIONS(1074), 32, + ACTIONS(303), 16, sym__newline, anon_sym_DOT, - anon_sym_from, anon_sym_LPAREN, - anon_sym_COMMA, anon_sym_if, - anon_sym_COLON, anon_sym_in, anon_sym_LBRACK, anon_sym_not, @@ -49411,24 +49286,82 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_STAR_EQ, - anon_sym_SLASH_EQ, - anon_sym_AT_EQ, - anon_sym_SLASH_SLASH_EQ, - anon_sym_PERCENT_EQ, - anon_sym_STAR_STAR_EQ, - anon_sym_GT_GT_EQ, - anon_sym_LT_LT_EQ, - anon_sym_AMP_EQ, - anon_sym_CARET_EQ, - anon_sym_PIPE_EQ, anon_sym_SEMI, - [31129] = 3, + [30899] = 21, + ACTIONS(3), 1, + sym_comment, + ACTIONS(293), 1, + anon_sym_LBRACE, + ACTIONS(315), 1, + sym__string_start, + ACTIONS(317), 1, + sym__template_string_start, + ACTIONS(694), 1, + sym_identifier, + ACTIONS(698), 1, + anon_sym_LPAREN, + ACTIONS(706), 1, + anon_sym_LBRACK, + ACTIONS(708), 1, + anon_sym_await, + ACTIONS(1190), 1, + anon_sym_STAR, + STATE(694), 1, + sym_string, + STATE(698), 1, + sym_template_string, + STATE(1017), 1, + sym_primary_expression, + STATE(1504), 1, + sym_pattern, + STATE(1674), 1, + sym_pattern_list, + ACTIONS(309), 2, + sym_ellipsis, + sym_float, + STATE(842), 2, + sym_attribute, + sym_subscript, + ACTIONS(301), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + STATE(1005), 3, + sym_tuple_pattern, + sym_list_pattern, + sym_list_splat_pattern, + ACTIONS(311), 4, + sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(696), 6, + anon_sym_lazy, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(720), 15, + sym_binary_operator, + sym_unary_operator, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [30991] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1266), 13, + ACTIONS(1257), 13, sym__string_start, sym__template_string_start, ts_builtin_sym_end, @@ -49442,7 +49375,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1264), 35, + ACTIONS(1259), 35, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -49460,9 +49393,9 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_for, anon_sym_while, anon_sym_try, - anon_sym_finally, anon_sym_with, anon_sym_match, + anon_sym_case, anon_sym_def, anon_sym_global, anon_sym_nonlocal, @@ -49478,84 +49411,66 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [31185] = 21, + [31047] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(293), 1, - anon_sym_LBRACE, - ACTIONS(315), 1, + ACTIONS(1253), 13, + sym__dedent, sym__string_start, - ACTIONS(317), 1, sym__template_string_start, - ACTIONS(692), 1, - sym_identifier, - ACTIONS(696), 1, anon_sym_LPAREN, - ACTIONS(704), 1, - anon_sym_LBRACK, - ACTIONS(706), 1, - anon_sym_await, - ACTIONS(1218), 1, - anon_sym_STAR, - STATE(645), 1, - sym_string, - STATE(658), 1, - sym_template_string, - STATE(1013), 1, - sym_primary_expression, - STATE(1457), 1, - sym_pattern, - STATE(1595), 1, - sym_pattern_list, - ACTIONS(309), 2, - sym_ellipsis, - sym_float, - STATE(848), 2, - sym_attribute, - sym_subscript, - ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, anon_sym_TILDE, - STATE(1001), 3, - sym_tuple_pattern, - sym_list_pattern, - sym_list_splat_pattern, - ACTIONS(311), 4, - sym_integer, - sym_true, - sym_false, - sym_none, - ACTIONS(694), 6, + sym_ellipsis, + sym_float, + ACTIONS(1255), 35, anon_sym_lazy, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_finally, + anon_sym_with, anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - STATE(725), 15, - sym_binary_operator, - sym_unary_operator, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [31277] = 3, + anon_sym_class, + anon_sym_not, + anon_sym_lambda, + anon_sym_yield, + sym_integer, + sym_identifier, + anon_sym_await, + sym_true, + sym_false, + sym_none, + [31103] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1274), 13, - sym__dedent, + ACTIONS(1261), 13, sym__string_start, sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -49566,7 +49481,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1272), 35, + ACTIONS(1263), 35, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -49602,17 +49517,17 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [31333] = 7, + [31159] = 7, ACTIONS(3), 1, sym_comment, - ACTIONS(277), 1, + ACTIONS(1265), 1, anon_sym_COMMA, - ACTIONS(283), 1, + ACTIONS(1268), 1, anon_sym_COLON_EQ, - ACTIONS(285), 2, + ACTIONS(1270), 2, anon_sym_COLON, anon_sym_EQ, - ACTIONS(307), 13, + ACTIONS(1272), 13, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, @@ -49626,7 +49541,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, - ACTIONS(272), 15, + ACTIONS(1209), 15, anon_sym_STAR, anon_sym_GT_GT, anon_sym_PIPE, @@ -49642,7 +49557,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LT_LT, anon_sym_LT, anon_sym_GT, - ACTIONS(303), 16, + ACTIONS(1204), 16, sym__newline, anon_sym_DOT, anon_sym_LPAREN, @@ -49659,7 +49574,60 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LT_GT, anon_sym_is, anon_sym_SEMI, - [31397] = 21, + [31223] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1276), 13, + sym__dedent, + sym__string_start, + sym__template_string_start, + anon_sym_LPAREN, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_TILDE, + sym_ellipsis, + sym_float, + ACTIONS(1274), 35, + anon_sym_lazy, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, + anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, + anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_with, + anon_sym_match, + anon_sym_case, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, + anon_sym_exec, + anon_sym_type, + anon_sym_class, + anon_sym_not, + anon_sym_lambda, + anon_sym_yield, + sym_integer, + sym_identifier, + anon_sym_await, + sym_true, + sym_false, + sym_none, + [31279] = 21, ACTIONS(3), 1, sym_comment, ACTIONS(293), 1, @@ -49668,37 +49636,37 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(317), 1, sym__template_string_start, - ACTIONS(692), 1, + ACTIONS(694), 1, sym_identifier, - ACTIONS(696), 1, + ACTIONS(698), 1, anon_sym_LPAREN, - ACTIONS(704), 1, - anon_sym_LBRACK, ACTIONS(706), 1, + anon_sym_LBRACK, + ACTIONS(708), 1, anon_sym_await, - ACTIONS(1218), 1, + ACTIONS(1190), 1, anon_sym_STAR, - STATE(645), 1, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(1013), 1, + STATE(1017), 1, sym_primary_expression, - STATE(1469), 1, + STATE(1515), 1, sym_pattern, - STATE(1650), 1, + STATE(1750), 1, sym_pattern_list, ACTIONS(309), 2, sym_ellipsis, sym_float, - STATE(848), 2, + STATE(842), 2, sym_attribute, sym_subscript, ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1001), 3, + STATE(1005), 3, sym_tuple_pattern, sym_list_pattern, sym_list_splat_pattern, @@ -49707,14 +49675,14 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - ACTIONS(694), 6, + ACTIONS(696), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(725), 15, + STATE(720), 15, sym_binary_operator, sym_unary_operator, sym_call, @@ -49730,13 +49698,119 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [31489] = 3, + [31371] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1245), 13, + ACTIONS(1280), 13, + sym__dedent, + sym__string_start, + sym__template_string_start, + anon_sym_LPAREN, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_TILDE, + sym_ellipsis, + sym_float, + ACTIONS(1278), 35, + anon_sym_lazy, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, + anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, + anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_finally, + anon_sym_with, + anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, + anon_sym_exec, + anon_sym_type, + anon_sym_class, + anon_sym_not, + anon_sym_lambda, + anon_sym_yield, + sym_integer, + sym_identifier, + anon_sym_await, + sym_true, + sym_false, + sym_none, + [31427] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1032), 16, + anon_sym_STAR, + anon_sym_GT_GT, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_STAR_STAR, + anon_sym_EQ, + anon_sym_AT, + anon_sym_SLASH, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1030), 32, + sym__newline, + anon_sym_DOT, + anon_sym_from, + anon_sym_LPAREN, + anon_sym_COMMA, + anon_sym_if, + anon_sym_COLON, + anon_sym_in, + anon_sym_LBRACK, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_AT_EQ, + anon_sym_SLASH_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_STAR_STAR_EQ, + anon_sym_GT_GT_EQ, + anon_sym_LT_LT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + anon_sym_SEMI, + [31483] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1257), 13, + sym__dedent, sym__string_start, sym__template_string_start, - ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -49747,7 +49821,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1243), 35, + ACTIONS(1259), 35, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -49783,10 +49857,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [31545] = 3, + [31539] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1268), 13, + ACTIONS(1261), 13, sym__dedent, sym__string_start, sym__template_string_start, @@ -49800,7 +49874,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1270), 35, + ACTIONS(1263), 35, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -49836,13 +49910,84 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [31601] = 3, + [31595] = 21, ACTIONS(3), 1, sym_comment, - ACTIONS(1253), 13, + ACTIONS(293), 1, + anon_sym_LBRACE, + ACTIONS(315), 1, + sym__string_start, + ACTIONS(317), 1, + sym__template_string_start, + ACTIONS(694), 1, + sym_identifier, + ACTIONS(698), 1, + anon_sym_LPAREN, + ACTIONS(706), 1, + anon_sym_LBRACK, + ACTIONS(708), 1, + anon_sym_await, + ACTIONS(1190), 1, + anon_sym_STAR, + STATE(694), 1, + sym_string, + STATE(698), 1, + sym_template_string, + STATE(1017), 1, + sym_primary_expression, + STATE(1531), 1, + sym_pattern, + STATE(1751), 1, + sym_pattern_list, + ACTIONS(309), 2, + sym_ellipsis, + sym_float, + STATE(842), 2, + sym_attribute, + sym_subscript, + ACTIONS(301), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + STATE(1005), 3, + sym_tuple_pattern, + sym_list_pattern, + sym_list_splat_pattern, + ACTIONS(311), 4, + sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(696), 6, + anon_sym_lazy, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(720), 15, + sym_binary_operator, + sym_unary_operator, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [31687] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1284), 13, + sym__dedent, sym__string_start, sym__template_string_start, - ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -49853,7 +49998,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1251), 35, + ACTIONS(1282), 35, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -49871,9 +50016,9 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_for, anon_sym_while, anon_sym_try, - anon_sym_finally, anon_sym_with, anon_sym_match, + anon_sym_case, anon_sym_def, anon_sym_global, anon_sym_nonlocal, @@ -49889,10 +50034,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [31657] = 3, + [31743] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1274), 13, + ACTIONS(1284), 13, sym__string_start, sym__template_string_start, ts_builtin_sym_end, @@ -49906,7 +50051,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1272), 35, + ACTIONS(1282), 35, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -49942,7 +50087,7 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [31713] = 21, + [31799] = 21, ACTIONS(3), 1, sym_comment, ACTIONS(293), 1, @@ -49951,37 +50096,37 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(317), 1, sym__template_string_start, - ACTIONS(692), 1, + ACTIONS(694), 1, sym_identifier, - ACTIONS(696), 1, + ACTIONS(698), 1, anon_sym_LPAREN, - ACTIONS(704), 1, - anon_sym_LBRACK, ACTIONS(706), 1, + anon_sym_LBRACK, + ACTIONS(708), 1, anon_sym_await, - ACTIONS(1218), 1, + ACTIONS(1190), 1, anon_sym_STAR, - STATE(645), 1, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(1013), 1, + STATE(1017), 1, sym_primary_expression, - STATE(1508), 1, + STATE(1405), 1, sym_pattern, - STATE(1727), 1, + STATE(1718), 1, sym_pattern_list, ACTIONS(309), 2, sym_ellipsis, sym_float, - STATE(848), 2, + STATE(842), 2, sym_attribute, sym_subscript, ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1001), 3, + STATE(1005), 3, sym_tuple_pattern, sym_list_pattern, sym_list_splat_pattern, @@ -49990,14 +50135,14 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - ACTIONS(694), 6, + ACTIONS(696), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(725), 15, + STATE(720), 15, sym_binary_operator, sym_unary_operator, sym_call, @@ -50013,7 +50158,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [31805] = 21, + [31891] = 21, ACTIONS(3), 1, sym_comment, ACTIONS(293), 1, @@ -50022,37 +50167,37 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(317), 1, sym__template_string_start, - ACTIONS(692), 1, + ACTIONS(694), 1, sym_identifier, - ACTIONS(696), 1, + ACTIONS(698), 1, anon_sym_LPAREN, - ACTIONS(704), 1, - anon_sym_LBRACK, ACTIONS(706), 1, + anon_sym_LBRACK, + ACTIONS(708), 1, anon_sym_await, - ACTIONS(1218), 1, + ACTIONS(1190), 1, anon_sym_STAR, - STATE(645), 1, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(1013), 1, + STATE(1017), 1, sym_primary_expression, - STATE(1509), 1, + STATE(1532), 1, sym_pattern, - STATE(1730), 1, + STATE(1678), 1, sym_pattern_list, ACTIONS(309), 2, sym_ellipsis, sym_float, - STATE(848), 2, + STATE(842), 2, sym_attribute, sym_subscript, ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - STATE(1001), 3, + STATE(1005), 3, sym_tuple_pattern, sym_list_pattern, sym_list_splat_pattern, @@ -50061,14 +50206,14 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - ACTIONS(694), 6, + ACTIONS(696), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(725), 15, + STATE(720), 15, sym_binary_operator, sym_unary_operator, sym_call, @@ -50084,13 +50229,13 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [31897] = 3, + [31983] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1278), 13, - sym__dedent, + ACTIONS(1276), 13, sym__string_start, sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -50101,7 +50246,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1276), 34, + ACTIONS(1274), 35, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -50121,6 +50266,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_try, anon_sym_with, anon_sym_match, + anon_sym_case, anon_sym_def, anon_sym_global, anon_sym_nonlocal, @@ -50136,13 +50282,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [31952] = 3, + [32039] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1282), 13, - sym__dedent, + ACTIONS(1280), 13, sym__string_start, sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -50153,7 +50299,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1280), 34, + ACTIONS(1278), 35, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -50171,6 +50317,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_for, anon_sym_while, anon_sym_try, + anon_sym_finally, anon_sym_with, anon_sym_match, anon_sym_def, @@ -50188,65 +50335,84 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [32007] = 3, + [32095] = 21, ACTIONS(3), 1, sym_comment, - ACTIONS(1286), 13, - sym__dedent, + ACTIONS(293), 1, + anon_sym_LBRACE, + ACTIONS(315), 1, sym__string_start, + ACTIONS(317), 1, sym__template_string_start, + ACTIONS(694), 1, + sym_identifier, + ACTIONS(698), 1, anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, + ACTIONS(706), 1, anon_sym_LBRACK, - anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, + ACTIONS(708), 1, + anon_sym_await, + ACTIONS(1190), 1, + anon_sym_STAR, + STATE(694), 1, + sym_string, + STATE(698), 1, + sym_template_string, + STATE(1017), 1, + sym_primary_expression, + STATE(1530), 1, + sym_pattern, + STATE(1748), 1, + sym_pattern_list, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(1284), 34, + STATE(842), 2, + sym_attribute, + sym_subscript, + ACTIONS(301), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + STATE(1005), 3, + sym_tuple_pattern, + sym_list_pattern, + sym_list_splat_pattern, + ACTIONS(311), 4, + sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(696), 6, anon_sym_lazy, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_with, anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - anon_sym_class, - anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, - anon_sym_await, - sym_true, - sym_false, - sym_none, - [32062] = 3, + STATE(720), 15, + sym_binary_operator, + sym_unary_operator, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [32187] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(1288), 13, + sym__dedent, sym__string_start, sym__template_string_start, - ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -50257,7 +50423,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1290), 34, + ACTIONS(1286), 34, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -50292,24 +50458,79 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [32117] = 3, + [32242] = 6, ACTIONS(3), 1, sym_comment, - ACTIONS(1292), 13, - sym__string_start, - sym__template_string_start, - ts_builtin_sym_end, - anon_sym_LPAREN, + ACTIONS(1292), 1, + anon_sym_COMMA, + ACTIONS(1299), 1, + anon_sym_EQ, + ACTIONS(1297), 14, + anon_sym_COLON, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_AT_EQ, + anon_sym_SLASH_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_STAR_STAR_EQ, + anon_sym_GT_GT_EQ, + anon_sym_LT_LT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + ACTIONS(1295), 15, + anon_sym_STAR, + anon_sym_GT_GT, + anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_LBRACE, anon_sym_STAR_STAR, anon_sym_AT, - anon_sym_TILDE, + anon_sym_SLASH, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1290), 16, + sym__newline, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_if, + anon_sym_in, + anon_sym_LBRACK, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + anon_sym_SEMI, + [32303] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1301), 13, + sym__string_start, + sym__template_string_start, + ts_builtin_sym_end, + anon_sym_LPAREN, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1294), 34, + ACTIONS(1303), 34, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -50344,13 +50565,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [32172] = 3, + [32358] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1298), 13, - sym__dedent, + ACTIONS(1305), 13, sym__string_start, sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -50361,7 +50582,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1296), 34, + ACTIONS(1307), 34, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -50396,10 +50617,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [32227] = 3, + [32413] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1300), 13, + ACTIONS(1309), 13, sym__string_start, sym__template_string_start, ts_builtin_sym_end, @@ -50413,7 +50634,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1302), 34, + ACTIONS(1311), 34, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -50448,13 +50669,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [32282] = 3, + [32468] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1306), 13, - sym__dedent, + ACTIONS(1313), 13, sym__string_start, sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -50465,7 +50686,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1304), 34, + ACTIONS(1315), 34, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -50500,13 +50721,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [32337] = 3, + [32523] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1310), 13, - sym__dedent, + ACTIONS(1317), 13, sym__string_start, sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -50517,7 +50738,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1308), 34, + ACTIONS(1319), 34, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -50552,13 +50773,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [32392] = 3, + [32578] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1220), 13, - sym__dedent, + ACTIONS(1321), 13, sym__string_start, sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -50569,7 +50790,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1222), 34, + ACTIONS(1323), 34, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -50604,13 +50825,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [32447] = 3, + [32633] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(980), 13, - sym__dedent, + ACTIONS(1325), 13, sym__string_start, sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -50621,7 +50842,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(982), 34, + ACTIONS(1327), 34, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -50656,13 +50877,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [32502] = 3, + [32688] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1314), 13, - sym__dedent, + ACTIONS(1329), 13, sym__string_start, sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -50673,7 +50894,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1312), 34, + ACTIONS(1331), 34, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -50708,13 +50929,68 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [32557] = 3, + [32743] = 6, ACTIONS(3), 1, sym_comment, - ACTIONS(1318), 13, - sym__dedent, + ACTIONS(1335), 1, + anon_sym_COMMA, + ACTIONS(1342), 1, + anon_sym_EQ, + ACTIONS(1340), 14, + anon_sym_COLON, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_AT_EQ, + anon_sym_SLASH_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_STAR_STAR_EQ, + anon_sym_GT_GT_EQ, + anon_sym_LT_LT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + ACTIONS(1338), 15, + anon_sym_STAR, + anon_sym_GT_GT, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_SLASH, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1333), 16, + sym__newline, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_if, + anon_sym_in, + anon_sym_LBRACK, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + anon_sym_SEMI, + [32804] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1344), 13, sym__string_start, sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -50725,7 +51001,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1316), 34, + ACTIONS(1346), 34, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -50760,13 +51036,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [32612] = 3, + [32859] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1288), 13, - sym__dedent, + ACTIONS(1348), 13, sym__string_start, sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -50777,7 +51053,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1290), 34, + ACTIONS(1350), 34, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -50812,13 +51088,82 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [32667] = 3, + [32914] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(1292), 13, - sym__dedent, + ACTIONS(293), 1, + anon_sym_LBRACE, + ACTIONS(315), 1, + sym__string_start, + ACTIONS(317), 1, + sym__template_string_start, + ACTIONS(694), 1, + sym_identifier, + ACTIONS(698), 1, + anon_sym_LPAREN, + ACTIONS(706), 1, + anon_sym_LBRACK, + ACTIONS(708), 1, + anon_sym_await, + ACTIONS(1190), 1, + anon_sym_STAR, + STATE(694), 1, + sym_string, + STATE(698), 1, + sym_template_string, + STATE(1017), 1, + sym_primary_expression, + STATE(1524), 1, + sym_pattern, + ACTIONS(309), 2, + sym_ellipsis, + sym_float, + STATE(842), 2, + sym_attribute, + sym_subscript, + ACTIONS(301), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + STATE(1005), 3, + sym_tuple_pattern, + sym_list_pattern, + sym_list_splat_pattern, + ACTIONS(311), 4, + sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(696), 6, + anon_sym_lazy, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(720), 15, + sym_binary_operator, + sym_unary_operator, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [33003] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1352), 13, sym__string_start, sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -50829,7 +51174,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1294), 34, + ACTIONS(1354), 34, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -50864,13 +51209,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [32722] = 3, + [33058] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1300), 13, - sym__dedent, + ACTIONS(1356), 13, sym__string_start, sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -50881,7 +51226,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1302), 34, + ACTIONS(1358), 34, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -50916,13 +51261,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [32777] = 3, + [33113] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1322), 13, - sym__dedent, + ACTIONS(1360), 13, sym__string_start, sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -50933,7 +51278,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1320), 34, + ACTIONS(1362), 34, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -50968,13 +51313,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [32832] = 3, + [33168] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1326), 13, - sym__dedent, + ACTIONS(1364), 13, sym__string_start, sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -50985,7 +51330,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1324), 34, + ACTIONS(1366), 34, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -51020,13 +51365,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [32887] = 3, + [33223] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1330), 13, - sym__dedent, + ACTIONS(1368), 13, sym__string_start, sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -51037,7 +51382,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1328), 34, + ACTIONS(1370), 34, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -51072,13 +51417,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [32942] = 3, + [33278] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1334), 13, - sym__dedent, + ACTIONS(950), 13, sym__string_start, sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -51089,7 +51434,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1332), 34, + ACTIONS(948), 34, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -51124,10 +51469,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [32997] = 3, + [33333] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1338), 13, + ACTIONS(1374), 13, sym__dedent, sym__string_start, sym__template_string_start, @@ -51141,7 +51486,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1336), 34, + ACTIONS(1372), 34, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -51176,13 +51521,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [33052] = 3, + [33388] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1342), 13, - sym__dedent, + ACTIONS(1376), 13, sym__string_start, sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -51193,7 +51538,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1340), 34, + ACTIONS(1378), 34, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -51228,13 +51573,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [33107] = 3, + [33443] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1346), 13, - sym__dedent, + ACTIONS(1380), 13, sym__string_start, sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -51245,7 +51590,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1344), 34, + ACTIONS(1382), 34, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -51280,13 +51625,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [33162] = 3, + [33498] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1198), 13, - sym__dedent, + ACTIONS(1233), 13, sym__string_start, sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -51297,7 +51642,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1196), 34, + ACTIONS(1235), 34, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -51332,13 +51677,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [33217] = 3, + [33553] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1350), 13, - sym__dedent, + ACTIONS(1384), 13, sym__string_start, sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -51349,7 +51694,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1348), 34, + ACTIONS(1386), 34, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -51384,13 +51729,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [33272] = 3, + [33608] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1354), 13, - sym__dedent, + ACTIONS(1388), 13, sym__string_start, sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -51401,7 +51746,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1352), 34, + ACTIONS(1390), 34, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -51436,10 +51781,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [33327] = 3, + [33663] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1358), 13, + ACTIONS(950), 13, sym__dedent, sym__string_start, sym__template_string_start, @@ -51453,7 +51798,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1356), 34, + ACTIONS(948), 34, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -51488,13 +51833,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [33382] = 3, + [33718] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1362), 13, - sym__dedent, + ACTIONS(1392), 13, sym__string_start, sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -51505,7 +51850,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1360), 34, + ACTIONS(1394), 34, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -51540,13 +51885,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [33437] = 3, + [33773] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1366), 13, - sym__dedent, + ACTIONS(1396), 13, sym__string_start, sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -51557,7 +51902,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1364), 34, + ACTIONS(1398), 34, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -51592,13 +51937,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [33492] = 3, + [33828] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1370), 13, - sym__dedent, + ACTIONS(1400), 13, sym__string_start, sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -51609,7 +51954,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1368), 34, + ACTIONS(1402), 34, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -51644,10 +51989,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [33547] = 3, + [33883] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1374), 13, + ACTIONS(1406), 13, sym__dedent, sym__string_start, sym__template_string_start, @@ -51661,7 +52006,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1372), 34, + ACTIONS(1404), 34, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -51696,10 +52041,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [33602] = 3, + [33938] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1378), 13, + ACTIONS(1410), 13, sym__dedent, sym__string_start, sym__template_string_start, @@ -51713,7 +52058,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1376), 34, + ACTIONS(1408), 34, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -51748,10 +52093,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [33657] = 3, + [33993] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1382), 13, + ACTIONS(1414), 13, sym__dedent, sym__string_start, sym__template_string_start, @@ -51765,7 +52110,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1380), 34, + ACTIONS(1412), 34, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -51800,10 +52145,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [33712] = 3, + [34048] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1322), 13, + ACTIONS(1416), 13, sym__string_start, sym__template_string_start, ts_builtin_sym_end, @@ -51817,7 +52162,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1320), 34, + ACTIONS(1418), 34, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -51852,13 +52197,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [33767] = 3, + [34103] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1386), 13, - sym__dedent, + ACTIONS(1420), 13, sym__string_start, sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -51869,7 +52214,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1384), 34, + ACTIONS(1422), 34, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -51904,10 +52249,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [33822] = 3, + [34158] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1390), 13, + ACTIONS(1356), 13, sym__dedent, sym__string_start, sym__template_string_start, @@ -51921,7 +52266,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1388), 34, + ACTIONS(1358), 34, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -51956,13 +52301,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [33877] = 3, + [34213] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1394), 13, - sym__dedent, + ACTIONS(1424), 13, sym__string_start, sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -51973,7 +52318,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1392), 34, + ACTIONS(1426), 34, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -52008,13 +52353,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [33932] = 3, + [34268] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1326), 13, + ACTIONS(1364), 13, + sym__dedent, sym__string_start, sym__template_string_start, - ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -52025,7 +52370,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1324), 34, + ACTIONS(1366), 34, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -52060,10 +52405,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [33987] = 3, + [34323] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1398), 13, + ACTIONS(1384), 13, sym__dedent, sym__string_start, sym__template_string_start, @@ -52077,7 +52422,59 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1396), 34, + ACTIONS(1386), 34, + anon_sym_lazy, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, + anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, + anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_with, + anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, + anon_sym_exec, + anon_sym_type, + anon_sym_class, + anon_sym_not, + anon_sym_lambda, + anon_sym_yield, + sym_integer, + sym_identifier, + anon_sym_await, + sym_true, + sym_false, + sym_none, + [34378] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1428), 13, + sym__string_start, + sym__template_string_start, + ts_builtin_sym_end, + anon_sym_LPAREN, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_TILDE, + sym_ellipsis, + sym_float, + ACTIONS(1430), 34, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -52112,13 +52509,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [34042] = 3, + [34433] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1400), 13, + ACTIONS(1243), 13, + sym__dedent, sym__string_start, sym__template_string_start, - ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -52129,7 +52526,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1402), 34, + ACTIONS(1241), 34, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -52164,13 +52561,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [34097] = 3, + [34488] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(1406), 13, - sym__dedent, sym__string_start, sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -52216,10 +52613,62 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [34152] = 3, + [34543] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1330), 13, + ACTIONS(960), 13, + sym__dedent, + sym__string_start, + sym__template_string_start, + anon_sym_LPAREN, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_TILDE, + sym_ellipsis, + sym_float, + ACTIONS(958), 34, + anon_sym_lazy, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, + anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, + anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_with, + anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, + anon_sym_exec, + anon_sym_type, + anon_sym_class, + anon_sym_not, + anon_sym_lambda, + anon_sym_yield, + sym_integer, + sym_identifier, + anon_sym_await, + sym_true, + sym_false, + sym_none, + [34598] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1243), 13, sym__string_start, sym__template_string_start, ts_builtin_sym_end, @@ -52233,7 +52682,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1328), 34, + ACTIONS(1241), 34, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -52268,13 +52717,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [34207] = 3, + [34653] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(1410), 13, - sym__dedent, sym__string_start, sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -52320,10 +52769,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [34262] = 3, + [34708] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1414), 13, + ACTIONS(1434), 13, sym__dedent, sym__string_start, sym__template_string_start, @@ -52337,7 +52786,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1412), 34, + ACTIONS(1432), 34, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -52372,10 +52821,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [34317] = 3, + [34763] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1418), 13, + ACTIONS(1438), 13, sym__dedent, sym__string_start, sym__template_string_start, @@ -52389,7 +52838,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1416), 34, + ACTIONS(1436), 34, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -52424,13 +52873,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [34372] = 3, + [34818] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1334), 13, + ACTIONS(1313), 13, + sym__dedent, sym__string_start, sym__template_string_start, - ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -52441,7 +52890,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1332), 34, + ACTIONS(1315), 34, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -52476,65 +52925,166 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [34427] = 6, + [34873] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1422), 1, - anon_sym_COMMA, - ACTIONS(1429), 1, - anon_sym_EQ, - ACTIONS(1427), 14, - anon_sym_COLON, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_STAR_EQ, - anon_sym_SLASH_EQ, - anon_sym_AT_EQ, - anon_sym_SLASH_SLASH_EQ, - anon_sym_PERCENT_EQ, - anon_sym_STAR_STAR_EQ, - anon_sym_GT_GT_EQ, - anon_sym_LT_LT_EQ, - anon_sym_AMP_EQ, - anon_sym_CARET_EQ, - anon_sym_PIPE_EQ, - ACTIONS(1425), 15, - anon_sym_STAR, - anon_sym_GT_GT, - anon_sym_PIPE, + ACTIONS(1388), 13, + sym__dedent, + sym__string_start, + sym__template_string_start, + anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_LBRACE, anon_sym_STAR_STAR, anon_sym_AT, - anon_sym_SLASH, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1420), 16, - sym__newline, - anon_sym_DOT, + anon_sym_TILDE, + sym_ellipsis, + sym_float, + ACTIONS(1390), 34, + anon_sym_lazy, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, + anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, + anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_with, + anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, + anon_sym_exec, + anon_sym_type, + anon_sym_class, + anon_sym_not, + anon_sym_lambda, + anon_sym_yield, + sym_integer, + sym_identifier, + anon_sym_await, + sym_true, + sym_false, + sym_none, + [34928] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1317), 13, + sym__dedent, + sym__string_start, + sym__template_string_start, anon_sym_LPAREN, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_TILDE, + sym_ellipsis, + sym_float, + ACTIONS(1319), 34, + anon_sym_lazy, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, + anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, anon_sym_if, - anon_sym_in, + anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_with, + anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, + anon_sym_exec, + anon_sym_type, + anon_sym_class, + anon_sym_not, + anon_sym_lambda, + anon_sym_yield, + sym_integer, + sym_identifier, + anon_sym_await, + sym_true, + sym_false, + sym_none, + [34983] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(960), 13, + sym__string_start, + sym__template_string_start, + ts_builtin_sym_end, + anon_sym_LPAREN, + anon_sym_DASH, + anon_sym_PLUS, anon_sym_LBRACK, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_TILDE, + sym_ellipsis, + sym_float, + ACTIONS(958), 34, + anon_sym_lazy, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, + anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, + anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_with, + anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, + anon_sym_exec, + anon_sym_type, + anon_sym_class, anon_sym_not, - anon_sym_and, - anon_sym_or, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - anon_sym_is, - anon_sym_SEMI, - [34488] = 3, + anon_sym_lambda, + anon_sym_yield, + sym_integer, + sym_identifier, + anon_sym_await, + sym_true, + sym_false, + sym_none, + [35038] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1433), 13, + ACTIONS(1321), 13, sym__dedent, sym__string_start, sym__template_string_start, @@ -52548,7 +53098,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1431), 34, + ACTIONS(1323), 34, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -52583,13 +53133,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [34543] = 3, + [35093] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1437), 13, - sym__dedent, + ACTIONS(1440), 13, sym__string_start, sym__template_string_start, + ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -52600,7 +53150,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1435), 34, + ACTIONS(1442), 34, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -52635,10 +53185,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [34598] = 3, + [35148] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1441), 13, + ACTIONS(1344), 13, sym__dedent, sym__string_start, sym__template_string_start, @@ -52652,7 +53202,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1439), 34, + ACTIONS(1346), 34, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -52687,10 +53237,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [34653] = 3, + [35203] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1445), 13, + ACTIONS(1348), 13, sym__dedent, sym__string_start, sym__template_string_start, @@ -52704,7 +53254,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1443), 34, + ACTIONS(1350), 34, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -52739,10 +53289,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [34708] = 3, + [35258] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1449), 13, + ACTIONS(1360), 13, sym__dedent, sym__string_start, sym__template_string_start, @@ -52756,7 +53306,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1447), 34, + ACTIONS(1362), 34, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -52791,13 +53341,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [34763] = 3, + [35313] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1338), 13, + ACTIONS(1368), 13, + sym__dedent, sym__string_start, sym__template_string_start, - ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -52808,7 +53358,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1336), 34, + ACTIONS(1370), 34, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -52843,10 +53393,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [34818] = 3, + [35368] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1453), 13, + ACTIONS(1376), 13, sym__dedent, sym__string_start, sym__template_string_start, @@ -52860,7 +53410,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1451), 34, + ACTIONS(1378), 34, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -52895,10 +53445,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [34873] = 3, + [35423] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1457), 13, + ACTIONS(1233), 13, sym__dedent, sym__string_start, sym__template_string_start, @@ -52912,7 +53462,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1455), 34, + ACTIONS(1235), 34, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -52947,13 +53497,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [34928] = 3, + [35478] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(944), 13, + ACTIONS(1392), 13, + sym__dedent, sym__string_start, sym__template_string_start, - ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -52964,7 +53514,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(942), 34, + ACTIONS(1394), 34, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -52999,13 +53549,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [34983] = 3, + [35533] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1342), 13, + ACTIONS(1400), 13, + sym__dedent, sym__string_start, sym__template_string_start, - ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -53016,7 +53566,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1340), 34, + ACTIONS(1402), 34, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -53051,13 +53601,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [35038] = 3, + [35588] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1346), 13, + ACTIONS(1416), 13, + sym__dedent, sym__string_start, sym__template_string_start, - ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -53068,7 +53618,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1344), 34, + ACTIONS(1418), 34, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -53103,13 +53653,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [35093] = 3, + [35643] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1198), 13, + ACTIONS(1420), 13, + sym__dedent, sym__string_start, sym__template_string_start, - ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -53120,7 +53670,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1196), 34, + ACTIONS(1422), 34, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -53155,13 +53705,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [35148] = 3, + [35698] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1459), 13, + ACTIONS(1424), 13, + sym__dedent, sym__string_start, sym__template_string_start, - ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -53172,7 +53722,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1461), 34, + ACTIONS(1426), 34, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -53207,68 +53757,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [35203] = 6, + [35753] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1465), 1, - anon_sym_COMMA, - ACTIONS(1472), 1, - anon_sym_EQ, - ACTIONS(1470), 14, - anon_sym_COLON, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_STAR_EQ, - anon_sym_SLASH_EQ, - anon_sym_AT_EQ, - anon_sym_SLASH_SLASH_EQ, - anon_sym_PERCENT_EQ, - anon_sym_STAR_STAR_EQ, - anon_sym_GT_GT_EQ, - anon_sym_LT_LT_EQ, - anon_sym_AMP_EQ, - anon_sym_CARET_EQ, - anon_sym_PIPE_EQ, - ACTIONS(1468), 15, - anon_sym_STAR, - anon_sym_GT_GT, - anon_sym_PIPE, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_SLASH, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1463), 16, - sym__newline, - anon_sym_DOT, - anon_sym_LPAREN, - anon_sym_if, - anon_sym_in, - anon_sym_LBRACK, - anon_sym_not, - anon_sym_and, - anon_sym_or, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - anon_sym_is, - anon_sym_SEMI, - [35264] = 3, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1350), 13, + ACTIONS(1440), 13, + sym__dedent, sym__string_start, sym__template_string_start, - ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -53279,7 +53774,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1348), 34, + ACTIONS(1442), 34, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -53314,13 +53809,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [35319] = 3, + [35808] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1354), 13, + ACTIONS(1446), 13, + sym__dedent, sym__string_start, sym__template_string_start, - ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -53331,7 +53826,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1352), 34, + ACTIONS(1444), 34, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -53366,13 +53861,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [35374] = 3, + [35863] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1474), 13, + ACTIONS(1450), 13, + sym__dedent, sym__string_start, sym__template_string_start, - ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -53383,7 +53878,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1476), 34, + ACTIONS(1448), 34, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -53418,13 +53913,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [35429] = 3, + [35918] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1358), 13, + ACTIONS(1454), 13, + sym__dedent, sym__string_start, sym__template_string_start, - ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -53435,7 +53930,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1356), 34, + ACTIONS(1452), 34, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -53470,10 +53965,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [35484] = 3, + [35973] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1362), 13, + ACTIONS(1446), 13, sym__string_start, sym__template_string_start, ts_builtin_sym_end, @@ -53487,7 +53982,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1360), 34, + ACTIONS(1444), 34, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -53522,13 +54017,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [35539] = 3, + [36028] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1366), 13, + ACTIONS(1458), 13, + sym__dedent, sym__string_start, sym__template_string_start, - ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -53539,7 +54034,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1364), 34, + ACTIONS(1456), 34, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -53574,13 +54069,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [35594] = 3, + [36083] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1282), 13, + ACTIONS(1462), 13, + sym__dedent, sym__string_start, sym__template_string_start, - ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -53591,7 +54086,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1280), 34, + ACTIONS(1460), 34, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -53626,13 +54121,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [35649] = 3, + [36138] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1370), 13, + ACTIONS(1466), 13, + sym__dedent, sym__string_start, sym__template_string_start, - ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -53643,7 +54138,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1368), 34, + ACTIONS(1464), 34, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -53678,13 +54173,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [35704] = 3, + [36193] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1374), 13, + ACTIONS(1470), 13, + sym__dedent, sym__string_start, sym__template_string_start, - ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -53695,7 +54190,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1372), 34, + ACTIONS(1468), 34, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -53730,13 +54225,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [35759] = 3, + [36248] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1378), 13, + ACTIONS(1474), 13, + sym__dedent, sym__string_start, sym__template_string_start, - ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -53747,7 +54242,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1376), 34, + ACTIONS(1472), 34, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -53782,68 +54277,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [35814] = 6, + [36303] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1232), 1, - anon_sym_COMMA, - ACTIONS(1239), 1, - anon_sym_EQ, - ACTIONS(1241), 14, - anon_sym_COLON, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_STAR_EQ, - anon_sym_SLASH_EQ, - anon_sym_AT_EQ, - anon_sym_SLASH_SLASH_EQ, - anon_sym_PERCENT_EQ, - anon_sym_STAR_STAR_EQ, - anon_sym_GT_GT_EQ, - anon_sym_LT_LT_EQ, - anon_sym_AMP_EQ, - anon_sym_CARET_EQ, - anon_sym_PIPE_EQ, - ACTIONS(1235), 15, - anon_sym_STAR, - anon_sym_GT_GT, - anon_sym_PIPE, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_SLASH, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1230), 16, - sym__newline, - anon_sym_DOT, - anon_sym_LPAREN, - anon_sym_if, - anon_sym_in, - anon_sym_LBRACK, - anon_sym_not, - anon_sym_and, - anon_sym_or, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - anon_sym_is, - anon_sym_SEMI, - [35875] = 3, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1382), 13, + ACTIONS(1352), 13, + sym__dedent, sym__string_start, sym__template_string_start, - ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -53854,7 +54294,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1380), 34, + ACTIONS(1354), 34, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -53889,13 +54329,82 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [35930] = 3, + [36358] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(1286), 13, + ACTIONS(293), 1, + anon_sym_LBRACE, + ACTIONS(315), 1, + sym__string_start, + ACTIONS(317), 1, + sym__template_string_start, + ACTIONS(694), 1, + sym_identifier, + ACTIONS(698), 1, + anon_sym_LPAREN, + ACTIONS(706), 1, + anon_sym_LBRACK, + ACTIONS(708), 1, + anon_sym_await, + ACTIONS(1190), 1, + anon_sym_STAR, + STATE(694), 1, + sym_string, + STATE(698), 1, + sym_template_string, + STATE(1002), 1, + sym_pattern, + STATE(1017), 1, + sym_primary_expression, + ACTIONS(309), 2, + sym_ellipsis, + sym_float, + STATE(842), 2, + sym_attribute, + sym_subscript, + ACTIONS(301), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + STATE(1005), 3, + sym_tuple_pattern, + sym_list_pattern, + sym_list_splat_pattern, + ACTIONS(311), 4, + sym_integer, + sym_true, + sym_false, + sym_none, + ACTIONS(696), 6, + anon_sym_lazy, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(720), 15, + sym_binary_operator, + sym_unary_operator, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [36447] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1380), 13, + sym__dedent, sym__string_start, sym__template_string_start, - ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -53906,7 +54415,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1284), 34, + ACTIONS(1382), 34, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -53941,68 +54450,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [35985] = 6, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1260), 1, - anon_sym_EQ, - ACTIONS(1255), 3, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_RBRACK, - ACTIONS(1230), 14, - anon_sym_DOT, - anon_sym_LPAREN, - anon_sym_if, - anon_sym_in, - anon_sym_LBRACK, - anon_sym_not, - anon_sym_and, - anon_sym_or, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - anon_sym_is, - ACTIONS(1262), 14, - anon_sym_COLON, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_STAR_EQ, - anon_sym_SLASH_EQ, - anon_sym_AT_EQ, - anon_sym_SLASH_SLASH_EQ, - anon_sym_PERCENT_EQ, - anon_sym_STAR_STAR_EQ, - anon_sym_GT_GT_EQ, - anon_sym_LT_LT_EQ, - anon_sym_AMP_EQ, - anon_sym_CARET_EQ, - anon_sym_PIPE_EQ, - ACTIONS(1235), 15, - anon_sym_STAR, - anon_sym_GT_GT, - anon_sym_PIPE, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_SLASH, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, - anon_sym_LT, - anon_sym_GT, - [36046] = 3, + [36502] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1386), 13, + ACTIONS(1396), 13, + sym__dedent, sym__string_start, sym__template_string_start, - ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -54013,7 +54467,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1384), 34, + ACTIONS(1398), 34, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -54048,13 +54502,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [36101] = 3, + [36557] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1390), 13, + ACTIONS(1428), 13, + sym__dedent, sym__string_start, sym__template_string_start, - ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -54065,7 +54519,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1388), 34, + ACTIONS(1430), 34, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -54100,79 +54554,62 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [36156] = 20, + [36612] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(293), 1, - anon_sym_LBRACE, - ACTIONS(315), 1, + ACTIONS(1414), 13, sym__string_start, - ACTIONS(317), 1, sym__template_string_start, - ACTIONS(692), 1, - sym_identifier, - ACTIONS(696), 1, + ts_builtin_sym_end, anon_sym_LPAREN, - ACTIONS(704), 1, - anon_sym_LBRACK, - ACTIONS(706), 1, - anon_sym_await, - ACTIONS(1218), 1, - anon_sym_STAR, - STATE(645), 1, - sym_string, - STATE(658), 1, - sym_template_string, - STATE(1013), 1, - sym_primary_expression, - STATE(1495), 1, - sym_pattern, - ACTIONS(309), 2, - sym_ellipsis, - sym_float, - STATE(848), 2, - sym_attribute, - sym_subscript, - ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, anon_sym_TILDE, - STATE(1001), 3, - sym_tuple_pattern, - sym_list_pattern, - sym_list_splat_pattern, - ACTIONS(311), 4, - sym_integer, - sym_true, - sym_false, - sym_none, - ACTIONS(694), 6, + sym_ellipsis, + sym_float, + ACTIONS(1412), 34, anon_sym_lazy, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_with, anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - STATE(725), 15, - sym_binary_operator, - sym_unary_operator, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [36245] = 3, + anon_sym_class, + anon_sym_not, + anon_sym_lambda, + anon_sym_yield, + sym_integer, + sym_identifier, + anon_sym_await, + sym_true, + sym_false, + sym_none, + [36667] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1394), 13, + ACTIONS(1450), 13, sym__string_start, sym__template_string_start, ts_builtin_sym_end, @@ -54186,7 +54623,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1392), 34, + ACTIONS(1448), 34, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -54221,82 +54658,169 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [36300] = 20, + [36722] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(293), 1, - anon_sym_LBRACE, - ACTIONS(315), 1, + ACTIONS(1478), 13, + sym__dedent, sym__string_start, - ACTIONS(317), 1, sym__template_string_start, - ACTIONS(692), 1, - sym_identifier, - ACTIONS(696), 1, anon_sym_LPAREN, - ACTIONS(704), 1, + anon_sym_DASH, + anon_sym_PLUS, anon_sym_LBRACK, - ACTIONS(706), 1, - anon_sym_await, - ACTIONS(1218), 1, - anon_sym_STAR, - STATE(645), 1, - sym_string, - STATE(658), 1, - sym_template_string, - STATE(998), 1, - sym_pattern, - STATE(1013), 1, - sym_primary_expression, - ACTIONS(309), 2, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_TILDE, sym_ellipsis, sym_float, - STATE(848), 2, - sym_attribute, - sym_subscript, - ACTIONS(301), 3, + ACTIONS(1476), 34, + anon_sym_lazy, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, + anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, + anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_with, + anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, + anon_sym_exec, + anon_sym_type, + anon_sym_class, + anon_sym_not, + anon_sym_lambda, + anon_sym_yield, + sym_integer, + sym_identifier, + anon_sym_await, + sym_true, + sym_false, + sym_none, + [36777] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1482), 13, + sym__dedent, + sym__string_start, + sym__template_string_start, + anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, anon_sym_TILDE, - STATE(1001), 3, - sym_tuple_pattern, - sym_list_pattern, - sym_list_splat_pattern, - ACTIONS(311), 4, + sym_ellipsis, + sym_float, + ACTIONS(1480), 34, + anon_sym_lazy, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, + anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, + anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_with, + anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, + anon_sym_exec, + anon_sym_type, + anon_sym_class, + anon_sym_not, + anon_sym_lambda, + anon_sym_yield, sym_integer, + sym_identifier, + anon_sym_await, sym_true, sym_false, sym_none, - ACTIONS(694), 6, + [36832] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1301), 13, + sym__dedent, + sym__string_start, + sym__template_string_start, + anon_sym_LPAREN, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_LBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_TILDE, + sym_ellipsis, + sym_float, + ACTIONS(1303), 34, anon_sym_lazy, + anon_sym_import, + anon_sym_from, + anon_sym_STAR, anon_sym_print, + anon_sym_assert, + anon_sym_return, + anon_sym_del, + anon_sym_raise, + anon_sym_pass, + anon_sym_break, + anon_sym_continue, + anon_sym_if, anon_sym_async, + anon_sym_for, + anon_sym_while, + anon_sym_try, + anon_sym_with, anon_sym_match, + anon_sym_def, + anon_sym_global, + anon_sym_nonlocal, anon_sym_exec, anon_sym_type, - STATE(725), 15, - sym_binary_operator, - sym_unary_operator, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [36389] = 3, + anon_sym_class, + anon_sym_not, + anon_sym_lambda, + anon_sym_yield, + sym_integer, + sym_identifier, + anon_sym_await, + sym_true, + sym_false, + sym_none, + [36887] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1278), 13, + ACTIONS(1305), 13, + sym__dedent, sym__string_start, sym__template_string_start, - ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -54307,7 +54831,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1276), 34, + ACTIONS(1307), 34, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -54342,13 +54866,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [36444] = 3, + [36942] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1398), 13, + ACTIONS(1309), 13, + sym__dedent, sym__string_start, sym__template_string_start, - ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -54359,7 +54883,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1396), 34, + ACTIONS(1311), 34, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -54394,10 +54918,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [36499] = 3, + [36997] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1406), 13, + ACTIONS(1454), 13, sym__string_start, sym__template_string_start, ts_builtin_sym_end, @@ -54411,7 +54935,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1404), 34, + ACTIONS(1452), 34, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -54446,10 +54970,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [36554] = 3, + [37052] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1410), 13, + ACTIONS(1470), 13, sym__string_start, sym__template_string_start, ts_builtin_sym_end, @@ -54463,7 +54987,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1408), 34, + ACTIONS(1468), 34, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -54498,13 +55022,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [36609] = 3, + [37107] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1414), 13, + ACTIONS(1325), 13, + sym__dedent, sym__string_start, sym__template_string_start, - ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -54515,7 +55039,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1412), 34, + ACTIONS(1327), 34, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -54550,13 +55074,13 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [36664] = 3, + [37162] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1418), 13, + ACTIONS(1329), 13, + sym__dedent, sym__string_start, sym__template_string_start, - ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_DASH, anon_sym_PLUS, @@ -54567,7 +55091,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1416), 34, + ACTIONS(1331), 34, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -54602,10 +55126,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [36719] = 3, + [37217] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1433), 13, + ACTIONS(1434), 13, sym__string_start, sym__template_string_start, ts_builtin_sym_end, @@ -54619,7 +55143,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1431), 34, + ACTIONS(1432), 34, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -54654,10 +55178,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [36774] = 3, + [37272] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1437), 13, + ACTIONS(1374), 13, sym__string_start, sym__template_string_start, ts_builtin_sym_end, @@ -54671,7 +55195,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1435), 34, + ACTIONS(1372), 34, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -54706,10 +55230,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [36829] = 3, + [37327] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1298), 13, + ACTIONS(1478), 13, sym__string_start, sym__template_string_start, ts_builtin_sym_end, @@ -54723,7 +55247,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1296), 34, + ACTIONS(1476), 34, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -54758,10 +55282,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [36884] = 3, + [37382] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1441), 13, + ACTIONS(1482), 13, sym__string_start, sym__template_string_start, ts_builtin_sym_end, @@ -54775,7 +55299,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1439), 34, + ACTIONS(1480), 34, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -54810,10 +55334,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [36939] = 3, + [37437] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1445), 13, + ACTIONS(1288), 13, sym__string_start, sym__template_string_start, ts_builtin_sym_end, @@ -54827,7 +55351,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1443), 34, + ACTIONS(1286), 34, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -54862,10 +55386,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [36994] = 3, + [37492] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1449), 13, + ACTIONS(1458), 13, sym__string_start, sym__template_string_start, ts_builtin_sym_end, @@ -54879,7 +55403,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1447), 34, + ACTIONS(1456), 34, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -54914,10 +55438,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [37049] = 3, + [37547] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1306), 13, + ACTIONS(1462), 13, sym__string_start, sym__template_string_start, ts_builtin_sym_end, @@ -54931,7 +55455,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1304), 34, + ACTIONS(1460), 34, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -54966,10 +55490,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [37104] = 3, + [37602] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1453), 13, + ACTIONS(1484), 13, sym__string_start, sym__template_string_start, ts_builtin_sym_end, @@ -54983,7 +55507,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1451), 34, + ACTIONS(1486), 34, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -55018,10 +55542,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [37159] = 3, + [37657] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1457), 13, + ACTIONS(1474), 13, sym__string_start, sym__template_string_start, ts_builtin_sym_end, @@ -55035,7 +55559,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1455), 34, + ACTIONS(1472), 34, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -55070,10 +55594,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [37214] = 3, + [37712] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1310), 13, + ACTIONS(1466), 13, sym__string_start, sym__template_string_start, ts_builtin_sym_end, @@ -55087,7 +55611,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1308), 34, + ACTIONS(1464), 34, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -55122,114 +55646,65 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [37269] = 3, + [37767] = 6, ACTIONS(3), 1, sym_comment, - ACTIONS(1220), 13, - sym__string_start, - sym__template_string_start, - ts_builtin_sym_end, - anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, - sym_ellipsis, - sym_float, - ACTIONS(1222), 34, - anon_sym_lazy, - anon_sym_import, - anon_sym_from, + ACTIONS(1265), 1, + anon_sym_COMMA, + ACTIONS(1270), 1, + anon_sym_EQ, + ACTIONS(1272), 14, + anon_sym_COLON, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_AT_EQ, + anon_sym_SLASH_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_STAR_STAR_EQ, + anon_sym_GT_GT_EQ, + anon_sym_LT_LT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + ACTIONS(1209), 15, anon_sym_STAR, - anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, - anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_with, - anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, - anon_sym_exec, - anon_sym_type, - anon_sym_class, - anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, - anon_sym_await, - sym_true, - sym_false, - sym_none, - [37324] = 3, - ACTIONS(3), 1, - sym_comment, - ACTIONS(980), 13, - sym__string_start, - sym__template_string_start, - ts_builtin_sym_end, - anon_sym_LPAREN, + anon_sym_GT_GT, + anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_LBRACE, anon_sym_STAR_STAR, anon_sym_AT, - anon_sym_TILDE, - sym_ellipsis, - sym_float, - ACTIONS(982), 34, - anon_sym_lazy, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, - anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, + anon_sym_SLASH, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1204), 16, + sym__newline, + anon_sym_DOT, + anon_sym_LPAREN, anon_sym_if, - anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_with, - anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, - anon_sym_exec, - anon_sym_type, - anon_sym_class, + anon_sym_in, + anon_sym_LBRACK, anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, - anon_sym_await, - sym_true, - sym_false, - sym_none, - [37379] = 3, + anon_sym_and, + anon_sym_or, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + anon_sym_SEMI, + [37828] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1314), 13, + ACTIONS(1438), 13, sym__string_start, sym__template_string_start, ts_builtin_sym_end, @@ -55243,7 +55718,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1312), 34, + ACTIONS(1436), 34, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -55278,10 +55753,10 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [37434] = 3, + [37883] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1400), 13, + ACTIONS(1484), 13, sym__dedent, sym__string_start, sym__template_string_start, @@ -55295,7 +55770,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_TILDE, sym_ellipsis, sym_float, - ACTIONS(1402), 34, + ACTIONS(1486), 34, anon_sym_lazy, anon_sym_import, anon_sym_from, @@ -55330,215 +55805,117 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - [37489] = 3, + [37938] = 7, ACTIONS(3), 1, sym_comment, - ACTIONS(944), 13, - sym__dedent, - sym__string_start, - sym__template_string_start, + ACTIONS(1206), 1, + anon_sym_COMMA, + ACTIONS(1488), 1, + anon_sym_COLON_EQ, + ACTIONS(1213), 2, + anon_sym_COLON, + anon_sym_EQ, + ACTIONS(1211), 13, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_AT_EQ, + anon_sym_SLASH_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_STAR_STAR_EQ, + anon_sym_GT_GT_EQ, + anon_sym_LT_LT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + ACTIONS(1204), 14, + anon_sym_DOT, anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, - sym_ellipsis, - sym_float, - ACTIONS(942), 34, - anon_sym_lazy, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, - anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, anon_sym_if, - anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_with, - anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, - anon_sym_exec, - anon_sym_type, - anon_sym_class, + anon_sym_in, + anon_sym_LBRACK, anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, - anon_sym_await, - sym_true, - sym_false, - sym_none, - [37544] = 3, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1474), 13, - sym__dedent, - sym__string_start, - sym__template_string_start, - anon_sym_LPAREN, + anon_sym_and, + anon_sym_or, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + ACTIONS(1209), 15, + anon_sym_STAR, + anon_sym_GT_GT, + anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_LBRACE, anon_sym_STAR_STAR, anon_sym_AT, - anon_sym_TILDE, - sym_ellipsis, - sym_float, - ACTIONS(1476), 34, - anon_sym_lazy, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, - anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, - anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_with, - anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, - anon_sym_exec, - anon_sym_type, - anon_sym_class, - anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, - anon_sym_await, - sym_true, - sym_false, - sym_none, - [37599] = 3, + anon_sym_SLASH, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT, + anon_sym_GT, + [38000] = 7, ACTIONS(3), 1, sym_comment, - ACTIONS(1318), 13, - sym__string_start, - sym__template_string_start, - ts_builtin_sym_end, + ACTIONS(587), 1, + anon_sym_COMMA, + ACTIONS(590), 1, + anon_sym_COLON_EQ, + ACTIONS(592), 2, + anon_sym_COLON, + anon_sym_EQ, + ACTIONS(598), 13, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_AT_EQ, + anon_sym_SLASH_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_STAR_STAR_EQ, + anon_sym_GT_GT_EQ, + anon_sym_LT_LT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + ACTIONS(303), 14, + anon_sym_DOT, anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_LBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_TILDE, - sym_ellipsis, - sym_float, - ACTIONS(1316), 34, - anon_sym_lazy, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, - anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, anon_sym_if, - anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_with, - anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, - anon_sym_exec, - anon_sym_type, - anon_sym_class, + anon_sym_in, + anon_sym_LBRACK, anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, - anon_sym_await, - sym_true, - sym_false, - sym_none, - [37654] = 3, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1459), 13, - sym__dedent, - sym__string_start, - sym__template_string_start, - anon_sym_LPAREN, + anon_sym_and, + anon_sym_or, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + ACTIONS(272), 15, + anon_sym_STAR, + anon_sym_GT_GT, + anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_LBRACE, anon_sym_STAR_STAR, anon_sym_AT, - anon_sym_TILDE, - sym_ellipsis, - sym_float, - ACTIONS(1461), 34, - anon_sym_lazy, - anon_sym_import, - anon_sym_from, - anon_sym_STAR, - anon_sym_print, - anon_sym_assert, - anon_sym_return, - anon_sym_del, - anon_sym_raise, - anon_sym_pass, - anon_sym_break, - anon_sym_continue, - anon_sym_if, - anon_sym_async, - anon_sym_for, - anon_sym_while, - anon_sym_try, - anon_sym_with, - anon_sym_match, - anon_sym_def, - anon_sym_global, - anon_sym_nonlocal, - anon_sym_exec, - anon_sym_type, - anon_sym_class, - anon_sym_not, - anon_sym_lambda, - anon_sym_yield, - sym_integer, - sym_identifier, - anon_sym_await, - sym_true, - sym_false, - sym_none, - [37709] = 18, + anon_sym_SLASH, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT, + anon_sym_GT, + [38062] = 18, ACTIONS(3), 1, sym_comment, ACTIONS(293), 1, @@ -55547,31 +55924,31 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(317), 1, sym__template_string_start, - ACTIONS(575), 1, + ACTIONS(585), 1, anon_sym_LPAREN, - ACTIONS(586), 1, + ACTIONS(596), 1, anon_sym_LBRACK, - ACTIONS(1478), 1, + ACTIONS(1490), 1, sym_identifier, - ACTIONS(1484), 1, + ACTIONS(1496), 1, anon_sym_await, - STATE(645), 1, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(1013), 1, + STATE(1017), 1, sym_primary_expression, ACTIONS(309), 2, sym_ellipsis, sym_float, - STATE(859), 2, + STATE(860), 2, sym_attribute, sym_subscript, ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(1482), 3, + ACTIONS(1494), 3, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_COLON, @@ -55580,14 +55957,14 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - ACTIONS(1480), 6, + ACTIONS(1492), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(725), 15, + STATE(720), 15, sym_binary_operator, sym_unary_operator, sym_call, @@ -55603,50 +55980,50 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [37792] = 16, + [38145] = 16, ACTIONS(3), 1, sym_comment, - ACTIONS(640), 1, - anon_sym_LPAREN, - ACTIONS(646), 1, - anon_sym_LBRACK, - ACTIONS(648), 1, + ACTIONS(53), 1, anon_sym_LBRACE, - ACTIONS(652), 1, - anon_sym_await, - ACTIONS(654), 1, + ACTIONS(83), 1, sym__string_start, - ACTIONS(656), 1, + ACTIONS(85), 1, sym__template_string_start, - ACTIONS(1486), 1, + ACTIONS(575), 1, + anon_sym_LPAREN, + ACTIONS(579), 1, + anon_sym_LBRACK, + ACTIONS(581), 1, + anon_sym_await, + ACTIONS(1498), 1, anon_sym_not, - STATE(793), 1, - sym_string, - STATE(794), 1, + STATE(772), 1, sym_template_string, - STATE(838), 1, + STATE(779), 1, + sym_string, + STATE(798), 1, sym_primary_expression, - ACTIONS(650), 2, + ACTIONS(77), 2, sym_ellipsis, sym_float, - ACTIONS(644), 3, + ACTIONS(49), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(636), 5, + ACTIONS(79), 5, sym_integer, sym_identifier, sym_true, sym_false, sym_none, - ACTIONS(638), 6, + ACTIONS(573), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(970), 17, + STATE(950), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -55664,50 +56041,50 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [37869] = 16, + [38222] = 16, ACTIONS(3), 1, sym_comment, - ACTIONS(616), 1, - anon_sym_LPAREN, - ACTIONS(622), 1, - anon_sym_LBRACK, - ACTIONS(624), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(628), 1, - anon_sym_await, - ACTIONS(630), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(632), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(1488), 1, + ACTIONS(636), 1, + anon_sym_LPAREN, + ACTIONS(642), 1, + anon_sym_LBRACK, + ACTIONS(644), 1, + anon_sym_await, + ACTIONS(1500), 1, anon_sym_not, - STATE(766), 1, + STATE(694), 1, sym_string, - STATE(776), 1, + STATE(698), 1, sym_template_string, - STATE(809), 1, + STATE(821), 1, sym_primary_expression, - ACTIONS(626), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(620), 3, + ACTIONS(640), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(612), 5, + ACTIONS(311), 5, sym_integer, sym_identifier, sym_true, sym_false, sym_none, - ACTIONS(614), 6, + ACTIONS(583), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(878), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -55725,50 +56102,50 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [37946] = 16, + [38299] = 16, ACTIONS(3), 1, sym_comment, - ACTIONS(53), 1, - anon_sym_LBRACE, - ACTIONS(83), 1, - sym__string_start, - ACTIONS(85), 1, - sym__template_string_start, - ACTIONS(594), 1, + ACTIONS(616), 1, anon_sym_LPAREN, - ACTIONS(598), 1, + ACTIONS(622), 1, anon_sym_LBRACK, - ACTIONS(600), 1, + ACTIONS(624), 1, + anon_sym_LBRACE, + ACTIONS(628), 1, anon_sym_await, - ACTIONS(1490), 1, + ACTIONS(630), 1, + sym__string_start, + ACTIONS(632), 1, + sym__template_string_start, + ACTIONS(1502), 1, anon_sym_not, - STATE(769), 1, - sym_template_string, - STATE(775), 1, + STATE(781), 1, sym_string, - STATE(818), 1, + STATE(782), 1, + sym_template_string, + STATE(810), 1, sym_primary_expression, - ACTIONS(77), 2, + ACTIONS(626), 2, sym_ellipsis, sym_float, - ACTIONS(49), 3, + ACTIONS(620), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(79), 5, + ACTIONS(612), 5, sym_integer, sym_identifier, sym_true, sym_false, sym_none, - ACTIONS(592), 6, + ACTIONS(614), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(920), 17, + STATE(949), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -55786,50 +56163,50 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [38023] = 16, + [38376] = 16, ACTIONS(3), 1, sym_comment, - ACTIONS(293), 1, - anon_sym_LBRACE, - ACTIONS(315), 1, - sym__string_start, - ACTIONS(317), 1, - sym__template_string_start, - ACTIONS(575), 1, + ACTIONS(650), 1, anon_sym_LPAREN, - ACTIONS(586), 1, + ACTIONS(656), 1, anon_sym_LBRACK, - ACTIONS(590), 1, + ACTIONS(658), 1, + anon_sym_LBRACE, + ACTIONS(662), 1, anon_sym_await, - ACTIONS(1492), 1, + ACTIONS(664), 1, + sym__string_start, + ACTIONS(666), 1, + sym__template_string_start, + ACTIONS(1504), 1, anon_sym_not, - STATE(645), 1, + STATE(790), 1, sym_string, - STATE(658), 1, + STATE(791), 1, sym_template_string, - STATE(758), 1, + STATE(856), 1, sym_primary_expression, - ACTIONS(309), 2, + ACTIONS(660), 2, sym_ellipsis, sym_float, - ACTIONS(301), 3, + ACTIONS(654), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(311), 5, + ACTIONS(646), 5, sym_integer, sym_identifier, sym_true, sym_false, sym_none, - ACTIONS(573), 6, + ACTIONS(648), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(725), 17, + STATE(985), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -55847,7 +56224,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [38100] = 16, + [38453] = 16, ACTIONS(3), 1, sym_comment, ACTIONS(293), 1, @@ -55862,13 +56239,13 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LBRACK, ACTIONS(610), 1, anon_sym_await, - ACTIONS(1494), 1, + ACTIONS(1506), 1, anon_sym_not, - STATE(645), 1, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(748), 1, + STATE(764), 1, sym_primary_expression, ACTIONS(309), 2, sym_ellipsis, @@ -55883,14 +56260,14 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - ACTIONS(573), 6, + ACTIONS(583), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(725), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -55908,7 +56285,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [38177] = 16, + [38530] = 16, ACTIONS(3), 1, sym_comment, ACTIONS(293), 1, @@ -55917,24 +56294,24 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(317), 1, sym__template_string_start, - ACTIONS(658), 1, + ACTIONS(585), 1, anon_sym_LPAREN, - ACTIONS(664), 1, + ACTIONS(596), 1, anon_sym_LBRACK, - ACTIONS(666), 1, + ACTIONS(600), 1, anon_sym_await, - ACTIONS(1496), 1, + ACTIONS(1508), 1, anon_sym_not, - STATE(645), 1, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(805), 1, + STATE(757), 1, sym_primary_expression, ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(662), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, @@ -55944,14 +56321,14 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - ACTIONS(573), 6, + ACTIONS(583), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(725), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -55969,48 +56346,48 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [38254] = 15, + [38607] = 15, ACTIONS(3), 1, sym_comment, - ACTIONS(53), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(83), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(85), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(594), 1, + ACTIONS(602), 1, anon_sym_LPAREN, - ACTIONS(598), 1, + ACTIONS(608), 1, anon_sym_LBRACK, - ACTIONS(600), 1, + ACTIONS(610), 1, anon_sym_await, - STATE(769), 1, - sym_template_string, - STATE(775), 1, + STATE(694), 1, sym_string, - STATE(824), 1, + STATE(698), 1, + sym_template_string, + STATE(745), 1, sym_primary_expression, - ACTIONS(77), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(49), 3, + ACTIONS(606), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(79), 5, + ACTIONS(311), 5, sym_integer, sym_identifier, sym_true, sym_false, sym_none, - ACTIONS(592), 6, + ACTIONS(583), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(920), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -56028,107 +56405,97 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [38328] = 15, + [38681] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(616), 1, - anon_sym_LPAREN, - ACTIONS(622), 1, - anon_sym_LBRACK, - ACTIONS(624), 1, - anon_sym_LBRACE, - ACTIONS(628), 1, - anon_sym_await, - ACTIONS(630), 1, - sym__string_start, - ACTIONS(632), 1, + ACTIONS(1514), 1, sym__template_string_start, - STATE(766), 1, - sym_string, - STATE(776), 1, + STATE(627), 2, sym_template_string, - STATE(819), 1, - sym_primary_expression, - ACTIONS(626), 2, - sym_ellipsis, - sym_float, - ACTIONS(620), 3, + aux_sym_concatenated_template_string_repeat1, + ACTIONS(1512), 6, + anon_sym_as, + anon_sym_STAR, + anon_sym_EQ, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1510), 33, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_COLON, + anon_sym_else, + anon_sym_async, + anon_sym_for, + anon_sym_in, + anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, - anon_sym_TILDE, - ACTIONS(612), 5, - sym_integer, - sym_identifier, - sym_true, - sym_false, - sym_none, - ACTIONS(614), 6, - anon_sym_lazy, - anon_sym_print, - anon_sym_async, - anon_sym_match, - anon_sym_exec, - anon_sym_type, - STATE(878), 17, - sym_binary_operator, - sym_unary_operator, - sym_attribute, - sym_subscript, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [38402] = 15, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [38735] = 15, ACTIONS(3), 1, sym_comment, - ACTIONS(616), 1, + ACTIONS(650), 1, anon_sym_LPAREN, - ACTIONS(622), 1, + ACTIONS(656), 1, anon_sym_LBRACK, - ACTIONS(624), 1, + ACTIONS(658), 1, anon_sym_LBRACE, - ACTIONS(628), 1, + ACTIONS(662), 1, anon_sym_await, - ACTIONS(630), 1, + ACTIONS(664), 1, sym__string_start, - ACTIONS(632), 1, + ACTIONS(666), 1, sym__template_string_start, - STATE(766), 1, + STATE(790), 1, sym_string, - STATE(776), 1, + STATE(791), 1, sym_template_string, - STATE(820), 1, + STATE(833), 1, sym_primary_expression, - ACTIONS(626), 2, + ACTIONS(660), 2, sym_ellipsis, sym_float, - ACTIONS(620), 3, + ACTIONS(654), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(612), 5, + ACTIONS(646), 5, sym_integer, sym_identifier, sym_true, sym_false, sym_none, - ACTIONS(614), 6, + ACTIONS(648), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(878), 17, + STATE(985), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -56146,48 +56513,48 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [38476] = 15, + [38809] = 15, ACTIONS(3), 1, sym_comment, - ACTIONS(640), 1, + ACTIONS(650), 1, anon_sym_LPAREN, - ACTIONS(646), 1, + ACTIONS(656), 1, anon_sym_LBRACK, - ACTIONS(648), 1, + ACTIONS(658), 1, anon_sym_LBRACE, - ACTIONS(652), 1, + ACTIONS(662), 1, anon_sym_await, - ACTIONS(654), 1, + ACTIONS(664), 1, sym__string_start, - ACTIONS(656), 1, + ACTIONS(666), 1, sym__template_string_start, - STATE(793), 1, + STATE(790), 1, sym_string, - STATE(794), 1, + STATE(791), 1, sym_template_string, - STATE(856), 1, + STATE(864), 1, sym_primary_expression, - ACTIONS(650), 2, + ACTIONS(660), 2, sym_ellipsis, sym_float, - ACTIONS(644), 3, + ACTIONS(654), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(636), 5, + ACTIONS(646), 5, sym_integer, sym_identifier, sym_true, sym_false, sym_none, - ACTIONS(638), 6, + ACTIONS(648), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(970), 17, + STATE(985), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -56205,7 +56572,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [38550] = 15, + [38883] = 15, ACTIONS(3), 1, sym_comment, ACTIONS(616), 1, @@ -56220,11 +56587,11 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(632), 1, sym__template_string_start, - STATE(766), 1, + STATE(781), 1, sym_string, - STATE(776), 1, + STATE(782), 1, sym_template_string, - STATE(804), 1, + STATE(813), 1, sym_primary_expression, ACTIONS(626), 2, sym_ellipsis, @@ -56246,7 +56613,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(878), 17, + STATE(949), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -56264,48 +56631,48 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [38624] = 15, + [38957] = 15, ACTIONS(3), 1, sym_comment, - ACTIONS(616), 1, + ACTIONS(650), 1, anon_sym_LPAREN, - ACTIONS(622), 1, + ACTIONS(656), 1, anon_sym_LBRACK, - ACTIONS(624), 1, + ACTIONS(658), 1, anon_sym_LBRACE, - ACTIONS(628), 1, + ACTIONS(662), 1, anon_sym_await, - ACTIONS(630), 1, + ACTIONS(664), 1, sym__string_start, - ACTIONS(632), 1, + ACTIONS(666), 1, sym__template_string_start, - STATE(766), 1, + STATE(790), 1, sym_string, - STATE(776), 1, + STATE(791), 1, sym_template_string, - STATE(822), 1, + STATE(863), 1, sym_primary_expression, - ACTIONS(626), 2, + ACTIONS(660), 2, sym_ellipsis, sym_float, - ACTIONS(620), 3, + ACTIONS(654), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(612), 5, + ACTIONS(646), 5, sym_integer, sym_identifier, sym_true, sym_false, sym_none, - ACTIONS(614), 6, + ACTIONS(648), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(878), 17, + STATE(985), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -56323,52 +56690,54 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [38698] = 15, + [39031] = 17, ACTIONS(3), 1, sym_comment, - ACTIONS(616), 1, - anon_sym_LPAREN, - ACTIONS(622), 1, - anon_sym_LBRACK, - ACTIONS(624), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(628), 1, - anon_sym_await, - ACTIONS(630), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(632), 1, + ACTIONS(317), 1, sym__template_string_start, - STATE(766), 1, + ACTIONS(585), 1, + anon_sym_LPAREN, + ACTIONS(596), 1, + anon_sym_LBRACK, + ACTIONS(1490), 1, + sym_identifier, + ACTIONS(1496), 1, + anon_sym_await, + STATE(694), 1, sym_string, - STATE(776), 1, + STATE(698), 1, sym_template_string, - STATE(801), 1, + STATE(1017), 1, sym_primary_expression, - ACTIONS(626), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(620), 3, + STATE(860), 2, + sym_attribute, + sym_subscript, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(612), 5, + ACTIONS(311), 4, sym_integer, - sym_identifier, sym_true, sym_false, sym_none, - ACTIONS(614), 6, + ACTIONS(1492), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(878), 17, + STATE(720), 15, sym_binary_operator, sym_unary_operator, - sym_attribute, - sym_subscript, sym_call, sym_list, sym_set, @@ -56382,48 +56751,48 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [38772] = 15, + [39109] = 15, ACTIONS(3), 1, sym_comment, - ACTIONS(293), 1, - anon_sym_LBRACE, - ACTIONS(315), 1, - sym__string_start, - ACTIONS(317), 1, - sym__template_string_start, - ACTIONS(602), 1, + ACTIONS(650), 1, anon_sym_LPAREN, - ACTIONS(608), 1, + ACTIONS(656), 1, anon_sym_LBRACK, - ACTIONS(610), 1, + ACTIONS(658), 1, + anon_sym_LBRACE, + ACTIONS(662), 1, anon_sym_await, - STATE(645), 1, + ACTIONS(664), 1, + sym__string_start, + ACTIONS(666), 1, + sym__template_string_start, + STATE(790), 1, sym_string, - STATE(658), 1, + STATE(791), 1, sym_template_string, - STATE(737), 1, + STATE(868), 1, sym_primary_expression, - ACTIONS(309), 2, + ACTIONS(660), 2, sym_ellipsis, sym_float, - ACTIONS(606), 3, + ACTIONS(654), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(311), 5, + ACTIONS(646), 5, sym_integer, sym_identifier, sym_true, sym_false, sym_none, - ACTIONS(573), 6, + ACTIONS(648), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(725), 17, + STATE(985), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -56441,7 +56810,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [38846] = 15, + [39183] = 15, ACTIONS(3), 1, sym_comment, ACTIONS(53), 1, @@ -56450,17 +56819,17 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(85), 1, sym__template_string_start, - ACTIONS(594), 1, + ACTIONS(575), 1, anon_sym_LPAREN, - ACTIONS(598), 1, + ACTIONS(579), 1, anon_sym_LBRACK, - ACTIONS(600), 1, + ACTIONS(581), 1, anon_sym_await, - STATE(769), 1, + STATE(772), 1, sym_template_string, - STATE(775), 1, + STATE(779), 1, sym_string, - STATE(821), 1, + STATE(797), 1, sym_primary_expression, ACTIONS(77), 2, sym_ellipsis, @@ -56475,14 +56844,14 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - ACTIONS(592), 6, + ACTIONS(573), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(920), 17, + STATE(950), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -56500,48 +56869,48 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [38920] = 15, + [39257] = 15, ACTIONS(3), 1, sym_comment, - ACTIONS(616), 1, + ACTIONS(650), 1, anon_sym_LPAREN, - ACTIONS(622), 1, + ACTIONS(656), 1, anon_sym_LBRACK, - ACTIONS(624), 1, + ACTIONS(658), 1, anon_sym_LBRACE, - ACTIONS(628), 1, + ACTIONS(662), 1, anon_sym_await, - ACTIONS(630), 1, + ACTIONS(664), 1, sym__string_start, - ACTIONS(632), 1, + ACTIONS(666), 1, sym__template_string_start, - STATE(766), 1, + STATE(790), 1, sym_string, - STATE(776), 1, + STATE(791), 1, sym_template_string, - STATE(802), 1, + STATE(865), 1, sym_primary_expression, - ACTIONS(626), 2, + ACTIONS(660), 2, sym_ellipsis, sym_float, - ACTIONS(620), 3, + ACTIONS(654), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(612), 5, + ACTIONS(646), 5, sym_integer, sym_identifier, sym_true, sym_false, sym_none, - ACTIONS(614), 6, + ACTIONS(648), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(878), 17, + STATE(985), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -56559,54 +56928,52 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [38994] = 17, + [39331] = 15, ACTIONS(3), 1, sym_comment, - ACTIONS(293), 1, - anon_sym_LBRACE, - ACTIONS(315), 1, - sym__string_start, - ACTIONS(317), 1, - sym__template_string_start, - ACTIONS(575), 1, + ACTIONS(616), 1, anon_sym_LPAREN, - ACTIONS(586), 1, + ACTIONS(622), 1, anon_sym_LBRACK, - ACTIONS(1498), 1, - sym_identifier, - ACTIONS(1502), 1, + ACTIONS(624), 1, + anon_sym_LBRACE, + ACTIONS(628), 1, anon_sym_await, - STATE(645), 1, + ACTIONS(630), 1, + sym__string_start, + ACTIONS(632), 1, + sym__template_string_start, + STATE(781), 1, sym_string, - STATE(658), 1, + STATE(782), 1, sym_template_string, - STATE(1013), 1, + STATE(814), 1, sym_primary_expression, - ACTIONS(309), 2, + ACTIONS(626), 2, sym_ellipsis, sym_float, - STATE(1004), 2, - sym_attribute, - sym_subscript, - ACTIONS(301), 3, + ACTIONS(620), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(311), 4, + ACTIONS(612), 5, sym_integer, + sym_identifier, sym_true, sym_false, sym_none, - ACTIONS(1500), 6, + ACTIONS(614), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(725), 15, + STATE(949), 17, sym_binary_operator, sym_unary_operator, + sym_attribute, + sym_subscript, sym_call, sym_list, sym_set, @@ -56620,7 +56987,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [39072] = 15, + [39405] = 15, ACTIONS(3), 1, sym_comment, ACTIONS(53), 1, @@ -56629,17 +56996,17 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(85), 1, sym__template_string_start, - ACTIONS(594), 1, + ACTIONS(575), 1, anon_sym_LPAREN, - ACTIONS(598), 1, + ACTIONS(579), 1, anon_sym_LBRACK, - ACTIONS(600), 1, + ACTIONS(581), 1, anon_sym_await, - STATE(769), 1, + STATE(772), 1, sym_template_string, - STATE(775), 1, + STATE(779), 1, sym_string, - STATE(790), 1, + STATE(798), 1, sym_primary_expression, ACTIONS(77), 2, sym_ellipsis, @@ -56654,14 +57021,14 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - ACTIONS(592), 6, + ACTIONS(573), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(920), 17, + STATE(950), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -56679,48 +57046,48 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [39146] = 15, + [39479] = 15, ACTIONS(3), 1, sym_comment, - ACTIONS(53), 1, - anon_sym_LBRACE, - ACTIONS(83), 1, - sym__string_start, - ACTIONS(85), 1, - sym__template_string_start, - ACTIONS(594), 1, + ACTIONS(616), 1, anon_sym_LPAREN, - ACTIONS(598), 1, + ACTIONS(622), 1, anon_sym_LBRACK, - ACTIONS(600), 1, + ACTIONS(624), 1, + anon_sym_LBRACE, + ACTIONS(628), 1, anon_sym_await, - STATE(769), 1, - sym_template_string, - STATE(775), 1, + ACTIONS(630), 1, + sym__string_start, + ACTIONS(632), 1, + sym__template_string_start, + STATE(781), 1, sym_string, - STATE(789), 1, + STATE(782), 1, + sym_template_string, + STATE(815), 1, sym_primary_expression, - ACTIONS(77), 2, + ACTIONS(626), 2, sym_ellipsis, sym_float, - ACTIONS(49), 3, + ACTIONS(620), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(79), 5, + ACTIONS(612), 5, sym_integer, sym_identifier, sym_true, sym_false, sym_none, - ACTIONS(592), 6, + ACTIONS(614), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(920), 17, + STATE(949), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -56738,52 +57105,54 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [39220] = 15, + [39553] = 17, ACTIONS(3), 1, sym_comment, - ACTIONS(53), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(83), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(85), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(594), 1, + ACTIONS(585), 1, anon_sym_LPAREN, - ACTIONS(598), 1, + ACTIONS(596), 1, anon_sym_LBRACK, - ACTIONS(600), 1, + ACTIONS(1517), 1, + sym_identifier, + ACTIONS(1521), 1, anon_sym_await, - STATE(769), 1, - sym_template_string, - STATE(775), 1, + STATE(694), 1, sym_string, - STATE(791), 1, + STATE(698), 1, + sym_template_string, + STATE(1017), 1, sym_primary_expression, - ACTIONS(77), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(49), 3, + STATE(1013), 2, + sym_attribute, + sym_subscript, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(79), 5, + ACTIONS(311), 4, sym_integer, - sym_identifier, sym_true, sym_false, sym_none, - ACTIONS(592), 6, + ACTIONS(1519), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(920), 17, + STATE(720), 15, sym_binary_operator, sym_unary_operator, - sym_attribute, - sym_subscript, sym_call, sym_list, sym_set, @@ -56797,54 +57166,52 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [39294] = 17, + [39631] = 15, ACTIONS(3), 1, sym_comment, - ACTIONS(293), 1, + ACTIONS(53), 1, anon_sym_LBRACE, - ACTIONS(315), 1, + ACTIONS(83), 1, sym__string_start, - ACTIONS(317), 1, + ACTIONS(85), 1, sym__template_string_start, ACTIONS(575), 1, anon_sym_LPAREN, - ACTIONS(586), 1, + ACTIONS(579), 1, anon_sym_LBRACK, - ACTIONS(1478), 1, - sym_identifier, - ACTIONS(1484), 1, + ACTIONS(581), 1, anon_sym_await, - STATE(645), 1, - sym_string, - STATE(658), 1, + STATE(772), 1, sym_template_string, - STATE(1013), 1, + STATE(779), 1, + sym_string, + STATE(801), 1, sym_primary_expression, - ACTIONS(309), 2, + ACTIONS(77), 2, sym_ellipsis, sym_float, - STATE(859), 2, - sym_attribute, - sym_subscript, - ACTIONS(301), 3, + ACTIONS(49), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(311), 4, + ACTIONS(79), 5, sym_integer, + sym_identifier, sym_true, sym_false, sym_none, - ACTIONS(1480), 6, + ACTIONS(573), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(725), 15, + STATE(950), 17, sym_binary_operator, sym_unary_operator, + sym_attribute, + sym_subscript, sym_call, sym_list, sym_set, @@ -56858,48 +57225,48 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [39372] = 15, + [39705] = 15, ACTIONS(3), 1, sym_comment, - ACTIONS(640), 1, + ACTIONS(650), 1, anon_sym_LPAREN, - ACTIONS(646), 1, + ACTIONS(656), 1, anon_sym_LBRACK, - ACTIONS(648), 1, + ACTIONS(658), 1, anon_sym_LBRACE, - ACTIONS(652), 1, + ACTIONS(662), 1, anon_sym_await, - ACTIONS(654), 1, + ACTIONS(664), 1, sym__string_start, - ACTIONS(656), 1, + ACTIONS(666), 1, sym__template_string_start, - STATE(793), 1, + STATE(790), 1, sym_string, - STATE(794), 1, + STATE(791), 1, sym_template_string, - STATE(831), 1, + STATE(845), 1, sym_primary_expression, - ACTIONS(650), 2, + ACTIONS(660), 2, sym_ellipsis, sym_float, - ACTIONS(644), 3, + ACTIONS(654), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(636), 5, + ACTIONS(646), 5, sym_integer, sym_identifier, sym_true, sym_false, sym_none, - ACTIONS(638), 6, + ACTIONS(648), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(970), 17, + STATE(985), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -56917,48 +57284,48 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [39446] = 15, + [39779] = 15, ACTIONS(3), 1, sym_comment, - ACTIONS(53), 1, - anon_sym_LBRACE, - ACTIONS(83), 1, - sym__string_start, - ACTIONS(85), 1, - sym__template_string_start, - ACTIONS(594), 1, + ACTIONS(616), 1, anon_sym_LPAREN, - ACTIONS(598), 1, + ACTIONS(622), 1, anon_sym_LBRACK, - ACTIONS(600), 1, + ACTIONS(624), 1, + anon_sym_LBRACE, + ACTIONS(628), 1, anon_sym_await, - STATE(769), 1, - sym_template_string, - STATE(775), 1, + ACTIONS(630), 1, + sym__string_start, + ACTIONS(632), 1, + sym__template_string_start, + STATE(781), 1, sym_string, - STATE(798), 1, + STATE(782), 1, + sym_template_string, + STATE(804), 1, sym_primary_expression, - ACTIONS(77), 2, + ACTIONS(626), 2, sym_ellipsis, sym_float, - ACTIONS(49), 3, + ACTIONS(620), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(79), 5, + ACTIONS(612), 5, sym_integer, sym_identifier, sym_true, sym_false, sym_none, - ACTIONS(592), 6, + ACTIONS(614), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(920), 17, + STATE(949), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -56976,48 +57343,48 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [39520] = 15, + [39853] = 15, ACTIONS(3), 1, sym_comment, - ACTIONS(640), 1, - anon_sym_LPAREN, - ACTIONS(646), 1, - anon_sym_LBRACK, - ACTIONS(648), 1, + ACTIONS(53), 1, anon_sym_LBRACE, - ACTIONS(652), 1, - anon_sym_await, - ACTIONS(654), 1, + ACTIONS(83), 1, sym__string_start, - ACTIONS(656), 1, + ACTIONS(85), 1, sym__template_string_start, - STATE(793), 1, - sym_string, - STATE(794), 1, + ACTIONS(575), 1, + anon_sym_LPAREN, + ACTIONS(579), 1, + anon_sym_LBRACK, + ACTIONS(581), 1, + anon_sym_await, + STATE(772), 1, sym_template_string, - STATE(832), 1, + STATE(779), 1, + sym_string, + STATE(818), 1, sym_primary_expression, - ACTIONS(650), 2, + ACTIONS(77), 2, sym_ellipsis, sym_float, - ACTIONS(644), 3, + ACTIONS(49), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(636), 5, + ACTIONS(79), 5, sym_integer, sym_identifier, sym_true, sym_false, sym_none, - ACTIONS(638), 6, + ACTIONS(573), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(970), 17, + STATE(950), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -57035,48 +57402,48 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [39594] = 15, + [39927] = 15, ACTIONS(3), 1, sym_comment, - ACTIONS(640), 1, - anon_sym_LPAREN, - ACTIONS(646), 1, - anon_sym_LBRACK, - ACTIONS(648), 1, + ACTIONS(53), 1, anon_sym_LBRACE, - ACTIONS(652), 1, - anon_sym_await, - ACTIONS(654), 1, + ACTIONS(83), 1, sym__string_start, - ACTIONS(656), 1, + ACTIONS(85), 1, sym__template_string_start, - STATE(793), 1, - sym_string, - STATE(794), 1, + ACTIONS(575), 1, + anon_sym_LPAREN, + ACTIONS(579), 1, + anon_sym_LBRACK, + ACTIONS(581), 1, + anon_sym_await, + STATE(772), 1, sym_template_string, - STATE(838), 1, + STATE(779), 1, + sym_string, + STATE(796), 1, sym_primary_expression, - ACTIONS(650), 2, + ACTIONS(77), 2, sym_ellipsis, sym_float, - ACTIONS(644), 3, + ACTIONS(49), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(636), 5, + ACTIONS(79), 5, sym_integer, sym_identifier, sym_true, sym_false, sym_none, - ACTIONS(638), 6, + ACTIONS(573), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(970), 17, + STATE(950), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -57094,48 +57461,48 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [39668] = 15, + [40001] = 15, ACTIONS(3), 1, sym_comment, - ACTIONS(53), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(83), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(85), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(594), 1, + ACTIONS(602), 1, anon_sym_LPAREN, - ACTIONS(598), 1, + ACTIONS(608), 1, anon_sym_LBRACK, - ACTIONS(600), 1, + ACTIONS(610), 1, anon_sym_await, - STATE(769), 1, - sym_template_string, - STATE(775), 1, + STATE(694), 1, sym_string, - STATE(817), 1, + STATE(698), 1, + sym_template_string, + STATE(751), 1, sym_primary_expression, - ACTIONS(77), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(49), 3, + ACTIONS(606), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(79), 5, + ACTIONS(311), 5, sym_integer, sym_identifier, sym_true, sym_false, sym_none, - ACTIONS(592), 6, + ACTIONS(583), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(920), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -57153,48 +57520,48 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [39742] = 15, + [40075] = 15, ACTIONS(3), 1, sym_comment, - ACTIONS(640), 1, - anon_sym_LPAREN, - ACTIONS(646), 1, - anon_sym_LBRACK, - ACTIONS(648), 1, + ACTIONS(53), 1, anon_sym_LBRACE, - ACTIONS(652), 1, - anon_sym_await, - ACTIONS(654), 1, + ACTIONS(83), 1, sym__string_start, - ACTIONS(656), 1, + ACTIONS(85), 1, sym__template_string_start, - STATE(793), 1, - sym_string, - STATE(794), 1, + ACTIONS(575), 1, + anon_sym_LPAREN, + ACTIONS(579), 1, + anon_sym_LBRACK, + ACTIONS(581), 1, + anon_sym_await, + STATE(772), 1, sym_template_string, - STATE(840), 1, + STATE(779), 1, + sym_string, + STATE(803), 1, sym_primary_expression, - ACTIONS(650), 2, + ACTIONS(77), 2, sym_ellipsis, sym_float, - ACTIONS(644), 3, + ACTIONS(49), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(636), 5, + ACTIONS(79), 5, sym_integer, sym_identifier, sym_true, sym_false, sym_none, - ACTIONS(638), 6, + ACTIONS(573), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(970), 17, + STATE(950), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -57212,7 +57579,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [39816] = 15, + [40149] = 15, ACTIONS(3), 1, sym_comment, ACTIONS(53), 1, @@ -57221,17 +57588,17 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(85), 1, sym__template_string_start, - ACTIONS(594), 1, + ACTIONS(575), 1, anon_sym_LPAREN, - ACTIONS(598), 1, + ACTIONS(579), 1, anon_sym_LBRACK, - ACTIONS(600), 1, + ACTIONS(581), 1, anon_sym_await, - STATE(769), 1, + STATE(772), 1, sym_template_string, - STATE(775), 1, + STATE(779), 1, sym_string, - STATE(818), 1, + STATE(788), 1, sym_primary_expression, ACTIONS(77), 2, sym_ellipsis, @@ -57246,14 +57613,14 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - ACTIONS(592), 6, + ACTIONS(573), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(920), 17, + STATE(950), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -57271,7 +57638,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [39890] = 15, + [40223] = 15, ACTIONS(3), 1, sym_comment, ACTIONS(53), 1, @@ -57280,17 +57647,17 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(85), 1, sym__template_string_start, - ACTIONS(594), 1, + ACTIONS(575), 1, anon_sym_LPAREN, - ACTIONS(598), 1, + ACTIONS(579), 1, anon_sym_LBRACK, - ACTIONS(600), 1, + ACTIONS(581), 1, anon_sym_await, - STATE(769), 1, + STATE(772), 1, sym_template_string, - STATE(775), 1, + STATE(779), 1, sym_string, - STATE(823), 1, + STATE(800), 1, sym_primary_expression, ACTIONS(77), 2, sym_ellipsis, @@ -57305,14 +57672,14 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - ACTIONS(592), 6, + ACTIONS(573), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(920), 17, + STATE(950), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -57330,56 +57697,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [39964] = 5, - ACTIONS(3), 1, - sym_comment, - ACTIONS(315), 1, - sym__string_start, - STATE(675), 2, - sym_string, - aux_sym_concatenated_string_repeat1, - ACTIONS(1235), 6, - anon_sym_as, - anon_sym_STAR, - anon_sym_EQ, - anon_sym_SLASH, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1230), 33, - anon_sym_DOT, - anon_sym_LPAREN, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_GT_GT, - anon_sym_if, - anon_sym_COLON, - anon_sym_else, - anon_sym_async, - anon_sym_for, - anon_sym_in, - anon_sym_PIPE, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_RBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_not, - anon_sym_and, - anon_sym_or, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - anon_sym_is, - [40018] = 15, + [40297] = 15, ACTIONS(3), 1, sym_comment, ACTIONS(293), 1, @@ -57388,22 +57706,22 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(317), 1, sym__template_string_start, - ACTIONS(575), 1, + ACTIONS(602), 1, anon_sym_LPAREN, - ACTIONS(586), 1, + ACTIONS(608), 1, anon_sym_LBRACK, - ACTIONS(590), 1, + ACTIONS(610), 1, anon_sym_await, - STATE(645), 1, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(755), 1, + STATE(752), 1, sym_primary_expression, ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(301), 3, + ACTIONS(606), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, @@ -57413,14 +57731,14 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - ACTIONS(573), 6, + ACTIONS(583), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(725), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -57438,7 +57756,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [40092] = 15, + [40371] = 15, ACTIONS(3), 1, sym_comment, ACTIONS(293), 1, @@ -57447,22 +57765,22 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(317), 1, sym__template_string_start, - ACTIONS(575), 1, + ACTIONS(602), 1, anon_sym_LPAREN, - ACTIONS(586), 1, + ACTIONS(608), 1, anon_sym_LBRACK, - ACTIONS(590), 1, + ACTIONS(610), 1, anon_sym_await, - STATE(645), 1, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(756), 1, + STATE(764), 1, sym_primary_expression, ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(301), 3, + ACTIONS(606), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, @@ -57472,14 +57790,14 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - ACTIONS(573), 6, + ACTIONS(583), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(725), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -57497,48 +57815,48 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [40166] = 15, + [40445] = 15, ACTIONS(3), 1, sym_comment, - ACTIONS(293), 1, - anon_sym_LBRACE, - ACTIONS(315), 1, - sym__string_start, - ACTIONS(317), 1, - sym__template_string_start, - ACTIONS(575), 1, + ACTIONS(616), 1, anon_sym_LPAREN, - ACTIONS(586), 1, + ACTIONS(622), 1, anon_sym_LBRACK, - ACTIONS(590), 1, + ACTIONS(624), 1, + anon_sym_LBRACE, + ACTIONS(628), 1, anon_sym_await, - STATE(645), 1, + ACTIONS(630), 1, + sym__string_start, + ACTIONS(632), 1, + sym__template_string_start, + STATE(781), 1, sym_string, - STATE(658), 1, + STATE(782), 1, sym_template_string, - STATE(758), 1, + STATE(816), 1, sym_primary_expression, - ACTIONS(309), 2, + ACTIONS(626), 2, sym_ellipsis, sym_float, - ACTIONS(301), 3, + ACTIONS(620), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(311), 5, + ACTIONS(612), 5, sym_integer, sym_identifier, sym_true, sym_false, sym_none, - ACTIONS(573), 6, + ACTIONS(614), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(725), 17, + STATE(949), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -57556,48 +57874,48 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [40240] = 15, + [40519] = 15, ACTIONS(3), 1, sym_comment, - ACTIONS(293), 1, - anon_sym_LBRACE, - ACTIONS(315), 1, - sym__string_start, - ACTIONS(317), 1, - sym__template_string_start, - ACTIONS(575), 1, + ACTIONS(616), 1, anon_sym_LPAREN, - ACTIONS(586), 1, + ACTIONS(622), 1, anon_sym_LBRACK, - ACTIONS(590), 1, + ACTIONS(624), 1, + anon_sym_LBRACE, + ACTIONS(628), 1, anon_sym_await, - STATE(645), 1, + ACTIONS(630), 1, + sym__string_start, + ACTIONS(632), 1, + sym__template_string_start, + STATE(781), 1, sym_string, - STATE(658), 1, + STATE(782), 1, sym_template_string, - STATE(761), 1, + STATE(817), 1, sym_primary_expression, - ACTIONS(309), 2, + ACTIONS(626), 2, sym_ellipsis, sym_float, - ACTIONS(301), 3, + ACTIONS(620), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(311), 5, + ACTIONS(612), 5, sym_integer, sym_identifier, sym_true, sym_false, sym_none, - ACTIONS(573), 6, + ACTIONS(614), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(725), 17, + STATE(949), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -57615,35 +57933,35 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [40314] = 15, + [40593] = 15, ACTIONS(3), 1, sym_comment, - ACTIONS(293), 1, + ACTIONS(53), 1, anon_sym_LBRACE, - ACTIONS(315), 1, + ACTIONS(83), 1, sym__string_start, - ACTIONS(317), 1, + ACTIONS(85), 1, sym__template_string_start, ACTIONS(575), 1, anon_sym_LPAREN, - ACTIONS(586), 1, + ACTIONS(579), 1, anon_sym_LBRACK, - ACTIONS(590), 1, + ACTIONS(581), 1, anon_sym_await, - STATE(645), 1, - sym_string, - STATE(658), 1, + STATE(772), 1, sym_template_string, - STATE(762), 1, + STATE(779), 1, + sym_string, + STATE(806), 1, sym_primary_expression, - ACTIONS(309), 2, + ACTIONS(77), 2, sym_ellipsis, sym_float, - ACTIONS(301), 3, + ACTIONS(49), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(311), 5, + ACTIONS(79), 5, sym_integer, sym_identifier, sym_true, @@ -57656,7 +57974,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(725), 17, + STATE(950), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -57674,7 +57992,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [40388] = 15, + [40667] = 15, ACTIONS(3), 1, sym_comment, ACTIONS(293), 1, @@ -57683,22 +58001,22 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(317), 1, sym__template_string_start, - ACTIONS(575), 1, + ACTIONS(602), 1, anon_sym_LPAREN, - ACTIONS(586), 1, + ACTIONS(608), 1, anon_sym_LBRACK, - ACTIONS(590), 1, + ACTIONS(610), 1, anon_sym_await, - STATE(645), 1, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(743), 1, + STATE(742), 1, sym_primary_expression, ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(301), 3, + ACTIONS(606), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, @@ -57708,14 +58026,14 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - ACTIONS(573), 6, + ACTIONS(583), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(725), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -57733,7 +58051,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [40462] = 15, + [40741] = 15, ACTIONS(3), 1, sym_comment, ACTIONS(293), 1, @@ -57742,22 +58060,22 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(317), 1, sym__template_string_start, - ACTIONS(575), 1, + ACTIONS(602), 1, anon_sym_LPAREN, - ACTIONS(586), 1, + ACTIONS(608), 1, anon_sym_LBRACK, - ACTIONS(590), 1, + ACTIONS(610), 1, anon_sym_await, - STATE(645), 1, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(739), 1, + STATE(743), 1, sym_primary_expression, ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(301), 3, + ACTIONS(606), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, @@ -57767,14 +58085,14 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - ACTIONS(573), 6, + ACTIONS(583), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(725), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -57792,7 +58110,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [40536] = 15, + [40815] = 15, ACTIONS(3), 1, sym_comment, ACTIONS(293), 1, @@ -57801,22 +58119,22 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(317), 1, sym__template_string_start, - ACTIONS(575), 1, + ACTIONS(602), 1, anon_sym_LPAREN, - ACTIONS(586), 1, + ACTIONS(608), 1, anon_sym_LBRACK, - ACTIONS(590), 1, + ACTIONS(610), 1, anon_sym_await, - STATE(645), 1, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(742), 1, + STATE(744), 1, sym_primary_expression, ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(301), 3, + ACTIONS(606), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, @@ -57826,14 +58144,14 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - ACTIONS(573), 6, + ACTIONS(583), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(725), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -57851,7 +58169,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [40610] = 15, + [40889] = 15, ACTIONS(3), 1, sym_comment, ACTIONS(616), 1, @@ -57866,11 +58184,11 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(632), 1, sym__template_string_start, - STATE(766), 1, + STATE(781), 1, sym_string, - STATE(776), 1, + STATE(782), 1, sym_template_string, - STATE(809), 1, + STATE(830), 1, sym_primary_expression, ACTIONS(626), 2, sym_ellipsis, @@ -57892,7 +58210,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(878), 17, + STATE(949), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -57910,107 +58228,48 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [40684] = 15, + [40963] = 15, ACTIONS(3), 1, sym_comment, - ACTIONS(293), 1, - anon_sym_LBRACE, - ACTIONS(315), 1, - sym__string_start, - ACTIONS(317), 1, - sym__template_string_start, - ACTIONS(575), 1, + ACTIONS(650), 1, anon_sym_LPAREN, - ACTIONS(586), 1, + ACTIONS(656), 1, anon_sym_LBRACK, - ACTIONS(590), 1, - anon_sym_await, - STATE(645), 1, - sym_string, - STATE(658), 1, - sym_template_string, - STATE(745), 1, - sym_primary_expression, - ACTIONS(309), 2, - sym_ellipsis, - sym_float, - ACTIONS(301), 3, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_TILDE, - ACTIONS(311), 5, - sym_integer, - sym_identifier, - sym_true, - sym_false, - sym_none, - ACTIONS(573), 6, - anon_sym_lazy, - anon_sym_print, - anon_sym_async, - anon_sym_match, - anon_sym_exec, - anon_sym_type, - STATE(725), 17, - sym_binary_operator, - sym_unary_operator, - sym_attribute, - sym_subscript, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [40758] = 15, - ACTIONS(3), 1, - sym_comment, - ACTIONS(293), 1, + ACTIONS(658), 1, anon_sym_LBRACE, - ACTIONS(315), 1, + ACTIONS(662), 1, + anon_sym_await, + ACTIONS(664), 1, sym__string_start, - ACTIONS(317), 1, + ACTIONS(666), 1, sym__template_string_start, - ACTIONS(575), 1, - anon_sym_LPAREN, - ACTIONS(586), 1, - anon_sym_LBRACK, - ACTIONS(590), 1, - anon_sym_await, - STATE(645), 1, + STATE(790), 1, sym_string, - STATE(658), 1, + STATE(791), 1, sym_template_string, - STATE(757), 1, + STATE(867), 1, sym_primary_expression, - ACTIONS(309), 2, + ACTIONS(660), 2, sym_ellipsis, sym_float, - ACTIONS(301), 3, + ACTIONS(654), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(311), 5, + ACTIONS(646), 5, sym_integer, sym_identifier, sym_true, sym_false, sym_none, - ACTIONS(573), 6, + ACTIONS(648), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(725), 17, + STATE(985), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -58028,7 +58287,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [40832] = 15, + [41037] = 15, ACTIONS(3), 1, sym_comment, ACTIONS(293), 1, @@ -58037,22 +58296,22 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(317), 1, sym__template_string_start, - ACTIONS(575), 1, + ACTIONS(602), 1, anon_sym_LPAREN, - ACTIONS(586), 1, + ACTIONS(608), 1, anon_sym_LBRACK, - ACTIONS(590), 1, + ACTIONS(610), 1, anon_sym_await, - STATE(645), 1, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(735), 1, + STATE(746), 1, sym_primary_expression, ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(301), 3, + ACTIONS(606), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, @@ -58062,14 +58321,14 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - ACTIONS(573), 6, + ACTIONS(583), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(725), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -58087,97 +58346,48 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [40906] = 5, + [41111] = 15, ACTIONS(3), 1, sym_comment, - ACTIONS(317), 1, - sym__template_string_start, - STATE(676), 2, - sym_template_string, - aux_sym_concatenated_template_string_repeat1, - ACTIONS(1235), 6, - anon_sym_as, - anon_sym_STAR, - anon_sym_EQ, - anon_sym_SLASH, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1230), 33, - anon_sym_DOT, + ACTIONS(650), 1, anon_sym_LPAREN, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_GT_GT, - anon_sym_if, - anon_sym_COLON, - anon_sym_else, - anon_sym_async, - anon_sym_for, - anon_sym_in, - anon_sym_PIPE, - anon_sym_DASH, - anon_sym_PLUS, + ACTIONS(656), 1, anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_RBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_not, - anon_sym_and, - anon_sym_or, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - anon_sym_is, - [40960] = 15, - ACTIONS(3), 1, - sym_comment, - ACTIONS(53), 1, + ACTIONS(658), 1, anon_sym_LBRACE, - ACTIONS(83), 1, + ACTIONS(662), 1, + anon_sym_await, + ACTIONS(664), 1, sym__string_start, - ACTIONS(85), 1, + ACTIONS(666), 1, sym__template_string_start, - ACTIONS(594), 1, - anon_sym_LPAREN, - ACTIONS(598), 1, - anon_sym_LBRACK, - ACTIONS(600), 1, - anon_sym_await, - STATE(769), 1, - sym_template_string, - STATE(775), 1, + STATE(790), 1, sym_string, - STATE(785), 1, + STATE(791), 1, + sym_template_string, + STATE(866), 1, sym_primary_expression, - ACTIONS(77), 2, + ACTIONS(660), 2, sym_ellipsis, sym_float, - ACTIONS(49), 3, + ACTIONS(654), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(79), 5, + ACTIONS(646), 5, sym_integer, sym_identifier, sym_true, sym_false, sym_none, - ACTIONS(592), 6, + ACTIONS(648), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(920), 17, + STATE(985), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -58195,48 +58405,48 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [41034] = 15, + [41185] = 15, ACTIONS(3), 1, sym_comment, - ACTIONS(640), 1, - anon_sym_LPAREN, - ACTIONS(646), 1, - anon_sym_LBRACK, - ACTIONS(648), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(652), 1, - anon_sym_await, - ACTIONS(654), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(656), 1, + ACTIONS(317), 1, sym__template_string_start, - STATE(793), 1, + ACTIONS(636), 1, + anon_sym_LPAREN, + ACTIONS(642), 1, + anon_sym_LBRACK, + ACTIONS(644), 1, + anon_sym_await, + STATE(694), 1, sym_string, - STATE(794), 1, + STATE(698), 1, sym_template_string, - STATE(855), 1, + STATE(819), 1, sym_primary_expression, - ACTIONS(650), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(644), 3, + ACTIONS(640), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(636), 5, + ACTIONS(311), 5, sym_integer, sym_identifier, sym_true, sym_false, sym_none, - ACTIONS(638), 6, + ACTIONS(583), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(970), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -58254,48 +58464,48 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [41108] = 15, + [41259] = 15, ACTIONS(3), 1, sym_comment, - ACTIONS(640), 1, - anon_sym_LPAREN, - ACTIONS(646), 1, - anon_sym_LBRACK, - ACTIONS(648), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(652), 1, - anon_sym_await, - ACTIONS(654), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(656), 1, + ACTIONS(317), 1, sym__template_string_start, - STATE(793), 1, + ACTIONS(636), 1, + anon_sym_LPAREN, + ACTIONS(642), 1, + anon_sym_LBRACK, + ACTIONS(644), 1, + anon_sym_await, + STATE(694), 1, sym_string, - STATE(794), 1, + STATE(698), 1, sym_template_string, - STATE(866), 1, + STATE(820), 1, sym_primary_expression, - ACTIONS(650), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(644), 3, + ACTIONS(640), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(636), 5, + ACTIONS(311), 5, sym_integer, sym_identifier, sym_true, sym_false, sym_none, - ACTIONS(638), 6, + ACTIONS(583), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(970), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -58313,48 +58523,48 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [41182] = 15, + [41333] = 15, ACTIONS(3), 1, sym_comment, - ACTIONS(640), 1, - anon_sym_LPAREN, - ACTIONS(646), 1, - anon_sym_LBRACK, - ACTIONS(648), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(652), 1, - anon_sym_await, - ACTIONS(654), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(656), 1, + ACTIONS(317), 1, sym__template_string_start, - STATE(793), 1, + ACTIONS(636), 1, + anon_sym_LPAREN, + ACTIONS(642), 1, + anon_sym_LBRACK, + ACTIONS(644), 1, + anon_sym_await, + STATE(694), 1, sym_string, - STATE(794), 1, + STATE(698), 1, sym_template_string, - STATE(833), 1, + STATE(821), 1, sym_primary_expression, - ACTIONS(650), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(644), 3, + ACTIONS(640), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(636), 5, + ACTIONS(311), 5, sym_integer, sym_identifier, sym_true, sym_false, sym_none, - ACTIONS(638), 6, + ACTIONS(583), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(970), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -58372,48 +58582,48 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [41256] = 15, + [41407] = 15, ACTIONS(3), 1, sym_comment, - ACTIONS(53), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(83), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(85), 1, + ACTIONS(317), 1, sym__template_string_start, - ACTIONS(594), 1, + ACTIONS(636), 1, anon_sym_LPAREN, - ACTIONS(598), 1, + ACTIONS(642), 1, anon_sym_LBRACK, - ACTIONS(600), 1, + ACTIONS(644), 1, anon_sym_await, - STATE(769), 1, - sym_template_string, - STATE(775), 1, + STATE(694), 1, sym_string, - STATE(797), 1, + STATE(698), 1, + sym_template_string, + STATE(823), 1, sym_primary_expression, - ACTIONS(77), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(49), 3, + ACTIONS(640), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(79), 5, + ACTIONS(311), 5, sym_integer, sym_identifier, sym_true, sym_false, sym_none, - ACTIONS(592), 6, + ACTIONS(583), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(920), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -58431,48 +58641,48 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [41330] = 15, + [41481] = 15, ACTIONS(3), 1, sym_comment, - ACTIONS(640), 1, - anon_sym_LPAREN, - ACTIONS(646), 1, - anon_sym_LBRACK, - ACTIONS(648), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(652), 1, - anon_sym_await, - ACTIONS(654), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(656), 1, + ACTIONS(317), 1, sym__template_string_start, - STATE(793), 1, + ACTIONS(636), 1, + anon_sym_LPAREN, + ACTIONS(642), 1, + anon_sym_LBRACK, + ACTIONS(644), 1, + anon_sym_await, + STATE(694), 1, sym_string, - STATE(794), 1, + STATE(698), 1, sym_template_string, - STATE(845), 1, + STATE(824), 1, sym_primary_expression, - ACTIONS(650), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(644), 3, + ACTIONS(640), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(636), 5, + ACTIONS(311), 5, sym_integer, sym_identifier, sym_true, sym_false, sym_none, - ACTIONS(638), 6, + ACTIONS(583), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(970), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -58490,7 +58700,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [41404] = 15, + [41555] = 15, ACTIONS(3), 1, sym_comment, ACTIONS(293), 1, @@ -58499,22 +58709,22 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(317), 1, sym__template_string_start, - ACTIONS(602), 1, + ACTIONS(636), 1, anon_sym_LPAREN, - ACTIONS(608), 1, + ACTIONS(642), 1, anon_sym_LBRACK, - ACTIONS(610), 1, + ACTIONS(644), 1, anon_sym_await, - STATE(645), 1, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(746), 1, + STATE(825), 1, sym_primary_expression, ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(606), 3, + ACTIONS(640), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, @@ -58524,14 +58734,14 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - ACTIONS(573), 6, + ACTIONS(583), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(725), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -58549,7 +58759,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [41478] = 15, + [41629] = 15, ACTIONS(3), 1, sym_comment, ACTIONS(293), 1, @@ -58558,22 +58768,22 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(317), 1, sym__template_string_start, - ACTIONS(602), 1, + ACTIONS(636), 1, anon_sym_LPAREN, - ACTIONS(608), 1, + ACTIONS(642), 1, anon_sym_LBRACK, - ACTIONS(610), 1, + ACTIONS(644), 1, anon_sym_await, - STATE(645), 1, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(747), 1, + STATE(826), 1, sym_primary_expression, ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(606), 3, + ACTIONS(640), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, @@ -58583,6 +58793,65 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, + ACTIONS(583), 6, + anon_sym_lazy, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(720), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [41703] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(53), 1, + anon_sym_LBRACE, + ACTIONS(83), 1, + sym__string_start, + ACTIONS(85), 1, + sym__template_string_start, + ACTIONS(575), 1, + anon_sym_LPAREN, + ACTIONS(579), 1, + anon_sym_LBRACK, + ACTIONS(581), 1, + anon_sym_await, + STATE(772), 1, + sym_template_string, + STATE(779), 1, + sym_string, + STATE(802), 1, + sym_primary_expression, + ACTIONS(77), 2, + sym_ellipsis, + sym_float, + ACTIONS(49), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(79), 5, + sym_integer, + sym_identifier, + sym_true, + sym_false, + sym_none, ACTIONS(573), 6, anon_sym_lazy, anon_sym_print, @@ -58590,7 +58859,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(725), 17, + STATE(950), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -58608,7 +58877,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [41552] = 15, + [41777] = 15, ACTIONS(3), 1, sym_comment, ACTIONS(293), 1, @@ -58623,11 +58892,11 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LBRACK, ACTIONS(610), 1, anon_sym_await, - STATE(645), 1, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(748), 1, + STATE(740), 1, sym_primary_expression, ACTIONS(309), 2, sym_ellipsis, @@ -58642,14 +58911,14 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - ACTIONS(573), 6, + ACTIONS(583), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(725), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -58667,7 +58936,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [41626] = 15, + [41851] = 15, ACTIONS(3), 1, sym_comment, ACTIONS(293), 1, @@ -58676,22 +58945,22 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(317), 1, sym__template_string_start, - ACTIONS(602), 1, + ACTIONS(636), 1, anon_sym_LPAREN, - ACTIONS(608), 1, + ACTIONS(642), 1, anon_sym_LBRACK, - ACTIONS(610), 1, + ACTIONS(644), 1, anon_sym_await, - STATE(645), 1, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(749), 1, + STATE(827), 1, sym_primary_expression, ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(606), 3, + ACTIONS(640), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, @@ -58701,14 +58970,14 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - ACTIONS(573), 6, + ACTIONS(583), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(725), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -58726,7 +58995,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [41700] = 15, + [41925] = 15, ACTIONS(3), 1, sym_comment, ACTIONS(293), 1, @@ -58735,22 +59004,22 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(317), 1, sym__template_string_start, - ACTIONS(602), 1, + ACTIONS(636), 1, anon_sym_LPAREN, - ACTIONS(608), 1, + ACTIONS(642), 1, anon_sym_LBRACK, - ACTIONS(610), 1, + ACTIONS(644), 1, anon_sym_await, - STATE(645), 1, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(750), 1, + STATE(828), 1, sym_primary_expression, ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(606), 3, + ACTIONS(640), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, @@ -58760,14 +59029,14 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - ACTIONS(573), 6, + ACTIONS(583), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(725), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -58785,7 +59054,66 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [41774] = 15, + [41999] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(616), 1, + anon_sym_LPAREN, + ACTIONS(622), 1, + anon_sym_LBRACK, + ACTIONS(624), 1, + anon_sym_LBRACE, + ACTIONS(628), 1, + anon_sym_await, + ACTIONS(630), 1, + sym__string_start, + ACTIONS(632), 1, + sym__template_string_start, + STATE(781), 1, + sym_string, + STATE(782), 1, + sym_template_string, + STATE(809), 1, + sym_primary_expression, + ACTIONS(626), 2, + sym_ellipsis, + sym_float, + ACTIONS(620), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(612), 5, + sym_integer, + sym_identifier, + sym_true, + sym_false, + sym_none, + ACTIONS(614), 6, + anon_sym_lazy, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(949), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [42073] = 15, ACTIONS(3), 1, sym_comment, ACTIONS(293), 1, @@ -58794,22 +59122,22 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(317), 1, sym__template_string_start, - ACTIONS(602), 1, + ACTIONS(636), 1, anon_sym_LPAREN, - ACTIONS(608), 1, + ACTIONS(642), 1, anon_sym_LBRACK, - ACTIONS(610), 1, + ACTIONS(644), 1, anon_sym_await, - STATE(645), 1, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(751), 1, + STATE(829), 1, sym_primary_expression, ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(606), 3, + ACTIONS(640), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, @@ -58819,14 +59147,14 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - ACTIONS(573), 6, + ACTIONS(583), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(725), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -58844,7 +59172,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [41848] = 15, + [42147] = 15, ACTIONS(3), 1, sym_comment, ACTIONS(293), 1, @@ -58853,22 +59181,22 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(317), 1, sym__template_string_start, - ACTIONS(602), 1, + ACTIONS(585), 1, anon_sym_LPAREN, - ACTIONS(608), 1, + ACTIONS(596), 1, anon_sym_LBRACK, - ACTIONS(610), 1, + ACTIONS(600), 1, anon_sym_await, - STATE(645), 1, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(753), 1, + STATE(755), 1, sym_primary_expression, ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(606), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, @@ -58878,14 +59206,14 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - ACTIONS(573), 6, + ACTIONS(583), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(725), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -58903,7 +59231,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [41922] = 15, + [42221] = 15, ACTIONS(3), 1, sym_comment, ACTIONS(293), 1, @@ -58918,11 +59246,11 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LBRACK, ACTIONS(610), 1, anon_sym_await, - STATE(645), 1, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(754), 1, + STATE(741), 1, sym_primary_expression, ACTIONS(309), 2, sym_ellipsis, @@ -58937,14 +59265,14 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - ACTIONS(573), 6, + ACTIONS(583), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(725), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -58962,48 +59290,48 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [41996] = 15, + [42295] = 15, ACTIONS(3), 1, sym_comment, - ACTIONS(616), 1, - anon_sym_LPAREN, - ACTIONS(622), 1, - anon_sym_LBRACK, - ACTIONS(624), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(628), 1, - anon_sym_await, - ACTIONS(630), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(632), 1, + ACTIONS(317), 1, sym__template_string_start, - STATE(766), 1, + ACTIONS(585), 1, + anon_sym_LPAREN, + ACTIONS(596), 1, + anon_sym_LBRACK, + ACTIONS(600), 1, + anon_sym_await, + STATE(694), 1, sym_string, - STATE(776), 1, + STATE(698), 1, sym_template_string, - STATE(799), 1, + STATE(756), 1, sym_primary_expression, - ACTIONS(626), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(620), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(612), 5, + ACTIONS(311), 5, sym_integer, sym_identifier, sym_true, sym_false, sym_none, - ACTIONS(614), 6, + ACTIONS(583), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(878), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -59021,48 +59349,48 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [42070] = 15, + [42369] = 15, ACTIONS(3), 1, sym_comment, - ACTIONS(616), 1, - anon_sym_LPAREN, - ACTIONS(622), 1, - anon_sym_LBRACK, - ACTIONS(624), 1, + ACTIONS(293), 1, anon_sym_LBRACE, - ACTIONS(628), 1, - anon_sym_await, - ACTIONS(630), 1, + ACTIONS(315), 1, sym__string_start, - ACTIONS(632), 1, + ACTIONS(317), 1, sym__template_string_start, - STATE(766), 1, + ACTIONS(585), 1, + anon_sym_LPAREN, + ACTIONS(596), 1, + anon_sym_LBRACK, + ACTIONS(600), 1, + anon_sym_await, + STATE(694), 1, sym_string, - STATE(776), 1, + STATE(698), 1, sym_template_string, - STATE(812), 1, + STATE(757), 1, sym_primary_expression, - ACTIONS(626), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(620), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(612), 5, + ACTIONS(311), 5, sym_integer, sym_identifier, sym_true, sym_false, sym_none, - ACTIONS(614), 6, + ACTIONS(583), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(878), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -59080,146 +59408,48 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [42144] = 5, + [42443] = 15, ACTIONS(3), 1, sym_comment, + ACTIONS(293), 1, + anon_sym_LBRACE, ACTIONS(315), 1, sym__string_start, - STATE(692), 2, - sym_string, - aux_sym_concatenated_string_repeat1, - ACTIONS(1506), 6, - anon_sym_as, - anon_sym_STAR, - anon_sym_EQ, - anon_sym_SLASH, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1504), 33, - anon_sym_DOT, - anon_sym_LPAREN, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_GT_GT, - anon_sym_if, - anon_sym_COLON, - anon_sym_else, - anon_sym_async, - anon_sym_for, - anon_sym_in, - anon_sym_PIPE, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_RBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_not, - anon_sym_and, - anon_sym_or, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - anon_sym_is, - [42198] = 5, - ACTIONS(3), 1, - sym_comment, ACTIONS(317), 1, sym__template_string_start, - STATE(693), 2, - sym_template_string, - aux_sym_concatenated_template_string_repeat1, - ACTIONS(1510), 6, - anon_sym_as, - anon_sym_STAR, - anon_sym_EQ, - anon_sym_SLASH, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1508), 33, - anon_sym_DOT, + ACTIONS(585), 1, anon_sym_LPAREN, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_GT_GT, - anon_sym_if, - anon_sym_COLON, - anon_sym_else, - anon_sym_async, - anon_sym_for, - anon_sym_in, - anon_sym_PIPE, - anon_sym_DASH, - anon_sym_PLUS, + ACTIONS(596), 1, anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_RBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_not, - anon_sym_and, - anon_sym_or, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - anon_sym_is, - [42252] = 15, - ACTIONS(3), 1, - sym_comment, - ACTIONS(640), 1, - anon_sym_LPAREN, - ACTIONS(646), 1, - anon_sym_LBRACK, - ACTIONS(648), 1, - anon_sym_LBRACE, - ACTIONS(652), 1, + ACTIONS(600), 1, anon_sym_await, - ACTIONS(654), 1, - sym__string_start, - ACTIONS(656), 1, - sym__template_string_start, - STATE(793), 1, + STATE(694), 1, sym_string, - STATE(794), 1, + STATE(698), 1, sym_template_string, - STATE(846), 1, + STATE(739), 1, sym_primary_expression, - ACTIONS(650), 2, + ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(644), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(636), 5, + ACTIONS(311), 5, sym_integer, sym_identifier, sym_true, sym_false, sym_none, - ACTIONS(638), 6, + ACTIONS(583), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(970), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -59237,48 +59467,48 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [42326] = 15, + [42517] = 15, ACTIONS(3), 1, sym_comment, - ACTIONS(293), 1, - anon_sym_LBRACE, - ACTIONS(315), 1, - sym__string_start, - ACTIONS(317), 1, - sym__template_string_start, - ACTIONS(658), 1, + ACTIONS(616), 1, anon_sym_LPAREN, - ACTIONS(664), 1, + ACTIONS(622), 1, anon_sym_LBRACK, - ACTIONS(666), 1, + ACTIONS(624), 1, + anon_sym_LBRACE, + ACTIONS(628), 1, anon_sym_await, - STATE(645), 1, + ACTIONS(630), 1, + sym__string_start, + ACTIONS(632), 1, + sym__template_string_start, + STATE(781), 1, sym_string, - STATE(658), 1, + STATE(782), 1, sym_template_string, - STATE(803), 1, + STATE(811), 1, sym_primary_expression, - ACTIONS(309), 2, + ACTIONS(626), 2, sym_ellipsis, sym_float, - ACTIONS(662), 3, + ACTIONS(620), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(311), 5, + ACTIONS(612), 5, sym_integer, sym_identifier, sym_true, sym_false, sym_none, - ACTIONS(573), 6, + ACTIONS(614), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(725), 17, + STATE(949), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -59296,7 +59526,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [42400] = 15, + [42591] = 15, ACTIONS(3), 1, sym_comment, ACTIONS(293), 1, @@ -59305,22 +59535,22 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(317), 1, sym__template_string_start, - ACTIONS(658), 1, + ACTIONS(585), 1, anon_sym_LPAREN, - ACTIONS(664), 1, + ACTIONS(596), 1, anon_sym_LBRACK, - ACTIONS(666), 1, + ACTIONS(600), 1, anon_sym_await, - STATE(645), 1, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(826), 1, + STATE(758), 1, sym_primary_expression, ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(662), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, @@ -59330,14 +59560,14 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - ACTIONS(573), 6, + ACTIONS(583), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(725), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -59355,7 +59585,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [42474] = 15, + [42665] = 15, ACTIONS(3), 1, sym_comment, ACTIONS(293), 1, @@ -59364,22 +59594,22 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(317), 1, sym__template_string_start, - ACTIONS(658), 1, + ACTIONS(585), 1, anon_sym_LPAREN, - ACTIONS(664), 1, + ACTIONS(596), 1, anon_sym_LBRACK, - ACTIONS(666), 1, + ACTIONS(600), 1, anon_sym_await, - STATE(645), 1, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(805), 1, + STATE(759), 1, sym_primary_expression, ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(662), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, @@ -59389,14 +59619,14 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - ACTIONS(573), 6, + ACTIONS(583), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(725), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -59414,7 +59644,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [42548] = 15, + [42739] = 15, ACTIONS(3), 1, sym_comment, ACTIONS(293), 1, @@ -59423,22 +59653,22 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(317), 1, sym__template_string_start, - ACTIONS(658), 1, + ACTIONS(585), 1, anon_sym_LPAREN, - ACTIONS(664), 1, + ACTIONS(596), 1, anon_sym_LBRACK, - ACTIONS(666), 1, + ACTIONS(600), 1, anon_sym_await, - STATE(645), 1, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(806), 1, + STATE(760), 1, sym_primary_expression, ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(662), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, @@ -59448,14 +59678,14 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - ACTIONS(573), 6, + ACTIONS(583), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(725), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -59473,7 +59703,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [42622] = 15, + [42813] = 15, ACTIONS(3), 1, sym_comment, ACTIONS(293), 1, @@ -59482,22 +59712,22 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(317), 1, sym__template_string_start, - ACTIONS(658), 1, + ACTIONS(585), 1, anon_sym_LPAREN, - ACTIONS(664), 1, + ACTIONS(596), 1, anon_sym_LBRACK, - ACTIONS(666), 1, + ACTIONS(600), 1, anon_sym_await, - STATE(645), 1, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(807), 1, + STATE(761), 1, sym_primary_expression, ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(662), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, @@ -59507,14 +59737,14 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - ACTIONS(573), 6, + ACTIONS(583), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(725), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -59532,48 +59762,48 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [42696] = 15, + [42887] = 15, ACTIONS(3), 1, sym_comment, - ACTIONS(293), 1, - anon_sym_LBRACE, - ACTIONS(315), 1, - sym__string_start, - ACTIONS(317), 1, - sym__template_string_start, - ACTIONS(658), 1, + ACTIONS(650), 1, anon_sym_LPAREN, - ACTIONS(664), 1, + ACTIONS(656), 1, anon_sym_LBRACK, - ACTIONS(666), 1, + ACTIONS(658), 1, + anon_sym_LBRACE, + ACTIONS(662), 1, anon_sym_await, - STATE(645), 1, + ACTIONS(664), 1, + sym__string_start, + ACTIONS(666), 1, + sym__template_string_start, + STATE(790), 1, sym_string, - STATE(658), 1, + STATE(791), 1, sym_template_string, - STATE(808), 1, + STATE(862), 1, sym_primary_expression, - ACTIONS(309), 2, + ACTIONS(660), 2, sym_ellipsis, sym_float, - ACTIONS(662), 3, + ACTIONS(654), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(311), 5, + ACTIONS(646), 5, sym_integer, sym_identifier, sym_true, sym_false, sym_none, - ACTIONS(573), 6, + ACTIONS(648), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(725), 17, + STATE(985), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -59591,7 +59821,56 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [42770] = 15, + [42961] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1527), 1, + sym__string_start, + STATE(685), 2, + sym_string, + aux_sym_concatenated_string_repeat1, + ACTIONS(1525), 6, + anon_sym_as, + anon_sym_STAR, + anon_sym_EQ, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1523), 33, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_COLON, + anon_sym_else, + anon_sym_async, + anon_sym_for, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [43015] = 15, ACTIONS(3), 1, sym_comment, ACTIONS(293), 1, @@ -59600,22 +59879,22 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(317), 1, sym__template_string_start, - ACTIONS(658), 1, + ACTIONS(585), 1, anon_sym_LPAREN, - ACTIONS(664), 1, + ACTIONS(596), 1, anon_sym_LBRACK, - ACTIONS(666), 1, + ACTIONS(600), 1, anon_sym_await, - STATE(645), 1, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(810), 1, + STATE(762), 1, sym_primary_expression, ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(662), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, @@ -59625,14 +59904,14 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - ACTIONS(573), 6, + ACTIONS(583), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(725), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -59650,7 +59929,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [42844] = 15, + [43089] = 15, ACTIONS(3), 1, sym_comment, ACTIONS(293), 1, @@ -59659,22 +59938,22 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(317), 1, sym__template_string_start, - ACTIONS(658), 1, + ACTIONS(585), 1, anon_sym_LPAREN, - ACTIONS(664), 1, + ACTIONS(596), 1, anon_sym_LBRACK, - ACTIONS(666), 1, + ACTIONS(600), 1, anon_sym_await, - STATE(645), 1, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(811), 1, + STATE(763), 1, sym_primary_expression, ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(662), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, @@ -59684,14 +59963,14 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - ACTIONS(573), 6, + ACTIONS(583), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(725), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -59709,66 +59988,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [42918] = 15, - ACTIONS(3), 1, - sym_comment, - ACTIONS(616), 1, - anon_sym_LPAREN, - ACTIONS(622), 1, - anon_sym_LBRACK, - ACTIONS(624), 1, - anon_sym_LBRACE, - ACTIONS(628), 1, - anon_sym_await, - ACTIONS(630), 1, - sym__string_start, - ACTIONS(632), 1, - sym__template_string_start, - STATE(766), 1, - sym_string, - STATE(776), 1, - sym_template_string, - STATE(815), 1, - sym_primary_expression, - ACTIONS(626), 2, - sym_ellipsis, - sym_float, - ACTIONS(620), 3, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_TILDE, - ACTIONS(612), 5, - sym_integer, - sym_identifier, - sym_true, - sym_false, - sym_none, - ACTIONS(614), 6, - anon_sym_lazy, - anon_sym_print, - anon_sym_async, - anon_sym_match, - anon_sym_exec, - anon_sym_type, - STATE(878), 17, - sym_binary_operator, - sym_unary_operator, - sym_attribute, - sym_subscript, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [42992] = 15, + [43163] = 15, ACTIONS(3), 1, sym_comment, ACTIONS(293), 1, @@ -59777,22 +59997,22 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(317), 1, sym__template_string_start, - ACTIONS(658), 1, + ACTIONS(585), 1, anon_sym_LPAREN, - ACTIONS(664), 1, + ACTIONS(596), 1, anon_sym_LBRACK, - ACTIONS(666), 1, + ACTIONS(600), 1, anon_sym_await, - STATE(645), 1, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(813), 1, + STATE(765), 1, sym_primary_expression, ACTIONS(309), 2, sym_ellipsis, sym_float, - ACTIONS(662), 3, + ACTIONS(301), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, @@ -59802,14 +60022,14 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - ACTIONS(573), 6, + ACTIONS(583), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(725), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -59827,48 +60047,48 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [43066] = 15, + [43237] = 15, ACTIONS(3), 1, sym_comment, - ACTIONS(293), 1, - anon_sym_LBRACE, - ACTIONS(315), 1, - sym__string_start, - ACTIONS(317), 1, - sym__template_string_start, - ACTIONS(658), 1, + ACTIONS(616), 1, anon_sym_LPAREN, - ACTIONS(664), 1, + ACTIONS(622), 1, anon_sym_LBRACK, - ACTIONS(666), 1, + ACTIONS(624), 1, + anon_sym_LBRACE, + ACTIONS(628), 1, anon_sym_await, - STATE(645), 1, + ACTIONS(630), 1, + sym__string_start, + ACTIONS(632), 1, + sym__template_string_start, + STATE(781), 1, sym_string, - STATE(658), 1, + STATE(782), 1, sym_template_string, - STATE(814), 1, + STATE(812), 1, sym_primary_expression, - ACTIONS(309), 2, + ACTIONS(626), 2, sym_ellipsis, sym_float, - ACTIONS(662), 3, + ACTIONS(620), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(311), 5, + ACTIONS(612), 5, sym_integer, sym_identifier, sym_true, sym_false, sym_none, - ACTIONS(573), 6, + ACTIONS(614), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(725), 17, + STATE(949), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -59886,94 +60106,84 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [43140] = 15, + [43311] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(293), 1, - anon_sym_LBRACE, ACTIONS(315), 1, sym__string_start, - ACTIONS(317), 1, - sym__template_string_start, - ACTIONS(658), 1, - anon_sym_LPAREN, - ACTIONS(664), 1, - anon_sym_LBRACK, - ACTIONS(666), 1, - anon_sym_await, - STATE(645), 1, + STATE(685), 2, sym_string, - STATE(658), 1, - sym_template_string, - STATE(825), 1, - sym_primary_expression, - ACTIONS(309), 2, - sym_ellipsis, - sym_float, - ACTIONS(662), 3, + aux_sym_concatenated_string_repeat1, + ACTIONS(1532), 6, + anon_sym_as, + anon_sym_STAR, + anon_sym_EQ, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1530), 33, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_COLON, + anon_sym_else, + anon_sym_async, + anon_sym_for, + anon_sym_in, + anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, - anon_sym_TILDE, - ACTIONS(311), 5, - sym_integer, - sym_identifier, - sym_true, - sym_false, - sym_none, - ACTIONS(573), 6, - anon_sym_lazy, - anon_sym_print, - anon_sym_async, - anon_sym_match, - anon_sym_exec, - anon_sym_type, - STATE(725), 17, - sym_binary_operator, - sym_unary_operator, - sym_attribute, - sym_subscript, - sym_call, - sym_list, - sym_set, - sym_tuple, - sym_dictionary, - sym_list_comprehension, - sym_dictionary_comprehension, - sym_set_comprehension, - sym_generator_expression, - sym_parenthesized_expression, - sym_concatenated_string, - sym_concatenated_template_string, - sym_await, - [43214] = 15, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [43365] = 15, ACTIONS(3), 1, sym_comment, - ACTIONS(293), 1, + ACTIONS(53), 1, anon_sym_LBRACE, - ACTIONS(315), 1, + ACTIONS(83), 1, sym__string_start, - ACTIONS(317), 1, + ACTIONS(85), 1, sym__template_string_start, - ACTIONS(602), 1, + ACTIONS(575), 1, anon_sym_LPAREN, - ACTIONS(608), 1, + ACTIONS(579), 1, anon_sym_LBRACK, - ACTIONS(610), 1, + ACTIONS(581), 1, anon_sym_await, - STATE(645), 1, - sym_string, - STATE(658), 1, + STATE(772), 1, sym_template_string, - STATE(744), 1, + STATE(779), 1, + sym_string, + STATE(807), 1, sym_primary_expression, - ACTIONS(309), 2, + ACTIONS(77), 2, sym_ellipsis, sym_float, - ACTIONS(606), 3, + ACTIONS(49), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(311), 5, + ACTIONS(79), 5, sym_integer, sym_identifier, sym_true, @@ -59986,7 +60196,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(725), 17, + STATE(950), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -60004,7 +60214,7 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [43288] = 15, + [43439] = 15, ACTIONS(3), 1, sym_comment, ACTIONS(293), 1, @@ -60019,11 +60229,11 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LBRACK, ACTIONS(610), 1, anon_sym_await, - STATE(645), 1, + STATE(694), 1, sym_string, - STATE(658), 1, + STATE(698), 1, sym_template_string, - STATE(736), 1, + STATE(748), 1, sym_primary_expression, ACTIONS(309), 2, sym_ellipsis, @@ -60038,14 +60248,14 @@ static const uint16_t ts_small_parse_table[] = { sym_true, sym_false, sym_none, - ACTIONS(573), 6, + ACTIONS(583), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(725), 17, + STATE(720), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -60063,22 +60273,22 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [43362] = 5, + [43513] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(1516), 1, - sym__string_start, - STATE(692), 2, - sym_string, - aux_sym_concatenated_string_repeat1, - ACTIONS(1514), 6, + ACTIONS(317), 1, + sym__template_string_start, + STATE(627), 2, + sym_template_string, + aux_sym_concatenated_template_string_repeat1, + ACTIONS(1536), 6, anon_sym_as, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1512), 33, + ACTIONS(1534), 33, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -60112,22 +60322,22 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [43416] = 5, + [43567] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(1523), 1, - sym__template_string_start, - STATE(693), 2, - sym_template_string, - aux_sym_concatenated_template_string_repeat1, - ACTIONS(1521), 6, + ACTIONS(315), 1, + sym__string_start, + STATE(690), 2, + sym_string, + aux_sym_concatenated_string_repeat1, + ACTIONS(1209), 6, anon_sym_as, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1519), 33, + ACTIONS(1204), 33, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -60161,7 +60371,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [43470] = 15, + [43621] = 15, ACTIONS(3), 1, sym_comment, ACTIONS(616), 1, @@ -60176,11 +60386,11 @@ static const uint16_t ts_small_parse_table[] = { sym__string_start, ACTIONS(632), 1, sym__template_string_start, - STATE(766), 1, + STATE(781), 1, sym_string, - STATE(776), 1, + STATE(782), 1, sym_template_string, - STATE(816), 1, + STATE(810), 1, sym_primary_expression, ACTIONS(626), 2, sym_ellipsis, @@ -60202,7 +60412,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(878), 17, + STATE(949), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -60220,48 +60430,107 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [43544] = 15, + [43695] = 15, ACTIONS(3), 1, sym_comment, - ACTIONS(640), 1, + ACTIONS(650), 1, anon_sym_LPAREN, - ACTIONS(646), 1, + ACTIONS(656), 1, anon_sym_LBRACK, - ACTIONS(648), 1, + ACTIONS(658), 1, anon_sym_LBRACE, - ACTIONS(652), 1, + ACTIONS(662), 1, anon_sym_await, - ACTIONS(654), 1, + ACTIONS(664), 1, sym__string_start, + ACTIONS(666), 1, + sym__template_string_start, + STATE(790), 1, + sym_string, + STATE(791), 1, + sym_template_string, + STATE(856), 1, + sym_primary_expression, + ACTIONS(660), 2, + sym_ellipsis, + sym_float, + ACTIONS(654), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(646), 5, + sym_integer, + sym_identifier, + sym_true, + sym_false, + sym_none, + ACTIONS(648), 6, + anon_sym_lazy, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(985), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [43769] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(650), 1, + anon_sym_LPAREN, ACTIONS(656), 1, + anon_sym_LBRACK, + ACTIONS(658), 1, + anon_sym_LBRACE, + ACTIONS(662), 1, + anon_sym_await, + ACTIONS(664), 1, + sym__string_start, + ACTIONS(666), 1, sym__template_string_start, - STATE(793), 1, + STATE(790), 1, sym_string, - STATE(794), 1, + STATE(791), 1, sym_template_string, - STATE(841), 1, + STATE(844), 1, sym_primary_expression, - ACTIONS(650), 2, + ACTIONS(660), 2, sym_ellipsis, sym_float, - ACTIONS(644), 3, + ACTIONS(654), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, - ACTIONS(636), 5, + ACTIONS(646), 5, sym_integer, sym_identifier, sym_true, sym_false, sym_none, - ACTIONS(638), 6, + ACTIONS(648), 6, anon_sym_lazy, anon_sym_print, anon_sym_async, anon_sym_match, anon_sym_exec, anon_sym_type, - STATE(970), 17, + STATE(985), 17, sym_binary_operator, sym_unary_operator, sym_attribute, @@ -60279,18 +60548,22 @@ static const uint16_t ts_small_parse_table[] = { sym_concatenated_string, sym_concatenated_template_string, sym_await, - [43618] = 3, + [43843] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(1528), 6, + ACTIONS(317), 1, + sym__template_string_start, + STATE(693), 2, + sym_template_string, + aux_sym_concatenated_template_string_repeat1, + ACTIONS(1209), 6, anon_sym_as, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1526), 34, - sym__string_start, + ACTIONS(1204), 33, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -60324,18 +60597,77 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [43666] = 3, + [43897] = 15, ACTIONS(3), 1, sym_comment, - ACTIONS(1532), 6, + ACTIONS(293), 1, + anon_sym_LBRACE, + ACTIONS(315), 1, + sym__string_start, + ACTIONS(317), 1, + sym__template_string_start, + ACTIONS(636), 1, + anon_sym_LPAREN, + ACTIONS(642), 1, + anon_sym_LBRACK, + ACTIONS(644), 1, + anon_sym_await, + STATE(694), 1, + sym_string, + STATE(698), 1, + sym_template_string, + STATE(822), 1, + sym_primary_expression, + ACTIONS(309), 2, + sym_ellipsis, + sym_float, + ACTIONS(640), 3, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_TILDE, + ACTIONS(311), 5, + sym_integer, + sym_identifier, + sym_true, + sym_false, + sym_none, + ACTIONS(583), 6, + anon_sym_lazy, + anon_sym_print, + anon_sym_async, + anon_sym_match, + anon_sym_exec, + anon_sym_type, + STATE(720), 17, + sym_binary_operator, + sym_unary_operator, + sym_attribute, + sym_subscript, + sym_call, + sym_list, + sym_set, + sym_tuple, + sym_dictionary, + sym_list_comprehension, + sym_dictionary_comprehension, + sym_set_comprehension, + sym_generator_expression, + sym_parenthesized_expression, + sym_concatenated_string, + sym_concatenated_template_string, + sym_await, + [43971] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1540), 6, anon_sym_as, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1530), 34, - sym__string_start, + ACTIONS(1538), 34, + sym__template_string_start, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -60369,17 +60701,17 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [43714] = 3, + [44019] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1536), 6, + ACTIONS(1544), 6, anon_sym_as, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1534), 34, + ACTIONS(1542), 34, sym__template_string_start, anon_sym_DOT, anon_sym_LPAREN, @@ -60414,18 +60746,18 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [43762] = 3, + [44067] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1540), 6, + ACTIONS(1548), 6, anon_sym_as, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1538), 34, - sym__template_string_start, + ACTIONS(1546), 34, + sym__string_start, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -60459,23 +60791,26 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [43810] = 3, + [44115] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1425), 6, + ACTIONS(1552), 6, anon_sym_as, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1420), 33, + ACTIONS(1550), 34, + sym__string_start, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_GT_GT, anon_sym_if, + anon_sym_COLON, + anon_sym_else, anon_sym_async, anon_sym_for, anon_sym_in, @@ -60501,19 +60836,139 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - anon_sym_COLON2, - sym_type_conversion, - [43857] = 3, + [44163] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(1544), 6, + ACTIONS(1554), 1, + anon_sym_DOT, + ACTIONS(1556), 1, + anon_sym_LPAREN, + ACTIONS(1566), 1, + anon_sym_PIPE, + ACTIONS(1570), 1, + anon_sym_LBRACK, + ACTIONS(1572), 1, + anon_sym_STAR_STAR, + ACTIONS(1574), 1, + anon_sym_EQ, + ACTIONS(1578), 1, + anon_sym_not, + ACTIONS(1580), 1, + anon_sym_AMP, + ACTIONS(1582), 1, + anon_sym_CARET, + ACTIONS(1586), 1, + anon_sym_is, + STATE(997), 1, + aux_sym_comparison_operator_repeat1, + ACTIONS(1560), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(1562), 2, + anon_sym_GT_GT, + anon_sym_LT_LT, + ACTIONS(1568), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(1584), 2, + anon_sym_LT, + anon_sym_GT, + STATE(708), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1576), 3, + anon_sym_AT, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + ACTIONS(1564), 6, + anon_sym_in, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + ACTIONS(1558), 9, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_if, + anon_sym_COLON, + anon_sym_else, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_and, + anon_sym_or, + [44244] = 20, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1554), 1, + anon_sym_DOT, + ACTIONS(1556), 1, + anon_sym_LPAREN, + ACTIONS(1570), 1, + anon_sym_LBRACK, + ACTIONS(1574), 1, + anon_sym_as, + ACTIONS(1594), 1, + anon_sym_PIPE, + ACTIONS(1598), 1, + anon_sym_STAR_STAR, + ACTIONS(1602), 1, + anon_sym_not, + ACTIONS(1604), 1, + anon_sym_AMP, + ACTIONS(1606), 1, + anon_sym_CARET, + ACTIONS(1610), 1, + anon_sym_is, + STATE(998), 1, + aux_sym_comparison_operator_repeat1, + ACTIONS(1588), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(1590), 2, + anon_sym_GT_GT, + anon_sym_LT_LT, + ACTIONS(1596), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(1608), 2, + anon_sym_LT, + anon_sym_GT, + STATE(708), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1600), 3, + anon_sym_AT, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + ACTIONS(1592), 6, + anon_sym_in, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + ACTIONS(1558), 9, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_if, + anon_sym_async, + anon_sym_for, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_and, + anon_sym_or, + [44325] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(272), 6, anon_sym_as, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1542), 33, + ACTIONS(303), 33, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -60547,17 +61002,17 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [43904] = 3, + [44372] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1548), 6, + ACTIONS(1614), 6, anon_sym_as, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1546), 33, + ACTIONS(1612), 33, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -60591,17 +61046,17 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [43951] = 3, + [44419] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1552), 6, + ACTIONS(1618), 6, anon_sym_as, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1550), 33, + ACTIONS(1616), 33, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -60635,17 +61090,17 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [43998] = 3, + [44466] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1556), 6, + ACTIONS(1622), 6, anon_sym_as, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1554), 33, + ACTIONS(1620), 33, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -60679,17 +61134,17 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [44045] = 3, + [44513] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1556), 6, + ACTIONS(1626), 6, anon_sym_as, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1554), 33, + ACTIONS(1624), 33, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -60723,17 +61178,17 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [44092] = 3, + [44560] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1560), 6, + ACTIONS(1630), 6, anon_sym_as, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1558), 33, + ACTIONS(1628), 33, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -60767,17 +61222,17 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [44139] = 3, + [44607] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(272), 6, + ACTIONS(1634), 6, anon_sym_as, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(303), 33, + ACTIONS(1632), 33, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -60811,17 +61266,17 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [44186] = 3, + [44654] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1564), 6, + ACTIONS(1638), 6, anon_sym_as, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1562), 33, + ACTIONS(1636), 33, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -60855,17 +61310,17 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [44233] = 3, + [44701] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1568), 6, + ACTIONS(1642), 6, anon_sym_as, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1566), 33, + ACTIONS(1640), 33, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -60899,17 +61354,17 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [44280] = 3, + [44748] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1572), 6, + ACTIONS(1646), 6, anon_sym_as, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1570), 33, + ACTIONS(1644), 33, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -60943,17 +61398,17 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [44327] = 3, + [44795] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1568), 6, + ACTIONS(1650), 6, anon_sym_as, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1566), 33, + ACTIONS(1648), 33, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -60987,17 +61442,17 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [44374] = 3, + [44842] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1576), 6, + ACTIONS(1654), 6, anon_sym_as, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1574), 33, + ACTIONS(1652), 33, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -61031,17 +61486,17 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [44421] = 3, + [44889] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1580), 6, + ACTIONS(1658), 6, anon_sym_as, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1578), 33, + ACTIONS(1656), 33, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -61075,17 +61530,17 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [44468] = 3, + [44936] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1584), 6, + ACTIONS(1662), 6, anon_sym_as, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1582), 33, + ACTIONS(1660), 33, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -61119,17 +61574,17 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [44515] = 3, + [44983] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1588), 6, + ACTIONS(1209), 6, anon_sym_as, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1586), 33, + ACTIONS(1204), 33, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -61163,17 +61618,17 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [44562] = 3, + [45030] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1592), 6, + ACTIONS(1666), 6, anon_sym_as, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1590), 33, + ACTIONS(1664), 33, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -61207,17 +61662,17 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [44609] = 3, + [45077] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1596), 6, + ACTIONS(1670), 6, anon_sym_as, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1594), 33, + ACTIONS(1668), 33, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -61251,17 +61706,17 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [44656] = 3, + [45124] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1600), 6, + ACTIONS(1674), 6, anon_sym_as, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1598), 33, + ACTIONS(1672), 33, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -61295,84 +61750,69 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [44703] = 20, + [45171] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1602), 1, + ACTIONS(1678), 6, + anon_sym_as, + anon_sym_STAR, + anon_sym_EQ, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1676), 33, anon_sym_DOT, - ACTIONS(1604), 1, anon_sym_LPAREN, - ACTIONS(1614), 1, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_COLON, + anon_sym_else, + anon_sym_async, + anon_sym_for, + anon_sym_in, anon_sym_PIPE, - ACTIONS(1618), 1, + anon_sym_DASH, + anon_sym_PLUS, anon_sym_LBRACK, - ACTIONS(1620), 1, + anon_sym_RBRACK, + anon_sym_RBRACE, anon_sym_STAR_STAR, - ACTIONS(1622), 1, - anon_sym_EQ, - ACTIONS(1626), 1, + anon_sym_AT, anon_sym_not, - ACTIONS(1628), 1, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, anon_sym_AMP, - ACTIONS(1630), 1, anon_sym_CARET, - ACTIONS(1634), 1, - anon_sym_is, - STATE(993), 1, - aux_sym_comparison_operator_repeat1, - ACTIONS(1608), 2, - anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(1610), 2, - anon_sym_GT_GT, anon_sym_LT_LT, - ACTIONS(1616), 2, - anon_sym_DASH, - anon_sym_PLUS, - ACTIONS(1632), 2, - anon_sym_LT, - anon_sym_GT, - STATE(734), 2, - sym_argument_list, - sym_generator_expression, - ACTIONS(1624), 3, - anon_sym_AT, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - ACTIONS(1612), 6, - anon_sym_in, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_GT, - ACTIONS(1606), 9, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_if, - anon_sym_COLON, - anon_sym_else, - anon_sym_RBRACK, - anon_sym_RBRACE, - anon_sym_and, - anon_sym_or, - [44784] = 3, + anon_sym_is, + [45218] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1468), 6, + ACTIONS(1682), 6, anon_sym_as, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1463), 33, + ACTIONS(1680), 33, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_GT_GT, anon_sym_if, + anon_sym_COLON, + anon_sym_else, anon_sym_async, anon_sym_for, anon_sym_in, @@ -61398,19 +61838,17 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - anon_sym_COLON2, - sym_type_conversion, - [44831] = 3, + [45265] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1638), 6, + ACTIONS(1686), 6, anon_sym_as, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1636), 33, + ACTIONS(1684), 33, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -61444,17 +61882,17 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [44878] = 3, + [45312] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1642), 6, + ACTIONS(1690), 6, anon_sym_as, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1640), 33, + ACTIONS(1688), 33, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -61488,17 +61926,17 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [44925] = 3, + [45359] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1646), 6, + ACTIONS(1690), 6, anon_sym_as, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1644), 33, + ACTIONS(1688), 33, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -61532,17 +61970,17 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [44972] = 3, + [45406] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1650), 6, + ACTIONS(1694), 6, anon_sym_as, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1648), 33, + ACTIONS(1692), 33, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -61576,17 +62014,17 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [45019] = 3, + [45453] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1235), 6, + ACTIONS(1698), 6, anon_sym_as, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1230), 33, + ACTIONS(1696), 33, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -61620,78 +62058,61 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [45066] = 20, + [45500] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1602), 1, - anon_sym_DOT, - ACTIONS(1604), 1, - anon_sym_LPAREN, - ACTIONS(1618), 1, - anon_sym_LBRACK, - ACTIONS(1622), 1, + ACTIONS(1690), 6, anon_sym_as, - ACTIONS(1658), 1, - anon_sym_PIPE, - ACTIONS(1662), 1, - anon_sym_STAR_STAR, - ACTIONS(1666), 1, - anon_sym_not, - ACTIONS(1668), 1, - anon_sym_AMP, - ACTIONS(1670), 1, - anon_sym_CARET, - ACTIONS(1674), 1, - anon_sym_is, - STATE(990), 1, - aux_sym_comparison_operator_repeat1, - ACTIONS(1652), 2, anon_sym_STAR, + anon_sym_EQ, anon_sym_SLASH, - ACTIONS(1654), 2, - anon_sym_GT_GT, - anon_sym_LT_LT, - ACTIONS(1660), 2, - anon_sym_DASH, - anon_sym_PLUS, - ACTIONS(1672), 2, anon_sym_LT, anon_sym_GT, - STATE(734), 2, - sym_argument_list, - sym_generator_expression, - ACTIONS(1664), 3, - anon_sym_AT, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - ACTIONS(1656), 6, - anon_sym_in, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - ACTIONS(1606), 9, + ACTIONS(1688), 33, + anon_sym_DOT, + anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_COMMA, + anon_sym_GT_GT, anon_sym_if, + anon_sym_COLON, + anon_sym_else, anon_sym_async, anon_sym_for, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_RBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_not, anon_sym_and, anon_sym_or, - [45147] = 3, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [45547] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1678), 6, + ACTIONS(1702), 6, anon_sym_as, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1676), 33, + ACTIONS(1700), 33, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -61725,17 +62146,17 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [45194] = 3, + [45594] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1682), 6, + ACTIONS(1702), 6, anon_sym_as, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1680), 33, + ACTIONS(1700), 33, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -61769,17 +62190,17 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [45241] = 3, + [45641] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1580), 6, + ACTIONS(1706), 6, anon_sym_as, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1578), 33, + ACTIONS(1704), 33, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -61813,17 +62234,17 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [45288] = 3, + [45688] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1588), 6, + ACTIONS(1702), 6, anon_sym_as, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1586), 33, + ACTIONS(1700), 33, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -61857,25 +62278,23 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [45335] = 3, + [45735] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1686), 6, + ACTIONS(1338), 6, anon_sym_as, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1684), 33, + ACTIONS(1333), 33, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_GT_GT, anon_sym_if, - anon_sym_COLON, - anon_sym_else, anon_sym_async, anon_sym_for, anon_sym_in, @@ -61901,25 +62320,25 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [45382] = 3, + anon_sym_COLON2, + sym_type_conversion, + [45782] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1690), 6, + ACTIONS(1295), 6, anon_sym_as, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1688), 33, + ACTIONS(1290), 33, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_GT_GT, anon_sym_if, - anon_sym_COLON, - anon_sym_else, anon_sym_async, anon_sym_for, anon_sym_in, @@ -61945,17 +62364,19 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [45429] = 3, + anon_sym_COLON2, + sym_type_conversion, + [45829] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1694), 6, + ACTIONS(1710), 6, anon_sym_as, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1692), 33, + ACTIONS(1708), 33, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -61989,136 +62410,98 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [45476] = 3, + [45876] = 14, ACTIONS(3), 1, sym_comment, - ACTIONS(1698), 6, - anon_sym_as, - anon_sym_STAR, - anon_sym_EQ, - anon_sym_SLASH, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1696), 33, + ACTIONS(1554), 1, anon_sym_DOT, + ACTIONS(1556), 1, anon_sym_LPAREN, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_GT_GT, - anon_sym_if, - anon_sym_COLON, - anon_sym_else, - anon_sym_async, - anon_sym_for, - anon_sym_in, - anon_sym_PIPE, - anon_sym_DASH, - anon_sym_PLUS, + ACTIONS(1570), 1, anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_RBRACE, + ACTIONS(1572), 1, anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_not, - anon_sym_and, - anon_sym_or, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, + ACTIONS(1580), 1, anon_sym_AMP, + ACTIONS(1582), 1, anon_sym_CARET, + ACTIONS(1560), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(1562), 2, + anon_sym_GT_GT, anon_sym_LT_LT, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - anon_sym_is, - [45523] = 8, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1602), 1, - anon_sym_DOT, - ACTIONS(1604), 1, - anon_sym_LPAREN, - ACTIONS(1618), 1, - anon_sym_LBRACK, - ACTIONS(1620), 1, - anon_sym_STAR_STAR, - STATE(734), 2, + ACTIONS(1568), 2, + anon_sym_DASH, + anon_sym_PLUS, + STATE(708), 2, sym_argument_list, sym_generator_expression, - ACTIONS(1702), 5, - anon_sym_STAR, + ACTIONS(1576), 3, + anon_sym_AT, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + ACTIONS(1714), 3, anon_sym_EQ, - anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1700), 27, + ACTIONS(1712), 18, anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_GT_GT, anon_sym_if, anon_sym_COLON, anon_sym_else, anon_sym_in, anon_sym_PIPE, - anon_sym_DASH, - anon_sym_PLUS, anon_sym_RBRACK, anon_sym_RBRACE, - anon_sym_AT, anon_sym_not, anon_sym_and, anon_sym_or, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [45579] = 15, + [45944] = 15, ACTIONS(3), 1, sym_comment, - ACTIONS(1602), 1, + ACTIONS(1554), 1, anon_sym_DOT, - ACTIONS(1604), 1, + ACTIONS(1556), 1, anon_sym_LPAREN, - ACTIONS(1618), 1, + ACTIONS(1570), 1, anon_sym_LBRACK, - ACTIONS(1658), 1, + ACTIONS(1594), 1, anon_sym_PIPE, - ACTIONS(1662), 1, + ACTIONS(1598), 1, anon_sym_STAR_STAR, - ACTIONS(1668), 1, + ACTIONS(1604), 1, anon_sym_AMP, - ACTIONS(1670), 1, + ACTIONS(1606), 1, anon_sym_CARET, - ACTIONS(1652), 2, + ACTIONS(1588), 2, anon_sym_STAR, anon_sym_SLASH, - ACTIONS(1654), 2, + ACTIONS(1590), 2, anon_sym_GT_GT, anon_sym_LT_LT, - ACTIONS(1660), 2, + ACTIONS(1596), 2, anon_sym_DASH, anon_sym_PLUS, - STATE(734), 2, + STATE(708), 2, sym_argument_list, sym_generator_expression, - ACTIONS(1664), 3, + ACTIONS(1600), 3, anon_sym_AT, anon_sym_PERCENT, anon_sym_SLASH_SLASH, - ACTIONS(1706), 3, + ACTIONS(1718), 3, anon_sym_as, anon_sym_LT, anon_sym_GT, - ACTIONS(1704), 17, + ACTIONS(1716), 17, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_if, @@ -62136,173 +62519,186 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [45649] = 8, + [46014] = 15, ACTIONS(3), 1, sym_comment, - ACTIONS(1602), 1, + ACTIONS(1554), 1, anon_sym_DOT, - ACTIONS(1604), 1, + ACTIONS(1556), 1, anon_sym_LPAREN, - ACTIONS(1618), 1, + ACTIONS(1570), 1, anon_sym_LBRACK, - ACTIONS(1662), 1, + ACTIONS(1594), 1, + anon_sym_PIPE, + ACTIONS(1598), 1, anon_sym_STAR_STAR, - STATE(734), 2, + ACTIONS(1604), 1, + anon_sym_AMP, + ACTIONS(1606), 1, + anon_sym_CARET, + ACTIONS(1588), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(1590), 2, + anon_sym_GT_GT, + anon_sym_LT_LT, + ACTIONS(1596), 2, + anon_sym_DASH, + anon_sym_PLUS, + STATE(708), 2, sym_argument_list, sym_generator_expression, - ACTIONS(1702), 5, + ACTIONS(1600), 3, + anon_sym_AT, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + ACTIONS(1722), 3, anon_sym_as, - anon_sym_STAR, - anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1700), 27, + ACTIONS(1720), 17, anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_GT_GT, anon_sym_if, anon_sym_async, anon_sym_for, anon_sym_in, - anon_sym_PIPE, - anon_sym_DASH, - anon_sym_PLUS, anon_sym_RBRACK, anon_sym_RBRACE, - anon_sym_AT, anon_sym_not, anon_sym_and, anon_sym_or, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [45705] = 5, + [46084] = 14, ACTIONS(3), 1, sym_comment, - ACTIONS(1708), 1, - sym__template_string_start, - STATE(738), 2, - sym_template_string, - aux_sym_concatenated_template_string_repeat1, - ACTIONS(1521), 4, + ACTIONS(1554), 1, + anon_sym_DOT, + ACTIONS(1556), 1, + anon_sym_LPAREN, + ACTIONS(1570), 1, + anon_sym_LBRACK, + ACTIONS(1598), 1, + anon_sym_STAR_STAR, + ACTIONS(1604), 1, + anon_sym_AMP, + ACTIONS(1606), 1, + anon_sym_CARET, + ACTIONS(1588), 2, anon_sym_STAR, anon_sym_SLASH, + ACTIONS(1590), 2, + anon_sym_GT_GT, + anon_sym_LT_LT, + ACTIONS(1596), 2, + anon_sym_DASH, + anon_sym_PLUS, + STATE(708), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1600), 3, + anon_sym_AT, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + ACTIONS(1714), 3, + anon_sym_as, anon_sym_LT, anon_sym_GT, - ACTIONS(1519), 31, - anon_sym_DOT, - anon_sym_LPAREN, + ACTIONS(1712), 18, anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_as, - anon_sym_GT_GT, anon_sym_if, - anon_sym_COLON, + anon_sym_async, + anon_sym_for, anon_sym_in, anon_sym_PIPE, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_RBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, anon_sym_not, anon_sym_and, anon_sym_or, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [45755] = 13, + [46152] = 10, ACTIONS(3), 1, sym_comment, - ACTIONS(1602), 1, + ACTIONS(1554), 1, anon_sym_DOT, - ACTIONS(1604), 1, + ACTIONS(1556), 1, anon_sym_LPAREN, - ACTIONS(1618), 1, + ACTIONS(1570), 1, anon_sym_LBRACK, - ACTIONS(1620), 1, + ACTIONS(1598), 1, anon_sym_STAR_STAR, - ACTIONS(1630), 1, - anon_sym_CARET, - ACTIONS(1608), 2, + ACTIONS(1588), 2, anon_sym_STAR, anon_sym_SLASH, - ACTIONS(1610), 2, - anon_sym_GT_GT, - anon_sym_LT_LT, - ACTIONS(1616), 2, - anon_sym_DASH, - anon_sym_PLUS, - STATE(734), 2, + STATE(708), 2, sym_argument_list, sym_generator_expression, - ACTIONS(1624), 3, + ACTIONS(1600), 3, anon_sym_AT, anon_sym_PERCENT, anon_sym_SLASH_SLASH, - ACTIONS(1713), 3, - anon_sym_EQ, + ACTIONS(1714), 3, + anon_sym_as, anon_sym_LT, anon_sym_GT, - ACTIONS(1711), 19, + ACTIONS(1712), 24, anon_sym_RPAREN, anon_sym_COMMA, + anon_sym_GT_GT, anon_sym_if, - anon_sym_COLON, - anon_sym_else, + anon_sym_async, + anon_sym_for, anon_sym_in, anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, anon_sym_RBRACK, anon_sym_RBRACE, anon_sym_not, anon_sym_and, anon_sym_or, anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [45821] = 8, + [46212] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(1602), 1, + ACTIONS(1554), 1, anon_sym_DOT, - ACTIONS(1604), 1, + ACTIONS(1556), 1, anon_sym_LPAREN, - ACTIONS(1618), 1, + ACTIONS(1570), 1, anon_sym_LBRACK, - ACTIONS(1662), 1, + ACTIONS(1598), 1, anon_sym_STAR_STAR, - STATE(734), 2, + STATE(708), 2, sym_argument_list, sym_generator_expression, - ACTIONS(1717), 5, + ACTIONS(1714), 5, anon_sym_as, anon_sym_STAR, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1715), 27, + ACTIONS(1712), 27, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_GT_GT, @@ -62330,91 +62726,96 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [45877] = 8, + [46268] = 13, ACTIONS(3), 1, sym_comment, - ACTIONS(1602), 1, + ACTIONS(1554), 1, anon_sym_DOT, - ACTIONS(1604), 1, + ACTIONS(1556), 1, anon_sym_LPAREN, - ACTIONS(1618), 1, + ACTIONS(1570), 1, anon_sym_LBRACK, - ACTIONS(1620), 1, + ACTIONS(1598), 1, anon_sym_STAR_STAR, - STATE(734), 2, - sym_argument_list, - sym_generator_expression, - ACTIONS(1717), 5, + ACTIONS(1606), 1, + anon_sym_CARET, + ACTIONS(1588), 2, anon_sym_STAR, - anon_sym_EQ, anon_sym_SLASH, + ACTIONS(1590), 2, + anon_sym_GT_GT, + anon_sym_LT_LT, + ACTIONS(1596), 2, + anon_sym_DASH, + anon_sym_PLUS, + STATE(708), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1600), 3, + anon_sym_AT, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + ACTIONS(1714), 3, + anon_sym_as, anon_sym_LT, anon_sym_GT, - ACTIONS(1715), 27, + ACTIONS(1712), 19, anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_GT_GT, anon_sym_if, - anon_sym_COLON, - anon_sym_else, + anon_sym_async, + anon_sym_for, anon_sym_in, anon_sym_PIPE, - anon_sym_DASH, - anon_sym_PLUS, anon_sym_RBRACK, anon_sym_RBRACE, - anon_sym_AT, anon_sym_not, anon_sym_and, anon_sym_or, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [45933] = 12, + [46334] = 12, ACTIONS(3), 1, sym_comment, - ACTIONS(1602), 1, + ACTIONS(1554), 1, anon_sym_DOT, - ACTIONS(1604), 1, + ACTIONS(1556), 1, anon_sym_LPAREN, - ACTIONS(1618), 1, + ACTIONS(1570), 1, anon_sym_LBRACK, - ACTIONS(1620), 1, + ACTIONS(1598), 1, anon_sym_STAR_STAR, - ACTIONS(1608), 2, + ACTIONS(1588), 2, anon_sym_STAR, anon_sym_SLASH, - ACTIONS(1610), 2, + ACTIONS(1590), 2, anon_sym_GT_GT, anon_sym_LT_LT, - ACTIONS(1616), 2, + ACTIONS(1596), 2, anon_sym_DASH, anon_sym_PLUS, - STATE(734), 2, + STATE(708), 2, sym_argument_list, sym_generator_expression, - ACTIONS(1624), 3, + ACTIONS(1600), 3, anon_sym_AT, anon_sym_PERCENT, anon_sym_SLASH_SLASH, - ACTIONS(1713), 3, - anon_sym_EQ, + ACTIONS(1714), 3, + anon_sym_as, anon_sym_LT, anon_sym_GT, - ACTIONS(1711), 20, + ACTIONS(1712), 20, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_if, - anon_sym_COLON, - anon_sym_else, + anon_sym_async, + anon_sym_for, anon_sym_in, anon_sym_PIPE, anon_sym_RBRACK, @@ -62430,33 +62831,33 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [45997] = 8, + [46398] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(1602), 1, + ACTIONS(1554), 1, anon_sym_DOT, - ACTIONS(1604), 1, + ACTIONS(1556), 1, anon_sym_LPAREN, - ACTIONS(1618), 1, + ACTIONS(1570), 1, anon_sym_LBRACK, - ACTIONS(1620), 1, + ACTIONS(1598), 1, anon_sym_STAR_STAR, - STATE(734), 2, + STATE(708), 2, sym_argument_list, sym_generator_expression, - ACTIONS(1713), 5, + ACTIONS(1726), 5, + anon_sym_as, anon_sym_STAR, - anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1711), 27, + ACTIONS(1724), 27, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_GT_GT, anon_sym_if, - anon_sym_COLON, - anon_sym_else, + anon_sym_async, + anon_sym_for, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, @@ -62478,137 +62879,165 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [46053] = 15, + [46454] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(1602), 1, + ACTIONS(1554), 1, anon_sym_DOT, - ACTIONS(1604), 1, + ACTIONS(1556), 1, anon_sym_LPAREN, - ACTIONS(1618), 1, + ACTIONS(1570), 1, anon_sym_LBRACK, - ACTIONS(1658), 1, - anon_sym_PIPE, - ACTIONS(1662), 1, + ACTIONS(1598), 1, anon_sym_STAR_STAR, - ACTIONS(1668), 1, - anon_sym_AMP, - ACTIONS(1670), 1, - anon_sym_CARET, - ACTIONS(1652), 2, - anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(1654), 2, - anon_sym_GT_GT, - anon_sym_LT_LT, - ACTIONS(1660), 2, - anon_sym_DASH, - anon_sym_PLUS, - STATE(734), 2, + STATE(708), 2, sym_argument_list, sym_generator_expression, - ACTIONS(1664), 3, - anon_sym_AT, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - ACTIONS(1721), 3, + ACTIONS(1730), 5, anon_sym_as, + anon_sym_STAR, + anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1719), 17, + ACTIONS(1728), 27, anon_sym_RPAREN, anon_sym_COMMA, + anon_sym_GT_GT, anon_sym_if, anon_sym_async, anon_sym_for, anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, anon_sym_RBRACK, anon_sym_RBRACE, + anon_sym_AT, anon_sym_not, anon_sym_and, anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [46123] = 15, + [46510] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(1602), 1, + ACTIONS(664), 1, + sym__string_start, + STATE(753), 2, + sym_string, + aux_sym_concatenated_string_repeat1, + ACTIONS(1532), 4, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1530), 31, anon_sym_DOT, - ACTIONS(1604), 1, anon_sym_LPAREN, - ACTIONS(1614), 1, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_as, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_COLON, + anon_sym_in, anon_sym_PIPE, - ACTIONS(1618), 1, + anon_sym_DASH, + anon_sym_PLUS, anon_sym_LBRACK, - ACTIONS(1620), 1, + anon_sym_RBRACK, + anon_sym_RBRACE, anon_sym_STAR_STAR, - ACTIONS(1628), 1, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, anon_sym_AMP, - ACTIONS(1630), 1, anon_sym_CARET, - ACTIONS(1608), 2, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [46560] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(666), 1, + sym__template_string_start, + STATE(754), 2, + sym_template_string, + aux_sym_concatenated_template_string_repeat1, + ACTIONS(1536), 4, anon_sym_STAR, anon_sym_SLASH, - ACTIONS(1610), 2, - anon_sym_GT_GT, - anon_sym_LT_LT, - ACTIONS(1616), 2, - anon_sym_DASH, - anon_sym_PLUS, - STATE(734), 2, - sym_argument_list, - sym_generator_expression, - ACTIONS(1624), 3, - anon_sym_AT, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - ACTIONS(1721), 3, - anon_sym_EQ, anon_sym_LT, anon_sym_GT, - ACTIONS(1719), 17, + ACTIONS(1534), 31, + anon_sym_DOT, + anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_COMMA, + anon_sym_as, + anon_sym_GT_GT, anon_sym_if, anon_sym_COLON, - anon_sym_else, anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_RBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, anon_sym_not, anon_sym_and, anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [46193] = 8, + [46610] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(1602), 1, + ACTIONS(1554), 1, anon_sym_DOT, - ACTIONS(1604), 1, + ACTIONS(1556), 1, anon_sym_LPAREN, - ACTIONS(1618), 1, + ACTIONS(1570), 1, anon_sym_LBRACK, - ACTIONS(1662), 1, + ACTIONS(1598), 1, anon_sym_STAR_STAR, - STATE(734), 2, + STATE(708), 2, sym_argument_list, sym_generator_expression, - ACTIONS(1713), 5, + ACTIONS(1714), 5, anon_sym_as, anon_sym_STAR, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1711), 27, + ACTIONS(1712), 27, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_GT_GT, @@ -62636,35 +63065,35 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [46249] = 11, + [46666] = 11, ACTIONS(3), 1, sym_comment, - ACTIONS(1602), 1, + ACTIONS(1554), 1, anon_sym_DOT, - ACTIONS(1604), 1, + ACTIONS(1556), 1, anon_sym_LPAREN, - ACTIONS(1618), 1, + ACTIONS(1570), 1, anon_sym_LBRACK, - ACTIONS(1662), 1, + ACTIONS(1598), 1, anon_sym_STAR_STAR, - ACTIONS(1652), 2, + ACTIONS(1588), 2, anon_sym_STAR, anon_sym_SLASH, - ACTIONS(1660), 2, + ACTIONS(1596), 2, anon_sym_DASH, anon_sym_PLUS, - STATE(734), 2, + STATE(708), 2, sym_argument_list, sym_generator_expression, - ACTIONS(1664), 3, + ACTIONS(1600), 3, anon_sym_AT, anon_sym_PERCENT, anon_sym_SLASH_SLASH, - ACTIONS(1713), 3, + ACTIONS(1714), 3, anon_sym_as, anon_sym_LT, anon_sym_GT, - ACTIONS(1711), 22, + ACTIONS(1712), 22, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_GT_GT, @@ -62687,156 +63116,87 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [46311] = 15, + [46728] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(1602), 1, - anon_sym_DOT, - ACTIONS(1604), 1, - anon_sym_LPAREN, - ACTIONS(1618), 1, - anon_sym_LBRACK, - ACTIONS(1658), 1, - anon_sym_PIPE, - ACTIONS(1662), 1, - anon_sym_STAR_STAR, - ACTIONS(1668), 1, - anon_sym_AMP, - ACTIONS(1670), 1, - anon_sym_CARET, - ACTIONS(1652), 2, + ACTIONS(1732), 1, + sym__string_start, + STATE(753), 2, + sym_string, + aux_sym_concatenated_string_repeat1, + ACTIONS(1525), 4, anon_sym_STAR, anon_sym_SLASH, - ACTIONS(1654), 2, - anon_sym_GT_GT, - anon_sym_LT_LT, - ACTIONS(1660), 2, - anon_sym_DASH, - anon_sym_PLUS, - STATE(734), 2, - sym_argument_list, - sym_generator_expression, - ACTIONS(1664), 3, - anon_sym_AT, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - ACTIONS(1725), 3, - anon_sym_as, anon_sym_LT, anon_sym_GT, - ACTIONS(1723), 17, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_if, - anon_sym_async, - anon_sym_for, - anon_sym_in, - anon_sym_RBRACK, - anon_sym_RBRACE, - anon_sym_not, - anon_sym_and, - anon_sym_or, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - anon_sym_is, - [46381] = 14, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1602), 1, + ACTIONS(1523), 31, anon_sym_DOT, - ACTIONS(1604), 1, anon_sym_LPAREN, - ACTIONS(1618), 1, - anon_sym_LBRACK, - ACTIONS(1662), 1, - anon_sym_STAR_STAR, - ACTIONS(1668), 1, - anon_sym_AMP, - ACTIONS(1670), 1, - anon_sym_CARET, - ACTIONS(1652), 2, - anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(1654), 2, - anon_sym_GT_GT, - anon_sym_LT_LT, - ACTIONS(1660), 2, - anon_sym_DASH, - anon_sym_PLUS, - STATE(734), 2, - sym_argument_list, - sym_generator_expression, - ACTIONS(1664), 3, - anon_sym_AT, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - ACTIONS(1713), 3, - anon_sym_as, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1711), 18, anon_sym_RPAREN, anon_sym_COMMA, + anon_sym_as, + anon_sym_GT_GT, anon_sym_if, - anon_sym_async, - anon_sym_for, + anon_sym_COLON, anon_sym_in, anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_RBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, anon_sym_not, anon_sym_and, anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [46449] = 10, + [46778] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(1602), 1, - anon_sym_DOT, - ACTIONS(1604), 1, - anon_sym_LPAREN, - ACTIONS(1618), 1, - anon_sym_LBRACK, - ACTIONS(1662), 1, - anon_sym_STAR_STAR, - ACTIONS(1652), 2, + ACTIONS(1735), 1, + sym__template_string_start, + STATE(754), 2, + sym_template_string, + aux_sym_concatenated_template_string_repeat1, + ACTIONS(1512), 4, anon_sym_STAR, anon_sym_SLASH, - STATE(734), 2, - sym_argument_list, - sym_generator_expression, - ACTIONS(1664), 3, - anon_sym_AT, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - ACTIONS(1713), 3, - anon_sym_as, anon_sym_LT, anon_sym_GT, - ACTIONS(1711), 24, + ACTIONS(1510), 31, + anon_sym_DOT, + anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_COMMA, + anon_sym_as, anon_sym_GT_GT, anon_sym_if, - anon_sym_async, - anon_sym_for, + anon_sym_COLON, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, + anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_RBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, anon_sym_not, anon_sym_and, anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, anon_sym_AMP, anon_sym_CARET, anon_sym_LT_LT, @@ -62846,33 +63206,33 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [46509] = 8, + [46828] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(1602), 1, + ACTIONS(1554), 1, anon_sym_DOT, - ACTIONS(1604), 1, + ACTIONS(1556), 1, anon_sym_LPAREN, - ACTIONS(1618), 1, + ACTIONS(1570), 1, anon_sym_LBRACK, - ACTIONS(1662), 1, + ACTIONS(1572), 1, anon_sym_STAR_STAR, - STATE(734), 2, + STATE(708), 2, sym_argument_list, sym_generator_expression, - ACTIONS(1713), 5, - anon_sym_as, + ACTIONS(1714), 5, anon_sym_STAR, + anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1711), 27, + ACTIONS(1712), 27, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_GT_GT, anon_sym_if, - anon_sym_async, - anon_sym_for, + anon_sym_COLON, + anon_sym_else, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, @@ -62894,42 +63254,48 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [46565] = 5, + [46884] = 11, ACTIONS(3), 1, sym_comment, - ACTIONS(1727), 1, - sym__string_start, - STATE(752), 2, - sym_string, - aux_sym_concatenated_string_repeat1, - ACTIONS(1514), 4, + ACTIONS(1554), 1, + anon_sym_DOT, + ACTIONS(1556), 1, + anon_sym_LPAREN, + ACTIONS(1570), 1, + anon_sym_LBRACK, + ACTIONS(1572), 1, + anon_sym_STAR_STAR, + ACTIONS(1560), 2, anon_sym_STAR, anon_sym_SLASH, + ACTIONS(1568), 2, + anon_sym_DASH, + anon_sym_PLUS, + STATE(708), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1576), 3, + anon_sym_AT, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + ACTIONS(1714), 3, + anon_sym_EQ, anon_sym_LT, anon_sym_GT, - ACTIONS(1512), 31, - anon_sym_DOT, - anon_sym_LPAREN, + ACTIONS(1712), 22, anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_as, anon_sym_GT_GT, anon_sym_if, anon_sym_COLON, + anon_sym_else, anon_sym_in, anon_sym_PIPE, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_RBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, anon_sym_not, anon_sym_and, anon_sym_or, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, anon_sym_AMP, anon_sym_CARET, anon_sym_LT_LT, @@ -62939,98 +63305,97 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [46615] = 13, + [46946] = 15, ACTIONS(3), 1, sym_comment, - ACTIONS(1602), 1, + ACTIONS(1554), 1, anon_sym_DOT, - ACTIONS(1604), 1, + ACTIONS(1556), 1, anon_sym_LPAREN, - ACTIONS(1618), 1, + ACTIONS(1566), 1, + anon_sym_PIPE, + ACTIONS(1570), 1, anon_sym_LBRACK, - ACTIONS(1662), 1, + ACTIONS(1572), 1, anon_sym_STAR_STAR, - ACTIONS(1670), 1, + ACTIONS(1580), 1, + anon_sym_AMP, + ACTIONS(1582), 1, anon_sym_CARET, - ACTIONS(1652), 2, + ACTIONS(1560), 2, anon_sym_STAR, anon_sym_SLASH, - ACTIONS(1654), 2, + ACTIONS(1562), 2, anon_sym_GT_GT, anon_sym_LT_LT, - ACTIONS(1660), 2, + ACTIONS(1568), 2, anon_sym_DASH, anon_sym_PLUS, - STATE(734), 2, + STATE(708), 2, sym_argument_list, sym_generator_expression, - ACTIONS(1664), 3, + ACTIONS(1576), 3, anon_sym_AT, anon_sym_PERCENT, anon_sym_SLASH_SLASH, - ACTIONS(1713), 3, - anon_sym_as, + ACTIONS(1740), 3, + anon_sym_EQ, anon_sym_LT, anon_sym_GT, - ACTIONS(1711), 19, + ACTIONS(1738), 17, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_if, - anon_sym_async, - anon_sym_for, + anon_sym_COLON, + anon_sym_else, anon_sym_in, - anon_sym_PIPE, anon_sym_RBRACK, anon_sym_RBRACE, anon_sym_not, anon_sym_and, anon_sym_or, - anon_sym_AMP, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [46681] = 12, + [47016] = 10, ACTIONS(3), 1, sym_comment, - ACTIONS(1602), 1, + ACTIONS(1554), 1, anon_sym_DOT, - ACTIONS(1604), 1, + ACTIONS(1556), 1, anon_sym_LPAREN, - ACTIONS(1618), 1, + ACTIONS(1570), 1, anon_sym_LBRACK, - ACTIONS(1662), 1, + ACTIONS(1572), 1, anon_sym_STAR_STAR, - ACTIONS(1652), 2, + ACTIONS(1560), 2, anon_sym_STAR, anon_sym_SLASH, - ACTIONS(1654), 2, - anon_sym_GT_GT, - anon_sym_LT_LT, - ACTIONS(1660), 2, - anon_sym_DASH, - anon_sym_PLUS, - STATE(734), 2, + STATE(708), 2, sym_argument_list, sym_generator_expression, - ACTIONS(1664), 3, + ACTIONS(1576), 3, anon_sym_AT, anon_sym_PERCENT, anon_sym_SLASH_SLASH, - ACTIONS(1713), 3, - anon_sym_as, + ACTIONS(1714), 3, + anon_sym_EQ, anon_sym_LT, anon_sym_GT, - ACTIONS(1711), 20, + ACTIONS(1712), 24, anon_sym_RPAREN, anon_sym_COMMA, + anon_sym_GT_GT, anon_sym_if, - anon_sym_async, - anon_sym_for, + anon_sym_COLON, + anon_sym_else, anon_sym_in, anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, anon_sym_RBRACK, anon_sym_RBRACE, anon_sym_not, @@ -63038,33 +63403,34 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_or, anon_sym_AMP, anon_sym_CARET, + anon_sym_LT_LT, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [46745] = 8, + [47076] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(1602), 1, + ACTIONS(1554), 1, anon_sym_DOT, - ACTIONS(1604), 1, + ACTIONS(1556), 1, anon_sym_LPAREN, - ACTIONS(1618), 1, + ACTIONS(1570), 1, anon_sym_LBRACK, - ACTIONS(1620), 1, + ACTIONS(1572), 1, anon_sym_STAR_STAR, - STATE(734), 2, + STATE(708), 2, sym_argument_list, sym_generator_expression, - ACTIONS(1713), 5, + ACTIONS(1714), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1711), 27, + ACTIONS(1712), 27, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_GT_GT, @@ -63092,38 +63458,42 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [46801] = 11, + [47132] = 13, ACTIONS(3), 1, sym_comment, - ACTIONS(1602), 1, + ACTIONS(1554), 1, anon_sym_DOT, - ACTIONS(1604), 1, + ACTIONS(1556), 1, anon_sym_LPAREN, - ACTIONS(1618), 1, + ACTIONS(1570), 1, anon_sym_LBRACK, - ACTIONS(1620), 1, + ACTIONS(1572), 1, anon_sym_STAR_STAR, - ACTIONS(1608), 2, + ACTIONS(1582), 1, + anon_sym_CARET, + ACTIONS(1560), 2, anon_sym_STAR, anon_sym_SLASH, - ACTIONS(1616), 2, + ACTIONS(1562), 2, + anon_sym_GT_GT, + anon_sym_LT_LT, + ACTIONS(1568), 2, anon_sym_DASH, anon_sym_PLUS, - STATE(734), 2, + STATE(708), 2, sym_argument_list, sym_generator_expression, - ACTIONS(1624), 3, + ACTIONS(1576), 3, anon_sym_AT, anon_sym_PERCENT, anon_sym_SLASH_SLASH, - ACTIONS(1713), 3, + ACTIONS(1714), 3, anon_sym_EQ, anon_sym_LT, anon_sym_GT, - ACTIONS(1711), 22, + ACTIONS(1712), 19, anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_GT_GT, anon_sym_if, anon_sym_COLON, anon_sym_else, @@ -63135,107 +63505,102 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_and, anon_sym_or, anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [46863] = 15, + [47198] = 12, ACTIONS(3), 1, sym_comment, - ACTIONS(1602), 1, + ACTIONS(1554), 1, anon_sym_DOT, - ACTIONS(1604), 1, + ACTIONS(1556), 1, anon_sym_LPAREN, - ACTIONS(1614), 1, - anon_sym_PIPE, - ACTIONS(1618), 1, + ACTIONS(1570), 1, anon_sym_LBRACK, - ACTIONS(1620), 1, + ACTIONS(1572), 1, anon_sym_STAR_STAR, - ACTIONS(1628), 1, - anon_sym_AMP, - ACTIONS(1630), 1, - anon_sym_CARET, - ACTIONS(1608), 2, + ACTIONS(1560), 2, anon_sym_STAR, anon_sym_SLASH, - ACTIONS(1610), 2, + ACTIONS(1562), 2, anon_sym_GT_GT, anon_sym_LT_LT, - ACTIONS(1616), 2, + ACTIONS(1568), 2, anon_sym_DASH, anon_sym_PLUS, - STATE(734), 2, + STATE(708), 2, sym_argument_list, sym_generator_expression, - ACTIONS(1624), 3, + ACTIONS(1576), 3, anon_sym_AT, anon_sym_PERCENT, anon_sym_SLASH_SLASH, - ACTIONS(1706), 3, + ACTIONS(1714), 3, anon_sym_EQ, anon_sym_LT, anon_sym_GT, - ACTIONS(1704), 17, + ACTIONS(1712), 20, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_if, anon_sym_COLON, anon_sym_else, anon_sym_in, + anon_sym_PIPE, anon_sym_RBRACK, anon_sym_RBRACE, anon_sym_not, anon_sym_and, anon_sym_or, + anon_sym_AMP, + anon_sym_CARET, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [46933] = 15, + [47262] = 15, ACTIONS(3), 1, sym_comment, - ACTIONS(1602), 1, + ACTIONS(1554), 1, anon_sym_DOT, - ACTIONS(1604), 1, + ACTIONS(1556), 1, anon_sym_LPAREN, - ACTIONS(1614), 1, + ACTIONS(1566), 1, anon_sym_PIPE, - ACTIONS(1618), 1, + ACTIONS(1570), 1, anon_sym_LBRACK, - ACTIONS(1620), 1, + ACTIONS(1572), 1, anon_sym_STAR_STAR, - ACTIONS(1628), 1, + ACTIONS(1580), 1, anon_sym_AMP, - ACTIONS(1630), 1, + ACTIONS(1582), 1, anon_sym_CARET, - ACTIONS(1608), 2, + ACTIONS(1560), 2, anon_sym_STAR, anon_sym_SLASH, - ACTIONS(1610), 2, + ACTIONS(1562), 2, anon_sym_GT_GT, anon_sym_LT_LT, - ACTIONS(1616), 2, + ACTIONS(1568), 2, anon_sym_DASH, anon_sym_PLUS, - STATE(734), 2, + STATE(708), 2, sym_argument_list, sym_generator_expression, - ACTIONS(1624), 3, + ACTIONS(1576), 3, anon_sym_AT, anon_sym_PERCENT, anon_sym_SLASH_SLASH, - ACTIONS(1725), 3, + ACTIONS(1718), 3, anon_sym_EQ, anon_sym_LT, anon_sym_GT, - ACTIONS(1723), 17, + ACTIONS(1716), 17, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_if, @@ -63253,139 +63618,105 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [47003] = 5, + [47332] = 15, ACTIONS(3), 1, sym_comment, - ACTIONS(654), 1, - sym__string_start, - STATE(752), 2, - sym_string, - aux_sym_concatenated_string_repeat1, - ACTIONS(1506), 4, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1504), 31, + ACTIONS(1554), 1, anon_sym_DOT, + ACTIONS(1556), 1, anon_sym_LPAREN, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_as, - anon_sym_GT_GT, - anon_sym_if, - anon_sym_COLON, - anon_sym_in, + ACTIONS(1566), 1, anon_sym_PIPE, - anon_sym_DASH, - anon_sym_PLUS, + ACTIONS(1570), 1, anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_RBRACE, + ACTIONS(1572), 1, anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_not, - anon_sym_and, - anon_sym_or, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, + ACTIONS(1580), 1, anon_sym_AMP, + ACTIONS(1582), 1, anon_sym_CARET, - anon_sym_LT_LT, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - anon_sym_is, - [47053] = 5, - ACTIONS(3), 1, - sym_comment, - ACTIONS(656), 1, - sym__template_string_start, - STATE(738), 2, - sym_template_string, - aux_sym_concatenated_template_string_repeat1, - ACTIONS(1510), 4, + ACTIONS(1560), 2, anon_sym_STAR, anon_sym_SLASH, + ACTIONS(1562), 2, + anon_sym_GT_GT, + anon_sym_LT_LT, + ACTIONS(1568), 2, + anon_sym_DASH, + anon_sym_PLUS, + STATE(708), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1576), 3, + anon_sym_AT, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + ACTIONS(1722), 3, + anon_sym_EQ, anon_sym_LT, anon_sym_GT, - ACTIONS(1508), 31, - anon_sym_DOT, - anon_sym_LPAREN, + ACTIONS(1720), 17, anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_as, - anon_sym_GT_GT, anon_sym_if, anon_sym_COLON, + anon_sym_else, anon_sym_in, - anon_sym_PIPE, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_RBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, anon_sym_not, anon_sym_and, anon_sym_or, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [47103] = 14, + [47402] = 15, ACTIONS(3), 1, sym_comment, - ACTIONS(1602), 1, + ACTIONS(1554), 1, anon_sym_DOT, - ACTIONS(1604), 1, + ACTIONS(1556), 1, anon_sym_LPAREN, - ACTIONS(1618), 1, + ACTIONS(1570), 1, anon_sym_LBRACK, - ACTIONS(1620), 1, + ACTIONS(1594), 1, + anon_sym_PIPE, + ACTIONS(1598), 1, anon_sym_STAR_STAR, - ACTIONS(1628), 1, + ACTIONS(1604), 1, anon_sym_AMP, - ACTIONS(1630), 1, + ACTIONS(1606), 1, anon_sym_CARET, - ACTIONS(1608), 2, + ACTIONS(1588), 2, anon_sym_STAR, anon_sym_SLASH, - ACTIONS(1610), 2, + ACTIONS(1590), 2, anon_sym_GT_GT, anon_sym_LT_LT, - ACTIONS(1616), 2, + ACTIONS(1596), 2, anon_sym_DASH, anon_sym_PLUS, - STATE(734), 2, + STATE(708), 2, sym_argument_list, sym_generator_expression, - ACTIONS(1624), 3, + ACTIONS(1600), 3, anon_sym_AT, anon_sym_PERCENT, anon_sym_SLASH_SLASH, - ACTIONS(1713), 3, - anon_sym_EQ, + ACTIONS(1740), 3, + anon_sym_as, anon_sym_LT, anon_sym_GT, - ACTIONS(1711), 18, + ACTIONS(1738), 17, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_if, - anon_sym_COLON, - anon_sym_else, + anon_sym_async, + anon_sym_for, anon_sym_in, - anon_sym_PIPE, anon_sym_RBRACK, anon_sym_RBRACE, anon_sym_not, @@ -63397,32 +63728,27 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [47171] = 10, + [47472] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(1602), 1, + ACTIONS(1554), 1, anon_sym_DOT, - ACTIONS(1604), 1, + ACTIONS(1556), 1, anon_sym_LPAREN, - ACTIONS(1618), 1, + ACTIONS(1570), 1, anon_sym_LBRACK, - ACTIONS(1620), 1, + ACTIONS(1572), 1, anon_sym_STAR_STAR, - ACTIONS(1608), 2, - anon_sym_STAR, - anon_sym_SLASH, - STATE(734), 2, + STATE(708), 2, sym_argument_list, sym_generator_expression, - ACTIONS(1624), 3, - anon_sym_AT, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - ACTIONS(1713), 3, + ACTIONS(1730), 5, + anon_sym_STAR, anon_sym_EQ, + anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1711), 24, + ACTIONS(1728), 27, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_GT_GT, @@ -63435,9 +63761,12 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PLUS, anon_sym_RBRACK, anon_sym_RBRACE, + anon_sym_AT, anon_sym_not, anon_sym_and, anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, anon_sym_AMP, anon_sym_CARET, anon_sym_LT_LT, @@ -63447,93 +63776,39 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [47231] = 20, + [47528] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(1622), 1, - anon_sym_EQ, - ACTIONS(1730), 1, + ACTIONS(1554), 1, anon_sym_DOT, - ACTIONS(1732), 1, + ACTIONS(1556), 1, anon_sym_LPAREN, - ACTIONS(1740), 1, - anon_sym_PIPE, - ACTIONS(1744), 1, + ACTIONS(1570), 1, anon_sym_LBRACK, - ACTIONS(1746), 1, + ACTIONS(1572), 1, anon_sym_STAR_STAR, - ACTIONS(1750), 1, - anon_sym_not, - ACTIONS(1752), 1, - anon_sym_AMP, - ACTIONS(1754), 1, - anon_sym_CARET, - ACTIONS(1758), 1, - anon_sym_is, - STATE(1005), 1, - aux_sym_comparison_operator_repeat1, - ACTIONS(1734), 2, - anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(1736), 2, - anon_sym_GT_GT, - anon_sym_LT_LT, - ACTIONS(1742), 2, - anon_sym_DASH, - anon_sym_PLUS, - ACTIONS(1756), 2, - anon_sym_LT, - anon_sym_GT, - STATE(903), 2, + STATE(708), 2, sym_argument_list, sym_generator_expression, - ACTIONS(1748), 3, - anon_sym_AT, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - ACTIONS(1738), 6, - anon_sym_in, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - ACTIONS(1606), 7, - anon_sym_COMMA, - anon_sym_if, - anon_sym_RBRACE, - anon_sym_and, - anon_sym_or, - anon_sym_COLON2, - sym_type_conversion, - [47310] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(604), 1, - anon_sym_COLON_EQ, - ACTIONS(272), 5, - anon_sym_as, + ACTIONS(1726), 5, anon_sym_STAR, + anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(303), 31, - anon_sym_DOT, - anon_sym_LPAREN, + ACTIONS(1724), 27, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_GT_GT, anon_sym_if, - anon_sym_async, - anon_sym_for, + anon_sym_COLON, + anon_sym_else, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, - anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_RBRACE, - anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, anon_sym_and, @@ -63549,90 +63824,31 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [47357] = 20, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1622), 1, - anon_sym_EQ, - ACTIONS(1760), 1, - anon_sym_DOT, - ACTIONS(1762), 1, - anon_sym_LPAREN, - ACTIONS(1770), 1, - anon_sym_PIPE, - ACTIONS(1774), 1, - anon_sym_LBRACK, - ACTIONS(1776), 1, - anon_sym_STAR_STAR, - ACTIONS(1780), 1, - anon_sym_not, - ACTIONS(1782), 1, - anon_sym_AMP, - ACTIONS(1784), 1, - anon_sym_CARET, - ACTIONS(1788), 1, - anon_sym_is, - STATE(1008), 1, - aux_sym_comparison_operator_repeat1, - ACTIONS(1764), 2, - anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(1766), 2, - anon_sym_GT_GT, - anon_sym_LT_LT, - ACTIONS(1772), 2, - anon_sym_DASH, - anon_sym_PLUS, - ACTIONS(1786), 2, - anon_sym_LT, - anon_sym_GT, - STATE(900), 2, - sym_argument_list, - sym_generator_expression, - ACTIONS(1778), 3, - anon_sym_AT, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - ACTIONS(1768), 6, - anon_sym_in, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - ACTIONS(1606), 7, - sym__newline, - anon_sym_from, - anon_sym_COMMA, - anon_sym_if, - anon_sym_and, - anon_sym_or, - anon_sym_SEMI, - [47436] = 5, + [47584] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(630), 1, - sym__string_start, - STATE(767), 2, - sym_string, - aux_sym_concatenated_string_repeat1, - ACTIONS(1235), 5, + ACTIONS(1338), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1230), 29, + ACTIONS(1333), 32, anon_sym_DOT, anon_sym_LPAREN, + anon_sym_RPAREN, anon_sym_COMMA, + anon_sym_as, anon_sym_GT_GT, anon_sym_if, + anon_sym_COLON, + anon_sym_else, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, + anon_sym_RBRACK, anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, @@ -63650,23 +63866,21 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - anon_sym_COLON2, - sym_type_conversion, - [47485] = 5, + [47629] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(630), 1, + ACTIONS(1742), 1, sym__string_start, - STATE(770), 2, + STATE(768), 2, sym_string, aux_sym_concatenated_string_repeat1, - ACTIONS(1506), 5, + ACTIONS(1525), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1504), 29, + ACTIONS(1523), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_COMMA, @@ -63696,21 +63910,21 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_is, anon_sym_COLON2, sym_type_conversion, - [47534] = 5, + [47678] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(632), 1, + ACTIONS(1745), 1, sym__template_string_start, - STATE(771), 2, + STATE(769), 2, sym_template_string, aux_sym_concatenated_template_string_repeat1, - ACTIONS(1510), 5, + ACTIONS(1512), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1508), 29, + ACTIONS(1510), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_COMMA, @@ -63740,21 +63954,21 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_is, anon_sym_COLON2, sym_type_conversion, - [47583] = 5, + [47727] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(85), 1, - sym__template_string_start, - STATE(774), 2, - sym_template_string, - aux_sym_concatenated_template_string_repeat1, - ACTIONS(1235), 5, + ACTIONS(83), 1, + sym__string_start, + STATE(776), 2, + sym_string, + aux_sym_concatenated_string_repeat1, + ACTIONS(1532), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1230), 29, + ACTIONS(1530), 29, sym__newline, anon_sym_DOT, anon_sym_from, @@ -63784,22 +63998,24 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LT_GT, anon_sym_is, anon_sym_SEMI, - [47632] = 5, + [47776] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(1790), 1, - sym__string_start, - STATE(770), 2, - sym_string, - aux_sym_concatenated_string_repeat1, - ACTIONS(1514), 5, + ACTIONS(85), 1, + sym__template_string_start, + STATE(777), 2, + sym_template_string, + aux_sym_concatenated_template_string_repeat1, + ACTIONS(1536), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1512), 29, + ACTIONS(1534), 29, + sym__newline, anon_sym_DOT, + anon_sym_from, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_GT_GT, @@ -63809,7 +64025,6 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, - anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, @@ -63826,24 +64041,25 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - anon_sym_COLON2, - sym_type_conversion, - [47681] = 5, + anon_sym_SEMI, + [47825] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(1793), 1, + ACTIONS(85), 1, sym__template_string_start, STATE(771), 2, sym_template_string, aux_sym_concatenated_template_string_repeat1, - ACTIONS(1521), 5, + ACTIONS(1209), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1519), 29, + ACTIONS(1204), 29, + sym__newline, anon_sym_DOT, + anon_sym_from, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_GT_GT, @@ -63853,7 +64069,6 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, - anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, @@ -63870,54 +64085,70 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - anon_sym_COLON2, - sym_type_conversion, - [47730] = 3, + anon_sym_SEMI, + [47874] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(1425), 5, - anon_sym_STAR, + ACTIONS(1574), 1, anon_sym_EQ, - anon_sym_SLASH, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1420), 32, + ACTIONS(1748), 1, anon_sym_DOT, + ACTIONS(1750), 1, anon_sym_LPAREN, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_as, - anon_sym_GT_GT, - anon_sym_if, - anon_sym_COLON, - anon_sym_else, - anon_sym_in, + ACTIONS(1758), 1, anon_sym_PIPE, - anon_sym_DASH, - anon_sym_PLUS, + ACTIONS(1762), 1, anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_RBRACE, + ACTIONS(1764), 1, anon_sym_STAR_STAR, - anon_sym_AT, + ACTIONS(1768), 1, anon_sym_not, - anon_sym_and, - anon_sym_or, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, + ACTIONS(1770), 1, anon_sym_AMP, + ACTIONS(1772), 1, anon_sym_CARET, + ACTIONS(1776), 1, + anon_sym_is, + STATE(1008), 1, + aux_sym_comparison_operator_repeat1, + ACTIONS(1752), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(1754), 2, + anon_sym_GT_GT, anon_sym_LT_LT, + ACTIONS(1760), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(1774), 2, + anon_sym_LT, + anon_sym_GT, + STATE(895), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1766), 3, + anon_sym_AT, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + ACTIONS(1756), 6, + anon_sym_in, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_GT, - anon_sym_is, - [47775] = 4, + ACTIONS(1558), 7, + sym__newline, + anon_sym_from, + anon_sym_COMMA, + anon_sym_if, + anon_sym_and, + anon_sym_or, + anon_sym_SEMI, + [47953] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(580), 1, + ACTIONS(590), 1, anon_sym_COLON_EQ, ACTIONS(272), 6, anon_sym_STAR, @@ -63957,110 +64188,82 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [47822] = 5, + [48000] = 19, ACTIONS(3), 1, sym_comment, - ACTIONS(85), 1, - sym__template_string_start, - STATE(778), 2, - sym_template_string, - aux_sym_concatenated_template_string_repeat1, - ACTIONS(1510), 5, - anon_sym_STAR, - anon_sym_EQ, - anon_sym_SLASH, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1508), 29, - sym__newline, + ACTIONS(1554), 1, anon_sym_DOT, - anon_sym_from, + ACTIONS(1556), 1, anon_sym_LPAREN, - anon_sym_COMMA, - anon_sym_GT_GT, - anon_sym_if, - anon_sym_in, - anon_sym_PIPE, - anon_sym_DASH, - anon_sym_PLUS, + ACTIONS(1570), 1, anon_sym_LBRACK, + ACTIONS(1784), 1, + anon_sym_PIPE, + ACTIONS(1788), 1, anon_sym_STAR_STAR, - anon_sym_AT, + ACTIONS(1792), 1, anon_sym_not, - anon_sym_and, - anon_sym_or, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, + ACTIONS(1794), 1, anon_sym_AMP, + ACTIONS(1796), 1, anon_sym_CARET, - anon_sym_LT_LT, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, + ACTIONS(1800), 1, anon_sym_is, - anon_sym_SEMI, - [47871] = 5, - ACTIONS(3), 1, - sym_comment, - ACTIONS(83), 1, - sym__string_start, - STATE(782), 2, - sym_string, - aux_sym_concatenated_string_repeat1, - ACTIONS(1235), 5, + STATE(1014), 1, + aux_sym_comparison_operator_repeat1, + ACTIONS(1778), 2, anon_sym_STAR, - anon_sym_EQ, anon_sym_SLASH, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1230), 29, - sym__newline, - anon_sym_DOT, - anon_sym_from, - anon_sym_LPAREN, - anon_sym_COMMA, + ACTIONS(1780), 2, anon_sym_GT_GT, - anon_sym_if, - anon_sym_in, - anon_sym_PIPE, + anon_sym_LT_LT, + ACTIONS(1786), 2, anon_sym_DASH, anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_STAR_STAR, + ACTIONS(1798), 2, + anon_sym_LT, + anon_sym_GT, + STATE(708), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1790), 3, anon_sym_AT, - anon_sym_not, - anon_sym_and, - anon_sym_or, anon_sym_PERCENT, anon_sym_SLASH_SLASH, - anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, + ACTIONS(1782), 6, + anon_sym_in, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_GT, - anon_sym_is, - anon_sym_SEMI, - [47920] = 5, + ACTIONS(1558), 8, + anon_sym_COMMA, + anon_sym_if, + anon_sym_COLON, + anon_sym_async, + anon_sym_for, + anon_sym_RBRACE, + anon_sym_and, + anon_sym_or, + [48077] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(632), 1, - sym__template_string_start, - STATE(768), 2, - sym_template_string, - aux_sym_concatenated_template_string_repeat1, - ACTIONS(1235), 5, + ACTIONS(1802), 1, + sym__string_start, + STATE(776), 2, + sym_string, + aux_sym_concatenated_string_repeat1, + ACTIONS(1525), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1230), 29, + ACTIONS(1523), 29, + sym__newline, anon_sym_DOT, + anon_sym_from, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_GT_GT, @@ -64070,7 +64273,6 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, - anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, @@ -64087,34 +64289,34 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - anon_sym_COLON2, - sym_type_conversion, - [47969] = 3, + anon_sym_SEMI, + [48126] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(1468), 5, + ACTIONS(1805), 1, + sym__template_string_start, + STATE(777), 2, + sym_template_string, + aux_sym_concatenated_template_string_repeat1, + ACTIONS(1512), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1463), 32, + ACTIONS(1510), 29, + sym__newline, anon_sym_DOT, + anon_sym_from, anon_sym_LPAREN, - anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_as, anon_sym_GT_GT, anon_sym_if, - anon_sym_COLON, - anon_sym_else, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, @@ -64131,33 +64333,34 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [48014] = 5, + anon_sym_SEMI, + [48175] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1796), 1, - sym__template_string_start, - STATE(778), 2, - sym_template_string, - aux_sym_concatenated_template_string_repeat1, - ACTIONS(1521), 5, + ACTIONS(1488), 1, + anon_sym_COLON_EQ, + ACTIONS(1209), 6, anon_sym_STAR, + anon_sym_COLON, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1519), 29, - sym__newline, + ACTIONS(1204), 30, anon_sym_DOT, - anon_sym_from, anon_sym_LPAREN, + anon_sym_RPAREN, anon_sym_COMMA, anon_sym_GT_GT, anon_sym_if, + anon_sym_else, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, @@ -64174,22 +64377,21 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - anon_sym_SEMI, - [48063] = 5, + [48222] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(1799), 1, + ACTIONS(83), 1, sym__string_start, - STATE(779), 2, + STATE(770), 2, sym_string, aux_sym_concatenated_string_repeat1, - ACTIONS(1514), 5, + ACTIONS(1209), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1512), 29, + ACTIONS(1204), 29, sym__newline, anon_sym_DOT, anon_sym_from, @@ -64219,90 +64421,90 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LT_GT, anon_sym_is, anon_sym_SEMI, - [48112] = 19, + [48271] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(1602), 1, + ACTIONS(1574), 1, + anon_sym_EQ, + ACTIONS(1808), 1, anon_sym_DOT, - ACTIONS(1604), 1, + ACTIONS(1810), 1, anon_sym_LPAREN, - ACTIONS(1618), 1, - anon_sym_LBRACK, - ACTIONS(1808), 1, + ACTIONS(1818), 1, anon_sym_PIPE, - ACTIONS(1812), 1, + ACTIONS(1822), 1, + anon_sym_LBRACK, + ACTIONS(1824), 1, anon_sym_STAR_STAR, - ACTIONS(1816), 1, + ACTIONS(1828), 1, anon_sym_not, - ACTIONS(1818), 1, + ACTIONS(1830), 1, anon_sym_AMP, - ACTIONS(1820), 1, + ACTIONS(1832), 1, anon_sym_CARET, - ACTIONS(1824), 1, + ACTIONS(1836), 1, anon_sym_is, - STATE(1006), 1, + STATE(1004), 1, aux_sym_comparison_operator_repeat1, - ACTIONS(1802), 2, + ACTIONS(1812), 2, anon_sym_STAR, anon_sym_SLASH, - ACTIONS(1804), 2, + ACTIONS(1814), 2, anon_sym_GT_GT, anon_sym_LT_LT, - ACTIONS(1810), 2, + ACTIONS(1820), 2, anon_sym_DASH, anon_sym_PLUS, - ACTIONS(1822), 2, + ACTIONS(1834), 2, anon_sym_LT, anon_sym_GT, - STATE(734), 2, + STATE(925), 2, sym_argument_list, sym_generator_expression, - ACTIONS(1814), 3, + ACTIONS(1826), 3, anon_sym_AT, anon_sym_PERCENT, anon_sym_SLASH_SLASH, - ACTIONS(1806), 6, + ACTIONS(1816), 6, anon_sym_in, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_GT, - ACTIONS(1606), 8, + ACTIONS(1558), 7, anon_sym_COMMA, anon_sym_if, - anon_sym_COLON, - anon_sym_async, - anon_sym_for, anon_sym_RBRACE, anon_sym_and, anon_sym_or, - [48189] = 4, + anon_sym_COLON2, + sym_type_conversion, + [48350] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(1258), 1, - anon_sym_COLON_EQ, - ACTIONS(1235), 6, + ACTIONS(630), 1, + sym__string_start, + STATE(784), 2, + sym_string, + aux_sym_concatenated_string_repeat1, + ACTIONS(1209), 5, anon_sym_STAR, - anon_sym_COLON, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1230), 30, + ACTIONS(1204), 29, anon_sym_DOT, anon_sym_LPAREN, - anon_sym_RPAREN, anon_sym_COMMA, anon_sym_GT_GT, anon_sym_if, - anon_sym_else, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, - anon_sym_RBRACK, anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, @@ -64320,24 +64522,24 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [48236] = 5, + anon_sym_COLON2, + sym_type_conversion, + [48399] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(83), 1, - sym__string_start, - STATE(779), 2, - sym_string, - aux_sym_concatenated_string_repeat1, - ACTIONS(1506), 5, + ACTIONS(632), 1, + sym__template_string_start, + STATE(785), 2, + sym_template_string, + aux_sym_concatenated_template_string_repeat1, + ACTIONS(1209), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1504), 29, - sym__newline, + ACTIONS(1204), 29, anon_sym_DOT, - anon_sym_from, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_GT_GT, @@ -64347,6 +64549,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, + anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, @@ -64363,27 +64566,27 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - anon_sym_SEMI, - [48285] = 4, + anon_sym_COLON2, + sym_type_conversion, + [48448] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1826), 1, - anon_sym_COLON_EQ, - ACTIONS(1235), 5, - anon_sym_as, + ACTIONS(1295), 5, anon_sym_STAR, + anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1230), 31, + ACTIONS(1290), 32, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_COMMA, + anon_sym_as, anon_sym_GT_GT, anon_sym_if, - anon_sym_async, - anon_sym_for, + anon_sym_COLON, + anon_sym_else, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, @@ -64407,37 +64610,33 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [48332] = 8, + [48493] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(1602), 1, - anon_sym_DOT, - ACTIONS(1604), 1, - anon_sym_LPAREN, - ACTIONS(1618), 1, - anon_sym_LBRACK, - ACTIONS(1812), 1, - anon_sym_STAR_STAR, - STATE(734), 2, - sym_argument_list, - sym_generator_expression, - ACTIONS(1717), 4, + ACTIONS(630), 1, + sym__string_start, + STATE(768), 2, + sym_string, + aux_sym_concatenated_string_repeat1, + ACTIONS(1532), 5, anon_sym_STAR, + anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1715), 26, + ACTIONS(1530), 29, + anon_sym_DOT, + anon_sym_LPAREN, anon_sym_COMMA, anon_sym_GT_GT, anon_sym_if, - anon_sym_COLON, - anon_sym_async, - anon_sym_for, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, + anon_sym_LBRACK, anon_sym_RBRACE, + anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, anon_sym_and, @@ -64453,80 +64652,25 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [48386] = 13, + anon_sym_COLON2, + sym_type_conversion, + [48542] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(1760), 1, - anon_sym_DOT, - ACTIONS(1762), 1, - anon_sym_LPAREN, - ACTIONS(1774), 1, - anon_sym_LBRACK, - ACTIONS(1776), 1, - anon_sym_STAR_STAR, - ACTIONS(1784), 1, - anon_sym_CARET, - ACTIONS(1764), 2, + ACTIONS(632), 1, + sym__template_string_start, + STATE(769), 2, + sym_template_string, + aux_sym_concatenated_template_string_repeat1, + ACTIONS(1536), 5, anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(1766), 2, - anon_sym_GT_GT, - anon_sym_LT_LT, - ACTIONS(1772), 2, - anon_sym_DASH, - anon_sym_PLUS, - STATE(900), 2, - sym_argument_list, - sym_generator_expression, - ACTIONS(1713), 3, anon_sym_EQ, + anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1778), 3, - anon_sym_AT, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - ACTIONS(1711), 17, - sym__newline, - anon_sym_from, - anon_sym_COMMA, - anon_sym_if, - anon_sym_in, - anon_sym_PIPE, - anon_sym_not, - anon_sym_and, - anon_sym_or, - anon_sym_AMP, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - anon_sym_is, - anon_sym_SEMI, - [48450] = 8, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1760), 1, + ACTIONS(1534), 29, anon_sym_DOT, - ACTIONS(1762), 1, anon_sym_LPAREN, - ACTIONS(1774), 1, - anon_sym_LBRACK, - ACTIONS(1776), 1, - anon_sym_STAR_STAR, - STATE(900), 2, - sym_argument_list, - sym_generator_expression, - ACTIONS(1717), 5, - anon_sym_STAR, - anon_sym_EQ, - anon_sym_SLASH, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1715), 25, - sym__newline, - anon_sym_from, anon_sym_COMMA, anon_sym_GT_GT, anon_sym_if, @@ -64534,6 +64678,9 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_RBRACE, + anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, anon_sym_and, @@ -64549,25 +64696,28 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - anon_sym_SEMI, - [48504] = 3, + anon_sym_COLON2, + sym_type_conversion, + [48591] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1532), 4, + ACTIONS(1838), 1, + anon_sym_COLON_EQ, + ACTIONS(1209), 5, + anon_sym_as, anon_sym_STAR, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1530), 32, - sym__string_start, + ACTIONS(1204), 31, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_as, anon_sym_GT_GT, anon_sym_if, - anon_sym_COLON, + anon_sym_async, + anon_sym_for, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, @@ -64591,24 +64741,26 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [48548] = 3, + [48638] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1536), 4, + ACTIONS(604), 1, + anon_sym_COLON_EQ, + ACTIONS(272), 5, + anon_sym_as, anon_sym_STAR, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1534), 32, - sym__template_string_start, + ACTIONS(303), 31, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_as, anon_sym_GT_GT, anon_sym_if, - anon_sym_COLON, + anon_sym_async, + anon_sym_for, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, @@ -64632,97 +64784,44 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [48592] = 15, + [48685] = 15, ACTIONS(3), 1, sym_comment, - ACTIONS(1760), 1, + ACTIONS(1748), 1, anon_sym_DOT, - ACTIONS(1762), 1, + ACTIONS(1750), 1, anon_sym_LPAREN, - ACTIONS(1770), 1, + ACTIONS(1758), 1, anon_sym_PIPE, - ACTIONS(1774), 1, - anon_sym_LBRACK, - ACTIONS(1776), 1, - anon_sym_STAR_STAR, - ACTIONS(1782), 1, - anon_sym_AMP, - ACTIONS(1784), 1, - anon_sym_CARET, - ACTIONS(1764), 2, - anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(1766), 2, - anon_sym_GT_GT, - anon_sym_LT_LT, - ACTIONS(1772), 2, - anon_sym_DASH, - anon_sym_PLUS, - STATE(900), 2, - sym_argument_list, - sym_generator_expression, - ACTIONS(1721), 3, - anon_sym_EQ, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1778), 3, - anon_sym_AT, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - ACTIONS(1719), 15, - sym__newline, - anon_sym_from, - anon_sym_COMMA, - anon_sym_if, - anon_sym_in, - anon_sym_not, - anon_sym_and, - anon_sym_or, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - anon_sym_is, - anon_sym_SEMI, - [48660] = 15, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1760), 1, - anon_sym_DOT, ACTIONS(1762), 1, - anon_sym_LPAREN, - ACTIONS(1770), 1, - anon_sym_PIPE, - ACTIONS(1774), 1, anon_sym_LBRACK, - ACTIONS(1776), 1, + ACTIONS(1764), 1, anon_sym_STAR_STAR, - ACTIONS(1782), 1, + ACTIONS(1770), 1, anon_sym_AMP, - ACTIONS(1784), 1, + ACTIONS(1772), 1, anon_sym_CARET, - ACTIONS(1764), 2, + ACTIONS(1752), 2, anon_sym_STAR, anon_sym_SLASH, - ACTIONS(1766), 2, + ACTIONS(1754), 2, anon_sym_GT_GT, anon_sym_LT_LT, - ACTIONS(1772), 2, + ACTIONS(1760), 2, anon_sym_DASH, anon_sym_PLUS, - STATE(900), 2, + STATE(895), 2, sym_argument_list, sym_generator_expression, - ACTIONS(1706), 3, + ACTIONS(1722), 3, anon_sym_EQ, anon_sym_LT, anon_sym_GT, - ACTIONS(1778), 3, + ACTIONS(1766), 3, anon_sym_AT, anon_sym_PERCENT, anon_sym_SLASH_SLASH, - ACTIONS(1704), 15, + ACTIONS(1720), 15, sym__newline, anon_sym_from, anon_sym_COMMA, @@ -64738,102 +64837,56 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LT_GT, anon_sym_is, anon_sym_SEMI, - [48728] = 8, + [48753] = 19, ACTIONS(3), 1, sym_comment, - ACTIONS(1760), 1, + ACTIONS(1840), 1, anon_sym_DOT, - ACTIONS(1762), 1, - anon_sym_LPAREN, - ACTIONS(1774), 1, - anon_sym_LBRACK, - ACTIONS(1776), 1, - anon_sym_STAR_STAR, - STATE(900), 2, - sym_argument_list, - sym_generator_expression, - ACTIONS(1702), 5, - anon_sym_STAR, - anon_sym_EQ, - anon_sym_SLASH, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1700), 25, - sym__newline, - anon_sym_from, - anon_sym_COMMA, - anon_sym_GT_GT, - anon_sym_if, - anon_sym_in, - anon_sym_PIPE, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_AT, - anon_sym_not, - anon_sym_and, - anon_sym_or, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - anon_sym_is, - anon_sym_SEMI, - [48782] = 19, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1828), 1, - anon_sym_DOT, - ACTIONS(1830), 1, + ACTIONS(1842), 1, anon_sym_LPAREN, - ACTIONS(1838), 1, + ACTIONS(1850), 1, anon_sym_PIPE, - ACTIONS(1842), 1, + ACTIONS(1854), 1, anon_sym_LBRACK, - ACTIONS(1844), 1, + ACTIONS(1856), 1, anon_sym_STAR_STAR, - ACTIONS(1848), 1, + ACTIONS(1860), 1, anon_sym_not, - ACTIONS(1850), 1, + ACTIONS(1862), 1, anon_sym_AMP, - ACTIONS(1852), 1, + ACTIONS(1864), 1, anon_sym_CARET, - ACTIONS(1856), 1, + ACTIONS(1868), 1, anon_sym_is, - STATE(1010), 1, + STATE(1016), 1, aux_sym_comparison_operator_repeat1, - ACTIONS(1832), 2, + ACTIONS(1844), 2, anon_sym_STAR, anon_sym_SLASH, - ACTIONS(1834), 2, + ACTIONS(1846), 2, anon_sym_GT_GT, anon_sym_LT_LT, - ACTIONS(1840), 2, + ACTIONS(1852), 2, anon_sym_DASH, anon_sym_PLUS, - ACTIONS(1854), 2, + ACTIONS(1866), 2, anon_sym_LT, anon_sym_GT, - STATE(979), 2, + STATE(953), 2, sym_argument_list, sym_generator_expression, - ACTIONS(1846), 3, + ACTIONS(1858), 3, anon_sym_AT, anon_sym_PERCENT, anon_sym_SLASH_SLASH, - ACTIONS(1836), 6, + ACTIONS(1848), 6, anon_sym_in, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_GT, - ACTIONS(1606), 7, + ACTIONS(1558), 7, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_as, @@ -64841,20 +64894,20 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_COLON, anon_sym_and, anon_sym_or, - [48858] = 5, + [48829] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(654), 1, + ACTIONS(664), 1, sym__string_start, - STATE(759), 2, + STATE(749), 2, sym_string, aux_sym_concatenated_string_repeat1, - ACTIONS(1235), 4, + ACTIONS(1209), 4, anon_sym_STAR, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1230), 29, + ACTIONS(1204), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -64884,20 +64937,20 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [48906] = 5, + [48877] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(656), 1, + ACTIONS(666), 1, sym__template_string_start, - STATE(760), 2, + STATE(750), 2, sym_template_string, aux_sym_concatenated_template_string_repeat1, - ACTIONS(1235), 4, + ACTIONS(1209), 4, anon_sym_STAR, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1230), 29, + ACTIONS(1204), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -64927,15 +64980,15 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [48954] = 3, + [48925] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1528), 4, + ACTIONS(1548), 4, anon_sym_STAR, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1526), 32, + ACTIONS(1546), 32, sym__string_start, anon_sym_DOT, anon_sym_LPAREN, @@ -64968,15 +65021,15 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [48998] = 3, + [48969] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1540), 4, + ACTIONS(1544), 4, anon_sym_STAR, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1538), 32, + ACTIONS(1542), 32, sym__template_string_start, anon_sym_DOT, anon_sym_LPAREN, @@ -65009,36 +65062,32 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [49042] = 8, + [49013] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1760), 1, - anon_sym_DOT, - ACTIONS(1762), 1, - anon_sym_LPAREN, - ACTIONS(1774), 1, - anon_sym_LBRACK, - ACTIONS(1776), 1, - anon_sym_STAR_STAR, - STATE(900), 2, - sym_argument_list, - sym_generator_expression, - ACTIONS(1713), 5, + ACTIONS(1552), 4, anon_sym_STAR, - anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1711), 25, - sym__newline, - anon_sym_from, + ACTIONS(1550), 32, + sym__string_start, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_RPAREN, anon_sym_COMMA, + anon_sym_as, anon_sym_GT_GT, anon_sym_if, + anon_sym_COLON, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, anon_sym_and, @@ -65054,37 +65103,32 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - anon_sym_SEMI, - [49096] = 8, + [49057] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1760), 1, - anon_sym_DOT, - ACTIONS(1762), 1, - anon_sym_LPAREN, - ACTIONS(1774), 1, - anon_sym_LBRACK, - ACTIONS(1776), 1, - anon_sym_STAR_STAR, - STATE(900), 2, - sym_argument_list, - sym_generator_expression, - ACTIONS(1713), 5, + ACTIONS(1540), 4, anon_sym_STAR, - anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1711), 25, - sym__newline, - anon_sym_from, + ACTIONS(1538), 32, + sym__template_string_start, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_RPAREN, anon_sym_COMMA, + anon_sym_as, anon_sym_GT_GT, anon_sym_if, + anon_sym_COLON, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_RBRACE, + anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, anon_sym_and, @@ -65100,28 +65144,29 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - anon_sym_SEMI, - [49150] = 8, + [49101] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(1730), 1, + ACTIONS(1748), 1, anon_sym_DOT, - ACTIONS(1732), 1, + ACTIONS(1750), 1, anon_sym_LPAREN, - ACTIONS(1744), 1, + ACTIONS(1762), 1, anon_sym_LBRACK, - ACTIONS(1746), 1, + ACTIONS(1764), 1, anon_sym_STAR_STAR, - STATE(903), 2, + STATE(895), 2, sym_argument_list, sym_generator_expression, - ACTIONS(1702), 5, + ACTIONS(1714), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1700), 25, + ACTIONS(1712), 25, + sym__newline, + anon_sym_from, anon_sym_COMMA, anon_sym_GT_GT, anon_sym_if, @@ -65129,7 +65174,6 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, - anon_sym_RBRACE, anon_sym_AT, anon_sym_not, anon_sym_and, @@ -65145,89 +65189,46 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - anon_sym_COLON2, - sym_type_conversion, - [49204] = 8, + anon_sym_SEMI, + [49155] = 11, ACTIONS(3), 1, sym_comment, - ACTIONS(1730), 1, + ACTIONS(1748), 1, anon_sym_DOT, - ACTIONS(1732), 1, + ACTIONS(1750), 1, anon_sym_LPAREN, - ACTIONS(1744), 1, + ACTIONS(1762), 1, anon_sym_LBRACK, - ACTIONS(1746), 1, + ACTIONS(1764), 1, anon_sym_STAR_STAR, - STATE(903), 2, - sym_argument_list, - sym_generator_expression, - ACTIONS(1717), 5, + ACTIONS(1752), 2, anon_sym_STAR, - anon_sym_EQ, anon_sym_SLASH, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1715), 25, - anon_sym_COMMA, - anon_sym_GT_GT, - anon_sym_if, - anon_sym_in, - anon_sym_PIPE, + ACTIONS(1760), 2, anon_sym_DASH, anon_sym_PLUS, - anon_sym_RBRACE, - anon_sym_AT, - anon_sym_not, - anon_sym_and, - anon_sym_or, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - anon_sym_is, - anon_sym_COLON2, - sym_type_conversion, - [49258] = 8, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1730), 1, - anon_sym_DOT, - ACTIONS(1732), 1, - anon_sym_LPAREN, - ACTIONS(1744), 1, - anon_sym_LBRACK, - ACTIONS(1746), 1, - anon_sym_STAR_STAR, - STATE(903), 2, + STATE(895), 2, sym_argument_list, sym_generator_expression, - ACTIONS(1713), 5, - anon_sym_STAR, + ACTIONS(1714), 3, anon_sym_EQ, - anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1711), 25, + ACTIONS(1766), 3, + anon_sym_AT, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + ACTIONS(1712), 20, + sym__newline, + anon_sym_from, anon_sym_COMMA, anon_sym_GT_GT, anon_sym_if, anon_sym_in, anon_sym_PIPE, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_RBRACE, - anon_sym_AT, anon_sym_not, anon_sym_and, anon_sym_or, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, anon_sym_AMP, anon_sym_CARET, anon_sym_LT_LT, @@ -65237,88 +65238,90 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - anon_sym_COLON2, - sym_type_conversion, - [49312] = 11, + anon_sym_SEMI, + [49215] = 15, ACTIONS(3), 1, sym_comment, - ACTIONS(1730), 1, + ACTIONS(1748), 1, anon_sym_DOT, - ACTIONS(1732), 1, + ACTIONS(1750), 1, anon_sym_LPAREN, - ACTIONS(1744), 1, + ACTIONS(1758), 1, + anon_sym_PIPE, + ACTIONS(1762), 1, anon_sym_LBRACK, - ACTIONS(1746), 1, + ACTIONS(1764), 1, anon_sym_STAR_STAR, - ACTIONS(1734), 2, + ACTIONS(1770), 1, + anon_sym_AMP, + ACTIONS(1772), 1, + anon_sym_CARET, + ACTIONS(1752), 2, anon_sym_STAR, anon_sym_SLASH, - ACTIONS(1742), 2, + ACTIONS(1754), 2, + anon_sym_GT_GT, + anon_sym_LT_LT, + ACTIONS(1760), 2, anon_sym_DASH, anon_sym_PLUS, - STATE(903), 2, + STATE(895), 2, sym_argument_list, sym_generator_expression, - ACTIONS(1713), 3, + ACTIONS(1740), 3, anon_sym_EQ, anon_sym_LT, anon_sym_GT, - ACTIONS(1748), 3, + ACTIONS(1766), 3, anon_sym_AT, anon_sym_PERCENT, anon_sym_SLASH_SLASH, - ACTIONS(1711), 20, + ACTIONS(1738), 15, + sym__newline, + anon_sym_from, anon_sym_COMMA, - anon_sym_GT_GT, anon_sym_if, anon_sym_in, - anon_sym_PIPE, - anon_sym_RBRACE, anon_sym_not, anon_sym_and, anon_sym_or, - anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - anon_sym_COLON2, - sym_type_conversion, - [49372] = 8, + anon_sym_SEMI, + [49283] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(1602), 1, + ACTIONS(1748), 1, anon_sym_DOT, - ACTIONS(1604), 1, + ACTIONS(1750), 1, anon_sym_LPAREN, - ACTIONS(1618), 1, + ACTIONS(1762), 1, anon_sym_LBRACK, - ACTIONS(1812), 1, + ACTIONS(1764), 1, anon_sym_STAR_STAR, - STATE(734), 2, + STATE(895), 2, sym_argument_list, sym_generator_expression, - ACTIONS(1713), 4, + ACTIONS(1726), 5, anon_sym_STAR, + anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1711), 26, + ACTIONS(1724), 25, + sym__newline, + anon_sym_from, anon_sym_COMMA, anon_sym_GT_GT, anon_sym_if, - anon_sym_COLON, - anon_sym_async, - anon_sym_for, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, - anon_sym_RBRACE, anon_sym_AT, anon_sym_not, anon_sym_and, @@ -65334,48 +65337,50 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [49426] = 15, + anon_sym_SEMI, + [49337] = 15, ACTIONS(3), 1, sym_comment, - ACTIONS(1730), 1, + ACTIONS(1748), 1, anon_sym_DOT, - ACTIONS(1732), 1, + ACTIONS(1750), 1, anon_sym_LPAREN, - ACTIONS(1740), 1, + ACTIONS(1758), 1, anon_sym_PIPE, - ACTIONS(1744), 1, + ACTIONS(1762), 1, anon_sym_LBRACK, - ACTIONS(1746), 1, + ACTIONS(1764), 1, anon_sym_STAR_STAR, - ACTIONS(1752), 1, + ACTIONS(1770), 1, anon_sym_AMP, - ACTIONS(1754), 1, + ACTIONS(1772), 1, anon_sym_CARET, - ACTIONS(1734), 2, + ACTIONS(1752), 2, anon_sym_STAR, anon_sym_SLASH, - ACTIONS(1736), 2, + ACTIONS(1754), 2, anon_sym_GT_GT, anon_sym_LT_LT, - ACTIONS(1742), 2, + ACTIONS(1760), 2, anon_sym_DASH, anon_sym_PLUS, - STATE(903), 2, + STATE(895), 2, sym_argument_list, sym_generator_expression, - ACTIONS(1721), 3, + ACTIONS(1718), 3, anon_sym_EQ, anon_sym_LT, anon_sym_GT, - ACTIONS(1748), 3, + ACTIONS(1766), 3, anon_sym_AT, anon_sym_PERCENT, anon_sym_SLASH_SLASH, - ACTIONS(1719), 15, + ACTIONS(1716), 15, + sym__newline, + anon_sym_from, anon_sym_COMMA, anon_sym_if, anon_sym_in, - anon_sym_RBRACE, anon_sym_not, anon_sym_and, anon_sym_or, @@ -65385,52 +65390,49 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - anon_sym_COLON2, - sym_type_conversion, - [49494] = 15, + anon_sym_SEMI, + [49405] = 14, ACTIONS(3), 1, sym_comment, - ACTIONS(1602), 1, + ACTIONS(1748), 1, anon_sym_DOT, - ACTIONS(1604), 1, + ACTIONS(1750), 1, anon_sym_LPAREN, - ACTIONS(1618), 1, + ACTIONS(1762), 1, anon_sym_LBRACK, - ACTIONS(1808), 1, - anon_sym_PIPE, - ACTIONS(1812), 1, + ACTIONS(1764), 1, anon_sym_STAR_STAR, - ACTIONS(1818), 1, + ACTIONS(1770), 1, anon_sym_AMP, - ACTIONS(1820), 1, + ACTIONS(1772), 1, anon_sym_CARET, - ACTIONS(1725), 2, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1802), 2, + ACTIONS(1752), 2, anon_sym_STAR, anon_sym_SLASH, - ACTIONS(1804), 2, + ACTIONS(1754), 2, anon_sym_GT_GT, anon_sym_LT_LT, - ACTIONS(1810), 2, + ACTIONS(1760), 2, anon_sym_DASH, anon_sym_PLUS, - STATE(734), 2, + STATE(895), 2, sym_argument_list, sym_generator_expression, - ACTIONS(1814), 3, + ACTIONS(1714), 3, + anon_sym_EQ, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1766), 3, anon_sym_AT, anon_sym_PERCENT, anon_sym_SLASH_SLASH, - ACTIONS(1723), 16, + ACTIONS(1712), 16, + sym__newline, + anon_sym_from, anon_sym_COMMA, anon_sym_if, - anon_sym_COLON, - anon_sym_async, - anon_sym_for, anon_sym_in, - anon_sym_RBRACE, + anon_sym_PIPE, anon_sym_not, anon_sym_and, anon_sym_or, @@ -65440,97 +65442,136 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [49562] = 14, + anon_sym_SEMI, + [49471] = 10, ACTIONS(3), 1, sym_comment, - ACTIONS(1602), 1, + ACTIONS(1748), 1, anon_sym_DOT, - ACTIONS(1604), 1, + ACTIONS(1750), 1, anon_sym_LPAREN, - ACTIONS(1618), 1, + ACTIONS(1762), 1, anon_sym_LBRACK, - ACTIONS(1812), 1, + ACTIONS(1764), 1, anon_sym_STAR_STAR, - ACTIONS(1818), 1, - anon_sym_AMP, - ACTIONS(1820), 1, - anon_sym_CARET, - ACTIONS(1713), 2, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1802), 2, + ACTIONS(1752), 2, anon_sym_STAR, anon_sym_SLASH, - ACTIONS(1804), 2, - anon_sym_GT_GT, - anon_sym_LT_LT, - ACTIONS(1810), 2, - anon_sym_DASH, - anon_sym_PLUS, - STATE(734), 2, + STATE(895), 2, sym_argument_list, sym_generator_expression, - ACTIONS(1814), 3, + ACTIONS(1714), 3, + anon_sym_EQ, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1766), 3, anon_sym_AT, anon_sym_PERCENT, anon_sym_SLASH_SLASH, - ACTIONS(1711), 17, + ACTIONS(1712), 22, + sym__newline, + anon_sym_from, anon_sym_COMMA, + anon_sym_GT_GT, anon_sym_if, - anon_sym_COLON, - anon_sym_async, - anon_sym_for, anon_sym_in, anon_sym_PIPE, - anon_sym_RBRACE, + anon_sym_DASH, + anon_sym_PLUS, anon_sym_not, anon_sym_and, anon_sym_or, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [49628] = 10, + anon_sym_SEMI, + [49529] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(1602), 1, + ACTIONS(1748), 1, anon_sym_DOT, - ACTIONS(1604), 1, + ACTIONS(1750), 1, anon_sym_LPAREN, - ACTIONS(1618), 1, + ACTIONS(1762), 1, anon_sym_LBRACK, - ACTIONS(1812), 1, + ACTIONS(1764), 1, anon_sym_STAR_STAR, - ACTIONS(1713), 2, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1802), 2, - anon_sym_STAR, - anon_sym_SLASH, - STATE(734), 2, + STATE(895), 2, sym_argument_list, sym_generator_expression, - ACTIONS(1814), 3, + ACTIONS(1714), 5, + anon_sym_STAR, + anon_sym_EQ, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1712), 25, + sym__newline, + anon_sym_from, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, anon_sym_PERCENT, anon_sym_SLASH_SLASH, - ACTIONS(1711), 23, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + anon_sym_SEMI, + [49583] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1808), 1, + anon_sym_DOT, + ACTIONS(1810), 1, + anon_sym_LPAREN, + ACTIONS(1822), 1, + anon_sym_LBRACK, + ACTIONS(1824), 1, + anon_sym_STAR_STAR, + STATE(925), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1730), 5, + anon_sym_STAR, + anon_sym_EQ, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1728), 25, anon_sym_COMMA, anon_sym_GT_GT, anon_sym_if, - anon_sym_COLON, - anon_sym_async, - anon_sym_for, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_RBRACE, + anon_sym_AT, anon_sym_not, anon_sym_and, anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, anon_sym_AMP, anon_sym_CARET, anon_sym_LT_LT, @@ -65540,32 +65581,32 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [49686] = 8, + anon_sym_COLON2, + sym_type_conversion, + [49637] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(1602), 1, + ACTIONS(1808), 1, anon_sym_DOT, - ACTIONS(1604), 1, + ACTIONS(1810), 1, anon_sym_LPAREN, - ACTIONS(1618), 1, + ACTIONS(1822), 1, anon_sym_LBRACK, - ACTIONS(1812), 1, + ACTIONS(1824), 1, anon_sym_STAR_STAR, - STATE(734), 2, + STATE(925), 2, sym_argument_list, sym_generator_expression, - ACTIONS(1713), 4, + ACTIONS(1726), 5, anon_sym_STAR, + anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1711), 26, + ACTIONS(1724), 25, anon_sym_COMMA, anon_sym_GT_GT, anon_sym_if, - anon_sym_COLON, - anon_sym_async, - anon_sym_for, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, @@ -65586,197 +65627,186 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [49740] = 15, + anon_sym_COLON2, + sym_type_conversion, + [49691] = 13, ACTIONS(3), 1, sym_comment, - ACTIONS(1730), 1, + ACTIONS(1748), 1, anon_sym_DOT, - ACTIONS(1732), 1, + ACTIONS(1750), 1, anon_sym_LPAREN, - ACTIONS(1740), 1, - anon_sym_PIPE, - ACTIONS(1744), 1, + ACTIONS(1762), 1, anon_sym_LBRACK, - ACTIONS(1746), 1, + ACTIONS(1764), 1, anon_sym_STAR_STAR, - ACTIONS(1752), 1, - anon_sym_AMP, - ACTIONS(1754), 1, + ACTIONS(1772), 1, anon_sym_CARET, - ACTIONS(1734), 2, + ACTIONS(1752), 2, anon_sym_STAR, anon_sym_SLASH, - ACTIONS(1736), 2, + ACTIONS(1754), 2, anon_sym_GT_GT, anon_sym_LT_LT, - ACTIONS(1742), 2, + ACTIONS(1760), 2, anon_sym_DASH, anon_sym_PLUS, - STATE(903), 2, + STATE(895), 2, sym_argument_list, sym_generator_expression, - ACTIONS(1725), 3, + ACTIONS(1714), 3, anon_sym_EQ, anon_sym_LT, anon_sym_GT, - ACTIONS(1748), 3, + ACTIONS(1766), 3, anon_sym_AT, anon_sym_PERCENT, anon_sym_SLASH_SLASH, - ACTIONS(1723), 15, + ACTIONS(1712), 17, + sym__newline, + anon_sym_from, anon_sym_COMMA, anon_sym_if, anon_sym_in, - anon_sym_RBRACE, + anon_sym_PIPE, anon_sym_not, anon_sym_and, anon_sym_or, + anon_sym_AMP, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - anon_sym_COLON2, - sym_type_conversion, - [49808] = 13, + anon_sym_SEMI, + [49755] = 12, ACTIONS(3), 1, sym_comment, - ACTIONS(1602), 1, + ACTIONS(1748), 1, anon_sym_DOT, - ACTIONS(1604), 1, + ACTIONS(1750), 1, anon_sym_LPAREN, - ACTIONS(1618), 1, + ACTIONS(1762), 1, anon_sym_LBRACK, - ACTIONS(1812), 1, + ACTIONS(1764), 1, anon_sym_STAR_STAR, - ACTIONS(1820), 1, - anon_sym_CARET, - ACTIONS(1713), 2, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1802), 2, + ACTIONS(1752), 2, anon_sym_STAR, anon_sym_SLASH, - ACTIONS(1804), 2, + ACTIONS(1754), 2, anon_sym_GT_GT, anon_sym_LT_LT, - ACTIONS(1810), 2, + ACTIONS(1760), 2, anon_sym_DASH, anon_sym_PLUS, - STATE(734), 2, + STATE(895), 2, sym_argument_list, sym_generator_expression, - ACTIONS(1814), 3, + ACTIONS(1714), 3, + anon_sym_EQ, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1766), 3, anon_sym_AT, anon_sym_PERCENT, anon_sym_SLASH_SLASH, - ACTIONS(1711), 18, + ACTIONS(1712), 18, + sym__newline, + anon_sym_from, anon_sym_COMMA, anon_sym_if, - anon_sym_COLON, - anon_sym_async, - anon_sym_for, anon_sym_in, anon_sym_PIPE, - anon_sym_RBRACE, anon_sym_not, anon_sym_and, anon_sym_or, anon_sym_AMP, + anon_sym_CARET, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [49872] = 12, + anon_sym_SEMI, + [49817] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(1602), 1, + ACTIONS(1554), 1, anon_sym_DOT, - ACTIONS(1604), 1, + ACTIONS(1556), 1, anon_sym_LPAREN, - ACTIONS(1618), 1, + ACTIONS(1570), 1, anon_sym_LBRACK, - ACTIONS(1812), 1, + ACTIONS(1788), 1, anon_sym_STAR_STAR, - ACTIONS(1713), 2, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1802), 2, - anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(1804), 2, - anon_sym_GT_GT, - anon_sym_LT_LT, - ACTIONS(1810), 2, - anon_sym_DASH, - anon_sym_PLUS, - STATE(734), 2, + STATE(708), 2, sym_argument_list, sym_generator_expression, - ACTIONS(1814), 3, - anon_sym_AT, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - ACTIONS(1711), 19, + ACTIONS(1726), 4, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1724), 26, anon_sym_COMMA, + anon_sym_GT_GT, anon_sym_if, anon_sym_COLON, anon_sym_async, anon_sym_for, anon_sym_in, anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, anon_sym_RBRACE, + anon_sym_AT, anon_sym_not, anon_sym_and, anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, anon_sym_AMP, anon_sym_CARET, + anon_sym_LT_LT, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [49934] = 14, + [49871] = 11, ACTIONS(3), 1, sym_comment, - ACTIONS(1730), 1, + ACTIONS(1808), 1, anon_sym_DOT, - ACTIONS(1732), 1, + ACTIONS(1810), 1, anon_sym_LPAREN, - ACTIONS(1744), 1, + ACTIONS(1822), 1, anon_sym_LBRACK, - ACTIONS(1746), 1, + ACTIONS(1824), 1, anon_sym_STAR_STAR, - ACTIONS(1752), 1, - anon_sym_AMP, - ACTIONS(1754), 1, - anon_sym_CARET, - ACTIONS(1734), 2, + ACTIONS(1812), 2, anon_sym_STAR, anon_sym_SLASH, - ACTIONS(1736), 2, - anon_sym_GT_GT, - anon_sym_LT_LT, - ACTIONS(1742), 2, + ACTIONS(1820), 2, anon_sym_DASH, anon_sym_PLUS, - STATE(903), 2, + STATE(925), 2, sym_argument_list, sym_generator_expression, - ACTIONS(1713), 3, + ACTIONS(1714), 3, anon_sym_EQ, anon_sym_LT, anon_sym_GT, - ACTIONS(1748), 3, + ACTIONS(1826), 3, anon_sym_AT, anon_sym_PERCENT, anon_sym_SLASH_SLASH, - ACTIONS(1711), 16, + ACTIONS(1712), 20, anon_sym_COMMA, + anon_sym_GT_GT, anon_sym_if, anon_sym_in, anon_sym_PIPE, @@ -65784,6 +65814,9 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_not, anon_sym_and, anon_sym_or, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_BANG_EQ, @@ -65792,48 +65825,46 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_is, anon_sym_COLON2, sym_type_conversion, - [50000] = 15, + [49931] = 15, ACTIONS(3), 1, sym_comment, - ACTIONS(1602), 1, + ACTIONS(1808), 1, anon_sym_DOT, - ACTIONS(1604), 1, + ACTIONS(1810), 1, anon_sym_LPAREN, - ACTIONS(1618), 1, - anon_sym_LBRACK, - ACTIONS(1808), 1, + ACTIONS(1818), 1, anon_sym_PIPE, - ACTIONS(1812), 1, + ACTIONS(1822), 1, + anon_sym_LBRACK, + ACTIONS(1824), 1, anon_sym_STAR_STAR, - ACTIONS(1818), 1, + ACTIONS(1830), 1, anon_sym_AMP, - ACTIONS(1820), 1, + ACTIONS(1832), 1, anon_sym_CARET, - ACTIONS(1721), 2, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1802), 2, + ACTIONS(1812), 2, anon_sym_STAR, anon_sym_SLASH, - ACTIONS(1804), 2, + ACTIONS(1814), 2, anon_sym_GT_GT, anon_sym_LT_LT, - ACTIONS(1810), 2, + ACTIONS(1820), 2, anon_sym_DASH, anon_sym_PLUS, - STATE(734), 2, + STATE(925), 2, sym_argument_list, sym_generator_expression, - ACTIONS(1814), 3, + ACTIONS(1740), 3, + anon_sym_EQ, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1826), 3, anon_sym_AT, anon_sym_PERCENT, anon_sym_SLASH_SLASH, - ACTIONS(1719), 16, + ACTIONS(1738), 15, anon_sym_COMMA, anon_sym_if, - anon_sym_COLON, - anon_sym_async, - anon_sym_for, anon_sym_in, anon_sym_RBRACE, anon_sym_not, @@ -65845,49 +65876,48 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [50068] = 15, + anon_sym_COLON2, + sym_type_conversion, + [49999] = 14, ACTIONS(3), 1, sym_comment, - ACTIONS(1602), 1, + ACTIONS(1808), 1, anon_sym_DOT, - ACTIONS(1604), 1, + ACTIONS(1810), 1, anon_sym_LPAREN, - ACTIONS(1618), 1, + ACTIONS(1822), 1, anon_sym_LBRACK, - ACTIONS(1808), 1, - anon_sym_PIPE, - ACTIONS(1812), 1, + ACTIONS(1824), 1, anon_sym_STAR_STAR, - ACTIONS(1818), 1, + ACTIONS(1830), 1, anon_sym_AMP, - ACTIONS(1820), 1, + ACTIONS(1832), 1, anon_sym_CARET, - ACTIONS(1706), 2, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1802), 2, + ACTIONS(1812), 2, anon_sym_STAR, anon_sym_SLASH, - ACTIONS(1804), 2, + ACTIONS(1814), 2, anon_sym_GT_GT, anon_sym_LT_LT, - ACTIONS(1810), 2, + ACTIONS(1820), 2, anon_sym_DASH, anon_sym_PLUS, - STATE(734), 2, + STATE(925), 2, sym_argument_list, sym_generator_expression, - ACTIONS(1814), 3, + ACTIONS(1714), 3, + anon_sym_EQ, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1826), 3, anon_sym_AT, anon_sym_PERCENT, anon_sym_SLASH_SLASH, - ACTIONS(1704), 16, + ACTIONS(1712), 16, anon_sym_COMMA, anon_sym_if, - anon_sym_COLON, - anon_sym_async, - anon_sym_for, anon_sym_in, + anon_sym_PIPE, anon_sym_RBRACE, anon_sym_not, anon_sym_and, @@ -65898,32 +65928,34 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [50136] = 10, + anon_sym_COLON2, + sym_type_conversion, + [50065] = 10, ACTIONS(3), 1, sym_comment, - ACTIONS(1730), 1, + ACTIONS(1808), 1, anon_sym_DOT, - ACTIONS(1732), 1, + ACTIONS(1810), 1, anon_sym_LPAREN, - ACTIONS(1744), 1, + ACTIONS(1822), 1, anon_sym_LBRACK, - ACTIONS(1746), 1, + ACTIONS(1824), 1, anon_sym_STAR_STAR, - ACTIONS(1734), 2, + ACTIONS(1812), 2, anon_sym_STAR, anon_sym_SLASH, - STATE(903), 2, + STATE(925), 2, sym_argument_list, sym_generator_expression, - ACTIONS(1713), 3, + ACTIONS(1714), 3, anon_sym_EQ, anon_sym_LT, anon_sym_GT, - ACTIONS(1748), 3, + ACTIONS(1826), 3, anon_sym_AT, anon_sym_PERCENT, anon_sym_SLASH_SLASH, - ACTIONS(1711), 22, + ACTIONS(1712), 22, anon_sym_COMMA, anon_sym_GT_GT, anon_sym_if, @@ -65946,27 +65978,27 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_is, anon_sym_COLON2, sym_type_conversion, - [50194] = 8, + [50123] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(1730), 1, + ACTIONS(1808), 1, anon_sym_DOT, - ACTIONS(1732), 1, + ACTIONS(1810), 1, anon_sym_LPAREN, - ACTIONS(1744), 1, + ACTIONS(1822), 1, anon_sym_LBRACK, - ACTIONS(1746), 1, + ACTIONS(1824), 1, anon_sym_STAR_STAR, - STATE(903), 2, + STATE(925), 2, sym_argument_list, sym_generator_expression, - ACTIONS(1713), 5, + ACTIONS(1714), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1711), 25, + ACTIONS(1712), 25, anon_sym_COMMA, anon_sym_GT_GT, anon_sym_if, @@ -65992,151 +66024,152 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_is, anon_sym_COLON2, sym_type_conversion, - [50248] = 11, + [50177] = 13, ACTIONS(3), 1, sym_comment, - ACTIONS(1760), 1, + ACTIONS(1808), 1, anon_sym_DOT, - ACTIONS(1762), 1, + ACTIONS(1810), 1, anon_sym_LPAREN, - ACTIONS(1774), 1, + ACTIONS(1822), 1, anon_sym_LBRACK, - ACTIONS(1776), 1, + ACTIONS(1824), 1, anon_sym_STAR_STAR, - ACTIONS(1764), 2, + ACTIONS(1832), 1, + anon_sym_CARET, + ACTIONS(1812), 2, anon_sym_STAR, anon_sym_SLASH, - ACTIONS(1772), 2, + ACTIONS(1814), 2, + anon_sym_GT_GT, + anon_sym_LT_LT, + ACTIONS(1820), 2, anon_sym_DASH, anon_sym_PLUS, - STATE(900), 2, + STATE(925), 2, sym_argument_list, sym_generator_expression, - ACTIONS(1713), 3, + ACTIONS(1714), 3, anon_sym_EQ, anon_sym_LT, anon_sym_GT, - ACTIONS(1778), 3, + ACTIONS(1826), 3, anon_sym_AT, anon_sym_PERCENT, anon_sym_SLASH_SLASH, - ACTIONS(1711), 20, - sym__newline, - anon_sym_from, + ACTIONS(1712), 17, anon_sym_COMMA, - anon_sym_GT_GT, anon_sym_if, anon_sym_in, anon_sym_PIPE, + anon_sym_RBRACE, anon_sym_not, anon_sym_and, anon_sym_or, anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - anon_sym_SEMI, - [50308] = 15, + anon_sym_COLON2, + sym_type_conversion, + [50241] = 12, ACTIONS(3), 1, sym_comment, - ACTIONS(1760), 1, + ACTIONS(1808), 1, anon_sym_DOT, - ACTIONS(1762), 1, + ACTIONS(1810), 1, anon_sym_LPAREN, - ACTIONS(1770), 1, - anon_sym_PIPE, - ACTIONS(1774), 1, + ACTIONS(1822), 1, anon_sym_LBRACK, - ACTIONS(1776), 1, + ACTIONS(1824), 1, anon_sym_STAR_STAR, - ACTIONS(1782), 1, - anon_sym_AMP, - ACTIONS(1784), 1, - anon_sym_CARET, - ACTIONS(1764), 2, + ACTIONS(1812), 2, anon_sym_STAR, anon_sym_SLASH, - ACTIONS(1766), 2, + ACTIONS(1814), 2, anon_sym_GT_GT, anon_sym_LT_LT, - ACTIONS(1772), 2, + ACTIONS(1820), 2, anon_sym_DASH, anon_sym_PLUS, - STATE(900), 2, + STATE(925), 2, sym_argument_list, sym_generator_expression, - ACTIONS(1725), 3, + ACTIONS(1714), 3, anon_sym_EQ, anon_sym_LT, anon_sym_GT, - ACTIONS(1778), 3, + ACTIONS(1826), 3, anon_sym_AT, anon_sym_PERCENT, anon_sym_SLASH_SLASH, - ACTIONS(1723), 15, - sym__newline, - anon_sym_from, + ACTIONS(1712), 18, anon_sym_COMMA, anon_sym_if, anon_sym_in, + anon_sym_PIPE, + anon_sym_RBRACE, anon_sym_not, anon_sym_and, anon_sym_or, + anon_sym_AMP, + anon_sym_CARET, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - anon_sym_SEMI, - [50376] = 13, + anon_sym_COLON2, + sym_type_conversion, + [50303] = 15, ACTIONS(3), 1, sym_comment, - ACTIONS(1730), 1, + ACTIONS(1808), 1, anon_sym_DOT, - ACTIONS(1732), 1, + ACTIONS(1810), 1, anon_sym_LPAREN, - ACTIONS(1744), 1, + ACTIONS(1818), 1, + anon_sym_PIPE, + ACTIONS(1822), 1, anon_sym_LBRACK, - ACTIONS(1746), 1, + ACTIONS(1824), 1, anon_sym_STAR_STAR, - ACTIONS(1754), 1, + ACTIONS(1830), 1, + anon_sym_AMP, + ACTIONS(1832), 1, anon_sym_CARET, - ACTIONS(1734), 2, + ACTIONS(1812), 2, anon_sym_STAR, anon_sym_SLASH, - ACTIONS(1736), 2, + ACTIONS(1814), 2, anon_sym_GT_GT, anon_sym_LT_LT, - ACTIONS(1742), 2, + ACTIONS(1820), 2, anon_sym_DASH, anon_sym_PLUS, - STATE(903), 2, + STATE(925), 2, sym_argument_list, sym_generator_expression, - ACTIONS(1713), 3, + ACTIONS(1718), 3, anon_sym_EQ, anon_sym_LT, anon_sym_GT, - ACTIONS(1748), 3, + ACTIONS(1826), 3, anon_sym_AT, anon_sym_PERCENT, anon_sym_SLASH_SLASH, - ACTIONS(1711), 17, + ACTIONS(1716), 15, anon_sym_COMMA, anon_sym_if, anon_sym_in, - anon_sym_PIPE, anon_sym_RBRACE, anon_sym_not, anon_sym_and, anon_sym_or, - anon_sym_AMP, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_BANG_EQ, @@ -66145,48 +66178,51 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_is, anon_sym_COLON2, sym_type_conversion, - [50440] = 12, + [50371] = 15, ACTIONS(3), 1, sym_comment, - ACTIONS(1730), 1, + ACTIONS(1808), 1, anon_sym_DOT, - ACTIONS(1732), 1, + ACTIONS(1810), 1, anon_sym_LPAREN, - ACTIONS(1744), 1, + ACTIONS(1818), 1, + anon_sym_PIPE, + ACTIONS(1822), 1, anon_sym_LBRACK, - ACTIONS(1746), 1, + ACTIONS(1824), 1, anon_sym_STAR_STAR, - ACTIONS(1734), 2, + ACTIONS(1830), 1, + anon_sym_AMP, + ACTIONS(1832), 1, + anon_sym_CARET, + ACTIONS(1812), 2, anon_sym_STAR, anon_sym_SLASH, - ACTIONS(1736), 2, + ACTIONS(1814), 2, anon_sym_GT_GT, anon_sym_LT_LT, - ACTIONS(1742), 2, + ACTIONS(1820), 2, anon_sym_DASH, anon_sym_PLUS, - STATE(903), 2, + STATE(925), 2, sym_argument_list, sym_generator_expression, - ACTIONS(1713), 3, + ACTIONS(1722), 3, anon_sym_EQ, anon_sym_LT, anon_sym_GT, - ACTIONS(1748), 3, + ACTIONS(1826), 3, anon_sym_AT, anon_sym_PERCENT, anon_sym_SLASH_SLASH, - ACTIONS(1711), 18, + ACTIONS(1720), 15, anon_sym_COMMA, anon_sym_if, anon_sym_in, - anon_sym_PIPE, anon_sym_RBRACE, anon_sym_not, anon_sym_and, anon_sym_or, - anon_sym_AMP, - anon_sym_CARET, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_BANG_EQ, @@ -66195,96 +66231,189 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_is, anon_sym_COLON2, sym_type_conversion, - [50502] = 12, + [50439] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(1760), 1, + ACTIONS(1748), 1, anon_sym_DOT, - ACTIONS(1762), 1, + ACTIONS(1750), 1, anon_sym_LPAREN, - ACTIONS(1774), 1, + ACTIONS(1762), 1, anon_sym_LBRACK, - ACTIONS(1776), 1, + ACTIONS(1764), 1, anon_sym_STAR_STAR, - ACTIONS(1764), 2, + STATE(895), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1730), 5, anon_sym_STAR, + anon_sym_EQ, anon_sym_SLASH, - ACTIONS(1766), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1728), 25, + sym__newline, + anon_sym_from, + anon_sym_COMMA, anon_sym_GT_GT, - anon_sym_LT_LT, - ACTIONS(1772), 2, + anon_sym_if, + anon_sym_in, + anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, - STATE(900), 2, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + anon_sym_SEMI, + [50493] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1554), 1, + anon_sym_DOT, + ACTIONS(1556), 1, + anon_sym_LPAREN, + ACTIONS(1570), 1, + anon_sym_LBRACK, + ACTIONS(1788), 1, + anon_sym_STAR_STAR, + STATE(708), 2, sym_argument_list, sym_generator_expression, - ACTIONS(1713), 3, - anon_sym_EQ, + ACTIONS(1714), 4, + anon_sym_STAR, + anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1778), 3, + ACTIONS(1712), 26, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_COLON, + anon_sym_async, + anon_sym_for, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_RBRACE, anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, anon_sym_PERCENT, anon_sym_SLASH_SLASH, - ACTIONS(1711), 18, - sym__newline, - anon_sym_from, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [50547] = 11, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1554), 1, + anon_sym_DOT, + ACTIONS(1556), 1, + anon_sym_LPAREN, + ACTIONS(1570), 1, + anon_sym_LBRACK, + ACTIONS(1788), 1, + anon_sym_STAR_STAR, + ACTIONS(1714), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1778), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(1786), 2, + anon_sym_DASH, + anon_sym_PLUS, + STATE(708), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1790), 3, + anon_sym_AT, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + ACTIONS(1712), 21, anon_sym_COMMA, + anon_sym_GT_GT, anon_sym_if, + anon_sym_COLON, + anon_sym_async, + anon_sym_for, anon_sym_in, anon_sym_PIPE, + anon_sym_RBRACE, anon_sym_not, anon_sym_and, anon_sym_or, anon_sym_AMP, anon_sym_CARET, + anon_sym_LT_LT, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - anon_sym_SEMI, - [50564] = 15, + [50607] = 15, ACTIONS(3), 1, sym_comment, - ACTIONS(1730), 1, + ACTIONS(1554), 1, anon_sym_DOT, - ACTIONS(1732), 1, + ACTIONS(1556), 1, anon_sym_LPAREN, - ACTIONS(1740), 1, - anon_sym_PIPE, - ACTIONS(1744), 1, + ACTIONS(1570), 1, anon_sym_LBRACK, - ACTIONS(1746), 1, + ACTIONS(1784), 1, + anon_sym_PIPE, + ACTIONS(1788), 1, anon_sym_STAR_STAR, - ACTIONS(1752), 1, + ACTIONS(1794), 1, anon_sym_AMP, - ACTIONS(1754), 1, + ACTIONS(1796), 1, anon_sym_CARET, - ACTIONS(1734), 2, + ACTIONS(1740), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1778), 2, anon_sym_STAR, anon_sym_SLASH, - ACTIONS(1736), 2, + ACTIONS(1780), 2, anon_sym_GT_GT, anon_sym_LT_LT, - ACTIONS(1742), 2, + ACTIONS(1786), 2, anon_sym_DASH, anon_sym_PLUS, - STATE(903), 2, + STATE(708), 2, sym_argument_list, sym_generator_expression, - ACTIONS(1706), 3, - anon_sym_EQ, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1748), 3, + ACTIONS(1790), 3, anon_sym_AT, anon_sym_PERCENT, anon_sym_SLASH_SLASH, - ACTIONS(1704), 15, + ACTIONS(1738), 16, anon_sym_COMMA, anon_sym_if, + anon_sym_COLON, + anon_sym_async, + anon_sym_for, anon_sym_in, anon_sym_RBRACE, anon_sym_not, @@ -66296,50 +66425,49 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - anon_sym_COLON2, - sym_type_conversion, - [50632] = 14, + [50675] = 14, ACTIONS(3), 1, sym_comment, - ACTIONS(1760), 1, + ACTIONS(1554), 1, anon_sym_DOT, - ACTIONS(1762), 1, + ACTIONS(1556), 1, anon_sym_LPAREN, - ACTIONS(1774), 1, + ACTIONS(1570), 1, anon_sym_LBRACK, - ACTIONS(1776), 1, + ACTIONS(1788), 1, anon_sym_STAR_STAR, - ACTIONS(1782), 1, + ACTIONS(1794), 1, anon_sym_AMP, - ACTIONS(1784), 1, + ACTIONS(1796), 1, anon_sym_CARET, - ACTIONS(1764), 2, + ACTIONS(1714), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1778), 2, anon_sym_STAR, anon_sym_SLASH, - ACTIONS(1766), 2, + ACTIONS(1780), 2, anon_sym_GT_GT, anon_sym_LT_LT, - ACTIONS(1772), 2, + ACTIONS(1786), 2, anon_sym_DASH, anon_sym_PLUS, - STATE(900), 2, + STATE(708), 2, sym_argument_list, sym_generator_expression, - ACTIONS(1713), 3, - anon_sym_EQ, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1778), 3, + ACTIONS(1790), 3, anon_sym_AT, anon_sym_PERCENT, anon_sym_SLASH_SLASH, - ACTIONS(1711), 16, - sym__newline, - anon_sym_from, + ACTIONS(1712), 17, anon_sym_COMMA, anon_sym_if, + anon_sym_COLON, + anon_sym_async, + anon_sym_for, anon_sym_in, anon_sym_PIPE, + anon_sym_RBRACE, anon_sym_not, anon_sym_and, anon_sym_or, @@ -66349,42 +66477,42 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - anon_sym_SEMI, - [50698] = 10, + [50741] = 10, ACTIONS(3), 1, sym_comment, - ACTIONS(1760), 1, + ACTIONS(1554), 1, anon_sym_DOT, - ACTIONS(1762), 1, + ACTIONS(1556), 1, anon_sym_LPAREN, - ACTIONS(1774), 1, + ACTIONS(1570), 1, anon_sym_LBRACK, - ACTIONS(1776), 1, + ACTIONS(1788), 1, anon_sym_STAR_STAR, - ACTIONS(1764), 2, + ACTIONS(1714), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1778), 2, anon_sym_STAR, anon_sym_SLASH, - STATE(900), 2, + STATE(708), 2, sym_argument_list, sym_generator_expression, - ACTIONS(1713), 3, - anon_sym_EQ, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1778), 3, + ACTIONS(1790), 3, anon_sym_AT, anon_sym_PERCENT, anon_sym_SLASH_SLASH, - ACTIONS(1711), 22, - sym__newline, - anon_sym_from, + ACTIONS(1712), 23, anon_sym_COMMA, anon_sym_GT_GT, anon_sym_if, + anon_sym_COLON, + anon_sym_async, + anon_sym_for, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, + anon_sym_RBRACE, anon_sym_not, anon_sym_and, anon_sym_or, @@ -66397,27 +66525,26 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - anon_sym_SEMI, - [50756] = 8, + [50799] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(1602), 1, + ACTIONS(1554), 1, anon_sym_DOT, - ACTIONS(1604), 1, + ACTIONS(1556), 1, anon_sym_LPAREN, - ACTIONS(1618), 1, + ACTIONS(1570), 1, anon_sym_LBRACK, - ACTIONS(1812), 1, + ACTIONS(1788), 1, anon_sym_STAR_STAR, - STATE(734), 2, + STATE(708), 2, sym_argument_list, sym_generator_expression, - ACTIONS(1702), 4, + ACTIONS(1714), 4, anon_sym_STAR, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1700), 26, + ACTIONS(1712), 26, anon_sym_COMMA, anon_sym_GT_GT, anon_sym_if, @@ -66444,36 +66571,40 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [50810] = 11, + [50853] = 13, ACTIONS(3), 1, sym_comment, - ACTIONS(1602), 1, + ACTIONS(1554), 1, anon_sym_DOT, - ACTIONS(1604), 1, + ACTIONS(1556), 1, anon_sym_LPAREN, - ACTIONS(1618), 1, + ACTIONS(1570), 1, anon_sym_LBRACK, - ACTIONS(1812), 1, + ACTIONS(1788), 1, anon_sym_STAR_STAR, - ACTIONS(1713), 2, + ACTIONS(1796), 1, + anon_sym_CARET, + ACTIONS(1714), 2, anon_sym_LT, anon_sym_GT, - ACTIONS(1802), 2, + ACTIONS(1778), 2, anon_sym_STAR, anon_sym_SLASH, - ACTIONS(1810), 2, + ACTIONS(1780), 2, + anon_sym_GT_GT, + anon_sym_LT_LT, + ACTIONS(1786), 2, anon_sym_DASH, anon_sym_PLUS, - STATE(734), 2, + STATE(708), 2, sym_argument_list, sym_generator_expression, - ACTIONS(1814), 3, + ACTIONS(1790), 3, anon_sym_AT, anon_sym_PERCENT, anon_sym_SLASH_SLASH, - ACTIONS(1711), 21, + ACTIONS(1712), 18, anon_sym_COMMA, - anon_sym_GT_GT, anon_sym_if, anon_sym_COLON, anon_sym_async, @@ -66485,338 +66616,199 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_and, anon_sym_or, anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [50870] = 22, + [50917] = 12, ACTIONS(3), 1, sym_comment, - ACTIONS(654), 1, - sym__string_start, - ACTIONS(656), 1, - sym__template_string_start, - ACTIONS(1858), 1, - sym_identifier, - ACTIONS(1860), 1, + ACTIONS(1554), 1, + anon_sym_DOT, + ACTIONS(1556), 1, anon_sym_LPAREN, - ACTIONS(1862), 1, - anon_sym_STAR, - ACTIONS(1864), 1, - anon_sym_DASH, - ACTIONS(1866), 1, - sym_match_wildcard_pattern, - ACTIONS(1868), 1, + ACTIONS(1570), 1, anon_sym_LBRACK, - ACTIONS(1870), 1, - anon_sym_LBRACE, - ACTIONS(1872), 1, - sym_integer, - ACTIONS(1874), 1, - sym_float, - STATE(1035), 1, - sym_template_string, - STATE(1061), 1, - sym_string, - STATE(1714), 1, - sym_pattern_class_name, - STATE(1168), 2, - sym_concatenated_string, - sym_concatenated_template_string, - STATE(1215), 2, - sym__match_or_pattern, - sym_match_or_pattern, - STATE(1467), 2, - sym__match_patterns, - sym_open_sequence_match_pattern, - STATE(1504), 2, - sym__match_pattern, - sym_match_as_pattern, - STATE(1585), 2, - sym__match_maybe_star_pattern, - sym_match_star_pattern, - ACTIONS(1876), 3, - sym_true, - sym_false, - sym_none, - STATE(1139), 8, - sym__closed_pattern, - sym_match_literal_pattern, - sym_match_capture_pattern, - sym_match_value_pattern, - sym_match_group_pattern, - sym_match_sequence_pattern, - sym_match_mapping_pattern, - sym_match_class_pattern, - [50951] = 5, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1826), 1, - anon_sym_COLON_EQ, - ACTIONS(1878), 1, - anon_sym_EQ, - ACTIONS(1235), 4, - anon_sym_STAR, - anon_sym_SLASH, + ACTIONS(1788), 1, + anon_sym_STAR_STAR, + ACTIONS(1714), 2, anon_sym_LT, anon_sym_GT, - ACTIONS(1230), 29, - anon_sym_DOT, - anon_sym_LPAREN, - anon_sym_RPAREN, - anon_sym_COMMA, + ACTIONS(1778), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(1780), 2, anon_sym_GT_GT, - anon_sym_if, - anon_sym_async, - anon_sym_for, - anon_sym_in, - anon_sym_PIPE, + anon_sym_LT_LT, + ACTIONS(1786), 2, anon_sym_DASH, anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_STAR_STAR, + STATE(708), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1790), 3, anon_sym_AT, - anon_sym_not, - anon_sym_and, - anon_sym_or, anon_sym_PERCENT, anon_sym_SLASH_SLASH, - anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - anon_sym_is, - [50998] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1880), 1, - anon_sym_COLON_EQ, - ACTIONS(1235), 5, - anon_sym_STAR, - anon_sym_COLON, - anon_sym_SLASH, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1230), 29, - anon_sym_DOT, - anon_sym_LPAREN, + ACTIONS(1712), 19, anon_sym_COMMA, - anon_sym_GT_GT, anon_sym_if, + anon_sym_COLON, anon_sym_async, anon_sym_for, anon_sym_in, anon_sym_PIPE, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_LBRACK, anon_sym_RBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, anon_sym_not, anon_sym_and, anon_sym_or, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, anon_sym_AMP, anon_sym_CARET, - anon_sym_LT_LT, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [51043] = 22, - ACTIONS(3), 1, - sym_comment, - ACTIONS(654), 1, - sym__string_start, - ACTIONS(656), 1, - sym__template_string_start, - ACTIONS(1858), 1, - sym_identifier, - ACTIONS(1860), 1, - anon_sym_LPAREN, - ACTIONS(1862), 1, - anon_sym_STAR, - ACTIONS(1864), 1, - anon_sym_DASH, - ACTIONS(1866), 1, - sym_match_wildcard_pattern, - ACTIONS(1868), 1, - anon_sym_LBRACK, - ACTIONS(1870), 1, - anon_sym_LBRACE, - ACTIONS(1872), 1, - sym_integer, - ACTIONS(1874), 1, - sym_float, - STATE(1035), 1, - sym_template_string, - STATE(1061), 1, - sym_string, - STATE(1714), 1, - sym_pattern_class_name, - STATE(1168), 2, - sym_concatenated_string, - sym_concatenated_template_string, - STATE(1215), 2, - sym__match_or_pattern, - sym_match_or_pattern, - STATE(1503), 2, - sym__match_patterns, - sym_open_sequence_match_pattern, - STATE(1504), 2, - sym__match_pattern, - sym_match_as_pattern, - STATE(1585), 2, - sym__match_maybe_star_pattern, - sym_match_star_pattern, - ACTIONS(1876), 3, - sym_true, - sym_false, - sym_none, - STATE(1139), 8, - sym__closed_pattern, - sym_match_literal_pattern, - sym_match_capture_pattern, - sym_match_value_pattern, - sym_match_group_pattern, - sym_match_sequence_pattern, - sym_match_mapping_pattern, - sym_match_class_pattern, - [51124] = 8, + [50979] = 15, ACTIONS(3), 1, sym_comment, - ACTIONS(1828), 1, + ACTIONS(1554), 1, anon_sym_DOT, - ACTIONS(1830), 1, + ACTIONS(1556), 1, anon_sym_LPAREN, - ACTIONS(1842), 1, + ACTIONS(1570), 1, anon_sym_LBRACK, - ACTIONS(1844), 1, + ACTIONS(1784), 1, + anon_sym_PIPE, + ACTIONS(1788), 1, anon_sym_STAR_STAR, - STATE(979), 2, - sym_argument_list, - sym_generator_expression, - ACTIONS(1713), 4, - anon_sym_STAR, - anon_sym_SLASH, + ACTIONS(1794), 1, + anon_sym_AMP, + ACTIONS(1796), 1, + anon_sym_CARET, + ACTIONS(1718), 2, anon_sym_LT, anon_sym_GT, - ACTIONS(1711), 25, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_as, + ACTIONS(1778), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(1780), 2, anon_sym_GT_GT, - anon_sym_if, - anon_sym_COLON, - anon_sym_in, - anon_sym_PIPE, + anon_sym_LT_LT, + ACTIONS(1786), 2, anon_sym_DASH, anon_sym_PLUS, + STATE(708), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1790), 3, anon_sym_AT, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + ACTIONS(1716), 16, + anon_sym_COMMA, + anon_sym_if, + anon_sym_COLON, + anon_sym_async, + anon_sym_for, + anon_sym_in, + anon_sym_RBRACE, anon_sym_not, anon_sym_and, anon_sym_or, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [51177] = 11, + [51047] = 15, ACTIONS(3), 1, sym_comment, - ACTIONS(1828), 1, + ACTIONS(1554), 1, anon_sym_DOT, - ACTIONS(1830), 1, + ACTIONS(1556), 1, anon_sym_LPAREN, - ACTIONS(1842), 1, + ACTIONS(1570), 1, anon_sym_LBRACK, - ACTIONS(1844), 1, + ACTIONS(1784), 1, + anon_sym_PIPE, + ACTIONS(1788), 1, anon_sym_STAR_STAR, - ACTIONS(1713), 2, + ACTIONS(1794), 1, + anon_sym_AMP, + ACTIONS(1796), 1, + anon_sym_CARET, + ACTIONS(1722), 2, anon_sym_LT, anon_sym_GT, - ACTIONS(1832), 2, + ACTIONS(1778), 2, anon_sym_STAR, anon_sym_SLASH, - ACTIONS(1840), 2, + ACTIONS(1780), 2, + anon_sym_GT_GT, + anon_sym_LT_LT, + ACTIONS(1786), 2, anon_sym_DASH, anon_sym_PLUS, - STATE(979), 2, + STATE(708), 2, sym_argument_list, sym_generator_expression, - ACTIONS(1846), 3, + ACTIONS(1790), 3, anon_sym_AT, anon_sym_PERCENT, anon_sym_SLASH_SLASH, - ACTIONS(1711), 20, - anon_sym_RPAREN, + ACTIONS(1720), 16, anon_sym_COMMA, - anon_sym_as, - anon_sym_GT_GT, anon_sym_if, anon_sym_COLON, + anon_sym_async, + anon_sym_for, anon_sym_in, - anon_sym_PIPE, + anon_sym_RBRACE, anon_sym_not, anon_sym_and, anon_sym_or, - anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [51236] = 8, + [51115] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(1828), 1, + ACTIONS(1554), 1, anon_sym_DOT, - ACTIONS(1830), 1, + ACTIONS(1556), 1, anon_sym_LPAREN, - ACTIONS(1842), 1, + ACTIONS(1570), 1, anon_sym_LBRACK, - ACTIONS(1844), 1, + ACTIONS(1788), 1, anon_sym_STAR_STAR, - STATE(979), 2, + STATE(708), 2, sym_argument_list, sym_generator_expression, - ACTIONS(1702), 4, + ACTIONS(1730), 4, anon_sym_STAR, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1700), 25, - anon_sym_RPAREN, + ACTIONS(1728), 26, anon_sym_COMMA, - anon_sym_as, anon_sym_GT_GT, anon_sym_if, anon_sym_COLON, + anon_sym_async, + anon_sym_for, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, + anon_sym_RBRACE, anon_sym_AT, anon_sym_not, anon_sym_and, @@ -66832,77 +66824,35 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [51289] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1463), 3, - anon_sym_DOT, - anon_sym_LPAREN, - anon_sym_LBRACK, - ACTIONS(1468), 13, - anon_sym_STAR, - anon_sym_GT_GT, - anon_sym_PIPE, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_SLASH, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, - ACTIONS(1470), 19, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_COLON, - anon_sym_in, - anon_sym_RBRACK, - anon_sym_EQ, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_STAR_EQ, - anon_sym_SLASH_EQ, - anon_sym_AT_EQ, - anon_sym_SLASH_SLASH_EQ, - anon_sym_PERCENT_EQ, - anon_sym_STAR_STAR_EQ, - anon_sym_GT_GT_EQ, - anon_sym_LT_LT_EQ, - anon_sym_AMP_EQ, - anon_sym_CARET_EQ, - anon_sym_PIPE_EQ, - [51334] = 8, + [51169] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(1828), 1, + ACTIONS(1808), 1, anon_sym_DOT, - ACTIONS(1830), 1, + ACTIONS(1810), 1, anon_sym_LPAREN, - ACTIONS(1842), 1, + ACTIONS(1822), 1, anon_sym_LBRACK, - ACTIONS(1844), 1, + ACTIONS(1824), 1, anon_sym_STAR_STAR, - STATE(979), 2, + STATE(925), 2, sym_argument_list, sym_generator_expression, - ACTIONS(1717), 4, + ACTIONS(1714), 5, anon_sym_STAR, + anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1715), 25, - anon_sym_RPAREN, + ACTIONS(1712), 25, anon_sym_COMMA, - anon_sym_as, anon_sym_GT_GT, anon_sym_if, - anon_sym_COLON, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, + anon_sym_RBRACE, anon_sym_AT, anon_sym_not, anon_sym_and, @@ -66918,18 +66868,21 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [51387] = 3, + anon_sym_COLON2, + sym_type_conversion, + [51223] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1532), 5, + ACTIONS(1268), 1, + anon_sym_COLON_EQ, + ACTIONS(1209), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1530), 30, + ACTIONS(1204), 29, sym__newline, - sym__string_start, anon_sym_DOT, anon_sym_from, anon_sym_LPAREN, @@ -66958,17 +66911,18 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LT_GT, anon_sym_is, anon_sym_SEMI, - [51430] = 3, + [51268] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1536), 5, + ACTIONS(1870), 1, + anon_sym_COLON_EQ, + ACTIONS(1209), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1534), 30, - sym__template_string_start, + ACTIONS(1204), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_COMMA, @@ -66998,188 +66952,80 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_is, anon_sym_COLON2, sym_type_conversion, - [51473] = 15, + [51313] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(1828), 1, + ACTIONS(1840), 1, anon_sym_DOT, - ACTIONS(1830), 1, - anon_sym_LPAREN, - ACTIONS(1838), 1, - anon_sym_PIPE, ACTIONS(1842), 1, + anon_sym_LPAREN, + ACTIONS(1854), 1, anon_sym_LBRACK, - ACTIONS(1844), 1, + ACTIONS(1856), 1, anon_sym_STAR_STAR, - ACTIONS(1850), 1, - anon_sym_AMP, - ACTIONS(1852), 1, - anon_sym_CARET, - ACTIONS(1725), 2, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1832), 2, + STATE(953), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1730), 4, anon_sym_STAR, anon_sym_SLASH, - ACTIONS(1834), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1728), 25, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_as, anon_sym_GT_GT, - anon_sym_LT_LT, - ACTIONS(1840), 2, - anon_sym_DASH, - anon_sym_PLUS, - STATE(979), 2, - sym_argument_list, - sym_generator_expression, - ACTIONS(1846), 3, - anon_sym_AT, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - ACTIONS(1723), 15, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_as, anon_sym_if, anon_sym_COLON, anon_sym_in, - anon_sym_not, - anon_sym_and, - anon_sym_or, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - anon_sym_is, - [51540] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(303), 3, - anon_sym_DOT, - anon_sym_LPAREN, - anon_sym_LBRACK, - ACTIONS(272), 13, - anon_sym_STAR, - anon_sym_GT_GT, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, - anon_sym_STAR_STAR, anon_sym_AT, - anon_sym_SLASH, + anon_sym_not, + anon_sym_and, + anon_sym_or, anon_sym_PERCENT, anon_sym_SLASH_SLASH, anon_sym_AMP, anon_sym_CARET, anon_sym_LT_LT, - ACTIONS(307), 19, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_COLON, - anon_sym_in, - anon_sym_RBRACK, - anon_sym_EQ, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_STAR_EQ, - anon_sym_SLASH_EQ, - anon_sym_AT_EQ, - anon_sym_SLASH_SLASH_EQ, - anon_sym_PERCENT_EQ, - anon_sym_STAR_STAR_EQ, - anon_sym_GT_GT_EQ, - anon_sym_LT_LT_EQ, - anon_sym_AMP_EQ, - anon_sym_CARET_EQ, - anon_sym_PIPE_EQ, - [51585] = 14, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1828), 1, - anon_sym_DOT, - ACTIONS(1830), 1, - anon_sym_LPAREN, - ACTIONS(1842), 1, - anon_sym_LBRACK, - ACTIONS(1844), 1, - anon_sym_STAR_STAR, - ACTIONS(1850), 1, - anon_sym_AMP, - ACTIONS(1852), 1, - anon_sym_CARET, - ACTIONS(1713), 2, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1832), 2, - anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(1834), 2, - anon_sym_GT_GT, - anon_sym_LT_LT, - ACTIONS(1840), 2, - anon_sym_DASH, - anon_sym_PLUS, - STATE(979), 2, - sym_argument_list, - sym_generator_expression, - ACTIONS(1846), 3, - anon_sym_AT, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - ACTIONS(1711), 16, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_as, - anon_sym_if, - anon_sym_COLON, - anon_sym_in, - anon_sym_PIPE, - anon_sym_not, - anon_sym_and, - anon_sym_or, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [51650] = 10, + [51366] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1828), 1, - anon_sym_DOT, - ACTIONS(1830), 1, - anon_sym_LPAREN, - ACTIONS(1842), 1, - anon_sym_LBRACK, - ACTIONS(1844), 1, - anon_sym_STAR_STAR, - ACTIONS(1713), 2, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1832), 2, + ACTIONS(1544), 5, anon_sym_STAR, + anon_sym_EQ, anon_sym_SLASH, - STATE(979), 2, - sym_argument_list, - sym_generator_expression, - ACTIONS(1846), 3, - anon_sym_AT, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - ACTIONS(1711), 22, - anon_sym_RPAREN, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1542), 30, + sym__template_string_start, + anon_sym_DOT, + anon_sym_LPAREN, anon_sym_COMMA, - anon_sym_as, anon_sym_GT_GT, anon_sym_if, - anon_sym_COLON, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_RBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, anon_sym_not, anon_sym_and, anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, anon_sym_AMP, anon_sym_CARET, anon_sym_LT_LT, @@ -67189,27 +67035,27 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [51707] = 5, + anon_sym_COLON2, + sym_type_conversion, + [51409] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(604), 1, + ACTIONS(283), 1, anon_sym_COLON_EQ, - ACTIONS(277), 3, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_RBRACK, - ACTIONS(272), 4, + ACTIONS(272), 5, anon_sym_STAR, + anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(303), 27, + ACTIONS(303), 29, + sym__newline, anon_sym_DOT, + anon_sym_from, anon_sym_LPAREN, + anon_sym_COMMA, anon_sym_GT_GT, anon_sym_if, - anon_sym_async, - anon_sym_for, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, @@ -67231,17 +67077,19 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [51754] = 3, + anon_sym_SEMI, + [51454] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1528), 5, + ACTIONS(618), 1, + anon_sym_COLON_EQ, + ACTIONS(272), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1526), 30, - sym__string_start, + ACTIONS(303), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_COMMA, @@ -67271,30 +67119,31 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_is, anon_sym_COLON2, sym_type_conversion, - [51797] = 4, + [51499] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(283), 1, + ACTIONS(1872), 1, anon_sym_COLON_EQ, - ACTIONS(272), 5, + ACTIONS(1209), 5, anon_sym_STAR, - anon_sym_EQ, + anon_sym_COLON, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(303), 29, - sym__newline, + ACTIONS(1204), 29, anon_sym_DOT, - anon_sym_from, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_GT_GT, anon_sym_if, + anon_sym_async, + anon_sym_for, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, + anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, @@ -67311,157 +67160,183 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - anon_sym_SEMI, - [51842] = 13, + [51544] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1828), 1, + ACTIONS(1290), 3, anon_sym_DOT, - ACTIONS(1830), 1, anon_sym_LPAREN, - ACTIONS(1842), 1, anon_sym_LBRACK, - ACTIONS(1844), 1, - anon_sym_STAR_STAR, - ACTIONS(1852), 1, - anon_sym_CARET, - ACTIONS(1713), 2, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1832), 2, + ACTIONS(1295), 13, anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(1834), 2, anon_sym_GT_GT, - anon_sym_LT_LT, - ACTIONS(1840), 2, + anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, - STATE(979), 2, - sym_argument_list, - sym_generator_expression, - ACTIONS(1846), 3, + anon_sym_STAR_STAR, anon_sym_AT, + anon_sym_SLASH, anon_sym_PERCENT, anon_sym_SLASH_SLASH, - ACTIONS(1711), 17, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + ACTIONS(1297), 19, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_COLON, + anon_sym_in, + anon_sym_RBRACK, + anon_sym_EQ, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_AT_EQ, + anon_sym_SLASH_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_STAR_STAR_EQ, + anon_sym_GT_GT_EQ, + anon_sym_LT_LT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + [51589] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1840), 1, + anon_sym_DOT, + ACTIONS(1842), 1, + anon_sym_LPAREN, + ACTIONS(1854), 1, + anon_sym_LBRACK, + ACTIONS(1856), 1, + anon_sym_STAR_STAR, + STATE(953), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1726), 4, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1724), 25, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_as, + anon_sym_GT_GT, anon_sym_if, anon_sym_COLON, anon_sym_in, anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_AT, anon_sym_not, anon_sym_and, anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [51905] = 12, + [51642] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1828), 1, - anon_sym_DOT, - ACTIONS(1830), 1, - anon_sym_LPAREN, - ACTIONS(1842), 1, - anon_sym_LBRACK, - ACTIONS(1844), 1, - anon_sym_STAR_STAR, - ACTIONS(1713), 2, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1832), 2, + ACTIONS(1540), 5, anon_sym_STAR, + anon_sym_EQ, anon_sym_SLASH, - ACTIONS(1834), 2, - anon_sym_GT_GT, - anon_sym_LT_LT, - ACTIONS(1840), 2, - anon_sym_DASH, - anon_sym_PLUS, - STATE(979), 2, - sym_argument_list, - sym_generator_expression, - ACTIONS(1846), 3, - anon_sym_AT, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - ACTIONS(1711), 18, - anon_sym_RPAREN, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1538), 30, + sym__template_string_start, + anon_sym_DOT, + anon_sym_LPAREN, anon_sym_COMMA, - anon_sym_as, + anon_sym_GT_GT, anon_sym_if, - anon_sym_COLON, anon_sym_in, anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_RBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, anon_sym_not, anon_sym_and, anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, anon_sym_AMP, anon_sym_CARET, + anon_sym_LT_LT, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [51966] = 22, + anon_sym_COLON2, + sym_type_conversion, + [51685] = 22, ACTIONS(3), 1, sym_comment, - ACTIONS(654), 1, + ACTIONS(664), 1, sym__string_start, - ACTIONS(656), 1, + ACTIONS(666), 1, sym__template_string_start, - ACTIONS(1858), 1, + ACTIONS(1874), 1, sym_identifier, - ACTIONS(1860), 1, + ACTIONS(1876), 1, anon_sym_LPAREN, - ACTIONS(1862), 1, + ACTIONS(1878), 1, anon_sym_STAR, - ACTIONS(1864), 1, + ACTIONS(1880), 1, + anon_sym_if, + ACTIONS(1882), 1, + anon_sym_COLON, + ACTIONS(1884), 1, anon_sym_DASH, - ACTIONS(1866), 1, + ACTIONS(1886), 1, sym_match_wildcard_pattern, - ACTIONS(1868), 1, + ACTIONS(1888), 1, anon_sym_LBRACK, - ACTIONS(1870), 1, + ACTIONS(1890), 1, anon_sym_LBRACE, - ACTIONS(1872), 1, + ACTIONS(1892), 1, sym_integer, - ACTIONS(1874), 1, + ACTIONS(1894), 1, sym_float, - ACTIONS(1882), 1, - anon_sym_if, - ACTIONS(1884), 1, - anon_sym_COLON, - STATE(1035), 1, + STATE(1043), 1, sym_template_string, - STATE(1061), 1, + STATE(1068), 1, sym_string, - STATE(1714), 1, + STATE(1650), 1, sym_pattern_class_name, - STATE(1168), 2, + STATE(1116), 2, sym_concatenated_string, sym_concatenated_template_string, - STATE(1215), 2, + STATE(1240), 2, sym__match_or_pattern, sym_match_or_pattern, - ACTIONS(1876), 3, + ACTIONS(1896), 3, sym_true, sym_false, sym_none, - STATE(1293), 4, + STATE(1307), 4, sym__match_pattern, sym_match_as_pattern, sym__match_maybe_star_pattern, sym_match_star_pattern, - STATE(1139), 8, + STATE(1117), 8, sym__closed_pattern, sym_match_literal_pattern, sym_match_capture_pattern, @@ -67470,14 +67345,14 @@ static const uint16_t ts_small_parse_table[] = { sym_match_sequence_pattern, sym_match_mapping_pattern, sym_match_class_pattern, - [52047] = 4, + [51766] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1230), 3, + ACTIONS(1204), 3, anon_sym_DOT, anon_sym_LPAREN, anon_sym_LBRACK, - ACTIONS(1235), 13, + ACTIONS(1209), 13, anon_sym_STAR, anon_sym_GT_GT, anon_sym_PIPE, @@ -67491,7 +67366,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_AMP, anon_sym_CARET, anon_sym_LT_LT, - ACTIONS(1241), 19, + ACTIONS(1272), 19, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_COLON, @@ -67511,27 +67386,24 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, - [52092] = 5, + [51811] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1826), 1, - anon_sym_COLON_EQ, - ACTIONS(1232), 3, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_RBRACK, - ACTIONS(1235), 4, + ACTIONS(1548), 5, anon_sym_STAR, + anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1230), 27, + ACTIONS(1546), 30, + sym__newline, + sym__string_start, anon_sym_DOT, + anon_sym_from, anon_sym_LPAREN, + anon_sym_COMMA, anon_sym_GT_GT, anon_sym_if, - anon_sym_async, - anon_sym_for, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, @@ -67553,25 +67425,116 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [52139] = 4, + anon_sym_SEMI, + [51854] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(660), 1, - anon_sym_COLON_EQ, - ACTIONS(272), 5, + ACTIONS(1840), 1, + anon_sym_DOT, + ACTIONS(1842), 1, + anon_sym_LPAREN, + ACTIONS(1854), 1, + anon_sym_LBRACK, + ACTIONS(1856), 1, + anon_sym_STAR_STAR, + STATE(953), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1714), 4, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1712), 25, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_as, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_COLON, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [51907] = 11, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1840), 1, + anon_sym_DOT, + ACTIONS(1842), 1, + anon_sym_LPAREN, + ACTIONS(1854), 1, + anon_sym_LBRACK, + ACTIONS(1856), 1, + anon_sym_STAR_STAR, + ACTIONS(1714), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1844), 2, anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(1852), 2, + anon_sym_DASH, + anon_sym_PLUS, + STATE(953), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1858), 3, + anon_sym_AT, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + ACTIONS(1712), 20, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_as, + anon_sym_GT_GT, + anon_sym_if, anon_sym_COLON, + anon_sym_in, + anon_sym_PIPE, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [51966] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1548), 5, + anon_sym_STAR, + anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(303), 29, + ACTIONS(1546), 30, + sym__string_start, anon_sym_DOT, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_GT_GT, anon_sym_if, - anon_sym_async, - anon_sym_for, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, @@ -67594,19 +67557,20 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [52184] = 4, + anon_sym_COLON2, + sym_type_conversion, + [52009] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1237), 1, - anon_sym_COLON_EQ, - ACTIONS(1235), 5, + ACTIONS(1544), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1230), 29, + ACTIONS(1542), 30, sym__newline, + sym__template_string_start, anon_sym_DOT, anon_sym_from, anon_sym_LPAREN, @@ -67635,20 +67599,18 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LT_GT, anon_sym_is, anon_sym_SEMI, - [52229] = 3, + [52052] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1528), 5, + ACTIONS(1552), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1526), 30, - sym__newline, + ACTIONS(1550), 30, sym__string_start, anon_sym_DOT, - anon_sym_from, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_GT_GT, @@ -67658,6 +67620,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, + anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, @@ -67674,29 +67637,76 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - anon_sym_SEMI, - [52272] = 3, + anon_sym_COLON2, + sym_type_conversion, + [52095] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(1532), 5, + ACTIONS(1838), 1, + anon_sym_COLON_EQ, + ACTIONS(1206), 3, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_RBRACK, + ACTIONS(1209), 4, anon_sym_STAR, - anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1530), 30, - sym__string_start, + ACTIONS(1204), 27, anon_sym_DOT, anon_sym_LPAREN, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_async, + anon_sym_for, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [52142] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(604), 1, + anon_sym_COLON_EQ, + ACTIONS(277), 3, + anon_sym_RPAREN, anon_sym_COMMA, + anon_sym_RBRACK, + ACTIONS(272), 4, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(303), 27, + anon_sym_DOT, + anon_sym_LPAREN, anon_sym_GT_GT, anon_sym_if, + anon_sym_async, + anon_sym_for, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, - anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, @@ -67713,16 +67723,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - anon_sym_COLON2, - sym_type_conversion, - [52315] = 4, + [52189] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(303), 3, + ACTIONS(1333), 3, anon_sym_DOT, anon_sym_LPAREN, anon_sym_LBRACK, - ACTIONS(272), 13, + ACTIONS(1338), 13, anon_sym_STAR, anon_sym_GT_GT, anon_sym_PIPE, @@ -67736,7 +67744,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_AMP, anon_sym_CARET, anon_sym_LT_LT, - ACTIONS(588), 19, + ACTIONS(1340), 19, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_COLON, @@ -67756,133 +67764,111 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, - [52360] = 15, + [52234] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1828), 1, - anon_sym_DOT, - ACTIONS(1830), 1, - anon_sym_LPAREN, - ACTIONS(1838), 1, - anon_sym_PIPE, - ACTIONS(1842), 1, - anon_sym_LBRACK, - ACTIONS(1844), 1, - anon_sym_STAR_STAR, - ACTIONS(1850), 1, - anon_sym_AMP, - ACTIONS(1852), 1, - anon_sym_CARET, - ACTIONS(1721), 2, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1832), 2, + ACTIONS(1552), 5, anon_sym_STAR, + anon_sym_EQ, anon_sym_SLASH, - ACTIONS(1834), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1550), 30, + sym__newline, + sym__string_start, + anon_sym_DOT, + anon_sym_from, + anon_sym_LPAREN, + anon_sym_COMMA, anon_sym_GT_GT, - anon_sym_LT_LT, - ACTIONS(1840), 2, + anon_sym_if, + anon_sym_in, + anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, - STATE(979), 2, - sym_argument_list, - sym_generator_expression, - ACTIONS(1846), 3, + anon_sym_LBRACK, + anon_sym_STAR_STAR, anon_sym_AT, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - ACTIONS(1719), 15, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_as, - anon_sym_if, - anon_sym_COLON, - anon_sym_in, anon_sym_not, anon_sym_and, anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [52427] = 15, + anon_sym_SEMI, + [52277] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1828), 1, + ACTIONS(1540), 5, + anon_sym_STAR, + anon_sym_EQ, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1538), 30, + sym__newline, + sym__template_string_start, anon_sym_DOT, - ACTIONS(1830), 1, + anon_sym_from, anon_sym_LPAREN, - ACTIONS(1838), 1, - anon_sym_PIPE, - ACTIONS(1842), 1, - anon_sym_LBRACK, - ACTIONS(1844), 1, - anon_sym_STAR_STAR, - ACTIONS(1850), 1, - anon_sym_AMP, - ACTIONS(1852), 1, - anon_sym_CARET, - ACTIONS(1706), 2, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1832), 2, - anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(1834), 2, + anon_sym_COMMA, anon_sym_GT_GT, - anon_sym_LT_LT, - ACTIONS(1840), 2, + anon_sym_if, + anon_sym_in, + anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, - STATE(979), 2, - sym_argument_list, - sym_generator_expression, - ACTIONS(1846), 3, + anon_sym_LBRACK, + anon_sym_STAR_STAR, anon_sym_AT, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - ACTIONS(1704), 15, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_as, - anon_sym_if, - anon_sym_COLON, - anon_sym_in, anon_sym_not, anon_sym_and, anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [52494] = 3, + anon_sym_SEMI, + [52320] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1540), 5, + ACTIONS(638), 1, + anon_sym_COLON_EQ, + ACTIONS(272), 5, anon_sym_STAR, - anon_sym_EQ, + anon_sym_COLON, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1538), 30, - sym__newline, - sym__template_string_start, + ACTIONS(303), 29, anon_sym_DOT, - anon_sym_from, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_GT_GT, anon_sym_if, + anon_sym_async, + anon_sym_for, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, + anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, @@ -67899,74 +67885,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - anon_sym_SEMI, - [52537] = 22, - ACTIONS(3), 1, - sym_comment, - ACTIONS(654), 1, - sym__string_start, - ACTIONS(656), 1, - sym__template_string_start, - ACTIONS(1858), 1, - sym_identifier, - ACTIONS(1860), 1, - anon_sym_LPAREN, - ACTIONS(1862), 1, - anon_sym_STAR, - ACTIONS(1864), 1, - anon_sym_DASH, - ACTIONS(1866), 1, - sym_match_wildcard_pattern, - ACTIONS(1868), 1, - anon_sym_LBRACK, - ACTIONS(1870), 1, - anon_sym_LBRACE, - ACTIONS(1872), 1, - sym_integer, - ACTIONS(1874), 1, - sym_float, - ACTIONS(1886), 1, - anon_sym_if, - ACTIONS(1888), 1, - anon_sym_COLON, - STATE(1035), 1, - sym_template_string, - STATE(1061), 1, - sym_string, - STATE(1714), 1, - sym_pattern_class_name, - STATE(1168), 2, - sym_concatenated_string, - sym_concatenated_template_string, - STATE(1215), 2, - sym__match_or_pattern, - sym_match_or_pattern, - ACTIONS(1876), 3, - sym_true, - sym_false, - sym_none, - STATE(1293), 4, - sym__match_pattern, - sym_match_as_pattern, - sym__match_maybe_star_pattern, - sym_match_star_pattern, - STATE(1139), 8, - sym__closed_pattern, - sym_match_literal_pattern, - sym_match_capture_pattern, - sym_match_value_pattern, - sym_match_group_pattern, - sym_match_sequence_pattern, - sym_match_mapping_pattern, - sym_match_class_pattern, - [52618] = 4, + [52365] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1230), 3, + ACTIONS(303), 3, anon_sym_DOT, anon_sym_LPAREN, anon_sym_LBRACK, - ACTIONS(1235), 13, + ACTIONS(272), 13, anon_sym_STAR, anon_sym_GT_GT, anon_sym_PIPE, @@ -67980,7 +67906,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_AMP, anon_sym_CARET, anon_sym_LT_LT, - ACTIONS(1262), 19, + ACTIONS(307), 19, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_COLON, @@ -68000,88 +67926,59 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, - [52663] = 3, + [52410] = 15, ACTIONS(3), 1, sym_comment, - ACTIONS(1536), 5, - anon_sym_STAR, - anon_sym_EQ, - anon_sym_SLASH, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1534), 30, - sym__newline, - sym__template_string_start, + ACTIONS(1840), 1, anon_sym_DOT, - anon_sym_from, + ACTIONS(1842), 1, anon_sym_LPAREN, - anon_sym_COMMA, - anon_sym_GT_GT, - anon_sym_if, - anon_sym_in, + ACTIONS(1850), 1, anon_sym_PIPE, - anon_sym_DASH, - anon_sym_PLUS, + ACTIONS(1854), 1, anon_sym_LBRACK, + ACTIONS(1856), 1, anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_not, - anon_sym_and, - anon_sym_or, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, + ACTIONS(1862), 1, anon_sym_AMP, + ACTIONS(1864), 1, anon_sym_CARET, - anon_sym_LT_LT, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - anon_sym_is, - anon_sym_SEMI, - [52706] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1420), 3, - anon_sym_DOT, - anon_sym_LPAREN, - anon_sym_LBRACK, - ACTIONS(1425), 13, + ACTIONS(1740), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1844), 2, anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(1846), 2, anon_sym_GT_GT, - anon_sym_PIPE, + anon_sym_LT_LT, + ACTIONS(1852), 2, anon_sym_DASH, anon_sym_PLUS, - anon_sym_STAR_STAR, + STATE(953), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1858), 3, anon_sym_AT, - anon_sym_SLASH, anon_sym_PERCENT, anon_sym_SLASH_SLASH, - anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, - ACTIONS(1427), 19, + ACTIONS(1738), 15, anon_sym_RPAREN, anon_sym_COMMA, + anon_sym_as, + anon_sym_if, anon_sym_COLON, anon_sym_in, - anon_sym_RBRACK, - anon_sym_EQ, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_STAR_EQ, - anon_sym_SLASH_EQ, - anon_sym_AT_EQ, - anon_sym_SLASH_SLASH_EQ, - anon_sym_PERCENT_EQ, - anon_sym_STAR_STAR_EQ, - anon_sym_GT_GT_EQ, - anon_sym_LT_LT_EQ, - anon_sym_AMP_EQ, - anon_sym_CARET_EQ, - anon_sym_PIPE_EQ, - [52751] = 5, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [52477] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(604), 1, @@ -68123,29 +68020,32 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [52798] = 4, + [52524] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(1890), 1, + ACTIONS(1838), 1, anon_sym_COLON_EQ, - ACTIONS(1235), 5, - anon_sym_STAR, + ACTIONS(1898), 1, anon_sym_EQ, + ACTIONS(1209), 4, + anon_sym_STAR, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1230), 29, + ACTIONS(1204), 29, anon_sym_DOT, anon_sym_LPAREN, + anon_sym_RPAREN, anon_sym_COMMA, anon_sym_GT_GT, anon_sym_if, + anon_sym_async, + anon_sym_for, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, - anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, @@ -68162,30 +68062,32 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - anon_sym_COLON2, - sym_type_conversion, - [52843] = 3, + [52571] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(1540), 5, + ACTIONS(604), 1, + anon_sym_COLON_EQ, + ACTIONS(587), 3, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_RBRACK, + ACTIONS(272), 4, anon_sym_STAR, - anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1538), 30, - sym__template_string_start, + ACTIONS(303), 27, anon_sym_DOT, anon_sym_LPAREN, - anon_sym_COMMA, anon_sym_GT_GT, anon_sym_if, + anon_sym_async, + anon_sym_for, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, - anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, @@ -68202,123 +68104,195 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - anon_sym_COLON2, - sym_type_conversion, - [52886] = 4, + [52618] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(618), 1, - anon_sym_COLON_EQ, - ACTIONS(272), 5, - anon_sym_STAR, - anon_sym_EQ, - anon_sym_SLASH, - anon_sym_LT, - anon_sym_GT, - ACTIONS(303), 29, + ACTIONS(1204), 3, anon_sym_DOT, anon_sym_LPAREN, - anon_sym_COMMA, + anon_sym_LBRACK, + ACTIONS(1209), 13, + anon_sym_STAR, anon_sym_GT_GT, - anon_sym_if, - anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, - anon_sym_not, - anon_sym_and, - anon_sym_or, + anon_sym_SLASH, anon_sym_PERCENT, anon_sym_SLASH_SLASH, anon_sym_AMP, anon_sym_CARET, anon_sym_LT_LT, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - anon_sym_is, - anon_sym_COLON2, - sym_type_conversion, - [52931] = 8, + ACTIONS(1211), 19, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_COLON, + anon_sym_in, + anon_sym_RBRACK, + anon_sym_EQ, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_AT_EQ, + anon_sym_SLASH_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_STAR_STAR_EQ, + anon_sym_GT_GT_EQ, + anon_sym_LT_LT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + [52663] = 22, ACTIONS(3), 1, sym_comment, - ACTIONS(1828), 1, - anon_sym_DOT, - ACTIONS(1830), 1, + ACTIONS(664), 1, + sym__string_start, + ACTIONS(666), 1, + sym__template_string_start, + ACTIONS(1874), 1, + sym_identifier, + ACTIONS(1876), 1, anon_sym_LPAREN, + ACTIONS(1878), 1, + anon_sym_STAR, + ACTIONS(1884), 1, + anon_sym_DASH, + ACTIONS(1886), 1, + sym_match_wildcard_pattern, + ACTIONS(1888), 1, + anon_sym_LBRACK, + ACTIONS(1890), 1, + anon_sym_LBRACE, + ACTIONS(1892), 1, + sym_integer, + ACTIONS(1894), 1, + sym_float, + ACTIONS(1900), 1, + anon_sym_if, + ACTIONS(1902), 1, + anon_sym_COLON, + STATE(1043), 1, + sym_template_string, + STATE(1068), 1, + sym_string, + STATE(1650), 1, + sym_pattern_class_name, + STATE(1116), 2, + sym_concatenated_string, + sym_concatenated_template_string, + STATE(1240), 2, + sym__match_or_pattern, + sym_match_or_pattern, + ACTIONS(1896), 3, + sym_true, + sym_false, + sym_none, + STATE(1307), 4, + sym__match_pattern, + sym_match_as_pattern, + sym__match_maybe_star_pattern, + sym_match_star_pattern, + STATE(1117), 8, + sym__closed_pattern, + sym_match_literal_pattern, + sym_match_capture_pattern, + sym_match_value_pattern, + sym_match_group_pattern, + sym_match_sequence_pattern, + sym_match_mapping_pattern, + sym_match_class_pattern, + [52744] = 14, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1840), 1, + anon_sym_DOT, ACTIONS(1842), 1, + anon_sym_LPAREN, + ACTIONS(1854), 1, anon_sym_LBRACK, - ACTIONS(1844), 1, + ACTIONS(1856), 1, anon_sym_STAR_STAR, - STATE(979), 2, - sym_argument_list, - sym_generator_expression, - ACTIONS(1713), 4, - anon_sym_STAR, - anon_sym_SLASH, + ACTIONS(1862), 1, + anon_sym_AMP, + ACTIONS(1864), 1, + anon_sym_CARET, + ACTIONS(1714), 2, anon_sym_LT, anon_sym_GT, - ACTIONS(1711), 25, + ACTIONS(1844), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(1846), 2, + anon_sym_GT_GT, + anon_sym_LT_LT, + ACTIONS(1852), 2, + anon_sym_DASH, + anon_sym_PLUS, + STATE(953), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1858), 3, + anon_sym_AT, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + ACTIONS(1712), 16, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_as, - anon_sym_GT_GT, anon_sym_if, anon_sym_COLON, anon_sym_in, anon_sym_PIPE, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_AT, anon_sym_not, anon_sym_and, anon_sym_or, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [52984] = 3, + [52809] = 10, ACTIONS(3), 1, sym_comment, - ACTIONS(1600), 5, - anon_sym_STAR, - anon_sym_EQ, - anon_sym_SLASH, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1598), 29, - sym__newline, + ACTIONS(1840), 1, anon_sym_DOT, - anon_sym_from, + ACTIONS(1842), 1, anon_sym_LPAREN, + ACTIONS(1854), 1, + anon_sym_LBRACK, + ACTIONS(1856), 1, + anon_sym_STAR_STAR, + ACTIONS(1714), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1844), 2, + anon_sym_STAR, + anon_sym_SLASH, + STATE(953), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1858), 3, + anon_sym_AT, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + ACTIONS(1712), 22, + anon_sym_RPAREN, anon_sym_COMMA, + anon_sym_as, anon_sym_GT_GT, anon_sym_if, + anon_sym_COLON, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_STAR_STAR, - anon_sym_AT, anon_sym_not, anon_sym_and, anon_sym_or, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, anon_sym_AMP, anon_sym_CARET, anon_sym_LT_LT, @@ -68328,30 +68302,36 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - anon_sym_SEMI, - [53026] = 3, + [52866] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(1690), 5, + ACTIONS(1840), 1, + anon_sym_DOT, + ACTIONS(1842), 1, + anon_sym_LPAREN, + ACTIONS(1854), 1, + anon_sym_LBRACK, + ACTIONS(1856), 1, + anon_sym_STAR_STAR, + STATE(953), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1714), 4, anon_sym_STAR, - anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1688), 29, - sym__newline, - anon_sym_DOT, - anon_sym_from, - anon_sym_LPAREN, + ACTIONS(1712), 25, + anon_sym_RPAREN, anon_sym_COMMA, + anon_sym_as, anon_sym_GT_GT, anon_sym_if, + anon_sym_COLON, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, anon_sym_and, @@ -68367,253 +68347,260 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - anon_sym_SEMI, - [53068] = 3, + [52919] = 13, ACTIONS(3), 1, sym_comment, - ACTIONS(1544), 5, - anon_sym_STAR, - anon_sym_EQ, - anon_sym_SLASH, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1542), 29, + ACTIONS(1840), 1, anon_sym_DOT, + ACTIONS(1842), 1, anon_sym_LPAREN, - anon_sym_COMMA, + ACTIONS(1854), 1, + anon_sym_LBRACK, + ACTIONS(1856), 1, + anon_sym_STAR_STAR, + ACTIONS(1864), 1, + anon_sym_CARET, + ACTIONS(1714), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1844), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(1846), 2, anon_sym_GT_GT, - anon_sym_if, - anon_sym_in, - anon_sym_PIPE, + anon_sym_LT_LT, + ACTIONS(1852), 2, anon_sym_DASH, anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_RBRACE, - anon_sym_STAR_STAR, + STATE(953), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1858), 3, anon_sym_AT, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + ACTIONS(1712), 17, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_as, + anon_sym_if, + anon_sym_COLON, + anon_sym_in, + anon_sym_PIPE, anon_sym_not, anon_sym_and, anon_sym_or, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - anon_sym_COLON2, - sym_type_conversion, - [53110] = 3, + [52982] = 12, ACTIONS(3), 1, sym_comment, - ACTIONS(1588), 5, - anon_sym_STAR, - anon_sym_EQ, - anon_sym_SLASH, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1586), 29, + ACTIONS(1840), 1, anon_sym_DOT, + ACTIONS(1842), 1, anon_sym_LPAREN, - anon_sym_COMMA, + ACTIONS(1854), 1, + anon_sym_LBRACK, + ACTIONS(1856), 1, + anon_sym_STAR_STAR, + ACTIONS(1714), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1844), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(1846), 2, anon_sym_GT_GT, - anon_sym_if, - anon_sym_in, - anon_sym_PIPE, + anon_sym_LT_LT, + ACTIONS(1852), 2, anon_sym_DASH, anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_RBRACE, - anon_sym_STAR_STAR, + STATE(953), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1858), 3, anon_sym_AT, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + ACTIONS(1712), 18, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_as, + anon_sym_if, + anon_sym_COLON, + anon_sym_in, + anon_sym_PIPE, anon_sym_not, anon_sym_and, anon_sym_or, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, anon_sym_AMP, anon_sym_CARET, - anon_sym_LT_LT, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - anon_sym_COLON2, - sym_type_conversion, - [53152] = 4, + [53043] = 15, ACTIONS(3), 1, sym_comment, - ACTIONS(1892), 1, - anon_sym_COLON_EQ, - ACTIONS(1235), 5, - anon_sym_STAR, - anon_sym_COLON, - anon_sym_SLASH, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1230), 28, + ACTIONS(1840), 1, anon_sym_DOT, + ACTIONS(1842), 1, anon_sym_LPAREN, + ACTIONS(1850), 1, + anon_sym_PIPE, + ACTIONS(1854), 1, + anon_sym_LBRACK, + ACTIONS(1856), 1, + anon_sym_STAR_STAR, + ACTIONS(1862), 1, + anon_sym_AMP, + ACTIONS(1864), 1, + anon_sym_CARET, + ACTIONS(1718), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1844), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(1846), 2, + anon_sym_GT_GT, + anon_sym_LT_LT, + ACTIONS(1852), 2, + anon_sym_DASH, + anon_sym_PLUS, + STATE(953), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1858), 3, + anon_sym_AT, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + ACTIONS(1716), 15, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_as, - anon_sym_GT_GT, anon_sym_if, + anon_sym_COLON, anon_sym_in, - anon_sym_PIPE, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_STAR_STAR, - anon_sym_AT, anon_sym_not, anon_sym_and, anon_sym_or, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [53196] = 4, + [53110] = 15, ACTIONS(3), 1, sym_comment, - ACTIONS(1232), 3, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_RBRACK, - ACTIONS(1235), 4, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1230), 27, + ACTIONS(1840), 1, anon_sym_DOT, + ACTIONS(1842), 1, anon_sym_LPAREN, - anon_sym_GT_GT, - anon_sym_if, - anon_sym_async, - anon_sym_for, - anon_sym_in, + ACTIONS(1850), 1, anon_sym_PIPE, - anon_sym_DASH, - anon_sym_PLUS, + ACTIONS(1854), 1, anon_sym_LBRACK, + ACTIONS(1856), 1, anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_not, - anon_sym_and, - anon_sym_or, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, + ACTIONS(1862), 1, anon_sym_AMP, + ACTIONS(1864), 1, anon_sym_CARET, - anon_sym_LT_LT, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - anon_sym_is, - [53240] = 3, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1568), 5, - anon_sym_STAR, - anon_sym_EQ, - anon_sym_SLASH, + ACTIONS(1722), 2, anon_sym_LT, anon_sym_GT, - ACTIONS(1566), 29, - anon_sym_DOT, - anon_sym_LPAREN, - anon_sym_COMMA, + ACTIONS(1844), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(1846), 2, anon_sym_GT_GT, - anon_sym_if, - anon_sym_in, - anon_sym_PIPE, + anon_sym_LT_LT, + ACTIONS(1852), 2, anon_sym_DASH, anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_RBRACE, - anon_sym_STAR_STAR, + STATE(953), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1858), 3, anon_sym_AT, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + ACTIONS(1720), 15, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_as, + anon_sym_if, + anon_sym_COLON, + anon_sym_in, anon_sym_not, anon_sym_and, anon_sym_or, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - anon_sym_COLON2, - sym_type_conversion, - [53282] = 21, + [53177] = 22, ACTIONS(3), 1, sym_comment, - ACTIONS(654), 1, + ACTIONS(664), 1, sym__string_start, - ACTIONS(656), 1, + ACTIONS(666), 1, sym__template_string_start, - ACTIONS(1858), 1, + ACTIONS(1874), 1, sym_identifier, - ACTIONS(1860), 1, + ACTIONS(1876), 1, anon_sym_LPAREN, - ACTIONS(1862), 1, + ACTIONS(1878), 1, anon_sym_STAR, - ACTIONS(1864), 1, + ACTIONS(1884), 1, anon_sym_DASH, - ACTIONS(1866), 1, + ACTIONS(1886), 1, sym_match_wildcard_pattern, - ACTIONS(1868), 1, + ACTIONS(1888), 1, anon_sym_LBRACK, - ACTIONS(1870), 1, + ACTIONS(1890), 1, anon_sym_LBRACE, - ACTIONS(1872), 1, + ACTIONS(1892), 1, sym_integer, - ACTIONS(1874), 1, - sym_float, ACTIONS(1894), 1, - anon_sym_RPAREN, - STATE(1035), 1, + sym_float, + STATE(1043), 1, sym_template_string, - STATE(1061), 1, + STATE(1068), 1, sym_string, - STATE(1714), 1, + STATE(1650), 1, sym_pattern_class_name, - STATE(1168), 2, + STATE(1116), 2, sym_concatenated_string, sym_concatenated_template_string, - STATE(1215), 2, + STATE(1240), 2, sym__match_or_pattern, sym_match_or_pattern, - ACTIONS(1876), 3, - sym_true, - sym_false, - sym_none, - STATE(1293), 4, + STATE(1407), 2, + sym__match_patterns, + sym_open_sequence_match_pattern, + STATE(1408), 2, sym__match_pattern, sym_match_as_pattern, + STATE(1595), 2, sym__match_maybe_star_pattern, sym_match_star_pattern, - STATE(1139), 8, + ACTIONS(1896), 3, + sym_true, + sym_false, + sym_none, + STATE(1117), 8, sym__closed_pattern, sym_match_literal_pattern, sym_match_capture_pattern, @@ -68622,55 +68609,57 @@ static const uint16_t ts_small_parse_table[] = { sym_match_sequence_pattern, sym_match_mapping_pattern, sym_match_class_pattern, - [53360] = 21, + [53258] = 22, ACTIONS(3), 1, sym_comment, - ACTIONS(654), 1, + ACTIONS(664), 1, sym__string_start, - ACTIONS(656), 1, + ACTIONS(666), 1, sym__template_string_start, - ACTIONS(1858), 1, + ACTIONS(1874), 1, sym_identifier, - ACTIONS(1860), 1, + ACTIONS(1876), 1, anon_sym_LPAREN, - ACTIONS(1862), 1, + ACTIONS(1878), 1, anon_sym_STAR, - ACTIONS(1864), 1, + ACTIONS(1884), 1, anon_sym_DASH, - ACTIONS(1866), 1, + ACTIONS(1886), 1, sym_match_wildcard_pattern, - ACTIONS(1868), 1, + ACTIONS(1888), 1, anon_sym_LBRACK, - ACTIONS(1870), 1, + ACTIONS(1890), 1, anon_sym_LBRACE, - ACTIONS(1872), 1, + ACTIONS(1892), 1, sym_integer, - ACTIONS(1874), 1, - sym_float, ACTIONS(1894), 1, - anon_sym_RBRACK, - STATE(1035), 1, + sym_float, + STATE(1043), 1, sym_template_string, - STATE(1061), 1, + STATE(1068), 1, sym_string, - STATE(1714), 1, + STATE(1650), 1, sym_pattern_class_name, - STATE(1168), 2, + STATE(1116), 2, sym_concatenated_string, sym_concatenated_template_string, - STATE(1215), 2, + STATE(1240), 2, sym__match_or_pattern, sym_match_or_pattern, - ACTIONS(1876), 3, - sym_true, - sym_false, - sym_none, - STATE(1293), 4, + STATE(1408), 2, sym__match_pattern, sym_match_as_pattern, + STATE(1495), 2, + sym__match_patterns, + sym_open_sequence_match_pattern, + STATE(1595), 2, sym__match_maybe_star_pattern, sym_match_star_pattern, - STATE(1139), 8, + ACTIONS(1896), 3, + sym_true, + sym_false, + sym_none, + STATE(1117), 8, sym__closed_pattern, sym_match_literal_pattern, sym_match_capture_pattern, @@ -68679,27 +68668,73 @@ static const uint16_t ts_small_parse_table[] = { sym_match_sequence_pattern, sym_match_mapping_pattern, sym_match_class_pattern, - [53438] = 3, + [53339] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1572), 5, + ACTIONS(303), 3, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_LBRACK, + ACTIONS(272), 13, anon_sym_STAR, + anon_sym_GT_GT, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_SLASH, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + ACTIONS(598), 19, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_COLON, + anon_sym_in, + anon_sym_RBRACK, anon_sym_EQ, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_AT_EQ, + anon_sym_SLASH_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_STAR_STAR_EQ, + anon_sym_GT_GT_EQ, + anon_sym_LT_LT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + [53384] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1838), 1, + anon_sym_COLON_EQ, + ACTIONS(1265), 3, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_RBRACK, + ACTIONS(1209), 4, + anon_sym_STAR, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1570), 29, + ACTIONS(1204), 27, anon_sym_DOT, anon_sym_LPAREN, - anon_sym_COMMA, anon_sym_GT_GT, anon_sym_if, + anon_sym_async, + anon_sym_for, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, - anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, @@ -68716,27 +68751,23 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - anon_sym_COLON2, - sym_type_conversion, - [53480] = 4, + [53431] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1422), 3, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_RBRACK, - ACTIONS(1425), 4, + ACTIONS(1706), 5, anon_sym_STAR, + anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1420), 27, + ACTIONS(1704), 29, + sym__newline, anon_sym_DOT, + anon_sym_from, anon_sym_LPAREN, + anon_sym_COMMA, anon_sym_GT_GT, anon_sym_if, - anon_sym_async, - anon_sym_for, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, @@ -68758,16 +68789,17 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [53524] = 3, + anon_sym_SEMI, + [53473] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1235), 5, + ACTIONS(1674), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1230), 29, + ACTIONS(1672), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_COMMA, @@ -68797,23 +68829,19 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_is, anon_sym_COLON2, sym_type_conversion, - [53566] = 4, + [53515] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(642), 1, - anon_sym_COLON_EQ, - ACTIONS(272), 5, + ACTIONS(1678), 5, anon_sym_STAR, - anon_sym_COLON, + anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(303), 28, + ACTIONS(1676), 29, anon_sym_DOT, anon_sym_LPAREN, - anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_as, anon_sym_GT_GT, anon_sym_if, anon_sym_in, @@ -68821,6 +68849,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, + anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, @@ -68837,16 +68866,18 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [53610] = 3, + anon_sym_COLON2, + sym_type_conversion, + [53557] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1568), 5, + ACTIONS(1032), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1566), 29, + ACTIONS(1030), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_COMMA, @@ -68876,16 +68907,16 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_is, anon_sym_COLON2, sym_type_conversion, - [53652] = 3, + [53599] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1694), 5, + ACTIONS(1674), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1692), 29, + ACTIONS(1672), 29, sym__newline, anon_sym_DOT, anon_sym_from, @@ -68915,19 +68946,17 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LT_GT, anon_sym_is, anon_sym_SEMI, - [53694] = 3, + [53641] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1544), 5, + ACTIONS(1614), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1542), 29, - sym__newline, + ACTIONS(1612), 29, anon_sym_DOT, - anon_sym_from, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_GT_GT, @@ -68937,6 +68966,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, + anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, @@ -68953,31 +68983,68 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - anon_sym_SEMI, - [53736] = 4, + anon_sym_COLON2, + sym_type_conversion, + [53683] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1465), 3, - anon_sym_RPAREN, + ACTIONS(1682), 5, + anon_sym_STAR, + anon_sym_EQ, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1680), 29, + anon_sym_DOT, + anon_sym_LPAREN, anon_sym_COMMA, - anon_sym_RBRACK, - ACTIONS(1468), 4, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_RBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + anon_sym_COLON2, + sym_type_conversion, + [53725] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1686), 5, anon_sym_STAR, + anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1463), 27, + ACTIONS(1684), 29, anon_sym_DOT, anon_sym_LPAREN, + anon_sym_COMMA, anon_sym_GT_GT, anon_sym_if, - anon_sym_async, - anon_sym_for, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, + anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, @@ -68994,19 +69061,19 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [53780] = 3, + anon_sym_COLON2, + sym_type_conversion, + [53767] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1568), 5, + ACTIONS(1690), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1566), 29, - sym__newline, + ACTIONS(1688), 29, anon_sym_DOT, - anon_sym_from, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_GT_GT, @@ -69016,6 +69083,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, + anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, @@ -69032,20 +69100,19 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - anon_sym_SEMI, - [53822] = 3, + anon_sym_COLON2, + sym_type_conversion, + [53809] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1638), 5, + ACTIONS(1690), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1636), 29, - sym__newline, + ACTIONS(1688), 29, anon_sym_DOT, - anon_sym_from, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_GT_GT, @@ -69055,6 +69122,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, + anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, @@ -69071,17 +69139,18 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - anon_sym_SEMI, - [53864] = 3, + anon_sym_COLON2, + sym_type_conversion, + [53851] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(272), 5, + ACTIONS(1694), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(303), 29, + ACTIONS(1692), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_COMMA, @@ -69111,19 +69180,17 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_is, anon_sym_COLON2, sym_type_conversion, - [53906] = 3, + [53893] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1642), 5, + ACTIONS(1698), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1640), 29, - sym__newline, + ACTIONS(1696), 29, anon_sym_DOT, - anon_sym_from, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_GT_GT, @@ -69133,6 +69200,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, + anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, @@ -69149,20 +69217,19 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - anon_sym_SEMI, - [53948] = 3, + anon_sym_COLON2, + sym_type_conversion, + [53935] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1572), 5, + ACTIONS(1690), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1570), 29, - sym__newline, + ACTIONS(1688), 29, anon_sym_DOT, - anon_sym_from, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_GT_GT, @@ -69172,6 +69239,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, + anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, @@ -69188,78 +69256,58 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - anon_sym_SEMI, - [53990] = 22, + anon_sym_COLON2, + sym_type_conversion, + [53977] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(654), 1, - sym__string_start, - ACTIONS(656), 1, - sym__template_string_start, - ACTIONS(1858), 1, - sym_identifier, - ACTIONS(1860), 1, - anon_sym_LPAREN, - ACTIONS(1862), 1, + ACTIONS(1702), 5, anon_sym_STAR, - ACTIONS(1864), 1, + anon_sym_EQ, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1700), 29, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_in, + anon_sym_PIPE, anon_sym_DASH, - ACTIONS(1866), 1, - sym_match_wildcard_pattern, - ACTIONS(1868), 1, + anon_sym_PLUS, anon_sym_LBRACK, - ACTIONS(1870), 1, - anon_sym_LBRACE, - ACTIONS(1872), 1, - sym_integer, - ACTIONS(1874), 1, - sym_float, - ACTIONS(1896), 1, - anon_sym_RPAREN, - STATE(1035), 1, - sym_template_string, - STATE(1061), 1, - sym_string, - STATE(1714), 1, - sym_pattern_class_name, - STATE(1168), 2, - sym_concatenated_string, - sym_concatenated_template_string, - STATE(1215), 2, - sym__match_or_pattern, - sym_match_or_pattern, - STATE(1540), 2, - sym__match_pattern, - sym_match_as_pattern, - STATE(1541), 2, - sym__match_maybe_star_pattern, - sym_match_star_pattern, - ACTIONS(1876), 3, - sym_true, - sym_false, - sym_none, - STATE(1139), 8, - sym__closed_pattern, - sym_match_literal_pattern, - sym_match_capture_pattern, - sym_match_value_pattern, - sym_match_group_pattern, - sym_match_sequence_pattern, - sym_match_mapping_pattern, - sym_match_class_pattern, - [54070] = 3, + anon_sym_RBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + anon_sym_COLON2, + sym_type_conversion, + [54019] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1552), 5, + ACTIONS(1702), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1550), 29, - sym__newline, + ACTIONS(1700), 29, anon_sym_DOT, - anon_sym_from, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_GT_GT, @@ -69269,6 +69317,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, + anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, @@ -69285,17 +69334,18 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - anon_sym_SEMI, - [54112] = 3, + anon_sym_COLON2, + sym_type_conversion, + [54061] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1564), 5, + ACTIONS(1706), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1562), 29, + ACTIONS(1704), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_COMMA, @@ -69325,19 +69375,17 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_is, anon_sym_COLON2, sym_type_conversion, - [54154] = 3, + [54103] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1568), 5, + ACTIONS(1702), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1566), 29, - sym__newline, + ACTIONS(1700), 29, anon_sym_DOT, - anon_sym_from, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_GT_GT, @@ -69347,6 +69395,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, + anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, @@ -69363,20 +69412,19 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - anon_sym_SEMI, - [54196] = 3, + anon_sym_COLON2, + sym_type_conversion, + [54145] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1686), 5, + ACTIONS(1622), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1684), 29, - sym__newline, + ACTIONS(1620), 29, anon_sym_DOT, - anon_sym_from, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_GT_GT, @@ -69386,6 +69434,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, + anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, @@ -69402,17 +69451,18 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - anon_sym_SEMI, - [54238] = 3, + anon_sym_COLON2, + sym_type_conversion, + [54187] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1556), 5, + ACTIONS(1626), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1554), 29, + ACTIONS(1624), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_COMMA, @@ -69442,28 +69492,29 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_is, anon_sym_COLON2, sym_type_conversion, - [54280] = 3, + [54229] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1548), 5, + ACTIONS(1338), 4, anon_sym_STAR, - anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1546), 29, - sym__newline, + ACTIONS(1333), 30, anon_sym_DOT, - anon_sym_from, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_GT_GT, anon_sym_if, + anon_sym_COLON, + anon_sym_async, + anon_sym_for, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, + anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, @@ -69480,29 +69531,29 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - anon_sym_SEMI, - [54322] = 3, + [54271] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1564), 5, + ACTIONS(1295), 4, anon_sym_STAR, - anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1562), 29, - sym__newline, + ACTIONS(1290), 30, anon_sym_DOT, - anon_sym_from, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_GT_GT, anon_sym_if, + anon_sym_COLON, + anon_sym_async, + anon_sym_for, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, + anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, @@ -69519,20 +69570,17 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - anon_sym_SEMI, - [54364] = 3, + [54313] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1560), 5, + ACTIONS(1630), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1558), 29, - sym__newline, + ACTIONS(1628), 29, anon_sym_DOT, - anon_sym_from, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_GT_GT, @@ -69542,6 +69590,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, + anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, @@ -69558,17 +69607,18 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - anon_sym_SEMI, - [54406] = 3, + anon_sym_COLON2, + sym_type_conversion, + [54355] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1646), 5, + ACTIONS(1618), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1644), 29, + ACTIONS(1616), 29, sym__newline, anon_sym_DOT, anon_sym_from, @@ -69598,55 +69648,113 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LT_GT, anon_sym_is, anon_sym_SEMI, - [54448] = 21, + [54397] = 22, ACTIONS(3), 1, sym_comment, - ACTIONS(654), 1, + ACTIONS(664), 1, sym__string_start, - ACTIONS(656), 1, + ACTIONS(666), 1, sym__template_string_start, - ACTIONS(1858), 1, + ACTIONS(1874), 1, sym_identifier, - ACTIONS(1860), 1, + ACTIONS(1876), 1, anon_sym_LPAREN, - ACTIONS(1862), 1, + ACTIONS(1878), 1, anon_sym_STAR, - ACTIONS(1864), 1, + ACTIONS(1884), 1, anon_sym_DASH, - ACTIONS(1866), 1, + ACTIONS(1886), 1, sym_match_wildcard_pattern, - ACTIONS(1868), 1, + ACTIONS(1888), 1, anon_sym_LBRACK, - ACTIONS(1870), 1, + ACTIONS(1890), 1, anon_sym_LBRACE, - ACTIONS(1872), 1, + ACTIONS(1892), 1, sym_integer, + ACTIONS(1894), 1, + sym_float, + ACTIONS(1904), 1, + anon_sym_RPAREN, + STATE(1043), 1, + sym_template_string, + STATE(1068), 1, + sym_string, + STATE(1650), 1, + sym_pattern_class_name, + STATE(1116), 2, + sym_concatenated_string, + sym_concatenated_template_string, + STATE(1240), 2, + sym__match_or_pattern, + sym_match_or_pattern, + STATE(1601), 2, + sym__match_pattern, + sym_match_as_pattern, + STATE(1602), 2, + sym__match_maybe_star_pattern, + sym_match_star_pattern, + ACTIONS(1896), 3, + sym_true, + sym_false, + sym_none, + STATE(1117), 8, + sym__closed_pattern, + sym_match_literal_pattern, + sym_match_capture_pattern, + sym_match_value_pattern, + sym_match_group_pattern, + sym_match_sequence_pattern, + sym_match_mapping_pattern, + sym_match_class_pattern, + [54477] = 21, + ACTIONS(3), 1, + sym_comment, + ACTIONS(664), 1, + sym__string_start, + ACTIONS(666), 1, + sym__template_string_start, ACTIONS(1874), 1, + sym_identifier, + ACTIONS(1876), 1, + anon_sym_LPAREN, + ACTIONS(1878), 1, + anon_sym_STAR, + ACTIONS(1884), 1, + anon_sym_DASH, + ACTIONS(1886), 1, + sym_match_wildcard_pattern, + ACTIONS(1888), 1, + anon_sym_LBRACK, + ACTIONS(1890), 1, + anon_sym_LBRACE, + ACTIONS(1892), 1, + sym_integer, + ACTIONS(1894), 1, sym_float, - ACTIONS(1896), 1, + ACTIONS(1904), 1, anon_sym_RBRACK, - STATE(1035), 1, + STATE(1043), 1, sym_template_string, - STATE(1061), 1, + STATE(1068), 1, sym_string, - STATE(1714), 1, + STATE(1650), 1, sym_pattern_class_name, - STATE(1168), 2, + STATE(1116), 2, sym_concatenated_string, sym_concatenated_template_string, - STATE(1215), 2, + STATE(1240), 2, sym__match_or_pattern, sym_match_or_pattern, - ACTIONS(1876), 3, + ACTIONS(1896), 3, sym_true, sym_false, sym_none, - STATE(1472), 4, + STATE(1489), 4, sym__match_pattern, sym_match_as_pattern, sym__match_maybe_star_pattern, sym_match_star_pattern, - STATE(1139), 8, + STATE(1117), 8, sym__closed_pattern, sym_match_literal_pattern, sym_match_capture_pattern, @@ -69655,16 +69763,16 @@ static const uint16_t ts_small_parse_table[] = { sym_match_sequence_pattern, sym_match_mapping_pattern, sym_match_class_pattern, - [54526] = 3, + [54555] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1698), 5, + ACTIONS(1682), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1696), 29, + ACTIONS(1680), 29, sym__newline, anon_sym_DOT, anon_sym_from, @@ -69694,19 +69802,17 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LT_GT, anon_sym_is, anon_sym_SEMI, - [54568] = 3, + [54597] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1584), 5, + ACTIONS(1634), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1582), 29, - sym__newline, + ACTIONS(1632), 29, anon_sym_DOT, - anon_sym_from, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_GT_GT, @@ -69716,6 +69822,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, + anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, @@ -69732,17 +69839,18 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - anon_sym_SEMI, - [54610] = 3, + anon_sym_COLON2, + sym_type_conversion, + [54639] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1576), 5, + ACTIONS(1650), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1574), 29, + ACTIONS(1648), 29, sym__newline, anon_sym_DOT, anon_sym_from, @@ -69772,16 +69880,55 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LT_GT, anon_sym_is, anon_sym_SEMI, - [54652] = 3, + [54681] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1698), 5, + ACTIONS(1638), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1696), 29, + ACTIONS(1636), 29, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_RBRACE, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + anon_sym_COLON2, + sym_type_conversion, + [54723] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1642), 5, + anon_sym_STAR, + anon_sym_EQ, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1640), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_COMMA, @@ -69811,16 +69958,16 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_is, anon_sym_COLON2, sym_type_conversion, - [54694] = 3, + [54765] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1425), 5, + ACTIONS(1686), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1420), 29, + ACTIONS(1684), 29, sym__newline, anon_sym_DOT, anon_sym_from, @@ -69850,16 +69997,16 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LT_GT, anon_sym_is, anon_sym_SEMI, - [54736] = 3, + [54807] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1468), 5, + ACTIONS(1690), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1463), 29, + ACTIONS(1688), 29, sym__newline, anon_sym_DOT, anon_sym_from, @@ -69889,46 +70036,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LT_GT, anon_sym_is, anon_sym_SEMI, - [54778] = 3, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1556), 5, - anon_sym_STAR, - anon_sym_EQ, - anon_sym_SLASH, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1554), 29, - anon_sym_DOT, - anon_sym_LPAREN, - anon_sym_COMMA, - anon_sym_GT_GT, - anon_sym_if, - anon_sym_in, - anon_sym_PIPE, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_RBRACE, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_not, - anon_sym_and, - anon_sym_or, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - anon_sym_is, - anon_sym_COLON2, - sym_type_conversion, - [54820] = 3, + [54849] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(1690), 5, @@ -69938,7 +70046,9 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LT, anon_sym_GT, ACTIONS(1688), 29, + sym__newline, anon_sym_DOT, + anon_sym_from, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_GT_GT, @@ -69948,7 +70058,6 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, - anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, @@ -69965,18 +70074,17 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - anon_sym_COLON2, - sym_type_conversion, - [54862] = 3, + anon_sym_SEMI, + [54891] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1600), 5, + ACTIONS(1050), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1598), 29, + ACTIONS(1048), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_COMMA, @@ -70006,29 +70114,30 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_is, anon_sym_COLON2, sym_type_conversion, - [54904] = 3, + [54933] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1425), 4, + ACTIONS(1906), 1, + anon_sym_COLON_EQ, + ACTIONS(1209), 5, anon_sym_STAR, + anon_sym_COLON, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1420), 30, + ACTIONS(1204), 28, anon_sym_DOT, anon_sym_LPAREN, + anon_sym_RPAREN, anon_sym_COMMA, + anon_sym_as, anon_sym_GT_GT, anon_sym_if, - anon_sym_COLON, - anon_sym_async, - anon_sym_for, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, - anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, @@ -70045,29 +70154,28 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [54946] = 3, + [54977] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1468), 4, + ACTIONS(1694), 5, anon_sym_STAR, + anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1463), 30, + ACTIONS(1692), 29, + sym__newline, anon_sym_DOT, + anon_sym_from, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_GT_GT, anon_sym_if, - anon_sym_COLON, - anon_sym_async, - anon_sym_for, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, - anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, @@ -70084,17 +70192,20 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [54988] = 3, + anon_sym_SEMI, + [55019] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1638), 5, + ACTIONS(1698), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1636), 29, + ACTIONS(1696), 29, + sym__newline, anon_sym_DOT, + anon_sym_from, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_GT_GT, @@ -70104,7 +70215,6 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, - anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, @@ -70121,19 +70231,20 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - anon_sym_COLON2, - sym_type_conversion, - [55030] = 3, + anon_sym_SEMI, + [55061] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1642), 5, + ACTIONS(1690), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1640), 29, + ACTIONS(1688), 29, + sym__newline, anon_sym_DOT, + anon_sym_from, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_GT_GT, @@ -70143,7 +70254,6 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, - anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, @@ -70160,19 +70270,20 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - anon_sym_COLON2, - sym_type_conversion, - [55072] = 3, + anon_sym_SEMI, + [55103] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1646), 5, + ACTIONS(272), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1644), 29, + ACTIONS(303), 29, + sym__newline, anon_sym_DOT, + anon_sym_from, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_GT_GT, @@ -70182,7 +70293,6 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, - anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, @@ -70199,18 +70309,17 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - anon_sym_COLON2, - sym_type_conversion, - [55114] = 3, + anon_sym_SEMI, + [55145] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1650), 5, + ACTIONS(1646), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1648), 29, + ACTIONS(1644), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_COMMA, @@ -70240,21 +70349,23 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_is, anon_sym_COLON2, sym_type_conversion, - [55156] = 3, + [55187] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1580), 5, + ACTIONS(652), 1, + anon_sym_COLON_EQ, + ACTIONS(272), 5, anon_sym_STAR, - anon_sym_EQ, + anon_sym_COLON, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1578), 29, - sym__newline, + ACTIONS(303), 28, anon_sym_DOT, - anon_sym_from, anon_sym_LPAREN, + anon_sym_RPAREN, anon_sym_COMMA, + anon_sym_as, anon_sym_GT_GT, anon_sym_if, anon_sym_in, @@ -70278,28 +70389,30 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - anon_sym_SEMI, - [55198] = 3, + [55231] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1064), 5, + ACTIONS(1292), 3, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_RBRACK, + ACTIONS(1295), 4, anon_sym_STAR, - anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1062), 29, + ACTIONS(1290), 27, anon_sym_DOT, anon_sym_LPAREN, - anon_sym_COMMA, anon_sym_GT_GT, anon_sym_if, + anon_sym_async, + anon_sym_for, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, - anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, @@ -70316,19 +70429,19 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - anon_sym_COLON2, - sym_type_conversion, - [55240] = 3, + [55275] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1694), 5, + ACTIONS(1338), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1692), 29, + ACTIONS(1333), 29, + sym__newline, anon_sym_DOT, + anon_sym_from, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_GT_GT, @@ -70338,7 +70451,6 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, - anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, @@ -70355,18 +70467,17 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - anon_sym_COLON2, - sym_type_conversion, - [55282] = 3, + anon_sym_SEMI, + [55317] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1650), 5, + ACTIONS(1295), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1648), 29, + ACTIONS(1290), 29, sym__newline, anon_sym_DOT, anon_sym_from, @@ -70396,23 +70507,25 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LT_GT, anon_sym_is, anon_sym_SEMI, - [55324] = 3, + [55359] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1596), 5, + ACTIONS(1265), 3, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_RBRACK, + ACTIONS(1209), 4, anon_sym_STAR, - anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1594), 29, - sym__newline, + ACTIONS(1204), 27, anon_sym_DOT, - anon_sym_from, anon_sym_LPAREN, - anon_sym_COMMA, anon_sym_GT_GT, anon_sym_if, + anon_sym_async, + anon_sym_for, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, @@ -70434,20 +70547,17 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - anon_sym_SEMI, - [55366] = 3, + [55403] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1235), 5, + ACTIONS(272), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1230), 29, - sym__newline, + ACTIONS(303), 29, anon_sym_DOT, - anon_sym_from, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_GT_GT, @@ -70457,6 +70567,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, + anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, @@ -70473,17 +70584,18 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - anon_sym_SEMI, - [55408] = 3, + anon_sym_COLON2, + sym_type_conversion, + [55445] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1682), 5, + ACTIONS(1646), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1680), 29, + ACTIONS(1644), 29, sym__newline, anon_sym_DOT, anon_sym_from, @@ -70513,16 +70625,16 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LT_GT, anon_sym_is, anon_sym_SEMI, - [55450] = 3, + [55487] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1588), 5, + ACTIONS(1662), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1586), 29, + ACTIONS(1660), 29, sym__newline, anon_sym_DOT, anon_sym_from, @@ -70552,130 +70664,16 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LT_GT, anon_sym_is, anon_sym_SEMI, - [55492] = 21, - ACTIONS(3), 1, - sym_comment, - ACTIONS(654), 1, - sym__string_start, - ACTIONS(656), 1, - sym__template_string_start, - ACTIONS(1858), 1, - sym_identifier, - ACTIONS(1860), 1, - anon_sym_LPAREN, - ACTIONS(1862), 1, - anon_sym_STAR, - ACTIONS(1864), 1, - anon_sym_DASH, - ACTIONS(1866), 1, - sym_match_wildcard_pattern, - ACTIONS(1868), 1, - anon_sym_LBRACK, - ACTIONS(1870), 1, - anon_sym_LBRACE, - ACTIONS(1872), 1, - sym_integer, - ACTIONS(1874), 1, - sym_float, - ACTIONS(1898), 1, - anon_sym_RPAREN, - STATE(1035), 1, - sym_template_string, - STATE(1061), 1, - sym_string, - STATE(1714), 1, - sym_pattern_class_name, - STATE(1168), 2, - sym_concatenated_string, - sym_concatenated_template_string, - STATE(1215), 2, - sym__match_or_pattern, - sym_match_or_pattern, - ACTIONS(1876), 3, - sym_true, - sym_false, - sym_none, - STATE(1293), 4, - sym__match_pattern, - sym_match_as_pattern, - sym__match_maybe_star_pattern, - sym_match_star_pattern, - STATE(1139), 8, - sym__closed_pattern, - sym_match_literal_pattern, - sym_match_capture_pattern, - sym_match_value_pattern, - sym_match_group_pattern, - sym_match_sequence_pattern, - sym_match_mapping_pattern, - sym_match_class_pattern, - [55570] = 21, - ACTIONS(3), 1, - sym_comment, - ACTIONS(654), 1, - sym__string_start, - ACTIONS(656), 1, - sym__template_string_start, - ACTIONS(1858), 1, - sym_identifier, - ACTIONS(1860), 1, - anon_sym_LPAREN, - ACTIONS(1862), 1, - anon_sym_STAR, - ACTIONS(1864), 1, - anon_sym_DASH, - ACTIONS(1866), 1, - sym_match_wildcard_pattern, - ACTIONS(1868), 1, - anon_sym_LBRACK, - ACTIONS(1870), 1, - anon_sym_LBRACE, - ACTIONS(1872), 1, - sym_integer, - ACTIONS(1874), 1, - sym_float, - ACTIONS(1898), 1, - anon_sym_RBRACK, - STATE(1035), 1, - sym_template_string, - STATE(1061), 1, - sym_string, - STATE(1714), 1, - sym_pattern_class_name, - STATE(1168), 2, - sym_concatenated_string, - sym_concatenated_template_string, - STATE(1215), 2, - sym__match_or_pattern, - sym_match_or_pattern, - ACTIONS(1876), 3, - sym_true, - sym_false, - sym_none, - STATE(1293), 4, - sym__match_pattern, - sym_match_as_pattern, - sym__match_maybe_star_pattern, - sym_match_star_pattern, - STATE(1139), 8, - sym__closed_pattern, - sym_match_literal_pattern, - sym_match_capture_pattern, - sym_match_value_pattern, - sym_match_group_pattern, - sym_match_sequence_pattern, - sym_match_mapping_pattern, - sym_match_class_pattern, - [55648] = 3, + [55529] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1580), 5, + ACTIONS(1622), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1578), 29, + ACTIONS(1620), 29, sym__newline, anon_sym_DOT, anon_sym_from, @@ -70705,16 +70703,16 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LT_GT, anon_sym_is, anon_sym_SEMI, - [55690] = 3, + [55571] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1556), 5, + ACTIONS(1626), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1554), 29, + ACTIONS(1624), 29, sym__newline, anon_sym_DOT, anon_sym_from, @@ -70744,17 +70742,19 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LT_GT, anon_sym_is, anon_sym_SEMI, - [55732] = 3, + [55613] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1584), 5, + ACTIONS(1614), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1582), 29, + ACTIONS(1612), 29, + sym__newline, anon_sym_DOT, + anon_sym_from, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_GT_GT, @@ -70764,7 +70764,6 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, - anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, @@ -70781,25 +70780,26 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - anon_sym_COLON2, - sym_type_conversion, - [55774] = 3, + anon_sym_SEMI, + [55655] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1592), 5, + ACTIONS(1335), 3, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_RBRACK, + ACTIONS(1338), 4, anon_sym_STAR, - anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1590), 29, - sym__newline, + ACTIONS(1333), 27, anon_sym_DOT, - anon_sym_from, anon_sym_LPAREN, - anon_sym_COMMA, anon_sym_GT_GT, anon_sym_if, + anon_sym_async, + anon_sym_for, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, @@ -70821,17 +70821,16 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - anon_sym_SEMI, - [55816] = 3, + [55699] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1592), 5, + ACTIONS(1618), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1590), 29, + ACTIONS(1616), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_COMMA, @@ -70861,17 +70860,19 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_is, anon_sym_COLON2, sym_type_conversion, - [55858] = 3, + [55741] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1686), 5, + ACTIONS(1710), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1684), 29, + ACTIONS(1708), 29, + sym__newline, anon_sym_DOT, + anon_sym_from, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_GT_GT, @@ -70881,7 +70882,6 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, - anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, @@ -70898,19 +70898,20 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - anon_sym_COLON2, - sym_type_conversion, - [55900] = 3, + anon_sym_SEMI, + [55783] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1548), 5, + ACTIONS(1638), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1546), 29, + ACTIONS(1636), 29, + sym__newline, anon_sym_DOT, + anon_sym_from, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_GT_GT, @@ -70920,7 +70921,6 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, - anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, @@ -70937,19 +70937,20 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - anon_sym_COLON2, - sym_type_conversion, - [55942] = 3, + anon_sym_SEMI, + [55825] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1580), 5, + ACTIONS(1666), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1578), 29, + ACTIONS(1664), 29, + sym__newline, anon_sym_DOT, + anon_sym_from, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_GT_GT, @@ -70959,7 +70960,6 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, - anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, @@ -70976,9 +70976,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - anon_sym_COLON2, - sym_type_conversion, - [55984] = 3, + anon_sym_SEMI, + [55867] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(1678), 5, @@ -70988,7 +70987,9 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LT, anon_sym_GT, ACTIONS(1676), 29, + sym__newline, anon_sym_DOT, + anon_sym_from, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_GT_GT, @@ -70998,7 +70999,6 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, - anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, @@ -71015,19 +71015,20 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - anon_sym_COLON2, - sym_type_conversion, - [56026] = 3, + anon_sym_SEMI, + [55909] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1682), 5, + ACTIONS(1670), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1680), 29, + ACTIONS(1668), 29, + sym__newline, anon_sym_DOT, + anon_sym_from, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_GT_GT, @@ -71037,7 +71038,6 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, - anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, @@ -71054,19 +71054,77 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - anon_sym_COLON2, - sym_type_conversion, - [56068] = 3, + anon_sym_SEMI, + [55951] = 21, + ACTIONS(3), 1, + sym_comment, + ACTIONS(664), 1, + sym__string_start, + ACTIONS(666), 1, + sym__template_string_start, + ACTIONS(1874), 1, + sym_identifier, + ACTIONS(1876), 1, + anon_sym_LPAREN, + ACTIONS(1878), 1, + anon_sym_STAR, + ACTIONS(1884), 1, + anon_sym_DASH, + ACTIONS(1886), 1, + sym_match_wildcard_pattern, + ACTIONS(1888), 1, + anon_sym_LBRACK, + ACTIONS(1890), 1, + anon_sym_LBRACE, + ACTIONS(1892), 1, + sym_integer, + ACTIONS(1894), 1, + sym_float, + ACTIONS(1908), 1, + anon_sym_RBRACK, + STATE(1043), 1, + sym_template_string, + STATE(1068), 1, + sym_string, + STATE(1650), 1, + sym_pattern_class_name, + STATE(1116), 2, + sym_concatenated_string, + sym_concatenated_template_string, + STATE(1240), 2, + sym__match_or_pattern, + sym_match_or_pattern, + ACTIONS(1896), 3, + sym_true, + sym_false, + sym_none, + STATE(1307), 4, + sym__match_pattern, + sym_match_as_pattern, + sym__match_maybe_star_pattern, + sym_match_star_pattern, + STATE(1117), 8, + sym__closed_pattern, + sym_match_literal_pattern, + sym_match_capture_pattern, + sym_match_value_pattern, + sym_match_group_pattern, + sym_match_sequence_pattern, + sym_match_mapping_pattern, + sym_match_class_pattern, + [56029] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1580), 5, + ACTIONS(1630), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1578), 29, + ACTIONS(1628), 29, + sym__newline, anon_sym_DOT, + anon_sym_from, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_GT_GT, @@ -71076,7 +71134,6 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, - anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, @@ -71093,21 +71150,18 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - anon_sym_COLON2, - sym_type_conversion, - [56110] = 3, + anon_sym_SEMI, + [56071] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1678), 5, + ACTIONS(1650), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1676), 29, - sym__newline, + ACTIONS(1648), 29, anon_sym_DOT, - anon_sym_from, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_GT_GT, @@ -71117,6 +71171,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, + anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, @@ -71133,17 +71188,132 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - anon_sym_SEMI, - [56152] = 3, + anon_sym_COLON2, + sym_type_conversion, + [56113] = 21, ACTIONS(3), 1, sym_comment, - ACTIONS(1556), 5, + ACTIONS(664), 1, + sym__string_start, + ACTIONS(666), 1, + sym__template_string_start, + ACTIONS(1874), 1, + sym_identifier, + ACTIONS(1876), 1, + anon_sym_LPAREN, + ACTIONS(1878), 1, + anon_sym_STAR, + ACTIONS(1884), 1, + anon_sym_DASH, + ACTIONS(1886), 1, + sym_match_wildcard_pattern, + ACTIONS(1888), 1, + anon_sym_LBRACK, + ACTIONS(1890), 1, + anon_sym_LBRACE, + ACTIONS(1892), 1, + sym_integer, + ACTIONS(1894), 1, + sym_float, + ACTIONS(1908), 1, + anon_sym_RPAREN, + STATE(1043), 1, + sym_template_string, + STATE(1068), 1, + sym_string, + STATE(1650), 1, + sym_pattern_class_name, + STATE(1116), 2, + sym_concatenated_string, + sym_concatenated_template_string, + STATE(1240), 2, + sym__match_or_pattern, + sym_match_or_pattern, + ACTIONS(1896), 3, + sym_true, + sym_false, + sym_none, + STATE(1307), 4, + sym__match_pattern, + sym_match_as_pattern, + sym__match_maybe_star_pattern, + sym_match_star_pattern, + STATE(1117), 8, + sym__closed_pattern, + sym_match_literal_pattern, + sym_match_capture_pattern, + sym_match_value_pattern, + sym_match_group_pattern, + sym_match_sequence_pattern, + sym_match_mapping_pattern, + sym_match_class_pattern, + [56191] = 21, + ACTIONS(3), 1, + sym_comment, + ACTIONS(664), 1, + sym__string_start, + ACTIONS(666), 1, + sym__template_string_start, + ACTIONS(1874), 1, + sym_identifier, + ACTIONS(1876), 1, + anon_sym_LPAREN, + ACTIONS(1878), 1, + anon_sym_STAR, + ACTIONS(1884), 1, + anon_sym_DASH, + ACTIONS(1886), 1, + sym_match_wildcard_pattern, + ACTIONS(1888), 1, + anon_sym_LBRACK, + ACTIONS(1890), 1, + anon_sym_LBRACE, + ACTIONS(1892), 1, + sym_integer, + ACTIONS(1894), 1, + sym_float, + ACTIONS(1910), 1, + anon_sym_RBRACK, + STATE(1043), 1, + sym_template_string, + STATE(1068), 1, + sym_string, + STATE(1650), 1, + sym_pattern_class_name, + STATE(1116), 2, + sym_concatenated_string, + sym_concatenated_template_string, + STATE(1240), 2, + sym__match_or_pattern, + sym_match_or_pattern, + ACTIONS(1896), 3, + sym_true, + sym_false, + sym_none, + STATE(1307), 4, + sym__match_pattern, + sym_match_as_pattern, + sym__match_maybe_star_pattern, + sym_match_star_pattern, + STATE(1117), 8, + sym__closed_pattern, + sym_match_literal_pattern, + sym_match_capture_pattern, + sym_match_value_pattern, + sym_match_group_pattern, + sym_match_sequence_pattern, + sym_match_mapping_pattern, + sym_match_class_pattern, + [56269] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1642), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1554), 29, + ACTIONS(1640), 29, sym__newline, anon_sym_DOT, anon_sym_from, @@ -71173,16 +71343,16 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LT_GT, anon_sym_is, anon_sym_SEMI, - [56194] = 3, + [56311] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1552), 5, + ACTIONS(1654), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1550), 29, + ACTIONS(1652), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_COMMA, @@ -71212,19 +71382,17 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_is, anon_sym_COLON2, sym_type_conversion, - [56236] = 3, + [56353] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1588), 5, + ACTIONS(1658), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1586), 29, - sym__newline, + ACTIONS(1656), 29, anon_sym_DOT, - anon_sym_from, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_GT_GT, @@ -71234,6 +71402,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, + anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, @@ -71250,17 +71419,75 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - anon_sym_SEMI, - [56278] = 3, + anon_sym_COLON2, + sym_type_conversion, + [56395] = 21, ACTIONS(3), 1, sym_comment, - ACTIONS(1560), 5, + ACTIONS(664), 1, + sym__string_start, + ACTIONS(666), 1, + sym__template_string_start, + ACTIONS(1874), 1, + sym_identifier, + ACTIONS(1876), 1, + anon_sym_LPAREN, + ACTIONS(1878), 1, + anon_sym_STAR, + ACTIONS(1884), 1, + anon_sym_DASH, + ACTIONS(1886), 1, + sym_match_wildcard_pattern, + ACTIONS(1888), 1, + anon_sym_LBRACK, + ACTIONS(1890), 1, + anon_sym_LBRACE, + ACTIONS(1892), 1, + sym_integer, + ACTIONS(1894), 1, + sym_float, + ACTIONS(1910), 1, + anon_sym_RPAREN, + STATE(1043), 1, + sym_template_string, + STATE(1068), 1, + sym_string, + STATE(1650), 1, + sym_pattern_class_name, + STATE(1116), 2, + sym_concatenated_string, + sym_concatenated_template_string, + STATE(1240), 2, + sym__match_or_pattern, + sym_match_or_pattern, + ACTIONS(1896), 3, + sym_true, + sym_false, + sym_none, + STATE(1307), 4, + sym__match_pattern, + sym_match_as_pattern, + sym__match_maybe_star_pattern, + sym_match_star_pattern, + STATE(1117), 8, + sym__closed_pattern, + sym_match_literal_pattern, + sym_match_capture_pattern, + sym_match_value_pattern, + sym_match_group_pattern, + sym_match_sequence_pattern, + sym_match_mapping_pattern, + sym_match_class_pattern, + [56473] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1662), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1558), 29, + ACTIONS(1660), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_COMMA, @@ -71290,16 +71517,16 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_is, anon_sym_COLON2, sym_type_conversion, - [56320] = 3, + [56515] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(272), 5, + ACTIONS(1702), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(303), 29, + ACTIONS(1700), 29, sym__newline, anon_sym_DOT, anon_sym_from, @@ -71329,17 +71556,19 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LT_GT, anon_sym_is, anon_sym_SEMI, - [56362] = 3, + [56557] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1576), 5, + ACTIONS(1702), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1574), 29, + ACTIONS(1700), 29, + sym__newline, anon_sym_DOT, + anon_sym_from, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_GT_GT, @@ -71349,7 +71578,6 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, - anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, @@ -71366,19 +71594,20 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - anon_sym_COLON2, - sym_type_conversion, - [56404] = 3, + anon_sym_SEMI, + [56599] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1076), 5, + ACTIONS(1658), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1074), 29, + ACTIONS(1656), 29, + sym__newline, anon_sym_DOT, + anon_sym_from, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_GT_GT, @@ -71388,7 +71617,6 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, - anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, @@ -71405,18 +71633,17 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - anon_sym_COLON2, - sym_type_conversion, - [56446] = 3, + anon_sym_SEMI, + [56641] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1588), 5, + ACTIONS(1710), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1586), 29, + ACTIONS(1708), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_COMMA, @@ -71446,17 +71673,19 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_is, anon_sym_COLON2, sym_type_conversion, - [56488] = 3, + [56683] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1596), 5, + ACTIONS(1702), 5, anon_sym_STAR, anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1594), 29, + ACTIONS(1700), 29, + sym__newline, anon_sym_DOT, + anon_sym_from, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_GT_GT, @@ -71466,7 +71695,6 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, - anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, @@ -71483,30 +71711,28 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - anon_sym_COLON2, - sym_type_conversion, - [56530] = 3, + anon_sym_SEMI, + [56725] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1642), 4, + ACTIONS(1666), 5, anon_sym_STAR, + anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1640), 29, + ACTIONS(1664), 29, anon_sym_DOT, anon_sym_LPAREN, - anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_as, anon_sym_GT_GT, anon_sym_if, - anon_sym_COLON, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, + anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, @@ -71523,23 +71749,25 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [56571] = 3, + anon_sym_COLON2, + sym_type_conversion, + [56767] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1682), 4, + ACTIONS(1654), 5, anon_sym_STAR, + anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1680), 29, + ACTIONS(1652), 29, + sym__newline, anon_sym_DOT, + anon_sym_from, anon_sym_LPAREN, - anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_as, anon_sym_GT_GT, anon_sym_if, - anon_sym_COLON, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, @@ -71561,28 +71789,28 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [56612] = 3, + anon_sym_SEMI, + [56809] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1580), 4, + ACTIONS(1670), 5, anon_sym_STAR, + anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1578), 29, + ACTIONS(1668), 29, anon_sym_DOT, anon_sym_LPAREN, - anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_as, anon_sym_GT_GT, anon_sym_if, - anon_sym_COLON, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, + anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, @@ -71599,28 +71827,29 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [56653] = 3, + anon_sym_COLON2, + sym_type_conversion, + [56851] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(272), 4, + ACTIONS(1209), 5, anon_sym_STAR, + anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(303), 29, + ACTIONS(1204), 29, anon_sym_DOT, anon_sym_LPAREN, - anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_as, anon_sym_GT_GT, anon_sym_if, - anon_sym_COLON, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, + anon_sym_RBRACE, anon_sym_STAR_STAR, anon_sym_AT, anon_sym_not, @@ -71637,23 +71866,25 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [56694] = 3, + anon_sym_COLON2, + sym_type_conversion, + [56893] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1564), 4, + ACTIONS(1209), 5, anon_sym_STAR, + anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1562), 29, + ACTIONS(1204), 29, + sym__newline, anon_sym_DOT, + anon_sym_from, anon_sym_LPAREN, - anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_as, anon_sym_GT_GT, anon_sym_if, - anon_sym_COLON, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, @@ -71675,23 +71906,24 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [56735] = 3, + anon_sym_SEMI, + [56935] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1552), 4, + ACTIONS(1634), 5, anon_sym_STAR, + anon_sym_EQ, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1550), 29, + ACTIONS(1632), 29, + sym__newline, anon_sym_DOT, + anon_sym_from, anon_sym_LPAREN, - anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_as, anon_sym_GT_GT, anon_sym_if, - anon_sym_COLON, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, @@ -71713,15 +71945,16 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [56776] = 3, + anon_sym_SEMI, + [56977] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1560), 4, + ACTIONS(1670), 4, anon_sym_STAR, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1558), 29, + ACTIONS(1668), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -71751,15 +71984,15 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [56817] = 3, + [57018] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1576), 4, + ACTIONS(1618), 4, anon_sym_STAR, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1574), 29, + ACTIONS(1616), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -71789,25 +72022,23 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [56858] = 5, + [57059] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(580), 1, - anon_sym_COLON_EQ, - ACTIONS(634), 1, - anon_sym_EQ, - ACTIONS(272), 4, + ACTIONS(1622), 4, anon_sym_STAR, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(303), 27, + ACTIONS(1620), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_COMMA, + anon_sym_as, anon_sym_GT_GT, anon_sym_if, + anon_sym_COLON, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, @@ -71829,15 +72060,15 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [56903] = 3, + [57100] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1076), 4, + ACTIONS(1626), 4, anon_sym_STAR, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1074), 29, + ACTIONS(1624), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -71867,15 +72098,15 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [56944] = 3, + [57141] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1646), 4, + ACTIONS(1630), 4, anon_sym_STAR, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1644), 29, + ACTIONS(1628), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -71905,15 +72136,15 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [56985] = 3, + [57182] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1596), 4, + ACTIONS(1634), 4, anon_sym_STAR, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1594), 29, + ACTIONS(1632), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -71943,15 +72174,15 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [57026] = 3, + [57223] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1556), 4, + ACTIONS(1638), 4, anon_sym_STAR, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1554), 29, + ACTIONS(1636), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -71981,15 +72212,15 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [57067] = 3, + [57264] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1556), 4, + ACTIONS(1050), 4, anon_sym_STAR, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1554), 29, + ACTIONS(1048), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -72019,15 +72250,15 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [57108] = 3, + [57305] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1584), 4, + ACTIONS(1646), 4, anon_sym_STAR, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1582), 29, + ACTIONS(1644), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -72057,15 +72288,15 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [57149] = 3, + [57346] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1588), 4, + ACTIONS(1650), 4, anon_sym_STAR, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1586), 29, + ACTIONS(1648), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -72095,15 +72326,15 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [57190] = 3, + [57387] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1690), 4, + ACTIONS(1654), 4, anon_sym_STAR, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1688), 29, + ACTIONS(1652), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -72133,15 +72364,15 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [57231] = 3, + [57428] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1544), 4, + ACTIONS(1658), 4, anon_sym_STAR, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1542), 29, + ACTIONS(1656), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -72171,15 +72402,15 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [57272] = 3, + [57469] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1588), 4, + ACTIONS(1662), 4, anon_sym_STAR, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1586), 29, + ACTIONS(1660), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -72209,15 +72440,15 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [57313] = 3, + [57510] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1568), 4, + ACTIONS(1710), 4, anon_sym_STAR, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1566), 29, + ACTIONS(1708), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -72247,15 +72478,15 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [57354] = 3, + [57551] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1572), 4, + ACTIONS(1666), 4, anon_sym_STAR, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1570), 29, + ACTIONS(1664), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -72285,15 +72516,15 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [57395] = 3, + [57592] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1650), 4, + ACTIONS(1674), 4, anon_sym_STAR, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1648), 29, + ACTIONS(1672), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -72323,15 +72554,15 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [57436] = 3, + [57633] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1568), 4, + ACTIONS(1678), 4, anon_sym_STAR, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1566), 29, + ACTIONS(1676), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -72361,72 +72592,15 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [57477] = 22, - ACTIONS(3), 1, - sym_comment, - ACTIONS(654), 1, - sym__string_start, - ACTIONS(656), 1, - sym__template_string_start, - ACTIONS(1860), 1, - anon_sym_LPAREN, - ACTIONS(1864), 1, - anon_sym_DASH, - ACTIONS(1866), 1, - sym_match_wildcard_pattern, - ACTIONS(1868), 1, - anon_sym_LBRACK, - ACTIONS(1870), 1, - anon_sym_LBRACE, - ACTIONS(1872), 1, - sym_integer, - ACTIONS(1874), 1, - sym_float, - ACTIONS(1900), 1, - sym_identifier, - ACTIONS(1902), 1, - anon_sym_RPAREN, - STATE(1035), 1, - sym_template_string, - STATE(1061), 1, - sym_string, - STATE(1444), 1, - sym_match_positional_pattern, - STATE(1449), 1, - sym_match_keyword_pattern, - STATE(1714), 1, - sym_pattern_class_name, - STATE(1168), 2, - sym_concatenated_string, - sym_concatenated_template_string, - STATE(1215), 2, - sym__match_or_pattern, - sym_match_or_pattern, - STATE(1532), 2, - sym__match_pattern, - sym_match_as_pattern, - ACTIONS(1876), 3, - sym_true, - sym_false, - sym_none, - STATE(1139), 8, - sym__closed_pattern, - sym_match_literal_pattern, - sym_match_capture_pattern, - sym_match_value_pattern, - sym_match_group_pattern, - sym_match_sequence_pattern, - sym_match_mapping_pattern, - sym_match_class_pattern, - [57556] = 3, + [57674] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1235), 4, + ACTIONS(1032), 4, anon_sym_STAR, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1230), 29, + ACTIONS(1030), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -72456,25 +72630,23 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [57597] = 5, + [57715] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1258), 1, - anon_sym_COLON_EQ, - ACTIONS(1878), 1, - anon_sym_EQ, - ACTIONS(1235), 4, + ACTIONS(1682), 4, anon_sym_STAR, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1230), 27, + ACTIONS(1680), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_COMMA, + anon_sym_as, anon_sym_GT_GT, anon_sym_if, + anon_sym_COLON, anon_sym_in, anon_sym_PIPE, anon_sym_DASH, @@ -72496,127 +72668,53 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [57642] = 20, + [57756] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(654), 1, - sym__string_start, - ACTIONS(656), 1, - sym__template_string_start, - ACTIONS(1858), 1, - sym_identifier, - ACTIONS(1860), 1, - anon_sym_LPAREN, - ACTIONS(1862), 1, + ACTIONS(1686), 4, anon_sym_STAR, - ACTIONS(1864), 1, - anon_sym_DASH, - ACTIONS(1866), 1, - sym_match_wildcard_pattern, - ACTIONS(1868), 1, - anon_sym_LBRACK, - ACTIONS(1870), 1, - anon_sym_LBRACE, - ACTIONS(1872), 1, - sym_integer, - ACTIONS(1874), 1, - sym_float, - STATE(1035), 1, - sym_template_string, - STATE(1061), 1, - sym_string, - STATE(1714), 1, - sym_pattern_class_name, - STATE(1168), 2, - sym_concatenated_string, - sym_concatenated_template_string, - STATE(1215), 2, - sym__match_or_pattern, - sym_match_or_pattern, - ACTIONS(1876), 3, - sym_true, - sym_false, - sym_none, - STATE(1293), 4, - sym__match_pattern, - sym_match_as_pattern, - sym__match_maybe_star_pattern, - sym_match_star_pattern, - STATE(1139), 8, - sym__closed_pattern, - sym_match_literal_pattern, - sym_match_capture_pattern, - sym_match_value_pattern, - sym_match_group_pattern, - sym_match_sequence_pattern, - sym_match_mapping_pattern, - sym_match_class_pattern, - [57717] = 22, - ACTIONS(3), 1, - sym_comment, - ACTIONS(654), 1, - sym__string_start, - ACTIONS(656), 1, - sym__template_string_start, - ACTIONS(1860), 1, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1684), 29, + anon_sym_DOT, anon_sym_LPAREN, - ACTIONS(1864), 1, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_as, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_COLON, + anon_sym_in, + anon_sym_PIPE, anon_sym_DASH, - ACTIONS(1866), 1, - sym_match_wildcard_pattern, - ACTIONS(1868), 1, + anon_sym_PLUS, anon_sym_LBRACK, - ACTIONS(1870), 1, - anon_sym_LBRACE, - ACTIONS(1872), 1, - sym_integer, - ACTIONS(1874), 1, - sym_float, - ACTIONS(1900), 1, - sym_identifier, - ACTIONS(1904), 1, - anon_sym_RPAREN, - STATE(1035), 1, - sym_template_string, - STATE(1061), 1, - sym_string, - STATE(1421), 1, - sym_match_keyword_pattern, - STATE(1544), 1, - sym_match_positional_pattern, - STATE(1714), 1, - sym_pattern_class_name, - STATE(1168), 2, - sym_concatenated_string, - sym_concatenated_template_string, - STATE(1215), 2, - sym__match_or_pattern, - sym_match_or_pattern, - STATE(1532), 2, - sym__match_pattern, - sym_match_as_pattern, - ACTIONS(1876), 3, - sym_true, - sym_false, - sym_none, - STATE(1139), 8, - sym__closed_pattern, - sym_match_literal_pattern, - sym_match_capture_pattern, - sym_match_value_pattern, - sym_match_group_pattern, - sym_match_sequence_pattern, - sym_match_mapping_pattern, - sym_match_class_pattern, - [57796] = 3, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [57797] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1600), 4, + ACTIONS(1690), 4, anon_sym_STAR, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1598), 29, + ACTIONS(1688), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -72646,15 +72744,15 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [57837] = 3, + [57838] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1064), 4, + ACTIONS(1690), 4, anon_sym_STAR, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1062), 29, + ACTIONS(1688), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -72684,15 +72782,15 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [57878] = 3, + [57879] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1638), 4, + ACTIONS(1694), 4, anon_sym_STAR, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1636), 29, + ACTIONS(1692), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -72722,15 +72820,15 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [57919] = 3, + [57920] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1592), 4, + ACTIONS(1698), 4, anon_sym_STAR, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1590), 29, + ACTIONS(1696), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -72760,15 +72858,15 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [57960] = 3, + [57961] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1694), 4, + ACTIONS(1690), 4, anon_sym_STAR, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1692), 29, + ACTIONS(1688), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -72798,15 +72896,129 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [58001] = 3, + [58002] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1698), 4, + ACTIONS(1702), 4, anon_sym_STAR, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1696), 29, + ACTIONS(1700), 29, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_as, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_COLON, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [58043] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1702), 4, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1700), 29, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_as, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_COLON, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [58084] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1706), 4, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1704), 29, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_as, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_COLON, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [58125] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1702), 4, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1700), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -72836,55 +73048,110 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [58042] = 22, + [58166] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(654), 1, + ACTIONS(664), 1, sym__string_start, - ACTIONS(656), 1, + ACTIONS(666), 1, sym__template_string_start, - ACTIONS(1860), 1, + ACTIONS(1874), 1, + sym_identifier, + ACTIONS(1876), 1, anon_sym_LPAREN, - ACTIONS(1864), 1, + ACTIONS(1878), 1, + anon_sym_STAR, + ACTIONS(1884), 1, anon_sym_DASH, - ACTIONS(1866), 1, + ACTIONS(1886), 1, sym_match_wildcard_pattern, - ACTIONS(1868), 1, + ACTIONS(1888), 1, anon_sym_LBRACK, - ACTIONS(1870), 1, + ACTIONS(1890), 1, anon_sym_LBRACE, - ACTIONS(1872), 1, + ACTIONS(1892), 1, sym_integer, - ACTIONS(1874), 1, + ACTIONS(1894), 1, sym_float, - ACTIONS(1900), 1, + STATE(1043), 1, + sym_template_string, + STATE(1068), 1, + sym_string, + STATE(1650), 1, + sym_pattern_class_name, + STATE(1116), 2, + sym_concatenated_string, + sym_concatenated_template_string, + STATE(1240), 2, + sym__match_or_pattern, + sym_match_or_pattern, + ACTIONS(1896), 3, + sym_true, + sym_false, + sym_none, + STATE(1307), 4, + sym__match_pattern, + sym_match_as_pattern, + sym__match_maybe_star_pattern, + sym_match_star_pattern, + STATE(1117), 8, + sym__closed_pattern, + sym_match_literal_pattern, + sym_match_capture_pattern, + sym_match_value_pattern, + sym_match_group_pattern, + sym_match_sequence_pattern, + sym_match_mapping_pattern, + sym_match_class_pattern, + [58241] = 22, + ACTIONS(3), 1, + sym_comment, + ACTIONS(664), 1, + sym__string_start, + ACTIONS(666), 1, + sym__template_string_start, + ACTIONS(1876), 1, + anon_sym_LPAREN, + ACTIONS(1884), 1, + anon_sym_DASH, + ACTIONS(1886), 1, + sym_match_wildcard_pattern, + ACTIONS(1888), 1, + anon_sym_LBRACK, + ACTIONS(1890), 1, + anon_sym_LBRACE, + ACTIONS(1892), 1, + sym_integer, + ACTIONS(1894), 1, + sym_float, + ACTIONS(1912), 1, sym_identifier, - ACTIONS(1906), 1, + ACTIONS(1914), 1, anon_sym_RPAREN, - STATE(1035), 1, + STATE(1043), 1, sym_template_string, - STATE(1061), 1, + STATE(1068), 1, sym_string, - STATE(1468), 1, + STATE(1424), 1, sym_match_keyword_pattern, - STATE(1544), 1, + STATE(1558), 1, sym_match_positional_pattern, - STATE(1714), 1, + STATE(1650), 1, sym_pattern_class_name, - STATE(1168), 2, + STATE(1116), 2, sym_concatenated_string, sym_concatenated_template_string, - STATE(1215), 2, + STATE(1240), 2, sym__match_or_pattern, sym_match_or_pattern, - STATE(1532), 2, + STATE(1611), 2, sym__match_pattern, sym_match_as_pattern, - ACTIONS(1876), 3, + ACTIONS(1896), 3, sym_true, sym_false, sym_none, - STATE(1139), 8, + STATE(1117), 8, sym__closed_pattern, sym_match_literal_pattern, sym_match_capture_pattern, @@ -72893,15 +73160,112 @@ static const uint16_t ts_small_parse_table[] = { sym_match_sequence_pattern, sym_match_mapping_pattern, sym_match_class_pattern, - [58121] = 3, + [58320] = 22, ACTIONS(3), 1, sym_comment, - ACTIONS(1686), 4, + ACTIONS(664), 1, + sym__string_start, + ACTIONS(666), 1, + sym__template_string_start, + ACTIONS(1876), 1, + anon_sym_LPAREN, + ACTIONS(1884), 1, + anon_sym_DASH, + ACTIONS(1886), 1, + sym_match_wildcard_pattern, + ACTIONS(1888), 1, + anon_sym_LBRACK, + ACTIONS(1890), 1, + anon_sym_LBRACE, + ACTIONS(1892), 1, + sym_integer, + ACTIONS(1894), 1, + sym_float, + ACTIONS(1912), 1, + sym_identifier, + ACTIONS(1916), 1, + anon_sym_RPAREN, + STATE(1043), 1, + sym_template_string, + STATE(1068), 1, + sym_string, + STATE(1421), 1, + sym_match_keyword_pattern, + STATE(1558), 1, + sym_match_positional_pattern, + STATE(1650), 1, + sym_pattern_class_name, + STATE(1116), 2, + sym_concatenated_string, + sym_concatenated_template_string, + STATE(1240), 2, + sym__match_or_pattern, + sym_match_or_pattern, + STATE(1611), 2, + sym__match_pattern, + sym_match_as_pattern, + ACTIONS(1896), 3, + sym_true, + sym_false, + sym_none, + STATE(1117), 8, + sym__closed_pattern, + sym_match_literal_pattern, + sym_match_capture_pattern, + sym_match_value_pattern, + sym_match_group_pattern, + sym_match_sequence_pattern, + sym_match_mapping_pattern, + sym_match_class_pattern, + [58399] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1488), 1, + anon_sym_COLON_EQ, + ACTIONS(1898), 1, + anon_sym_EQ, + ACTIONS(1209), 4, anon_sym_STAR, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1684), 29, + ACTIONS(1204), 27, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [58444] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1209), 4, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1204), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -72931,15 +73295,112 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [58162] = 3, + [58485] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(1548), 4, + ACTIONS(590), 1, + anon_sym_COLON_EQ, + ACTIONS(634), 1, + anon_sym_EQ, + ACTIONS(272), 4, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_LT, + anon_sym_GT, + ACTIONS(303), 27, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_GT_GT, + anon_sym_if, + anon_sym_in, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_not, + anon_sym_and, + anon_sym_or, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + anon_sym_is, + [58530] = 22, + ACTIONS(3), 1, + sym_comment, + ACTIONS(664), 1, + sym__string_start, + ACTIONS(666), 1, + sym__template_string_start, + ACTIONS(1876), 1, + anon_sym_LPAREN, + ACTIONS(1884), 1, + anon_sym_DASH, + ACTIONS(1886), 1, + sym_match_wildcard_pattern, + ACTIONS(1888), 1, + anon_sym_LBRACK, + ACTIONS(1890), 1, + anon_sym_LBRACE, + ACTIONS(1892), 1, + sym_integer, + ACTIONS(1894), 1, + sym_float, + ACTIONS(1912), 1, + sym_identifier, + ACTIONS(1918), 1, + anon_sym_RPAREN, + STATE(1043), 1, + sym_template_string, + STATE(1068), 1, + sym_string, + STATE(1488), 1, + sym_match_positional_pattern, + STATE(1493), 1, + sym_match_keyword_pattern, + STATE(1650), 1, + sym_pattern_class_name, + STATE(1116), 2, + sym_concatenated_string, + sym_concatenated_template_string, + STATE(1240), 2, + sym__match_or_pattern, + sym_match_or_pattern, + STATE(1611), 2, + sym__match_pattern, + sym_match_as_pattern, + ACTIONS(1896), 3, + sym_true, + sym_false, + sym_none, + STATE(1117), 8, + sym__closed_pattern, + sym_match_literal_pattern, + sym_match_capture_pattern, + sym_match_value_pattern, + sym_match_group_pattern, + sym_match_sequence_pattern, + sym_match_mapping_pattern, + sym_match_class_pattern, + [58609] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(272), 4, anon_sym_STAR, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1546), 29, + ACTIONS(303), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -72969,15 +73430,15 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [58203] = 3, + [58650] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1580), 4, + ACTIONS(1614), 4, anon_sym_STAR, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1578), 29, + ACTIONS(1612), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -73007,15 +73468,15 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [58244] = 3, + [58691] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1678), 4, + ACTIONS(1642), 4, anon_sym_STAR, anon_sym_SLASH, anon_sym_LT, anon_sym_GT, - ACTIONS(1676), 29, + ACTIONS(1640), 29, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, @@ -73045,51 +73506,51 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_GT, anon_sym_is, - [58285] = 20, + [58732] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(654), 1, + ACTIONS(664), 1, sym__string_start, - ACTIONS(656), 1, + ACTIONS(666), 1, sym__template_string_start, - ACTIONS(1858), 1, + ACTIONS(1874), 1, sym_identifier, - ACTIONS(1860), 1, + ACTIONS(1876), 1, anon_sym_LPAREN, - ACTIONS(1864), 1, + ACTIONS(1884), 1, anon_sym_DASH, - ACTIONS(1866), 1, + ACTIONS(1886), 1, sym_match_wildcard_pattern, - ACTIONS(1868), 1, + ACTIONS(1888), 1, anon_sym_LBRACK, - ACTIONS(1870), 1, + ACTIONS(1890), 1, anon_sym_LBRACE, - ACTIONS(1872), 1, + ACTIONS(1892), 1, sym_integer, - ACTIONS(1874), 1, + ACTIONS(1894), 1, sym_float, - STATE(1035), 1, + STATE(1043), 1, sym_template_string, - STATE(1061), 1, + STATE(1068), 1, sym_string, - STATE(1544), 1, + STATE(1558), 1, sym_match_positional_pattern, - STATE(1714), 1, + STATE(1650), 1, sym_pattern_class_name, - STATE(1168), 2, + STATE(1116), 2, sym_concatenated_string, sym_concatenated_template_string, - STATE(1215), 2, + STATE(1240), 2, sym__match_or_pattern, sym_match_or_pattern, - STATE(1532), 2, + STATE(1611), 2, sym__match_pattern, sym_match_as_pattern, - ACTIONS(1876), 3, + ACTIONS(1896), 3, sym_true, sym_false, sym_none, - STATE(1139), 8, + STATE(1117), 8, sym__closed_pattern, sym_match_literal_pattern, sym_match_capture_pattern, @@ -73098,49 +73559,49 @@ static const uint16_t ts_small_parse_table[] = { sym_match_sequence_pattern, sym_match_mapping_pattern, sym_match_class_pattern, - [58358] = 19, + [58805] = 19, ACTIONS(3), 1, sym_comment, - ACTIONS(654), 1, + ACTIONS(664), 1, sym__string_start, - ACTIONS(656), 1, + ACTIONS(666), 1, sym__template_string_start, - ACTIONS(1858), 1, + ACTIONS(1874), 1, sym_identifier, - ACTIONS(1860), 1, + ACTIONS(1876), 1, anon_sym_LPAREN, - ACTIONS(1864), 1, + ACTIONS(1884), 1, anon_sym_DASH, - ACTIONS(1866), 1, + ACTIONS(1886), 1, sym_match_wildcard_pattern, - ACTIONS(1868), 1, + ACTIONS(1888), 1, anon_sym_LBRACK, - ACTIONS(1870), 1, + ACTIONS(1890), 1, anon_sym_LBRACE, - ACTIONS(1872), 1, + ACTIONS(1892), 1, sym_integer, - ACTIONS(1874), 1, + ACTIONS(1894), 1, sym_float, - STATE(1035), 1, + STATE(1043), 1, sym_template_string, - STATE(1061), 1, + STATE(1068), 1, sym_string, - STATE(1714), 1, + STATE(1650), 1, sym_pattern_class_name, - STATE(1168), 2, + STATE(1116), 2, sym_concatenated_string, sym_concatenated_template_string, - STATE(1215), 2, + STATE(1240), 2, sym__match_or_pattern, sym_match_or_pattern, - STATE(1536), 2, + STATE(1534), 2, sym__match_pattern, sym_match_as_pattern, - ACTIONS(1876), 3, + ACTIONS(1896), 3, sym_true, sym_false, sym_none, - STATE(1139), 8, + STATE(1117), 8, sym__closed_pattern, sym_match_literal_pattern, sym_match_capture_pattern, @@ -73149,49 +73610,49 @@ static const uint16_t ts_small_parse_table[] = { sym_match_sequence_pattern, sym_match_mapping_pattern, sym_match_class_pattern, - [58428] = 19, + [58875] = 19, ACTIONS(3), 1, sym_comment, - ACTIONS(654), 1, + ACTIONS(664), 1, sym__string_start, - ACTIONS(656), 1, + ACTIONS(666), 1, sym__template_string_start, - ACTIONS(1858), 1, + ACTIONS(1874), 1, sym_identifier, - ACTIONS(1860), 1, + ACTIONS(1876), 1, anon_sym_LPAREN, - ACTIONS(1864), 1, + ACTIONS(1884), 1, anon_sym_DASH, - ACTIONS(1866), 1, + ACTIONS(1886), 1, sym_match_wildcard_pattern, - ACTIONS(1868), 1, + ACTIONS(1888), 1, anon_sym_LBRACK, - ACTIONS(1870), 1, + ACTIONS(1890), 1, anon_sym_LBRACE, - ACTIONS(1872), 1, + ACTIONS(1892), 1, sym_integer, - ACTIONS(1874), 1, + ACTIONS(1894), 1, sym_float, - STATE(1035), 1, + STATE(1043), 1, sym_template_string, - STATE(1061), 1, + STATE(1068), 1, sym_string, - STATE(1714), 1, + STATE(1650), 1, sym_pattern_class_name, - STATE(1168), 2, + STATE(1116), 2, sym_concatenated_string, sym_concatenated_template_string, - STATE(1215), 2, + STATE(1240), 2, sym__match_or_pattern, sym_match_or_pattern, - STATE(1580), 2, + STATE(1549), 2, sym__match_pattern, sym_match_as_pattern, - ACTIONS(1876), 3, + ACTIONS(1896), 3, sym_true, sym_false, sym_none, - STATE(1139), 8, + STATE(1117), 8, sym__closed_pattern, sym_match_literal_pattern, sym_match_capture_pattern, @@ -73200,43 +73661,43 @@ static const uint16_t ts_small_parse_table[] = { sym_match_sequence_pattern, sym_match_mapping_pattern, sym_match_class_pattern, - [58498] = 17, + [58945] = 17, ACTIONS(3), 1, sym_comment, - ACTIONS(654), 1, + ACTIONS(664), 1, sym__string_start, - ACTIONS(656), 1, + ACTIONS(666), 1, sym__template_string_start, - ACTIONS(1858), 1, + ACTIONS(1874), 1, sym_identifier, - ACTIONS(1860), 1, + ACTIONS(1876), 1, anon_sym_LPAREN, - ACTIONS(1864), 1, + ACTIONS(1884), 1, anon_sym_DASH, - ACTIONS(1868), 1, + ACTIONS(1888), 1, anon_sym_LBRACK, - ACTIONS(1870), 1, + ACTIONS(1890), 1, anon_sym_LBRACE, - ACTIONS(1872), 1, + ACTIONS(1892), 1, sym_integer, - ACTIONS(1874), 1, + ACTIONS(1894), 1, sym_float, - ACTIONS(1908), 1, + ACTIONS(1920), 1, sym_match_wildcard_pattern, - STATE(1035), 1, + STATE(1043), 1, sym_template_string, - STATE(1061), 1, + STATE(1068), 1, sym_string, - STATE(1714), 1, + STATE(1650), 1, sym_pattern_class_name, - STATE(1168), 2, + STATE(1116), 2, sym_concatenated_string, sym_concatenated_template_string, - ACTIONS(1876), 3, + ACTIONS(1896), 3, sym_true, sym_false, sym_none, - STATE(1098), 8, + STATE(1136), 8, sym__closed_pattern, sym_match_literal_pattern, sym_match_capture_pattern, @@ -73245,43 +73706,43 @@ static const uint16_t ts_small_parse_table[] = { sym_match_sequence_pattern, sym_match_mapping_pattern, sym_match_class_pattern, - [58560] = 17, + [59007] = 17, ACTIONS(3), 1, sym_comment, - ACTIONS(654), 1, + ACTIONS(664), 1, sym__string_start, - ACTIONS(656), 1, + ACTIONS(666), 1, sym__template_string_start, - ACTIONS(1858), 1, + ACTIONS(1874), 1, sym_identifier, - ACTIONS(1860), 1, + ACTIONS(1876), 1, anon_sym_LPAREN, - ACTIONS(1864), 1, + ACTIONS(1884), 1, anon_sym_DASH, - ACTIONS(1868), 1, + ACTIONS(1888), 1, anon_sym_LBRACK, - ACTIONS(1870), 1, + ACTIONS(1890), 1, anon_sym_LBRACE, - ACTIONS(1872), 1, + ACTIONS(1892), 1, sym_integer, - ACTIONS(1874), 1, + ACTIONS(1894), 1, sym_float, - ACTIONS(1910), 1, + ACTIONS(1922), 1, sym_match_wildcard_pattern, - STATE(1035), 1, + STATE(1043), 1, sym_template_string, - STATE(1061), 1, + STATE(1068), 1, sym_string, - STATE(1714), 1, + STATE(1650), 1, sym_pattern_class_name, - STATE(1168), 2, + STATE(1116), 2, sym_concatenated_string, sym_concatenated_template_string, - ACTIONS(1876), 3, + ACTIONS(1896), 3, sym_true, sym_false, sym_none, - STATE(1132), 8, + STATE(1101), 8, sym__closed_pattern, sym_match_literal_pattern, sym_match_capture_pattern, @@ -73290,28 +73751,28 @@ static const uint16_t ts_small_parse_table[] = { sym_match_sequence_pattern, sym_match_mapping_pattern, sym_match_class_pattern, - [58622] = 8, + [59069] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(1666), 1, + ACTIONS(1926), 1, + anon_sym_as, + ACTIONS(1931), 1, anon_sym_not, - ACTIONS(1674), 1, + ACTIONS(1937), 1, anon_sym_is, - ACTIONS(1914), 1, - anon_sym_as, - STATE(991), 1, + STATE(996), 1, aux_sym_comparison_operator_repeat1, - ACTIONS(1672), 2, + ACTIONS(1934), 2, anon_sym_LT, anon_sym_GT, - ACTIONS(1656), 6, + ACTIONS(1928), 6, anon_sym_in, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_GT, - ACTIONS(1912), 9, + ACTIONS(1924), 9, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_if, @@ -73321,90 +73782,90 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_RBRACE, anon_sym_and, anon_sym_or, - [58661] = 8, + [59108] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(1918), 1, - anon_sym_as, - ACTIONS(1923), 1, + ACTIONS(1578), 1, anon_sym_not, - ACTIONS(1929), 1, + ACTIONS(1586), 1, anon_sym_is, - STATE(991), 1, + ACTIONS(1942), 1, + anon_sym_EQ, + STATE(999), 1, aux_sym_comparison_operator_repeat1, - ACTIONS(1926), 2, + ACTIONS(1584), 2, anon_sym_LT, anon_sym_GT, - ACTIONS(1920), 6, + ACTIONS(1564), 6, anon_sym_in, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_GT, - ACTIONS(1916), 9, + ACTIONS(1940), 9, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_if, - anon_sym_async, - anon_sym_for, + anon_sym_COLON, + anon_sym_else, anon_sym_RBRACK, anon_sym_RBRACE, anon_sym_and, anon_sym_or, - [58700] = 8, + [59147] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(1918), 1, - anon_sym_EQ, - ACTIONS(1935), 1, + ACTIONS(1602), 1, anon_sym_not, - ACTIONS(1941), 1, + ACTIONS(1610), 1, anon_sym_is, - STATE(992), 1, + ACTIONS(1942), 1, + anon_sym_as, + STATE(996), 1, aux_sym_comparison_operator_repeat1, - ACTIONS(1938), 2, + ACTIONS(1608), 2, anon_sym_LT, anon_sym_GT, - ACTIONS(1932), 6, + ACTIONS(1592), 6, anon_sym_in, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_GT, - ACTIONS(1916), 9, + ACTIONS(1940), 9, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_if, - anon_sym_COLON, - anon_sym_else, + anon_sym_async, + anon_sym_for, anon_sym_RBRACK, anon_sym_RBRACE, anon_sym_and, anon_sym_or, - [58739] = 8, + [59186] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(1626), 1, + ACTIONS(1926), 1, + anon_sym_EQ, + ACTIONS(1947), 1, anon_sym_not, - ACTIONS(1634), 1, + ACTIONS(1953), 1, anon_sym_is, - ACTIONS(1914), 1, - anon_sym_EQ, - STATE(992), 1, + STATE(999), 1, aux_sym_comparison_operator_repeat1, - ACTIONS(1632), 2, + ACTIONS(1950), 2, anon_sym_LT, anon_sym_GT, - ACTIONS(1612), 6, + ACTIONS(1944), 6, anon_sym_in, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_GT, - ACTIONS(1912), 9, + ACTIONS(1924), 9, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_if, @@ -73414,14 +73875,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_RBRACE, anon_sym_and, anon_sym_or, - [58778] = 4, + [59225] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1946), 1, + ACTIONS(1958), 1, anon_sym_COMMA, - STATE(994), 1, + STATE(1000), 1, aux_sym__patterns_repeat1, - ACTIONS(1944), 18, + ACTIONS(1956), 18, anon_sym_RPAREN, anon_sym_COLON, anon_sym_in, @@ -73440,100 +73901,39 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, - [58808] = 16, + [59255] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(315), 1, - sym__string_start, - ACTIONS(317), 1, - sym__template_string_start, - ACTIONS(1864), 1, - anon_sym_DASH, - ACTIONS(1872), 1, - sym_integer, - ACTIONS(1874), 1, - sym_float, - ACTIONS(1949), 1, - sym_identifier, - ACTIONS(1951), 1, - anon_sym_RBRACE, - ACTIONS(1953), 1, - anon_sym_STAR_STAR, - STATE(1314), 1, - sym_string, - STATE(1315), 1, - sym_template_string, - STATE(1529), 1, - sym_match_double_star_pattern, - STATE(1586), 1, - sym_match_key_value_pattern, - STATE(1168), 2, - sym_concatenated_string, - sym_concatenated_template_string, - STATE(1658), 2, - sym_match_literal_pattern, - sym_match_value_pattern, - ACTIONS(1876), 3, - sym_true, - sym_false, - sym_none, - [58861] = 7, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1958), 1, - anon_sym_not, + ACTIONS(1926), 1, + anon_sym_EQ, ACTIONS(1964), 1, + anon_sym_not, + ACTIONS(1970), 1, anon_sym_is, - STATE(996), 1, + STATE(1001), 1, aux_sym_comparison_operator_repeat1, - ACTIONS(1961), 2, + ACTIONS(1967), 2, anon_sym_LT, anon_sym_GT, - ACTIONS(1955), 6, + ACTIONS(1961), 6, anon_sym_in, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_GT, - ACTIONS(1916), 8, + ACTIONS(1924), 7, + sym__newline, + anon_sym_from, anon_sym_COMMA, anon_sym_if, - anon_sym_COLON, - anon_sym_async, - anon_sym_for, - anon_sym_RBRACE, anon_sym_and, anon_sym_or, - [58896] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(272), 2, - anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(916), 3, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_COLON, - ACTIONS(303), 14, - anon_sym_DOT, - anon_sym_LPAREN, - anon_sym_GT_GT, - anon_sym_PIPE, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_LBRACK, - anon_sym_STAR_STAR, - anon_sym_AT, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - anon_sym_AMP, - anon_sym_CARET, - anon_sym_LT_LT, - [58925] = 2, + anon_sym_SEMI, + [59292] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1967), 19, + ACTIONS(1973), 19, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_COLON, @@ -73553,10 +73953,68 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, - [58950] = 2, + [59317] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1926), 1, + anon_sym_EQ, + ACTIONS(1978), 1, + anon_sym_not, + ACTIONS(1984), 1, + anon_sym_is, + STATE(1003), 1, + aux_sym_comparison_operator_repeat1, + ACTIONS(1981), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1975), 6, + anon_sym_in, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + ACTIONS(1924), 7, + anon_sym_COMMA, + anon_sym_if, + anon_sym_RBRACE, + anon_sym_and, + anon_sym_or, + anon_sym_COLON2, + sym_type_conversion, + [59354] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1828), 1, + anon_sym_not, + ACTIONS(1836), 1, + anon_sym_is, + ACTIONS(1942), 1, + anon_sym_EQ, + STATE(1003), 1, + aux_sym_comparison_operator_repeat1, + ACTIONS(1834), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(1816), 6, + anon_sym_in, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_LT_GT, + ACTIONS(1940), 7, + anon_sym_COMMA, + anon_sym_if, + anon_sym_RBRACE, + anon_sym_and, + anon_sym_or, + anon_sym_COLON2, + sym_type_conversion, + [59391] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1969), 19, + ACTIONS(1272), 19, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_COLON, @@ -73576,28 +74034,102 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, - [58975] = 8, + [59416] = 16, ACTIONS(3), 1, sym_comment, - ACTIONS(1918), 1, - anon_sym_EQ, - ACTIONS(1974), 1, + ACTIONS(315), 1, + sym__string_start, + ACTIONS(317), 1, + sym__template_string_start, + ACTIONS(1884), 1, + anon_sym_DASH, + ACTIONS(1892), 1, + sym_integer, + ACTIONS(1894), 1, + sym_float, + ACTIONS(1987), 1, + sym_identifier, + ACTIONS(1989), 1, + anon_sym_RBRACE, + ACTIONS(1991), 1, + anon_sym_STAR_STAR, + STATE(1369), 1, + sym_string, + STATE(1373), 1, + sym_template_string, + STATE(1557), 1, + sym_match_key_value_pattern, + STATE(1568), 1, + sym_match_double_star_pattern, + STATE(1116), 2, + sym_concatenated_string, + sym_concatenated_template_string, + STATE(1652), 2, + sym_match_literal_pattern, + sym_match_value_pattern, + ACTIONS(1896), 3, + sym_true, + sym_false, + sym_none, + [59469] = 16, + ACTIONS(3), 1, + sym_comment, + ACTIONS(315), 1, + sym__string_start, + ACTIONS(317), 1, + sym__template_string_start, + ACTIONS(1884), 1, + anon_sym_DASH, + ACTIONS(1892), 1, + sym_integer, + ACTIONS(1894), 1, + sym_float, + ACTIONS(1987), 1, + sym_identifier, + ACTIONS(1991), 1, + anon_sym_STAR_STAR, + ACTIONS(1993), 1, + anon_sym_RBRACE, + STATE(1369), 1, + sym_string, + STATE(1373), 1, + sym_template_string, + STATE(1498), 1, + sym_match_key_value_pattern, + STATE(1553), 1, + sym_match_double_star_pattern, + STATE(1116), 2, + sym_concatenated_string, + sym_concatenated_template_string, + STATE(1652), 2, + sym_match_literal_pattern, + sym_match_value_pattern, + ACTIONS(1896), 3, + sym_true, + sym_false, + sym_none, + [59522] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1768), 1, anon_sym_not, - ACTIONS(1980), 1, + ACTIONS(1776), 1, anon_sym_is, - STATE(1000), 1, + ACTIONS(1942), 1, + anon_sym_EQ, + STATE(1001), 1, aux_sym_comparison_operator_repeat1, - ACTIONS(1977), 2, + ACTIONS(1774), 2, anon_sym_LT, anon_sym_GT, - ACTIONS(1971), 6, + ACTIONS(1756), 6, anon_sym_in, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_GT, - ACTIONS(1916), 7, + ACTIONS(1940), 7, sym__newline, anon_sym_from, anon_sym_COMMA, @@ -73605,10 +74137,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_and, anon_sym_or, anon_sym_SEMI, - [59012] = 2, + [59559] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1241), 19, + ACTIONS(1995), 19, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_COLON, @@ -73628,10 +74160,72 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, - [59037] = 2, + [59584] = 16, + ACTIONS(3), 1, + sym_comment, + ACTIONS(315), 1, + sym__string_start, + ACTIONS(317), 1, + sym__template_string_start, + ACTIONS(1884), 1, + anon_sym_DASH, + ACTIONS(1892), 1, + sym_integer, + ACTIONS(1894), 1, + sym_float, + ACTIONS(1987), 1, + sym_identifier, + ACTIONS(1991), 1, + anon_sym_STAR_STAR, + ACTIONS(1997), 1, + anon_sym_RBRACE, + STATE(1369), 1, + sym_string, + STATE(1373), 1, + sym_template_string, + STATE(1555), 1, + sym_match_double_star_pattern, + STATE(1557), 1, + sym_match_key_value_pattern, + STATE(1116), 2, + sym_concatenated_string, + sym_concatenated_template_string, + STATE(1652), 2, + sym_match_literal_pattern, + sym_match_value_pattern, + ACTIONS(1896), 3, + sym_true, + sym_false, + sym_none, + [59637] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(272), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(928), 3, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_COLON, + ACTIONS(303), 14, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_GT_GT, + anon_sym_PIPE, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_LBRACK, + anon_sym_STAR_STAR, + anon_sym_AT, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + anon_sym_AMP, + anon_sym_CARET, + anon_sym_LT_LT, + [59666] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1983), 19, + ACTIONS(1999), 19, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_COLON, @@ -73651,46 +74245,17 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, - [59062] = 8, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1918), 1, - anon_sym_EQ, - ACTIONS(1988), 1, - anon_sym_not, - ACTIONS(1994), 1, - anon_sym_is, - STATE(1003), 1, - aux_sym_comparison_operator_repeat1, - ACTIONS(1991), 2, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1985), 6, - anon_sym_in, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - ACTIONS(1916), 7, - anon_sym_COMMA, - anon_sym_if, - anon_sym_RBRACE, - anon_sym_and, - anon_sym_or, - anon_sym_COLON2, - sym_type_conversion, - [59099] = 4, + [59691] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1235), 2, + ACTIONS(1209), 2, anon_sym_STAR, anon_sym_SLASH, - ACTIONS(1997), 3, + ACTIONS(2001), 3, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_COLON, - ACTIONS(1230), 14, + ACTIONS(1204), 14, anon_sym_DOT, anon_sym_LPAREN, anon_sym_GT_GT, @@ -73705,55 +74270,54 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_AMP, anon_sym_CARET, anon_sym_LT_LT, - [59128] = 8, + [59720] = 7, ACTIONS(3), 1, sym_comment, - ACTIONS(1750), 1, + ACTIONS(1792), 1, anon_sym_not, - ACTIONS(1758), 1, + ACTIONS(1800), 1, anon_sym_is, - ACTIONS(1914), 1, - anon_sym_EQ, - STATE(1003), 1, + STATE(1015), 1, aux_sym_comparison_operator_repeat1, - ACTIONS(1756), 2, + ACTIONS(1798), 2, anon_sym_LT, anon_sym_GT, - ACTIONS(1738), 6, + ACTIONS(1782), 6, anon_sym_in, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_GT, - ACTIONS(1912), 7, + ACTIONS(1940), 8, anon_sym_COMMA, anon_sym_if, + anon_sym_COLON, + anon_sym_async, + anon_sym_for, anon_sym_RBRACE, anon_sym_and, anon_sym_or, - anon_sym_COLON2, - sym_type_conversion, - [59165] = 7, + [59755] = 7, ACTIONS(3), 1, sym_comment, - ACTIONS(1816), 1, + ACTIONS(2006), 1, anon_sym_not, - ACTIONS(1824), 1, + ACTIONS(2012), 1, anon_sym_is, - STATE(996), 1, + STATE(1015), 1, aux_sym_comparison_operator_repeat1, - ACTIONS(1822), 2, + ACTIONS(2009), 2, anon_sym_LT, anon_sym_GT, - ACTIONS(1806), 6, + ACTIONS(2003), 6, anon_sym_in, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_GT, - ACTIONS(1912), 8, + ACTIONS(1924), 8, anon_sym_COMMA, anon_sym_if, anon_sym_COLON, @@ -73762,156 +74326,110 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_RBRACE, anon_sym_and, anon_sym_or, - [59200] = 16, - ACTIONS(3), 1, - sym_comment, - ACTIONS(315), 1, - sym__string_start, - ACTIONS(317), 1, - sym__template_string_start, - ACTIONS(1864), 1, - anon_sym_DASH, - ACTIONS(1872), 1, - sym_integer, - ACTIONS(1874), 1, - sym_float, - ACTIONS(1949), 1, - sym_identifier, - ACTIONS(1953), 1, - anon_sym_STAR_STAR, - ACTIONS(1999), 1, - anon_sym_RBRACE, - STATE(1314), 1, - sym_string, - STATE(1315), 1, - sym_template_string, - STATE(1485), 1, - sym_match_key_value_pattern, - STATE(1560), 1, - sym_match_double_star_pattern, - STATE(1168), 2, - sym_concatenated_string, - sym_concatenated_template_string, - STATE(1658), 2, - sym_match_literal_pattern, - sym_match_value_pattern, - ACTIONS(1876), 3, - sym_true, - sym_false, - sym_none, - [59253] = 8, + [59790] = 7, ACTIONS(3), 1, sym_comment, - ACTIONS(1780), 1, + ACTIONS(1860), 1, anon_sym_not, - ACTIONS(1788), 1, + ACTIONS(1868), 1, anon_sym_is, - ACTIONS(1914), 1, - anon_sym_EQ, - STATE(1000), 1, + STATE(1019), 1, aux_sym_comparison_operator_repeat1, - ACTIONS(1786), 2, + ACTIONS(1866), 2, anon_sym_LT, anon_sym_GT, - ACTIONS(1768), 6, + ACTIONS(1848), 6, anon_sym_in, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_GT, - ACTIONS(1912), 7, - sym__newline, - anon_sym_from, + ACTIONS(1940), 7, + anon_sym_RPAREN, anon_sym_COMMA, + anon_sym_as, anon_sym_if, + anon_sym_COLON, anon_sym_and, anon_sym_or, - anon_sym_SEMI, - [59290] = 16, + [59824] = 13, ACTIONS(3), 1, sym_comment, - ACTIONS(315), 1, - sym__string_start, - ACTIONS(317), 1, - sym__template_string_start, - ACTIONS(1864), 1, - anon_sym_DASH, - ACTIONS(1872), 1, - sym_integer, - ACTIONS(1874), 1, - sym_float, - ACTIONS(1949), 1, - sym_identifier, - ACTIONS(1953), 1, + ACTIONS(1554), 1, + anon_sym_DOT, + ACTIONS(1556), 1, + anon_sym_LPAREN, + ACTIONS(1566), 1, + anon_sym_PIPE, + ACTIONS(1570), 1, + anon_sym_LBRACK, + ACTIONS(1572), 1, anon_sym_STAR_STAR, - ACTIONS(2001), 1, - anon_sym_RBRACE, - STATE(1314), 1, - sym_string, - STATE(1315), 1, - sym_template_string, - STATE(1584), 1, - sym_match_double_star_pattern, - STATE(1586), 1, - sym_match_key_value_pattern, - STATE(1168), 2, - sym_concatenated_string, - sym_concatenated_template_string, - STATE(1658), 2, - sym_match_literal_pattern, - sym_match_value_pattern, - ACTIONS(1876), 3, - sym_true, - sym_false, - sym_none, - [59343] = 7, + ACTIONS(1580), 1, + anon_sym_AMP, + ACTIONS(1582), 1, + anon_sym_CARET, + ACTIONS(1560), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(1562), 2, + anon_sym_GT_GT, + anon_sym_LT_LT, + ACTIONS(1568), 2, + anon_sym_DASH, + anon_sym_PLUS, + STATE(708), 2, + sym_argument_list, + sym_generator_expression, + ACTIONS(1576), 3, + anon_sym_AT, + anon_sym_PERCENT, + anon_sym_SLASH_SLASH, + [59870] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1848), 1, - anon_sym_not, - ACTIONS(1856), 1, - anon_sym_is, - STATE(1011), 1, - aux_sym_comparison_operator_repeat1, - ACTIONS(1854), 2, - anon_sym_LT, - anon_sym_GT, - ACTIONS(1836), 6, - anon_sym_in, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - anon_sym_LT_GT, - ACTIONS(1912), 7, - anon_sym_RPAREN, + ACTIONS(2015), 1, anon_sym_COMMA, - anon_sym_as, - anon_sym_if, + STATE(1000), 1, + aux_sym__patterns_repeat1, + ACTIONS(2017), 16, anon_sym_COLON, - anon_sym_and, - anon_sym_or, - [59377] = 7, + anon_sym_in, + anon_sym_EQ, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_AT_EQ, + anon_sym_SLASH_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_STAR_STAR_EQ, + anon_sym_GT_GT_EQ, + anon_sym_LT_LT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + [59898] = 7, ACTIONS(3), 1, sym_comment, - ACTIONS(2006), 1, + ACTIONS(2022), 1, anon_sym_not, - ACTIONS(2012), 1, + ACTIONS(2028), 1, anon_sym_is, - STATE(1011), 1, + STATE(1019), 1, aux_sym_comparison_operator_repeat1, - ACTIONS(2009), 2, + ACTIONS(2025), 2, anon_sym_LT, anon_sym_GT, - ACTIONS(2003), 6, + ACTIONS(2019), 6, anon_sym_in, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_GT, - ACTIONS(1916), 7, + ACTIONS(1924), 7, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_as, @@ -73919,17 +74437,18 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_COLON, anon_sym_and, anon_sym_or, - [59411] = 4, + [59932] = 6, ACTIONS(3), 1, sym_comment, - ACTIONS(2015), 1, + ACTIONS(2031), 1, anon_sym_COMMA, - STATE(994), 1, - aux_sym__patterns_repeat1, - ACTIONS(2017), 16, + ACTIONS(2033), 1, anon_sym_COLON, - anon_sym_in, + ACTIONS(2035), 1, anon_sym_EQ, + STATE(1018), 1, + aux_sym__patterns_repeat1, + ACTIONS(2037), 13, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_STAR_EQ, @@ -73943,526 +74462,468 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, - [59439] = 13, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1602), 1, - anon_sym_DOT, - ACTIONS(1604), 1, - anon_sym_LPAREN, - ACTIONS(1614), 1, - anon_sym_PIPE, - ACTIONS(1618), 1, - anon_sym_LBRACK, - ACTIONS(1620), 1, - anon_sym_STAR_STAR, - ACTIONS(1628), 1, - anon_sym_AMP, - ACTIONS(1630), 1, - anon_sym_CARET, - ACTIONS(1608), 2, - anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(1610), 2, - anon_sym_GT_GT, - anon_sym_LT_LT, - ACTIONS(1616), 2, - anon_sym_DASH, - anon_sym_PLUS, - STATE(734), 2, - sym_argument_list, - sym_generator_expression, - ACTIONS(1624), 3, - anon_sym_AT, - anon_sym_PERCENT, - anon_sym_SLASH_SLASH, - [59485] = 12, + [59963] = 12, ACTIONS(3), 1, sym_comment, - ACTIONS(2019), 1, + ACTIONS(2039), 1, sym_identifier, - ACTIONS(2021), 1, + ACTIONS(2041), 1, anon_sym_LPAREN, - ACTIONS(2023), 1, + ACTIONS(2043), 1, anon_sym_STAR, - ACTIONS(2025), 1, + ACTIONS(2045), 1, anon_sym_COLON, - ACTIONS(2027), 1, + ACTIONS(2047), 1, anon_sym_STAR_STAR, - ACTIONS(2029), 1, + ACTIONS(2049), 1, anon_sym_SLASH, - STATE(1453), 1, + STATE(1406), 1, sym_parameter, - STATE(1606), 1, + STATE(1689), 1, sym__parameters, - STATE(1720), 1, + STATE(1691), 1, sym_lambda_parameters, - STATE(1574), 2, + STATE(1606), 2, sym_list_splat_pattern, sym_dictionary_splat_pattern, - STATE(1454), 6, + STATE(1410), 6, sym_tuple_pattern, sym_default_parameter, sym_typed_default_parameter, sym_typed_parameter, sym_positional_separator, sym_keyword_separator, - [59528] = 12, + [60006] = 12, ACTIONS(3), 1, sym_comment, - ACTIONS(2019), 1, + ACTIONS(2039), 1, sym_identifier, - ACTIONS(2021), 1, + ACTIONS(2041), 1, anon_sym_LPAREN, - ACTIONS(2023), 1, + ACTIONS(2043), 1, anon_sym_STAR, - ACTIONS(2027), 1, + ACTIONS(2047), 1, anon_sym_STAR_STAR, - ACTIONS(2029), 1, + ACTIONS(2049), 1, anon_sym_SLASH, - ACTIONS(2031), 1, + ACTIONS(2051), 1, anon_sym_COLON, - STATE(1453), 1, + STATE(1406), 1, sym_parameter, - STATE(1606), 1, + STATE(1689), 1, sym__parameters, - STATE(1682), 1, + STATE(1752), 1, sym_lambda_parameters, - STATE(1574), 2, + STATE(1606), 2, sym_list_splat_pattern, sym_dictionary_splat_pattern, - STATE(1454), 6, + STATE(1410), 6, sym_tuple_pattern, sym_default_parameter, sym_typed_default_parameter, sym_typed_parameter, sym_positional_separator, sym_keyword_separator, - [59571] = 12, + [60049] = 12, ACTIONS(3), 1, sym_comment, - ACTIONS(2019), 1, + ACTIONS(2039), 1, sym_identifier, - ACTIONS(2021), 1, + ACTIONS(2041), 1, anon_sym_LPAREN, - ACTIONS(2023), 1, + ACTIONS(2043), 1, anon_sym_STAR, - ACTIONS(2027), 1, + ACTIONS(2047), 1, anon_sym_STAR_STAR, - ACTIONS(2029), 1, + ACTIONS(2049), 1, anon_sym_SLASH, - ACTIONS(2033), 1, + ACTIONS(2053), 1, anon_sym_COLON, - STATE(1453), 1, + STATE(1406), 1, sym_parameter, - STATE(1606), 1, - sym__parameters, - STATE(1710), 1, + STATE(1639), 1, sym_lambda_parameters, - STATE(1574), 2, + STATE(1689), 1, + sym__parameters, + STATE(1606), 2, sym_list_splat_pattern, sym_dictionary_splat_pattern, - STATE(1454), 6, + STATE(1410), 6, sym_tuple_pattern, sym_default_parameter, sym_typed_default_parameter, sym_typed_parameter, sym_positional_separator, sym_keyword_separator, - [59614] = 6, + [60092] = 12, ACTIONS(3), 1, sym_comment, - ACTIONS(2035), 1, - anon_sym_COMMA, - ACTIONS(2037), 1, - anon_sym_COLON, ACTIONS(2039), 1, - anon_sym_EQ, - STATE(1012), 1, - aux_sym__patterns_repeat1, - ACTIONS(2041), 13, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_STAR_EQ, - anon_sym_SLASH_EQ, - anon_sym_AT_EQ, - anon_sym_SLASH_SLASH_EQ, - anon_sym_PERCENT_EQ, - anon_sym_STAR_STAR_EQ, - anon_sym_GT_GT_EQ, - anon_sym_LT_LT_EQ, - anon_sym_AMP_EQ, - anon_sym_CARET_EQ, - anon_sym_PIPE_EQ, - [59645] = 12, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2019), 1, sym_identifier, - ACTIONS(2021), 1, + ACTIONS(2041), 1, anon_sym_LPAREN, - ACTIONS(2023), 1, + ACTIONS(2043), 1, anon_sym_STAR, - ACTIONS(2027), 1, + ACTIONS(2047), 1, anon_sym_STAR_STAR, - ACTIONS(2029), 1, + ACTIONS(2049), 1, anon_sym_SLASH, - ACTIONS(2043), 1, + ACTIONS(2055), 1, anon_sym_COLON, - STATE(1453), 1, + STATE(1406), 1, sym_parameter, - STATE(1606), 1, + STATE(1689), 1, sym__parameters, - STATE(1622), 1, + STATE(1729), 1, sym_lambda_parameters, - STATE(1574), 2, + STATE(1606), 2, sym_list_splat_pattern, sym_dictionary_splat_pattern, - STATE(1454), 6, + STATE(1410), 6, sym_tuple_pattern, sym_default_parameter, sym_typed_default_parameter, sym_typed_parameter, sym_positional_separator, sym_keyword_separator, - [59688] = 12, + [60135] = 12, ACTIONS(3), 1, sym_comment, - ACTIONS(2019), 1, + ACTIONS(2039), 1, sym_identifier, - ACTIONS(2021), 1, + ACTIONS(2041), 1, anon_sym_LPAREN, - ACTIONS(2023), 1, + ACTIONS(2043), 1, anon_sym_STAR, - ACTIONS(2027), 1, + ACTIONS(2047), 1, anon_sym_STAR_STAR, - ACTIONS(2029), 1, + ACTIONS(2049), 1, anon_sym_SLASH, - ACTIONS(2045), 1, + ACTIONS(2057), 1, anon_sym_COLON, - STATE(1453), 1, + STATE(1406), 1, sym_parameter, - STATE(1605), 1, + STATE(1667), 1, sym_lambda_parameters, - STATE(1606), 1, + STATE(1689), 1, sym__parameters, - STATE(1574), 2, + STATE(1606), 2, sym_list_splat_pattern, sym_dictionary_splat_pattern, - STATE(1454), 6, + STATE(1410), 6, sym_tuple_pattern, sym_default_parameter, sym_typed_default_parameter, sym_typed_parameter, sym_positional_separator, sym_keyword_separator, - [59731] = 12, + [60178] = 12, ACTIONS(3), 1, sym_comment, - ACTIONS(2019), 1, + ACTIONS(2039), 1, sym_identifier, - ACTIONS(2021), 1, + ACTIONS(2041), 1, anon_sym_LPAREN, - ACTIONS(2023), 1, + ACTIONS(2043), 1, anon_sym_STAR, - ACTIONS(2027), 1, + ACTIONS(2047), 1, anon_sym_STAR_STAR, - ACTIONS(2029), 1, + ACTIONS(2049), 1, anon_sym_SLASH, - ACTIONS(2047), 1, + ACTIONS(2059), 1, anon_sym_COLON, - STATE(1453), 1, + STATE(1406), 1, sym_parameter, - STATE(1606), 1, + STATE(1689), 1, sym__parameters, - STATE(1705), 1, + STATE(1697), 1, sym_lambda_parameters, - STATE(1574), 2, + STATE(1606), 2, sym_list_splat_pattern, sym_dictionary_splat_pattern, - STATE(1454), 6, + STATE(1410), 6, sym_tuple_pattern, sym_default_parameter, sym_typed_default_parameter, sym_typed_parameter, sym_positional_separator, sym_keyword_separator, - [59774] = 12, + [60221] = 12, ACTIONS(3), 1, sym_comment, - ACTIONS(2019), 1, + ACTIONS(2039), 1, sym_identifier, - ACTIONS(2021), 1, + ACTIONS(2041), 1, anon_sym_LPAREN, - ACTIONS(2023), 1, + ACTIONS(2043), 1, anon_sym_STAR, - ACTIONS(2027), 1, + ACTIONS(2047), 1, anon_sym_STAR_STAR, - ACTIONS(2029), 1, - anon_sym_SLASH, ACTIONS(2049), 1, + anon_sym_SLASH, + ACTIONS(2061), 1, anon_sym_COLON, - STATE(1453), 1, + STATE(1406), 1, sym_parameter, - STATE(1606), 1, + STATE(1689), 1, sym__parameters, - STATE(1642), 1, + STATE(1732), 1, sym_lambda_parameters, - STATE(1574), 2, + STATE(1606), 2, sym_list_splat_pattern, sym_dictionary_splat_pattern, - STATE(1454), 6, + STATE(1410), 6, sym_tuple_pattern, sym_default_parameter, sym_typed_default_parameter, sym_typed_parameter, sym_positional_separator, sym_keyword_separator, - [59817] = 11, + [60264] = 11, ACTIONS(3), 1, sym_comment, - ACTIONS(2021), 1, + ACTIONS(2041), 1, anon_sym_LPAREN, - ACTIONS(2023), 1, + ACTIONS(2043), 1, anon_sym_STAR, - ACTIONS(2027), 1, + ACTIONS(2047), 1, anon_sym_STAR_STAR, - ACTIONS(2029), 1, + ACTIONS(2049), 1, anon_sym_SLASH, - ACTIONS(2051), 1, + ACTIONS(2063), 1, sym_identifier, - ACTIONS(2053), 1, + ACTIONS(2065), 1, anon_sym_RPAREN, - STATE(1511), 1, + STATE(1445), 1, sym_parameter, - STATE(1613), 1, + STATE(1682), 1, sym__parameters, - STATE(1510), 2, + STATE(1507), 2, sym_list_splat_pattern, sym_dictionary_splat_pattern, - STATE(1454), 6, + STATE(1410), 6, sym_tuple_pattern, sym_default_parameter, sym_typed_default_parameter, sym_typed_parameter, sym_positional_separator, sym_keyword_separator, - [59857] = 13, + [60304] = 13, ACTIONS(3), 1, sym_comment, ACTIONS(315), 1, sym__string_start, ACTIONS(317), 1, sym__template_string_start, - ACTIONS(1864), 1, + ACTIONS(1884), 1, anon_sym_DASH, - ACTIONS(1872), 1, + ACTIONS(1892), 1, sym_integer, - ACTIONS(1874), 1, + ACTIONS(1894), 1, sym_float, - ACTIONS(1949), 1, + ACTIONS(1987), 1, sym_identifier, - STATE(1314), 1, + STATE(1369), 1, sym_string, - STATE(1315), 1, + STATE(1373), 1, sym_template_string, - STATE(1586), 1, + STATE(1557), 1, sym_match_key_value_pattern, - STATE(1168), 2, + STATE(1116), 2, sym_concatenated_string, sym_concatenated_template_string, - STATE(1658), 2, + STATE(1652), 2, sym_match_literal_pattern, sym_match_value_pattern, - ACTIONS(1876), 3, + ACTIONS(1896), 3, sym_true, sym_false, sym_none, - [59901] = 10, + [60348] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2021), 1, - anon_sym_LPAREN, - ACTIONS(2023), 1, - anon_sym_STAR, - ACTIONS(2027), 1, - anon_sym_STAR_STAR, - ACTIONS(2029), 1, - anon_sym_SLASH, - ACTIONS(2051), 1, + ACTIONS(2033), 1, + anon_sym_COLON, + ACTIONS(2035), 1, + anon_sym_EQ, + ACTIONS(2037), 13, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_AT_EQ, + anon_sym_SLASH_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_STAR_STAR_EQ, + anon_sym_GT_GT_EQ, + anon_sym_LT_LT_EQ, + anon_sym_AMP_EQ, + anon_sym_CARET_EQ, + anon_sym_PIPE_EQ, + [60373] = 10, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2041), 1, + anon_sym_LPAREN, + ACTIONS(2043), 1, + anon_sym_STAR, + ACTIONS(2047), 1, + anon_sym_STAR_STAR, + ACTIONS(2049), 1, + anon_sym_SLASH, + ACTIONS(2063), 1, sym_identifier, - ACTIONS(2055), 1, + ACTIONS(2067), 1, anon_sym_RPAREN, - STATE(1383), 1, + STATE(1437), 1, sym_parameter, - STATE(1510), 2, + STATE(1507), 2, sym_list_splat_pattern, sym_dictionary_splat_pattern, - STATE(1454), 6, + STATE(1410), 6, sym_tuple_pattern, sym_default_parameter, sym_typed_default_parameter, sym_typed_parameter, sym_positional_separator, sym_keyword_separator, - [59938] = 10, + [60410] = 10, ACTIONS(3), 1, sym_comment, - ACTIONS(2019), 1, + ACTIONS(2039), 1, sym_identifier, - ACTIONS(2021), 1, + ACTIONS(2041), 1, anon_sym_LPAREN, - ACTIONS(2023), 1, + ACTIONS(2043), 1, anon_sym_STAR, - ACTIONS(2027), 1, + ACTIONS(2047), 1, anon_sym_STAR_STAR, - ACTIONS(2029), 1, + ACTIONS(2049), 1, anon_sym_SLASH, - ACTIONS(2055), 1, + ACTIONS(2067), 1, anon_sym_COLON, - STATE(1383), 1, + STATE(1437), 1, sym_parameter, - STATE(1574), 2, + STATE(1606), 2, sym_list_splat_pattern, sym_dictionary_splat_pattern, - STATE(1454), 6, + STATE(1410), 6, sym_tuple_pattern, sym_default_parameter, sym_typed_default_parameter, sym_typed_parameter, sym_positional_separator, sym_keyword_separator, - [59975] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2037), 1, - anon_sym_COLON, - ACTIONS(2039), 1, - anon_sym_EQ, - ACTIONS(2041), 13, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_STAR_EQ, - anon_sym_SLASH_EQ, - anon_sym_AT_EQ, - anon_sym_SLASH_SLASH_EQ, - anon_sym_PERCENT_EQ, - anon_sym_STAR_STAR_EQ, - anon_sym_GT_GT_EQ, - anon_sym_LT_LT_EQ, - anon_sym_AMP_EQ, - anon_sym_CARET_EQ, - anon_sym_PIPE_EQ, - [60000] = 10, + [60447] = 10, ACTIONS(3), 1, sym_comment, - ACTIONS(2021), 1, + ACTIONS(2041), 1, anon_sym_LPAREN, - ACTIONS(2023), 1, + ACTIONS(2043), 1, anon_sym_STAR, - ACTIONS(2027), 1, + ACTIONS(2047), 1, anon_sym_STAR_STAR, - ACTIONS(2029), 1, + ACTIONS(2049), 1, anon_sym_SLASH, - ACTIONS(2051), 1, + ACTIONS(2063), 1, sym_identifier, - ACTIONS(2057), 1, + ACTIONS(2069), 1, anon_sym_RPAREN, - STATE(1383), 1, + STATE(1437), 1, sym_parameter, - STATE(1510), 2, + STATE(1507), 2, sym_list_splat_pattern, sym_dictionary_splat_pattern, - STATE(1454), 6, + STATE(1410), 6, sym_tuple_pattern, sym_default_parameter, sym_typed_default_parameter, sym_typed_parameter, sym_positional_separator, sym_keyword_separator, - [60037] = 10, + [60484] = 10, ACTIONS(3), 1, sym_comment, - ACTIONS(2019), 1, + ACTIONS(2039), 1, sym_identifier, - ACTIONS(2021), 1, + ACTIONS(2041), 1, anon_sym_LPAREN, - ACTIONS(2023), 1, + ACTIONS(2043), 1, anon_sym_STAR, - ACTIONS(2027), 1, + ACTIONS(2047), 1, anon_sym_STAR_STAR, - ACTIONS(2029), 1, + ACTIONS(2049), 1, anon_sym_SLASH, - ACTIONS(2057), 1, + ACTIONS(2069), 1, anon_sym_COLON, - STATE(1383), 1, + STATE(1437), 1, sym_parameter, - STATE(1574), 2, + STATE(1606), 2, sym_list_splat_pattern, sym_dictionary_splat_pattern, - STATE(1454), 6, + STATE(1410), 6, sym_tuple_pattern, sym_default_parameter, sym_typed_default_parameter, sym_typed_parameter, sym_positional_separator, sym_keyword_separator, - [60074] = 9, + [60521] = 9, ACTIONS(3), 1, sym_comment, - ACTIONS(2021), 1, + ACTIONS(2041), 1, anon_sym_LPAREN, - ACTIONS(2023), 1, + ACTIONS(2043), 1, anon_sym_STAR, - ACTIONS(2027), 1, + ACTIONS(2047), 1, anon_sym_STAR_STAR, - ACTIONS(2029), 1, + ACTIONS(2049), 1, anon_sym_SLASH, - ACTIONS(2051), 1, + ACTIONS(2063), 1, sym_identifier, - STATE(1383), 1, + STATE(1437), 1, sym_parameter, - STATE(1510), 2, + STATE(1507), 2, sym_list_splat_pattern, sym_dictionary_splat_pattern, - STATE(1454), 6, + STATE(1410), 6, sym_tuple_pattern, sym_default_parameter, sym_typed_default_parameter, sym_typed_parameter, sym_positional_separator, sym_keyword_separator, - [60108] = 9, + [60555] = 9, ACTIONS(3), 1, sym_comment, - ACTIONS(2019), 1, + ACTIONS(2039), 1, sym_identifier, - ACTIONS(2021), 1, + ACTIONS(2041), 1, anon_sym_LPAREN, - ACTIONS(2023), 1, + ACTIONS(2043), 1, anon_sym_STAR, - ACTIONS(2027), 1, + ACTIONS(2047), 1, anon_sym_STAR_STAR, - ACTIONS(2029), 1, + ACTIONS(2049), 1, anon_sym_SLASH, - STATE(1383), 1, + STATE(1437), 1, sym_parameter, - STATE(1574), 2, + STATE(1606), 2, sym_list_splat_pattern, sym_dictionary_splat_pattern, - STATE(1454), 6, + STATE(1410), 6, sym_tuple_pattern, sym_default_parameter, sym_typed_default_parameter, sym_typed_parameter, sym_positional_separator, sym_keyword_separator, - [60142] = 3, + [60589] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(2061), 1, + ACTIONS(1574), 1, anon_sym_as, - ACTIONS(2059), 12, + ACTIONS(1558), 12, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_if, @@ -74475,12 +74936,12 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_EQ, anon_sym_and, anon_sym_or, - [60163] = 3, + [60610] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1622), 1, + ACTIONS(2073), 1, anon_sym_as, - ACTIONS(1606), 12, + ACTIONS(2071), 12, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_if, @@ -74493,14 +74954,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_EQ, anon_sym_and, anon_sym_or, - [60184] = 4, + [60631] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2065), 1, + ACTIONS(2077), 1, anon_sym_DOT, - STATE(1033), 1, + STATE(1039), 1, aux_sym_match_value_pattern_repeat1, - ACTIONS(2063), 10, + ACTIONS(2075), 10, anon_sym_import, anon_sym_LPAREN, anon_sym_RPAREN, @@ -74511,55 +74972,63 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE, anon_sym_RBRACK, anon_sym_RBRACE, - [60206] = 9, - ACTIONS(2068), 1, + [60653] = 9, + ACTIONS(2080), 1, anon_sym_LBRACE2, - ACTIONS(2074), 1, + ACTIONS(2084), 1, anon_sym_BSLASH, - ACTIONS(2077), 1, + ACTIONS(2086), 1, sym_comment, - ACTIONS(2079), 1, + ACTIONS(2088), 1, sym__string_end, - STATE(1034), 1, + STATE(1056), 1, aux_sym_string_repeat1, - STATE(1254), 1, + STATE(1248), 1, sym_string_content, - STATE(1255), 1, + STATE(1252), 1, sym_interpolation, STATE(1149), 2, sym__not_escape_sequence, aux_sym_string_content_repeat1, - ACTIONS(2071), 3, + ACTIONS(2082), 3, sym__string_content, sym__escape_interpolation, sym_escape_sequence, - [60237] = 4, + [60684] = 12, ACTIONS(3), 1, sym_comment, - ACTIONS(656), 1, - sym__template_string_start, - STATE(760), 2, - sym_template_string, - aux_sym_concatenated_template_string_repeat1, - ACTIONS(2081), 8, - anon_sym_RPAREN, + ACTIONS(2090), 1, anon_sym_COMMA, - anon_sym_as, + ACTIONS(2092), 1, anon_sym_if, + ACTIONS(2094), 1, anon_sym_COLON, - anon_sym_PIPE, - anon_sym_RBRACK, + ACTIONS(2096), 1, + anon_sym_async, + ACTIONS(2098), 1, + anon_sym_for, + ACTIONS(2100), 1, anon_sym_RBRACE, - [60258] = 5, + ACTIONS(2102), 1, + anon_sym_and, + ACTIONS(2104), 1, + anon_sym_or, + STATE(1106), 1, + sym_for_in_clause, + STATE(1310), 1, + aux_sym__collection_elements_repeat1, + STATE(1676), 1, + sym__comprehension_clauses, + [60721] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2083), 1, + ACTIONS(2106), 1, anon_sym_DOT, - ACTIONS(2085), 1, + ACTIONS(2108), 1, anon_sym_LPAREN, - STATE(1033), 1, + STATE(1064), 1, aux_sym_match_value_pattern_repeat1, - ACTIONS(2087), 8, + ACTIONS(2110), 8, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_as, @@ -74568,437 +75037,475 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE, anon_sym_RBRACK, anon_sym_RBRACE, - [60281] = 9, - ACTIONS(2077), 1, + [60744] = 4, + ACTIONS(3), 1, sym_comment, - ACTIONS(2089), 1, + ACTIONS(666), 1, + sym__template_string_start, + STATE(750), 2, + sym_template_string, + aux_sym_concatenated_template_string_repeat1, + ACTIONS(2112), 8, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_as, + anon_sym_if, + anon_sym_COLON, + anon_sym_PIPE, + anon_sym_RBRACK, + anon_sym_RBRACE, + [60765] = 9, + ACTIONS(2080), 1, anon_sym_LBRACE2, - ACTIONS(2093), 1, + ACTIONS(2084), 1, anon_sym_BSLASH, - ACTIONS(2095), 1, - sym__string_end, - STATE(1039), 1, - aux_sym_string_repeat1, - STATE(1254), 1, - sym_string_content, - STATE(1255), 1, - sym_interpolation, - STATE(1149), 2, - sym__not_escape_sequence, - aux_sym_string_content_repeat1, - ACTIONS(2091), 3, - sym__string_content, - sym__escape_interpolation, - sym_escape_sequence, - [60312] = 9, - ACTIONS(2077), 1, + ACTIONS(2086), 1, sym_comment, - ACTIONS(2089), 1, - anon_sym_LBRACE2, - ACTIONS(2093), 1, - anon_sym_BSLASH, - ACTIONS(2097), 1, + ACTIONS(2114), 1, sym__string_end, - STATE(1040), 1, + STATE(1046), 1, aux_sym_string_repeat1, - STATE(1254), 1, + STATE(1248), 1, sym_string_content, - STATE(1255), 1, + STATE(1252), 1, sym_interpolation, STATE(1149), 2, sym__not_escape_sequence, aux_sym_string_content_repeat1, - ACTIONS(2091), 3, + ACTIONS(2082), 3, sym__string_content, sym__escape_interpolation, sym_escape_sequence, - [60343] = 9, - ACTIONS(2077), 1, + [60796] = 9, + ACTIONS(2086), 1, sym_comment, - ACTIONS(2089), 1, + ACTIONS(2116), 1, anon_sym_LBRACE2, - ACTIONS(2093), 1, + ACTIONS(2122), 1, anon_sym_BSLASH, - ACTIONS(2099), 1, + ACTIONS(2125), 1, sym__string_end, - STATE(1034), 1, + STATE(1045), 1, aux_sym_string_repeat1, - STATE(1254), 1, + STATE(1248), 1, sym_string_content, - STATE(1255), 1, + STATE(1252), 1, sym_interpolation, STATE(1149), 2, sym__not_escape_sequence, aux_sym_string_content_repeat1, - ACTIONS(2091), 3, + ACTIONS(2119), 3, sym__string_content, sym__escape_interpolation, sym_escape_sequence, - [60374] = 9, - ACTIONS(2077), 1, - sym_comment, - ACTIONS(2089), 1, + [60827] = 9, + ACTIONS(2080), 1, anon_sym_LBRACE2, - ACTIONS(2093), 1, + ACTIONS(2084), 1, anon_sym_BSLASH, - ACTIONS(2101), 1, + ACTIONS(2086), 1, + sym_comment, + ACTIONS(2127), 1, sym__string_end, - STATE(1034), 1, + STATE(1045), 1, aux_sym_string_repeat1, - STATE(1254), 1, + STATE(1248), 1, sym_string_content, - STATE(1255), 1, + STATE(1252), 1, sym_interpolation, STATE(1149), 2, sym__not_escape_sequence, aux_sym_string_content_repeat1, - ACTIONS(2091), 3, + ACTIONS(2082), 3, sym__string_content, sym__escape_interpolation, sym_escape_sequence, - [60405] = 12, + [60858] = 12, ACTIONS(3), 1, sym_comment, - ACTIONS(2103), 1, + ACTIONS(2090), 1, anon_sym_COMMA, - ACTIONS(2105), 1, + ACTIONS(2092), 1, anon_sym_if, - ACTIONS(2107), 1, + ACTIONS(2094), 1, anon_sym_COLON, - ACTIONS(2109), 1, + ACTIONS(2096), 1, anon_sym_async, - ACTIONS(2111), 1, + ACTIONS(2098), 1, anon_sym_for, - ACTIONS(2113), 1, + ACTIONS(2100), 1, anon_sym_RBRACE, - ACTIONS(2115), 1, + ACTIONS(2102), 1, anon_sym_and, - ACTIONS(2117), 1, + ACTIONS(2104), 1, anon_sym_or, - STATE(1091), 1, + STATE(1106), 1, sym_for_in_clause, - STATE(1267), 1, + STATE(1310), 1, aux_sym__collection_elements_repeat1, - STATE(1719), 1, + STATE(1728), 1, sym__comprehension_clauses, - [60442] = 9, - ACTIONS(2077), 1, + [60895] = 12, + ACTIONS(3), 1, sym_comment, - ACTIONS(2089), 1, + ACTIONS(2096), 1, + anon_sym_async, + ACTIONS(2098), 1, + anon_sym_for, + ACTIONS(2129), 1, + anon_sym_RPAREN, + ACTIONS(2131), 1, + anon_sym_COMMA, + ACTIONS(2134), 1, + anon_sym_as, + ACTIONS(2136), 1, + anon_sym_if, + ACTIONS(2138), 1, + anon_sym_and, + ACTIONS(2140), 1, + anon_sym_or, + STATE(1106), 1, + sym_for_in_clause, + STATE(1310), 1, + aux_sym__collection_elements_repeat1, + STATE(1711), 1, + sym__comprehension_clauses, + [60932] = 9, + ACTIONS(2080), 1, anon_sym_LBRACE2, - ACTIONS(2093), 1, + ACTIONS(2084), 1, anon_sym_BSLASH, - ACTIONS(2119), 1, + ACTIONS(2086), 1, + sym_comment, + ACTIONS(2142), 1, sym__string_end, - STATE(1054), 1, + STATE(1051), 1, aux_sym_string_repeat1, - STATE(1254), 1, + STATE(1248), 1, sym_string_content, - STATE(1255), 1, + STATE(1252), 1, sym_interpolation, STATE(1149), 2, sym__not_escape_sequence, aux_sym_string_content_repeat1, - ACTIONS(2091), 3, + ACTIONS(2082), 3, sym__string_content, sym__escape_interpolation, sym_escape_sequence, - [60473] = 9, - ACTIONS(2077), 1, - sym_comment, - ACTIONS(2089), 1, + [60963] = 9, + ACTIONS(2080), 1, anon_sym_LBRACE2, - ACTIONS(2093), 1, + ACTIONS(2084), 1, anon_sym_BSLASH, - ACTIONS(2121), 1, + ACTIONS(2086), 1, + sym_comment, + ACTIONS(2144), 1, sym__string_end, - STATE(1034), 1, + STATE(1052), 1, aux_sym_string_repeat1, - STATE(1254), 1, + STATE(1248), 1, sym_string_content, - STATE(1255), 1, + STATE(1252), 1, sym_interpolation, STATE(1149), 2, sym__not_escape_sequence, aux_sym_string_content_repeat1, - ACTIONS(2091), 3, + ACTIONS(2082), 3, sym__string_content, sym__escape_interpolation, sym_escape_sequence, - [60504] = 9, - ACTIONS(2077), 1, - sym_comment, - ACTIONS(2089), 1, + [60994] = 9, + ACTIONS(2080), 1, anon_sym_LBRACE2, - ACTIONS(2093), 1, + ACTIONS(2084), 1, anon_sym_BSLASH, - ACTIONS(2123), 1, + ACTIONS(2086), 1, + sym_comment, + ACTIONS(2146), 1, sym__string_end, - STATE(1046), 1, + STATE(1045), 1, aux_sym_string_repeat1, - STATE(1254), 1, + STATE(1248), 1, sym_string_content, - STATE(1255), 1, + STATE(1252), 1, sym_interpolation, STATE(1149), 2, sym__not_escape_sequence, aux_sym_string_content_repeat1, - ACTIONS(2091), 3, + ACTIONS(2082), 3, sym__string_content, sym__escape_interpolation, sym_escape_sequence, - [60535] = 9, - ACTIONS(2077), 1, - sym_comment, - ACTIONS(2089), 1, + [61025] = 9, + ACTIONS(2080), 1, anon_sym_LBRACE2, - ACTIONS(2093), 1, + ACTIONS(2084), 1, anon_sym_BSLASH, - ACTIONS(2125), 1, + ACTIONS(2086), 1, + sym_comment, + ACTIONS(2148), 1, sym__string_end, - STATE(1034), 1, + STATE(1045), 1, aux_sym_string_repeat1, - STATE(1254), 1, + STATE(1248), 1, sym_string_content, - STATE(1255), 1, + STATE(1252), 1, sym_interpolation, STATE(1149), 2, sym__not_escape_sequence, aux_sym_string_content_repeat1, - ACTIONS(2091), 3, + ACTIONS(2082), 3, sym__string_content, sym__escape_interpolation, sym_escape_sequence, - [60566] = 9, - ACTIONS(2077), 1, + [61056] = 2, + ACTIONS(3), 1, sym_comment, - ACTIONS(2089), 1, + ACTIONS(2075), 11, + anon_sym_import, + anon_sym_DOT, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_as, + anon_sym_if, + anon_sym_COLON, + anon_sym_PIPE, + anon_sym_RBRACK, + anon_sym_RBRACE, + [61073] = 9, + ACTIONS(2080), 1, anon_sym_LBRACE2, - ACTIONS(2093), 1, + ACTIONS(2084), 1, anon_sym_BSLASH, - ACTIONS(2127), 1, + ACTIONS(2086), 1, + sym_comment, + ACTIONS(2150), 1, sym__string_end, - STATE(1034), 1, + STATE(1057), 1, aux_sym_string_repeat1, - STATE(1254), 1, + STATE(1248), 1, sym_string_content, - STATE(1255), 1, + STATE(1252), 1, sym_interpolation, STATE(1149), 2, sym__not_escape_sequence, aux_sym_string_content_repeat1, - ACTIONS(2091), 3, + ACTIONS(2082), 3, sym__string_content, sym__escape_interpolation, sym_escape_sequence, - [60597] = 9, - ACTIONS(2077), 1, - sym_comment, - ACTIONS(2089), 1, + [61104] = 9, + ACTIONS(2080), 1, anon_sym_LBRACE2, - ACTIONS(2093), 1, + ACTIONS(2084), 1, anon_sym_BSLASH, - ACTIONS(2129), 1, + ACTIONS(2086), 1, + sym_comment, + ACTIONS(2152), 1, sym__string_end, - STATE(1049), 1, + STATE(1058), 1, aux_sym_string_repeat1, - STATE(1254), 1, + STATE(1248), 1, sym_string_content, - STATE(1255), 1, + STATE(1252), 1, sym_interpolation, STATE(1149), 2, sym__not_escape_sequence, aux_sym_string_content_repeat1, - ACTIONS(2091), 3, + ACTIONS(2082), 3, sym__string_content, sym__escape_interpolation, sym_escape_sequence, - [60628] = 9, - ACTIONS(2077), 1, - sym_comment, - ACTIONS(2089), 1, + [61135] = 9, + ACTIONS(2080), 1, anon_sym_LBRACE2, - ACTIONS(2093), 1, + ACTIONS(2084), 1, anon_sym_BSLASH, - ACTIONS(2131), 1, + ACTIONS(2086), 1, + sym_comment, + ACTIONS(2154), 1, sym__string_end, - STATE(1050), 1, + STATE(1045), 1, aux_sym_string_repeat1, - STATE(1254), 1, + STATE(1248), 1, sym_string_content, - STATE(1255), 1, + STATE(1252), 1, sym_interpolation, STATE(1149), 2, sym__not_escape_sequence, aux_sym_string_content_repeat1, - ACTIONS(2091), 3, + ACTIONS(2082), 3, sym__string_content, sym__escape_interpolation, sym_escape_sequence, - [60659] = 9, - ACTIONS(2077), 1, - sym_comment, - ACTIONS(2089), 1, + [61166] = 9, + ACTIONS(2080), 1, anon_sym_LBRACE2, - ACTIONS(2093), 1, + ACTIONS(2084), 1, anon_sym_BSLASH, - ACTIONS(2133), 1, + ACTIONS(2086), 1, + sym_comment, + ACTIONS(2156), 1, sym__string_end, - STATE(1034), 1, + STATE(1045), 1, aux_sym_string_repeat1, - STATE(1254), 1, + STATE(1248), 1, sym_string_content, - STATE(1255), 1, + STATE(1252), 1, sym_interpolation, STATE(1149), 2, sym__not_escape_sequence, aux_sym_string_content_repeat1, - ACTIONS(2091), 3, + ACTIONS(2082), 3, sym__string_content, sym__escape_interpolation, sym_escape_sequence, - [60690] = 9, - ACTIONS(2077), 1, - sym_comment, - ACTIONS(2089), 1, + [61197] = 9, + ACTIONS(2080), 1, anon_sym_LBRACE2, - ACTIONS(2093), 1, + ACTIONS(2084), 1, anon_sym_BSLASH, - ACTIONS(2135), 1, + ACTIONS(2086), 1, + sym_comment, + ACTIONS(2158), 1, sym__string_end, - STATE(1034), 1, + STATE(1045), 1, aux_sym_string_repeat1, - STATE(1254), 1, + STATE(1248), 1, sym_string_content, - STATE(1255), 1, + STATE(1252), 1, sym_interpolation, STATE(1149), 2, sym__not_escape_sequence, aux_sym_string_content_repeat1, - ACTIONS(2091), 3, + ACTIONS(2082), 3, sym__string_content, sym__escape_interpolation, sym_escape_sequence, - [60721] = 9, - ACTIONS(2077), 1, - sym_comment, - ACTIONS(2089), 1, + [61228] = 9, + ACTIONS(2080), 1, anon_sym_LBRACE2, - ACTIONS(2093), 1, + ACTIONS(2084), 1, anon_sym_BSLASH, - ACTIONS(2137), 1, + ACTIONS(2086), 1, + sym_comment, + ACTIONS(2160), 1, sym__string_end, - STATE(1052), 1, + STATE(1065), 1, aux_sym_string_repeat1, - STATE(1254), 1, + STATE(1248), 1, sym_string_content, - STATE(1255), 1, + STATE(1252), 1, sym_interpolation, STATE(1149), 2, sym__not_escape_sequence, aux_sym_string_content_repeat1, - ACTIONS(2091), 3, + ACTIONS(2082), 3, sym__string_content, sym__escape_interpolation, sym_escape_sequence, - [60752] = 9, - ACTIONS(2077), 1, - sym_comment, - ACTIONS(2089), 1, + [61259] = 9, + ACTIONS(2080), 1, anon_sym_LBRACE2, - ACTIONS(2093), 1, + ACTIONS(2084), 1, anon_sym_BSLASH, - ACTIONS(2139), 1, + ACTIONS(2086), 1, + sym_comment, + ACTIONS(2162), 1, sym__string_end, - STATE(1034), 1, + STATE(1062), 1, aux_sym_string_repeat1, - STATE(1254), 1, + STATE(1248), 1, sym_string_content, - STATE(1255), 1, + STATE(1252), 1, sym_interpolation, STATE(1149), 2, sym__not_escape_sequence, aux_sym_string_content_repeat1, - ACTIONS(2091), 3, + ACTIONS(2082), 3, sym__string_content, sym__escape_interpolation, sym_escape_sequence, - [60783] = 9, - ACTIONS(2077), 1, - sym_comment, - ACTIONS(2089), 1, + [61290] = 9, + ACTIONS(2080), 1, anon_sym_LBRACE2, - ACTIONS(2093), 1, + ACTIONS(2084), 1, anon_sym_BSLASH, - ACTIONS(2141), 1, + ACTIONS(2086), 1, + sym_comment, + ACTIONS(2164), 1, sym__string_end, - STATE(1043), 1, + STATE(1066), 1, aux_sym_string_repeat1, - STATE(1254), 1, + STATE(1248), 1, sym_string_content, - STATE(1255), 1, + STATE(1252), 1, sym_interpolation, STATE(1149), 2, sym__not_escape_sequence, aux_sym_string_content_repeat1, - ACTIONS(2091), 3, + ACTIONS(2082), 3, sym__string_content, sym__escape_interpolation, sym_escape_sequence, - [60814] = 9, - ACTIONS(2077), 1, - sym_comment, - ACTIONS(2089), 1, + [61321] = 9, + ACTIONS(2080), 1, anon_sym_LBRACE2, - ACTIONS(2093), 1, + ACTIONS(2084), 1, anon_sym_BSLASH, - ACTIONS(2143), 1, + ACTIONS(2086), 1, + sym_comment, + ACTIONS(2166), 1, sym__string_end, - STATE(1034), 1, + STATE(1045), 1, aux_sym_string_repeat1, - STATE(1254), 1, + STATE(1248), 1, sym_string_content, - STATE(1255), 1, + STATE(1252), 1, sym_interpolation, STATE(1149), 2, sym__not_escape_sequence, aux_sym_string_content_repeat1, - ACTIONS(2091), 3, + ACTIONS(2082), 3, sym__string_content, sym__escape_interpolation, sym_escape_sequence, - [60845] = 12, + [61352] = 12, ACTIONS(3), 1, sym_comment, - ACTIONS(2103), 1, + ACTIONS(2090), 1, anon_sym_COMMA, - ACTIONS(2105), 1, + ACTIONS(2092), 1, anon_sym_if, - ACTIONS(2107), 1, + ACTIONS(2094), 1, anon_sym_COLON, - ACTIONS(2109), 1, + ACTIONS(2096), 1, anon_sym_async, - ACTIONS(2111), 1, + ACTIONS(2098), 1, anon_sym_for, - ACTIONS(2113), 1, + ACTIONS(2100), 1, anon_sym_RBRACE, - ACTIONS(2115), 1, + ACTIONS(2102), 1, anon_sym_and, - ACTIONS(2117), 1, + ACTIONS(2104), 1, anon_sym_or, - STATE(1091), 1, + STATE(1106), 1, sym_for_in_clause, - STATE(1267), 1, + STATE(1310), 1, aux_sym__collection_elements_repeat1, - STATE(1672), 1, + STATE(1695), 1, sym__comprehension_clauses, - [60882] = 2, + [61389] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2063), 11, - anon_sym_import, + ACTIONS(2106), 1, anon_sym_DOT, + ACTIONS(2168), 1, anon_sym_LPAREN, + STATE(1039), 1, + aux_sym_match_value_pattern_repeat1, + ACTIONS(2170), 8, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_as, @@ -75007,108 +75514,84 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE, anon_sym_RBRACK, anon_sym_RBRACE, - [60899] = 12, - ACTIONS(3), 1, + [61412] = 9, + ACTIONS(2080), 1, + anon_sym_LBRACE2, + ACTIONS(2084), 1, + anon_sym_BSLASH, + ACTIONS(2086), 1, sym_comment, - ACTIONS(2109), 1, - anon_sym_async, - ACTIONS(2111), 1, - anon_sym_for, - ACTIONS(2145), 1, - anon_sym_RPAREN, - ACTIONS(2147), 1, - anon_sym_COMMA, - ACTIONS(2150), 1, - anon_sym_as, - ACTIONS(2152), 1, - anon_sym_if, - ACTIONS(2154), 1, - anon_sym_and, - ACTIONS(2156), 1, - anon_sym_or, - STATE(1091), 1, - sym_for_in_clause, - STATE(1267), 1, - aux_sym__collection_elements_repeat1, - STATE(1731), 1, - sym__comprehension_clauses, - [60936] = 12, - ACTIONS(3), 1, + ACTIONS(2172), 1, + sym__string_end, + STATE(1045), 1, + aux_sym_string_repeat1, + STATE(1248), 1, + sym_string_content, + STATE(1252), 1, + sym_interpolation, + STATE(1149), 2, + sym__not_escape_sequence, + aux_sym_string_content_repeat1, + ACTIONS(2082), 3, + sym__string_content, + sym__escape_interpolation, + sym_escape_sequence, + [61443] = 9, + ACTIONS(2080), 1, + anon_sym_LBRACE2, + ACTIONS(2084), 1, + anon_sym_BSLASH, + ACTIONS(2086), 1, sym_comment, - ACTIONS(2103), 1, - anon_sym_COMMA, - ACTIONS(2105), 1, - anon_sym_if, - ACTIONS(2107), 1, - anon_sym_COLON, - ACTIONS(2109), 1, - anon_sym_async, - ACTIONS(2111), 1, - anon_sym_for, - ACTIONS(2113), 1, - anon_sym_RBRACE, - ACTIONS(2115), 1, - anon_sym_and, - ACTIONS(2117), 1, - anon_sym_or, - STATE(1091), 1, - sym_for_in_clause, - STATE(1267), 1, - aux_sym__collection_elements_repeat1, - STATE(1603), 1, - sym__comprehension_clauses, - [60973] = 12, + ACTIONS(2174), 1, + sym__string_end, + STATE(1045), 1, + aux_sym_string_repeat1, + STATE(1248), 1, + sym_string_content, + STATE(1252), 1, + sym_interpolation, + STATE(1149), 2, + sym__not_escape_sequence, + aux_sym_string_content_repeat1, + ACTIONS(2082), 3, + sym__string_content, + sym__escape_interpolation, + sym_escape_sequence, + [61474] = 12, ACTIONS(3), 1, sym_comment, - ACTIONS(2103), 1, + ACTIONS(2090), 1, anon_sym_COMMA, - ACTIONS(2105), 1, + ACTIONS(2092), 1, anon_sym_if, - ACTIONS(2107), 1, + ACTIONS(2094), 1, anon_sym_COLON, - ACTIONS(2109), 1, + ACTIONS(2096), 1, anon_sym_async, - ACTIONS(2111), 1, + ACTIONS(2098), 1, anon_sym_for, - ACTIONS(2113), 1, + ACTIONS(2100), 1, anon_sym_RBRACE, - ACTIONS(2115), 1, + ACTIONS(2102), 1, anon_sym_and, - ACTIONS(2117), 1, + ACTIONS(2104), 1, anon_sym_or, - STATE(1091), 1, + STATE(1106), 1, sym_for_in_clause, - STATE(1267), 1, + STATE(1310), 1, aux_sym__collection_elements_repeat1, - STATE(1666), 1, + STATE(1717), 1, sym__comprehension_clauses, - [61010] = 5, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2083), 1, - anon_sym_DOT, - ACTIONS(2158), 1, - anon_sym_LPAREN, - STATE(1036), 1, - aux_sym_match_value_pattern_repeat1, - ACTIONS(2160), 8, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_as, - anon_sym_if, - anon_sym_COLON, - anon_sym_PIPE, - anon_sym_RBRACK, - anon_sym_RBRACE, - [61033] = 4, + [61511] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(654), 1, + ACTIONS(664), 1, sym__string_start, - STATE(759), 2, + STATE(749), 2, sym_string, aux_sym_concatenated_string_repeat1, - ACTIONS(2081), 8, + ACTIONS(2112), 8, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_as, @@ -75117,38 +75600,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE, anon_sym_RBRACK, anon_sym_RBRACE, - [61054] = 9, - ACTIONS(2077), 1, - sym_comment, - ACTIONS(2089), 1, - anon_sym_LBRACE2, - ACTIONS(2093), 1, - anon_sym_BSLASH, - ACTIONS(2162), 1, - sym__string_end, - STATE(1045), 1, - aux_sym_string_repeat1, - STATE(1254), 1, - sym_string_content, - STATE(1255), 1, - sym_interpolation, - STATE(1149), 2, - sym__not_escape_sequence, - aux_sym_string_content_repeat1, - ACTIONS(2091), 3, - sym__string_content, - sym__escape_interpolation, - sym_escape_sequence, - [61085] = 5, + [61532] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2154), 1, + ACTIONS(2138), 1, anon_sym_and, - ACTIONS(2156), 1, - anon_sym_or, - ACTIONS(2166), 1, + ACTIONS(2178), 1, anon_sym_as, - ACTIONS(2164), 7, + ACTIONS(2176), 8, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_if, @@ -75156,264 +75615,169 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_for, anon_sym_RBRACK, anon_sym_RBRACE, - [61107] = 11, + anon_sym_or, + [61552] = 11, ACTIONS(3), 1, sym_comment, - ACTIONS(2109), 1, + ACTIONS(2090), 1, + anon_sym_COMMA, + ACTIONS(2096), 1, anon_sym_async, - ACTIONS(2111), 1, + ACTIONS(2098), 1, anon_sym_for, - ACTIONS(2152), 1, + ACTIONS(2136), 1, anon_sym_if, - ACTIONS(2154), 1, + ACTIONS(2138), 1, anon_sym_and, - ACTIONS(2156), 1, + ACTIONS(2140), 1, anon_sym_or, - ACTIONS(2168), 1, + ACTIONS(2180), 1, anon_sym_RPAREN, - ACTIONS(2170), 1, - anon_sym_COMMA, - STATE(1091), 1, + STATE(1106), 1, sym_for_in_clause, - STATE(1400), 1, - aux_sym_argument_list_repeat1, - STATE(1652), 1, + STATE(1310), 1, + aux_sym__collection_elements_repeat1, + STATE(1628), 1, sym__comprehension_clauses, - [61141] = 6, + [61586] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2152), 1, - anon_sym_if, - ACTIONS(2154), 1, + ACTIONS(2182), 1, anon_sym_and, - ACTIONS(2156), 1, + ACTIONS(2184), 1, anon_sym_or, - ACTIONS(2174), 1, - anon_sym_as, - ACTIONS(2172), 6, + ACTIONS(2176), 8, anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_async, - anon_sym_for, - anon_sym_RBRACK, - anon_sym_RBRACE, - [61165] = 5, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2178), 1, anon_sym_if, - ACTIONS(2180), 1, - anon_sym_and, - ACTIONS(2182), 1, - anon_sym_or, - ACTIONS(2176), 7, - anon_sym_RPAREN, - anon_sym_COMMA, anon_sym_COLON, anon_sym_else, anon_sym_RBRACK, anon_sym_RBRACE, anon_sym_EQ, - [61187] = 5, + [61606] = 6, ACTIONS(3), 1, sym_comment, - ACTIONS(2154), 1, + ACTIONS(2136), 1, + anon_sym_if, + ACTIONS(2138), 1, anon_sym_and, - ACTIONS(2156), 1, + ACTIONS(2140), 1, anon_sym_or, - ACTIONS(2186), 1, + ACTIONS(2188), 1, anon_sym_as, - ACTIONS(2184), 7, + ACTIONS(2186), 6, anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_if, anon_sym_async, anon_sym_for, anon_sym_RBRACK, anon_sym_RBRACE, - [61209] = 11, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2103), 1, - anon_sym_COMMA, - ACTIONS(2109), 1, - anon_sym_async, - ACTIONS(2111), 1, - anon_sym_for, - ACTIONS(2152), 1, - anon_sym_if, - ACTIONS(2154), 1, - anon_sym_and, - ACTIONS(2156), 1, - anon_sym_or, - ACTIONS(2188), 1, - anon_sym_RPAREN, - STATE(1091), 1, - sym_for_in_clause, - STATE(1267), 1, - aux_sym__collection_elements_repeat1, - STATE(1652), 1, - sym__comprehension_clauses, - [61243] = 5, + [61630] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2178), 1, - anon_sym_if, - ACTIONS(2180), 1, + ACTIONS(2138), 1, anon_sym_and, - ACTIONS(2182), 1, + ACTIONS(2140), 1, anon_sym_or, - ACTIONS(2172), 7, + ACTIONS(2192), 1, + anon_sym_as, + ACTIONS(2190), 7, anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_COLON, - anon_sym_else, + anon_sym_if, + anon_sym_async, + anon_sym_for, anon_sym_RBRACK, anon_sym_RBRACE, - anon_sym_EQ, - [61265] = 11, + [61652] = 11, ACTIONS(3), 1, sym_comment, - ACTIONS(2103), 1, + ACTIONS(2090), 1, anon_sym_COMMA, - ACTIONS(2109), 1, + ACTIONS(2096), 1, anon_sym_async, - ACTIONS(2111), 1, + ACTIONS(2098), 1, anon_sym_for, - ACTIONS(2152), 1, + ACTIONS(2129), 1, + anon_sym_RPAREN, + ACTIONS(2136), 1, anon_sym_if, - ACTIONS(2154), 1, + ACTIONS(2138), 1, anon_sym_and, - ACTIONS(2156), 1, + ACTIONS(2140), 1, anon_sym_or, - ACTIONS(2190), 1, - anon_sym_RPAREN, - STATE(1091), 1, + STATE(1106), 1, sym_for_in_clause, - STATE(1267), 1, + STATE(1310), 1, aux_sym__collection_elements_repeat1, - STATE(1657), 1, + STATE(1711), 1, sym__comprehension_clauses, - [61299] = 11, + [61686] = 11, ACTIONS(3), 1, sym_comment, - ACTIONS(2109), 1, + ACTIONS(2096), 1, anon_sym_async, - ACTIONS(2111), 1, + ACTIONS(2098), 1, anon_sym_for, - ACTIONS(2152), 1, + ACTIONS(2136), 1, anon_sym_if, - ACTIONS(2154), 1, + ACTIONS(2138), 1, anon_sym_and, - ACTIONS(2156), 1, + ACTIONS(2140), 1, anon_sym_or, - ACTIONS(2192), 1, - anon_sym_RPAREN, ACTIONS(2194), 1, + anon_sym_RPAREN, + ACTIONS(2196), 1, anon_sym_COMMA, - STATE(1091), 1, + STATE(1106), 1, sym_for_in_clause, - STATE(1423), 1, + STATE(1476), 1, aux_sym_argument_list_repeat1, - STATE(1731), 1, + STATE(1673), 1, sym__comprehension_clauses, - [61333] = 6, + [61720] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2152), 1, - anon_sym_if, - ACTIONS(2154), 1, + ACTIONS(2182), 1, anon_sym_and, - ACTIONS(2156), 1, + ACTIONS(2184), 1, anon_sym_or, ACTIONS(2198), 1, - anon_sym_as, - ACTIONS(2196), 6, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_async, - anon_sym_for, - anon_sym_RBRACK, - anon_sym_RBRACE, - [61357] = 5, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2154), 1, - anon_sym_and, - ACTIONS(2156), 1, - anon_sym_or, - ACTIONS(2202), 1, - anon_sym_as, - ACTIONS(2200), 7, - anon_sym_RPAREN, - anon_sym_COMMA, anon_sym_if, - anon_sym_async, - anon_sym_for, - anon_sym_RBRACK, - anon_sym_RBRACE, - [61379] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2180), 1, - anon_sym_and, - ACTIONS(2182), 1, - anon_sym_or, - ACTIONS(2164), 8, + ACTIONS(2186), 7, anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_if, anon_sym_COLON, anon_sym_else, anon_sym_RBRACK, anon_sym_RBRACE, anon_sym_EQ, - [61399] = 11, + [61742] = 6, ACTIONS(3), 1, sym_comment, - ACTIONS(2109), 1, - anon_sym_async, - ACTIONS(2111), 1, - anon_sym_for, - ACTIONS(2152), 1, + ACTIONS(2136), 1, anon_sym_if, - ACTIONS(2154), 1, + ACTIONS(2138), 1, anon_sym_and, - ACTIONS(2156), 1, + ACTIONS(2140), 1, anon_sym_or, - ACTIONS(2204), 1, - anon_sym_RPAREN, - ACTIONS(2206), 1, - anon_sym_COMMA, - STATE(1091), 1, - sym_for_in_clause, - STATE(1448), 1, - aux_sym_argument_list_repeat1, - STATE(1657), 1, - sym__comprehension_clauses, - [61433] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2154), 1, - anon_sym_and, - ACTIONS(2166), 1, + ACTIONS(2202), 1, anon_sym_as, - ACTIONS(2164), 8, + ACTIONS(2200), 6, anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_if, anon_sym_async, anon_sym_for, anon_sym_RBRACK, anon_sym_RBRACE, - anon_sym_or, - [61453] = 3, + [61766] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(2210), 2, + ACTIONS(2206), 2, anon_sym_DASH, anon_sym_PLUS, - ACTIONS(2208), 8, + ACTIONS(2204), 8, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_as, @@ -75422,289 +75786,247 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE, anon_sym_RBRACK, anon_sym_RBRACE, - [61471] = 4, + [61784] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(2180), 1, - anon_sym_and, - ACTIONS(2182), 1, - anon_sym_or, - ACTIONS(2184), 8, + ACTIONS(2210), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(2208), 8, anon_sym_RPAREN, anon_sym_COMMA, + anon_sym_as, anon_sym_if, anon_sym_COLON, - anon_sym_else, + anon_sym_PIPE, anon_sym_RBRACK, anon_sym_RBRACE, - anon_sym_EQ, - [61491] = 11, + [61802] = 11, ACTIONS(3), 1, sym_comment, - ACTIONS(2103), 1, + ACTIONS(2090), 1, anon_sym_COMMA, - ACTIONS(2109), 1, + ACTIONS(2096), 1, anon_sym_async, - ACTIONS(2111), 1, + ACTIONS(2098), 1, anon_sym_for, - ACTIONS(2113), 1, + ACTIONS(2100), 1, anon_sym_RBRACK, - ACTIONS(2152), 1, + ACTIONS(2136), 1, anon_sym_if, - ACTIONS(2154), 1, + ACTIONS(2138), 1, anon_sym_and, - ACTIONS(2156), 1, + ACTIONS(2140), 1, anon_sym_or, - STATE(1091), 1, + STATE(1106), 1, sym_for_in_clause, - STATE(1267), 1, + STATE(1310), 1, aux_sym__collection_elements_repeat1, - STATE(1726), 1, + STATE(1754), 1, sym__comprehension_clauses, - [61525] = 5, + [61836] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2178), 1, - anon_sym_if, - ACTIONS(2180), 1, - anon_sym_and, ACTIONS(2182), 1, + anon_sym_and, + ACTIONS(2184), 1, anon_sym_or, - ACTIONS(2196), 7, + ACTIONS(2212), 8, anon_sym_RPAREN, anon_sym_COMMA, + anon_sym_if, anon_sym_COLON, anon_sym_else, anon_sym_RBRACK, anon_sym_RBRACE, anon_sym_EQ, - [61547] = 4, + [61856] = 6, ACTIONS(3), 1, sym_comment, - ACTIONS(2180), 1, + ACTIONS(2136), 1, + anon_sym_if, + ACTIONS(2138), 1, anon_sym_and, - ACTIONS(2182), 1, + ACTIONS(2140), 1, anon_sym_or, - ACTIONS(2200), 8, + ACTIONS(2216), 1, + anon_sym_as, + ACTIONS(2214), 6, anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_if, - anon_sym_COLON, - anon_sym_else, + anon_sym_async, + anon_sym_for, anon_sym_RBRACK, anon_sym_RBRACE, - anon_sym_EQ, - [61567] = 6, + [61880] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2152), 1, - anon_sym_if, - ACTIONS(2154), 1, + ACTIONS(2138), 1, anon_sym_and, - ACTIONS(2156), 1, + ACTIONS(2140), 1, anon_sym_or, - ACTIONS(2212), 1, + ACTIONS(2178), 1, anon_sym_as, - ACTIONS(2176), 6, + ACTIONS(2176), 7, anon_sym_RPAREN, anon_sym_COMMA, + anon_sym_if, anon_sym_async, anon_sym_for, anon_sym_RBRACK, anon_sym_RBRACE, - [61591] = 11, + [61902] = 11, ACTIONS(3), 1, sym_comment, - ACTIONS(2103), 1, + ACTIONS(2090), 1, anon_sym_COMMA, - ACTIONS(2109), 1, + ACTIONS(2096), 1, anon_sym_async, - ACTIONS(2111), 1, + ACTIONS(2098), 1, anon_sym_for, - ACTIONS(2152), 1, + ACTIONS(2136), 1, anon_sym_if, - ACTIONS(2154), 1, + ACTIONS(2138), 1, anon_sym_and, - ACTIONS(2156), 1, + ACTIONS(2140), 1, anon_sym_or, - ACTIONS(2214), 1, + ACTIONS(2218), 1, anon_sym_RPAREN, - STATE(1091), 1, + STATE(1106), 1, sym_for_in_clause, - STATE(1267), 1, + STATE(1310), 1, aux_sym__collection_elements_repeat1, - STATE(1670), 1, + STATE(1673), 1, sym__comprehension_clauses, - [61625] = 11, + [61936] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2103), 1, - anon_sym_COMMA, - ACTIONS(2109), 1, - anon_sym_async, - ACTIONS(2111), 1, - anon_sym_for, - ACTIONS(2113), 1, - anon_sym_RBRACK, - ACTIONS(2152), 1, - anon_sym_if, - ACTIONS(2154), 1, + ACTIONS(2182), 1, anon_sym_and, - ACTIONS(2156), 1, + ACTIONS(2184), 1, anon_sym_or, - STATE(1091), 1, - sym_for_in_clause, - STATE(1267), 1, - aux_sym__collection_elements_repeat1, - STATE(1686), 1, - sym__comprehension_clauses, - [61659] = 11, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2103), 1, + ACTIONS(2198), 1, + anon_sym_if, + ACTIONS(2200), 7, + anon_sym_RPAREN, anon_sym_COMMA, - ACTIONS(2109), 1, - anon_sym_async, - ACTIONS(2111), 1, - anon_sym_for, - ACTIONS(2113), 1, + anon_sym_COLON, + anon_sym_else, anon_sym_RBRACK, - ACTIONS(2152), 1, - anon_sym_if, - ACTIONS(2154), 1, - anon_sym_and, - ACTIONS(2156), 1, - anon_sym_or, - STATE(1091), 1, - sym_for_in_clause, - STATE(1267), 1, - aux_sym__collection_elements_repeat1, - STATE(1732), 1, - sym__comprehension_clauses, - [61693] = 11, + anon_sym_RBRACE, + anon_sym_EQ, + [61958] = 11, ACTIONS(3), 1, sym_comment, - ACTIONS(2103), 1, + ACTIONS(2090), 1, anon_sym_COMMA, - ACTIONS(2109), 1, + ACTIONS(2096), 1, anon_sym_async, - ACTIONS(2111), 1, + ACTIONS(2098), 1, anon_sym_for, - ACTIONS(2113), 1, - anon_sym_RBRACK, - ACTIONS(2152), 1, + ACTIONS(2136), 1, anon_sym_if, - ACTIONS(2154), 1, + ACTIONS(2138), 1, anon_sym_and, - ACTIONS(2156), 1, + ACTIONS(2140), 1, anon_sym_or, - STATE(1091), 1, + ACTIONS(2220), 1, + anon_sym_RPAREN, + STATE(1106), 1, sym_for_in_clause, - STATE(1267), 1, + STATE(1310), 1, aux_sym__collection_elements_repeat1, - STATE(1659), 1, + STATE(1618), 1, sym__comprehension_clauses, - [61727] = 11, + [61992] = 11, ACTIONS(3), 1, sym_comment, - ACTIONS(2109), 1, + ACTIONS(2096), 1, anon_sym_async, - ACTIONS(2111), 1, + ACTIONS(2098), 1, anon_sym_for, - ACTIONS(2152), 1, + ACTIONS(2136), 1, anon_sym_if, - ACTIONS(2154), 1, + ACTIONS(2138), 1, anon_sym_and, - ACTIONS(2156), 1, + ACTIONS(2140), 1, anon_sym_or, - ACTIONS(2216), 1, + ACTIONS(2222), 1, anon_sym_RPAREN, - ACTIONS(2218), 1, + ACTIONS(2224), 1, anon_sym_COMMA, - STATE(1091), 1, + STATE(1106), 1, sym_for_in_clause, STATE(1441), 1, aux_sym_argument_list_repeat1, - STATE(1670), 1, + STATE(1628), 1, sym__comprehension_clauses, - [61761] = 3, + [62026] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2222), 2, - anon_sym_DASH, - anon_sym_PLUS, - ACTIONS(2220), 8, + ACTIONS(2182), 1, + anon_sym_and, + ACTIONS(2184), 1, + anon_sym_or, + ACTIONS(2190), 8, anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_as, anon_sym_if, anon_sym_COLON, - anon_sym_PIPE, + anon_sym_else, anon_sym_RBRACK, anon_sym_RBRACE, - [61779] = 3, + anon_sym_EQ, + [62046] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2180), 1, + ACTIONS(2182), 1, anon_sym_and, - ACTIONS(2164), 9, + ACTIONS(2184), 1, + anon_sym_or, + ACTIONS(2198), 1, + anon_sym_if, + ACTIONS(2214), 7, anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_if, anon_sym_COLON, anon_sym_else, anon_sym_RBRACK, anon_sym_RBRACE, anon_sym_EQ, - anon_sym_or, - [61797] = 11, + [62068] = 11, ACTIONS(3), 1, sym_comment, - ACTIONS(2103), 1, + ACTIONS(2090), 1, anon_sym_COMMA, - ACTIONS(2109), 1, + ACTIONS(2096), 1, anon_sym_async, - ACTIONS(2111), 1, + ACTIONS(2098), 1, anon_sym_for, - ACTIONS(2145), 1, - anon_sym_RPAREN, - ACTIONS(2152), 1, + ACTIONS(2100), 1, + anon_sym_RBRACK, + ACTIONS(2136), 1, anon_sym_if, - ACTIONS(2154), 1, + ACTIONS(2138), 1, anon_sym_and, - ACTIONS(2156), 1, + ACTIONS(2140), 1, anon_sym_or, - STATE(1091), 1, + STATE(1106), 1, sym_for_in_clause, - STATE(1267), 1, + STATE(1310), 1, aux_sym__collection_elements_repeat1, - STATE(1731), 1, + STATE(1713), 1, sym__comprehension_clauses, - [61831] = 6, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2109), 1, - anon_sym_async, - ACTIONS(2111), 1, - anon_sym_for, - ACTIONS(2226), 1, - anon_sym_if, - ACTIONS(2224), 3, - anon_sym_RPAREN, - anon_sym_RBRACK, - anon_sym_RBRACE, - STATE(1095), 3, - sym_for_in_clause, - sym_if_clause, - aux_sym__comprehension_clauses_repeat1, - [61854] = 4, + [62102] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2154), 1, + ACTIONS(2138), 1, anon_sym_and, - ACTIONS(2156), 1, + ACTIONS(2140), 1, anon_sym_or, - ACTIONS(2228), 7, + ACTIONS(2226), 1, + anon_sym_as, + ACTIONS(2212), 7, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_if, @@ -75712,80 +76034,121 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_for, anon_sym_RBRACK, anon_sym_RBRACE, - [61873] = 4, + [62124] = 11, ACTIONS(3), 1, sym_comment, - ACTIONS(2232), 1, - anon_sym_PIPE, - STATE(1100), 1, - aux_sym_match_or_pattern_repeat1, - ACTIONS(2230), 7, - anon_sym_RPAREN, + ACTIONS(2090), 1, anon_sym_COMMA, - anon_sym_as, - anon_sym_if, - anon_sym_COLON, + ACTIONS(2096), 1, + anon_sym_async, + ACTIONS(2098), 1, + anon_sym_for, + ACTIONS(2100), 1, anon_sym_RBRACK, - anon_sym_RBRACE, - [61892] = 5, + ACTIONS(2136), 1, + anon_sym_if, + ACTIONS(2138), 1, + anon_sym_and, + ACTIONS(2140), 1, + anon_sym_or, + STATE(1106), 1, + sym_for_in_clause, + STATE(1310), 1, + aux_sym__collection_elements_repeat1, + STATE(1675), 1, + sym__comprehension_clauses, + [62158] = 11, ACTIONS(3), 1, sym_comment, - ACTIONS(2178), 1, + ACTIONS(2096), 1, + anon_sym_async, + ACTIONS(2098), 1, + anon_sym_for, + ACTIONS(2136), 1, anon_sym_if, - ACTIONS(2180), 1, + ACTIONS(2138), 1, anon_sym_and, - ACTIONS(2182), 1, + ACTIONS(2140), 1, anon_sym_or, - ACTIONS(2234), 6, + ACTIONS(2228), 1, anon_sym_RPAREN, + ACTIONS(2230), 1, anon_sym_COMMA, - anon_sym_COLON, - anon_sym_RBRACK, - anon_sym_RBRACE, - anon_sym_EQ, - [61913] = 6, + STATE(1106), 1, + sym_for_in_clause, + STATE(1459), 1, + aux_sym_argument_list_repeat1, + STATE(1711), 1, + sym__comprehension_clauses, + [62192] = 11, ACTIONS(3), 1, sym_comment, - ACTIONS(2109), 1, + ACTIONS(2096), 1, anon_sym_async, - ACTIONS(2111), 1, + ACTIONS(2098), 1, anon_sym_for, - ACTIONS(2226), 1, + ACTIONS(2136), 1, anon_sym_if, - ACTIONS(2236), 3, + ACTIONS(2138), 1, + anon_sym_and, + ACTIONS(2140), 1, + anon_sym_or, + ACTIONS(2232), 1, anon_sym_RPAREN, - anon_sym_RBRACK, - anon_sym_RBRACE, - STATE(1101), 3, + ACTIONS(2234), 1, + anon_sym_COMMA, + STATE(1106), 1, sym_for_in_clause, - sym_if_clause, - aux_sym__comprehension_clauses_repeat1, - [61936] = 7, + STATE(1526), 1, + aux_sym_argument_list_repeat1, + STATE(1618), 1, + sym__comprehension_clauses, + [62226] = 11, ACTIONS(3), 1, sym_comment, - ACTIONS(2238), 1, + ACTIONS(2090), 1, anon_sym_COMMA, - ACTIONS(2240), 1, + ACTIONS(2096), 1, + anon_sym_async, + ACTIONS(2098), 1, + anon_sym_for, + ACTIONS(2100), 1, + anon_sym_RBRACK, + ACTIONS(2136), 1, anon_sym_if, - ACTIONS(2244), 1, + ACTIONS(2138), 1, anon_sym_and, - ACTIONS(2246), 1, + ACTIONS(2140), 1, anon_sym_or, - STATE(1220), 1, - aux_sym_expression_list_repeat1, - ACTIONS(2242), 4, + STATE(1106), 1, + sym_for_in_clause, + STATE(1310), 1, + aux_sym__collection_elements_repeat1, + STATE(1722), 1, + sym__comprehension_clauses, + [62260] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2182), 1, + anon_sym_and, + ACTIONS(2176), 9, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_if, + anon_sym_COLON, + anon_sym_else, + anon_sym_RBRACK, anon_sym_RBRACE, anon_sym_EQ, - anon_sym_COLON2, - sym_type_conversion, - [61961] = 4, + anon_sym_or, + [62278] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2154), 1, + ACTIONS(2138), 1, anon_sym_and, - ACTIONS(2156), 1, + ACTIONS(2140), 1, anon_sym_or, - ACTIONS(2228), 7, + ACTIONS(2236), 7, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_if, @@ -75793,29 +76156,30 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_for, anon_sym_RBRACK, anon_sym_RBRACE, - [61980] = 4, + [62297] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2232), 1, - anon_sym_PIPE, - STATE(1093), 1, - aux_sym_match_or_pattern_repeat1, - ACTIONS(2248), 7, + ACTIONS(2136), 1, + anon_sym_if, + ACTIONS(2138), 1, + anon_sym_and, + ACTIONS(2140), 1, + anon_sym_or, + ACTIONS(2238), 6, anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_as, - anon_sym_if, - anon_sym_COLON, + anon_sym_async, + anon_sym_for, anon_sym_RBRACK, anon_sym_RBRACE, - [61999] = 4, + [62318] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2154), 1, + ACTIONS(2138), 1, anon_sym_and, - ACTIONS(2156), 1, + ACTIONS(2140), 1, anon_sym_or, - ACTIONS(2228), 7, + ACTIONS(2236), 7, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_if, @@ -75823,14 +76187,31 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_for, anon_sym_RBRACK, anon_sym_RBRACE, - [62018] = 4, + [62337] = 6, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2242), 1, + anon_sym_if, + ACTIONS(2245), 1, + anon_sym_async, + ACTIONS(2248), 1, + anon_sym_for, + ACTIONS(2240), 3, + anon_sym_RPAREN, + anon_sym_RBRACK, + anon_sym_RBRACE, + STATE(1100), 3, + sym_for_in_clause, + sym_if_clause, + aux_sym__comprehension_clauses_repeat1, + [62360] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2252), 1, + ACTIONS(2253), 1, anon_sym_PIPE, - STATE(1100), 1, + STATE(1105), 1, aux_sym_match_or_pattern_repeat1, - ACTIONS(2250), 7, + ACTIONS(2251), 7, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_as, @@ -75838,117 +76219,141 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_COLON, anon_sym_RBRACK, anon_sym_RBRACE, - [62037] = 6, + [62379] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(2257), 1, - anon_sym_if, - ACTIONS(2260), 1, - anon_sym_async, - ACTIONS(2263), 1, - anon_sym_for, - ACTIONS(2255), 3, + anon_sym_PIPE, + STATE(1102), 1, + aux_sym_match_or_pattern_repeat1, + ACTIONS(2255), 7, anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_as, + anon_sym_if, + anon_sym_COLON, anon_sym_RBRACK, anon_sym_RBRACE, - STATE(1101), 3, - sym_for_in_clause, - sym_if_clause, - aux_sym__comprehension_clauses_repeat1, - [62060] = 7, + [62398] = 7, ACTIONS(3), 1, sym_comment, - ACTIONS(2238), 1, + ACTIONS(2260), 1, anon_sym_COMMA, - ACTIONS(2240), 1, + ACTIONS(2262), 1, anon_sym_if, - ACTIONS(2244), 1, + ACTIONS(2266), 1, anon_sym_and, - ACTIONS(2246), 1, + ACTIONS(2268), 1, anon_sym_or, - STATE(1220), 1, + STATE(1274), 1, aux_sym_expression_list_repeat1, - ACTIONS(2266), 4, + ACTIONS(2264), 4, anon_sym_RBRACE, anon_sym_EQ, anon_sym_COLON2, sym_type_conversion, - [62085] = 2, + [62423] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2268), 8, + ACTIONS(2138), 1, + anon_sym_and, + ACTIONS(2140), 1, + anon_sym_or, + ACTIONS(2236), 7, anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_as, anon_sym_if, - anon_sym_COLON, - anon_sym_PIPE, + anon_sym_async, + anon_sym_for, anon_sym_RBRACK, anon_sym_RBRACE, - [62099] = 2, + [62442] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1606), 8, + ACTIONS(2253), 1, + anon_sym_PIPE, + STATE(1102), 1, + aux_sym_match_or_pattern_repeat1, + ACTIONS(2270), 7, + anon_sym_RPAREN, anon_sym_COMMA, + anon_sym_as, anon_sym_if, + anon_sym_COLON, + anon_sym_RBRACK, anon_sym_RBRACE, - anon_sym_EQ, - anon_sym_and, - anon_sym_or, - anon_sym_COLON2, - sym_type_conversion, - [62113] = 2, + [62461] = 6, ACTIONS(3), 1, sym_comment, - ACTIONS(2270), 8, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_as, + ACTIONS(2096), 1, + anon_sym_async, + ACTIONS(2098), 1, + anon_sym_for, + ACTIONS(2274), 1, anon_sym_if, - anon_sym_COLON, - anon_sym_PIPE, + ACTIONS(2272), 3, + anon_sym_RPAREN, anon_sym_RBRACK, anon_sym_RBRACE, - [62127] = 2, + STATE(1108), 3, + sym_for_in_clause, + sym_if_clause, + aux_sym__comprehension_clauses_repeat1, + [62484] = 7, ACTIONS(3), 1, sym_comment, - ACTIONS(2059), 8, + ACTIONS(2260), 1, anon_sym_COMMA, + ACTIONS(2262), 1, anon_sym_if, - anon_sym_RBRACE, - anon_sym_EQ, + ACTIONS(2266), 1, anon_sym_and, + ACTIONS(2268), 1, anon_sym_or, + STATE(1274), 1, + aux_sym_expression_list_repeat1, + ACTIONS(2276), 4, + anon_sym_RBRACE, + anon_sym_EQ, anon_sym_COLON2, sym_type_conversion, - [62141] = 2, + [62509] = 6, ACTIONS(3), 1, sym_comment, - ACTIONS(2272), 8, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_as, + ACTIONS(2096), 1, + anon_sym_async, + ACTIONS(2098), 1, + anon_sym_for, + ACTIONS(2274), 1, anon_sym_if, - anon_sym_COLON, - anon_sym_PIPE, + ACTIONS(2278), 3, + anon_sym_RPAREN, anon_sym_RBRACK, anon_sym_RBRACE, - [62155] = 2, + STATE(1100), 3, + sym_for_in_clause, + sym_if_clause, + aux_sym__comprehension_clauses_repeat1, + [62532] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2274), 8, + ACTIONS(2182), 1, + anon_sym_and, + ACTIONS(2184), 1, + anon_sym_or, + ACTIONS(2198), 1, + anon_sym_if, + ACTIONS(2238), 6, anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_as, - anon_sym_if, anon_sym_COLON, - anon_sym_PIPE, anon_sym_RBRACK, anon_sym_RBRACE, - [62169] = 2, + anon_sym_EQ, + [62553] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2276), 8, + ACTIONS(2280), 8, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_as, @@ -75957,10 +76362,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE, anon_sym_RBRACK, anon_sym_RBRACE, - [62183] = 2, + [62567] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2278), 8, + ACTIONS(2282), 8, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_as, @@ -75969,54 +76374,38 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE, anon_sym_RBRACK, anon_sym_RBRACE, - [62197] = 6, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2083), 1, - anon_sym_DOT, - ACTIONS(2158), 1, - anon_sym_LPAREN, - ACTIONS(2280), 1, - anon_sym_EQ, - STATE(1036), 1, - aux_sym_match_value_pattern_repeat1, - ACTIONS(2160), 4, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_as, - anon_sym_PIPE, - [62219] = 4, + [62581] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(2284), 1, + anon_sym_and, + ACTIONS(2286), 1, + anon_sym_or, + ACTIONS(2176), 6, + sym__newline, + anon_sym_from, anon_sym_COMMA, - STATE(1113), 1, - aux_sym_for_in_clause_repeat1, - ACTIONS(2282), 6, - anon_sym_RPAREN, anon_sym_if, - anon_sym_async, - anon_sym_for, - anon_sym_RBRACK, - anon_sym_RBRACE, - [62237] = 4, + anon_sym_EQ, + anon_sym_SEMI, + [62599] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2288), 1, + ACTIONS(2290), 1, anon_sym_COMMA, STATE(1113), 1, aux_sym_for_in_clause_repeat1, - ACTIONS(2286), 6, + ACTIONS(2288), 6, anon_sym_RPAREN, anon_sym_if, anon_sym_async, anon_sym_for, anon_sym_RBRACK, anon_sym_RBRACE, - [62255] = 2, + [62617] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2291), 8, + ACTIONS(2293), 8, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_as, @@ -76025,22 +76414,24 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE, anon_sym_RBRACK, anon_sym_RBRACE, - [62269] = 2, + [62631] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2293), 8, - anon_sym_RPAREN, + ACTIONS(2284), 1, + anon_sym_and, + ACTIONS(2286), 1, + anon_sym_or, + ACTIONS(2190), 6, + sym__newline, + anon_sym_from, anon_sym_COMMA, - anon_sym_as, anon_sym_if, - anon_sym_COLON, - anon_sym_PIPE, - anon_sym_RBRACK, - anon_sym_RBRACE, - [62283] = 2, + anon_sym_EQ, + anon_sym_SEMI, + [62649] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2295), 8, + ACTIONS(2112), 8, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_as, @@ -76049,184 +76440,151 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE, anon_sym_RBRACK, anon_sym_RBRACE, - [62297] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2299), 1, - anon_sym_COMMA, - STATE(1166), 1, - aux_sym_for_in_clause_repeat1, - ACTIONS(2297), 6, - anon_sym_RPAREN, - anon_sym_if, - anon_sym_async, - anon_sym_for, - anon_sym_RBRACK, - anon_sym_RBRACE, - [62315] = 2, + [62663] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(2301), 8, + ACTIONS(2297), 1, + anon_sym_PIPE, + ACTIONS(2295), 7, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_as, anon_sym_if, anon_sym_COLON, - anon_sym_PIPE, anon_sym_RBRACK, anon_sym_RBRACE, - [62329] = 4, + [62679] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2244), 1, + ACTIONS(2284), 1, anon_sym_and, - ACTIONS(2246), 1, + ACTIONS(2286), 1, anon_sym_or, - ACTIONS(2184), 6, - anon_sym_COMMA, + ACTIONS(2299), 1, anon_sym_if, - anon_sym_RBRACE, + ACTIONS(2200), 5, + sym__newline, + anon_sym_from, + anon_sym_COMMA, anon_sym_EQ, - anon_sym_COLON2, - sym_type_conversion, - [62347] = 5, + anon_sym_SEMI, + [62699] = 6, + ACTIONS(2086), 1, + sym_comment, + ACTIONS(2301), 1, + anon_sym_LBRACE2, + ACTIONS(2306), 1, + anon_sym_BSLASH, + ACTIONS(2309), 1, + sym__string_end, + STATE(1119), 2, + sym__not_escape_sequence, + aux_sym_string_content_repeat1, + ACTIONS(2303), 3, + sym__string_content, + sym__escape_interpolation, + sym_escape_sequence, + [62721] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2240), 1, + ACTIONS(2262), 1, anon_sym_if, - ACTIONS(2244), 1, + ACTIONS(2266), 1, anon_sym_and, - ACTIONS(2246), 1, + ACTIONS(2268), 1, anon_sym_or, - ACTIONS(2196), 5, + ACTIONS(2311), 5, anon_sym_COMMA, anon_sym_RBRACE, anon_sym_EQ, anon_sym_COLON2, sym_type_conversion, - [62367] = 4, + [62741] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2244), 1, + ACTIONS(2284), 1, anon_sym_and, - ACTIONS(2246), 1, + ACTIONS(2286), 1, anon_sym_or, - ACTIONS(2200), 6, - anon_sym_COMMA, + ACTIONS(2299), 1, anon_sym_if, - anon_sym_RBRACE, + ACTIONS(2186), 5, + sym__newline, + anon_sym_from, + anon_sym_COMMA, anon_sym_EQ, - anon_sym_COLON2, - sym_type_conversion, - [62385] = 3, + anon_sym_SEMI, + [62761] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2244), 1, - anon_sym_and, - ACTIONS(2164), 7, + ACTIONS(2315), 1, anon_sym_COMMA, + STATE(1113), 1, + aux_sym_for_in_clause_repeat1, + ACTIONS(2313), 6, + anon_sym_RPAREN, anon_sym_if, + anon_sym_async, + anon_sym_for, + anon_sym_RBRACK, anon_sym_RBRACE, - anon_sym_EQ, - anon_sym_or, - anon_sym_COLON2, - sym_type_conversion, - [62401] = 4, + [62779] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2244), 1, + ACTIONS(2284), 1, anon_sym_and, - ACTIONS(2246), 1, + ACTIONS(2286), 1, anon_sym_or, - ACTIONS(2164), 6, + ACTIONS(2212), 6, + sym__newline, + anon_sym_from, anon_sym_COMMA, anon_sym_if, - anon_sym_RBRACE, anon_sym_EQ, - anon_sym_COLON2, - sym_type_conversion, - [62419] = 5, + anon_sym_SEMI, + [62797] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2240), 1, - anon_sym_if, - ACTIONS(2244), 1, - anon_sym_and, - ACTIONS(2246), 1, - anon_sym_or, - ACTIONS(2176), 5, + ACTIONS(2317), 8, + anon_sym_RPAREN, anon_sym_COMMA, + anon_sym_as, + anon_sym_if, + anon_sym_COLON, + anon_sym_PIPE, + anon_sym_RBRACK, anon_sym_RBRACE, - anon_sym_EQ, - anon_sym_COLON2, - sym_type_conversion, - [62439] = 5, + [62811] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2240), 1, - anon_sym_if, - ACTIONS(2244), 1, + ACTIONS(2182), 1, anon_sym_and, - ACTIONS(2246), 1, + ACTIONS(2184), 1, anon_sym_or, - ACTIONS(2172), 5, + ACTIONS(2198), 1, + anon_sym_if, + ACTIONS(2319), 5, + anon_sym_RPAREN, anon_sym_COMMA, + anon_sym_COLON, + anon_sym_RBRACK, anon_sym_RBRACE, - anon_sym_EQ, - anon_sym_COLON2, - sym_type_conversion, - [62459] = 4, + [62831] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2303), 1, - anon_sym_and, - ACTIONS(2305), 1, - anon_sym_or, - ACTIONS(2200), 6, + ACTIONS(1558), 8, sym__newline, anon_sym_from, anon_sym_COMMA, anon_sym_if, anon_sym_EQ, + anon_sym_and, + anon_sym_or, anon_sym_SEMI, - [62477] = 7, - ACTIONS(3), 1, - sym_comment, - ACTIONS(69), 1, - anon_sym_AT, - ACTIONS(2307), 1, - anon_sym_async, - ACTIONS(2309), 1, - anon_sym_def, - ACTIONS(2311), 1, - anon_sym_class, - STATE(610), 2, - sym_function_definition, - sym_class_definition, - STATE(1257), 2, - sym_decorator, - aux_sym_decorated_definition_repeat1, - [62501] = 7, - ACTIONS(3), 1, - sym_comment, - ACTIONS(69), 1, - anon_sym_AT, - ACTIONS(2313), 1, - anon_sym_async, - ACTIONS(2315), 1, - anon_sym_def, - ACTIONS(2317), 1, - anon_sym_class, - STATE(550), 2, - sym_function_definition, - sym_class_definition, - STATE(1257), 2, - sym_decorator, - aux_sym_decorated_definition_repeat1, - [62525] = 2, + [62845] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2319), 8, + ACTIONS(2321), 8, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_as, @@ -76235,10 +76593,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE, anon_sym_RBRACK, anon_sym_RBRACE, - [62539] = 2, + [62859] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2321), 8, + ACTIONS(2323), 8, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_as, @@ -76247,25 +76605,22 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE, anon_sym_RBRACK, anon_sym_RBRACE, - [62553] = 5, + [62873] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2240), 1, + ACTIONS(2071), 8, + sym__newline, + anon_sym_from, + anon_sym_COMMA, anon_sym_if, - ACTIONS(2244), 1, + anon_sym_EQ, anon_sym_and, - ACTIONS(2246), 1, anon_sym_or, - ACTIONS(2234), 5, - anon_sym_COMMA, - anon_sym_RBRACE, - anon_sym_EQ, - anon_sym_COLON2, - sym_type_conversion, - [62573] = 2, + anon_sym_SEMI, + [62887] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2250), 8, + ACTIONS(2325), 8, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_as, @@ -76274,56 +76629,22 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE, anon_sym_RBRACK, anon_sym_RBRACE, - [62587] = 2, + [62901] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2323), 8, - anon_sym_RPAREN, + ACTIONS(1558), 8, anon_sym_COMMA, - anon_sym_as, anon_sym_if, - anon_sym_COLON, - anon_sym_PIPE, - anon_sym_RBRACK, anon_sym_RBRACE, - [62601] = 8, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2303), 1, + anon_sym_EQ, anon_sym_and, - ACTIONS(2305), 1, anon_sym_or, - ACTIONS(2325), 1, - anon_sym_from, - ACTIONS(2327), 1, - anon_sym_COMMA, - ACTIONS(2329), 1, - anon_sym_if, - STATE(1272), 1, - aux_sym_expression_list_repeat1, - ACTIONS(2331), 2, - sym__newline, - anon_sym_SEMI, - [62627] = 6, - ACTIONS(2077), 1, - sym_comment, - ACTIONS(2333), 1, - anon_sym_LBRACE2, - ACTIONS(2338), 1, - anon_sym_BSLASH, - ACTIONS(2341), 1, - sym__string_end, - STATE(1135), 2, - sym__not_escape_sequence, - aux_sym_string_content_repeat1, - ACTIONS(2335), 3, - sym__string_content, - sym__escape_interpolation, - sym_escape_sequence, - [62649] = 2, + anon_sym_COLON2, + sym_type_conversion, + [62915] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2343), 8, + ACTIONS(2327), 8, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_as, @@ -76332,10 +76653,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE, anon_sym_RBRACK, anon_sym_RBRACE, - [62663] = 2, + [62929] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2345), 8, + ACTIONS(2329), 8, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_as, @@ -76344,10 +76665,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE, anon_sym_RBRACK, anon_sym_RBRACE, - [62677] = 2, + [62943] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2347), 8, + ACTIONS(2331), 8, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_as, @@ -76356,23 +76677,24 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE, anon_sym_RBRACK, anon_sym_RBRACE, - [62691] = 3, + [62957] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2351), 1, - anon_sym_PIPE, - ACTIONS(2349), 7, - anon_sym_RPAREN, + ACTIONS(2335), 1, anon_sym_COMMA, - anon_sym_as, - anon_sym_if, - anon_sym_COLON, + STATE(1173), 1, + aux_sym_for_in_clause_repeat1, + ACTIONS(2333), 6, + anon_sym_RPAREN, + anon_sym_if, + anon_sym_async, + anon_sym_for, anon_sym_RBRACK, anon_sym_RBRACE, - [62707] = 2, + [62975] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2353), 8, + ACTIONS(2255), 8, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_as, @@ -76381,110 +76703,157 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE, anon_sym_RBRACK, anon_sym_RBRACE, - [62721] = 4, + [62989] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(2303), 1, + ACTIONS(2284), 1, anon_sym_and, - ACTIONS(2305), 1, + ACTIONS(2286), 1, anon_sym_or, - ACTIONS(2184), 6, - sym__newline, + ACTIONS(2299), 1, + anon_sym_if, + ACTIONS(2337), 1, anon_sym_from, + ACTIONS(2339), 1, anon_sym_COMMA, - anon_sym_if, - anon_sym_EQ, + STATE(1288), 1, + aux_sym_expression_list_repeat1, + ACTIONS(2341), 2, + sym__newline, anon_sym_SEMI, - [62739] = 5, + [63015] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2343), 8, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_as, + anon_sym_if, + anon_sym_COLON, + anon_sym_PIPE, + anon_sym_RBRACK, + anon_sym_RBRACE, + [63029] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2303), 1, + ACTIONS(2284), 1, anon_sym_and, - ACTIONS(2305), 1, + ACTIONS(2286), 1, anon_sym_or, - ACTIONS(2329), 1, + ACTIONS(2299), 1, anon_sym_if, - ACTIONS(2234), 5, + ACTIONS(2238), 5, sym__newline, anon_sym_from, anon_sym_COMMA, anon_sym_EQ, anon_sym_SEMI, - [62759] = 5, + [63049] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2240), 1, - anon_sym_if, - ACTIONS(2244), 1, - anon_sym_and, - ACTIONS(2246), 1, - anon_sym_or, - ACTIONS(2355), 5, + ACTIONS(2345), 8, + anon_sym_RPAREN, anon_sym_COMMA, + anon_sym_as, + anon_sym_if, + anon_sym_COLON, + anon_sym_PIPE, + anon_sym_RBRACK, anon_sym_RBRACE, - anon_sym_EQ, - anon_sym_COLON2, - sym_type_conversion, - [62779] = 7, + [63063] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2178), 1, + ACTIONS(2347), 8, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_as, anon_sym_if, - ACTIONS(2180), 1, - anon_sym_and, - ACTIONS(2182), 1, - anon_sym_or, - ACTIONS(2357), 1, + anon_sym_COLON, + anon_sym_PIPE, + anon_sym_RBRACK, + anon_sym_RBRACE, + [63077] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2349), 8, + anon_sym_RPAREN, anon_sym_COMMA, - STATE(1250), 1, - aux_sym_expression_list_repeat1, - ACTIONS(2266), 3, + anon_sym_as, + anon_sym_if, + anon_sym_COLON, + anon_sym_PIPE, + anon_sym_RBRACK, + anon_sym_RBRACE, + [63091] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2351), 8, anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_as, + anon_sym_if, + anon_sym_COLON, + anon_sym_PIPE, anon_sym_RBRACK, anon_sym_RBRACE, - [62803] = 5, + [63105] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2303), 1, + ACTIONS(2182), 1, anon_sym_and, - ACTIONS(2305), 1, + ACTIONS(2184), 1, anon_sym_or, - ACTIONS(2329), 1, + ACTIONS(2198), 1, anon_sym_if, - ACTIONS(2176), 5, - sym__newline, - anon_sym_from, + ACTIONS(2311), 5, + anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_EQ, - anon_sym_SEMI, - [62823] = 3, + anon_sym_COLON, + anon_sym_RBRACK, + anon_sym_RBRACE, + [63125] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2303), 1, - anon_sym_and, - ACTIONS(2164), 7, - sym__newline, - anon_sym_from, + ACTIONS(2071), 8, anon_sym_COMMA, anon_sym_if, + anon_sym_RBRACE, anon_sym_EQ, + anon_sym_and, anon_sym_or, - anon_sym_SEMI, - [62839] = 4, + anon_sym_COLON2, + sym_type_conversion, + [63139] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(69), 1, + anon_sym_AT, + ACTIONS(2353), 1, + anon_sym_async, + ACTIONS(2355), 1, + anon_sym_def, + ACTIONS(2357), 1, + anon_sym_class, + STATE(534), 2, + sym_function_definition, + sym_class_definition, + STATE(1257), 2, + sym_decorator, + aux_sym_decorated_definition_repeat1, + [63163] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(2303), 1, + ACTIONS(2284), 1, anon_sym_and, - ACTIONS(2305), 1, - anon_sym_or, - ACTIONS(2164), 6, + ACTIONS(2176), 7, sym__newline, anon_sym_from, anon_sym_COMMA, anon_sym_if, anon_sym_EQ, + anon_sym_or, anon_sym_SEMI, - [62857] = 2, + [63179] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(2359), 8, @@ -76496,8 +76865,8 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE, anon_sym_RBRACK, anon_sym_RBRACE, - [62871] = 6, - ACTIONS(2077), 1, + [63193] = 6, + ACTIONS(2086), 1, sym_comment, ACTIONS(2361), 1, anon_sym_LBRACE2, @@ -76505,14 +76874,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_BSLASH, ACTIONS(2367), 1, sym__string_end, - STATE(1135), 2, + STATE(1119), 2, sym__not_escape_sequence, aux_sym_string_content_repeat1, ACTIONS(2363), 3, sym__string_content, sym__escape_interpolation, sym_escape_sequence, - [62893] = 2, + [63215] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(2369), 8, @@ -76524,263 +76893,371 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE, anon_sym_RBRACK, anon_sym_RBRACE, - [62907] = 5, + [63229] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2178), 1, - anon_sym_if, - ACTIONS(2180), 1, - anon_sym_and, - ACTIONS(2182), 1, - anon_sym_or, - ACTIONS(2355), 5, + ACTIONS(2371), 8, anon_sym_RPAREN, anon_sym_COMMA, + anon_sym_as, + anon_sym_if, anon_sym_COLON, + anon_sym_PIPE, anon_sym_RBRACK, anon_sym_RBRACE, - [62927] = 5, + [63243] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2303), 1, + ACTIONS(2266), 1, anon_sym_and, - ACTIONS(2305), 1, + ACTIONS(2268), 1, anon_sym_or, - ACTIONS(2329), 1, - anon_sym_if, - ACTIONS(2172), 5, - sym__newline, - anon_sym_from, + ACTIONS(2212), 6, anon_sym_COMMA, + anon_sym_if, + anon_sym_RBRACE, anon_sym_EQ, - anon_sym_SEMI, - [62947] = 5, + anon_sym_COLON2, + sym_type_conversion, + [63261] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2178), 1, + ACTIONS(2102), 1, + anon_sym_and, + ACTIONS(2104), 1, + anon_sym_or, + ACTIONS(2212), 6, + anon_sym_COMMA, anon_sym_if, - ACTIONS(2180), 1, + anon_sym_COLON, + anon_sym_async, + anon_sym_for, + anon_sym_RBRACE, + [63279] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2092), 1, + anon_sym_if, + ACTIONS(2102), 1, anon_sym_and, - ACTIONS(2182), 1, + ACTIONS(2104), 1, + anon_sym_or, + ACTIONS(2200), 5, + anon_sym_COMMA, + anon_sym_COLON, + anon_sym_async, + anon_sym_for, + anon_sym_RBRACE, + [63299] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2102), 1, + anon_sym_and, + ACTIONS(2104), 1, + anon_sym_or, + ACTIONS(2190), 6, + anon_sym_COMMA, + anon_sym_if, + anon_sym_COLON, + anon_sym_async, + anon_sym_for, + anon_sym_RBRACE, + [63317] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2102), 1, + anon_sym_and, + ACTIONS(2176), 7, + anon_sym_COMMA, + anon_sym_if, + anon_sym_COLON, + anon_sym_async, + anon_sym_for, + anon_sym_RBRACE, anon_sym_or, - ACTIONS(2371), 5, + [63333] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2102), 1, + anon_sym_and, + ACTIONS(2104), 1, + anon_sym_or, + ACTIONS(2176), 6, + anon_sym_COMMA, + anon_sym_if, + anon_sym_COLON, + anon_sym_async, + anon_sym_for, + anon_sym_RBRACE, + [63351] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2373), 8, anon_sym_RPAREN, anon_sym_COMMA, + anon_sym_as, + anon_sym_if, anon_sym_COLON, + anon_sym_PIPE, anon_sym_RBRACK, anon_sym_RBRACE, - [62967] = 5, + [63365] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2240), 1, + ACTIONS(2262), 1, anon_sym_if, - ACTIONS(2244), 1, + ACTIONS(2266), 1, anon_sym_and, - ACTIONS(2246), 1, + ACTIONS(2268), 1, anon_sym_or, - ACTIONS(2371), 5, + ACTIONS(2238), 5, anon_sym_COMMA, anon_sym_RBRACE, anon_sym_EQ, anon_sym_COLON2, sym_type_conversion, - [62987] = 5, + [63385] = 6, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2106), 1, + anon_sym_DOT, + ACTIONS(2108), 1, + anon_sym_LPAREN, + ACTIONS(2375), 1, + anon_sym_EQ, + STATE(1064), 1, + aux_sym_match_value_pattern_repeat1, + ACTIONS(2110), 4, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_as, + anon_sym_PIPE, + [63407] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2303), 1, + ACTIONS(2284), 1, anon_sym_and, - ACTIONS(2305), 1, + ACTIONS(2286), 1, anon_sym_or, - ACTIONS(2329), 1, + ACTIONS(2299), 1, anon_sym_if, - ACTIONS(2196), 5, + ACTIONS(2214), 5, sym__newline, anon_sym_from, anon_sym_COMMA, anon_sym_EQ, anon_sym_SEMI, - [63007] = 2, + [63427] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(1606), 8, - sym__newline, - anon_sym_from, - anon_sym_COMMA, + ACTIONS(2262), 1, anon_sym_if, - anon_sym_EQ, + ACTIONS(2266), 1, anon_sym_and, + ACTIONS(2268), 1, anon_sym_or, - anon_sym_SEMI, - [63021] = 4, + ACTIONS(2200), 5, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_EQ, + anon_sym_COLON2, + sym_type_conversion, + [63447] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2154), 1, + ACTIONS(2092), 1, + anon_sym_if, + ACTIONS(2102), 1, anon_sym_and, - ACTIONS(2156), 1, + ACTIONS(2104), 1, anon_sym_or, - ACTIONS(2373), 6, - anon_sym_RPAREN, - anon_sym_if, + ACTIONS(2214), 5, + anon_sym_COMMA, + anon_sym_COLON, anon_sym_async, anon_sym_for, - anon_sym_RBRACK, anon_sym_RBRACE, - [63039] = 4, + [63467] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2115), 1, + ACTIONS(2266), 1, anon_sym_and, - ACTIONS(2117), 1, + ACTIONS(2268), 1, anon_sym_or, - ACTIONS(2184), 6, + ACTIONS(2190), 6, anon_sym_COMMA, anon_sym_if, - anon_sym_COLON, - anon_sym_async, - anon_sym_for, anon_sym_RBRACE, - [63057] = 5, + anon_sym_EQ, + anon_sym_COLON2, + sym_type_conversion, + [63485] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(2105), 1, - anon_sym_if, - ACTIONS(2115), 1, + ACTIONS(2266), 1, anon_sym_and, - ACTIONS(2117), 1, - anon_sym_or, - ACTIONS(2196), 5, + ACTIONS(2176), 7, anon_sym_COMMA, - anon_sym_COLON, - anon_sym_async, - anon_sym_for, + anon_sym_if, anon_sym_RBRACE, - [63077] = 4, + anon_sym_EQ, + anon_sym_or, + anon_sym_COLON2, + sym_type_conversion, + [63501] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2115), 1, + ACTIONS(2092), 1, + anon_sym_if, + ACTIONS(2102), 1, anon_sym_and, - ACTIONS(2117), 1, + ACTIONS(2104), 1, anon_sym_or, - ACTIONS(2200), 6, + ACTIONS(2186), 5, anon_sym_COMMA, - anon_sym_if, anon_sym_COLON, anon_sym_async, anon_sym_for, anon_sym_RBRACE, - [63095] = 3, + [63521] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2115), 1, + ACTIONS(2266), 1, anon_sym_and, - ACTIONS(2164), 7, + ACTIONS(2268), 1, + anon_sym_or, + ACTIONS(2176), 6, anon_sym_COMMA, anon_sym_if, - anon_sym_COLON, - anon_sym_async, - anon_sym_for, anon_sym_RBRACE, - anon_sym_or, - [63111] = 4, + anon_sym_EQ, + anon_sym_COLON2, + sym_type_conversion, + [63539] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2115), 1, + ACTIONS(2262), 1, + anon_sym_if, + ACTIONS(2266), 1, anon_sym_and, - ACTIONS(2117), 1, + ACTIONS(2268), 1, anon_sym_or, - ACTIONS(2164), 6, + ACTIONS(2214), 5, anon_sym_COMMA, - anon_sym_if, - anon_sym_COLON, - anon_sym_async, - anon_sym_for, anon_sym_RBRACE, - [63129] = 5, + anon_sym_EQ, + anon_sym_COLON2, + sym_type_conversion, + [63559] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2105), 1, + ACTIONS(2262), 1, anon_sym_if, - ACTIONS(2115), 1, + ACTIONS(2266), 1, anon_sym_and, - ACTIONS(2117), 1, + ACTIONS(2268), 1, anon_sym_or, - ACTIONS(2176), 5, + ACTIONS(2319), 5, anon_sym_COMMA, - anon_sym_COLON, - anon_sym_async, - anon_sym_for, anon_sym_RBRACE, - [63149] = 5, + anon_sym_EQ, + anon_sym_COLON2, + sym_type_conversion, + [63579] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2105), 1, + ACTIONS(2262), 1, anon_sym_if, - ACTIONS(2115), 1, + ACTIONS(2266), 1, anon_sym_and, - ACTIONS(2117), 1, + ACTIONS(2268), 1, anon_sym_or, - ACTIONS(2172), 5, + ACTIONS(2186), 5, anon_sym_COMMA, - anon_sym_COLON, - anon_sym_async, - anon_sym_for, anon_sym_RBRACE, - [63169] = 4, + anon_sym_EQ, + anon_sym_COLON2, + sym_type_conversion, + [63599] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2377), 1, - anon_sym_COMMA, - STATE(1112), 1, - aux_sym_for_in_clause_repeat1, - ACTIONS(2375), 6, + ACTIONS(2138), 1, + anon_sym_and, + ACTIONS(2140), 1, + anon_sym_or, + ACTIONS(2377), 6, anon_sym_RPAREN, anon_sym_if, anon_sym_async, anon_sym_for, anon_sym_RBRACK, anon_sym_RBRACE, - [63187] = 4, + [63617] = 7, ACTIONS(3), 1, sym_comment, + ACTIONS(69), 1, + anon_sym_AT, + ACTIONS(2379), 1, + anon_sym_async, ACTIONS(2381), 1, + anon_sym_def, + ACTIONS(2383), 1, + anon_sym_class, + STATE(605), 2, + sym_function_definition, + sym_class_definition, + STATE(1257), 2, + sym_decorator, + aux_sym_decorated_definition_repeat1, + [63641] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2387), 1, anon_sym_COMMA, STATE(1113), 1, aux_sym_for_in_clause_repeat1, - ACTIONS(2379), 6, + ACTIONS(2385), 6, anon_sym_RPAREN, anon_sym_if, anon_sym_async, anon_sym_for, anon_sym_RBRACK, anon_sym_RBRACE, - [63205] = 2, + [63659] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2059), 8, - sym__newline, - anon_sym_from, + ACTIONS(2391), 1, anon_sym_COMMA, + STATE(1122), 1, + aux_sym_for_in_clause_repeat1, + ACTIONS(2389), 6, + anon_sym_RPAREN, anon_sym_if, - anon_sym_EQ, - anon_sym_and, - anon_sym_or, - anon_sym_SEMI, - [63219] = 2, + anon_sym_async, + anon_sym_for, + anon_sym_RBRACK, + anon_sym_RBRACE, + [63677] = 7, ACTIONS(3), 1, sym_comment, - ACTIONS(2081), 8, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_as, + ACTIONS(2182), 1, + anon_sym_and, + ACTIONS(2184), 1, + anon_sym_or, + ACTIONS(2198), 1, anon_sym_if, - anon_sym_COLON, - anon_sym_PIPE, + ACTIONS(2393), 1, + anon_sym_COMMA, + STATE(1243), 1, + aux_sym_expression_list_repeat1, + ACTIONS(2276), 3, + anon_sym_RPAREN, anon_sym_RBRACK, anon_sym_RBRACE, - [63233] = 2, + [63701] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2383), 8, + ACTIONS(2395), 8, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_as, @@ -76789,42 +77266,27 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE, anon_sym_RBRACK, anon_sym_RBRACE, - [63247] = 8, + [63715] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(2109), 1, - anon_sym_async, - ACTIONS(2111), 1, - anon_sym_for, - ACTIONS(2385), 1, + ACTIONS(2397), 1, anon_sym_COMMA, - ACTIONS(2387), 1, - anon_sym_RBRACE, - STATE(1091), 1, - sym_for_in_clause, - STATE(1507), 1, - aux_sym_dictionary_repeat1, - STATE(1721), 1, - sym__comprehension_clauses, - [63272] = 6, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2389), 1, - anon_sym_except, - ACTIONS(2391), 1, - anon_sym_finally, - STATE(611), 1, - sym_finally_clause, - STATE(266), 2, - sym_except_clause, - aux_sym_try_statement_repeat1, - STATE(271), 2, - sym_except_group_clause, - aux_sym_try_statement_repeat2, - [63293] = 2, + ACTIONS(2399), 1, + anon_sym_as, + ACTIONS(2401), 1, + anon_sym_if, + ACTIONS(2403), 1, + anon_sym_COLON, + ACTIONS(2405), 1, + anon_sym_and, + ACTIONS(2407), 1, + anon_sym_or, + STATE(1364), 1, + aux_sym_exception_list_repeat1, + [63740] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2393), 7, + ACTIONS(2409), 7, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_if, @@ -76832,2592 +77294,2834 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_for, anon_sym_RBRACK, anon_sym_RBRACE, - [63306] = 2, + [63753] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2286), 7, + ACTIONS(2182), 1, + anon_sym_and, + ACTIONS(2184), 1, + anon_sym_or, + ACTIONS(2198), 1, + anon_sym_if, + ACTIONS(2411), 4, anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_if, - anon_sym_async, - anon_sym_for, anon_sym_RBRACK, anon_sym_RBRACE, - [63319] = 8, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2395), 1, - anon_sym_COMMA, - ACTIONS(2397), 1, - anon_sym_as, - ACTIONS(2399), 1, - anon_sym_if, - ACTIONS(2401), 1, - anon_sym_COLON, - ACTIONS(2403), 1, - anon_sym_and, - ACTIONS(2405), 1, - anon_sym_or, - STATE(1342), 1, - aux_sym_exception_list_repeat1, - [63344] = 6, + [63772] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(2389), 1, - anon_sym_except, - ACTIONS(2391), 1, - anon_sym_finally, - STATE(521), 1, - sym_finally_clause, - STATE(273), 2, - sym_except_clause, - aux_sym_try_statement_repeat1, - STATE(279), 2, - sym_except_group_clause, - aux_sym_try_statement_repeat2, - [63365] = 7, + ACTIONS(2413), 1, + sym_identifier, + ACTIONS(2415), 1, + anon_sym_LPAREN, + ACTIONS(2417), 1, + anon_sym_STAR, + STATE(1290), 1, + sym_dotted_name, + STATE(1327), 1, + sym_aliased_import, + STATE(1559), 1, + sym__import_list, + STATE(1561), 1, + sym_wildcard_import, + [63797] = 7, ACTIONS(3), 1, sym_comment, - ACTIONS(2303), 1, + ACTIONS(2284), 1, anon_sym_and, - ACTIONS(2305), 1, + ACTIONS(2286), 1, anon_sym_or, - ACTIONS(2327), 1, - anon_sym_COMMA, - ACTIONS(2329), 1, + ACTIONS(2299), 1, anon_sym_if, - STATE(1272), 1, + ACTIONS(2339), 1, + anon_sym_COMMA, + STATE(1288), 1, aux_sym_expression_list_repeat1, - ACTIONS(2407), 2, + ACTIONS(2419), 2, sym__newline, anon_sym_SEMI, - [63388] = 7, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2409), 1, - sym_identifier, - ACTIONS(2411), 1, - anon_sym_DOT, - ACTIONS(2413), 1, - anon_sym___future__, - STATE(1374), 1, - aux_sym_import_prefix_repeat1, - STATE(1419), 1, - sym_import_prefix, - STATE(1677), 2, - sym_relative_import, - sym_dotted_name, - [63411] = 5, + [63820] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2399), 1, + ACTIONS(2401), 1, anon_sym_if, - ACTIONS(2403), 1, - anon_sym_and, ACTIONS(2405), 1, + anon_sym_and, + ACTIONS(2407), 1, anon_sym_or, - ACTIONS(2176), 4, + ACTIONS(2200), 4, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_as, anon_sym_COLON, - [63430] = 7, + [63839] = 6, ACTIONS(3), 1, sym_comment, - ACTIONS(2303), 1, - anon_sym_and, - ACTIONS(2305), 1, - anon_sym_or, - ACTIONS(2327), 1, - anon_sym_COMMA, - ACTIONS(2329), 1, - anon_sym_if, - STATE(1272), 1, - aux_sym_expression_list_repeat1, - ACTIONS(2415), 2, - sym__newline, - anon_sym_SEMI, - [63453] = 5, + ACTIONS(2421), 1, + anon_sym_except, + ACTIONS(2423), 1, + anon_sym_finally, + STATE(540), 1, + sym_finally_clause, + STATE(266), 2, + sym_except_group_clause, + aux_sym_try_statement_repeat2, + STATE(283), 2, + sym_except_clause, + aux_sym_try_statement_repeat1, + [63860] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(2152), 1, - anon_sym_if, - ACTIONS(2154), 1, - anon_sym_and, - ACTIONS(2156), 1, - anon_sym_or, - ACTIONS(2417), 4, - anon_sym_COMMA, + ACTIONS(2096), 1, anon_sym_async, + ACTIONS(2098), 1, anon_sym_for, - anon_sym_RBRACE, - [63472] = 7, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2303), 1, - anon_sym_and, - ACTIONS(2305), 1, - anon_sym_or, - ACTIONS(2329), 1, - anon_sym_if, - ACTIONS(2419), 1, - anon_sym_COMMA, - STATE(1350), 1, - aux_sym_print_statement_repeat1, - ACTIONS(2421), 2, - sym__newline, - anon_sym_SEMI, - [63495] = 7, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2303), 1, - anon_sym_and, - ACTIONS(2305), 1, - anon_sym_or, - ACTIONS(2329), 1, - anon_sym_if, - ACTIONS(2423), 1, + ACTIONS(2425), 1, anon_sym_COMMA, - STATE(1360), 1, - aux_sym_assert_statement_repeat1, - ACTIONS(2425), 2, - sym__newline, - anon_sym_SEMI, - [63518] = 8, + ACTIONS(2427), 1, + anon_sym_RBRACE, + STATE(1106), 1, + sym_for_in_clause, + STATE(1450), 1, + aux_sym_dictionary_repeat1, + STATE(1724), 1, + sym__comprehension_clauses, + [63885] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(2427), 1, + ACTIONS(2413), 1, sym_identifier, + ACTIONS(2417), 1, + anon_sym_STAR, ACTIONS(2429), 1, anon_sym_LPAREN, - ACTIONS(2431), 1, - anon_sym_STAR, - STATE(1281), 1, + STATE(1290), 1, sym_dotted_name, - STATE(1372), 1, + STATE(1327), 1, sym_aliased_import, - STATE(1517), 1, + STATE(1579), 1, sym__import_list, - STATE(1521), 1, + STATE(1580), 1, sym_wildcard_import, - [63543] = 5, + [63910] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(2303), 1, - anon_sym_and, - ACTIONS(2305), 1, - anon_sym_or, - ACTIONS(2329), 1, - anon_sym_if, - ACTIONS(2355), 4, - sym__newline, - anon_sym_from, + ACTIONS(2096), 1, + anon_sym_async, + ACTIONS(2098), 1, + anon_sym_for, + ACTIONS(2228), 1, + anon_sym_RPAREN, + ACTIONS(2230), 1, anon_sym_COMMA, - anon_sym_SEMI, - [63562] = 5, + STATE(1106), 1, + sym_for_in_clause, + STATE(1456), 1, + aux_sym_argument_list_repeat1, + STATE(1711), 1, + sym__comprehension_clauses, + [63935] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(2399), 1, + ACTIONS(2090), 1, + anon_sym_COMMA, + ACTIONS(2096), 1, + anon_sym_async, + ACTIONS(2098), 1, + anon_sym_for, + ACTIONS(2431), 1, + anon_sym_RPAREN, + STATE(1106), 1, + sym_for_in_clause, + STATE(1308), 1, + aux_sym__collection_elements_repeat1, + STATE(1618), 1, + sym__comprehension_clauses, + [63960] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2401), 1, anon_sym_if, - ACTIONS(2403), 1, - anon_sym_and, ACTIONS(2405), 1, + anon_sym_and, + ACTIONS(2407), 1, anon_sym_or, - ACTIONS(2172), 4, + ACTIONS(2214), 4, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_as, anon_sym_COLON, - [63581] = 2, + [63979] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2266), 7, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_RBRACK, - anon_sym_RBRACE, - anon_sym_EQ, - anon_sym_COLON2, - sym_type_conversion, - [63594] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2403), 1, - anon_sym_and, ACTIONS(2405), 1, + anon_sym_and, + ACTIONS(2407), 1, anon_sym_or, - ACTIONS(2184), 5, + ACTIONS(2190), 5, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_as, anon_sym_if, anon_sym_COLON, - [63611] = 5, + [63996] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(2240), 1, - anon_sym_if, - ACTIONS(2244), 1, + ACTIONS(2405), 1, anon_sym_and, - ACTIONS(2246), 1, - anon_sym_or, - ACTIONS(2433), 4, - anon_sym_RBRACE, - anon_sym_EQ, - anon_sym_COLON2, - sym_type_conversion, - [63630] = 2, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2059), 7, + ACTIONS(2176), 6, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_as, anon_sym_if, anon_sym_COLON, - anon_sym_and, anon_sym_or, - [63643] = 8, + [64011] = 7, ACTIONS(3), 1, sym_comment, - ACTIONS(2427), 1, - sym_identifier, - ACTIONS(2431), 1, - anon_sym_STAR, - ACTIONS(2435), 1, - anon_sym_LPAREN, - STATE(1281), 1, - sym_dotted_name, - STATE(1372), 1, - sym_aliased_import, - STATE(1534), 1, - sym__import_list, - STATE(1535), 1, - sym_wildcard_import, - [63668] = 5, + ACTIONS(2284), 1, + anon_sym_and, + ACTIONS(2286), 1, + anon_sym_or, + ACTIONS(2299), 1, + anon_sym_if, + ACTIONS(2339), 1, + anon_sym_COMMA, + STATE(1288), 1, + aux_sym_expression_list_repeat1, + ACTIONS(2433), 2, + sym__newline, + anon_sym_SEMI, + [64034] = 6, ACTIONS(3), 1, sym_comment, + ACTIONS(2401), 1, + anon_sym_if, + ACTIONS(2405), 1, + anon_sym_and, + ACTIONS(2407), 1, + anon_sym_or, ACTIONS(2437), 1, - sym_identifier, + anon_sym_as, + ACTIONS(2435), 3, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_COLON, + [64055] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2397), 1, + anon_sym_COMMA, + ACTIONS(2401), 1, + anon_sym_if, + ACTIONS(2405), 1, + anon_sym_and, + ACTIONS(2407), 1, + anon_sym_or, ACTIONS(2439), 1, - anon_sym_STAR, + anon_sym_as, ACTIONS(2441), 1, - anon_sym_STAR_STAR, - STATE(1483), 4, - sym_typevar_parameter, - sym_typevartuple_parameter, - sym_paramspec_parameter, - sym__type_parameter, - [63687] = 8, + anon_sym_COLON, + STATE(1364), 1, + aux_sym_exception_list_repeat1, + [64080] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(2109), 1, + ACTIONS(2096), 1, anon_sym_async, - ACTIONS(2111), 1, + ACTIONS(2098), 1, anon_sym_for, ACTIONS(2443), 1, anon_sym_COMMA, ACTIONS(2445), 1, anon_sym_RBRACE, - STATE(1091), 1, + STATE(1106), 1, sym_for_in_clause, - STATE(1413), 1, + STATE(1466), 1, aux_sym_dictionary_repeat1, - STATE(1601), 1, + STATE(1680), 1, sym__comprehension_clauses, - [63712] = 5, + [64105] = 6, ACTIONS(3), 1, sym_comment, - ACTIONS(2178), 1, - anon_sym_if, - ACTIONS(2180), 1, - anon_sym_and, - ACTIONS(2182), 1, - anon_sym_or, - ACTIONS(2447), 4, + ACTIONS(2447), 1, + anon_sym_except, + ACTIONS(2449), 1, + anon_sym_finally, + STATE(564), 1, + sym_finally_clause, + STATE(281), 2, + sym_except_clause, + aux_sym_try_statement_repeat1, + STATE(282), 2, + sym_except_group_clause, + aux_sym_try_statement_repeat2, + [64126] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2096), 1, + anon_sym_async, + ACTIONS(2098), 1, + anon_sym_for, + ACTIONS(2194), 1, anon_sym_RPAREN, + ACTIONS(2196), 1, anon_sym_COMMA, - anon_sym_RBRACK, - anon_sym_RBRACE, - [63731] = 5, + STATE(1106), 1, + sym_for_in_clause, + STATE(1472), 1, + aux_sym_argument_list_repeat1, + STATE(1673), 1, + sym__comprehension_clauses, + [64151] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2399), 1, + ACTIONS(2401), 1, anon_sym_if, - ACTIONS(2403), 1, - anon_sym_and, ACTIONS(2405), 1, + anon_sym_and, + ACTIONS(2407), 1, anon_sym_or, - ACTIONS(2196), 4, + ACTIONS(2186), 4, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_as, anon_sym_COLON, - [63750] = 7, + [64170] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2303), 1, - anon_sym_and, - ACTIONS(2305), 1, - anon_sym_or, - ACTIONS(2327), 1, + ACTIONS(1558), 7, + anon_sym_RPAREN, anon_sym_COMMA, - ACTIONS(2329), 1, + anon_sym_as, anon_sym_if, - STATE(1272), 1, - aux_sym_expression_list_repeat1, - ACTIONS(2266), 2, - sym__newline, - anon_sym_SEMI, - [63773] = 5, + anon_sym_COLON, + anon_sym_and, + anon_sym_or, + [64183] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2178), 1, - anon_sym_if, - ACTIONS(2180), 1, - anon_sym_and, ACTIONS(2182), 1, + anon_sym_and, + ACTIONS(2184), 1, anon_sym_or, - ACTIONS(2433), 4, + ACTIONS(2198), 1, + anon_sym_if, + ACTIONS(2451), 4, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_RBRACK, anon_sym_RBRACE, - [63792] = 4, + [64202] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2453), 1, + sym_identifier, + ACTIONS(2455), 1, + anon_sym_STAR, + ACTIONS(2457), 1, + anon_sym_STAR_STAR, + STATE(1577), 4, + sym_typevar_parameter, + sym_typevartuple_parameter, + sym_paramspec_parameter, + sym__type_parameter, + [64221] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2403), 1, - anon_sym_and, ACTIONS(2405), 1, + anon_sym_and, + ACTIONS(2407), 1, anon_sym_or, - ACTIONS(2200), 5, + ACTIONS(2176), 5, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_as, anon_sym_if, anon_sym_COLON, - [63809] = 3, + [64238] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(2403), 1, - anon_sym_and, - ACTIONS(2164), 6, - anon_sym_RPAREN, + ACTIONS(2090), 1, anon_sym_COMMA, - anon_sym_as, - anon_sym_if, - anon_sym_COLON, - anon_sym_or, - [63824] = 8, + ACTIONS(2096), 1, + anon_sym_async, + ACTIONS(2098), 1, + anon_sym_for, + ACTIONS(2100), 1, + anon_sym_RPAREN, + STATE(1106), 1, + sym_for_in_clause, + STATE(1308), 1, + aux_sym__collection_elements_repeat1, + STATE(1618), 1, + sym__comprehension_clauses, + [64263] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(2109), 1, + ACTIONS(2090), 1, + anon_sym_COMMA, + ACTIONS(2096), 1, anon_sym_async, - ACTIONS(2111), 1, + ACTIONS(2098), 1, anon_sym_for, - ACTIONS(2449), 1, - anon_sym_COMMA, - ACTIONS(2451), 1, + ACTIONS(2100), 1, anon_sym_RBRACE, - STATE(1091), 1, + STATE(1106), 1, sym_for_in_clause, - STATE(1437), 1, - aux_sym_dictionary_repeat1, - STATE(1667), 1, + STATE(1308), 1, + aux_sym__collection_elements_repeat1, + STATE(1728), 1, sym__comprehension_clauses, - [63849] = 4, + [64288] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(2403), 1, - anon_sym_and, - ACTIONS(2405), 1, - anon_sym_or, - ACTIONS(2164), 5, - anon_sym_RPAREN, + ACTIONS(2090), 1, anon_sym_COMMA, - anon_sym_as, - anon_sym_if, - anon_sym_COLON, - [63866] = 5, + ACTIONS(2096), 1, + anon_sym_async, + ACTIONS(2098), 1, + anon_sym_for, + ACTIONS(2100), 1, + anon_sym_RBRACK, + STATE(1106), 1, + sym_for_in_clause, + STATE(1308), 1, + aux_sym__collection_elements_repeat1, + STATE(1754), 1, + sym__comprehension_clauses, + [64313] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2178), 1, - anon_sym_if, - ACTIONS(2180), 1, - anon_sym_and, - ACTIONS(2182), 1, - anon_sym_or, - ACTIONS(2453), 4, + ACTIONS(2459), 7, anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_COLON, - anon_sym_EQ, - [63885] = 5, + anon_sym_if, + anon_sym_async, + anon_sym_for, + anon_sym_RBRACK, + anon_sym_RBRACE, + [64326] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(2437), 1, - sym_identifier, - ACTIONS(2439), 1, - anon_sym_STAR, - ACTIONS(2441), 1, - anon_sym_STAR_STAR, - STATE(1519), 4, - sym_typevar_parameter, - sym_typevartuple_parameter, - sym_paramspec_parameter, - sym__type_parameter, - [63904] = 8, + ACTIONS(2090), 1, + anon_sym_COMMA, + ACTIONS(2096), 1, + anon_sym_async, + ACTIONS(2098), 1, + anon_sym_for, + ACTIONS(2100), 1, + anon_sym_RBRACE, + STATE(1106), 1, + sym_for_in_clause, + STATE(1308), 1, + aux_sym__collection_elements_repeat1, + STATE(1695), 1, + sym__comprehension_clauses, + [64351] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(2395), 1, + ACTIONS(2096), 1, + anon_sym_async, + ACTIONS(2098), 1, + anon_sym_for, + ACTIONS(2461), 1, anon_sym_COMMA, - ACTIONS(2399), 1, - anon_sym_if, - ACTIONS(2403), 1, - anon_sym_and, - ACTIONS(2405), 1, - anon_sym_or, - ACTIONS(2455), 1, - anon_sym_as, - ACTIONS(2457), 1, - anon_sym_COLON, - STATE(1342), 1, - aux_sym_exception_list_repeat1, - [63929] = 8, + ACTIONS(2463), 1, + anon_sym_RBRACE, + STATE(1106), 1, + sym_for_in_clause, + STATE(1449), 1, + aux_sym_dictionary_repeat1, + STATE(1665), 1, + sym__comprehension_clauses, + [64376] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(2395), 1, + ACTIONS(2397), 1, anon_sym_COMMA, - ACTIONS(2399), 1, + ACTIONS(2401), 1, anon_sym_if, - ACTIONS(2403), 1, - anon_sym_and, ACTIONS(2405), 1, + anon_sym_and, + ACTIONS(2407), 1, anon_sym_or, - ACTIONS(2459), 1, + ACTIONS(2465), 1, anon_sym_as, - ACTIONS(2461), 1, + ACTIONS(2467), 1, anon_sym_COLON, - STATE(1342), 1, + STATE(1364), 1, aux_sym_exception_list_repeat1, - [63954] = 6, + [64401] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(2399), 1, + ACTIONS(2397), 1, + anon_sym_COMMA, + ACTIONS(2401), 1, anon_sym_if, - ACTIONS(2403), 1, - anon_sym_and, ACTIONS(2405), 1, + anon_sym_and, + ACTIONS(2407), 1, anon_sym_or, - ACTIONS(2465), 1, + ACTIONS(2469), 1, anon_sym_as, - ACTIONS(2463), 3, - anon_sym_RPAREN, - anon_sym_COMMA, + ACTIONS(2471), 1, anon_sym_COLON, - [63975] = 7, + STATE(1364), 1, + aux_sym_exception_list_repeat1, + [64426] = 7, ACTIONS(3), 1, sym_comment, - ACTIONS(2303), 1, + ACTIONS(2284), 1, anon_sym_and, - ACTIONS(2305), 1, + ACTIONS(2286), 1, anon_sym_or, - ACTIONS(2327), 1, - anon_sym_COMMA, - ACTIONS(2329), 1, + ACTIONS(2299), 1, anon_sym_if, - STATE(1272), 1, - aux_sym_expression_list_repeat1, - ACTIONS(2467), 2, - sym__newline, - anon_sym_SEMI, - [63998] = 7, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2303), 1, - anon_sym_and, - ACTIONS(2305), 1, - anon_sym_or, - ACTIONS(2327), 1, + ACTIONS(2339), 1, anon_sym_COMMA, - ACTIONS(2329), 1, - anon_sym_if, - STATE(1272), 1, + STATE(1288), 1, aux_sym_expression_list_repeat1, - ACTIONS(2469), 2, + ACTIONS(2276), 2, sym__newline, anon_sym_SEMI, - [64021] = 2, + [64449] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(2471), 7, + ACTIONS(2096), 1, + anon_sym_async, + ACTIONS(2098), 1, + anon_sym_for, + ACTIONS(2232), 1, anon_sym_RPAREN, + ACTIONS(2234), 1, anon_sym_COMMA, - anon_sym_if, + STATE(1106), 1, + sym_for_in_clause, + STATE(1521), 1, + aux_sym_argument_list_repeat1, + STATE(1618), 1, + sym__comprehension_clauses, + [64474] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2096), 1, anon_sym_async, + ACTIONS(2098), 1, anon_sym_for, - anon_sym_RBRACK, - anon_sym_RBRACE, - [64034] = 6, + ACTIONS(2222), 1, + anon_sym_RPAREN, + ACTIONS(2224), 1, + anon_sym_COMMA, + STATE(1106), 1, + sym_for_in_clause, + STATE(1412), 1, + aux_sym_argument_list_repeat1, + STATE(1628), 1, + sym__comprehension_clauses, + [64499] = 7, ACTIONS(3), 1, sym_comment, ACTIONS(2473), 1, - anon_sym_except, + sym_identifier, ACTIONS(2475), 1, - anon_sym_finally, - STATE(566), 1, - sym_finally_clause, - STATE(268), 2, - sym_except_clause, - aux_sym_try_statement_repeat1, - STATE(269), 2, - sym_except_group_clause, - aux_sym_try_statement_repeat2, - [64055] = 8, + anon_sym_DOT, + ACTIONS(2477), 1, + anon_sym___future__, + STATE(1343), 1, + aux_sym_import_prefix_repeat1, + STATE(1462), 1, + sym_import_prefix, + STATE(1712), 2, + sym_relative_import, + sym_dotted_name, + [64522] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2395), 1, - anon_sym_COMMA, - ACTIONS(2399), 1, - anon_sym_if, - ACTIONS(2403), 1, - anon_sym_and, ACTIONS(2405), 1, + anon_sym_and, + ACTIONS(2407), 1, anon_sym_or, - ACTIONS(2477), 1, - anon_sym_as, - ACTIONS(2479), 1, - anon_sym_COLON, - STATE(1342), 1, - aux_sym_exception_list_repeat1, - [64080] = 2, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1606), 7, + ACTIONS(2212), 5, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_as, anon_sym_if, anon_sym_COLON, - anon_sym_and, - anon_sym_or, - [64093] = 5, + [64539] = 6, ACTIONS(3), 1, sym_comment, - ACTIONS(2303), 1, - anon_sym_and, - ACTIONS(2305), 1, - anon_sym_or, - ACTIONS(2329), 1, - anon_sym_if, - ACTIONS(2371), 4, - sym__newline, - anon_sym_from, - anon_sym_COMMA, - anon_sym_SEMI, - [64112] = 6, + ACTIONS(2421), 1, + anon_sym_except, + ACTIONS(2423), 1, + anon_sym_finally, + STATE(556), 1, + sym_finally_clause, + STATE(267), 2, + sym_except_group_clause, + aux_sym_try_statement_repeat2, + STATE(275), 2, + sym_except_clause, + aux_sym_try_statement_repeat1, + [64560] = 6, ACTIONS(3), 1, sym_comment, - ACTIONS(2473), 1, + ACTIONS(2447), 1, anon_sym_except, - ACTIONS(2475), 1, + ACTIONS(2449), 1, anon_sym_finally, - STATE(608), 1, + STATE(533), 1, sym_finally_clause, STATE(272), 2, - sym_except_clause, - aux_sym_try_statement_repeat1, - STATE(276), 2, sym_except_group_clause, aux_sym_try_statement_repeat2, - [64133] = 8, + STATE(278), 2, + sym_except_clause, + aux_sym_try_statement_repeat1, + [64581] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(2109), 1, + ACTIONS(2090), 1, + anon_sym_COMMA, + ACTIONS(2096), 1, anon_sym_async, - ACTIONS(2111), 1, + ACTIONS(2098), 1, anon_sym_for, - ACTIONS(2481), 1, - anon_sym_COMMA, - ACTIONS(2483), 1, - anon_sym_RBRACE, - STATE(1091), 1, + ACTIONS(2100), 1, + anon_sym_RPAREN, + STATE(1106), 1, sym_for_in_clause, - STATE(1501), 1, - aux_sym_dictionary_repeat1, - STATE(1678), 1, + STATE(1308), 1, + aux_sym__collection_elements_repeat1, + STATE(1628), 1, sym__comprehension_clauses, - [64158] = 3, + [64606] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(2487), 1, - anon_sym_as, - ACTIONS(2485), 6, - anon_sym_RPAREN, + ACTIONS(2090), 1, anon_sym_COMMA, - anon_sym_if, - anon_sym_COLON, + ACTIONS(2096), 1, + anon_sym_async, + ACTIONS(2098), 1, + anon_sym_for, + ACTIONS(2100), 1, anon_sym_RBRACK, - anon_sym_RBRACE, - [64173] = 7, + STATE(1106), 1, + sym_for_in_clause, + STATE(1308), 1, + aux_sym__collection_elements_repeat1, + STATE(1722), 1, + sym__comprehension_clauses, + [64631] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2303), 1, + ACTIONS(2284), 1, anon_sym_and, - ACTIONS(2305), 1, + ACTIONS(2286), 1, anon_sym_or, - ACTIONS(2329), 1, + ACTIONS(2299), 1, anon_sym_if, - ACTIONS(2423), 1, - anon_sym_COMMA, - STATE(1354), 1, - aux_sym_assert_statement_repeat1, - ACTIONS(2489), 2, + ACTIONS(2311), 4, sym__newline, + anon_sym_from, + anon_sym_COMMA, anon_sym_SEMI, - [64196] = 4, + [64650] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2491), 1, - anon_sym_DOT, - STATE(1224), 1, - aux_sym_match_value_pattern_repeat1, - ACTIONS(2493), 4, + ACTIONS(2284), 1, + anon_sym_and, + ACTIONS(2286), 1, + anon_sym_or, + ACTIONS(2299), 1, + anon_sym_if, + ACTIONS(2319), 4, sym__newline, + anon_sym_from, anon_sym_COMMA, - anon_sym_as, anon_sym_SEMI, - [64212] = 4, + [64669] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2497), 1, - anon_sym_COMMA, - STATE(1218), 1, - aux_sym_open_sequence_match_pattern_repeat1, - ACTIONS(2495), 4, - anon_sym_RPAREN, + ACTIONS(2262), 1, anon_sym_if, - anon_sym_COLON, - anon_sym_RBRACK, - [64228] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2500), 1, - anon_sym_COMMA, - STATE(1233), 1, - aux_sym_expression_list_repeat1, - ACTIONS(2502), 4, - anon_sym_RBRACE, - anon_sym_EQ, - anon_sym_COLON2, - sym_type_conversion, - [64244] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2504), 1, - anon_sym_COMMA, - STATE(1233), 1, - aux_sym_expression_list_repeat1, - ACTIONS(2502), 4, + ACTIONS(2266), 1, + anon_sym_and, + ACTIONS(2268), 1, + anon_sym_or, + ACTIONS(2451), 4, anon_sym_RBRACE, anon_sym_EQ, anon_sym_COLON2, sym_type_conversion, - [64260] = 2, + [64688] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2160), 6, + ACTIONS(2288), 7, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_if, - anon_sym_COLON, + anon_sym_async, + anon_sym_for, anon_sym_RBRACK, anon_sym_RBRACE, - [64272] = 4, + [64701] = 7, ACTIONS(3), 1, sym_comment, - ACTIONS(2083), 1, - anon_sym_DOT, - STATE(1033), 1, - aux_sym_match_value_pattern_repeat1, - ACTIONS(2506), 4, - anon_sym_import, - anon_sym_RPAREN, + ACTIONS(2284), 1, + anon_sym_and, + ACTIONS(2286), 1, + anon_sym_or, + ACTIONS(2299), 1, + anon_sym_if, + ACTIONS(2479), 1, anon_sym_COMMA, - anon_sym_as, - [64288] = 6, + STATE(1380), 1, + aux_sym_print_statement_repeat1, + ACTIONS(2481), 2, + sym__newline, + anon_sym_SEMI, + [64724] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2178), 1, + ACTIONS(2136), 1, anon_sym_if, - ACTIONS(2180), 1, + ACTIONS(2138), 1, anon_sym_and, - ACTIONS(2182), 1, + ACTIONS(2140), 1, anon_sym_or, - ACTIONS(2510), 1, - anon_sym_COLON, - ACTIONS(2508), 2, - anon_sym_COMMA, - anon_sym_RBRACK, - [64308] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2491), 1, - anon_sym_DOT, - STATE(1249), 1, - aux_sym_match_value_pattern_repeat1, - ACTIONS(2506), 4, - sym__newline, + ACTIONS(2483), 4, anon_sym_COMMA, - anon_sym_as, - anon_sym_SEMI, - [64324] = 5, + anon_sym_async, + anon_sym_for, + anon_sym_RBRACE, + [64743] = 7, ACTIONS(3), 1, sym_comment, - ACTIONS(2303), 1, + ACTIONS(2284), 1, anon_sym_and, - ACTIONS(2305), 1, + ACTIONS(2286), 1, anon_sym_or, - ACTIONS(2329), 1, + ACTIONS(2299), 1, anon_sym_if, - ACTIONS(2512), 3, - sym__newline, + ACTIONS(2485), 1, anon_sym_COMMA, + STATE(1401), 1, + aux_sym_assert_statement_repeat1, + ACTIONS(2487), 2, + sym__newline, anon_sym_SEMI, - [64342] = 3, - ACTIONS(2077), 1, + [64766] = 8, + ACTIONS(3), 1, sym_comment, - ACTIONS(2514), 2, - anon_sym_LBRACE2, - anon_sym_BSLASH, - ACTIONS(2516), 4, - sym__string_content, - sym__string_end, - sym__escape_interpolation, - sym_escape_sequence, - [64356] = 6, + ACTIONS(2090), 1, + anon_sym_COMMA, + ACTIONS(2096), 1, + anon_sym_async, + ACTIONS(2098), 1, + anon_sym_for, + ACTIONS(2100), 1, + anon_sym_RPAREN, + STATE(1106), 1, + sym_for_in_clause, + STATE(1308), 1, + aux_sym__collection_elements_repeat1, + STATE(1711), 1, + sym__comprehension_clauses, + [64791] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(2520), 1, - anon_sym_COLON, - ACTIONS(2522), 1, - anon_sym_EQ, - STATE(1371), 1, - sym__type_bound, - STATE(1537), 1, - sym__type_param_default, - ACTIONS(2518), 2, + ACTIONS(2090), 1, anon_sym_COMMA, + ACTIONS(2096), 1, + anon_sym_async, + ACTIONS(2098), 1, + anon_sym_for, + ACTIONS(2100), 1, anon_sym_RBRACK, - [64376] = 4, + STATE(1106), 1, + sym_for_in_clause, + STATE(1308), 1, + aux_sym__collection_elements_repeat1, + STATE(1713), 1, + sym__comprehension_clauses, + [64816] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(2083), 1, - anon_sym_DOT, - STATE(1222), 1, - aux_sym_match_value_pattern_repeat1, - ACTIONS(2493), 4, - anon_sym_import, + ACTIONS(2090), 1, + anon_sym_COMMA, + ACTIONS(2096), 1, + anon_sym_async, + ACTIONS(2098), 1, + anon_sym_for, + ACTIONS(2100), 1, + anon_sym_RBRACE, + STATE(1106), 1, + sym_for_in_clause, + STATE(1308), 1, + aux_sym__collection_elements_repeat1, + STATE(1717), 1, + sym__comprehension_clauses, + [64841] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2090), 1, + anon_sym_COMMA, + ACTIONS(2096), 1, + anon_sym_async, + ACTIONS(2098), 1, + anon_sym_for, + ACTIONS(2100), 1, anon_sym_RPAREN, + STATE(1106), 1, + sym_for_in_clause, + STATE(1308), 1, + aux_sym__collection_elements_repeat1, + STATE(1673), 1, + sym__comprehension_clauses, + [64866] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2090), 1, anon_sym_COMMA, - anon_sym_as, - [64392] = 5, + ACTIONS(2096), 1, + anon_sym_async, + ACTIONS(2098), 1, + anon_sym_for, + ACTIONS(2100), 1, + anon_sym_RBRACK, + STATE(1106), 1, + sym_for_in_clause, + STATE(1308), 1, + aux_sym__collection_elements_repeat1, + STATE(1675), 1, + sym__comprehension_clauses, + [64891] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2178), 1, - anon_sym_if, - ACTIONS(2180), 1, - anon_sym_and, ACTIONS(2182), 1, + anon_sym_and, + ACTIONS(2184), 1, anon_sym_or, - ACTIONS(2524), 3, + ACTIONS(2198), 1, + anon_sym_if, + ACTIONS(2489), 4, + anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_RBRACK, + anon_sym_COLON, anon_sym_EQ, - [64410] = 3, - ACTIONS(2077), 1, + [64910] = 8, + ACTIONS(3), 1, sym_comment, - ACTIONS(2526), 2, - anon_sym_LBRACE2, - anon_sym_BSLASH, - ACTIONS(2528), 4, - sym__string_content, - sym__string_end, - sym__escape_interpolation, - sym_escape_sequence, - [64424] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2532), 1, + ACTIONS(2090), 1, anon_sym_COMMA, - STATE(1231), 1, - aux_sym_expression_list_repeat1, - ACTIONS(2530), 4, - anon_sym_RPAREN, - anon_sym_COLON, - anon_sym_RBRACK, + ACTIONS(2096), 1, + anon_sym_async, + ACTIONS(2098), 1, + anon_sym_for, + ACTIONS(2100), 1, anon_sym_RBRACE, - [64440] = 7, + STATE(1106), 1, + sym_for_in_clause, + STATE(1308), 1, + aux_sym__collection_elements_repeat1, + STATE(1676), 1, + sym__comprehension_clauses, + [64935] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2178), 1, + ACTIONS(2071), 7, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_as, anon_sym_if, - ACTIONS(2180), 1, + anon_sym_COLON, anon_sym_and, - ACTIONS(2182), 1, anon_sym_or, - ACTIONS(2216), 1, - anon_sym_RPAREN, - ACTIONS(2218), 1, - anon_sym_COMMA, - STATE(1441), 1, - aux_sym_argument_list_repeat1, - [64462] = 4, + [64948] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2535), 1, - anon_sym_COMMA, - STATE(1233), 1, - aux_sym_expression_list_repeat1, - ACTIONS(2530), 4, - anon_sym_RBRACE, - anon_sym_EQ, - anon_sym_COLON2, - sym_type_conversion, - [64478] = 7, + ACTIONS(2453), 1, + sym_identifier, + ACTIONS(2455), 1, + anon_sym_STAR, + ACTIONS(2457), 1, + anon_sym_STAR_STAR, + STATE(1409), 4, + sym_typevar_parameter, + sym_typevartuple_parameter, + sym_paramspec_parameter, + sym__type_parameter, + [64967] = 7, ACTIONS(3), 1, sym_comment, - ACTIONS(2178), 1, - anon_sym_if, - ACTIONS(2180), 1, + ACTIONS(2284), 1, anon_sym_and, - ACTIONS(2182), 1, + ACTIONS(2286), 1, anon_sym_or, - ACTIONS(2357), 1, + ACTIONS(2299), 1, + anon_sym_if, + ACTIONS(2339), 1, anon_sym_COMMA, - ACTIONS(2538), 1, - anon_sym_COLON, - STATE(1250), 1, + STATE(1288), 1, aux_sym_expression_list_repeat1, - [64500] = 5, + ACTIONS(2491), 2, + sym__newline, + anon_sym_SEMI, + [64990] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(2178), 1, - anon_sym_if, - ACTIONS(2180), 1, - anon_sym_and, - ACTIONS(2182), 1, - anon_sym_or, - ACTIONS(2540), 3, - anon_sym_RPAREN, + ACTIONS(2096), 1, + anon_sym_async, + ACTIONS(2098), 1, + anon_sym_for, + ACTIONS(2493), 1, anon_sym_COMMA, - anon_sym_COLON, - [64518] = 6, + ACTIONS(2495), 1, + anon_sym_RBRACE, + STATE(1106), 1, + sym_for_in_clause, + STATE(1479), 1, + aux_sym_dictionary_repeat1, + STATE(1714), 1, + sym__comprehension_clauses, + [65015] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2178), 1, - anon_sym_if, - ACTIONS(2180), 1, - anon_sym_and, - ACTIONS(2182), 1, - anon_sym_or, - ACTIONS(2544), 1, - anon_sym_COLON, - ACTIONS(2542), 2, + ACTIONS(2276), 7, + anon_sym_RPAREN, anon_sym_COMMA, anon_sym_RBRACK, - [64538] = 7, + anon_sym_RBRACE, + anon_sym_EQ, + anon_sym_COLON2, + sym_type_conversion, + [65028] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2178), 1, + ACTIONS(2136), 1, anon_sym_if, - ACTIONS(2180), 1, + ACTIONS(2138), 1, anon_sym_and, - ACTIONS(2182), 1, + ACTIONS(2140), 1, anon_sym_or, - ACTIONS(2357), 1, + ACTIONS(2319), 4, anon_sym_COMMA, - ACTIONS(2546), 1, - anon_sym_COLON, - STATE(1250), 1, - aux_sym_expression_list_repeat1, - [64560] = 7, + anon_sym_async, + anon_sym_for, + anon_sym_RBRACE, + [65047] = 7, ACTIONS(3), 1, sym_comment, - ACTIONS(2178), 1, - anon_sym_if, - ACTIONS(2180), 1, + ACTIONS(2284), 1, anon_sym_and, - ACTIONS(2182), 1, + ACTIONS(2286), 1, anon_sym_or, - ACTIONS(2357), 1, + ACTIONS(2299), 1, + anon_sym_if, + ACTIONS(2339), 1, anon_sym_COMMA, - ACTIONS(2548), 1, - anon_sym_COLON, - STATE(1250), 1, + STATE(1288), 1, aux_sym_expression_list_repeat1, - [64582] = 2, + ACTIONS(2497), 2, + sym__newline, + anon_sym_SEMI, + [65070] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(2550), 6, + ACTIONS(2501), 1, + anon_sym_as, + ACTIONS(2499), 6, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_if, anon_sym_COLON, anon_sym_RBRACK, anon_sym_RBRACE, - [64594] = 5, + [65085] = 7, ACTIONS(3), 1, sym_comment, - ACTIONS(2303), 1, + ACTIONS(2284), 1, anon_sym_and, - ACTIONS(2305), 1, + ACTIONS(2286), 1, anon_sym_or, - ACTIONS(2329), 1, + ACTIONS(2299), 1, anon_sym_if, - ACTIONS(2552), 3, + ACTIONS(2485), 1, + anon_sym_COMMA, + STATE(1390), 1, + aux_sym_assert_statement_repeat1, + ACTIONS(2503), 2, + sym__newline, + anon_sym_SEMI, + [65108] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2505), 1, + anon_sym_DOT, + STATE(1242), 1, + aux_sym_match_value_pattern_repeat1, + ACTIONS(2075), 4, sym__newline, anon_sym_COMMA, + anon_sym_as, anon_sym_SEMI, - [64612] = 7, + [65124] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2178), 1, - anon_sym_if, - ACTIONS(2180), 1, - anon_sym_and, - ACTIONS(2182), 1, - anon_sym_or, - ACTIONS(2357), 1, + ACTIONS(2510), 1, anon_sym_COMMA, - ACTIONS(2554), 1, - anon_sym_COLON, - STATE(1250), 1, + STATE(1249), 1, aux_sym_expression_list_repeat1, - [64634] = 5, + ACTIONS(2508), 4, + anon_sym_RPAREN, + anon_sym_COLON, + anon_sym_RBRACK, + anon_sym_RBRACE, + [65140] = 6, ACTIONS(3), 1, sym_comment, - ACTIONS(2303), 1, + ACTIONS(2182), 1, anon_sym_and, - ACTIONS(2305), 1, + ACTIONS(2184), 1, anon_sym_or, - ACTIONS(2329), 1, + ACTIONS(2198), 1, anon_sym_if, - ACTIONS(2556), 3, + ACTIONS(2514), 1, + anon_sym_COLON, + ACTIONS(2512), 2, + anon_sym_COMMA, + anon_sym_RBRACK, + [65160] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2516), 1, + anon_sym_DOT, + STATE(1262), 1, + aux_sym_match_value_pattern_repeat1, + ACTIONS(2518), 4, sym__newline, anon_sym_COMMA, + anon_sym_as, anon_sym_SEMI, - [64652] = 5, + [65176] = 6, ACTIONS(3), 1, sym_comment, - ACTIONS(2303), 1, + ACTIONS(2182), 1, anon_sym_and, - ACTIONS(2305), 1, + ACTIONS(2184), 1, anon_sym_or, - ACTIONS(2329), 1, + ACTIONS(2198), 1, anon_sym_if, - ACTIONS(2453), 3, - sym__newline, - anon_sym_EQ, - anon_sym_SEMI, - [64670] = 5, + ACTIONS(2522), 1, + anon_sym_COLON, + ACTIONS(2520), 2, + anon_sym_COMMA, + anon_sym_RBRACK, + [65196] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2178), 1, - anon_sym_if, - ACTIONS(2180), 1, + ACTIONS(2284), 1, anon_sym_and, - ACTIONS(2182), 1, + ACTIONS(2286), 1, anon_sym_or, - ACTIONS(2558), 3, - anon_sym_RPAREN, + ACTIONS(2299), 1, + anon_sym_if, + ACTIONS(2524), 3, + sym__newline, + anon_sym_COMMA, + anon_sym_SEMI, + [65214] = 3, + ACTIONS(2086), 1, + sym_comment, + ACTIONS(2526), 2, + anon_sym_LBRACE2, + anon_sym_BSLASH, + ACTIONS(2528), 4, + sym__string_content, + sym__string_end, + sym__escape_interpolation, + sym_escape_sequence, + [65228] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2532), 1, anon_sym_COMMA, + STATE(1249), 1, + aux_sym_expression_list_repeat1, + ACTIONS(2530), 4, + anon_sym_RPAREN, anon_sym_COLON, - [64688] = 7, + anon_sym_RBRACK, + anon_sym_RBRACE, + [65244] = 7, ACTIONS(3), 1, sym_comment, - ACTIONS(2178), 1, - anon_sym_if, - ACTIONS(2180), 1, - anon_sym_and, ACTIONS(2182), 1, + anon_sym_and, + ACTIONS(2184), 1, anon_sym_or, - ACTIONS(2357), 1, + ACTIONS(2198), 1, + anon_sym_if, + ACTIONS(2393), 1, anon_sym_COMMA, - ACTIONS(2560), 1, + ACTIONS(2535), 1, anon_sym_COLON, - STATE(1250), 1, + STATE(1243), 1, aux_sym_expression_list_repeat1, - [64710] = 7, + [65266] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2106), 1, + anon_sym_DOT, + STATE(1256), 1, + aux_sym_match_value_pattern_repeat1, + ACTIONS(2518), 4, + anon_sym_import, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_as, + [65282] = 3, + ACTIONS(2086), 1, + sym_comment, + ACTIONS(2537), 2, + anon_sym_LBRACE2, + anon_sym_BSLASH, + ACTIONS(2539), 4, + sym__string_content, + sym__string_end, + sym__escape_interpolation, + sym_escape_sequence, + [65296] = 7, ACTIONS(3), 1, sym_comment, - ACTIONS(2178), 1, - anon_sym_if, - ACTIONS(2180), 1, - anon_sym_and, ACTIONS(2182), 1, + anon_sym_and, + ACTIONS(2184), 1, anon_sym_or, - ACTIONS(2357), 1, + ACTIONS(2198), 1, + anon_sym_if, + ACTIONS(2393), 1, anon_sym_COMMA, - ACTIONS(2562), 1, + ACTIONS(2541), 1, anon_sym_COLON, - STATE(1250), 1, + STATE(1243), 1, aux_sym_expression_list_repeat1, - [64732] = 4, + [65318] = 6, ACTIONS(3), 1, sym_comment, - ACTIONS(2564), 1, - anon_sym_COMMA, - STATE(1231), 1, - aux_sym_expression_list_repeat1, - ACTIONS(2502), 4, - anon_sym_RPAREN, + ACTIONS(2545), 1, anon_sym_COLON, + ACTIONS(2547), 1, + anon_sym_EQ, + STATE(1389), 1, + sym__type_bound, + STATE(1570), 1, + sym__type_param_default, + ACTIONS(2543), 2, + anon_sym_COMMA, anon_sym_RBRACK, - anon_sym_RBRACE, - [64748] = 6, + [65338] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2411), 1, - anon_sym_DOT, - ACTIONS(2566), 1, - sym_identifier, - STATE(1374), 1, - aux_sym_import_prefix_repeat1, - STATE(1419), 1, - sym_import_prefix, - STATE(1661), 2, - sym_relative_import, - sym_dotted_name, - [64768] = 4, + ACTIONS(2284), 1, + anon_sym_and, + ACTIONS(2286), 1, + anon_sym_or, + ACTIONS(2299), 1, + anon_sym_if, + ACTIONS(2549), 3, + sym__newline, + anon_sym_COMMA, + anon_sym_SEMI, + [65356] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2568), 1, + ACTIONS(2106), 1, anon_sym_DOT, - STATE(1249), 1, + STATE(1039), 1, aux_sym_match_value_pattern_repeat1, - ACTIONS(2063), 4, - sym__newline, + ACTIONS(2551), 4, + anon_sym_import, + anon_sym_RPAREN, anon_sym_COMMA, anon_sym_as, - anon_sym_SEMI, - [64784] = 4, + [65372] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2571), 1, - anon_sym_COMMA, - STATE(1231), 1, - aux_sym_expression_list_repeat1, - ACTIONS(2502), 4, - anon_sym_RPAREN, - anon_sym_COLON, - anon_sym_RBRACK, - anon_sym_RBRACE, - [64800] = 3, - ACTIONS(2077), 1, - sym_comment, - ACTIONS(2573), 2, - anon_sym_LBRACE2, - anon_sym_BSLASH, - ACTIONS(2575), 4, - sym__string_content, - sym__string_end, - sym__escape_interpolation, - sym_escape_sequence, - [64814] = 3, - ACTIONS(2077), 1, - sym_comment, - ACTIONS(2577), 2, - anon_sym_LBRACE2, - anon_sym_BSLASH, - ACTIONS(2579), 4, - sym__string_content, - sym__string_end, - sym__escape_interpolation, - sym_escape_sequence, - [64828] = 5, + ACTIONS(2555), 1, + anon_sym_AT, + STATE(1257), 2, + sym_decorator, + aux_sym_decorated_definition_repeat1, + ACTIONS(2553), 3, + anon_sym_async, + anon_sym_def, + anon_sym_class, + [65388] = 7, ACTIONS(3), 1, sym_comment, - ACTIONS(2399), 1, - anon_sym_if, - ACTIONS(2403), 1, + ACTIONS(2182), 1, anon_sym_and, - ACTIONS(2405), 1, + ACTIONS(2184), 1, anon_sym_or, - ACTIONS(2581), 3, + ACTIONS(2198), 1, + anon_sym_if, + ACTIONS(2232), 1, + anon_sym_RPAREN, + ACTIONS(2234), 1, anon_sym_COMMA, - anon_sym_as, - anon_sym_COLON, - [64846] = 3, - ACTIONS(2077), 1, + STATE(1526), 1, + aux_sym_argument_list_repeat1, + [65410] = 3, + ACTIONS(2086), 1, sym_comment, - ACTIONS(2583), 2, + ACTIONS(2558), 2, anon_sym_LBRACE2, anon_sym_BSLASH, - ACTIONS(2585), 4, + ACTIONS(2560), 4, sym__string_content, sym__string_end, sym__escape_interpolation, sym_escape_sequence, - [64860] = 3, - ACTIONS(2077), 1, + [65424] = 3, + ACTIONS(2086), 1, sym_comment, - ACTIONS(2587), 2, + ACTIONS(2562), 2, anon_sym_LBRACE2, anon_sym_BSLASH, - ACTIONS(2589), 4, + ACTIONS(2564), 4, sym__string_content, sym__string_end, sym__escape_interpolation, sym_escape_sequence, - [64874] = 6, + [65438] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2178), 1, - anon_sym_if, - ACTIONS(2180), 1, - anon_sym_and, ACTIONS(2182), 1, + anon_sym_and, + ACTIONS(2184), 1, anon_sym_or, - ACTIONS(2593), 1, - anon_sym_COLON, - ACTIONS(2591), 2, + ACTIONS(2198), 1, + anon_sym_if, + ACTIONS(2566), 3, + anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_RBRACK, - [64894] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2597), 1, - anon_sym_AT, - STATE(1257), 2, - sym_decorator, - aux_sym_decorated_definition_repeat1, - ACTIONS(2595), 3, - anon_sym_async, - anon_sym_def, - anon_sym_class, - [64910] = 5, + anon_sym_COLON, + [65456] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2178), 1, - anon_sym_if, - ACTIONS(2180), 1, - anon_sym_and, - ACTIONS(2182), 1, - anon_sym_or, - ACTIONS(2600), 2, + ACTIONS(2516), 1, + anon_sym_DOT, + STATE(1242), 1, + aux_sym_match_value_pattern_repeat1, + ACTIONS(2551), 4, + sym__newline, anon_sym_COMMA, - anon_sym_RBRACK, - [64927] = 2, + anon_sym_as, + anon_sym_SEMI, + [65472] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2602), 5, + ACTIONS(2110), 6, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_if, anon_sym_COLON, anon_sym_RBRACK, - [64938] = 5, + anon_sym_RBRACE, + [65484] = 6, ACTIONS(3), 1, sym_comment, - ACTIONS(2178), 1, - anon_sym_if, - ACTIONS(2180), 1, + ACTIONS(2182), 1, anon_sym_and, + ACTIONS(2184), 1, + anon_sym_or, + ACTIONS(2198), 1, + anon_sym_if, + ACTIONS(2570), 1, + anon_sym_COLON, + ACTIONS(2568), 2, + anon_sym_COMMA, + anon_sym_RBRACK, + [65504] = 7, + ACTIONS(3), 1, + sym_comment, ACTIONS(2182), 1, + anon_sym_and, + ACTIONS(2184), 1, anon_sym_or, - ACTIONS(2417), 2, + ACTIONS(2198), 1, + anon_sym_if, + ACTIONS(2393), 1, anon_sym_COMMA, - anon_sym_RBRACE, - [64955] = 5, + ACTIONS(2572), 1, + anon_sym_COLON, + STATE(1243), 1, + aux_sym_expression_list_repeat1, + [65526] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2178), 1, + ACTIONS(2401), 1, anon_sym_if, - ACTIONS(2180), 1, + ACTIONS(2405), 1, anon_sym_and, - ACTIONS(2182), 1, + ACTIONS(2407), 1, anon_sym_or, - ACTIONS(2604), 2, + ACTIONS(2574), 3, anon_sym_COMMA, - anon_sym_RBRACK, - [64972] = 2, + anon_sym_as, + anon_sym_COLON, + [65544] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2371), 5, + ACTIONS(2182), 1, + anon_sym_and, + ACTIONS(2184), 1, + anon_sym_or, + ACTIONS(2198), 1, + anon_sym_if, + ACTIONS(2576), 3, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_COLON, - anon_sym_RBRACK, - anon_sym_RBRACE, - [64983] = 5, + [65562] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2178), 1, - anon_sym_if, - ACTIONS(2180), 1, - anon_sym_and, ACTIONS(2182), 1, + anon_sym_and, + ACTIONS(2184), 1, anon_sym_or, - ACTIONS(2606), 2, - anon_sym_RPAREN, + ACTIONS(2198), 1, + anon_sym_if, + ACTIONS(2578), 3, anon_sym_COMMA, - [65000] = 5, + anon_sym_RBRACK, + anon_sym_EQ, + [65580] = 6, ACTIONS(3), 1, sym_comment, - ACTIONS(2427), 1, + ACTIONS(2475), 1, + anon_sym_DOT, + ACTIONS(2580), 1, sym_identifier, - STATE(1326), 1, + STATE(1343), 1, + aux_sym_import_prefix_repeat1, + STATE(1462), 1, + sym_import_prefix, + STATE(1620), 2, + sym_relative_import, sym_dotted_name, - STATE(1381), 1, - sym_aliased_import, - ACTIONS(2608), 2, - sym__newline, - anon_sym_SEMI, - [65017] = 5, + [65600] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2582), 1, + anon_sym_COMMA, + STATE(1270), 1, + aux_sym_expression_list_repeat1, + ACTIONS(2530), 4, + anon_sym_RBRACE, + anon_sym_EQ, + anon_sym_COLON2, + sym_type_conversion, + [65616] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2303), 1, + ACTIONS(2284), 1, anon_sym_and, - ACTIONS(2305), 1, + ACTIONS(2286), 1, anon_sym_or, - ACTIONS(2329), 1, + ACTIONS(2299), 1, anon_sym_if, - ACTIONS(2610), 2, + ACTIONS(2489), 3, sym__newline, + anon_sym_EQ, anon_sym_SEMI, - [65034] = 2, + [65634] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2371), 5, + ACTIONS(2585), 1, anon_sym_COMMA, + STATE(1270), 1, + aux_sym_expression_list_repeat1, + ACTIONS(2508), 4, anon_sym_RBRACE, anon_sym_EQ, anon_sym_COLON2, sym_type_conversion, - [65045] = 4, + [65650] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2614), 1, + ACTIONS(2587), 1, anon_sym_COMMA, - STATE(1287), 1, - aux_sym__collection_elements_repeat1, - ACTIONS(2612), 3, + STATE(1249), 1, + aux_sym_expression_list_repeat1, + ACTIONS(2508), 4, anon_sym_RPAREN, + anon_sym_COLON, anon_sym_RBRACK, anon_sym_RBRACE, - [65060] = 5, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2303), 1, - anon_sym_and, - ACTIONS(2305), 1, - anon_sym_or, - ACTIONS(2329), 1, - anon_sym_if, - ACTIONS(2616), 2, - sym__newline, - anon_sym_SEMI, - [65077] = 6, + [65666] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2618), 1, + ACTIONS(2589), 1, + anon_sym_COMMA, + STATE(1270), 1, + aux_sym_expression_list_repeat1, + ACTIONS(2508), 4, anon_sym_RBRACE, - ACTIONS(2620), 1, anon_sym_EQ, - ACTIONS(2622), 1, anon_sym_COLON2, - ACTIONS(2624), 1, sym_type_conversion, - STATE(1694), 1, - sym_format_specifier, - [65096] = 5, + [65682] = 3, + ACTIONS(2086), 1, + sym_comment, + ACTIONS(2591), 2, + anon_sym_LBRACE2, + anon_sym_BSLASH, + ACTIONS(2593), 4, + sym__string_content, + sym__string_end, + sym__escape_interpolation, + sym_escape_sequence, + [65696] = 7, ACTIONS(3), 1, sym_comment, - ACTIONS(2303), 1, + ACTIONS(2182), 1, anon_sym_and, - ACTIONS(2305), 1, + ACTIONS(2184), 1, anon_sym_or, - ACTIONS(2329), 1, + ACTIONS(2198), 1, anon_sym_if, - ACTIONS(2626), 2, - sym__newline, - anon_sym_SEMI, - [65113] = 6, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2427), 1, - sym_identifier, - ACTIONS(2628), 1, - anon_sym_LPAREN, - STATE(1281), 1, - sym_dotted_name, - STATE(1372), 1, - sym_aliased_import, - STATE(1559), 1, - sym__import_list, - [65132] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2630), 1, + ACTIONS(2393), 1, anon_sym_COMMA, - STATE(1284), 1, + ACTIONS(2595), 1, + anon_sym_COLON, + STATE(1243), 1, aux_sym_expression_list_repeat1, - ACTIONS(2502), 3, - sym__newline, - anon_sym_from, - anon_sym_SEMI, - [65147] = 6, + [65718] = 7, ACTIONS(3), 1, sym_comment, - ACTIONS(2632), 1, - anon_sym_LPAREN, - ACTIONS(2634), 1, + ACTIONS(2182), 1, + anon_sym_and, + ACTIONS(2184), 1, + anon_sym_or, + ACTIONS(2198), 1, + anon_sym_if, + ACTIONS(2393), 1, + anon_sym_COMMA, + ACTIONS(2597), 1, anon_sym_COLON, - ACTIONS(2636), 1, - anon_sym_LBRACK, - STATE(1463), 1, - sym_type_parameters, - STATE(1611), 1, - sym_argument_list, - [65166] = 5, + STATE(1243), 1, + aux_sym_expression_list_repeat1, + [65740] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2303), 1, + ACTIONS(2284), 1, anon_sym_and, - ACTIONS(2305), 1, + ACTIONS(2286), 1, anon_sym_or, - ACTIONS(2329), 1, + ACTIONS(2299), 1, anon_sym_if, - ACTIONS(2433), 2, + ACTIONS(2599), 3, sym__newline, + anon_sym_COMMA, anon_sym_SEMI, - [65183] = 5, + [65758] = 7, ACTIONS(3), 1, sym_comment, - ACTIONS(2178), 1, - anon_sym_if, - ACTIONS(2180), 1, - anon_sym_and, ACTIONS(2182), 1, + anon_sym_and, + ACTIONS(2184), 1, anon_sym_or, - ACTIONS(2638), 2, - anon_sym_RPAREN, + ACTIONS(2198), 1, + anon_sym_if, + ACTIONS(2393), 1, anon_sym_COMMA, - [65200] = 5, + ACTIONS(2601), 1, + anon_sym_COLON, + STATE(1243), 1, + aux_sym_expression_list_repeat1, + [65780] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2178), 1, + ACTIONS(2605), 1, + anon_sym_COMMA, + STATE(1280), 1, + aux_sym_open_sequence_match_pattern_repeat1, + ACTIONS(2603), 4, + anon_sym_RPAREN, anon_sym_if, - ACTIONS(2180), 1, - anon_sym_and, + anon_sym_COLON, + anon_sym_RBRACK, + [65796] = 3, + ACTIONS(2086), 1, + sym_comment, + ACTIONS(2608), 2, + anon_sym_LBRACE2, + anon_sym_BSLASH, + ACTIONS(2610), 4, + sym__string_content, + sym__string_end, + sym__escape_interpolation, + sym_escape_sequence, + [65810] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2612), 6, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_if, + anon_sym_COLON, + anon_sym_RBRACK, + anon_sym_RBRACE, + [65822] = 5, + ACTIONS(3), 1, + sym_comment, ACTIONS(2182), 1, + anon_sym_and, + ACTIONS(2184), 1, anon_sym_or, - ACTIONS(2640), 2, + ACTIONS(2198), 1, + anon_sym_if, + ACTIONS(2614), 2, anon_sym_COMMA, anon_sym_RBRACK, - [65217] = 5, + [65839] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2303), 1, + ACTIONS(2284), 1, anon_sym_and, - ACTIONS(2305), 1, + ACTIONS(2286), 1, anon_sym_or, - ACTIONS(2329), 1, + ACTIONS(2299), 1, anon_sym_if, - ACTIONS(2642), 2, + ACTIONS(2616), 2, sym__newline, anon_sym_SEMI, - [65234] = 4, + [65856] = 6, ACTIONS(3), 1, sym_comment, - ACTIONS(2644), 1, + ACTIONS(2618), 1, + anon_sym_LPAREN, + ACTIONS(2620), 1, + anon_sym_COLON, + ACTIONS(2622), 1, + anon_sym_LBRACK, + STATE(1520), 1, + sym_type_parameters, + STATE(1701), 1, + sym_argument_list, + [65875] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2624), 1, anon_sym_COMMA, - STATE(1284), 1, + STATE(1299), 1, aux_sym_expression_list_repeat1, - ACTIONS(2502), 3, + ACTIONS(2508), 3, sym__newline, anon_sym_from, anon_sym_SEMI, - [65249] = 6, - ACTIONS(2077), 1, + [65890] = 6, + ACTIONS(2086), 1, sym_comment, - ACTIONS(2646), 1, + ACTIONS(2626), 1, anon_sym_RBRACE, - ACTIONS(2648), 1, + ACTIONS(2628), 1, anon_sym_LBRACE2, - ACTIONS(2650), 1, + ACTIONS(2630), 1, aux_sym_format_specifier_token1, - STATE(1288), 1, + STATE(1315), 1, aux_sym_format_specifier_repeat1, - STATE(1446), 1, + STATE(1499), 1, sym_interpolation, - [65268] = 5, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2178), 1, - anon_sym_if, - ACTIONS(2180), 1, - anon_sym_and, - ACTIONS(2182), 1, - anon_sym_or, - ACTIONS(2652), 2, - anon_sym_RPAREN, - anon_sym_COMMA, - [65285] = 5, + [65909] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2654), 1, + ACTIONS(2632), 1, anon_sym_COMMA, - ACTIONS(2656), 1, - anon_sym_as, - STATE(1322), 1, - aux_sym__import_list_repeat1, - ACTIONS(2658), 2, + STATE(1299), 1, + aux_sym_expression_list_repeat1, + ACTIONS(2508), 3, sym__newline, + anon_sym_from, anon_sym_SEMI, - [65302] = 5, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2178), 1, - anon_sym_if, - ACTIONS(2180), 1, - anon_sym_and, - ACTIONS(2182), 1, - anon_sym_or, - ACTIONS(2660), 2, - anon_sym_COMMA, - anon_sym_RBRACK, - [65319] = 6, + [65924] = 6, ACTIONS(3), 1, sym_comment, - ACTIONS(2632), 1, - anon_sym_LPAREN, + ACTIONS(2634), 1, + anon_sym_RBRACE, ACTIONS(2636), 1, - anon_sym_LBRACK, - ACTIONS(2662), 1, - anon_sym_COLON, - STATE(1470), 1, - sym_type_parameters, - STATE(1653), 1, - sym_argument_list, - [65338] = 4, + anon_sym_EQ, + ACTIONS(2638), 1, + anon_sym_COLON2, + ACTIONS(2640), 1, + sym_type_conversion, + STATE(1677), 1, + sym_format_specifier, + [65943] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2664), 1, + ACTIONS(2642), 1, anon_sym_COMMA, - STATE(1284), 1, - aux_sym_expression_list_repeat1, - ACTIONS(2530), 3, + ACTIONS(2644), 1, + anon_sym_as, + STATE(1336), 1, + aux_sym__import_list_repeat1, + ACTIONS(2646), 2, sym__newline, - anon_sym_from, anon_sym_SEMI, - [65353] = 5, + [65960] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2178), 1, - anon_sym_if, - ACTIONS(2180), 1, - anon_sym_and, - ACTIONS(2182), 1, - anon_sym_or, - ACTIONS(2667), 2, - anon_sym_COMMA, - anon_sym_RBRACK, - [65370] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2669), 1, - anon_sym_COMMA, - STATE(1287), 1, - aux_sym__collection_elements_repeat1, - ACTIONS(2612), 3, + ACTIONS(2311), 5, anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_COLON, anon_sym_RBRACK, anon_sym_RBRACE, - [65385] = 4, + [65971] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2673), 1, + ACTIONS(2182), 1, + anon_sym_and, + ACTIONS(2184), 1, + anon_sym_or, + ACTIONS(2198), 1, + anon_sym_if, + ACTIONS(2483), 2, anon_sym_COMMA, - STATE(1287), 1, - aux_sym__collection_elements_repeat1, - ACTIONS(2671), 3, - anon_sym_RPAREN, - anon_sym_RBRACK, anon_sym_RBRACE, - [65400] = 6, - ACTIONS(2077), 1, - sym_comment, - ACTIONS(2676), 1, - anon_sym_RBRACE, - ACTIONS(2678), 1, - anon_sym_LBRACE2, - ACTIONS(2681), 1, - aux_sym_format_specifier_token1, - STATE(1288), 1, - aux_sym_format_specifier_repeat1, - STATE(1446), 1, - sym_interpolation, - [65419] = 5, + [65988] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2427), 1, - sym_identifier, - STATE(1326), 1, - sym_dotted_name, - STATE(1381), 1, - sym_aliased_import, - ACTIONS(2684), 2, + ACTIONS(2075), 5, sym__newline, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_as, anon_sym_SEMI, - [65436] = 4, + [65999] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2103), 1, + ACTIONS(2090), 1, anon_sym_COMMA, - STATE(1286), 1, + STATE(1309), 1, aux_sym__collection_elements_repeat1, - ACTIONS(2113), 3, + ACTIONS(2100), 3, anon_sym_RPAREN, anon_sym_RBRACK, anon_sym_RBRACE, - [65451] = 6, + [66014] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2622), 1, + ACTIONS(2284), 1, + anon_sym_and, + ACTIONS(2286), 1, + anon_sym_or, + ACTIONS(2299), 1, + anon_sym_if, + ACTIONS(2648), 2, + sym__newline, + anon_sym_SEMI, + [66031] = 6, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2638), 1, anon_sym_COLON2, - ACTIONS(2686), 1, + ACTIONS(2650), 1, anon_sym_RBRACE, - ACTIONS(2688), 1, + ACTIONS(2652), 1, anon_sym_EQ, - ACTIONS(2690), 1, + ACTIONS(2654), 1, sym_type_conversion, - STATE(1718), 1, + STATE(1651), 1, sym_format_specifier, - [65470] = 6, - ACTIONS(2077), 1, - sym_comment, - ACTIONS(2648), 1, - anon_sym_LBRACE2, - ACTIONS(2692), 1, - anon_sym_RBRACE, - ACTIONS(2694), 1, - aux_sym_format_specifier_token1, - STATE(1279), 1, - aux_sym_format_specifier_repeat1, - STATE(1446), 1, - sym_interpolation, - [65489] = 2, + [66050] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2495), 5, + ACTIONS(2182), 1, + anon_sym_and, + ACTIONS(2184), 1, + anon_sym_or, + ACTIONS(2198), 1, + anon_sym_if, + ACTIONS(2656), 2, anon_sym_RPAREN, anon_sym_COMMA, + [66067] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2182), 1, + anon_sym_and, + ACTIONS(2184), 1, + anon_sym_or, + ACTIONS(2198), 1, anon_sym_if, - anon_sym_COLON, - anon_sym_RBRACK, - [65500] = 2, + ACTIONS(2658), 2, + anon_sym_RPAREN, + anon_sym_COMMA, + [66084] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2063), 5, - sym__newline, - anon_sym_DOT, + ACTIONS(2660), 1, anon_sym_COMMA, - anon_sym_as, + STATE(1299), 1, + aux_sym_expression_list_repeat1, + ACTIONS(2530), 3, + sym__newline, + anon_sym_from, anon_sym_SEMI, - [65511] = 5, + [66099] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2427), 1, + ACTIONS(2413), 1, sym_identifier, - STATE(1326), 1, + STATE(1329), 1, sym_dotted_name, - STATE(1381), 1, + STATE(1428), 1, sym_aliased_import, - ACTIONS(2608), 2, + ACTIONS(2663), 2, sym__newline, anon_sym_SEMI, - [65528] = 5, + [66116] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2566), 1, + ACTIONS(2311), 5, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_EQ, + anon_sym_COLON2, + sym_type_conversion, + [66127] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2413), 1, sym_identifier, - ACTIONS(2608), 1, - anon_sym_RPAREN, - STATE(1473), 1, + STATE(1329), 1, sym_dotted_name, - STATE(1553), 1, + STATE(1428), 1, sym_aliased_import, - [65544] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2696), 1, - anon_sym_COMMA, - STATE(1321), 1, - aux_sym_global_statement_repeat1, - ACTIONS(2698), 2, + ACTIONS(2665), 2, sym__newline, anon_sym_SEMI, - [65558] = 4, + [66144] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2696), 1, + ACTIONS(2182), 1, + anon_sym_and, + ACTIONS(2184), 1, + anon_sym_or, + ACTIONS(2198), 1, + anon_sym_if, + ACTIONS(2667), 2, anon_sym_COMMA, - STATE(1321), 1, - aux_sym_global_statement_repeat1, - ACTIONS(2700), 2, - sym__newline, - anon_sym_SEMI, - [65572] = 5, + anon_sym_RBRACK, + [66161] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2702), 1, - anon_sym_SEMI, - ACTIONS(2704), 1, + ACTIONS(2413), 1, + sym_identifier, + STATE(1329), 1, + sym_dotted_name, + STATE(1428), 1, + sym_aliased_import, + ACTIONS(2663), 2, sym__newline, - STATE(129), 1, - sym__semicolon, - STATE(1300), 1, - aux_sym__simple_statements_repeat1, - [65588] = 5, + anon_sym_SEMI, + [66178] = 6, + ACTIONS(2086), 1, + sym_comment, + ACTIONS(2669), 1, + anon_sym_RBRACE, + ACTIONS(2671), 1, + anon_sym_LBRACE2, + ACTIONS(2674), 1, + aux_sym_format_specifier_token1, + STATE(1305), 1, + aux_sym_format_specifier_repeat1, + STATE(1499), 1, + sym_interpolation, + [66197] = 6, ACTIONS(3), 1, sym_comment, - ACTIONS(565), 1, - sym__newline, - ACTIONS(2706), 1, - anon_sym_SEMI, - STATE(131), 1, - sym__semicolon, - STATE(1316), 1, - aux_sym__simple_statements_repeat1, - [65604] = 5, + ACTIONS(2413), 1, + sym_identifier, + ACTIONS(2677), 1, + anon_sym_LPAREN, + STATE(1290), 1, + sym_dotted_name, + STATE(1327), 1, + sym_aliased_import, + STATE(1565), 1, + sym__import_list, + [66216] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2708), 1, - anon_sym_SEMI, - ACTIONS(2710), 1, - sym__newline, - STATE(127), 1, - sym__semicolon, - STATE(1305), 1, - aux_sym__simple_statements_repeat1, - [65620] = 4, + ACTIONS(2603), 5, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_if, + anon_sym_COLON, + anon_sym_RBRACK, + [66227] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2714), 1, + ACTIONS(2681), 1, anon_sym_COMMA, - STATE(1302), 1, - aux_sym_with_clause_repeat1, - ACTIONS(2712), 2, + STATE(1311), 1, + aux_sym__collection_elements_repeat1, + ACTIONS(2679), 3, anon_sym_RPAREN, - anon_sym_COLON, - [65634] = 4, + anon_sym_RBRACK, + anon_sym_RBRACE, + [66242] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2717), 1, - anon_sym_case, - STATE(612), 1, - sym_cases, - STATE(451), 2, - sym_case_block, - aux_sym_cases_repeat1, - [65648] = 4, + ACTIONS(2683), 1, + anon_sym_COMMA, + STATE(1311), 1, + aux_sym__collection_elements_repeat1, + ACTIONS(2679), 3, + anon_sym_RPAREN, + anon_sym_RBRACK, + anon_sym_RBRACE, + [66257] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2717), 1, - anon_sym_case, - STATE(512), 1, - sym_cases, - STATE(451), 2, - sym_case_block, - aux_sym_cases_repeat1, - [65662] = 5, + ACTIONS(2685), 1, + anon_sym_COMMA, + STATE(1311), 1, + aux_sym__collection_elements_repeat1, + ACTIONS(2679), 3, + anon_sym_RPAREN, + anon_sym_RBRACK, + anon_sym_RBRACE, + [66272] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(561), 1, - sym__newline, - ACTIONS(2719), 1, - anon_sym_SEMI, - STATE(132), 1, - sym__semicolon, - STATE(1316), 1, - aux_sym__simple_statements_repeat1, - [65678] = 5, + ACTIONS(2689), 1, + anon_sym_COMMA, + STATE(1311), 1, + aux_sym__collection_elements_repeat1, + ACTIONS(2687), 3, + anon_sym_RPAREN, + anon_sym_RBRACK, + anon_sym_RBRACE, + [66287] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2178), 1, + ACTIONS(2692), 5, + anon_sym_RPAREN, + anon_sym_COMMA, anon_sym_if, - ACTIONS(2180), 1, + anon_sym_COLON, + anon_sym_RBRACK, + [66298] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2284), 1, anon_sym_and, - ACTIONS(2182), 1, + ACTIONS(2286), 1, anon_sym_or, - ACTIONS(2721), 1, - anon_sym_else, - [65694] = 5, + ACTIONS(2299), 1, + anon_sym_if, + ACTIONS(2694), 2, + sym__newline, + anon_sym_SEMI, + [66315] = 6, ACTIONS(3), 1, sym_comment, - ACTIONS(2636), 1, - anon_sym_LBRACK, - ACTIONS(2723), 1, + ACTIONS(2618), 1, anon_sym_LPAREN, - STATE(1538), 1, + ACTIONS(2622), 1, + anon_sym_LBRACK, + ACTIONS(2696), 1, + anon_sym_COLON, + STATE(1491), 1, sym_type_parameters, - STATE(1539), 1, - sym_parameters, - [65710] = 5, - ACTIONS(3), 1, + STATE(1626), 1, + sym_argument_list, + [66334] = 6, + ACTIONS(2086), 1, sym_comment, - ACTIONS(2622), 1, - anon_sym_COLON2, - ACTIONS(2725), 1, + ACTIONS(2628), 1, + anon_sym_LBRACE2, + ACTIONS(2698), 1, anon_sym_RBRACE, - ACTIONS(2727), 1, - sym_type_conversion, - STATE(1733), 1, - sym_format_specifier, - [65726] = 5, + ACTIONS(2700), 1, + aux_sym_format_specifier_token1, + STATE(1305), 1, + aux_sym_format_specifier_repeat1, + STATE(1499), 1, + sym_interpolation, + [66353] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2178), 1, - anon_sym_if, - ACTIONS(2180), 1, + ACTIONS(2284), 1, anon_sym_and, + ACTIONS(2286), 1, + anon_sym_or, + ACTIONS(2299), 1, + anon_sym_if, + ACTIONS(2451), 2, + sym__newline, + anon_sym_SEMI, + [66370] = 5, + ACTIONS(3), 1, + sym_comment, ACTIONS(2182), 1, + anon_sym_and, + ACTIONS(2184), 1, anon_sym_or, - ACTIONS(2729), 1, - anon_sym_COLON, - [65742] = 4, + ACTIONS(2198), 1, + anon_sym_if, + ACTIONS(2702), 2, + anon_sym_COMMA, + anon_sym_RBRACK, + [66387] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2696), 1, + ACTIONS(2182), 1, + anon_sym_and, + ACTIONS(2184), 1, + anon_sym_or, + ACTIONS(2198), 1, + anon_sym_if, + ACTIONS(2704), 2, anon_sym_COMMA, - STATE(1297), 1, - aux_sym_global_statement_repeat1, - ACTIONS(2731), 2, + anon_sym_RBRACK, + [66404] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2284), 1, + anon_sym_and, + ACTIONS(2286), 1, + anon_sym_or, + ACTIONS(2299), 1, + anon_sym_if, + ACTIONS(2706), 2, sym__newline, anon_sym_SEMI, - [65756] = 4, + [66421] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2735), 1, + ACTIONS(2182), 1, + anon_sym_and, + ACTIONS(2184), 1, + anon_sym_or, + ACTIONS(2198), 1, + anon_sym_if, + ACTIONS(2708), 2, anon_sym_COMMA, - STATE(1330), 1, - aux_sym__patterns_repeat1, - ACTIONS(2733), 2, - anon_sym_RPAREN, anon_sym_RBRACK, - [65770] = 5, + [66438] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2178), 1, - anon_sym_if, - ACTIONS(2180), 1, - anon_sym_and, ACTIONS(2182), 1, + anon_sym_and, + ACTIONS(2184), 1, anon_sym_or, - ACTIONS(2737), 1, - anon_sym_COLON, - [65786] = 5, + ACTIONS(2198), 1, + anon_sym_if, + ACTIONS(2710), 2, + anon_sym_RPAREN, + anon_sym_COMMA, + [66455] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2712), 1, + anon_sym_SEMI, + ACTIONS(2715), 1, + sym__newline, + STATE(133), 1, + sym__semicolon, + STATE(1322), 1, + aux_sym__simple_statements_repeat1, + [66471] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2717), 1, + anon_sym_COMMA, + STATE(1404), 1, + aux_sym_print_statement_repeat1, + ACTIONS(2719), 2, + sym__newline, + anon_sym_SEMI, + [66485] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2721), 1, + anon_sym_case, + STATE(593), 1, + sym_cases, + STATE(461), 2, + sym_case_block, + aux_sym_cases_repeat1, + [66499] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2178), 1, - anon_sym_if, - ACTIONS(2180), 1, - anon_sym_and, ACTIONS(2182), 1, + anon_sym_and, + ACTIONS(2184), 1, anon_sym_or, - ACTIONS(2739), 1, + ACTIONS(2198), 1, + anon_sym_if, + ACTIONS(2723), 1, anon_sym_COLON, - [65802] = 4, + [66515] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(315), 1, - sym__string_start, - ACTIONS(2081), 1, - anon_sym_COLON, - STATE(675), 2, - sym_string, - aux_sym_concatenated_string_repeat1, - [65816] = 4, + ACTIONS(2284), 1, + anon_sym_and, + ACTIONS(2286), 1, + anon_sym_or, + ACTIONS(2299), 1, + anon_sym_if, + ACTIONS(2725), 1, + sym__newline, + [66531] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(317), 1, - sym__template_string_start, - ACTIONS(2081), 1, - anon_sym_COLON, - STATE(676), 2, - sym_template_string, - aux_sym_concatenated_template_string_repeat1, - [65830] = 5, + ACTIONS(2642), 1, + anon_sym_COMMA, + STATE(1335), 1, + aux_sym__import_list_repeat1, + ACTIONS(2646), 2, + sym__newline, + anon_sym_SEMI, + [66545] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2741), 1, - anon_sym_SEMI, - ACTIONS(2744), 1, + ACTIONS(567), 1, sym__newline, - STATE(133), 1, + ACTIONS(2727), 1, + anon_sym_SEMI, + STATE(128), 1, sym__semicolon, - STATE(1316), 1, + STATE(1322), 1, aux_sym__simple_statements_repeat1, - [65846] = 2, + [66561] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(2371), 4, + ACTIONS(2644), 1, + anon_sym_as, + ACTIONS(2729), 3, sym__newline, - anon_sym_from, anon_sym_COMMA, anon_sym_SEMI, - [65856] = 5, + [66573] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2622), 1, + ACTIONS(2638), 1, anon_sym_COLON2, - ACTIONS(2746), 1, + ACTIONS(2731), 1, anon_sym_RBRACE, - ACTIONS(2748), 1, + ACTIONS(2733), 1, sym_type_conversion, - STATE(1624), 1, + STATE(1646), 1, sym_format_specifier, - [65872] = 5, + [66589] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2658), 1, - anon_sym_RPAREN, - ACTIONS(2750), 1, - anon_sym_COMMA, - ACTIONS(2752), 1, - anon_sym_as, - STATE(1409), 1, - aux_sym__import_list_repeat1, - [65888] = 4, + ACTIONS(2182), 1, + anon_sym_and, + ACTIONS(2184), 1, + anon_sym_or, + ACTIONS(2198), 1, + anon_sym_if, + ACTIONS(2735), 1, + anon_sym_COLON, + [66605] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2754), 1, + ACTIONS(2737), 1, anon_sym_COMMA, - STATE(1328), 1, - aux_sym__import_list_repeat1, - ACTIONS(2756), 2, + STATE(1332), 1, + aux_sym_global_statement_repeat1, + ACTIONS(2740), 2, sym__newline, anon_sym_SEMI, - [65902] = 4, + [66619] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(2758), 1, + ACTIONS(2744), 1, + anon_sym_EQ, + ACTIONS(2742), 3, + anon_sym_RPAREN, anon_sym_COMMA, - STATE(1321), 1, - aux_sym_global_statement_repeat1, - ACTIONS(2761), 2, + anon_sym_COLON, + [66631] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2746), 1, + anon_sym_case, + STATE(545), 1, + sym_cases, + STATE(440), 2, + sym_case_block, + aux_sym_cases_repeat1, + [66645] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2748), 1, + anon_sym_COMMA, + STATE(1339), 1, + aux_sym__import_list_repeat1, + ACTIONS(2750), 2, sym__newline, anon_sym_SEMI, - [65916] = 4, + [66659] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2763), 1, + ACTIONS(2752), 1, anon_sym_COMMA, - STATE(1328), 1, + STATE(1339), 1, aux_sym__import_list_repeat1, - ACTIONS(2756), 2, + ACTIONS(2750), 2, sym__newline, anon_sym_SEMI, - [65930] = 4, + [66673] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2767), 1, - anon_sym_DOT, - STATE(1323), 1, - aux_sym_import_prefix_repeat1, - ACTIONS(2765), 2, - anon_sym_import, + ACTIONS(2580), 1, sym_identifier, - [65944] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2772), 1, - anon_sym_COLON, - ACTIONS(2774), 1, - anon_sym_EQ, - ACTIONS(2770), 2, + ACTIONS(2663), 1, anon_sym_RPAREN, - anon_sym_COMMA, - [65958] = 3, + STATE(1438), 1, + sym_dotted_name, + STATE(1600), 1, + sym_aliased_import, + [66689] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2778), 1, - anon_sym_EQ, - ACTIONS(2776), 3, + ACTIONS(2580), 1, + sym_identifier, + ACTIONS(2663), 1, anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_COLON, - [65970] = 3, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2656), 1, - anon_sym_as, - ACTIONS(2780), 3, - sym__newline, - anon_sym_COMMA, - anon_sym_SEMI, - [65982] = 5, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2178), 1, - anon_sym_if, - ACTIONS(2180), 1, - anon_sym_and, - ACTIONS(2182), 1, - anon_sym_or, - ACTIONS(2782), 1, - anon_sym_COLON, - [65998] = 4, + STATE(1438), 1, + sym_dotted_name, + STATE(1600), 1, + sym_aliased_import, + [66705] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2784), 1, + ACTIONS(2754), 1, anon_sym_COMMA, - STATE(1328), 1, + STATE(1339), 1, aux_sym__import_list_repeat1, - ACTIONS(2787), 2, + ACTIONS(2757), 2, sym__newline, anon_sym_SEMI, - [66012] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2789), 1, - anon_sym_COMMA, - STATE(1329), 1, - aux_sym_exception_list_repeat1, - ACTIONS(2792), 2, - anon_sym_as, - anon_sym_COLON, - [66026] = 4, + [66719] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2796), 1, - anon_sym_COMMA, - STATE(994), 1, - aux_sym__patterns_repeat1, - ACTIONS(2794), 2, - anon_sym_RPAREN, - anon_sym_RBRACK, - [66040] = 5, + ACTIONS(2746), 1, + anon_sym_case, + STATE(546), 1, + sym_cases, + STATE(440), 2, + sym_case_block, + aux_sym_cases_repeat1, + [66733] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2566), 1, + ACTIONS(2580), 1, sym_identifier, - STATE(1319), 1, + STATE(1362), 1, sym_dotted_name, - STATE(1487), 1, + STATE(1467), 1, sym_aliased_import, - STATE(1713), 1, + STATE(1670), 1, sym__import_list, - [66056] = 5, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2798), 1, - anon_sym_SEMI, - ACTIONS(2800), 1, - sym__newline, - STATE(128), 1, - sym__semicolon, - STATE(1335), 1, - aux_sym__simple_statements_repeat1, - [66072] = 5, + [66749] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2566), 1, + ACTIONS(2580), 1, sym_identifier, - STATE(1319), 1, + STATE(1362), 1, sym_dotted_name, - STATE(1487), 1, + STATE(1467), 1, sym_aliased_import, - STATE(1717), 1, + STATE(1671), 1, sym__import_list, - [66088] = 5, + [66765] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2566), 1, + ACTIONS(2761), 1, + anon_sym_DOT, + STATE(1352), 1, + aux_sym_import_prefix_repeat1, + ACTIONS(2759), 2, + anon_sym_import, sym_identifier, - ACTIONS(2684), 1, + [66779] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2763), 4, anon_sym_RPAREN, - STATE(1473), 1, - sym_dotted_name, - STATE(1553), 1, - sym_aliased_import, - [66104] = 5, + anon_sym_COMMA, + anon_sym_RBRACK, + anon_sym_RBRACE, + [66789] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(563), 1, + ACTIONS(2765), 1, + anon_sym_SEMI, + ACTIONS(2767), 1, sym__newline, - ACTIONS(2802), 1, + STATE(129), 1, + sym__semicolon, + STATE(1351), 1, + aux_sym__simple_statements_repeat1, + [66805] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2769), 1, anon_sym_SEMI, - STATE(130), 1, + ACTIONS(2771), 1, + sym__newline, + STATE(127), 1, sym__semicolon, - STATE(1316), 1, + STATE(1399), 1, aux_sym__simple_statements_repeat1, - [66120] = 5, + [66821] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2178), 1, - anon_sym_if, - ACTIONS(2180), 1, - anon_sym_and, ACTIONS(2182), 1, + anon_sym_and, + ACTIONS(2184), 1, anon_sym_or, - ACTIONS(2804), 1, + ACTIONS(2198), 1, + anon_sym_if, + ACTIONS(2773), 1, anon_sym_else, - [66136] = 5, + [66837] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2775), 1, + anon_sym_COMMA, + STATE(1348), 1, + aux_sym_exception_list_repeat1, + ACTIONS(2778), 2, + anon_sym_as, + anon_sym_COLON, + [66851] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2780), 4, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_RBRACK, + anon_sym_RBRACE, + [66861] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2178), 1, - anon_sym_if, - ACTIONS(2180), 1, - anon_sym_and, ACTIONS(2182), 1, + anon_sym_and, + ACTIONS(2184), 1, anon_sym_or, - ACTIONS(2806), 1, + ACTIONS(2198), 1, + anon_sym_if, + ACTIONS(2782), 1, anon_sym_COLON, - [66152] = 4, + [66877] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2808), 1, - anon_sym_COMMA, - STATE(1363), 1, - aux_sym_print_statement_repeat1, - ACTIONS(2810), 2, + ACTIONS(565), 1, sym__newline, + ACTIONS(2784), 1, anon_sym_SEMI, - [66166] = 5, + STATE(131), 1, + sym__semicolon, + STATE(1322), 1, + aux_sym__simple_statements_repeat1, + [66893] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2788), 1, + anon_sym_DOT, + STATE(1352), 1, + aux_sym_import_prefix_repeat1, + ACTIONS(2786), 2, + anon_sym_import, + sym_identifier, + [66907] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2178), 1, - anon_sym_if, - ACTIONS(2180), 1, - anon_sym_and, ACTIONS(2182), 1, + anon_sym_and, + ACTIONS(2184), 1, anon_sym_or, - ACTIONS(2812), 1, - anon_sym_COLON, - [66182] = 4, + ACTIONS(2198), 1, + anon_sym_if, + ACTIONS(2791), 1, + anon_sym_else, + [66923] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2814), 1, + ACTIONS(2411), 4, + anon_sym_RPAREN, anon_sym_COMMA, - STATE(1218), 1, - aux_sym_open_sequence_match_pattern_repeat1, - ACTIONS(1888), 2, - anon_sym_if, - anon_sym_COLON, - [66196] = 2, + anon_sym_RBRACK, + anon_sym_RBRACE, + [66933] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2816), 4, - anon_sym_RPAREN, + ACTIONS(2795), 1, anon_sym_COMMA, + STATE(1360), 1, + aux_sym__patterns_repeat1, + ACTIONS(2793), 2, + anon_sym_RPAREN, anon_sym_RBRACK, + [66947] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2638), 1, + anon_sym_COLON2, + ACTIONS(2797), 1, anon_sym_RBRACE, - [66206] = 4, + ACTIONS(2799), 1, + sym_type_conversion, + STATE(1741), 1, + sym_format_specifier, + [66963] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2395), 1, + ACTIONS(2413), 1, + sym_identifier, + STATE(1290), 1, + sym_dotted_name, + STATE(1327), 1, + sym_aliased_import, + STATE(1552), 1, + sym__import_list, + [66979] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2489), 4, + anon_sym_RPAREN, anon_sym_COMMA, - STATE(1329), 1, - aux_sym_exception_list_repeat1, - ACTIONS(2818), 2, - anon_sym_as, anon_sym_COLON, - [66220] = 5, + anon_sym_EQ, + [66989] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2178), 1, - anon_sym_if, - ACTIONS(2180), 1, + ACTIONS(2182), 1, anon_sym_and, + ACTIONS(2184), 1, + anon_sym_or, + ACTIONS(2198), 1, + anon_sym_if, + ACTIONS(2801), 1, + anon_sym_COLON, + [67005] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2805), 1, + anon_sym_COMMA, + STATE(1000), 1, + aux_sym__patterns_repeat1, + ACTIONS(2803), 2, + anon_sym_RPAREN, + anon_sym_RBRACK, + [67019] = 5, + ACTIONS(3), 1, + sym_comment, ACTIONS(2182), 1, + anon_sym_and, + ACTIONS(2184), 1, anon_sym_or, - ACTIONS(2820), 1, + ACTIONS(2198), 1, + anon_sym_if, + ACTIONS(2807), 1, anon_sym_else, - [66236] = 2, + [67035] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2453), 4, + ACTIONS(2646), 1, anon_sym_RPAREN, + ACTIONS(2809), 1, anon_sym_COMMA, - anon_sym_COLON, - anon_sym_EQ, - [66246] = 5, + ACTIONS(2811), 1, + anon_sym_as, + STATE(1415), 1, + aux_sym__import_list_repeat1, + [67051] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2178), 1, - anon_sym_if, - ACTIONS(2180), 1, - anon_sym_and, ACTIONS(2182), 1, + anon_sym_and, + ACTIONS(2184), 1, anon_sym_or, - ACTIONS(2822), 1, - anon_sym_else, - [66262] = 2, + ACTIONS(2198), 1, + anon_sym_if, + ACTIONS(2813), 1, + anon_sym_COLON, + [67067] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2824), 4, - anon_sym_async, - anon_sym_def, - anon_sym_class, - anon_sym_AT, - [66272] = 5, + ACTIONS(2397), 1, + anon_sym_COMMA, + STATE(1348), 1, + aux_sym_exception_list_repeat1, + ACTIONS(2815), 2, + anon_sym_as, + anon_sym_COLON, + [67081] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2566), 1, - sym_identifier, - STATE(1319), 1, - sym_dotted_name, - STATE(1487), 1, - sym_aliased_import, - STATE(1640), 1, - sym__import_list, - [66288] = 2, + ACTIONS(2182), 1, + anon_sym_and, + ACTIONS(2184), 1, + anon_sym_or, + ACTIONS(2198), 1, + anon_sym_if, + ACTIONS(2817), 1, + anon_sym_else, + [67097] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2447), 4, - anon_sym_RPAREN, + ACTIONS(2819), 1, anon_sym_COMMA, - anon_sym_RBRACK, - anon_sym_RBRACE, - [66298] = 5, + STATE(1394), 1, + aux_sym_global_statement_repeat1, + ACTIONS(2821), 2, + sym__newline, + anon_sym_SEMI, + [67111] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2178), 1, - anon_sym_if, - ACTIONS(2180), 1, - anon_sym_and, ACTIONS(2182), 1, + anon_sym_and, + ACTIONS(2184), 1, anon_sym_or, - ACTIONS(2826), 1, + ACTIONS(2198), 1, + anon_sym_if, + ACTIONS(2823), 1, anon_sym_else, - [66314] = 4, + [67127] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2828), 1, + ACTIONS(2825), 1, anon_sym_COMMA, - STATE(1363), 1, + STATE(1368), 1, aux_sym_print_statement_repeat1, - ACTIONS(2830), 2, + ACTIONS(2828), 2, sym__newline, anon_sym_SEMI, - [66328] = 5, + [67141] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(315), 1, + sym__string_start, + ACTIONS(2112), 1, + anon_sym_COLON, + STATE(690), 2, + sym_string, + aux_sym_concatenated_string_repeat1, + [67155] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2178), 1, - anon_sym_if, - ACTIONS(2180), 1, - anon_sym_and, ACTIONS(2182), 1, + anon_sym_and, + ACTIONS(2184), 1, anon_sym_or, - ACTIONS(2832), 1, + ACTIONS(2198), 1, + anon_sym_if, + ACTIONS(2830), 1, anon_sym_COLON, - [66344] = 5, + [67171] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2178), 1, - anon_sym_if, - ACTIONS(2180), 1, - anon_sym_and, ACTIONS(2182), 1, + anon_sym_and, + ACTIONS(2184), 1, anon_sym_or, - ACTIONS(2834), 1, + ACTIONS(2198), 1, + anon_sym_if, + ACTIONS(2832), 1, anon_sym_COLON, - [66360] = 4, + [67187] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2696), 1, + ACTIONS(2834), 1, anon_sym_COMMA, - STATE(1298), 1, - aux_sym_global_statement_repeat1, - ACTIONS(2836), 2, + STATE(1372), 1, + aux_sym_assert_statement_repeat1, + ACTIONS(2549), 2, sym__newline, anon_sym_SEMI, - [66374] = 4, + [67201] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2423), 1, + ACTIONS(317), 1, + sym__template_string_start, + ACTIONS(2112), 1, + anon_sym_COLON, + STATE(693), 2, + sym_template_string, + aux_sym_concatenated_template_string_repeat1, + [67215] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2547), 1, + anon_sym_EQ, + STATE(1562), 1, + sym__type_param_default, + ACTIONS(2837), 2, anon_sym_COMMA, - STATE(1365), 1, - aux_sym_assert_statement_repeat1, - ACTIONS(2838), 2, - sym__newline, - anon_sym_SEMI, - [66388] = 5, + anon_sym_RBRACK, + [67229] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2721), 1, + anon_sym_case, + STATE(558), 1, + sym_cases, + STATE(461), 2, + sym_case_block, + aux_sym_cases_repeat1, + [67243] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2178), 1, - anon_sym_if, - ACTIONS(2180), 1, - anon_sym_and, ACTIONS(2182), 1, + anon_sym_and, + ACTIONS(2184), 1, anon_sym_or, - ACTIONS(2840), 1, + ACTIONS(2198), 1, + anon_sym_if, + ACTIONS(2839), 1, anon_sym_COLON, - [66404] = 5, + [67259] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2178), 1, - anon_sym_if, - ACTIONS(2180), 1, - anon_sym_and, ACTIONS(2182), 1, + anon_sym_and, + ACTIONS(2184), 1, anon_sym_or, - ACTIONS(2842), 1, + ACTIONS(2198), 1, + anon_sym_if, + ACTIONS(2841), 1, anon_sym_COLON, - [66420] = 5, + [67275] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2178), 1, - anon_sym_if, - ACTIONS(2180), 1, - anon_sym_and, ACTIONS(2182), 1, + anon_sym_and, + ACTIONS(2184), 1, anon_sym_or, - ACTIONS(2844), 1, + ACTIONS(2198), 1, + anon_sym_if, + ACTIONS(2843), 1, anon_sym_COLON, - [66436] = 5, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2566), 1, - sym_identifier, - ACTIONS(2608), 1, - anon_sym_RPAREN, - STATE(1473), 1, - sym_dotted_name, - STATE(1553), 1, - sym_aliased_import, - [66452] = 5, + [67291] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2636), 1, - anon_sym_LBRACK, - ACTIONS(2723), 1, - anon_sym_LPAREN, - STATE(1512), 1, - sym_type_parameters, - STATE(1587), 1, - sym_parameters, - [66468] = 4, + ACTIONS(2547), 1, + anon_sym_EQ, + STATE(1563), 1, + sym__type_param_default, + ACTIONS(2845), 2, + anon_sym_COMMA, + anon_sym_RBRACK, + [67305] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2423), 1, + ACTIONS(2847), 1, anon_sym_COMMA, - STATE(1365), 1, - aux_sym_assert_statement_repeat1, - ACTIONS(2846), 2, + STATE(1368), 1, + aux_sym_print_statement_repeat1, + ACTIONS(2849), 2, sym__newline, anon_sym_SEMI, - [66482] = 5, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2427), 1, - sym_identifier, - STATE(1281), 1, - sym_dotted_name, - STATE(1372), 1, - sym_aliased_import, - STATE(1577), 1, - sym__import_list, - [66498] = 5, + [67319] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2427), 1, + ACTIONS(2580), 1, sym_identifier, - STATE(1281), 1, + STATE(1362), 1, sym_dotted_name, - STATE(1372), 1, + STATE(1467), 1, sym_aliased_import, - STATE(1513), 1, + STATE(1625), 1, sym__import_list, - [66514] = 4, + [67335] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2848), 1, + ACTIONS(2851), 1, anon_sym_COMMA, - STATE(1363), 1, - aux_sym_print_statement_repeat1, - ACTIONS(2851), 2, - sym__newline, - anon_sym_SEMI, - [66528] = 5, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2178), 1, + STATE(1280), 1, + aux_sym_open_sequence_match_pattern_repeat1, + ACTIONS(1902), 2, anon_sym_if, - ACTIONS(2180), 1, - anon_sym_and, - ACTIONS(2182), 1, - anon_sym_or, - ACTIONS(2853), 1, anon_sym_COLON, - [66544] = 4, + [67349] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(2855), 1, + anon_sym_COLON, + ACTIONS(2857), 1, + anon_sym_EQ, + ACTIONS(2853), 2, + anon_sym_RPAREN, anon_sym_COMMA, - STATE(1365), 1, - aux_sym_assert_statement_repeat1, - ACTIONS(2556), 2, - sym__newline, - anon_sym_SEMI, - [66558] = 5, + [67363] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2303), 1, - anon_sym_and, - ACTIONS(2305), 1, - anon_sym_or, - ACTIONS(2329), 1, - anon_sym_if, - ACTIONS(2858), 1, - sym__newline, - [66574] = 4, + ACTIONS(2580), 1, + sym_identifier, + ACTIONS(2665), 1, + anon_sym_RPAREN, + STATE(1438), 1, + sym_dotted_name, + STATE(1600), 1, + sym_aliased_import, + [67379] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2860), 1, - anon_sym_case, - STATE(574), 1, - sym_cases, - STATE(437), 2, - sym_case_block, - aux_sym_cases_repeat1, - [66588] = 4, + ACTIONS(2413), 1, + sym_identifier, + STATE(1290), 1, + sym_dotted_name, + STATE(1327), 1, + sym_aliased_import, + STATE(1596), 1, + sym__import_list, + [67395] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2860), 1, - anon_sym_case, - STATE(578), 1, - sym_cases, - STATE(437), 2, - sym_case_block, - aux_sym_cases_repeat1, - [66602] = 5, + ACTIONS(2182), 1, + anon_sym_and, + ACTIONS(2184), 1, + anon_sym_or, + ACTIONS(2198), 1, + anon_sym_if, + ACTIONS(2859), 1, + anon_sym_COLON, + [67411] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2178), 1, - anon_sym_if, - ACTIONS(2180), 1, - anon_sym_and, ACTIONS(2182), 1, + anon_sym_and, + ACTIONS(2184), 1, anon_sym_or, - ACTIONS(2862), 1, + ACTIONS(2198), 1, + anon_sym_if, + ACTIONS(2861), 1, anon_sym_else, - [66618] = 4, + [67427] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2864), 1, + ACTIONS(2819), 1, anon_sym_COMMA, - STATE(1338), 1, - aux_sym_print_statement_repeat1, - ACTIONS(2866), 2, + STATE(1332), 1, + aux_sym_global_statement_repeat1, + ACTIONS(2863), 2, sym__newline, anon_sym_SEMI, - [66632] = 4, + [67441] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2522), 1, + ACTIONS(2547), 1, anon_sym_EQ, - STATE(1589), 1, + STATE(1575), 1, sym__type_param_default, - ACTIONS(2868), 2, + ACTIONS(2865), 2, anon_sym_COMMA, anon_sym_RBRACK, - [66646] = 4, + [67455] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2654), 1, + ACTIONS(2485), 1, anon_sym_COMMA, - STATE(1320), 1, - aux_sym__import_list_repeat1, - ACTIONS(2658), 2, + STATE(1372), 1, + aux_sym_assert_statement_repeat1, + ACTIONS(2867), 2, sym__newline, anon_sym_SEMI, - [66660] = 4, + [67469] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2522), 1, - anon_sym_EQ, - STATE(1527), 1, - sym__type_param_default, - ACTIONS(2870), 2, + ACTIONS(2869), 4, + anon_sym_async, + anon_sym_def, + anon_sym_class, + anon_sym_AT, + [67479] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2819), 1, anon_sym_COMMA, - anon_sym_RBRACK, - [66674] = 4, + STATE(1388), 1, + aux_sym_global_statement_repeat1, + ACTIONS(2871), 2, + sym__newline, + anon_sym_SEMI, + [67493] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2874), 1, - anon_sym_DOT, - STATE(1323), 1, - aux_sym_import_prefix_repeat1, - ACTIONS(2872), 2, - anon_sym_import, - sym_identifier, - [66688] = 5, + ACTIONS(2311), 4, + sym__newline, + anon_sym_from, + anon_sym_COMMA, + anon_sym_SEMI, + [67503] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2819), 1, + anon_sym_COMMA, + STATE(1332), 1, + aux_sym_global_statement_repeat1, + ACTIONS(2873), 2, + sym__newline, + anon_sym_SEMI, + [67517] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2636), 1, + ACTIONS(2182), 1, + anon_sym_and, + ACTIONS(2184), 1, + anon_sym_or, + ACTIONS(2198), 1, + anon_sym_if, + ACTIONS(2875), 1, + anon_sym_COLON, + [67533] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2622), 1, anon_sym_LBRACK, - ACTIONS(2723), 1, + ACTIONS(2877), 1, anon_sym_LPAREN, - STATE(1543), 1, - sym_parameters, - STATE(1582), 1, + STATE(1574), 1, sym_type_parameters, - [66704] = 5, + STATE(1612), 1, + sym_parameters, + [67549] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2636), 1, + ACTIONS(2622), 1, anon_sym_LBRACK, - ACTIONS(2723), 1, + ACTIONS(2877), 1, anon_sym_LPAREN, - STATE(1545), 1, + STATE(1538), 1, sym_parameters, - STATE(1583), 1, + STATE(1597), 1, sym_type_parameters, - [66720] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2522), 1, - anon_sym_EQ, - STATE(1591), 1, - sym__type_param_default, - ACTIONS(2876), 2, - anon_sym_COMMA, - anon_sym_RBRACK, - [66734] = 2, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2878), 4, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_RBRACK, - anon_sym_RBRACE, - [66744] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2880), 1, - anon_sym_COMMA, - ACTIONS(2882), 1, - anon_sym_RBRACE, - STATE(1482), 1, - aux_sym_dictionary_repeat1, - [66757] = 2, + [67565] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2884), 3, + ACTIONS(2622), 1, + anon_sym_LBRACK, + ACTIONS(2877), 1, anon_sym_LPAREN, - anon_sym_COLON, - anon_sym_EQ, - [66766] = 2, + STATE(1541), 1, + sym_parameters, + STATE(1599), 1, + sym_type_parameters, + [67581] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2780), 3, + ACTIONS(561), 1, sym__newline, - anon_sym_COMMA, + ACTIONS(2879), 1, anon_sym_SEMI, - [66775] = 4, + STATE(132), 1, + sym__semicolon, + STATE(1322), 1, + aux_sym__simple_statements_repeat1, + [67597] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2886), 1, + ACTIONS(2883), 1, anon_sym_COMMA, - ACTIONS(2889), 1, - anon_sym_RBRACK, - STATE(1382), 1, - aux_sym_type_parameters_repeat1, - [66788] = 2, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2891), 3, + STATE(1400), 1, + aux_sym_with_clause_repeat1, + ACTIONS(2881), 2, anon_sym_RPAREN, - anon_sym_COMMA, anon_sym_COLON, - [66797] = 4, + [67611] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2168), 1, - anon_sym_RPAREN, - ACTIONS(2170), 1, + ACTIONS(2485), 1, anon_sym_COMMA, - STATE(1397), 1, - aux_sym_argument_list_repeat1, - [66810] = 4, + STATE(1372), 1, + aux_sym_assert_statement_repeat1, + ACTIONS(2886), 2, + sym__newline, + anon_sym_SEMI, + [67625] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2103), 1, - anon_sym_COMMA, - ACTIONS(2893), 1, - anon_sym_RPAREN, - STATE(1286), 1, - aux_sym__collection_elements_repeat1, - [66823] = 4, + ACTIONS(2888), 1, + anon_sym_SEMI, + ACTIONS(2890), 1, + sym__newline, + STATE(130), 1, + sym__semicolon, + STATE(1328), 1, + aux_sym__simple_statements_repeat1, + [67641] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(2891), 1, - anon_sym_COLON, - ACTIONS(2895), 1, - anon_sym_COMMA, - STATE(1386), 1, - aux_sym__parameters_repeat1, - [66836] = 4, + ACTIONS(2622), 1, + anon_sym_LBRACK, + ACTIONS(2877), 1, + anon_sym_LPAREN, + STATE(1548), 1, + sym_parameters, + STATE(1572), 1, + sym_type_parameters, + [67657] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2216), 1, - anon_sym_RPAREN, - ACTIONS(2218), 1, + ACTIONS(2892), 1, anon_sym_COMMA, - STATE(1434), 1, - aux_sym_argument_list_repeat1, - [66849] = 2, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1526), 3, + STATE(1368), 1, + aux_sym_print_statement_repeat1, + ACTIONS(2894), 2, sym__newline, - anon_sym_in, anon_sym_SEMI, - [66858] = 2, + [67671] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2776), 3, - anon_sym_RPAREN, + ACTIONS(2031), 1, anon_sym_COMMA, - anon_sym_COLON, - [66867] = 4, + ACTIONS(2896), 1, + anon_sym_in, + STATE(1018), 1, + aux_sym__patterns_repeat1, + [67684] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2103), 1, - anon_sym_COMMA, ACTIONS(2898), 1, - anon_sym_RPAREN, - STATE(1431), 1, - aux_sym__collection_elements_repeat1, - [66880] = 2, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2900), 3, - sym__newline, anon_sym_COMMA, - anon_sym_SEMI, - [66889] = 3, + ACTIONS(2900), 1, + anon_sym_COLON, + STATE(1481), 1, + aux_sym__parameters_repeat1, + [67697] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(2902), 1, - anon_sym_EQ, - ACTIONS(2904), 2, - sym__newline, - anon_sym_SEMI, - [66900] = 4, + anon_sym_if, + ACTIONS(2904), 1, + anon_sym_COLON, + STATE(1661), 1, + sym_guard, + [67710] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(2906), 1, - anon_sym_RPAREN, - ACTIONS(2908), 1, anon_sym_COMMA, - STATE(1438), 1, - aux_sym_argument_list_repeat1, - [66913] = 4, + ACTIONS(2908), 2, + anon_sym_if, + anon_sym_COLON, + [67721] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(2910), 1, @@ -79425,3833 +80129,3895 @@ static const uint16_t ts_small_parse_table[] = { ACTIONS(2912), 1, anon_sym_RBRACK, STATE(1418), 1, - aux_sym_index_expression_list_repeat1, - [66926] = 4, + aux_sym_type_parameters_repeat1, + [67734] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2103), 1, - anon_sym_COMMA, - ACTIONS(2214), 1, + ACTIONS(2853), 3, anon_sym_RPAREN, - STATE(1398), 1, - aux_sym__collection_elements_repeat1, - [66939] = 4, + anon_sym_COMMA, + anon_sym_COLON, + [67743] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1894), 1, - anon_sym_RPAREN, ACTIONS(2914), 1, - anon_sym_COMMA, - STATE(1218), 1, - aux_sym_open_sequence_match_pattern_repeat1, - [66952] = 4, + anon_sym_in, + ACTIONS(2916), 2, + sym__newline, + anon_sym_SEMI, + [67754] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2916), 1, - anon_sym_RPAREN, ACTIONS(2918), 1, - anon_sym_COMMA, - STATE(1460), 1, - aux_sym_argument_list_repeat1, - [66965] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2612), 1, anon_sym_RPAREN, ACTIONS(2920), 1, anon_sym_COMMA, - STATE(1287), 1, - aux_sym__collection_elements_repeat1, - [66978] = 4, + STATE(1430), 1, + aux_sym_argument_list_repeat1, + [67767] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(2922), 1, anon_sym_RPAREN, ACTIONS(2924), 1, anon_sym_COMMA, - STATE(1460), 1, + STATE(1430), 1, aux_sym_argument_list_repeat1, - [66991] = 4, + [67780] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2926), 1, + ACTIONS(2750), 1, anon_sym_RPAREN, - ACTIONS(2928), 1, + ACTIONS(2926), 1, anon_sym_COMMA, - STATE(1460), 1, - aux_sym_argument_list_repeat1, - [67004] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2622), 1, - anon_sym_COLON2, - ACTIONS(2725), 1, - anon_sym_RBRACE, - STATE(1733), 1, - sym_format_specifier, - [67017] = 4, + STATE(1440), 1, + aux_sym__import_list_repeat1, + [67793] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2930), 1, + ACTIONS(2750), 1, anon_sym_RPAREN, - ACTIONS(2932), 1, + ACTIONS(2928), 1, anon_sym_COMMA, - STATE(1399), 1, - aux_sym_argument_list_repeat1, - [67030] = 4, + STATE(1440), 1, + aux_sym__import_list_repeat1, + [67806] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1894), 1, - anon_sym_RBRACK, - ACTIONS(2934), 1, - anon_sym_COMMA, - STATE(1218), 1, - aux_sym_open_sequence_match_pattern_repeat1, - [67043] = 4, + ACTIONS(2622), 1, + anon_sym_LBRACK, + ACTIONS(2930), 1, + anon_sym_EQ, + STATE(1738), 1, + sym_type_parameters, + [67819] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2103), 1, - anon_sym_COMMA, - ACTIONS(2145), 1, - anon_sym_RPAREN, - STATE(1398), 1, - aux_sym__collection_elements_repeat1, - [67056] = 4, + ACTIONS(2932), 3, + anon_sym_LPAREN, + anon_sym_COLON, + anon_sym_EQ, + [67828] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(2910), 1, anon_sym_COMMA, - ACTIONS(2936), 1, + ACTIONS(2934), 1, anon_sym_RBRACK, - STATE(1418), 1, - aux_sym_index_expression_list_repeat1, - [67069] = 4, + STATE(1511), 1, + aux_sym_type_parameters_repeat1, + [67841] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2756), 1, + ACTIONS(2936), 1, + sym_identifier, + ACTIONS(2938), 1, anon_sym_RPAREN, + STATE(1592), 1, + sym_match_keyword_pattern, + [67854] = 4, + ACTIONS(3), 1, + sym_comment, ACTIONS(2938), 1, + anon_sym_RPAREN, + ACTIONS(2940), 1, anon_sym_COMMA, - STATE(1475), 1, - aux_sym__import_list_repeat1, - [67082] = 4, + STATE(1444), 1, + aux_sym_match_class_pattern_repeat2, + [67867] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2443), 1, + ACTIONS(2938), 1, + anon_sym_RPAREN, + ACTIONS(2940), 1, anon_sym_COMMA, - ACTIONS(2445), 1, - anon_sym_RBRACE, - STATE(1412), 1, - aux_sym_dictionary_repeat1, - [67095] = 4, + STATE(1429), 1, + aux_sym_match_class_pattern_repeat2, + [67880] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2083), 1, - anon_sym_DOT, - ACTIONS(2087), 1, + ACTIONS(1340), 3, + anon_sym_RPAREN, + anon_sym_COMMA, anon_sym_COLON, - STATE(1033), 1, - aux_sym_match_value_pattern_repeat1, - [67108] = 4, + [67889] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2756), 1, - anon_sym_RPAREN, - ACTIONS(2940), 1, + ACTIONS(1997), 1, + anon_sym_RBRACE, + ACTIONS(2942), 1, anon_sym_COMMA, - STATE(1475), 1, - aux_sym__import_list_repeat1, - [67121] = 4, + STATE(1477), 1, + aux_sym_match_mapping_pattern_repeat1, + [67902] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2057), 1, - anon_sym_COLON, - ACTIONS(2942), 1, + ACTIONS(1916), 1, + anon_sym_RPAREN, + ACTIONS(2944), 1, anon_sym_COMMA, - STATE(1386), 1, - aux_sym__parameters_repeat1, - [67134] = 4, + STATE(1420), 1, + aux_sym_match_class_pattern_repeat2, + [67915] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2035), 1, + ACTIONS(2740), 3, + sym__newline, anon_sym_COMMA, - ACTIONS(2944), 1, - anon_sym_in, - STATE(1012), 1, - aux_sym__patterns_repeat1, - [67147] = 4, + anon_sym_SEMI, + [67924] = 4, ACTIONS(3), 1, sym_comment, + ACTIONS(2936), 1, + sym_identifier, ACTIONS(2946), 1, - anon_sym_COMMA, - ACTIONS(2948), 1, - anon_sym_RBRACE, - STATE(1482), 1, - aux_sym_dictionary_repeat1, - [67160] = 4, + anon_sym_RPAREN, + STATE(1592), 1, + sym_match_keyword_pattern, + [67937] = 4, ACTIONS(3), 1, sym_comment, + ACTIONS(2948), 1, + anon_sym_RPAREN, ACTIONS(2950), 1, anon_sym_COMMA, - ACTIONS(2952), 1, - anon_sym_RBRACE, - STATE(1482), 1, - aux_sym_dictionary_repeat1, - [67173] = 3, - ACTIONS(2077), 1, + STATE(1427), 1, + aux_sym_match_class_pattern_repeat1, + [67950] = 2, + ACTIONS(3), 1, sym_comment, - ACTIONS(2573), 1, - anon_sym_RBRACE, - ACTIONS(2575), 2, - anon_sym_LBRACE2, - aux_sym_format_specifier_token1, - [67184] = 4, + ACTIONS(2729), 3, + sym__newline, + anon_sym_COMMA, + anon_sym_SEMI, + [67959] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2192), 1, + ACTIONS(2946), 1, anon_sym_RPAREN, - ACTIONS(2194), 1, + ACTIONS(2953), 1, anon_sym_COMMA, - STATE(1420), 1, - aux_sym_argument_list_repeat1, - [67197] = 4, + STATE(1444), 1, + aux_sym_match_class_pattern_repeat2, + [67972] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2954), 1, + ACTIONS(2955), 1, anon_sym_RPAREN, - ACTIONS(2956), 1, + ACTIONS(2957), 1, anon_sym_COMMA, - STATE(1422), 1, + STATE(1430), 1, aux_sym_argument_list_repeat1, - [67210] = 4, + [67985] = 3, + ACTIONS(2086), 1, + sym_comment, + ACTIONS(2608), 1, + anon_sym_RBRACE, + ACTIONS(2610), 2, + anon_sym_LBRACE2, + aux_sym_format_specifier_token1, + [67996] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2910), 1, + ACTIONS(2090), 1, anon_sym_COMMA, - ACTIONS(2958), 1, - anon_sym_RBRACK, - STATE(1418), 1, - aux_sym_index_expression_list_repeat1, - [67223] = 4, + ACTIONS(2220), 1, + anon_sym_RPAREN, + STATE(1471), 1, + aux_sym__collection_elements_repeat1, + [68009] = 4, ACTIONS(3), 1, sym_comment, + ACTIONS(2936), 1, + sym_identifier, ACTIONS(2960), 1, - anon_sym_COMMA, - ACTIONS(2962), 1, - anon_sym_RBRACK, - STATE(1456), 1, - aux_sym_index_expression_list_repeat1, - [67236] = 4, + anon_sym_RPAREN, + STATE(1592), 1, + sym_match_keyword_pattern, + [68022] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2409), 1, - sym_identifier, + ACTIONS(2962), 1, + anon_sym_RPAREN, ACTIONS(2964), 1, - anon_sym_import, - STATE(1697), 1, - sym_dotted_name, - [67249] = 4, + anon_sym_COMMA, + STATE(1430), 1, + aux_sym_argument_list_repeat1, + [68035] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2638), 1, + anon_sym_COLON2, + ACTIONS(2731), 1, + anon_sym_RBRACE, + STATE(1646), 1, + sym_format_specifier, + [68048] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(2966), 1, + anon_sym_EQ, + ACTIONS(2968), 2, + sym__newline, + anon_sym_SEMI, + [68059] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2970), 3, anon_sym_RPAREN, - ACTIONS(2968), 1, anon_sym_COMMA, - STATE(1460), 1, - aux_sym_argument_list_repeat1, - [67262] = 4, + anon_sym_COLON, + [68068] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1906), 1, + ACTIONS(2811), 1, + anon_sym_as, + ACTIONS(2729), 2, anon_sym_RPAREN, - ACTIONS(2970), 1, anon_sym_COMMA, - STATE(1462), 1, - aux_sym_match_class_pattern_repeat2, - [67275] = 4, + [68079] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2972), 1, + ACTIONS(1916), 1, anon_sym_RPAREN, - ACTIONS(2974), 1, - anon_sym_COMMA, - STATE(1460), 1, - aux_sym_argument_list_repeat1, - [67288] = 4, + ACTIONS(2936), 1, + sym_identifier, + STATE(1592), 1, + sym_match_keyword_pattern, + [68092] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2976), 1, + ACTIONS(2757), 1, anon_sym_RPAREN, - ACTIONS(2978), 1, + ACTIONS(2972), 1, anon_sym_COMMA, - STATE(1460), 1, - aux_sym_argument_list_repeat1, - [67301] = 4, + STATE(1440), 1, + aux_sym__import_list_repeat1, + [68105] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2001), 1, - anon_sym_RBRACE, - ACTIONS(2980), 1, + ACTIONS(2975), 1, + anon_sym_RPAREN, + ACTIONS(2977), 1, anon_sym_COMMA, - STATE(1506), 1, - aux_sym_match_mapping_pattern_repeat1, - [67314] = 4, + STATE(1430), 1, + aux_sym_argument_list_repeat1, + [68118] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2622), 1, - anon_sym_COLON2, - ACTIONS(2982), 1, - anon_sym_RBRACE, - STATE(1596), 1, - sym_format_specifier, - [67327] = 4, + ACTIONS(2979), 3, + sym__newline, + anon_sym_COMMA, + anon_sym_SEMI, + [68127] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2481), 1, + ACTIONS(2981), 1, anon_sym_COMMA, - ACTIONS(2483), 1, - anon_sym_RBRACE, - STATE(1498), 1, - aux_sym_dictionary_repeat1, - [67340] = 4, + ACTIONS(2984), 1, + anon_sym_RBRACK, + STATE(1443), 1, + aux_sym_index_expression_list_repeat1, + [68140] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2984), 1, - anon_sym_RPAREN, ACTIONS(2986), 1, + anon_sym_RPAREN, + ACTIONS(2988), 1, anon_sym_COMMA, - STATE(1427), 1, - aux_sym_match_class_pattern_repeat1, - [67353] = 4, + STATE(1444), 1, + aux_sym_match_class_pattern_repeat2, + [68153] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2891), 1, + ACTIONS(2900), 1, anon_sym_RPAREN, - ACTIONS(2989), 1, + ACTIONS(2991), 1, anon_sym_COMMA, - STATE(1428), 1, + STATE(1483), 1, aux_sym__parameters_repeat1, - [67366] = 2, + [68166] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1530), 3, + ACTIONS(2337), 1, + anon_sym_from, + ACTIONS(2341), 2, sym__newline, - anon_sym_in, anon_sym_SEMI, - [67375] = 4, + [68177] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2103), 1, + ACTIONS(2090), 1, anon_sym_COMMA, - ACTIONS(2190), 1, - anon_sym_RPAREN, - STATE(1398), 1, - aux_sym__collection_elements_repeat1, - [67388] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2612), 1, + ACTIONS(2129), 1, anon_sym_RPAREN, - ACTIONS(2992), 1, - anon_sym_COMMA, - STATE(1287), 1, + STATE(1471), 1, aux_sym__collection_elements_repeat1, - [67401] = 4, + [68190] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2449), 1, + ACTIONS(2993), 1, anon_sym_COMMA, - ACTIONS(2451), 1, + ACTIONS(2996), 1, anon_sym_RBRACE, - STATE(1436), 1, + STATE(1448), 1, aux_sym_dictionary_repeat1, - [67414] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1906), 1, - anon_sym_RPAREN, - ACTIONS(2994), 1, - sym_identifier, - STATE(1551), 1, - sym_match_keyword_pattern, - [67427] = 4, + [68203] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2996), 1, - anon_sym_RPAREN, ACTIONS(2998), 1, anon_sym_COMMA, - STATE(1460), 1, - aux_sym_argument_list_repeat1, - [67440] = 4, - ACTIONS(3), 1, - sym_comment, ACTIONS(3000), 1, - anon_sym_RPAREN, - ACTIONS(3002), 1, - anon_sym_COMMA, - STATE(1435), 1, - aux_sym_match_class_pattern_repeat2, - [67453] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(3005), 1, - anon_sym_COMMA, - ACTIONS(3007), 1, anon_sym_RBRACE, - STATE(1482), 1, + STATE(1448), 1, aux_sym_dictionary_repeat1, - [67466] = 4, + [68216] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(3009), 1, + ACTIONS(3002), 1, anon_sym_COMMA, - ACTIONS(3011), 1, + ACTIONS(3004), 1, anon_sym_RBRACE, - STATE(1482), 1, + STATE(1448), 1, aux_sym_dictionary_repeat1, - [67479] = 4, + [68229] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(3013), 1, - anon_sym_RPAREN, - ACTIONS(3015), 1, - anon_sym_COMMA, - STATE(1460), 1, - aux_sym_argument_list_repeat1, - [67492] = 4, + ACTIONS(2106), 1, + anon_sym_DOT, + ACTIONS(2170), 1, + anon_sym_COLON, + STATE(1039), 1, + aux_sym_match_value_pattern_repeat1, + [68242] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2204), 1, + ACTIONS(2228), 1, anon_sym_RPAREN, - ACTIONS(2206), 1, + ACTIONS(2230), 1, anon_sym_COMMA, - STATE(1445), 1, + STATE(1457), 1, aux_sym_argument_list_repeat1, - [67505] = 4, + [68255] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(3017), 1, + ACTIONS(3006), 1, anon_sym_RPAREN, - ACTIONS(3019), 1, + ACTIONS(3008), 1, anon_sym_COMMA, - STATE(1447), 1, + STATE(1458), 1, aux_sym_argument_list_repeat1, - [67518] = 4, + [68268] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(3021), 1, - anon_sym_RPAREN, - ACTIONS(3023), 1, + ACTIONS(3010), 1, anon_sym_COMMA, + ACTIONS(3012), 1, + anon_sym_RBRACK, STATE(1460), 1, - aux_sym_argument_list_repeat1, - [67531] = 4, + aux_sym_index_expression_list_repeat1, + [68281] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2910), 1, + ACTIONS(2090), 1, anon_sym_COMMA, - ACTIONS(3025), 1, - anon_sym_RBRACK, - STATE(1418), 1, - aux_sym_index_expression_list_repeat1, - [67544] = 2, + ACTIONS(3014), 1, + anon_sym_RPAREN, + STATE(1309), 1, + aux_sym__collection_elements_repeat1, + [68294] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1427), 3, + ACTIONS(3016), 1, anon_sym_RPAREN, + ACTIONS(3018), 1, anon_sym_COMMA, - anon_sym_COLON, - [67553] = 4, + STATE(1430), 1, + aux_sym_argument_list_repeat1, + [68307] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(3027), 1, + ACTIONS(3020), 1, anon_sym_RPAREN, - ACTIONS(3029), 1, + ACTIONS(3022), 1, anon_sym_COMMA, - STATE(1490), 1, - aux_sym_match_class_pattern_repeat1, - [67566] = 4, + STATE(1430), 1, + aux_sym_argument_list_repeat1, + [68320] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(3031), 1, + ACTIONS(3024), 1, anon_sym_RPAREN, - ACTIONS(3033), 1, + ACTIONS(3026), 1, anon_sym_COMMA, - STATE(1460), 1, + STATE(1430), 1, aux_sym_argument_list_repeat1, - [67579] = 3, - ACTIONS(2077), 1, - sym_comment, - ACTIONS(3035), 1, - anon_sym_RBRACE, - ACTIONS(3037), 2, - anon_sym_LBRACE2, - aux_sym_format_specifier_token1, - [67590] = 4, + [68333] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(3039), 1, + ACTIONS(3028), 1, anon_sym_RPAREN, - ACTIONS(3041), 1, + ACTIONS(3030), 1, anon_sym_COMMA, - STATE(1460), 1, + STATE(1430), 1, aux_sym_argument_list_repeat1, - [67603] = 4, + [68346] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(3043), 1, - anon_sym_RPAREN, - ACTIONS(3045), 1, + ACTIONS(3032), 1, anon_sym_COMMA, - STATE(1460), 1, - aux_sym_argument_list_repeat1, - [67616] = 4, + ACTIONS(3034), 1, + anon_sym_RBRACK, + STATE(1443), 1, + aux_sym_index_expression_list_repeat1, + [68359] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(3027), 1, - anon_sym_RPAREN, - ACTIONS(3047), 1, + ACTIONS(2090), 1, anon_sym_COMMA, - STATE(1489), 1, - aux_sym_match_class_pattern_repeat2, - [67629] = 4, + ACTIONS(2180), 1, + anon_sym_RPAREN, + STATE(1471), 1, + aux_sym__collection_elements_repeat1, + [68372] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2622), 1, - anon_sym_COLON2, - ACTIONS(3049), 1, - anon_sym_RBRACE, + ACTIONS(2473), 1, + sym_identifier, + ACTIONS(3036), 1, + anon_sym_import, STATE(1709), 1, - sym_format_specifier, - [67642] = 2, + sym_dotted_name, + [68385] = 3, + ACTIONS(2086), 1, + sym_comment, + ACTIONS(2558), 1, + anon_sym_RBRACE, + ACTIONS(2560), 2, + anon_sym_LBRACE2, + aux_sym_format_specifier_token1, + [68396] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2453), 3, - sym__newline, - anon_sym_EQ, - anon_sym_SEMI, - [67651] = 4, + ACTIONS(2090), 1, + anon_sym_COMMA, + ACTIONS(2218), 1, + anon_sym_RPAREN, + STATE(1471), 1, + aux_sym__collection_elements_repeat1, + [68409] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2427), 1, + ACTIONS(2580), 1, sym_identifier, - STATE(1326), 1, + STATE(1438), 1, sym_dotted_name, - STATE(1381), 1, + STATE(1600), 1, sym_aliased_import, - [67664] = 4, + [68422] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(3051), 1, + ACTIONS(3038), 1, anon_sym_COMMA, - ACTIONS(3053), 1, - anon_sym_COLON, - STATE(1410), 1, - aux_sym__parameters_repeat1, - [67677] = 2, + ACTIONS(3040), 1, + anon_sym_RBRACE, + STATE(1448), 1, + aux_sym_dictionary_repeat1, + [68435] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2770), 3, + ACTIONS(2646), 1, anon_sym_RPAREN, + ACTIONS(2809), 1, anon_sym_COMMA, - anon_sym_COLON, - [67686] = 4, + STATE(1414), 1, + aux_sym__import_list_repeat1, + [68448] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2232), 1, + anon_sym_RPAREN, + ACTIONS(2234), 1, + anon_sym_COMMA, + STATE(1521), 1, + aux_sym_argument_list_repeat1, + [68461] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1006), 1, + ACTIONS(3042), 1, anon_sym_RPAREN, - ACTIONS(3055), 1, + ACTIONS(3044), 1, anon_sym_COMMA, - STATE(1302), 1, - aux_sym_with_clause_repeat1, - [67699] = 4, + STATE(1475), 1, + aux_sym_argument_list_repeat1, + [68474] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(3057), 1, + ACTIONS(3010), 1, anon_sym_COMMA, - ACTIONS(3060), 1, + ACTIONS(3046), 1, anon_sym_RBRACK, - STATE(1456), 1, + STATE(1460), 1, aux_sym_index_expression_list_repeat1, - [67712] = 4, + [68487] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2035), 1, + ACTIONS(2679), 1, + anon_sym_RPAREN, + ACTIONS(3048), 1, anon_sym_COMMA, - ACTIONS(3062), 1, - anon_sym_in, - STATE(1012), 1, - aux_sym__patterns_repeat1, - [67725] = 3, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2325), 1, - anon_sym_from, - ACTIONS(2331), 2, - sym__newline, - anon_sym_SEMI, - [67736] = 4, + STATE(1311), 1, + aux_sym__collection_elements_repeat1, + [68500] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1904), 1, + ACTIONS(3050), 1, anon_sym_RPAREN, - ACTIONS(2994), 1, - sym_identifier, - STATE(1551), 1, - sym_match_keyword_pattern, - [67749] = 4, + ACTIONS(3052), 1, + anon_sym_COMMA, + STATE(1430), 1, + aux_sym_argument_list_repeat1, + [68513] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(3064), 1, + ACTIONS(3054), 1, anon_sym_RPAREN, - ACTIONS(3066), 1, + ACTIONS(3056), 1, anon_sym_COMMA, - STATE(1460), 1, + STATE(1430), 1, aux_sym_argument_list_repeat1, - [67762] = 4, + [68526] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2994), 1, - sym_identifier, - ACTIONS(3069), 1, + ACTIONS(3058), 1, + anon_sym_COMMA, + ACTIONS(3060), 1, + anon_sym_COLON, + STATE(1400), 1, + aux_sym_with_clause_repeat1, + [68539] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3062), 1, anon_sym_RPAREN, - STATE(1551), 1, - sym_match_keyword_pattern, - [67775] = 4, + ACTIONS(3064), 1, + anon_sym_COMMA, + STATE(1430), 1, + aux_sym_argument_list_repeat1, + [68552] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(3069), 1, + ACTIONS(3066), 1, anon_sym_RPAREN, - ACTIONS(3071), 1, + ACTIONS(3068), 1, anon_sym_COMMA, - STATE(1435), 1, - aux_sym_match_class_pattern_repeat2, - [67788] = 4, + STATE(1430), 1, + aux_sym_argument_list_repeat1, + [68565] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2632), 1, - anon_sym_LPAREN, + ACTIONS(3070), 1, + anon_sym_COMMA, ACTIONS(3073), 1, - anon_sym_COLON, - STATE(1619), 1, - sym_argument_list, - [67801] = 3, - ACTIONS(2077), 1, - sym_comment, - ACTIONS(2577), 1, anon_sym_RBRACE, - ACTIONS(2579), 2, - anon_sym_LBRACE2, - aux_sym_format_specifier_token1, - [67812] = 3, + STATE(1477), 1, + aux_sym_match_mapping_pattern_repeat1, + [68578] = 4, ACTIONS(3), 1, sym_comment, + ACTIONS(3058), 1, + anon_sym_COMMA, ACTIONS(3075), 1, - anon_sym_in, - ACTIONS(3077), 2, - sym__newline, - anon_sym_SEMI, - [67823] = 4, + anon_sym_COLON, + STATE(1474), 1, + aux_sym_with_clause_repeat1, + [68591] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2636), 1, - anon_sym_LBRACK, + ACTIONS(3077), 1, + anon_sym_COMMA, ACTIONS(3079), 1, - anon_sym_EQ, - STATE(1665), 1, - sym_type_parameters, - [67836] = 4, + anon_sym_RBRACE, + STATE(1448), 1, + aux_sym_dictionary_repeat1, + [68604] = 4, ACTIONS(3), 1, sym_comment, + ACTIONS(1910), 1, + anon_sym_RPAREN, ACTIONS(3081), 1, - anon_sym_if, - ACTIONS(3083), 1, + anon_sym_COMMA, + STATE(1280), 1, + aux_sym_open_sequence_match_pattern_repeat1, + [68617] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2067), 1, anon_sym_COLON, - STATE(1592), 1, - sym_guard, - [67849] = 4, + ACTIONS(3083), 1, + anon_sym_COMMA, + STATE(1487), 1, + aux_sym__parameters_repeat1, + [68630] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(3069), 1, + ACTIONS(2194), 1, anon_sym_RPAREN, - ACTIONS(3071), 1, + ACTIONS(2196), 1, anon_sym_COMMA, - STATE(1474), 1, - aux_sym_match_class_pattern_repeat2, - [67862] = 4, + STATE(1473), 1, + aux_sym_argument_list_repeat1, + [68643] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2035), 1, - anon_sym_COMMA, + ACTIONS(2067), 1, + anon_sym_RPAREN, ACTIONS(3085), 1, - anon_sym_in, - STATE(1012), 1, - aux_sym__patterns_repeat1, - [67875] = 4, + anon_sym_COMMA, + STATE(1519), 1, + aux_sym__parameters_repeat1, + [68656] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2632), 1, - anon_sym_LPAREN, ACTIONS(3087), 1, - anon_sym_COLON, - STATE(1712), 1, - sym_argument_list, - [67888] = 4, + anon_sym_RPAREN, + ACTIONS(3089), 1, + anon_sym_COMMA, + STATE(1513), 1, + aux_sym_with_clause_repeat1, + [68669] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2994), 1, - sym_identifier, - ACTIONS(3089), 1, + ACTIONS(1546), 3, + sym__newline, + anon_sym_in, + anon_sym_SEMI, + [68678] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2222), 1, anon_sym_RPAREN, - STATE(1551), 1, - sym_match_keyword_pattern, - [67901] = 4, + ACTIONS(2224), 1, + anon_sym_COMMA, + STATE(1413), 1, + aux_sym_argument_list_repeat1, + [68691] = 4, ACTIONS(3), 1, sym_comment, + ACTIONS(2970), 1, + anon_sym_COLON, ACTIONS(3091), 1, anon_sym_COMMA, - ACTIONS(3093), 1, - anon_sym_RBRACK, - STATE(1403), 1, - aux_sym_open_sequence_match_pattern_repeat1, - [67914] = 3, + STATE(1487), 1, + aux_sym__parameters_repeat1, + [68704] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2752), 1, - anon_sym_as, - ACTIONS(2780), 2, + ACTIONS(3094), 1, anon_sym_RPAREN, + ACTIONS(3096), 1, anon_sym_COMMA, - [67925] = 4, + STATE(1500), 1, + aux_sym_match_class_pattern_repeat1, + [68717] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(3089), 1, - anon_sym_RPAREN, - ACTIONS(3095), 1, + ACTIONS(3098), 1, anon_sym_COMMA, - STATE(1435), 1, - aux_sym_match_class_pattern_repeat2, - [67938] = 4, + ACTIONS(3100), 1, + anon_sym_RBRACK, + STATE(1528), 1, + aux_sym_open_sequence_match_pattern_repeat1, + [68730] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2787), 1, + ACTIONS(3102), 1, anon_sym_RPAREN, - ACTIONS(3097), 1, + ACTIONS(3104), 1, anon_sym_COMMA, - STATE(1475), 1, - aux_sym__import_list_repeat1, - [67951] = 3, - ACTIONS(2077), 1, + STATE(1434), 1, + aux_sym_argument_list_repeat1, + [68743] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2618), 1, + anon_sym_LPAREN, + ACTIONS(3106), 1, + anon_sym_COLON, + STATE(1634), 1, + sym_argument_list, + [68756] = 4, + ACTIONS(3), 1, sym_comment, - ACTIONS(2526), 1, + ACTIONS(2638), 1, + anon_sym_COLON2, + ACTIONS(3108), 1, anon_sym_RBRACE, - ACTIONS(2528), 2, - anon_sym_LBRACE2, - aux_sym_format_specifier_token1, - [67962] = 4, + STATE(1621), 1, + sym_format_specifier, + [68769] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(3100), 1, + ACTIONS(3094), 1, + anon_sym_RPAREN, + ACTIONS(3110), 1, anon_sym_COMMA, - ACTIONS(3102), 1, - anon_sym_COLON, - STATE(1488), 1, - aux_sym_with_clause_repeat1, - [67975] = 4, + STATE(1506), 1, + aux_sym_match_class_pattern_repeat2, + [68782] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2035), 1, + ACTIONS(2742), 3, + anon_sym_RPAREN, anon_sym_COMMA, - ACTIONS(3104), 1, - anon_sym_in, - STATE(1012), 1, - aux_sym__patterns_repeat1, - [67988] = 4, + anon_sym_COLON, + [68791] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2103), 1, - anon_sym_COMMA, - ACTIONS(2188), 1, - anon_sym_RPAREN, - STATE(1398), 1, - aux_sym__collection_elements_repeat1, - [68001] = 4, + ACTIONS(2902), 1, + anon_sym_if, + ACTIONS(3112), 1, + anon_sym_COLON, + STATE(1647), 1, + sym_guard, + [68804] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2994), 1, - sym_identifier, - ACTIONS(3106), 1, + ACTIONS(2232), 1, anon_sym_RPAREN, - STATE(1551), 1, - sym_match_keyword_pattern, - [68014] = 2, + ACTIONS(2234), 1, + anon_sym_COMMA, + STATE(1523), 1, + aux_sym_argument_list_repeat1, + [68817] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2712), 3, + ACTIONS(3114), 1, anon_sym_RPAREN, + ACTIONS(3116), 1, anon_sym_COMMA, - anon_sym_COLON, - [68023] = 4, + STATE(1525), 1, + aux_sym_argument_list_repeat1, + [68830] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(3108), 1, + ACTIONS(3118), 1, anon_sym_COMMA, - ACTIONS(3111), 1, + ACTIONS(3120), 1, anon_sym_RBRACE, - STATE(1482), 1, - aux_sym_dictionary_repeat1, - [68036] = 4, - ACTIONS(3), 1, + STATE(1423), 1, + aux_sym_match_mapping_pattern_repeat1, + [68843] = 3, + ACTIONS(2086), 1, sym_comment, - ACTIONS(3113), 1, - anon_sym_COMMA, - ACTIONS(3115), 1, - anon_sym_RBRACK, - STATE(1499), 1, - aux_sym_type_parameters_repeat1, - [68049] = 4, + ACTIONS(3122), 1, + anon_sym_RBRACE, + ACTIONS(3124), 2, + anon_sym_LBRACE2, + aux_sym_format_specifier_token1, + [68854] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(3117), 1, + ACTIONS(1914), 1, anon_sym_RPAREN, - ACTIONS(3119), 1, + ACTIONS(3126), 1, anon_sym_COMMA, - STATE(1455), 1, - aux_sym_with_clause_repeat1, - [68062] = 4, + STATE(1427), 1, + aux_sym_match_class_pattern_repeat1, + [68867] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(3121), 1, + ACTIONS(3010), 1, anon_sym_COMMA, - ACTIONS(3123), 1, - anon_sym_RBRACE, - STATE(1424), 1, - aux_sym_match_mapping_pattern_repeat1, - [68075] = 2, + ACTIONS(3128), 1, + anon_sym_RBRACK, + STATE(1460), 1, + aux_sym_index_expression_list_repeat1, + [68880] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(3125), 3, - anon_sym_LPAREN, - anon_sym_COLON, - anon_sym_EQ, - [68084] = 4, + ACTIONS(2638), 1, + anon_sym_COLON2, + ACTIONS(2797), 1, + anon_sym_RBRACE, + STATE(1741), 1, + sym_format_specifier, + [68893] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2658), 1, - anon_sym_RPAREN, - ACTIONS(2750), 1, - anon_sym_COMMA, - STATE(1406), 1, - aux_sym__import_list_repeat1, - [68097] = 4, + ACTIONS(2413), 1, + sym_identifier, + STATE(1329), 1, + sym_dotted_name, + STATE(1428), 1, + sym_aliased_import, + [68906] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(3100), 1, + ACTIONS(2031), 1, anon_sym_COMMA, - ACTIONS(3127), 1, - anon_sym_COLON, - STATE(1302), 1, - aux_sym_with_clause_repeat1, - [68110] = 4, + ACTIONS(3130), 1, + anon_sym_in, + STATE(1018), 1, + aux_sym__patterns_repeat1, + [68919] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1904), 1, + ACTIONS(1914), 1, anon_sym_RPAREN, - ACTIONS(3129), 1, - anon_sym_COMMA, - STATE(1435), 1, - aux_sym_match_class_pattern_repeat2, - [68123] = 4, + ACTIONS(2936), 1, + sym_identifier, + STATE(1592), 1, + sym_match_keyword_pattern, + [68932] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(1904), 1, + ACTIONS(1914), 1, anon_sym_RPAREN, - ACTIONS(3131), 1, + ACTIONS(3132), 1, anon_sym_COMMA, - STATE(1427), 1, - aux_sym_match_class_pattern_repeat1, - [68136] = 2, + STATE(1444), 1, + aux_sym_match_class_pattern_repeat2, + [68945] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(3133), 3, + ACTIONS(3134), 1, + anon_sym_COLON, + ACTIONS(2853), 2, anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_COLON, - [68145] = 3, - ACTIONS(2077), 1, + [68956] = 3, + ACTIONS(2086), 1, sym_comment, - ACTIONS(2514), 1, + ACTIONS(2562), 1, anon_sym_RBRACE, - ACTIONS(2516), 2, + ACTIONS(2564), 2, anon_sym_LBRACE2, aux_sym_format_specifier_token1, - [68156] = 4, + [68967] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2566), 1, - sym_identifier, - STATE(1473), 1, - sym_dotted_name, - STATE(1553), 1, - sym_aliased_import, - [68169] = 2, + ACTIONS(1550), 3, + sym__newline, + anon_sym_in, + anon_sym_SEMI, + [68976] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2761), 3, - sym__newline, + ACTIONS(3136), 3, + anon_sym_LPAREN, + anon_sym_COLON, + anon_sym_EQ, + [68985] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3138), 1, anon_sym_COMMA, - anon_sym_SEMI, - [68178] = 2, + ACTIONS(3141), 1, + anon_sym_RBRACK, + STATE(1511), 1, + aux_sym_type_parameters_repeat1, + [68998] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3135), 3, + ACTIONS(3143), 3, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_COLON, - [68187] = 4, + [69007] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2622), 1, - anon_sym_COLON2, - ACTIONS(2746), 1, - anon_sym_RBRACE, - STATE(1624), 1, - sym_format_specifier, - [68200] = 4, + ACTIONS(1018), 1, + anon_sym_RPAREN, + ACTIONS(3145), 1, + anon_sym_COMMA, + STATE(1400), 1, + aux_sym_with_clause_repeat1, + [69020] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(3137), 1, + ACTIONS(3147), 1, sym_identifier, - ACTIONS(3139), 1, + ACTIONS(3149), 1, sym_match_wildcard_pattern, - STATE(1259), 1, + STATE(1312), 1, sym_match_capture_pattern, - [68213] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(3141), 1, - anon_sym_COMMA, - ACTIONS(3143), 1, - anon_sym_RBRACE, - STATE(1482), 1, - aux_sym_dictionary_repeat1, - [68226] = 4, + [69033] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(3113), 1, + ACTIONS(2031), 1, anon_sym_COMMA, - ACTIONS(3145), 1, - anon_sym_RBRACK, - STATE(1382), 1, - aux_sym_type_parameters_repeat1, - [68239] = 3, + ACTIONS(3151), 1, + anon_sym_in, + STATE(1018), 1, + aux_sym__patterns_repeat1, + [69046] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(2774), 1, + ACTIONS(2857), 1, anon_sym_EQ, - ACTIONS(2770), 2, + ACTIONS(2853), 2, anon_sym_COMMA, anon_sym_COLON, - [68250] = 4, - ACTIONS(3), 1, + [69057] = 3, + ACTIONS(2086), 1, sym_comment, - ACTIONS(3147), 1, - anon_sym_COMMA, - ACTIONS(3149), 1, + ACTIONS(2591), 1, anon_sym_RBRACE, - STATE(1482), 1, - aux_sym_dictionary_repeat1, - [68263] = 4, + ACTIONS(2593), 2, + anon_sym_LBRACE2, + aux_sym_format_specifier_token1, + [69068] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2057), 1, - anon_sym_RPAREN, - ACTIONS(3151), 1, + ACTIONS(3010), 1, anon_sym_COMMA, - STATE(1428), 1, - aux_sym__parameters_repeat1, - [68276] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(3081), 1, - anon_sym_if, ACTIONS(3153), 1, - anon_sym_COLON, - STATE(1706), 1, - sym_guard, - [68289] = 3, + anon_sym_RBRACK, + STATE(1460), 1, + aux_sym_index_expression_list_repeat1, + [69081] = 4, ACTIONS(3), 1, sym_comment, + ACTIONS(2970), 1, + anon_sym_RPAREN, ACTIONS(3155), 1, anon_sym_COMMA, - ACTIONS(3157), 2, - anon_sym_if, + STATE(1519), 1, + aux_sym__parameters_repeat1, + [69094] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2618), 1, + anon_sym_LPAREN, + ACTIONS(3158), 1, anon_sym_COLON, - [68300] = 4, + STATE(1663), 1, + sym_argument_list, + [69107] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2385), 1, + ACTIONS(3160), 1, + anon_sym_RPAREN, + ACTIONS(3162), 1, anon_sym_COMMA, - ACTIONS(2387), 1, - anon_sym_RBRACE, - STATE(1379), 1, - aux_sym_dictionary_repeat1, - [68313] = 4, + STATE(1430), 1, + aux_sym_argument_list_repeat1, + [69120] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3159), 1, + ACTIONS(2881), 3, + anon_sym_RPAREN, anon_sym_COMMA, - ACTIONS(3162), 1, - anon_sym_RBRACE, - STATE(1506), 1, - aux_sym_match_mapping_pattern_repeat1, - [68326] = 4, + anon_sym_COLON, + [69129] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(3164), 1, - anon_sym_COMMA, + anon_sym_RPAREN, ACTIONS(3166), 1, - anon_sym_RBRACE, - STATE(1482), 1, - aux_sym_dictionary_repeat1, - [68339] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2035), 1, anon_sym_COMMA, - ACTIONS(3168), 1, - anon_sym_in, - STATE(1012), 1, - aux_sym__patterns_repeat1, - [68352] = 4, + STATE(1430), 1, + aux_sym_argument_list_repeat1, + [69142] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2035), 1, + ACTIONS(3168), 3, + anon_sym_RPAREN, anon_sym_COMMA, - ACTIONS(3170), 1, - anon_sym_in, - STATE(1012), 1, - aux_sym__patterns_repeat1, - [68365] = 3, + anon_sym_COLON, + [69151] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(3172), 1, - anon_sym_COLON, - ACTIONS(2770), 2, + ACTIONS(3170), 1, anon_sym_RPAREN, + ACTIONS(3172), 1, anon_sym_COMMA, - [68376] = 4, + STATE(1430), 1, + aux_sym_argument_list_repeat1, + [69164] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(3053), 1, - anon_sym_RPAREN, ACTIONS(3174), 1, + anon_sym_RPAREN, + ACTIONS(3176), 1, anon_sym_COMMA, - STATE(1502), 1, - aux_sym__parameters_repeat1, - [68389] = 3, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2723), 1, - anon_sym_LPAREN, - STATE(1556), 1, - sym_parameters, - [68399] = 2, - ACTIONS(3), 1, - sym_comment, - ACTIONS(3176), 2, - sym__newline, - anon_sym_SEMI, - [68407] = 3, + STATE(1430), 1, + aux_sym_argument_list_repeat1, + [69177] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2994), 1, - sym_identifier, - STATE(1551), 1, - sym_match_keyword_pattern, - [68417] = 2, + ACTIONS(2638), 1, + anon_sym_COLON2, + ACTIONS(3178), 1, + anon_sym_RBRACE, + STATE(1656), 1, + sym_format_specifier, + [69190] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(3178), 2, - anon_sym_COMMA, + ACTIONS(1910), 1, anon_sym_RBRACK, - [68425] = 2, - ACTIONS(3), 1, - sym_comment, - ACTIONS(3180), 2, - sym__newline, - anon_sym_SEMI, - [68433] = 2, + ACTIONS(3180), 1, + anon_sym_COMMA, + STATE(1280), 1, + aux_sym_open_sequence_match_pattern_repeat1, + [69203] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3182), 2, + ACTIONS(2489), 3, sym__newline, + anon_sym_EQ, anon_sym_SEMI, - [68441] = 3, + [69212] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2357), 1, + ACTIONS(2031), 1, anon_sym_COMMA, - STATE(1247), 1, - aux_sym_expression_list_repeat1, - [68451] = 2, + ACTIONS(3182), 1, + anon_sym_in, + STATE(1018), 1, + aux_sym__patterns_repeat1, + [69225] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(3184), 2, + ACTIONS(2031), 1, anon_sym_COMMA, - anon_sym_RBRACK, - [68459] = 3, + ACTIONS(3184), 1, + anon_sym_in, + STATE(1018), 1, + aux_sym__patterns_repeat1, + [69238] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(2327), 1, + ACTIONS(2031), 1, anon_sym_COMMA, - STATE(1278), 1, - aux_sym_expression_list_repeat1, - [68469] = 2, - ACTIONS(3), 1, - sym_comment, - ACTIONS(3186), 2, - sym__newline, - anon_sym_SEMI, - [68477] = 2, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2407), 2, - sym__newline, - anon_sym_SEMI, - [68485] = 2, + ACTIONS(3186), 1, + anon_sym_in, + STATE(1018), 1, + aux_sym__patterns_repeat1, + [69251] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1054), 2, + ACTIONS(1088), 2, anon_sym_except, anon_sym_finally, - [68493] = 2, + [69259] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(3188), 2, anon_sym_RPAREN, anon_sym_COMMA, - [68501] = 2, + [69267] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(3190), 2, - anon_sym_COLON, - anon_sym_DASH_GT, - [68509] = 2, + anon_sym_COMMA, + anon_sym_RBRACK, + [69275] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(3192), 2, - sym__newline, - anon_sym_SEMI, - [68517] = 2, + anon_sym_COLON, + anon_sym_DASH_GT, + [69283] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(3194), 2, - anon_sym_COMMA, - anon_sym_RBRACK, - [68525] = 2, + ACTIONS(3194), 1, + sym_identifier, + STATE(1609), 1, + sym_match_capture_pattern, + [69293] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(3196), 2, - sym__newline, - anon_sym_SEMI, - [68533] = 3, + ACTIONS(3196), 1, + anon_sym_COLON, + ACTIONS(3198), 1, + anon_sym_DASH_GT, + [69303] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3198), 1, + ACTIONS(2710), 2, + anon_sym_RPAREN, anon_sym_COMMA, - ACTIONS(3200), 1, - anon_sym_RBRACE, - [68543] = 2, + [69311] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2467), 2, - sym__newline, - anon_sym_SEMI, - [68551] = 3, + ACTIONS(3200), 2, + anon_sym_RPAREN, + anon_sym_COMMA, + [69319] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3202), 1, anon_sym_COLON, ACTIONS(3204), 1, anon_sym_DASH_GT, - [68561] = 2, + [69329] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3206), 2, + ACTIONS(2979), 2, anon_sym_RPAREN, anon_sym_COMMA, - [68569] = 2, + [69337] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(2266), 2, - sym__newline, - anon_sym_SEMI, - [68577] = 2, + ACTIONS(2106), 1, + anon_sym_DOT, + STATE(1451), 1, + aux_sym_match_value_pattern_repeat1, + [69347] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(3208), 2, - sym__newline, - anon_sym_SEMI, - [68585] = 2, + ACTIONS(3206), 1, + anon_sym_COLON, + ACTIONS(3208), 1, + anon_sym_DASH_GT, + [69357] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3210), 2, + ACTIONS(2433), 2, sym__newline, anon_sym_SEMI, - [68593] = 2, - ACTIONS(3), 1, - sym_comment, - ACTIONS(3212), 2, - anon_sym_RPAREN, - anon_sym_COMMA, - [68601] = 2, + [69365] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(3214), 2, - anon_sym_COMMA, - anon_sym_RBRACK, - [68609] = 3, + ACTIONS(3210), 1, + anon_sym_COLON, + ACTIONS(3212), 1, + anon_sym_DASH_GT, + [69375] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(2723), 1, - anon_sym_LPAREN, - STATE(1531), 1, - sym_parameters, - [68619] = 3, + ACTIONS(2465), 1, + anon_sym_as, + ACTIONS(2467), 1, + anon_sym_COLON, + [69385] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(3216), 1, + ACTIONS(3214), 1, anon_sym_COLON, - ACTIONS(3218), 1, + ACTIONS(3216), 1, anon_sym_DASH_GT, - [68629] = 3, + [69395] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3155), 1, + ACTIONS(3218), 2, anon_sym_COMMA, - ACTIONS(3220), 1, - anon_sym_RPAREN, - [68639] = 3, + anon_sym_RBRACE, + [69403] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3222), 1, - anon_sym_COMMA, - STATE(1396), 1, - aux_sym_open_sequence_match_pattern_repeat1, - [68649] = 2, + ACTIONS(3220), 2, + anon_sym_COLON, + anon_sym_DASH_GT, + [69411] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1058), 2, - anon_sym_except, - anon_sym_finally, - [68657] = 3, + ACTIONS(2469), 1, + anon_sym_as, + ACTIONS(2471), 1, + anon_sym_COLON, + [69421] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3224), 1, - anon_sym_COLON, - ACTIONS(3226), 1, - anon_sym_DASH_GT, - [68667] = 2, + ACTIONS(3222), 2, + sym__newline, + anon_sym_SEMI, + [69429] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(2984), 2, - anon_sym_RPAREN, + ACTIONS(3120), 1, + anon_sym_RBRACE, + ACTIONS(3224), 1, anon_sym_COMMA, - [68675] = 3, + [69439] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3228), 1, - anon_sym_COLON, - ACTIONS(3230), 1, - anon_sym_DASH_GT, - [68685] = 3, + ACTIONS(2497), 2, + sym__newline, + anon_sym_SEMI, + [69447] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(3232), 1, - anon_sym_COLON, - ACTIONS(3234), 1, - anon_sym_DASH_GT, - [68695] = 3, + ACTIONS(1989), 1, + anon_sym_RBRACE, + ACTIONS(3226), 1, + anon_sym_COMMA, + [69457] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(3236), 1, - anon_sym_COLON, - ACTIONS(3238), 1, - anon_sym_DASH_GT, - [68705] = 3, + ACTIONS(3228), 1, + sym_integer, + ACTIONS(3230), 1, + sym_float, + [69467] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2455), 1, - anon_sym_as, - ACTIONS(2457), 1, - anon_sym_COLON, - [68715] = 2, + ACTIONS(3073), 2, + anon_sym_COMMA, + anon_sym_RBRACE, + [69475] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2660), 2, + ACTIONS(2948), 2, + anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_RBRACK, - [68723] = 3, + [69483] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2459), 1, - anon_sym_as, - ACTIONS(2461), 1, - anon_sym_COLON, - [68733] = 2, + ACTIONS(3232), 2, + sym__newline, + anon_sym_SEMI, + [69491] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(3000), 2, - anon_sym_RPAREN, - anon_sym_COMMA, - [68741] = 2, + ACTIONS(3234), 1, + anon_sym_COLON, + ACTIONS(3236), 1, + anon_sym_DASH_GT, + [69501] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3240), 2, + ACTIONS(3238), 2, sym__newline, anon_sym_SEMI, - [68749] = 2, + [69509] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2780), 2, - anon_sym_RPAREN, + ACTIONS(3240), 2, anon_sym_COMMA, - [68757] = 2, + anon_sym_RBRACK, + [69517] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2900), 2, - anon_sym_RPAREN, + ACTIONS(3242), 2, anon_sym_COMMA, - [68765] = 3, + anon_sym_RBRACK, + [69525] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(2397), 1, + ACTIONS(2439), 1, anon_sym_as, - ACTIONS(2401), 1, - anon_sym_COLON, - [68775] = 3, - ACTIONS(3), 1, - sym_comment, - ACTIONS(3242), 1, + ACTIONS(2441), 1, anon_sym_COLON, - ACTIONS(3244), 1, - anon_sym_DASH_GT, - [68785] = 3, + [69535] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3246), 1, - sym_identifier, - STATE(1576), 1, - sym_match_capture_pattern, - [68795] = 3, + ACTIONS(3244), 2, + sym__newline, + anon_sym_SEMI, + [69543] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2083), 1, - anon_sym_DOT, - STATE(1408), 1, - aux_sym_match_value_pattern_repeat1, - [68805] = 2, + ACTIONS(2702), 2, + anon_sym_COMMA, + anon_sym_RBRACK, + [69551] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3248), 2, - sym__newline, - anon_sym_SEMI, - [68813] = 3, + ACTIONS(3246), 2, + anon_sym_COMMA, + anon_sym_RBRACE, + [69559] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(3123), 1, - anon_sym_RBRACE, - ACTIONS(3250), 1, + ACTIONS(3248), 1, anon_sym_COMMA, - [68823] = 3, + ACTIONS(3250), 1, + anon_sym_RBRACE, + [69569] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3252), 1, - sym_integer, - ACTIONS(3254), 1, - sym_float, - [68833] = 3, + ACTIONS(2276), 2, + sym__newline, + anon_sym_SEMI, + [69577] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2477), 1, - anon_sym_as, - ACTIONS(2479), 1, - anon_sym_COLON, - [68843] = 2, + ACTIONS(3252), 2, + anon_sym_COMMA, + anon_sym_RBRACK, + [69585] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3256), 2, + ACTIONS(3254), 2, sym__newline, anon_sym_SEMI, - [68851] = 2, + [69593] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(1018), 2, - anon_sym_except, - anon_sym_finally, - [68859] = 3, + ACTIONS(2877), 1, + anon_sym_LPAREN, + STATE(1576), 1, + sym_parameters, + [69603] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(3258), 1, - sym_integer, - ACTIONS(3260), 1, - sym_float, - [68869] = 2, + ACTIONS(2393), 1, + anon_sym_COMMA, + STATE(1273), 1, + aux_sym_expression_list_repeat1, + [69613] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(2744), 2, - sym__newline, - anon_sym_SEMI, - [68877] = 2, + ACTIONS(2877), 1, + anon_sym_LPAREN, + STATE(1560), 1, + sym_parameters, + [69623] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2652), 2, - anon_sym_RPAREN, + ACTIONS(3256), 2, anon_sym_COMMA, - [68885] = 3, + anon_sym_RBRACK, + [69631] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(2238), 1, - anon_sym_COMMA, - STATE(1219), 1, - aux_sym_expression_list_repeat1, - [68895] = 2, + ACTIONS(3258), 1, + anon_sym_COLON, + ACTIONS(3260), 1, + anon_sym_DASH_GT, + [69641] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(3262), 2, anon_sym_COMMA, - anon_sym_RBRACE, - [68903] = 2, + anon_sym_RBRACK, + [69649] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3264), 2, + ACTIONS(2715), 2, sym__newline, anon_sym_SEMI, - [68911] = 2, + [69657] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2469), 2, + ACTIONS(3264), 2, sym__newline, anon_sym_SEMI, - [68919] = 2, + [69665] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(3266), 2, sym__newline, anon_sym_SEMI, - [68927] = 2, + [69673] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(3268), 2, sym__newline, anon_sym_SEMI, - [68935] = 2, + [69681] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2770), 2, - anon_sym_COMMA, - anon_sym_COLON, - [68943] = 2, + ACTIONS(1054), 2, + anon_sym_except, + anon_sym_finally, + [69689] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1052), 2, + ACTIONS(1022), 2, anon_sym_except, anon_sym_finally, - [68951] = 2, + [69697] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(3270), 2, - anon_sym_COMMA, - anon_sym_RBRACE, - [68959] = 2, + sym__newline, + anon_sym_SEMI, + [69705] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(3272), 2, sym__newline, anon_sym_SEMI, - [68967] = 2, + [69713] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(3274), 2, sym__newline, anon_sym_SEMI, - [68975] = 3, + [69721] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3276), 1, sym_integer, ACTIONS(3278), 1, sym_float, - [68985] = 2, + [69731] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(3280), 2, + ACTIONS(2260), 1, anon_sym_COMMA, - anon_sym_RBRACE, - [68993] = 2, + STATE(1272), 1, + aux_sym_expression_list_repeat1, + [69741] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1070), 2, - anon_sym_except, - anon_sym_finally, - [69001] = 3, + ACTIONS(3280), 2, + sym__newline, + anon_sym_SEMI, + [69749] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(2723), 1, - anon_sym_LPAREN, - STATE(1546), 1, - sym_parameters, - [69011] = 3, + ACTIONS(2339), 1, + anon_sym_COMMA, + STATE(1286), 1, + aux_sym_expression_list_repeat1, + [69759] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2723), 1, - anon_sym_LPAREN, - STATE(1547), 1, - sym_parameters, - [69021] = 3, + ACTIONS(2491), 2, + sym__newline, + anon_sym_SEMI, + [69767] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1951), 1, - anon_sym_RBRACE, - ACTIONS(3282), 1, + ACTIONS(2986), 2, + anon_sym_RPAREN, anon_sym_COMMA, - [69031] = 3, + [69775] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(3284), 1, + ACTIONS(2936), 1, + sym_identifier, + STATE(1592), 1, + sym_match_keyword_pattern, + [69785] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2399), 1, + anon_sym_as, + ACTIONS(2403), 1, + anon_sym_COLON, + [69795] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3282), 1, anon_sym_COMMA, - STATE(1340), 1, + STATE(1382), 1, aux_sym_open_sequence_match_pattern_repeat1, - [69041] = 2, + [69805] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3284), 2, + sym__newline, + anon_sym_SEMI, + [69813] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2877), 1, + anon_sym_LPAREN, + STATE(1544), 1, + sym_parameters, + [69823] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1026), 2, + anon_sym_except, + anon_sym_finally, + [69831] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2877), 1, + anon_sym_LPAREN, + STATE(1546), 1, + sym_parameters, + [69841] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3162), 2, + ACTIONS(2729), 2, + anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_RBRACE, - [69049] = 3, + [69849] = 3, ACTIONS(3), 1, sym_comment, + ACTIONS(2906), 1, + anon_sym_COMMA, ACTIONS(3286), 1, - anon_sym_COLON, + anon_sym_RPAREN, + [69859] = 3, + ACTIONS(3), 1, + sym_comment, ACTIONS(3288), 1, - anon_sym_DASH_GT, - [69059] = 2, + anon_sym_COMMA, + STATE(1480), 1, + aux_sym_open_sequence_match_pattern_repeat1, + [69869] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(3290), 2, sym__newline, anon_sym_SEMI, - [69067] = 2, - ACTIONS(3), 1, - sym_comment, - ACTIONS(3292), 2, - anon_sym_COMMA, - anon_sym_RBRACK, - [69075] = 2, + [69877] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(3294), 2, - anon_sym_COLON, - anon_sym_DASH_GT, - [69083] = 2, + ACTIONS(3292), 1, + sym_integer, + ACTIONS(3294), 1, + sym_float, + [69887] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(3296), 2, - anon_sym_COMMA, - anon_sym_RBRACK, - [69091] = 2, + sym__newline, + anon_sym_SEMI, + [69895] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3298), 1, + ACTIONS(2853), 2, + anon_sym_COMMA, anon_sym_COLON, - [69098] = 2, - ACTIONS(3), 1, - sym_comment, - ACTIONS(3300), 1, - anon_sym_RBRACE, - [69105] = 2, + [69903] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2936), 1, - anon_sym_RBRACK, - [69112] = 2, + ACTIONS(1079), 2, + anon_sym_except, + anon_sym_finally, + [69911] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3062), 1, - anon_sym_in, - [69119] = 2, + ACTIONS(3298), 2, + sym__newline, + anon_sym_SEMI, + [69919] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3302), 1, + ACTIONS(3300), 2, + anon_sym_COMMA, anon_sym_RBRACE, - [69126] = 2, + [69927] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3304), 1, - sym_identifier, - [69133] = 2, + ACTIONS(3302), 2, + sym__newline, + anon_sym_SEMI, + [69935] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3306), 1, - sym_identifier, - [69140] = 2, + ACTIONS(3304), 2, + anon_sym_RPAREN, + anon_sym_COMMA, + [69943] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(3308), 1, + ACTIONS(3306), 1, anon_sym_COLON, - [69147] = 2, + ACTIONS(3308), 1, + anon_sym_DASH_GT, + [69953] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(3310), 1, anon_sym_COLON, - [69154] = 2, + [69960] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3012), 1, + anon_sym_RBRACK, + [69967] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(3312), 1, - anon_sym_RBRACE, - [69161] = 2, + anon_sym_RPAREN, + [69974] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(3314), 1, - anon_sym_COLON, - [69168] = 2, + sym_identifier, + [69981] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, - anon_sym_RBRACE, - [69175] = 2, + sym_identifier, + [69988] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(3318), 1, - sym_identifier, - [69182] = 2, + anon_sym_RPAREN, + [69995] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(3320), 1, - anon_sym_COLON, - [69189] = 2, + anon_sym_in, + [70002] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(3322), 1, - anon_sym_COLON, - [69196] = 2, + anon_sym_import, + [70009] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(3324), 1, - anon_sym_COLON, - [69203] = 2, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2958), 1, - anon_sym_RBRACK, - [69210] = 2, + anon_sym_RBRACE, + [70016] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(3326), 1, anon_sym_COLON, - [69217] = 2, + [70023] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(3328), 1, - ts_builtin_sym_end, - [69224] = 2, + anon_sym_for, + [70030] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(3330), 1, - anon_sym_COLON, - [69231] = 2, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2944), 1, - anon_sym_in, - [69238] = 2, + anon_sym_RBRACE, + [70037] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(3332), 1, anon_sym_RPAREN, - [69245] = 2, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2546), 1, - anon_sym_COLON, - [69252] = 2, + [70044] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(3334), 1, - sym_identifier, - [69259] = 2, + anon_sym_COLON, + [70051] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(3336), 1, anon_sym_RBRACE, - [69266] = 2, + [70058] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(3338), 1, + anon_sym_RPAREN, + [70065] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2535), 1, anon_sym_COLON, - [69273] = 2, + [70072] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(3340), 1, - anon_sym_RPAREN, - [69280] = 2, + anon_sym_COLON, + [70079] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(3342), 1, - anon_sym_COLON, - [69287] = 2, + sym_identifier, + [70086] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(3344), 1, anon_sym_COLON, - [69294] = 2, + [70093] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2548), 1, - anon_sym_COLON, - [69301] = 2, + ACTIONS(2375), 1, + anon_sym_EQ, + [70100] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(3346), 1, anon_sym_COLON, - [69308] = 2, + [70107] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(3348), 1, - sym_identifier, - [69315] = 2, + anon_sym_COLON, + [70114] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2982), 1, - anon_sym_RBRACE, - [69322] = 2, + ACTIONS(2541), 1, + anon_sym_COLON, + [70121] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(3350), 1, - sym_identifier, - [69329] = 2, + anon_sym_COLON, + [70128] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(3352), 1, - anon_sym_RBRACK, - [69336] = 2, + anon_sym_import, + [70135] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(3354), 1, anon_sym_COLON, - [69343] = 2, + [70142] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(3356), 1, - anon_sym_COLON, - [69350] = 2, + anon_sym_RPAREN, + [70149] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(3358), 1, - anon_sym_COLON, - [69357] = 2, + sym_identifier, + [70156] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(3360), 1, - anon_sym_RBRACE, - [69364] = 2, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2280), 1, - anon_sym_EQ, - [69371] = 2, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2562), 1, anon_sym_COLON, - [69378] = 2, + [70163] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(3362), 1, anon_sym_COLON, - [69385] = 2, + [70170] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(3364), 1, anon_sym_COLON, - [69392] = 2, + [70177] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3366), 1, - sym_identifier, - [69399] = 2, + ACTIONS(2572), 1, + anon_sym_COLON, + [70184] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2001), 1, + ACTIONS(3108), 1, anon_sym_RBRACE, - [69406] = 2, + [70191] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3366), 1, + anon_sym_COLON, + [70198] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(3368), 1, - sym_identifier, - [69413] = 2, + anon_sym_COLON, + [70205] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(3370), 1, - anon_sym_RBRACE, - [69420] = 2, + anon_sym_COLON, + [70212] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(3372), 1, - sym_identifier, - [69427] = 2, + anon_sym_LPAREN, + [70219] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2731), 1, + anon_sym_RBRACE, + [70226] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(3374), 1, - anon_sym_RPAREN, - [69434] = 2, + anon_sym_COLON, + [70233] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(3376), 1, - anon_sym_in, - [69441] = 2, + sym_identifier, + [70240] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(3378), 1, - anon_sym_COLON, - [69448] = 2, + anon_sym_RPAREN, + [70247] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(3380), 1, - sym_identifier, - [69455] = 2, + anon_sym_RPAREN, + [70254] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(3382), 1, - anon_sym_COLON, - [69462] = 2, + anon_sym_RBRACE, + [70261] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(3384), 1, - anon_sym_COLON, - [69469] = 2, + anon_sym_RBRACK, + [70268] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(3386), 1, - anon_sym_for, - [69476] = 2, + anon_sym_RBRACK, + [70275] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(3388), 1, - anon_sym_COLON, - [69483] = 2, - ACTIONS(3), 1, - sym_comment, - ACTIONS(3104), 1, - anon_sym_in, - [69490] = 2, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2554), 1, - anon_sym_COLON, - [69497] = 2, + sym_identifier, + [70282] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3085), 1, - anon_sym_in, - [69504] = 2, + ACTIONS(3128), 1, + anon_sym_RBRACK, + [70289] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(3390), 1, anon_sym_COLON, - [69511] = 2, + [70296] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(3392), 1, - anon_sym_RPAREN, - [69518] = 2, + sym_identifier, + [70303] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(3394), 1, anon_sym_COLON, - [69525] = 2, + [70310] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(3396), 1, - anon_sym_COLON, - [69532] = 2, + anon_sym_RBRACE, + [70317] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(3398), 1, - anon_sym_RPAREN, - [69539] = 2, + anon_sym_RBRACE, + [70324] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(3400), 1, - anon_sym_in, - [69546] = 2, + anon_sym_RBRACE, + [70331] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(3402), 1, - anon_sym_RPAREN, - [69553] = 2, + anon_sym_COLON, + [70338] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(3404), 1, - anon_sym_COLON, - [69560] = 2, + sym_identifier, + [70345] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(3406), 1, anon_sym_RBRACK, - [69567] = 2, + [70352] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(3408), 1, - anon_sym_COLON, - [69574] = 2, + anon_sym_RPAREN, + [70359] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(3410), 1, - anon_sym_import, - [69581] = 2, + anon_sym_RPAREN, + [70366] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(3412), 1, - sym_identifier, - [69588] = 2, + anon_sym_in, + [70373] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(3414), 1, - sym_identifier, - [69595] = 2, + anon_sym_RPAREN, + [70380] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3130), 1, + anon_sym_in, + [70387] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(3416), 1, - sym_identifier, - [69602] = 2, + anon_sym_RBRACK, + [70394] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(3418), 1, - anon_sym_EQ, - [69609] = 2, + anon_sym_RBRACE, + [70401] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3420), 1, + ACTIONS(2797), 1, anon_sym_RBRACE, - [69616] = 2, + [70408] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3422), 1, - anon_sym_RBRACE, - [69623] = 2, + ACTIONS(3186), 1, + anon_sym_in, + [70415] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1104), 1, - anon_sym_def, - [69630] = 2, + ACTIONS(3420), 1, + sym_identifier, + [70422] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3422), 1, + anon_sym_RBRACE, + [70429] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(3424), 1, - anon_sym_RPAREN, - [69637] = 2, + sym_identifier, + [70436] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(3426), 1, anon_sym_RPAREN, - [69644] = 2, + [70443] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(3428), 1, - sym_identifier, - [69651] = 2, + anon_sym_COLON, + [70450] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(3430), 1, - anon_sym_RBRACE, - [69658] = 2, + anon_sym_RPAREN, + [70457] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(3432), 1, - anon_sym_RPAREN, - [69665] = 2, + anon_sym_RBRACE, + [70464] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(3434), 1, - sym_identifier, - [69672] = 2, + anon_sym_RPAREN, + [70471] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3436), 1, - anon_sym_RBRACK, - [69679] = 2, + ACTIONS(2601), 1, + anon_sym_COLON, + [70478] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(956), 1, - anon_sym_STAR, - [69686] = 2, + ACTIONS(3436), 1, + anon_sym_RBRACE, + [70485] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(3438), 1, - anon_sym_import, - [69693] = 2, + anon_sym_COLON, + [70492] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(3440), 1, - anon_sym_RBRACE, - [69700] = 2, + anon_sym_RBRACK, + [70499] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(3442), 1, - anon_sym_RPAREN, - [69707] = 2, + anon_sym_COLON, + [70506] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(3444), 1, - anon_sym_RPAREN, - [69714] = 2, - ACTIONS(3), 1, - sym_comment, - ACTIONS(3025), 1, anon_sym_RBRACK, - [69721] = 2, + [70513] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(3446), 1, anon_sym_COLON, - [69728] = 2, + [70520] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3448), 1, - anon_sym_in, - [69735] = 2, + ACTIONS(3046), 1, + anon_sym_RBRACK, + [70527] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3450), 1, + ACTIONS(3448), 1, anon_sym_RBRACE, - [69742] = 2, + [70534] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3200), 1, - anon_sym_RBRACE, - [69749] = 2, + ACTIONS(3450), 1, + sym_identifier, + [70541] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(3452), 1, - anon_sym_RBRACK, - [69756] = 2, + anon_sym_COLON, + [70548] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(3454), 1, - anon_sym_RPAREN, - [69763] = 2, + anon_sym_in, + [70555] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(3456), 1, - anon_sym_COLON, - [69770] = 2, + sym_identifier, + [70562] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(3458), 1, - anon_sym_RPAREN, - [69777] = 2, + anon_sym_RBRACE, + [70569] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(3460), 1, anon_sym_COLON, - [69784] = 2, + [70576] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(3462), 1, anon_sym_in, - [69791] = 2, + [70583] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(3464), 1, - anon_sym_RPAREN, - [69798] = 2, + sym_identifier, + [70590] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(3466), 1, - anon_sym_RBRACK, - [69805] = 2, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2746), 1, - anon_sym_RBRACE, - [69812] = 2, + anon_sym_COLON, + [70597] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(3468), 1, - anon_sym_RBRACE, - [69819] = 2, + sym_identifier, + [70604] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(2912), 1, - anon_sym_RBRACK, - [69826] = 2, + ACTIONS(3470), 1, + anon_sym_COLON, + [70611] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3470), 1, - anon_sym_import, - [69833] = 2, + ACTIONS(3250), 1, + anon_sym_RBRACE, + [70618] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(3472), 1, - anon_sym_RBRACK, - [69840] = 2, + ts_builtin_sym_end, + [70625] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(3474), 1, - anon_sym_COLON, - [69847] = 2, + anon_sym_import, + [70632] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(3476), 1, - anon_sym_import, - [69854] = 2, + anon_sym_in, + [70639] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(3478), 1, - anon_sym_RBRACE, - [69861] = 2, + anon_sym_RPAREN, + [70646] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(3480), 1, - sym_identifier, - [69868] = 2, + anon_sym_import, + [70653] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(3482), 1, - anon_sym_COLON, - [69875] = 2, + anon_sym_RBRACK, + [70660] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(3484), 1, anon_sym_RBRACE, - [69882] = 2, + [70667] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(3486), 1, anon_sym_COLON, - [69889] = 2, + [70674] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(3488), 1, anon_sym_COLON, - [69896] = 2, + [70681] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(3490), 1, - anon_sym_COLON, - [69903] = 2, + anon_sym_RBRACE, + [70688] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2896), 1, + anon_sym_in, + [70695] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(3492), 1, - anon_sym_RBRACE, - [69910] = 2, + anon_sym_COLON, + [70702] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(3494), 1, - anon_sym_RBRACE, - [69917] = 2, + anon_sym_COLON, + [70709] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(3496), 1, - anon_sym_COLON, - [69924] = 2, + anon_sym_RPAREN, + [70716] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(3498), 1, - sym_identifier, - [69931] = 2, + anon_sym_RBRACK, + [70723] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(3500), 1, - anon_sym_COLON, - [69938] = 2, + sym_identifier, + [70730] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(3502), 1, - anon_sym_RPAREN, - [69945] = 2, + anon_sym_RBRACE, + [70737] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(3504), 1, - anon_sym_LPAREN, - [69952] = 2, - ACTIONS(3), 1, - sym_comment, - ACTIONS(984), 1, - anon_sym_STAR, - [69959] = 2, + anon_sym_COLON, + [70744] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(3506), 1, - anon_sym_RBRACK, - [69966] = 2, + anon_sym_COLON, + [70751] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(3508), 1, - anon_sym_RPAREN, - [69973] = 2, - ACTIONS(3), 1, - sym_comment, - ACTIONS(2725), 1, anon_sym_RBRACE, - [69980] = 2, + [70758] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(3510), 1, anon_sym_RBRACE, - [69987] = 2, + [70765] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(3512), 1, anon_sym_COLON, - [69994] = 2, + [70772] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(3514), 1, + anon_sym_in, + [70779] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1997), 1, anon_sym_RBRACE, - [70001] = 2, + [70786] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(3516), 1, - sym_identifier, - [70008] = 2, + anon_sym_COLON, + [70793] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(3518), 1, - anon_sym_in, - [70015] = 2, + anon_sym_RBRACE, + [70800] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(3520), 1, sym_identifier, - [70022] = 2, + [70807] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3153), 1, + anon_sym_RBRACK, + [70814] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(990), 1, + anon_sym_STAR, + [70821] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(3522), 1, - sym_identifier, - [70029] = 2, + anon_sym_RPAREN, + [70828] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(3524), 1, - anon_sym_RBRACK, - [70036] = 2, + anon_sym_EQ, + [70835] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3168), 1, - anon_sym_in, - [70043] = 2, + ACTIONS(968), 1, + anon_sym_STAR, + [70842] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1110), 1, + ACTIONS(1100), 1, anon_sym_def, - [70050] = 2, + [70849] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3178), 1, + anon_sym_RBRACE, + [70856] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(3526), 1, + anon_sym_RPAREN, + [70863] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3528), 1, + sym_identifier, + [70870] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3530), 1, + sym_identifier, + [70877] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3532), 1, + sym_identifier, + [70884] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3534), 1, + sym_identifier, + [70891] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3536), 1, + anon_sym_COLON, + [70898] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3182), 1, anon_sym_in, - [70057] = 2, + [70905] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3170), 1, + ACTIONS(1122), 1, + anon_sym_def, + [70912] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3151), 1, anon_sym_in, - [70064] = 2, + [70919] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3528), 1, - anon_sym_RPAREN, - [70071] = 2, + ACTIONS(3184), 1, + anon_sym_in, + [70926] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3530), 1, - anon_sym_RBRACK, - [70078] = 2, + ACTIONS(3538), 1, + anon_sym_COLON, + [70933] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(3049), 1, - anon_sym_RBRACE, + ACTIONS(3540), 1, + anon_sym_COLON, + [70940] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3542), 1, + anon_sym_RBRACK, }; static const uint32_t ts_small_parse_table_map[] = { - [SMALL_STATE(156)] = 0, - [SMALL_STATE(157)] = 123, - [SMALL_STATE(158)] = 248, - [SMALL_STATE(159)] = 375, - [SMALL_STATE(160)] = 486, - [SMALL_STATE(161)] = 597, - [SMALL_STATE(162)] = 720, - [SMALL_STATE(163)] = 845, - [SMALL_STATE(164)] = 968, - [SMALL_STATE(165)] = 1090, - [SMALL_STATE(166)] = 1212, - [SMALL_STATE(167)] = 1334, - [SMALL_STATE(168)] = 1456, - [SMALL_STATE(169)] = 1571, - [SMALL_STATE(170)] = 1686, - [SMALL_STATE(171)] = 1796, - [SMALL_STATE(172)] = 1906, - [SMALL_STATE(173)] = 2016, - [SMALL_STATE(174)] = 2127, - [SMALL_STATE(175)] = 2240, - [SMALL_STATE(176)] = 2353, - [SMALL_STATE(177)] = 2462, - [SMALL_STATE(178)] = 2575, - [SMALL_STATE(179)] = 2688, - [SMALL_STATE(180)] = 2801, - [SMALL_STATE(181)] = 2912, - [SMALL_STATE(182)] = 3021, - [SMALL_STATE(183)] = 3130, - [SMALL_STATE(184)] = 3239, - [SMALL_STATE(185)] = 3348, - [SMALL_STATE(186)] = 3457, - [SMALL_STATE(187)] = 3570, - [SMALL_STATE(188)] = 3685, - [SMALL_STATE(189)] = 3798, - [SMALL_STATE(190)] = 3908, - [SMALL_STATE(191)] = 4014, - [SMALL_STATE(192)] = 4124, - [SMALL_STATE(193)] = 4234, - [SMALL_STATE(194)] = 4344, - [SMALL_STATE(195)] = 4450, - [SMALL_STATE(196)] = 4560, - [SMALL_STATE(197)] = 4672, - [SMALL_STATE(198)] = 4782, - [SMALL_STATE(199)] = 4896, - [SMALL_STATE(200)] = 5008, - [SMALL_STATE(201)] = 5118, - [SMALL_STATE(202)] = 5228, - [SMALL_STATE(203)] = 5338, - [SMALL_STATE(204)] = 5448, - [SMALL_STATE(205)] = 5558, - [SMALL_STATE(206)] = 5668, - [SMALL_STATE(207)] = 5778, - [SMALL_STATE(208)] = 5884, - [SMALL_STATE(209)] = 5998, - [SMALL_STATE(210)] = 6108, - [SMALL_STATE(211)] = 6218, - [SMALL_STATE(212)] = 6332, - [SMALL_STATE(213)] = 6438, - [SMALL_STATE(214)] = 6548, - [SMALL_STATE(215)] = 6658, - [SMALL_STATE(216)] = 6768, - [SMALL_STATE(217)] = 6878, - [SMALL_STATE(218)] = 6988, - [SMALL_STATE(219)] = 7100, - [SMALL_STATE(220)] = 7210, - [SMALL_STATE(221)] = 7320, - [SMALL_STATE(222)] = 7430, - [SMALL_STATE(223)] = 7540, - [SMALL_STATE(224)] = 7650, - [SMALL_STATE(225)] = 7760, - [SMALL_STATE(226)] = 7872, - [SMALL_STATE(227)] = 7982, - [SMALL_STATE(228)] = 8094, - [SMALL_STATE(229)] = 8204, - [SMALL_STATE(230)] = 8314, - [SMALL_STATE(231)] = 8424, - [SMALL_STATE(232)] = 8536, - [SMALL_STATE(233)] = 8643, - [SMALL_STATE(234)] = 8750, - [SMALL_STATE(235)] = 8857, - [SMALL_STATE(236)] = 8964, - [SMALL_STATE(237)] = 9059, - [SMALL_STATE(238)] = 9166, - [SMALL_STATE(239)] = 9273, - [SMALL_STATE(240)] = 9380, - [SMALL_STATE(241)] = 9487, - [SMALL_STATE(242)] = 9594, - [SMALL_STATE(243)] = 9698, - [SMALL_STATE(244)] = 9802, - [SMALL_STATE(245)] = 9908, - [SMALL_STATE(246)] = 10014, - [SMALL_STATE(247)] = 10120, - [SMALL_STATE(248)] = 10226, - [SMALL_STATE(249)] = 10332, - [SMALL_STATE(250)] = 10435, - [SMALL_STATE(251)] = 10538, - [SMALL_STATE(252)] = 10641, - [SMALL_STATE(253)] = 10744, - [SMALL_STATE(254)] = 10847, - [SMALL_STATE(255)] = 10950, - [SMALL_STATE(256)] = 11053, - [SMALL_STATE(257)] = 11156, - [SMALL_STATE(258)] = 11259, - [SMALL_STATE(259)] = 11362, - [SMALL_STATE(260)] = 11465, - [SMALL_STATE(261)] = 11568, - [SMALL_STATE(262)] = 11671, - [SMALL_STATE(263)] = 11774, - [SMALL_STATE(264)] = 11877, - [SMALL_STATE(265)] = 11979, - [SMALL_STATE(266)] = 12081, - [SMALL_STATE(267)] = 12155, - [SMALL_STATE(268)] = 12257, - [SMALL_STATE(269)] = 12331, - [SMALL_STATE(270)] = 12405, + [SMALL_STATE(157)] = 0, + [SMALL_STATE(158)] = 127, + [SMALL_STATE(159)] = 254, + [SMALL_STATE(160)] = 379, + [SMALL_STATE(161)] = 504, + [SMALL_STATE(162)] = 615, + [SMALL_STATE(163)] = 726, + [SMALL_STATE(164)] = 851, + [SMALL_STATE(165)] = 978, + [SMALL_STATE(166)] = 1100, + [SMALL_STATE(167)] = 1222, + [SMALL_STATE(168)] = 1344, + [SMALL_STATE(169)] = 1466, + [SMALL_STATE(170)] = 1581, + [SMALL_STATE(171)] = 1696, + [SMALL_STATE(172)] = 1806, + [SMALL_STATE(173)] = 1916, + [SMALL_STATE(174)] = 2026, + [SMALL_STATE(175)] = 2135, + [SMALL_STATE(176)] = 2244, + [SMALL_STATE(177)] = 2353, + [SMALL_STATE(178)] = 2462, + [SMALL_STATE(179)] = 2577, + [SMALL_STATE(180)] = 2690, + [SMALL_STATE(181)] = 2799, + [SMALL_STATE(182)] = 2914, + [SMALL_STATE(183)] = 3027, + [SMALL_STATE(184)] = 3144, + [SMALL_STATE(185)] = 3255, + [SMALL_STATE(186)] = 3364, + [SMALL_STATE(187)] = 3479, + [SMALL_STATE(188)] = 3588, + [SMALL_STATE(189)] = 3703, + [SMALL_STATE(190)] = 3814, + [SMALL_STATE(191)] = 3927, + [SMALL_STATE(192)] = 4037, + [SMALL_STATE(193)] = 4151, + [SMALL_STATE(194)] = 4261, + [SMALL_STATE(195)] = 4371, + [SMALL_STATE(196)] = 4481, + [SMALL_STATE(197)] = 4591, + [SMALL_STATE(198)] = 4701, + [SMALL_STATE(199)] = 4811, + [SMALL_STATE(200)] = 4921, + [SMALL_STATE(201)] = 5031, + [SMALL_STATE(202)] = 5141, + [SMALL_STATE(203)] = 5247, + [SMALL_STATE(204)] = 5357, + [SMALL_STATE(205)] = 5467, + [SMALL_STATE(206)] = 5577, + [SMALL_STATE(207)] = 5687, + [SMALL_STATE(208)] = 5797, + [SMALL_STATE(209)] = 5909, + [SMALL_STATE(210)] = 6023, + [SMALL_STATE(211)] = 6135, + [SMALL_STATE(212)] = 6245, + [SMALL_STATE(213)] = 6357, + [SMALL_STATE(214)] = 6471, + [SMALL_STATE(215)] = 6577, + [SMALL_STATE(216)] = 6691, + [SMALL_STATE(217)] = 6801, + [SMALL_STATE(218)] = 6911, + [SMALL_STATE(219)] = 7021, + [SMALL_STATE(220)] = 7131, + [SMALL_STATE(221)] = 7241, + [SMALL_STATE(222)] = 7351, + [SMALL_STATE(223)] = 7465, + [SMALL_STATE(224)] = 7577, + [SMALL_STATE(225)] = 7683, + [SMALL_STATE(226)] = 7793, + [SMALL_STATE(227)] = 7903, + [SMALL_STATE(228)] = 8013, + [SMALL_STATE(229)] = 8119, + [SMALL_STATE(230)] = 8229, + [SMALL_STATE(231)] = 8339, + [SMALL_STATE(232)] = 8453, + [SMALL_STATE(233)] = 8565, + [SMALL_STATE(234)] = 8675, + [SMALL_STATE(235)] = 8789, + [SMALL_STATE(236)] = 8901, + [SMALL_STATE(237)] = 9015, + [SMALL_STATE(238)] = 9129, + [SMALL_STATE(239)] = 9236, + [SMALL_STATE(240)] = 9343, + [SMALL_STATE(241)] = 9450, + [SMALL_STATE(242)] = 9557, + [SMALL_STATE(243)] = 9664, + [SMALL_STATE(244)] = 9771, + [SMALL_STATE(245)] = 9866, + [SMALL_STATE(246)] = 9973, + [SMALL_STATE(247)] = 10080, + [SMALL_STATE(248)] = 10186, + [SMALL_STATE(249)] = 10292, + [SMALL_STATE(250)] = 10398, + [SMALL_STATE(251)] = 10502, + [SMALL_STATE(252)] = 10608, + [SMALL_STATE(253)] = 10712, + [SMALL_STATE(254)] = 10818, + [SMALL_STATE(255)] = 10921, + [SMALL_STATE(256)] = 11024, + [SMALL_STATE(257)] = 11127, + [SMALL_STATE(258)] = 11230, + [SMALL_STATE(259)] = 11333, + [SMALL_STATE(260)] = 11436, + [SMALL_STATE(261)] = 11539, + [SMALL_STATE(262)] = 11642, + [SMALL_STATE(263)] = 11745, + [SMALL_STATE(264)] = 11848, + [SMALL_STATE(265)] = 11951, + [SMALL_STATE(266)] = 12051, + [SMALL_STATE(267)] = 12125, + [SMALL_STATE(268)] = 12199, + [SMALL_STATE(269)] = 12301, + [SMALL_STATE(270)] = 12403, [SMALL_STATE(271)] = 12505, - [SMALL_STATE(272)] = 12579, - [SMALL_STATE(273)] = 12653, - [SMALL_STATE(274)] = 12727, - [SMALL_STATE(275)] = 12829, - [SMALL_STATE(276)] = 12931, - [SMALL_STATE(277)] = 13005, - [SMALL_STATE(278)] = 13107, - [SMALL_STATE(279)] = 13209, - [SMALL_STATE(280)] = 13283, - [SMALL_STATE(281)] = 13383, - [SMALL_STATE(282)] = 13485, + [SMALL_STATE(272)] = 12607, + [SMALL_STATE(273)] = 12681, + [SMALL_STATE(274)] = 12783, + [SMALL_STATE(275)] = 12885, + [SMALL_STATE(276)] = 12959, + [SMALL_STATE(277)] = 13059, + [SMALL_STATE(278)] = 13161, + [SMALL_STATE(279)] = 13235, + [SMALL_STATE(280)] = 13335, + [SMALL_STATE(281)] = 13437, + [SMALL_STATE(282)] = 13511, [SMALL_STATE(283)] = 13585, - [SMALL_STATE(284)] = 13687, - [SMALL_STATE(285)] = 13789, - [SMALL_STATE(286)] = 13891, - [SMALL_STATE(287)] = 13993, - [SMALL_STATE(288)] = 14095, - [SMALL_STATE(289)] = 14192, - [SMALL_STATE(290)] = 14289, - [SMALL_STATE(291)] = 14386, - [SMALL_STATE(292)] = 14483, - [SMALL_STATE(293)] = 14580, - [SMALL_STATE(294)] = 14677, - [SMALL_STATE(295)] = 14774, - [SMALL_STATE(296)] = 14873, - [SMALL_STATE(297)] = 14972, - [SMALL_STATE(298)] = 15071, - [SMALL_STATE(299)] = 15168, - [SMALL_STATE(300)] = 15265, - [SMALL_STATE(301)] = 15362, - [SMALL_STATE(302)] = 15459, - [SMALL_STATE(303)] = 15558, - [SMALL_STATE(304)] = 15657, - [SMALL_STATE(305)] = 15756, - [SMALL_STATE(306)] = 15853, - [SMALL_STATE(307)] = 15950, - [SMALL_STATE(308)] = 16049, - [SMALL_STATE(309)] = 16148, - [SMALL_STATE(310)] = 16247, - [SMALL_STATE(311)] = 16307, - [SMALL_STATE(312)] = 16377, - [SMALL_STATE(313)] = 16447, - [SMALL_STATE(314)] = 16517, - [SMALL_STATE(315)] = 16613, - [SMALL_STATE(316)] = 16709, - [SMALL_STATE(317)] = 16773, - [SMALL_STATE(318)] = 16837, - [SMALL_STATE(319)] = 16897, - [SMALL_STATE(320)] = 16957, - [SMALL_STATE(321)] = 17017, - [SMALL_STATE(322)] = 17077, - [SMALL_STATE(323)] = 17137, - [SMALL_STATE(324)] = 17207, - [SMALL_STATE(325)] = 17267, - [SMALL_STATE(326)] = 17337, - [SMALL_STATE(327)] = 17397, - [SMALL_STATE(328)] = 17457, - [SMALL_STATE(329)] = 17517, - [SMALL_STATE(330)] = 17587, - [SMALL_STATE(331)] = 17657, - [SMALL_STATE(332)] = 17727, - [SMALL_STATE(333)] = 17787, - [SMALL_STATE(334)] = 17851, - [SMALL_STATE(335)] = 17915, - [SMALL_STATE(336)] = 18011, - [SMALL_STATE(337)] = 18071, - [SMALL_STATE(338)] = 18164, - [SMALL_STATE(339)] = 18257, - [SMALL_STATE(340)] = 18350, - [SMALL_STATE(341)] = 18443, - [SMALL_STATE(342)] = 18536, - [SMALL_STATE(343)] = 18629, - [SMALL_STATE(344)] = 18722, - [SMALL_STATE(345)] = 18815, - [SMALL_STATE(346)] = 18908, - [SMALL_STATE(347)] = 19001, - [SMALL_STATE(348)] = 19094, - [SMALL_STATE(349)] = 19187, - [SMALL_STATE(350)] = 19280, - [SMALL_STATE(351)] = 19373, - [SMALL_STATE(352)] = 19466, - [SMALL_STATE(353)] = 19559, - [SMALL_STATE(354)] = 19652, - [SMALL_STATE(355)] = 19745, - [SMALL_STATE(356)] = 19838, - [SMALL_STATE(357)] = 19931, - [SMALL_STATE(358)] = 20024, - [SMALL_STATE(359)] = 20117, - [SMALL_STATE(360)] = 20210, - [SMALL_STATE(361)] = 20303, - [SMALL_STATE(362)] = 20396, - [SMALL_STATE(363)] = 20489, - [SMALL_STATE(364)] = 20582, - [SMALL_STATE(365)] = 20647, - [SMALL_STATE(366)] = 20742, - [SMALL_STATE(367)] = 20835, - [SMALL_STATE(368)] = 20928, - [SMALL_STATE(369)] = 21021, - [SMALL_STATE(370)] = 21114, - [SMALL_STATE(371)] = 21207, - [SMALL_STATE(372)] = 21300, - [SMALL_STATE(373)] = 21393, - [SMALL_STATE(374)] = 21486, - [SMALL_STATE(375)] = 21551, - [SMALL_STATE(376)] = 21644, - [SMALL_STATE(377)] = 21737, - [SMALL_STATE(378)] = 21830, - [SMALL_STATE(379)] = 21923, - [SMALL_STATE(380)] = 22016, - [SMALL_STATE(381)] = 22109, - [SMALL_STATE(382)] = 22202, - [SMALL_STATE(383)] = 22295, - [SMALL_STATE(384)] = 22388, - [SMALL_STATE(385)] = 22481, - [SMALL_STATE(386)] = 22574, - [SMALL_STATE(387)] = 22667, - [SMALL_STATE(388)] = 22760, - [SMALL_STATE(389)] = 22853, - [SMALL_STATE(390)] = 22946, - [SMALL_STATE(391)] = 23039, - [SMALL_STATE(392)] = 23132, - [SMALL_STATE(393)] = 23225, - [SMALL_STATE(394)] = 23318, - [SMALL_STATE(395)] = 23411, - [SMALL_STATE(396)] = 23504, - [SMALL_STATE(397)] = 23597, - [SMALL_STATE(398)] = 23690, - [SMALL_STATE(399)] = 23783, - [SMALL_STATE(400)] = 23876, - [SMALL_STATE(401)] = 23969, - [SMALL_STATE(402)] = 24062, - [SMALL_STATE(403)] = 24155, - [SMALL_STATE(404)] = 24248, - [SMALL_STATE(405)] = 24341, - [SMALL_STATE(406)] = 24434, - [SMALL_STATE(407)] = 24527, - [SMALL_STATE(408)] = 24620, - [SMALL_STATE(409)] = 24713, - [SMALL_STATE(410)] = 24806, - [SMALL_STATE(411)] = 24899, - [SMALL_STATE(412)] = 24992, - [SMALL_STATE(413)] = 25085, - [SMALL_STATE(414)] = 25178, - [SMALL_STATE(415)] = 25271, - [SMALL_STATE(416)] = 25364, - [SMALL_STATE(417)] = 25457, - [SMALL_STATE(418)] = 25550, - [SMALL_STATE(419)] = 25643, - [SMALL_STATE(420)] = 25736, - [SMALL_STATE(421)] = 25829, - [SMALL_STATE(422)] = 25922, - [SMALL_STATE(423)] = 26015, - [SMALL_STATE(424)] = 26108, - [SMALL_STATE(425)] = 26201, - [SMALL_STATE(426)] = 26294, - [SMALL_STATE(427)] = 26387, - [SMALL_STATE(428)] = 26480, - [SMALL_STATE(429)] = 26573, - [SMALL_STATE(430)] = 26666, - [SMALL_STATE(431)] = 26739, - [SMALL_STATE(432)] = 26832, - [SMALL_STATE(433)] = 26925, - [SMALL_STATE(434)] = 26998, - [SMALL_STATE(435)] = 27091, - [SMALL_STATE(436)] = 27149, - [SMALL_STATE(437)] = 27211, - [SMALL_STATE(438)] = 27273, - [SMALL_STATE(439)] = 27331, - [SMALL_STATE(440)] = 27389, - [SMALL_STATE(441)] = 27447, - [SMALL_STATE(442)] = 27505, - [SMALL_STATE(443)] = 27563, - [SMALL_STATE(444)] = 27621, - [SMALL_STATE(445)] = 27679, - [SMALL_STATE(446)] = 27737, - [SMALL_STATE(447)] = 27795, - [SMALL_STATE(448)] = 27853, - [SMALL_STATE(449)] = 27911, - [SMALL_STATE(450)] = 27969, - [SMALL_STATE(451)] = 28039, - [SMALL_STATE(452)] = 28101, - [SMALL_STATE(453)] = 28171, - [SMALL_STATE(454)] = 28229, - [SMALL_STATE(455)] = 28287, - [SMALL_STATE(456)] = 28345, - [SMALL_STATE(457)] = 28403, - [SMALL_STATE(458)] = 28461, - [SMALL_STATE(459)] = 28523, - [SMALL_STATE(460)] = 28581, - [SMALL_STATE(461)] = 28639, - [SMALL_STATE(462)] = 28696, - [SMALL_STATE(463)] = 28757, - [SMALL_STATE(464)] = 28818, - [SMALL_STATE(465)] = 28879, - [SMALL_STATE(466)] = 28940, - [SMALL_STATE(467)] = 29001, - [SMALL_STATE(468)] = 29058, - [SMALL_STATE(469)] = 29115, - [SMALL_STATE(470)] = 29172, - [SMALL_STATE(471)] = 29233, - [SMALL_STATE(472)] = 29290, - [SMALL_STATE(473)] = 29351, - [SMALL_STATE(474)] = 29412, - [SMALL_STATE(475)] = 29473, - [SMALL_STATE(476)] = 29534, - [SMALL_STATE(477)] = 29629, - [SMALL_STATE(478)] = 29690, - [SMALL_STATE(479)] = 29751, - [SMALL_STATE(480)] = 29812, - [SMALL_STATE(481)] = 29879, - [SMALL_STATE(482)] = 29936, - [SMALL_STATE(483)] = 30029, - [SMALL_STATE(484)] = 30090, - [SMALL_STATE(485)] = 30151, - [SMALL_STATE(486)] = 30244, - [SMALL_STATE(487)] = 30305, - [SMALL_STATE(488)] = 30369, - [SMALL_STATE(489)] = 30425, - [SMALL_STATE(490)] = 30481, - [SMALL_STATE(491)] = 30545, - [SMALL_STATE(492)] = 30601, - [SMALL_STATE(493)] = 30693, - [SMALL_STATE(494)] = 30785, - [SMALL_STATE(495)] = 30849, - [SMALL_STATE(496)] = 30905, - [SMALL_STATE(497)] = 30961, - [SMALL_STATE(498)] = 31017, - [SMALL_STATE(499)] = 31073, - [SMALL_STATE(500)] = 31129, - [SMALL_STATE(501)] = 31185, - [SMALL_STATE(502)] = 31277, - [SMALL_STATE(503)] = 31333, - [SMALL_STATE(504)] = 31397, - [SMALL_STATE(505)] = 31489, - [SMALL_STATE(506)] = 31545, - [SMALL_STATE(507)] = 31601, - [SMALL_STATE(508)] = 31657, - [SMALL_STATE(509)] = 31713, - [SMALL_STATE(510)] = 31805, - [SMALL_STATE(511)] = 31897, - [SMALL_STATE(512)] = 31952, - [SMALL_STATE(513)] = 32007, - [SMALL_STATE(514)] = 32062, - [SMALL_STATE(515)] = 32117, - [SMALL_STATE(516)] = 32172, - [SMALL_STATE(517)] = 32227, - [SMALL_STATE(518)] = 32282, - [SMALL_STATE(519)] = 32337, - [SMALL_STATE(520)] = 32392, - [SMALL_STATE(521)] = 32447, - [SMALL_STATE(522)] = 32502, - [SMALL_STATE(523)] = 32557, - [SMALL_STATE(524)] = 32612, - [SMALL_STATE(525)] = 32667, - [SMALL_STATE(526)] = 32722, - [SMALL_STATE(527)] = 32777, - [SMALL_STATE(528)] = 32832, - [SMALL_STATE(529)] = 32887, - [SMALL_STATE(530)] = 32942, - [SMALL_STATE(531)] = 32997, - [SMALL_STATE(532)] = 33052, - [SMALL_STATE(533)] = 33107, - [SMALL_STATE(534)] = 33162, - [SMALL_STATE(535)] = 33217, - [SMALL_STATE(536)] = 33272, - [SMALL_STATE(537)] = 33327, - [SMALL_STATE(538)] = 33382, - [SMALL_STATE(539)] = 33437, - [SMALL_STATE(540)] = 33492, - [SMALL_STATE(541)] = 33547, - [SMALL_STATE(542)] = 33602, - [SMALL_STATE(543)] = 33657, - [SMALL_STATE(544)] = 33712, - [SMALL_STATE(545)] = 33767, - [SMALL_STATE(546)] = 33822, - [SMALL_STATE(547)] = 33877, - [SMALL_STATE(548)] = 33932, - [SMALL_STATE(549)] = 33987, - [SMALL_STATE(550)] = 34042, - [SMALL_STATE(551)] = 34097, - [SMALL_STATE(552)] = 34152, - [SMALL_STATE(553)] = 34207, - [SMALL_STATE(554)] = 34262, - [SMALL_STATE(555)] = 34317, - [SMALL_STATE(556)] = 34372, - [SMALL_STATE(557)] = 34427, - [SMALL_STATE(558)] = 34488, - [SMALL_STATE(559)] = 34543, - [SMALL_STATE(560)] = 34598, - [SMALL_STATE(561)] = 34653, - [SMALL_STATE(562)] = 34708, - [SMALL_STATE(563)] = 34763, - [SMALL_STATE(564)] = 34818, - [SMALL_STATE(565)] = 34873, - [SMALL_STATE(566)] = 34928, - [SMALL_STATE(567)] = 34983, - [SMALL_STATE(568)] = 35038, - [SMALL_STATE(569)] = 35093, - [SMALL_STATE(570)] = 35148, - [SMALL_STATE(571)] = 35203, - [SMALL_STATE(572)] = 35264, - [SMALL_STATE(573)] = 35319, - [SMALL_STATE(574)] = 35374, - [SMALL_STATE(575)] = 35429, - [SMALL_STATE(576)] = 35484, - [SMALL_STATE(577)] = 35539, - [SMALL_STATE(578)] = 35594, - [SMALL_STATE(579)] = 35649, - [SMALL_STATE(580)] = 35704, - [SMALL_STATE(581)] = 35759, - [SMALL_STATE(582)] = 35814, - [SMALL_STATE(583)] = 35875, - [SMALL_STATE(584)] = 35930, - [SMALL_STATE(585)] = 35985, - [SMALL_STATE(586)] = 36046, - [SMALL_STATE(587)] = 36101, - [SMALL_STATE(588)] = 36156, - [SMALL_STATE(589)] = 36245, - [SMALL_STATE(590)] = 36300, - [SMALL_STATE(591)] = 36389, - [SMALL_STATE(592)] = 36444, - [SMALL_STATE(593)] = 36499, - [SMALL_STATE(594)] = 36554, - [SMALL_STATE(595)] = 36609, - [SMALL_STATE(596)] = 36664, - [SMALL_STATE(597)] = 36719, - [SMALL_STATE(598)] = 36774, - [SMALL_STATE(599)] = 36829, - [SMALL_STATE(600)] = 36884, - [SMALL_STATE(601)] = 36939, - [SMALL_STATE(602)] = 36994, - [SMALL_STATE(603)] = 37049, - [SMALL_STATE(604)] = 37104, - [SMALL_STATE(605)] = 37159, - [SMALL_STATE(606)] = 37214, - [SMALL_STATE(607)] = 37269, - [SMALL_STATE(608)] = 37324, - [SMALL_STATE(609)] = 37379, - [SMALL_STATE(610)] = 37434, - [SMALL_STATE(611)] = 37489, - [SMALL_STATE(612)] = 37544, - [SMALL_STATE(613)] = 37599, - [SMALL_STATE(614)] = 37654, - [SMALL_STATE(615)] = 37709, - [SMALL_STATE(616)] = 37792, - [SMALL_STATE(617)] = 37869, - [SMALL_STATE(618)] = 37946, - [SMALL_STATE(619)] = 38023, - [SMALL_STATE(620)] = 38100, - [SMALL_STATE(621)] = 38177, - [SMALL_STATE(622)] = 38254, - [SMALL_STATE(623)] = 38328, - [SMALL_STATE(624)] = 38402, - [SMALL_STATE(625)] = 38476, - [SMALL_STATE(626)] = 38550, - [SMALL_STATE(627)] = 38624, - [SMALL_STATE(628)] = 38698, - [SMALL_STATE(629)] = 38772, - [SMALL_STATE(630)] = 38846, - [SMALL_STATE(631)] = 38920, - [SMALL_STATE(632)] = 38994, - [SMALL_STATE(633)] = 39072, - [SMALL_STATE(634)] = 39146, - [SMALL_STATE(635)] = 39220, - [SMALL_STATE(636)] = 39294, - [SMALL_STATE(637)] = 39372, - [SMALL_STATE(638)] = 39446, - [SMALL_STATE(639)] = 39520, - [SMALL_STATE(640)] = 39594, - [SMALL_STATE(641)] = 39668, - [SMALL_STATE(642)] = 39742, - [SMALL_STATE(643)] = 39816, - [SMALL_STATE(644)] = 39890, - [SMALL_STATE(645)] = 39964, - [SMALL_STATE(646)] = 40018, - [SMALL_STATE(647)] = 40092, - [SMALL_STATE(648)] = 40166, - [SMALL_STATE(649)] = 40240, - [SMALL_STATE(650)] = 40314, - [SMALL_STATE(651)] = 40388, - [SMALL_STATE(652)] = 40462, - [SMALL_STATE(653)] = 40536, - [SMALL_STATE(654)] = 40610, - [SMALL_STATE(655)] = 40684, - [SMALL_STATE(656)] = 40758, - [SMALL_STATE(657)] = 40832, - [SMALL_STATE(658)] = 40906, - [SMALL_STATE(659)] = 40960, - [SMALL_STATE(660)] = 41034, - [SMALL_STATE(661)] = 41108, - [SMALL_STATE(662)] = 41182, - [SMALL_STATE(663)] = 41256, - [SMALL_STATE(664)] = 41330, - [SMALL_STATE(665)] = 41404, - [SMALL_STATE(666)] = 41478, - [SMALL_STATE(667)] = 41552, - [SMALL_STATE(668)] = 41626, - [SMALL_STATE(669)] = 41700, - [SMALL_STATE(670)] = 41774, - [SMALL_STATE(671)] = 41848, - [SMALL_STATE(672)] = 41922, - [SMALL_STATE(673)] = 41996, - [SMALL_STATE(674)] = 42070, - [SMALL_STATE(675)] = 42144, - [SMALL_STATE(676)] = 42198, - [SMALL_STATE(677)] = 42252, - [SMALL_STATE(678)] = 42326, - [SMALL_STATE(679)] = 42400, - [SMALL_STATE(680)] = 42474, - [SMALL_STATE(681)] = 42548, - [SMALL_STATE(682)] = 42622, - [SMALL_STATE(683)] = 42696, - [SMALL_STATE(684)] = 42770, - [SMALL_STATE(685)] = 42844, - [SMALL_STATE(686)] = 42918, - [SMALL_STATE(687)] = 42992, - [SMALL_STATE(688)] = 43066, - [SMALL_STATE(689)] = 43140, - [SMALL_STATE(690)] = 43214, - [SMALL_STATE(691)] = 43288, - [SMALL_STATE(692)] = 43362, - [SMALL_STATE(693)] = 43416, - [SMALL_STATE(694)] = 43470, - [SMALL_STATE(695)] = 43544, - [SMALL_STATE(696)] = 43618, - [SMALL_STATE(697)] = 43666, - [SMALL_STATE(698)] = 43714, - [SMALL_STATE(699)] = 43762, - [SMALL_STATE(700)] = 43810, - [SMALL_STATE(701)] = 43857, - [SMALL_STATE(702)] = 43904, - [SMALL_STATE(703)] = 43951, - [SMALL_STATE(704)] = 43998, - [SMALL_STATE(705)] = 44045, - [SMALL_STATE(706)] = 44092, - [SMALL_STATE(707)] = 44139, - [SMALL_STATE(708)] = 44186, - [SMALL_STATE(709)] = 44233, - [SMALL_STATE(710)] = 44280, - [SMALL_STATE(711)] = 44327, - [SMALL_STATE(712)] = 44374, - [SMALL_STATE(713)] = 44421, - [SMALL_STATE(714)] = 44468, - [SMALL_STATE(715)] = 44515, - [SMALL_STATE(716)] = 44562, - [SMALL_STATE(717)] = 44609, - [SMALL_STATE(718)] = 44656, - [SMALL_STATE(719)] = 44703, - [SMALL_STATE(720)] = 44784, - [SMALL_STATE(721)] = 44831, - [SMALL_STATE(722)] = 44878, - [SMALL_STATE(723)] = 44925, - [SMALL_STATE(724)] = 44972, - [SMALL_STATE(725)] = 45019, - [SMALL_STATE(726)] = 45066, - [SMALL_STATE(727)] = 45147, - [SMALL_STATE(728)] = 45194, - [SMALL_STATE(729)] = 45241, - [SMALL_STATE(730)] = 45288, - [SMALL_STATE(731)] = 45335, - [SMALL_STATE(732)] = 45382, - [SMALL_STATE(733)] = 45429, - [SMALL_STATE(734)] = 45476, - [SMALL_STATE(735)] = 45523, - [SMALL_STATE(736)] = 45579, - [SMALL_STATE(737)] = 45649, - [SMALL_STATE(738)] = 45705, - [SMALL_STATE(739)] = 45755, - [SMALL_STATE(740)] = 45821, - [SMALL_STATE(741)] = 45877, - [SMALL_STATE(742)] = 45933, - [SMALL_STATE(743)] = 45997, - [SMALL_STATE(744)] = 46053, - [SMALL_STATE(745)] = 46123, - [SMALL_STATE(746)] = 46193, - [SMALL_STATE(747)] = 46249, - [SMALL_STATE(748)] = 46311, - [SMALL_STATE(749)] = 46381, - [SMALL_STATE(750)] = 46449, - [SMALL_STATE(751)] = 46509, - [SMALL_STATE(752)] = 46565, - [SMALL_STATE(753)] = 46615, - [SMALL_STATE(754)] = 46681, - [SMALL_STATE(755)] = 46745, - [SMALL_STATE(756)] = 46801, - [SMALL_STATE(757)] = 46863, - [SMALL_STATE(758)] = 46933, - [SMALL_STATE(759)] = 47003, - [SMALL_STATE(760)] = 47053, - [SMALL_STATE(761)] = 47103, - [SMALL_STATE(762)] = 47171, - [SMALL_STATE(763)] = 47231, - [SMALL_STATE(764)] = 47310, - [SMALL_STATE(765)] = 47357, - [SMALL_STATE(766)] = 47436, - [SMALL_STATE(767)] = 47485, - [SMALL_STATE(768)] = 47534, - [SMALL_STATE(769)] = 47583, - [SMALL_STATE(770)] = 47632, - [SMALL_STATE(771)] = 47681, - [SMALL_STATE(772)] = 47730, - [SMALL_STATE(773)] = 47775, - [SMALL_STATE(774)] = 47822, - [SMALL_STATE(775)] = 47871, - [SMALL_STATE(776)] = 47920, - [SMALL_STATE(777)] = 47969, - [SMALL_STATE(778)] = 48014, - [SMALL_STATE(779)] = 48063, - [SMALL_STATE(780)] = 48112, - [SMALL_STATE(781)] = 48189, - [SMALL_STATE(782)] = 48236, - [SMALL_STATE(783)] = 48285, - [SMALL_STATE(784)] = 48332, - [SMALL_STATE(785)] = 48386, - [SMALL_STATE(786)] = 48450, - [SMALL_STATE(787)] = 48504, - [SMALL_STATE(788)] = 48548, - [SMALL_STATE(789)] = 48592, - [SMALL_STATE(790)] = 48660, - [SMALL_STATE(791)] = 48728, - [SMALL_STATE(792)] = 48782, - [SMALL_STATE(793)] = 48858, - [SMALL_STATE(794)] = 48906, - [SMALL_STATE(795)] = 48954, - [SMALL_STATE(796)] = 48998, - [SMALL_STATE(797)] = 49042, - [SMALL_STATE(798)] = 49096, - [SMALL_STATE(799)] = 49150, - [SMALL_STATE(800)] = 49204, - [SMALL_STATE(801)] = 49258, - [SMALL_STATE(802)] = 49312, - [SMALL_STATE(803)] = 49372, - [SMALL_STATE(804)] = 49426, - [SMALL_STATE(805)] = 49494, - [SMALL_STATE(806)] = 49562, - [SMALL_STATE(807)] = 49628, - [SMALL_STATE(808)] = 49686, - [SMALL_STATE(809)] = 49740, - [SMALL_STATE(810)] = 49808, - [SMALL_STATE(811)] = 49872, - [SMALL_STATE(812)] = 49934, - [SMALL_STATE(813)] = 50000, - [SMALL_STATE(814)] = 50068, - [SMALL_STATE(815)] = 50136, - [SMALL_STATE(816)] = 50194, - [SMALL_STATE(817)] = 50248, - [SMALL_STATE(818)] = 50308, - [SMALL_STATE(819)] = 50376, - [SMALL_STATE(820)] = 50440, - [SMALL_STATE(821)] = 50502, - [SMALL_STATE(822)] = 50564, - [SMALL_STATE(823)] = 50632, - [SMALL_STATE(824)] = 50698, - [SMALL_STATE(825)] = 50756, - [SMALL_STATE(826)] = 50810, - [SMALL_STATE(827)] = 50870, - [SMALL_STATE(828)] = 50951, - [SMALL_STATE(829)] = 50998, - [SMALL_STATE(830)] = 51043, - [SMALL_STATE(831)] = 51124, - [SMALL_STATE(832)] = 51177, - [SMALL_STATE(833)] = 51236, - [SMALL_STATE(834)] = 51289, - [SMALL_STATE(835)] = 51334, - [SMALL_STATE(836)] = 51387, - [SMALL_STATE(837)] = 51430, - [SMALL_STATE(838)] = 51473, - [SMALL_STATE(839)] = 51540, - [SMALL_STATE(840)] = 51585, - [SMALL_STATE(841)] = 51650, - [SMALL_STATE(842)] = 51707, - [SMALL_STATE(843)] = 51754, - [SMALL_STATE(844)] = 51797, - [SMALL_STATE(845)] = 51842, - [SMALL_STATE(846)] = 51905, - [SMALL_STATE(847)] = 51966, - [SMALL_STATE(848)] = 52047, - [SMALL_STATE(849)] = 52092, - [SMALL_STATE(850)] = 52139, - [SMALL_STATE(851)] = 52184, - [SMALL_STATE(852)] = 52229, - [SMALL_STATE(853)] = 52272, - [SMALL_STATE(854)] = 52315, - [SMALL_STATE(855)] = 52360, - [SMALL_STATE(856)] = 52427, - [SMALL_STATE(857)] = 52494, - [SMALL_STATE(858)] = 52537, - [SMALL_STATE(859)] = 52618, - [SMALL_STATE(860)] = 52663, - [SMALL_STATE(861)] = 52706, - [SMALL_STATE(862)] = 52751, - [SMALL_STATE(863)] = 52798, - [SMALL_STATE(864)] = 52843, - [SMALL_STATE(865)] = 52886, - [SMALL_STATE(866)] = 52931, - [SMALL_STATE(867)] = 52984, - [SMALL_STATE(868)] = 53026, - [SMALL_STATE(869)] = 53068, - [SMALL_STATE(870)] = 53110, - [SMALL_STATE(871)] = 53152, - [SMALL_STATE(872)] = 53196, - [SMALL_STATE(873)] = 53240, - [SMALL_STATE(874)] = 53282, - [SMALL_STATE(875)] = 53360, - [SMALL_STATE(876)] = 53438, - [SMALL_STATE(877)] = 53480, - [SMALL_STATE(878)] = 53524, - [SMALL_STATE(879)] = 53566, - [SMALL_STATE(880)] = 53610, - [SMALL_STATE(881)] = 53652, - [SMALL_STATE(882)] = 53694, - [SMALL_STATE(883)] = 53736, - [SMALL_STATE(884)] = 53780, - [SMALL_STATE(885)] = 53822, - [SMALL_STATE(886)] = 53864, - [SMALL_STATE(887)] = 53906, - [SMALL_STATE(888)] = 53948, - [SMALL_STATE(889)] = 53990, - [SMALL_STATE(890)] = 54070, - [SMALL_STATE(891)] = 54112, - [SMALL_STATE(892)] = 54154, - [SMALL_STATE(893)] = 54196, - [SMALL_STATE(894)] = 54238, - [SMALL_STATE(895)] = 54280, - [SMALL_STATE(896)] = 54322, - [SMALL_STATE(897)] = 54364, - [SMALL_STATE(898)] = 54406, - [SMALL_STATE(899)] = 54448, - [SMALL_STATE(900)] = 54526, - [SMALL_STATE(901)] = 54568, - [SMALL_STATE(902)] = 54610, - [SMALL_STATE(903)] = 54652, - [SMALL_STATE(904)] = 54694, - [SMALL_STATE(905)] = 54736, - [SMALL_STATE(906)] = 54778, - [SMALL_STATE(907)] = 54820, - [SMALL_STATE(908)] = 54862, - [SMALL_STATE(909)] = 54904, - [SMALL_STATE(910)] = 54946, - [SMALL_STATE(911)] = 54988, - [SMALL_STATE(912)] = 55030, - [SMALL_STATE(913)] = 55072, - [SMALL_STATE(914)] = 55114, - [SMALL_STATE(915)] = 55156, - [SMALL_STATE(916)] = 55198, - [SMALL_STATE(917)] = 55240, - [SMALL_STATE(918)] = 55282, - [SMALL_STATE(919)] = 55324, - [SMALL_STATE(920)] = 55366, - [SMALL_STATE(921)] = 55408, - [SMALL_STATE(922)] = 55450, - [SMALL_STATE(923)] = 55492, - [SMALL_STATE(924)] = 55570, - [SMALL_STATE(925)] = 55648, - [SMALL_STATE(926)] = 55690, - [SMALL_STATE(927)] = 55732, - [SMALL_STATE(928)] = 55774, - [SMALL_STATE(929)] = 55816, - [SMALL_STATE(930)] = 55858, - [SMALL_STATE(931)] = 55900, - [SMALL_STATE(932)] = 55942, - [SMALL_STATE(933)] = 55984, - [SMALL_STATE(934)] = 56026, - [SMALL_STATE(935)] = 56068, - [SMALL_STATE(936)] = 56110, - [SMALL_STATE(937)] = 56152, - [SMALL_STATE(938)] = 56194, - [SMALL_STATE(939)] = 56236, - [SMALL_STATE(940)] = 56278, - [SMALL_STATE(941)] = 56320, - [SMALL_STATE(942)] = 56362, - [SMALL_STATE(943)] = 56404, - [SMALL_STATE(944)] = 56446, - [SMALL_STATE(945)] = 56488, - [SMALL_STATE(946)] = 56530, - [SMALL_STATE(947)] = 56571, - [SMALL_STATE(948)] = 56612, - [SMALL_STATE(949)] = 56653, - [SMALL_STATE(950)] = 56694, - [SMALL_STATE(951)] = 56735, - [SMALL_STATE(952)] = 56776, - [SMALL_STATE(953)] = 56817, - [SMALL_STATE(954)] = 56858, - [SMALL_STATE(955)] = 56903, - [SMALL_STATE(956)] = 56944, - [SMALL_STATE(957)] = 56985, - [SMALL_STATE(958)] = 57026, - [SMALL_STATE(959)] = 57067, - [SMALL_STATE(960)] = 57108, - [SMALL_STATE(961)] = 57149, - [SMALL_STATE(962)] = 57190, - [SMALL_STATE(963)] = 57231, - [SMALL_STATE(964)] = 57272, - [SMALL_STATE(965)] = 57313, - [SMALL_STATE(966)] = 57354, - [SMALL_STATE(967)] = 57395, - [SMALL_STATE(968)] = 57436, - [SMALL_STATE(969)] = 57477, - [SMALL_STATE(970)] = 57556, - [SMALL_STATE(971)] = 57597, - [SMALL_STATE(972)] = 57642, - [SMALL_STATE(973)] = 57717, - [SMALL_STATE(974)] = 57796, - [SMALL_STATE(975)] = 57837, - [SMALL_STATE(976)] = 57878, - [SMALL_STATE(977)] = 57919, - [SMALL_STATE(978)] = 57960, - [SMALL_STATE(979)] = 58001, - [SMALL_STATE(980)] = 58042, - [SMALL_STATE(981)] = 58121, - [SMALL_STATE(982)] = 58162, - [SMALL_STATE(983)] = 58203, - [SMALL_STATE(984)] = 58244, - [SMALL_STATE(985)] = 58285, - [SMALL_STATE(986)] = 58358, - [SMALL_STATE(987)] = 58428, - [SMALL_STATE(988)] = 58498, - [SMALL_STATE(989)] = 58560, - [SMALL_STATE(990)] = 58622, - [SMALL_STATE(991)] = 58661, - [SMALL_STATE(992)] = 58700, - [SMALL_STATE(993)] = 58739, - [SMALL_STATE(994)] = 58778, - [SMALL_STATE(995)] = 58808, - [SMALL_STATE(996)] = 58861, - [SMALL_STATE(997)] = 58896, - [SMALL_STATE(998)] = 58925, - [SMALL_STATE(999)] = 58950, - [SMALL_STATE(1000)] = 58975, - [SMALL_STATE(1001)] = 59012, - [SMALL_STATE(1002)] = 59037, - [SMALL_STATE(1003)] = 59062, - [SMALL_STATE(1004)] = 59099, - [SMALL_STATE(1005)] = 59128, - [SMALL_STATE(1006)] = 59165, - [SMALL_STATE(1007)] = 59200, - [SMALL_STATE(1008)] = 59253, - [SMALL_STATE(1009)] = 59290, - [SMALL_STATE(1010)] = 59343, - [SMALL_STATE(1011)] = 59377, - [SMALL_STATE(1012)] = 59411, - [SMALL_STATE(1013)] = 59439, - [SMALL_STATE(1014)] = 59485, - [SMALL_STATE(1015)] = 59528, - [SMALL_STATE(1016)] = 59571, - [SMALL_STATE(1017)] = 59614, - [SMALL_STATE(1018)] = 59645, - [SMALL_STATE(1019)] = 59688, - [SMALL_STATE(1020)] = 59731, - [SMALL_STATE(1021)] = 59774, - [SMALL_STATE(1022)] = 59817, - [SMALL_STATE(1023)] = 59857, - [SMALL_STATE(1024)] = 59901, - [SMALL_STATE(1025)] = 59938, - [SMALL_STATE(1026)] = 59975, - [SMALL_STATE(1027)] = 60000, - [SMALL_STATE(1028)] = 60037, - [SMALL_STATE(1029)] = 60074, - [SMALL_STATE(1030)] = 60108, - [SMALL_STATE(1031)] = 60142, - [SMALL_STATE(1032)] = 60163, - [SMALL_STATE(1033)] = 60184, - [SMALL_STATE(1034)] = 60206, - [SMALL_STATE(1035)] = 60237, - [SMALL_STATE(1036)] = 60258, - [SMALL_STATE(1037)] = 60281, - [SMALL_STATE(1038)] = 60312, - [SMALL_STATE(1039)] = 60343, - [SMALL_STATE(1040)] = 60374, - [SMALL_STATE(1041)] = 60405, - [SMALL_STATE(1042)] = 60442, - [SMALL_STATE(1043)] = 60473, - [SMALL_STATE(1044)] = 60504, - [SMALL_STATE(1045)] = 60535, - [SMALL_STATE(1046)] = 60566, - [SMALL_STATE(1047)] = 60597, - [SMALL_STATE(1048)] = 60628, - [SMALL_STATE(1049)] = 60659, - [SMALL_STATE(1050)] = 60690, - [SMALL_STATE(1051)] = 60721, - [SMALL_STATE(1052)] = 60752, - [SMALL_STATE(1053)] = 60783, - [SMALL_STATE(1054)] = 60814, - [SMALL_STATE(1055)] = 60845, - [SMALL_STATE(1056)] = 60882, - [SMALL_STATE(1057)] = 60899, - [SMALL_STATE(1058)] = 60936, - [SMALL_STATE(1059)] = 60973, - [SMALL_STATE(1060)] = 61010, - [SMALL_STATE(1061)] = 61033, - [SMALL_STATE(1062)] = 61054, - [SMALL_STATE(1063)] = 61085, - [SMALL_STATE(1064)] = 61107, - [SMALL_STATE(1065)] = 61141, - [SMALL_STATE(1066)] = 61165, - [SMALL_STATE(1067)] = 61187, - [SMALL_STATE(1068)] = 61209, - [SMALL_STATE(1069)] = 61243, - [SMALL_STATE(1070)] = 61265, - [SMALL_STATE(1071)] = 61299, - [SMALL_STATE(1072)] = 61333, - [SMALL_STATE(1073)] = 61357, - [SMALL_STATE(1074)] = 61379, - [SMALL_STATE(1075)] = 61399, - [SMALL_STATE(1076)] = 61433, - [SMALL_STATE(1077)] = 61453, - [SMALL_STATE(1078)] = 61471, - [SMALL_STATE(1079)] = 61491, - [SMALL_STATE(1080)] = 61525, - [SMALL_STATE(1081)] = 61547, - [SMALL_STATE(1082)] = 61567, - [SMALL_STATE(1083)] = 61591, - [SMALL_STATE(1084)] = 61625, - [SMALL_STATE(1085)] = 61659, - [SMALL_STATE(1086)] = 61693, - [SMALL_STATE(1087)] = 61727, - [SMALL_STATE(1088)] = 61761, - [SMALL_STATE(1089)] = 61779, - [SMALL_STATE(1090)] = 61797, - [SMALL_STATE(1091)] = 61831, - [SMALL_STATE(1092)] = 61854, - [SMALL_STATE(1093)] = 61873, - [SMALL_STATE(1094)] = 61892, - [SMALL_STATE(1095)] = 61913, - [SMALL_STATE(1096)] = 61936, - [SMALL_STATE(1097)] = 61961, - [SMALL_STATE(1098)] = 61980, - [SMALL_STATE(1099)] = 61999, - [SMALL_STATE(1100)] = 62018, - [SMALL_STATE(1101)] = 62037, - [SMALL_STATE(1102)] = 62060, - [SMALL_STATE(1103)] = 62085, - [SMALL_STATE(1104)] = 62099, - [SMALL_STATE(1105)] = 62113, - [SMALL_STATE(1106)] = 62127, - [SMALL_STATE(1107)] = 62141, - [SMALL_STATE(1108)] = 62155, - [SMALL_STATE(1109)] = 62169, - [SMALL_STATE(1110)] = 62183, - [SMALL_STATE(1111)] = 62197, - [SMALL_STATE(1112)] = 62219, - [SMALL_STATE(1113)] = 62237, - [SMALL_STATE(1114)] = 62255, - [SMALL_STATE(1115)] = 62269, - [SMALL_STATE(1116)] = 62283, - [SMALL_STATE(1117)] = 62297, - [SMALL_STATE(1118)] = 62315, - [SMALL_STATE(1119)] = 62329, - [SMALL_STATE(1120)] = 62347, - [SMALL_STATE(1121)] = 62367, - [SMALL_STATE(1122)] = 62385, - [SMALL_STATE(1123)] = 62401, - [SMALL_STATE(1124)] = 62419, - [SMALL_STATE(1125)] = 62439, - [SMALL_STATE(1126)] = 62459, - [SMALL_STATE(1127)] = 62477, - [SMALL_STATE(1128)] = 62501, - [SMALL_STATE(1129)] = 62525, - [SMALL_STATE(1130)] = 62539, - [SMALL_STATE(1131)] = 62553, - [SMALL_STATE(1132)] = 62573, - [SMALL_STATE(1133)] = 62587, - [SMALL_STATE(1134)] = 62601, - [SMALL_STATE(1135)] = 62627, - [SMALL_STATE(1136)] = 62649, - [SMALL_STATE(1137)] = 62663, - [SMALL_STATE(1138)] = 62677, - [SMALL_STATE(1139)] = 62691, - [SMALL_STATE(1140)] = 62707, - [SMALL_STATE(1141)] = 62721, - [SMALL_STATE(1142)] = 62739, - [SMALL_STATE(1143)] = 62759, - [SMALL_STATE(1144)] = 62779, - [SMALL_STATE(1145)] = 62803, - [SMALL_STATE(1146)] = 62823, - [SMALL_STATE(1147)] = 62839, - [SMALL_STATE(1148)] = 62857, - [SMALL_STATE(1149)] = 62871, - [SMALL_STATE(1150)] = 62893, - [SMALL_STATE(1151)] = 62907, - [SMALL_STATE(1152)] = 62927, - [SMALL_STATE(1153)] = 62947, - [SMALL_STATE(1154)] = 62967, - [SMALL_STATE(1155)] = 62987, - [SMALL_STATE(1156)] = 63007, - [SMALL_STATE(1157)] = 63021, - [SMALL_STATE(1158)] = 63039, - [SMALL_STATE(1159)] = 63057, - [SMALL_STATE(1160)] = 63077, - [SMALL_STATE(1161)] = 63095, - [SMALL_STATE(1162)] = 63111, - [SMALL_STATE(1163)] = 63129, - [SMALL_STATE(1164)] = 63149, - [SMALL_STATE(1165)] = 63169, - [SMALL_STATE(1166)] = 63187, - [SMALL_STATE(1167)] = 63205, - [SMALL_STATE(1168)] = 63219, - [SMALL_STATE(1169)] = 63233, - [SMALL_STATE(1170)] = 63247, - [SMALL_STATE(1171)] = 63272, - [SMALL_STATE(1172)] = 63293, - [SMALL_STATE(1173)] = 63306, - [SMALL_STATE(1174)] = 63319, - [SMALL_STATE(1175)] = 63344, - [SMALL_STATE(1176)] = 63365, - [SMALL_STATE(1177)] = 63388, - [SMALL_STATE(1178)] = 63411, - [SMALL_STATE(1179)] = 63430, - [SMALL_STATE(1180)] = 63453, - [SMALL_STATE(1181)] = 63472, - [SMALL_STATE(1182)] = 63495, - [SMALL_STATE(1183)] = 63518, - [SMALL_STATE(1184)] = 63543, - [SMALL_STATE(1185)] = 63562, - [SMALL_STATE(1186)] = 63581, - [SMALL_STATE(1187)] = 63594, - [SMALL_STATE(1188)] = 63611, - [SMALL_STATE(1189)] = 63630, - [SMALL_STATE(1190)] = 63643, - [SMALL_STATE(1191)] = 63668, - [SMALL_STATE(1192)] = 63687, - [SMALL_STATE(1193)] = 63712, - [SMALL_STATE(1194)] = 63731, - [SMALL_STATE(1195)] = 63750, - [SMALL_STATE(1196)] = 63773, - [SMALL_STATE(1197)] = 63792, - [SMALL_STATE(1198)] = 63809, - [SMALL_STATE(1199)] = 63824, - [SMALL_STATE(1200)] = 63849, - [SMALL_STATE(1201)] = 63866, - [SMALL_STATE(1202)] = 63885, - [SMALL_STATE(1203)] = 63904, - [SMALL_STATE(1204)] = 63929, - [SMALL_STATE(1205)] = 63954, - [SMALL_STATE(1206)] = 63975, - [SMALL_STATE(1207)] = 63998, - [SMALL_STATE(1208)] = 64021, - [SMALL_STATE(1209)] = 64034, - [SMALL_STATE(1210)] = 64055, - [SMALL_STATE(1211)] = 64080, - [SMALL_STATE(1212)] = 64093, - [SMALL_STATE(1213)] = 64112, - [SMALL_STATE(1214)] = 64133, - [SMALL_STATE(1215)] = 64158, - [SMALL_STATE(1216)] = 64173, - [SMALL_STATE(1217)] = 64196, - [SMALL_STATE(1218)] = 64212, - [SMALL_STATE(1219)] = 64228, - [SMALL_STATE(1220)] = 64244, - [SMALL_STATE(1221)] = 64260, - [SMALL_STATE(1222)] = 64272, - [SMALL_STATE(1223)] = 64288, - [SMALL_STATE(1224)] = 64308, - [SMALL_STATE(1225)] = 64324, - [SMALL_STATE(1226)] = 64342, - [SMALL_STATE(1227)] = 64356, - [SMALL_STATE(1228)] = 64376, - [SMALL_STATE(1229)] = 64392, - [SMALL_STATE(1230)] = 64410, - [SMALL_STATE(1231)] = 64424, - [SMALL_STATE(1232)] = 64440, - [SMALL_STATE(1233)] = 64462, - [SMALL_STATE(1234)] = 64478, - [SMALL_STATE(1235)] = 64500, - [SMALL_STATE(1236)] = 64518, - [SMALL_STATE(1237)] = 64538, - [SMALL_STATE(1238)] = 64560, - [SMALL_STATE(1239)] = 64582, - [SMALL_STATE(1240)] = 64594, - [SMALL_STATE(1241)] = 64612, - [SMALL_STATE(1242)] = 64634, - [SMALL_STATE(1243)] = 64652, - [SMALL_STATE(1244)] = 64670, - [SMALL_STATE(1245)] = 64688, - [SMALL_STATE(1246)] = 64710, - [SMALL_STATE(1247)] = 64732, - [SMALL_STATE(1248)] = 64748, - [SMALL_STATE(1249)] = 64768, - [SMALL_STATE(1250)] = 64784, - [SMALL_STATE(1251)] = 64800, - [SMALL_STATE(1252)] = 64814, - [SMALL_STATE(1253)] = 64828, - [SMALL_STATE(1254)] = 64846, - [SMALL_STATE(1255)] = 64860, - [SMALL_STATE(1256)] = 64874, - [SMALL_STATE(1257)] = 64894, - [SMALL_STATE(1258)] = 64910, - [SMALL_STATE(1259)] = 64927, - [SMALL_STATE(1260)] = 64938, - [SMALL_STATE(1261)] = 64955, - [SMALL_STATE(1262)] = 64972, - [SMALL_STATE(1263)] = 64983, - [SMALL_STATE(1264)] = 65000, - [SMALL_STATE(1265)] = 65017, - [SMALL_STATE(1266)] = 65034, - [SMALL_STATE(1267)] = 65045, - [SMALL_STATE(1268)] = 65060, - [SMALL_STATE(1269)] = 65077, - [SMALL_STATE(1270)] = 65096, - [SMALL_STATE(1271)] = 65113, - [SMALL_STATE(1272)] = 65132, - [SMALL_STATE(1273)] = 65147, - [SMALL_STATE(1274)] = 65166, - [SMALL_STATE(1275)] = 65183, - [SMALL_STATE(1276)] = 65200, - [SMALL_STATE(1277)] = 65217, - [SMALL_STATE(1278)] = 65234, - [SMALL_STATE(1279)] = 65249, - [SMALL_STATE(1280)] = 65268, - [SMALL_STATE(1281)] = 65285, - [SMALL_STATE(1282)] = 65302, - [SMALL_STATE(1283)] = 65319, - [SMALL_STATE(1284)] = 65338, - [SMALL_STATE(1285)] = 65353, - [SMALL_STATE(1286)] = 65370, - [SMALL_STATE(1287)] = 65385, - [SMALL_STATE(1288)] = 65400, - [SMALL_STATE(1289)] = 65419, - [SMALL_STATE(1290)] = 65436, - [SMALL_STATE(1291)] = 65451, - [SMALL_STATE(1292)] = 65470, - [SMALL_STATE(1293)] = 65489, - [SMALL_STATE(1294)] = 65500, - [SMALL_STATE(1295)] = 65511, - [SMALL_STATE(1296)] = 65528, - [SMALL_STATE(1297)] = 65544, - [SMALL_STATE(1298)] = 65558, - [SMALL_STATE(1299)] = 65572, - [SMALL_STATE(1300)] = 65588, - [SMALL_STATE(1301)] = 65604, - [SMALL_STATE(1302)] = 65620, - [SMALL_STATE(1303)] = 65634, - [SMALL_STATE(1304)] = 65648, - [SMALL_STATE(1305)] = 65662, - [SMALL_STATE(1306)] = 65678, - [SMALL_STATE(1307)] = 65694, - [SMALL_STATE(1308)] = 65710, - [SMALL_STATE(1309)] = 65726, - [SMALL_STATE(1310)] = 65742, - [SMALL_STATE(1311)] = 65756, - [SMALL_STATE(1312)] = 65770, - [SMALL_STATE(1313)] = 65786, - [SMALL_STATE(1314)] = 65802, - [SMALL_STATE(1315)] = 65816, - [SMALL_STATE(1316)] = 65830, - [SMALL_STATE(1317)] = 65846, - [SMALL_STATE(1318)] = 65856, - [SMALL_STATE(1319)] = 65872, - [SMALL_STATE(1320)] = 65888, - [SMALL_STATE(1321)] = 65902, - [SMALL_STATE(1322)] = 65916, - [SMALL_STATE(1323)] = 65930, - [SMALL_STATE(1324)] = 65944, - [SMALL_STATE(1325)] = 65958, - [SMALL_STATE(1326)] = 65970, - [SMALL_STATE(1327)] = 65982, - [SMALL_STATE(1328)] = 65998, - [SMALL_STATE(1329)] = 66012, - [SMALL_STATE(1330)] = 66026, - [SMALL_STATE(1331)] = 66040, - [SMALL_STATE(1332)] = 66056, - [SMALL_STATE(1333)] = 66072, - [SMALL_STATE(1334)] = 66088, - [SMALL_STATE(1335)] = 66104, - [SMALL_STATE(1336)] = 66120, - [SMALL_STATE(1337)] = 66136, - [SMALL_STATE(1338)] = 66152, - [SMALL_STATE(1339)] = 66166, - [SMALL_STATE(1340)] = 66182, - [SMALL_STATE(1341)] = 66196, - [SMALL_STATE(1342)] = 66206, - [SMALL_STATE(1343)] = 66220, - [SMALL_STATE(1344)] = 66236, - [SMALL_STATE(1345)] = 66246, - [SMALL_STATE(1346)] = 66262, - [SMALL_STATE(1347)] = 66272, - [SMALL_STATE(1348)] = 66288, - [SMALL_STATE(1349)] = 66298, - [SMALL_STATE(1350)] = 66314, - [SMALL_STATE(1351)] = 66328, - [SMALL_STATE(1352)] = 66344, - [SMALL_STATE(1353)] = 66360, - [SMALL_STATE(1354)] = 66374, - [SMALL_STATE(1355)] = 66388, - [SMALL_STATE(1356)] = 66404, - [SMALL_STATE(1357)] = 66420, - [SMALL_STATE(1358)] = 66436, - [SMALL_STATE(1359)] = 66452, - [SMALL_STATE(1360)] = 66468, - [SMALL_STATE(1361)] = 66482, - [SMALL_STATE(1362)] = 66498, - [SMALL_STATE(1363)] = 66514, - [SMALL_STATE(1364)] = 66528, - [SMALL_STATE(1365)] = 66544, - [SMALL_STATE(1366)] = 66558, - [SMALL_STATE(1367)] = 66574, - [SMALL_STATE(1368)] = 66588, - [SMALL_STATE(1369)] = 66602, - [SMALL_STATE(1370)] = 66618, - [SMALL_STATE(1371)] = 66632, - [SMALL_STATE(1372)] = 66646, - [SMALL_STATE(1373)] = 66660, - [SMALL_STATE(1374)] = 66674, - [SMALL_STATE(1375)] = 66688, - [SMALL_STATE(1376)] = 66704, - [SMALL_STATE(1377)] = 66720, - [SMALL_STATE(1378)] = 66734, - [SMALL_STATE(1379)] = 66744, - [SMALL_STATE(1380)] = 66757, - [SMALL_STATE(1381)] = 66766, - [SMALL_STATE(1382)] = 66775, - [SMALL_STATE(1383)] = 66788, - [SMALL_STATE(1384)] = 66797, - [SMALL_STATE(1385)] = 66810, - [SMALL_STATE(1386)] = 66823, - [SMALL_STATE(1387)] = 66836, - [SMALL_STATE(1388)] = 66849, - [SMALL_STATE(1389)] = 66858, - [SMALL_STATE(1390)] = 66867, - [SMALL_STATE(1391)] = 66880, - [SMALL_STATE(1392)] = 66889, - [SMALL_STATE(1393)] = 66900, - [SMALL_STATE(1394)] = 66913, - [SMALL_STATE(1395)] = 66926, - [SMALL_STATE(1396)] = 66939, - [SMALL_STATE(1397)] = 66952, - [SMALL_STATE(1398)] = 66965, - [SMALL_STATE(1399)] = 66978, - [SMALL_STATE(1400)] = 66991, - [SMALL_STATE(1401)] = 67004, - [SMALL_STATE(1402)] = 67017, - [SMALL_STATE(1403)] = 67030, - [SMALL_STATE(1404)] = 67043, - [SMALL_STATE(1405)] = 67056, - [SMALL_STATE(1406)] = 67069, - [SMALL_STATE(1407)] = 67082, - [SMALL_STATE(1408)] = 67095, - [SMALL_STATE(1409)] = 67108, - [SMALL_STATE(1410)] = 67121, - [SMALL_STATE(1411)] = 67134, - [SMALL_STATE(1412)] = 67147, - [SMALL_STATE(1413)] = 67160, - [SMALL_STATE(1414)] = 67173, - [SMALL_STATE(1415)] = 67184, - [SMALL_STATE(1416)] = 67197, - [SMALL_STATE(1417)] = 67210, - [SMALL_STATE(1418)] = 67223, - [SMALL_STATE(1419)] = 67236, - [SMALL_STATE(1420)] = 67249, - [SMALL_STATE(1421)] = 67262, - [SMALL_STATE(1422)] = 67275, - [SMALL_STATE(1423)] = 67288, - [SMALL_STATE(1424)] = 67301, - [SMALL_STATE(1425)] = 67314, - [SMALL_STATE(1426)] = 67327, - [SMALL_STATE(1427)] = 67340, - [SMALL_STATE(1428)] = 67353, - [SMALL_STATE(1429)] = 67366, - [SMALL_STATE(1430)] = 67375, - [SMALL_STATE(1431)] = 67388, - [SMALL_STATE(1432)] = 67401, - [SMALL_STATE(1433)] = 67414, - [SMALL_STATE(1434)] = 67427, - [SMALL_STATE(1435)] = 67440, - [SMALL_STATE(1436)] = 67453, - [SMALL_STATE(1437)] = 67466, - [SMALL_STATE(1438)] = 67479, - [SMALL_STATE(1439)] = 67492, - [SMALL_STATE(1440)] = 67505, - [SMALL_STATE(1441)] = 67518, - [SMALL_STATE(1442)] = 67531, - [SMALL_STATE(1443)] = 67544, - [SMALL_STATE(1444)] = 67553, - [SMALL_STATE(1445)] = 67566, - [SMALL_STATE(1446)] = 67579, - [SMALL_STATE(1447)] = 67590, - [SMALL_STATE(1448)] = 67603, - [SMALL_STATE(1449)] = 67616, - [SMALL_STATE(1450)] = 67629, - [SMALL_STATE(1451)] = 67642, - [SMALL_STATE(1452)] = 67651, - [SMALL_STATE(1453)] = 67664, - [SMALL_STATE(1454)] = 67677, - [SMALL_STATE(1455)] = 67686, - [SMALL_STATE(1456)] = 67699, - [SMALL_STATE(1457)] = 67712, - [SMALL_STATE(1458)] = 67725, - [SMALL_STATE(1459)] = 67736, - [SMALL_STATE(1460)] = 67749, - [SMALL_STATE(1461)] = 67762, - [SMALL_STATE(1462)] = 67775, - [SMALL_STATE(1463)] = 67788, - [SMALL_STATE(1464)] = 67801, - [SMALL_STATE(1465)] = 67812, - [SMALL_STATE(1466)] = 67823, - [SMALL_STATE(1467)] = 67836, - [SMALL_STATE(1468)] = 67849, - [SMALL_STATE(1469)] = 67862, - [SMALL_STATE(1470)] = 67875, - [SMALL_STATE(1471)] = 67888, - [SMALL_STATE(1472)] = 67901, - [SMALL_STATE(1473)] = 67914, - [SMALL_STATE(1474)] = 67925, - [SMALL_STATE(1475)] = 67938, - [SMALL_STATE(1476)] = 67951, - [SMALL_STATE(1477)] = 67962, - [SMALL_STATE(1478)] = 67975, - [SMALL_STATE(1479)] = 67988, - [SMALL_STATE(1480)] = 68001, - [SMALL_STATE(1481)] = 68014, - [SMALL_STATE(1482)] = 68023, - [SMALL_STATE(1483)] = 68036, - [SMALL_STATE(1484)] = 68049, - [SMALL_STATE(1485)] = 68062, - [SMALL_STATE(1486)] = 68075, - [SMALL_STATE(1487)] = 68084, - [SMALL_STATE(1488)] = 68097, - [SMALL_STATE(1489)] = 68110, - [SMALL_STATE(1490)] = 68123, - [SMALL_STATE(1491)] = 68136, - [SMALL_STATE(1492)] = 68145, - [SMALL_STATE(1493)] = 68156, - [SMALL_STATE(1494)] = 68169, - [SMALL_STATE(1495)] = 68178, - [SMALL_STATE(1496)] = 68187, - [SMALL_STATE(1497)] = 68200, - [SMALL_STATE(1498)] = 68213, - [SMALL_STATE(1499)] = 68226, - [SMALL_STATE(1500)] = 68239, - [SMALL_STATE(1501)] = 68250, - [SMALL_STATE(1502)] = 68263, - [SMALL_STATE(1503)] = 68276, - [SMALL_STATE(1504)] = 68289, - [SMALL_STATE(1505)] = 68300, - [SMALL_STATE(1506)] = 68313, - [SMALL_STATE(1507)] = 68326, - [SMALL_STATE(1508)] = 68339, - [SMALL_STATE(1509)] = 68352, - [SMALL_STATE(1510)] = 68365, - [SMALL_STATE(1511)] = 68376, - [SMALL_STATE(1512)] = 68389, - [SMALL_STATE(1513)] = 68399, - [SMALL_STATE(1514)] = 68407, - [SMALL_STATE(1515)] = 68417, - [SMALL_STATE(1516)] = 68425, - [SMALL_STATE(1517)] = 68433, - [SMALL_STATE(1518)] = 68441, - [SMALL_STATE(1519)] = 68451, - [SMALL_STATE(1520)] = 68459, - [SMALL_STATE(1521)] = 68469, - [SMALL_STATE(1522)] = 68477, - [SMALL_STATE(1523)] = 68485, - [SMALL_STATE(1524)] = 68493, - [SMALL_STATE(1525)] = 68501, - [SMALL_STATE(1526)] = 68509, - [SMALL_STATE(1527)] = 68517, - [SMALL_STATE(1528)] = 68525, - [SMALL_STATE(1529)] = 68533, - [SMALL_STATE(1530)] = 68543, - [SMALL_STATE(1531)] = 68551, - [SMALL_STATE(1532)] = 68561, - [SMALL_STATE(1533)] = 68569, - [SMALL_STATE(1534)] = 68577, - [SMALL_STATE(1535)] = 68585, - [SMALL_STATE(1536)] = 68593, - [SMALL_STATE(1537)] = 68601, - [SMALL_STATE(1538)] = 68609, - [SMALL_STATE(1539)] = 68619, - [SMALL_STATE(1540)] = 68629, - [SMALL_STATE(1541)] = 68639, - [SMALL_STATE(1542)] = 68649, - [SMALL_STATE(1543)] = 68657, - [SMALL_STATE(1544)] = 68667, - [SMALL_STATE(1545)] = 68675, - [SMALL_STATE(1546)] = 68685, - [SMALL_STATE(1547)] = 68695, - [SMALL_STATE(1548)] = 68705, - [SMALL_STATE(1549)] = 68715, - [SMALL_STATE(1550)] = 68723, - [SMALL_STATE(1551)] = 68733, - [SMALL_STATE(1552)] = 68741, - [SMALL_STATE(1553)] = 68749, - [SMALL_STATE(1554)] = 68757, - [SMALL_STATE(1555)] = 68765, - [SMALL_STATE(1556)] = 68775, - [SMALL_STATE(1557)] = 68785, - [SMALL_STATE(1558)] = 68795, - [SMALL_STATE(1559)] = 68805, - [SMALL_STATE(1560)] = 68813, - [SMALL_STATE(1561)] = 68823, - [SMALL_STATE(1562)] = 68833, - [SMALL_STATE(1563)] = 68843, - [SMALL_STATE(1564)] = 68851, - [SMALL_STATE(1565)] = 68859, - [SMALL_STATE(1566)] = 68869, - [SMALL_STATE(1567)] = 68877, - [SMALL_STATE(1568)] = 68885, - [SMALL_STATE(1569)] = 68895, - [SMALL_STATE(1570)] = 68903, - [SMALL_STATE(1571)] = 68911, - [SMALL_STATE(1572)] = 68919, - [SMALL_STATE(1573)] = 68927, - [SMALL_STATE(1574)] = 68935, - [SMALL_STATE(1575)] = 68943, - [SMALL_STATE(1576)] = 68951, - [SMALL_STATE(1577)] = 68959, - [SMALL_STATE(1578)] = 68967, - [SMALL_STATE(1579)] = 68975, - [SMALL_STATE(1580)] = 68985, - [SMALL_STATE(1581)] = 68993, - [SMALL_STATE(1582)] = 69001, - [SMALL_STATE(1583)] = 69011, - [SMALL_STATE(1584)] = 69021, - [SMALL_STATE(1585)] = 69031, - [SMALL_STATE(1586)] = 69041, - [SMALL_STATE(1587)] = 69049, - [SMALL_STATE(1588)] = 69059, - [SMALL_STATE(1589)] = 69067, - [SMALL_STATE(1590)] = 69075, - [SMALL_STATE(1591)] = 69083, - [SMALL_STATE(1592)] = 69091, - [SMALL_STATE(1593)] = 69098, - [SMALL_STATE(1594)] = 69105, - [SMALL_STATE(1595)] = 69112, - [SMALL_STATE(1596)] = 69119, - [SMALL_STATE(1597)] = 69126, - [SMALL_STATE(1598)] = 69133, - [SMALL_STATE(1599)] = 69140, - [SMALL_STATE(1600)] = 69147, - [SMALL_STATE(1601)] = 69154, - [SMALL_STATE(1602)] = 69161, - [SMALL_STATE(1603)] = 69168, - [SMALL_STATE(1604)] = 69175, - [SMALL_STATE(1605)] = 69182, - [SMALL_STATE(1606)] = 69189, - [SMALL_STATE(1607)] = 69196, - [SMALL_STATE(1608)] = 69203, - [SMALL_STATE(1609)] = 69210, - [SMALL_STATE(1610)] = 69217, - [SMALL_STATE(1611)] = 69224, - [SMALL_STATE(1612)] = 69231, - [SMALL_STATE(1613)] = 69238, - [SMALL_STATE(1614)] = 69245, - [SMALL_STATE(1615)] = 69252, - [SMALL_STATE(1616)] = 69259, - [SMALL_STATE(1617)] = 69266, - [SMALL_STATE(1618)] = 69273, - [SMALL_STATE(1619)] = 69280, - [SMALL_STATE(1620)] = 69287, - [SMALL_STATE(1621)] = 69294, - [SMALL_STATE(1622)] = 69301, - [SMALL_STATE(1623)] = 69308, - [SMALL_STATE(1624)] = 69315, - [SMALL_STATE(1625)] = 69322, - [SMALL_STATE(1626)] = 69329, - [SMALL_STATE(1627)] = 69336, - [SMALL_STATE(1628)] = 69343, - [SMALL_STATE(1629)] = 69350, - [SMALL_STATE(1630)] = 69357, - [SMALL_STATE(1631)] = 69364, - [SMALL_STATE(1632)] = 69371, - [SMALL_STATE(1633)] = 69378, - [SMALL_STATE(1634)] = 69385, - [SMALL_STATE(1635)] = 69392, - [SMALL_STATE(1636)] = 69399, - [SMALL_STATE(1637)] = 69406, - [SMALL_STATE(1638)] = 69413, - [SMALL_STATE(1639)] = 69420, - [SMALL_STATE(1640)] = 69427, - [SMALL_STATE(1641)] = 69434, - [SMALL_STATE(1642)] = 69441, - [SMALL_STATE(1643)] = 69448, - [SMALL_STATE(1644)] = 69455, - [SMALL_STATE(1645)] = 69462, - [SMALL_STATE(1646)] = 69469, - [SMALL_STATE(1647)] = 69476, - [SMALL_STATE(1648)] = 69483, - [SMALL_STATE(1649)] = 69490, - [SMALL_STATE(1650)] = 69497, - [SMALL_STATE(1651)] = 69504, - [SMALL_STATE(1652)] = 69511, - [SMALL_STATE(1653)] = 69518, - [SMALL_STATE(1654)] = 69525, - [SMALL_STATE(1655)] = 69532, - [SMALL_STATE(1656)] = 69539, - [SMALL_STATE(1657)] = 69546, - [SMALL_STATE(1658)] = 69553, - [SMALL_STATE(1659)] = 69560, - [SMALL_STATE(1660)] = 69567, - [SMALL_STATE(1661)] = 69574, - [SMALL_STATE(1662)] = 69581, - [SMALL_STATE(1663)] = 69588, - [SMALL_STATE(1664)] = 69595, - [SMALL_STATE(1665)] = 69602, - [SMALL_STATE(1666)] = 69609, - [SMALL_STATE(1667)] = 69616, - [SMALL_STATE(1668)] = 69623, - [SMALL_STATE(1669)] = 69630, - [SMALL_STATE(1670)] = 69637, - [SMALL_STATE(1671)] = 69644, - [SMALL_STATE(1672)] = 69651, - [SMALL_STATE(1673)] = 69658, - [SMALL_STATE(1674)] = 69665, - [SMALL_STATE(1675)] = 69672, - [SMALL_STATE(1676)] = 69679, - [SMALL_STATE(1677)] = 69686, - [SMALL_STATE(1678)] = 69693, - [SMALL_STATE(1679)] = 69700, - [SMALL_STATE(1680)] = 69707, - [SMALL_STATE(1681)] = 69714, - [SMALL_STATE(1682)] = 69721, - [SMALL_STATE(1683)] = 69728, - [SMALL_STATE(1684)] = 69735, - [SMALL_STATE(1685)] = 69742, - [SMALL_STATE(1686)] = 69749, - [SMALL_STATE(1687)] = 69756, - [SMALL_STATE(1688)] = 69763, - [SMALL_STATE(1689)] = 69770, - [SMALL_STATE(1690)] = 69777, - [SMALL_STATE(1691)] = 69784, - [SMALL_STATE(1692)] = 69791, - [SMALL_STATE(1693)] = 69798, - [SMALL_STATE(1694)] = 69805, - [SMALL_STATE(1695)] = 69812, - [SMALL_STATE(1696)] = 69819, - [SMALL_STATE(1697)] = 69826, - [SMALL_STATE(1698)] = 69833, - [SMALL_STATE(1699)] = 69840, - [SMALL_STATE(1700)] = 69847, - [SMALL_STATE(1701)] = 69854, - [SMALL_STATE(1702)] = 69861, - [SMALL_STATE(1703)] = 69868, - [SMALL_STATE(1704)] = 69875, - [SMALL_STATE(1705)] = 69882, - [SMALL_STATE(1706)] = 69889, - [SMALL_STATE(1707)] = 69896, - [SMALL_STATE(1708)] = 69903, - [SMALL_STATE(1709)] = 69910, - [SMALL_STATE(1710)] = 69917, - [SMALL_STATE(1711)] = 69924, - [SMALL_STATE(1712)] = 69931, - [SMALL_STATE(1713)] = 69938, - [SMALL_STATE(1714)] = 69945, - [SMALL_STATE(1715)] = 69952, - [SMALL_STATE(1716)] = 69959, - [SMALL_STATE(1717)] = 69966, - [SMALL_STATE(1718)] = 69973, - [SMALL_STATE(1719)] = 69980, - [SMALL_STATE(1720)] = 69987, - [SMALL_STATE(1721)] = 69994, - [SMALL_STATE(1722)] = 70001, - [SMALL_STATE(1723)] = 70008, - [SMALL_STATE(1724)] = 70015, - [SMALL_STATE(1725)] = 70022, - [SMALL_STATE(1726)] = 70029, - [SMALL_STATE(1727)] = 70036, - [SMALL_STATE(1728)] = 70043, - [SMALL_STATE(1729)] = 70050, - [SMALL_STATE(1730)] = 70057, - [SMALL_STATE(1731)] = 70064, - [SMALL_STATE(1732)] = 70071, - [SMALL_STATE(1733)] = 70078, + [SMALL_STATE(284)] = 13659, + [SMALL_STATE(285)] = 13761, + [SMALL_STATE(286)] = 13863, + [SMALL_STATE(287)] = 13965, + [SMALL_STATE(288)] = 14067, + [SMALL_STATE(289)] = 14169, + [SMALL_STATE(290)] = 14268, + [SMALL_STATE(291)] = 14367, + [SMALL_STATE(292)] = 14464, + [SMALL_STATE(293)] = 14563, + [SMALL_STATE(294)] = 14660, + [SMALL_STATE(295)] = 14759, + [SMALL_STATE(296)] = 14858, + [SMALL_STATE(297)] = 14955, + [SMALL_STATE(298)] = 15052, + [SMALL_STATE(299)] = 15149, + [SMALL_STATE(300)] = 15246, + [SMALL_STATE(301)] = 15343, + [SMALL_STATE(302)] = 15440, + [SMALL_STATE(303)] = 15537, + [SMALL_STATE(304)] = 15634, + [SMALL_STATE(305)] = 15733, + [SMALL_STATE(306)] = 15832, + [SMALL_STATE(307)] = 15931, + [SMALL_STATE(308)] = 16028, + [SMALL_STATE(309)] = 16125, + [SMALL_STATE(310)] = 16224, + [SMALL_STATE(311)] = 16321, + [SMALL_STATE(312)] = 16381, + [SMALL_STATE(313)] = 16441, + [SMALL_STATE(314)] = 16501, + [SMALL_STATE(315)] = 16565, + [SMALL_STATE(316)] = 16629, + [SMALL_STATE(317)] = 16689, + [SMALL_STATE(318)] = 16749, + [SMALL_STATE(319)] = 16809, + [SMALL_STATE(320)] = 16879, + [SMALL_STATE(321)] = 16949, + [SMALL_STATE(322)] = 17019, + [SMALL_STATE(323)] = 17089, + [SMALL_STATE(324)] = 17185, + [SMALL_STATE(325)] = 17249, + [SMALL_STATE(326)] = 17309, + [SMALL_STATE(327)] = 17369, + [SMALL_STATE(328)] = 17439, + [SMALL_STATE(329)] = 17499, + [SMALL_STATE(330)] = 17569, + [SMALL_STATE(331)] = 17629, + [SMALL_STATE(332)] = 17693, + [SMALL_STATE(333)] = 17763, + [SMALL_STATE(334)] = 17823, + [SMALL_STATE(335)] = 17883, + [SMALL_STATE(336)] = 17979, + [SMALL_STATE(337)] = 18075, + [SMALL_STATE(338)] = 18145, + [SMALL_STATE(339)] = 18238, + [SMALL_STATE(340)] = 18331, + [SMALL_STATE(341)] = 18424, + [SMALL_STATE(342)] = 18517, + [SMALL_STATE(343)] = 18610, + [SMALL_STATE(344)] = 18705, + [SMALL_STATE(345)] = 18798, + [SMALL_STATE(346)] = 18891, + [SMALL_STATE(347)] = 18984, + [SMALL_STATE(348)] = 19057, + [SMALL_STATE(349)] = 19150, + [SMALL_STATE(350)] = 19243, + [SMALL_STATE(351)] = 19308, + [SMALL_STATE(352)] = 19401, + [SMALL_STATE(353)] = 19494, + [SMALL_STATE(354)] = 19587, + [SMALL_STATE(355)] = 19680, + [SMALL_STATE(356)] = 19773, + [SMALL_STATE(357)] = 19866, + [SMALL_STATE(358)] = 19959, + [SMALL_STATE(359)] = 20052, + [SMALL_STATE(360)] = 20145, + [SMALL_STATE(361)] = 20238, + [SMALL_STATE(362)] = 20331, + [SMALL_STATE(363)] = 20424, + [SMALL_STATE(364)] = 20517, + [SMALL_STATE(365)] = 20610, + [SMALL_STATE(366)] = 20703, + [SMALL_STATE(367)] = 20796, + [SMALL_STATE(368)] = 20889, + [SMALL_STATE(369)] = 20982, + [SMALL_STATE(370)] = 21075, + [SMALL_STATE(371)] = 21168, + [SMALL_STATE(372)] = 21261, + [SMALL_STATE(373)] = 21354, + [SMALL_STATE(374)] = 21447, + [SMALL_STATE(375)] = 21540, + [SMALL_STATE(376)] = 21633, + [SMALL_STATE(377)] = 21726, + [SMALL_STATE(378)] = 21819, + [SMALL_STATE(379)] = 21912, + [SMALL_STATE(380)] = 22005, + [SMALL_STATE(381)] = 22098, + [SMALL_STATE(382)] = 22191, + [SMALL_STATE(383)] = 22284, + [SMALL_STATE(384)] = 22377, + [SMALL_STATE(385)] = 22470, + [SMALL_STATE(386)] = 22563, + [SMALL_STATE(387)] = 22656, + [SMALL_STATE(388)] = 22749, + [SMALL_STATE(389)] = 22842, + [SMALL_STATE(390)] = 22935, + [SMALL_STATE(391)] = 23028, + [SMALL_STATE(392)] = 23121, + [SMALL_STATE(393)] = 23186, + [SMALL_STATE(394)] = 23279, + [SMALL_STATE(395)] = 23372, + [SMALL_STATE(396)] = 23465, + [SMALL_STATE(397)] = 23558, + [SMALL_STATE(398)] = 23651, + [SMALL_STATE(399)] = 23744, + [SMALL_STATE(400)] = 23837, + [SMALL_STATE(401)] = 23930, + [SMALL_STATE(402)] = 24025, + [SMALL_STATE(403)] = 24118, + [SMALL_STATE(404)] = 24211, + [SMALL_STATE(405)] = 24304, + [SMALL_STATE(406)] = 24397, + [SMALL_STATE(407)] = 24490, + [SMALL_STATE(408)] = 24583, + [SMALL_STATE(409)] = 24676, + [SMALL_STATE(410)] = 24769, + [SMALL_STATE(411)] = 24862, + [SMALL_STATE(412)] = 24955, + [SMALL_STATE(413)] = 25048, + [SMALL_STATE(414)] = 25141, + [SMALL_STATE(415)] = 25234, + [SMALL_STATE(416)] = 25327, + [SMALL_STATE(417)] = 25420, + [SMALL_STATE(418)] = 25513, + [SMALL_STATE(419)] = 25606, + [SMALL_STATE(420)] = 25699, + [SMALL_STATE(421)] = 25792, + [SMALL_STATE(422)] = 25885, + [SMALL_STATE(423)] = 25978, + [SMALL_STATE(424)] = 26071, + [SMALL_STATE(425)] = 26164, + [SMALL_STATE(426)] = 26257, + [SMALL_STATE(427)] = 26350, + [SMALL_STATE(428)] = 26443, + [SMALL_STATE(429)] = 26536, + [SMALL_STATE(430)] = 26629, + [SMALL_STATE(431)] = 26722, + [SMALL_STATE(432)] = 26815, + [SMALL_STATE(433)] = 26908, + [SMALL_STATE(434)] = 27001, + [SMALL_STATE(435)] = 27094, + [SMALL_STATE(436)] = 27187, + [SMALL_STATE(437)] = 27280, + [SMALL_STATE(438)] = 27353, + [SMALL_STATE(439)] = 27446, + [SMALL_STATE(440)] = 27504, + [SMALL_STATE(441)] = 27566, + [SMALL_STATE(442)] = 27624, + [SMALL_STATE(443)] = 27682, + [SMALL_STATE(444)] = 27740, + [SMALL_STATE(445)] = 27802, + [SMALL_STATE(446)] = 27864, + [SMALL_STATE(447)] = 27922, + [SMALL_STATE(448)] = 27980, + [SMALL_STATE(449)] = 28038, + [SMALL_STATE(450)] = 28096, + [SMALL_STATE(451)] = 28154, + [SMALL_STATE(452)] = 28212, + [SMALL_STATE(453)] = 28282, + [SMALL_STATE(454)] = 28352, + [SMALL_STATE(455)] = 28410, + [SMALL_STATE(456)] = 28468, + [SMALL_STATE(457)] = 28526, + [SMALL_STATE(458)] = 28584, + [SMALL_STATE(459)] = 28642, + [SMALL_STATE(460)] = 28700, + [SMALL_STATE(461)] = 28758, + [SMALL_STATE(462)] = 28820, + [SMALL_STATE(463)] = 28878, + [SMALL_STATE(464)] = 28936, + [SMALL_STATE(465)] = 28994, + [SMALL_STATE(466)] = 29089, + [SMALL_STATE(467)] = 29182, + [SMALL_STATE(468)] = 29239, + [SMALL_STATE(469)] = 29300, + [SMALL_STATE(470)] = 29367, + [SMALL_STATE(471)] = 29430, + [SMALL_STATE(472)] = 29523, + [SMALL_STATE(473)] = 29580, + [SMALL_STATE(474)] = 29637, + [SMALL_STATE(475)] = 29698, + [SMALL_STATE(476)] = 29759, + [SMALL_STATE(477)] = 29820, + [SMALL_STATE(478)] = 29881, + [SMALL_STATE(479)] = 29942, + [SMALL_STATE(480)] = 29999, + [SMALL_STATE(481)] = 30060, + [SMALL_STATE(482)] = 30121, + [SMALL_STATE(483)] = 30182, + [SMALL_STATE(484)] = 30243, + [SMALL_STATE(485)] = 30304, + [SMALL_STATE(486)] = 30365, + [SMALL_STATE(487)] = 30426, + [SMALL_STATE(488)] = 30483, + [SMALL_STATE(489)] = 30544, + [SMALL_STATE(490)] = 30601, + [SMALL_STATE(491)] = 30662, + [SMALL_STATE(492)] = 30723, + [SMALL_STATE(493)] = 30779, + [SMALL_STATE(494)] = 30835, + [SMALL_STATE(495)] = 30899, + [SMALL_STATE(496)] = 30991, + [SMALL_STATE(497)] = 31047, + [SMALL_STATE(498)] = 31103, + [SMALL_STATE(499)] = 31159, + [SMALL_STATE(500)] = 31223, + [SMALL_STATE(501)] = 31279, + [SMALL_STATE(502)] = 31371, + [SMALL_STATE(503)] = 31427, + [SMALL_STATE(504)] = 31483, + [SMALL_STATE(505)] = 31539, + [SMALL_STATE(506)] = 31595, + [SMALL_STATE(507)] = 31687, + [SMALL_STATE(508)] = 31743, + [SMALL_STATE(509)] = 31799, + [SMALL_STATE(510)] = 31891, + [SMALL_STATE(511)] = 31983, + [SMALL_STATE(512)] = 32039, + [SMALL_STATE(513)] = 32095, + [SMALL_STATE(514)] = 32187, + [SMALL_STATE(515)] = 32242, + [SMALL_STATE(516)] = 32303, + [SMALL_STATE(517)] = 32358, + [SMALL_STATE(518)] = 32413, + [SMALL_STATE(519)] = 32468, + [SMALL_STATE(520)] = 32523, + [SMALL_STATE(521)] = 32578, + [SMALL_STATE(522)] = 32633, + [SMALL_STATE(523)] = 32688, + [SMALL_STATE(524)] = 32743, + [SMALL_STATE(525)] = 32804, + [SMALL_STATE(526)] = 32859, + [SMALL_STATE(527)] = 32914, + [SMALL_STATE(528)] = 33003, + [SMALL_STATE(529)] = 33058, + [SMALL_STATE(530)] = 33113, + [SMALL_STATE(531)] = 33168, + [SMALL_STATE(532)] = 33223, + [SMALL_STATE(533)] = 33278, + [SMALL_STATE(534)] = 33333, + [SMALL_STATE(535)] = 33388, + [SMALL_STATE(536)] = 33443, + [SMALL_STATE(537)] = 33498, + [SMALL_STATE(538)] = 33553, + [SMALL_STATE(539)] = 33608, + [SMALL_STATE(540)] = 33663, + [SMALL_STATE(541)] = 33718, + [SMALL_STATE(542)] = 33773, + [SMALL_STATE(543)] = 33828, + [SMALL_STATE(544)] = 33883, + [SMALL_STATE(545)] = 33938, + [SMALL_STATE(546)] = 33993, + [SMALL_STATE(547)] = 34048, + [SMALL_STATE(548)] = 34103, + [SMALL_STATE(549)] = 34158, + [SMALL_STATE(550)] = 34213, + [SMALL_STATE(551)] = 34268, + [SMALL_STATE(552)] = 34323, + [SMALL_STATE(553)] = 34378, + [SMALL_STATE(554)] = 34433, + [SMALL_STATE(555)] = 34488, + [SMALL_STATE(556)] = 34543, + [SMALL_STATE(557)] = 34598, + [SMALL_STATE(558)] = 34653, + [SMALL_STATE(559)] = 34708, + [SMALL_STATE(560)] = 34763, + [SMALL_STATE(561)] = 34818, + [SMALL_STATE(562)] = 34873, + [SMALL_STATE(563)] = 34928, + [SMALL_STATE(564)] = 34983, + [SMALL_STATE(565)] = 35038, + [SMALL_STATE(566)] = 35093, + [SMALL_STATE(567)] = 35148, + [SMALL_STATE(568)] = 35203, + [SMALL_STATE(569)] = 35258, + [SMALL_STATE(570)] = 35313, + [SMALL_STATE(571)] = 35368, + [SMALL_STATE(572)] = 35423, + [SMALL_STATE(573)] = 35478, + [SMALL_STATE(574)] = 35533, + [SMALL_STATE(575)] = 35588, + [SMALL_STATE(576)] = 35643, + [SMALL_STATE(577)] = 35698, + [SMALL_STATE(578)] = 35753, + [SMALL_STATE(579)] = 35808, + [SMALL_STATE(580)] = 35863, + [SMALL_STATE(581)] = 35918, + [SMALL_STATE(582)] = 35973, + [SMALL_STATE(583)] = 36028, + [SMALL_STATE(584)] = 36083, + [SMALL_STATE(585)] = 36138, + [SMALL_STATE(586)] = 36193, + [SMALL_STATE(587)] = 36248, + [SMALL_STATE(588)] = 36303, + [SMALL_STATE(589)] = 36358, + [SMALL_STATE(590)] = 36447, + [SMALL_STATE(591)] = 36502, + [SMALL_STATE(592)] = 36557, + [SMALL_STATE(593)] = 36612, + [SMALL_STATE(594)] = 36667, + [SMALL_STATE(595)] = 36722, + [SMALL_STATE(596)] = 36777, + [SMALL_STATE(597)] = 36832, + [SMALL_STATE(598)] = 36887, + [SMALL_STATE(599)] = 36942, + [SMALL_STATE(600)] = 36997, + [SMALL_STATE(601)] = 37052, + [SMALL_STATE(602)] = 37107, + [SMALL_STATE(603)] = 37162, + [SMALL_STATE(604)] = 37217, + [SMALL_STATE(605)] = 37272, + [SMALL_STATE(606)] = 37327, + [SMALL_STATE(607)] = 37382, + [SMALL_STATE(608)] = 37437, + [SMALL_STATE(609)] = 37492, + [SMALL_STATE(610)] = 37547, + [SMALL_STATE(611)] = 37602, + [SMALL_STATE(612)] = 37657, + [SMALL_STATE(613)] = 37712, + [SMALL_STATE(614)] = 37767, + [SMALL_STATE(615)] = 37828, + [SMALL_STATE(616)] = 37883, + [SMALL_STATE(617)] = 37938, + [SMALL_STATE(618)] = 38000, + [SMALL_STATE(619)] = 38062, + [SMALL_STATE(620)] = 38145, + [SMALL_STATE(621)] = 38222, + [SMALL_STATE(622)] = 38299, + [SMALL_STATE(623)] = 38376, + [SMALL_STATE(624)] = 38453, + [SMALL_STATE(625)] = 38530, + [SMALL_STATE(626)] = 38607, + [SMALL_STATE(627)] = 38681, + [SMALL_STATE(628)] = 38735, + [SMALL_STATE(629)] = 38809, + [SMALL_STATE(630)] = 38883, + [SMALL_STATE(631)] = 38957, + [SMALL_STATE(632)] = 39031, + [SMALL_STATE(633)] = 39109, + [SMALL_STATE(634)] = 39183, + [SMALL_STATE(635)] = 39257, + [SMALL_STATE(636)] = 39331, + [SMALL_STATE(637)] = 39405, + [SMALL_STATE(638)] = 39479, + [SMALL_STATE(639)] = 39553, + [SMALL_STATE(640)] = 39631, + [SMALL_STATE(641)] = 39705, + [SMALL_STATE(642)] = 39779, + [SMALL_STATE(643)] = 39853, + [SMALL_STATE(644)] = 39927, + [SMALL_STATE(645)] = 40001, + [SMALL_STATE(646)] = 40075, + [SMALL_STATE(647)] = 40149, + [SMALL_STATE(648)] = 40223, + [SMALL_STATE(649)] = 40297, + [SMALL_STATE(650)] = 40371, + [SMALL_STATE(651)] = 40445, + [SMALL_STATE(652)] = 40519, + [SMALL_STATE(653)] = 40593, + [SMALL_STATE(654)] = 40667, + [SMALL_STATE(655)] = 40741, + [SMALL_STATE(656)] = 40815, + [SMALL_STATE(657)] = 40889, + [SMALL_STATE(658)] = 40963, + [SMALL_STATE(659)] = 41037, + [SMALL_STATE(660)] = 41111, + [SMALL_STATE(661)] = 41185, + [SMALL_STATE(662)] = 41259, + [SMALL_STATE(663)] = 41333, + [SMALL_STATE(664)] = 41407, + [SMALL_STATE(665)] = 41481, + [SMALL_STATE(666)] = 41555, + [SMALL_STATE(667)] = 41629, + [SMALL_STATE(668)] = 41703, + [SMALL_STATE(669)] = 41777, + [SMALL_STATE(670)] = 41851, + [SMALL_STATE(671)] = 41925, + [SMALL_STATE(672)] = 41999, + [SMALL_STATE(673)] = 42073, + [SMALL_STATE(674)] = 42147, + [SMALL_STATE(675)] = 42221, + [SMALL_STATE(676)] = 42295, + [SMALL_STATE(677)] = 42369, + [SMALL_STATE(678)] = 42443, + [SMALL_STATE(679)] = 42517, + [SMALL_STATE(680)] = 42591, + [SMALL_STATE(681)] = 42665, + [SMALL_STATE(682)] = 42739, + [SMALL_STATE(683)] = 42813, + [SMALL_STATE(684)] = 42887, + [SMALL_STATE(685)] = 42961, + [SMALL_STATE(686)] = 43015, + [SMALL_STATE(687)] = 43089, + [SMALL_STATE(688)] = 43163, + [SMALL_STATE(689)] = 43237, + [SMALL_STATE(690)] = 43311, + [SMALL_STATE(691)] = 43365, + [SMALL_STATE(692)] = 43439, + [SMALL_STATE(693)] = 43513, + [SMALL_STATE(694)] = 43567, + [SMALL_STATE(695)] = 43621, + [SMALL_STATE(696)] = 43695, + [SMALL_STATE(697)] = 43769, + [SMALL_STATE(698)] = 43843, + [SMALL_STATE(699)] = 43897, + [SMALL_STATE(700)] = 43971, + [SMALL_STATE(701)] = 44019, + [SMALL_STATE(702)] = 44067, + [SMALL_STATE(703)] = 44115, + [SMALL_STATE(704)] = 44163, + [SMALL_STATE(705)] = 44244, + [SMALL_STATE(706)] = 44325, + [SMALL_STATE(707)] = 44372, + [SMALL_STATE(708)] = 44419, + [SMALL_STATE(709)] = 44466, + [SMALL_STATE(710)] = 44513, + [SMALL_STATE(711)] = 44560, + [SMALL_STATE(712)] = 44607, + [SMALL_STATE(713)] = 44654, + [SMALL_STATE(714)] = 44701, + [SMALL_STATE(715)] = 44748, + [SMALL_STATE(716)] = 44795, + [SMALL_STATE(717)] = 44842, + [SMALL_STATE(718)] = 44889, + [SMALL_STATE(719)] = 44936, + [SMALL_STATE(720)] = 44983, + [SMALL_STATE(721)] = 45030, + [SMALL_STATE(722)] = 45077, + [SMALL_STATE(723)] = 45124, + [SMALL_STATE(724)] = 45171, + [SMALL_STATE(725)] = 45218, + [SMALL_STATE(726)] = 45265, + [SMALL_STATE(727)] = 45312, + [SMALL_STATE(728)] = 45359, + [SMALL_STATE(729)] = 45406, + [SMALL_STATE(730)] = 45453, + [SMALL_STATE(731)] = 45500, + [SMALL_STATE(732)] = 45547, + [SMALL_STATE(733)] = 45594, + [SMALL_STATE(734)] = 45641, + [SMALL_STATE(735)] = 45688, + [SMALL_STATE(736)] = 45735, + [SMALL_STATE(737)] = 45782, + [SMALL_STATE(738)] = 45829, + [SMALL_STATE(739)] = 45876, + [SMALL_STATE(740)] = 45944, + [SMALL_STATE(741)] = 46014, + [SMALL_STATE(742)] = 46084, + [SMALL_STATE(743)] = 46152, + [SMALL_STATE(744)] = 46212, + [SMALL_STATE(745)] = 46268, + [SMALL_STATE(746)] = 46334, + [SMALL_STATE(747)] = 46398, + [SMALL_STATE(748)] = 46454, + [SMALL_STATE(749)] = 46510, + [SMALL_STATE(750)] = 46560, + [SMALL_STATE(751)] = 46610, + [SMALL_STATE(752)] = 46666, + [SMALL_STATE(753)] = 46728, + [SMALL_STATE(754)] = 46778, + [SMALL_STATE(755)] = 46828, + [SMALL_STATE(756)] = 46884, + [SMALL_STATE(757)] = 46946, + [SMALL_STATE(758)] = 47016, + [SMALL_STATE(759)] = 47076, + [SMALL_STATE(760)] = 47132, + [SMALL_STATE(761)] = 47198, + [SMALL_STATE(762)] = 47262, + [SMALL_STATE(763)] = 47332, + [SMALL_STATE(764)] = 47402, + [SMALL_STATE(765)] = 47472, + [SMALL_STATE(766)] = 47528, + [SMALL_STATE(767)] = 47584, + [SMALL_STATE(768)] = 47629, + [SMALL_STATE(769)] = 47678, + [SMALL_STATE(770)] = 47727, + [SMALL_STATE(771)] = 47776, + [SMALL_STATE(772)] = 47825, + [SMALL_STATE(773)] = 47874, + [SMALL_STATE(774)] = 47953, + [SMALL_STATE(775)] = 48000, + [SMALL_STATE(776)] = 48077, + [SMALL_STATE(777)] = 48126, + [SMALL_STATE(778)] = 48175, + [SMALL_STATE(779)] = 48222, + [SMALL_STATE(780)] = 48271, + [SMALL_STATE(781)] = 48350, + [SMALL_STATE(782)] = 48399, + [SMALL_STATE(783)] = 48448, + [SMALL_STATE(784)] = 48493, + [SMALL_STATE(785)] = 48542, + [SMALL_STATE(786)] = 48591, + [SMALL_STATE(787)] = 48638, + [SMALL_STATE(788)] = 48685, + [SMALL_STATE(789)] = 48753, + [SMALL_STATE(790)] = 48829, + [SMALL_STATE(791)] = 48877, + [SMALL_STATE(792)] = 48925, + [SMALL_STATE(793)] = 48969, + [SMALL_STATE(794)] = 49013, + [SMALL_STATE(795)] = 49057, + [SMALL_STATE(796)] = 49101, + [SMALL_STATE(797)] = 49155, + [SMALL_STATE(798)] = 49215, + [SMALL_STATE(799)] = 49283, + [SMALL_STATE(800)] = 49337, + [SMALL_STATE(801)] = 49405, + [SMALL_STATE(802)] = 49471, + [SMALL_STATE(803)] = 49529, + [SMALL_STATE(804)] = 49583, + [SMALL_STATE(805)] = 49637, + [SMALL_STATE(806)] = 49691, + [SMALL_STATE(807)] = 49755, + [SMALL_STATE(808)] = 49817, + [SMALL_STATE(809)] = 49871, + [SMALL_STATE(810)] = 49931, + [SMALL_STATE(811)] = 49999, + [SMALL_STATE(812)] = 50065, + [SMALL_STATE(813)] = 50123, + [SMALL_STATE(814)] = 50177, + [SMALL_STATE(815)] = 50241, + [SMALL_STATE(816)] = 50303, + [SMALL_STATE(817)] = 50371, + [SMALL_STATE(818)] = 50439, + [SMALL_STATE(819)] = 50493, + [SMALL_STATE(820)] = 50547, + [SMALL_STATE(821)] = 50607, + [SMALL_STATE(822)] = 50675, + [SMALL_STATE(823)] = 50741, + [SMALL_STATE(824)] = 50799, + [SMALL_STATE(825)] = 50853, + [SMALL_STATE(826)] = 50917, + [SMALL_STATE(827)] = 50979, + [SMALL_STATE(828)] = 51047, + [SMALL_STATE(829)] = 51115, + [SMALL_STATE(830)] = 51169, + [SMALL_STATE(831)] = 51223, + [SMALL_STATE(832)] = 51268, + [SMALL_STATE(833)] = 51313, + [SMALL_STATE(834)] = 51366, + [SMALL_STATE(835)] = 51409, + [SMALL_STATE(836)] = 51454, + [SMALL_STATE(837)] = 51499, + [SMALL_STATE(838)] = 51544, + [SMALL_STATE(839)] = 51589, + [SMALL_STATE(840)] = 51642, + [SMALL_STATE(841)] = 51685, + [SMALL_STATE(842)] = 51766, + [SMALL_STATE(843)] = 51811, + [SMALL_STATE(844)] = 51854, + [SMALL_STATE(845)] = 51907, + [SMALL_STATE(846)] = 51966, + [SMALL_STATE(847)] = 52009, + [SMALL_STATE(848)] = 52052, + [SMALL_STATE(849)] = 52095, + [SMALL_STATE(850)] = 52142, + [SMALL_STATE(851)] = 52189, + [SMALL_STATE(852)] = 52234, + [SMALL_STATE(853)] = 52277, + [SMALL_STATE(854)] = 52320, + [SMALL_STATE(855)] = 52365, + [SMALL_STATE(856)] = 52410, + [SMALL_STATE(857)] = 52477, + [SMALL_STATE(858)] = 52524, + [SMALL_STATE(859)] = 52571, + [SMALL_STATE(860)] = 52618, + [SMALL_STATE(861)] = 52663, + [SMALL_STATE(862)] = 52744, + [SMALL_STATE(863)] = 52809, + [SMALL_STATE(864)] = 52866, + [SMALL_STATE(865)] = 52919, + [SMALL_STATE(866)] = 52982, + [SMALL_STATE(867)] = 53043, + [SMALL_STATE(868)] = 53110, + [SMALL_STATE(869)] = 53177, + [SMALL_STATE(870)] = 53258, + [SMALL_STATE(871)] = 53339, + [SMALL_STATE(872)] = 53384, + [SMALL_STATE(873)] = 53431, + [SMALL_STATE(874)] = 53473, + [SMALL_STATE(875)] = 53515, + [SMALL_STATE(876)] = 53557, + [SMALL_STATE(877)] = 53599, + [SMALL_STATE(878)] = 53641, + [SMALL_STATE(879)] = 53683, + [SMALL_STATE(880)] = 53725, + [SMALL_STATE(881)] = 53767, + [SMALL_STATE(882)] = 53809, + [SMALL_STATE(883)] = 53851, + [SMALL_STATE(884)] = 53893, + [SMALL_STATE(885)] = 53935, + [SMALL_STATE(886)] = 53977, + [SMALL_STATE(887)] = 54019, + [SMALL_STATE(888)] = 54061, + [SMALL_STATE(889)] = 54103, + [SMALL_STATE(890)] = 54145, + [SMALL_STATE(891)] = 54187, + [SMALL_STATE(892)] = 54229, + [SMALL_STATE(893)] = 54271, + [SMALL_STATE(894)] = 54313, + [SMALL_STATE(895)] = 54355, + [SMALL_STATE(896)] = 54397, + [SMALL_STATE(897)] = 54477, + [SMALL_STATE(898)] = 54555, + [SMALL_STATE(899)] = 54597, + [SMALL_STATE(900)] = 54639, + [SMALL_STATE(901)] = 54681, + [SMALL_STATE(902)] = 54723, + [SMALL_STATE(903)] = 54765, + [SMALL_STATE(904)] = 54807, + [SMALL_STATE(905)] = 54849, + [SMALL_STATE(906)] = 54891, + [SMALL_STATE(907)] = 54933, + [SMALL_STATE(908)] = 54977, + [SMALL_STATE(909)] = 55019, + [SMALL_STATE(910)] = 55061, + [SMALL_STATE(911)] = 55103, + [SMALL_STATE(912)] = 55145, + [SMALL_STATE(913)] = 55187, + [SMALL_STATE(914)] = 55231, + [SMALL_STATE(915)] = 55275, + [SMALL_STATE(916)] = 55317, + [SMALL_STATE(917)] = 55359, + [SMALL_STATE(918)] = 55403, + [SMALL_STATE(919)] = 55445, + [SMALL_STATE(920)] = 55487, + [SMALL_STATE(921)] = 55529, + [SMALL_STATE(922)] = 55571, + [SMALL_STATE(923)] = 55613, + [SMALL_STATE(924)] = 55655, + [SMALL_STATE(925)] = 55699, + [SMALL_STATE(926)] = 55741, + [SMALL_STATE(927)] = 55783, + [SMALL_STATE(928)] = 55825, + [SMALL_STATE(929)] = 55867, + [SMALL_STATE(930)] = 55909, + [SMALL_STATE(931)] = 55951, + [SMALL_STATE(932)] = 56029, + [SMALL_STATE(933)] = 56071, + [SMALL_STATE(934)] = 56113, + [SMALL_STATE(935)] = 56191, + [SMALL_STATE(936)] = 56269, + [SMALL_STATE(937)] = 56311, + [SMALL_STATE(938)] = 56353, + [SMALL_STATE(939)] = 56395, + [SMALL_STATE(940)] = 56473, + [SMALL_STATE(941)] = 56515, + [SMALL_STATE(942)] = 56557, + [SMALL_STATE(943)] = 56599, + [SMALL_STATE(944)] = 56641, + [SMALL_STATE(945)] = 56683, + [SMALL_STATE(946)] = 56725, + [SMALL_STATE(947)] = 56767, + [SMALL_STATE(948)] = 56809, + [SMALL_STATE(949)] = 56851, + [SMALL_STATE(950)] = 56893, + [SMALL_STATE(951)] = 56935, + [SMALL_STATE(952)] = 56977, + [SMALL_STATE(953)] = 57018, + [SMALL_STATE(954)] = 57059, + [SMALL_STATE(955)] = 57100, + [SMALL_STATE(956)] = 57141, + [SMALL_STATE(957)] = 57182, + [SMALL_STATE(958)] = 57223, + [SMALL_STATE(959)] = 57264, + [SMALL_STATE(960)] = 57305, + [SMALL_STATE(961)] = 57346, + [SMALL_STATE(962)] = 57387, + [SMALL_STATE(963)] = 57428, + [SMALL_STATE(964)] = 57469, + [SMALL_STATE(965)] = 57510, + [SMALL_STATE(966)] = 57551, + [SMALL_STATE(967)] = 57592, + [SMALL_STATE(968)] = 57633, + [SMALL_STATE(969)] = 57674, + [SMALL_STATE(970)] = 57715, + [SMALL_STATE(971)] = 57756, + [SMALL_STATE(972)] = 57797, + [SMALL_STATE(973)] = 57838, + [SMALL_STATE(974)] = 57879, + [SMALL_STATE(975)] = 57920, + [SMALL_STATE(976)] = 57961, + [SMALL_STATE(977)] = 58002, + [SMALL_STATE(978)] = 58043, + [SMALL_STATE(979)] = 58084, + [SMALL_STATE(980)] = 58125, + [SMALL_STATE(981)] = 58166, + [SMALL_STATE(982)] = 58241, + [SMALL_STATE(983)] = 58320, + [SMALL_STATE(984)] = 58399, + [SMALL_STATE(985)] = 58444, + [SMALL_STATE(986)] = 58485, + [SMALL_STATE(987)] = 58530, + [SMALL_STATE(988)] = 58609, + [SMALL_STATE(989)] = 58650, + [SMALL_STATE(990)] = 58691, + [SMALL_STATE(991)] = 58732, + [SMALL_STATE(992)] = 58805, + [SMALL_STATE(993)] = 58875, + [SMALL_STATE(994)] = 58945, + [SMALL_STATE(995)] = 59007, + [SMALL_STATE(996)] = 59069, + [SMALL_STATE(997)] = 59108, + [SMALL_STATE(998)] = 59147, + [SMALL_STATE(999)] = 59186, + [SMALL_STATE(1000)] = 59225, + [SMALL_STATE(1001)] = 59255, + [SMALL_STATE(1002)] = 59292, + [SMALL_STATE(1003)] = 59317, + [SMALL_STATE(1004)] = 59354, + [SMALL_STATE(1005)] = 59391, + [SMALL_STATE(1006)] = 59416, + [SMALL_STATE(1007)] = 59469, + [SMALL_STATE(1008)] = 59522, + [SMALL_STATE(1009)] = 59559, + [SMALL_STATE(1010)] = 59584, + [SMALL_STATE(1011)] = 59637, + [SMALL_STATE(1012)] = 59666, + [SMALL_STATE(1013)] = 59691, + [SMALL_STATE(1014)] = 59720, + [SMALL_STATE(1015)] = 59755, + [SMALL_STATE(1016)] = 59790, + [SMALL_STATE(1017)] = 59824, + [SMALL_STATE(1018)] = 59870, + [SMALL_STATE(1019)] = 59898, + [SMALL_STATE(1020)] = 59932, + [SMALL_STATE(1021)] = 59963, + [SMALL_STATE(1022)] = 60006, + [SMALL_STATE(1023)] = 60049, + [SMALL_STATE(1024)] = 60092, + [SMALL_STATE(1025)] = 60135, + [SMALL_STATE(1026)] = 60178, + [SMALL_STATE(1027)] = 60221, + [SMALL_STATE(1028)] = 60264, + [SMALL_STATE(1029)] = 60304, + [SMALL_STATE(1030)] = 60348, + [SMALL_STATE(1031)] = 60373, + [SMALL_STATE(1032)] = 60410, + [SMALL_STATE(1033)] = 60447, + [SMALL_STATE(1034)] = 60484, + [SMALL_STATE(1035)] = 60521, + [SMALL_STATE(1036)] = 60555, + [SMALL_STATE(1037)] = 60589, + [SMALL_STATE(1038)] = 60610, + [SMALL_STATE(1039)] = 60631, + [SMALL_STATE(1040)] = 60653, + [SMALL_STATE(1041)] = 60684, + [SMALL_STATE(1042)] = 60721, + [SMALL_STATE(1043)] = 60744, + [SMALL_STATE(1044)] = 60765, + [SMALL_STATE(1045)] = 60796, + [SMALL_STATE(1046)] = 60827, + [SMALL_STATE(1047)] = 60858, + [SMALL_STATE(1048)] = 60895, + [SMALL_STATE(1049)] = 60932, + [SMALL_STATE(1050)] = 60963, + [SMALL_STATE(1051)] = 60994, + [SMALL_STATE(1052)] = 61025, + [SMALL_STATE(1053)] = 61056, + [SMALL_STATE(1054)] = 61073, + [SMALL_STATE(1055)] = 61104, + [SMALL_STATE(1056)] = 61135, + [SMALL_STATE(1057)] = 61166, + [SMALL_STATE(1058)] = 61197, + [SMALL_STATE(1059)] = 61228, + [SMALL_STATE(1060)] = 61259, + [SMALL_STATE(1061)] = 61290, + [SMALL_STATE(1062)] = 61321, + [SMALL_STATE(1063)] = 61352, + [SMALL_STATE(1064)] = 61389, + [SMALL_STATE(1065)] = 61412, + [SMALL_STATE(1066)] = 61443, + [SMALL_STATE(1067)] = 61474, + [SMALL_STATE(1068)] = 61511, + [SMALL_STATE(1069)] = 61532, + [SMALL_STATE(1070)] = 61552, + [SMALL_STATE(1071)] = 61586, + [SMALL_STATE(1072)] = 61606, + [SMALL_STATE(1073)] = 61630, + [SMALL_STATE(1074)] = 61652, + [SMALL_STATE(1075)] = 61686, + [SMALL_STATE(1076)] = 61720, + [SMALL_STATE(1077)] = 61742, + [SMALL_STATE(1078)] = 61766, + [SMALL_STATE(1079)] = 61784, + [SMALL_STATE(1080)] = 61802, + [SMALL_STATE(1081)] = 61836, + [SMALL_STATE(1082)] = 61856, + [SMALL_STATE(1083)] = 61880, + [SMALL_STATE(1084)] = 61902, + [SMALL_STATE(1085)] = 61936, + [SMALL_STATE(1086)] = 61958, + [SMALL_STATE(1087)] = 61992, + [SMALL_STATE(1088)] = 62026, + [SMALL_STATE(1089)] = 62046, + [SMALL_STATE(1090)] = 62068, + [SMALL_STATE(1091)] = 62102, + [SMALL_STATE(1092)] = 62124, + [SMALL_STATE(1093)] = 62158, + [SMALL_STATE(1094)] = 62192, + [SMALL_STATE(1095)] = 62226, + [SMALL_STATE(1096)] = 62260, + [SMALL_STATE(1097)] = 62278, + [SMALL_STATE(1098)] = 62297, + [SMALL_STATE(1099)] = 62318, + [SMALL_STATE(1100)] = 62337, + [SMALL_STATE(1101)] = 62360, + [SMALL_STATE(1102)] = 62379, + [SMALL_STATE(1103)] = 62398, + [SMALL_STATE(1104)] = 62423, + [SMALL_STATE(1105)] = 62442, + [SMALL_STATE(1106)] = 62461, + [SMALL_STATE(1107)] = 62484, + [SMALL_STATE(1108)] = 62509, + [SMALL_STATE(1109)] = 62532, + [SMALL_STATE(1110)] = 62553, + [SMALL_STATE(1111)] = 62567, + [SMALL_STATE(1112)] = 62581, + [SMALL_STATE(1113)] = 62599, + [SMALL_STATE(1114)] = 62617, + [SMALL_STATE(1115)] = 62631, + [SMALL_STATE(1116)] = 62649, + [SMALL_STATE(1117)] = 62663, + [SMALL_STATE(1118)] = 62679, + [SMALL_STATE(1119)] = 62699, + [SMALL_STATE(1120)] = 62721, + [SMALL_STATE(1121)] = 62741, + [SMALL_STATE(1122)] = 62761, + [SMALL_STATE(1123)] = 62779, + [SMALL_STATE(1124)] = 62797, + [SMALL_STATE(1125)] = 62811, + [SMALL_STATE(1126)] = 62831, + [SMALL_STATE(1127)] = 62845, + [SMALL_STATE(1128)] = 62859, + [SMALL_STATE(1129)] = 62873, + [SMALL_STATE(1130)] = 62887, + [SMALL_STATE(1131)] = 62901, + [SMALL_STATE(1132)] = 62915, + [SMALL_STATE(1133)] = 62929, + [SMALL_STATE(1134)] = 62943, + [SMALL_STATE(1135)] = 62957, + [SMALL_STATE(1136)] = 62975, + [SMALL_STATE(1137)] = 62989, + [SMALL_STATE(1138)] = 63015, + [SMALL_STATE(1139)] = 63029, + [SMALL_STATE(1140)] = 63049, + [SMALL_STATE(1141)] = 63063, + [SMALL_STATE(1142)] = 63077, + [SMALL_STATE(1143)] = 63091, + [SMALL_STATE(1144)] = 63105, + [SMALL_STATE(1145)] = 63125, + [SMALL_STATE(1146)] = 63139, + [SMALL_STATE(1147)] = 63163, + [SMALL_STATE(1148)] = 63179, + [SMALL_STATE(1149)] = 63193, + [SMALL_STATE(1150)] = 63215, + [SMALL_STATE(1151)] = 63229, + [SMALL_STATE(1152)] = 63243, + [SMALL_STATE(1153)] = 63261, + [SMALL_STATE(1154)] = 63279, + [SMALL_STATE(1155)] = 63299, + [SMALL_STATE(1156)] = 63317, + [SMALL_STATE(1157)] = 63333, + [SMALL_STATE(1158)] = 63351, + [SMALL_STATE(1159)] = 63365, + [SMALL_STATE(1160)] = 63385, + [SMALL_STATE(1161)] = 63407, + [SMALL_STATE(1162)] = 63427, + [SMALL_STATE(1163)] = 63447, + [SMALL_STATE(1164)] = 63467, + [SMALL_STATE(1165)] = 63485, + [SMALL_STATE(1166)] = 63501, + [SMALL_STATE(1167)] = 63521, + [SMALL_STATE(1168)] = 63539, + [SMALL_STATE(1169)] = 63559, + [SMALL_STATE(1170)] = 63579, + [SMALL_STATE(1171)] = 63599, + [SMALL_STATE(1172)] = 63617, + [SMALL_STATE(1173)] = 63641, + [SMALL_STATE(1174)] = 63659, + [SMALL_STATE(1175)] = 63677, + [SMALL_STATE(1176)] = 63701, + [SMALL_STATE(1177)] = 63715, + [SMALL_STATE(1178)] = 63740, + [SMALL_STATE(1179)] = 63753, + [SMALL_STATE(1180)] = 63772, + [SMALL_STATE(1181)] = 63797, + [SMALL_STATE(1182)] = 63820, + [SMALL_STATE(1183)] = 63839, + [SMALL_STATE(1184)] = 63860, + [SMALL_STATE(1185)] = 63885, + [SMALL_STATE(1186)] = 63910, + [SMALL_STATE(1187)] = 63935, + [SMALL_STATE(1188)] = 63960, + [SMALL_STATE(1189)] = 63979, + [SMALL_STATE(1190)] = 63996, + [SMALL_STATE(1191)] = 64011, + [SMALL_STATE(1192)] = 64034, + [SMALL_STATE(1193)] = 64055, + [SMALL_STATE(1194)] = 64080, + [SMALL_STATE(1195)] = 64105, + [SMALL_STATE(1196)] = 64126, + [SMALL_STATE(1197)] = 64151, + [SMALL_STATE(1198)] = 64170, + [SMALL_STATE(1199)] = 64183, + [SMALL_STATE(1200)] = 64202, + [SMALL_STATE(1201)] = 64221, + [SMALL_STATE(1202)] = 64238, + [SMALL_STATE(1203)] = 64263, + [SMALL_STATE(1204)] = 64288, + [SMALL_STATE(1205)] = 64313, + [SMALL_STATE(1206)] = 64326, + [SMALL_STATE(1207)] = 64351, + [SMALL_STATE(1208)] = 64376, + [SMALL_STATE(1209)] = 64401, + [SMALL_STATE(1210)] = 64426, + [SMALL_STATE(1211)] = 64449, + [SMALL_STATE(1212)] = 64474, + [SMALL_STATE(1213)] = 64499, + [SMALL_STATE(1214)] = 64522, + [SMALL_STATE(1215)] = 64539, + [SMALL_STATE(1216)] = 64560, + [SMALL_STATE(1217)] = 64581, + [SMALL_STATE(1218)] = 64606, + [SMALL_STATE(1219)] = 64631, + [SMALL_STATE(1220)] = 64650, + [SMALL_STATE(1221)] = 64669, + [SMALL_STATE(1222)] = 64688, + [SMALL_STATE(1223)] = 64701, + [SMALL_STATE(1224)] = 64724, + [SMALL_STATE(1225)] = 64743, + [SMALL_STATE(1226)] = 64766, + [SMALL_STATE(1227)] = 64791, + [SMALL_STATE(1228)] = 64816, + [SMALL_STATE(1229)] = 64841, + [SMALL_STATE(1230)] = 64866, + [SMALL_STATE(1231)] = 64891, + [SMALL_STATE(1232)] = 64910, + [SMALL_STATE(1233)] = 64935, + [SMALL_STATE(1234)] = 64948, + [SMALL_STATE(1235)] = 64967, + [SMALL_STATE(1236)] = 64990, + [SMALL_STATE(1237)] = 65015, + [SMALL_STATE(1238)] = 65028, + [SMALL_STATE(1239)] = 65047, + [SMALL_STATE(1240)] = 65070, + [SMALL_STATE(1241)] = 65085, + [SMALL_STATE(1242)] = 65108, + [SMALL_STATE(1243)] = 65124, + [SMALL_STATE(1244)] = 65140, + [SMALL_STATE(1245)] = 65160, + [SMALL_STATE(1246)] = 65176, + [SMALL_STATE(1247)] = 65196, + [SMALL_STATE(1248)] = 65214, + [SMALL_STATE(1249)] = 65228, + [SMALL_STATE(1250)] = 65244, + [SMALL_STATE(1251)] = 65266, + [SMALL_STATE(1252)] = 65282, + [SMALL_STATE(1253)] = 65296, + [SMALL_STATE(1254)] = 65318, + [SMALL_STATE(1255)] = 65338, + [SMALL_STATE(1256)] = 65356, + [SMALL_STATE(1257)] = 65372, + [SMALL_STATE(1258)] = 65388, + [SMALL_STATE(1259)] = 65410, + [SMALL_STATE(1260)] = 65424, + [SMALL_STATE(1261)] = 65438, + [SMALL_STATE(1262)] = 65456, + [SMALL_STATE(1263)] = 65472, + [SMALL_STATE(1264)] = 65484, + [SMALL_STATE(1265)] = 65504, + [SMALL_STATE(1266)] = 65526, + [SMALL_STATE(1267)] = 65544, + [SMALL_STATE(1268)] = 65562, + [SMALL_STATE(1269)] = 65580, + [SMALL_STATE(1270)] = 65600, + [SMALL_STATE(1271)] = 65616, + [SMALL_STATE(1272)] = 65634, + [SMALL_STATE(1273)] = 65650, + [SMALL_STATE(1274)] = 65666, + [SMALL_STATE(1275)] = 65682, + [SMALL_STATE(1276)] = 65696, + [SMALL_STATE(1277)] = 65718, + [SMALL_STATE(1278)] = 65740, + [SMALL_STATE(1279)] = 65758, + [SMALL_STATE(1280)] = 65780, + [SMALL_STATE(1281)] = 65796, + [SMALL_STATE(1282)] = 65810, + [SMALL_STATE(1283)] = 65822, + [SMALL_STATE(1284)] = 65839, + [SMALL_STATE(1285)] = 65856, + [SMALL_STATE(1286)] = 65875, + [SMALL_STATE(1287)] = 65890, + [SMALL_STATE(1288)] = 65909, + [SMALL_STATE(1289)] = 65924, + [SMALL_STATE(1290)] = 65943, + [SMALL_STATE(1291)] = 65960, + [SMALL_STATE(1292)] = 65971, + [SMALL_STATE(1293)] = 65988, + [SMALL_STATE(1294)] = 65999, + [SMALL_STATE(1295)] = 66014, + [SMALL_STATE(1296)] = 66031, + [SMALL_STATE(1297)] = 66050, + [SMALL_STATE(1298)] = 66067, + [SMALL_STATE(1299)] = 66084, + [SMALL_STATE(1300)] = 66099, + [SMALL_STATE(1301)] = 66116, + [SMALL_STATE(1302)] = 66127, + [SMALL_STATE(1303)] = 66144, + [SMALL_STATE(1304)] = 66161, + [SMALL_STATE(1305)] = 66178, + [SMALL_STATE(1306)] = 66197, + [SMALL_STATE(1307)] = 66216, + [SMALL_STATE(1308)] = 66227, + [SMALL_STATE(1309)] = 66242, + [SMALL_STATE(1310)] = 66257, + [SMALL_STATE(1311)] = 66272, + [SMALL_STATE(1312)] = 66287, + [SMALL_STATE(1313)] = 66298, + [SMALL_STATE(1314)] = 66315, + [SMALL_STATE(1315)] = 66334, + [SMALL_STATE(1316)] = 66353, + [SMALL_STATE(1317)] = 66370, + [SMALL_STATE(1318)] = 66387, + [SMALL_STATE(1319)] = 66404, + [SMALL_STATE(1320)] = 66421, + [SMALL_STATE(1321)] = 66438, + [SMALL_STATE(1322)] = 66455, + [SMALL_STATE(1323)] = 66471, + [SMALL_STATE(1324)] = 66485, + [SMALL_STATE(1325)] = 66499, + [SMALL_STATE(1326)] = 66515, + [SMALL_STATE(1327)] = 66531, + [SMALL_STATE(1328)] = 66545, + [SMALL_STATE(1329)] = 66561, + [SMALL_STATE(1330)] = 66573, + [SMALL_STATE(1331)] = 66589, + [SMALL_STATE(1332)] = 66605, + [SMALL_STATE(1333)] = 66619, + [SMALL_STATE(1334)] = 66631, + [SMALL_STATE(1335)] = 66645, + [SMALL_STATE(1336)] = 66659, + [SMALL_STATE(1337)] = 66673, + [SMALL_STATE(1338)] = 66689, + [SMALL_STATE(1339)] = 66705, + [SMALL_STATE(1340)] = 66719, + [SMALL_STATE(1341)] = 66733, + [SMALL_STATE(1342)] = 66749, + [SMALL_STATE(1343)] = 66765, + [SMALL_STATE(1344)] = 66779, + [SMALL_STATE(1345)] = 66789, + [SMALL_STATE(1346)] = 66805, + [SMALL_STATE(1347)] = 66821, + [SMALL_STATE(1348)] = 66837, + [SMALL_STATE(1349)] = 66851, + [SMALL_STATE(1350)] = 66861, + [SMALL_STATE(1351)] = 66877, + [SMALL_STATE(1352)] = 66893, + [SMALL_STATE(1353)] = 66907, + [SMALL_STATE(1354)] = 66923, + [SMALL_STATE(1355)] = 66933, + [SMALL_STATE(1356)] = 66947, + [SMALL_STATE(1357)] = 66963, + [SMALL_STATE(1358)] = 66979, + [SMALL_STATE(1359)] = 66989, + [SMALL_STATE(1360)] = 67005, + [SMALL_STATE(1361)] = 67019, + [SMALL_STATE(1362)] = 67035, + [SMALL_STATE(1363)] = 67051, + [SMALL_STATE(1364)] = 67067, + [SMALL_STATE(1365)] = 67081, + [SMALL_STATE(1366)] = 67097, + [SMALL_STATE(1367)] = 67111, + [SMALL_STATE(1368)] = 67127, + [SMALL_STATE(1369)] = 67141, + [SMALL_STATE(1370)] = 67155, + [SMALL_STATE(1371)] = 67171, + [SMALL_STATE(1372)] = 67187, + [SMALL_STATE(1373)] = 67201, + [SMALL_STATE(1374)] = 67215, + [SMALL_STATE(1375)] = 67229, + [SMALL_STATE(1376)] = 67243, + [SMALL_STATE(1377)] = 67259, + [SMALL_STATE(1378)] = 67275, + [SMALL_STATE(1379)] = 67291, + [SMALL_STATE(1380)] = 67305, + [SMALL_STATE(1381)] = 67319, + [SMALL_STATE(1382)] = 67335, + [SMALL_STATE(1383)] = 67349, + [SMALL_STATE(1384)] = 67363, + [SMALL_STATE(1385)] = 67379, + [SMALL_STATE(1386)] = 67395, + [SMALL_STATE(1387)] = 67411, + [SMALL_STATE(1388)] = 67427, + [SMALL_STATE(1389)] = 67441, + [SMALL_STATE(1390)] = 67455, + [SMALL_STATE(1391)] = 67469, + [SMALL_STATE(1392)] = 67479, + [SMALL_STATE(1393)] = 67493, + [SMALL_STATE(1394)] = 67503, + [SMALL_STATE(1395)] = 67517, + [SMALL_STATE(1396)] = 67533, + [SMALL_STATE(1397)] = 67549, + [SMALL_STATE(1398)] = 67565, + [SMALL_STATE(1399)] = 67581, + [SMALL_STATE(1400)] = 67597, + [SMALL_STATE(1401)] = 67611, + [SMALL_STATE(1402)] = 67625, + [SMALL_STATE(1403)] = 67641, + [SMALL_STATE(1404)] = 67657, + [SMALL_STATE(1405)] = 67671, + [SMALL_STATE(1406)] = 67684, + [SMALL_STATE(1407)] = 67697, + [SMALL_STATE(1408)] = 67710, + [SMALL_STATE(1409)] = 67721, + [SMALL_STATE(1410)] = 67734, + [SMALL_STATE(1411)] = 67743, + [SMALL_STATE(1412)] = 67754, + [SMALL_STATE(1413)] = 67767, + [SMALL_STATE(1414)] = 67780, + [SMALL_STATE(1415)] = 67793, + [SMALL_STATE(1416)] = 67806, + [SMALL_STATE(1417)] = 67819, + [SMALL_STATE(1418)] = 67828, + [SMALL_STATE(1419)] = 67841, + [SMALL_STATE(1420)] = 67854, + [SMALL_STATE(1421)] = 67867, + [SMALL_STATE(1422)] = 67880, + [SMALL_STATE(1423)] = 67889, + [SMALL_STATE(1424)] = 67902, + [SMALL_STATE(1425)] = 67915, + [SMALL_STATE(1426)] = 67924, + [SMALL_STATE(1427)] = 67937, + [SMALL_STATE(1428)] = 67950, + [SMALL_STATE(1429)] = 67959, + [SMALL_STATE(1430)] = 67972, + [SMALL_STATE(1431)] = 67985, + [SMALL_STATE(1432)] = 67996, + [SMALL_STATE(1433)] = 68009, + [SMALL_STATE(1434)] = 68022, + [SMALL_STATE(1435)] = 68035, + [SMALL_STATE(1436)] = 68048, + [SMALL_STATE(1437)] = 68059, + [SMALL_STATE(1438)] = 68068, + [SMALL_STATE(1439)] = 68079, + [SMALL_STATE(1440)] = 68092, + [SMALL_STATE(1441)] = 68105, + [SMALL_STATE(1442)] = 68118, + [SMALL_STATE(1443)] = 68127, + [SMALL_STATE(1444)] = 68140, + [SMALL_STATE(1445)] = 68153, + [SMALL_STATE(1446)] = 68166, + [SMALL_STATE(1447)] = 68177, + [SMALL_STATE(1448)] = 68190, + [SMALL_STATE(1449)] = 68203, + [SMALL_STATE(1450)] = 68216, + [SMALL_STATE(1451)] = 68229, + [SMALL_STATE(1452)] = 68242, + [SMALL_STATE(1453)] = 68255, + [SMALL_STATE(1454)] = 68268, + [SMALL_STATE(1455)] = 68281, + [SMALL_STATE(1456)] = 68294, + [SMALL_STATE(1457)] = 68307, + [SMALL_STATE(1458)] = 68320, + [SMALL_STATE(1459)] = 68333, + [SMALL_STATE(1460)] = 68346, + [SMALL_STATE(1461)] = 68359, + [SMALL_STATE(1462)] = 68372, + [SMALL_STATE(1463)] = 68385, + [SMALL_STATE(1464)] = 68396, + [SMALL_STATE(1465)] = 68409, + [SMALL_STATE(1466)] = 68422, + [SMALL_STATE(1467)] = 68435, + [SMALL_STATE(1468)] = 68448, + [SMALL_STATE(1469)] = 68461, + [SMALL_STATE(1470)] = 68474, + [SMALL_STATE(1471)] = 68487, + [SMALL_STATE(1472)] = 68500, + [SMALL_STATE(1473)] = 68513, + [SMALL_STATE(1474)] = 68526, + [SMALL_STATE(1475)] = 68539, + [SMALL_STATE(1476)] = 68552, + [SMALL_STATE(1477)] = 68565, + [SMALL_STATE(1478)] = 68578, + [SMALL_STATE(1479)] = 68591, + [SMALL_STATE(1480)] = 68604, + [SMALL_STATE(1481)] = 68617, + [SMALL_STATE(1482)] = 68630, + [SMALL_STATE(1483)] = 68643, + [SMALL_STATE(1484)] = 68656, + [SMALL_STATE(1485)] = 68669, + [SMALL_STATE(1486)] = 68678, + [SMALL_STATE(1487)] = 68691, + [SMALL_STATE(1488)] = 68704, + [SMALL_STATE(1489)] = 68717, + [SMALL_STATE(1490)] = 68730, + [SMALL_STATE(1491)] = 68743, + [SMALL_STATE(1492)] = 68756, + [SMALL_STATE(1493)] = 68769, + [SMALL_STATE(1494)] = 68782, + [SMALL_STATE(1495)] = 68791, + [SMALL_STATE(1496)] = 68804, + [SMALL_STATE(1497)] = 68817, + [SMALL_STATE(1498)] = 68830, + [SMALL_STATE(1499)] = 68843, + [SMALL_STATE(1500)] = 68854, + [SMALL_STATE(1501)] = 68867, + [SMALL_STATE(1502)] = 68880, + [SMALL_STATE(1503)] = 68893, + [SMALL_STATE(1504)] = 68906, + [SMALL_STATE(1505)] = 68919, + [SMALL_STATE(1506)] = 68932, + [SMALL_STATE(1507)] = 68945, + [SMALL_STATE(1508)] = 68956, + [SMALL_STATE(1509)] = 68967, + [SMALL_STATE(1510)] = 68976, + [SMALL_STATE(1511)] = 68985, + [SMALL_STATE(1512)] = 68998, + [SMALL_STATE(1513)] = 69007, + [SMALL_STATE(1514)] = 69020, + [SMALL_STATE(1515)] = 69033, + [SMALL_STATE(1516)] = 69046, + [SMALL_STATE(1517)] = 69057, + [SMALL_STATE(1518)] = 69068, + [SMALL_STATE(1519)] = 69081, + [SMALL_STATE(1520)] = 69094, + [SMALL_STATE(1521)] = 69107, + [SMALL_STATE(1522)] = 69120, + [SMALL_STATE(1523)] = 69129, + [SMALL_STATE(1524)] = 69142, + [SMALL_STATE(1525)] = 69151, + [SMALL_STATE(1526)] = 69164, + [SMALL_STATE(1527)] = 69177, + [SMALL_STATE(1528)] = 69190, + [SMALL_STATE(1529)] = 69203, + [SMALL_STATE(1530)] = 69212, + [SMALL_STATE(1531)] = 69225, + [SMALL_STATE(1532)] = 69238, + [SMALL_STATE(1533)] = 69251, + [SMALL_STATE(1534)] = 69259, + [SMALL_STATE(1535)] = 69267, + [SMALL_STATE(1536)] = 69275, + [SMALL_STATE(1537)] = 69283, + [SMALL_STATE(1538)] = 69293, + [SMALL_STATE(1539)] = 69303, + [SMALL_STATE(1540)] = 69311, + [SMALL_STATE(1541)] = 69319, + [SMALL_STATE(1542)] = 69329, + [SMALL_STATE(1543)] = 69337, + [SMALL_STATE(1544)] = 69347, + [SMALL_STATE(1545)] = 69357, + [SMALL_STATE(1546)] = 69365, + [SMALL_STATE(1547)] = 69375, + [SMALL_STATE(1548)] = 69385, + [SMALL_STATE(1549)] = 69395, + [SMALL_STATE(1550)] = 69403, + [SMALL_STATE(1551)] = 69411, + [SMALL_STATE(1552)] = 69421, + [SMALL_STATE(1553)] = 69429, + [SMALL_STATE(1554)] = 69439, + [SMALL_STATE(1555)] = 69447, + [SMALL_STATE(1556)] = 69457, + [SMALL_STATE(1557)] = 69467, + [SMALL_STATE(1558)] = 69475, + [SMALL_STATE(1559)] = 69483, + [SMALL_STATE(1560)] = 69491, + [SMALL_STATE(1561)] = 69501, + [SMALL_STATE(1562)] = 69509, + [SMALL_STATE(1563)] = 69517, + [SMALL_STATE(1564)] = 69525, + [SMALL_STATE(1565)] = 69535, + [SMALL_STATE(1566)] = 69543, + [SMALL_STATE(1567)] = 69551, + [SMALL_STATE(1568)] = 69559, + [SMALL_STATE(1569)] = 69569, + [SMALL_STATE(1570)] = 69577, + [SMALL_STATE(1571)] = 69585, + [SMALL_STATE(1572)] = 69593, + [SMALL_STATE(1573)] = 69603, + [SMALL_STATE(1574)] = 69613, + [SMALL_STATE(1575)] = 69623, + [SMALL_STATE(1576)] = 69631, + [SMALL_STATE(1577)] = 69641, + [SMALL_STATE(1578)] = 69649, + [SMALL_STATE(1579)] = 69657, + [SMALL_STATE(1580)] = 69665, + [SMALL_STATE(1581)] = 69673, + [SMALL_STATE(1582)] = 69681, + [SMALL_STATE(1583)] = 69689, + [SMALL_STATE(1584)] = 69697, + [SMALL_STATE(1585)] = 69705, + [SMALL_STATE(1586)] = 69713, + [SMALL_STATE(1587)] = 69721, + [SMALL_STATE(1588)] = 69731, + [SMALL_STATE(1589)] = 69741, + [SMALL_STATE(1590)] = 69749, + [SMALL_STATE(1591)] = 69759, + [SMALL_STATE(1592)] = 69767, + [SMALL_STATE(1593)] = 69775, + [SMALL_STATE(1594)] = 69785, + [SMALL_STATE(1595)] = 69795, + [SMALL_STATE(1596)] = 69805, + [SMALL_STATE(1597)] = 69813, + [SMALL_STATE(1598)] = 69823, + [SMALL_STATE(1599)] = 69831, + [SMALL_STATE(1600)] = 69841, + [SMALL_STATE(1601)] = 69849, + [SMALL_STATE(1602)] = 69859, + [SMALL_STATE(1603)] = 69869, + [SMALL_STATE(1604)] = 69877, + [SMALL_STATE(1605)] = 69887, + [SMALL_STATE(1606)] = 69895, + [SMALL_STATE(1607)] = 69903, + [SMALL_STATE(1608)] = 69911, + [SMALL_STATE(1609)] = 69919, + [SMALL_STATE(1610)] = 69927, + [SMALL_STATE(1611)] = 69935, + [SMALL_STATE(1612)] = 69943, + [SMALL_STATE(1613)] = 69953, + [SMALL_STATE(1614)] = 69960, + [SMALL_STATE(1615)] = 69967, + [SMALL_STATE(1616)] = 69974, + [SMALL_STATE(1617)] = 69981, + [SMALL_STATE(1618)] = 69988, + [SMALL_STATE(1619)] = 69995, + [SMALL_STATE(1620)] = 70002, + [SMALL_STATE(1621)] = 70009, + [SMALL_STATE(1622)] = 70016, + [SMALL_STATE(1623)] = 70023, + [SMALL_STATE(1624)] = 70030, + [SMALL_STATE(1625)] = 70037, + [SMALL_STATE(1626)] = 70044, + [SMALL_STATE(1627)] = 70051, + [SMALL_STATE(1628)] = 70058, + [SMALL_STATE(1629)] = 70065, + [SMALL_STATE(1630)] = 70072, + [SMALL_STATE(1631)] = 70079, + [SMALL_STATE(1632)] = 70086, + [SMALL_STATE(1633)] = 70093, + [SMALL_STATE(1634)] = 70100, + [SMALL_STATE(1635)] = 70107, + [SMALL_STATE(1636)] = 70114, + [SMALL_STATE(1637)] = 70121, + [SMALL_STATE(1638)] = 70128, + [SMALL_STATE(1639)] = 70135, + [SMALL_STATE(1640)] = 70142, + [SMALL_STATE(1641)] = 70149, + [SMALL_STATE(1642)] = 70156, + [SMALL_STATE(1643)] = 70163, + [SMALL_STATE(1644)] = 70170, + [SMALL_STATE(1645)] = 70177, + [SMALL_STATE(1646)] = 70184, + [SMALL_STATE(1647)] = 70191, + [SMALL_STATE(1648)] = 70198, + [SMALL_STATE(1649)] = 70205, + [SMALL_STATE(1650)] = 70212, + [SMALL_STATE(1651)] = 70219, + [SMALL_STATE(1652)] = 70226, + [SMALL_STATE(1653)] = 70233, + [SMALL_STATE(1654)] = 70240, + [SMALL_STATE(1655)] = 70247, + [SMALL_STATE(1656)] = 70254, + [SMALL_STATE(1657)] = 70261, + [SMALL_STATE(1658)] = 70268, + [SMALL_STATE(1659)] = 70275, + [SMALL_STATE(1660)] = 70282, + [SMALL_STATE(1661)] = 70289, + [SMALL_STATE(1662)] = 70296, + [SMALL_STATE(1663)] = 70303, + [SMALL_STATE(1664)] = 70310, + [SMALL_STATE(1665)] = 70317, + [SMALL_STATE(1666)] = 70324, + [SMALL_STATE(1667)] = 70331, + [SMALL_STATE(1668)] = 70338, + [SMALL_STATE(1669)] = 70345, + [SMALL_STATE(1670)] = 70352, + [SMALL_STATE(1671)] = 70359, + [SMALL_STATE(1672)] = 70366, + [SMALL_STATE(1673)] = 70373, + [SMALL_STATE(1674)] = 70380, + [SMALL_STATE(1675)] = 70387, + [SMALL_STATE(1676)] = 70394, + [SMALL_STATE(1677)] = 70401, + [SMALL_STATE(1678)] = 70408, + [SMALL_STATE(1679)] = 70415, + [SMALL_STATE(1680)] = 70422, + [SMALL_STATE(1681)] = 70429, + [SMALL_STATE(1682)] = 70436, + [SMALL_STATE(1683)] = 70443, + [SMALL_STATE(1684)] = 70450, + [SMALL_STATE(1685)] = 70457, + [SMALL_STATE(1686)] = 70464, + [SMALL_STATE(1687)] = 70471, + [SMALL_STATE(1688)] = 70478, + [SMALL_STATE(1689)] = 70485, + [SMALL_STATE(1690)] = 70492, + [SMALL_STATE(1691)] = 70499, + [SMALL_STATE(1692)] = 70506, + [SMALL_STATE(1693)] = 70513, + [SMALL_STATE(1694)] = 70520, + [SMALL_STATE(1695)] = 70527, + [SMALL_STATE(1696)] = 70534, + [SMALL_STATE(1697)] = 70541, + [SMALL_STATE(1698)] = 70548, + [SMALL_STATE(1699)] = 70555, + [SMALL_STATE(1700)] = 70562, + [SMALL_STATE(1701)] = 70569, + [SMALL_STATE(1702)] = 70576, + [SMALL_STATE(1703)] = 70583, + [SMALL_STATE(1704)] = 70590, + [SMALL_STATE(1705)] = 70597, + [SMALL_STATE(1706)] = 70604, + [SMALL_STATE(1707)] = 70611, + [SMALL_STATE(1708)] = 70618, + [SMALL_STATE(1709)] = 70625, + [SMALL_STATE(1710)] = 70632, + [SMALL_STATE(1711)] = 70639, + [SMALL_STATE(1712)] = 70646, + [SMALL_STATE(1713)] = 70653, + [SMALL_STATE(1714)] = 70660, + [SMALL_STATE(1715)] = 70667, + [SMALL_STATE(1716)] = 70674, + [SMALL_STATE(1717)] = 70681, + [SMALL_STATE(1718)] = 70688, + [SMALL_STATE(1719)] = 70695, + [SMALL_STATE(1720)] = 70702, + [SMALL_STATE(1721)] = 70709, + [SMALL_STATE(1722)] = 70716, + [SMALL_STATE(1723)] = 70723, + [SMALL_STATE(1724)] = 70730, + [SMALL_STATE(1725)] = 70737, + [SMALL_STATE(1726)] = 70744, + [SMALL_STATE(1727)] = 70751, + [SMALL_STATE(1728)] = 70758, + [SMALL_STATE(1729)] = 70765, + [SMALL_STATE(1730)] = 70772, + [SMALL_STATE(1731)] = 70779, + [SMALL_STATE(1732)] = 70786, + [SMALL_STATE(1733)] = 70793, + [SMALL_STATE(1734)] = 70800, + [SMALL_STATE(1735)] = 70807, + [SMALL_STATE(1736)] = 70814, + [SMALL_STATE(1737)] = 70821, + [SMALL_STATE(1738)] = 70828, + [SMALL_STATE(1739)] = 70835, + [SMALL_STATE(1740)] = 70842, + [SMALL_STATE(1741)] = 70849, + [SMALL_STATE(1742)] = 70856, + [SMALL_STATE(1743)] = 70863, + [SMALL_STATE(1744)] = 70870, + [SMALL_STATE(1745)] = 70877, + [SMALL_STATE(1746)] = 70884, + [SMALL_STATE(1747)] = 70891, + [SMALL_STATE(1748)] = 70898, + [SMALL_STATE(1749)] = 70905, + [SMALL_STATE(1750)] = 70912, + [SMALL_STATE(1751)] = 70919, + [SMALL_STATE(1752)] = 70926, + [SMALL_STATE(1753)] = 70933, + [SMALL_STATE(1754)] = 70940, }; static const TSParseActionEntry ts_parse_actions[] = { @@ -83259,1698 +84025,1704 @@ static const TSParseActionEntry ts_parse_actions[] = { [1] = {.entry = {.count = 1, .reusable = false}}, RECOVER(), [3] = {.entry = {.count = 1, .reusable = true}}, SHIFT_EXTRA(), [5] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_module, 0, 0, 0), - [7] = {.entry = {.count = 1, .reusable = false}}, SHIFT(487), - [9] = {.entry = {.count = 1, .reusable = false}}, SHIFT(450), - [11] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1361), - [13] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1177), + [7] = {.entry = {.count = 1, .reusable = false}}, SHIFT(499), + [9] = {.entry = {.count = 1, .reusable = false}}, SHIFT(453), + [11] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1357), + [13] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1213), [15] = {.entry = {.count = 1, .reusable = true}}, SHIFT(157), - [17] = {.entry = {.count = 1, .reusable = false}}, SHIFT(365), - [19] = {.entry = {.count = 1, .reusable = false}}, SHIFT(75), - [21] = {.entry = {.count = 1, .reusable = false}}, SHIFT(403), - [23] = {.entry = {.count = 1, .reusable = false}}, SHIFT(195), - [25] = {.entry = {.count = 1, .reusable = false}}, SHIFT(246), - [27] = {.entry = {.count = 1, .reusable = false}}, SHIFT(178), - [29] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1563), - [31] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1573), - [33] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1528), - [35] = {.entry = {.count = 1, .reusable = false}}, SHIFT(396), - [37] = {.entry = {.count = 1, .reusable = false}}, SHIFT(430), - [39] = {.entry = {.count = 1, .reusable = false}}, SHIFT(493), - [41] = {.entry = {.count = 1, .reusable = false}}, SHIFT(348), - [43] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1660), - [45] = {.entry = {.count = 1, .reusable = false}}, SHIFT(309), + [17] = {.entry = {.count = 1, .reusable = false}}, SHIFT(343), + [19] = {.entry = {.count = 1, .reusable = false}}, SHIFT(78), + [21] = {.entry = {.count = 1, .reusable = false}}, SHIFT(340), + [23] = {.entry = {.count = 1, .reusable = false}}, SHIFT(233), + [25] = {.entry = {.count = 1, .reusable = false}}, SHIFT(247), + [27] = {.entry = {.count = 1, .reusable = false}}, SHIFT(182), + [29] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1581), + [31] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1589), + [33] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1603), + [35] = {.entry = {.count = 1, .reusable = false}}, SHIFT(345), + [37] = {.entry = {.count = 1, .reusable = false}}, SHIFT(347), + [39] = {.entry = {.count = 1, .reusable = false}}, SHIFT(501), + [41] = {.entry = {.count = 1, .reusable = false}}, SHIFT(427), + [43] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1683), + [45] = {.entry = {.count = 1, .reusable = false}}, SHIFT(295), [47] = {.entry = {.count = 1, .reusable = false}}, SHIFT(66), - [49] = {.entry = {.count = 1, .reusable = true}}, SHIFT(635), - [51] = {.entry = {.count = 1, .reusable = true}}, SHIFT(156), - [53] = {.entry = {.count = 1, .reusable = true}}, SHIFT(167), - [55] = {.entry = {.count = 1, .reusable = true}}, SHIFT(383), - [57] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1671), - [59] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1604), - [61] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1598), + [49] = {.entry = {.count = 1, .reusable = true}}, SHIFT(643), + [51] = {.entry = {.count = 1, .reusable = true}}, SHIFT(160), + [53] = {.entry = {.count = 1, .reusable = true}}, SHIFT(165), + [55] = {.entry = {.count = 1, .reusable = true}}, SHIFT(349), + [57] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1699), + [59] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1743), + [61] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1653), [63] = {.entry = {.count = 1, .reusable = false}}, SHIFT(452), - [65] = {.entry = {.count = 1, .reusable = false}}, SHIFT(480), - [67] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1663), - [69] = {.entry = {.count = 1, .reusable = true}}, SHIFT(377), - [71] = {.entry = {.count = 1, .reusable = false}}, SHIFT(400), - [73] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1020), - [75] = {.entry = {.count = 1, .reusable = false}}, SHIFT(177), - [77] = {.entry = {.count = 1, .reusable = true}}, SHIFT(920), - [79] = {.entry = {.count = 1, .reusable = false}}, SHIFT(920), - [81] = {.entry = {.count = 1, .reusable = false}}, SHIFT(135), - [83] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1053), - [85] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1042), - [87] = {.entry = {.count = 1, .reusable = false}}, SHIFT(422), - [89] = {.entry = {.count = 1, .reusable = false}}, SHIFT(433), - [91] = {.entry = {.count = 1, .reusable = false}}, SHIFT(509), - [93] = {.entry = {.count = 1, .reusable = false}}, SHIFT(423), - [95] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1699), - [97] = {.entry = {.count = 1, .reusable = false}}, SHIFT(307), + [65] = {.entry = {.count = 1, .reusable = false}}, SHIFT(469), + [67] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1659), + [69] = {.entry = {.count = 1, .reusable = true}}, SHIFT(386), + [71] = {.entry = {.count = 1, .reusable = false}}, SHIFT(396), + [73] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1027), + [75] = {.entry = {.count = 1, .reusable = false}}, SHIFT(179), + [77] = {.entry = {.count = 1, .reusable = true}}, SHIFT(950), + [79] = {.entry = {.count = 1, .reusable = false}}, SHIFT(950), + [81] = {.entry = {.count = 1, .reusable = false}}, SHIFT(134), + [83] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1044), + [85] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1040), + [87] = {.entry = {.count = 1, .reusable = false}}, SHIFT(424), + [89] = {.entry = {.count = 1, .reusable = false}}, SHIFT(437), + [91] = {.entry = {.count = 1, .reusable = false}}, SHIFT(513), + [93] = {.entry = {.count = 1, .reusable = false}}, SHIFT(425), + [95] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1720), + [97] = {.entry = {.count = 1, .reusable = false}}, SHIFT(305), [99] = {.entry = {.count = 1, .reusable = false}}, SHIFT(67), - [101] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1724), - [103] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1702), - [105] = {.entry = {.count = 1, .reusable = true}}, SHIFT(332), - [107] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1581), - [109] = {.entry = {.count = 1, .reusable = true}}, SHIFT(327), - [111] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1575), - [113] = {.entry = {.count = 1, .reusable = true}}, SHIFT(336), - [115] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_module, 1, 0, 0), - [117] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(487), - [120] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(450), - [123] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(1361), - [126] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(1177), - [129] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(157), - [132] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(365), - [135] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(75), - [138] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(403), - [141] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(195), - [144] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(246), - [147] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(178), - [150] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(1563), - [153] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(1573), - [156] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(1528), - [159] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(422), - [162] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(433), - [165] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(509), - [168] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(423), - [171] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(1699), - [174] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(307), - [177] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(67), - [180] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(635), - [183] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(156), - [186] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(167), - [189] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(383), - [192] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(1724), - [195] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(1604), - [198] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(1598), - [201] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(452), - [204] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(480), - [207] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(1702), - [210] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(377), - [213] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(400), - [216] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(1020), - [219] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(177), - [222] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(920), - [225] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(920), - [228] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(135), - [231] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), - [233] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(1053), - [236] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(1042), - [239] = {.entry = {.count = 1, .reusable = true}}, SHIFT(318), - [241] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(396), - [244] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(430), - [247] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(493), - [250] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(348), - [253] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(1660), - [256] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(309), + [101] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1745), + [103] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1723), + [105] = {.entry = {.count = 1, .reusable = true}}, SHIFT(325), + [107] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1583), + [109] = {.entry = {.count = 1, .reusable = true}}, SHIFT(311), + [111] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1533), + [113] = {.entry = {.count = 1, .reusable = true}}, SHIFT(334), + [115] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(499), + [118] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(453), + [121] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(1357), + [124] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(1213), + [127] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(157), + [130] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(343), + [133] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(78), + [136] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(340), + [139] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(233), + [142] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(247), + [145] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(182), + [148] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(1581), + [151] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(1589), + [154] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(1603), + [157] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(424), + [160] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(437), + [163] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(513), + [166] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(425), + [169] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(1720), + [172] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(305), + [175] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(67), + [178] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(643), + [181] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(160), + [184] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(165), + [187] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(349), + [190] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(1745), + [193] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(1743), + [196] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(1653), + [199] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(452), + [202] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(469), + [205] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(1723), + [208] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(386), + [211] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(396), + [214] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(1027), + [217] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(179), + [220] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(950), + [223] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(950), + [226] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(134), + [229] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), + [231] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(1044), + [234] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(1040), + [237] = {.entry = {.count = 1, .reusable = true}}, SHIFT(333), + [239] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_module, 1, 0, 0), + [241] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(345), + [244] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(347), + [247] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(501), + [250] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(427), + [253] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(1683), + [256] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(295), [259] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(66), - [262] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(1671), - [265] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(1663), - [268] = {.entry = {.count = 1, .reusable = false}}, SHIFT(781), - [270] = {.entry = {.count = 1, .reusable = false}}, SHIFT(773), + [262] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(1699), + [265] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(1659), + [268] = {.entry = {.count = 1, .reusable = false}}, SHIFT(778), + [270] = {.entry = {.count = 1, .reusable = false}}, SHIFT(774), [272] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_primary_expression, 1, 0, 1), - [274] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_primary_expression, 1, 0, 1), SHIFT(199), + [274] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_primary_expression, 1, 0, 1), SHIFT(236), [277] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_pattern, 1, 0, 1), REDUCE(sym_primary_expression, 1, 0, 1), - [280] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_primary_expression, 1, 0, 1), SHIFT(343), - [283] = {.entry = {.count = 1, .reusable = true}}, SHIFT(391), + [280] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_primary_expression, 1, 0, 1), SHIFT(397), + [283] = {.entry = {.count = 1, .reusable = true}}, SHIFT(346), [285] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_pattern, 1, 0, 1), - [287] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_primary_expression, 1, 0, 1), SHIFT(657), - [290] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_primary_expression, 1, 0, 1), SHIFT(200), - [293] = {.entry = {.count = 1, .reusable = true}}, SHIFT(165), - [295] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_primary_expression, 1, 0, 1), SHIFT(383), - [298] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_primary_expression, 1, 0, 1), SHIFT(376), - [301] = {.entry = {.count = 1, .reusable = true}}, SHIFT(657), + [287] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_primary_expression, 1, 0, 1), SHIFT(688), + [290] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_primary_expression, 1, 0, 1), SHIFT(208), + [293] = {.entry = {.count = 1, .reusable = true}}, SHIFT(166), + [295] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_primary_expression, 1, 0, 1), SHIFT(349), + [298] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_primary_expression, 1, 0, 1), SHIFT(372), + [301] = {.entry = {.count = 1, .reusable = true}}, SHIFT(688), [303] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_primary_expression, 1, 0, 1), - [305] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1016), + [305] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1021), [307] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_pattern, 1, 0, 1), - [309] = {.entry = {.count = 1, .reusable = true}}, SHIFT(725), - [311] = {.entry = {.count = 1, .reusable = false}}, SHIFT(725), + [309] = {.entry = {.count = 1, .reusable = true}}, SHIFT(720), + [311] = {.entry = {.count = 1, .reusable = false}}, SHIFT(720), [313] = {.entry = {.count = 1, .reusable = false}}, SHIFT(136), - [315] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1037), - [317] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1038), - [319] = {.entry = {.count = 1, .reusable = false}}, SHIFT(503), - [321] = {.entry = {.count = 1, .reusable = true}}, SHIFT(614), - [323] = {.entry = {.count = 1, .reusable = true}}, SHIFT(59), - [325] = {.entry = {.count = 1, .reusable = true}}, SHIFT(567), - [327] = {.entry = {.count = 1, .reusable = true}}, SHIFT(15), - [329] = {.entry = {.count = 1, .reusable = true}}, SHIFT(573), - [331] = {.entry = {.count = 1, .reusable = true}}, SHIFT(16), + [315] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1059), + [317] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1061), + [319] = {.entry = {.count = 1, .reusable = false}}, SHIFT(494), + [321] = {.entry = {.count = 1, .reusable = true}}, SHIFT(616), + [323] = {.entry = {.count = 1, .reusable = true}}, SHIFT(35), + [325] = {.entry = {.count = 1, .reusable = true}}, SHIFT(493), + [327] = {.entry = {.count = 1, .reusable = true}}, SHIFT(18), + [329] = {.entry = {.count = 1, .reusable = true}}, SHIFT(320), + [331] = {.entry = {.count = 1, .reusable = true}}, SHIFT(32), [333] = {.entry = {.count = 1, .reusable = true}}, SHIFT(477), - [335] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5), - [337] = {.entry = {.count = 1, .reusable = true}}, SHIFT(576), - [339] = {.entry = {.count = 1, .reusable = true}}, SHIFT(17), - [341] = {.entry = {.count = 1, .reusable = true}}, SHIFT(325), - [343] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2), - [345] = {.entry = {.count = 1, .reusable = true}}, SHIFT(463), - [347] = {.entry = {.count = 1, .reusable = true}}, SHIFT(32), - [349] = {.entry = {.count = 1, .reusable = false}}, SHIFT(851), - [351] = {.entry = {.count = 1, .reusable = false}}, SHIFT(844), - [353] = {.entry = {.count = 1, .reusable = false}}, SHIFT(338), - [355] = {.entry = {.count = 1, .reusable = false}}, SHIFT(139), - [357] = {.entry = {.count = 1, .reusable = true}}, SHIFT(513), - [359] = {.entry = {.count = 1, .reusable = true}}, SHIFT(33), - [361] = {.entry = {.count = 1, .reusable = true}}, SHIFT(518), - [363] = {.entry = {.count = 1, .reusable = true}}, SHIFT(34), - [365] = {.entry = {.count = 1, .reusable = true}}, SHIFT(500), - [367] = {.entry = {.count = 1, .reusable = true}}, SHIFT(18), - [369] = {.entry = {.count = 1, .reusable = true}}, SHIFT(465), - [371] = {.entry = {.count = 1, .reusable = true}}, SHIFT(19), - [373] = {.entry = {.count = 1, .reusable = true}}, SHIFT(570), - [375] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6), - [377] = {.entry = {.count = 1, .reusable = true}}, SHIFT(523), - [379] = {.entry = {.count = 1, .reusable = true}}, SHIFT(35), - [381] = {.entry = {.count = 1, .reusable = true}}, SHIFT(581), - [383] = {.entry = {.count = 1, .reusable = true}}, SHIFT(20), - [385] = {.entry = {.count = 1, .reusable = true}}, SHIFT(525), - [387] = {.entry = {.count = 1, .reusable = true}}, SHIFT(36), - [389] = {.entry = {.count = 1, .reusable = true}}, SHIFT(526), - [391] = {.entry = {.count = 1, .reusable = true}}, SHIFT(37), - [393] = {.entry = {.count = 1, .reusable = true}}, SHIFT(584), - [395] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7), - [397] = {.entry = {.count = 1, .reusable = true}}, SHIFT(530), - [399] = {.entry = {.count = 1, .reusable = true}}, SHIFT(38), - [401] = {.entry = {.count = 1, .reusable = true}}, SHIFT(486), - [403] = {.entry = {.count = 1, .reusable = true}}, SHIFT(39), - [405] = {.entry = {.count = 1, .reusable = true}}, SHIFT(444), - [407] = {.entry = {.count = 1, .reusable = true}}, SHIFT(40), - [409] = {.entry = {.count = 1, .reusable = true}}, SHIFT(532), - [411] = {.entry = {.count = 1, .reusable = true}}, SHIFT(41), - [413] = {.entry = {.count = 1, .reusable = true}}, SHIFT(536), - [415] = {.entry = {.count = 1, .reusable = true}}, SHIFT(42), - [417] = {.entry = {.count = 1, .reusable = true}}, SHIFT(449), - [419] = {.entry = {.count = 1, .reusable = true}}, SHIFT(21), - [421] = {.entry = {.count = 1, .reusable = true}}, SHIFT(538), - [423] = {.entry = {.count = 1, .reusable = true}}, SHIFT(43), - [425] = {.entry = {.count = 1, .reusable = true}}, SHIFT(497), - [427] = {.entry = {.count = 1, .reusable = true}}, SHIFT(44), - [429] = {.entry = {.count = 1, .reusable = true}}, SHIFT(472), - [431] = {.entry = {.count = 1, .reusable = true}}, SHIFT(45), - [433] = {.entry = {.count = 1, .reusable = true}}, SHIFT(508), - [435] = {.entry = {.count = 1, .reusable = true}}, SHIFT(22), - [437] = {.entry = {.count = 1, .reusable = true}}, SHIFT(542), - [439] = {.entry = {.count = 1, .reusable = true}}, SHIFT(46), - [441] = {.entry = {.count = 1, .reusable = true}}, SHIFT(589), - [443] = {.entry = {.count = 1, .reusable = true}}, SHIFT(23), - [445] = {.entry = {.count = 1, .reusable = true}}, SHIFT(603), - [447] = {.entry = {.count = 1, .reusable = true}}, SHIFT(8), - [449] = {.entry = {.count = 1, .reusable = true}}, SHIFT(447), - [451] = {.entry = {.count = 1, .reusable = true}}, SHIFT(47), - [453] = {.entry = {.count = 1, .reusable = true}}, SHIFT(460), - [455] = {.entry = {.count = 1, .reusable = true}}, SHIFT(31), - [457] = {.entry = {.count = 1, .reusable = true}}, SHIFT(502), - [459] = {.entry = {.count = 1, .reusable = true}}, SHIFT(48), - [461] = {.entry = {.count = 1, .reusable = true}}, SHIFT(547), - [463] = {.entry = {.count = 1, .reusable = true}}, SHIFT(49), - [465] = {.entry = {.count = 1, .reusable = true}}, SHIFT(461), - [467] = {.entry = {.count = 1, .reusable = true}}, SHIFT(24), - [469] = {.entry = {.count = 1, .reusable = true}}, SHIFT(468), - [471] = {.entry = {.count = 1, .reusable = true}}, SHIFT(50), - [473] = {.entry = {.count = 1, .reusable = true}}, SHIFT(594), - [475] = {.entry = {.count = 1, .reusable = true}}, SHIFT(25), - [477] = {.entry = {.count = 1, .reusable = true}}, SHIFT(553), - [479] = {.entry = {.count = 1, .reusable = true}}, SHIFT(51), - [481] = {.entry = {.count = 1, .reusable = true}}, SHIFT(613), - [483] = {.entry = {.count = 1, .reusable = true}}, SHIFT(9), - [485] = {.entry = {.count = 1, .reusable = true}}, SHIFT(453), - [487] = {.entry = {.count = 1, .reusable = true}}, SHIFT(52), - [489] = {.entry = {.count = 1, .reusable = true}}, SHIFT(442), - [491] = {.entry = {.count = 1, .reusable = true}}, SHIFT(26), - [493] = {.entry = {.count = 1, .reusable = true}}, SHIFT(495), - [495] = {.entry = {.count = 1, .reusable = true}}, SHIFT(53), - [497] = {.entry = {.count = 1, .reusable = true}}, SHIFT(515), - [499] = {.entry = {.count = 1, .reusable = true}}, SHIFT(10), - [501] = {.entry = {.count = 1, .reusable = true}}, SHIFT(559), - [503] = {.entry = {.count = 1, .reusable = true}}, SHIFT(54), - [505] = {.entry = {.count = 1, .reusable = true}}, SHIFT(489), - [507] = {.entry = {.count = 1, .reusable = true}}, SHIFT(27), - [509] = {.entry = {.count = 1, .reusable = true}}, SHIFT(517), - [511] = {.entry = {.count = 1, .reusable = true}}, SHIFT(11), - [513] = {.entry = {.count = 1, .reusable = true}}, SHIFT(562), - [515] = {.entry = {.count = 1, .reusable = true}}, SHIFT(55), - [517] = {.entry = {.count = 1, .reusable = true}}, SHIFT(598), - [519] = {.entry = {.count = 1, .reusable = true}}, SHIFT(28), - [521] = {.entry = {.count = 1, .reusable = true}}, SHIFT(459), - [523] = {.entry = {.count = 1, .reusable = true}}, SHIFT(56), - [525] = {.entry = {.count = 1, .reusable = true}}, SHIFT(331), - [527] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4), - [529] = {.entry = {.count = 1, .reusable = true}}, SHIFT(602), - [531] = {.entry = {.count = 1, .reusable = true}}, SHIFT(29), - [533] = {.entry = {.count = 1, .reusable = true}}, SHIFT(440), - [535] = {.entry = {.count = 1, .reusable = true}}, SHIFT(57), - [537] = {.entry = {.count = 1, .reusable = true}}, SHIFT(556), - [539] = {.entry = {.count = 1, .reusable = true}}, SHIFT(12), - [541] = {.entry = {.count = 1, .reusable = true}}, SHIFT(457), - [543] = {.entry = {.count = 1, .reusable = true}}, SHIFT(30), - [545] = {.entry = {.count = 1, .reusable = true}}, SHIFT(464), - [547] = {.entry = {.count = 1, .reusable = true}}, SHIFT(13), - [549] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1171), - [551] = {.entry = {.count = 1, .reusable = true}}, SHIFT(58), - [553] = {.entry = {.count = 1, .reusable = true}}, SHIFT(454), - [555] = {.entry = {.count = 1, .reusable = true}}, SHIFT(14), - [557] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1209), - [559] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3), - [561] = {.entry = {.count = 1, .reusable = true}}, SHIFT(320), - [563] = {.entry = {.count = 1, .reusable = true}}, SHIFT(326), - [565] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1523), - [567] = {.entry = {.count = 1, .reusable = true}}, SHIFT(310), - [569] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1564), - [571] = {.entry = {.count = 1, .reusable = true}}, SHIFT(319), - [573] = {.entry = {.count = 1, .reusable = false}}, SHIFT(707), - [575] = {.entry = {.count = 1, .reusable = true}}, SHIFT(199), - [577] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_primary_expression, 1, 0, 1), REDUCE(sym_list_splat_pattern, 2, 0, 8), - [580] = {.entry = {.count = 1, .reusable = true}}, SHIFT(371), - [582] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_list_splat_pattern, 2, 0, 8), - [584] = {.entry = {.count = 1, .reusable = false}}, SHIFT(657), - [586] = {.entry = {.count = 1, .reusable = true}}, SHIFT(200), - [588] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_list_splat_pattern, 2, 0, 8), - [590] = {.entry = {.count = 1, .reusable = false}}, SHIFT(137), - [592] = {.entry = {.count = 1, .reusable = false}}, SHIFT(941), - [594] = {.entry = {.count = 1, .reusable = true}}, SHIFT(196), - [596] = {.entry = {.count = 1, .reusable = false}}, SHIFT(635), - [598] = {.entry = {.count = 1, .reusable = true}}, SHIFT(197), - [600] = {.entry = {.count = 1, .reusable = false}}, SHIFT(147), - [602] = {.entry = {.count = 1, .reusable = true}}, SHIFT(218), - [604] = {.entry = {.count = 1, .reusable = true}}, SHIFT(381), - [606] = {.entry = {.count = 1, .reusable = true}}, SHIFT(629), - [608] = {.entry = {.count = 1, .reusable = true}}, SHIFT(226), - [610] = {.entry = {.count = 1, .reusable = false}}, SHIFT(143), - [612] = {.entry = {.count = 1, .reusable = false}}, SHIFT(878), - [614] = {.entry = {.count = 1, .reusable = false}}, SHIFT(886), - [616] = {.entry = {.count = 1, .reusable = true}}, SHIFT(231), - [618] = {.entry = {.count = 1, .reusable = false}}, SHIFT(346), - [620] = {.entry = {.count = 1, .reusable = true}}, SHIFT(673), - [622] = {.entry = {.count = 1, .reusable = true}}, SHIFT(219), - [624] = {.entry = {.count = 1, .reusable = true}}, SHIFT(164), - [626] = {.entry = {.count = 1, .reusable = true}}, SHIFT(878), - [628] = {.entry = {.count = 1, .reusable = false}}, SHIFT(149), - [630] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1051), - [632] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1048), - [634] = {.entry = {.count = 1, .reusable = false}}, SHIFT(350), - [636] = {.entry = {.count = 1, .reusable = false}}, SHIFT(970), - [638] = {.entry = {.count = 1, .reusable = false}}, SHIFT(949), - [640] = {.entry = {.count = 1, .reusable = true}}, SHIFT(227), - [642] = {.entry = {.count = 1, .reusable = true}}, SHIFT(389), - [644] = {.entry = {.count = 1, .reusable = true}}, SHIFT(662), - [646] = {.entry = {.count = 1, .reusable = true}}, SHIFT(228), - [648] = {.entry = {.count = 1, .reusable = true}}, SHIFT(166), - [650] = {.entry = {.count = 1, .reusable = true}}, SHIFT(970), - [652] = {.entry = {.count = 1, .reusable = false}}, SHIFT(151), - [654] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1062), - [656] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1044), - [658] = {.entry = {.count = 1, .reusable = true}}, SHIFT(225), - [660] = {.entry = {.count = 1, .reusable = true}}, SHIFT(408), - [662] = {.entry = {.count = 1, .reusable = true}}, SHIFT(689), - [664] = {.entry = {.count = 1, .reusable = true}}, SHIFT(210), - [666] = {.entry = {.count = 1, .reusable = false}}, SHIFT(152), - [668] = {.entry = {.count = 1, .reusable = false}}, SHIFT(849), - [670] = {.entry = {.count = 1, .reusable = false}}, SHIFT(842), - [672] = {.entry = {.count = 1, .reusable = true}}, SHIFT(158), - [674] = {.entry = {.count = 1, .reusable = true}}, SHIFT(365), - [676] = {.entry = {.count = 1, .reusable = true}}, SHIFT(163), - [678] = {.entry = {.count = 1, .reusable = true}}, SHIFT(571), - [680] = {.entry = {.count = 1, .reusable = false}}, SHIFT(397), - [682] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1018), - [684] = {.entry = {.count = 1, .reusable = false}}, SHIFT(168), - [686] = {.entry = {.count = 1, .reusable = false}}, SHIFT(144), - [688] = {.entry = {.count = 1, .reusable = true}}, SHIFT(557), - [690] = {.entry = {.count = 1, .reusable = true}}, SHIFT(877), - [692] = {.entry = {.count = 1, .reusable = false}}, SHIFT(848), - [694] = {.entry = {.count = 1, .reusable = false}}, SHIFT(839), - [696] = {.entry = {.count = 1, .reusable = true}}, SHIFT(162), - [698] = {.entry = {.count = 1, .reusable = false}}, SHIFT(636), - [700] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_pattern_list, 3, 0, 16), - [702] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_pattern_list, 3, 0, 16), - [704] = {.entry = {.count = 1, .reusable = true}}, SHIFT(161), - [706] = {.entry = {.count = 1, .reusable = false}}, SHIFT(141), - [708] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_pattern_list, 2, 0, 7), - [710] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_pattern_list, 2, 0, 7), - [712] = {.entry = {.count = 1, .reusable = true}}, SHIFT(834), - [714] = {.entry = {.count = 1, .reusable = true}}, SHIFT(861), - [716] = {.entry = {.count = 1, .reusable = true}}, SHIFT(883), - [718] = {.entry = {.count = 1, .reusable = false}}, SHIFT(829), - [720] = {.entry = {.count = 1, .reusable = false}}, SHIFT(850), - [722] = {.entry = {.count = 1, .reusable = true}}, SHIFT(208), - [724] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1630), - [726] = {.entry = {.count = 1, .reusable = false}}, SHIFT(343), - [728] = {.entry = {.count = 1, .reusable = true}}, SHIFT(891), - [730] = {.entry = {.count = 1, .reusable = false}}, SHIFT(415), - [732] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1015), - [734] = {.entry = {.count = 1, .reusable = false}}, SHIFT(148), - [736] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1593), - [738] = {.entry = {.count = 1, .reusable = true}}, SHIFT(708), - [740] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1701), - [742] = {.entry = {.count = 1, .reusable = true}}, SHIFT(950), - [744] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1695), - [746] = {.entry = {.count = 1, .reusable = true}}, SHIFT(896), - [748] = {.entry = {.count = 1, .reusable = false}}, SHIFT(387), - [750] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_yield, 1, 0, 0), - [752] = {.entry = {.count = 1, .reusable = false}}, SHIFT(376), - [754] = {.entry = {.count = 1, .reusable = false}}, SHIFT(863), - [756] = {.entry = {.count = 1, .reusable = false}}, SHIFT(865), - [758] = {.entry = {.count = 1, .reusable = false}}, SHIFT(416), - [760] = {.entry = {.count = 1, .reusable = false}}, SHIFT(401), - [762] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1014), - [764] = {.entry = {.count = 1, .reusable = false}}, SHIFT(140), - [766] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_list, 3, 0, 16), - [768] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_list, 2, 0, 7), - [770] = {.entry = {.count = 1, .reusable = false}}, SHIFT(169), - [772] = {.entry = {.count = 1, .reusable = false}}, SHIFT(828), - [774] = {.entry = {.count = 1, .reusable = false}}, SHIFT(862), - [776] = {.entry = {.count = 1, .reusable = true}}, SHIFT(198), - [778] = {.entry = {.count = 1, .reusable = true}}, SHIFT(917), - [780] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1673), - [782] = {.entry = {.count = 1, .reusable = false}}, SHIFT(145), - [784] = {.entry = {.count = 1, .reusable = true}}, SHIFT(881), - [786] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1655), - [788] = {.entry = {.count = 1, .reusable = true}}, SHIFT(211), - [790] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__collection_elements, 2, 0, 26), - [792] = {.entry = {.count = 1, .reusable = true}}, SHIFT(343), - [794] = {.entry = {.count = 1, .reusable = false}}, SHIFT(378), - [796] = {.entry = {.count = 1, .reusable = false}}, SHIFT(344), - [798] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_raise_statement, 1, 0, 0), - [800] = {.entry = {.count = 1, .reusable = false}}, SHIFT(971), - [802] = {.entry = {.count = 1, .reusable = false}}, SHIFT(954), - [804] = {.entry = {.count = 1, .reusable = true}}, SHIFT(733), - [806] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1669), - [808] = {.entry = {.count = 1, .reusable = false}}, SHIFT(150), - [810] = {.entry = {.count = 1, .reusable = false}}, SHIFT(398), - [812] = {.entry = {.count = 1, .reusable = true}}, SHIFT(375), - [814] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__collection_elements, 3, 0, 51), - [816] = {.entry = {.count = 1, .reusable = false}}, SHIFT(783), - [818] = {.entry = {.count = 1, .reusable = false}}, SHIFT(764), - [820] = {.entry = {.count = 1, .reusable = true}}, SHIFT(772), - [822] = {.entry = {.count = 1, .reusable = false}}, SHIFT(138), - [824] = {.entry = {.count = 1, .reusable = true}}, SHIFT(978), - [826] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1679), - [828] = {.entry = {.count = 1, .reusable = true}}, SHIFT(711), - [830] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_in_clause, 7, 0, 145), - [832] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_in_clause, 7, 0, 145), - [834] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1019), - [836] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_expression_list, 2, 0, 7), - [838] = {.entry = {.count = 1, .reusable = false}}, SHIFT(384), - [840] = {.entry = {.count = 1, .reusable = true}}, SHIFT(394), - [842] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_expression_list, 3, 0, 16), - [844] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_in_clause, 5, 0, 101), - [846] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_in_clause, 5, 0, 101), - [848] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_return_statement, 1, 0, 0), - [850] = {.entry = {.count = 1, .reusable = true}}, SHIFT(904), - [852] = {.entry = {.count = 1, .reusable = true}}, SHIFT(905), - [854] = {.entry = {.count = 1, .reusable = true}}, SHIFT(700), - [856] = {.entry = {.count = 1, .reusable = true}}, SHIFT(777), - [858] = {.entry = {.count = 1, .reusable = true}}, SHIFT(714), - [860] = {.entry = {.count = 1, .reusable = true}}, SHIFT(732), - [862] = {.entry = {.count = 1, .reusable = true}}, SHIFT(709), - [864] = {.entry = {.count = 1, .reusable = true}}, SHIFT(710), - [866] = {.entry = {.count = 1, .reusable = true}}, SHIFT(901), - [868] = {.entry = {.count = 1, .reusable = true}}, SHIFT(868), - [870] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_in_clause, 6, 0, 126), - [872] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_in_clause, 6, 0, 126), - [874] = {.entry = {.count = 1, .reusable = true}}, SHIFT(909), - [876] = {.entry = {.count = 1, .reusable = true}}, SHIFT(892), - [878] = {.entry = {.count = 1, .reusable = true}}, SHIFT(910), - [880] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_in_clause, 6, 0, 127), - [882] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_in_clause, 6, 0, 127), - [884] = {.entry = {.count = 1, .reusable = true}}, SHIFT(960), - [886] = {.entry = {.count = 1, .reusable = true}}, SHIFT(962), - [888] = {.entry = {.count = 1, .reusable = true}}, SHIFT(965), - [890] = {.entry = {.count = 1, .reusable = true}}, SHIFT(966), - [892] = {.entry = {.count = 1, .reusable = true}}, SHIFT(968), - [894] = {.entry = {.count = 1, .reusable = true}}, SHIFT(720), - [896] = {.entry = {.count = 1, .reusable = true}}, SHIFT(927), - [898] = {.entry = {.count = 1, .reusable = true}}, SHIFT(907), - [900] = {.entry = {.count = 1, .reusable = true}}, SHIFT(873), - [902] = {.entry = {.count = 1, .reusable = true}}, SHIFT(876), - [904] = {.entry = {.count = 1, .reusable = true}}, SHIFT(880), - [906] = {.entry = {.count = 1, .reusable = true}}, SHIFT(884), - [908] = {.entry = {.count = 1, .reusable = true}}, SHIFT(888), - [910] = {.entry = {.count = 1, .reusable = true}}, SHIFT(282), - [912] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_index_expression_list, 3, 0, 16), - [914] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_index_expression_list, 2, 0, 7), - [916] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_dictionary_splat_pattern, 2, 0, 34), - [918] = {.entry = {.count = 1, .reusable = true}}, SHIFT(937), - [920] = {.entry = {.count = 1, .reusable = true}}, SHIFT(895), - [922] = {.entry = {.count = 1, .reusable = true}}, SHIFT(982), - [924] = {.entry = {.count = 1, .reusable = true}}, SHIFT(958), - [926] = {.entry = {.count = 1, .reusable = true}}, SHIFT(959), - [928] = {.entry = {.count = 1, .reusable = true}}, SHIFT(702), - [930] = {.entry = {.count = 1, .reusable = true}}, SHIFT(931), - [932] = {.entry = {.count = 1, .reusable = true}}, SHIFT(894), - [934] = {.entry = {.count = 1, .reusable = true}}, SHIFT(906), - [936] = {.entry = {.count = 1, .reusable = true}}, SHIFT(704), - [938] = {.entry = {.count = 1, .reusable = true}}, SHIFT(705), - [940] = {.entry = {.count = 1, .reusable = true}}, SHIFT(926), - [942] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_try_statement, 4, 0, 57), - [944] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_try_statement, 4, 0, 57), - [946] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1620), - [948] = {.entry = {.count = 1, .reusable = false}}, SHIFT(296), - [950] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1617), - [952] = {.entry = {.count = 1, .reusable = false}}, SHIFT(871), - [954] = {.entry = {.count = 1, .reusable = false}}, SHIFT(879), - [956] = {.entry = {.count = 1, .reusable = true}}, SHIFT(314), - [958] = {.entry = {.count = 1, .reusable = true}}, SHIFT(125), - [960] = {.entry = {.count = 1, .reusable = false}}, SHIFT(390), - [962] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1021), - [964] = {.entry = {.count = 1, .reusable = false}}, SHIFT(146), - [966] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1644), - [968] = {.entry = {.count = 1, .reusable = false}}, SHIFT(302), - [970] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1628), - [972] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1676), - [974] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_slice, 2, 0, 70), - [976] = {.entry = {.count = 1, .reusable = true}}, SHIFT(289), - [978] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1715), - [980] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_try_statement, 5, 0, 84), - [982] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_try_statement, 5, 0, 84), - [984] = {.entry = {.count = 1, .reusable = true}}, SHIFT(335), - [986] = {.entry = {.count = 1, .reusable = true}}, SHIFT(88), - [988] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_slice, 1, 0, 0), - [990] = {.entry = {.count = 1, .reusable = true}}, SHIFT(298), - [992] = {.entry = {.count = 1, .reusable = true}}, SHIFT(384), - [994] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_print_statement, 4, 0, 30), - [996] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_slice, 3, 0, 70), - [998] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_print_statement, 3, 0, 0), - [1000] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_print_statement, 3, 0, 10), - [1002] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_print_statement, 4, 0, 29), - [1004] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_slice, 3, 0, 69), - [1006] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1690), - [1008] = {.entry = {.count = 1, .reusable = true}}, SHIFT(187), + [335] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2), + [337] = {.entry = {.count = 1, .reusable = true}}, SHIFT(544), + [339] = {.entry = {.count = 1, .reusable = true}}, SHIFT(33), + [341] = {.entry = {.count = 1, .reusable = true}}, SHIFT(514), + [343] = {.entry = {.count = 1, .reusable = true}}, SHIFT(59), + [345] = {.entry = {.count = 1, .reusable = true}}, SHIFT(483), + [347] = {.entry = {.count = 1, .reusable = true}}, SHIFT(19), + [349] = {.entry = {.count = 1, .reusable = true}}, SHIFT(551), + [351] = {.entry = {.count = 1, .reusable = true}}, SHIFT(34), + [353] = {.entry = {.count = 1, .reusable = true}}, SHIFT(594), + [355] = {.entry = {.count = 1, .reusable = true}}, SHIFT(20), + [357] = {.entry = {.count = 1, .reusable = true}}, SHIFT(531), + [359] = {.entry = {.count = 1, .reusable = true}}, SHIFT(8), + [361] = {.entry = {.count = 1, .reusable = false}}, SHIFT(831), + [363] = {.entry = {.count = 1, .reusable = false}}, SHIFT(835), + [365] = {.entry = {.count = 1, .reusable = false}}, SHIFT(387), + [367] = {.entry = {.count = 1, .reusable = false}}, SHIFT(140), + [369] = {.entry = {.count = 1, .reusable = true}}, SHIFT(561), + [371] = {.entry = {.count = 1, .reusable = true}}, SHIFT(36), + [373] = {.entry = {.count = 1, .reusable = true}}, SHIFT(562), + [375] = {.entry = {.count = 1, .reusable = true}}, SHIFT(37), + [377] = {.entry = {.count = 1, .reusable = true}}, SHIFT(441), + [379] = {.entry = {.count = 1, .reusable = true}}, SHIFT(21), + [381] = {.entry = {.count = 1, .reusable = true}}, SHIFT(568), + [383] = {.entry = {.count = 1, .reusable = true}}, SHIFT(38), + [385] = {.entry = {.count = 1, .reusable = true}}, SHIFT(482), + [387] = {.entry = {.count = 1, .reusable = true}}, SHIFT(39), + [389] = {.entry = {.count = 1, .reusable = true}}, SHIFT(448), + [391] = {.entry = {.count = 1, .reusable = true}}, SHIFT(40), + [393] = {.entry = {.count = 1, .reusable = true}}, SHIFT(570), + [395] = {.entry = {.count = 1, .reusable = true}}, SHIFT(41), + [397] = {.entry = {.count = 1, .reusable = true}}, SHIFT(574), + [399] = {.entry = {.count = 1, .reusable = true}}, SHIFT(42), + [401] = {.entry = {.count = 1, .reusable = true}}, SHIFT(511), + [403] = {.entry = {.count = 1, .reusable = true}}, SHIFT(22), + [405] = {.entry = {.count = 1, .reusable = true}}, SHIFT(576), + [407] = {.entry = {.count = 1, .reusable = true}}, SHIFT(43), + [409] = {.entry = {.count = 1, .reusable = true}}, SHIFT(613), + [411] = {.entry = {.count = 1, .reusable = true}}, SHIFT(23), + [413] = {.entry = {.count = 1, .reusable = true}}, SHIFT(497), + [415] = {.entry = {.count = 1, .reusable = true}}, SHIFT(44), + [417] = {.entry = {.count = 1, .reusable = true}}, SHIFT(485), + [419] = {.entry = {.count = 1, .reusable = true}}, SHIFT(45), + [421] = {.entry = {.count = 1, .reusable = true}}, SHIFT(332), + [423] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4), + [425] = {.entry = {.count = 1, .reusable = true}}, SHIFT(580), + [427] = {.entry = {.count = 1, .reusable = true}}, SHIFT(46), + [429] = {.entry = {.count = 1, .reusable = true}}, SHIFT(611), + [431] = {.entry = {.count = 1, .reusable = true}}, SHIFT(9), + [433] = {.entry = {.count = 1, .reusable = true}}, SHIFT(467), + [435] = {.entry = {.count = 1, .reusable = true}}, SHIFT(24), + [437] = {.entry = {.count = 1, .reusable = true}}, SHIFT(456), + [439] = {.entry = {.count = 1, .reusable = true}}, SHIFT(47), + [441] = {.entry = {.count = 1, .reusable = true}}, SHIFT(475), + [443] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5), + [445] = {.entry = {.count = 1, .reusable = true}}, SHIFT(500), + [447] = {.entry = {.count = 1, .reusable = true}}, SHIFT(48), + [449] = {.entry = {.count = 1, .reusable = true}}, SHIFT(519), + [451] = {.entry = {.count = 1, .reusable = true}}, SHIFT(10), + [453] = {.entry = {.count = 1, .reusable = true}}, SHIFT(536), + [455] = {.entry = {.count = 1, .reusable = true}}, SHIFT(25), + [457] = {.entry = {.count = 1, .reusable = true}}, SHIFT(487), + [459] = {.entry = {.count = 1, .reusable = true}}, SHIFT(50), + [461] = {.entry = {.count = 1, .reusable = true}}, SHIFT(539), + [463] = {.entry = {.count = 1, .reusable = true}}, SHIFT(11), + [465] = {.entry = {.count = 1, .reusable = true}}, SHIFT(457), + [467] = {.entry = {.count = 1, .reusable = true}}, SHIFT(26), + [469] = {.entry = {.count = 1, .reusable = true}}, SHIFT(590), + [471] = {.entry = {.count = 1, .reusable = true}}, SHIFT(51), + [473] = {.entry = {.count = 1, .reusable = true}}, SHIFT(458), + [475] = {.entry = {.count = 1, .reusable = true}}, SHIFT(52), + [477] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1216), + [479] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3), + [481] = {.entry = {.count = 1, .reusable = true}}, SHIFT(498), + [483] = {.entry = {.count = 1, .reusable = true}}, SHIFT(27), + [485] = {.entry = {.count = 1, .reusable = true}}, SHIFT(505), + [487] = {.entry = {.count = 1, .reusable = true}}, SHIFT(53), + [489] = {.entry = {.count = 1, .reusable = true}}, SHIFT(526), + [491] = {.entry = {.count = 1, .reusable = true}}, SHIFT(12), + [493] = {.entry = {.count = 1, .reusable = true}}, SHIFT(596), + [495] = {.entry = {.count = 1, .reusable = true}}, SHIFT(54), + [497] = {.entry = {.count = 1, .reusable = true}}, SHIFT(607), + [499] = {.entry = {.count = 1, .reusable = true}}, SHIFT(28), + [501] = {.entry = {.count = 1, .reusable = true}}, SHIFT(474), + [503] = {.entry = {.count = 1, .reusable = true}}, SHIFT(13), + [505] = {.entry = {.count = 1, .reusable = true}}, SHIFT(599), + [507] = {.entry = {.count = 1, .reusable = true}}, SHIFT(55), + [509] = {.entry = {.count = 1, .reusable = true}}, SHIFT(449), + [511] = {.entry = {.count = 1, .reusable = true}}, SHIFT(14), + [513] = {.entry = {.count = 1, .reusable = true}}, SHIFT(462), + [515] = {.entry = {.count = 1, .reusable = true}}, SHIFT(56), + [517] = {.entry = {.count = 1, .reusable = true}}, SHIFT(518), + [519] = {.entry = {.count = 1, .reusable = true}}, SHIFT(29), + [521] = {.entry = {.count = 1, .reusable = true}}, SHIFT(532), + [523] = {.entry = {.count = 1, .reusable = true}}, SHIFT(15), + [525] = {.entry = {.count = 1, .reusable = true}}, SHIFT(443), + [527] = {.entry = {.count = 1, .reusable = true}}, SHIFT(30), + [529] = {.entry = {.count = 1, .reusable = true}}, SHIFT(463), + [531] = {.entry = {.count = 1, .reusable = true}}, SHIFT(57), + [533] = {.entry = {.count = 1, .reusable = true}}, SHIFT(555), + [535] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6), + [537] = {.entry = {.count = 1, .reusable = true}}, SHIFT(543), + [539] = {.entry = {.count = 1, .reusable = true}}, SHIFT(16), + [541] = {.entry = {.count = 1, .reusable = true}}, SHIFT(608), + [543] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7), + [545] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1183), + [547] = {.entry = {.count = 1, .reusable = true}}, SHIFT(58), + [549] = {.entry = {.count = 1, .reusable = true}}, SHIFT(446), + [551] = {.entry = {.count = 1, .reusable = true}}, SHIFT(31), + [553] = {.entry = {.count = 1, .reusable = true}}, SHIFT(548), + [555] = {.entry = {.count = 1, .reusable = true}}, SHIFT(17), + [557] = {.entry = {.count = 1, .reusable = true}}, SHIFT(585), + [559] = {.entry = {.count = 1, .reusable = true}}, SHIFT(49), + [561] = {.entry = {.count = 1, .reusable = true}}, SHIFT(312), + [563] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1607), + [565] = {.entry = {.count = 1, .reusable = true}}, SHIFT(316), + [567] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1598), + [569] = {.entry = {.count = 1, .reusable = true}}, SHIFT(330), + [571] = {.entry = {.count = 1, .reusable = true}}, SHIFT(326), + [573] = {.entry = {.count = 1, .reusable = false}}, SHIFT(911), + [575] = {.entry = {.count = 1, .reusable = true}}, SHIFT(209), + [577] = {.entry = {.count = 1, .reusable = false}}, SHIFT(643), + [579] = {.entry = {.count = 1, .reusable = true}}, SHIFT(210), + [581] = {.entry = {.count = 1, .reusable = false}}, SHIFT(150), + [583] = {.entry = {.count = 1, .reusable = false}}, SHIFT(706), + [585] = {.entry = {.count = 1, .reusable = true}}, SHIFT(236), + [587] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_primary_expression, 1, 0, 1), REDUCE(sym_list_splat_pattern, 2, 0, 8), + [590] = {.entry = {.count = 1, .reusable = true}}, SHIFT(367), + [592] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_list_splat_pattern, 2, 0, 8), + [594] = {.entry = {.count = 1, .reusable = false}}, SHIFT(688), + [596] = {.entry = {.count = 1, .reusable = true}}, SHIFT(208), + [598] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_list_splat_pattern, 2, 0, 8), + [600] = {.entry = {.count = 1, .reusable = false}}, SHIFT(137), + [602] = {.entry = {.count = 1, .reusable = true}}, SHIFT(222), + [604] = {.entry = {.count = 1, .reusable = true}}, SHIFT(406), + [606] = {.entry = {.count = 1, .reusable = true}}, SHIFT(692), + [608] = {.entry = {.count = 1, .reusable = true}}, SHIFT(232), + [610] = {.entry = {.count = 1, .reusable = false}}, SHIFT(142), + [612] = {.entry = {.count = 1, .reusable = false}}, SHIFT(949), + [614] = {.entry = {.count = 1, .reusable = false}}, SHIFT(918), + [616] = {.entry = {.count = 1, .reusable = true}}, SHIFT(237), + [618] = {.entry = {.count = 1, .reusable = false}}, SHIFT(370), + [620] = {.entry = {.count = 1, .reusable = true}}, SHIFT(642), + [622] = {.entry = {.count = 1, .reusable = true}}, SHIFT(223), + [624] = {.entry = {.count = 1, .reusable = true}}, SHIFT(167), + [626] = {.entry = {.count = 1, .reusable = true}}, SHIFT(949), + [628] = {.entry = {.count = 1, .reusable = false}}, SHIFT(147), + [630] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1060), + [632] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1055), + [634] = {.entry = {.count = 1, .reusable = false}}, SHIFT(362), + [636] = {.entry = {.count = 1, .reusable = true}}, SHIFT(231), + [638] = {.entry = {.count = 1, .reusable = true}}, SHIFT(408), + [640] = {.entry = {.count = 1, .reusable = true}}, SHIFT(673), + [642] = {.entry = {.count = 1, .reusable = true}}, SHIFT(212), + [644] = {.entry = {.count = 1, .reusable = false}}, SHIFT(151), + [646] = {.entry = {.count = 1, .reusable = false}}, SHIFT(985), + [648] = {.entry = {.count = 1, .reusable = false}}, SHIFT(988), + [650] = {.entry = {.count = 1, .reusable = true}}, SHIFT(234), + [652] = {.entry = {.count = 1, .reusable = true}}, SHIFT(351), + [654] = {.entry = {.count = 1, .reusable = true}}, SHIFT(628), + [656] = {.entry = {.count = 1, .reusable = true}}, SHIFT(235), + [658] = {.entry = {.count = 1, .reusable = true}}, SHIFT(168), + [660] = {.entry = {.count = 1, .reusable = true}}, SHIFT(985), + [662] = {.entry = {.count = 1, .reusable = false}}, SHIFT(152), + [664] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1049), + [666] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1050), + [668] = {.entry = {.count = 1, .reusable = false}}, SHIFT(872), + [670] = {.entry = {.count = 1, .reusable = false}}, SHIFT(850), + [672] = {.entry = {.count = 1, .reusable = true}}, SHIFT(164), + [674] = {.entry = {.count = 1, .reusable = true}}, SHIFT(524), + [676] = {.entry = {.count = 1, .reusable = true}}, SHIFT(401), + [678] = {.entry = {.count = 1, .reusable = true}}, SHIFT(159), + [680] = {.entry = {.count = 1, .reusable = false}}, SHIFT(391), + [682] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1023), + [684] = {.entry = {.count = 1, .reusable = false}}, SHIFT(170), + [686] = {.entry = {.count = 1, .reusable = false}}, SHIFT(149), + [688] = {.entry = {.count = 1, .reusable = true}}, SHIFT(851), + [690] = {.entry = {.count = 1, .reusable = true}}, SHIFT(914), + [692] = {.entry = {.count = 1, .reusable = true}}, SHIFT(515), + [694] = {.entry = {.count = 1, .reusable = false}}, SHIFT(842), + [696] = {.entry = {.count = 1, .reusable = false}}, SHIFT(855), + [698] = {.entry = {.count = 1, .reusable = true}}, SHIFT(158), + [700] = {.entry = {.count = 1, .reusable = false}}, SHIFT(632), + [702] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_pattern_list, 2, 0, 7), + [704] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_pattern_list, 2, 0, 7), + [706] = {.entry = {.count = 1, .reusable = true}}, SHIFT(163), + [708] = {.entry = {.count = 1, .reusable = false}}, SHIFT(141), + [710] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_pattern_list, 3, 0, 16), + [712] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_pattern_list, 3, 0, 16), + [714] = {.entry = {.count = 1, .reusable = true}}, SHIFT(838), + [716] = {.entry = {.count = 1, .reusable = true}}, SHIFT(924), + [718] = {.entry = {.count = 1, .reusable = false}}, SHIFT(837), + [720] = {.entry = {.count = 1, .reusable = false}}, SHIFT(854), + [722] = {.entry = {.count = 1, .reusable = true}}, SHIFT(192), + [724] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1700), + [726] = {.entry = {.count = 1, .reusable = false}}, SHIFT(395), + [728] = {.entry = {.count = 1, .reusable = true}}, SHIFT(923), + [730] = {.entry = {.count = 1, .reusable = true}}, SHIFT(390), + [732] = {.entry = {.count = 1, .reusable = false}}, SHIFT(416), + [734] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1026), + [736] = {.entry = {.count = 1, .reusable = false}}, SHIFT(145), + [738] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1733), + [740] = {.entry = {.count = 1, .reusable = true}}, SHIFT(707), + [742] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1664), + [744] = {.entry = {.count = 1, .reusable = true}}, SHIFT(878), + [746] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1685), + [748] = {.entry = {.count = 1, .reusable = true}}, SHIFT(989), + [750] = {.entry = {.count = 1, .reusable = false}}, SHIFT(832), + [752] = {.entry = {.count = 1, .reusable = false}}, SHIFT(836), + [754] = {.entry = {.count = 1, .reusable = false}}, SHIFT(354), + [756] = {.entry = {.count = 1, .reusable = false}}, SHIFT(397), + [758] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_yield, 1, 0, 0), + [760] = {.entry = {.count = 1, .reusable = false}}, SHIFT(399), + [762] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1024), + [764] = {.entry = {.count = 1, .reusable = false}}, SHIFT(139), + [766] = {.entry = {.count = 1, .reusable = false}}, SHIFT(421), + [768] = {.entry = {.count = 1, .reusable = false}}, SHIFT(372), + [770] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_list, 3, 0, 16), + [772] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_list, 2, 0, 7), + [774] = {.entry = {.count = 1, .reusable = false}}, SHIFT(374), + [776] = {.entry = {.count = 1, .reusable = true}}, SHIFT(388), + [778] = {.entry = {.count = 1, .reusable = true}}, SHIFT(213), + [780] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__collection_elements, 3, 0, 52), + [782] = {.entry = {.count = 1, .reusable = true}}, SHIFT(397), + [784] = {.entry = {.count = 1, .reusable = false}}, SHIFT(858), + [786] = {.entry = {.count = 1, .reusable = false}}, SHIFT(857), + [788] = {.entry = {.count = 1, .reusable = true}}, SHIFT(215), + [790] = {.entry = {.count = 1, .reusable = true}}, SHIFT(919), + [792] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1640), + [794] = {.entry = {.count = 1, .reusable = false}}, SHIFT(144), + [796] = {.entry = {.count = 1, .reusable = false}}, SHIFT(366), + [798] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__collection_elements, 2, 0, 26), + [800] = {.entry = {.count = 1, .reusable = true}}, SHIFT(715), + [802] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1615), + [804] = {.entry = {.count = 1, .reusable = false}}, SHIFT(407), + [806] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_raise_statement, 1, 0, 0), + [808] = {.entry = {.count = 1, .reusable = false}}, SHIFT(786), + [810] = {.entry = {.count = 1, .reusable = false}}, SHIFT(787), + [812] = {.entry = {.count = 1, .reusable = true}}, SHIFT(767), + [814] = {.entry = {.count = 1, .reusable = true}}, SHIFT(395), + [816] = {.entry = {.count = 1, .reusable = false}}, SHIFT(138), + [818] = {.entry = {.count = 1, .reusable = false}}, SHIFT(169), + [820] = {.entry = {.count = 1, .reusable = true}}, SHIFT(960), + [822] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1737), + [824] = {.entry = {.count = 1, .reusable = true}}, SHIFT(912), + [826] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1684), + [828] = {.entry = {.count = 1, .reusable = false}}, SHIFT(984), + [830] = {.entry = {.count = 1, .reusable = false}}, SHIFT(986), + [832] = {.entry = {.count = 1, .reusable = false}}, SHIFT(153), + [834] = {.entry = {.count = 1, .reusable = true}}, SHIFT(887), + [836] = {.entry = {.count = 1, .reusable = true}}, SHIFT(892), + [838] = {.entry = {.count = 1, .reusable = true}}, SHIFT(903), + [840] = {.entry = {.count = 1, .reusable = true}}, SHIFT(908), + [842] = {.entry = {.count = 1, .reusable = true}}, SHIFT(726), + [844] = {.entry = {.count = 1, .reusable = true}}, SHIFT(729), + [846] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_expression_list, 2, 0, 7), + [848] = {.entry = {.count = 1, .reusable = false}}, SHIFT(409), + [850] = {.entry = {.count = 1, .reusable = true}}, SHIFT(371), + [852] = {.entry = {.count = 1, .reusable = true}}, SHIFT(732), + [854] = {.entry = {.count = 1, .reusable = true}}, SHIFT(733), + [856] = {.entry = {.count = 1, .reusable = true}}, SHIFT(734), + [858] = {.entry = {.count = 1, .reusable = true}}, SHIFT(735), + [860] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_in_clause, 7, 0, 145), + [862] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_in_clause, 7, 0, 145), + [864] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1022), + [866] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_expression_list, 3, 0, 16), + [868] = {.entry = {.count = 1, .reusable = true}}, SHIFT(941), + [870] = {.entry = {.count = 1, .reusable = true}}, SHIFT(942), + [872] = {.entry = {.count = 1, .reusable = true}}, SHIFT(873), + [874] = {.entry = {.count = 1, .reusable = true}}, SHIFT(945), + [876] = {.entry = {.count = 1, .reusable = true}}, SHIFT(783), + [878] = {.entry = {.count = 1, .reusable = true}}, SHIFT(915), + [880] = {.entry = {.count = 1, .reusable = true}}, SHIFT(916), + [882] = {.entry = {.count = 1, .reusable = true}}, SHIFT(893), + [884] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_in_clause, 6, 0, 126), + [886] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_in_clause, 6, 0, 126), + [888] = {.entry = {.count = 1, .reusable = true}}, SHIFT(736), + [890] = {.entry = {.count = 1, .reusable = true}}, SHIFT(971), + [892] = {.entry = {.count = 1, .reusable = true}}, SHIFT(974), + [894] = {.entry = {.count = 1, .reusable = true}}, SHIFT(977), + [896] = {.entry = {.count = 1, .reusable = true}}, SHIFT(978), + [898] = {.entry = {.count = 1, .reusable = true}}, SHIFT(979), + [900] = {.entry = {.count = 1, .reusable = true}}, SHIFT(980), + [902] = {.entry = {.count = 1, .reusable = true}}, SHIFT(737), + [904] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_in_clause, 6, 0, 127), + [906] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_in_clause, 6, 0, 127), + [908] = {.entry = {.count = 1, .reusable = true}}, SHIFT(880), + [910] = {.entry = {.count = 1, .reusable = true}}, SHIFT(883), + [912] = {.entry = {.count = 1, .reusable = true}}, SHIFT(886), + [914] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_in_clause, 5, 0, 101), + [916] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_in_clause, 5, 0, 101), + [918] = {.entry = {.count = 1, .reusable = true}}, SHIFT(888), + [920] = {.entry = {.count = 1, .reusable = true}}, SHIFT(889), + [922] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_return_statement, 1, 0, 0), + [924] = {.entry = {.count = 1, .reusable = true}}, SHIFT(276), + [926] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_index_expression_list, 2, 0, 7), + [928] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_dictionary_splat_pattern, 2, 0, 34), + [930] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_index_expression_list, 3, 0, 16), + [932] = {.entry = {.count = 1, .reusable = true}}, SHIFT(940), + [934] = {.entry = {.count = 1, .reusable = true}}, SHIFT(879), + [936] = {.entry = {.count = 1, .reusable = true}}, SHIFT(964), + [938] = {.entry = {.count = 1, .reusable = true}}, SHIFT(898), + [940] = {.entry = {.count = 1, .reusable = true}}, SHIFT(920), + [942] = {.entry = {.count = 1, .reusable = true}}, SHIFT(970), + [944] = {.entry = {.count = 1, .reusable = true}}, SHIFT(719), + [946] = {.entry = {.count = 1, .reusable = true}}, SHIFT(725), + [948] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_try_statement, 4, 0, 57), + [950] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_try_statement, 4, 0, 57), + [952] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1635), + [954] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1736), + [956] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1632), + [958] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_try_statement, 5, 0, 84), + [960] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_try_statement, 5, 0, 84), + [962] = {.entry = {.count = 1, .reusable = true}}, SHIFT(409), + [964] = {.entry = {.count = 1, .reusable = false}}, SHIFT(907), + [966] = {.entry = {.count = 1, .reusable = false}}, SHIFT(913), + [968] = {.entry = {.count = 1, .reusable = true}}, SHIFT(323), + [970] = {.entry = {.count = 1, .reusable = true}}, SHIFT(114), + [972] = {.entry = {.count = 1, .reusable = false}}, SHIFT(389), + [974] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1025), + [976] = {.entry = {.count = 1, .reusable = false}}, SHIFT(146), + [978] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1637), + [980] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1739), + [982] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1693), + [984] = {.entry = {.count = 1, .reusable = false}}, SHIFT(304), + [986] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_slice, 1, 0, 0), + [988] = {.entry = {.count = 1, .reusable = true}}, SHIFT(298), + [990] = {.entry = {.count = 1, .reusable = true}}, SHIFT(335), + [992] = {.entry = {.count = 1, .reusable = true}}, SHIFT(84), + [994] = {.entry = {.count = 1, .reusable = false}}, SHIFT(292), + [996] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_slice, 2, 0, 70), + [998] = {.entry = {.count = 1, .reusable = true}}, SHIFT(297), + [1000] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1726), + [1002] = {.entry = {.count = 1, .reusable = true}}, SHIFT(183), + [1004] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_print_statement, 4, 0, 30), + [1006] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_print_statement, 4, 0, 29), + [1008] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_slice, 3, 0, 70), [1010] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_slice, 2, 0, 0), - [1012] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1602), - [1014] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_slice, 4, 0, 98), - [1016] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__simple_statements, 4, 0, 0), - [1018] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__simple_statements, 4, 0, 0), - [1020] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_statement, 5, 0, 79), - [1022] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_statement, 5, 0, 79), - [1024] = {.entry = {.count = 1, .reusable = false}}, SHIFT(360), - [1026] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_statement, 5, 0, 80), - [1028] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_statement, 5, 0, 80), - [1030] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_statement, 6, 0, 105), - [1032] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_statement, 6, 0, 105), - [1034] = {.entry = {.count = 1, .reusable = false}}, SHIFT(428), - [1036] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_try_statement_repeat1, 2, 0, 0), - [1038] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_try_statement_repeat1, 2, 0, 0), - [1040] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_try_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(302), - [1043] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_try_statement_repeat2, 2, 0, 0), - [1045] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_try_statement_repeat2, 2, 0, 0), - [1047] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_try_statement_repeat2, 2, 0, 0), SHIFT_REPEAT(1676), - [1050] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_block, 2, 0, 0), - [1052] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_block, 2, 0, 0), - [1054] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__simple_statements, 3, 0, 0), - [1056] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__simple_statements, 3, 0, 0), - [1058] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__simple_statements, 2, 0, 0), - [1060] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__simple_statements, 2, 0, 0), - [1062] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attribute, 3, 0, 41), - [1064] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_attribute, 3, 0, 41), - [1066] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_statement, 4, 0, 55), - [1068] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_statement, 4, 0, 55), - [1070] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_block, 1, 0, 0), - [1072] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_block, 1, 0, 0), - [1074] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_subscript, 4, 0, 71), - [1076] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_subscript, 4, 0, 71), - [1078] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_try_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(296), - [1081] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_try_statement_repeat2, 2, 0, 0), SHIFT_REPEAT(1715), - [1084] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_if_statement_repeat1, 2, 0, 103), - [1086] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_if_statement_repeat1, 2, 0, 103), - [1088] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_if_statement_repeat1, 2, 0, 103), SHIFT_REPEAT(360), - [1091] = {.entry = {.count = 1, .reusable = false}}, SHIFT(494), - [1093] = {.entry = {.count = 1, .reusable = false}}, SHIFT(490), - [1095] = {.entry = {.count = 1, .reusable = false}}, SHIFT(134), - [1097] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_if_statement_repeat1, 2, 0, 103), SHIFT_REPEAT(428), - [1100] = {.entry = {.count = 1, .reusable = true}}, SHIFT(492), - [1102] = {.entry = {.count = 1, .reusable = true}}, SHIFT(297), - [1104] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1639), - [1106] = {.entry = {.count = 1, .reusable = true}}, SHIFT(510), - [1108] = {.entry = {.count = 1, .reusable = true}}, SHIFT(308), - [1110] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1725), - [1112] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_except_group_clause, 6, 0, 161), - [1114] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_except_group_clause, 6, 0, 161), - [1116] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_cases_repeat1, 2, 0, 0), - [1118] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_cases_repeat1, 2, 0, 0), - [1120] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_cases_repeat1, 2, 0, 0), SHIFT_REPEAT(827), - [1123] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_cases, 1, 0, 0), - [1125] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_cases, 1, 0, 0), - [1127] = {.entry = {.count = 1, .reusable = false}}, SHIFT(830), - [1129] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_except_clause, 7, 0, 168), - [1131] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_except_clause, 7, 0, 168), - [1133] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_except_group_clause, 8, 0, 169), - [1135] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_except_group_clause, 8, 0, 169), - [1137] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_except_group_clause, 7, 0, 167), - [1139] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_except_group_clause, 7, 0, 167), - [1141] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_except_group_clause, 5, 0, 151), - [1143] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_except_group_clause, 5, 0, 151), - [1145] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_except_clause, 3, 0, 57), - [1147] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_except_clause, 3, 0, 57), - [1149] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_except_clause, 5, 0, 152), - [1151] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_except_clause, 5, 0, 152), - [1153] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_except_clause, 4, 0, 84), - [1155] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_except_clause, 4, 0, 84), - [1157] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_except_clause, 4, 0, 134), - [1159] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_except_clause, 4, 0, 134), - [1161] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1362), - [1163] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1248), - [1165] = {.entry = {.count = 1, .reusable = false}}, SHIFT(827), - [1167] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1047), - [1169] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_except_clause, 6, 0, 162), - [1171] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_except_clause, 6, 0, 162), - [1173] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_cases_repeat1, 2, 0, 0), SHIFT_REPEAT(830), - [1176] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_elif_clause, 4, 0, 55), - [1178] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_elif_clause, 4, 0, 55), - [1180] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_statement, 8, 0, 147), - [1182] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_statement, 8, 0, 147), - [1184] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_while_statement, 4, 0, 56), - [1186] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_while_statement, 4, 0, 56), - [1188] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_statement, 6, 0, 108), - [1190] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_statement, 6, 0, 108), - [1192] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_statement, 7, 0, 129), - [1194] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_statement, 7, 0, 129), - [1196] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_try_statement, 6, 0, 84), - [1198] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_try_statement, 6, 0, 84), - [1200] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_elif_clause, 5, 0, 80), - [1202] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_elif_clause, 5, 0, 80), - [1204] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_if_statement_repeat1, 1, 0, 77), - [1206] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_if_statement_repeat1, 1, 0, 77), - [1208] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_statement, 7, 0, 133), - [1210] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_statement, 7, 0, 133), - [1212] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_while_statement, 5, 0, 83), - [1214] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_while_statement, 5, 0, 83), - [1216] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1443), - [1218] = {.entry = {.count = 1, .reusable = true}}, SHIFT(636), - [1220] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_try_statement, 5, 0, 57), - [1222] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_try_statement, 5, 0, 57), - [1224] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1466), - [1226] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__patterns, 2, 0, 26), - [1228] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__patterns, 3, 0, 51), - [1230] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_primary_expression, 1, 0, 0), - [1232] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_pattern, 1, 0, 0), REDUCE(sym_primary_expression, 1, 0, 0), - [1235] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_primary_expression, 1, 0, 0), - [1237] = {.entry = {.count = 1, .reusable = true}}, SHIFT(382), - [1239] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_pattern, 1, 0, 0), - [1241] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_pattern, 1, 0, 0), - [1243] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_case_block, 5, 0, 154), - [1245] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_case_block, 5, 0, 154), - [1247] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_case_block, 5, 0, 155), - [1249] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_case_block, 5, 0, 155), - [1251] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_else_clause, 4, 0, 84), - [1253] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_else_clause, 4, 0, 84), - [1255] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_primary_expression, 1, 0, 0), REDUCE(sym_list_splat_pattern, 2, 0, 9), - [1258] = {.entry = {.count = 1, .reusable = true}}, SHIFT(426), - [1260] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_list_splat_pattern, 2, 0, 9), - [1262] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_list_splat_pattern, 2, 0, 9), - [1264] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_else_clause, 3, 0, 57), - [1266] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_else_clause, 3, 0, 57), - [1268] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_case_block, 6, 0, 163), - [1270] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_case_block, 6, 0, 163), - [1272] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_case_block, 4, 0, 138), - [1274] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_case_block, 4, 0, 138), - [1276] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 7, 0, 142), - [1278] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 7, 0, 142), - [1280] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_match_statement, 4, 0, 61), - [1282] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_statement, 4, 0, 61), - [1284] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_class_definition, 4, 0, 65), - [1286] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_class_definition, 4, 0, 65), - [1288] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_class_definition, 5, 0, 92), - [1290] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_class_definition, 5, 0, 92), - [1292] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_class_definition, 5, 0, 93), - [1294] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_class_definition, 5, 0, 93), - [1296] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_statement, 5, 0, 78), - [1298] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_statement, 5, 0, 78), - [1300] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_class_definition, 5, 0, 94), - [1302] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_class_definition, 5, 0, 94), - [1304] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_with_statement, 5, 0, 81), - [1306] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_with_statement, 5, 0, 81), - [1308] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_while_statement, 5, 0, 82), - [1310] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_while_statement, 5, 0, 82), - [1312] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_with_statement, 5, 0, 85), - [1314] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_with_statement, 5, 0, 85), - [1316] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 5, 0, 90), - [1318] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 5, 0, 90), - [1320] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_statement, 6, 0, 102), - [1322] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_statement, 6, 0, 102), - [1324] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_statement, 6, 0, 104), - [1326] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_statement, 6, 0, 104), - [1328] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_with_statement, 6, 0, 106), - [1330] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_with_statement, 6, 0, 106), - [1332] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 6, 0, 107), - [1334] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 6, 0, 107), - [1336] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_while_statement, 6, 0, 109), - [1338] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_while_statement, 6, 0, 109), - [1340] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_finally_clause, 3, 0, 57), - [1342] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_finally_clause, 3, 0, 57), - [1344] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_try_statement, 6, 0, 57), - [1346] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_try_statement, 6, 0, 57), - [1348] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 6, 0, 117), - [1350] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 6, 0, 117), - [1352] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 6, 0, 118), - [1354] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 6, 0, 118), - [1356] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_class_definition, 6, 0, 119), - [1358] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_class_definition, 6, 0, 119), - [1360] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_class_definition, 6, 0, 120), - [1362] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_class_definition, 6, 0, 120), - [1364] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_class_definition, 6, 0, 121), - [1366] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_class_definition, 6, 0, 121), - [1368] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_statement, 7, 0, 128), - [1370] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_statement, 7, 0, 128), - [1372] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 7, 0, 130), - [1374] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 7, 0, 130), - [1376] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 7, 0, 131), - [1378] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 7, 0, 131), - [1380] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_statement, 7, 0, 132), - [1382] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_statement, 7, 0, 132), - [1384] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_finally_clause, 4, 0, 84), - [1386] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_finally_clause, 4, 0, 84), - [1388] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_try_statement, 7, 0, 84), - [1390] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_try_statement, 7, 0, 84), - [1392] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 7, 0, 141), - [1394] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 7, 0, 141), - [1396] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_class_definition, 7, 0, 143), - [1398] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_class_definition, 7, 0, 143), - [1400] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_decorated_definition, 2, 0, 19), - [1402] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_decorated_definition, 2, 0, 19), - [1404] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_statement, 8, 0, 146), - [1406] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_statement, 8, 0, 146), - [1408] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 8, 0, 148), - [1410] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 8, 0, 148), - [1412] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 8, 0, 149), - [1414] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 8, 0, 149), - [1416] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_statement, 8, 0, 150), - [1418] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_statement, 8, 0, 150), - [1420] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tuple, 2, 0, 0), - [1422] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_tuple_pattern, 2, 0, 0), REDUCE(sym_tuple, 2, 0, 0), - [1425] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_tuple, 2, 0, 0), - [1427] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tuple_pattern, 2, 0, 0), - [1429] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_tuple_pattern, 2, 0, 0), - [1431] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 8, 0, 156), - [1433] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 8, 0, 156), - [1435] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 8, 0, 157), - [1437] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 8, 0, 157), - [1439] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_statement, 9, 0, 158), - [1441] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_statement, 9, 0, 158), - [1443] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 9, 0, 159), - [1445] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 9, 0, 159), - [1447] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 9, 0, 160), - [1449] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 9, 0, 160), - [1451] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 9, 0, 165), - [1453] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 9, 0, 165), - [1455] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 10, 0, 166), - [1457] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 10, 0, 166), - [1459] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_with_statement, 4, 0, 58), - [1461] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_with_statement, 4, 0, 58), - [1463] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_list, 2, 0, 0), - [1465] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_list_pattern, 2, 0, 0), REDUCE(sym_list, 2, 0, 0), - [1468] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_list, 2, 0, 0), - [1470] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_list_pattern, 2, 0, 0), - [1472] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_list_pattern, 2, 0, 0), - [1474] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_statement, 4, 0, 60), - [1476] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_match_statement, 4, 0, 60), - [1478] = {.entry = {.count = 1, .reusable = false}}, SHIFT(859), - [1480] = {.entry = {.count = 1, .reusable = false}}, SHIFT(854), - [1482] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_keyword_separator, 1, 0, 0), - [1484] = {.entry = {.count = 1, .reusable = false}}, SHIFT(142), - [1486] = {.entry = {.count = 1, .reusable = false}}, SHIFT(625), - [1488] = {.entry = {.count = 1, .reusable = false}}, SHIFT(627), - [1490] = {.entry = {.count = 1, .reusable = false}}, SHIFT(633), - [1492] = {.entry = {.count = 1, .reusable = false}}, SHIFT(656), - [1494] = {.entry = {.count = 1, .reusable = false}}, SHIFT(691), - [1496] = {.entry = {.count = 1, .reusable = false}}, SHIFT(688), - [1498] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1004), - [1500] = {.entry = {.count = 1, .reusable = false}}, SHIFT(997), - [1502] = {.entry = {.count = 1, .reusable = false}}, SHIFT(236), - [1504] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_concatenated_string, 2, 0, 0), - [1506] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_concatenated_string, 2, 0, 0), - [1508] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_concatenated_template_string, 2, 0, 0), - [1510] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_concatenated_template_string, 2, 0, 0), - [1512] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_concatenated_string_repeat1, 2, 0, 0), - [1514] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_concatenated_string_repeat1, 2, 0, 0), - [1516] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_concatenated_string_repeat1, 2, 0, 0), SHIFT_REPEAT(1037), - [1519] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_concatenated_template_string_repeat1, 2, 0, 0), - [1521] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_concatenated_template_string_repeat1, 2, 0, 0), - [1523] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_concatenated_template_string_repeat1, 2, 0, 0), SHIFT_REPEAT(1038), - [1526] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_string, 2, 0, 2), - [1528] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_string, 2, 0, 2), - [1530] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_string, 3, 0, 20), - [1532] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_string, 3, 0, 20), - [1534] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_template_string, 3, 0, 20), - [1536] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_template_string, 3, 0, 20), - [1538] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_template_string, 2, 0, 2), - [1540] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_template_string, 2, 0, 2), - [1542] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_argument_list, 4, 0, 96), - [1544] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_argument_list, 4, 0, 96), - [1546] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_dictionary, 4, 0, 32), - [1548] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_dictionary, 4, 0, 32), - [1550] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_argument_list, 3, 0, 0), - [1552] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_argument_list, 3, 0, 0), - [1554] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_dictionary, 5, 0, 62), - [1556] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_dictionary, 5, 0, 62), - [1558] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_argument_list, 3, 0, 32), - [1560] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_argument_list, 3, 0, 32), - [1562] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_dictionary, 2, 0, 0), - [1564] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_dictionary, 2, 0, 0), - [1566] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_argument_list, 5, 0, 62), - [1568] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_argument_list, 5, 0, 62), - [1570] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_argument_list, 5, 0, 96), - [1572] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_argument_list, 5, 0, 96), - [1574] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_argument_list, 3, 0, 68), - [1576] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_argument_list, 3, 0, 68), - [1578] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_dictionary, 4, 0, 62), - [1580] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_dictionary, 4, 0, 62), - [1582] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_argument_list, 4, 0, 32), - [1584] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_argument_list, 4, 0, 32), - [1586] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_argument_list, 4, 0, 62), - [1588] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_argument_list, 4, 0, 62), - [1590] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_generator_expression, 4, 0, 52), - [1592] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_generator_expression, 4, 0, 52), - [1594] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parenthesized_expression, 3, 0, 28), - [1596] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_parenthesized_expression, 3, 0, 28), - [1598] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tuple, 3, 0, 27), - [1600] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_tuple, 3, 0, 27), - [1602] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1637), - [1604] = {.entry = {.count = 1, .reusable = true}}, SHIFT(186), - [1606] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression, 1, 0, 0), - [1608] = {.entry = {.count = 1, .reusable = false}}, SHIFT(646), - [1610] = {.entry = {.count = 1, .reusable = true}}, SHIFT(647), - [1612] = {.entry = {.count = 1, .reusable = true}}, SHIFT(648), - [1614] = {.entry = {.count = 1, .reusable = true}}, SHIFT(649), - [1616] = {.entry = {.count = 1, .reusable = true}}, SHIFT(650), - [1618] = {.entry = {.count = 1, .reusable = true}}, SHIFT(233), - [1620] = {.entry = {.count = 1, .reusable = true}}, SHIFT(651), - [1622] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_expression, 1, 0, 0), - [1624] = {.entry = {.count = 1, .reusable = true}}, SHIFT(646), - [1626] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1729), - [1628] = {.entry = {.count = 1, .reusable = true}}, SHIFT(652), - [1630] = {.entry = {.count = 1, .reusable = true}}, SHIFT(653), - [1632] = {.entry = {.count = 1, .reusable = false}}, SHIFT(648), - [1634] = {.entry = {.count = 1, .reusable = true}}, SHIFT(619), - [1636] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_list, 3, 0, 27), - [1638] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_list, 3, 0, 27), - [1640] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_dictionary, 3, 0, 0), - [1642] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_dictionary, 3, 0, 0), - [1644] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_dictionary, 3, 0, 32), - [1646] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_dictionary, 3, 0, 32), - [1648] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_set, 3, 0, 27), - [1650] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_set, 3, 0, 27), - [1652] = {.entry = {.count = 1, .reusable = false}}, SHIFT(665), - [1654] = {.entry = {.count = 1, .reusable = true}}, SHIFT(666), - [1656] = {.entry = {.count = 1, .reusable = true}}, SHIFT(667), - [1658] = {.entry = {.count = 1, .reusable = true}}, SHIFT(668), - [1660] = {.entry = {.count = 1, .reusable = true}}, SHIFT(669), - [1662] = {.entry = {.count = 1, .reusable = true}}, SHIFT(670), - [1664] = {.entry = {.count = 1, .reusable = true}}, SHIFT(665), - [1666] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1641), - [1668] = {.entry = {.count = 1, .reusable = true}}, SHIFT(671), - [1670] = {.entry = {.count = 1, .reusable = true}}, SHIFT(672), - [1672] = {.entry = {.count = 1, .reusable = false}}, SHIFT(667), - [1674] = {.entry = {.count = 1, .reusable = true}}, SHIFT(620), - [1676] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_set_comprehension, 4, 0, 52), - [1678] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_set_comprehension, 4, 0, 52), - [1680] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_dictionary_comprehension, 4, 0, 52), - [1682] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_dictionary_comprehension, 4, 0, 52), - [1684] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_list_comprehension, 4, 0, 52), - [1686] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_list_comprehension, 4, 0, 52), - [1688] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_argument_list, 4, 0, 68), - [1690] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_argument_list, 4, 0, 68), - [1692] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_argument_list, 2, 0, 0), - [1694] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_argument_list, 2, 0, 0), - [1696] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_call, 2, 0, 17), - [1698] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_call, 2, 0, 17), - [1700] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_unary_operator, 2, 0, 13), - [1702] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_unary_operator, 2, 0, 13), - [1704] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 3, 0, 73), - [1706] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_comparison_operator_repeat1, 3, 0, 73), - [1708] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_concatenated_template_string_repeat1, 2, 0, 0), SHIFT_REPEAT(1044), - [1711] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_binary_operator, 3, 0, 40), - [1713] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_binary_operator, 3, 0, 40), - [1715] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_await, 2, 0, 0), - [1717] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_await, 2, 0, 0), - [1719] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 3, 0, 72), - [1721] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_comparison_operator_repeat1, 3, 0, 72), - [1723] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 42), - [1725] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 42), - [1727] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_concatenated_string_repeat1, 2, 0, 0), SHIFT_REPEAT(1062), - [1730] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1643), - [1732] = {.entry = {.count = 1, .reusable = true}}, SHIFT(174), - [1734] = {.entry = {.count = 1, .reusable = false}}, SHIFT(628), - [1736] = {.entry = {.count = 1, .reusable = true}}, SHIFT(631), - [1738] = {.entry = {.count = 1, .reusable = true}}, SHIFT(654), - [1740] = {.entry = {.count = 1, .reusable = true}}, SHIFT(674), - [1742] = {.entry = {.count = 1, .reusable = true}}, SHIFT(686), - [1744] = {.entry = {.count = 1, .reusable = true}}, SHIFT(241), - [1746] = {.entry = {.count = 1, .reusable = true}}, SHIFT(694), - [1748] = {.entry = {.count = 1, .reusable = true}}, SHIFT(628), - [1750] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1723), - [1752] = {.entry = {.count = 1, .reusable = true}}, SHIFT(623), - [1754] = {.entry = {.count = 1, .reusable = true}}, SHIFT(624), - [1756] = {.entry = {.count = 1, .reusable = false}}, SHIFT(654), - [1758] = {.entry = {.count = 1, .reusable = true}}, SHIFT(617), - [1760] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1615), - [1762] = {.entry = {.count = 1, .reusable = true}}, SHIFT(175), - [1764] = {.entry = {.count = 1, .reusable = false}}, SHIFT(638), - [1766] = {.entry = {.count = 1, .reusable = true}}, SHIFT(641), - [1768] = {.entry = {.count = 1, .reusable = true}}, SHIFT(643), - [1770] = {.entry = {.count = 1, .reusable = true}}, SHIFT(644), - [1772] = {.entry = {.count = 1, .reusable = true}}, SHIFT(622), - [1774] = {.entry = {.count = 1, .reusable = true}}, SHIFT(238), - [1776] = {.entry = {.count = 1, .reusable = true}}, SHIFT(663), - [1778] = {.entry = {.count = 1, .reusable = true}}, SHIFT(638), - [1780] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1691), - [1782] = {.entry = {.count = 1, .reusable = true}}, SHIFT(659), - [1784] = {.entry = {.count = 1, .reusable = true}}, SHIFT(630), - [1786] = {.entry = {.count = 1, .reusable = false}}, SHIFT(643), - [1788] = {.entry = {.count = 1, .reusable = true}}, SHIFT(618), - [1790] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_concatenated_string_repeat1, 2, 0, 0), SHIFT_REPEAT(1051), - [1793] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_concatenated_template_string_repeat1, 2, 0, 0), SHIFT_REPEAT(1048), - [1796] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_concatenated_template_string_repeat1, 2, 0, 0), SHIFT_REPEAT(1042), - [1799] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_concatenated_string_repeat1, 2, 0, 0), SHIFT_REPEAT(1053), - [1802] = {.entry = {.count = 1, .reusable = false}}, SHIFT(678), - [1804] = {.entry = {.count = 1, .reusable = true}}, SHIFT(679), - [1806] = {.entry = {.count = 1, .reusable = true}}, SHIFT(680), - [1808] = {.entry = {.count = 1, .reusable = true}}, SHIFT(681), - [1810] = {.entry = {.count = 1, .reusable = true}}, SHIFT(682), - [1812] = {.entry = {.count = 1, .reusable = true}}, SHIFT(683), - [1814] = {.entry = {.count = 1, .reusable = true}}, SHIFT(678), - [1816] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1683), - [1818] = {.entry = {.count = 1, .reusable = true}}, SHIFT(684), - [1820] = {.entry = {.count = 1, .reusable = true}}, SHIFT(685), - [1822] = {.entry = {.count = 1, .reusable = false}}, SHIFT(680), - [1824] = {.entry = {.count = 1, .reusable = true}}, SHIFT(621), - [1826] = {.entry = {.count = 1, .reusable = true}}, SHIFT(388), - [1828] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1722), - [1830] = {.entry = {.count = 1, .reusable = true}}, SHIFT(188), - [1832] = {.entry = {.count = 1, .reusable = false}}, SHIFT(637), - [1834] = {.entry = {.count = 1, .reusable = true}}, SHIFT(639), - [1836] = {.entry = {.count = 1, .reusable = true}}, SHIFT(640), - [1838] = {.entry = {.count = 1, .reusable = true}}, SHIFT(642), - [1840] = {.entry = {.count = 1, .reusable = true}}, SHIFT(695), - [1842] = {.entry = {.count = 1, .reusable = true}}, SHIFT(240), - [1844] = {.entry = {.count = 1, .reusable = true}}, SHIFT(661), - [1846] = {.entry = {.count = 1, .reusable = true}}, SHIFT(637), - [1848] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1656), - [1850] = {.entry = {.count = 1, .reusable = true}}, SHIFT(664), - [1852] = {.entry = {.count = 1, .reusable = true}}, SHIFT(677), - [1854] = {.entry = {.count = 1, .reusable = false}}, SHIFT(640), - [1856] = {.entry = {.count = 1, .reusable = true}}, SHIFT(616), - [1858] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1060), - [1860] = {.entry = {.count = 1, .reusable = true}}, SHIFT(889), - [1862] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1497), - [1864] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1579), - [1866] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1139), - [1868] = {.entry = {.count = 1, .reusable = true}}, SHIFT(899), - [1870] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1007), - [1872] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1088), - [1874] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1088), - [1876] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1168), - [1878] = {.entry = {.count = 1, .reusable = false}}, SHIFT(351), - [1880] = {.entry = {.count = 1, .reusable = true}}, SHIFT(410), - [1882] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_open_sequence_match_pattern, 3, 0, 0), - [1884] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_open_sequence_match_pattern, 3, 0, 0), - [1886] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_open_sequence_match_pattern, 2, 0, 0), - [1888] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_open_sequence_match_pattern, 2, 0, 0), - [1890] = {.entry = {.count = 1, .reusable = false}}, SHIFT(367), - [1892] = {.entry = {.count = 1, .reusable = true}}, SHIFT(357), - [1894] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1114), - [1896] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1148), - [1898] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1129), - [1900] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1111), - [1902] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1110), - [1904] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1133), - [1906] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1137), - [1908] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1098), - [1910] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1132), - [1912] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_comparison_operator, 2, 0, 18), - [1914] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_comparison_operator, 2, 0, 18), - [1916] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 43), - [1918] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 43), - [1920] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 43), SHIFT_REPEAT(667), - [1923] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 43), SHIFT_REPEAT(1641), - [1926] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 43), SHIFT_REPEAT(667), - [1929] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 43), SHIFT_REPEAT(620), - [1932] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 43), SHIFT_REPEAT(648), - [1935] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 43), SHIFT_REPEAT(1729), - [1938] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 43), SHIFT_REPEAT(648), - [1941] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 43), SHIFT_REPEAT(619), - [1944] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__patterns_repeat1, 2, 0, 37), - [1946] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__patterns_repeat1, 2, 0, 37), SHIFT_REPEAT(590), - [1949] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1558), - [1951] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1130), - [1953] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1557), - [1955] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 43), SHIFT_REPEAT(680), - [1958] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 43), SHIFT_REPEAT(1683), - [1961] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 43), SHIFT_REPEAT(680), - [1964] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 43), SHIFT_REPEAT(621), - [1967] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__patterns_repeat1, 2, 0, 32), - [1969] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_list_pattern, 3, 0, 27), - [1971] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 43), SHIFT_REPEAT(643), - [1974] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 43), SHIFT_REPEAT(1691), - [1977] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 43), SHIFT_REPEAT(643), - [1980] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 43), SHIFT_REPEAT(618), - [1983] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tuple_pattern, 3, 0, 27), - [1985] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 43), SHIFT_REPEAT(654), - [1988] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 43), SHIFT_REPEAT(1723), - [1991] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 43), SHIFT_REPEAT(654), - [1994] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 43), SHIFT_REPEAT(617), - [1997] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_dictionary_splat_pattern, 2, 0, 35), - [1999] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1150), - [2001] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1116), - [2003] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 43), SHIFT_REPEAT(640), - [2006] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 43), SHIFT_REPEAT(1656), - [2009] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 43), SHIFT_REPEAT(640), - [2012] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 43), SHIFT_REPEAT(616), - [2015] = {.entry = {.count = 1, .reusable = true}}, SHIFT(159), + [1012] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_print_statement, 3, 0, 0), + [1014] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_print_statement, 3, 0, 10), + [1016] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_slice, 4, 0, 98), + [1018] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1704), + [1020] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_slice, 3, 0, 69), + [1022] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_block, 1, 0, 0), + [1024] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_block, 1, 0, 0), + [1026] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__simple_statements, 3, 0, 0), + [1028] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__simple_statements, 3, 0, 0), + [1030] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_subscript, 4, 0, 71), + [1032] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_subscript, 4, 0, 71), + [1034] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_try_statement_repeat1, 2, 0, 0), + [1036] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_try_statement_repeat1, 2, 0, 0), + [1038] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_try_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(292), + [1041] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_try_statement_repeat2, 2, 0, 0), + [1043] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_try_statement_repeat2, 2, 0, 0), + [1045] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_try_statement_repeat2, 2, 0, 0), SHIFT_REPEAT(1739), + [1048] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attribute, 3, 0, 41), + [1050] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_attribute, 3, 0, 41), + [1052] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__simple_statements, 2, 0, 0), + [1054] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__simple_statements, 2, 0, 0), + [1056] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_statement, 6, 0, 105), + [1058] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_statement, 6, 0, 105), + [1060] = {.entry = {.count = 1, .reusable = false}}, SHIFT(394), + [1062] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_statement, 4, 0, 55), + [1064] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_statement, 4, 0, 55), + [1066] = {.entry = {.count = 1, .reusable = false}}, SHIFT(431), + [1068] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_statement, 5, 0, 79), + [1070] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_statement, 5, 0, 79), + [1072] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_statement, 5, 0, 80), + [1074] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_statement, 5, 0, 80), + [1076] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_try_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(304), + [1079] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__simple_statements, 4, 0, 0), + [1081] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__simple_statements, 4, 0, 0), + [1083] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_try_statement_repeat2, 2, 0, 0), SHIFT_REPEAT(1736), + [1086] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_block, 2, 0, 0), + [1088] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_block, 2, 0, 0), + [1090] = {.entry = {.count = 1, .reusable = false}}, SHIFT(617), + [1092] = {.entry = {.count = 1, .reusable = false}}, SHIFT(618), + [1094] = {.entry = {.count = 1, .reusable = false}}, SHIFT(135), + [1096] = {.entry = {.count = 1, .reusable = true}}, SHIFT(509), + [1098] = {.entry = {.count = 1, .reusable = true}}, SHIFT(290), + [1100] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1705), + [1102] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_if_statement_repeat1, 2, 0, 103), + [1104] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_if_statement_repeat1, 2, 0, 103), + [1106] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_if_statement_repeat1, 2, 0, 103), SHIFT_REPEAT(431), + [1109] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_if_statement_repeat1, 2, 0, 103), SHIFT_REPEAT(394), + [1112] = {.entry = {.count = 1, .reusable = false}}, SHIFT(849), + [1114] = {.entry = {.count = 1, .reusable = false}}, SHIFT(859), + [1116] = {.entry = {.count = 1, .reusable = false}}, SHIFT(148), + [1118] = {.entry = {.count = 1, .reusable = true}}, SHIFT(506), + [1120] = {.entry = {.count = 1, .reusable = true}}, SHIFT(306), + [1122] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1746), + [1124] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_except_group_clause, 8, 0, 169), + [1126] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_except_group_clause, 8, 0, 169), + [1128] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_cases, 1, 0, 0), + [1130] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_cases, 1, 0, 0), + [1132] = {.entry = {.count = 1, .reusable = false}}, SHIFT(870), + [1134] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_except_clause, 4, 0, 134), + [1136] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_except_clause, 4, 0, 134), + [1138] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_except_group_clause, 6, 0, 161), + [1140] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_except_group_clause, 6, 0, 161), + [1142] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_except_clause, 6, 0, 162), + [1144] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_except_clause, 6, 0, 162), + [1146] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_cases_repeat1, 2, 0, 0), + [1148] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_cases_repeat1, 2, 0, 0), + [1150] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_cases_repeat1, 2, 0, 0), SHIFT_REPEAT(870), + [1153] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_cases_repeat1, 2, 0, 0), SHIFT_REPEAT(869), + [1156] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_except_group_clause, 7, 0, 167), + [1158] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_except_group_clause, 7, 0, 167), + [1160] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_except_clause, 4, 0, 84), + [1162] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_except_clause, 4, 0, 84), + [1164] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_except_clause, 3, 0, 57), + [1166] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_except_clause, 3, 0, 57), + [1168] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_except_clause, 7, 0, 168), + [1170] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_except_clause, 7, 0, 168), + [1172] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1054), + [1174] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1385), + [1176] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1269), + [1178] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_except_clause, 5, 0, 152), + [1180] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_except_clause, 5, 0, 152), + [1182] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_except_group_clause, 5, 0, 151), + [1184] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_except_group_clause, 5, 0, 151), + [1186] = {.entry = {.count = 1, .reusable = false}}, SHIFT(869), + [1188] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1422), + [1190] = {.entry = {.count = 1, .reusable = true}}, SHIFT(632), + [1192] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__patterns, 2, 0, 26), + [1194] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_elif_clause, 4, 0, 55), + [1196] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_elif_clause, 4, 0, 55), + [1198] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_statement, 8, 0, 147), + [1200] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_statement, 8, 0, 147), + [1202] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1416), + [1204] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_primary_expression, 1, 0, 0), + [1206] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_primary_expression, 1, 0, 0), REDUCE(sym_list_splat_pattern, 2, 0, 9), + [1209] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_primary_expression, 1, 0, 0), + [1211] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_list_splat_pattern, 2, 0, 9), + [1213] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_list_splat_pattern, 2, 0, 9), + [1215] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__patterns, 3, 0, 52), + [1217] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_elif_clause, 5, 0, 80), + [1219] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_elif_clause, 5, 0, 80), + [1221] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_if_statement_repeat1, 1, 0, 77), + [1223] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_if_statement_repeat1, 1, 0, 77), + [1225] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_statement, 6, 0, 108), + [1227] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_statement, 6, 0, 108), + [1229] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_while_statement, 4, 0, 56), + [1231] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_while_statement, 4, 0, 56), + [1233] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_try_statement, 6, 0, 84), + [1235] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_try_statement, 6, 0, 84), + [1237] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_while_statement, 5, 0, 83), + [1239] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_while_statement, 5, 0, 83), + [1241] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_try_statement, 5, 0, 57), + [1243] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_try_statement, 5, 0, 57), + [1245] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_statement, 7, 0, 129), + [1247] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_statement, 7, 0, 129), + [1249] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_statement, 7, 0, 133), + [1251] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_statement, 7, 0, 133), + [1253] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_else_clause, 3, 0, 57), + [1255] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_else_clause, 3, 0, 57), + [1257] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_case_block, 5, 0, 154), + [1259] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_case_block, 5, 0, 154), + [1261] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_case_block, 5, 0, 155), + [1263] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_case_block, 5, 0, 155), + [1265] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_pattern, 1, 0, 0), REDUCE(sym_primary_expression, 1, 0, 0), + [1268] = {.entry = {.count = 1, .reusable = true}}, SHIFT(369), + [1270] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_pattern, 1, 0, 0), + [1272] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_pattern, 1, 0, 0), + [1274] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_case_block, 4, 0, 138), + [1276] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_case_block, 4, 0, 138), + [1278] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_else_clause, 4, 0, 84), + [1280] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_else_clause, 4, 0, 84), + [1282] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_case_block, 6, 0, 163), + [1284] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_case_block, 6, 0, 163), + [1286] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_class_definition, 4, 0, 65), + [1288] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_class_definition, 4, 0, 65), + [1290] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_list, 2, 0, 0), + [1292] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_list_pattern, 2, 0, 0), REDUCE(sym_list, 2, 0, 0), + [1295] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_list, 2, 0, 0), + [1297] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_list_pattern, 2, 0, 0), + [1299] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_list_pattern, 2, 0, 0), + [1301] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_statement, 9, 0, 158), + [1303] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_statement, 9, 0, 158), + [1305] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 9, 0, 159), + [1307] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 9, 0, 159), + [1309] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 9, 0, 160), + [1311] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 9, 0, 160), + [1313] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_class_definition, 5, 0, 93), + [1315] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_class_definition, 5, 0, 93), + [1317] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_statement, 6, 0, 102), + [1319] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_statement, 6, 0, 102), + [1321] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_statement, 6, 0, 104), + [1323] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_statement, 6, 0, 104), + [1325] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 9, 0, 165), + [1327] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 9, 0, 165), + [1329] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 10, 0, 166), + [1331] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 10, 0, 166), + [1333] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tuple, 2, 0, 0), + [1335] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_tuple_pattern, 2, 0, 0), REDUCE(sym_tuple, 2, 0, 0), + [1338] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_tuple, 2, 0, 0), + [1340] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tuple_pattern, 2, 0, 0), + [1342] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_tuple_pattern, 2, 0, 0), + [1344] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_with_statement, 6, 0, 106), + [1346] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_with_statement, 6, 0, 106), + [1348] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 6, 0, 107), + [1350] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 6, 0, 107), + [1352] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_statement, 8, 0, 146), + [1354] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_statement, 8, 0, 146), + [1356] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_statement, 5, 0, 78), + [1358] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_statement, 5, 0, 78), + [1360] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_while_statement, 6, 0, 109), + [1362] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_while_statement, 6, 0, 109), + [1364] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_with_statement, 5, 0, 81), + [1366] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_with_statement, 5, 0, 81), + [1368] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_finally_clause, 3, 0, 57), + [1370] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_finally_clause, 3, 0, 57), + [1372] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_decorated_definition, 2, 0, 19), + [1374] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_decorated_definition, 2, 0, 19), + [1376] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_try_statement, 6, 0, 57), + [1378] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_try_statement, 6, 0, 57), + [1380] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 8, 0, 148), + [1382] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 8, 0, 148), + [1384] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_while_statement, 5, 0, 82), + [1386] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_while_statement, 5, 0, 82), + [1388] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_class_definition, 5, 0, 94), + [1390] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_class_definition, 5, 0, 94), + [1392] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 6, 0, 117), + [1394] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 6, 0, 117), + [1396] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 8, 0, 149), + [1398] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 8, 0, 149), + [1400] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 6, 0, 118), + [1402] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 6, 0, 118), + [1404] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_with_statement, 4, 0, 58), + [1406] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_with_statement, 4, 0, 58), + [1408] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_match_statement, 4, 0, 60), + [1410] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_statement, 4, 0, 60), + [1412] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_match_statement, 4, 0, 61), + [1414] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_statement, 4, 0, 61), + [1416] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_class_definition, 6, 0, 119), + [1418] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_class_definition, 6, 0, 119), + [1420] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_class_definition, 6, 0, 120), + [1422] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_class_definition, 6, 0, 120), + [1424] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_class_definition, 6, 0, 121), + [1426] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_class_definition, 6, 0, 121), + [1428] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_statement, 8, 0, 150), + [1430] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_statement, 8, 0, 150), + [1432] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_with_statement, 5, 0, 85), + [1434] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_with_statement, 5, 0, 85), + [1436] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_class_definition, 5, 0, 92), + [1438] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_class_definition, 5, 0, 92), + [1440] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_statement, 7, 0, 128), + [1442] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_statement, 7, 0, 128), + [1444] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 7, 0, 130), + [1446] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 7, 0, 130), + [1448] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 7, 0, 131), + [1450] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 7, 0, 131), + [1452] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_statement, 7, 0, 132), + [1454] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_statement, 7, 0, 132), + [1456] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_finally_clause, 4, 0, 84), + [1458] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_finally_clause, 4, 0, 84), + [1460] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_try_statement, 7, 0, 84), + [1462] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_try_statement, 7, 0, 84), + [1464] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 7, 0, 141), + [1466] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 7, 0, 141), + [1468] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 7, 0, 142), + [1470] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 7, 0, 142), + [1472] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_class_definition, 7, 0, 143), + [1474] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_class_definition, 7, 0, 143), + [1476] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 8, 0, 156), + [1478] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 8, 0, 156), + [1480] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 8, 0, 157), + [1482] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 8, 0, 157), + [1484] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 5, 0, 90), + [1486] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 5, 0, 90), + [1488] = {.entry = {.count = 1, .reusable = true}}, SHIFT(355), + [1490] = {.entry = {.count = 1, .reusable = false}}, SHIFT(860), + [1492] = {.entry = {.count = 1, .reusable = false}}, SHIFT(871), + [1494] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_keyword_separator, 1, 0, 0), + [1496] = {.entry = {.count = 1, .reusable = false}}, SHIFT(143), + [1498] = {.entry = {.count = 1, .reusable = false}}, SHIFT(647), + [1500] = {.entry = {.count = 1, .reusable = false}}, SHIFT(671), + [1502] = {.entry = {.count = 1, .reusable = false}}, SHIFT(652), + [1504] = {.entry = {.count = 1, .reusable = false}}, SHIFT(633), + [1506] = {.entry = {.count = 1, .reusable = false}}, SHIFT(675), + [1508] = {.entry = {.count = 1, .reusable = false}}, SHIFT(687), + [1510] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_concatenated_template_string_repeat1, 2, 0, 0), + [1512] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_concatenated_template_string_repeat1, 2, 0, 0), + [1514] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_concatenated_template_string_repeat1, 2, 0, 0), SHIFT_REPEAT(1061), + [1517] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1013), + [1519] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1011), + [1521] = {.entry = {.count = 1, .reusable = false}}, SHIFT(244), + [1523] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_concatenated_string_repeat1, 2, 0, 0), + [1525] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_concatenated_string_repeat1, 2, 0, 0), + [1527] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_concatenated_string_repeat1, 2, 0, 0), SHIFT_REPEAT(1059), + [1530] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_concatenated_string, 2, 0, 0), + [1532] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_concatenated_string, 2, 0, 0), + [1534] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_concatenated_template_string, 2, 0, 0), + [1536] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_concatenated_template_string, 2, 0, 0), + [1538] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_template_string, 3, 0, 20), + [1540] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_template_string, 3, 0, 20), + [1542] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_template_string, 2, 0, 2), + [1544] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_template_string, 2, 0, 2), + [1546] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_string, 2, 0, 2), + [1548] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_string, 2, 0, 2), + [1550] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_string, 3, 0, 20), + [1552] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_string, 3, 0, 20), + [1554] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1681), + [1556] = {.entry = {.count = 1, .reusable = true}}, SHIFT(181), + [1558] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression, 1, 0, 0), + [1560] = {.entry = {.count = 1, .reusable = false}}, SHIFT(674), + [1562] = {.entry = {.count = 1, .reusable = true}}, SHIFT(676), + [1564] = {.entry = {.count = 1, .reusable = true}}, SHIFT(677), + [1566] = {.entry = {.count = 1, .reusable = true}}, SHIFT(678), + [1568] = {.entry = {.count = 1, .reusable = true}}, SHIFT(680), + [1570] = {.entry = {.count = 1, .reusable = true}}, SHIFT(241), + [1572] = {.entry = {.count = 1, .reusable = true}}, SHIFT(681), + [1574] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_expression, 1, 0, 0), + [1576] = {.entry = {.count = 1, .reusable = true}}, SHIFT(674), + [1578] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1710), + [1580] = {.entry = {.count = 1, .reusable = true}}, SHIFT(682), + [1582] = {.entry = {.count = 1, .reusable = true}}, SHIFT(683), + [1584] = {.entry = {.count = 1, .reusable = false}}, SHIFT(677), + [1586] = {.entry = {.count = 1, .reusable = true}}, SHIFT(625), + [1588] = {.entry = {.count = 1, .reusable = false}}, SHIFT(645), + [1590] = {.entry = {.count = 1, .reusable = true}}, SHIFT(649), + [1592] = {.entry = {.count = 1, .reusable = true}}, SHIFT(650), + [1594] = {.entry = {.count = 1, .reusable = true}}, SHIFT(654), + [1596] = {.entry = {.count = 1, .reusable = true}}, SHIFT(655), + [1598] = {.entry = {.count = 1, .reusable = true}}, SHIFT(656), + [1600] = {.entry = {.count = 1, .reusable = true}}, SHIFT(645), + [1602] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1702), + [1604] = {.entry = {.count = 1, .reusable = true}}, SHIFT(626), + [1606] = {.entry = {.count = 1, .reusable = true}}, SHIFT(659), + [1608] = {.entry = {.count = 1, .reusable = false}}, SHIFT(650), + [1610] = {.entry = {.count = 1, .reusable = true}}, SHIFT(624), + [1612] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_dictionary, 2, 0, 0), + [1614] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_dictionary, 2, 0, 0), + [1616] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_call, 2, 0, 17), + [1618] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_call, 2, 0, 17), + [1620] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parenthesized_expression, 3, 0, 28), + [1622] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_parenthesized_expression, 3, 0, 28), + [1624] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tuple, 3, 0, 27), + [1626] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_tuple, 3, 0, 27), + [1628] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_list, 3, 0, 27), + [1630] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_list, 3, 0, 27), + [1632] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_dictionary, 3, 0, 0), + [1634] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_dictionary, 3, 0, 0), + [1636] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_dictionary, 3, 0, 32), + [1638] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_dictionary, 3, 0, 32), + [1640] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_set, 3, 0, 27), + [1642] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_set, 3, 0, 27), + [1644] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_argument_list, 2, 0, 0), + [1646] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_argument_list, 2, 0, 0), + [1648] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_generator_expression, 4, 0, 51), + [1650] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_generator_expression, 4, 0, 51), + [1652] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_list_comprehension, 4, 0, 51), + [1654] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_list_comprehension, 4, 0, 51), + [1656] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_set_comprehension, 4, 0, 51), + [1658] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_set_comprehension, 4, 0, 51), + [1660] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_dictionary, 4, 0, 32), + [1662] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_dictionary, 4, 0, 32), + [1664] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_dictionary, 4, 0, 62), + [1666] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_dictionary, 4, 0, 62), + [1668] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_argument_list, 3, 0, 0), + [1670] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_argument_list, 3, 0, 0), + [1672] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_argument_list, 3, 0, 32), + [1674] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_argument_list, 3, 0, 32), + [1676] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_argument_list, 3, 0, 68), + [1678] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_argument_list, 3, 0, 68), + [1680] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_dictionary, 5, 0, 62), + [1682] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_dictionary, 5, 0, 62), + [1684] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_argument_list, 4, 0, 32), + [1686] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_argument_list, 4, 0, 32), + [1688] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_argument_list, 4, 0, 62), + [1690] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_argument_list, 4, 0, 62), + [1692] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_argument_list, 4, 0, 68), + [1694] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_argument_list, 4, 0, 68), + [1696] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_argument_list, 4, 0, 96), + [1698] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_argument_list, 4, 0, 96), + [1700] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_argument_list, 5, 0, 62), + [1702] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_argument_list, 5, 0, 62), + [1704] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_argument_list, 5, 0, 96), + [1706] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_argument_list, 5, 0, 96), + [1708] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_dictionary_comprehension, 4, 0, 51), + [1710] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_dictionary_comprehension, 4, 0, 51), + [1712] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_binary_operator, 3, 0, 40), + [1714] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_binary_operator, 3, 0, 40), + [1716] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 3, 0, 72), + [1718] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_comparison_operator_repeat1, 3, 0, 72), + [1720] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 3, 0, 73), + [1722] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_comparison_operator_repeat1, 3, 0, 73), + [1724] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_await, 2, 0, 0), + [1726] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_await, 2, 0, 0), + [1728] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_unary_operator, 2, 0, 13), + [1730] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_unary_operator, 2, 0, 13), + [1732] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_concatenated_string_repeat1, 2, 0, 0), SHIFT_REPEAT(1049), + [1735] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_concatenated_template_string_repeat1, 2, 0, 0), SHIFT_REPEAT(1050), + [1738] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 42), + [1740] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 42), + [1742] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_concatenated_string_repeat1, 2, 0, 0), SHIFT_REPEAT(1060), + [1745] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_concatenated_template_string_repeat1, 2, 0, 0), SHIFT_REPEAT(1055), + [1748] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1631), + [1750] = {.entry = {.count = 1, .reusable = true}}, SHIFT(178), + [1752] = {.entry = {.count = 1, .reusable = false}}, SHIFT(644), + [1754] = {.entry = {.count = 1, .reusable = true}}, SHIFT(634), + [1756] = {.entry = {.count = 1, .reusable = true}}, SHIFT(637), + [1758] = {.entry = {.count = 1, .reusable = true}}, SHIFT(640), + [1760] = {.entry = {.count = 1, .reusable = true}}, SHIFT(668), + [1762] = {.entry = {.count = 1, .reusable = true}}, SHIFT(242), + [1764] = {.entry = {.count = 1, .reusable = true}}, SHIFT(646), + [1766] = {.entry = {.count = 1, .reusable = true}}, SHIFT(644), + [1768] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1619), + [1770] = {.entry = {.count = 1, .reusable = true}}, SHIFT(653), + [1772] = {.entry = {.count = 1, .reusable = true}}, SHIFT(691), + [1774] = {.entry = {.count = 1, .reusable = false}}, SHIFT(637), + [1776] = {.entry = {.count = 1, .reusable = true}}, SHIFT(620), + [1778] = {.entry = {.count = 1, .reusable = false}}, SHIFT(661), + [1780] = {.entry = {.count = 1, .reusable = true}}, SHIFT(662), + [1782] = {.entry = {.count = 1, .reusable = true}}, SHIFT(663), + [1784] = {.entry = {.count = 1, .reusable = true}}, SHIFT(699), + [1786] = {.entry = {.count = 1, .reusable = true}}, SHIFT(664), + [1788] = {.entry = {.count = 1, .reusable = true}}, SHIFT(665), + [1790] = {.entry = {.count = 1, .reusable = true}}, SHIFT(661), + [1792] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1698), + [1794] = {.entry = {.count = 1, .reusable = true}}, SHIFT(666), + [1796] = {.entry = {.count = 1, .reusable = true}}, SHIFT(667), + [1798] = {.entry = {.count = 1, .reusable = false}}, SHIFT(663), + [1800] = {.entry = {.count = 1, .reusable = true}}, SHIFT(621), + [1802] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_concatenated_string_repeat1, 2, 0, 0), SHIFT_REPEAT(1044), + [1805] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_concatenated_template_string_repeat1, 2, 0, 0), SHIFT_REPEAT(1040), + [1808] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1668), + [1810] = {.entry = {.count = 1, .reusable = true}}, SHIFT(188), + [1812] = {.entry = {.count = 1, .reusable = false}}, SHIFT(657), + [1814] = {.entry = {.count = 1, .reusable = true}}, SHIFT(672), + [1816] = {.entry = {.count = 1, .reusable = true}}, SHIFT(695), + [1818] = {.entry = {.count = 1, .reusable = true}}, SHIFT(679), + [1820] = {.entry = {.count = 1, .reusable = true}}, SHIFT(689), + [1822] = {.entry = {.count = 1, .reusable = true}}, SHIFT(239), + [1824] = {.entry = {.count = 1, .reusable = true}}, SHIFT(630), + [1826] = {.entry = {.count = 1, .reusable = true}}, SHIFT(657), + [1828] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1730), + [1830] = {.entry = {.count = 1, .reusable = true}}, SHIFT(636), + [1832] = {.entry = {.count = 1, .reusable = true}}, SHIFT(638), + [1834] = {.entry = {.count = 1, .reusable = false}}, SHIFT(695), + [1836] = {.entry = {.count = 1, .reusable = true}}, SHIFT(622), + [1838] = {.entry = {.count = 1, .reusable = true}}, SHIFT(426), + [1840] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1703), + [1842] = {.entry = {.count = 1, .reusable = true}}, SHIFT(186), + [1844] = {.entry = {.count = 1, .reusable = false}}, SHIFT(697), + [1846] = {.entry = {.count = 1, .reusable = true}}, SHIFT(641), + [1848] = {.entry = {.count = 1, .reusable = true}}, SHIFT(696), + [1850] = {.entry = {.count = 1, .reusable = true}}, SHIFT(684), + [1852] = {.entry = {.count = 1, .reusable = true}}, SHIFT(631), + [1854] = {.entry = {.count = 1, .reusable = true}}, SHIFT(238), + [1856] = {.entry = {.count = 1, .reusable = true}}, SHIFT(629), + [1858] = {.entry = {.count = 1, .reusable = true}}, SHIFT(697), + [1860] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1672), + [1862] = {.entry = {.count = 1, .reusable = true}}, SHIFT(635), + [1864] = {.entry = {.count = 1, .reusable = true}}, SHIFT(660), + [1866] = {.entry = {.count = 1, .reusable = false}}, SHIFT(696), + [1868] = {.entry = {.count = 1, .reusable = true}}, SHIFT(623), + [1870] = {.entry = {.count = 1, .reusable = false}}, SHIFT(438), + [1872] = {.entry = {.count = 1, .reusable = true}}, SHIFT(411), + [1874] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1042), + [1876] = {.entry = {.count = 1, .reusable = true}}, SHIFT(896), + [1878] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1514), + [1880] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_open_sequence_match_pattern, 3, 0, 0), + [1882] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_open_sequence_match_pattern, 3, 0, 0), + [1884] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1587), + [1886] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1117), + [1888] = {.entry = {.count = 1, .reusable = true}}, SHIFT(897), + [1890] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1007), + [1892] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1078), + [1894] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1078), + [1896] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1116), + [1898] = {.entry = {.count = 1, .reusable = false}}, SHIFT(363), + [1900] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_open_sequence_match_pattern, 2, 0, 0), + [1902] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_open_sequence_match_pattern, 2, 0, 0), + [1904] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1142), + [1906] = {.entry = {.count = 1, .reusable = true}}, SHIFT(375), + [1908] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1130), + [1910] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1143), + [1912] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1160), + [1914] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1138), + [1916] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1141), + [1918] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1158), + [1920] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1136), + [1922] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1101), + [1924] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 43), + [1926] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 43), + [1928] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 43), SHIFT_REPEAT(650), + [1931] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 43), SHIFT_REPEAT(1702), + [1934] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 43), SHIFT_REPEAT(650), + [1937] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 43), SHIFT_REPEAT(624), + [1940] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_comparison_operator, 2, 0, 18), + [1942] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_comparison_operator, 2, 0, 18), + [1944] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 43), SHIFT_REPEAT(677), + [1947] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 43), SHIFT_REPEAT(1710), + [1950] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 43), SHIFT_REPEAT(677), + [1953] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 43), SHIFT_REPEAT(625), + [1956] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__patterns_repeat1, 2, 0, 37), + [1958] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__patterns_repeat1, 2, 0, 37), SHIFT_REPEAT(589), + [1961] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 43), SHIFT_REPEAT(637), + [1964] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 43), SHIFT_REPEAT(1619), + [1967] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 43), SHIFT_REPEAT(637), + [1970] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 43), SHIFT_REPEAT(620), + [1973] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__patterns_repeat1, 2, 0, 32), + [1975] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 43), SHIFT_REPEAT(695), + [1978] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 43), SHIFT_REPEAT(1730), + [1981] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 43), SHIFT_REPEAT(695), + [1984] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 43), SHIFT_REPEAT(622), + [1987] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1543), + [1989] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1132), + [1991] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1537), + [1993] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1176), + [1995] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_list_pattern, 3, 0, 27), + [1997] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1134), + [1999] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tuple_pattern, 3, 0, 27), + [2001] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_dictionary_splat_pattern, 2, 0, 35), + [2003] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 43), SHIFT_REPEAT(663), + [2006] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 43), SHIFT_REPEAT(1698), + [2009] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 43), SHIFT_REPEAT(663), + [2012] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 43), SHIFT_REPEAT(621), + [2015] = {.entry = {.count = 1, .reusable = true}}, SHIFT(162), [2017] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_pattern_list, 2, 0, 16), - [2019] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1500), - [2021] = {.entry = {.count = 1, .reusable = true}}, SHIFT(476), - [2023] = {.entry = {.count = 1, .reusable = false}}, SHIFT(615), - [2025] = {.entry = {.count = 1, .reusable = true}}, SHIFT(366), - [2027] = {.entry = {.count = 1, .reusable = true}}, SHIFT(632), - [2029] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1491), - [2031] = {.entry = {.count = 1, .reusable = true}}, SHIFT(409), - [2033] = {.entry = {.count = 1, .reusable = true}}, SHIFT(407), - [2035] = {.entry = {.count = 1, .reusable = true}}, SHIFT(160), - [2037] = {.entry = {.count = 1, .reusable = true}}, SHIFT(283), - [2039] = {.entry = {.count = 1, .reusable = true}}, SHIFT(153), - [2041] = {.entry = {.count = 1, .reusable = true}}, SHIFT(154), - [2043] = {.entry = {.count = 1, .reusable = true}}, SHIFT(386), - [2045] = {.entry = {.count = 1, .reusable = true}}, SHIFT(306), - [2047] = {.entry = {.count = 1, .reusable = true}}, SHIFT(337), - [2049] = {.entry = {.count = 1, .reusable = true}}, SHIFT(356), - [2051] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1324), - [2053] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1525), - [2055] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__parameters, 3, 0, 0), - [2057] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__parameters, 2, 0, 0), - [2059] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_not_operator, 2, 0, 10), - [2061] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_not_operator, 2, 0, 10), - [2063] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_match_value_pattern_repeat1, 2, 0, 0), - [2065] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_match_value_pattern_repeat1, 2, 0, 0), SHIFT_REPEAT(1662), - [2068] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_string_repeat1, 2, 0, 21), SHIFT_REPEAT(180), - [2071] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_string_repeat1, 2, 0, 21), SHIFT_REPEAT(1149), - [2074] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_string_repeat1, 2, 0, 21), SHIFT_REPEAT(1149), - [2077] = {.entry = {.count = 1, .reusable = false}}, SHIFT_EXTRA(), - [2079] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_string_repeat1, 2, 0, 21), - [2081] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_literal_pattern, 1, 0, 0), - [2083] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1662), - [2085] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_pattern_class_name, 2, 0, 0), - [2087] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_value_pattern, 2, 0, 0), - [2089] = {.entry = {.count = 1, .reusable = false}}, SHIFT(180), - [2091] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1149), - [2093] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1149), - [2095] = {.entry = {.count = 1, .reusable = true}}, SHIFT(696), - [2097] = {.entry = {.count = 1, .reusable = true}}, SHIFT(699), - [2099] = {.entry = {.count = 1, .reusable = true}}, SHIFT(697), - [2101] = {.entry = {.count = 1, .reusable = true}}, SHIFT(698), - [2103] = {.entry = {.count = 1, .reusable = true}}, SHIFT(176), - [2105] = {.entry = {.count = 1, .reusable = true}}, SHIFT(420), - [2107] = {.entry = {.count = 1, .reusable = true}}, SHIFT(347), - [2109] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1646), - [2111] = {.entry = {.count = 1, .reusable = true}}, SHIFT(504), - [2113] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__collection_elements, 1, 0, 7), - [2115] = {.entry = {.count = 1, .reusable = true}}, SHIFT(411), - [2117] = {.entry = {.count = 1, .reusable = true}}, SHIFT(412), - [2119] = {.entry = {.count = 1, .reusable = true}}, SHIFT(857), - [2121] = {.entry = {.count = 1, .reusable = true}}, SHIFT(836), - [2123] = {.entry = {.count = 1, .reusable = true}}, SHIFT(796), - [2125] = {.entry = {.count = 1, .reusable = true}}, SHIFT(787), - [2127] = {.entry = {.count = 1, .reusable = true}}, SHIFT(788), - [2129] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1388), - [2131] = {.entry = {.count = 1, .reusable = true}}, SHIFT(864), - [2133] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1429), - [2135] = {.entry = {.count = 1, .reusable = true}}, SHIFT(837), - [2137] = {.entry = {.count = 1, .reusable = true}}, SHIFT(843), - [2139] = {.entry = {.count = 1, .reusable = true}}, SHIFT(853), - [2141] = {.entry = {.count = 1, .reusable = true}}, SHIFT(852), - [2143] = {.entry = {.count = 1, .reusable = true}}, SHIFT(860), - [2145] = {.entry = {.count = 1, .reusable = true}}, SHIFT(957), - [2147] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_with_item, 1, -1, 12), SHIFT(176), - [2150] = {.entry = {.count = 1, .reusable = false}}, SHIFT(588), - [2152] = {.entry = {.count = 1, .reusable = true}}, SHIFT(404), - [2154] = {.entry = {.count = 1, .reusable = true}}, SHIFT(392), - [2156] = {.entry = {.count = 1, .reusable = true}}, SHIFT(393), - [2158] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_pattern_class_name, 1, 0, 0), - [2160] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_capture_pattern, 1, 0, 0), - [2162] = {.entry = {.count = 1, .reusable = true}}, SHIFT(795), - [2164] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_boolean_operator, 3, 0, 40), - [2166] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_boolean_operator, 3, 0, 40), - [2168] = {.entry = {.count = 1, .reusable = true}}, SHIFT(897), - [2170] = {.entry = {.count = 1, .reusable = true}}, SHIFT(205), - [2172] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_conditional_expression, 5, 0, 0), - [2174] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_conditional_expression, 5, 0, 0), - [2176] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_lambda, 4, 0, 67), - [2178] = {.entry = {.count = 1, .reusable = true}}, SHIFT(417), - [2180] = {.entry = {.count = 1, .reusable = true}}, SHIFT(340), - [2182] = {.entry = {.count = 1, .reusable = true}}, SHIFT(345), - [2184] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_named_expression, 3, 0, 23), - [2186] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_named_expression, 3, 0, 23), - [2188] = {.entry = {.count = 1, .reusable = true}}, SHIFT(919), - [2190] = {.entry = {.count = 1, .reusable = true}}, SHIFT(945), - [2192] = {.entry = {.count = 1, .reusable = true}}, SHIFT(952), - [2194] = {.entry = {.count = 1, .reusable = true}}, SHIFT(213), - [2196] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_lambda, 3, 0, 33), - [2198] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_lambda, 3, 0, 33), - [2200] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_named_expression, 3, 0, 36), - [2202] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_named_expression, 3, 0, 36), - [2204] = {.entry = {.count = 1, .reusable = true}}, SHIFT(940), - [2206] = {.entry = {.count = 1, .reusable = true}}, SHIFT(220), + [2019] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 43), SHIFT_REPEAT(696), + [2022] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 43), SHIFT_REPEAT(1672), + [2025] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 43), SHIFT_REPEAT(696), + [2028] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 43), SHIFT_REPEAT(623), + [2031] = {.entry = {.count = 1, .reusable = true}}, SHIFT(161), + [2033] = {.entry = {.count = 1, .reusable = true}}, SHIFT(269), + [2035] = {.entry = {.count = 1, .reusable = true}}, SHIFT(154), + [2037] = {.entry = {.count = 1, .reusable = true}}, SHIFT(155), + [2039] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1516), + [2041] = {.entry = {.count = 1, .reusable = true}}, SHIFT(465), + [2043] = {.entry = {.count = 1, .reusable = false}}, SHIFT(619), + [2045] = {.entry = {.count = 1, .reusable = true}}, SHIFT(353), + [2047] = {.entry = {.count = 1, .reusable = true}}, SHIFT(639), + [2049] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1512), + [2051] = {.entry = {.count = 1, .reusable = true}}, SHIFT(293), + [2053] = {.entry = {.count = 1, .reusable = true}}, SHIFT(419), + [2055] = {.entry = {.count = 1, .reusable = true}}, SHIFT(380), + [2057] = {.entry = {.count = 1, .reusable = true}}, SHIFT(373), + [2059] = {.entry = {.count = 1, .reusable = true}}, SHIFT(410), + [2061] = {.entry = {.count = 1, .reusable = true}}, SHIFT(365), + [2063] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1383), + [2065] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1550), + [2067] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__parameters, 2, 0, 0), + [2069] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__parameters, 3, 0, 0), + [2071] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_not_operator, 2, 0, 10), + [2073] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_not_operator, 2, 0, 10), + [2075] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_match_value_pattern_repeat1, 2, 0, 0), + [2077] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_match_value_pattern_repeat1, 2, 0, 0), SHIFT_REPEAT(1734), + [2080] = {.entry = {.count = 1, .reusable = false}}, SHIFT(184), + [2082] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1149), + [2084] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1149), + [2086] = {.entry = {.count = 1, .reusable = false}}, SHIFT_EXTRA(), + [2088] = {.entry = {.count = 1, .reusable = true}}, SHIFT(847), + [2090] = {.entry = {.count = 1, .reusable = true}}, SHIFT(180), + [2092] = {.entry = {.count = 1, .reusable = true}}, SHIFT(422), + [2094] = {.entry = {.count = 1, .reusable = true}}, SHIFT(398), + [2096] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1623), + [2098] = {.entry = {.count = 1, .reusable = true}}, SHIFT(510), + [2100] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__collection_elements, 1, 0, 7), + [2102] = {.entry = {.count = 1, .reusable = true}}, SHIFT(412), + [2104] = {.entry = {.count = 1, .reusable = true}}, SHIFT(413), + [2106] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1734), + [2108] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_pattern_class_name, 1, 0, 0), + [2110] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_capture_pattern, 1, 0, 0), + [2112] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_literal_pattern, 1, 0, 0), + [2114] = {.entry = {.count = 1, .reusable = true}}, SHIFT(843), + [2116] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_string_repeat1, 2, 0, 21), SHIFT_REPEAT(184), + [2119] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_string_repeat1, 2, 0, 21), SHIFT_REPEAT(1149), + [2122] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_string_repeat1, 2, 0, 21), SHIFT_REPEAT(1149), + [2125] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_string_repeat1, 2, 0, 21), + [2127] = {.entry = {.count = 1, .reusable = true}}, SHIFT(852), + [2129] = {.entry = {.count = 1, .reusable = true}}, SHIFT(954), + [2131] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_with_item, 1, -1, 12), SHIFT(180), + [2134] = {.entry = {.count = 1, .reusable = false}}, SHIFT(527), + [2136] = {.entry = {.count = 1, .reusable = true}}, SHIFT(403), + [2138] = {.entry = {.count = 1, .reusable = true}}, SHIFT(338), + [2140] = {.entry = {.count = 1, .reusable = true}}, SHIFT(428), + [2142] = {.entry = {.count = 1, .reusable = true}}, SHIFT(792), + [2144] = {.entry = {.count = 1, .reusable = true}}, SHIFT(793), + [2146] = {.entry = {.count = 1, .reusable = true}}, SHIFT(794), + [2148] = {.entry = {.count = 1, .reusable = true}}, SHIFT(795), + [2150] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1485), + [2152] = {.entry = {.count = 1, .reusable = true}}, SHIFT(834), + [2154] = {.entry = {.count = 1, .reusable = true}}, SHIFT(853), + [2156] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1509), + [2158] = {.entry = {.count = 1, .reusable = true}}, SHIFT(840), + [2160] = {.entry = {.count = 1, .reusable = true}}, SHIFT(702), + [2162] = {.entry = {.count = 1, .reusable = true}}, SHIFT(846), + [2164] = {.entry = {.count = 1, .reusable = true}}, SHIFT(701), + [2166] = {.entry = {.count = 1, .reusable = true}}, SHIFT(848), + [2168] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_pattern_class_name, 2, 0, 0), + [2170] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_value_pattern, 2, 0, 0), + [2172] = {.entry = {.count = 1, .reusable = true}}, SHIFT(703), + [2174] = {.entry = {.count = 1, .reusable = true}}, SHIFT(700), + [2176] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_boolean_operator, 3, 0, 40), + [2178] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_boolean_operator, 3, 0, 40), + [2180] = {.entry = {.count = 1, .reusable = true}}, SHIFT(921), + [2182] = {.entry = {.count = 1, .reusable = true}}, SHIFT(358), + [2184] = {.entry = {.count = 1, .reusable = true}}, SHIFT(359), + [2186] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_conditional_expression, 5, 0, 0), + [2188] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_conditional_expression, 5, 0, 0), + [2190] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_named_expression, 3, 0, 36), + [2192] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_named_expression, 3, 0, 36), + [2194] = {.entry = {.count = 1, .reusable = true}}, SHIFT(874), + [2196] = {.entry = {.count = 1, .reusable = true}}, SHIFT(225), + [2198] = {.entry = {.count = 1, .reusable = true}}, SHIFT(418), + [2200] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_lambda, 3, 0, 33), + [2202] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_lambda, 3, 0, 33), + [2204] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_literal_pattern, 1, 0, 86), + [2206] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1556), [2208] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_literal_pattern, 2, 0, 110), - [2210] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1561), - [2212] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_lambda, 4, 0, 67), - [2214] = {.entry = {.count = 1, .reusable = true}}, SHIFT(717), - [2216] = {.entry = {.count = 1, .reusable = true}}, SHIFT(706), - [2218] = {.entry = {.count = 1, .reusable = true}}, SHIFT(201), - [2220] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_literal_pattern, 1, 0, 86), - [2222] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1565), - [2224] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__comprehension_clauses, 1, 0, 0), - [2226] = {.entry = {.count = 1, .reusable = true}}, SHIFT(385), - [2228] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__expression_within_for_in_clause, 1, 0, 0), - [2230] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_or_pattern, 4, 0, 0), - [2232] = {.entry = {.count = 1, .reusable = true}}, SHIFT(989), - [2234] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_list_splat, 2, 0, 0), - [2236] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__comprehension_clauses, 2, 0, 0), - [2238] = {.entry = {.count = 1, .reusable = true}}, SHIFT(181), - [2240] = {.entry = {.count = 1, .reusable = true}}, SHIFT(421), - [2242] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__f_expression, 1, 0, 0), - [2244] = {.entry = {.count = 1, .reusable = true}}, SHIFT(368), - [2246] = {.entry = {.count = 1, .reusable = true}}, SHIFT(369), - [2248] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_or_pattern, 3, 0, 0), - [2250] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_match_or_pattern_repeat1, 2, 0, 0), - [2252] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_match_or_pattern_repeat1, 2, 0, 0), SHIFT_REPEAT(989), - [2255] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__comprehension_clauses_repeat1, 2, 0, 0), - [2257] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__comprehension_clauses_repeat1, 2, 0, 0), SHIFT_REPEAT(385), - [2260] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__comprehension_clauses_repeat1, 2, 0, 0), SHIFT_REPEAT(1646), - [2263] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__comprehension_clauses_repeat1, 2, 0, 0), SHIFT_REPEAT(504), - [2266] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_yield, 2, 0, 0), - [2268] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_class_pattern, 8, 0, 140), - [2270] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_group_pattern, 3, 0, 135), - [2272] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_sequence_pattern, 3, 0, 0), - [2274] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_mapping_pattern, 3, 0, 0), - [2276] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_literal_pattern, 3, 0, 136), - [2278] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_class_pattern, 3, 0, 140), - [2280] = {.entry = {.count = 1, .reusable = true}}, SHIFT(986), - [2282] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_in_clause, 6, 0, 145), - [2284] = {.entry = {.count = 1, .reusable = true}}, SHIFT(190), - [2286] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_for_in_clause_repeat1, 2, 0, 0), - [2288] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_for_in_clause_repeat1, 2, 0, 0), SHIFT_REPEAT(299), - [2291] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_sequence_pattern, 4, 0, 0), - [2293] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_literal_pattern, 4, 0, 153), - [2295] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_mapping_pattern, 4, 0, 0), - [2297] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_in_clause, 4, 0, 101), - [2299] = {.entry = {.count = 1, .reusable = true}}, SHIFT(194), - [2301] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_class_pattern, 4, 0, 140), - [2303] = {.entry = {.count = 1, .reusable = true}}, SHIFT(427), - [2305] = {.entry = {.count = 1, .reusable = true}}, SHIFT(339), - [2307] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1728), - [2309] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1724), - [2311] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1702), - [2313] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1668), - [2315] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1671), - [2317] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1663), - [2319] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_sequence_pattern, 5, 0, 0), - [2321] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_mapping_pattern, 5, 0, 0), - [2323] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_class_pattern, 5, 0, 140), - [2325] = {.entry = {.count = 1, .reusable = true}}, SHIFT(399), - [2327] = {.entry = {.count = 1, .reusable = true}}, SHIFT(191), - [2329] = {.entry = {.count = 1, .reusable = true}}, SHIFT(424), - [2331] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_raise_statement, 2, 0, 0), - [2333] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_string_content_repeat1, 2, 0, 0), - [2335] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_string_content_repeat1, 2, 0, 0), SHIFT_REPEAT(1135), - [2338] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_string_content_repeat1, 2, 0, 0), SHIFT_REPEAT(1135), - [2341] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_string_content_repeat1, 2, 0, 0), - [2343] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_mapping_pattern, 6, 0, 0), - [2345] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_class_pattern, 6, 0, 140), - [2347] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_mapping_pattern, 7, 0, 0), - [2349] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__match_or_pattern, 1, 0, 0), - [2351] = {.entry = {.count = 1, .reusable = true}}, SHIFT(988), - [2353] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_class_pattern, 9, 0, 140), - [2355] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_dictionary_splat, 2, 0, 14), - [2357] = {.entry = {.count = 1, .reusable = true}}, SHIFT(171), - [2359] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_sequence_pattern, 2, 0, 0), + [2210] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1604), + [2212] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_named_expression, 3, 0, 23), + [2214] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_lambda, 4, 0, 67), + [2216] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_lambda, 4, 0, 67), + [2218] = {.entry = {.count = 1, .reusable = true}}, SHIFT(890), + [2220] = {.entry = {.count = 1, .reusable = true}}, SHIFT(709), + [2222] = {.entry = {.count = 1, .reusable = true}}, SHIFT(877), + [2224] = {.entry = {.count = 1, .reusable = true}}, SHIFT(193), + [2226] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_named_expression, 3, 0, 23), + [2228] = {.entry = {.count = 1, .reusable = true}}, SHIFT(967), + [2230] = {.entry = {.count = 1, .reusable = true}}, SHIFT(216), + [2232] = {.entry = {.count = 1, .reusable = true}}, SHIFT(723), + [2234] = {.entry = {.count = 1, .reusable = true}}, SHIFT(195), + [2236] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__expression_within_for_in_clause, 1, 0, 0), + [2238] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_list_splat, 2, 0, 0), + [2240] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__comprehension_clauses_repeat1, 2, 0, 0), + [2242] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__comprehension_clauses_repeat1, 2, 0, 0), SHIFT_REPEAT(356), + [2245] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__comprehension_clauses_repeat1, 2, 0, 0), SHIFT_REPEAT(1623), + [2248] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__comprehension_clauses_repeat1, 2, 0, 0), SHIFT_REPEAT(510), + [2251] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_or_pattern, 3, 0, 0), + [2253] = {.entry = {.count = 1, .reusable = true}}, SHIFT(994), + [2255] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_match_or_pattern_repeat1, 2, 0, 0), + [2257] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_match_or_pattern_repeat1, 2, 0, 0), SHIFT_REPEAT(994), + [2260] = {.entry = {.count = 1, .reusable = true}}, SHIFT(174), + [2262] = {.entry = {.count = 1, .reusable = true}}, SHIFT(423), + [2264] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__f_expression, 1, 0, 0), + [2266] = {.entry = {.count = 1, .reusable = true}}, SHIFT(382), + [2268] = {.entry = {.count = 1, .reusable = true}}, SHIFT(383), + [2270] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_or_pattern, 4, 0, 0), + [2272] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__comprehension_clauses, 1, 0, 0), + [2274] = {.entry = {.count = 1, .reusable = true}}, SHIFT(356), + [2276] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_yield, 2, 0, 0), + [2278] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__comprehension_clauses, 2, 0, 0), + [2280] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_sequence_pattern, 3, 0, 0), + [2282] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_class_pattern, 9, 0, 140), + [2284] = {.entry = {.count = 1, .reusable = true}}, SHIFT(433), + [2286] = {.entry = {.count = 1, .reusable = true}}, SHIFT(339), + [2288] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_for_in_clause_repeat1, 2, 0, 0), + [2290] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_for_in_clause_repeat1, 2, 0, 0), SHIFT_REPEAT(307), + [2293] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_class_pattern, 4, 0, 140), + [2295] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__match_or_pattern, 1, 0, 0), + [2297] = {.entry = {.count = 1, .reusable = true}}, SHIFT(995), + [2299] = {.entry = {.count = 1, .reusable = true}}, SHIFT(432), + [2301] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_string_content_repeat1, 2, 0, 0), + [2303] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_string_content_repeat1, 2, 0, 0), SHIFT_REPEAT(1119), + [2306] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_string_content_repeat1, 2, 0, 0), SHIFT_REPEAT(1119), + [2309] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_string_content_repeat1, 2, 0, 0), + [2311] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_expression_list_repeat1, 2, 0, 32), + [2313] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_in_clause, 6, 0, 145), + [2315] = {.entry = {.count = 1, .reusable = true}}, SHIFT(202), + [2317] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_mapping_pattern, 3, 0, 0), + [2319] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_dictionary_splat, 2, 0, 14), + [2321] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_literal_pattern, 4, 0, 153), + [2323] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_literal_pattern, 3, 0, 136), + [2325] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_sequence_pattern, 5, 0, 0), + [2327] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_mapping_pattern, 5, 0, 0), + [2329] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_group_pattern, 3, 0, 135), + [2331] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_mapping_pattern, 4, 0, 0), + [2333] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_in_clause, 4, 0, 101), + [2335] = {.entry = {.count = 1, .reusable = true}}, SHIFT(228), + [2337] = {.entry = {.count = 1, .reusable = true}}, SHIFT(364), + [2339] = {.entry = {.count = 1, .reusable = true}}, SHIFT(197), + [2341] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_raise_statement, 2, 0, 0), + [2343] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_class_pattern, 5, 0, 140), + [2345] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_mapping_pattern, 6, 0, 0), + [2347] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_class_pattern, 6, 0, 140), + [2349] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_sequence_pattern, 2, 0, 0), + [2351] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_sequence_pattern, 4, 0, 0), + [2353] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1749), + [2355] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1745), + [2357] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1723), + [2359] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_mapping_pattern, 7, 0, 0), [2361] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_string_content, 1, 0, 0), - [2363] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1135), - [2365] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1135), + [2363] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1119), + [2365] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1119), [2367] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_string_content, 1, 0, 0), - [2369] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_mapping_pattern, 2, 0, 0), - [2371] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_expression_list_repeat1, 2, 0, 32), - [2373] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_clause, 2, 0, 0), - [2375] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_in_clause, 5, 0, 126), - [2377] = {.entry = {.count = 1, .reusable = true}}, SHIFT(207), - [2379] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_in_clause, 5, 0, 127), - [2381] = {.entry = {.count = 1, .reusable = true}}, SHIFT(212), - [2383] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_class_pattern, 7, 0, 140), - [2385] = {.entry = {.count = 1, .reusable = true}}, SHIFT(250), - [2387] = {.entry = {.count = 1, .reusable = true}}, SHIFT(898), - [2389] = {.entry = {.count = 1, .reusable = true}}, SHIFT(277), - [2391] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1617), - [2393] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_lambda_within_for_in_clause, 3, 0, 33), - [2395] = {.entry = {.count = 1, .reusable = true}}, SHIFT(429), - [2397] = {.entry = {.count = 1, .reusable = true}}, SHIFT(354), - [2399] = {.entry = {.count = 1, .reusable = true}}, SHIFT(419), - [2401] = {.entry = {.count = 1, .reusable = true}}, SHIFT(109), - [2403] = {.entry = {.count = 1, .reusable = true}}, SHIFT(358), - [2405] = {.entry = {.count = 1, .reusable = true}}, SHIFT(361), - [2407] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_statement, 1, 0, 0), - [2409] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1228), - [2411] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1374), - [2413] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1700), - [2415] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__right_hand_side, 1, 0, 0), - [2417] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_pair, 3, 0, 63), - [2419] = {.entry = {.count = 1, .reusable = true}}, SHIFT(291), - [2421] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_print_statement, 2, 0, 10), - [2423] = {.entry = {.count = 1, .reusable = true}}, SHIFT(434), - [2425] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_exec_statement, 4, 0, 15), - [2427] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1217), - [2429] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1333), - [2431] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1552), - [2433] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_yield, 3, 0, 0), - [2435] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1347), - [2437] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1227), - [2439] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1623), - [2441] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1635), - [2443] = {.entry = {.count = 1, .reusable = true}}, SHIFT(251), - [2445] = {.entry = {.count = 1, .reusable = true}}, SHIFT(956), - [2447] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__collection_elements_repeat1, 2, 0, 32), - [2449] = {.entry = {.count = 1, .reusable = true}}, SHIFT(257), - [2451] = {.entry = {.count = 1, .reusable = true}}, SHIFT(913), - [2453] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type, 1, 0, 0), - [2455] = {.entry = {.count = 1, .reusable = true}}, SHIFT(431), - [2457] = {.entry = {.count = 1, .reusable = true}}, SHIFT(99), - [2459] = {.entry = {.count = 1, .reusable = true}}, SHIFT(432), - [2461] = {.entry = {.count = 1, .reusable = true}}, SHIFT(108), - [2463] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_with_item, 1, -1, 12), - [2465] = {.entry = {.count = 1, .reusable = true}}, SHIFT(588), - [2467] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_return_statement, 2, 0, 0), - [2469] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_delete_statement, 2, 0, 11), - [2471] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_lambda_within_for_in_clause, 4, 0, 67), - [2473] = {.entry = {.count = 1, .reusable = true}}, SHIFT(267), - [2475] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1628), - [2477] = {.entry = {.count = 1, .reusable = true}}, SHIFT(425), - [2479] = {.entry = {.count = 1, .reusable = true}}, SHIFT(91), - [2481] = {.entry = {.count = 1, .reusable = true}}, SHIFT(255), - [2483] = {.entry = {.count = 1, .reusable = true}}, SHIFT(723), - [2485] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__match_pattern, 1, 0, 0), - [2487] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1711), - [2489] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_assert_statement, 2, 0, 0), - [2491] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1597), - [2493] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_dotted_name, 1, 0, 0), - [2495] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_open_sequence_match_pattern_repeat1, 2, 0, 0), - [2497] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_open_sequence_match_pattern_repeat1, 2, 0, 0), SHIFT_REPEAT(972), - [2500] = {.entry = {.count = 1, .reusable = true}}, SHIFT(182), - [2502] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_list, 2, 0, 16), - [2504] = {.entry = {.count = 1, .reusable = true}}, SHIFT(183), - [2506] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_dotted_name, 2, 0, 0), - [2508] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_slice, 2, 0, 69), - [2510] = {.entry = {.count = 1, .reusable = true}}, SHIFT(293), - [2512] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_chevron, 2, 0, 0), - [2514] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_interpolation, 4, 0, 44), - [2516] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_interpolation, 4, 0, 44), - [2518] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_typevar_parameter, 1, 0, 6), - [2520] = {.entry = {.count = 1, .reusable = true}}, SHIFT(372), - [2522] = {.entry = {.count = 1, .reusable = true}}, SHIFT(304), - [2524] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__type_bound, 2, 0, 112), - [2526] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_interpolation, 5, 0, 44), - [2528] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_interpolation, 5, 0, 44), + [2369] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_class_pattern, 7, 0, 140), + [2371] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_class_pattern, 8, 0, 140), + [2373] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_class_pattern, 3, 0, 140), + [2375] = {.entry = {.count = 1, .reusable = true}}, SHIFT(992), + [2377] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_clause, 2, 0, 0), + [2379] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1740), + [2381] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1699), + [2383] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1659), + [2385] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_in_clause, 5, 0, 127), + [2387] = {.entry = {.count = 1, .reusable = true}}, SHIFT(224), + [2389] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_in_clause, 5, 0, 126), + [2391] = {.entry = {.count = 1, .reusable = true}}, SHIFT(214), + [2393] = {.entry = {.count = 1, .reusable = true}}, SHIFT(173), + [2395] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_mapping_pattern, 2, 0, 0), + [2397] = {.entry = {.count = 1, .reusable = true}}, SHIFT(417), + [2399] = {.entry = {.count = 1, .reusable = true}}, SHIFT(405), + [2401] = {.entry = {.count = 1, .reusable = true}}, SHIFT(420), + [2403] = {.entry = {.count = 1, .reusable = true}}, SHIFT(81), + [2405] = {.entry = {.count = 1, .reusable = true}}, SHIFT(376), + [2407] = {.entry = {.count = 1, .reusable = true}}, SHIFT(377), + [2409] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_lambda_within_for_in_clause, 3, 0, 33), + [2411] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__collection_elements_repeat1, 2, 0, 32), + [2413] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1245), + [2415] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1381), + [2417] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1571), + [2419] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__right_hand_side, 1, 0, 0), + [2421] = {.entry = {.count = 1, .reusable = true}}, SHIFT(277), + [2423] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1632), + [2425] = {.entry = {.count = 1, .reusable = true}}, SHIFT(259), + [2427] = {.entry = {.count = 1, .reusable = true}}, SHIFT(958), + [2429] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1342), + [2431] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1344), + [2433] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_statement, 1, 0, 0), + [2435] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_with_item, 1, -1, 12), + [2437] = {.entry = {.count = 1, .reusable = true}}, SHIFT(527), + [2439] = {.entry = {.count = 1, .reusable = true}}, SHIFT(348), + [2441] = {.entry = {.count = 1, .reusable = true}}, SHIFT(103), + [2443] = {.entry = {.count = 1, .reusable = true}}, SHIFT(257), + [2445] = {.entry = {.count = 1, .reusable = true}}, SHIFT(901), + [2447] = {.entry = {.count = 1, .reusable = true}}, SHIFT(270), + [2449] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1693), + [2451] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_yield, 3, 0, 0), + [2453] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1254), + [2455] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1744), + [2457] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1679), + [2459] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_lambda_within_for_in_clause, 4, 0, 67), + [2461] = {.entry = {.count = 1, .reusable = true}}, SHIFT(261), + [2463] = {.entry = {.count = 1, .reusable = true}}, SHIFT(927), + [2465] = {.entry = {.count = 1, .reusable = true}}, SHIFT(435), + [2467] = {.entry = {.count = 1, .reusable = true}}, SHIFT(96), + [2469] = {.entry = {.count = 1, .reusable = true}}, SHIFT(436), + [2471] = {.entry = {.count = 1, .reusable = true}}, SHIFT(105), + [2473] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1251), + [2475] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1343), + [2477] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1638), + [2479] = {.entry = {.count = 1, .reusable = true}}, SHIFT(301), + [2481] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_print_statement, 2, 0, 10), + [2483] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_pair, 3, 0, 63), + [2485] = {.entry = {.count = 1, .reusable = true}}, SHIFT(352), + [2487] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_exec_statement, 4, 0, 15), + [2489] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type, 1, 0, 0), + [2491] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_return_statement, 2, 0, 0), + [2493] = {.entry = {.count = 1, .reusable = true}}, SHIFT(263), + [2495] = {.entry = {.count = 1, .reusable = true}}, SHIFT(713), + [2497] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_delete_statement, 2, 0, 11), + [2499] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__match_pattern, 1, 0, 0), + [2501] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1662), + [2503] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_assert_statement, 2, 0, 0), + [2505] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_match_value_pattern_repeat1, 2, 0, 0), SHIFT_REPEAT(1641), + [2508] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_list, 2, 0, 16), + [2510] = {.entry = {.count = 1, .reusable = true}}, SHIFT(172), + [2512] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_slice, 3, 0, 98), + [2514] = {.entry = {.count = 1, .reusable = true}}, SHIFT(303), + [2516] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1641), + [2518] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_dotted_name, 1, 0, 0), + [2520] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__index_expression, 1, 0, 0), + [2522] = {.entry = {.count = 1, .reusable = true}}, SHIFT(279), + [2524] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_chevron, 2, 0, 0), + [2526] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_string_repeat1, 1, 0, 3), + [2528] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_string_repeat1, 1, 0, 3), [2530] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_expression_list_repeat1, 2, 0, 37), - [2532] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_expression_list_repeat1, 2, 0, 37), SHIFT_REPEAT(262), - [2535] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_expression_list_repeat1, 2, 0, 37), SHIFT_REPEAT(256), - [2538] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1304), - [2540] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_typed_default_parameter, 5, 0, 122), - [2542] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__index_expression, 1, 0, 0), - [2544] = {.entry = {.count = 1, .reusable = true}}, SHIFT(270), - [2546] = {.entry = {.count = 1, .reusable = true}}, SHIFT(87), - [2548] = {.entry = {.count = 1, .reusable = true}}, SHIFT(94), - [2550] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_as_pattern, 3, 0, 139), - [2552] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_print_statement_repeat1, 2, 0, 10), - [2554] = {.entry = {.count = 1, .reusable = true}}, SHIFT(79), - [2556] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_assert_statement_repeat1, 2, 0, 0), - [2558] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_default_parameter, 3, 0, 36), - [2560] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1368), - [2562] = {.entry = {.count = 1, .reusable = true}}, SHIFT(123), - [2564] = {.entry = {.count = 1, .reusable = true}}, SHIFT(170), - [2566] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1228), - [2568] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_match_value_pattern_repeat1, 2, 0, 0), SHIFT_REPEAT(1597), - [2571] = {.entry = {.count = 1, .reusable = true}}, SHIFT(172), - [2573] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_interpolation, 6, 0, 44), - [2575] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_interpolation, 6, 0, 44), - [2577] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_interpolation, 3, 0, 44), - [2579] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_interpolation, 3, 0, 44), - [2581] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_exception_list_repeat1, 2, 0, 32), - [2583] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_string_repeat1, 1, 0, 3), - [2585] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_string_repeat1, 1, 0, 3), - [2587] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_string_repeat1, 1, 0, 4), - [2589] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_string_repeat1, 1, 0, 4), - [2591] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_slice, 3, 0, 98), - [2593] = {.entry = {.count = 1, .reusable = true}}, SHIFT(305), - [2595] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_decorated_definition_repeat1, 2, 0, 0), - [2597] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_decorated_definition_repeat1, 2, 0, 0), SHIFT_REPEAT(377), - [2600] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_slice, 5, 0, 144), - [2602] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_star_pattern, 2, 0, 11), - [2604] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_slice, 4, 0, 123), - [2606] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_keyword_argument, 3, 0, 23), - [2608] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__import_list, 3, 0, 24), - [2610] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_raise_statement, 3, 0, 31), - [2612] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__collection_elements, 2, 0, 16), - [2614] = {.entry = {.count = 1, .reusable = true}}, SHIFT(185), + [2532] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_expression_list_repeat1, 2, 0, 37), SHIFT_REPEAT(256), + [2535] = {.entry = {.count = 1, .reusable = true}}, SHIFT(83), + [2537] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_string_repeat1, 1, 0, 4), + [2539] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_string_repeat1, 1, 0, 4), + [2541] = {.entry = {.count = 1, .reusable = true}}, SHIFT(91), + [2543] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_typevar_parameter, 1, 0, 6), + [2545] = {.entry = {.count = 1, .reusable = true}}, SHIFT(344), + [2547] = {.entry = {.count = 1, .reusable = true}}, SHIFT(294), + [2549] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_assert_statement_repeat1, 2, 0, 0), + [2551] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_dotted_name, 2, 0, 0), + [2553] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_decorated_definition_repeat1, 2, 0, 0), + [2555] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_decorated_definition_repeat1, 2, 0, 0), SHIFT_REPEAT(386), + [2558] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_interpolation, 4, 0, 44), + [2560] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_interpolation, 4, 0, 44), + [2562] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_interpolation, 5, 0, 44), + [2564] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_interpolation, 5, 0, 44), + [2566] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_default_parameter, 3, 0, 36), + [2568] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_slice, 2, 0, 69), + [2570] = {.entry = {.count = 1, .reusable = true}}, SHIFT(310), + [2572] = {.entry = {.count = 1, .reusable = true}}, SHIFT(74), + [2574] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_exception_list_repeat1, 2, 0, 32), + [2576] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_typed_default_parameter, 5, 0, 122), + [2578] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__type_bound, 2, 0, 112), + [2580] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1251), + [2582] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_expression_list_repeat1, 2, 0, 37), SHIFT_REPEAT(254), + [2585] = {.entry = {.count = 1, .reusable = true}}, SHIFT(185), + [2587] = {.entry = {.count = 1, .reusable = true}}, SHIFT(171), + [2589] = {.entry = {.count = 1, .reusable = true}}, SHIFT(187), + [2591] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_interpolation, 6, 0, 44), + [2593] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_interpolation, 6, 0, 44), + [2595] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1340), + [2597] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1324), + [2599] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_print_statement_repeat1, 2, 0, 10), + [2601] = {.entry = {.count = 1, .reusable = true}}, SHIFT(112), + [2603] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_open_sequence_match_pattern_repeat1, 2, 0, 0), + [2605] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_open_sequence_match_pattern_repeat1, 2, 0, 0), SHIFT_REPEAT(981), + [2608] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_interpolation, 3, 0, 44), + [2610] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_interpolation, 3, 0, 44), + [2612] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_as_pattern, 3, 0, 139), + [2614] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_slice, 4, 0, 123), [2616] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_alias_statement, 4, 0, 64), - [2618] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1252), - [2620] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1318), - [2622] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1292), - [2624] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1496), - [2626] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_alias_statement, 5, 0, 91), - [2628] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1331), - [2630] = {.entry = {.count = 1, .reusable = true}}, SHIFT(193), - [2632] = {.entry = {.count = 1, .reusable = true}}, SHIFT(179), - [2634] = {.entry = {.count = 1, .reusable = true}}, SHIFT(76), - [2636] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1191), - [2638] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_keyword_argument, 3, 0, 36), - [2640] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_slice, 4, 0, 124), - [2642] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_raise_statement, 4, 0, 54), - [2644] = {.entry = {.count = 1, .reusable = true}}, SHIFT(192), - [2646] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_format_specifier, 2, 0, 0), - [2648] = {.entry = {.count = 1, .reusable = true}}, SHIFT(173), - [2650] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1288), - [2652] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_argument_list_repeat1, 2, 0, 32), - [2654] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1289), - [2656] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1674), - [2658] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__import_list, 1, 0, 6), - [2660] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__type_param_default, 2, 0, 113), - [2662] = {.entry = {.count = 1, .reusable = true}}, SHIFT(85), - [2664] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_expression_list_repeat1, 2, 0, 37), SHIFT_REPEAT(254), + [2618] = {.entry = {.count = 1, .reusable = true}}, SHIFT(190), + [2620] = {.entry = {.count = 1, .reusable = true}}, SHIFT(122), + [2622] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1234), + [2624] = {.entry = {.count = 1, .reusable = true}}, SHIFT(211), + [2626] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_format_specifier, 1, 0, 0), + [2628] = {.entry = {.count = 1, .reusable = true}}, SHIFT(189), + [2630] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1315), + [2632] = {.entry = {.count = 1, .reusable = true}}, SHIFT(203), + [2634] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1431), + [2636] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1356), + [2638] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1287), + [2640] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1502), + [2642] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1302), + [2644] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1617), + [2646] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__import_list, 1, 0, 6), + [2648] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_alias_statement, 5, 0, 91), + [2650] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1281), + [2652] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1330), + [2654] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1435), + [2656] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_keyword_argument, 3, 0, 23), + [2658] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_keyword_argument, 3, 0, 36), + [2660] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_expression_list_repeat1, 2, 0, 37), SHIFT_REPEAT(255), + [2663] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__import_list, 3, 0, 24), + [2665] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__import_list, 2, 0, 6), [2667] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_slice, 3, 0, 97), - [2669] = {.entry = {.count = 1, .reusable = true}}, SHIFT(184), - [2671] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__collection_elements_repeat1, 2, 0, 37), - [2673] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__collection_elements_repeat1, 2, 0, 37), SHIFT_REPEAT(242), - [2676] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_format_specifier_repeat1, 2, 0, 0), - [2678] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_format_specifier_repeat1, 2, 0, 0), SHIFT_REPEAT(173), - [2681] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_format_specifier_repeat1, 2, 0, 0), SHIFT_REPEAT(1288), - [2684] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__import_list, 2, 0, 6), - [2686] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1464), - [2688] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1308), - [2690] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1401), - [2692] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_format_specifier, 1, 0, 0), - [2694] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1279), - [2696] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1625), - [2698] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_global_statement, 3, 0, 0), - [2700] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_nonlocal_statement, 3, 0, 0), - [2702] = {.entry = {.count = 1, .reusable = true}}, SHIFT(129), - [2704] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1542), - [2706] = {.entry = {.count = 1, .reusable = true}}, SHIFT(131), - [2708] = {.entry = {.count = 1, .reusable = true}}, SHIFT(127), - [2710] = {.entry = {.count = 1, .reusable = true}}, SHIFT(321), - [2712] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_with_clause_repeat1, 2, 0, 0), - [2714] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_with_clause_repeat1, 2, 0, 0), SHIFT_REPEAT(315), - [2717] = {.entry = {.count = 1, .reusable = true}}, SHIFT(827), - [2719] = {.entry = {.count = 1, .reusable = true}}, SHIFT(132), - [2721] = {.entry = {.count = 1, .reusable = true}}, SHIFT(405), - [2723] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1022), - [2725] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1492), - [2727] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1450), - [2729] = {.entry = {.count = 1, .reusable = true}}, SHIFT(103), - [2731] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_global_statement, 2, 0, 0), - [2733] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__patterns, 1, 0, 7), - [2735] = {.entry = {.count = 1, .reusable = true}}, SHIFT(482), - [2737] = {.entry = {.count = 1, .reusable = true}}, SHIFT(118), - [2739] = {.entry = {.count = 1, .reusable = true}}, SHIFT(418), - [2741] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__simple_statements_repeat1, 2, 0, 0), SHIFT_REPEAT(133), - [2744] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__simple_statements_repeat1, 2, 0, 0), - [2746] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1226), - [2748] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1425), - [2750] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1334), - [2752] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1664), - [2754] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1264), - [2756] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__import_list, 2, 0, 24), - [2758] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_global_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(1625), - [2761] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_global_statement_repeat1, 2, 0, 0), - [2763] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1295), - [2765] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_import_prefix_repeat1, 2, 0, 0), - [2767] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_import_prefix_repeat1, 2, 0, 0), SHIFT_REPEAT(1323), - [2770] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parameter, 1, 0, 0), - [2772] = {.entry = {.count = 1, .reusable = true}}, SHIFT(281), - [2774] = {.entry = {.count = 1, .reusable = true}}, SHIFT(379), - [2776] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_typed_parameter, 3, 0, 66), - [2778] = {.entry = {.count = 1, .reusable = true}}, SHIFT(406), - [2780] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__import_list_repeat1, 2, 0, 25), - [2782] = {.entry = {.count = 1, .reusable = true}}, SHIFT(122), - [2784] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__import_list_repeat1, 2, 0, 45), SHIFT_REPEAT(1452), - [2787] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__import_list_repeat1, 2, 0, 45), - [2789] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_exception_list_repeat1, 2, 0, 37), SHIFT_REPEAT(429), - [2792] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_exception_list_repeat1, 2, 0, 37), - [2794] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__patterns, 2, 0, 16), - [2796] = {.entry = {.count = 1, .reusable = true}}, SHIFT(485), - [2798] = {.entry = {.count = 1, .reusable = true}}, SHIFT(128), - [2800] = {.entry = {.count = 1, .reusable = true}}, SHIFT(322), - [2802] = {.entry = {.count = 1, .reusable = true}}, SHIFT(130), - [2804] = {.entry = {.count = 1, .reusable = true}}, SHIFT(342), - [2806] = {.entry = {.count = 1, .reusable = true}}, SHIFT(71), - [2808] = {.entry = {.count = 1, .reusable = true}}, SHIFT(292), - [2810] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_print_statement, 3, 0, 29), - [2812] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_guard, 2, 0, 137), - [2814] = {.entry = {.count = 1, .reusable = true}}, SHIFT(847), - [2816] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parenthesized_list_splat, 3, 0, 50), - [2818] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_exception_list, 2, 0, 16), - [2820] = {.entry = {.count = 1, .reusable = true}}, SHIFT(349), - [2822] = {.entry = {.count = 1, .reusable = true}}, SHIFT(363), - [2824] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_decorator, 3, 0, 0), - [2826] = {.entry = {.count = 1, .reusable = true}}, SHIFT(373), - [2828] = {.entry = {.count = 1, .reusable = true}}, SHIFT(288), - [2830] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_print_statement, 3, 0, 30), - [2832] = {.entry = {.count = 1, .reusable = true}}, SHIFT(73), - [2834] = {.entry = {.count = 1, .reusable = true}}, SHIFT(74), - [2836] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_nonlocal_statement, 2, 0, 0), - [2838] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_assert_statement, 3, 0, 0), - [2840] = {.entry = {.count = 1, .reusable = true}}, SHIFT(104), - [2842] = {.entry = {.count = 1, .reusable = true}}, SHIFT(117), - [2844] = {.entry = {.count = 1, .reusable = true}}, SHIFT(120), - [2846] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_exec_statement, 5, 0, 15), - [2848] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_print_statement_repeat1, 2, 0, 53), SHIFT_REPEAT(359), - [2851] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_print_statement_repeat1, 2, 0, 53), - [2853] = {.entry = {.count = 1, .reusable = true}}, SHIFT(100), - [2855] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_assert_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(434), - [2858] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1346), - [2860] = {.entry = {.count = 1, .reusable = true}}, SHIFT(830), - [2862] = {.entry = {.count = 1, .reusable = true}}, SHIFT(414), - [2864] = {.entry = {.count = 1, .reusable = true}}, SHIFT(290), - [2866] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_print_statement, 2, 0, 0), - [2868] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_typevar_parameter, 2, 0, 87), - [2870] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_paramspec_parameter, 2, 0, 25), - [2872] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_import_prefix, 1, 0, 0), - [2874] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1323), - [2876] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_typevartuple_parameter, 2, 0, 25), - [2878] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parenthesized_list_splat, 3, 0, 0), - [2880] = {.entry = {.count = 1, .reusable = true}}, SHIFT(263), - [2882] = {.entry = {.count = 1, .reusable = true}}, SHIFT(915), - [2884] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_parameters, 4, 0, 115), - [2886] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_type_parameters_repeat1, 2, 0, 116), SHIFT_REPEAT(1202), - [2889] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_type_parameters_repeat1, 2, 0, 116), - [2891] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__parameters_repeat1, 2, 0, 0), - [2893] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1378), - [2895] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__parameters_repeat1, 2, 0, 0), SHIFT_REPEAT(1030), - [2898] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1341), - [2900] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_aliased_import, 3, 0, 46), - [2902] = {.entry = {.count = 1, .reusable = true}}, SHIFT(155), - [2904] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_assignment, 3, 0, 38), - [2906] = {.entry = {.count = 1, .reusable = true}}, SHIFT(712), - [2908] = {.entry = {.count = 1, .reusable = true}}, SHIFT(202), - [2910] = {.entry = {.count = 1, .reusable = true}}, SHIFT(235), - [2912] = {.entry = {.count = 1, .reusable = true}}, SHIFT(328), - [2914] = {.entry = {.count = 1, .reusable = true}}, SHIFT(923), - [2916] = {.entry = {.count = 1, .reusable = true}}, SHIFT(922), - [2918] = {.entry = {.count = 1, .reusable = true}}, SHIFT(229), - [2920] = {.entry = {.count = 1, .reusable = true}}, SHIFT(239), - [2922] = {.entry = {.count = 1, .reusable = true}}, SHIFT(882), - [2924] = {.entry = {.count = 1, .reusable = true}}, SHIFT(230), - [2926] = {.entry = {.count = 1, .reusable = true}}, SHIFT(939), - [2928] = {.entry = {.count = 1, .reusable = true}}, SHIFT(209), - [2930] = {.entry = {.count = 1, .reusable = true}}, SHIFT(902), - [2932] = {.entry = {.count = 1, .reusable = true}}, SHIFT(206), - [2934] = {.entry = {.count = 1, .reusable = true}}, SHIFT(924), - [2936] = {.entry = {.count = 1, .reusable = true}}, SHIFT(499), - [2938] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1358), - [2940] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1296), - [2942] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1025), - [2944] = {.entry = {.count = 1, .reusable = true}}, SHIFT(244), - [2946] = {.entry = {.count = 1, .reusable = true}}, SHIFT(252), - [2948] = {.entry = {.count = 1, .reusable = true}}, SHIFT(983), - [2950] = {.entry = {.count = 1, .reusable = true}}, SHIFT(253), - [2952] = {.entry = {.count = 1, .reusable = true}}, SHIFT(948), - [2954] = {.entry = {.count = 1, .reusable = true}}, SHIFT(953), - [2956] = {.entry = {.count = 1, .reusable = true}}, SHIFT(214), - [2958] = {.entry = {.count = 1, .reusable = true}}, SHIFT(955), - [2960] = {.entry = {.count = 1, .reusable = true}}, SHIFT(232), - [2962] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_index_expression_list, 2, 0, 16), - [2964] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_relative_import, 1, 0, 0), - [2966] = {.entry = {.count = 1, .reusable = true}}, SHIFT(961), - [2968] = {.entry = {.count = 1, .reusable = true}}, SHIFT(215), - [2970] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1461), - [2972] = {.entry = {.count = 1, .reusable = true}}, SHIFT(963), - [2974] = {.entry = {.count = 1, .reusable = true}}, SHIFT(216), - [2976] = {.entry = {.count = 1, .reusable = true}}, SHIFT(964), - [2978] = {.entry = {.count = 1, .reusable = true}}, SHIFT(217), - [2980] = {.entry = {.count = 1, .reusable = true}}, SHIFT(995), - [2982] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1230), - [2984] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_match_class_pattern_repeat1, 2, 0, 0), - [2986] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_match_class_pattern_repeat1, 2, 0, 0), SHIFT_REPEAT(985), - [2989] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__parameters_repeat1, 2, 0, 0), SHIFT_REPEAT(1029), - [2992] = {.entry = {.count = 1, .reusable = true}}, SHIFT(237), - [2994] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1631), - [2996] = {.entry = {.count = 1, .reusable = true}}, SHIFT(730), - [2998] = {.entry = {.count = 1, .reusable = true}}, SHIFT(203), - [3000] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_match_class_pattern_repeat2, 2, 0, 0), - [3002] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_match_class_pattern_repeat2, 2, 0, 0), SHIFT_REPEAT(1514), - [3005] = {.entry = {.count = 1, .reusable = true}}, SHIFT(258), - [3007] = {.entry = {.count = 1, .reusable = true}}, SHIFT(932), - [3009] = {.entry = {.count = 1, .reusable = true}}, SHIFT(259), - [3011] = {.entry = {.count = 1, .reusable = true}}, SHIFT(935), - [3013] = {.entry = {.count = 1, .reusable = true}}, SHIFT(701), - [3015] = {.entry = {.count = 1, .reusable = true}}, SHIFT(204), - [3017] = {.entry = {.count = 1, .reusable = true}}, SHIFT(942), - [3019] = {.entry = {.count = 1, .reusable = true}}, SHIFT(221), - [3021] = {.entry = {.count = 1, .reusable = true}}, SHIFT(715), - [3023] = {.entry = {.count = 1, .reusable = true}}, SHIFT(189), - [3025] = {.entry = {.count = 1, .reusable = true}}, SHIFT(943), - [3027] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1118), - [3029] = {.entry = {.count = 1, .reusable = true}}, SHIFT(973), - [3031] = {.entry = {.count = 1, .reusable = true}}, SHIFT(944), - [3033] = {.entry = {.count = 1, .reusable = true}}, SHIFT(222), - [3035] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_format_specifier_repeat1, 1, 0, 74), - [3037] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_format_specifier_repeat1, 1, 0, 74), - [3039] = {.entry = {.count = 1, .reusable = true}}, SHIFT(869), - [3041] = {.entry = {.count = 1, .reusable = true}}, SHIFT(223), - [3043] = {.entry = {.count = 1, .reusable = true}}, SHIFT(870), - [3045] = {.entry = {.count = 1, .reusable = true}}, SHIFT(224), - [3047] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1459), - [3049] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1476), - [3051] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1028), - [3053] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__parameters, 1, 0, 0), - [3055] = {.entry = {.count = 1, .reusable = true}}, SHIFT(303), - [3057] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_index_expression_list_repeat1, 2, 0, 37), SHIFT_REPEAT(243), - [3060] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_index_expression_list_repeat1, 2, 0, 37), - [3062] = {.entry = {.count = 1, .reusable = true}}, SHIFT(300), - [3064] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_argument_list_repeat1, 2, 0, 37), - [3066] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_argument_list_repeat1, 2, 0, 37), SHIFT_REPEAT(234), - [3069] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1169), - [3071] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1471), - [3073] = {.entry = {.count = 1, .reusable = true}}, SHIFT(83), - [3075] = {.entry = {.count = 1, .reusable = true}}, SHIFT(352), - [3077] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_exec_statement, 2, 0, 15), - [3079] = {.entry = {.count = 1, .reusable = true}}, SHIFT(353), - [3081] = {.entry = {.count = 1, .reusable = true}}, SHIFT(355), - [3083] = {.entry = {.count = 1, .reusable = true}}, SHIFT(101), - [3085] = {.entry = {.count = 1, .reusable = true}}, SHIFT(301), - [3087] = {.entry = {.count = 1, .reusable = true}}, SHIFT(111), - [3089] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1103), - [3091] = {.entry = {.count = 1, .reusable = true}}, SHIFT(875), - [3093] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1107), - [3095] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1480), - [3097] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__import_list_repeat1, 2, 0, 45), SHIFT_REPEAT(1493), - [3100] = {.entry = {.count = 1, .reusable = true}}, SHIFT(315), - [3102] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_with_clause, 1, 0, 0), - [3104] = {.entry = {.count = 1, .reusable = true}}, SHIFT(245), - [3106] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1140), - [3108] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_dictionary_repeat1, 2, 0, 37), SHIFT_REPEAT(280), - [3111] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_dictionary_repeat1, 2, 0, 37), - [3113] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1202), - [3115] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1486), - [3117] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1707), - [3119] = {.entry = {.count = 1, .reusable = true}}, SHIFT(295), - [3121] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1009), - [3123] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1108), - [3125] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_parameters, 3, 0, 89), - [3127] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_with_clause, 2, 0, 0), - [3129] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1433), - [3131] = {.entry = {.count = 1, .reusable = true}}, SHIFT(980), - [3133] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_positional_separator, 1, 0, 0), - [3135] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_with_item, 3, -1, 59), - [3137] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1221), - [3139] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1259), - [3141] = {.entry = {.count = 1, .reusable = true}}, SHIFT(260), - [3143] = {.entry = {.count = 1, .reusable = true}}, SHIFT(713), - [3145] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1380), - [3147] = {.entry = {.count = 1, .reusable = true}}, SHIFT(261), - [3149] = {.entry = {.count = 1, .reusable = true}}, SHIFT(729), - [3151] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1024), - [3153] = {.entry = {.count = 1, .reusable = true}}, SHIFT(95), - [3155] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__match_maybe_star_pattern, 1, 0, 0), - [3157] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__match_patterns, 1, 0, 0), - [3159] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_match_mapping_pattern_repeat1, 2, 0, 0), SHIFT_REPEAT(1023), - [3162] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_match_mapping_pattern_repeat1, 2, 0, 0), - [3164] = {.entry = {.count = 1, .reusable = true}}, SHIFT(249), - [3166] = {.entry = {.count = 1, .reusable = true}}, SHIFT(925), - [3168] = {.entry = {.count = 1, .reusable = true}}, SHIFT(248), - [3170] = {.entry = {.count = 1, .reusable = true}}, SHIFT(247), - [3172] = {.entry = {.count = 1, .reusable = true}}, SHIFT(284), - [3174] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1027), - [3176] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_import_statement, 3, 0, 22), - [3178] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_index_expression_list_repeat1, 2, 0, 32), - [3180] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_augmented_assignment, 3, 0, 40), - [3182] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_import_from_statement, 4, 0, 48), - [3184] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_type_parameters_repeat1, 2, 0, 89), - [3186] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_import_from_statement, 4, 0, 49), - [3188] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_argument_list_repeat1, 2, 0, 68), - [3190] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parameters, 2, 0, 0), - [3192] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_assignment, 5, 0, 95), - [3194] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_paramspec_parameter, 3, 0, 111), - [3196] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_continue_statement, 1, 0, 0), - [3198] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1704), - [3200] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1136), - [3202] = {.entry = {.count = 1, .reusable = true}}, SHIFT(70), - [3204] = {.entry = {.count = 1, .reusable = true}}, SHIFT(265), - [3206] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_positional_pattern, 1, 0, 0), - [3208] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_import_from_statement, 5, 0, 75), - [3210] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_import_from_statement, 5, 0, 76), - [3212] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_keyword_pattern, 3, 0, 164), - [3214] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_typevar_parameter, 2, 0, 88), - [3216] = {.entry = {.count = 1, .reusable = true}}, SHIFT(107), - [3218] = {.entry = {.count = 1, .reusable = true}}, SHIFT(264), - [3220] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1105), - [3222] = {.entry = {.count = 1, .reusable = true}}, SHIFT(874), - [3224] = {.entry = {.count = 1, .reusable = true}}, SHIFT(81), - [3226] = {.entry = {.count = 1, .reusable = true}}, SHIFT(285), - [3228] = {.entry = {.count = 1, .reusable = true}}, SHIFT(86), - [3230] = {.entry = {.count = 1, .reusable = true}}, SHIFT(286), - [3232] = {.entry = {.count = 1, .reusable = true}}, SHIFT(90), - [3234] = {.entry = {.count = 1, .reusable = true}}, SHIFT(287), - [3236] = {.entry = {.count = 1, .reusable = true}}, SHIFT(96), - [3238] = {.entry = {.count = 1, .reusable = true}}, SHIFT(278), - [3240] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_wildcard_import, 1, 0, 0), - [3242] = {.entry = {.count = 1, .reusable = true}}, SHIFT(82), - [3244] = {.entry = {.count = 1, .reusable = true}}, SHIFT(275), - [3246] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1221), - [3248] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_future_import_statement, 4, 0, 47), - [3250] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1636), - [3252] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1115), - [3254] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1115), - [3256] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_pass_statement, 1, 0, 0), - [3258] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1109), - [3260] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1109), - [3262] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_dictionary_repeat1, 2, 0, 32), - [3264] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_assignment, 3, 0, 39), - [3266] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_import_from_statement, 7, 0, 125), - [3268] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_break_statement, 1, 0, 0), - [3270] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_double_star_pattern, 2, 0, 11), - [3272] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_import_statement, 2, 0, 5), - [3274] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_future_import_statement, 6, 0, 99), - [3276] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1077), - [3278] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1077), - [3280] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_key_value_pattern, 3, 0, 63), - [3282] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1685), - [3284] = {.entry = {.count = 1, .reusable = true}}, SHIFT(858), - [3286] = {.entry = {.count = 1, .reusable = true}}, SHIFT(121), - [3288] = {.entry = {.count = 1, .reusable = true}}, SHIFT(274), - [3290] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_import_from_statement, 6, 0, 100), - [3292] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_typevar_parameter, 3, 0, 114), - [3294] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parameters, 3, 0, 0), - [3296] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_typevartuple_parameter, 3, 0, 111), - [3298] = {.entry = {.count = 1, .reusable = true}}, SHIFT(110), - [3300] = {.entry = {.count = 1, .reusable = true}}, SHIFT(722), - [3302] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1251), - [3304] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1294), - [3306] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1353), - [3308] = {.entry = {.count = 1, .reusable = true}}, SHIFT(68), - [3310] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1303), - [3312] = {.entry = {.count = 1, .reusable = true}}, SHIFT(947), - [3314] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_with_clause, 5, 0, 0), - [3316] = {.entry = {.count = 1, .reusable = true}}, SHIFT(984), - [3318] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1310), - [3320] = {.entry = {.count = 1, .reusable = true}}, SHIFT(294), - [3322] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_lambda_parameters, 1, 0, 0), - [3324] = {.entry = {.count = 1, .reusable = true}}, SHIFT(77), - [3326] = {.entry = {.count = 1, .reusable = true}}, SHIFT(97), - [3328] = {.entry = {.count = 1, .reusable = true}}, ACCEPT_INPUT(), - [3330] = {.entry = {.count = 1, .reusable = true}}, SHIFT(84), - [3332] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1590), - [3334] = {.entry = {.count = 1, .reusable = true}}, SHIFT(496), - [3336] = {.entry = {.count = 1, .reusable = true}}, SHIFT(724), - [3338] = {.entry = {.count = 1, .reusable = true}}, SHIFT(89), - [3340] = {.entry = {.count = 1, .reusable = true}}, SHIFT(908), - [3342] = {.entry = {.count = 1, .reusable = true}}, SHIFT(92), - [3344] = {.entry = {.count = 1, .reusable = true}}, SHIFT(93), - [3346] = {.entry = {.count = 1, .reusable = true}}, SHIFT(395), - [3348] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1377), - [3350] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1494), - [3352] = {.entry = {.count = 1, .reusable = true}}, SHIFT(911), - [3354] = {.entry = {.count = 1, .reusable = true}}, SHIFT(102), - [3356] = {.entry = {.count = 1, .reusable = true}}, SHIFT(69), - [3358] = {.entry = {.count = 1, .reusable = true}}, SHIFT(106), - [3360] = {.entry = {.count = 1, .reusable = true}}, SHIFT(912), - [3362] = {.entry = {.count = 1, .reusable = true}}, SHIFT(112), - [3364] = {.entry = {.count = 1, .reusable = true}}, SHIFT(115), - [3366] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1373), - [3368] = {.entry = {.count = 1, .reusable = true}}, SHIFT(324), - [3370] = {.entry = {.count = 1, .reusable = true}}, SHIFT(914), - [3372] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1359), - [3374] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1572), - [3376] = {.entry = {.count = 1, .reusable = true}}, SHIFT(690), - [3378] = {.entry = {.count = 1, .reusable = true}}, SHIFT(362), - [3380] = {.entry = {.count = 1, .reusable = true}}, SHIFT(916), - [3382] = {.entry = {.count = 1, .reusable = true}}, SHIFT(78), - [3384] = {.entry = {.count = 1, .reusable = true}}, SHIFT(80), - [3386] = {.entry = {.count = 1, .reusable = true}}, SHIFT(501), - [3388] = {.entry = {.count = 1, .reusable = true}}, SHIFT(116), - [3390] = {.entry = {.count = 1, .reusable = true}}, SHIFT(98), - [3392] = {.entry = {.count = 1, .reusable = true}}, SHIFT(928), - [3394] = {.entry = {.count = 1, .reusable = true}}, SHIFT(114), - [3396] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1367), - [3398] = {.entry = {.count = 1, .reusable = true}}, SHIFT(890), - [3400] = {.entry = {.count = 1, .reusable = true}}, SHIFT(660), - [3402] = {.entry = {.count = 1, .reusable = true}}, SHIFT(929), - [3404] = {.entry = {.count = 1, .reusable = true}}, SHIFT(987), - [3406] = {.entry = {.count = 1, .reusable = true}}, SHIFT(930), - [3408] = {.entry = {.count = 1, .reusable = true}}, SHIFT(126), - [3410] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1190), - [3412] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1056), - [3414] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1283), - [3416] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1554), - [3418] = {.entry = {.count = 1, .reusable = true}}, SHIFT(341), - [3420] = {.entry = {.count = 1, .reusable = true}}, SHIFT(933), - [3422] = {.entry = {.count = 1, .reusable = true}}, SHIFT(934), - [3424] = {.entry = {.count = 1, .reusable = true}}, SHIFT(703), - [3426] = {.entry = {.count = 1, .reusable = true}}, SHIFT(716), - [3428] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1307), - [3430] = {.entry = {.count = 1, .reusable = true}}, SHIFT(727), - [3432] = {.entry = {.count = 1, .reusable = true}}, SHIFT(938), - [3434] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1391), - [3436] = {.entry = {.count = 1, .reusable = true}}, SHIFT(999), - [3438] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1183), - [3440] = {.entry = {.count = 1, .reusable = true}}, SHIFT(728), - [3442] = {.entry = {.count = 1, .reusable = true}}, SHIFT(951), - [3444] = {.entry = {.count = 1, .reusable = true}}, SHIFT(718), - [3446] = {.entry = {.count = 1, .reusable = true}}, SHIFT(413), - [3448] = {.entry = {.count = 1, .reusable = true}}, SHIFT(687), - [3450] = {.entry = {.count = 1, .reusable = true}}, SHIFT(918), - [3452] = {.entry = {.count = 1, .reusable = true}}, SHIFT(893), - [3454] = {.entry = {.count = 1, .reusable = true}}, SHIFT(974), - [3456] = {.entry = {.count = 1, .reusable = true}}, SHIFT(105), - [3458] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1002), - [3460] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_with_clause, 4, 0, 0), - [3462] = {.entry = {.count = 1, .reusable = true}}, SHIFT(634), - [3464] = {.entry = {.count = 1, .reusable = true}}, SHIFT(867), - [3466] = {.entry = {.count = 1, .reusable = true}}, SHIFT(885), - [3468] = {.entry = {.count = 1, .reusable = true}}, SHIFT(887), - [3470] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_relative_import, 2, 0, 25), - [3472] = {.entry = {.count = 1, .reusable = true}}, SHIFT(976), - [3474] = {.entry = {.count = 1, .reusable = true}}, SHIFT(124), - [3476] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1271), - [3478] = {.entry = {.count = 1, .reusable = true}}, SHIFT(946), - [3480] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1273), - [3482] = {.entry = {.count = 1, .reusable = true}}, SHIFT(119), - [3484] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1138), - [3486] = {.entry = {.count = 1, .reusable = true}}, SHIFT(380), - [3488] = {.entry = {.count = 1, .reusable = true}}, SHIFT(113), - [3490] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_with_clause, 3, 0, 0), - [3492] = {.entry = {.count = 1, .reusable = true}}, SHIFT(967), - [3494] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1414), - [3496] = {.entry = {.count = 1, .reusable = true}}, SHIFT(402), - [3498] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1239), - [3500] = {.entry = {.count = 1, .reusable = true}}, SHIFT(72), - [3502] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1578), - [3504] = {.entry = {.count = 1, .reusable = true}}, SHIFT(969), - [3506] = {.entry = {.count = 1, .reusable = true}}, SHIFT(721), - [3508] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1588), - [3510] = {.entry = {.count = 1, .reusable = true}}, SHIFT(936), - [3512] = {.entry = {.count = 1, .reusable = true}}, SHIFT(370), - [3514] = {.entry = {.count = 1, .reusable = true}}, SHIFT(921), - [3516] = {.entry = {.count = 1, .reusable = true}}, SHIFT(975), - [3518] = {.entry = {.count = 1, .reusable = true}}, SHIFT(626), - [3520] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1375), - [3522] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1376), - [3524] = {.entry = {.count = 1, .reusable = true}}, SHIFT(731), - [3526] = {.entry = {.count = 1, .reusable = true}}, SHIFT(655), - [3528] = {.entry = {.count = 1, .reusable = true}}, SHIFT(977), - [3530] = {.entry = {.count = 1, .reusable = true}}, SHIFT(981), + [2669] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_format_specifier_repeat1, 2, 0, 0), + [2671] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_format_specifier_repeat1, 2, 0, 0), SHIFT_REPEAT(189), + [2674] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_format_specifier_repeat1, 2, 0, 0), SHIFT_REPEAT(1305), + [2677] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1341), + [2679] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__collection_elements, 2, 0, 16), + [2681] = {.entry = {.count = 1, .reusable = true}}, SHIFT(175), + [2683] = {.entry = {.count = 1, .reusable = true}}, SHIFT(177), + [2685] = {.entry = {.count = 1, .reusable = true}}, SHIFT(176), + [2687] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__collection_elements_repeat1, 2, 0, 37), + [2689] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__collection_elements_repeat1, 2, 0, 37), SHIFT_REPEAT(250), + [2692] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_star_pattern, 2, 0, 11), + [2694] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_raise_statement, 4, 0, 54), + [2696] = {.entry = {.count = 1, .reusable = true}}, SHIFT(73), + [2698] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_format_specifier, 2, 0, 0), + [2700] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1305), + [2702] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__type_param_default, 2, 0, 113), + [2704] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_slice, 5, 0, 144), + [2706] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_raise_statement, 3, 0, 31), + [2708] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_slice, 4, 0, 124), + [2710] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_argument_list_repeat1, 2, 0, 32), + [2712] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__simple_statements_repeat1, 2, 0, 0), SHIFT_REPEAT(133), + [2715] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__simple_statements_repeat1, 2, 0, 0), + [2717] = {.entry = {.count = 1, .reusable = true}}, SHIFT(300), + [2719] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_print_statement, 2, 0, 0), + [2721] = {.entry = {.count = 1, .reusable = true}}, SHIFT(869), + [2723] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_guard, 2, 0, 137), + [2725] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1391), + [2727] = {.entry = {.count = 1, .reusable = true}}, SHIFT(128), + [2729] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__import_list_repeat1, 2, 0, 25), + [2731] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1259), + [2733] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1492), + [2735] = {.entry = {.count = 1, .reusable = true}}, SHIFT(124), + [2737] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_global_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(1696), + [2740] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_global_statement_repeat1, 2, 0, 0), + [2742] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_typed_parameter, 3, 0, 66), + [2744] = {.entry = {.count = 1, .reusable = true}}, SHIFT(361), + [2746] = {.entry = {.count = 1, .reusable = true}}, SHIFT(870), + [2748] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1300), + [2750] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__import_list, 2, 0, 24), + [2752] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1304), + [2754] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__import_list_repeat1, 2, 0, 45), SHIFT_REPEAT(1503), + [2757] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__import_list_repeat1, 2, 0, 45), + [2759] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_import_prefix, 1, 0, 0), + [2761] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1352), + [2763] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parenthesized_list_splat, 3, 0, 0), + [2765] = {.entry = {.count = 1, .reusable = true}}, SHIFT(129), + [2767] = {.entry = {.count = 1, .reusable = true}}, SHIFT(318), + [2769] = {.entry = {.count = 1, .reusable = true}}, SHIFT(127), + [2771] = {.entry = {.count = 1, .reusable = true}}, SHIFT(328), + [2773] = {.entry = {.count = 1, .reusable = true}}, SHIFT(342), + [2775] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_exception_list_repeat1, 2, 0, 37), SHIFT_REPEAT(417), + [2778] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_exception_list_repeat1, 2, 0, 37), + [2780] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parenthesized_list_splat, 3, 0, 50), + [2782] = {.entry = {.count = 1, .reusable = true}}, SHIFT(95), + [2784] = {.entry = {.count = 1, .reusable = true}}, SHIFT(131), + [2786] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_import_prefix_repeat1, 2, 0, 0), + [2788] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_import_prefix_repeat1, 2, 0, 0), SHIFT_REPEAT(1352), + [2791] = {.entry = {.count = 1, .reusable = true}}, SHIFT(368), + [2793] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__patterns, 1, 0, 7), + [2795] = {.entry = {.count = 1, .reusable = true}}, SHIFT(466), + [2797] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1463), + [2799] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1527), + [2801] = {.entry = {.count = 1, .reusable = true}}, SHIFT(97), + [2803] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__patterns, 2, 0, 16), + [2805] = {.entry = {.count = 1, .reusable = true}}, SHIFT(471), + [2807] = {.entry = {.count = 1, .reusable = true}}, SHIFT(379), + [2809] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1384), + [2811] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1616), + [2813] = {.entry = {.count = 1, .reusable = true}}, SHIFT(118), + [2815] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_exception_list, 2, 0, 16), + [2817] = {.entry = {.count = 1, .reusable = true}}, SHIFT(357), + [2819] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1696), + [2821] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_nonlocal_statement, 2, 0, 0), + [2823] = {.entry = {.count = 1, .reusable = true}}, SHIFT(385), + [2825] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_print_statement_repeat1, 2, 0, 53), SHIFT_REPEAT(393), + [2828] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_print_statement_repeat1, 2, 0, 53), + [2830] = {.entry = {.count = 1, .reusable = true}}, SHIFT(70), + [2832] = {.entry = {.count = 1, .reusable = true}}, SHIFT(71), + [2834] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_assert_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(352), + [2837] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_typevartuple_parameter, 2, 0, 25), + [2839] = {.entry = {.count = 1, .reusable = true}}, SHIFT(101), + [2841] = {.entry = {.count = 1, .reusable = true}}, SHIFT(115), + [2843] = {.entry = {.count = 1, .reusable = true}}, SHIFT(119), + [2845] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_paramspec_parameter, 2, 0, 25), + [2847] = {.entry = {.count = 1, .reusable = true}}, SHIFT(291), + [2849] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_print_statement, 3, 0, 30), + [2851] = {.entry = {.count = 1, .reusable = true}}, SHIFT(841), + [2853] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parameter, 1, 0, 0), + [2855] = {.entry = {.count = 1, .reusable = true}}, SHIFT(268), + [2857] = {.entry = {.count = 1, .reusable = true}}, SHIFT(434), + [2859] = {.entry = {.count = 1, .reusable = true}}, SHIFT(92), + [2861] = {.entry = {.count = 1, .reusable = true}}, SHIFT(415), + [2863] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_global_statement, 3, 0, 0), + [2865] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_typevar_parameter, 2, 0, 87), + [2867] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_assert_statement, 3, 0, 0), + [2869] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_decorator, 3, 0, 0), + [2871] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_global_statement, 2, 0, 0), + [2873] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_nonlocal_statement, 3, 0, 0), + [2875] = {.entry = {.count = 1, .reusable = true}}, SHIFT(402), + [2877] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1028), + [2879] = {.entry = {.count = 1, .reusable = true}}, SHIFT(132), + [2881] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_with_clause_repeat1, 2, 0, 0), + [2883] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_with_clause_repeat1, 2, 0, 0), SHIFT_REPEAT(336), + [2886] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_exec_statement, 5, 0, 15), + [2888] = {.entry = {.count = 1, .reusable = true}}, SHIFT(130), + [2890] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1582), + [2892] = {.entry = {.count = 1, .reusable = true}}, SHIFT(296), + [2894] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_print_statement, 3, 0, 29), + [2896] = {.entry = {.count = 1, .reusable = true}}, SHIFT(248), + [2898] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1032), + [2900] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__parameters, 1, 0, 0), + [2902] = {.entry = {.count = 1, .reusable = true}}, SHIFT(429), + [2904] = {.entry = {.count = 1, .reusable = true}}, SHIFT(87), + [2906] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__match_maybe_star_pattern, 1, 0, 0), + [2908] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__match_patterns, 1, 0, 0), + [2910] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1200), + [2912] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1417), + [2914] = {.entry = {.count = 1, .reusable = true}}, SHIFT(400), + [2916] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_exec_statement, 2, 0, 15), + [2918] = {.entry = {.count = 1, .reusable = true}}, SHIFT(904), + [2920] = {.entry = {.count = 1, .reusable = true}}, SHIFT(204), + [2922] = {.entry = {.count = 1, .reusable = true}}, SHIFT(905), + [2924] = {.entry = {.count = 1, .reusable = true}}, SHIFT(205), + [2926] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1337), + [2928] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1338), + [2930] = {.entry = {.count = 1, .reusable = true}}, SHIFT(404), + [2932] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_parameters, 3, 0, 89), + [2934] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1510), + [2936] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1633), + [2938] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1150), + [2940] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1426), + [2942] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1006), + [2944] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1419), + [2946] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1151), + [2948] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_match_class_pattern_repeat1, 2, 0, 0), + [2950] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_match_class_pattern_repeat1, 2, 0, 0), SHIFT_REPEAT(991), + [2953] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1433), + [2955] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_argument_list_repeat1, 2, 0, 37), + [2957] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_argument_list_repeat1, 2, 0, 37), SHIFT_REPEAT(246), + [2960] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1111), + [2962] = {.entry = {.count = 1, .reusable = true}}, SHIFT(909), + [2964] = {.entry = {.count = 1, .reusable = true}}, SHIFT(206), + [2966] = {.entry = {.count = 1, .reusable = true}}, SHIFT(156), + [2968] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_assignment, 3, 0, 38), + [2970] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__parameters_repeat1, 2, 0, 0), + [2972] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__import_list_repeat1, 2, 0, 45), SHIFT_REPEAT(1465), + [2975] = {.entry = {.count = 1, .reusable = true}}, SHIFT(910), + [2977] = {.entry = {.count = 1, .reusable = true}}, SHIFT(207), + [2979] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_aliased_import, 3, 0, 46), + [2981] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_index_expression_list_repeat1, 2, 0, 37), SHIFT_REPEAT(252), + [2984] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_index_expression_list_repeat1, 2, 0, 37), + [2986] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_match_class_pattern_repeat2, 2, 0, 0), + [2988] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_match_class_pattern_repeat2, 2, 0, 0), SHIFT_REPEAT(1593), + [2991] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1031), + [2993] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_dictionary_repeat1, 2, 0, 37), SHIFT_REPEAT(265), + [2996] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_dictionary_repeat1, 2, 0, 37), + [2998] = {.entry = {.count = 1, .reusable = true}}, SHIFT(260), + [3000] = {.entry = {.count = 1, .reusable = true}}, SHIFT(928), + [3002] = {.entry = {.count = 1, .reusable = true}}, SHIFT(262), + [3004] = {.entry = {.count = 1, .reusable = true}}, SHIFT(966), + [3006] = {.entry = {.count = 1, .reusable = true}}, SHIFT(968), + [3008] = {.entry = {.count = 1, .reusable = true}}, SHIFT(217), + [3010] = {.entry = {.count = 1, .reusable = true}}, SHIFT(243), + [3012] = {.entry = {.count = 1, .reusable = true}}, SHIFT(969), + [3014] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1349), + [3016] = {.entry = {.count = 1, .reusable = true}}, SHIFT(972), + [3018] = {.entry = {.count = 1, .reusable = true}}, SHIFT(218), + [3020] = {.entry = {.count = 1, .reusable = true}}, SHIFT(973), + [3022] = {.entry = {.count = 1, .reusable = true}}, SHIFT(219), + [3024] = {.entry = {.count = 1, .reusable = true}}, SHIFT(975), + [3026] = {.entry = {.count = 1, .reusable = true}}, SHIFT(220), + [3028] = {.entry = {.count = 1, .reusable = true}}, SHIFT(976), + [3030] = {.entry = {.count = 1, .reusable = true}}, SHIFT(221), + [3032] = {.entry = {.count = 1, .reusable = true}}, SHIFT(245), + [3034] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_index_expression_list, 2, 0, 16), + [3036] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_relative_import, 1, 0, 0), + [3038] = {.entry = {.count = 1, .reusable = true}}, SHIFT(258), + [3040] = {.entry = {.count = 1, .reusable = true}}, SHIFT(946), + [3042] = {.entry = {.count = 1, .reusable = true}}, SHIFT(875), + [3044] = {.entry = {.count = 1, .reusable = true}}, SHIFT(226), + [3046] = {.entry = {.count = 1, .reusable = true}}, SHIFT(876), + [3048] = {.entry = {.count = 1, .reusable = true}}, SHIFT(240), + [3050] = {.entry = {.count = 1, .reusable = true}}, SHIFT(881), + [3052] = {.entry = {.count = 1, .reusable = true}}, SHIFT(227), + [3054] = {.entry = {.count = 1, .reusable = true}}, SHIFT(882), + [3056] = {.entry = {.count = 1, .reusable = true}}, SHIFT(191), + [3058] = {.entry = {.count = 1, .reusable = true}}, SHIFT(336), + [3060] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_with_clause, 2, 0, 0), + [3062] = {.entry = {.count = 1, .reusable = true}}, SHIFT(884), + [3064] = {.entry = {.count = 1, .reusable = true}}, SHIFT(229), + [3066] = {.entry = {.count = 1, .reusable = true}}, SHIFT(885), + [3068] = {.entry = {.count = 1, .reusable = true}}, SHIFT(230), + [3070] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_match_mapping_pattern_repeat1, 2, 0, 0), SHIFT_REPEAT(1029), + [3073] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_match_mapping_pattern_repeat1, 2, 0, 0), + [3075] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_with_clause, 1, 0, 0), + [3077] = {.entry = {.count = 1, .reusable = true}}, SHIFT(264), + [3079] = {.entry = {.count = 1, .reusable = true}}, SHIFT(721), + [3081] = {.entry = {.count = 1, .reusable = true}}, SHIFT(934), + [3083] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1034), + [3085] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1033), + [3087] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1706), + [3089] = {.entry = {.count = 1, .reusable = true}}, SHIFT(309), + [3091] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__parameters_repeat1, 2, 0, 0), SHIFT_REPEAT(1036), + [3094] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1114), + [3096] = {.entry = {.count = 1, .reusable = true}}, SHIFT(982), + [3098] = {.entry = {.count = 1, .reusable = true}}, SHIFT(935), + [3100] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1110), + [3102] = {.entry = {.count = 1, .reusable = true}}, SHIFT(929), + [3104] = {.entry = {.count = 1, .reusable = true}}, SHIFT(194), + [3106] = {.entry = {.count = 1, .reusable = true}}, SHIFT(79), + [3108] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1260), + [3110] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1505), + [3112] = {.entry = {.count = 1, .reusable = true}}, SHIFT(98), + [3114] = {.entry = {.count = 1, .reusable = true}}, SHIFT(724), + [3116] = {.entry = {.count = 1, .reusable = true}}, SHIFT(196), + [3118] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1010), + [3120] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1124), + [3122] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_format_specifier_repeat1, 1, 0, 74), + [3124] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_format_specifier_repeat1, 1, 0, 74), + [3126] = {.entry = {.count = 1, .reusable = true}}, SHIFT(983), + [3128] = {.entry = {.count = 1, .reusable = true}}, SHIFT(313), + [3130] = {.entry = {.count = 1, .reusable = true}}, SHIFT(299), + [3132] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1439), + [3134] = {.entry = {.count = 1, .reusable = true}}, SHIFT(273), + [3136] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_parameters, 4, 0, 115), + [3138] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_type_parameters_repeat1, 2, 0, 116), SHIFT_REPEAT(1200), + [3141] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_type_parameters_repeat1, 2, 0, 116), + [3143] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_positional_separator, 1, 0, 0), + [3145] = {.entry = {.count = 1, .reusable = true}}, SHIFT(289), + [3147] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1263), + [3149] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1312), + [3151] = {.entry = {.count = 1, .reusable = true}}, SHIFT(249), + [3153] = {.entry = {.count = 1, .reusable = true}}, SHIFT(503), + [3155] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__parameters_repeat1, 2, 0, 0), SHIFT_REPEAT(1035), + [3158] = {.entry = {.count = 1, .reusable = true}}, SHIFT(99), + [3160] = {.entry = {.count = 1, .reusable = true}}, SHIFT(727), + [3162] = {.entry = {.count = 1, .reusable = true}}, SHIFT(198), + [3164] = {.entry = {.count = 1, .reusable = true}}, SHIFT(728), + [3166] = {.entry = {.count = 1, .reusable = true}}, SHIFT(199), + [3168] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_with_item, 3, -1, 59), + [3170] = {.entry = {.count = 1, .reusable = true}}, SHIFT(730), + [3172] = {.entry = {.count = 1, .reusable = true}}, SHIFT(200), + [3174] = {.entry = {.count = 1, .reusable = true}}, SHIFT(731), + [3176] = {.entry = {.count = 1, .reusable = true}}, SHIFT(201), + [3178] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1508), + [3180] = {.entry = {.count = 1, .reusable = true}}, SHIFT(931), + [3182] = {.entry = {.count = 1, .reusable = true}}, SHIFT(253), + [3184] = {.entry = {.count = 1, .reusable = true}}, SHIFT(251), + [3186] = {.entry = {.count = 1, .reusable = true}}, SHIFT(302), + [3188] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_keyword_pattern, 3, 0, 164), + [3190] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_index_expression_list_repeat1, 2, 0, 32), + [3192] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parameters, 3, 0, 0), + [3194] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1263), + [3196] = {.entry = {.count = 1, .reusable = true}}, SHIFT(68), + [3198] = {.entry = {.count = 1, .reusable = true}}, SHIFT(285), + [3200] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_argument_list_repeat1, 2, 0, 68), + [3202] = {.entry = {.count = 1, .reusable = true}}, SHIFT(82), + [3204] = {.entry = {.count = 1, .reusable = true}}, SHIFT(286), + [3206] = {.entry = {.count = 1, .reusable = true}}, SHIFT(86), + [3208] = {.entry = {.count = 1, .reusable = true}}, SHIFT(287), + [3210] = {.entry = {.count = 1, .reusable = true}}, SHIFT(93), + [3212] = {.entry = {.count = 1, .reusable = true}}, SHIFT(288), + [3214] = {.entry = {.count = 1, .reusable = true}}, SHIFT(94), + [3216] = {.entry = {.count = 1, .reusable = true}}, SHIFT(284), + [3218] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_key_value_pattern, 3, 0, 63), + [3220] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parameters, 2, 0, 0), + [3222] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_import_statement, 2, 0, 5), + [3224] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1731), + [3226] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1707), + [3228] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1128), + [3230] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1128), + [3232] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_import_from_statement, 5, 0, 75), + [3234] = {.entry = {.count = 1, .reusable = true}}, SHIFT(76), + [3236] = {.entry = {.count = 1, .reusable = true}}, SHIFT(271), + [3238] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_import_from_statement, 5, 0, 76), + [3240] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_typevartuple_parameter, 3, 0, 111), + [3242] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_paramspec_parameter, 3, 0, 111), + [3244] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_future_import_statement, 4, 0, 47), + [3246] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_dictionary_repeat1, 2, 0, 32), + [3248] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1627), + [3250] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1140), + [3252] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_typevar_parameter, 2, 0, 88), + [3254] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_wildcard_import, 1, 0, 0), + [3256] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_typevar_parameter, 3, 0, 114), + [3258] = {.entry = {.count = 1, .reusable = true}}, SHIFT(121), + [3260] = {.entry = {.count = 1, .reusable = true}}, SHIFT(274), + [3262] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_type_parameters_repeat1, 2, 0, 89), + [3264] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_import_from_statement, 4, 0, 48), + [3266] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_import_from_statement, 4, 0, 49), + [3268] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_pass_statement, 1, 0, 0), + [3270] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_future_import_statement, 6, 0, 99), + [3272] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_import_from_statement, 6, 0, 100), + [3274] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_assignment, 3, 0, 39), + [3276] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1079), + [3278] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1079), + [3280] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_break_statement, 1, 0, 0), + [3282] = {.entry = {.count = 1, .reusable = true}}, SHIFT(861), + [3284] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_import_statement, 3, 0, 22), + [3286] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1133), + [3288] = {.entry = {.count = 1, .reusable = true}}, SHIFT(939), + [3290] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_continue_statement, 1, 0, 0), + [3292] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1127), + [3294] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1127), + [3296] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_import_from_statement, 7, 0, 125), + [3298] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_augmented_assignment, 3, 0, 40), + [3300] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_double_star_pattern, 2, 0, 11), + [3302] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_assignment, 5, 0, 95), + [3304] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_positional_pattern, 1, 0, 0), + [3306] = {.entry = {.count = 1, .reusable = true}}, SHIFT(109), + [3308] = {.entry = {.count = 1, .reusable = true}}, SHIFT(280), + [3310] = {.entry = {.count = 1, .reusable = true}}, SHIFT(72), + [3312] = {.entry = {.count = 1, .reusable = true}}, SHIFT(722), + [3314] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1542), + [3316] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1442), + [3318] = {.entry = {.count = 1, .reusable = true}}, SHIFT(716), + [3320] = {.entry = {.count = 1, .reusable = true}}, SHIFT(648), + [3322] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1180), + [3324] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1275), + [3326] = {.entry = {.count = 1, .reusable = true}}, SHIFT(75), + [3328] = {.entry = {.count = 1, .reusable = true}}, SHIFT(495), + [3330] = {.entry = {.count = 1, .reusable = true}}, SHIFT(714), + [3332] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1605), + [3334] = {.entry = {.count = 1, .reusable = true}}, SHIFT(80), + [3336] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1148), + [3338] = {.entry = {.count = 1, .reusable = true}}, SHIFT(900), + [3340] = {.entry = {.count = 1, .reusable = true}}, SHIFT(100), + [3342] = {.entry = {.count = 1, .reusable = true}}, SHIFT(492), + [3344] = {.entry = {.count = 1, .reusable = true}}, SHIFT(85), + [3346] = {.entry = {.count = 1, .reusable = true}}, SHIFT(88), + [3348] = {.entry = {.count = 1, .reusable = true}}, SHIFT(90), + [3350] = {.entry = {.count = 1, .reusable = true}}, SHIFT(69), + [3352] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1306), + [3354] = {.entry = {.count = 1, .reusable = true}}, SHIFT(430), + [3356] = {.entry = {.count = 1, .reusable = true}}, SHIFT(930), + [3358] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1293), + [3360] = {.entry = {.count = 1, .reusable = true}}, SHIFT(126), + [3362] = {.entry = {.count = 1, .reusable = true}}, SHIFT(116), + [3364] = {.entry = {.count = 1, .reusable = true}}, SHIFT(104), + [3366] = {.entry = {.count = 1, .reusable = true}}, SHIFT(108), + [3368] = {.entry = {.count = 1, .reusable = true}}, SHIFT(110), + [3370] = {.entry = {.count = 1, .reusable = true}}, SHIFT(113), + [3372] = {.entry = {.count = 1, .reusable = true}}, SHIFT(987), + [3374] = {.entry = {.count = 1, .reusable = true}}, SHIFT(993), + [3376] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1366), + [3378] = {.entry = {.count = 1, .reusable = true}}, SHIFT(955), + [3380] = {.entry = {.count = 1, .reusable = true}}, SHIFT(891), + [3382] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1517), + [3384] = {.entry = {.count = 1, .reusable = true}}, SHIFT(711), + [3386] = {.entry = {.count = 1, .reusable = true}}, SHIFT(894), + [3388] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1285), + [3390] = {.entry = {.count = 1, .reusable = true}}, SHIFT(107), + [3392] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1282), + [3394] = {.entry = {.count = 1, .reusable = true}}, SHIFT(125), + [3396] = {.entry = {.count = 1, .reusable = true}}, SHIFT(899), + [3398] = {.entry = {.count = 1, .reusable = true}}, SHIFT(926), + [3400] = {.entry = {.count = 1, .reusable = true}}, SHIFT(902), + [3402] = {.entry = {.count = 1, .reusable = true}}, SHIFT(378), + [3404] = {.entry = {.count = 1, .reusable = true}}, SHIFT(906), + [3406] = {.entry = {.count = 1, .reusable = true}}, SHIFT(956), + [3408] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1584), + [3410] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1585), + [3412] = {.entry = {.count = 1, .reusable = true}}, SHIFT(658), + [3414] = {.entry = {.count = 1, .reusable = true}}, SHIFT(933), + [3416] = {.entry = {.count = 1, .reusable = true}}, SHIFT(937), + [3418] = {.entry = {.count = 1, .reusable = true}}, SHIFT(938), + [3420] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1379), + [3422] = {.entry = {.count = 1, .reusable = true}}, SHIFT(944), + [3424] = {.entry = {.count = 1, .reusable = true}}, SHIFT(317), + [3426] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1536), + [3428] = {.entry = {.count = 1, .reusable = true}}, SHIFT(106), + [3430] = {.entry = {.count = 1, .reusable = true}}, SHIFT(948), + [3432] = {.entry = {.count = 1, .reusable = true}}, SHIFT(957), + [3434] = {.entry = {.count = 1, .reusable = true}}, SHIFT(710), + [3436] = {.entry = {.count = 1, .reusable = true}}, SHIFT(990), + [3438] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_lambda_parameters, 1, 0, 0), + [3440] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1009), + [3442] = {.entry = {.count = 1, .reusable = true}}, SHIFT(360), + [3444] = {.entry = {.count = 1, .reusable = true}}, SHIFT(932), + [3446] = {.entry = {.count = 1, .reusable = true}}, SHIFT(117), + [3448] = {.entry = {.count = 1, .reusable = true}}, SHIFT(718), + [3450] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1425), + [3452] = {.entry = {.count = 1, .reusable = true}}, SHIFT(414), + [3454] = {.entry = {.count = 1, .reusable = true}}, SHIFT(670), + [3456] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1403), + [3458] = {.entry = {.count = 1, .reusable = true}}, SHIFT(951), + [3460] = {.entry = {.count = 1, .reusable = true}}, SHIFT(102), + [3462] = {.entry = {.count = 1, .reusable = true}}, SHIFT(669), + [3464] = {.entry = {.count = 1, .reusable = true}}, SHIFT(959), + [3466] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_with_clause, 4, 0, 0), + [3468] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1396), + [3470] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_with_clause, 3, 0, 0), + [3472] = {.entry = {.count = 1, .reusable = true}}, ACCEPT_INPUT(), + [3474] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_relative_import, 2, 0, 25), + [3476] = {.entry = {.count = 1, .reusable = true}}, SHIFT(686), + [3478] = {.entry = {.count = 1, .reusable = true}}, SHIFT(961), + [3480] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1185), + [3482] = {.entry = {.count = 1, .reusable = true}}, SHIFT(962), + [3484] = {.entry = {.count = 1, .reusable = true}}, SHIFT(738), + [3486] = {.entry = {.count = 1, .reusable = true}}, SHIFT(111), + [3488] = {.entry = {.count = 1, .reusable = true}}, SHIFT(120), + [3490] = {.entry = {.count = 1, .reusable = true}}, SHIFT(963), + [3492] = {.entry = {.count = 1, .reusable = true}}, SHIFT(77), + [3494] = {.entry = {.count = 1, .reusable = true}}, SHIFT(123), + [3496] = {.entry = {.count = 1, .reusable = true}}, SHIFT(922), + [3498] = {.entry = {.count = 1, .reusable = true}}, SHIFT(947), + [3500] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1314), + [3502] = {.entry = {.count = 1, .reusable = true}}, SHIFT(965), + [3504] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1375), + [3506] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_with_clause, 5, 0, 0), + [3508] = {.entry = {.count = 1, .reusable = true}}, SHIFT(936), + [3510] = {.entry = {.count = 1, .reusable = true}}, SHIFT(943), + [3512] = {.entry = {.count = 1, .reusable = true}}, SHIFT(384), + [3514] = {.entry = {.count = 1, .reusable = true}}, SHIFT(651), + [3516] = {.entry = {.count = 1, .reusable = true}}, SHIFT(381), + [3518] = {.entry = {.count = 1, .reusable = true}}, SHIFT(712), + [3520] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1053), + [3522] = {.entry = {.count = 1, .reusable = true}}, SHIFT(952), + [3524] = {.entry = {.count = 1, .reusable = true}}, SHIFT(341), + [3526] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1012), + [3528] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1392), + [3530] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1374), + [3532] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1397), + [3534] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1398), + [3536] = {.entry = {.count = 1, .reusable = true}}, SHIFT(89), + [3538] = {.entry = {.count = 1, .reusable = true}}, SHIFT(308), + [3540] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1334), + [3542] = {.entry = {.count = 1, .reusable = true}}, SHIFT(717), }; enum ts_external_scanner_symbol_identifiers { @@ -85011,10 +85783,10 @@ static const bool ts_external_scanner_states[12][EXTERNAL_TOKEN_COUNT] = { [ts_external_token__string_start] = true, }, [8] = { - [ts_external_token__string_start] = true, + [ts_external_token__template_string_start] = true, }, [9] = { - [ts_external_token__template_string_start] = true, + [ts_external_token__string_start] = true, }, [10] = { [ts_external_token__newline] = true, From 91d4cf662436a7f22cb4e16382974a9c176ca7f7 Mon Sep 17 00:00:00 2001 From: Taus Date: Fri, 10 Apr 2026 16:07:25 +0000 Subject: [PATCH 124/157] Python: Update `python.tsg` First, we extend the various location overriding hacks to also accept list and dict splats in various places. Having done this, we then have to tackle how to actually desugar these new comprehension forms (as this is what we currently do for the old forms). As a reminder, a list comprehension like `[x for x in y]` currently gets desugared into a small local function, something like ```python def listcomp(a): for x in a: yield x listcomp(y) ``` For `[*x for x in y]`, the behaviour we want is that we unpack `x` before yielding its elements in turn. This is essentially what we would get if we were to use `yield from x` instead of `yield x` in the above desugaring, so that's what we do. This also works for set comprehensions. For dict comprehensions, it's slightly more complicated. Here, the generator function instead yields a stream of `(key, value)` tuples. (And apparently the old parser got this wrong and emitted `(value, key)` pairs instead, which we faithfully recreated in the new parser as well. We fix that bug in both parsers while we're at it). So, a bare `yield from` is not enough, we also need a `.items()` call to get the double-starred expression to emit its items as a stream of tuples (that we then `yield from`. To make this (hopefully) less verbose in the implementation, we defer the decision of whether to use `yield` or `yield from` by introducing a `yield_kind` scoped variable that determines the type of the actual AST node. And of course for dict comprehensions with unpacking we need to synthesise the extra machinery mentioned above. On the plus side, this means we don't have to mess with control-flow, as the existing machinery should be able to handle the desugared syntax just fine. --- python/extractor/tsg-python/python.tsg | 78 ++++++++++++++++++++++---- 1 file changed, 66 insertions(+), 12 deletions(-) diff --git a/python/extractor/tsg-python/python.tsg b/python/extractor/tsg-python/python.tsg index 93d6e95a344a..e0aadd5432cd 100644 --- a/python/extractor/tsg-python/python.tsg +++ b/python/extractor/tsg-python/python.tsg @@ -403,7 +403,7 @@ ;;; GeneratorExp -(generator_expression . "(" . (comment)* . (expression) @start [(for_in_clause) (if_clause)] @end . (comment)* . ")" .) @generatorexp +(generator_expression . "(" . (comment)* . [(expression) (list_splat)] @start [(for_in_clause) (if_clause)] @end . (comment)* . ")" .) @generatorexp { attr (@generatorexp.node) _location_start = (location-start @start) attr (@generatorexp.node) _location_end = (location-end @end) @@ -415,13 +415,13 @@ attr (@if.node) _location_end = (location-end @expr) } -(generator_expression . "(" . (comment)* . (expression) @start (for_in_clause) @child [(for_in_clause) (if_clause)] @end . (comment)* . ")" .) @_genexpr +(generator_expression . "(" . (comment)* . [(expression) (list_splat)] @start (for_in_clause) @child [(for_in_clause) (if_clause)] @end . (comment)* . ")" .) @_genexpr { attr (@child.node) _location_start = (location-start @start) attr (@child.node) _location_end = (location-end @end) } -(generator_expression . "(" . (comment)* . (expression) @start (for_in_clause) @end . (comment)* . ")" .) @_genexpr +(generator_expression . "(" . (comment)* . [(expression) (list_splat)] @start (for_in_clause) @end . (comment)* . ")" .) @_genexpr { attr (@end.node) _location_start = (location-start @start) attr (@end.node) _location_end = (location-end @end) @@ -824,6 +824,29 @@ attr (@genexpr.arg_use) ctx = "load" } +; DictComp with unpacking (PEP 798): `{**d for d in dicts}` +(dictionary_comprehension + body: (dictionary_splat) +) @genexpr +{ + let @genexpr.fun = (ast-node @genexpr "Function") + attr (@genexpr.node) function = @genexpr.fun + attr (@genexpr.fun) name = "dictcomp" + + let @genexpr.arg = (ast-node @genexpr "Name") + attr (@genexpr.arg) variable = ".0" + attr (@genexpr.arg) ctx = "param" + + edge @genexpr.fun -> @genexpr.arg + attr (@genexpr.fun -> @genexpr.arg) args = 0 + attr (@genexpr.fun) kwonlyargs = #null + attr (@genexpr.fun) kwarg = #null + + let @genexpr.arg_use = (ast-node @genexpr "Name") + attr (@genexpr.arg_use) variable = ".0" + attr (@genexpr.arg_use) ctx = "load" +} + ;;;;;; End of DictComp (`{a: b for c in d if e}`) ;;;;;; GeneratorExp (`(a for b in c if d)`) @@ -862,7 +885,7 @@ ; information for the entire generator expression (yes, it is a wide parameter!) and so we must recreate the logic for ; setting this location information correctly. -(generator_expression . "(" . (comment)* . (expression) @start [(for_in_clause) (if_clause)] @end . (comment)* . ")" .) @genexpr +(generator_expression . "(" . (comment)* . [(expression) (list_splat)] @start [(for_in_clause) (if_clause)] @end . (comment)* . ")" .) @genexpr { ; Synthesize the `genexpr` function let @genexpr.fun = (ast-node @genexpr "Function") @@ -1034,12 +1057,25 @@ ; For everything except dictionary comprehensions, the innermost expression is just the `body` of the ; comprehension. [ - (generator_expression body: (_) @body) @genexpr - (list_comprehension body: (_) @body) @genexpr - (set_comprehension body: (_) @body) @genexpr + (generator_expression body: (expression) @body) @genexpr + (list_comprehension body: (expression) @body) @genexpr + (set_comprehension body: (expression) @body) @genexpr ] { let @genexpr.result = @body.node + let @genexpr.yield_kind = "Yield" +} + +; For starred comprehensions (PEP 798), the result is the inner expression (not the Starred +; wrapper), and we use `yield from` instead of `yield` to represent the unpacking semantics. +[ + (generator_expression body: (list_splat (expression) @inner) @_body) @genexpr + (list_comprehension body: (list_splat (expression) @inner) @_body) @genexpr + (set_comprehension body: (list_splat (expression) @inner) @_body) @genexpr +] +{ + let @genexpr.result = @inner.node + let @genexpr.yield_kind = "YieldFrom" } ; For dict comprehensions, we build an explicit tuple using the key and value pair. @@ -1052,13 +1088,31 @@ { let tuple = (ast-node @body "Tuple") edge tuple -> @key.node - attr (tuple -> @key.node) elts = 1 + attr (tuple -> @key.node) elts = 0 edge tuple -> @value.node - attr (tuple -> @value.node) elts = 0 - ; TODO verify that it is correct to use a `(value, key)` tuple, and not a `(key, value)` tuple above. - ; That is what the current parser does... + attr (tuple -> @value.node) elts = 1 attr (tuple) ctx = "load" let @genexpr.result = tuple + let @genexpr.yield_kind = "Yield" +} + +; For dict comprehensions with unpacking (PEP 798), `{**d for d in dicts}` desugars to +; `yield from d.items()` to produce (key, value) tuples consistent with the regular dict comp model. +(dictionary_comprehension + body: (dictionary_splat (expression) @inner) @_body +) @genexpr +{ + ; Synthesize `d.items()`: Attribute(value=d, attr='items') then Call(func=attr) + let attr = (ast-node @inner "Attribute") + attr (attr) value = @inner.node + attr (attr) attr = "items" + attr (attr) ctx = "load" + + let call = (ast-node @inner "Call") + attr (call) func = attr + + let @genexpr.result = call + let @genexpr.yield_kind = "YieldFrom" } ; For the final clause, we need to hook it up with the rest of the expression. @@ -1094,7 +1148,7 @@ let last = (get-last-element @last_candidates) let expr = (ast-node @body "Expr") - let yield = (ast-node @body "Yield") + let yield = (ast-node @body @genexpr.yield_kind) let @genexpr.expr = expr let @genexpr.yield = yield From 90b64616f79b77f1a3f9de6e4f43090a561fe3f0 Mon Sep 17 00:00:00 2001 From: Taus Date: Fri, 10 Apr 2026 16:08:30 +0000 Subject: [PATCH 125/157] Python: Also fix `(value, key)` bug in old parser --- python/extractor/semmle/python/parser/ast.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/python/extractor/semmle/python/parser/ast.py b/python/extractor/semmle/python/parser/ast.py index 85d87108e353..e1843131554a 100644 --- a/python/extractor/semmle/python/parser/ast.py +++ b/python/extractor/semmle/python/parser/ast.py @@ -1432,7 +1432,7 @@ def rewrite_comp(node): elt = node.elt del node.elt else: - elt = ast.Tuple([node.value, node.key], LOAD) + elt = ast.Tuple([node.key, node.value], LOAD) elt.lineno = node.key.lineno elt.col_offset = node.key.col_offset elt._end = node.value._end From fc5b3562c395680208879fb82e58589cbe558707 Mon Sep 17 00:00:00 2001 From: Taus Date: Fri, 10 Apr 2026 16:08:45 +0000 Subject: [PATCH 126/157] Python: Add parser test for comprehensions with unpacking --- .../unpacking_in_comprehensions_new.expected | 285 ++++++++++++++++++ .../parser/unpacking_in_comprehensions_new.py | 19 ++ 2 files changed, 304 insertions(+) create mode 100644 python/extractor/tests/parser/unpacking_in_comprehensions_new.expected create mode 100644 python/extractor/tests/parser/unpacking_in_comprehensions_new.py diff --git a/python/extractor/tests/parser/unpacking_in_comprehensions_new.expected b/python/extractor/tests/parser/unpacking_in_comprehensions_new.expected new file mode 100644 index 000000000000..a95d0bc25059 --- /dev/null +++ b/python/extractor/tests/parser/unpacking_in_comprehensions_new.expected @@ -0,0 +1,285 @@ +Module: [4, 0] - [20, 0] + body: [ + Expr: [4, 0] - [4, 15] + value: + ListComp: [4, 0] - [4, 15] + elt: None + generators: None + function: + Function: [4, 0] - [4, 15] + name: 'listcomp' + type_parameters: [] + args: [ + Name: [4, 0] - [4, 15] + variable: Variable('.0', None) + ctx: Param + ] + vararg: None + kwonlyargs: None + kwarg: None + body: [ + For: [4, 0] - [4, 15] + target: + Name: [4, 8] - [4, 9] + variable: Variable('x', None) + ctx: Store + iter: + Name: [4, 0] - [4, 15] + variable: Variable('.0', None) + ctx: Load + body: [ + Expr: [4, 1] - [4, 3] + value: + YieldFrom: [4, 1] - [4, 3] + value: + Name: [4, 2] - [4, 3] + variable: Variable('x', None) + ctx: Load + ] + orelse: None + ] + iterable: + Name: [4, 13] - [4, 14] + variable: Variable('y', None) + ctx: Load + Expr: [7, 0] - [7, 15] + value: + SetComp: [7, 0] - [7, 15] + elt: None + generators: None + function: + Function: [7, 0] - [7, 15] + name: 'setcomp' + type_parameters: [] + args: [ + Name: [7, 0] - [7, 15] + variable: Variable('.0', None) + ctx: Param + ] + vararg: None + kwonlyargs: None + kwarg: None + body: [ + For: [7, 0] - [7, 15] + target: + Name: [7, 8] - [7, 9] + variable: Variable('x', None) + ctx: Store + iter: + Name: [7, 0] - [7, 15] + variable: Variable('.0', None) + ctx: Load + body: [ + Expr: [7, 1] - [7, 3] + value: + YieldFrom: [7, 1] - [7, 3] + value: + Name: [7, 2] - [7, 3] + variable: Variable('x', None) + ctx: Load + ] + orelse: None + ] + iterable: + Name: [7, 13] - [7, 14] + variable: Variable('y', None) + ctx: Load + Expr: [10, 0] - [10, 20] + value: + DictComp: [10, 0] - [10, 20] + key: None + value: None + generators: None + function: + Function: [10, 0] - [10, 20] + name: 'dictcomp' + type_parameters: [] + args: [ + Name: [10, 0] - [10, 20] + variable: Variable('.0', None) + ctx: Param + ] + vararg: None + kwonlyargs: None + kwarg: None + body: [ + For: [10, 0] - [10, 20] + target: + Name: [10, 9] - [10, 10] + variable: Variable('d', None) + ctx: Store + iter: + Name: [10, 0] - [10, 20] + variable: Variable('.0', None) + ctx: Load + body: [ + Expr: [10, 1] - [10, 4] + value: + YieldFrom: [10, 1] - [10, 4] + value: + Call: [10, 3] - [10, 4] + func: + Attribute: [10, 3] - [10, 4] + value: + Name: [10, 3] - [10, 4] + variable: Variable('d', None) + ctx: Load + attr: 'items' + ctx: Load + positional_args: [] + named_args: [] + ] + orelse: None + ] + iterable: + Name: [10, 14] - [10, 19] + variable: Variable('dicts', None) + ctx: Load + Expr: [13, 0] - [13, 15] + value: + GeneratorExp: [13, 1] - [13, 14] + elt: None + generators: None + function: + Function: [13, 1] - [13, 14] + name: 'genexpr' + type_parameters: [] + args: [ + Name: [13, 1] - [13, 14] + variable: Variable('.0', None) + ctx: Param + ] + vararg: None + kwonlyargs: None + kwarg: None + body: [ + For: [13, 1] - [13, 14] + target: + Name: [13, 8] - [13, 9] + variable: Variable('x', None) + ctx: Store + iter: + Name: [13, 1] - [13, 14] + variable: Variable('.0', None) + ctx: Load + body: [ + Expr: [13, 1] - [13, 3] + value: + YieldFrom: [13, 1] - [13, 3] + value: + Name: [13, 2] - [13, 3] + variable: Variable('x', None) + ctx: Load + ] + orelse: None + ] + iterable: + Name: [13, 13] - [13, 14] + variable: Variable('y', None) + ctx: Load + parenthesised: True + Expr: [16, 0] - [16, 20] + value: + ListComp: [16, 0] - [16, 20] + elt: None + generators: None + function: + Function: [16, 0] - [16, 20] + name: 'listcomp' + type_parameters: [] + args: [ + Name: [16, 0] - [16, 20] + variable: Variable('.0', None) + ctx: Param + ] + vararg: None + kwonlyargs: None + kwarg: None + body: [ + For: [16, 0] - [16, 20] + target: + Name: [16, 8] - [16, 9] + variable: Variable('x', None) + ctx: Store + iter: + Name: [16, 0] - [16, 20] + variable: Variable('.0', None) + ctx: Load + body: [ + If: [16, 18] - [16, 19] + test: + Name: [16, 18] - [16, 19] + variable: Variable('x', None) + ctx: Load + body: [ + Expr: [16, 1] - [16, 3] + value: + YieldFrom: [16, 1] - [16, 3] + value: + Name: [16, 2] - [16, 3] + variable: Variable('x', None) + ctx: Load + ] + orelse: None + ] + orelse: None + ] + iterable: + Name: [16, 13] - [16, 14] + variable: Variable('y', None) + ctx: Load + Expr: [19, 0] - [19, 26] + value: + ListComp: [19, 0] - [19, 26] + elt: None + generators: None + function: + Function: [19, 0] - [19, 26] + name: 'listcomp' + type_parameters: [] + args: [ + Name: [19, 0] - [19, 26] + variable: Variable('.0', None) + ctx: Param + ] + vararg: None + kwonlyargs: None + kwarg: None + body: [ + For: [19, 0] - [19, 26] + target: + Name: [19, 8] - [19, 9] + variable: Variable('y', None) + ctx: Store + iter: + Name: [19, 0] - [19, 26] + variable: Variable('.0', None) + ctx: Load + body: [ + For: [19, 0] - [19, 26] + target: + Name: [19, 19] - [19, 20] + variable: Variable('x', None) + ctx: Store + iter: + Name: [19, 24] - [19, 25] + variable: Variable('y', None) + ctx: Load + body: [ + Expr: [19, 1] - [19, 3] + value: + YieldFrom: [19, 1] - [19, 3] + value: + Name: [19, 2] - [19, 3] + variable: Variable('x', None) + ctx: Load + ] + orelse: None + ] + orelse: None + ] + iterable: + Name: [19, 13] - [19, 14] + variable: Variable('z', None) + ctx: Load + ] diff --git a/python/extractor/tests/parser/unpacking_in_comprehensions_new.py b/python/extractor/tests/parser/unpacking_in_comprehensions_new.py new file mode 100644 index 000000000000..024e0fe1ceae --- /dev/null +++ b/python/extractor/tests/parser/unpacking_in_comprehensions_new.py @@ -0,0 +1,19 @@ +# PEP 798: Unpacking in comprehensions + +# Star unpacking in list comprehension +[*x for x in y] + +# Star unpacking in set comprehension +{*x for x in y} + +# Double-star unpacking in dict comprehension +{**d for d in dicts} + +# Star unpacking in generator expression +(*x for x in y) + +# With conditions +[*x for x in y if x] + +# Multiple for clauses +[*x for y in z for x in y] From de900fc3b5b72edaa9af96f3353929c69d16b86a Mon Sep 17 00:00:00 2001 From: Taus Date: Fri, 10 Apr 2026 16:09:18 +0000 Subject: [PATCH 127/157] Python: Add QL test for comprehensions with unpacking --- .../unpacking-comprehensions/test.expected | 4 ++++ .../extractor-tests/unpacking-comprehensions/test.py | 12 ++++++++++++ .../extractor-tests/unpacking-comprehensions/test.ql | 12 ++++++++++++ 3 files changed, 28 insertions(+) create mode 100644 python/ql/test/3/extractor-tests/unpacking-comprehensions/test.expected create mode 100644 python/ql/test/3/extractor-tests/unpacking-comprehensions/test.py create mode 100644 python/ql/test/3/extractor-tests/unpacking-comprehensions/test.ql diff --git a/python/ql/test/3/extractor-tests/unpacking-comprehensions/test.expected b/python/ql/test/3/extractor-tests/unpacking-comprehensions/test.expected new file mode 100644 index 000000000000..ec8cc352df4f --- /dev/null +++ b/python/ql/test/3/extractor-tests/unpacking-comprehensions/test.expected @@ -0,0 +1,4 @@ +| 3 | ListComp | +| 5 | SetComp | +| 7 | DictComp | +| 9 | GeneratorExp | diff --git a/python/ql/test/3/extractor-tests/unpacking-comprehensions/test.py b/python/ql/test/3/extractor-tests/unpacking-comprehensions/test.py new file mode 100644 index 000000000000..44c8b1ec0baa --- /dev/null +++ b/python/ql/test/3/extractor-tests/unpacking-comprehensions/test.py @@ -0,0 +1,12 @@ +# PEP 798: Unpacking in comprehensions + +flat_list = [*x for x in nested] + +flat_set = {*x for x in nested} + +merged = {**d for d in dicts} + +gen = (*x for x in nested) + +# Force the new parser (the old parser cannot handle lazy imports) +lazy import _pep798_parser_hint diff --git a/python/ql/test/3/extractor-tests/unpacking-comprehensions/test.ql b/python/ql/test/3/extractor-tests/unpacking-comprehensions/test.ql new file mode 100644 index 000000000000..23c08f720ff9 --- /dev/null +++ b/python/ql/test/3/extractor-tests/unpacking-comprehensions/test.ql @@ -0,0 +1,12 @@ +import python + +from Expr e +where + e.getLocation().getFile().getShortName() = "test.py" and + ( + e instanceof ListComp or + e instanceof SetComp or + e instanceof DictComp or + e instanceof GeneratorExp + ) +select e.getLocation().getStartLine(), e.toString() From 15790aa00cc8241416630e1fbe378343b1241aea Mon Sep 17 00:00:00 2001 From: Taus Date: Fri, 10 Apr 2026 16:12:15 +0000 Subject: [PATCH 128/157] Python: Add change note --- .../2026-04-10-support-comprehension-unpacking.md | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 python/ql/lib/change-notes/2026-04-10-support-comprehension-unpacking.md diff --git a/python/ql/lib/change-notes/2026-04-10-support-comprehension-unpacking.md b/python/ql/lib/change-notes/2026-04-10-support-comprehension-unpacking.md new file mode 100644 index 000000000000..d7406d0a606c --- /dev/null +++ b/python/ql/lib/change-notes/2026-04-10-support-comprehension-unpacking.md @@ -0,0 +1,5 @@ +--- +category: minorAnalysis +--- + +- The Python extractor now supports unpacking in comprehensions, e.g. `[*x for x in nested]` (as defined in [PEP-798](https://peps.python.org/pep-0798/)) that will be part of Python 3.15. From 8b1ecf05c950eb68f1b0eea314bac25fb88ddc79 Mon Sep 17 00:00:00 2001 From: Taus Date: Fri, 10 Apr 2026 20:43:42 +0000 Subject: [PATCH 129/157] Python: Update test output This change reflects the `(value, key)` to `(key, value)` fix in an earlier commit. --- python/ql/test/library-tests/comprehensions/Flow.expected | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/python/ql/test/library-tests/comprehensions/Flow.expected b/python/ql/test/library-tests/comprehensions/Flow.expected index efcf64bfb9f5..8262e3e04683 100644 --- a/python/ql/test/library-tests/comprehensions/Flow.expected +++ b/python/ql/test/library-tests/comprehensions/Flow.expected @@ -36,13 +36,13 @@ | 11 | ControlFlowNode for For | 11 | Exit node for Function dictcomp | | 11 | ControlFlowNode for For | 13 | ControlFlowNode for Tuple | | 11 | Entry node for Function dictcomp | 11 | ControlFlowNode for .0 | -| 12 | ControlFlowNode for Attribute | 12 | ControlFlowNode for Tuple | +| 12 | ControlFlowNode for Attribute | 12 | ControlFlowNode for z | | 12 | ControlFlowNode for Tuple | 12 | ControlFlowNode for Yield | | 12 | ControlFlowNode for Yield | 11 | ControlFlowNode for For | | 12 | ControlFlowNode for y | 12 | ControlFlowNode for Attribute | | 12 | ControlFlowNode for z | 12 | ControlFlowNode for z() | -| 12 | ControlFlowNode for z() | 12 | ControlFlowNode for y | +| 12 | ControlFlowNode for z() | 12 | ControlFlowNode for Tuple | | 13 | ControlFlowNode for Tuple | 13 | ControlFlowNode for y | | 13 | ControlFlowNode for y | 13 | ControlFlowNode for z | -| 13 | ControlFlowNode for z | 12 | ControlFlowNode for z | +| 13 | ControlFlowNode for z | 12 | ControlFlowNode for y | | 14 | ControlFlowNode for mapping | 11 | ControlFlowNode for DictComp | From 9ef088d4233ce2a12aa614caa5b63ade3fa017b3 Mon Sep 17 00:00:00 2001 From: Jeroen Ketema Date: Tue, 14 Apr 2026 13:46:43 +0200 Subject: [PATCH 130/157] C++: Add change note --- cpp/ql/lib/change-notes/2026-04-14-throwing.md | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 cpp/ql/lib/change-notes/2026-04-14-throwing.md diff --git a/cpp/ql/lib/change-notes/2026-04-14-throwing.md b/cpp/ql/lib/change-notes/2026-04-14-throwing.md new file mode 100644 index 000000000000..6a15437e126e --- /dev/null +++ b/cpp/ql/lib/change-notes/2026-04-14-throwing.md @@ -0,0 +1,5 @@ +--- +category: breaking +--- +* The deprecated `NonThrowingFunction` class has been removed, use `NonCppThrowingFunction` instead. +* The deprecated `ThrowingFunction` class has been removed, use `AlwaysSehThrowingFunction` instead. From 878cfd720ca909b35c25b5caecf09b32deb811f2 Mon Sep 17 00:00:00 2001 From: Tom Hvitved Date: Tue, 14 Apr 2026 14:41:28 +0200 Subject: [PATCH 131/157] C#: Use inline test expectations --- .../Linq/MissedSelectOpportunity/MissedSelectOpportunity.cs | 2 +- .../Linq/MissedSelectOpportunity/MissedSelectOpportunity.qlref | 3 ++- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/csharp/ql/test/query-tests/Linq/MissedSelectOpportunity/MissedSelectOpportunity.cs b/csharp/ql/test/query-tests/Linq/MissedSelectOpportunity/MissedSelectOpportunity.cs index a61eba16f149..9655a5a0fa9c 100644 --- a/csharp/ql/test/query-tests/Linq/MissedSelectOpportunity/MissedSelectOpportunity.cs +++ b/csharp/ql/test/query-tests/Linq/MissedSelectOpportunity/MissedSelectOpportunity.cs @@ -12,7 +12,7 @@ public void M1(List lst) { int j = i * i; Console.WriteLine(j); - } + } // $ Alert } public async Task M2(IEnumerable counters) diff --git a/csharp/ql/test/query-tests/Linq/MissedSelectOpportunity/MissedSelectOpportunity.qlref b/csharp/ql/test/query-tests/Linq/MissedSelectOpportunity/MissedSelectOpportunity.qlref index 8056fd74c47c..722d84896800 100644 --- a/csharp/ql/test/query-tests/Linq/MissedSelectOpportunity/MissedSelectOpportunity.qlref +++ b/csharp/ql/test/query-tests/Linq/MissedSelectOpportunity/MissedSelectOpportunity.qlref @@ -1 +1,2 @@ -Linq/MissedSelectOpportunity.ql +query: Linq/MissedSelectOpportunity.ql +postprocess: utils/test/InlineExpectationsTestQuery.ql From 467933bbb1118913d2518749fbd5c6fe7e8460ca Mon Sep 17 00:00:00 2001 From: Tom Hvitved Date: Tue, 14 Apr 2026 15:45:14 +0200 Subject: [PATCH 132/157] Rust: Also add specialized `IndexMut` implementations --- rust/tools/builtins/impls.rs | 52 ++++++++++++++++++++++++++++++++++-- 1 file changed, 50 insertions(+), 2 deletions(-) diff --git a/rust/tools/builtins/impls.rs b/rust/tools/builtins/impls.rs index 3bc028a51a61..facffd700058 100644 --- a/rust/tools/builtins/impls.rs +++ b/rust/tools/builtins/impls.rs @@ -30,8 +30,8 @@ /// } /// ``` /// -/// which the type inference library cannot currently handle (we fail -/// to resolve the `Output` types). +/// (as well as their `IndexMut` counterparts), which the type inference library +/// cannot currently handle (we fail to resolve the `Output` types). mod index_impls { use std::alloc::Allocator; use std::ops::Index; @@ -44,6 +44,14 @@ mod index_impls { } } + impl IndexMut for [T; N] { + type Output = T; + + fn index_mut(&mut self, index: i32) -> &mut Self::Output { + panic!() + } + } + impl Index for [T; N] { type Output = T; @@ -52,6 +60,14 @@ mod index_impls { } } + impl IndexMut for [T; N] { + type Output = T; + + fn index_mut(&mut self, index: usize) -> &mut Self::Output { + panic!() + } + } + impl Index for [T] { type Output = T; @@ -60,6 +76,14 @@ mod index_impls { } } + impl IndexMut for [T] { + type Output = T; + + fn index_mut(&mut self, index: i32) -> &mut Self::Output { + panic!() + } + } + impl Index for [T] { type Output = T; @@ -68,6 +92,14 @@ mod index_impls { } } + impl IndexMut for [T] { + type Output = T; + + fn index_mut(&mut self, index: usize) -> &mut Self::Output { + panic!() + } + } + impl Index for Vec { type Output = T; @@ -76,6 +108,14 @@ mod index_impls { } } + impl IndexMut for Vec { + type Output = T; + + fn index_mut(&mut self, index: i32) -> &mut Self::Output { + panic!() + } + } + impl Index for Vec { type Output = T; @@ -83,4 +123,12 @@ mod index_impls { panic!() } } + + impl IndexMut for Vec { + type Output = T; + + fn index_mut(&mut self, index: usize) -> &mut Self::Output { + panic!() + } + } } From 7d1c62daa6b7c40006b7fa429504cb7afe75724c Mon Sep 17 00:00:00 2001 From: Jeroen Ketema Date: Wed, 15 Apr 2026 13:37:15 +0200 Subject: [PATCH 133/157] Swift: Address review comment --- swift/extractor/mangler/SwiftMangler.cpp | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/swift/extractor/mangler/SwiftMangler.cpp b/swift/extractor/mangler/SwiftMangler.cpp index 879bc8fe5160..e7dbda6ba914 100644 --- a/swift/extractor/mangler/SwiftMangler.cpp +++ b/swift/extractor/mangler/SwiftMangler.cpp @@ -148,10 +148,15 @@ SwiftMangler::ExtensionOrFilePrivateValueIndex SwiftMangler::getExtensionOrFileP } bool SwiftMangler::isExtensionOrFilePrivateValue(const swift::Decl* decl) { - return decl->getKind() == swift::DeclKind::Extension || - (swift::isa(decl) && - swift::dyn_cast(decl)->getFormalAccess() == - swift::AccessLevel::FilePrivate); + if (decl->getKind() == swift::DeclKind::Extension) { + return true; + } + + if (const auto* valueDecl = swift::dyn_cast(decl)) { + return valueDecl->getFormalAccess() == swift::AccessLevel::FilePrivate; + } + + return false; } void SwiftMangler::indexExtensionsAndFilePrivateValues(llvm::ArrayRef siblings) { From d24fb29ff42e62fa4b1c2782d249d7ab07c732b1 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" Date: Wed, 15 Apr 2026 14:23:47 +0000 Subject: [PATCH 134/157] update codeql documentation --- .../codeql-changelog/codeql-cli-2.25.2.rst | 157 ++++++++++++++++++ .../codeql-changelog/index.rst | 1 + 2 files changed, 158 insertions(+) create mode 100644 docs/codeql/codeql-overview/codeql-changelog/codeql-cli-2.25.2.rst diff --git a/docs/codeql/codeql-overview/codeql-changelog/codeql-cli-2.25.2.rst b/docs/codeql/codeql-overview/codeql-changelog/codeql-cli-2.25.2.rst new file mode 100644 index 000000000000..58c6a7245d2b --- /dev/null +++ b/docs/codeql/codeql-overview/codeql-changelog/codeql-cli-2.25.2.rst @@ -0,0 +1,157 @@ +.. _codeql-cli-2.25.2: + +========================== +CodeQL 2.25.2 (2026-04-15) +========================== + +.. contents:: Contents + :depth: 2 + :local: + :backlinks: none + +This is an overview of changes in the CodeQL CLI and relevant CodeQL query and library packs. For additional updates on changes to the CodeQL code scanning experience, check out the `code scanning section on the GitHub blog `__, `relevant GitHub Changelog updates `__, `changes in the CodeQL extension for Visual Studio Code `__, and the `CodeQL Action changelog `__. + +Security Coverage +----------------- + +CodeQL 2.25.2 runs a total of 492 security queries when configured with the Default suite (covering 166 CWE). The Extended suite enables an additional 135 queries (covering 35 more CWE). 1 security query has been added with this release. + +CodeQL CLI +---------- + +Miscellaneous +~~~~~~~~~~~~~ + +* The build of Eclipse Temurin OpenJDK that is used to run the CodeQL CLI has been updated to version 21.0.10. + +Query Packs +----------- + +Major Analysis Improvements +~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +C# +"" + +* The :code:`cs/constant-condition` query has been simplified. The query no longer reports trivially constant conditions as they were found to generally be intentional. As a result, it should now produce fewer false positives. Additionally, the simplification means that it now reports all the results that :code:`cs/constant-comparison` used to report, and as consequence, that query has been deleted. + +Python +"""""" + +* Several quality queries have been ported away from using the legacy points-to library. This may lead to changes in alerts. + +Minor Analysis Improvements +~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +C/C++ +""""" + +* The "Extraction warnings" (:code:`cpp/diagnostics/extraction-warnings`) diagnostics query no longer yields :code:`ExtractionRecoverableWarning`\ s for :code:`build-mode: none` databases. The results were found to significantly increase the sizes of the produced SARIF files, making them unprocessable in some cases. +* Fixed an issue with the "Suspicious add with sizeof" (:code:`cpp/suspicious-add-sizeof`) query causing false positive results in :code:`build-mode: none` databases. +* Fixed an issue with the "Uncontrolled format string" (:code:`cpp/tainted-format-string`) query involving certain kinds of formatting function implementations. +* Fixed an issue with the "Wrong type of arguments to formatting function" (:code:`cpp/wrong-type-format-argument`) query causing false positive results in :code:`build-mode: none` databases. +* Fixed an issue with the "Multiplication result converted to larger type" (:code:`cpp/integer-multiplication-cast-to-long`) query causing false positive results in :code:`build-mode: none` databases. + +Query Metadata Changes +~~~~~~~~~~~~~~~~~~~~~~ + +C/C++ +""""" + +* The :code:`@security-severity` metadata of :code:`cpp/cgi-xss` has been increased from 6.1 (medium) to 7.8 (high). + +C# +"" + +* The :code:`@security-severity` metadata of :code:`cs/log-forging` has been reduced from 7.8 (high) to 6.1 (medium). +* The :code:`@security-severity` metadata of :code:`cs/web/xss` has been increased from 6.1 (medium) to 7.8 (high). + +Golang +"""""" + +* The :code:`@security-severity` metadata of :code:`go/log-injection` has been reduced from 7.8 (high) to 6.1 (medium). +* The :code:`@security-severity` metadata of :code:`go/html-template-escaping-bypass-xss`, :code:`go/reflected-xss` and :code:`go/stored-xss` has been increased from 6.1 (medium) to 7.8 (high). + +Java/Kotlin +""""""""""" + +* The :code:`@security-severity` metadata of :code:`java/log-injection` has been reduced from 7.8 (high) to 6.1 (medium). +* The :code:`@security-severity` metadata of :code:`java/android/webview-addjavascriptinterface`, :code:`java/android/websettings-javascript-enabled` and :code:`java/xss` has been increased from 6.1 (medium) to 7.8 (high). + +Python +"""""" + +* The :code:`@security-severity` metadata of :code:`py/log-injection` has been reduced from 7.8 (high) to 6.1 (medium). +* The :code:`@security-severity` metadata of :code:`py/jinja2/autoescape-false` and :code:`py/reflective-xss` has been increased from 6.1 (medium) to 7.8 (high). + +Ruby +"""" + +* The :code:`@security-severity` metadata of :code:`rb/log-injection` has been reduced from 7.8 (high) to 6.1 (medium). +* The :code:`@security-severity` metadata of :code:`rb/reflected-xss`, :code:`rb/stored-xss` and :code:`rb/html-constructed-from-input` has been increased from 6.1 (medium) to 7.8 (high). + +Swift +""""" + +* The :code:`@security-severity` metadata of :code:`swift/unsafe-webview-fetch` has been increased from 6.1 (medium) to 7.8 (high). + +Rust +"""" + +* The :code:`@security-severity` metadata of :code:`rust/log-injection` has been increased from 2.6 (low) to 6.1 (medium). +* The :code:`@security-severity` metadata of :code:`rust/xss` has been increased from 6.1 (medium) to 7.8 (high). + +Language Libraries +------------------ + +Bug Fixes +~~~~~~~~~ + +Python +"""""" + +* Fixed the resolution of relative imports such as :code:`from . import helper` inside namespace packages (directories without an :code:`__init__.py` file), which previously did not work correctly, leading to missing flow. + +Breaking Changes +~~~~~~~~~~~~~~~~ + +C/C++ +""""" + +* The :code:`SourceModelCsv`, :code:`SinkModelCsv`, and :code:`SummaryModelCsv` classes and the associated CSV parsing infrastructure have been removed from :code:`ExternalFlow.qll`. New models should be added as :code:`.model.yml` files in the :code:`ext/` directory. + +Minor Analysis Improvements +~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +C/C++ +""""" + +* Added :code:`HttpReceiveHttpRequest`, :code:`HttpReceiveRequestEntityBody`, and :code:`HttpReceiveClientCertificate` from Win32's :code:`http.h` as remote flow sources. +* Added dataflow through members initialized via non-static data member initialization (NSDMI). + +C# +"" + +* The extractor no longer synthesizes expanded forms of compound assignments. This may have a small impact on the results of queries that explicitly or implicitly rely on the expanded form of compound assignments. +* The :code:`cs/log-forging` query no longer treats arguments to extension methods with source code on :code:`ILogger` types as sinks. Instead, taint is tracked interprocedurally through extension method bodies, reducing false positives when extension methods sanitize input internally. + +Java/Kotlin +""""""""""" + +* The :code:`java/tainted-arithmetic` query no longer flags arithmetic expressions that are used directly as an operand of a comparison in :code:`if`\ -condition bounds-checking patterns. For example, :code:`if (off + len > array.length)` is now recognized as a bounds check rather than a potentially vulnerable computation, reducing false positives. +* The :code:`java/potentially-weak-cryptographic-algorithm` query no longer flags Elliptic Curve algorithms (:code:`EC`, :code:`ECDSA`, :code:`ECDH`, :code:`EdDSA`, :code:`Ed25519`, :code:`Ed448`, :code:`XDH`, :code:`X25519`, :code:`X448`), HMAC-based algorithms (:code:`HMACSHA1`, :code:`HMACSHA256`, :code:`HMACSHA384`, :code:`HMACSHA512`), or PBKDF2 key derivation as potentially insecure. These are modern, secure algorithms recommended by NIST and other standards bodies. This will reduce the number of false positives for this query. +* The first argument of the method :code:`getInstance` of :code:`java.security.Signature` is now modeled as a sink for :code:`java/potentially-weak-cryptographic-algorithm`, :code:`java/weak-cryptographic-algorithm` and :code:`java/rsa-without-oaep`. This will increase the number of alerts for these queries. +* Kotlin versions up to 2.3.20 are now supported. + +New Features +~~~~~~~~~~~~ + +C/C++ +""""" + +* Added a subclass :code:`MesonPrivateTestFile` of :code:`ConfigurationTestFile` that represents files created by Meson to test the build configuration. +* Added a class :code:`ConstructorDirectFieldInit` to represent field initializations that occur in member initializer lists. +* Added a class :code:`ConstructorDefaultFieldInit` to represent default field initializations. +* Added a class :code:`DataFlow::IndirectParameterNode` to represent the indirection of a parameter as a dataflow node. +* Added a predicate :code:`Node::asIndirectInstruction` which returns the :code:`Instruction` that defines the indirect dataflow node, if any. +* Added a class :code:`IndirectUninitializedNode` to represent the indirection of an uninitialized local variable as a dataflow node. diff --git a/docs/codeql/codeql-overview/codeql-changelog/index.rst b/docs/codeql/codeql-overview/codeql-changelog/index.rst index fc3c52473281..32a8b4574bb8 100644 --- a/docs/codeql/codeql-overview/codeql-changelog/index.rst +++ b/docs/codeql/codeql-overview/codeql-changelog/index.rst @@ -11,6 +11,7 @@ A list of queries for each suite and language `is available here Date: Wed, 15 Apr 2026 16:55:23 +0100 Subject: [PATCH 135/157] Remove global function step from local flow --- .../go/dataflow/internal/DataFlowPrivate.qll | 4 - .../lib/semmle/go/frameworks/stdlib/IoFs.qll | 11 ++- .../dataflow/FlowSteps/LocalFlowStep.expected | 51 ------------ .../PromotedFields/LocalFlowStep.expected | 80 ------------------- 4 files changed, 9 insertions(+), 137 deletions(-) diff --git a/go/ql/lib/semmle/go/dataflow/internal/DataFlowPrivate.qll b/go/ql/lib/semmle/go/dataflow/internal/DataFlowPrivate.qll index 33149bf00575..2c5c64ace7d5 100644 --- a/go/ql/lib/semmle/go/dataflow/internal/DataFlowPrivate.qll +++ b/go/ql/lib/semmle/go/dataflow/internal/DataFlowPrivate.qll @@ -95,10 +95,6 @@ predicate basicLocalFlowStep(Node nodeFrom, Node nodeTo) { nodeTo = instructionNode(succ) and nodeTo != nodeFrom ) - or - // GlobalFunctionNode -> use - nodeFrom = - any(GlobalFunctionNode fn | fn.getFunction() = nodeTo.asExpr().(FunctionName).getTarget()) } pragma[noinline] diff --git a/go/ql/lib/semmle/go/frameworks/stdlib/IoFs.qll b/go/ql/lib/semmle/go/frameworks/stdlib/IoFs.qll index b071e56cbb53..b7045aa7fe20 100644 --- a/go/ql/lib/semmle/go/frameworks/stdlib/IoFs.qll +++ b/go/ql/lib/semmle/go/frameworks/stdlib/IoFs.qll @@ -21,9 +21,16 @@ module IoFs { override predicate step(DataFlow::Node pred, DataFlow::Node succ) { //signature: func WalkDir(fsys FS, root string, fn WalkDirFunc) error exists(DataFlow::CallNode call, DataFlow::FunctionNode f | - call.getTarget().hasQualifiedName(packagePath(), "WalkDir") and - f.getASuccessor*() = call.getArgument(2) + f.(DataFlow::FuncLitNode).getASuccessor*() = call.getArgument(2) + or + exists(DataFlow::ExprNode functionName | + f.(DataFlow::GlobalFunctionNode).getFunction() = + functionName.asExpr().(FunctionName).getTarget() + | + functionName.getASuccessor*() = call.getArgument(2) + ) | + call.getTarget().hasQualifiedName(packagePath(), "WalkDir") and pred = call.getArgument(0) and succ = f.getParameter([0, 1]) ) diff --git a/go/ql/test/library-tests/semmle/go/dataflow/FlowSteps/LocalFlowStep.expected b/go/ql/test/library-tests/semmle/go/dataflow/FlowSteps/LocalFlowStep.expected index fcbb78716a46..7fa8b681d7f3 100644 --- a/go/ql/test/library-tests/semmle/go/dataflow/FlowSteps/LocalFlowStep.expected +++ b/go/ql/test/library-tests/semmle/go/dataflow/FlowSteps/LocalFlowStep.expected @@ -1,52 +1,3 @@ -| file://:0:0:0:0 | function Encode | url.go:51:14:51:21 | selection of Encode | -| file://:0:0:0:0 | function EscapedPath | url.go:28:14:28:26 | selection of EscapedPath | -| file://:0:0:0:0 | function Get | url.go:52:14:52:18 | selection of Get | -| file://:0:0:0:0 | function Hostname | url.go:29:14:29:23 | selection of Hostname | -| file://:0:0:0:0 | function JoinPath | url.go:57:16:57:27 | selection of JoinPath | -| file://:0:0:0:0 | function JoinPath | url.go:58:16:58:27 | selection of JoinPath | -| file://:0:0:0:0 | function JoinPath | url.go:60:15:60:28 | selection of JoinPath | -| file://:0:0:0:0 | function JoinPath | url.go:66:9:66:25 | selection of JoinPath | -| file://:0:0:0:0 | function MarshalBinary | url.go:30:11:30:25 | selection of MarshalBinary | -| file://:0:0:0:0 | function Parse | url.go:23:10:23:18 | selection of Parse | -| file://:0:0:0:0 | function Parse | url.go:32:9:32:15 | selection of Parse | -| file://:0:0:0:0 | function Parse | url.go:59:14:59:22 | selection of Parse | -| file://:0:0:0:0 | function Parse | url.go:65:17:65:25 | selection of Parse | -| file://:0:0:0:0 | function ParseQuery | url.go:50:10:50:23 | selection of ParseQuery | -| file://:0:0:0:0 | function ParseRequestURI | url.go:27:9:27:27 | selection of ParseRequestURI | -| file://:0:0:0:0 | function Password | url.go:43:11:43:21 | selection of Password | -| file://:0:0:0:0 | function PathEscape | url.go:12:31:12:44 | selection of PathEscape | -| file://:0:0:0:0 | function PathUnescape | url.go:12:14:12:29 | selection of PathUnescape | -| file://:0:0:0:0 | function Port | url.go:33:14:33:19 | selection of Port | -| file://:0:0:0:0 | function Println | url.go:28:2:28:12 | selection of Println | -| file://:0:0:0:0 | function Println | url.go:29:2:29:12 | selection of Println | -| file://:0:0:0:0 | function Println | url.go:31:2:31:12 | selection of Println | -| file://:0:0:0:0 | function Println | url.go:33:2:33:12 | selection of Println | -| file://:0:0:0:0 | function Println | url.go:34:2:34:12 | selection of Println | -| file://:0:0:0:0 | function Println | url.go:35:2:35:12 | selection of Println | -| file://:0:0:0:0 | function Println | url.go:44:2:44:12 | selection of Println | -| file://:0:0:0:0 | function Println | url.go:45:2:45:12 | selection of Println | -| file://:0:0:0:0 | function Println | url.go:51:2:51:12 | selection of Println | -| file://:0:0:0:0 | function Println | url.go:52:2:52:12 | selection of Println | -| file://:0:0:0:0 | function Query | url.go:34:14:34:20 | selection of Query | -| file://:0:0:0:0 | function QueryEscape | url.go:14:32:14:46 | selection of QueryEscape | -| file://:0:0:0:0 | function QueryUnescape | url.go:14:14:14:30 | selection of QueryUnescape | -| file://:0:0:0:0 | function Replace | strings.go:9:8:9:22 | selection of Replace | -| file://:0:0:0:0 | function ReplaceAll | strings.go:10:8:10:25 | selection of ReplaceAll | -| file://:0:0:0:0 | function RequestURI | url.go:35:14:35:25 | selection of RequestURI | -| file://:0:0:0:0 | function ResolveReference | url.go:36:6:36:23 | selection of ResolveReference | -| file://:0:0:0:0 | function Sprint | strings.go:11:9:11:18 | selection of Sprint | -| file://:0:0:0:0 | function Sprintf | strings.go:11:30:11:40 | selection of Sprintf | -| file://:0:0:0:0 | function Sprintln | strings.go:11:54:11:65 | selection of Sprintln | -| file://:0:0:0:0 | function User | url.go:41:8:41:15 | selection of User | -| file://:0:0:0:0 | function UserPassword | url.go:42:7:42:22 | selection of UserPassword | -| file://:0:0:0:0 | function Username | url.go:45:14:45:24 | selection of Username | -| file://:0:0:0:0 | function append | main.go:39:8:39:13 | append | -| file://:0:0:0:0 | function append | main.go:40:8:40:13 | append | -| file://:0:0:0:0 | function copy | main.go:42:2:42:5 | copy | -| file://:0:0:0:0 | function make | main.go:41:8:41:11 | make | -| file://:0:0:0:0 | function max | main.go:65:7:65:9 | max | -| file://:0:0:0:0 | function min | main.go:64:7:64:9 | min | -| main.go:3:6:3:10 | function test1 | main.go:34:2:34:6 | test1 | | main.go:3:12:3:12 | argument corresponding to x | main.go:3:12:3:12 | definition of x | | main.go:3:12:3:12 | definition of x | main.go:5:5:5:5 | x | | main.go:3:19:3:20 | argument corresponding to fn | main.go:3:19:3:20 | definition of fn | @@ -66,8 +17,6 @@ | main.go:10:12:10:12 | y | main.go:10:17:10:17 | y | | main.go:10:17:10:27 | ...>=... | main.go:10:7:10:27 | ...&&... | | main.go:11:14:11:14 | z | main.go:11:9:11:15 | type conversion | -| main.go:14:6:14:10 | function test2 | main.go:34:8:34:12 | test2 | -| main.go:14:6:14:10 | function test2 | main.go:34:19:34:23 | test2 | | main.go:15:9:15:9 | 0 | main.go:15:2:15:4 | definition of acc | | main.go:16:9:19:2 | capture variable acc | main.go:17:3:17:5 | acc | | main.go:17:3:17:7 | definition of acc | main.go:18:10:18:12 | acc | diff --git a/go/ql/test/library-tests/semmle/go/dataflow/PromotedFields/LocalFlowStep.expected b/go/ql/test/library-tests/semmle/go/dataflow/PromotedFields/LocalFlowStep.expected index 5908aa8d113e..3767cd57b5d1 100644 --- a/go/ql/test/library-tests/semmle/go/dataflow/PromotedFields/LocalFlowStep.expected +++ b/go/ql/test/library-tests/semmle/go/dataflow/PromotedFields/LocalFlowStep.expected @@ -1,83 +1,3 @@ -| main.go:3:6:3:11 | function source | main.go:23:31:23:36 | source | -| main.go:3:6:3:11 | function source | main.go:31:31:31:36 | source | -| main.go:3:6:3:11 | function source | main.go:40:30:40:35 | source | -| main.go:3:6:3:11 | function source | main.go:46:32:46:37 | source | -| main.go:3:6:3:11 | function source | main.go:54:17:54:22 | source | -| main.go:3:6:3:11 | function source | main.go:62:18:62:23 | source | -| main.go:3:6:3:11 | function source | main.go:72:17:72:22 | source | -| main.go:3:6:3:11 | function source | main.go:80:18:80:23 | source | -| main.go:3:6:3:11 | function source | main.go:91:16:91:21 | source | -| main.go:3:6:3:11 | function source | main.go:98:17:98:22 | source | -| main.go:3:6:3:11 | function source | main.go:107:22:107:27 | source | -| main.go:3:6:3:11 | function source | main.go:114:23:114:28 | source | -| main.go:3:6:3:11 | function source | main.go:123:23:123:28 | source | -| main.go:3:6:3:11 | function source | main.go:130:24:130:29 | source | -| main.go:3:6:3:11 | function source | main.go:139:29:139:34 | source | -| main.go:3:6:3:11 | function source | main.go:146:30:146:35 | source | -| main.go:7:6:7:9 | function sink | main.go:25:2:25:5 | sink | -| main.go:7:6:7:9 | function sink | main.go:26:2:26:5 | sink | -| main.go:7:6:7:9 | function sink | main.go:27:2:27:5 | sink | -| main.go:7:6:7:9 | function sink | main.go:28:2:28:5 | sink | -| main.go:7:6:7:9 | function sink | main.go:33:2:33:5 | sink | -| main.go:7:6:7:9 | function sink | main.go:34:2:34:5 | sink | -| main.go:7:6:7:9 | function sink | main.go:35:2:35:5 | sink | -| main.go:7:6:7:9 | function sink | main.go:36:2:36:5 | sink | -| main.go:7:6:7:9 | function sink | main.go:41:2:41:5 | sink | -| main.go:7:6:7:9 | function sink | main.go:42:2:42:5 | sink | -| main.go:7:6:7:9 | function sink | main.go:43:2:43:5 | sink | -| main.go:7:6:7:9 | function sink | main.go:44:2:44:5 | sink | -| main.go:7:6:7:9 | function sink | main.go:47:2:47:5 | sink | -| main.go:7:6:7:9 | function sink | main.go:48:2:48:5 | sink | -| main.go:7:6:7:9 | function sink | main.go:49:2:49:5 | sink | -| main.go:7:6:7:9 | function sink | main.go:50:2:50:5 | sink | -| main.go:7:6:7:9 | function sink | main.go:57:2:57:5 | sink | -| main.go:7:6:7:9 | function sink | main.go:58:2:58:5 | sink | -| main.go:7:6:7:9 | function sink | main.go:59:2:59:5 | sink | -| main.go:7:6:7:9 | function sink | main.go:60:2:60:5 | sink | -| main.go:7:6:7:9 | function sink | main.go:65:2:65:5 | sink | -| main.go:7:6:7:9 | function sink | main.go:66:2:66:5 | sink | -| main.go:7:6:7:9 | function sink | main.go:67:2:67:5 | sink | -| main.go:7:6:7:9 | function sink | main.go:68:2:68:5 | sink | -| main.go:7:6:7:9 | function sink | main.go:75:2:75:5 | sink | -| main.go:7:6:7:9 | function sink | main.go:76:2:76:5 | sink | -| main.go:7:6:7:9 | function sink | main.go:77:2:77:5 | sink | -| main.go:7:6:7:9 | function sink | main.go:78:2:78:5 | sink | -| main.go:7:6:7:9 | function sink | main.go:83:2:83:5 | sink | -| main.go:7:6:7:9 | function sink | main.go:84:2:84:5 | sink | -| main.go:7:6:7:9 | function sink | main.go:85:2:85:5 | sink | -| main.go:7:6:7:9 | function sink | main.go:86:2:86:5 | sink | -| main.go:7:6:7:9 | function sink | main.go:92:2:92:5 | sink | -| main.go:7:6:7:9 | function sink | main.go:93:2:93:5 | sink | -| main.go:7:6:7:9 | function sink | main.go:94:2:94:5 | sink | -| main.go:7:6:7:9 | function sink | main.go:95:2:95:5 | sink | -| main.go:7:6:7:9 | function sink | main.go:99:2:99:5 | sink | -| main.go:7:6:7:9 | function sink | main.go:100:2:100:5 | sink | -| main.go:7:6:7:9 | function sink | main.go:101:2:101:5 | sink | -| main.go:7:6:7:9 | function sink | main.go:102:2:102:5 | sink | -| main.go:7:6:7:9 | function sink | main.go:108:2:108:5 | sink | -| main.go:7:6:7:9 | function sink | main.go:109:2:109:5 | sink | -| main.go:7:6:7:9 | function sink | main.go:110:2:110:5 | sink | -| main.go:7:6:7:9 | function sink | main.go:111:2:111:5 | sink | -| main.go:7:6:7:9 | function sink | main.go:115:2:115:5 | sink | -| main.go:7:6:7:9 | function sink | main.go:116:2:116:5 | sink | -| main.go:7:6:7:9 | function sink | main.go:117:2:117:5 | sink | -| main.go:7:6:7:9 | function sink | main.go:118:2:118:5 | sink | -| main.go:7:6:7:9 | function sink | main.go:124:2:124:5 | sink | -| main.go:7:6:7:9 | function sink | main.go:125:2:125:5 | sink | -| main.go:7:6:7:9 | function sink | main.go:126:2:126:5 | sink | -| main.go:7:6:7:9 | function sink | main.go:127:2:127:5 | sink | -| main.go:7:6:7:9 | function sink | main.go:131:2:131:5 | sink | -| main.go:7:6:7:9 | function sink | main.go:132:2:132:5 | sink | -| main.go:7:6:7:9 | function sink | main.go:133:2:133:5 | sink | -| main.go:7:6:7:9 | function sink | main.go:134:2:134:5 | sink | -| main.go:7:6:7:9 | function sink | main.go:140:2:140:5 | sink | -| main.go:7:6:7:9 | function sink | main.go:141:2:141:5 | sink | -| main.go:7:6:7:9 | function sink | main.go:142:2:142:5 | sink | -| main.go:7:6:7:9 | function sink | main.go:143:2:143:5 | sink | -| main.go:7:6:7:9 | function sink | main.go:147:2:147:5 | sink | -| main.go:7:6:7:9 | function sink | main.go:148:2:148:5 | sink | -| main.go:7:6:7:9 | function sink | main.go:149:2:149:5 | sink | -| main.go:7:6:7:9 | function sink | main.go:150:2:150:5 | sink | | main.go:22:2:22:6 | definition of outer | main.go:25:7:25:11 | outer | | main.go:22:11:24:2 | struct literal | main.go:22:2:22:6 | definition of outer | | main.go:22:11:24:2 | struct literal [postupdate] | main.go:22:2:22:6 | definition of outer | From efddfab564ee42f4dbf1da92f09c5cdd31ae5eef Mon Sep 17 00:00:00 2001 From: Jeroen Ketema Date: Thu, 16 Apr 2026 17:07:20 +0200 Subject: [PATCH 136/157] Swift: Expose the generic arguments of `BuiltinFixedArray`s --- .../builtin_fixed_array_types.ql | 7 + .../old.dbscheme | 2891 +++++++++++++++++ .../swift.dbscheme | 2889 ++++++++++++++++ .../upgrade.properties | 3 + .../extractor/translators/TypeTranslator.cpp | 8 +- swift/ql/.generated.list | 7 +- swift/ql/.gitattributes | 1 + .../elements/type/BuiltinFixedArrayType.qll | 1 + swift/ql/lib/codeql/swift/generated/Raw.qll | 10 + .../generated/type/BuiltinFixedArrayType.qll | 47 + swift/ql/lib/swift.dbscheme | 4 +- .../old.dbscheme | 2889 ++++++++++++++++ .../swift.dbscheme | 2891 +++++++++++++++++ .../upgrade.properties | 4 + .../upgrade.ql | 44 + .../BuiltinFixedArrayType.expected | 3 + .../BuiltinFixedArrayType.ql | 20 + .../fixed_array.swift | 0 .../type/BuiltinType/BuiltinType.expected | 3 - swift/schema.py | 6 +- 20 files changed, 11714 insertions(+), 14 deletions(-) create mode 100644 swift/downgrades/5738be6bb04742c424efdbf9f4de11f0b10fa37d/builtin_fixed_array_types.ql create mode 100644 swift/downgrades/5738be6bb04742c424efdbf9f4de11f0b10fa37d/old.dbscheme create mode 100644 swift/downgrades/5738be6bb04742c424efdbf9f4de11f0b10fa37d/swift.dbscheme create mode 100644 swift/downgrades/5738be6bb04742c424efdbf9f4de11f0b10fa37d/upgrade.properties create mode 100644 swift/ql/lib/upgrades/ee3053b673c901a325b361b18c50b18342752bf8/old.dbscheme create mode 100644 swift/ql/lib/upgrades/ee3053b673c901a325b361b18c50b18342752bf8/swift.dbscheme create mode 100644 swift/ql/lib/upgrades/ee3053b673c901a325b361b18c50b18342752bf8/upgrade.properties create mode 100644 swift/ql/lib/upgrades/ee3053b673c901a325b361b18c50b18342752bf8/upgrade.ql create mode 100644 swift/ql/test/extractor-tests/generated/type/BuiltinFixedArrayType/BuiltinFixedArrayType.expected create mode 100644 swift/ql/test/extractor-tests/generated/type/BuiltinFixedArrayType/BuiltinFixedArrayType.ql rename swift/ql/test/extractor-tests/generated/type/{BuiltinType => BuiltinFixedArrayType}/fixed_array.swift (100%) diff --git a/swift/downgrades/5738be6bb04742c424efdbf9f4de11f0b10fa37d/builtin_fixed_array_types.ql b/swift/downgrades/5738be6bb04742c424efdbf9f4de11f0b10fa37d/builtin_fixed_array_types.ql new file mode 100644 index 000000000000..8a678cc40dab --- /dev/null +++ b/swift/downgrades/5738be6bb04742c424efdbf9f4de11f0b10fa37d/builtin_fixed_array_types.ql @@ -0,0 +1,7 @@ +class BuiltinFixedArrayType extends @builtin_fixed_array_type { + string toString() { none() } +} + +from BuiltinFixedArrayType builtinFixedArrayType +where builtin_fixed_array_types(builtinFixedArrayType, _, _) +select builtinFixedArrayType diff --git a/swift/downgrades/5738be6bb04742c424efdbf9f4de11f0b10fa37d/old.dbscheme b/swift/downgrades/5738be6bb04742c424efdbf9f4de11f0b10fa37d/old.dbscheme new file mode 100644 index 000000000000..5738be6bb047 --- /dev/null +++ b/swift/downgrades/5738be6bb04742c424efdbf9f4de11f0b10fa37d/old.dbscheme @@ -0,0 +1,2891 @@ +// generated by codegen/codegen.py, do not edit + +// from prefix.dbscheme +/** + * The source location of the snapshot. + */ +sourceLocationPrefix( + string prefix: string ref +); + + +// from schema.py + +@element = + @file +| @generic_context +| @locatable +| @location +| @type +; + +#keyset[id] +element_is_unknown( + int id: @element ref +); + +@file = + @db_file +; + +#keyset[id] +files( + int id: @file ref, + string name: string ref +); + +#keyset[id] +file_is_successfully_extracted( + int id: @file ref +); + +@locatable = + @argument +| @ast_node +| @comment +| @diagnostics +| @error_element +; + +#keyset[id] +locatable_locations( + int id: @locatable ref, + int location: @location_or_none ref +); + +@location = + @db_location +; + +#keyset[id] +locations( + int id: @location ref, + int file: @file_or_none ref, + int start_line: int ref, + int start_column: int ref, + int end_line: int ref, + int end_column: int ref +); + +@ast_node = + @availability_info +| @availability_spec +| @callable +| @case_label_item +| @condition_element +| @decl +| @expr +| @key_path_component +| @macro_role +| @pattern +| @stmt +| @stmt_condition +| @type_repr +; + +comments( + unique int id: @comment, + string text: string ref +); + +db_files( + unique int id: @db_file +); + +db_locations( + unique int id: @db_location +); + +diagnostics( + unique int id: @diagnostics, + string text: string ref, + int kind: int ref +); + +@error_element = + @error_expr +| @error_type +| @overloaded_decl_ref_expr +| @unresolved_decl_ref_expr +| @unresolved_dot_expr +| @unresolved_member_chain_result_expr +| @unresolved_member_expr +| @unresolved_pattern_expr +| @unresolved_specialize_expr +| @unresolved_type +| @unresolved_type_conversion_expr +| @unspecified_element +; + +availability_infos( + unique int id: @availability_info +); + +#keyset[id] +availability_info_is_unavailable( + int id: @availability_info ref +); + +#keyset[id, index] +availability_info_specs( + int id: @availability_info ref, + int index: int ref, + int spec: @availability_spec_or_none ref +); + +availability_specs( + unique int id: @availability_spec +); + +#keyset[id] +availability_spec_platforms( + int id: @availability_spec ref, + string platform: string ref +); + +#keyset[id] +availability_spec_versions( + int id: @availability_spec ref, + string version: string ref +); + +#keyset[id] +availability_spec_is_wildcard( + int id: @availability_spec ref +); + +@callable = + @closure_expr +| @function +; + +#keyset[id] +callable_names( + int id: @callable ref, + string name: string ref +); + +#keyset[id] +callable_self_params( + int id: @callable ref, + int self_param: @param_decl_or_none ref +); + +#keyset[id, index] +callable_params( + int id: @callable ref, + int index: int ref, + int param: @param_decl_or_none ref +); + +#keyset[id] +callable_bodies( + int id: @callable ref, + int body: @brace_stmt_or_none ref +); + +#keyset[id, index] +callable_captures( + int id: @callable ref, + int index: int ref, + int capture: @captured_decl_or_none ref +); + +key_path_components( + unique int id: @key_path_component, + int kind: int ref, + int component_type: @type_or_none ref +); + +#keyset[id, index] +key_path_component_subscript_arguments( + int id: @key_path_component ref, + int index: int ref, + int subscript_argument: @argument_or_none ref +); + +#keyset[id] +key_path_component_tuple_indices( + int id: @key_path_component ref, + int tuple_index: int ref +); + +#keyset[id] +key_path_component_decl_refs( + int id: @key_path_component ref, + int decl_ref: @value_decl_or_none ref +); + +macro_roles( + unique int id: @macro_role, + int kind: int ref, + int macro_syntax: int ref +); + +#keyset[id, index] +macro_role_conformances( + int id: @macro_role ref, + int index: int ref, + int conformance: @expr_or_none ref +); + +#keyset[id, index] +macro_role_names( + int id: @macro_role ref, + int index: int ref, + string name: string ref +); + +unspecified_elements( + unique int id: @unspecified_element, + string property: string ref, + string error: string ref +); + +#keyset[id] +unspecified_element_parents( + int id: @unspecified_element ref, + int parent: @element ref +); + +#keyset[id] +unspecified_element_indices( + int id: @unspecified_element ref, + int index: int ref +); + +#keyset[id, index] +unspecified_element_children( + int id: @unspecified_element ref, + int index: int ref, + int child: @ast_node_or_none ref +); + +@decl = + @captured_decl +| @enum_case_decl +| @extension_decl +| @if_config_decl +| @import_decl +| @missing_member_decl +| @operator_decl +| @pattern_binding_decl +| @pound_diagnostic_decl +| @precedence_group_decl +| @top_level_code_decl +| @using_decl +| @value_decl +; + +#keyset[id] +decls( //dir=decl + int id: @decl ref, + int module: @module_decl_or_none ref +); + +#keyset[id, index] +decl_members( //dir=decl + int id: @decl ref, + int index: int ref, + int member: @decl_or_none ref +); + +@generic_context = + @extension_decl +| @function +| @generic_type_decl +| @macro_decl +| @subscript_decl +; + +#keyset[id, index] +generic_context_generic_type_params( //dir=decl + int id: @generic_context ref, + int index: int ref, + int generic_type_param: @generic_type_param_decl_or_none ref +); + +captured_decls( //dir=decl + unique int id: @captured_decl, + int decl: @value_decl_or_none ref +); + +#keyset[id] +captured_decl_is_direct( //dir=decl + int id: @captured_decl ref +); + +#keyset[id] +captured_decl_is_escaping( //dir=decl + int id: @captured_decl ref +); + +enum_case_decls( //dir=decl + unique int id: @enum_case_decl +); + +#keyset[id, index] +enum_case_decl_elements( //dir=decl + int id: @enum_case_decl ref, + int index: int ref, + int element: @enum_element_decl_or_none ref +); + +extension_decls( //dir=decl + unique int id: @extension_decl, + int extended_type_decl: @nominal_type_decl_or_none ref +); + +#keyset[id, index] +extension_decl_protocols( //dir=decl + int id: @extension_decl ref, + int index: int ref, + int protocol: @protocol_decl_or_none ref +); + +if_config_decls( //dir=decl + unique int id: @if_config_decl +); + +#keyset[id, index] +if_config_decl_active_elements( //dir=decl + int id: @if_config_decl ref, + int index: int ref, + int active_element: @ast_node_or_none ref +); + +import_decls( //dir=decl + unique int id: @import_decl +); + +#keyset[id] +import_decl_is_exported( //dir=decl + int id: @import_decl ref +); + +#keyset[id] +import_decl_imported_modules( //dir=decl + int id: @import_decl ref, + int imported_module: @module_decl_or_none ref +); + +#keyset[id, index] +import_decl_declarations( //dir=decl + int id: @import_decl ref, + int index: int ref, + int declaration: @value_decl_or_none ref +); + +missing_member_decls( //dir=decl + unique int id: @missing_member_decl, + string name: string ref +); + +@operator_decl = + @infix_operator_decl +| @postfix_operator_decl +| @prefix_operator_decl +; + +#keyset[id] +operator_decls( //dir=decl + int id: @operator_decl ref, + string name: string ref +); + +pattern_binding_decls( //dir=decl + unique int id: @pattern_binding_decl +); + +#keyset[id, index] +pattern_binding_decl_inits( //dir=decl + int id: @pattern_binding_decl ref, + int index: int ref, + int init: @expr_or_none ref +); + +#keyset[id, index] +pattern_binding_decl_patterns( //dir=decl + int id: @pattern_binding_decl ref, + int index: int ref, + int pattern: @pattern_or_none ref +); + +pound_diagnostic_decls( //dir=decl + unique int id: @pound_diagnostic_decl, + int kind: int ref, + int message: @string_literal_expr_or_none ref +); + +precedence_group_decls( //dir=decl + unique int id: @precedence_group_decl +); + +top_level_code_decls( //dir=decl + unique int id: @top_level_code_decl, + int body: @brace_stmt_or_none ref +); + +using_decls( //dir=decl + unique int id: @using_decl +); + +#keyset[id] +using_decl_is_main_actor( //dir=decl + int id: @using_decl ref +); + +#keyset[id] +using_decl_is_nonisolated( //dir=decl + int id: @using_decl ref +); + +@value_decl = + @abstract_storage_decl +| @enum_element_decl +| @function +| @macro_decl +| @type_decl +; + +#keyset[id] +value_decls( //dir=decl + int id: @value_decl ref, + int interface_type: @type_or_none ref +); + +@abstract_storage_decl = + @subscript_decl +| @var_decl +; + +#keyset[id, index] +abstract_storage_decl_accessors( //dir=decl + int id: @abstract_storage_decl ref, + int index: int ref, + int accessor: @accessor_or_none ref +); + +enum_element_decls( //dir=decl + unique int id: @enum_element_decl, + string name: string ref +); + +#keyset[id, index] +enum_element_decl_params( //dir=decl + int id: @enum_element_decl ref, + int index: int ref, + int param: @param_decl_or_none ref +); + +@function = + @accessor_or_named_function +| @deinitializer +| @initializer +; + +infix_operator_decls( //dir=decl + unique int id: @infix_operator_decl +); + +#keyset[id] +infix_operator_decl_precedence_groups( //dir=decl + int id: @infix_operator_decl ref, + int precedence_group: @precedence_group_decl_or_none ref +); + +macro_decls( //dir=decl + unique int id: @macro_decl, + string name: string ref +); + +#keyset[id, index] +macro_decl_parameters( //dir=decl + int id: @macro_decl ref, + int index: int ref, + int parameter: @param_decl_or_none ref +); + +#keyset[id, index] +macro_decl_roles( //dir=decl + int id: @macro_decl ref, + int index: int ref, + int role: @macro_role_or_none ref +); + +postfix_operator_decls( //dir=decl + unique int id: @postfix_operator_decl +); + +prefix_operator_decls( //dir=decl + unique int id: @prefix_operator_decl +); + +@type_decl = + @abstract_type_param_decl +| @generic_type_decl +| @module_decl +; + +#keyset[id] +type_decls( //dir=decl + int id: @type_decl ref, + string name: string ref +); + +#keyset[id, index] +type_decl_inherited_types( //dir=decl + int id: @type_decl ref, + int index: int ref, + int inherited_type: @type_or_none ref +); + +@abstract_type_param_decl = + @associated_type_decl +| @generic_type_param_decl +; + +@accessor_or_named_function = + @accessor +| @named_function +; + +deinitializers( //dir=decl + unique int id: @deinitializer +); + +@generic_type_decl = + @nominal_type_decl +| @opaque_type_decl +| @type_alias_decl +; + +initializers( //dir=decl + unique int id: @initializer +); + +module_decls( //dir=decl + unique int id: @module_decl +); + +#keyset[id] +module_decl_is_builtin_module( //dir=decl + int id: @module_decl ref +); + +#keyset[id] +module_decl_is_system_module( //dir=decl + int id: @module_decl ref +); + +module_decl_imported_modules( //dir=decl + int id: @module_decl ref, + int imported_module: @module_decl_or_none ref +); + +module_decl_exported_modules( //dir=decl + int id: @module_decl ref, + int exported_module: @module_decl_or_none ref +); + +subscript_decls( //dir=decl + unique int id: @subscript_decl, + int element_type: @type_or_none ref +); + +#keyset[id, index] +subscript_decl_params( //dir=decl + int id: @subscript_decl ref, + int index: int ref, + int param: @param_decl_or_none ref +); + +@var_decl = + @concrete_var_decl +| @param_decl +; + +#keyset[id] +var_decls( //dir=decl + int id: @var_decl ref, + string name: string ref, + int type_: @type_or_none ref +); + +#keyset[id] +var_decl_attached_property_wrapper_types( //dir=decl + int id: @var_decl ref, + int attached_property_wrapper_type: @type_or_none ref +); + +#keyset[id] +var_decl_parent_patterns( //dir=decl + int id: @var_decl ref, + int parent_pattern: @pattern_or_none ref +); + +#keyset[id] +var_decl_parent_initializers( //dir=decl + int id: @var_decl ref, + int parent_initializer: @expr_or_none ref +); + +#keyset[id] +var_decl_property_wrapper_backing_var_bindings( //dir=decl + int id: @var_decl ref, + int property_wrapper_backing_var_binding: @pattern_binding_decl_or_none ref +); + +#keyset[id] +var_decl_property_wrapper_backing_vars( //dir=decl + int id: @var_decl ref, + int property_wrapper_backing_var: @var_decl_or_none ref +); + +#keyset[id] +var_decl_property_wrapper_projection_var_bindings( //dir=decl + int id: @var_decl ref, + int property_wrapper_projection_var_binding: @pattern_binding_decl_or_none ref +); + +#keyset[id] +var_decl_property_wrapper_projection_vars( //dir=decl + int id: @var_decl ref, + int property_wrapper_projection_var: @var_decl_or_none ref +); + +accessors( //dir=decl + unique int id: @accessor +); + +#keyset[id] +accessor_is_getter( //dir=decl + int id: @accessor ref +); + +#keyset[id] +accessor_is_setter( //dir=decl + int id: @accessor ref +); + +#keyset[id] +accessor_is_will_set( //dir=decl + int id: @accessor ref +); + +#keyset[id] +accessor_is_did_set( //dir=decl + int id: @accessor ref +); + +#keyset[id] +accessor_is_read( //dir=decl + int id: @accessor ref +); + +#keyset[id] +accessor_is_modify( //dir=decl + int id: @accessor ref +); + +#keyset[id] +accessor_is_unsafe_address( //dir=decl + int id: @accessor ref +); + +#keyset[id] +accessor_is_unsafe_mutable_address( //dir=decl + int id: @accessor ref +); + +#keyset[id] +accessor_is_distributed_get( //dir=decl + int id: @accessor ref +); + +#keyset[id] +accessor_is_read2( //dir=decl + int id: @accessor ref +); + +#keyset[id] +accessor_is_modify2( //dir=decl + int id: @accessor ref +); + +#keyset[id] +accessor_is_init( //dir=decl + int id: @accessor ref +); + +associated_type_decls( //dir=decl + unique int id: @associated_type_decl +); + +concrete_var_decls( //dir=decl + unique int id: @concrete_var_decl, + int introducer_int: int ref +); + +generic_type_param_decls( //dir=decl + unique int id: @generic_type_param_decl +); + +named_functions( //dir=decl + unique int id: @named_function +); + +@nominal_type_decl = + @class_decl +| @enum_decl +| @protocol_decl +| @struct_decl +; + +#keyset[id] +nominal_type_decls( //dir=decl + int id: @nominal_type_decl ref, + int type_: @type_or_none ref +); + +opaque_type_decls( //dir=decl + unique int id: @opaque_type_decl, + int naming_declaration: @value_decl_or_none ref +); + +#keyset[id, index] +opaque_type_decl_opaque_generic_params( //dir=decl + int id: @opaque_type_decl ref, + int index: int ref, + int opaque_generic_param: @generic_type_param_type_or_none ref +); + +param_decls( //dir=decl + unique int id: @param_decl +); + +#keyset[id] +param_decl_is_inout( //dir=decl + int id: @param_decl ref +); + +#keyset[id] +param_decl_property_wrapper_local_wrapped_var_bindings( //dir=decl + int id: @param_decl ref, + int property_wrapper_local_wrapped_var_binding: @pattern_binding_decl_or_none ref +); + +#keyset[id] +param_decl_property_wrapper_local_wrapped_vars( //dir=decl + int id: @param_decl ref, + int property_wrapper_local_wrapped_var: @var_decl_or_none ref +); + +type_alias_decls( //dir=decl + unique int id: @type_alias_decl, + int aliased_type: @type_or_none ref +); + +class_decls( //dir=decl + unique int id: @class_decl +); + +enum_decls( //dir=decl + unique int id: @enum_decl +); + +protocol_decls( //dir=decl + unique int id: @protocol_decl +); + +struct_decls( //dir=decl + unique int id: @struct_decl +); + +arguments( //dir=expr + unique int id: @argument, + string label: string ref, + int expr: @expr_or_none ref +); + +@expr = + @any_try_expr +| @applied_property_wrapper_expr +| @apply_expr +| @assign_expr +| @bind_optional_expr +| @capture_list_expr +| @closure_expr +| @collection_expr +| @consume_expr +| @copy_expr +| @current_context_isolation_expr +| @decl_ref_expr +| @default_argument_expr +| @discard_assignment_expr +| @dot_syntax_base_ignored_expr +| @dynamic_type_expr +| @enum_is_case_expr +| @error_expr +| @explicit_cast_expr +| @extract_function_isolation_expr +| @force_value_expr +| @identity_expr +| @if_expr +| @implicit_conversion_expr +| @in_out_expr +| @key_path_application_expr +| @key_path_dot_expr +| @key_path_expr +| @lazy_initialization_expr +| @literal_expr +| @lookup_expr +| @make_temporarily_escapable_expr +| @materialize_pack_expr +| @obj_c_selector_expr +| @one_way_expr +| @opaque_value_expr +| @open_existential_expr +| @optional_evaluation_expr +| @other_initializer_ref_expr +| @overloaded_decl_ref_expr +| @pack_element_expr +| @pack_expansion_expr +| @property_wrapper_value_placeholder_expr +| @rebind_self_in_initializer_expr +| @sequence_expr +| @single_value_stmt_expr +| @super_ref_expr +| @tap_expr +| @tuple_element_expr +| @tuple_expr +| @type_expr +| @type_value_expr +| @unresolved_decl_ref_expr +| @unresolved_dot_expr +| @unresolved_member_expr +| @unresolved_pattern_expr +| @unresolved_specialize_expr +| @vararg_expansion_expr +; + +#keyset[id] +expr_types( //dir=expr + int id: @expr ref, + int type_: @type_or_none ref +); + +@any_try_expr = + @force_try_expr +| @optional_try_expr +| @try_expr +; + +#keyset[id] +any_try_exprs( //dir=expr + int id: @any_try_expr ref, + int sub_expr: @expr_or_none ref +); + +applied_property_wrapper_exprs( //dir=expr + unique int id: @applied_property_wrapper_expr, + int kind: int ref, + int value: @expr_or_none ref, + int param: @param_decl_or_none ref +); + +@apply_expr = + @binary_expr +| @call_expr +| @postfix_unary_expr +| @prefix_unary_expr +| @self_apply_expr +; + +#keyset[id] +apply_exprs( //dir=expr + int id: @apply_expr ref, + int function: @expr_or_none ref +); + +#keyset[id, index] +apply_expr_arguments( //dir=expr + int id: @apply_expr ref, + int index: int ref, + int argument: @argument_or_none ref +); + +assign_exprs( //dir=expr + unique int id: @assign_expr, + int dest: @expr_or_none ref, + int source: @expr_or_none ref +); + +bind_optional_exprs( //dir=expr + unique int id: @bind_optional_expr, + int sub_expr: @expr_or_none ref +); + +capture_list_exprs( //dir=expr + unique int id: @capture_list_expr, + int closure_body: @closure_expr_or_none ref +); + +#keyset[id, index] +capture_list_expr_binding_decls( //dir=expr + int id: @capture_list_expr ref, + int index: int ref, + int binding_decl: @pattern_binding_decl_or_none ref +); + +@closure_expr = + @auto_closure_expr +| @explicit_closure_expr +; + +@collection_expr = + @array_expr +| @dictionary_expr +; + +consume_exprs( //dir=expr + unique int id: @consume_expr, + int sub_expr: @expr_or_none ref +); + +copy_exprs( //dir=expr + unique int id: @copy_expr, + int sub_expr: @expr_or_none ref +); + +current_context_isolation_exprs( //dir=expr + unique int id: @current_context_isolation_expr, + int actor: @expr_or_none ref +); + +decl_ref_exprs( //dir=expr + unique int id: @decl_ref_expr, + int decl: @decl_or_none ref +); + +#keyset[id, index] +decl_ref_expr_replacement_types( //dir=expr + int id: @decl_ref_expr ref, + int index: int ref, + int replacement_type: @type_or_none ref +); + +#keyset[id] +decl_ref_expr_has_direct_to_storage_semantics( //dir=expr + int id: @decl_ref_expr ref +); + +#keyset[id] +decl_ref_expr_has_direct_to_implementation_semantics( //dir=expr + int id: @decl_ref_expr ref +); + +#keyset[id] +decl_ref_expr_has_ordinary_semantics( //dir=expr + int id: @decl_ref_expr ref +); + +#keyset[id] +decl_ref_expr_has_distributed_thunk_semantics( //dir=expr + int id: @decl_ref_expr ref +); + +default_argument_exprs( //dir=expr + unique int id: @default_argument_expr, + int param_decl: @param_decl_or_none ref, + int param_index: int ref +); + +#keyset[id] +default_argument_expr_caller_side_defaults( //dir=expr + int id: @default_argument_expr ref, + int caller_side_default: @expr_or_none ref +); + +discard_assignment_exprs( //dir=expr + unique int id: @discard_assignment_expr +); + +dot_syntax_base_ignored_exprs( //dir=expr + unique int id: @dot_syntax_base_ignored_expr, + int qualifier: @expr_or_none ref, + int sub_expr: @expr_or_none ref +); + +dynamic_type_exprs( //dir=expr + unique int id: @dynamic_type_expr, + int base: @expr_or_none ref +); + +enum_is_case_exprs( //dir=expr + unique int id: @enum_is_case_expr, + int sub_expr: @expr_or_none ref, + int element: @enum_element_decl_or_none ref +); + +error_exprs( //dir=expr + unique int id: @error_expr +); + +@explicit_cast_expr = + @checked_cast_expr +| @coerce_expr +; + +#keyset[id] +explicit_cast_exprs( //dir=expr + int id: @explicit_cast_expr ref, + int sub_expr: @expr_or_none ref +); + +extract_function_isolation_exprs( //dir=expr + unique int id: @extract_function_isolation_expr, + int function_expr: @expr_or_none ref +); + +force_value_exprs( //dir=expr + unique int id: @force_value_expr, + int sub_expr: @expr_or_none ref +); + +@identity_expr = + @await_expr +| @borrow_expr +| @dot_self_expr +| @paren_expr +| @unresolved_member_chain_result_expr +| @unsafe_expr +; + +#keyset[id] +identity_exprs( //dir=expr + int id: @identity_expr ref, + int sub_expr: @expr_or_none ref +); + +if_exprs( //dir=expr + unique int id: @if_expr, + int condition: @expr_or_none ref, + int then_expr: @expr_or_none ref, + int else_expr: @expr_or_none ref +); + +@implicit_conversion_expr = + @abi_safe_conversion_expr +| @actor_isolation_erasure_expr +| @any_hashable_erasure_expr +| @archetype_to_super_expr +| @array_to_pointer_expr +| @bridge_from_obj_c_expr +| @bridge_to_obj_c_expr +| @class_metatype_to_object_expr +| @collection_upcast_conversion_expr +| @conditional_bridge_from_obj_c_expr +| @covariant_function_conversion_expr +| @covariant_return_conversion_expr +| @derived_to_base_expr +| @destructure_tuple_expr +| @differentiable_function_expr +| @differentiable_function_extract_original_expr +| @erasure_expr +| @existential_metatype_to_object_expr +| @foreign_object_conversion_expr +| @function_conversion_expr +| @in_out_to_pointer_expr +| @inject_into_optional_expr +| @linear_function_expr +| @linear_function_extract_original_expr +| @linear_to_differentiable_function_expr +| @load_expr +| @metatype_conversion_expr +| @pointer_to_pointer_expr +| @protocol_metatype_to_object_expr +| @string_to_pointer_expr +| @underlying_to_opaque_expr +| @unevaluated_instance_expr +| @unreachable_expr +| @unresolved_type_conversion_expr +| @unsafe_cast_expr +; + +#keyset[id] +implicit_conversion_exprs( //dir=expr + int id: @implicit_conversion_expr ref, + int sub_expr: @expr_or_none ref +); + +in_out_exprs( //dir=expr + unique int id: @in_out_expr, + int sub_expr: @expr_or_none ref +); + +key_path_application_exprs( //dir=expr + unique int id: @key_path_application_expr, + int base: @expr_or_none ref, + int key_path: @expr_or_none ref +); + +key_path_dot_exprs( //dir=expr + unique int id: @key_path_dot_expr +); + +key_path_exprs( //dir=expr + unique int id: @key_path_expr +); + +#keyset[id] +key_path_expr_roots( //dir=expr + int id: @key_path_expr ref, + int root: @type_repr_or_none ref +); + +#keyset[id, index] +key_path_expr_components( //dir=expr + int id: @key_path_expr ref, + int index: int ref, + int component: @key_path_component_or_none ref +); + +lazy_initialization_exprs( //dir=expr + unique int id: @lazy_initialization_expr, + int sub_expr: @expr_or_none ref +); + +@literal_expr = + @builtin_literal_expr +| @interpolated_string_literal_expr +| @nil_literal_expr +| @object_literal_expr +| @regex_literal_expr +; + +@lookup_expr = + @dynamic_lookup_expr +| @member_ref_expr +| @subscript_expr +; + +#keyset[id] +lookup_exprs( //dir=expr + int id: @lookup_expr ref, + int base: @expr_or_none ref +); + +#keyset[id] +lookup_expr_members( //dir=expr + int id: @lookup_expr ref, + int member: @decl_or_none ref +); + +make_temporarily_escapable_exprs( //dir=expr + unique int id: @make_temporarily_escapable_expr, + int escaping_closure: @opaque_value_expr_or_none ref, + int nonescaping_closure: @expr_or_none ref, + int sub_expr: @expr_or_none ref +); + +materialize_pack_exprs( //dir=expr + unique int id: @materialize_pack_expr, + int sub_expr: @expr_or_none ref +); + +obj_c_selector_exprs( //dir=expr + unique int id: @obj_c_selector_expr, + int sub_expr: @expr_or_none ref, + int method: @function_or_none ref +); + +one_way_exprs( //dir=expr + unique int id: @one_way_expr, + int sub_expr: @expr_or_none ref +); + +opaque_value_exprs( //dir=expr + unique int id: @opaque_value_expr +); + +open_existential_exprs( //dir=expr + unique int id: @open_existential_expr, + int sub_expr: @expr_or_none ref, + int existential: @expr_or_none ref, + int opaque_expr: @opaque_value_expr_or_none ref +); + +optional_evaluation_exprs( //dir=expr + unique int id: @optional_evaluation_expr, + int sub_expr: @expr_or_none ref +); + +other_initializer_ref_exprs( //dir=expr + unique int id: @other_initializer_ref_expr, + int initializer: @initializer_or_none ref +); + +overloaded_decl_ref_exprs( //dir=expr + unique int id: @overloaded_decl_ref_expr +); + +#keyset[id, index] +overloaded_decl_ref_expr_possible_declarations( //dir=expr + int id: @overloaded_decl_ref_expr ref, + int index: int ref, + int possible_declaration: @value_decl_or_none ref +); + +pack_element_exprs( //dir=expr + unique int id: @pack_element_expr, + int sub_expr: @expr_or_none ref +); + +pack_expansion_exprs( //dir=expr + unique int id: @pack_expansion_expr, + int pattern_expr: @expr_or_none ref +); + +property_wrapper_value_placeholder_exprs( //dir=expr + unique int id: @property_wrapper_value_placeholder_expr, + int placeholder: @opaque_value_expr_or_none ref +); + +#keyset[id] +property_wrapper_value_placeholder_expr_wrapped_values( //dir=expr + int id: @property_wrapper_value_placeholder_expr ref, + int wrapped_value: @expr_or_none ref +); + +rebind_self_in_initializer_exprs( //dir=expr + unique int id: @rebind_self_in_initializer_expr, + int sub_expr: @expr_or_none ref, + int self: @var_decl_or_none ref +); + +sequence_exprs( //dir=expr + unique int id: @sequence_expr +); + +#keyset[id, index] +sequence_expr_elements( //dir=expr + int id: @sequence_expr ref, + int index: int ref, + int element: @expr_or_none ref +); + +single_value_stmt_exprs( //dir=expr + unique int id: @single_value_stmt_expr, + int stmt: @stmt_or_none ref +); + +super_ref_exprs( //dir=expr + unique int id: @super_ref_expr, + int self: @var_decl_or_none ref +); + +tap_exprs( //dir=expr + unique int id: @tap_expr, + int body: @brace_stmt_or_none ref, + int var: @var_decl_or_none ref +); + +#keyset[id] +tap_expr_sub_exprs( //dir=expr + int id: @tap_expr ref, + int sub_expr: @expr_or_none ref +); + +tuple_element_exprs( //dir=expr + unique int id: @tuple_element_expr, + int sub_expr: @expr_or_none ref, + int index: int ref +); + +tuple_exprs( //dir=expr + unique int id: @tuple_expr +); + +#keyset[id, index] +tuple_expr_elements( //dir=expr + int id: @tuple_expr ref, + int index: int ref, + int element: @expr_or_none ref +); + +type_exprs( //dir=expr + unique int id: @type_expr +); + +#keyset[id] +type_expr_type_reprs( //dir=expr + int id: @type_expr ref, + int type_repr: @type_repr_or_none ref +); + +type_value_exprs( //dir=expr + unique int id: @type_value_expr, + int type_repr: @type_repr_or_none ref +); + +unresolved_decl_ref_exprs( //dir=expr + unique int id: @unresolved_decl_ref_expr +); + +#keyset[id] +unresolved_decl_ref_expr_names( //dir=expr + int id: @unresolved_decl_ref_expr ref, + string name: string ref +); + +unresolved_dot_exprs( //dir=expr + unique int id: @unresolved_dot_expr, + int base: @expr_or_none ref, + string name: string ref +); + +unresolved_member_exprs( //dir=expr + unique int id: @unresolved_member_expr, + string name: string ref +); + +unresolved_pattern_exprs( //dir=expr + unique int id: @unresolved_pattern_expr, + int sub_pattern: @pattern_or_none ref +); + +unresolved_specialize_exprs( //dir=expr + unique int id: @unresolved_specialize_expr, + int sub_expr: @expr_or_none ref +); + +vararg_expansion_exprs( //dir=expr + unique int id: @vararg_expansion_expr, + int sub_expr: @expr_or_none ref +); + +abi_safe_conversion_exprs( //dir=expr + unique int id: @abi_safe_conversion_expr +); + +actor_isolation_erasure_exprs( //dir=expr + unique int id: @actor_isolation_erasure_expr +); + +any_hashable_erasure_exprs( //dir=expr + unique int id: @any_hashable_erasure_expr +); + +archetype_to_super_exprs( //dir=expr + unique int id: @archetype_to_super_expr +); + +array_exprs( //dir=expr + unique int id: @array_expr +); + +#keyset[id, index] +array_expr_elements( //dir=expr + int id: @array_expr ref, + int index: int ref, + int element: @expr_or_none ref +); + +array_to_pointer_exprs( //dir=expr + unique int id: @array_to_pointer_expr +); + +auto_closure_exprs( //dir=expr + unique int id: @auto_closure_expr +); + +await_exprs( //dir=expr + unique int id: @await_expr +); + +binary_exprs( //dir=expr + unique int id: @binary_expr +); + +borrow_exprs( //dir=expr + unique int id: @borrow_expr +); + +bridge_from_obj_c_exprs( //dir=expr + unique int id: @bridge_from_obj_c_expr +); + +bridge_to_obj_c_exprs( //dir=expr + unique int id: @bridge_to_obj_c_expr +); + +@builtin_literal_expr = + @boolean_literal_expr +| @magic_identifier_literal_expr +| @number_literal_expr +| @string_literal_expr +; + +call_exprs( //dir=expr + unique int id: @call_expr +); + +@checked_cast_expr = + @conditional_checked_cast_expr +| @forced_checked_cast_expr +| @is_expr +; + +class_metatype_to_object_exprs( //dir=expr + unique int id: @class_metatype_to_object_expr +); + +coerce_exprs( //dir=expr + unique int id: @coerce_expr +); + +collection_upcast_conversion_exprs( //dir=expr + unique int id: @collection_upcast_conversion_expr +); + +conditional_bridge_from_obj_c_exprs( //dir=expr + unique int id: @conditional_bridge_from_obj_c_expr +); + +covariant_function_conversion_exprs( //dir=expr + unique int id: @covariant_function_conversion_expr +); + +covariant_return_conversion_exprs( //dir=expr + unique int id: @covariant_return_conversion_expr +); + +derived_to_base_exprs( //dir=expr + unique int id: @derived_to_base_expr +); + +destructure_tuple_exprs( //dir=expr + unique int id: @destructure_tuple_expr +); + +dictionary_exprs( //dir=expr + unique int id: @dictionary_expr +); + +#keyset[id, index] +dictionary_expr_elements( //dir=expr + int id: @dictionary_expr ref, + int index: int ref, + int element: @expr_or_none ref +); + +differentiable_function_exprs( //dir=expr + unique int id: @differentiable_function_expr +); + +differentiable_function_extract_original_exprs( //dir=expr + unique int id: @differentiable_function_extract_original_expr +); + +dot_self_exprs( //dir=expr + unique int id: @dot_self_expr +); + +@dynamic_lookup_expr = + @dynamic_member_ref_expr +| @dynamic_subscript_expr +; + +erasure_exprs( //dir=expr + unique int id: @erasure_expr +); + +existential_metatype_to_object_exprs( //dir=expr + unique int id: @existential_metatype_to_object_expr +); + +explicit_closure_exprs( //dir=expr + unique int id: @explicit_closure_expr +); + +force_try_exprs( //dir=expr + unique int id: @force_try_expr +); + +foreign_object_conversion_exprs( //dir=expr + unique int id: @foreign_object_conversion_expr +); + +function_conversion_exprs( //dir=expr + unique int id: @function_conversion_expr +); + +in_out_to_pointer_exprs( //dir=expr + unique int id: @in_out_to_pointer_expr +); + +inject_into_optional_exprs( //dir=expr + unique int id: @inject_into_optional_expr +); + +interpolated_string_literal_exprs( //dir=expr + unique int id: @interpolated_string_literal_expr +); + +#keyset[id] +interpolated_string_literal_expr_interpolation_exprs( //dir=expr + int id: @interpolated_string_literal_expr ref, + int interpolation_expr: @opaque_value_expr_or_none ref +); + +#keyset[id] +interpolated_string_literal_expr_appending_exprs( //dir=expr + int id: @interpolated_string_literal_expr ref, + int appending_expr: @tap_expr_or_none ref +); + +linear_function_exprs( //dir=expr + unique int id: @linear_function_expr +); + +linear_function_extract_original_exprs( //dir=expr + unique int id: @linear_function_extract_original_expr +); + +linear_to_differentiable_function_exprs( //dir=expr + unique int id: @linear_to_differentiable_function_expr +); + +load_exprs( //dir=expr + unique int id: @load_expr +); + +member_ref_exprs( //dir=expr + unique int id: @member_ref_expr +); + +#keyset[id] +member_ref_expr_has_direct_to_storage_semantics( //dir=expr + int id: @member_ref_expr ref +); + +#keyset[id] +member_ref_expr_has_direct_to_implementation_semantics( //dir=expr + int id: @member_ref_expr ref +); + +#keyset[id] +member_ref_expr_has_ordinary_semantics( //dir=expr + int id: @member_ref_expr ref +); + +#keyset[id] +member_ref_expr_has_distributed_thunk_semantics( //dir=expr + int id: @member_ref_expr ref +); + +metatype_conversion_exprs( //dir=expr + unique int id: @metatype_conversion_expr +); + +nil_literal_exprs( //dir=expr + unique int id: @nil_literal_expr +); + +object_literal_exprs( //dir=expr + unique int id: @object_literal_expr, + int kind: int ref +); + +#keyset[id, index] +object_literal_expr_arguments( //dir=expr + int id: @object_literal_expr ref, + int index: int ref, + int argument: @argument_or_none ref +); + +optional_try_exprs( //dir=expr + unique int id: @optional_try_expr +); + +paren_exprs( //dir=expr + unique int id: @paren_expr +); + +pointer_to_pointer_exprs( //dir=expr + unique int id: @pointer_to_pointer_expr +); + +postfix_unary_exprs( //dir=expr + unique int id: @postfix_unary_expr +); + +prefix_unary_exprs( //dir=expr + unique int id: @prefix_unary_expr +); + +protocol_metatype_to_object_exprs( //dir=expr + unique int id: @protocol_metatype_to_object_expr +); + +regex_literal_exprs( //dir=expr + unique int id: @regex_literal_expr, + string pattern: string ref, + int version: int ref +); + +@self_apply_expr = + @dot_syntax_call_expr +| @initializer_ref_call_expr +; + +#keyset[id] +self_apply_exprs( //dir=expr + int id: @self_apply_expr ref, + int base: @expr_or_none ref +); + +string_to_pointer_exprs( //dir=expr + unique int id: @string_to_pointer_expr +); + +subscript_exprs( //dir=expr + unique int id: @subscript_expr +); + +#keyset[id, index] +subscript_expr_arguments( //dir=expr + int id: @subscript_expr ref, + int index: int ref, + int argument: @argument_or_none ref +); + +#keyset[id] +subscript_expr_has_direct_to_storage_semantics( //dir=expr + int id: @subscript_expr ref +); + +#keyset[id] +subscript_expr_has_direct_to_implementation_semantics( //dir=expr + int id: @subscript_expr ref +); + +#keyset[id] +subscript_expr_has_ordinary_semantics( //dir=expr + int id: @subscript_expr ref +); + +#keyset[id] +subscript_expr_has_distributed_thunk_semantics( //dir=expr + int id: @subscript_expr ref +); + +try_exprs( //dir=expr + unique int id: @try_expr +); + +underlying_to_opaque_exprs( //dir=expr + unique int id: @underlying_to_opaque_expr +); + +unevaluated_instance_exprs( //dir=expr + unique int id: @unevaluated_instance_expr +); + +unreachable_exprs( //dir=expr + unique int id: @unreachable_expr +); + +unresolved_member_chain_result_exprs( //dir=expr + unique int id: @unresolved_member_chain_result_expr +); + +unresolved_type_conversion_exprs( //dir=expr + unique int id: @unresolved_type_conversion_expr +); + +unsafe_cast_exprs( //dir=expr + unique int id: @unsafe_cast_expr +); + +unsafe_exprs( //dir=expr + unique int id: @unsafe_expr +); + +boolean_literal_exprs( //dir=expr + unique int id: @boolean_literal_expr, + boolean value: boolean ref +); + +conditional_checked_cast_exprs( //dir=expr + unique int id: @conditional_checked_cast_expr +); + +dot_syntax_call_exprs( //dir=expr + unique int id: @dot_syntax_call_expr +); + +dynamic_member_ref_exprs( //dir=expr + unique int id: @dynamic_member_ref_expr +); + +dynamic_subscript_exprs( //dir=expr + unique int id: @dynamic_subscript_expr +); + +forced_checked_cast_exprs( //dir=expr + unique int id: @forced_checked_cast_expr +); + +initializer_ref_call_exprs( //dir=expr + unique int id: @initializer_ref_call_expr +); + +is_exprs( //dir=expr + unique int id: @is_expr +); + +magic_identifier_literal_exprs( //dir=expr + unique int id: @magic_identifier_literal_expr, + string kind: string ref +); + +@number_literal_expr = + @float_literal_expr +| @integer_literal_expr +; + +string_literal_exprs( //dir=expr + unique int id: @string_literal_expr, + string value: string ref +); + +float_literal_exprs( //dir=expr + unique int id: @float_literal_expr, + string string_value: string ref +); + +integer_literal_exprs( //dir=expr + unique int id: @integer_literal_expr, + string string_value: string ref +); + +@pattern = + @any_pattern +| @binding_pattern +| @bool_pattern +| @enum_element_pattern +| @expr_pattern +| @is_pattern +| @named_pattern +| @optional_some_pattern +| @paren_pattern +| @tuple_pattern +| @typed_pattern +; + +#keyset[id] +pattern_types( //dir=pattern + int id: @pattern ref, + int type_: @type_or_none ref +); + +any_patterns( //dir=pattern + unique int id: @any_pattern +); + +binding_patterns( //dir=pattern + unique int id: @binding_pattern, + int sub_pattern: @pattern_or_none ref +); + +bool_patterns( //dir=pattern + unique int id: @bool_pattern, + boolean value: boolean ref +); + +enum_element_patterns( //dir=pattern + unique int id: @enum_element_pattern, + int element: @enum_element_decl_or_none ref +); + +#keyset[id] +enum_element_pattern_sub_patterns( //dir=pattern + int id: @enum_element_pattern ref, + int sub_pattern: @pattern_or_none ref +); + +expr_patterns( //dir=pattern + unique int id: @expr_pattern, + int sub_expr: @expr_or_none ref +); + +is_patterns( //dir=pattern + unique int id: @is_pattern +); + +#keyset[id] +is_pattern_cast_type_reprs( //dir=pattern + int id: @is_pattern ref, + int cast_type_repr: @type_repr_or_none ref +); + +#keyset[id] +is_pattern_sub_patterns( //dir=pattern + int id: @is_pattern ref, + int sub_pattern: @pattern_or_none ref +); + +named_patterns( //dir=pattern + unique int id: @named_pattern, + int var_decl: @var_decl_or_none ref +); + +optional_some_patterns( //dir=pattern + unique int id: @optional_some_pattern, + int sub_pattern: @pattern_or_none ref +); + +paren_patterns( //dir=pattern + unique int id: @paren_pattern, + int sub_pattern: @pattern_or_none ref +); + +tuple_patterns( //dir=pattern + unique int id: @tuple_pattern +); + +#keyset[id, index] +tuple_pattern_elements( //dir=pattern + int id: @tuple_pattern ref, + int index: int ref, + int element: @pattern_or_none ref +); + +typed_patterns( //dir=pattern + unique int id: @typed_pattern, + int sub_pattern: @pattern_or_none ref +); + +#keyset[id] +typed_pattern_type_reprs( //dir=pattern + int id: @typed_pattern ref, + int type_repr: @type_repr_or_none ref +); + +case_label_items( //dir=stmt + unique int id: @case_label_item, + int pattern: @pattern_or_none ref +); + +#keyset[id] +case_label_item_guards( //dir=stmt + int id: @case_label_item ref, + int guard: @expr_or_none ref +); + +condition_elements( //dir=stmt + unique int id: @condition_element +); + +#keyset[id] +condition_element_booleans( //dir=stmt + int id: @condition_element ref, + int boolean_: @expr_or_none ref +); + +#keyset[id] +condition_element_patterns( //dir=stmt + int id: @condition_element ref, + int pattern: @pattern_or_none ref +); + +#keyset[id] +condition_element_initializers( //dir=stmt + int id: @condition_element ref, + int initializer: @expr_or_none ref +); + +#keyset[id] +condition_element_availabilities( //dir=stmt + int id: @condition_element ref, + int availability: @availability_info_or_none ref +); + +@stmt = + @brace_stmt +| @break_stmt +| @case_stmt +| @continue_stmt +| @defer_stmt +| @discard_stmt +| @fail_stmt +| @fallthrough_stmt +| @labeled_stmt +| @pound_assert_stmt +| @return_stmt +| @then_stmt +| @throw_stmt +| @yield_stmt +; + +stmt_conditions( //dir=stmt + unique int id: @stmt_condition +); + +#keyset[id, index] +stmt_condition_elements( //dir=stmt + int id: @stmt_condition ref, + int index: int ref, + int element: @condition_element_or_none ref +); + +brace_stmts( //dir=stmt + unique int id: @brace_stmt +); + +#keyset[id, index] +brace_stmt_elements( //dir=stmt + int id: @brace_stmt ref, + int index: int ref, + int element: @ast_node_or_none ref +); + +break_stmts( //dir=stmt + unique int id: @break_stmt +); + +#keyset[id] +break_stmt_target_names( //dir=stmt + int id: @break_stmt ref, + string target_name: string ref +); + +#keyset[id] +break_stmt_targets( //dir=stmt + int id: @break_stmt ref, + int target: @stmt_or_none ref +); + +case_stmts( //dir=stmt + unique int id: @case_stmt, + int body: @stmt_or_none ref +); + +#keyset[id, index] +case_stmt_labels( //dir=stmt + int id: @case_stmt ref, + int index: int ref, + int label: @case_label_item_or_none ref +); + +#keyset[id, index] +case_stmt_variables( //dir=stmt + int id: @case_stmt ref, + int index: int ref, + int variable: @var_decl_or_none ref +); + +continue_stmts( //dir=stmt + unique int id: @continue_stmt +); + +#keyset[id] +continue_stmt_target_names( //dir=stmt + int id: @continue_stmt ref, + string target_name: string ref +); + +#keyset[id] +continue_stmt_targets( //dir=stmt + int id: @continue_stmt ref, + int target: @stmt_or_none ref +); + +defer_stmts( //dir=stmt + unique int id: @defer_stmt, + int body: @brace_stmt_or_none ref +); + +discard_stmts( //dir=stmt + unique int id: @discard_stmt, + int sub_expr: @expr_or_none ref +); + +fail_stmts( //dir=stmt + unique int id: @fail_stmt +); + +fallthrough_stmts( //dir=stmt + unique int id: @fallthrough_stmt, + int fallthrough_source: @case_stmt_or_none ref, + int fallthrough_dest: @case_stmt_or_none ref +); + +@labeled_stmt = + @do_catch_stmt +| @do_stmt +| @for_each_stmt +| @labeled_conditional_stmt +| @repeat_while_stmt +| @switch_stmt +; + +#keyset[id] +labeled_stmt_labels( //dir=stmt + int id: @labeled_stmt ref, + string label: string ref +); + +pound_assert_stmts( //dir=stmt + unique int id: @pound_assert_stmt, + int condition: @expr_or_none ref, + string message: string ref +); + +return_stmts( //dir=stmt + unique int id: @return_stmt +); + +#keyset[id] +return_stmt_results( //dir=stmt + int id: @return_stmt ref, + int result: @expr_or_none ref +); + +then_stmts( //dir=stmt + unique int id: @then_stmt, + int result: @expr_or_none ref +); + +throw_stmts( //dir=stmt + unique int id: @throw_stmt, + int sub_expr: @expr_or_none ref +); + +yield_stmts( //dir=stmt + unique int id: @yield_stmt +); + +#keyset[id, index] +yield_stmt_results( //dir=stmt + int id: @yield_stmt ref, + int index: int ref, + int result: @expr_or_none ref +); + +do_catch_stmts( //dir=stmt + unique int id: @do_catch_stmt, + int body: @stmt_or_none ref +); + +#keyset[id, index] +do_catch_stmt_catches( //dir=stmt + int id: @do_catch_stmt ref, + int index: int ref, + int catch: @case_stmt_or_none ref +); + +do_stmts( //dir=stmt + unique int id: @do_stmt, + int body: @brace_stmt_or_none ref +); + +for_each_stmts( //dir=stmt + unique int id: @for_each_stmt, + int pattern: @pattern_or_none ref, + int body: @brace_stmt_or_none ref +); + +#keyset[id, index] +for_each_stmt_variables( //dir=stmt + int id: @for_each_stmt ref, + int index: int ref, + int variable: @var_decl_or_none ref +); + +#keyset[id] +for_each_stmt_wheres( //dir=stmt + int id: @for_each_stmt ref, + int where: @expr_or_none ref +); + +#keyset[id] +for_each_stmt_iterator_vars( //dir=stmt + int id: @for_each_stmt ref, + int iteratorVar: @pattern_binding_decl_or_none ref +); + +#keyset[id] +for_each_stmt_next_calls( //dir=stmt + int id: @for_each_stmt ref, + int nextCall: @expr_or_none ref +); + +@labeled_conditional_stmt = + @guard_stmt +| @if_stmt +| @while_stmt +; + +#keyset[id] +labeled_conditional_stmts( //dir=stmt + int id: @labeled_conditional_stmt ref, + int condition: @stmt_condition_or_none ref +); + +repeat_while_stmts( //dir=stmt + unique int id: @repeat_while_stmt, + int condition: @expr_or_none ref, + int body: @stmt_or_none ref +); + +switch_stmts( //dir=stmt + unique int id: @switch_stmt, + int expr: @expr_or_none ref +); + +#keyset[id, index] +switch_stmt_cases( //dir=stmt + int id: @switch_stmt ref, + int index: int ref, + int case_: @case_stmt_or_none ref +); + +guard_stmts( //dir=stmt + unique int id: @guard_stmt, + int body: @brace_stmt_or_none ref +); + +if_stmts( //dir=stmt + unique int id: @if_stmt, + int then: @stmt_or_none ref +); + +#keyset[id] +if_stmt_elses( //dir=stmt + int id: @if_stmt ref, + int else: @stmt_or_none ref +); + +while_stmts( //dir=stmt + unique int id: @while_stmt, + int body: @stmt_or_none ref +); + +@type = + @any_function_type +| @any_generic_type +| @any_metatype_type +| @builtin_type +| @dependent_member_type +| @dynamic_self_type +| @error_type +| @existential_type +| @in_out_type +| @integer_type +| @l_value_type +| @module_type +| @pack_element_type +| @pack_expansion_type +| @pack_type +| @parameterized_protocol_type +| @protocol_composition_type +| @reference_storage_type +| @substitutable_type +| @sugar_type +| @tuple_type +| @unresolved_type +; + +#keyset[id] +types( //dir=type + int id: @type ref, + string name: string ref, + int canonical_type: @type_or_none ref +); + +type_reprs( //dir=type + unique int id: @type_repr, + int type_: @type_or_none ref +); + +@any_function_type = + @function_type +| @generic_function_type +; + +#keyset[id] +any_function_types( //dir=type + int id: @any_function_type ref, + int result: @type_or_none ref +); + +#keyset[id, index] +any_function_type_param_types( //dir=type + int id: @any_function_type ref, + int index: int ref, + int param_type: @type_or_none ref +); + +#keyset[id] +any_function_type_is_throwing( //dir=type + int id: @any_function_type ref +); + +#keyset[id] +any_function_type_is_async( //dir=type + int id: @any_function_type ref +); + +@any_generic_type = + @nominal_or_bound_generic_nominal_type +| @unbound_generic_type +; + +#keyset[id] +any_generic_types( //dir=type + int id: @any_generic_type ref, + int declaration: @generic_type_decl_or_none ref +); + +#keyset[id] +any_generic_type_parents( //dir=type + int id: @any_generic_type ref, + int parent: @type_or_none ref +); + +@any_metatype_type = + @existential_metatype_type +| @metatype_type +; + +@builtin_type = + @any_builtin_integer_type +| @builtin_bridge_object_type +| @builtin_default_actor_storage_type +| @builtin_executor_type +| @builtin_float_type +| @builtin_generic_type +| @builtin_job_type +| @builtin_native_object_type +| @builtin_raw_pointer_type +| @builtin_raw_unsafe_continuation_type +| @builtin_unsafe_value_buffer_type +| @builtin_vector_type +; + +dependent_member_types( //dir=type + unique int id: @dependent_member_type, + int base_type: @type_or_none ref, + int associated_type_decl: @associated_type_decl_or_none ref +); + +dynamic_self_types( //dir=type + unique int id: @dynamic_self_type, + int static_self_type: @type_or_none ref +); + +error_types( //dir=type + unique int id: @error_type +); + +existential_types( //dir=type + unique int id: @existential_type, + int constraint: @type_or_none ref +); + +in_out_types( //dir=type + unique int id: @in_out_type, + int object_type: @type_or_none ref +); + +integer_types( //dir=type + unique int id: @integer_type, + string value: string ref +); + +l_value_types( //dir=type + unique int id: @l_value_type, + int object_type: @type_or_none ref +); + +module_types( //dir=type + unique int id: @module_type, + int module: @module_decl_or_none ref +); + +pack_element_types( //dir=type + unique int id: @pack_element_type, + int pack_type: @type_or_none ref +); + +pack_expansion_types( //dir=type + unique int id: @pack_expansion_type, + int pattern_type: @type_or_none ref, + int count_type: @type_or_none ref +); + +pack_types( //dir=type + unique int id: @pack_type +); + +#keyset[id, index] +pack_type_elements( //dir=type + int id: @pack_type ref, + int index: int ref, + int element: @type_or_none ref +); + +parameterized_protocol_types( //dir=type + unique int id: @parameterized_protocol_type, + int base: @protocol_type_or_none ref +); + +#keyset[id, index] +parameterized_protocol_type_args( //dir=type + int id: @parameterized_protocol_type ref, + int index: int ref, + int arg: @type_or_none ref +); + +protocol_composition_types( //dir=type + unique int id: @protocol_composition_type +); + +#keyset[id, index] +protocol_composition_type_members( //dir=type + int id: @protocol_composition_type ref, + int index: int ref, + int member: @type_or_none ref +); + +@reference_storage_type = + @unmanaged_storage_type +| @unowned_storage_type +| @weak_storage_type +; + +#keyset[id] +reference_storage_types( //dir=type + int id: @reference_storage_type ref, + int referent_type: @type_or_none ref +); + +@substitutable_type = + @archetype_type +| @generic_type_param_type +; + +@sugar_type = + @paren_type +| @syntax_sugar_type +| @type_alias_type +; + +tuple_types( //dir=type + unique int id: @tuple_type +); + +#keyset[id, index] +tuple_type_types( //dir=type + int id: @tuple_type ref, + int index: int ref, + int type_: @type_or_none ref +); + +#keyset[id, index] +tuple_type_names( //dir=type + int id: @tuple_type ref, + int index: int ref, + string name: string ref +); + +unresolved_types( //dir=type + unique int id: @unresolved_type +); + +@any_builtin_integer_type = + @builtin_integer_literal_type +| @builtin_integer_type +; + +@archetype_type = + @local_archetype_type +| @opaque_type_archetype_type +| @pack_archetype_type +| @primary_archetype_type +; + +#keyset[id] +archetype_types( //dir=type + int id: @archetype_type ref, + int interface_type: @type_or_none ref +); + +#keyset[id] +archetype_type_superclasses( //dir=type + int id: @archetype_type ref, + int superclass: @type_or_none ref +); + +#keyset[id, index] +archetype_type_protocols( //dir=type + int id: @archetype_type ref, + int index: int ref, + int protocol: @protocol_decl_or_none ref +); + +builtin_bridge_object_types( //dir=type + unique int id: @builtin_bridge_object_type +); + +builtin_default_actor_storage_types( //dir=type + unique int id: @builtin_default_actor_storage_type +); + +builtin_executor_types( //dir=type + unique int id: @builtin_executor_type +); + +builtin_float_types( //dir=type + unique int id: @builtin_float_type +); + +@builtin_generic_type = + @builtin_fixed_array_type +; + +builtin_job_types( //dir=type + unique int id: @builtin_job_type +); + +builtin_native_object_types( //dir=type + unique int id: @builtin_native_object_type +); + +builtin_raw_pointer_types( //dir=type + unique int id: @builtin_raw_pointer_type +); + +builtin_raw_unsafe_continuation_types( //dir=type + unique int id: @builtin_raw_unsafe_continuation_type +); + +builtin_unsafe_value_buffer_types( //dir=type + unique int id: @builtin_unsafe_value_buffer_type +); + +builtin_vector_types( //dir=type + unique int id: @builtin_vector_type +); + +existential_metatype_types( //dir=type + unique int id: @existential_metatype_type +); + +function_types( //dir=type + unique int id: @function_type +); + +generic_function_types( //dir=type + unique int id: @generic_function_type +); + +#keyset[id, index] +generic_function_type_generic_params( //dir=type + int id: @generic_function_type ref, + int index: int ref, + int generic_param: @generic_type_param_type_or_none ref +); + +generic_type_param_types( //dir=type + unique int id: @generic_type_param_type +); + +metatype_types( //dir=type + unique int id: @metatype_type +); + +@nominal_or_bound_generic_nominal_type = + @bound_generic_type +| @nominal_type +; + +paren_types( //dir=type + unique int id: @paren_type, + int type_: @type_or_none ref +); + +@syntax_sugar_type = + @dictionary_type +| @inline_array_type +| @unary_syntax_sugar_type +; + +type_alias_types( //dir=type + unique int id: @type_alias_type, + int decl: @type_alias_decl_or_none ref +); + +unbound_generic_types( //dir=type + unique int id: @unbound_generic_type +); + +unmanaged_storage_types( //dir=type + unique int id: @unmanaged_storage_type +); + +unowned_storage_types( //dir=type + unique int id: @unowned_storage_type +); + +weak_storage_types( //dir=type + unique int id: @weak_storage_type +); + +@bound_generic_type = + @bound_generic_class_type +| @bound_generic_enum_type +| @bound_generic_struct_type +; + +#keyset[id, index] +bound_generic_type_arg_types( //dir=type + int id: @bound_generic_type ref, + int index: int ref, + int arg_type: @type_or_none ref +); + +builtin_fixed_array_types( //dir=type + unique int id: @builtin_fixed_array_type, + int size: @type_or_none ref, + int element_type: @type_or_none ref +); + +builtin_integer_literal_types( //dir=type + unique int id: @builtin_integer_literal_type +); + +builtin_integer_types( //dir=type + unique int id: @builtin_integer_type +); + +#keyset[id] +builtin_integer_type_widths( //dir=type + int id: @builtin_integer_type ref, + int width: int ref +); + +dictionary_types( //dir=type + unique int id: @dictionary_type, + int key_type: @type_or_none ref, + int value_type: @type_or_none ref +); + +inline_array_types( //dir=type + unique int id: @inline_array_type, + int count_type: @type_or_none ref, + int element_type: @type_or_none ref +); + +@local_archetype_type = + @element_archetype_type +| @existential_archetype_type +; + +@nominal_type = + @class_type +| @enum_type +| @protocol_type +| @struct_type +; + +opaque_type_archetype_types( //dir=type + unique int id: @opaque_type_archetype_type, + int declaration: @opaque_type_decl_or_none ref +); + +pack_archetype_types( //dir=type + unique int id: @pack_archetype_type +); + +primary_archetype_types( //dir=type + unique int id: @primary_archetype_type +); + +@unary_syntax_sugar_type = + @array_slice_type +| @optional_type +| @variadic_sequence_type +; + +#keyset[id] +unary_syntax_sugar_types( //dir=type + int id: @unary_syntax_sugar_type ref, + int base_type: @type_or_none ref +); + +array_slice_types( //dir=type + unique int id: @array_slice_type +); + +bound_generic_class_types( //dir=type + unique int id: @bound_generic_class_type +); + +bound_generic_enum_types( //dir=type + unique int id: @bound_generic_enum_type +); + +bound_generic_struct_types( //dir=type + unique int id: @bound_generic_struct_type +); + +class_types( //dir=type + unique int id: @class_type +); + +element_archetype_types( //dir=type + unique int id: @element_archetype_type +); + +enum_types( //dir=type + unique int id: @enum_type +); + +existential_archetype_types( //dir=type + unique int id: @existential_archetype_type +); + +optional_types( //dir=type + unique int id: @optional_type +); + +protocol_types( //dir=type + unique int id: @protocol_type +); + +struct_types( //dir=type + unique int id: @struct_type +); + +variadic_sequence_types( //dir=type + unique int id: @variadic_sequence_type +); + +@accessor_or_none = + @accessor +| @unspecified_element +; + +@argument_or_none = + @argument +| @unspecified_element +; + +@associated_type_decl_or_none = + @associated_type_decl +| @unspecified_element +; + +@ast_node_or_none = + @ast_node +| @unspecified_element +; + +@availability_info_or_none = + @availability_info +| @unspecified_element +; + +@availability_spec_or_none = + @availability_spec +| @unspecified_element +; + +@brace_stmt_or_none = + @brace_stmt +| @unspecified_element +; + +@captured_decl_or_none = + @captured_decl +| @unspecified_element +; + +@case_label_item_or_none = + @case_label_item +| @unspecified_element +; + +@case_stmt_or_none = + @case_stmt +| @unspecified_element +; + +@closure_expr_or_none = + @closure_expr +| @unspecified_element +; + +@condition_element_or_none = + @condition_element +| @unspecified_element +; + +@decl_or_none = + @decl +| @unspecified_element +; + +@enum_element_decl_or_none = + @enum_element_decl +| @unspecified_element +; + +@expr_or_none = + @expr +| @unspecified_element +; + +@file_or_none = + @file +| @unspecified_element +; + +@function_or_none = + @function +| @unspecified_element +; + +@generic_type_decl_or_none = + @generic_type_decl +| @unspecified_element +; + +@generic_type_param_decl_or_none = + @generic_type_param_decl +| @unspecified_element +; + +@generic_type_param_type_or_none = + @generic_type_param_type +| @unspecified_element +; + +@initializer_or_none = + @initializer +| @unspecified_element +; + +@key_path_component_or_none = + @key_path_component +| @unspecified_element +; + +@location_or_none = + @location +| @unspecified_element +; + +@macro_role_or_none = + @macro_role +| @unspecified_element +; + +@module_decl_or_none = + @module_decl +| @unspecified_element +; + +@nominal_type_decl_or_none = + @nominal_type_decl +| @unspecified_element +; + +@opaque_type_decl_or_none = + @opaque_type_decl +| @unspecified_element +; + +@opaque_value_expr_or_none = + @opaque_value_expr +| @unspecified_element +; + +@param_decl_or_none = + @param_decl +| @unspecified_element +; + +@pattern_or_none = + @pattern +| @unspecified_element +; + +@pattern_binding_decl_or_none = + @pattern_binding_decl +| @unspecified_element +; + +@precedence_group_decl_or_none = + @precedence_group_decl +| @unspecified_element +; + +@protocol_decl_or_none = + @protocol_decl +| @unspecified_element +; + +@protocol_type_or_none = + @protocol_type +| @unspecified_element +; + +@stmt_or_none = + @stmt +| @unspecified_element +; + +@stmt_condition_or_none = + @stmt_condition +| @unspecified_element +; + +@string_literal_expr_or_none = + @string_literal_expr +| @unspecified_element +; + +@tap_expr_or_none = + @tap_expr +| @unspecified_element +; + +@type_or_none = + @type +| @unspecified_element +; + +@type_alias_decl_or_none = + @type_alias_decl +| @unspecified_element +; + +@type_repr_or_none = + @type_repr +| @unspecified_element +; + +@value_decl_or_none = + @unspecified_element +| @value_decl +; + +@var_decl_or_none = + @unspecified_element +| @var_decl +; diff --git a/swift/downgrades/5738be6bb04742c424efdbf9f4de11f0b10fa37d/swift.dbscheme b/swift/downgrades/5738be6bb04742c424efdbf9f4de11f0b10fa37d/swift.dbscheme new file mode 100644 index 000000000000..ee3053b673c9 --- /dev/null +++ b/swift/downgrades/5738be6bb04742c424efdbf9f4de11f0b10fa37d/swift.dbscheme @@ -0,0 +1,2889 @@ +// generated by codegen/codegen.py, do not edit + +// from prefix.dbscheme +/** + * The source location of the snapshot. + */ +sourceLocationPrefix( + string prefix: string ref +); + + +// from schema.py + +@element = + @file +| @generic_context +| @locatable +| @location +| @type +; + +#keyset[id] +element_is_unknown( + int id: @element ref +); + +@file = + @db_file +; + +#keyset[id] +files( + int id: @file ref, + string name: string ref +); + +#keyset[id] +file_is_successfully_extracted( + int id: @file ref +); + +@locatable = + @argument +| @ast_node +| @comment +| @diagnostics +| @error_element +; + +#keyset[id] +locatable_locations( + int id: @locatable ref, + int location: @location_or_none ref +); + +@location = + @db_location +; + +#keyset[id] +locations( + int id: @location ref, + int file: @file_or_none ref, + int start_line: int ref, + int start_column: int ref, + int end_line: int ref, + int end_column: int ref +); + +@ast_node = + @availability_info +| @availability_spec +| @callable +| @case_label_item +| @condition_element +| @decl +| @expr +| @key_path_component +| @macro_role +| @pattern +| @stmt +| @stmt_condition +| @type_repr +; + +comments( + unique int id: @comment, + string text: string ref +); + +db_files( + unique int id: @db_file +); + +db_locations( + unique int id: @db_location +); + +diagnostics( + unique int id: @diagnostics, + string text: string ref, + int kind: int ref +); + +@error_element = + @error_expr +| @error_type +| @overloaded_decl_ref_expr +| @unresolved_decl_ref_expr +| @unresolved_dot_expr +| @unresolved_member_chain_result_expr +| @unresolved_member_expr +| @unresolved_pattern_expr +| @unresolved_specialize_expr +| @unresolved_type +| @unresolved_type_conversion_expr +| @unspecified_element +; + +availability_infos( + unique int id: @availability_info +); + +#keyset[id] +availability_info_is_unavailable( + int id: @availability_info ref +); + +#keyset[id, index] +availability_info_specs( + int id: @availability_info ref, + int index: int ref, + int spec: @availability_spec_or_none ref +); + +availability_specs( + unique int id: @availability_spec +); + +#keyset[id] +availability_spec_platforms( + int id: @availability_spec ref, + string platform: string ref +); + +#keyset[id] +availability_spec_versions( + int id: @availability_spec ref, + string version: string ref +); + +#keyset[id] +availability_spec_is_wildcard( + int id: @availability_spec ref +); + +@callable = + @closure_expr +| @function +; + +#keyset[id] +callable_names( + int id: @callable ref, + string name: string ref +); + +#keyset[id] +callable_self_params( + int id: @callable ref, + int self_param: @param_decl_or_none ref +); + +#keyset[id, index] +callable_params( + int id: @callable ref, + int index: int ref, + int param: @param_decl_or_none ref +); + +#keyset[id] +callable_bodies( + int id: @callable ref, + int body: @brace_stmt_or_none ref +); + +#keyset[id, index] +callable_captures( + int id: @callable ref, + int index: int ref, + int capture: @captured_decl_or_none ref +); + +key_path_components( + unique int id: @key_path_component, + int kind: int ref, + int component_type: @type_or_none ref +); + +#keyset[id, index] +key_path_component_subscript_arguments( + int id: @key_path_component ref, + int index: int ref, + int subscript_argument: @argument_or_none ref +); + +#keyset[id] +key_path_component_tuple_indices( + int id: @key_path_component ref, + int tuple_index: int ref +); + +#keyset[id] +key_path_component_decl_refs( + int id: @key_path_component ref, + int decl_ref: @value_decl_or_none ref +); + +macro_roles( + unique int id: @macro_role, + int kind: int ref, + int macro_syntax: int ref +); + +#keyset[id, index] +macro_role_conformances( + int id: @macro_role ref, + int index: int ref, + int conformance: @expr_or_none ref +); + +#keyset[id, index] +macro_role_names( + int id: @macro_role ref, + int index: int ref, + string name: string ref +); + +unspecified_elements( + unique int id: @unspecified_element, + string property: string ref, + string error: string ref +); + +#keyset[id] +unspecified_element_parents( + int id: @unspecified_element ref, + int parent: @element ref +); + +#keyset[id] +unspecified_element_indices( + int id: @unspecified_element ref, + int index: int ref +); + +#keyset[id, index] +unspecified_element_children( + int id: @unspecified_element ref, + int index: int ref, + int child: @ast_node_or_none ref +); + +@decl = + @captured_decl +| @enum_case_decl +| @extension_decl +| @if_config_decl +| @import_decl +| @missing_member_decl +| @operator_decl +| @pattern_binding_decl +| @pound_diagnostic_decl +| @precedence_group_decl +| @top_level_code_decl +| @using_decl +| @value_decl +; + +#keyset[id] +decls( //dir=decl + int id: @decl ref, + int module: @module_decl_or_none ref +); + +#keyset[id, index] +decl_members( //dir=decl + int id: @decl ref, + int index: int ref, + int member: @decl_or_none ref +); + +@generic_context = + @extension_decl +| @function +| @generic_type_decl +| @macro_decl +| @subscript_decl +; + +#keyset[id, index] +generic_context_generic_type_params( //dir=decl + int id: @generic_context ref, + int index: int ref, + int generic_type_param: @generic_type_param_decl_or_none ref +); + +captured_decls( //dir=decl + unique int id: @captured_decl, + int decl: @value_decl_or_none ref +); + +#keyset[id] +captured_decl_is_direct( //dir=decl + int id: @captured_decl ref +); + +#keyset[id] +captured_decl_is_escaping( //dir=decl + int id: @captured_decl ref +); + +enum_case_decls( //dir=decl + unique int id: @enum_case_decl +); + +#keyset[id, index] +enum_case_decl_elements( //dir=decl + int id: @enum_case_decl ref, + int index: int ref, + int element: @enum_element_decl_or_none ref +); + +extension_decls( //dir=decl + unique int id: @extension_decl, + int extended_type_decl: @nominal_type_decl_or_none ref +); + +#keyset[id, index] +extension_decl_protocols( //dir=decl + int id: @extension_decl ref, + int index: int ref, + int protocol: @protocol_decl_or_none ref +); + +if_config_decls( //dir=decl + unique int id: @if_config_decl +); + +#keyset[id, index] +if_config_decl_active_elements( //dir=decl + int id: @if_config_decl ref, + int index: int ref, + int active_element: @ast_node_or_none ref +); + +import_decls( //dir=decl + unique int id: @import_decl +); + +#keyset[id] +import_decl_is_exported( //dir=decl + int id: @import_decl ref +); + +#keyset[id] +import_decl_imported_modules( //dir=decl + int id: @import_decl ref, + int imported_module: @module_decl_or_none ref +); + +#keyset[id, index] +import_decl_declarations( //dir=decl + int id: @import_decl ref, + int index: int ref, + int declaration: @value_decl_or_none ref +); + +missing_member_decls( //dir=decl + unique int id: @missing_member_decl, + string name: string ref +); + +@operator_decl = + @infix_operator_decl +| @postfix_operator_decl +| @prefix_operator_decl +; + +#keyset[id] +operator_decls( //dir=decl + int id: @operator_decl ref, + string name: string ref +); + +pattern_binding_decls( //dir=decl + unique int id: @pattern_binding_decl +); + +#keyset[id, index] +pattern_binding_decl_inits( //dir=decl + int id: @pattern_binding_decl ref, + int index: int ref, + int init: @expr_or_none ref +); + +#keyset[id, index] +pattern_binding_decl_patterns( //dir=decl + int id: @pattern_binding_decl ref, + int index: int ref, + int pattern: @pattern_or_none ref +); + +pound_diagnostic_decls( //dir=decl + unique int id: @pound_diagnostic_decl, + int kind: int ref, + int message: @string_literal_expr_or_none ref +); + +precedence_group_decls( //dir=decl + unique int id: @precedence_group_decl +); + +top_level_code_decls( //dir=decl + unique int id: @top_level_code_decl, + int body: @brace_stmt_or_none ref +); + +using_decls( //dir=decl + unique int id: @using_decl +); + +#keyset[id] +using_decl_is_main_actor( //dir=decl + int id: @using_decl ref +); + +#keyset[id] +using_decl_is_nonisolated( //dir=decl + int id: @using_decl ref +); + +@value_decl = + @abstract_storage_decl +| @enum_element_decl +| @function +| @macro_decl +| @type_decl +; + +#keyset[id] +value_decls( //dir=decl + int id: @value_decl ref, + int interface_type: @type_or_none ref +); + +@abstract_storage_decl = + @subscript_decl +| @var_decl +; + +#keyset[id, index] +abstract_storage_decl_accessors( //dir=decl + int id: @abstract_storage_decl ref, + int index: int ref, + int accessor: @accessor_or_none ref +); + +enum_element_decls( //dir=decl + unique int id: @enum_element_decl, + string name: string ref +); + +#keyset[id, index] +enum_element_decl_params( //dir=decl + int id: @enum_element_decl ref, + int index: int ref, + int param: @param_decl_or_none ref +); + +@function = + @accessor_or_named_function +| @deinitializer +| @initializer +; + +infix_operator_decls( //dir=decl + unique int id: @infix_operator_decl +); + +#keyset[id] +infix_operator_decl_precedence_groups( //dir=decl + int id: @infix_operator_decl ref, + int precedence_group: @precedence_group_decl_or_none ref +); + +macro_decls( //dir=decl + unique int id: @macro_decl, + string name: string ref +); + +#keyset[id, index] +macro_decl_parameters( //dir=decl + int id: @macro_decl ref, + int index: int ref, + int parameter: @param_decl_or_none ref +); + +#keyset[id, index] +macro_decl_roles( //dir=decl + int id: @macro_decl ref, + int index: int ref, + int role: @macro_role_or_none ref +); + +postfix_operator_decls( //dir=decl + unique int id: @postfix_operator_decl +); + +prefix_operator_decls( //dir=decl + unique int id: @prefix_operator_decl +); + +@type_decl = + @abstract_type_param_decl +| @generic_type_decl +| @module_decl +; + +#keyset[id] +type_decls( //dir=decl + int id: @type_decl ref, + string name: string ref +); + +#keyset[id, index] +type_decl_inherited_types( //dir=decl + int id: @type_decl ref, + int index: int ref, + int inherited_type: @type_or_none ref +); + +@abstract_type_param_decl = + @associated_type_decl +| @generic_type_param_decl +; + +@accessor_or_named_function = + @accessor +| @named_function +; + +deinitializers( //dir=decl + unique int id: @deinitializer +); + +@generic_type_decl = + @nominal_type_decl +| @opaque_type_decl +| @type_alias_decl +; + +initializers( //dir=decl + unique int id: @initializer +); + +module_decls( //dir=decl + unique int id: @module_decl +); + +#keyset[id] +module_decl_is_builtin_module( //dir=decl + int id: @module_decl ref +); + +#keyset[id] +module_decl_is_system_module( //dir=decl + int id: @module_decl ref +); + +module_decl_imported_modules( //dir=decl + int id: @module_decl ref, + int imported_module: @module_decl_or_none ref +); + +module_decl_exported_modules( //dir=decl + int id: @module_decl ref, + int exported_module: @module_decl_or_none ref +); + +subscript_decls( //dir=decl + unique int id: @subscript_decl, + int element_type: @type_or_none ref +); + +#keyset[id, index] +subscript_decl_params( //dir=decl + int id: @subscript_decl ref, + int index: int ref, + int param: @param_decl_or_none ref +); + +@var_decl = + @concrete_var_decl +| @param_decl +; + +#keyset[id] +var_decls( //dir=decl + int id: @var_decl ref, + string name: string ref, + int type_: @type_or_none ref +); + +#keyset[id] +var_decl_attached_property_wrapper_types( //dir=decl + int id: @var_decl ref, + int attached_property_wrapper_type: @type_or_none ref +); + +#keyset[id] +var_decl_parent_patterns( //dir=decl + int id: @var_decl ref, + int parent_pattern: @pattern_or_none ref +); + +#keyset[id] +var_decl_parent_initializers( //dir=decl + int id: @var_decl ref, + int parent_initializer: @expr_or_none ref +); + +#keyset[id] +var_decl_property_wrapper_backing_var_bindings( //dir=decl + int id: @var_decl ref, + int property_wrapper_backing_var_binding: @pattern_binding_decl_or_none ref +); + +#keyset[id] +var_decl_property_wrapper_backing_vars( //dir=decl + int id: @var_decl ref, + int property_wrapper_backing_var: @var_decl_or_none ref +); + +#keyset[id] +var_decl_property_wrapper_projection_var_bindings( //dir=decl + int id: @var_decl ref, + int property_wrapper_projection_var_binding: @pattern_binding_decl_or_none ref +); + +#keyset[id] +var_decl_property_wrapper_projection_vars( //dir=decl + int id: @var_decl ref, + int property_wrapper_projection_var: @var_decl_or_none ref +); + +accessors( //dir=decl + unique int id: @accessor +); + +#keyset[id] +accessor_is_getter( //dir=decl + int id: @accessor ref +); + +#keyset[id] +accessor_is_setter( //dir=decl + int id: @accessor ref +); + +#keyset[id] +accessor_is_will_set( //dir=decl + int id: @accessor ref +); + +#keyset[id] +accessor_is_did_set( //dir=decl + int id: @accessor ref +); + +#keyset[id] +accessor_is_read( //dir=decl + int id: @accessor ref +); + +#keyset[id] +accessor_is_modify( //dir=decl + int id: @accessor ref +); + +#keyset[id] +accessor_is_unsafe_address( //dir=decl + int id: @accessor ref +); + +#keyset[id] +accessor_is_unsafe_mutable_address( //dir=decl + int id: @accessor ref +); + +#keyset[id] +accessor_is_distributed_get( //dir=decl + int id: @accessor ref +); + +#keyset[id] +accessor_is_read2( //dir=decl + int id: @accessor ref +); + +#keyset[id] +accessor_is_modify2( //dir=decl + int id: @accessor ref +); + +#keyset[id] +accessor_is_init( //dir=decl + int id: @accessor ref +); + +associated_type_decls( //dir=decl + unique int id: @associated_type_decl +); + +concrete_var_decls( //dir=decl + unique int id: @concrete_var_decl, + int introducer_int: int ref +); + +generic_type_param_decls( //dir=decl + unique int id: @generic_type_param_decl +); + +named_functions( //dir=decl + unique int id: @named_function +); + +@nominal_type_decl = + @class_decl +| @enum_decl +| @protocol_decl +| @struct_decl +; + +#keyset[id] +nominal_type_decls( //dir=decl + int id: @nominal_type_decl ref, + int type_: @type_or_none ref +); + +opaque_type_decls( //dir=decl + unique int id: @opaque_type_decl, + int naming_declaration: @value_decl_or_none ref +); + +#keyset[id, index] +opaque_type_decl_opaque_generic_params( //dir=decl + int id: @opaque_type_decl ref, + int index: int ref, + int opaque_generic_param: @generic_type_param_type_or_none ref +); + +param_decls( //dir=decl + unique int id: @param_decl +); + +#keyset[id] +param_decl_is_inout( //dir=decl + int id: @param_decl ref +); + +#keyset[id] +param_decl_property_wrapper_local_wrapped_var_bindings( //dir=decl + int id: @param_decl ref, + int property_wrapper_local_wrapped_var_binding: @pattern_binding_decl_or_none ref +); + +#keyset[id] +param_decl_property_wrapper_local_wrapped_vars( //dir=decl + int id: @param_decl ref, + int property_wrapper_local_wrapped_var: @var_decl_or_none ref +); + +type_alias_decls( //dir=decl + unique int id: @type_alias_decl, + int aliased_type: @type_or_none ref +); + +class_decls( //dir=decl + unique int id: @class_decl +); + +enum_decls( //dir=decl + unique int id: @enum_decl +); + +protocol_decls( //dir=decl + unique int id: @protocol_decl +); + +struct_decls( //dir=decl + unique int id: @struct_decl +); + +arguments( //dir=expr + unique int id: @argument, + string label: string ref, + int expr: @expr_or_none ref +); + +@expr = + @any_try_expr +| @applied_property_wrapper_expr +| @apply_expr +| @assign_expr +| @bind_optional_expr +| @capture_list_expr +| @closure_expr +| @collection_expr +| @consume_expr +| @copy_expr +| @current_context_isolation_expr +| @decl_ref_expr +| @default_argument_expr +| @discard_assignment_expr +| @dot_syntax_base_ignored_expr +| @dynamic_type_expr +| @enum_is_case_expr +| @error_expr +| @explicit_cast_expr +| @extract_function_isolation_expr +| @force_value_expr +| @identity_expr +| @if_expr +| @implicit_conversion_expr +| @in_out_expr +| @key_path_application_expr +| @key_path_dot_expr +| @key_path_expr +| @lazy_initialization_expr +| @literal_expr +| @lookup_expr +| @make_temporarily_escapable_expr +| @materialize_pack_expr +| @obj_c_selector_expr +| @one_way_expr +| @opaque_value_expr +| @open_existential_expr +| @optional_evaluation_expr +| @other_initializer_ref_expr +| @overloaded_decl_ref_expr +| @pack_element_expr +| @pack_expansion_expr +| @property_wrapper_value_placeholder_expr +| @rebind_self_in_initializer_expr +| @sequence_expr +| @single_value_stmt_expr +| @super_ref_expr +| @tap_expr +| @tuple_element_expr +| @tuple_expr +| @type_expr +| @type_value_expr +| @unresolved_decl_ref_expr +| @unresolved_dot_expr +| @unresolved_member_expr +| @unresolved_pattern_expr +| @unresolved_specialize_expr +| @vararg_expansion_expr +; + +#keyset[id] +expr_types( //dir=expr + int id: @expr ref, + int type_: @type_or_none ref +); + +@any_try_expr = + @force_try_expr +| @optional_try_expr +| @try_expr +; + +#keyset[id] +any_try_exprs( //dir=expr + int id: @any_try_expr ref, + int sub_expr: @expr_or_none ref +); + +applied_property_wrapper_exprs( //dir=expr + unique int id: @applied_property_wrapper_expr, + int kind: int ref, + int value: @expr_or_none ref, + int param: @param_decl_or_none ref +); + +@apply_expr = + @binary_expr +| @call_expr +| @postfix_unary_expr +| @prefix_unary_expr +| @self_apply_expr +; + +#keyset[id] +apply_exprs( //dir=expr + int id: @apply_expr ref, + int function: @expr_or_none ref +); + +#keyset[id, index] +apply_expr_arguments( //dir=expr + int id: @apply_expr ref, + int index: int ref, + int argument: @argument_or_none ref +); + +assign_exprs( //dir=expr + unique int id: @assign_expr, + int dest: @expr_or_none ref, + int source: @expr_or_none ref +); + +bind_optional_exprs( //dir=expr + unique int id: @bind_optional_expr, + int sub_expr: @expr_or_none ref +); + +capture_list_exprs( //dir=expr + unique int id: @capture_list_expr, + int closure_body: @closure_expr_or_none ref +); + +#keyset[id, index] +capture_list_expr_binding_decls( //dir=expr + int id: @capture_list_expr ref, + int index: int ref, + int binding_decl: @pattern_binding_decl_or_none ref +); + +@closure_expr = + @auto_closure_expr +| @explicit_closure_expr +; + +@collection_expr = + @array_expr +| @dictionary_expr +; + +consume_exprs( //dir=expr + unique int id: @consume_expr, + int sub_expr: @expr_or_none ref +); + +copy_exprs( //dir=expr + unique int id: @copy_expr, + int sub_expr: @expr_or_none ref +); + +current_context_isolation_exprs( //dir=expr + unique int id: @current_context_isolation_expr, + int actor: @expr_or_none ref +); + +decl_ref_exprs( //dir=expr + unique int id: @decl_ref_expr, + int decl: @decl_or_none ref +); + +#keyset[id, index] +decl_ref_expr_replacement_types( //dir=expr + int id: @decl_ref_expr ref, + int index: int ref, + int replacement_type: @type_or_none ref +); + +#keyset[id] +decl_ref_expr_has_direct_to_storage_semantics( //dir=expr + int id: @decl_ref_expr ref +); + +#keyset[id] +decl_ref_expr_has_direct_to_implementation_semantics( //dir=expr + int id: @decl_ref_expr ref +); + +#keyset[id] +decl_ref_expr_has_ordinary_semantics( //dir=expr + int id: @decl_ref_expr ref +); + +#keyset[id] +decl_ref_expr_has_distributed_thunk_semantics( //dir=expr + int id: @decl_ref_expr ref +); + +default_argument_exprs( //dir=expr + unique int id: @default_argument_expr, + int param_decl: @param_decl_or_none ref, + int param_index: int ref +); + +#keyset[id] +default_argument_expr_caller_side_defaults( //dir=expr + int id: @default_argument_expr ref, + int caller_side_default: @expr_or_none ref +); + +discard_assignment_exprs( //dir=expr + unique int id: @discard_assignment_expr +); + +dot_syntax_base_ignored_exprs( //dir=expr + unique int id: @dot_syntax_base_ignored_expr, + int qualifier: @expr_or_none ref, + int sub_expr: @expr_or_none ref +); + +dynamic_type_exprs( //dir=expr + unique int id: @dynamic_type_expr, + int base: @expr_or_none ref +); + +enum_is_case_exprs( //dir=expr + unique int id: @enum_is_case_expr, + int sub_expr: @expr_or_none ref, + int element: @enum_element_decl_or_none ref +); + +error_exprs( //dir=expr + unique int id: @error_expr +); + +@explicit_cast_expr = + @checked_cast_expr +| @coerce_expr +; + +#keyset[id] +explicit_cast_exprs( //dir=expr + int id: @explicit_cast_expr ref, + int sub_expr: @expr_or_none ref +); + +extract_function_isolation_exprs( //dir=expr + unique int id: @extract_function_isolation_expr, + int function_expr: @expr_or_none ref +); + +force_value_exprs( //dir=expr + unique int id: @force_value_expr, + int sub_expr: @expr_or_none ref +); + +@identity_expr = + @await_expr +| @borrow_expr +| @dot_self_expr +| @paren_expr +| @unresolved_member_chain_result_expr +| @unsafe_expr +; + +#keyset[id] +identity_exprs( //dir=expr + int id: @identity_expr ref, + int sub_expr: @expr_or_none ref +); + +if_exprs( //dir=expr + unique int id: @if_expr, + int condition: @expr_or_none ref, + int then_expr: @expr_or_none ref, + int else_expr: @expr_or_none ref +); + +@implicit_conversion_expr = + @abi_safe_conversion_expr +| @actor_isolation_erasure_expr +| @any_hashable_erasure_expr +| @archetype_to_super_expr +| @array_to_pointer_expr +| @bridge_from_obj_c_expr +| @bridge_to_obj_c_expr +| @class_metatype_to_object_expr +| @collection_upcast_conversion_expr +| @conditional_bridge_from_obj_c_expr +| @covariant_function_conversion_expr +| @covariant_return_conversion_expr +| @derived_to_base_expr +| @destructure_tuple_expr +| @differentiable_function_expr +| @differentiable_function_extract_original_expr +| @erasure_expr +| @existential_metatype_to_object_expr +| @foreign_object_conversion_expr +| @function_conversion_expr +| @in_out_to_pointer_expr +| @inject_into_optional_expr +| @linear_function_expr +| @linear_function_extract_original_expr +| @linear_to_differentiable_function_expr +| @load_expr +| @metatype_conversion_expr +| @pointer_to_pointer_expr +| @protocol_metatype_to_object_expr +| @string_to_pointer_expr +| @underlying_to_opaque_expr +| @unevaluated_instance_expr +| @unreachable_expr +| @unresolved_type_conversion_expr +| @unsafe_cast_expr +; + +#keyset[id] +implicit_conversion_exprs( //dir=expr + int id: @implicit_conversion_expr ref, + int sub_expr: @expr_or_none ref +); + +in_out_exprs( //dir=expr + unique int id: @in_out_expr, + int sub_expr: @expr_or_none ref +); + +key_path_application_exprs( //dir=expr + unique int id: @key_path_application_expr, + int base: @expr_or_none ref, + int key_path: @expr_or_none ref +); + +key_path_dot_exprs( //dir=expr + unique int id: @key_path_dot_expr +); + +key_path_exprs( //dir=expr + unique int id: @key_path_expr +); + +#keyset[id] +key_path_expr_roots( //dir=expr + int id: @key_path_expr ref, + int root: @type_repr_or_none ref +); + +#keyset[id, index] +key_path_expr_components( //dir=expr + int id: @key_path_expr ref, + int index: int ref, + int component: @key_path_component_or_none ref +); + +lazy_initialization_exprs( //dir=expr + unique int id: @lazy_initialization_expr, + int sub_expr: @expr_or_none ref +); + +@literal_expr = + @builtin_literal_expr +| @interpolated_string_literal_expr +| @nil_literal_expr +| @object_literal_expr +| @regex_literal_expr +; + +@lookup_expr = + @dynamic_lookup_expr +| @member_ref_expr +| @subscript_expr +; + +#keyset[id] +lookup_exprs( //dir=expr + int id: @lookup_expr ref, + int base: @expr_or_none ref +); + +#keyset[id] +lookup_expr_members( //dir=expr + int id: @lookup_expr ref, + int member: @decl_or_none ref +); + +make_temporarily_escapable_exprs( //dir=expr + unique int id: @make_temporarily_escapable_expr, + int escaping_closure: @opaque_value_expr_or_none ref, + int nonescaping_closure: @expr_or_none ref, + int sub_expr: @expr_or_none ref +); + +materialize_pack_exprs( //dir=expr + unique int id: @materialize_pack_expr, + int sub_expr: @expr_or_none ref +); + +obj_c_selector_exprs( //dir=expr + unique int id: @obj_c_selector_expr, + int sub_expr: @expr_or_none ref, + int method: @function_or_none ref +); + +one_way_exprs( //dir=expr + unique int id: @one_way_expr, + int sub_expr: @expr_or_none ref +); + +opaque_value_exprs( //dir=expr + unique int id: @opaque_value_expr +); + +open_existential_exprs( //dir=expr + unique int id: @open_existential_expr, + int sub_expr: @expr_or_none ref, + int existential: @expr_or_none ref, + int opaque_expr: @opaque_value_expr_or_none ref +); + +optional_evaluation_exprs( //dir=expr + unique int id: @optional_evaluation_expr, + int sub_expr: @expr_or_none ref +); + +other_initializer_ref_exprs( //dir=expr + unique int id: @other_initializer_ref_expr, + int initializer: @initializer_or_none ref +); + +overloaded_decl_ref_exprs( //dir=expr + unique int id: @overloaded_decl_ref_expr +); + +#keyset[id, index] +overloaded_decl_ref_expr_possible_declarations( //dir=expr + int id: @overloaded_decl_ref_expr ref, + int index: int ref, + int possible_declaration: @value_decl_or_none ref +); + +pack_element_exprs( //dir=expr + unique int id: @pack_element_expr, + int sub_expr: @expr_or_none ref +); + +pack_expansion_exprs( //dir=expr + unique int id: @pack_expansion_expr, + int pattern_expr: @expr_or_none ref +); + +property_wrapper_value_placeholder_exprs( //dir=expr + unique int id: @property_wrapper_value_placeholder_expr, + int placeholder: @opaque_value_expr_or_none ref +); + +#keyset[id] +property_wrapper_value_placeholder_expr_wrapped_values( //dir=expr + int id: @property_wrapper_value_placeholder_expr ref, + int wrapped_value: @expr_or_none ref +); + +rebind_self_in_initializer_exprs( //dir=expr + unique int id: @rebind_self_in_initializer_expr, + int sub_expr: @expr_or_none ref, + int self: @var_decl_or_none ref +); + +sequence_exprs( //dir=expr + unique int id: @sequence_expr +); + +#keyset[id, index] +sequence_expr_elements( //dir=expr + int id: @sequence_expr ref, + int index: int ref, + int element: @expr_or_none ref +); + +single_value_stmt_exprs( //dir=expr + unique int id: @single_value_stmt_expr, + int stmt: @stmt_or_none ref +); + +super_ref_exprs( //dir=expr + unique int id: @super_ref_expr, + int self: @var_decl_or_none ref +); + +tap_exprs( //dir=expr + unique int id: @tap_expr, + int body: @brace_stmt_or_none ref, + int var: @var_decl_or_none ref +); + +#keyset[id] +tap_expr_sub_exprs( //dir=expr + int id: @tap_expr ref, + int sub_expr: @expr_or_none ref +); + +tuple_element_exprs( //dir=expr + unique int id: @tuple_element_expr, + int sub_expr: @expr_or_none ref, + int index: int ref +); + +tuple_exprs( //dir=expr + unique int id: @tuple_expr +); + +#keyset[id, index] +tuple_expr_elements( //dir=expr + int id: @tuple_expr ref, + int index: int ref, + int element: @expr_or_none ref +); + +type_exprs( //dir=expr + unique int id: @type_expr +); + +#keyset[id] +type_expr_type_reprs( //dir=expr + int id: @type_expr ref, + int type_repr: @type_repr_or_none ref +); + +type_value_exprs( //dir=expr + unique int id: @type_value_expr, + int type_repr: @type_repr_or_none ref +); + +unresolved_decl_ref_exprs( //dir=expr + unique int id: @unresolved_decl_ref_expr +); + +#keyset[id] +unresolved_decl_ref_expr_names( //dir=expr + int id: @unresolved_decl_ref_expr ref, + string name: string ref +); + +unresolved_dot_exprs( //dir=expr + unique int id: @unresolved_dot_expr, + int base: @expr_or_none ref, + string name: string ref +); + +unresolved_member_exprs( //dir=expr + unique int id: @unresolved_member_expr, + string name: string ref +); + +unresolved_pattern_exprs( //dir=expr + unique int id: @unresolved_pattern_expr, + int sub_pattern: @pattern_or_none ref +); + +unresolved_specialize_exprs( //dir=expr + unique int id: @unresolved_specialize_expr, + int sub_expr: @expr_or_none ref +); + +vararg_expansion_exprs( //dir=expr + unique int id: @vararg_expansion_expr, + int sub_expr: @expr_or_none ref +); + +abi_safe_conversion_exprs( //dir=expr + unique int id: @abi_safe_conversion_expr +); + +actor_isolation_erasure_exprs( //dir=expr + unique int id: @actor_isolation_erasure_expr +); + +any_hashable_erasure_exprs( //dir=expr + unique int id: @any_hashable_erasure_expr +); + +archetype_to_super_exprs( //dir=expr + unique int id: @archetype_to_super_expr +); + +array_exprs( //dir=expr + unique int id: @array_expr +); + +#keyset[id, index] +array_expr_elements( //dir=expr + int id: @array_expr ref, + int index: int ref, + int element: @expr_or_none ref +); + +array_to_pointer_exprs( //dir=expr + unique int id: @array_to_pointer_expr +); + +auto_closure_exprs( //dir=expr + unique int id: @auto_closure_expr +); + +await_exprs( //dir=expr + unique int id: @await_expr +); + +binary_exprs( //dir=expr + unique int id: @binary_expr +); + +borrow_exprs( //dir=expr + unique int id: @borrow_expr +); + +bridge_from_obj_c_exprs( //dir=expr + unique int id: @bridge_from_obj_c_expr +); + +bridge_to_obj_c_exprs( //dir=expr + unique int id: @bridge_to_obj_c_expr +); + +@builtin_literal_expr = + @boolean_literal_expr +| @magic_identifier_literal_expr +| @number_literal_expr +| @string_literal_expr +; + +call_exprs( //dir=expr + unique int id: @call_expr +); + +@checked_cast_expr = + @conditional_checked_cast_expr +| @forced_checked_cast_expr +| @is_expr +; + +class_metatype_to_object_exprs( //dir=expr + unique int id: @class_metatype_to_object_expr +); + +coerce_exprs( //dir=expr + unique int id: @coerce_expr +); + +collection_upcast_conversion_exprs( //dir=expr + unique int id: @collection_upcast_conversion_expr +); + +conditional_bridge_from_obj_c_exprs( //dir=expr + unique int id: @conditional_bridge_from_obj_c_expr +); + +covariant_function_conversion_exprs( //dir=expr + unique int id: @covariant_function_conversion_expr +); + +covariant_return_conversion_exprs( //dir=expr + unique int id: @covariant_return_conversion_expr +); + +derived_to_base_exprs( //dir=expr + unique int id: @derived_to_base_expr +); + +destructure_tuple_exprs( //dir=expr + unique int id: @destructure_tuple_expr +); + +dictionary_exprs( //dir=expr + unique int id: @dictionary_expr +); + +#keyset[id, index] +dictionary_expr_elements( //dir=expr + int id: @dictionary_expr ref, + int index: int ref, + int element: @expr_or_none ref +); + +differentiable_function_exprs( //dir=expr + unique int id: @differentiable_function_expr +); + +differentiable_function_extract_original_exprs( //dir=expr + unique int id: @differentiable_function_extract_original_expr +); + +dot_self_exprs( //dir=expr + unique int id: @dot_self_expr +); + +@dynamic_lookup_expr = + @dynamic_member_ref_expr +| @dynamic_subscript_expr +; + +erasure_exprs( //dir=expr + unique int id: @erasure_expr +); + +existential_metatype_to_object_exprs( //dir=expr + unique int id: @existential_metatype_to_object_expr +); + +explicit_closure_exprs( //dir=expr + unique int id: @explicit_closure_expr +); + +force_try_exprs( //dir=expr + unique int id: @force_try_expr +); + +foreign_object_conversion_exprs( //dir=expr + unique int id: @foreign_object_conversion_expr +); + +function_conversion_exprs( //dir=expr + unique int id: @function_conversion_expr +); + +in_out_to_pointer_exprs( //dir=expr + unique int id: @in_out_to_pointer_expr +); + +inject_into_optional_exprs( //dir=expr + unique int id: @inject_into_optional_expr +); + +interpolated_string_literal_exprs( //dir=expr + unique int id: @interpolated_string_literal_expr +); + +#keyset[id] +interpolated_string_literal_expr_interpolation_exprs( //dir=expr + int id: @interpolated_string_literal_expr ref, + int interpolation_expr: @opaque_value_expr_or_none ref +); + +#keyset[id] +interpolated_string_literal_expr_appending_exprs( //dir=expr + int id: @interpolated_string_literal_expr ref, + int appending_expr: @tap_expr_or_none ref +); + +linear_function_exprs( //dir=expr + unique int id: @linear_function_expr +); + +linear_function_extract_original_exprs( //dir=expr + unique int id: @linear_function_extract_original_expr +); + +linear_to_differentiable_function_exprs( //dir=expr + unique int id: @linear_to_differentiable_function_expr +); + +load_exprs( //dir=expr + unique int id: @load_expr +); + +member_ref_exprs( //dir=expr + unique int id: @member_ref_expr +); + +#keyset[id] +member_ref_expr_has_direct_to_storage_semantics( //dir=expr + int id: @member_ref_expr ref +); + +#keyset[id] +member_ref_expr_has_direct_to_implementation_semantics( //dir=expr + int id: @member_ref_expr ref +); + +#keyset[id] +member_ref_expr_has_ordinary_semantics( //dir=expr + int id: @member_ref_expr ref +); + +#keyset[id] +member_ref_expr_has_distributed_thunk_semantics( //dir=expr + int id: @member_ref_expr ref +); + +metatype_conversion_exprs( //dir=expr + unique int id: @metatype_conversion_expr +); + +nil_literal_exprs( //dir=expr + unique int id: @nil_literal_expr +); + +object_literal_exprs( //dir=expr + unique int id: @object_literal_expr, + int kind: int ref +); + +#keyset[id, index] +object_literal_expr_arguments( //dir=expr + int id: @object_literal_expr ref, + int index: int ref, + int argument: @argument_or_none ref +); + +optional_try_exprs( //dir=expr + unique int id: @optional_try_expr +); + +paren_exprs( //dir=expr + unique int id: @paren_expr +); + +pointer_to_pointer_exprs( //dir=expr + unique int id: @pointer_to_pointer_expr +); + +postfix_unary_exprs( //dir=expr + unique int id: @postfix_unary_expr +); + +prefix_unary_exprs( //dir=expr + unique int id: @prefix_unary_expr +); + +protocol_metatype_to_object_exprs( //dir=expr + unique int id: @protocol_metatype_to_object_expr +); + +regex_literal_exprs( //dir=expr + unique int id: @regex_literal_expr, + string pattern: string ref, + int version: int ref +); + +@self_apply_expr = + @dot_syntax_call_expr +| @initializer_ref_call_expr +; + +#keyset[id] +self_apply_exprs( //dir=expr + int id: @self_apply_expr ref, + int base: @expr_or_none ref +); + +string_to_pointer_exprs( //dir=expr + unique int id: @string_to_pointer_expr +); + +subscript_exprs( //dir=expr + unique int id: @subscript_expr +); + +#keyset[id, index] +subscript_expr_arguments( //dir=expr + int id: @subscript_expr ref, + int index: int ref, + int argument: @argument_or_none ref +); + +#keyset[id] +subscript_expr_has_direct_to_storage_semantics( //dir=expr + int id: @subscript_expr ref +); + +#keyset[id] +subscript_expr_has_direct_to_implementation_semantics( //dir=expr + int id: @subscript_expr ref +); + +#keyset[id] +subscript_expr_has_ordinary_semantics( //dir=expr + int id: @subscript_expr ref +); + +#keyset[id] +subscript_expr_has_distributed_thunk_semantics( //dir=expr + int id: @subscript_expr ref +); + +try_exprs( //dir=expr + unique int id: @try_expr +); + +underlying_to_opaque_exprs( //dir=expr + unique int id: @underlying_to_opaque_expr +); + +unevaluated_instance_exprs( //dir=expr + unique int id: @unevaluated_instance_expr +); + +unreachable_exprs( //dir=expr + unique int id: @unreachable_expr +); + +unresolved_member_chain_result_exprs( //dir=expr + unique int id: @unresolved_member_chain_result_expr +); + +unresolved_type_conversion_exprs( //dir=expr + unique int id: @unresolved_type_conversion_expr +); + +unsafe_cast_exprs( //dir=expr + unique int id: @unsafe_cast_expr +); + +unsafe_exprs( //dir=expr + unique int id: @unsafe_expr +); + +boolean_literal_exprs( //dir=expr + unique int id: @boolean_literal_expr, + boolean value: boolean ref +); + +conditional_checked_cast_exprs( //dir=expr + unique int id: @conditional_checked_cast_expr +); + +dot_syntax_call_exprs( //dir=expr + unique int id: @dot_syntax_call_expr +); + +dynamic_member_ref_exprs( //dir=expr + unique int id: @dynamic_member_ref_expr +); + +dynamic_subscript_exprs( //dir=expr + unique int id: @dynamic_subscript_expr +); + +forced_checked_cast_exprs( //dir=expr + unique int id: @forced_checked_cast_expr +); + +initializer_ref_call_exprs( //dir=expr + unique int id: @initializer_ref_call_expr +); + +is_exprs( //dir=expr + unique int id: @is_expr +); + +magic_identifier_literal_exprs( //dir=expr + unique int id: @magic_identifier_literal_expr, + string kind: string ref +); + +@number_literal_expr = + @float_literal_expr +| @integer_literal_expr +; + +string_literal_exprs( //dir=expr + unique int id: @string_literal_expr, + string value: string ref +); + +float_literal_exprs( //dir=expr + unique int id: @float_literal_expr, + string string_value: string ref +); + +integer_literal_exprs( //dir=expr + unique int id: @integer_literal_expr, + string string_value: string ref +); + +@pattern = + @any_pattern +| @binding_pattern +| @bool_pattern +| @enum_element_pattern +| @expr_pattern +| @is_pattern +| @named_pattern +| @optional_some_pattern +| @paren_pattern +| @tuple_pattern +| @typed_pattern +; + +#keyset[id] +pattern_types( //dir=pattern + int id: @pattern ref, + int type_: @type_or_none ref +); + +any_patterns( //dir=pattern + unique int id: @any_pattern +); + +binding_patterns( //dir=pattern + unique int id: @binding_pattern, + int sub_pattern: @pattern_or_none ref +); + +bool_patterns( //dir=pattern + unique int id: @bool_pattern, + boolean value: boolean ref +); + +enum_element_patterns( //dir=pattern + unique int id: @enum_element_pattern, + int element: @enum_element_decl_or_none ref +); + +#keyset[id] +enum_element_pattern_sub_patterns( //dir=pattern + int id: @enum_element_pattern ref, + int sub_pattern: @pattern_or_none ref +); + +expr_patterns( //dir=pattern + unique int id: @expr_pattern, + int sub_expr: @expr_or_none ref +); + +is_patterns( //dir=pattern + unique int id: @is_pattern +); + +#keyset[id] +is_pattern_cast_type_reprs( //dir=pattern + int id: @is_pattern ref, + int cast_type_repr: @type_repr_or_none ref +); + +#keyset[id] +is_pattern_sub_patterns( //dir=pattern + int id: @is_pattern ref, + int sub_pattern: @pattern_or_none ref +); + +named_patterns( //dir=pattern + unique int id: @named_pattern, + int var_decl: @var_decl_or_none ref +); + +optional_some_patterns( //dir=pattern + unique int id: @optional_some_pattern, + int sub_pattern: @pattern_or_none ref +); + +paren_patterns( //dir=pattern + unique int id: @paren_pattern, + int sub_pattern: @pattern_or_none ref +); + +tuple_patterns( //dir=pattern + unique int id: @tuple_pattern +); + +#keyset[id, index] +tuple_pattern_elements( //dir=pattern + int id: @tuple_pattern ref, + int index: int ref, + int element: @pattern_or_none ref +); + +typed_patterns( //dir=pattern + unique int id: @typed_pattern, + int sub_pattern: @pattern_or_none ref +); + +#keyset[id] +typed_pattern_type_reprs( //dir=pattern + int id: @typed_pattern ref, + int type_repr: @type_repr_or_none ref +); + +case_label_items( //dir=stmt + unique int id: @case_label_item, + int pattern: @pattern_or_none ref +); + +#keyset[id] +case_label_item_guards( //dir=stmt + int id: @case_label_item ref, + int guard: @expr_or_none ref +); + +condition_elements( //dir=stmt + unique int id: @condition_element +); + +#keyset[id] +condition_element_booleans( //dir=stmt + int id: @condition_element ref, + int boolean_: @expr_or_none ref +); + +#keyset[id] +condition_element_patterns( //dir=stmt + int id: @condition_element ref, + int pattern: @pattern_or_none ref +); + +#keyset[id] +condition_element_initializers( //dir=stmt + int id: @condition_element ref, + int initializer: @expr_or_none ref +); + +#keyset[id] +condition_element_availabilities( //dir=stmt + int id: @condition_element ref, + int availability: @availability_info_or_none ref +); + +@stmt = + @brace_stmt +| @break_stmt +| @case_stmt +| @continue_stmt +| @defer_stmt +| @discard_stmt +| @fail_stmt +| @fallthrough_stmt +| @labeled_stmt +| @pound_assert_stmt +| @return_stmt +| @then_stmt +| @throw_stmt +| @yield_stmt +; + +stmt_conditions( //dir=stmt + unique int id: @stmt_condition +); + +#keyset[id, index] +stmt_condition_elements( //dir=stmt + int id: @stmt_condition ref, + int index: int ref, + int element: @condition_element_or_none ref +); + +brace_stmts( //dir=stmt + unique int id: @brace_stmt +); + +#keyset[id, index] +brace_stmt_elements( //dir=stmt + int id: @brace_stmt ref, + int index: int ref, + int element: @ast_node_or_none ref +); + +break_stmts( //dir=stmt + unique int id: @break_stmt +); + +#keyset[id] +break_stmt_target_names( //dir=stmt + int id: @break_stmt ref, + string target_name: string ref +); + +#keyset[id] +break_stmt_targets( //dir=stmt + int id: @break_stmt ref, + int target: @stmt_or_none ref +); + +case_stmts( //dir=stmt + unique int id: @case_stmt, + int body: @stmt_or_none ref +); + +#keyset[id, index] +case_stmt_labels( //dir=stmt + int id: @case_stmt ref, + int index: int ref, + int label: @case_label_item_or_none ref +); + +#keyset[id, index] +case_stmt_variables( //dir=stmt + int id: @case_stmt ref, + int index: int ref, + int variable: @var_decl_or_none ref +); + +continue_stmts( //dir=stmt + unique int id: @continue_stmt +); + +#keyset[id] +continue_stmt_target_names( //dir=stmt + int id: @continue_stmt ref, + string target_name: string ref +); + +#keyset[id] +continue_stmt_targets( //dir=stmt + int id: @continue_stmt ref, + int target: @stmt_or_none ref +); + +defer_stmts( //dir=stmt + unique int id: @defer_stmt, + int body: @brace_stmt_or_none ref +); + +discard_stmts( //dir=stmt + unique int id: @discard_stmt, + int sub_expr: @expr_or_none ref +); + +fail_stmts( //dir=stmt + unique int id: @fail_stmt +); + +fallthrough_stmts( //dir=stmt + unique int id: @fallthrough_stmt, + int fallthrough_source: @case_stmt_or_none ref, + int fallthrough_dest: @case_stmt_or_none ref +); + +@labeled_stmt = + @do_catch_stmt +| @do_stmt +| @for_each_stmt +| @labeled_conditional_stmt +| @repeat_while_stmt +| @switch_stmt +; + +#keyset[id] +labeled_stmt_labels( //dir=stmt + int id: @labeled_stmt ref, + string label: string ref +); + +pound_assert_stmts( //dir=stmt + unique int id: @pound_assert_stmt, + int condition: @expr_or_none ref, + string message: string ref +); + +return_stmts( //dir=stmt + unique int id: @return_stmt +); + +#keyset[id] +return_stmt_results( //dir=stmt + int id: @return_stmt ref, + int result: @expr_or_none ref +); + +then_stmts( //dir=stmt + unique int id: @then_stmt, + int result: @expr_or_none ref +); + +throw_stmts( //dir=stmt + unique int id: @throw_stmt, + int sub_expr: @expr_or_none ref +); + +yield_stmts( //dir=stmt + unique int id: @yield_stmt +); + +#keyset[id, index] +yield_stmt_results( //dir=stmt + int id: @yield_stmt ref, + int index: int ref, + int result: @expr_or_none ref +); + +do_catch_stmts( //dir=stmt + unique int id: @do_catch_stmt, + int body: @stmt_or_none ref +); + +#keyset[id, index] +do_catch_stmt_catches( //dir=stmt + int id: @do_catch_stmt ref, + int index: int ref, + int catch: @case_stmt_or_none ref +); + +do_stmts( //dir=stmt + unique int id: @do_stmt, + int body: @brace_stmt_or_none ref +); + +for_each_stmts( //dir=stmt + unique int id: @for_each_stmt, + int pattern: @pattern_or_none ref, + int body: @brace_stmt_or_none ref +); + +#keyset[id, index] +for_each_stmt_variables( //dir=stmt + int id: @for_each_stmt ref, + int index: int ref, + int variable: @var_decl_or_none ref +); + +#keyset[id] +for_each_stmt_wheres( //dir=stmt + int id: @for_each_stmt ref, + int where: @expr_or_none ref +); + +#keyset[id] +for_each_stmt_iterator_vars( //dir=stmt + int id: @for_each_stmt ref, + int iteratorVar: @pattern_binding_decl_or_none ref +); + +#keyset[id] +for_each_stmt_next_calls( //dir=stmt + int id: @for_each_stmt ref, + int nextCall: @expr_or_none ref +); + +@labeled_conditional_stmt = + @guard_stmt +| @if_stmt +| @while_stmt +; + +#keyset[id] +labeled_conditional_stmts( //dir=stmt + int id: @labeled_conditional_stmt ref, + int condition: @stmt_condition_or_none ref +); + +repeat_while_stmts( //dir=stmt + unique int id: @repeat_while_stmt, + int condition: @expr_or_none ref, + int body: @stmt_or_none ref +); + +switch_stmts( //dir=stmt + unique int id: @switch_stmt, + int expr: @expr_or_none ref +); + +#keyset[id, index] +switch_stmt_cases( //dir=stmt + int id: @switch_stmt ref, + int index: int ref, + int case_: @case_stmt_or_none ref +); + +guard_stmts( //dir=stmt + unique int id: @guard_stmt, + int body: @brace_stmt_or_none ref +); + +if_stmts( //dir=stmt + unique int id: @if_stmt, + int then: @stmt_or_none ref +); + +#keyset[id] +if_stmt_elses( //dir=stmt + int id: @if_stmt ref, + int else: @stmt_or_none ref +); + +while_stmts( //dir=stmt + unique int id: @while_stmt, + int body: @stmt_or_none ref +); + +@type = + @any_function_type +| @any_generic_type +| @any_metatype_type +| @builtin_type +| @dependent_member_type +| @dynamic_self_type +| @error_type +| @existential_type +| @in_out_type +| @integer_type +| @l_value_type +| @module_type +| @pack_element_type +| @pack_expansion_type +| @pack_type +| @parameterized_protocol_type +| @protocol_composition_type +| @reference_storage_type +| @substitutable_type +| @sugar_type +| @tuple_type +| @unresolved_type +; + +#keyset[id] +types( //dir=type + int id: @type ref, + string name: string ref, + int canonical_type: @type_or_none ref +); + +type_reprs( //dir=type + unique int id: @type_repr, + int type_: @type_or_none ref +); + +@any_function_type = + @function_type +| @generic_function_type +; + +#keyset[id] +any_function_types( //dir=type + int id: @any_function_type ref, + int result: @type_or_none ref +); + +#keyset[id, index] +any_function_type_param_types( //dir=type + int id: @any_function_type ref, + int index: int ref, + int param_type: @type_or_none ref +); + +#keyset[id] +any_function_type_is_throwing( //dir=type + int id: @any_function_type ref +); + +#keyset[id] +any_function_type_is_async( //dir=type + int id: @any_function_type ref +); + +@any_generic_type = + @nominal_or_bound_generic_nominal_type +| @unbound_generic_type +; + +#keyset[id] +any_generic_types( //dir=type + int id: @any_generic_type ref, + int declaration: @generic_type_decl_or_none ref +); + +#keyset[id] +any_generic_type_parents( //dir=type + int id: @any_generic_type ref, + int parent: @type_or_none ref +); + +@any_metatype_type = + @existential_metatype_type +| @metatype_type +; + +@builtin_type = + @any_builtin_integer_type +| @builtin_bridge_object_type +| @builtin_default_actor_storage_type +| @builtin_executor_type +| @builtin_float_type +| @builtin_generic_type +| @builtin_job_type +| @builtin_native_object_type +| @builtin_raw_pointer_type +| @builtin_raw_unsafe_continuation_type +| @builtin_unsafe_value_buffer_type +| @builtin_vector_type +; + +dependent_member_types( //dir=type + unique int id: @dependent_member_type, + int base_type: @type_or_none ref, + int associated_type_decl: @associated_type_decl_or_none ref +); + +dynamic_self_types( //dir=type + unique int id: @dynamic_self_type, + int static_self_type: @type_or_none ref +); + +error_types( //dir=type + unique int id: @error_type +); + +existential_types( //dir=type + unique int id: @existential_type, + int constraint: @type_or_none ref +); + +in_out_types( //dir=type + unique int id: @in_out_type, + int object_type: @type_or_none ref +); + +integer_types( //dir=type + unique int id: @integer_type, + string value: string ref +); + +l_value_types( //dir=type + unique int id: @l_value_type, + int object_type: @type_or_none ref +); + +module_types( //dir=type + unique int id: @module_type, + int module: @module_decl_or_none ref +); + +pack_element_types( //dir=type + unique int id: @pack_element_type, + int pack_type: @type_or_none ref +); + +pack_expansion_types( //dir=type + unique int id: @pack_expansion_type, + int pattern_type: @type_or_none ref, + int count_type: @type_or_none ref +); + +pack_types( //dir=type + unique int id: @pack_type +); + +#keyset[id, index] +pack_type_elements( //dir=type + int id: @pack_type ref, + int index: int ref, + int element: @type_or_none ref +); + +parameterized_protocol_types( //dir=type + unique int id: @parameterized_protocol_type, + int base: @protocol_type_or_none ref +); + +#keyset[id, index] +parameterized_protocol_type_args( //dir=type + int id: @parameterized_protocol_type ref, + int index: int ref, + int arg: @type_or_none ref +); + +protocol_composition_types( //dir=type + unique int id: @protocol_composition_type +); + +#keyset[id, index] +protocol_composition_type_members( //dir=type + int id: @protocol_composition_type ref, + int index: int ref, + int member: @type_or_none ref +); + +@reference_storage_type = + @unmanaged_storage_type +| @unowned_storage_type +| @weak_storage_type +; + +#keyset[id] +reference_storage_types( //dir=type + int id: @reference_storage_type ref, + int referent_type: @type_or_none ref +); + +@substitutable_type = + @archetype_type +| @generic_type_param_type +; + +@sugar_type = + @paren_type +| @syntax_sugar_type +| @type_alias_type +; + +tuple_types( //dir=type + unique int id: @tuple_type +); + +#keyset[id, index] +tuple_type_types( //dir=type + int id: @tuple_type ref, + int index: int ref, + int type_: @type_or_none ref +); + +#keyset[id, index] +tuple_type_names( //dir=type + int id: @tuple_type ref, + int index: int ref, + string name: string ref +); + +unresolved_types( //dir=type + unique int id: @unresolved_type +); + +@any_builtin_integer_type = + @builtin_integer_literal_type +| @builtin_integer_type +; + +@archetype_type = + @local_archetype_type +| @opaque_type_archetype_type +| @pack_archetype_type +| @primary_archetype_type +; + +#keyset[id] +archetype_types( //dir=type + int id: @archetype_type ref, + int interface_type: @type_or_none ref +); + +#keyset[id] +archetype_type_superclasses( //dir=type + int id: @archetype_type ref, + int superclass: @type_or_none ref +); + +#keyset[id, index] +archetype_type_protocols( //dir=type + int id: @archetype_type ref, + int index: int ref, + int protocol: @protocol_decl_or_none ref +); + +builtin_bridge_object_types( //dir=type + unique int id: @builtin_bridge_object_type +); + +builtin_default_actor_storage_types( //dir=type + unique int id: @builtin_default_actor_storage_type +); + +builtin_executor_types( //dir=type + unique int id: @builtin_executor_type +); + +builtin_float_types( //dir=type + unique int id: @builtin_float_type +); + +@builtin_generic_type = + @builtin_fixed_array_type +; + +builtin_job_types( //dir=type + unique int id: @builtin_job_type +); + +builtin_native_object_types( //dir=type + unique int id: @builtin_native_object_type +); + +builtin_raw_pointer_types( //dir=type + unique int id: @builtin_raw_pointer_type +); + +builtin_raw_unsafe_continuation_types( //dir=type + unique int id: @builtin_raw_unsafe_continuation_type +); + +builtin_unsafe_value_buffer_types( //dir=type + unique int id: @builtin_unsafe_value_buffer_type +); + +builtin_vector_types( //dir=type + unique int id: @builtin_vector_type +); + +existential_metatype_types( //dir=type + unique int id: @existential_metatype_type +); + +function_types( //dir=type + unique int id: @function_type +); + +generic_function_types( //dir=type + unique int id: @generic_function_type +); + +#keyset[id, index] +generic_function_type_generic_params( //dir=type + int id: @generic_function_type ref, + int index: int ref, + int generic_param: @generic_type_param_type_or_none ref +); + +generic_type_param_types( //dir=type + unique int id: @generic_type_param_type +); + +metatype_types( //dir=type + unique int id: @metatype_type +); + +@nominal_or_bound_generic_nominal_type = + @bound_generic_type +| @nominal_type +; + +paren_types( //dir=type + unique int id: @paren_type, + int type_: @type_or_none ref +); + +@syntax_sugar_type = + @dictionary_type +| @inline_array_type +| @unary_syntax_sugar_type +; + +type_alias_types( //dir=type + unique int id: @type_alias_type, + int decl: @type_alias_decl_or_none ref +); + +unbound_generic_types( //dir=type + unique int id: @unbound_generic_type +); + +unmanaged_storage_types( //dir=type + unique int id: @unmanaged_storage_type +); + +unowned_storage_types( //dir=type + unique int id: @unowned_storage_type +); + +weak_storage_types( //dir=type + unique int id: @weak_storage_type +); + +@bound_generic_type = + @bound_generic_class_type +| @bound_generic_enum_type +| @bound_generic_struct_type +; + +#keyset[id, index] +bound_generic_type_arg_types( //dir=type + int id: @bound_generic_type ref, + int index: int ref, + int arg_type: @type_or_none ref +); + +builtin_fixed_array_types( //dir=type + unique int id: @builtin_fixed_array_type +); + +builtin_integer_literal_types( //dir=type + unique int id: @builtin_integer_literal_type +); + +builtin_integer_types( //dir=type + unique int id: @builtin_integer_type +); + +#keyset[id] +builtin_integer_type_widths( //dir=type + int id: @builtin_integer_type ref, + int width: int ref +); + +dictionary_types( //dir=type + unique int id: @dictionary_type, + int key_type: @type_or_none ref, + int value_type: @type_or_none ref +); + +inline_array_types( //dir=type + unique int id: @inline_array_type, + int count_type: @type_or_none ref, + int element_type: @type_or_none ref +); + +@local_archetype_type = + @element_archetype_type +| @existential_archetype_type +; + +@nominal_type = + @class_type +| @enum_type +| @protocol_type +| @struct_type +; + +opaque_type_archetype_types( //dir=type + unique int id: @opaque_type_archetype_type, + int declaration: @opaque_type_decl_or_none ref +); + +pack_archetype_types( //dir=type + unique int id: @pack_archetype_type +); + +primary_archetype_types( //dir=type + unique int id: @primary_archetype_type +); + +@unary_syntax_sugar_type = + @array_slice_type +| @optional_type +| @variadic_sequence_type +; + +#keyset[id] +unary_syntax_sugar_types( //dir=type + int id: @unary_syntax_sugar_type ref, + int base_type: @type_or_none ref +); + +array_slice_types( //dir=type + unique int id: @array_slice_type +); + +bound_generic_class_types( //dir=type + unique int id: @bound_generic_class_type +); + +bound_generic_enum_types( //dir=type + unique int id: @bound_generic_enum_type +); + +bound_generic_struct_types( //dir=type + unique int id: @bound_generic_struct_type +); + +class_types( //dir=type + unique int id: @class_type +); + +element_archetype_types( //dir=type + unique int id: @element_archetype_type +); + +enum_types( //dir=type + unique int id: @enum_type +); + +existential_archetype_types( //dir=type + unique int id: @existential_archetype_type +); + +optional_types( //dir=type + unique int id: @optional_type +); + +protocol_types( //dir=type + unique int id: @protocol_type +); + +struct_types( //dir=type + unique int id: @struct_type +); + +variadic_sequence_types( //dir=type + unique int id: @variadic_sequence_type +); + +@accessor_or_none = + @accessor +| @unspecified_element +; + +@argument_or_none = + @argument +| @unspecified_element +; + +@associated_type_decl_or_none = + @associated_type_decl +| @unspecified_element +; + +@ast_node_or_none = + @ast_node +| @unspecified_element +; + +@availability_info_or_none = + @availability_info +| @unspecified_element +; + +@availability_spec_or_none = + @availability_spec +| @unspecified_element +; + +@brace_stmt_or_none = + @brace_stmt +| @unspecified_element +; + +@captured_decl_or_none = + @captured_decl +| @unspecified_element +; + +@case_label_item_or_none = + @case_label_item +| @unspecified_element +; + +@case_stmt_or_none = + @case_stmt +| @unspecified_element +; + +@closure_expr_or_none = + @closure_expr +| @unspecified_element +; + +@condition_element_or_none = + @condition_element +| @unspecified_element +; + +@decl_or_none = + @decl +| @unspecified_element +; + +@enum_element_decl_or_none = + @enum_element_decl +| @unspecified_element +; + +@expr_or_none = + @expr +| @unspecified_element +; + +@file_or_none = + @file +| @unspecified_element +; + +@function_or_none = + @function +| @unspecified_element +; + +@generic_type_decl_or_none = + @generic_type_decl +| @unspecified_element +; + +@generic_type_param_decl_or_none = + @generic_type_param_decl +| @unspecified_element +; + +@generic_type_param_type_or_none = + @generic_type_param_type +| @unspecified_element +; + +@initializer_or_none = + @initializer +| @unspecified_element +; + +@key_path_component_or_none = + @key_path_component +| @unspecified_element +; + +@location_or_none = + @location +| @unspecified_element +; + +@macro_role_or_none = + @macro_role +| @unspecified_element +; + +@module_decl_or_none = + @module_decl +| @unspecified_element +; + +@nominal_type_decl_or_none = + @nominal_type_decl +| @unspecified_element +; + +@opaque_type_decl_or_none = + @opaque_type_decl +| @unspecified_element +; + +@opaque_value_expr_or_none = + @opaque_value_expr +| @unspecified_element +; + +@param_decl_or_none = + @param_decl +| @unspecified_element +; + +@pattern_or_none = + @pattern +| @unspecified_element +; + +@pattern_binding_decl_or_none = + @pattern_binding_decl +| @unspecified_element +; + +@precedence_group_decl_or_none = + @precedence_group_decl +| @unspecified_element +; + +@protocol_decl_or_none = + @protocol_decl +| @unspecified_element +; + +@protocol_type_or_none = + @protocol_type +| @unspecified_element +; + +@stmt_or_none = + @stmt +| @unspecified_element +; + +@stmt_condition_or_none = + @stmt_condition +| @unspecified_element +; + +@string_literal_expr_or_none = + @string_literal_expr +| @unspecified_element +; + +@tap_expr_or_none = + @tap_expr +| @unspecified_element +; + +@type_or_none = + @type +| @unspecified_element +; + +@type_alias_decl_or_none = + @type_alias_decl +| @unspecified_element +; + +@type_repr_or_none = + @type_repr +| @unspecified_element +; + +@value_decl_or_none = + @unspecified_element +| @value_decl +; + +@var_decl_or_none = + @unspecified_element +| @var_decl +; diff --git a/swift/downgrades/5738be6bb04742c424efdbf9f4de11f0b10fa37d/upgrade.properties b/swift/downgrades/5738be6bb04742c424efdbf9f4de11f0b10fa37d/upgrade.properties new file mode 100644 index 000000000000..0e7d432a3500 --- /dev/null +++ b/swift/downgrades/5738be6bb04742c424efdbf9f4de11f0b10fa37d/upgrade.properties @@ -0,0 +1,3 @@ +description: Support BuiltinFixedArrayType arguments +compatibility: full +builtin_fixed_array_types.rel: run builtin_fixed_array_types.qlo diff --git a/swift/extractor/translators/TypeTranslator.cpp b/swift/extractor/translators/TypeTranslator.cpp index 5d2d1e39667e..ccd1a84f3cf9 100644 --- a/swift/extractor/translators/TypeTranslator.cpp +++ b/swift/extractor/translators/TypeTranslator.cpp @@ -235,10 +235,10 @@ codeql::BuiltinIntegerType TypeTranslator::translateBuiltinIntegerType( codeql::BuiltinFixedArrayType TypeTranslator::translateBuiltinFixedArrayType( const swift::BuiltinFixedArrayType& type) { - // currently the translate dispatching mechanism does not go up more than one step in the - // hierarchy so we need to put this explicitly here, as BuiltinFixedArrayType derives from - // BuiltinGenericType which then derives from BuiltinType - return translateBuiltinType(type); + auto entry = createTypeEntry(type); + entry.size = dispatcher.fetchLabel(type.getSize()); + entry.element_type = dispatcher.fetchLabel(type.getElementType()); + return entry; } codeql::ExistentialArchetypeType TypeTranslator::translateExistentialArchetypeType( diff --git a/swift/ql/.generated.list b/swift/ql/.generated.list index a666c64948d4..ea1cb6f571b2 100644 --- a/swift/ql/.generated.list +++ b/swift/ql/.generated.list @@ -539,7 +539,7 @@ lib/codeql/swift/elements/type/BoundGenericType.qll 089e5e8d09c62a23d575dcab68cd lib/codeql/swift/elements/type/BuiltinBridgeObjectType.qll b0064e09b53efe801b0bf950ff00698a84e2f714e853e4859ed5f3246025a1bd aa14b6ae2ec510c4ddd2cc073bf971809536ab8fd8763fd05bd171b0bbe83860 lib/codeql/swift/elements/type/BuiltinDefaultActorStorageType.qll e867a9d0b2c61b7eb61f5143c78e31f8d98d3245d79e0e3281d4c172175f496b 265e87f2e37ca968af572cc619294d1ee91dd66ebb0d1bb1ba9ab7159de52f0b lib/codeql/swift/elements/type/BuiltinExecutorType.qll 2b141553bbc02a00d97579ba9d0e38fa0978d40ce954b0caf64826aa259dbc08 a81465fd0e87ad5b8e418d8f21c337b3e96388a3b92b3332f0d6b0ff7663e5c7 -lib/codeql/swift/elements/type/BuiltinFixedArrayType.qll 9d32f49cd7169d12c00cde31433897e8f8ada62132430020dc2525a97673cf57 0236f494f6ce77b04a80e405d11f5b39b1e45ea9c50a6ee42dd96407516b448f +lib/codeql/swift/elements/type/BuiltinFixedArrayType.qll d7ee816a646cde2be9141d89eadc86a144aa3f983d0562f1b478448b0bda54fc 95639bfde60f1401ca741e4930ab7f935b0aa4f4bdb7d8ec09cd2010037c0aca lib/codeql/swift/elements/type/BuiltinFloatType.qll 81f49325077b75cea682904ddab24d1b2fdc5c93b0b28830c08e866d5c9307a7 e26a348d66e3824ccd92729624ce2b2ebc82a844aa47035e0a963a62b08b772d lib/codeql/swift/elements/type/BuiltinGenericType.qll 108682444f5f28b64b7caa16254fd4d7418813bc9e7f6a17477b13fe37293d40 de3fa330516684f0cfd848101b3a93f83b2d8a9f00b35dae70d2b56cb5414923 lib/codeql/swift/elements/type/BuiltinIntegerLiteralType.qll 34ee35733cf26f90d799a79f8a2362b199ea2ecb6ba83eb5678dda9eb3ed255f e33fdb27d3c22d441277b66ba74136cb88e1da25a2146391b258c68f7fbf5dd3 @@ -741,7 +741,7 @@ lib/codeql/swift/generated/Location.qll 5e20316c3e480ddfe632b7e88e016c19f10a67df lib/codeql/swift/generated/MacroRole.qll facf907e75490d69cd401c491215e4719324d751f40ea46c86ccf24cf3663c1f 969d8d4b44e3f1a9c193a152a4d83a303e56d2dbb871fc920c47a33f699cf018 lib/codeql/swift/generated/ParentChild.qll 669d39245f2cb735cfd4bcebdb551ef8f334fef5297c5834a8b09ebfa655856e 59b283c8a30b6b364c853302ab919ea713e0289e7b793b08b46fc87178d14a6a lib/codeql/swift/generated/PureSynthConstructors.qll bc31a6c4d142fa3fbdcae69d5ba6f1cec00eb9ad92b46c8d7b91ebfa7ef6c1f4 bc31a6c4d142fa3fbdcae69d5ba6f1cec00eb9ad92b46c8d7b91ebfa7ef6c1f4 -lib/codeql/swift/generated/Raw.qll c209a47a66f24f54bdfb5adf591dd171b2dbe9e30936a2355160526b9f756399 378e7492ca885f46092628ca26afa76c909deb88f092fe56404fea8f94d133b0 +lib/codeql/swift/generated/Raw.qll 0090c6509cb3fa5a67c996a2fc22e6338caef19701ca19463965b55b3c63096f 578329fa3abbabbadbff5e364e9c8d7ad76b41d4c17ad76e0660d41f48746659 lib/codeql/swift/generated/Synth.qll e30b50d2645d9c36719d81f1be70712c7c6e89a3f5b4a5ae894411e045d05bff 9bd0c9c90532db97cde9553dde4089b7cf12c462c690d853fa40cb36ea112c21 lib/codeql/swift/generated/SynthConstructors.qll c40f01e1331bdbe238620a41d17409cefe34a6b23066708ef5d74f8631b54f48 c40f01e1331bdbe238620a41d17409cefe34a6b23066708ef5d74f8631b54f48 lib/codeql/swift/generated/UnknownFile.qll 247ddf2ebb49ce5ed4bf7bf91a969ddff37de6c78d43d8affccaf7eb586e06f2 452b29f0465ef45e978ef8b647b75e5a2a1e53f2a568fc003bc8f52f73b3fa4d @@ -980,7 +980,7 @@ lib/codeql/swift/generated/type/BoundGenericType.qll 5e7a2210b766437ca301f9675f7 lib/codeql/swift/generated/type/BuiltinBridgeObjectType.qll 97f30768a8788ec4547ce8a8f06fdd165286177e3819bf2e6590b9479f5bada4 ea3161c34d1d18783b38deac43c73048e4510015307d93f77cd95c149e988846 lib/codeql/swift/generated/type/BuiltinDefaultActorStorageType.qll 10e49de9a8bc3e67285c111f7869c8baceb70e478661d5557ebc8c86f41b4aec 1a0ce85eb325f666fbc2ac49c6f994efd552de6f2105e0a7ba9a10e39f3d1591 lib/codeql/swift/generated/type/BuiltinExecutorType.qll 8f58d4d413910aded894bfa9b54748adfc2b78f4ee271ac6db5f5b0214f36a66 69da70d76146155529b7b2426b3a459abe318f887240aac1aed5719fda5f386a -lib/codeql/swift/generated/type/BuiltinFixedArrayType.qll 2ae9d1ef215c725bc27f69d25247d360ee8aa0aa5a757df6b8e9734821084435 2f1caacf0f95c8f863296f0cc0a56abac4bf58ddc68e9ed63b5d8672fd21172d +lib/codeql/swift/generated/type/BuiltinFixedArrayType.qll 96ff3c5b77ecc92689879c211dce7d6f7a4e3288ff168ac31a723ecf9619da9e c4abf2e438e3924f2b412d78178faf2384004f589caf0ccbdc1f3e712a211a4a lib/codeql/swift/generated/type/BuiltinFloatType.qll 6306a806107bba052fe0b1335c8c4d4391cdb6aa5f42f14c70743113928c4c36 3265d571630c0437e5d81ba20a0b6112b7e88ee3ffca737557186001cf8aa04a lib/codeql/swift/generated/type/BuiltinGenericType.qll 6cd1b5da102e221f25a301c284ccc9cbd64d595596787df1a4fd3f2a92ded077 3ae4c8676a868205c5334646e395b8fc4e561ee2f4c115003ae2f4ed83197b76 lib/codeql/swift/generated/type/BuiltinIntegerLiteralType.qll 3f49aac9b81c440b902a658294cf95aff5cb79b0d6cee8b1abd8a08ad45c7966 6c184dcf5d9376f193f07fe4722ea7cab51f1dfdef4d72c3042842d73cca31fe @@ -1190,6 +1190,7 @@ test/extractor-tests/generated/type/ArraySliceType/MISSING_SOURCE.txt 35fb32ea53 test/extractor-tests/generated/type/BoundGenericClassType/MISSING_SOURCE.txt 35fb32ea5393152eb7a875b20b4e3e4b8c7a997a8959c32417140d57a16a052d 35fb32ea5393152eb7a875b20b4e3e4b8c7a997a8959c32417140d57a16a052d test/extractor-tests/generated/type/BoundGenericEnumType/MISSING_SOURCE.txt 35fb32ea5393152eb7a875b20b4e3e4b8c7a997a8959c32417140d57a16a052d 35fb32ea5393152eb7a875b20b4e3e4b8c7a997a8959c32417140d57a16a052d test/extractor-tests/generated/type/BoundGenericStructType/MISSING_SOURCE.txt 35fb32ea5393152eb7a875b20b4e3e4b8c7a997a8959c32417140d57a16a052d 35fb32ea5393152eb7a875b20b4e3e4b8c7a997a8959c32417140d57a16a052d +test/extractor-tests/generated/type/BuiltinFixedArrayType/BuiltinFixedArrayType.ql fe912eb6996342dd1b7188f560567eab623b888c3160110235e20b2821aa6155 42050d820b80c5f65714ab2bdbc70791b37569e5a7b7839b5b1826a1bf4fe344 test/extractor-tests/generated/type/BuiltinIntegerType/BuiltinIntegerType.ql 78d10029fa696ec4bcc48ea666923b98aa120a4a66004c491314f4abf283eac4 d23455d2ec38a1bba726d2e8fb349dfa2cdc52b8751d9caabb438d0dcdff6ab7 test/extractor-tests/generated/type/BuiltinType/BuiltinType.ql 83a861b3ad63bed272f892031adc5bc651ed244cfcd53fc3090a2cea3f9d6a8d 197689774e28406b4bd798059fc57078695b43ca0833a7a4ef9dabd519e62d0d test/extractor-tests/generated/type/ClassType/MISSING_SOURCE.txt 35fb32ea5393152eb7a875b20b4e3e4b8c7a997a8959c32417140d57a16a052d 35fb32ea5393152eb7a875b20b4e3e4b8c7a997a8959c32417140d57a16a052d diff --git a/swift/ql/.gitattributes b/swift/ql/.gitattributes index 212221509d0b..6810b5061d5c 100644 --- a/swift/ql/.gitattributes +++ b/swift/ql/.gitattributes @@ -1192,6 +1192,7 @@ /test/extractor-tests/generated/type/BoundGenericClassType/MISSING_SOURCE.txt linguist-generated /test/extractor-tests/generated/type/BoundGenericEnumType/MISSING_SOURCE.txt linguist-generated /test/extractor-tests/generated/type/BoundGenericStructType/MISSING_SOURCE.txt linguist-generated +/test/extractor-tests/generated/type/BuiltinFixedArrayType/BuiltinFixedArrayType.ql linguist-generated /test/extractor-tests/generated/type/BuiltinIntegerType/BuiltinIntegerType.ql linguist-generated /test/extractor-tests/generated/type/BuiltinType/BuiltinType.ql linguist-generated /test/extractor-tests/generated/type/ClassType/MISSING_SOURCE.txt linguist-generated diff --git a/swift/ql/lib/codeql/swift/elements/type/BuiltinFixedArrayType.qll b/swift/ql/lib/codeql/swift/elements/type/BuiltinFixedArrayType.qll index 996c38d127bf..8723de5cc49d 100644 --- a/swift/ql/lib/codeql/swift/elements/type/BuiltinFixedArrayType.qll +++ b/swift/ql/lib/codeql/swift/elements/type/BuiltinFixedArrayType.qll @@ -5,6 +5,7 @@ private import internal.BuiltinFixedArrayTypeImpl import codeql.swift.elements.type.BuiltinGenericType +import codeql.swift.elements.type.Type /** * A builtin type representing N values stored contiguously. diff --git a/swift/ql/lib/codeql/swift/generated/Raw.qll b/swift/ql/lib/codeql/swift/generated/Raw.qll index c2c65234cd4b..3e0fa95a327a 100644 --- a/swift/ql/lib/codeql/swift/generated/Raw.qll +++ b/swift/ql/lib/codeql/swift/generated/Raw.qll @@ -6537,6 +6537,16 @@ module Raw { */ class BuiltinFixedArrayType extends @builtin_fixed_array_type, BuiltinGenericType { override string toString() { result = "BuiltinFixedArrayType" } + + /** + * Gets the size of this builtin fixed array type. + */ + Type getSize() { builtin_fixed_array_types(this, result, _) } + + /** + * Gets the element type of this builtin fixed array type. + */ + Type getElementType() { builtin_fixed_array_types(this, _, result) } } private Element getImmediateChildOfBuiltinFixedArrayType(BuiltinFixedArrayType e, int index) { diff --git a/swift/ql/lib/codeql/swift/generated/type/BuiltinFixedArrayType.qll b/swift/ql/lib/codeql/swift/generated/type/BuiltinFixedArrayType.qll index 5ed9491607af..e7a2d0ef0d32 100644 --- a/swift/ql/lib/codeql/swift/generated/type/BuiltinFixedArrayType.qll +++ b/swift/ql/lib/codeql/swift/generated/type/BuiltinFixedArrayType.qll @@ -7,6 +7,7 @@ private import codeql.swift.generated.Synth private import codeql.swift.generated.Raw import codeql.swift.elements.type.internal.BuiltinGenericTypeImpl::Impl as BuiltinGenericTypeImpl +import codeql.swift.elements.type.Type /** * INTERNAL: This module contains the fully generated definition of `BuiltinFixedArrayType` and should not @@ -22,5 +23,51 @@ module Generated { BuiltinGenericTypeImpl::BuiltinGenericType { override string getAPrimaryQlClass() { result = "BuiltinFixedArrayType" } + + /** + * Gets the size of this builtin fixed array type. + * + * This includes nodes from the "hidden" AST. It can be overridden in subclasses to change the + * behavior of both the `Immediate` and non-`Immediate` versions. + */ + Type getImmediateSize() { + result = + Synth::convertTypeFromRaw(Synth::convertBuiltinFixedArrayTypeToRaw(this) + .(Raw::BuiltinFixedArrayType) + .getSize()) + } + + /** + * Gets the size of this builtin fixed array type. + */ + final Type getSize() { + exists(Type immediate | + immediate = this.getImmediateSize() and + if exists(this.getResolveStep()) then result = immediate else result = immediate.resolve() + ) + } + + /** + * Gets the element type of this builtin fixed array type. + * + * This includes nodes from the "hidden" AST. It can be overridden in subclasses to change the + * behavior of both the `Immediate` and non-`Immediate` versions. + */ + Type getImmediateElementType() { + result = + Synth::convertTypeFromRaw(Synth::convertBuiltinFixedArrayTypeToRaw(this) + .(Raw::BuiltinFixedArrayType) + .getElementType()) + } + + /** + * Gets the element type of this builtin fixed array type. + */ + final Type getElementType() { + exists(Type immediate | + immediate = this.getImmediateElementType() and + if exists(this.getResolveStep()) then result = immediate else result = immediate.resolve() + ) + } } } diff --git a/swift/ql/lib/swift.dbscheme b/swift/ql/lib/swift.dbscheme index ee3053b673c9..5738be6bb047 100644 --- a/swift/ql/lib/swift.dbscheme +++ b/swift/ql/lib/swift.dbscheme @@ -2559,7 +2559,9 @@ bound_generic_type_arg_types( //dir=type ); builtin_fixed_array_types( //dir=type - unique int id: @builtin_fixed_array_type + unique int id: @builtin_fixed_array_type, + int size: @type_or_none ref, + int element_type: @type_or_none ref ); builtin_integer_literal_types( //dir=type diff --git a/swift/ql/lib/upgrades/ee3053b673c901a325b361b18c50b18342752bf8/old.dbscheme b/swift/ql/lib/upgrades/ee3053b673c901a325b361b18c50b18342752bf8/old.dbscheme new file mode 100644 index 000000000000..ee3053b673c9 --- /dev/null +++ b/swift/ql/lib/upgrades/ee3053b673c901a325b361b18c50b18342752bf8/old.dbscheme @@ -0,0 +1,2889 @@ +// generated by codegen/codegen.py, do not edit + +// from prefix.dbscheme +/** + * The source location of the snapshot. + */ +sourceLocationPrefix( + string prefix: string ref +); + + +// from schema.py + +@element = + @file +| @generic_context +| @locatable +| @location +| @type +; + +#keyset[id] +element_is_unknown( + int id: @element ref +); + +@file = + @db_file +; + +#keyset[id] +files( + int id: @file ref, + string name: string ref +); + +#keyset[id] +file_is_successfully_extracted( + int id: @file ref +); + +@locatable = + @argument +| @ast_node +| @comment +| @diagnostics +| @error_element +; + +#keyset[id] +locatable_locations( + int id: @locatable ref, + int location: @location_or_none ref +); + +@location = + @db_location +; + +#keyset[id] +locations( + int id: @location ref, + int file: @file_or_none ref, + int start_line: int ref, + int start_column: int ref, + int end_line: int ref, + int end_column: int ref +); + +@ast_node = + @availability_info +| @availability_spec +| @callable +| @case_label_item +| @condition_element +| @decl +| @expr +| @key_path_component +| @macro_role +| @pattern +| @stmt +| @stmt_condition +| @type_repr +; + +comments( + unique int id: @comment, + string text: string ref +); + +db_files( + unique int id: @db_file +); + +db_locations( + unique int id: @db_location +); + +diagnostics( + unique int id: @diagnostics, + string text: string ref, + int kind: int ref +); + +@error_element = + @error_expr +| @error_type +| @overloaded_decl_ref_expr +| @unresolved_decl_ref_expr +| @unresolved_dot_expr +| @unresolved_member_chain_result_expr +| @unresolved_member_expr +| @unresolved_pattern_expr +| @unresolved_specialize_expr +| @unresolved_type +| @unresolved_type_conversion_expr +| @unspecified_element +; + +availability_infos( + unique int id: @availability_info +); + +#keyset[id] +availability_info_is_unavailable( + int id: @availability_info ref +); + +#keyset[id, index] +availability_info_specs( + int id: @availability_info ref, + int index: int ref, + int spec: @availability_spec_or_none ref +); + +availability_specs( + unique int id: @availability_spec +); + +#keyset[id] +availability_spec_platforms( + int id: @availability_spec ref, + string platform: string ref +); + +#keyset[id] +availability_spec_versions( + int id: @availability_spec ref, + string version: string ref +); + +#keyset[id] +availability_spec_is_wildcard( + int id: @availability_spec ref +); + +@callable = + @closure_expr +| @function +; + +#keyset[id] +callable_names( + int id: @callable ref, + string name: string ref +); + +#keyset[id] +callable_self_params( + int id: @callable ref, + int self_param: @param_decl_or_none ref +); + +#keyset[id, index] +callable_params( + int id: @callable ref, + int index: int ref, + int param: @param_decl_or_none ref +); + +#keyset[id] +callable_bodies( + int id: @callable ref, + int body: @brace_stmt_or_none ref +); + +#keyset[id, index] +callable_captures( + int id: @callable ref, + int index: int ref, + int capture: @captured_decl_or_none ref +); + +key_path_components( + unique int id: @key_path_component, + int kind: int ref, + int component_type: @type_or_none ref +); + +#keyset[id, index] +key_path_component_subscript_arguments( + int id: @key_path_component ref, + int index: int ref, + int subscript_argument: @argument_or_none ref +); + +#keyset[id] +key_path_component_tuple_indices( + int id: @key_path_component ref, + int tuple_index: int ref +); + +#keyset[id] +key_path_component_decl_refs( + int id: @key_path_component ref, + int decl_ref: @value_decl_or_none ref +); + +macro_roles( + unique int id: @macro_role, + int kind: int ref, + int macro_syntax: int ref +); + +#keyset[id, index] +macro_role_conformances( + int id: @macro_role ref, + int index: int ref, + int conformance: @expr_or_none ref +); + +#keyset[id, index] +macro_role_names( + int id: @macro_role ref, + int index: int ref, + string name: string ref +); + +unspecified_elements( + unique int id: @unspecified_element, + string property: string ref, + string error: string ref +); + +#keyset[id] +unspecified_element_parents( + int id: @unspecified_element ref, + int parent: @element ref +); + +#keyset[id] +unspecified_element_indices( + int id: @unspecified_element ref, + int index: int ref +); + +#keyset[id, index] +unspecified_element_children( + int id: @unspecified_element ref, + int index: int ref, + int child: @ast_node_or_none ref +); + +@decl = + @captured_decl +| @enum_case_decl +| @extension_decl +| @if_config_decl +| @import_decl +| @missing_member_decl +| @operator_decl +| @pattern_binding_decl +| @pound_diagnostic_decl +| @precedence_group_decl +| @top_level_code_decl +| @using_decl +| @value_decl +; + +#keyset[id] +decls( //dir=decl + int id: @decl ref, + int module: @module_decl_or_none ref +); + +#keyset[id, index] +decl_members( //dir=decl + int id: @decl ref, + int index: int ref, + int member: @decl_or_none ref +); + +@generic_context = + @extension_decl +| @function +| @generic_type_decl +| @macro_decl +| @subscript_decl +; + +#keyset[id, index] +generic_context_generic_type_params( //dir=decl + int id: @generic_context ref, + int index: int ref, + int generic_type_param: @generic_type_param_decl_or_none ref +); + +captured_decls( //dir=decl + unique int id: @captured_decl, + int decl: @value_decl_or_none ref +); + +#keyset[id] +captured_decl_is_direct( //dir=decl + int id: @captured_decl ref +); + +#keyset[id] +captured_decl_is_escaping( //dir=decl + int id: @captured_decl ref +); + +enum_case_decls( //dir=decl + unique int id: @enum_case_decl +); + +#keyset[id, index] +enum_case_decl_elements( //dir=decl + int id: @enum_case_decl ref, + int index: int ref, + int element: @enum_element_decl_or_none ref +); + +extension_decls( //dir=decl + unique int id: @extension_decl, + int extended_type_decl: @nominal_type_decl_or_none ref +); + +#keyset[id, index] +extension_decl_protocols( //dir=decl + int id: @extension_decl ref, + int index: int ref, + int protocol: @protocol_decl_or_none ref +); + +if_config_decls( //dir=decl + unique int id: @if_config_decl +); + +#keyset[id, index] +if_config_decl_active_elements( //dir=decl + int id: @if_config_decl ref, + int index: int ref, + int active_element: @ast_node_or_none ref +); + +import_decls( //dir=decl + unique int id: @import_decl +); + +#keyset[id] +import_decl_is_exported( //dir=decl + int id: @import_decl ref +); + +#keyset[id] +import_decl_imported_modules( //dir=decl + int id: @import_decl ref, + int imported_module: @module_decl_or_none ref +); + +#keyset[id, index] +import_decl_declarations( //dir=decl + int id: @import_decl ref, + int index: int ref, + int declaration: @value_decl_or_none ref +); + +missing_member_decls( //dir=decl + unique int id: @missing_member_decl, + string name: string ref +); + +@operator_decl = + @infix_operator_decl +| @postfix_operator_decl +| @prefix_operator_decl +; + +#keyset[id] +operator_decls( //dir=decl + int id: @operator_decl ref, + string name: string ref +); + +pattern_binding_decls( //dir=decl + unique int id: @pattern_binding_decl +); + +#keyset[id, index] +pattern_binding_decl_inits( //dir=decl + int id: @pattern_binding_decl ref, + int index: int ref, + int init: @expr_or_none ref +); + +#keyset[id, index] +pattern_binding_decl_patterns( //dir=decl + int id: @pattern_binding_decl ref, + int index: int ref, + int pattern: @pattern_or_none ref +); + +pound_diagnostic_decls( //dir=decl + unique int id: @pound_diagnostic_decl, + int kind: int ref, + int message: @string_literal_expr_or_none ref +); + +precedence_group_decls( //dir=decl + unique int id: @precedence_group_decl +); + +top_level_code_decls( //dir=decl + unique int id: @top_level_code_decl, + int body: @brace_stmt_or_none ref +); + +using_decls( //dir=decl + unique int id: @using_decl +); + +#keyset[id] +using_decl_is_main_actor( //dir=decl + int id: @using_decl ref +); + +#keyset[id] +using_decl_is_nonisolated( //dir=decl + int id: @using_decl ref +); + +@value_decl = + @abstract_storage_decl +| @enum_element_decl +| @function +| @macro_decl +| @type_decl +; + +#keyset[id] +value_decls( //dir=decl + int id: @value_decl ref, + int interface_type: @type_or_none ref +); + +@abstract_storage_decl = + @subscript_decl +| @var_decl +; + +#keyset[id, index] +abstract_storage_decl_accessors( //dir=decl + int id: @abstract_storage_decl ref, + int index: int ref, + int accessor: @accessor_or_none ref +); + +enum_element_decls( //dir=decl + unique int id: @enum_element_decl, + string name: string ref +); + +#keyset[id, index] +enum_element_decl_params( //dir=decl + int id: @enum_element_decl ref, + int index: int ref, + int param: @param_decl_or_none ref +); + +@function = + @accessor_or_named_function +| @deinitializer +| @initializer +; + +infix_operator_decls( //dir=decl + unique int id: @infix_operator_decl +); + +#keyset[id] +infix_operator_decl_precedence_groups( //dir=decl + int id: @infix_operator_decl ref, + int precedence_group: @precedence_group_decl_or_none ref +); + +macro_decls( //dir=decl + unique int id: @macro_decl, + string name: string ref +); + +#keyset[id, index] +macro_decl_parameters( //dir=decl + int id: @macro_decl ref, + int index: int ref, + int parameter: @param_decl_or_none ref +); + +#keyset[id, index] +macro_decl_roles( //dir=decl + int id: @macro_decl ref, + int index: int ref, + int role: @macro_role_or_none ref +); + +postfix_operator_decls( //dir=decl + unique int id: @postfix_operator_decl +); + +prefix_operator_decls( //dir=decl + unique int id: @prefix_operator_decl +); + +@type_decl = + @abstract_type_param_decl +| @generic_type_decl +| @module_decl +; + +#keyset[id] +type_decls( //dir=decl + int id: @type_decl ref, + string name: string ref +); + +#keyset[id, index] +type_decl_inherited_types( //dir=decl + int id: @type_decl ref, + int index: int ref, + int inherited_type: @type_or_none ref +); + +@abstract_type_param_decl = + @associated_type_decl +| @generic_type_param_decl +; + +@accessor_or_named_function = + @accessor +| @named_function +; + +deinitializers( //dir=decl + unique int id: @deinitializer +); + +@generic_type_decl = + @nominal_type_decl +| @opaque_type_decl +| @type_alias_decl +; + +initializers( //dir=decl + unique int id: @initializer +); + +module_decls( //dir=decl + unique int id: @module_decl +); + +#keyset[id] +module_decl_is_builtin_module( //dir=decl + int id: @module_decl ref +); + +#keyset[id] +module_decl_is_system_module( //dir=decl + int id: @module_decl ref +); + +module_decl_imported_modules( //dir=decl + int id: @module_decl ref, + int imported_module: @module_decl_or_none ref +); + +module_decl_exported_modules( //dir=decl + int id: @module_decl ref, + int exported_module: @module_decl_or_none ref +); + +subscript_decls( //dir=decl + unique int id: @subscript_decl, + int element_type: @type_or_none ref +); + +#keyset[id, index] +subscript_decl_params( //dir=decl + int id: @subscript_decl ref, + int index: int ref, + int param: @param_decl_or_none ref +); + +@var_decl = + @concrete_var_decl +| @param_decl +; + +#keyset[id] +var_decls( //dir=decl + int id: @var_decl ref, + string name: string ref, + int type_: @type_or_none ref +); + +#keyset[id] +var_decl_attached_property_wrapper_types( //dir=decl + int id: @var_decl ref, + int attached_property_wrapper_type: @type_or_none ref +); + +#keyset[id] +var_decl_parent_patterns( //dir=decl + int id: @var_decl ref, + int parent_pattern: @pattern_or_none ref +); + +#keyset[id] +var_decl_parent_initializers( //dir=decl + int id: @var_decl ref, + int parent_initializer: @expr_or_none ref +); + +#keyset[id] +var_decl_property_wrapper_backing_var_bindings( //dir=decl + int id: @var_decl ref, + int property_wrapper_backing_var_binding: @pattern_binding_decl_or_none ref +); + +#keyset[id] +var_decl_property_wrapper_backing_vars( //dir=decl + int id: @var_decl ref, + int property_wrapper_backing_var: @var_decl_or_none ref +); + +#keyset[id] +var_decl_property_wrapper_projection_var_bindings( //dir=decl + int id: @var_decl ref, + int property_wrapper_projection_var_binding: @pattern_binding_decl_or_none ref +); + +#keyset[id] +var_decl_property_wrapper_projection_vars( //dir=decl + int id: @var_decl ref, + int property_wrapper_projection_var: @var_decl_or_none ref +); + +accessors( //dir=decl + unique int id: @accessor +); + +#keyset[id] +accessor_is_getter( //dir=decl + int id: @accessor ref +); + +#keyset[id] +accessor_is_setter( //dir=decl + int id: @accessor ref +); + +#keyset[id] +accessor_is_will_set( //dir=decl + int id: @accessor ref +); + +#keyset[id] +accessor_is_did_set( //dir=decl + int id: @accessor ref +); + +#keyset[id] +accessor_is_read( //dir=decl + int id: @accessor ref +); + +#keyset[id] +accessor_is_modify( //dir=decl + int id: @accessor ref +); + +#keyset[id] +accessor_is_unsafe_address( //dir=decl + int id: @accessor ref +); + +#keyset[id] +accessor_is_unsafe_mutable_address( //dir=decl + int id: @accessor ref +); + +#keyset[id] +accessor_is_distributed_get( //dir=decl + int id: @accessor ref +); + +#keyset[id] +accessor_is_read2( //dir=decl + int id: @accessor ref +); + +#keyset[id] +accessor_is_modify2( //dir=decl + int id: @accessor ref +); + +#keyset[id] +accessor_is_init( //dir=decl + int id: @accessor ref +); + +associated_type_decls( //dir=decl + unique int id: @associated_type_decl +); + +concrete_var_decls( //dir=decl + unique int id: @concrete_var_decl, + int introducer_int: int ref +); + +generic_type_param_decls( //dir=decl + unique int id: @generic_type_param_decl +); + +named_functions( //dir=decl + unique int id: @named_function +); + +@nominal_type_decl = + @class_decl +| @enum_decl +| @protocol_decl +| @struct_decl +; + +#keyset[id] +nominal_type_decls( //dir=decl + int id: @nominal_type_decl ref, + int type_: @type_or_none ref +); + +opaque_type_decls( //dir=decl + unique int id: @opaque_type_decl, + int naming_declaration: @value_decl_or_none ref +); + +#keyset[id, index] +opaque_type_decl_opaque_generic_params( //dir=decl + int id: @opaque_type_decl ref, + int index: int ref, + int opaque_generic_param: @generic_type_param_type_or_none ref +); + +param_decls( //dir=decl + unique int id: @param_decl +); + +#keyset[id] +param_decl_is_inout( //dir=decl + int id: @param_decl ref +); + +#keyset[id] +param_decl_property_wrapper_local_wrapped_var_bindings( //dir=decl + int id: @param_decl ref, + int property_wrapper_local_wrapped_var_binding: @pattern_binding_decl_or_none ref +); + +#keyset[id] +param_decl_property_wrapper_local_wrapped_vars( //dir=decl + int id: @param_decl ref, + int property_wrapper_local_wrapped_var: @var_decl_or_none ref +); + +type_alias_decls( //dir=decl + unique int id: @type_alias_decl, + int aliased_type: @type_or_none ref +); + +class_decls( //dir=decl + unique int id: @class_decl +); + +enum_decls( //dir=decl + unique int id: @enum_decl +); + +protocol_decls( //dir=decl + unique int id: @protocol_decl +); + +struct_decls( //dir=decl + unique int id: @struct_decl +); + +arguments( //dir=expr + unique int id: @argument, + string label: string ref, + int expr: @expr_or_none ref +); + +@expr = + @any_try_expr +| @applied_property_wrapper_expr +| @apply_expr +| @assign_expr +| @bind_optional_expr +| @capture_list_expr +| @closure_expr +| @collection_expr +| @consume_expr +| @copy_expr +| @current_context_isolation_expr +| @decl_ref_expr +| @default_argument_expr +| @discard_assignment_expr +| @dot_syntax_base_ignored_expr +| @dynamic_type_expr +| @enum_is_case_expr +| @error_expr +| @explicit_cast_expr +| @extract_function_isolation_expr +| @force_value_expr +| @identity_expr +| @if_expr +| @implicit_conversion_expr +| @in_out_expr +| @key_path_application_expr +| @key_path_dot_expr +| @key_path_expr +| @lazy_initialization_expr +| @literal_expr +| @lookup_expr +| @make_temporarily_escapable_expr +| @materialize_pack_expr +| @obj_c_selector_expr +| @one_way_expr +| @opaque_value_expr +| @open_existential_expr +| @optional_evaluation_expr +| @other_initializer_ref_expr +| @overloaded_decl_ref_expr +| @pack_element_expr +| @pack_expansion_expr +| @property_wrapper_value_placeholder_expr +| @rebind_self_in_initializer_expr +| @sequence_expr +| @single_value_stmt_expr +| @super_ref_expr +| @tap_expr +| @tuple_element_expr +| @tuple_expr +| @type_expr +| @type_value_expr +| @unresolved_decl_ref_expr +| @unresolved_dot_expr +| @unresolved_member_expr +| @unresolved_pattern_expr +| @unresolved_specialize_expr +| @vararg_expansion_expr +; + +#keyset[id] +expr_types( //dir=expr + int id: @expr ref, + int type_: @type_or_none ref +); + +@any_try_expr = + @force_try_expr +| @optional_try_expr +| @try_expr +; + +#keyset[id] +any_try_exprs( //dir=expr + int id: @any_try_expr ref, + int sub_expr: @expr_or_none ref +); + +applied_property_wrapper_exprs( //dir=expr + unique int id: @applied_property_wrapper_expr, + int kind: int ref, + int value: @expr_or_none ref, + int param: @param_decl_or_none ref +); + +@apply_expr = + @binary_expr +| @call_expr +| @postfix_unary_expr +| @prefix_unary_expr +| @self_apply_expr +; + +#keyset[id] +apply_exprs( //dir=expr + int id: @apply_expr ref, + int function: @expr_or_none ref +); + +#keyset[id, index] +apply_expr_arguments( //dir=expr + int id: @apply_expr ref, + int index: int ref, + int argument: @argument_or_none ref +); + +assign_exprs( //dir=expr + unique int id: @assign_expr, + int dest: @expr_or_none ref, + int source: @expr_or_none ref +); + +bind_optional_exprs( //dir=expr + unique int id: @bind_optional_expr, + int sub_expr: @expr_or_none ref +); + +capture_list_exprs( //dir=expr + unique int id: @capture_list_expr, + int closure_body: @closure_expr_or_none ref +); + +#keyset[id, index] +capture_list_expr_binding_decls( //dir=expr + int id: @capture_list_expr ref, + int index: int ref, + int binding_decl: @pattern_binding_decl_or_none ref +); + +@closure_expr = + @auto_closure_expr +| @explicit_closure_expr +; + +@collection_expr = + @array_expr +| @dictionary_expr +; + +consume_exprs( //dir=expr + unique int id: @consume_expr, + int sub_expr: @expr_or_none ref +); + +copy_exprs( //dir=expr + unique int id: @copy_expr, + int sub_expr: @expr_or_none ref +); + +current_context_isolation_exprs( //dir=expr + unique int id: @current_context_isolation_expr, + int actor: @expr_or_none ref +); + +decl_ref_exprs( //dir=expr + unique int id: @decl_ref_expr, + int decl: @decl_or_none ref +); + +#keyset[id, index] +decl_ref_expr_replacement_types( //dir=expr + int id: @decl_ref_expr ref, + int index: int ref, + int replacement_type: @type_or_none ref +); + +#keyset[id] +decl_ref_expr_has_direct_to_storage_semantics( //dir=expr + int id: @decl_ref_expr ref +); + +#keyset[id] +decl_ref_expr_has_direct_to_implementation_semantics( //dir=expr + int id: @decl_ref_expr ref +); + +#keyset[id] +decl_ref_expr_has_ordinary_semantics( //dir=expr + int id: @decl_ref_expr ref +); + +#keyset[id] +decl_ref_expr_has_distributed_thunk_semantics( //dir=expr + int id: @decl_ref_expr ref +); + +default_argument_exprs( //dir=expr + unique int id: @default_argument_expr, + int param_decl: @param_decl_or_none ref, + int param_index: int ref +); + +#keyset[id] +default_argument_expr_caller_side_defaults( //dir=expr + int id: @default_argument_expr ref, + int caller_side_default: @expr_or_none ref +); + +discard_assignment_exprs( //dir=expr + unique int id: @discard_assignment_expr +); + +dot_syntax_base_ignored_exprs( //dir=expr + unique int id: @dot_syntax_base_ignored_expr, + int qualifier: @expr_or_none ref, + int sub_expr: @expr_or_none ref +); + +dynamic_type_exprs( //dir=expr + unique int id: @dynamic_type_expr, + int base: @expr_or_none ref +); + +enum_is_case_exprs( //dir=expr + unique int id: @enum_is_case_expr, + int sub_expr: @expr_or_none ref, + int element: @enum_element_decl_or_none ref +); + +error_exprs( //dir=expr + unique int id: @error_expr +); + +@explicit_cast_expr = + @checked_cast_expr +| @coerce_expr +; + +#keyset[id] +explicit_cast_exprs( //dir=expr + int id: @explicit_cast_expr ref, + int sub_expr: @expr_or_none ref +); + +extract_function_isolation_exprs( //dir=expr + unique int id: @extract_function_isolation_expr, + int function_expr: @expr_or_none ref +); + +force_value_exprs( //dir=expr + unique int id: @force_value_expr, + int sub_expr: @expr_or_none ref +); + +@identity_expr = + @await_expr +| @borrow_expr +| @dot_self_expr +| @paren_expr +| @unresolved_member_chain_result_expr +| @unsafe_expr +; + +#keyset[id] +identity_exprs( //dir=expr + int id: @identity_expr ref, + int sub_expr: @expr_or_none ref +); + +if_exprs( //dir=expr + unique int id: @if_expr, + int condition: @expr_or_none ref, + int then_expr: @expr_or_none ref, + int else_expr: @expr_or_none ref +); + +@implicit_conversion_expr = + @abi_safe_conversion_expr +| @actor_isolation_erasure_expr +| @any_hashable_erasure_expr +| @archetype_to_super_expr +| @array_to_pointer_expr +| @bridge_from_obj_c_expr +| @bridge_to_obj_c_expr +| @class_metatype_to_object_expr +| @collection_upcast_conversion_expr +| @conditional_bridge_from_obj_c_expr +| @covariant_function_conversion_expr +| @covariant_return_conversion_expr +| @derived_to_base_expr +| @destructure_tuple_expr +| @differentiable_function_expr +| @differentiable_function_extract_original_expr +| @erasure_expr +| @existential_metatype_to_object_expr +| @foreign_object_conversion_expr +| @function_conversion_expr +| @in_out_to_pointer_expr +| @inject_into_optional_expr +| @linear_function_expr +| @linear_function_extract_original_expr +| @linear_to_differentiable_function_expr +| @load_expr +| @metatype_conversion_expr +| @pointer_to_pointer_expr +| @protocol_metatype_to_object_expr +| @string_to_pointer_expr +| @underlying_to_opaque_expr +| @unevaluated_instance_expr +| @unreachable_expr +| @unresolved_type_conversion_expr +| @unsafe_cast_expr +; + +#keyset[id] +implicit_conversion_exprs( //dir=expr + int id: @implicit_conversion_expr ref, + int sub_expr: @expr_or_none ref +); + +in_out_exprs( //dir=expr + unique int id: @in_out_expr, + int sub_expr: @expr_or_none ref +); + +key_path_application_exprs( //dir=expr + unique int id: @key_path_application_expr, + int base: @expr_or_none ref, + int key_path: @expr_or_none ref +); + +key_path_dot_exprs( //dir=expr + unique int id: @key_path_dot_expr +); + +key_path_exprs( //dir=expr + unique int id: @key_path_expr +); + +#keyset[id] +key_path_expr_roots( //dir=expr + int id: @key_path_expr ref, + int root: @type_repr_or_none ref +); + +#keyset[id, index] +key_path_expr_components( //dir=expr + int id: @key_path_expr ref, + int index: int ref, + int component: @key_path_component_or_none ref +); + +lazy_initialization_exprs( //dir=expr + unique int id: @lazy_initialization_expr, + int sub_expr: @expr_or_none ref +); + +@literal_expr = + @builtin_literal_expr +| @interpolated_string_literal_expr +| @nil_literal_expr +| @object_literal_expr +| @regex_literal_expr +; + +@lookup_expr = + @dynamic_lookup_expr +| @member_ref_expr +| @subscript_expr +; + +#keyset[id] +lookup_exprs( //dir=expr + int id: @lookup_expr ref, + int base: @expr_or_none ref +); + +#keyset[id] +lookup_expr_members( //dir=expr + int id: @lookup_expr ref, + int member: @decl_or_none ref +); + +make_temporarily_escapable_exprs( //dir=expr + unique int id: @make_temporarily_escapable_expr, + int escaping_closure: @opaque_value_expr_or_none ref, + int nonescaping_closure: @expr_or_none ref, + int sub_expr: @expr_or_none ref +); + +materialize_pack_exprs( //dir=expr + unique int id: @materialize_pack_expr, + int sub_expr: @expr_or_none ref +); + +obj_c_selector_exprs( //dir=expr + unique int id: @obj_c_selector_expr, + int sub_expr: @expr_or_none ref, + int method: @function_or_none ref +); + +one_way_exprs( //dir=expr + unique int id: @one_way_expr, + int sub_expr: @expr_or_none ref +); + +opaque_value_exprs( //dir=expr + unique int id: @opaque_value_expr +); + +open_existential_exprs( //dir=expr + unique int id: @open_existential_expr, + int sub_expr: @expr_or_none ref, + int existential: @expr_or_none ref, + int opaque_expr: @opaque_value_expr_or_none ref +); + +optional_evaluation_exprs( //dir=expr + unique int id: @optional_evaluation_expr, + int sub_expr: @expr_or_none ref +); + +other_initializer_ref_exprs( //dir=expr + unique int id: @other_initializer_ref_expr, + int initializer: @initializer_or_none ref +); + +overloaded_decl_ref_exprs( //dir=expr + unique int id: @overloaded_decl_ref_expr +); + +#keyset[id, index] +overloaded_decl_ref_expr_possible_declarations( //dir=expr + int id: @overloaded_decl_ref_expr ref, + int index: int ref, + int possible_declaration: @value_decl_or_none ref +); + +pack_element_exprs( //dir=expr + unique int id: @pack_element_expr, + int sub_expr: @expr_or_none ref +); + +pack_expansion_exprs( //dir=expr + unique int id: @pack_expansion_expr, + int pattern_expr: @expr_or_none ref +); + +property_wrapper_value_placeholder_exprs( //dir=expr + unique int id: @property_wrapper_value_placeholder_expr, + int placeholder: @opaque_value_expr_or_none ref +); + +#keyset[id] +property_wrapper_value_placeholder_expr_wrapped_values( //dir=expr + int id: @property_wrapper_value_placeholder_expr ref, + int wrapped_value: @expr_or_none ref +); + +rebind_self_in_initializer_exprs( //dir=expr + unique int id: @rebind_self_in_initializer_expr, + int sub_expr: @expr_or_none ref, + int self: @var_decl_or_none ref +); + +sequence_exprs( //dir=expr + unique int id: @sequence_expr +); + +#keyset[id, index] +sequence_expr_elements( //dir=expr + int id: @sequence_expr ref, + int index: int ref, + int element: @expr_or_none ref +); + +single_value_stmt_exprs( //dir=expr + unique int id: @single_value_stmt_expr, + int stmt: @stmt_or_none ref +); + +super_ref_exprs( //dir=expr + unique int id: @super_ref_expr, + int self: @var_decl_or_none ref +); + +tap_exprs( //dir=expr + unique int id: @tap_expr, + int body: @brace_stmt_or_none ref, + int var: @var_decl_or_none ref +); + +#keyset[id] +tap_expr_sub_exprs( //dir=expr + int id: @tap_expr ref, + int sub_expr: @expr_or_none ref +); + +tuple_element_exprs( //dir=expr + unique int id: @tuple_element_expr, + int sub_expr: @expr_or_none ref, + int index: int ref +); + +tuple_exprs( //dir=expr + unique int id: @tuple_expr +); + +#keyset[id, index] +tuple_expr_elements( //dir=expr + int id: @tuple_expr ref, + int index: int ref, + int element: @expr_or_none ref +); + +type_exprs( //dir=expr + unique int id: @type_expr +); + +#keyset[id] +type_expr_type_reprs( //dir=expr + int id: @type_expr ref, + int type_repr: @type_repr_or_none ref +); + +type_value_exprs( //dir=expr + unique int id: @type_value_expr, + int type_repr: @type_repr_or_none ref +); + +unresolved_decl_ref_exprs( //dir=expr + unique int id: @unresolved_decl_ref_expr +); + +#keyset[id] +unresolved_decl_ref_expr_names( //dir=expr + int id: @unresolved_decl_ref_expr ref, + string name: string ref +); + +unresolved_dot_exprs( //dir=expr + unique int id: @unresolved_dot_expr, + int base: @expr_or_none ref, + string name: string ref +); + +unresolved_member_exprs( //dir=expr + unique int id: @unresolved_member_expr, + string name: string ref +); + +unresolved_pattern_exprs( //dir=expr + unique int id: @unresolved_pattern_expr, + int sub_pattern: @pattern_or_none ref +); + +unresolved_specialize_exprs( //dir=expr + unique int id: @unresolved_specialize_expr, + int sub_expr: @expr_or_none ref +); + +vararg_expansion_exprs( //dir=expr + unique int id: @vararg_expansion_expr, + int sub_expr: @expr_or_none ref +); + +abi_safe_conversion_exprs( //dir=expr + unique int id: @abi_safe_conversion_expr +); + +actor_isolation_erasure_exprs( //dir=expr + unique int id: @actor_isolation_erasure_expr +); + +any_hashable_erasure_exprs( //dir=expr + unique int id: @any_hashable_erasure_expr +); + +archetype_to_super_exprs( //dir=expr + unique int id: @archetype_to_super_expr +); + +array_exprs( //dir=expr + unique int id: @array_expr +); + +#keyset[id, index] +array_expr_elements( //dir=expr + int id: @array_expr ref, + int index: int ref, + int element: @expr_or_none ref +); + +array_to_pointer_exprs( //dir=expr + unique int id: @array_to_pointer_expr +); + +auto_closure_exprs( //dir=expr + unique int id: @auto_closure_expr +); + +await_exprs( //dir=expr + unique int id: @await_expr +); + +binary_exprs( //dir=expr + unique int id: @binary_expr +); + +borrow_exprs( //dir=expr + unique int id: @borrow_expr +); + +bridge_from_obj_c_exprs( //dir=expr + unique int id: @bridge_from_obj_c_expr +); + +bridge_to_obj_c_exprs( //dir=expr + unique int id: @bridge_to_obj_c_expr +); + +@builtin_literal_expr = + @boolean_literal_expr +| @magic_identifier_literal_expr +| @number_literal_expr +| @string_literal_expr +; + +call_exprs( //dir=expr + unique int id: @call_expr +); + +@checked_cast_expr = + @conditional_checked_cast_expr +| @forced_checked_cast_expr +| @is_expr +; + +class_metatype_to_object_exprs( //dir=expr + unique int id: @class_metatype_to_object_expr +); + +coerce_exprs( //dir=expr + unique int id: @coerce_expr +); + +collection_upcast_conversion_exprs( //dir=expr + unique int id: @collection_upcast_conversion_expr +); + +conditional_bridge_from_obj_c_exprs( //dir=expr + unique int id: @conditional_bridge_from_obj_c_expr +); + +covariant_function_conversion_exprs( //dir=expr + unique int id: @covariant_function_conversion_expr +); + +covariant_return_conversion_exprs( //dir=expr + unique int id: @covariant_return_conversion_expr +); + +derived_to_base_exprs( //dir=expr + unique int id: @derived_to_base_expr +); + +destructure_tuple_exprs( //dir=expr + unique int id: @destructure_tuple_expr +); + +dictionary_exprs( //dir=expr + unique int id: @dictionary_expr +); + +#keyset[id, index] +dictionary_expr_elements( //dir=expr + int id: @dictionary_expr ref, + int index: int ref, + int element: @expr_or_none ref +); + +differentiable_function_exprs( //dir=expr + unique int id: @differentiable_function_expr +); + +differentiable_function_extract_original_exprs( //dir=expr + unique int id: @differentiable_function_extract_original_expr +); + +dot_self_exprs( //dir=expr + unique int id: @dot_self_expr +); + +@dynamic_lookup_expr = + @dynamic_member_ref_expr +| @dynamic_subscript_expr +; + +erasure_exprs( //dir=expr + unique int id: @erasure_expr +); + +existential_metatype_to_object_exprs( //dir=expr + unique int id: @existential_metatype_to_object_expr +); + +explicit_closure_exprs( //dir=expr + unique int id: @explicit_closure_expr +); + +force_try_exprs( //dir=expr + unique int id: @force_try_expr +); + +foreign_object_conversion_exprs( //dir=expr + unique int id: @foreign_object_conversion_expr +); + +function_conversion_exprs( //dir=expr + unique int id: @function_conversion_expr +); + +in_out_to_pointer_exprs( //dir=expr + unique int id: @in_out_to_pointer_expr +); + +inject_into_optional_exprs( //dir=expr + unique int id: @inject_into_optional_expr +); + +interpolated_string_literal_exprs( //dir=expr + unique int id: @interpolated_string_literal_expr +); + +#keyset[id] +interpolated_string_literal_expr_interpolation_exprs( //dir=expr + int id: @interpolated_string_literal_expr ref, + int interpolation_expr: @opaque_value_expr_or_none ref +); + +#keyset[id] +interpolated_string_literal_expr_appending_exprs( //dir=expr + int id: @interpolated_string_literal_expr ref, + int appending_expr: @tap_expr_or_none ref +); + +linear_function_exprs( //dir=expr + unique int id: @linear_function_expr +); + +linear_function_extract_original_exprs( //dir=expr + unique int id: @linear_function_extract_original_expr +); + +linear_to_differentiable_function_exprs( //dir=expr + unique int id: @linear_to_differentiable_function_expr +); + +load_exprs( //dir=expr + unique int id: @load_expr +); + +member_ref_exprs( //dir=expr + unique int id: @member_ref_expr +); + +#keyset[id] +member_ref_expr_has_direct_to_storage_semantics( //dir=expr + int id: @member_ref_expr ref +); + +#keyset[id] +member_ref_expr_has_direct_to_implementation_semantics( //dir=expr + int id: @member_ref_expr ref +); + +#keyset[id] +member_ref_expr_has_ordinary_semantics( //dir=expr + int id: @member_ref_expr ref +); + +#keyset[id] +member_ref_expr_has_distributed_thunk_semantics( //dir=expr + int id: @member_ref_expr ref +); + +metatype_conversion_exprs( //dir=expr + unique int id: @metatype_conversion_expr +); + +nil_literal_exprs( //dir=expr + unique int id: @nil_literal_expr +); + +object_literal_exprs( //dir=expr + unique int id: @object_literal_expr, + int kind: int ref +); + +#keyset[id, index] +object_literal_expr_arguments( //dir=expr + int id: @object_literal_expr ref, + int index: int ref, + int argument: @argument_or_none ref +); + +optional_try_exprs( //dir=expr + unique int id: @optional_try_expr +); + +paren_exprs( //dir=expr + unique int id: @paren_expr +); + +pointer_to_pointer_exprs( //dir=expr + unique int id: @pointer_to_pointer_expr +); + +postfix_unary_exprs( //dir=expr + unique int id: @postfix_unary_expr +); + +prefix_unary_exprs( //dir=expr + unique int id: @prefix_unary_expr +); + +protocol_metatype_to_object_exprs( //dir=expr + unique int id: @protocol_metatype_to_object_expr +); + +regex_literal_exprs( //dir=expr + unique int id: @regex_literal_expr, + string pattern: string ref, + int version: int ref +); + +@self_apply_expr = + @dot_syntax_call_expr +| @initializer_ref_call_expr +; + +#keyset[id] +self_apply_exprs( //dir=expr + int id: @self_apply_expr ref, + int base: @expr_or_none ref +); + +string_to_pointer_exprs( //dir=expr + unique int id: @string_to_pointer_expr +); + +subscript_exprs( //dir=expr + unique int id: @subscript_expr +); + +#keyset[id, index] +subscript_expr_arguments( //dir=expr + int id: @subscript_expr ref, + int index: int ref, + int argument: @argument_or_none ref +); + +#keyset[id] +subscript_expr_has_direct_to_storage_semantics( //dir=expr + int id: @subscript_expr ref +); + +#keyset[id] +subscript_expr_has_direct_to_implementation_semantics( //dir=expr + int id: @subscript_expr ref +); + +#keyset[id] +subscript_expr_has_ordinary_semantics( //dir=expr + int id: @subscript_expr ref +); + +#keyset[id] +subscript_expr_has_distributed_thunk_semantics( //dir=expr + int id: @subscript_expr ref +); + +try_exprs( //dir=expr + unique int id: @try_expr +); + +underlying_to_opaque_exprs( //dir=expr + unique int id: @underlying_to_opaque_expr +); + +unevaluated_instance_exprs( //dir=expr + unique int id: @unevaluated_instance_expr +); + +unreachable_exprs( //dir=expr + unique int id: @unreachable_expr +); + +unresolved_member_chain_result_exprs( //dir=expr + unique int id: @unresolved_member_chain_result_expr +); + +unresolved_type_conversion_exprs( //dir=expr + unique int id: @unresolved_type_conversion_expr +); + +unsafe_cast_exprs( //dir=expr + unique int id: @unsafe_cast_expr +); + +unsafe_exprs( //dir=expr + unique int id: @unsafe_expr +); + +boolean_literal_exprs( //dir=expr + unique int id: @boolean_literal_expr, + boolean value: boolean ref +); + +conditional_checked_cast_exprs( //dir=expr + unique int id: @conditional_checked_cast_expr +); + +dot_syntax_call_exprs( //dir=expr + unique int id: @dot_syntax_call_expr +); + +dynamic_member_ref_exprs( //dir=expr + unique int id: @dynamic_member_ref_expr +); + +dynamic_subscript_exprs( //dir=expr + unique int id: @dynamic_subscript_expr +); + +forced_checked_cast_exprs( //dir=expr + unique int id: @forced_checked_cast_expr +); + +initializer_ref_call_exprs( //dir=expr + unique int id: @initializer_ref_call_expr +); + +is_exprs( //dir=expr + unique int id: @is_expr +); + +magic_identifier_literal_exprs( //dir=expr + unique int id: @magic_identifier_literal_expr, + string kind: string ref +); + +@number_literal_expr = + @float_literal_expr +| @integer_literal_expr +; + +string_literal_exprs( //dir=expr + unique int id: @string_literal_expr, + string value: string ref +); + +float_literal_exprs( //dir=expr + unique int id: @float_literal_expr, + string string_value: string ref +); + +integer_literal_exprs( //dir=expr + unique int id: @integer_literal_expr, + string string_value: string ref +); + +@pattern = + @any_pattern +| @binding_pattern +| @bool_pattern +| @enum_element_pattern +| @expr_pattern +| @is_pattern +| @named_pattern +| @optional_some_pattern +| @paren_pattern +| @tuple_pattern +| @typed_pattern +; + +#keyset[id] +pattern_types( //dir=pattern + int id: @pattern ref, + int type_: @type_or_none ref +); + +any_patterns( //dir=pattern + unique int id: @any_pattern +); + +binding_patterns( //dir=pattern + unique int id: @binding_pattern, + int sub_pattern: @pattern_or_none ref +); + +bool_patterns( //dir=pattern + unique int id: @bool_pattern, + boolean value: boolean ref +); + +enum_element_patterns( //dir=pattern + unique int id: @enum_element_pattern, + int element: @enum_element_decl_or_none ref +); + +#keyset[id] +enum_element_pattern_sub_patterns( //dir=pattern + int id: @enum_element_pattern ref, + int sub_pattern: @pattern_or_none ref +); + +expr_patterns( //dir=pattern + unique int id: @expr_pattern, + int sub_expr: @expr_or_none ref +); + +is_patterns( //dir=pattern + unique int id: @is_pattern +); + +#keyset[id] +is_pattern_cast_type_reprs( //dir=pattern + int id: @is_pattern ref, + int cast_type_repr: @type_repr_or_none ref +); + +#keyset[id] +is_pattern_sub_patterns( //dir=pattern + int id: @is_pattern ref, + int sub_pattern: @pattern_or_none ref +); + +named_patterns( //dir=pattern + unique int id: @named_pattern, + int var_decl: @var_decl_or_none ref +); + +optional_some_patterns( //dir=pattern + unique int id: @optional_some_pattern, + int sub_pattern: @pattern_or_none ref +); + +paren_patterns( //dir=pattern + unique int id: @paren_pattern, + int sub_pattern: @pattern_or_none ref +); + +tuple_patterns( //dir=pattern + unique int id: @tuple_pattern +); + +#keyset[id, index] +tuple_pattern_elements( //dir=pattern + int id: @tuple_pattern ref, + int index: int ref, + int element: @pattern_or_none ref +); + +typed_patterns( //dir=pattern + unique int id: @typed_pattern, + int sub_pattern: @pattern_or_none ref +); + +#keyset[id] +typed_pattern_type_reprs( //dir=pattern + int id: @typed_pattern ref, + int type_repr: @type_repr_or_none ref +); + +case_label_items( //dir=stmt + unique int id: @case_label_item, + int pattern: @pattern_or_none ref +); + +#keyset[id] +case_label_item_guards( //dir=stmt + int id: @case_label_item ref, + int guard: @expr_or_none ref +); + +condition_elements( //dir=stmt + unique int id: @condition_element +); + +#keyset[id] +condition_element_booleans( //dir=stmt + int id: @condition_element ref, + int boolean_: @expr_or_none ref +); + +#keyset[id] +condition_element_patterns( //dir=stmt + int id: @condition_element ref, + int pattern: @pattern_or_none ref +); + +#keyset[id] +condition_element_initializers( //dir=stmt + int id: @condition_element ref, + int initializer: @expr_or_none ref +); + +#keyset[id] +condition_element_availabilities( //dir=stmt + int id: @condition_element ref, + int availability: @availability_info_or_none ref +); + +@stmt = + @brace_stmt +| @break_stmt +| @case_stmt +| @continue_stmt +| @defer_stmt +| @discard_stmt +| @fail_stmt +| @fallthrough_stmt +| @labeled_stmt +| @pound_assert_stmt +| @return_stmt +| @then_stmt +| @throw_stmt +| @yield_stmt +; + +stmt_conditions( //dir=stmt + unique int id: @stmt_condition +); + +#keyset[id, index] +stmt_condition_elements( //dir=stmt + int id: @stmt_condition ref, + int index: int ref, + int element: @condition_element_or_none ref +); + +brace_stmts( //dir=stmt + unique int id: @brace_stmt +); + +#keyset[id, index] +brace_stmt_elements( //dir=stmt + int id: @brace_stmt ref, + int index: int ref, + int element: @ast_node_or_none ref +); + +break_stmts( //dir=stmt + unique int id: @break_stmt +); + +#keyset[id] +break_stmt_target_names( //dir=stmt + int id: @break_stmt ref, + string target_name: string ref +); + +#keyset[id] +break_stmt_targets( //dir=stmt + int id: @break_stmt ref, + int target: @stmt_or_none ref +); + +case_stmts( //dir=stmt + unique int id: @case_stmt, + int body: @stmt_or_none ref +); + +#keyset[id, index] +case_stmt_labels( //dir=stmt + int id: @case_stmt ref, + int index: int ref, + int label: @case_label_item_or_none ref +); + +#keyset[id, index] +case_stmt_variables( //dir=stmt + int id: @case_stmt ref, + int index: int ref, + int variable: @var_decl_or_none ref +); + +continue_stmts( //dir=stmt + unique int id: @continue_stmt +); + +#keyset[id] +continue_stmt_target_names( //dir=stmt + int id: @continue_stmt ref, + string target_name: string ref +); + +#keyset[id] +continue_stmt_targets( //dir=stmt + int id: @continue_stmt ref, + int target: @stmt_or_none ref +); + +defer_stmts( //dir=stmt + unique int id: @defer_stmt, + int body: @brace_stmt_or_none ref +); + +discard_stmts( //dir=stmt + unique int id: @discard_stmt, + int sub_expr: @expr_or_none ref +); + +fail_stmts( //dir=stmt + unique int id: @fail_stmt +); + +fallthrough_stmts( //dir=stmt + unique int id: @fallthrough_stmt, + int fallthrough_source: @case_stmt_or_none ref, + int fallthrough_dest: @case_stmt_or_none ref +); + +@labeled_stmt = + @do_catch_stmt +| @do_stmt +| @for_each_stmt +| @labeled_conditional_stmt +| @repeat_while_stmt +| @switch_stmt +; + +#keyset[id] +labeled_stmt_labels( //dir=stmt + int id: @labeled_stmt ref, + string label: string ref +); + +pound_assert_stmts( //dir=stmt + unique int id: @pound_assert_stmt, + int condition: @expr_or_none ref, + string message: string ref +); + +return_stmts( //dir=stmt + unique int id: @return_stmt +); + +#keyset[id] +return_stmt_results( //dir=stmt + int id: @return_stmt ref, + int result: @expr_or_none ref +); + +then_stmts( //dir=stmt + unique int id: @then_stmt, + int result: @expr_or_none ref +); + +throw_stmts( //dir=stmt + unique int id: @throw_stmt, + int sub_expr: @expr_or_none ref +); + +yield_stmts( //dir=stmt + unique int id: @yield_stmt +); + +#keyset[id, index] +yield_stmt_results( //dir=stmt + int id: @yield_stmt ref, + int index: int ref, + int result: @expr_or_none ref +); + +do_catch_stmts( //dir=stmt + unique int id: @do_catch_stmt, + int body: @stmt_or_none ref +); + +#keyset[id, index] +do_catch_stmt_catches( //dir=stmt + int id: @do_catch_stmt ref, + int index: int ref, + int catch: @case_stmt_or_none ref +); + +do_stmts( //dir=stmt + unique int id: @do_stmt, + int body: @brace_stmt_or_none ref +); + +for_each_stmts( //dir=stmt + unique int id: @for_each_stmt, + int pattern: @pattern_or_none ref, + int body: @brace_stmt_or_none ref +); + +#keyset[id, index] +for_each_stmt_variables( //dir=stmt + int id: @for_each_stmt ref, + int index: int ref, + int variable: @var_decl_or_none ref +); + +#keyset[id] +for_each_stmt_wheres( //dir=stmt + int id: @for_each_stmt ref, + int where: @expr_or_none ref +); + +#keyset[id] +for_each_stmt_iterator_vars( //dir=stmt + int id: @for_each_stmt ref, + int iteratorVar: @pattern_binding_decl_or_none ref +); + +#keyset[id] +for_each_stmt_next_calls( //dir=stmt + int id: @for_each_stmt ref, + int nextCall: @expr_or_none ref +); + +@labeled_conditional_stmt = + @guard_stmt +| @if_stmt +| @while_stmt +; + +#keyset[id] +labeled_conditional_stmts( //dir=stmt + int id: @labeled_conditional_stmt ref, + int condition: @stmt_condition_or_none ref +); + +repeat_while_stmts( //dir=stmt + unique int id: @repeat_while_stmt, + int condition: @expr_or_none ref, + int body: @stmt_or_none ref +); + +switch_stmts( //dir=stmt + unique int id: @switch_stmt, + int expr: @expr_or_none ref +); + +#keyset[id, index] +switch_stmt_cases( //dir=stmt + int id: @switch_stmt ref, + int index: int ref, + int case_: @case_stmt_or_none ref +); + +guard_stmts( //dir=stmt + unique int id: @guard_stmt, + int body: @brace_stmt_or_none ref +); + +if_stmts( //dir=stmt + unique int id: @if_stmt, + int then: @stmt_or_none ref +); + +#keyset[id] +if_stmt_elses( //dir=stmt + int id: @if_stmt ref, + int else: @stmt_or_none ref +); + +while_stmts( //dir=stmt + unique int id: @while_stmt, + int body: @stmt_or_none ref +); + +@type = + @any_function_type +| @any_generic_type +| @any_metatype_type +| @builtin_type +| @dependent_member_type +| @dynamic_self_type +| @error_type +| @existential_type +| @in_out_type +| @integer_type +| @l_value_type +| @module_type +| @pack_element_type +| @pack_expansion_type +| @pack_type +| @parameterized_protocol_type +| @protocol_composition_type +| @reference_storage_type +| @substitutable_type +| @sugar_type +| @tuple_type +| @unresolved_type +; + +#keyset[id] +types( //dir=type + int id: @type ref, + string name: string ref, + int canonical_type: @type_or_none ref +); + +type_reprs( //dir=type + unique int id: @type_repr, + int type_: @type_or_none ref +); + +@any_function_type = + @function_type +| @generic_function_type +; + +#keyset[id] +any_function_types( //dir=type + int id: @any_function_type ref, + int result: @type_or_none ref +); + +#keyset[id, index] +any_function_type_param_types( //dir=type + int id: @any_function_type ref, + int index: int ref, + int param_type: @type_or_none ref +); + +#keyset[id] +any_function_type_is_throwing( //dir=type + int id: @any_function_type ref +); + +#keyset[id] +any_function_type_is_async( //dir=type + int id: @any_function_type ref +); + +@any_generic_type = + @nominal_or_bound_generic_nominal_type +| @unbound_generic_type +; + +#keyset[id] +any_generic_types( //dir=type + int id: @any_generic_type ref, + int declaration: @generic_type_decl_or_none ref +); + +#keyset[id] +any_generic_type_parents( //dir=type + int id: @any_generic_type ref, + int parent: @type_or_none ref +); + +@any_metatype_type = + @existential_metatype_type +| @metatype_type +; + +@builtin_type = + @any_builtin_integer_type +| @builtin_bridge_object_type +| @builtin_default_actor_storage_type +| @builtin_executor_type +| @builtin_float_type +| @builtin_generic_type +| @builtin_job_type +| @builtin_native_object_type +| @builtin_raw_pointer_type +| @builtin_raw_unsafe_continuation_type +| @builtin_unsafe_value_buffer_type +| @builtin_vector_type +; + +dependent_member_types( //dir=type + unique int id: @dependent_member_type, + int base_type: @type_or_none ref, + int associated_type_decl: @associated_type_decl_or_none ref +); + +dynamic_self_types( //dir=type + unique int id: @dynamic_self_type, + int static_self_type: @type_or_none ref +); + +error_types( //dir=type + unique int id: @error_type +); + +existential_types( //dir=type + unique int id: @existential_type, + int constraint: @type_or_none ref +); + +in_out_types( //dir=type + unique int id: @in_out_type, + int object_type: @type_or_none ref +); + +integer_types( //dir=type + unique int id: @integer_type, + string value: string ref +); + +l_value_types( //dir=type + unique int id: @l_value_type, + int object_type: @type_or_none ref +); + +module_types( //dir=type + unique int id: @module_type, + int module: @module_decl_or_none ref +); + +pack_element_types( //dir=type + unique int id: @pack_element_type, + int pack_type: @type_or_none ref +); + +pack_expansion_types( //dir=type + unique int id: @pack_expansion_type, + int pattern_type: @type_or_none ref, + int count_type: @type_or_none ref +); + +pack_types( //dir=type + unique int id: @pack_type +); + +#keyset[id, index] +pack_type_elements( //dir=type + int id: @pack_type ref, + int index: int ref, + int element: @type_or_none ref +); + +parameterized_protocol_types( //dir=type + unique int id: @parameterized_protocol_type, + int base: @protocol_type_or_none ref +); + +#keyset[id, index] +parameterized_protocol_type_args( //dir=type + int id: @parameterized_protocol_type ref, + int index: int ref, + int arg: @type_or_none ref +); + +protocol_composition_types( //dir=type + unique int id: @protocol_composition_type +); + +#keyset[id, index] +protocol_composition_type_members( //dir=type + int id: @protocol_composition_type ref, + int index: int ref, + int member: @type_or_none ref +); + +@reference_storage_type = + @unmanaged_storage_type +| @unowned_storage_type +| @weak_storage_type +; + +#keyset[id] +reference_storage_types( //dir=type + int id: @reference_storage_type ref, + int referent_type: @type_or_none ref +); + +@substitutable_type = + @archetype_type +| @generic_type_param_type +; + +@sugar_type = + @paren_type +| @syntax_sugar_type +| @type_alias_type +; + +tuple_types( //dir=type + unique int id: @tuple_type +); + +#keyset[id, index] +tuple_type_types( //dir=type + int id: @tuple_type ref, + int index: int ref, + int type_: @type_or_none ref +); + +#keyset[id, index] +tuple_type_names( //dir=type + int id: @tuple_type ref, + int index: int ref, + string name: string ref +); + +unresolved_types( //dir=type + unique int id: @unresolved_type +); + +@any_builtin_integer_type = + @builtin_integer_literal_type +| @builtin_integer_type +; + +@archetype_type = + @local_archetype_type +| @opaque_type_archetype_type +| @pack_archetype_type +| @primary_archetype_type +; + +#keyset[id] +archetype_types( //dir=type + int id: @archetype_type ref, + int interface_type: @type_or_none ref +); + +#keyset[id] +archetype_type_superclasses( //dir=type + int id: @archetype_type ref, + int superclass: @type_or_none ref +); + +#keyset[id, index] +archetype_type_protocols( //dir=type + int id: @archetype_type ref, + int index: int ref, + int protocol: @protocol_decl_or_none ref +); + +builtin_bridge_object_types( //dir=type + unique int id: @builtin_bridge_object_type +); + +builtin_default_actor_storage_types( //dir=type + unique int id: @builtin_default_actor_storage_type +); + +builtin_executor_types( //dir=type + unique int id: @builtin_executor_type +); + +builtin_float_types( //dir=type + unique int id: @builtin_float_type +); + +@builtin_generic_type = + @builtin_fixed_array_type +; + +builtin_job_types( //dir=type + unique int id: @builtin_job_type +); + +builtin_native_object_types( //dir=type + unique int id: @builtin_native_object_type +); + +builtin_raw_pointer_types( //dir=type + unique int id: @builtin_raw_pointer_type +); + +builtin_raw_unsafe_continuation_types( //dir=type + unique int id: @builtin_raw_unsafe_continuation_type +); + +builtin_unsafe_value_buffer_types( //dir=type + unique int id: @builtin_unsafe_value_buffer_type +); + +builtin_vector_types( //dir=type + unique int id: @builtin_vector_type +); + +existential_metatype_types( //dir=type + unique int id: @existential_metatype_type +); + +function_types( //dir=type + unique int id: @function_type +); + +generic_function_types( //dir=type + unique int id: @generic_function_type +); + +#keyset[id, index] +generic_function_type_generic_params( //dir=type + int id: @generic_function_type ref, + int index: int ref, + int generic_param: @generic_type_param_type_or_none ref +); + +generic_type_param_types( //dir=type + unique int id: @generic_type_param_type +); + +metatype_types( //dir=type + unique int id: @metatype_type +); + +@nominal_or_bound_generic_nominal_type = + @bound_generic_type +| @nominal_type +; + +paren_types( //dir=type + unique int id: @paren_type, + int type_: @type_or_none ref +); + +@syntax_sugar_type = + @dictionary_type +| @inline_array_type +| @unary_syntax_sugar_type +; + +type_alias_types( //dir=type + unique int id: @type_alias_type, + int decl: @type_alias_decl_or_none ref +); + +unbound_generic_types( //dir=type + unique int id: @unbound_generic_type +); + +unmanaged_storage_types( //dir=type + unique int id: @unmanaged_storage_type +); + +unowned_storage_types( //dir=type + unique int id: @unowned_storage_type +); + +weak_storage_types( //dir=type + unique int id: @weak_storage_type +); + +@bound_generic_type = + @bound_generic_class_type +| @bound_generic_enum_type +| @bound_generic_struct_type +; + +#keyset[id, index] +bound_generic_type_arg_types( //dir=type + int id: @bound_generic_type ref, + int index: int ref, + int arg_type: @type_or_none ref +); + +builtin_fixed_array_types( //dir=type + unique int id: @builtin_fixed_array_type +); + +builtin_integer_literal_types( //dir=type + unique int id: @builtin_integer_literal_type +); + +builtin_integer_types( //dir=type + unique int id: @builtin_integer_type +); + +#keyset[id] +builtin_integer_type_widths( //dir=type + int id: @builtin_integer_type ref, + int width: int ref +); + +dictionary_types( //dir=type + unique int id: @dictionary_type, + int key_type: @type_or_none ref, + int value_type: @type_or_none ref +); + +inline_array_types( //dir=type + unique int id: @inline_array_type, + int count_type: @type_or_none ref, + int element_type: @type_or_none ref +); + +@local_archetype_type = + @element_archetype_type +| @existential_archetype_type +; + +@nominal_type = + @class_type +| @enum_type +| @protocol_type +| @struct_type +; + +opaque_type_archetype_types( //dir=type + unique int id: @opaque_type_archetype_type, + int declaration: @opaque_type_decl_or_none ref +); + +pack_archetype_types( //dir=type + unique int id: @pack_archetype_type +); + +primary_archetype_types( //dir=type + unique int id: @primary_archetype_type +); + +@unary_syntax_sugar_type = + @array_slice_type +| @optional_type +| @variadic_sequence_type +; + +#keyset[id] +unary_syntax_sugar_types( //dir=type + int id: @unary_syntax_sugar_type ref, + int base_type: @type_or_none ref +); + +array_slice_types( //dir=type + unique int id: @array_slice_type +); + +bound_generic_class_types( //dir=type + unique int id: @bound_generic_class_type +); + +bound_generic_enum_types( //dir=type + unique int id: @bound_generic_enum_type +); + +bound_generic_struct_types( //dir=type + unique int id: @bound_generic_struct_type +); + +class_types( //dir=type + unique int id: @class_type +); + +element_archetype_types( //dir=type + unique int id: @element_archetype_type +); + +enum_types( //dir=type + unique int id: @enum_type +); + +existential_archetype_types( //dir=type + unique int id: @existential_archetype_type +); + +optional_types( //dir=type + unique int id: @optional_type +); + +protocol_types( //dir=type + unique int id: @protocol_type +); + +struct_types( //dir=type + unique int id: @struct_type +); + +variadic_sequence_types( //dir=type + unique int id: @variadic_sequence_type +); + +@accessor_or_none = + @accessor +| @unspecified_element +; + +@argument_or_none = + @argument +| @unspecified_element +; + +@associated_type_decl_or_none = + @associated_type_decl +| @unspecified_element +; + +@ast_node_or_none = + @ast_node +| @unspecified_element +; + +@availability_info_or_none = + @availability_info +| @unspecified_element +; + +@availability_spec_or_none = + @availability_spec +| @unspecified_element +; + +@brace_stmt_or_none = + @brace_stmt +| @unspecified_element +; + +@captured_decl_or_none = + @captured_decl +| @unspecified_element +; + +@case_label_item_or_none = + @case_label_item +| @unspecified_element +; + +@case_stmt_or_none = + @case_stmt +| @unspecified_element +; + +@closure_expr_or_none = + @closure_expr +| @unspecified_element +; + +@condition_element_or_none = + @condition_element +| @unspecified_element +; + +@decl_or_none = + @decl +| @unspecified_element +; + +@enum_element_decl_or_none = + @enum_element_decl +| @unspecified_element +; + +@expr_or_none = + @expr +| @unspecified_element +; + +@file_or_none = + @file +| @unspecified_element +; + +@function_or_none = + @function +| @unspecified_element +; + +@generic_type_decl_or_none = + @generic_type_decl +| @unspecified_element +; + +@generic_type_param_decl_or_none = + @generic_type_param_decl +| @unspecified_element +; + +@generic_type_param_type_or_none = + @generic_type_param_type +| @unspecified_element +; + +@initializer_or_none = + @initializer +| @unspecified_element +; + +@key_path_component_or_none = + @key_path_component +| @unspecified_element +; + +@location_or_none = + @location +| @unspecified_element +; + +@macro_role_or_none = + @macro_role +| @unspecified_element +; + +@module_decl_or_none = + @module_decl +| @unspecified_element +; + +@nominal_type_decl_or_none = + @nominal_type_decl +| @unspecified_element +; + +@opaque_type_decl_or_none = + @opaque_type_decl +| @unspecified_element +; + +@opaque_value_expr_or_none = + @opaque_value_expr +| @unspecified_element +; + +@param_decl_or_none = + @param_decl +| @unspecified_element +; + +@pattern_or_none = + @pattern +| @unspecified_element +; + +@pattern_binding_decl_or_none = + @pattern_binding_decl +| @unspecified_element +; + +@precedence_group_decl_or_none = + @precedence_group_decl +| @unspecified_element +; + +@protocol_decl_or_none = + @protocol_decl +| @unspecified_element +; + +@protocol_type_or_none = + @protocol_type +| @unspecified_element +; + +@stmt_or_none = + @stmt +| @unspecified_element +; + +@stmt_condition_or_none = + @stmt_condition +| @unspecified_element +; + +@string_literal_expr_or_none = + @string_literal_expr +| @unspecified_element +; + +@tap_expr_or_none = + @tap_expr +| @unspecified_element +; + +@type_or_none = + @type +| @unspecified_element +; + +@type_alias_decl_or_none = + @type_alias_decl +| @unspecified_element +; + +@type_repr_or_none = + @type_repr +| @unspecified_element +; + +@value_decl_or_none = + @unspecified_element +| @value_decl +; + +@var_decl_or_none = + @unspecified_element +| @var_decl +; diff --git a/swift/ql/lib/upgrades/ee3053b673c901a325b361b18c50b18342752bf8/swift.dbscheme b/swift/ql/lib/upgrades/ee3053b673c901a325b361b18c50b18342752bf8/swift.dbscheme new file mode 100644 index 000000000000..5738be6bb047 --- /dev/null +++ b/swift/ql/lib/upgrades/ee3053b673c901a325b361b18c50b18342752bf8/swift.dbscheme @@ -0,0 +1,2891 @@ +// generated by codegen/codegen.py, do not edit + +// from prefix.dbscheme +/** + * The source location of the snapshot. + */ +sourceLocationPrefix( + string prefix: string ref +); + + +// from schema.py + +@element = + @file +| @generic_context +| @locatable +| @location +| @type +; + +#keyset[id] +element_is_unknown( + int id: @element ref +); + +@file = + @db_file +; + +#keyset[id] +files( + int id: @file ref, + string name: string ref +); + +#keyset[id] +file_is_successfully_extracted( + int id: @file ref +); + +@locatable = + @argument +| @ast_node +| @comment +| @diagnostics +| @error_element +; + +#keyset[id] +locatable_locations( + int id: @locatable ref, + int location: @location_or_none ref +); + +@location = + @db_location +; + +#keyset[id] +locations( + int id: @location ref, + int file: @file_or_none ref, + int start_line: int ref, + int start_column: int ref, + int end_line: int ref, + int end_column: int ref +); + +@ast_node = + @availability_info +| @availability_spec +| @callable +| @case_label_item +| @condition_element +| @decl +| @expr +| @key_path_component +| @macro_role +| @pattern +| @stmt +| @stmt_condition +| @type_repr +; + +comments( + unique int id: @comment, + string text: string ref +); + +db_files( + unique int id: @db_file +); + +db_locations( + unique int id: @db_location +); + +diagnostics( + unique int id: @diagnostics, + string text: string ref, + int kind: int ref +); + +@error_element = + @error_expr +| @error_type +| @overloaded_decl_ref_expr +| @unresolved_decl_ref_expr +| @unresolved_dot_expr +| @unresolved_member_chain_result_expr +| @unresolved_member_expr +| @unresolved_pattern_expr +| @unresolved_specialize_expr +| @unresolved_type +| @unresolved_type_conversion_expr +| @unspecified_element +; + +availability_infos( + unique int id: @availability_info +); + +#keyset[id] +availability_info_is_unavailable( + int id: @availability_info ref +); + +#keyset[id, index] +availability_info_specs( + int id: @availability_info ref, + int index: int ref, + int spec: @availability_spec_or_none ref +); + +availability_specs( + unique int id: @availability_spec +); + +#keyset[id] +availability_spec_platforms( + int id: @availability_spec ref, + string platform: string ref +); + +#keyset[id] +availability_spec_versions( + int id: @availability_spec ref, + string version: string ref +); + +#keyset[id] +availability_spec_is_wildcard( + int id: @availability_spec ref +); + +@callable = + @closure_expr +| @function +; + +#keyset[id] +callable_names( + int id: @callable ref, + string name: string ref +); + +#keyset[id] +callable_self_params( + int id: @callable ref, + int self_param: @param_decl_or_none ref +); + +#keyset[id, index] +callable_params( + int id: @callable ref, + int index: int ref, + int param: @param_decl_or_none ref +); + +#keyset[id] +callable_bodies( + int id: @callable ref, + int body: @brace_stmt_or_none ref +); + +#keyset[id, index] +callable_captures( + int id: @callable ref, + int index: int ref, + int capture: @captured_decl_or_none ref +); + +key_path_components( + unique int id: @key_path_component, + int kind: int ref, + int component_type: @type_or_none ref +); + +#keyset[id, index] +key_path_component_subscript_arguments( + int id: @key_path_component ref, + int index: int ref, + int subscript_argument: @argument_or_none ref +); + +#keyset[id] +key_path_component_tuple_indices( + int id: @key_path_component ref, + int tuple_index: int ref +); + +#keyset[id] +key_path_component_decl_refs( + int id: @key_path_component ref, + int decl_ref: @value_decl_or_none ref +); + +macro_roles( + unique int id: @macro_role, + int kind: int ref, + int macro_syntax: int ref +); + +#keyset[id, index] +macro_role_conformances( + int id: @macro_role ref, + int index: int ref, + int conformance: @expr_or_none ref +); + +#keyset[id, index] +macro_role_names( + int id: @macro_role ref, + int index: int ref, + string name: string ref +); + +unspecified_elements( + unique int id: @unspecified_element, + string property: string ref, + string error: string ref +); + +#keyset[id] +unspecified_element_parents( + int id: @unspecified_element ref, + int parent: @element ref +); + +#keyset[id] +unspecified_element_indices( + int id: @unspecified_element ref, + int index: int ref +); + +#keyset[id, index] +unspecified_element_children( + int id: @unspecified_element ref, + int index: int ref, + int child: @ast_node_or_none ref +); + +@decl = + @captured_decl +| @enum_case_decl +| @extension_decl +| @if_config_decl +| @import_decl +| @missing_member_decl +| @operator_decl +| @pattern_binding_decl +| @pound_diagnostic_decl +| @precedence_group_decl +| @top_level_code_decl +| @using_decl +| @value_decl +; + +#keyset[id] +decls( //dir=decl + int id: @decl ref, + int module: @module_decl_or_none ref +); + +#keyset[id, index] +decl_members( //dir=decl + int id: @decl ref, + int index: int ref, + int member: @decl_or_none ref +); + +@generic_context = + @extension_decl +| @function +| @generic_type_decl +| @macro_decl +| @subscript_decl +; + +#keyset[id, index] +generic_context_generic_type_params( //dir=decl + int id: @generic_context ref, + int index: int ref, + int generic_type_param: @generic_type_param_decl_or_none ref +); + +captured_decls( //dir=decl + unique int id: @captured_decl, + int decl: @value_decl_or_none ref +); + +#keyset[id] +captured_decl_is_direct( //dir=decl + int id: @captured_decl ref +); + +#keyset[id] +captured_decl_is_escaping( //dir=decl + int id: @captured_decl ref +); + +enum_case_decls( //dir=decl + unique int id: @enum_case_decl +); + +#keyset[id, index] +enum_case_decl_elements( //dir=decl + int id: @enum_case_decl ref, + int index: int ref, + int element: @enum_element_decl_or_none ref +); + +extension_decls( //dir=decl + unique int id: @extension_decl, + int extended_type_decl: @nominal_type_decl_or_none ref +); + +#keyset[id, index] +extension_decl_protocols( //dir=decl + int id: @extension_decl ref, + int index: int ref, + int protocol: @protocol_decl_or_none ref +); + +if_config_decls( //dir=decl + unique int id: @if_config_decl +); + +#keyset[id, index] +if_config_decl_active_elements( //dir=decl + int id: @if_config_decl ref, + int index: int ref, + int active_element: @ast_node_or_none ref +); + +import_decls( //dir=decl + unique int id: @import_decl +); + +#keyset[id] +import_decl_is_exported( //dir=decl + int id: @import_decl ref +); + +#keyset[id] +import_decl_imported_modules( //dir=decl + int id: @import_decl ref, + int imported_module: @module_decl_or_none ref +); + +#keyset[id, index] +import_decl_declarations( //dir=decl + int id: @import_decl ref, + int index: int ref, + int declaration: @value_decl_or_none ref +); + +missing_member_decls( //dir=decl + unique int id: @missing_member_decl, + string name: string ref +); + +@operator_decl = + @infix_operator_decl +| @postfix_operator_decl +| @prefix_operator_decl +; + +#keyset[id] +operator_decls( //dir=decl + int id: @operator_decl ref, + string name: string ref +); + +pattern_binding_decls( //dir=decl + unique int id: @pattern_binding_decl +); + +#keyset[id, index] +pattern_binding_decl_inits( //dir=decl + int id: @pattern_binding_decl ref, + int index: int ref, + int init: @expr_or_none ref +); + +#keyset[id, index] +pattern_binding_decl_patterns( //dir=decl + int id: @pattern_binding_decl ref, + int index: int ref, + int pattern: @pattern_or_none ref +); + +pound_diagnostic_decls( //dir=decl + unique int id: @pound_diagnostic_decl, + int kind: int ref, + int message: @string_literal_expr_or_none ref +); + +precedence_group_decls( //dir=decl + unique int id: @precedence_group_decl +); + +top_level_code_decls( //dir=decl + unique int id: @top_level_code_decl, + int body: @brace_stmt_or_none ref +); + +using_decls( //dir=decl + unique int id: @using_decl +); + +#keyset[id] +using_decl_is_main_actor( //dir=decl + int id: @using_decl ref +); + +#keyset[id] +using_decl_is_nonisolated( //dir=decl + int id: @using_decl ref +); + +@value_decl = + @abstract_storage_decl +| @enum_element_decl +| @function +| @macro_decl +| @type_decl +; + +#keyset[id] +value_decls( //dir=decl + int id: @value_decl ref, + int interface_type: @type_or_none ref +); + +@abstract_storage_decl = + @subscript_decl +| @var_decl +; + +#keyset[id, index] +abstract_storage_decl_accessors( //dir=decl + int id: @abstract_storage_decl ref, + int index: int ref, + int accessor: @accessor_or_none ref +); + +enum_element_decls( //dir=decl + unique int id: @enum_element_decl, + string name: string ref +); + +#keyset[id, index] +enum_element_decl_params( //dir=decl + int id: @enum_element_decl ref, + int index: int ref, + int param: @param_decl_or_none ref +); + +@function = + @accessor_or_named_function +| @deinitializer +| @initializer +; + +infix_operator_decls( //dir=decl + unique int id: @infix_operator_decl +); + +#keyset[id] +infix_operator_decl_precedence_groups( //dir=decl + int id: @infix_operator_decl ref, + int precedence_group: @precedence_group_decl_or_none ref +); + +macro_decls( //dir=decl + unique int id: @macro_decl, + string name: string ref +); + +#keyset[id, index] +macro_decl_parameters( //dir=decl + int id: @macro_decl ref, + int index: int ref, + int parameter: @param_decl_or_none ref +); + +#keyset[id, index] +macro_decl_roles( //dir=decl + int id: @macro_decl ref, + int index: int ref, + int role: @macro_role_or_none ref +); + +postfix_operator_decls( //dir=decl + unique int id: @postfix_operator_decl +); + +prefix_operator_decls( //dir=decl + unique int id: @prefix_operator_decl +); + +@type_decl = + @abstract_type_param_decl +| @generic_type_decl +| @module_decl +; + +#keyset[id] +type_decls( //dir=decl + int id: @type_decl ref, + string name: string ref +); + +#keyset[id, index] +type_decl_inherited_types( //dir=decl + int id: @type_decl ref, + int index: int ref, + int inherited_type: @type_or_none ref +); + +@abstract_type_param_decl = + @associated_type_decl +| @generic_type_param_decl +; + +@accessor_or_named_function = + @accessor +| @named_function +; + +deinitializers( //dir=decl + unique int id: @deinitializer +); + +@generic_type_decl = + @nominal_type_decl +| @opaque_type_decl +| @type_alias_decl +; + +initializers( //dir=decl + unique int id: @initializer +); + +module_decls( //dir=decl + unique int id: @module_decl +); + +#keyset[id] +module_decl_is_builtin_module( //dir=decl + int id: @module_decl ref +); + +#keyset[id] +module_decl_is_system_module( //dir=decl + int id: @module_decl ref +); + +module_decl_imported_modules( //dir=decl + int id: @module_decl ref, + int imported_module: @module_decl_or_none ref +); + +module_decl_exported_modules( //dir=decl + int id: @module_decl ref, + int exported_module: @module_decl_or_none ref +); + +subscript_decls( //dir=decl + unique int id: @subscript_decl, + int element_type: @type_or_none ref +); + +#keyset[id, index] +subscript_decl_params( //dir=decl + int id: @subscript_decl ref, + int index: int ref, + int param: @param_decl_or_none ref +); + +@var_decl = + @concrete_var_decl +| @param_decl +; + +#keyset[id] +var_decls( //dir=decl + int id: @var_decl ref, + string name: string ref, + int type_: @type_or_none ref +); + +#keyset[id] +var_decl_attached_property_wrapper_types( //dir=decl + int id: @var_decl ref, + int attached_property_wrapper_type: @type_or_none ref +); + +#keyset[id] +var_decl_parent_patterns( //dir=decl + int id: @var_decl ref, + int parent_pattern: @pattern_or_none ref +); + +#keyset[id] +var_decl_parent_initializers( //dir=decl + int id: @var_decl ref, + int parent_initializer: @expr_or_none ref +); + +#keyset[id] +var_decl_property_wrapper_backing_var_bindings( //dir=decl + int id: @var_decl ref, + int property_wrapper_backing_var_binding: @pattern_binding_decl_or_none ref +); + +#keyset[id] +var_decl_property_wrapper_backing_vars( //dir=decl + int id: @var_decl ref, + int property_wrapper_backing_var: @var_decl_or_none ref +); + +#keyset[id] +var_decl_property_wrapper_projection_var_bindings( //dir=decl + int id: @var_decl ref, + int property_wrapper_projection_var_binding: @pattern_binding_decl_or_none ref +); + +#keyset[id] +var_decl_property_wrapper_projection_vars( //dir=decl + int id: @var_decl ref, + int property_wrapper_projection_var: @var_decl_or_none ref +); + +accessors( //dir=decl + unique int id: @accessor +); + +#keyset[id] +accessor_is_getter( //dir=decl + int id: @accessor ref +); + +#keyset[id] +accessor_is_setter( //dir=decl + int id: @accessor ref +); + +#keyset[id] +accessor_is_will_set( //dir=decl + int id: @accessor ref +); + +#keyset[id] +accessor_is_did_set( //dir=decl + int id: @accessor ref +); + +#keyset[id] +accessor_is_read( //dir=decl + int id: @accessor ref +); + +#keyset[id] +accessor_is_modify( //dir=decl + int id: @accessor ref +); + +#keyset[id] +accessor_is_unsafe_address( //dir=decl + int id: @accessor ref +); + +#keyset[id] +accessor_is_unsafe_mutable_address( //dir=decl + int id: @accessor ref +); + +#keyset[id] +accessor_is_distributed_get( //dir=decl + int id: @accessor ref +); + +#keyset[id] +accessor_is_read2( //dir=decl + int id: @accessor ref +); + +#keyset[id] +accessor_is_modify2( //dir=decl + int id: @accessor ref +); + +#keyset[id] +accessor_is_init( //dir=decl + int id: @accessor ref +); + +associated_type_decls( //dir=decl + unique int id: @associated_type_decl +); + +concrete_var_decls( //dir=decl + unique int id: @concrete_var_decl, + int introducer_int: int ref +); + +generic_type_param_decls( //dir=decl + unique int id: @generic_type_param_decl +); + +named_functions( //dir=decl + unique int id: @named_function +); + +@nominal_type_decl = + @class_decl +| @enum_decl +| @protocol_decl +| @struct_decl +; + +#keyset[id] +nominal_type_decls( //dir=decl + int id: @nominal_type_decl ref, + int type_: @type_or_none ref +); + +opaque_type_decls( //dir=decl + unique int id: @opaque_type_decl, + int naming_declaration: @value_decl_or_none ref +); + +#keyset[id, index] +opaque_type_decl_opaque_generic_params( //dir=decl + int id: @opaque_type_decl ref, + int index: int ref, + int opaque_generic_param: @generic_type_param_type_or_none ref +); + +param_decls( //dir=decl + unique int id: @param_decl +); + +#keyset[id] +param_decl_is_inout( //dir=decl + int id: @param_decl ref +); + +#keyset[id] +param_decl_property_wrapper_local_wrapped_var_bindings( //dir=decl + int id: @param_decl ref, + int property_wrapper_local_wrapped_var_binding: @pattern_binding_decl_or_none ref +); + +#keyset[id] +param_decl_property_wrapper_local_wrapped_vars( //dir=decl + int id: @param_decl ref, + int property_wrapper_local_wrapped_var: @var_decl_or_none ref +); + +type_alias_decls( //dir=decl + unique int id: @type_alias_decl, + int aliased_type: @type_or_none ref +); + +class_decls( //dir=decl + unique int id: @class_decl +); + +enum_decls( //dir=decl + unique int id: @enum_decl +); + +protocol_decls( //dir=decl + unique int id: @protocol_decl +); + +struct_decls( //dir=decl + unique int id: @struct_decl +); + +arguments( //dir=expr + unique int id: @argument, + string label: string ref, + int expr: @expr_or_none ref +); + +@expr = + @any_try_expr +| @applied_property_wrapper_expr +| @apply_expr +| @assign_expr +| @bind_optional_expr +| @capture_list_expr +| @closure_expr +| @collection_expr +| @consume_expr +| @copy_expr +| @current_context_isolation_expr +| @decl_ref_expr +| @default_argument_expr +| @discard_assignment_expr +| @dot_syntax_base_ignored_expr +| @dynamic_type_expr +| @enum_is_case_expr +| @error_expr +| @explicit_cast_expr +| @extract_function_isolation_expr +| @force_value_expr +| @identity_expr +| @if_expr +| @implicit_conversion_expr +| @in_out_expr +| @key_path_application_expr +| @key_path_dot_expr +| @key_path_expr +| @lazy_initialization_expr +| @literal_expr +| @lookup_expr +| @make_temporarily_escapable_expr +| @materialize_pack_expr +| @obj_c_selector_expr +| @one_way_expr +| @opaque_value_expr +| @open_existential_expr +| @optional_evaluation_expr +| @other_initializer_ref_expr +| @overloaded_decl_ref_expr +| @pack_element_expr +| @pack_expansion_expr +| @property_wrapper_value_placeholder_expr +| @rebind_self_in_initializer_expr +| @sequence_expr +| @single_value_stmt_expr +| @super_ref_expr +| @tap_expr +| @tuple_element_expr +| @tuple_expr +| @type_expr +| @type_value_expr +| @unresolved_decl_ref_expr +| @unresolved_dot_expr +| @unresolved_member_expr +| @unresolved_pattern_expr +| @unresolved_specialize_expr +| @vararg_expansion_expr +; + +#keyset[id] +expr_types( //dir=expr + int id: @expr ref, + int type_: @type_or_none ref +); + +@any_try_expr = + @force_try_expr +| @optional_try_expr +| @try_expr +; + +#keyset[id] +any_try_exprs( //dir=expr + int id: @any_try_expr ref, + int sub_expr: @expr_or_none ref +); + +applied_property_wrapper_exprs( //dir=expr + unique int id: @applied_property_wrapper_expr, + int kind: int ref, + int value: @expr_or_none ref, + int param: @param_decl_or_none ref +); + +@apply_expr = + @binary_expr +| @call_expr +| @postfix_unary_expr +| @prefix_unary_expr +| @self_apply_expr +; + +#keyset[id] +apply_exprs( //dir=expr + int id: @apply_expr ref, + int function: @expr_or_none ref +); + +#keyset[id, index] +apply_expr_arguments( //dir=expr + int id: @apply_expr ref, + int index: int ref, + int argument: @argument_or_none ref +); + +assign_exprs( //dir=expr + unique int id: @assign_expr, + int dest: @expr_or_none ref, + int source: @expr_or_none ref +); + +bind_optional_exprs( //dir=expr + unique int id: @bind_optional_expr, + int sub_expr: @expr_or_none ref +); + +capture_list_exprs( //dir=expr + unique int id: @capture_list_expr, + int closure_body: @closure_expr_or_none ref +); + +#keyset[id, index] +capture_list_expr_binding_decls( //dir=expr + int id: @capture_list_expr ref, + int index: int ref, + int binding_decl: @pattern_binding_decl_or_none ref +); + +@closure_expr = + @auto_closure_expr +| @explicit_closure_expr +; + +@collection_expr = + @array_expr +| @dictionary_expr +; + +consume_exprs( //dir=expr + unique int id: @consume_expr, + int sub_expr: @expr_or_none ref +); + +copy_exprs( //dir=expr + unique int id: @copy_expr, + int sub_expr: @expr_or_none ref +); + +current_context_isolation_exprs( //dir=expr + unique int id: @current_context_isolation_expr, + int actor: @expr_or_none ref +); + +decl_ref_exprs( //dir=expr + unique int id: @decl_ref_expr, + int decl: @decl_or_none ref +); + +#keyset[id, index] +decl_ref_expr_replacement_types( //dir=expr + int id: @decl_ref_expr ref, + int index: int ref, + int replacement_type: @type_or_none ref +); + +#keyset[id] +decl_ref_expr_has_direct_to_storage_semantics( //dir=expr + int id: @decl_ref_expr ref +); + +#keyset[id] +decl_ref_expr_has_direct_to_implementation_semantics( //dir=expr + int id: @decl_ref_expr ref +); + +#keyset[id] +decl_ref_expr_has_ordinary_semantics( //dir=expr + int id: @decl_ref_expr ref +); + +#keyset[id] +decl_ref_expr_has_distributed_thunk_semantics( //dir=expr + int id: @decl_ref_expr ref +); + +default_argument_exprs( //dir=expr + unique int id: @default_argument_expr, + int param_decl: @param_decl_or_none ref, + int param_index: int ref +); + +#keyset[id] +default_argument_expr_caller_side_defaults( //dir=expr + int id: @default_argument_expr ref, + int caller_side_default: @expr_or_none ref +); + +discard_assignment_exprs( //dir=expr + unique int id: @discard_assignment_expr +); + +dot_syntax_base_ignored_exprs( //dir=expr + unique int id: @dot_syntax_base_ignored_expr, + int qualifier: @expr_or_none ref, + int sub_expr: @expr_or_none ref +); + +dynamic_type_exprs( //dir=expr + unique int id: @dynamic_type_expr, + int base: @expr_or_none ref +); + +enum_is_case_exprs( //dir=expr + unique int id: @enum_is_case_expr, + int sub_expr: @expr_or_none ref, + int element: @enum_element_decl_or_none ref +); + +error_exprs( //dir=expr + unique int id: @error_expr +); + +@explicit_cast_expr = + @checked_cast_expr +| @coerce_expr +; + +#keyset[id] +explicit_cast_exprs( //dir=expr + int id: @explicit_cast_expr ref, + int sub_expr: @expr_or_none ref +); + +extract_function_isolation_exprs( //dir=expr + unique int id: @extract_function_isolation_expr, + int function_expr: @expr_or_none ref +); + +force_value_exprs( //dir=expr + unique int id: @force_value_expr, + int sub_expr: @expr_or_none ref +); + +@identity_expr = + @await_expr +| @borrow_expr +| @dot_self_expr +| @paren_expr +| @unresolved_member_chain_result_expr +| @unsafe_expr +; + +#keyset[id] +identity_exprs( //dir=expr + int id: @identity_expr ref, + int sub_expr: @expr_or_none ref +); + +if_exprs( //dir=expr + unique int id: @if_expr, + int condition: @expr_or_none ref, + int then_expr: @expr_or_none ref, + int else_expr: @expr_or_none ref +); + +@implicit_conversion_expr = + @abi_safe_conversion_expr +| @actor_isolation_erasure_expr +| @any_hashable_erasure_expr +| @archetype_to_super_expr +| @array_to_pointer_expr +| @bridge_from_obj_c_expr +| @bridge_to_obj_c_expr +| @class_metatype_to_object_expr +| @collection_upcast_conversion_expr +| @conditional_bridge_from_obj_c_expr +| @covariant_function_conversion_expr +| @covariant_return_conversion_expr +| @derived_to_base_expr +| @destructure_tuple_expr +| @differentiable_function_expr +| @differentiable_function_extract_original_expr +| @erasure_expr +| @existential_metatype_to_object_expr +| @foreign_object_conversion_expr +| @function_conversion_expr +| @in_out_to_pointer_expr +| @inject_into_optional_expr +| @linear_function_expr +| @linear_function_extract_original_expr +| @linear_to_differentiable_function_expr +| @load_expr +| @metatype_conversion_expr +| @pointer_to_pointer_expr +| @protocol_metatype_to_object_expr +| @string_to_pointer_expr +| @underlying_to_opaque_expr +| @unevaluated_instance_expr +| @unreachable_expr +| @unresolved_type_conversion_expr +| @unsafe_cast_expr +; + +#keyset[id] +implicit_conversion_exprs( //dir=expr + int id: @implicit_conversion_expr ref, + int sub_expr: @expr_or_none ref +); + +in_out_exprs( //dir=expr + unique int id: @in_out_expr, + int sub_expr: @expr_or_none ref +); + +key_path_application_exprs( //dir=expr + unique int id: @key_path_application_expr, + int base: @expr_or_none ref, + int key_path: @expr_or_none ref +); + +key_path_dot_exprs( //dir=expr + unique int id: @key_path_dot_expr +); + +key_path_exprs( //dir=expr + unique int id: @key_path_expr +); + +#keyset[id] +key_path_expr_roots( //dir=expr + int id: @key_path_expr ref, + int root: @type_repr_or_none ref +); + +#keyset[id, index] +key_path_expr_components( //dir=expr + int id: @key_path_expr ref, + int index: int ref, + int component: @key_path_component_or_none ref +); + +lazy_initialization_exprs( //dir=expr + unique int id: @lazy_initialization_expr, + int sub_expr: @expr_or_none ref +); + +@literal_expr = + @builtin_literal_expr +| @interpolated_string_literal_expr +| @nil_literal_expr +| @object_literal_expr +| @regex_literal_expr +; + +@lookup_expr = + @dynamic_lookup_expr +| @member_ref_expr +| @subscript_expr +; + +#keyset[id] +lookup_exprs( //dir=expr + int id: @lookup_expr ref, + int base: @expr_or_none ref +); + +#keyset[id] +lookup_expr_members( //dir=expr + int id: @lookup_expr ref, + int member: @decl_or_none ref +); + +make_temporarily_escapable_exprs( //dir=expr + unique int id: @make_temporarily_escapable_expr, + int escaping_closure: @opaque_value_expr_or_none ref, + int nonescaping_closure: @expr_or_none ref, + int sub_expr: @expr_or_none ref +); + +materialize_pack_exprs( //dir=expr + unique int id: @materialize_pack_expr, + int sub_expr: @expr_or_none ref +); + +obj_c_selector_exprs( //dir=expr + unique int id: @obj_c_selector_expr, + int sub_expr: @expr_or_none ref, + int method: @function_or_none ref +); + +one_way_exprs( //dir=expr + unique int id: @one_way_expr, + int sub_expr: @expr_or_none ref +); + +opaque_value_exprs( //dir=expr + unique int id: @opaque_value_expr +); + +open_existential_exprs( //dir=expr + unique int id: @open_existential_expr, + int sub_expr: @expr_or_none ref, + int existential: @expr_or_none ref, + int opaque_expr: @opaque_value_expr_or_none ref +); + +optional_evaluation_exprs( //dir=expr + unique int id: @optional_evaluation_expr, + int sub_expr: @expr_or_none ref +); + +other_initializer_ref_exprs( //dir=expr + unique int id: @other_initializer_ref_expr, + int initializer: @initializer_or_none ref +); + +overloaded_decl_ref_exprs( //dir=expr + unique int id: @overloaded_decl_ref_expr +); + +#keyset[id, index] +overloaded_decl_ref_expr_possible_declarations( //dir=expr + int id: @overloaded_decl_ref_expr ref, + int index: int ref, + int possible_declaration: @value_decl_or_none ref +); + +pack_element_exprs( //dir=expr + unique int id: @pack_element_expr, + int sub_expr: @expr_or_none ref +); + +pack_expansion_exprs( //dir=expr + unique int id: @pack_expansion_expr, + int pattern_expr: @expr_or_none ref +); + +property_wrapper_value_placeholder_exprs( //dir=expr + unique int id: @property_wrapper_value_placeholder_expr, + int placeholder: @opaque_value_expr_or_none ref +); + +#keyset[id] +property_wrapper_value_placeholder_expr_wrapped_values( //dir=expr + int id: @property_wrapper_value_placeholder_expr ref, + int wrapped_value: @expr_or_none ref +); + +rebind_self_in_initializer_exprs( //dir=expr + unique int id: @rebind_self_in_initializer_expr, + int sub_expr: @expr_or_none ref, + int self: @var_decl_or_none ref +); + +sequence_exprs( //dir=expr + unique int id: @sequence_expr +); + +#keyset[id, index] +sequence_expr_elements( //dir=expr + int id: @sequence_expr ref, + int index: int ref, + int element: @expr_or_none ref +); + +single_value_stmt_exprs( //dir=expr + unique int id: @single_value_stmt_expr, + int stmt: @stmt_or_none ref +); + +super_ref_exprs( //dir=expr + unique int id: @super_ref_expr, + int self: @var_decl_or_none ref +); + +tap_exprs( //dir=expr + unique int id: @tap_expr, + int body: @brace_stmt_or_none ref, + int var: @var_decl_or_none ref +); + +#keyset[id] +tap_expr_sub_exprs( //dir=expr + int id: @tap_expr ref, + int sub_expr: @expr_or_none ref +); + +tuple_element_exprs( //dir=expr + unique int id: @tuple_element_expr, + int sub_expr: @expr_or_none ref, + int index: int ref +); + +tuple_exprs( //dir=expr + unique int id: @tuple_expr +); + +#keyset[id, index] +tuple_expr_elements( //dir=expr + int id: @tuple_expr ref, + int index: int ref, + int element: @expr_or_none ref +); + +type_exprs( //dir=expr + unique int id: @type_expr +); + +#keyset[id] +type_expr_type_reprs( //dir=expr + int id: @type_expr ref, + int type_repr: @type_repr_or_none ref +); + +type_value_exprs( //dir=expr + unique int id: @type_value_expr, + int type_repr: @type_repr_or_none ref +); + +unresolved_decl_ref_exprs( //dir=expr + unique int id: @unresolved_decl_ref_expr +); + +#keyset[id] +unresolved_decl_ref_expr_names( //dir=expr + int id: @unresolved_decl_ref_expr ref, + string name: string ref +); + +unresolved_dot_exprs( //dir=expr + unique int id: @unresolved_dot_expr, + int base: @expr_or_none ref, + string name: string ref +); + +unresolved_member_exprs( //dir=expr + unique int id: @unresolved_member_expr, + string name: string ref +); + +unresolved_pattern_exprs( //dir=expr + unique int id: @unresolved_pattern_expr, + int sub_pattern: @pattern_or_none ref +); + +unresolved_specialize_exprs( //dir=expr + unique int id: @unresolved_specialize_expr, + int sub_expr: @expr_or_none ref +); + +vararg_expansion_exprs( //dir=expr + unique int id: @vararg_expansion_expr, + int sub_expr: @expr_or_none ref +); + +abi_safe_conversion_exprs( //dir=expr + unique int id: @abi_safe_conversion_expr +); + +actor_isolation_erasure_exprs( //dir=expr + unique int id: @actor_isolation_erasure_expr +); + +any_hashable_erasure_exprs( //dir=expr + unique int id: @any_hashable_erasure_expr +); + +archetype_to_super_exprs( //dir=expr + unique int id: @archetype_to_super_expr +); + +array_exprs( //dir=expr + unique int id: @array_expr +); + +#keyset[id, index] +array_expr_elements( //dir=expr + int id: @array_expr ref, + int index: int ref, + int element: @expr_or_none ref +); + +array_to_pointer_exprs( //dir=expr + unique int id: @array_to_pointer_expr +); + +auto_closure_exprs( //dir=expr + unique int id: @auto_closure_expr +); + +await_exprs( //dir=expr + unique int id: @await_expr +); + +binary_exprs( //dir=expr + unique int id: @binary_expr +); + +borrow_exprs( //dir=expr + unique int id: @borrow_expr +); + +bridge_from_obj_c_exprs( //dir=expr + unique int id: @bridge_from_obj_c_expr +); + +bridge_to_obj_c_exprs( //dir=expr + unique int id: @bridge_to_obj_c_expr +); + +@builtin_literal_expr = + @boolean_literal_expr +| @magic_identifier_literal_expr +| @number_literal_expr +| @string_literal_expr +; + +call_exprs( //dir=expr + unique int id: @call_expr +); + +@checked_cast_expr = + @conditional_checked_cast_expr +| @forced_checked_cast_expr +| @is_expr +; + +class_metatype_to_object_exprs( //dir=expr + unique int id: @class_metatype_to_object_expr +); + +coerce_exprs( //dir=expr + unique int id: @coerce_expr +); + +collection_upcast_conversion_exprs( //dir=expr + unique int id: @collection_upcast_conversion_expr +); + +conditional_bridge_from_obj_c_exprs( //dir=expr + unique int id: @conditional_bridge_from_obj_c_expr +); + +covariant_function_conversion_exprs( //dir=expr + unique int id: @covariant_function_conversion_expr +); + +covariant_return_conversion_exprs( //dir=expr + unique int id: @covariant_return_conversion_expr +); + +derived_to_base_exprs( //dir=expr + unique int id: @derived_to_base_expr +); + +destructure_tuple_exprs( //dir=expr + unique int id: @destructure_tuple_expr +); + +dictionary_exprs( //dir=expr + unique int id: @dictionary_expr +); + +#keyset[id, index] +dictionary_expr_elements( //dir=expr + int id: @dictionary_expr ref, + int index: int ref, + int element: @expr_or_none ref +); + +differentiable_function_exprs( //dir=expr + unique int id: @differentiable_function_expr +); + +differentiable_function_extract_original_exprs( //dir=expr + unique int id: @differentiable_function_extract_original_expr +); + +dot_self_exprs( //dir=expr + unique int id: @dot_self_expr +); + +@dynamic_lookup_expr = + @dynamic_member_ref_expr +| @dynamic_subscript_expr +; + +erasure_exprs( //dir=expr + unique int id: @erasure_expr +); + +existential_metatype_to_object_exprs( //dir=expr + unique int id: @existential_metatype_to_object_expr +); + +explicit_closure_exprs( //dir=expr + unique int id: @explicit_closure_expr +); + +force_try_exprs( //dir=expr + unique int id: @force_try_expr +); + +foreign_object_conversion_exprs( //dir=expr + unique int id: @foreign_object_conversion_expr +); + +function_conversion_exprs( //dir=expr + unique int id: @function_conversion_expr +); + +in_out_to_pointer_exprs( //dir=expr + unique int id: @in_out_to_pointer_expr +); + +inject_into_optional_exprs( //dir=expr + unique int id: @inject_into_optional_expr +); + +interpolated_string_literal_exprs( //dir=expr + unique int id: @interpolated_string_literal_expr +); + +#keyset[id] +interpolated_string_literal_expr_interpolation_exprs( //dir=expr + int id: @interpolated_string_literal_expr ref, + int interpolation_expr: @opaque_value_expr_or_none ref +); + +#keyset[id] +interpolated_string_literal_expr_appending_exprs( //dir=expr + int id: @interpolated_string_literal_expr ref, + int appending_expr: @tap_expr_or_none ref +); + +linear_function_exprs( //dir=expr + unique int id: @linear_function_expr +); + +linear_function_extract_original_exprs( //dir=expr + unique int id: @linear_function_extract_original_expr +); + +linear_to_differentiable_function_exprs( //dir=expr + unique int id: @linear_to_differentiable_function_expr +); + +load_exprs( //dir=expr + unique int id: @load_expr +); + +member_ref_exprs( //dir=expr + unique int id: @member_ref_expr +); + +#keyset[id] +member_ref_expr_has_direct_to_storage_semantics( //dir=expr + int id: @member_ref_expr ref +); + +#keyset[id] +member_ref_expr_has_direct_to_implementation_semantics( //dir=expr + int id: @member_ref_expr ref +); + +#keyset[id] +member_ref_expr_has_ordinary_semantics( //dir=expr + int id: @member_ref_expr ref +); + +#keyset[id] +member_ref_expr_has_distributed_thunk_semantics( //dir=expr + int id: @member_ref_expr ref +); + +metatype_conversion_exprs( //dir=expr + unique int id: @metatype_conversion_expr +); + +nil_literal_exprs( //dir=expr + unique int id: @nil_literal_expr +); + +object_literal_exprs( //dir=expr + unique int id: @object_literal_expr, + int kind: int ref +); + +#keyset[id, index] +object_literal_expr_arguments( //dir=expr + int id: @object_literal_expr ref, + int index: int ref, + int argument: @argument_or_none ref +); + +optional_try_exprs( //dir=expr + unique int id: @optional_try_expr +); + +paren_exprs( //dir=expr + unique int id: @paren_expr +); + +pointer_to_pointer_exprs( //dir=expr + unique int id: @pointer_to_pointer_expr +); + +postfix_unary_exprs( //dir=expr + unique int id: @postfix_unary_expr +); + +prefix_unary_exprs( //dir=expr + unique int id: @prefix_unary_expr +); + +protocol_metatype_to_object_exprs( //dir=expr + unique int id: @protocol_metatype_to_object_expr +); + +regex_literal_exprs( //dir=expr + unique int id: @regex_literal_expr, + string pattern: string ref, + int version: int ref +); + +@self_apply_expr = + @dot_syntax_call_expr +| @initializer_ref_call_expr +; + +#keyset[id] +self_apply_exprs( //dir=expr + int id: @self_apply_expr ref, + int base: @expr_or_none ref +); + +string_to_pointer_exprs( //dir=expr + unique int id: @string_to_pointer_expr +); + +subscript_exprs( //dir=expr + unique int id: @subscript_expr +); + +#keyset[id, index] +subscript_expr_arguments( //dir=expr + int id: @subscript_expr ref, + int index: int ref, + int argument: @argument_or_none ref +); + +#keyset[id] +subscript_expr_has_direct_to_storage_semantics( //dir=expr + int id: @subscript_expr ref +); + +#keyset[id] +subscript_expr_has_direct_to_implementation_semantics( //dir=expr + int id: @subscript_expr ref +); + +#keyset[id] +subscript_expr_has_ordinary_semantics( //dir=expr + int id: @subscript_expr ref +); + +#keyset[id] +subscript_expr_has_distributed_thunk_semantics( //dir=expr + int id: @subscript_expr ref +); + +try_exprs( //dir=expr + unique int id: @try_expr +); + +underlying_to_opaque_exprs( //dir=expr + unique int id: @underlying_to_opaque_expr +); + +unevaluated_instance_exprs( //dir=expr + unique int id: @unevaluated_instance_expr +); + +unreachable_exprs( //dir=expr + unique int id: @unreachable_expr +); + +unresolved_member_chain_result_exprs( //dir=expr + unique int id: @unresolved_member_chain_result_expr +); + +unresolved_type_conversion_exprs( //dir=expr + unique int id: @unresolved_type_conversion_expr +); + +unsafe_cast_exprs( //dir=expr + unique int id: @unsafe_cast_expr +); + +unsafe_exprs( //dir=expr + unique int id: @unsafe_expr +); + +boolean_literal_exprs( //dir=expr + unique int id: @boolean_literal_expr, + boolean value: boolean ref +); + +conditional_checked_cast_exprs( //dir=expr + unique int id: @conditional_checked_cast_expr +); + +dot_syntax_call_exprs( //dir=expr + unique int id: @dot_syntax_call_expr +); + +dynamic_member_ref_exprs( //dir=expr + unique int id: @dynamic_member_ref_expr +); + +dynamic_subscript_exprs( //dir=expr + unique int id: @dynamic_subscript_expr +); + +forced_checked_cast_exprs( //dir=expr + unique int id: @forced_checked_cast_expr +); + +initializer_ref_call_exprs( //dir=expr + unique int id: @initializer_ref_call_expr +); + +is_exprs( //dir=expr + unique int id: @is_expr +); + +magic_identifier_literal_exprs( //dir=expr + unique int id: @magic_identifier_literal_expr, + string kind: string ref +); + +@number_literal_expr = + @float_literal_expr +| @integer_literal_expr +; + +string_literal_exprs( //dir=expr + unique int id: @string_literal_expr, + string value: string ref +); + +float_literal_exprs( //dir=expr + unique int id: @float_literal_expr, + string string_value: string ref +); + +integer_literal_exprs( //dir=expr + unique int id: @integer_literal_expr, + string string_value: string ref +); + +@pattern = + @any_pattern +| @binding_pattern +| @bool_pattern +| @enum_element_pattern +| @expr_pattern +| @is_pattern +| @named_pattern +| @optional_some_pattern +| @paren_pattern +| @tuple_pattern +| @typed_pattern +; + +#keyset[id] +pattern_types( //dir=pattern + int id: @pattern ref, + int type_: @type_or_none ref +); + +any_patterns( //dir=pattern + unique int id: @any_pattern +); + +binding_patterns( //dir=pattern + unique int id: @binding_pattern, + int sub_pattern: @pattern_or_none ref +); + +bool_patterns( //dir=pattern + unique int id: @bool_pattern, + boolean value: boolean ref +); + +enum_element_patterns( //dir=pattern + unique int id: @enum_element_pattern, + int element: @enum_element_decl_or_none ref +); + +#keyset[id] +enum_element_pattern_sub_patterns( //dir=pattern + int id: @enum_element_pattern ref, + int sub_pattern: @pattern_or_none ref +); + +expr_patterns( //dir=pattern + unique int id: @expr_pattern, + int sub_expr: @expr_or_none ref +); + +is_patterns( //dir=pattern + unique int id: @is_pattern +); + +#keyset[id] +is_pattern_cast_type_reprs( //dir=pattern + int id: @is_pattern ref, + int cast_type_repr: @type_repr_or_none ref +); + +#keyset[id] +is_pattern_sub_patterns( //dir=pattern + int id: @is_pattern ref, + int sub_pattern: @pattern_or_none ref +); + +named_patterns( //dir=pattern + unique int id: @named_pattern, + int var_decl: @var_decl_or_none ref +); + +optional_some_patterns( //dir=pattern + unique int id: @optional_some_pattern, + int sub_pattern: @pattern_or_none ref +); + +paren_patterns( //dir=pattern + unique int id: @paren_pattern, + int sub_pattern: @pattern_or_none ref +); + +tuple_patterns( //dir=pattern + unique int id: @tuple_pattern +); + +#keyset[id, index] +tuple_pattern_elements( //dir=pattern + int id: @tuple_pattern ref, + int index: int ref, + int element: @pattern_or_none ref +); + +typed_patterns( //dir=pattern + unique int id: @typed_pattern, + int sub_pattern: @pattern_or_none ref +); + +#keyset[id] +typed_pattern_type_reprs( //dir=pattern + int id: @typed_pattern ref, + int type_repr: @type_repr_or_none ref +); + +case_label_items( //dir=stmt + unique int id: @case_label_item, + int pattern: @pattern_or_none ref +); + +#keyset[id] +case_label_item_guards( //dir=stmt + int id: @case_label_item ref, + int guard: @expr_or_none ref +); + +condition_elements( //dir=stmt + unique int id: @condition_element +); + +#keyset[id] +condition_element_booleans( //dir=stmt + int id: @condition_element ref, + int boolean_: @expr_or_none ref +); + +#keyset[id] +condition_element_patterns( //dir=stmt + int id: @condition_element ref, + int pattern: @pattern_or_none ref +); + +#keyset[id] +condition_element_initializers( //dir=stmt + int id: @condition_element ref, + int initializer: @expr_or_none ref +); + +#keyset[id] +condition_element_availabilities( //dir=stmt + int id: @condition_element ref, + int availability: @availability_info_or_none ref +); + +@stmt = + @brace_stmt +| @break_stmt +| @case_stmt +| @continue_stmt +| @defer_stmt +| @discard_stmt +| @fail_stmt +| @fallthrough_stmt +| @labeled_stmt +| @pound_assert_stmt +| @return_stmt +| @then_stmt +| @throw_stmt +| @yield_stmt +; + +stmt_conditions( //dir=stmt + unique int id: @stmt_condition +); + +#keyset[id, index] +stmt_condition_elements( //dir=stmt + int id: @stmt_condition ref, + int index: int ref, + int element: @condition_element_or_none ref +); + +brace_stmts( //dir=stmt + unique int id: @brace_stmt +); + +#keyset[id, index] +brace_stmt_elements( //dir=stmt + int id: @brace_stmt ref, + int index: int ref, + int element: @ast_node_or_none ref +); + +break_stmts( //dir=stmt + unique int id: @break_stmt +); + +#keyset[id] +break_stmt_target_names( //dir=stmt + int id: @break_stmt ref, + string target_name: string ref +); + +#keyset[id] +break_stmt_targets( //dir=stmt + int id: @break_stmt ref, + int target: @stmt_or_none ref +); + +case_stmts( //dir=stmt + unique int id: @case_stmt, + int body: @stmt_or_none ref +); + +#keyset[id, index] +case_stmt_labels( //dir=stmt + int id: @case_stmt ref, + int index: int ref, + int label: @case_label_item_or_none ref +); + +#keyset[id, index] +case_stmt_variables( //dir=stmt + int id: @case_stmt ref, + int index: int ref, + int variable: @var_decl_or_none ref +); + +continue_stmts( //dir=stmt + unique int id: @continue_stmt +); + +#keyset[id] +continue_stmt_target_names( //dir=stmt + int id: @continue_stmt ref, + string target_name: string ref +); + +#keyset[id] +continue_stmt_targets( //dir=stmt + int id: @continue_stmt ref, + int target: @stmt_or_none ref +); + +defer_stmts( //dir=stmt + unique int id: @defer_stmt, + int body: @brace_stmt_or_none ref +); + +discard_stmts( //dir=stmt + unique int id: @discard_stmt, + int sub_expr: @expr_or_none ref +); + +fail_stmts( //dir=stmt + unique int id: @fail_stmt +); + +fallthrough_stmts( //dir=stmt + unique int id: @fallthrough_stmt, + int fallthrough_source: @case_stmt_or_none ref, + int fallthrough_dest: @case_stmt_or_none ref +); + +@labeled_stmt = + @do_catch_stmt +| @do_stmt +| @for_each_stmt +| @labeled_conditional_stmt +| @repeat_while_stmt +| @switch_stmt +; + +#keyset[id] +labeled_stmt_labels( //dir=stmt + int id: @labeled_stmt ref, + string label: string ref +); + +pound_assert_stmts( //dir=stmt + unique int id: @pound_assert_stmt, + int condition: @expr_or_none ref, + string message: string ref +); + +return_stmts( //dir=stmt + unique int id: @return_stmt +); + +#keyset[id] +return_stmt_results( //dir=stmt + int id: @return_stmt ref, + int result: @expr_or_none ref +); + +then_stmts( //dir=stmt + unique int id: @then_stmt, + int result: @expr_or_none ref +); + +throw_stmts( //dir=stmt + unique int id: @throw_stmt, + int sub_expr: @expr_or_none ref +); + +yield_stmts( //dir=stmt + unique int id: @yield_stmt +); + +#keyset[id, index] +yield_stmt_results( //dir=stmt + int id: @yield_stmt ref, + int index: int ref, + int result: @expr_or_none ref +); + +do_catch_stmts( //dir=stmt + unique int id: @do_catch_stmt, + int body: @stmt_or_none ref +); + +#keyset[id, index] +do_catch_stmt_catches( //dir=stmt + int id: @do_catch_stmt ref, + int index: int ref, + int catch: @case_stmt_or_none ref +); + +do_stmts( //dir=stmt + unique int id: @do_stmt, + int body: @brace_stmt_or_none ref +); + +for_each_stmts( //dir=stmt + unique int id: @for_each_stmt, + int pattern: @pattern_or_none ref, + int body: @brace_stmt_or_none ref +); + +#keyset[id, index] +for_each_stmt_variables( //dir=stmt + int id: @for_each_stmt ref, + int index: int ref, + int variable: @var_decl_or_none ref +); + +#keyset[id] +for_each_stmt_wheres( //dir=stmt + int id: @for_each_stmt ref, + int where: @expr_or_none ref +); + +#keyset[id] +for_each_stmt_iterator_vars( //dir=stmt + int id: @for_each_stmt ref, + int iteratorVar: @pattern_binding_decl_or_none ref +); + +#keyset[id] +for_each_stmt_next_calls( //dir=stmt + int id: @for_each_stmt ref, + int nextCall: @expr_or_none ref +); + +@labeled_conditional_stmt = + @guard_stmt +| @if_stmt +| @while_stmt +; + +#keyset[id] +labeled_conditional_stmts( //dir=stmt + int id: @labeled_conditional_stmt ref, + int condition: @stmt_condition_or_none ref +); + +repeat_while_stmts( //dir=stmt + unique int id: @repeat_while_stmt, + int condition: @expr_or_none ref, + int body: @stmt_or_none ref +); + +switch_stmts( //dir=stmt + unique int id: @switch_stmt, + int expr: @expr_or_none ref +); + +#keyset[id, index] +switch_stmt_cases( //dir=stmt + int id: @switch_stmt ref, + int index: int ref, + int case_: @case_stmt_or_none ref +); + +guard_stmts( //dir=stmt + unique int id: @guard_stmt, + int body: @brace_stmt_or_none ref +); + +if_stmts( //dir=stmt + unique int id: @if_stmt, + int then: @stmt_or_none ref +); + +#keyset[id] +if_stmt_elses( //dir=stmt + int id: @if_stmt ref, + int else: @stmt_or_none ref +); + +while_stmts( //dir=stmt + unique int id: @while_stmt, + int body: @stmt_or_none ref +); + +@type = + @any_function_type +| @any_generic_type +| @any_metatype_type +| @builtin_type +| @dependent_member_type +| @dynamic_self_type +| @error_type +| @existential_type +| @in_out_type +| @integer_type +| @l_value_type +| @module_type +| @pack_element_type +| @pack_expansion_type +| @pack_type +| @parameterized_protocol_type +| @protocol_composition_type +| @reference_storage_type +| @substitutable_type +| @sugar_type +| @tuple_type +| @unresolved_type +; + +#keyset[id] +types( //dir=type + int id: @type ref, + string name: string ref, + int canonical_type: @type_or_none ref +); + +type_reprs( //dir=type + unique int id: @type_repr, + int type_: @type_or_none ref +); + +@any_function_type = + @function_type +| @generic_function_type +; + +#keyset[id] +any_function_types( //dir=type + int id: @any_function_type ref, + int result: @type_or_none ref +); + +#keyset[id, index] +any_function_type_param_types( //dir=type + int id: @any_function_type ref, + int index: int ref, + int param_type: @type_or_none ref +); + +#keyset[id] +any_function_type_is_throwing( //dir=type + int id: @any_function_type ref +); + +#keyset[id] +any_function_type_is_async( //dir=type + int id: @any_function_type ref +); + +@any_generic_type = + @nominal_or_bound_generic_nominal_type +| @unbound_generic_type +; + +#keyset[id] +any_generic_types( //dir=type + int id: @any_generic_type ref, + int declaration: @generic_type_decl_or_none ref +); + +#keyset[id] +any_generic_type_parents( //dir=type + int id: @any_generic_type ref, + int parent: @type_or_none ref +); + +@any_metatype_type = + @existential_metatype_type +| @metatype_type +; + +@builtin_type = + @any_builtin_integer_type +| @builtin_bridge_object_type +| @builtin_default_actor_storage_type +| @builtin_executor_type +| @builtin_float_type +| @builtin_generic_type +| @builtin_job_type +| @builtin_native_object_type +| @builtin_raw_pointer_type +| @builtin_raw_unsafe_continuation_type +| @builtin_unsafe_value_buffer_type +| @builtin_vector_type +; + +dependent_member_types( //dir=type + unique int id: @dependent_member_type, + int base_type: @type_or_none ref, + int associated_type_decl: @associated_type_decl_or_none ref +); + +dynamic_self_types( //dir=type + unique int id: @dynamic_self_type, + int static_self_type: @type_or_none ref +); + +error_types( //dir=type + unique int id: @error_type +); + +existential_types( //dir=type + unique int id: @existential_type, + int constraint: @type_or_none ref +); + +in_out_types( //dir=type + unique int id: @in_out_type, + int object_type: @type_or_none ref +); + +integer_types( //dir=type + unique int id: @integer_type, + string value: string ref +); + +l_value_types( //dir=type + unique int id: @l_value_type, + int object_type: @type_or_none ref +); + +module_types( //dir=type + unique int id: @module_type, + int module: @module_decl_or_none ref +); + +pack_element_types( //dir=type + unique int id: @pack_element_type, + int pack_type: @type_or_none ref +); + +pack_expansion_types( //dir=type + unique int id: @pack_expansion_type, + int pattern_type: @type_or_none ref, + int count_type: @type_or_none ref +); + +pack_types( //dir=type + unique int id: @pack_type +); + +#keyset[id, index] +pack_type_elements( //dir=type + int id: @pack_type ref, + int index: int ref, + int element: @type_or_none ref +); + +parameterized_protocol_types( //dir=type + unique int id: @parameterized_protocol_type, + int base: @protocol_type_or_none ref +); + +#keyset[id, index] +parameterized_protocol_type_args( //dir=type + int id: @parameterized_protocol_type ref, + int index: int ref, + int arg: @type_or_none ref +); + +protocol_composition_types( //dir=type + unique int id: @protocol_composition_type +); + +#keyset[id, index] +protocol_composition_type_members( //dir=type + int id: @protocol_composition_type ref, + int index: int ref, + int member: @type_or_none ref +); + +@reference_storage_type = + @unmanaged_storage_type +| @unowned_storage_type +| @weak_storage_type +; + +#keyset[id] +reference_storage_types( //dir=type + int id: @reference_storage_type ref, + int referent_type: @type_or_none ref +); + +@substitutable_type = + @archetype_type +| @generic_type_param_type +; + +@sugar_type = + @paren_type +| @syntax_sugar_type +| @type_alias_type +; + +tuple_types( //dir=type + unique int id: @tuple_type +); + +#keyset[id, index] +tuple_type_types( //dir=type + int id: @tuple_type ref, + int index: int ref, + int type_: @type_or_none ref +); + +#keyset[id, index] +tuple_type_names( //dir=type + int id: @tuple_type ref, + int index: int ref, + string name: string ref +); + +unresolved_types( //dir=type + unique int id: @unresolved_type +); + +@any_builtin_integer_type = + @builtin_integer_literal_type +| @builtin_integer_type +; + +@archetype_type = + @local_archetype_type +| @opaque_type_archetype_type +| @pack_archetype_type +| @primary_archetype_type +; + +#keyset[id] +archetype_types( //dir=type + int id: @archetype_type ref, + int interface_type: @type_or_none ref +); + +#keyset[id] +archetype_type_superclasses( //dir=type + int id: @archetype_type ref, + int superclass: @type_or_none ref +); + +#keyset[id, index] +archetype_type_protocols( //dir=type + int id: @archetype_type ref, + int index: int ref, + int protocol: @protocol_decl_or_none ref +); + +builtin_bridge_object_types( //dir=type + unique int id: @builtin_bridge_object_type +); + +builtin_default_actor_storage_types( //dir=type + unique int id: @builtin_default_actor_storage_type +); + +builtin_executor_types( //dir=type + unique int id: @builtin_executor_type +); + +builtin_float_types( //dir=type + unique int id: @builtin_float_type +); + +@builtin_generic_type = + @builtin_fixed_array_type +; + +builtin_job_types( //dir=type + unique int id: @builtin_job_type +); + +builtin_native_object_types( //dir=type + unique int id: @builtin_native_object_type +); + +builtin_raw_pointer_types( //dir=type + unique int id: @builtin_raw_pointer_type +); + +builtin_raw_unsafe_continuation_types( //dir=type + unique int id: @builtin_raw_unsafe_continuation_type +); + +builtin_unsafe_value_buffer_types( //dir=type + unique int id: @builtin_unsafe_value_buffer_type +); + +builtin_vector_types( //dir=type + unique int id: @builtin_vector_type +); + +existential_metatype_types( //dir=type + unique int id: @existential_metatype_type +); + +function_types( //dir=type + unique int id: @function_type +); + +generic_function_types( //dir=type + unique int id: @generic_function_type +); + +#keyset[id, index] +generic_function_type_generic_params( //dir=type + int id: @generic_function_type ref, + int index: int ref, + int generic_param: @generic_type_param_type_or_none ref +); + +generic_type_param_types( //dir=type + unique int id: @generic_type_param_type +); + +metatype_types( //dir=type + unique int id: @metatype_type +); + +@nominal_or_bound_generic_nominal_type = + @bound_generic_type +| @nominal_type +; + +paren_types( //dir=type + unique int id: @paren_type, + int type_: @type_or_none ref +); + +@syntax_sugar_type = + @dictionary_type +| @inline_array_type +| @unary_syntax_sugar_type +; + +type_alias_types( //dir=type + unique int id: @type_alias_type, + int decl: @type_alias_decl_or_none ref +); + +unbound_generic_types( //dir=type + unique int id: @unbound_generic_type +); + +unmanaged_storage_types( //dir=type + unique int id: @unmanaged_storage_type +); + +unowned_storage_types( //dir=type + unique int id: @unowned_storage_type +); + +weak_storage_types( //dir=type + unique int id: @weak_storage_type +); + +@bound_generic_type = + @bound_generic_class_type +| @bound_generic_enum_type +| @bound_generic_struct_type +; + +#keyset[id, index] +bound_generic_type_arg_types( //dir=type + int id: @bound_generic_type ref, + int index: int ref, + int arg_type: @type_or_none ref +); + +builtin_fixed_array_types( //dir=type + unique int id: @builtin_fixed_array_type, + int size: @type_or_none ref, + int element_type: @type_or_none ref +); + +builtin_integer_literal_types( //dir=type + unique int id: @builtin_integer_literal_type +); + +builtin_integer_types( //dir=type + unique int id: @builtin_integer_type +); + +#keyset[id] +builtin_integer_type_widths( //dir=type + int id: @builtin_integer_type ref, + int width: int ref +); + +dictionary_types( //dir=type + unique int id: @dictionary_type, + int key_type: @type_or_none ref, + int value_type: @type_or_none ref +); + +inline_array_types( //dir=type + unique int id: @inline_array_type, + int count_type: @type_or_none ref, + int element_type: @type_or_none ref +); + +@local_archetype_type = + @element_archetype_type +| @existential_archetype_type +; + +@nominal_type = + @class_type +| @enum_type +| @protocol_type +| @struct_type +; + +opaque_type_archetype_types( //dir=type + unique int id: @opaque_type_archetype_type, + int declaration: @opaque_type_decl_or_none ref +); + +pack_archetype_types( //dir=type + unique int id: @pack_archetype_type +); + +primary_archetype_types( //dir=type + unique int id: @primary_archetype_type +); + +@unary_syntax_sugar_type = + @array_slice_type +| @optional_type +| @variadic_sequence_type +; + +#keyset[id] +unary_syntax_sugar_types( //dir=type + int id: @unary_syntax_sugar_type ref, + int base_type: @type_or_none ref +); + +array_slice_types( //dir=type + unique int id: @array_slice_type +); + +bound_generic_class_types( //dir=type + unique int id: @bound_generic_class_type +); + +bound_generic_enum_types( //dir=type + unique int id: @bound_generic_enum_type +); + +bound_generic_struct_types( //dir=type + unique int id: @bound_generic_struct_type +); + +class_types( //dir=type + unique int id: @class_type +); + +element_archetype_types( //dir=type + unique int id: @element_archetype_type +); + +enum_types( //dir=type + unique int id: @enum_type +); + +existential_archetype_types( //dir=type + unique int id: @existential_archetype_type +); + +optional_types( //dir=type + unique int id: @optional_type +); + +protocol_types( //dir=type + unique int id: @protocol_type +); + +struct_types( //dir=type + unique int id: @struct_type +); + +variadic_sequence_types( //dir=type + unique int id: @variadic_sequence_type +); + +@accessor_or_none = + @accessor +| @unspecified_element +; + +@argument_or_none = + @argument +| @unspecified_element +; + +@associated_type_decl_or_none = + @associated_type_decl +| @unspecified_element +; + +@ast_node_or_none = + @ast_node +| @unspecified_element +; + +@availability_info_or_none = + @availability_info +| @unspecified_element +; + +@availability_spec_or_none = + @availability_spec +| @unspecified_element +; + +@brace_stmt_or_none = + @brace_stmt +| @unspecified_element +; + +@captured_decl_or_none = + @captured_decl +| @unspecified_element +; + +@case_label_item_or_none = + @case_label_item +| @unspecified_element +; + +@case_stmt_or_none = + @case_stmt +| @unspecified_element +; + +@closure_expr_or_none = + @closure_expr +| @unspecified_element +; + +@condition_element_or_none = + @condition_element +| @unspecified_element +; + +@decl_or_none = + @decl +| @unspecified_element +; + +@enum_element_decl_or_none = + @enum_element_decl +| @unspecified_element +; + +@expr_or_none = + @expr +| @unspecified_element +; + +@file_or_none = + @file +| @unspecified_element +; + +@function_or_none = + @function +| @unspecified_element +; + +@generic_type_decl_or_none = + @generic_type_decl +| @unspecified_element +; + +@generic_type_param_decl_or_none = + @generic_type_param_decl +| @unspecified_element +; + +@generic_type_param_type_or_none = + @generic_type_param_type +| @unspecified_element +; + +@initializer_or_none = + @initializer +| @unspecified_element +; + +@key_path_component_or_none = + @key_path_component +| @unspecified_element +; + +@location_or_none = + @location +| @unspecified_element +; + +@macro_role_or_none = + @macro_role +| @unspecified_element +; + +@module_decl_or_none = + @module_decl +| @unspecified_element +; + +@nominal_type_decl_or_none = + @nominal_type_decl +| @unspecified_element +; + +@opaque_type_decl_or_none = + @opaque_type_decl +| @unspecified_element +; + +@opaque_value_expr_or_none = + @opaque_value_expr +| @unspecified_element +; + +@param_decl_or_none = + @param_decl +| @unspecified_element +; + +@pattern_or_none = + @pattern +| @unspecified_element +; + +@pattern_binding_decl_or_none = + @pattern_binding_decl +| @unspecified_element +; + +@precedence_group_decl_or_none = + @precedence_group_decl +| @unspecified_element +; + +@protocol_decl_or_none = + @protocol_decl +| @unspecified_element +; + +@protocol_type_or_none = + @protocol_type +| @unspecified_element +; + +@stmt_or_none = + @stmt +| @unspecified_element +; + +@stmt_condition_or_none = + @stmt_condition +| @unspecified_element +; + +@string_literal_expr_or_none = + @string_literal_expr +| @unspecified_element +; + +@tap_expr_or_none = + @tap_expr +| @unspecified_element +; + +@type_or_none = + @type +| @unspecified_element +; + +@type_alias_decl_or_none = + @type_alias_decl +| @unspecified_element +; + +@type_repr_or_none = + @type_repr +| @unspecified_element +; + +@value_decl_or_none = + @unspecified_element +| @value_decl +; + +@var_decl_or_none = + @unspecified_element +| @var_decl +; diff --git a/swift/ql/lib/upgrades/ee3053b673c901a325b361b18c50b18342752bf8/upgrade.properties b/swift/ql/lib/upgrades/ee3053b673c901a325b361b18c50b18342752bf8/upgrade.properties new file mode 100644 index 000000000000..48de15f84ae7 --- /dev/null +++ b/swift/ql/lib/upgrades/ee3053b673c901a325b361b18c50b18342752bf8/upgrade.properties @@ -0,0 +1,4 @@ +description: Support BuiltinFixedArrayType arguments +compatibility: backwards +builtin_fixed_array_types.rel: run upgrade.ql new_builtin_fixed_array_types +unspecified_elements.rel: run upgrade.ql new_unspecified_elements diff --git a/swift/ql/lib/upgrades/ee3053b673c901a325b361b18c50b18342752bf8/upgrade.ql b/swift/ql/lib/upgrades/ee3053b673c901a325b361b18c50b18342752bf8/upgrade.ql new file mode 100644 index 000000000000..03a001e6000a --- /dev/null +++ b/swift/ql/lib/upgrades/ee3053b673c901a325b361b18c50b18342752bf8/upgrade.ql @@ -0,0 +1,44 @@ +class BuiltinFixedArrayType extends @builtin_fixed_array_type { + string toString() { none() } +} + +newtype TAddedElement = + TSize(BuiltinFixedArrayType a) or + TElementType(BuiltinFixedArrayType a) + +module Fresh = QlBuiltins::NewEntity; + +class TNewElement = @element or Fresh::EntityId; + +class NewElement extends TNewElement { + string toString() { none() } +} + +class TypeOrNone extends @type_or_none { + string toString() { none() } +} + +query predicate new_builtin_fixed_array_types( + BuiltinFixedArrayType builtinFixedArrayType, NewElement size, NewElement elementType +) { + builtin_fixed_array_types(builtinFixedArrayType) and + Fresh::map(TSize(builtinFixedArrayType)) = size and + Fresh::map(TElementType(builtinFixedArrayType)) = elementType +} + +query predicate new_unspecified_elements(NewElement id, string property, string error) { + unspecified_elements(id, property, error) + or + exists(BuiltinFixedArrayType builtinFixedArrayType | + builtin_fixed_array_types(builtinFixedArrayType) + | + id = Fresh::map(TSize(builtinFixedArrayType)) and + error = "BuiltinFixedArrayType size missing after upgrade. Please update your CodeQL code." and + property = "" + or + id = Fresh::map(TElementType(builtinFixedArrayType)) and + error = + "BuiltinFixedArrayType element type missing after upgrade. Please update your CodeQL code." and + property = "" + ) +} diff --git a/swift/ql/test/extractor-tests/generated/type/BuiltinFixedArrayType/BuiltinFixedArrayType.expected b/swift/ql/test/extractor-tests/generated/type/BuiltinFixedArrayType/BuiltinFixedArrayType.expected new file mode 100644 index 000000000000..5dce3facedf0 --- /dev/null +++ b/swift/ql/test/extractor-tests/generated/type/BuiltinFixedArrayType/BuiltinFixedArrayType.expected @@ -0,0 +1,3 @@ +| Builtin.FixedArray<4, Int> | getName: | FixedArray<4, Int> | getCanonicalType: | Builtin.FixedArray<4, Int> | getSize: | 4 | getElementType: | Int | +| Builtin.FixedArray | getName: | FixedArray | getCanonicalType: | Builtin.FixedArray | getSize: | N | getElementType: | T | +| Builtin.FixedArray<\u03c4_0_0, \u03c4_0_1> | getName: | FixedArray<\u03c4_0_0, \u03c4_0_1> | getCanonicalType: | Builtin.FixedArray<\u03c4_0_0, \u03c4_0_1> | getSize: | \u03c4_0_0 | getElementType: | \u03c4_0_1 | diff --git a/swift/ql/test/extractor-tests/generated/type/BuiltinFixedArrayType/BuiltinFixedArrayType.ql b/swift/ql/test/extractor-tests/generated/type/BuiltinFixedArrayType/BuiltinFixedArrayType.ql new file mode 100644 index 000000000000..e8ec753f6f6e --- /dev/null +++ b/swift/ql/test/extractor-tests/generated/type/BuiltinFixedArrayType/BuiltinFixedArrayType.ql @@ -0,0 +1,20 @@ +// generated by codegen/codegen.py, do not edit +import codeql.swift.elements +import TestUtils + +query predicate instances( + BuiltinFixedArrayType x, string getName__label, string getName, string getCanonicalType__label, + Type getCanonicalType, string getSize__label, Type getSize, string getElementType__label, + Type getElementType +) { + toBeTested(x) and + not x.isUnknown() and + getName__label = "getName:" and + getName = x.getName() and + getCanonicalType__label = "getCanonicalType:" and + getCanonicalType = x.getCanonicalType() and + getSize__label = "getSize:" and + getSize = x.getSize() and + getElementType__label = "getElementType:" and + getElementType = x.getElementType() +} diff --git a/swift/ql/test/extractor-tests/generated/type/BuiltinType/fixed_array.swift b/swift/ql/test/extractor-tests/generated/type/BuiltinFixedArrayType/fixed_array.swift similarity index 100% rename from swift/ql/test/extractor-tests/generated/type/BuiltinType/fixed_array.swift rename to swift/ql/test/extractor-tests/generated/type/BuiltinFixedArrayType/fixed_array.swift diff --git a/swift/ql/test/extractor-tests/generated/type/BuiltinType/BuiltinType.expected b/swift/ql/test/extractor-tests/generated/type/BuiltinType/BuiltinType.expected index 1b64e9f4a224..27e4e6f08683 100644 --- a/swift/ql/test/extractor-tests/generated/type/BuiltinType/BuiltinType.expected +++ b/swift/ql/test/extractor-tests/generated/type/BuiltinType/BuiltinType.expected @@ -2,9 +2,6 @@ | Builtin.Executor | BuiltinExecutorType | getName: | Executor | getCanonicalType: | Builtin.Executor | | Builtin.FPIEEE32 | BuiltinFloatType | getName: | FPIEEE32 | getCanonicalType: | Builtin.FPIEEE32 | | Builtin.FPIEEE64 | BuiltinFloatType | getName: | FPIEEE64 | getCanonicalType: | Builtin.FPIEEE64 | -| Builtin.FixedArray<4, Int> | BuiltinFixedArrayType | getName: | FixedArray<4, Int> | getCanonicalType: | Builtin.FixedArray<4, Int> | -| Builtin.FixedArray | BuiltinFixedArrayType | getName: | FixedArray | getCanonicalType: | Builtin.FixedArray | -| Builtin.FixedArray<\u03c4_0_0, \u03c4_0_1> | BuiltinFixedArrayType | getName: | FixedArray<\u03c4_0_0, \u03c4_0_1> | getCanonicalType: | Builtin.FixedArray<\u03c4_0_0, \u03c4_0_1> | | Builtin.IntLiteral | BuiltinIntegerLiteralType | getName: | IntLiteral | getCanonicalType: | Builtin.IntLiteral | | Builtin.Job | BuiltinJobType | getName: | Job | getCanonicalType: | Builtin.Job | | Builtin.NativeObject | BuiltinNativeObjectType | getName: | NativeObject | getCanonicalType: | Builtin.NativeObject | diff --git a/swift/schema.py b/swift/schema.py index 9302cb14b579..febbf1ae2f47 100644 --- a/swift/schema.py +++ b/swift/schema.py @@ -307,7 +307,6 @@ class ModuleDecl(TypeDecl): class SubscriptDecl(AbstractStorageDecl, GenericContext): params: list[ParamDecl] | child element_type: Type - element_type: Type @group("decl") class Accessor(AccessorOrNamedFunction): @@ -1486,9 +1485,10 @@ class BuiltinGenericType(BuiltinType): """ pass - +@qltest.uncollapse_hierarchy class BuiltinFixedArrayType(BuiltinGenericType): """ A builtin type representing N values stored contiguously. """ - pass + size: Type + element_type: Type From 6c675fcede8cac3eb3362ee7765a3c96c11c3631 Mon Sep 17 00:00:00 2001 From: Taus Date: Thu, 16 Apr 2026 21:14:42 +0000 Subject: [PATCH 137/157] Python: Consolidate duplicated code --- python/extractor/tsg-python/python.tsg | 30 +------------------------- 1 file changed, 1 insertion(+), 29 deletions(-) diff --git a/python/extractor/tsg-python/python.tsg b/python/extractor/tsg-python/python.tsg index e0aadd5432cd..c832f7e63219 100644 --- a/python/extractor/tsg-python/python.tsg +++ b/python/extractor/tsg-python/python.tsg @@ -795,12 +795,7 @@ ;;;;;; DictComp (`{a: b for c in d if e}`) ; See GeneratorExp for details. -(dictionary_comprehension - body: (pair - key: (_) @_key - value: (_) @_value - ) -) @genexpr +(dictionary_comprehension) @genexpr { ; Synthesize the `genexpr` function let @genexpr.fun = (ast-node @genexpr "Function") @@ -824,29 +819,6 @@ attr (@genexpr.arg_use) ctx = "load" } -; DictComp with unpacking (PEP 798): `{**d for d in dicts}` -(dictionary_comprehension - body: (dictionary_splat) -) @genexpr -{ - let @genexpr.fun = (ast-node @genexpr "Function") - attr (@genexpr.node) function = @genexpr.fun - attr (@genexpr.fun) name = "dictcomp" - - let @genexpr.arg = (ast-node @genexpr "Name") - attr (@genexpr.arg) variable = ".0" - attr (@genexpr.arg) ctx = "param" - - edge @genexpr.fun -> @genexpr.arg - attr (@genexpr.fun -> @genexpr.arg) args = 0 - attr (@genexpr.fun) kwonlyargs = #null - attr (@genexpr.fun) kwarg = #null - - let @genexpr.arg_use = (ast-node @genexpr "Name") - attr (@genexpr.arg_use) variable = ".0" - attr (@genexpr.arg_use) ctx = "load" -} - ;;;;;; End of DictComp (`{a: b for c in d if e}`) ;;;;;; GeneratorExp (`(a for b in c if d)`) From d2d594a8ff79ab05892216ab77aca13cef650a26 Mon Sep 17 00:00:00 2001 From: jeongsoolee09 Date: Thu, 16 Apr 2026 21:21:09 -0400 Subject: [PATCH 138/157] Add models of ::aligned_alloc, std::aligned_alloc, and bsl::aligned_alloc --- cpp/ql/lib/ext/allocation/Std.allocation.model.yml | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/cpp/ql/lib/ext/allocation/Std.allocation.model.yml b/cpp/ql/lib/ext/allocation/Std.allocation.model.yml index 16b3d5bcebad..227cc4176c0d 100644 --- a/cpp/ql/lib/ext/allocation/Std.allocation.model.yml +++ b/cpp/ql/lib/ext/allocation/Std.allocation.model.yml @@ -12,4 +12,7 @@ extensions: - ["", "", False, "_malloca", "0", "", "", False] - ["", "", False, "calloc", "1", "0", "", True] - ["std", "", False, "calloc", "1", "0", "", True] - - ["bsl", "", False, "calloc", "1", "0", "", True] \ No newline at end of file + - ["bsl", "", False, "calloc", "1", "0", "", True] + - ["", "", False, "aligned_alloc", "1", "", "", True] + - ["std", "", False, "aligned_alloc", "1", "", "", True] + - ["bsl", "", False, "aligned_alloc", "1", "", "", True] From 553ed103c35589c3d25763b665bf1a7758618740 Mon Sep 17 00:00:00 2001 From: jeongsoolee09 Date: Thu, 16 Apr 2026 21:31:55 -0400 Subject: [PATCH 139/157] Add a change note --- .../change-notes/2026-04-16-add-model-for-aligned-alloc.md | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 cpp/ql/src/change-notes/2026-04-16-add-model-for-aligned-alloc.md diff --git a/cpp/ql/src/change-notes/2026-04-16-add-model-for-aligned-alloc.md b/cpp/ql/src/change-notes/2026-04-16-add-model-for-aligned-alloc.md new file mode 100644 index 000000000000..010fb0f69a15 --- /dev/null +++ b/cpp/ql/src/change-notes/2026-04-16-add-model-for-aligned-alloc.md @@ -0,0 +1,4 @@ +--- +category: minorAnalysis +--- +* Added models for `::aligned_alloc`, `std::aligned_alloc`, and `bsl::aligned_alloc`. These will now be recognized as `AllocationFunction`. From 33e9c020799a99f117a3dd722de53fea6ab58a27 Mon Sep 17 00:00:00 2001 From: Tom Hvitved Date: Fri, 17 Apr 2026 09:33:13 +0200 Subject: [PATCH 140/157] C#: Add more tests for `RedundantToStringCall.ql` --- .../RedundantToStringCall/RedundantToStringCall.cs | 14 +++++++++++--- .../RedundantToStringCall.expected | 9 ++++++--- .../RedundantToStringCall.qlref | 4 +++- .../RedundantToStringCallBad.cs | 2 +- 4 files changed, 21 insertions(+), 8 deletions(-) diff --git a/csharp/ql/test/query-tests/Useless Code/RedundantToStringCall/RedundantToStringCall.cs b/csharp/ql/test/query-tests/Useless Code/RedundantToStringCall/RedundantToStringCall.cs index 981b36002663..d055307d5398 100644 --- a/csharp/ql/test/query-tests/Useless Code/RedundantToStringCall/RedundantToStringCall.cs +++ b/csharp/ql/test/query-tests/Useless Code/RedundantToStringCall/RedundantToStringCall.cs @@ -1,16 +1,24 @@ using System; +using System.Text; class RedundantToString { public void M(object o) { - Console.WriteLine(o.ToString()); // BAD + Console.WriteLine(o.ToString()); // $ Alert Console.WriteLine(o); // GOOD - Console.WriteLine($"Hello: {o.ToString()}"); // BAD + Console.WriteLine($"Hello: {o.ToString()}"); // $ Alert Console.WriteLine($"Hello: {o}"); // GOOD - Console.WriteLine("Hello: " + o.ToString()); // BAD + Console.WriteLine("Hello: " + o.ToString()); // $ Alert Console.WriteLine("Hello: " + o); // GOOD + + var sb = new StringBuilder(); + sb.Append(o.ToString()); // $ Alert + sb.Append(o); // GOOD + sb.AppendLine(o.ToString()); // $ SPURIOUS: Alert + + Console.WriteLine($"Hello: {base.ToString()}"); // $ SPURIOUS: Alert } } diff --git a/csharp/ql/test/query-tests/Useless Code/RedundantToStringCall/RedundantToStringCall.expected b/csharp/ql/test/query-tests/Useless Code/RedundantToStringCall/RedundantToStringCall.expected index 28775378f049..aade48834869 100644 --- a/csharp/ql/test/query-tests/Useless Code/RedundantToStringCall/RedundantToStringCall.expected +++ b/csharp/ql/test/query-tests/Useless Code/RedundantToStringCall/RedundantToStringCall.expected @@ -1,4 +1,7 @@ -| RedundantToStringCall.cs:7:27:7:38 | call to method ToString | Redundant call to 'ToString' on a String object. | -| RedundantToStringCall.cs:10:37:10:48 | call to method ToString | Redundant call to 'ToString' on a String object. | -| RedundantToStringCall.cs:13:39:13:50 | call to method ToString | Redundant call to 'ToString' on a String object. | +| RedundantToStringCall.cs:8:27:8:38 | call to method ToString | Redundant call to 'ToString' on a String object. | +| RedundantToStringCall.cs:11:37:11:48 | call to method ToString | Redundant call to 'ToString' on a String object. | +| RedundantToStringCall.cs:14:39:14:50 | call to method ToString | Redundant call to 'ToString' on a String object. | +| RedundantToStringCall.cs:18:19:18:30 | call to method ToString | Redundant call to 'ToString' on a String object. | +| RedundantToStringCall.cs:20:23:20:34 | call to method ToString | Redundant call to 'ToString' on a String object. | +| RedundantToStringCall.cs:22:37:22:51 | call to method ToString | Redundant call to 'ToString' on a String object. | | RedundantToStringCallBad.cs:7:45:7:56 | call to method ToString | Redundant call to 'ToString' on a String object. | diff --git a/csharp/ql/test/query-tests/Useless Code/RedundantToStringCall/RedundantToStringCall.qlref b/csharp/ql/test/query-tests/Useless Code/RedundantToStringCall/RedundantToStringCall.qlref index c0ee8dd0ec7d..86bf1476007d 100644 --- a/csharp/ql/test/query-tests/Useless Code/RedundantToStringCall/RedundantToStringCall.qlref +++ b/csharp/ql/test/query-tests/Useless Code/RedundantToStringCall/RedundantToStringCall.qlref @@ -1 +1,3 @@ -Useless code/RedundantToStringCall.ql \ No newline at end of file +query: Useless code/RedundantToStringCall.ql +postprocess: + - utils/test/InlineExpectationsTestQuery.ql diff --git a/csharp/ql/test/query-tests/Useless Code/RedundantToStringCall/RedundantToStringCallBad.cs b/csharp/ql/test/query-tests/Useless Code/RedundantToStringCall/RedundantToStringCallBad.cs index d6d043f23762..ed5cd137a855 100644 --- a/csharp/ql/test/query-tests/Useless Code/RedundantToStringCall/RedundantToStringCallBad.cs +++ b/csharp/ql/test/query-tests/Useless Code/RedundantToStringCall/RedundantToStringCallBad.cs @@ -4,6 +4,6 @@ class Bad { static string Hello(object o) { - return string.Format("Hello, {0}!", o.ToString()); + return string.Format("Hello, {0}!", o.ToString()); // $ Alert } } From 426962e348976d4d90afa0561cb56b63296e9f32 Mon Sep 17 00:00:00 2001 From: Tom Hvitved Date: Fri, 17 Apr 2026 09:37:19 +0200 Subject: [PATCH 141/157] C#: Fix FPs in `RedundantToStringCall.ql` --- csharp/ql/lib/semmle/code/csharp/commons/Strings.qll | 2 +- csharp/ql/src/Useless code/RedundantToStringCall.ql | 3 ++- .../RedundantToStringCall/RedundantToStringCall.cs | 4 ++-- .../RedundantToStringCall/RedundantToStringCall.expected | 2 -- 4 files changed, 5 insertions(+), 6 deletions(-) diff --git a/csharp/ql/lib/semmle/code/csharp/commons/Strings.qll b/csharp/ql/lib/semmle/code/csharp/commons/Strings.qll index 678a1f928163..3fde913358b3 100644 --- a/csharp/ql/lib/semmle/code/csharp/commons/Strings.qll +++ b/csharp/ql/lib/semmle/code/csharp/commons/Strings.qll @@ -29,7 +29,7 @@ class ImplicitToStringExpr extends Expr { m = p.getCallable() | m = any(SystemTextStringBuilderClass c).getAMethod() and - m.getName().regexpMatch("Append(Line)?") and + m.getName() = "Append" and not p.getType() instanceof ArrayType or p instanceof StringFormatItemParameter and diff --git a/csharp/ql/src/Useless code/RedundantToStringCall.ql b/csharp/ql/src/Useless code/RedundantToStringCall.ql index 55e7056e9a08..3b531f4d097d 100644 --- a/csharp/ql/src/Useless code/RedundantToStringCall.ql +++ b/csharp/ql/src/Useless code/RedundantToStringCall.ql @@ -18,5 +18,6 @@ import semmle.code.csharp.frameworks.System from MethodCall mc where mc instanceof ImplicitToStringExpr and - mc.getTarget() instanceof ToStringMethod + mc.getTarget() instanceof ToStringMethod and + not mc.getQualifier() instanceof BaseAccess select mc, "Redundant call to 'ToString' on a String object." diff --git a/csharp/ql/test/query-tests/Useless Code/RedundantToStringCall/RedundantToStringCall.cs b/csharp/ql/test/query-tests/Useless Code/RedundantToStringCall/RedundantToStringCall.cs index d055307d5398..01c770d105b4 100644 --- a/csharp/ql/test/query-tests/Useless Code/RedundantToStringCall/RedundantToStringCall.cs +++ b/csharp/ql/test/query-tests/Useless Code/RedundantToStringCall/RedundantToStringCall.cs @@ -17,8 +17,8 @@ public void M(object o) var sb = new StringBuilder(); sb.Append(o.ToString()); // $ Alert sb.Append(o); // GOOD - sb.AppendLine(o.ToString()); // $ SPURIOUS: Alert + sb.AppendLine(o.ToString()); // GOOD - Console.WriteLine($"Hello: {base.ToString()}"); // $ SPURIOUS: Alert + Console.WriteLine($"Hello: {base.ToString()}"); // GOOD } } diff --git a/csharp/ql/test/query-tests/Useless Code/RedundantToStringCall/RedundantToStringCall.expected b/csharp/ql/test/query-tests/Useless Code/RedundantToStringCall/RedundantToStringCall.expected index aade48834869..ecfc616335a0 100644 --- a/csharp/ql/test/query-tests/Useless Code/RedundantToStringCall/RedundantToStringCall.expected +++ b/csharp/ql/test/query-tests/Useless Code/RedundantToStringCall/RedundantToStringCall.expected @@ -2,6 +2,4 @@ | RedundantToStringCall.cs:11:37:11:48 | call to method ToString | Redundant call to 'ToString' on a String object. | | RedundantToStringCall.cs:14:39:14:50 | call to method ToString | Redundant call to 'ToString' on a String object. | | RedundantToStringCall.cs:18:19:18:30 | call to method ToString | Redundant call to 'ToString' on a String object. | -| RedundantToStringCall.cs:20:23:20:34 | call to method ToString | Redundant call to 'ToString' on a String object. | -| RedundantToStringCall.cs:22:37:22:51 | call to method ToString | Redundant call to 'ToString' on a String object. | | RedundantToStringCallBad.cs:7:45:7:56 | call to method ToString | Redundant call to 'ToString' on a String object. | From 9f4fd7fab0c40b7e4543324075339b535c8c9448 Mon Sep 17 00:00:00 2001 From: Owen Mansel-Chan Date: Fri, 17 Apr 2026 11:27:36 +0100 Subject: [PATCH 142/157] Remove a data flow consistency exclusion This is no longer needed. --- .../semmle/go/dataflow/internal/DataFlowImplConsistency.qll | 4 ---- 1 file changed, 4 deletions(-) diff --git a/go/ql/lib/semmle/go/dataflow/internal/DataFlowImplConsistency.qll b/go/ql/lib/semmle/go/dataflow/internal/DataFlowImplConsistency.qll index cf4794a9715c..b4cd0a01bfcf 100644 --- a/go/ql/lib/semmle/go/dataflow/internal/DataFlowImplConsistency.qll +++ b/go/ql/lib/semmle/go/dataflow/internal/DataFlowImplConsistency.qll @@ -19,10 +19,6 @@ private module Input implements InputSig { predicate uniqueNodeLocationExclude(DataFlow::Node n) { missingLocationExclude(n) } - predicate localFlowIsLocalExclude(DataFlow::Node n1, DataFlow::Node n2) { - n1 instanceof DataFlow::FunctionNode and simpleLocalFlowStep(n1, n2, _) - } - predicate argHasPostUpdateExclude(DataFlow::ArgumentNode n) { not DataFlow::insnHasPostUpdateNode(n.asInstruction()) } From abec00cd341cafe441e1d4a2515cf87011e0aa31 Mon Sep 17 00:00:00 2001 From: Jeongsoo Lee Date: Fri, 17 Apr 2026 07:08:38 -0400 Subject: [PATCH 143/157] Update cpp/ql/src/change-notes/2026-04-16-add-model-for-aligned-alloc.md Co-authored-by: Jeroen Ketema <93738568+jketema@users.noreply.github.com> --- .../src/change-notes/2026-04-16-add-model-for-aligned-alloc.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cpp/ql/src/change-notes/2026-04-16-add-model-for-aligned-alloc.md b/cpp/ql/src/change-notes/2026-04-16-add-model-for-aligned-alloc.md index 010fb0f69a15..af97cee7f9e4 100644 --- a/cpp/ql/src/change-notes/2026-04-16-add-model-for-aligned-alloc.md +++ b/cpp/ql/src/change-notes/2026-04-16-add-model-for-aligned-alloc.md @@ -1,4 +1,4 @@ --- category: minorAnalysis --- -* Added models for `::aligned_alloc`, `std::aligned_alloc`, and `bsl::aligned_alloc`. These will now be recognized as `AllocationFunction`. +* Added `AllocationFunction` models for `aligned_alloc`, `std::aligned_alloc`, and `bsl::aligned_alloc`. From dd2440086f15e1a45be2f11360c94bc968467d4c Mon Sep 17 00:00:00 2001 From: Jeroen Ketema Date: Fri, 17 Apr 2026 13:24:17 +0200 Subject: [PATCH 144/157] Swift: Add change note --- swift/ql/lib/change-notes/2026-04-17-fixed-array.md | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 swift/ql/lib/change-notes/2026-04-17-fixed-array.md diff --git a/swift/ql/lib/change-notes/2026-04-17-fixed-array.md b/swift/ql/lib/change-notes/2026-04-17-fixed-array.md new file mode 100644 index 000000000000..26eac3f92728 --- /dev/null +++ b/swift/ql/lib/change-notes/2026-04-17-fixed-array.md @@ -0,0 +1,4 @@ +--- +category: feature +--- +* The `BuiltinFixedArrays` class now defines the predicates `getSize` and `getElementType`, which yield the size of the array and the type of elements stored in the array, respectively. From e3b88cbad3548e52cfeede7e32a7ffe4ccff3c11 Mon Sep 17 00:00:00 2001 From: Jeroen Ketema Date: Fri, 17 Apr 2026 13:29:24 +0200 Subject: [PATCH 145/157] Swift: Fix change note --- swift/ql/lib/change-notes/2026-04-17-fixed-array.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/swift/ql/lib/change-notes/2026-04-17-fixed-array.md b/swift/ql/lib/change-notes/2026-04-17-fixed-array.md index 26eac3f92728..3fd91627544b 100644 --- a/swift/ql/lib/change-notes/2026-04-17-fixed-array.md +++ b/swift/ql/lib/change-notes/2026-04-17-fixed-array.md @@ -1,4 +1,4 @@ --- category: feature --- -* The `BuiltinFixedArrays` class now defines the predicates `getSize` and `getElementType`, which yield the size of the array and the type of elements stored in the array, respectively. +* The `BuiltinFixedArrayType` class now defines the predicates `getSize` and `getElementType`, which yield the size of the array and the type of elements stored in the array, respectively. From 0235df87582d56ff8b7f22824f89704a77340423 Mon Sep 17 00:00:00 2001 From: Tom Hvitved Date: Fri, 17 Apr 2026 13:15:10 +0200 Subject: [PATCH 146/157] C#: Improve alert message for `RedundantToStringCall.ql` --- csharp/ql/src/Useless code/RedundantToStringCall.ql | 2 +- .../RedundantToStringCall.expected | 10 +++++----- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/csharp/ql/src/Useless code/RedundantToStringCall.ql b/csharp/ql/src/Useless code/RedundantToStringCall.ql index 3b531f4d097d..e29e071b4d9b 100644 --- a/csharp/ql/src/Useless code/RedundantToStringCall.ql +++ b/csharp/ql/src/Useless code/RedundantToStringCall.ql @@ -20,4 +20,4 @@ where mc instanceof ImplicitToStringExpr and mc.getTarget() instanceof ToStringMethod and not mc.getQualifier() instanceof BaseAccess -select mc, "Redundant call to 'ToString' on a String object." +select mc, "Redundant call to 'ToString'." diff --git a/csharp/ql/test/query-tests/Useless Code/RedundantToStringCall/RedundantToStringCall.expected b/csharp/ql/test/query-tests/Useless Code/RedundantToStringCall/RedundantToStringCall.expected index ecfc616335a0..b81421da571f 100644 --- a/csharp/ql/test/query-tests/Useless Code/RedundantToStringCall/RedundantToStringCall.expected +++ b/csharp/ql/test/query-tests/Useless Code/RedundantToStringCall/RedundantToStringCall.expected @@ -1,5 +1,5 @@ -| RedundantToStringCall.cs:8:27:8:38 | call to method ToString | Redundant call to 'ToString' on a String object. | -| RedundantToStringCall.cs:11:37:11:48 | call to method ToString | Redundant call to 'ToString' on a String object. | -| RedundantToStringCall.cs:14:39:14:50 | call to method ToString | Redundant call to 'ToString' on a String object. | -| RedundantToStringCall.cs:18:19:18:30 | call to method ToString | Redundant call to 'ToString' on a String object. | -| RedundantToStringCallBad.cs:7:45:7:56 | call to method ToString | Redundant call to 'ToString' on a String object. | +| RedundantToStringCall.cs:8:27:8:38 | call to method ToString | Redundant call to 'ToString'. | +| RedundantToStringCall.cs:11:37:11:48 | call to method ToString | Redundant call to 'ToString'. | +| RedundantToStringCall.cs:14:39:14:50 | call to method ToString | Redundant call to 'ToString'. | +| RedundantToStringCall.cs:18:19:18:30 | call to method ToString | Redundant call to 'ToString'. | +| RedundantToStringCallBad.cs:7:45:7:56 | call to method ToString | Redundant call to 'ToString'. | From 7bfdfbefa9438bfd5180c84444e54517e7271c6c Mon Sep 17 00:00:00 2001 From: Tom Hvitved Date: Fri, 17 Apr 2026 13:57:08 +0200 Subject: [PATCH 147/157] Add change note --- csharp/ql/src/change-notes/2026-04-17-useless-to-string.md | 7 +++++++ 1 file changed, 7 insertions(+) create mode 100644 csharp/ql/src/change-notes/2026-04-17-useless-to-string.md diff --git a/csharp/ql/src/change-notes/2026-04-17-useless-to-string.md b/csharp/ql/src/change-notes/2026-04-17-useless-to-string.md new file mode 100644 index 000000000000..9b4c81378c91 --- /dev/null +++ b/csharp/ql/src/change-notes/2026-04-17-useless-to-string.md @@ -0,0 +1,7 @@ +--- +category: minorAnalysis +--- +* The query `cs/useless-tostring-call` has been updated to avoid false + positive results in calls to `StringBuilder.AppendLine` and calls of + the form `base.ToString()`. Moreover, the alert message has been + made more precise. From dc3660974313160236464e7bbb68f2bd2a13ac15 Mon Sep 17 00:00:00 2001 From: Taus Date: Fri, 17 Apr 2026 12:15:04 +0000 Subject: [PATCH 148/157] Python: Add data-flow tests Alas, all these demonstrate is that we already don't fully support the desugared `yield from` form. --- .../library-tests/dataflow/coverage/test.py | 26 +++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/python/ql/test/library-tests/dataflow/coverage/test.py b/python/ql/test/library-tests/dataflow/coverage/test.py index 5f13ba5a403c..e07e32f0840b 100644 --- a/python/ql/test/library-tests/dataflow/coverage/test.py +++ b/python/ql/test/library-tests/dataflow/coverage/test.py @@ -257,6 +257,32 @@ def test_yield_from(): SINK(next(g)) # $ MISSING:flow="SOURCE, l:-1 -> next()" +# PEP 798: Unpacking in comprehensions. +# These desugar to `yield from`, so flow depends on yield-from support (see above). +def test_star_list_comp(): + l = [[SOURCE]] + flat = [*x for x in l] + SINK(flat[0]) # $ MISSING:flow="SOURCE, l:-2 -> flat[0]" + + +def test_star_set_comp(): + l = [[SOURCE]] + flat = {*x for x in l} + SINK(flat.pop()) # $ MISSING:flow="SOURCE, l:-2 -> flat.pop()" + + +def test_star_genexp(): + l = [[SOURCE]] + g = (*x for x in l) + SINK(next(g)) # $ MISSING:flow="SOURCE, l:-2 -> next()" + + +def test_star_dictcomp(): + l = [{"key": SOURCE}] + merged = {**d for d in l} + SINK(merged["key"]) # $ MISSING:flow="SOURCE, l:-2 -> merged[..]" + + # a statement rather than an expression, but related to generators def test_for(): for x in gen(SOURCE): From bc28e1726c7198c850b4c49031725857f6599294 Mon Sep 17 00:00:00 2001 From: Owen Mansel-Chan Date: Fri, 17 Apr 2026 13:24:16 +0100 Subject: [PATCH 149/157] Refactor to get rid of duplication --- go/ql/lib/semmle/go/frameworks/stdlib/IoFs.qll | 12 ++++-------- 1 file changed, 4 insertions(+), 8 deletions(-) diff --git a/go/ql/lib/semmle/go/frameworks/stdlib/IoFs.qll b/go/ql/lib/semmle/go/frameworks/stdlib/IoFs.qll index b7045aa7fe20..cfd8a8aee232 100644 --- a/go/ql/lib/semmle/go/frameworks/stdlib/IoFs.qll +++ b/go/ql/lib/semmle/go/frameworks/stdlib/IoFs.qll @@ -20,17 +20,13 @@ module IoFs { private class WalkDirStep extends TaintTracking::AdditionalTaintStep { override predicate step(DataFlow::Node pred, DataFlow::Node succ) { //signature: func WalkDir(fsys FS, root string, fn WalkDirFunc) error - exists(DataFlow::CallNode call, DataFlow::FunctionNode f | - f.(DataFlow::FuncLitNode).getASuccessor*() = call.getArgument(2) + exists(DataFlow::CallNode call, DataFlow::FunctionNode f, DataFlow::Node n | + n = f.(DataFlow::FuncLitNode) or - exists(DataFlow::ExprNode functionName | - f.(DataFlow::GlobalFunctionNode).getFunction() = - functionName.asExpr().(FunctionName).getTarget() - | - functionName.getASuccessor*() = call.getArgument(2) - ) + n.asExpr().(FunctionName).getTarget() = f.(DataFlow::GlobalFunctionNode).getFunction() | call.getTarget().hasQualifiedName(packagePath(), "WalkDir") and + n.getASuccessor*() = call.getArgument(2) and pred = call.getArgument(0) and succ = f.getParameter([0, 1]) ) From ac23e1678607d03c8409e14de5f9348171ecb287 Mon Sep 17 00:00:00 2001 From: Taus Date: Fri, 17 Apr 2026 13:16:46 +0000 Subject: [PATCH 150/157] Python: Move Python 3.15 data-flow tests to a separate file We won't be able to run these tests until Python 3.15 is actually out (and our CI is using it), so it seemed easiest to just put them in their own test directory. --- .../NormalDataflowTest.expected | 2 ++ .../coverage-pep798/NormalDataflowTest.ql | 2 ++ .../dataflow/coverage-pep798/test.py | 25 ++++++++++++++++++ .../library-tests/dataflow/coverage/test.py | 26 ------------------- 4 files changed, 29 insertions(+), 26 deletions(-) create mode 100644 python/ql/test/library-tests/dataflow/coverage-pep798/NormalDataflowTest.expected create mode 100644 python/ql/test/library-tests/dataflow/coverage-pep798/NormalDataflowTest.ql create mode 100644 python/ql/test/library-tests/dataflow/coverage-pep798/test.py diff --git a/python/ql/test/library-tests/dataflow/coverage-pep798/NormalDataflowTest.expected b/python/ql/test/library-tests/dataflow/coverage-pep798/NormalDataflowTest.expected new file mode 100644 index 000000000000..2fad7bb9a843 --- /dev/null +++ b/python/ql/test/library-tests/dataflow/coverage-pep798/NormalDataflowTest.expected @@ -0,0 +1,2 @@ +missingAnnotationOnSink +testFailures diff --git a/python/ql/test/library-tests/dataflow/coverage-pep798/NormalDataflowTest.ql b/python/ql/test/library-tests/dataflow/coverage-pep798/NormalDataflowTest.ql new file mode 100644 index 000000000000..1e0627bfcca1 --- /dev/null +++ b/python/ql/test/library-tests/dataflow/coverage-pep798/NormalDataflowTest.ql @@ -0,0 +1,2 @@ +import python +import utils.test.dataflow.NormalDataflowTest diff --git a/python/ql/test/library-tests/dataflow/coverage-pep798/test.py b/python/ql/test/library-tests/dataflow/coverage-pep798/test.py new file mode 100644 index 000000000000..c6f7a1b4bf1c --- /dev/null +++ b/python/ql/test/library-tests/dataflow/coverage-pep798/test.py @@ -0,0 +1,25 @@ +# PEP 798: Unpacking in comprehensions. +# These desugar to `yield from`, so flow depends on yield-from support. + +def test_star_list_comp(): + l = [[SOURCE]] + flat = [*x for x in l] + SINK(flat[0]) # $ MISSING:flow="SOURCE, l:-2 -> flat[0]" + + +def test_star_set_comp(): + l = [[SOURCE]] + flat = {*x for x in l} + SINK(flat.pop()) # $ MISSING:flow="SOURCE, l:-2 -> flat.pop()" + + +def test_star_genexp(): + l = [[SOURCE]] + g = (*x for x in l) + SINK(next(g)) # $ MISSING:flow="SOURCE, l:-2 -> next()" + + +def test_star_dictcomp(): + l = [{"key": SOURCE}] + merged = {**d for d in l} + SINK(merged["key"]) # $ MISSING:flow="SOURCE, l:-2 -> merged[..]" diff --git a/python/ql/test/library-tests/dataflow/coverage/test.py b/python/ql/test/library-tests/dataflow/coverage/test.py index e07e32f0840b..5f13ba5a403c 100644 --- a/python/ql/test/library-tests/dataflow/coverage/test.py +++ b/python/ql/test/library-tests/dataflow/coverage/test.py @@ -257,32 +257,6 @@ def test_yield_from(): SINK(next(g)) # $ MISSING:flow="SOURCE, l:-1 -> next()" -# PEP 798: Unpacking in comprehensions. -# These desugar to `yield from`, so flow depends on yield-from support (see above). -def test_star_list_comp(): - l = [[SOURCE]] - flat = [*x for x in l] - SINK(flat[0]) # $ MISSING:flow="SOURCE, l:-2 -> flat[0]" - - -def test_star_set_comp(): - l = [[SOURCE]] - flat = {*x for x in l} - SINK(flat.pop()) # $ MISSING:flow="SOURCE, l:-2 -> flat.pop()" - - -def test_star_genexp(): - l = [[SOURCE]] - g = (*x for x in l) - SINK(next(g)) # $ MISSING:flow="SOURCE, l:-2 -> next()" - - -def test_star_dictcomp(): - l = [{"key": SOURCE}] - merged = {**d for d in l} - SINK(merged["key"]) # $ MISSING:flow="SOURCE, l:-2 -> merged[..]" - - # a statement rather than an expression, but related to generators def test_for(): for x in gen(SOURCE): From f5131f9bc6e123f65e4c7ad6018de2c5c71201ac Mon Sep 17 00:00:00 2001 From: Salah Baddou Date: Thu, 16 Apr 2026 04:10:04 +0000 Subject: [PATCH 151/157] Java: Add XXE sink model for Woodstox WstxInputFactory MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit `com.ctc.wstx.stax.WstxInputFactory` overrides `createXMLStreamReader`, `createXMLEventReader` and `setProperty` from `XMLInputFactory`, so the existing `XmlInputFactory` model in `XmlParsers.qll` does not match calls where the static receiver type is `WstxInputFactory` (or its supertype `org.codehaus.stax2.XMLInputFactory2`). Woodstox is vulnerable to XXE in its default configuration, so these missed sinks were false negatives in `java/xxe`. This adds a scoped framework model under `semmle/code/java/frameworks/woodstox/WoodstoxXml.qll` (registered in the `Frameworks` module of `XmlParsers.qll`) that recognises these calls as XXE sinks and treats the factory as safe when both `javax.xml.stream.supportDTD` and `javax.xml.stream.isSupportingExternalEntities` are disabled — mirroring the existing `XMLInputFactory` safe-configuration logic. --- .../java/frameworks/woodstox/WoodstoxXml.qll | 93 +++++++++++++++++++ .../semmle/code/java/security/XmlParsers.qll | 1 + .../change-notes/2026-04-16-woodstox-xxe.md | 4 + .../CWE-611/WstxInputFactoryTests.java | 44 +++++++++ .../query-tests/security/CWE-611/XXE.expected | 12 +++ .../test/query-tests/security/CWE-611/options | 2 +- .../com/ctc/wstx/stax/WstxInputFactory.java | 49 ++++++++++ .../org/codehaus/stax2/XMLInputFactory2.java | 9 ++ 8 files changed, 213 insertions(+), 1 deletion(-) create mode 100644 java/ql/lib/semmle/code/java/frameworks/woodstox/WoodstoxXml.qll create mode 100644 java/ql/src/change-notes/2026-04-16-woodstox-xxe.md create mode 100644 java/ql/test/query-tests/security/CWE-611/WstxInputFactoryTests.java create mode 100644 java/ql/test/stubs/woodstox-core-6.4.0/com/ctc/wstx/stax/WstxInputFactory.java create mode 100644 java/ql/test/stubs/woodstox-core-6.4.0/org/codehaus/stax2/XMLInputFactory2.java diff --git a/java/ql/lib/semmle/code/java/frameworks/woodstox/WoodstoxXml.qll b/java/ql/lib/semmle/code/java/frameworks/woodstox/WoodstoxXml.qll new file mode 100644 index 000000000000..b5964aba3bac --- /dev/null +++ b/java/ql/lib/semmle/code/java/frameworks/woodstox/WoodstoxXml.qll @@ -0,0 +1,93 @@ +/** Provides definitions related to XML parsing in the Woodstox StAX library. */ +overlay[local?] +module; + +import java +private import semmle.code.java.security.XmlParsers + +/** + * The class `com.ctc.wstx.stax.WstxInputFactory` or its abstract supertype + * `org.codehaus.stax2.XMLInputFactory2`. + */ +private class WstxInputFactory extends RefType { + WstxInputFactory() { + this.hasQualifiedName("com.ctc.wstx.stax", "WstxInputFactory") or + this.hasQualifiedName("org.codehaus.stax2", "XMLInputFactory2") + } +} + +/** A call to `WstxInputFactory.createXMLStreamReader`. */ +private class WstxInputFactoryStreamReader extends XmlParserCall { + WstxInputFactoryStreamReader() { + exists(Method m | + this.getMethod() = m and + m.getDeclaringType() instanceof WstxInputFactory and + m.hasName("createXMLStreamReader") + ) + } + + override Expr getSink() { + if this.getMethod().getParameterType(0) instanceof TypeString + then result = this.getArgument(1) + else result = this.getArgument(0) + } + + override predicate isSafe() { + SafeWstxInputFactoryFlow::flowsTo(DataFlow::exprNode(this.getQualifier())) + } +} + +/** A call to `WstxInputFactory.createXMLEventReader`. */ +private class WstxInputFactoryEventReader extends XmlParserCall { + WstxInputFactoryEventReader() { + exists(Method m | + this.getMethod() = m and + m.getDeclaringType() instanceof WstxInputFactory and + m.hasName("createXMLEventReader") + ) + } + + override Expr getSink() { + if this.getMethod().getParameterType(0) instanceof TypeString + then result = this.getArgument(1) + else result = this.getArgument(0) + } + + override predicate isSafe() { + SafeWstxInputFactoryFlow::flowsTo(DataFlow::exprNode(this.getQualifier())) + } +} + +/** A `ParserConfig` specific to `WstxInputFactory`. */ +private class WstxInputFactoryConfig extends ParserConfig { + WstxInputFactoryConfig() { + exists(Method m | + m = this.getMethod() and + m.getDeclaringType() instanceof WstxInputFactory and + m.hasName("setProperty") + ) + } +} + +/** + * A safely configured `WstxInputFactory`. + */ +private class SafeWstxInputFactory extends VarAccess { + SafeWstxInputFactory() { + exists(Variable v | + v = this.getVariable() and + exists(WstxInputFactoryConfig config | config.getQualifier() = v.getAnAccess() | + config.disables(configOptionIsSupportingExternalEntities()) + ) and + exists(WstxInputFactoryConfig config | config.getQualifier() = v.getAnAccess() | + config.disables(configOptionSupportDtd()) + ) + ) + } +} + +private predicate safeWstxInputFactoryNode(DataFlow::Node src) { + src.asExpr() instanceof SafeWstxInputFactory +} + +private module SafeWstxInputFactoryFlow = DataFlow::SimpleGlobal; diff --git a/java/ql/lib/semmle/code/java/security/XmlParsers.qll b/java/ql/lib/semmle/code/java/security/XmlParsers.qll index bd1520034eb9..a910e34c8e31 100644 --- a/java/ql/lib/semmle/code/java/security/XmlParsers.qll +++ b/java/ql/lib/semmle/code/java/security/XmlParsers.qll @@ -12,6 +12,7 @@ private module Frameworks { private import semmle.code.java.frameworks.javase.Beans private import semmle.code.java.frameworks.mdht.MdhtXml private import semmle.code.java.frameworks.rundeck.RundeckXml + private import semmle.code.java.frameworks.woodstox.WoodstoxXml } /** diff --git a/java/ql/src/change-notes/2026-04-16-woodstox-xxe.md b/java/ql/src/change-notes/2026-04-16-woodstox-xxe.md new file mode 100644 index 000000000000..891fc489e464 --- /dev/null +++ b/java/ql/src/change-notes/2026-04-16-woodstox-xxe.md @@ -0,0 +1,4 @@ +--- +category: minorAnalysis +--- +* The queries "Resolving XML external entity in user-controlled data" (`java/xxe`) and "Resolving XML external entity in user-controlled data from local source" (`java/xxe-local`) now recognize sinks in the Woodstox StAX library when `com.ctc.wstx.stax.WstxInputFactory` or `org.codehaus.stax2.XMLInputFactory2` are used directly. diff --git a/java/ql/test/query-tests/security/CWE-611/WstxInputFactoryTests.java b/java/ql/test/query-tests/security/CWE-611/WstxInputFactoryTests.java new file mode 100644 index 000000000000..b64ec54f5b78 --- /dev/null +++ b/java/ql/test/query-tests/security/CWE-611/WstxInputFactoryTests.java @@ -0,0 +1,44 @@ +import java.net.Socket; + +import javax.xml.stream.XMLInputFactory; + +import com.ctc.wstx.stax.WstxInputFactory; + +public class WstxInputFactoryTests { + + public void unconfiguredFactory(Socket sock) throws Exception { + WstxInputFactory factory = new WstxInputFactory(); + factory.createXMLStreamReader(sock.getInputStream()); // $ Alert + factory.createXMLEventReader(sock.getInputStream()); // $ Alert + } + + public void safeFactory(Socket sock) throws Exception { + WstxInputFactory factory = new WstxInputFactory(); + factory.setProperty(XMLInputFactory.SUPPORT_DTD, false); + factory.setProperty(XMLInputFactory.IS_SUPPORTING_EXTERNAL_ENTITIES, false); + factory.createXMLStreamReader(sock.getInputStream()); // safe + factory.createXMLEventReader(sock.getInputStream()); // safe + } + + public void safeFactoryStringProperties(Socket sock) throws Exception { + WstxInputFactory factory = new WstxInputFactory(); + factory.setProperty("javax.xml.stream.supportDTD", false); + factory.setProperty("javax.xml.stream.isSupportingExternalEntities", false); + factory.createXMLStreamReader(sock.getInputStream()); // safe + factory.createXMLEventReader(sock.getInputStream()); // safe + } + + public void misConfiguredFactory(Socket sock) throws Exception { + WstxInputFactory factory = new WstxInputFactory(); + factory.setProperty("javax.xml.stream.isSupportingExternalEntities", false); + factory.createXMLStreamReader(sock.getInputStream()); // $ Alert + factory.createXMLEventReader(sock.getInputStream()); // $ Alert + } + + public void misConfiguredFactory2(Socket sock) throws Exception { + WstxInputFactory factory = new WstxInputFactory(); + factory.setProperty(XMLInputFactory.SUPPORT_DTD, false); + factory.createXMLStreamReader(sock.getInputStream()); // $ Alert + factory.createXMLEventReader(sock.getInputStream()); // $ Alert + } +} diff --git a/java/ql/test/query-tests/security/CWE-611/XXE.expected b/java/ql/test/query-tests/security/CWE-611/XXE.expected index a1d0725321d9..87e033c129a7 100644 --- a/java/ql/test/query-tests/security/CWE-611/XXE.expected +++ b/java/ql/test/query-tests/security/CWE-611/XXE.expected @@ -89,6 +89,12 @@ | TransformerTests.java:141:21:141:73 | new SAXSource(...) | TransformerTests.java:141:51:141:71 | getInputStream(...) : InputStream | TransformerTests.java:141:21:141:73 | new SAXSource(...) | XML parsing depends on a $@ without guarding against external entity expansion. | TransformerTests.java:141:51:141:71 | getInputStream(...) | user-provided value | | UnmarshallerTests.java:29:18:29:38 | getInputStream(...) | UnmarshallerTests.java:29:18:29:38 | getInputStream(...) | UnmarshallerTests.java:29:18:29:38 | getInputStream(...) | XML parsing depends on a $@ without guarding against external entity expansion. | UnmarshallerTests.java:29:18:29:38 | getInputStream(...) | user-provided value | | ValidatorTests.java:22:28:22:33 | source | ValidatorTests.java:17:49:17:72 | getInputStream(...) : ServletInputStream | ValidatorTests.java:22:28:22:33 | source | XML parsing depends on a $@ without guarding against external entity expansion. | ValidatorTests.java:17:49:17:72 | getInputStream(...) | user-provided value | +| WstxInputFactoryTests.java:11:35:11:55 | getInputStream(...) | WstxInputFactoryTests.java:11:35:11:55 | getInputStream(...) | WstxInputFactoryTests.java:11:35:11:55 | getInputStream(...) | XML parsing depends on a $@ without guarding against external entity expansion. | WstxInputFactoryTests.java:11:35:11:55 | getInputStream(...) | user-provided value | +| WstxInputFactoryTests.java:12:34:12:54 | getInputStream(...) | WstxInputFactoryTests.java:12:34:12:54 | getInputStream(...) | WstxInputFactoryTests.java:12:34:12:54 | getInputStream(...) | XML parsing depends on a $@ without guarding against external entity expansion. | WstxInputFactoryTests.java:12:34:12:54 | getInputStream(...) | user-provided value | +| WstxInputFactoryTests.java:34:35:34:55 | getInputStream(...) | WstxInputFactoryTests.java:34:35:34:55 | getInputStream(...) | WstxInputFactoryTests.java:34:35:34:55 | getInputStream(...) | XML parsing depends on a $@ without guarding against external entity expansion. | WstxInputFactoryTests.java:34:35:34:55 | getInputStream(...) | user-provided value | +| WstxInputFactoryTests.java:35:34:35:54 | getInputStream(...) | WstxInputFactoryTests.java:35:34:35:54 | getInputStream(...) | WstxInputFactoryTests.java:35:34:35:54 | getInputStream(...) | XML parsing depends on a $@ without guarding against external entity expansion. | WstxInputFactoryTests.java:35:34:35:54 | getInputStream(...) | user-provided value | +| WstxInputFactoryTests.java:41:35:41:55 | getInputStream(...) | WstxInputFactoryTests.java:41:35:41:55 | getInputStream(...) | WstxInputFactoryTests.java:41:35:41:55 | getInputStream(...) | XML parsing depends on a $@ without guarding against external entity expansion. | WstxInputFactoryTests.java:41:35:41:55 | getInputStream(...) | user-provided value | +| WstxInputFactoryTests.java:42:34:42:54 | getInputStream(...) | WstxInputFactoryTests.java:42:34:42:54 | getInputStream(...) | WstxInputFactoryTests.java:42:34:42:54 | getInputStream(...) | XML parsing depends on a $@ without guarding against external entity expansion. | WstxInputFactoryTests.java:42:34:42:54 | getInputStream(...) | user-provided value | | XMLDecoderTests.java:18:9:18:18 | xmlDecoder | XMLDecoderTests.java:16:49:16:72 | getInputStream(...) : ServletInputStream | XMLDecoderTests.java:18:9:18:18 | xmlDecoder | XML parsing depends on a $@ without guarding against external entity expansion. | XMLDecoderTests.java:16:49:16:72 | getInputStream(...) | user-provided value | | XMLReaderTests.java:16:18:16:55 | new InputSource(...) | XMLReaderTests.java:16:34:16:54 | getInputStream(...) : InputStream | XMLReaderTests.java:16:18:16:55 | new InputSource(...) | XML parsing depends on a $@ without guarding against external entity expansion. | XMLReaderTests.java:16:34:16:54 | getInputStream(...) | user-provided value | | XMLReaderTests.java:56:18:56:55 | new InputSource(...) | XMLReaderTests.java:56:34:56:54 | getInputStream(...) : InputStream | XMLReaderTests.java:56:18:56:55 | new InputSource(...) | XML parsing depends on a $@ without guarding against external entity expansion. | XMLReaderTests.java:56:34:56:54 | getInputStream(...) | user-provided value | @@ -390,6 +396,12 @@ nodes | ValidatorTests.java:21:31:21:66 | new StreamSource(...) : StreamSource | semmle.label | new StreamSource(...) : StreamSource | | ValidatorTests.java:21:48:21:65 | servletInputStream : ServletInputStream | semmle.label | servletInputStream : ServletInputStream | | ValidatorTests.java:22:28:22:33 | source | semmle.label | source | +| WstxInputFactoryTests.java:11:35:11:55 | getInputStream(...) | semmle.label | getInputStream(...) | +| WstxInputFactoryTests.java:12:34:12:54 | getInputStream(...) | semmle.label | getInputStream(...) | +| WstxInputFactoryTests.java:34:35:34:55 | getInputStream(...) | semmle.label | getInputStream(...) | +| WstxInputFactoryTests.java:35:34:35:54 | getInputStream(...) | semmle.label | getInputStream(...) | +| WstxInputFactoryTests.java:41:35:41:55 | getInputStream(...) | semmle.label | getInputStream(...) | +| WstxInputFactoryTests.java:42:34:42:54 | getInputStream(...) | semmle.label | getInputStream(...) | | XMLDecoderTests.java:16:49:16:72 | getInputStream(...) : ServletInputStream | semmle.label | getInputStream(...) : ServletInputStream | | XMLDecoderTests.java:17:33:17:66 | new XMLDecoder(...) : XMLDecoder | semmle.label | new XMLDecoder(...) : XMLDecoder | | XMLDecoderTests.java:17:48:17:65 | servletInputStream : ServletInputStream | semmle.label | servletInputStream : ServletInputStream | diff --git a/java/ql/test/query-tests/security/CWE-611/options b/java/ql/test/query-tests/security/CWE-611/options index 1480b49d7168..190e6b2af0c6 100644 --- a/java/ql/test/query-tests/security/CWE-611/options +++ b/java/ql/test/query-tests/security/CWE-611/options @@ -1 +1 @@ -//semmle-extractor-options: --javac-args -cp ${testdir}/../../../stubs/jdom-1.1.3:${testdir}/../../../stubs/dom4j-2.1.1:${testdir}/../../../stubs/simple-xml-2.7.1:${testdir}/../../../stubs/jaxb-api-2.3.1:${testdir}/../../../stubs/jaxen-1.2.0:${testdir}/../../../stubs/apache-commons-digester3-3.2:${testdir}/../../../stubs/servlet-api-2.4/:${testdir}/../../../stubs/rundeck-api-java-client-13.2:${testdir}/../../../stubs/springframework-5.8.x/:${testdir}/../../../stubs/mdht-1.2.0/ +//semmle-extractor-options: --javac-args -cp ${testdir}/../../../stubs/jdom-1.1.3:${testdir}/../../../stubs/dom4j-2.1.1:${testdir}/../../../stubs/simple-xml-2.7.1:${testdir}/../../../stubs/jaxb-api-2.3.1:${testdir}/../../../stubs/jaxen-1.2.0:${testdir}/../../../stubs/apache-commons-digester3-3.2:${testdir}/../../../stubs/servlet-api-2.4/:${testdir}/../../../stubs/rundeck-api-java-client-13.2:${testdir}/../../../stubs/springframework-5.8.x/:${testdir}/../../../stubs/mdht-1.2.0/:${testdir}/../../../stubs/woodstox-core-6.4.0 diff --git a/java/ql/test/stubs/woodstox-core-6.4.0/com/ctc/wstx/stax/WstxInputFactory.java b/java/ql/test/stubs/woodstox-core-6.4.0/com/ctc/wstx/stax/WstxInputFactory.java new file mode 100644 index 000000000000..979d76b6e202 --- /dev/null +++ b/java/ql/test/stubs/woodstox-core-6.4.0/com/ctc/wstx/stax/WstxInputFactory.java @@ -0,0 +1,49 @@ +// Generated automatically from com.ctc.wstx.stax.WstxInputFactory for testing purposes + +package com.ctc.wstx.stax; + +import java.io.InputStream; +import java.io.Reader; +import javax.xml.stream.EventFilter; +import javax.xml.stream.StreamFilter; +import javax.xml.stream.XMLEventReader; +import javax.xml.stream.XMLReporter; +import javax.xml.stream.XMLResolver; +import javax.xml.stream.XMLStreamException; +import javax.xml.stream.XMLStreamReader; +import javax.xml.stream.util.XMLEventAllocator; +import javax.xml.transform.Source; +import org.codehaus.stax2.XMLInputFactory2; + +public class WstxInputFactory extends XMLInputFactory2 { + public WstxInputFactory() {} + + public XMLStreamReader createXMLStreamReader(InputStream in) throws XMLStreamException { return null; } + public XMLStreamReader createXMLStreamReader(InputStream in, String enc) throws XMLStreamException { return null; } + public XMLStreamReader createXMLStreamReader(Reader r) throws XMLStreamException { return null; } + public XMLStreamReader createXMLStreamReader(Source src) throws XMLStreamException { return null; } + public XMLStreamReader createXMLStreamReader(String systemId, InputStream in) throws XMLStreamException { return null; } + public XMLStreamReader createXMLStreamReader(String systemId, Reader r) throws XMLStreamException { return null; } + + public XMLEventReader createXMLEventReader(InputStream in) throws XMLStreamException { return null; } + public XMLEventReader createXMLEventReader(InputStream in, String enc) throws XMLStreamException { return null; } + public XMLEventReader createXMLEventReader(Reader r) throws XMLStreamException { return null; } + public XMLEventReader createXMLEventReader(Source src) throws XMLStreamException { return null; } + public XMLEventReader createXMLEventReader(String systemId, InputStream in) throws XMLStreamException { return null; } + public XMLEventReader createXMLEventReader(String systemId, Reader r) throws XMLStreamException { return null; } + public XMLEventReader createXMLEventReader(XMLStreamReader sr) throws XMLStreamException { return null; } + + public XMLStreamReader createFilteredReader(XMLStreamReader reader, StreamFilter filter) { return null; } + public XMLEventReader createFilteredReader(XMLEventReader reader, EventFilter filter) { return null; } + + public void setProperty(String name, Object value) {} + public Object getProperty(String name) { return null; } + public boolean isPropertySupported(String name) { return false; } + + public XMLResolver getXMLResolver() { return null; } + public void setXMLResolver(XMLResolver r) {} + public XMLReporter getXMLReporter() { return null; } + public void setXMLReporter(XMLReporter r) {} + public XMLEventAllocator getEventAllocator() { return null; } + public void setEventAllocator(XMLEventAllocator a) {} +} diff --git a/java/ql/test/stubs/woodstox-core-6.4.0/org/codehaus/stax2/XMLInputFactory2.java b/java/ql/test/stubs/woodstox-core-6.4.0/org/codehaus/stax2/XMLInputFactory2.java new file mode 100644 index 000000000000..6b94d00d03ac --- /dev/null +++ b/java/ql/test/stubs/woodstox-core-6.4.0/org/codehaus/stax2/XMLInputFactory2.java @@ -0,0 +1,9 @@ +// Generated automatically from org.codehaus.stax2.XMLInputFactory2 for testing purposes + +package org.codehaus.stax2; + +import javax.xml.stream.XMLInputFactory; + +public abstract class XMLInputFactory2 extends XMLInputFactory { + protected XMLInputFactory2() {} +} From fb2d53e72a5fc189472a1be7163c5960c6c9cc29 Mon Sep 17 00:00:00 2001 From: Salah Baddou Date: Fri, 17 Apr 2026 18:32:24 +0400 Subject: [PATCH 152/157] Address review: inline Woodstox into XmlParsers, move changelog to lib --- .../change-notes/2026-04-16-woodstox-xxe.md | 0 .../java/frameworks/woodstox/WoodstoxXml.qll | 93 ------------------- .../semmle/code/java/security/XmlParsers.qll | 32 ++++++- 3 files changed, 27 insertions(+), 98 deletions(-) rename java/ql/{src => lib}/change-notes/2026-04-16-woodstox-xxe.md (100%) delete mode 100644 java/ql/lib/semmle/code/java/frameworks/woodstox/WoodstoxXml.qll diff --git a/java/ql/src/change-notes/2026-04-16-woodstox-xxe.md b/java/ql/lib/change-notes/2026-04-16-woodstox-xxe.md similarity index 100% rename from java/ql/src/change-notes/2026-04-16-woodstox-xxe.md rename to java/ql/lib/change-notes/2026-04-16-woodstox-xxe.md diff --git a/java/ql/lib/semmle/code/java/frameworks/woodstox/WoodstoxXml.qll b/java/ql/lib/semmle/code/java/frameworks/woodstox/WoodstoxXml.qll deleted file mode 100644 index b5964aba3bac..000000000000 --- a/java/ql/lib/semmle/code/java/frameworks/woodstox/WoodstoxXml.qll +++ /dev/null @@ -1,93 +0,0 @@ -/** Provides definitions related to XML parsing in the Woodstox StAX library. */ -overlay[local?] -module; - -import java -private import semmle.code.java.security.XmlParsers - -/** - * The class `com.ctc.wstx.stax.WstxInputFactory` or its abstract supertype - * `org.codehaus.stax2.XMLInputFactory2`. - */ -private class WstxInputFactory extends RefType { - WstxInputFactory() { - this.hasQualifiedName("com.ctc.wstx.stax", "WstxInputFactory") or - this.hasQualifiedName("org.codehaus.stax2", "XMLInputFactory2") - } -} - -/** A call to `WstxInputFactory.createXMLStreamReader`. */ -private class WstxInputFactoryStreamReader extends XmlParserCall { - WstxInputFactoryStreamReader() { - exists(Method m | - this.getMethod() = m and - m.getDeclaringType() instanceof WstxInputFactory and - m.hasName("createXMLStreamReader") - ) - } - - override Expr getSink() { - if this.getMethod().getParameterType(0) instanceof TypeString - then result = this.getArgument(1) - else result = this.getArgument(0) - } - - override predicate isSafe() { - SafeWstxInputFactoryFlow::flowsTo(DataFlow::exprNode(this.getQualifier())) - } -} - -/** A call to `WstxInputFactory.createXMLEventReader`. */ -private class WstxInputFactoryEventReader extends XmlParserCall { - WstxInputFactoryEventReader() { - exists(Method m | - this.getMethod() = m and - m.getDeclaringType() instanceof WstxInputFactory and - m.hasName("createXMLEventReader") - ) - } - - override Expr getSink() { - if this.getMethod().getParameterType(0) instanceof TypeString - then result = this.getArgument(1) - else result = this.getArgument(0) - } - - override predicate isSafe() { - SafeWstxInputFactoryFlow::flowsTo(DataFlow::exprNode(this.getQualifier())) - } -} - -/** A `ParserConfig` specific to `WstxInputFactory`. */ -private class WstxInputFactoryConfig extends ParserConfig { - WstxInputFactoryConfig() { - exists(Method m | - m = this.getMethod() and - m.getDeclaringType() instanceof WstxInputFactory and - m.hasName("setProperty") - ) - } -} - -/** - * A safely configured `WstxInputFactory`. - */ -private class SafeWstxInputFactory extends VarAccess { - SafeWstxInputFactory() { - exists(Variable v | - v = this.getVariable() and - exists(WstxInputFactoryConfig config | config.getQualifier() = v.getAnAccess() | - config.disables(configOptionIsSupportingExternalEntities()) - ) and - exists(WstxInputFactoryConfig config | config.getQualifier() = v.getAnAccess() | - config.disables(configOptionSupportDtd()) - ) - ) - } -} - -private predicate safeWstxInputFactoryNode(DataFlow::Node src) { - src.asExpr() instanceof SafeWstxInputFactory -} - -private module SafeWstxInputFactoryFlow = DataFlow::SimpleGlobal; diff --git a/java/ql/lib/semmle/code/java/security/XmlParsers.qll b/java/ql/lib/semmle/code/java/security/XmlParsers.qll index a910e34c8e31..602076996a77 100644 --- a/java/ql/lib/semmle/code/java/security/XmlParsers.qll +++ b/java/ql/lib/semmle/code/java/security/XmlParsers.qll @@ -12,7 +12,6 @@ private module Frameworks { private import semmle.code.java.frameworks.javase.Beans private import semmle.code.java.frameworks.mdht.MdhtXml private import semmle.code.java.frameworks.rundeck.RundeckXml - private import semmle.code.java.frameworks.woodstox.WoodstoxXml } /** @@ -180,12 +179,29 @@ class XmlInputFactory extends RefType { XmlInputFactory() { this.hasQualifiedName(javaxOrJakarta() + ".xml.stream", "XMLInputFactory") } } -/** A call to `XMLInputFactory.createXMLStreamReader`. */ +/** + * The class `com.ctc.wstx.stax.WstxInputFactory` or its abstract supertype + * `org.codehaus.stax2.XMLInputFactory2` from the Woodstox StAX library. + */ +class WstxInputFactory extends RefType { + WstxInputFactory() { + this.hasQualifiedName("com.ctc.wstx.stax", "WstxInputFactory") or + this.hasQualifiedName("org.codehaus.stax2", "XMLInputFactory2") + } +} + +/** + * A call to `XMLInputFactory.createXMLStreamReader` or the equivalent method on the + * Woodstox `WstxInputFactory`. + */ class XmlInputFactoryStreamReader extends XmlParserCall { XmlInputFactoryStreamReader() { exists(Method m | this.getMethod() = m and - m.getDeclaringType() instanceof XmlInputFactory and + ( + m.getDeclaringType() instanceof XmlInputFactory or + m.getDeclaringType() instanceof WstxInputFactory + ) and m.hasName("createXMLStreamReader") ) } @@ -213,7 +229,10 @@ class XmlInputFactoryEventReader extends XmlParserCall { XmlInputFactoryEventReader() { exists(Method m | this.getMethod() = m and - m.getDeclaringType() instanceof XmlInputFactory and + ( + m.getDeclaringType() instanceof XmlInputFactory or + m.getDeclaringType() instanceof WstxInputFactory + ) and m.hasName("createXMLEventReader") ) } @@ -236,7 +255,10 @@ class XmlInputFactoryConfig extends ParserConfig { XmlInputFactoryConfig() { exists(Method m | m = this.getMethod() and - m.getDeclaringType() instanceof XmlInputFactory and + ( + m.getDeclaringType() instanceof XmlInputFactory or + m.getDeclaringType() instanceof WstxInputFactory + ) and m.hasName("setProperty") ) } From dca7046d8c94b1d4a3989981e404eb807c24fbe9 Mon Sep 17 00:00:00 2001 From: Owen Mansel-Chan Date: Sat, 18 Apr 2026 10:35:15 +0100 Subject: [PATCH 153/157] Make inline expectation comments specify query --- .../tests/PartialPathTraversalTest.java | 30 +++++++++---------- 1 file changed, 15 insertions(+), 15 deletions(-) diff --git a/java/ql/test/query-tests/security/CWE-023/semmle/tests/PartialPathTraversalTest.java b/java/ql/test/query-tests/security/CWE-023/semmle/tests/PartialPathTraversalTest.java index b1986c1b6694..4c5f83e433a6 100644 --- a/java/ql/test/query-tests/security/CWE-023/semmle/tests/PartialPathTraversalTest.java +++ b/java/ql/test/query-tests/security/CWE-023/semmle/tests/PartialPathTraversalTest.java @@ -10,14 +10,14 @@ public class PartialPathTraversalTest { public void esapiExample(File parent) throws IOException { - if (!dir().getCanonicalPath().startsWith(parent.getCanonicalPath())) { // $ Alert + if (!dir().getCanonicalPath().startsWith(parent.getCanonicalPath())) { // $ Alert[java/partial-path-traversal-from-remote] throw new IOException("Invalid directory: " + dir().getCanonicalPath()); } } @SuppressWarnings("ResultOfMethodCallIgnored") void foo1(File parent) throws IOException { - (dir().getCanonicalPath()).startsWith((parent.getCanonicalPath())); // $ Alert + (dir().getCanonicalPath()).startsWith((parent.getCanonicalPath())); // $ Alert[java/partial-path-traversal-from-remote] } void foo2(File parent) throws IOException { @@ -29,31 +29,31 @@ void foo2(File parent) throws IOException { void foo3(File parent) throws IOException { String parentPath = parent.getCanonicalPath(); - if (!dir().getCanonicalPath().startsWith(parentPath)) { // $ Alert + if (!dir().getCanonicalPath().startsWith(parentPath)) { // $ Alert[java/partial-path-traversal-from-remote] throw new IOException("Invalid directory: " + dir().getCanonicalPath()); } } void foo4() throws IOException { - if (!dir().getCanonicalPath().startsWith("/usr" + "/dir")) { // $ Alert + if (!dir().getCanonicalPath().startsWith("/usr" + "/dir")) { // $ Alert[java/partial-path-traversal-from-remote] throw new IOException("Invalid directory: " + dir().getCanonicalPath()); } } void foo5(File parent) throws IOException { String canonicalPath = dir().getCanonicalPath(); - if (!canonicalPath.startsWith(parent.getCanonicalPath())) { // $ Alert + if (!canonicalPath.startsWith(parent.getCanonicalPath())) { // $ Alert[java/partial-path-traversal-from-remote] throw new IOException("Invalid directory: " + dir().getCanonicalPath()); } } void foo6(File parent) throws IOException { String canonicalPath = dir().getCanonicalPath(); - if (!canonicalPath.startsWith(parent.getCanonicalPath())) { // $ Alert + if (!canonicalPath.startsWith(parent.getCanonicalPath())) { // $ Alert[java/partial-path-traversal-from-remote] throw new IOException("Invalid directory: " + dir().getCanonicalPath()); } String canonicalPath2 = dir().getCanonicalPath(); - if (!canonicalPath2.startsWith(parent.getCanonicalPath())) { // $ Alert + if (!canonicalPath2.startsWith(parent.getCanonicalPath())) { // $ Alert[java/partial-path-traversal-from-remote] throw new IOException("Invalid directory: " + dir().getCanonicalPath()); } } @@ -61,10 +61,10 @@ void foo6(File parent) throws IOException { void foo7(File dir, File parent) throws IOException { String canonicalPath = dir().getCanonicalPath(); String canonicalPath2 = dir().getCanonicalPath(); - if (!canonicalPath.startsWith(parent.getCanonicalPath())) { // $ Alert + if (!canonicalPath.startsWith(parent.getCanonicalPath())) { // $ Alert[java/partial-path-traversal-from-remote] throw new IOException("Invalid directory: " + dir().getCanonicalPath()); } - if (!canonicalPath2.startsWith(parent.getCanonicalPath())) { // $ Alert + if (!canonicalPath2.startsWith(parent.getCanonicalPath())) { // $ Alert[java/partial-path-traversal-from-remote] throw new IOException("Invalid directory: " + dir().getCanonicalPath()); } } @@ -94,7 +94,7 @@ void foo10(File parent) throws IOException { void foo11(File parent) throws IOException { String parentCanonical = parent.getCanonicalPath(); - if (!dir().getCanonicalPath().startsWith(parentCanonical)) { // $ Alert + if (!dir().getCanonicalPath().startsWith(parentCanonical)) { // $ Alert[java/partial-path-traversal-from-remote] throw new IOException("Invalid directory: " + dir().getCanonicalPath()); } } @@ -102,10 +102,10 @@ void foo11(File parent) throws IOException { void foo12(File parent) throws IOException { String parentCanonical = parent.getCanonicalPath(); String parentCanonical2 = parent.getCanonicalPath(); - if (!dir().getCanonicalPath().startsWith(parentCanonical)) { // $ Alert + if (!dir().getCanonicalPath().startsWith(parentCanonical)) { // $ Alert[java/partial-path-traversal-from-remote] throw new IOException("Invalid directory: " + dir().getCanonicalPath()); } - if (!dir().getCanonicalPath().startsWith(parentCanonical2)) { // $ Alert + if (!dir().getCanonicalPath().startsWith(parentCanonical2)) { // $ Alert[java/partial-path-traversal-from-remote] throw new IOException("Invalid directory: " + dir().getCanonicalPath()); } } @@ -173,7 +173,7 @@ void foo18(File dir, File parent, boolean branch) throws IOException { void foo19(File parent) throws IOException { String parentCanonical = parent.getCanonicalPath() + "/potato"; - if (!dir().getCanonicalPath().startsWith(parentCanonical)) { // $ Alert + if (!dir().getCanonicalPath().startsWith(parentCanonical)) { // $ Alert[java/partial-path-traversal-from-remote] throw new IOException("Invalid directory: " + dir().getCanonicalPath()); } } @@ -191,7 +191,7 @@ InputStream foo20() { String filePath = sb.toString(); File encodedFile = new File(filePath); try { - if (!encodedFile.getCanonicalPath().startsWith(cacheDir.getCanonicalPath())) { // $ Alert + if (!encodedFile.getCanonicalPath().startsWith(cacheDir.getCanonicalPath())) { // $ Alert[java/partial-path-traversal-from-remote] return null; } return Files.newInputStream(encodedFile.toPath()); @@ -209,7 +209,7 @@ void foo21(File parent) throws IOException { void foo22(File dir2, File parent, boolean conditional) throws IOException { String canonicalPath = conditional ? dir().getCanonicalPath() : dir2.getCanonicalPath(); - if (!canonicalPath.startsWith(parent.getCanonicalPath())) { // $ Alert + if (!canonicalPath.startsWith(parent.getCanonicalPath())) { // $ Alert[java/partial-path-traversal-from-remote] throw new IOException("Invalid directory: " + dir().getCanonicalPath()); } } From 63d20a54d46c2b87190f3631f1606075215f22f5 Mon Sep 17 00:00:00 2001 From: Owen Mansel-Chan Date: Sat, 18 Apr 2026 10:48:14 +0100 Subject: [PATCH 154/157] Use inline expectations with second test Co-authored-by: Copilot --- .../semmle/tests/PartialPathTraversal.qlref | 5 ++- .../tests/PartialPathTraversalTest.java | 32 +++++++++---------- 2 files changed, 20 insertions(+), 17 deletions(-) diff --git a/java/ql/test/query-tests/security/CWE-023/semmle/tests/PartialPathTraversal.qlref b/java/ql/test/query-tests/security/CWE-023/semmle/tests/PartialPathTraversal.qlref index 431556c90afa..9d7e47fca707 100644 --- a/java/ql/test/query-tests/security/CWE-023/semmle/tests/PartialPathTraversal.qlref +++ b/java/ql/test/query-tests/security/CWE-023/semmle/tests/PartialPathTraversal.qlref @@ -1 +1,4 @@ -Security/CWE/CWE-023/PartialPathTraversal.ql \ No newline at end of file +query: Security/CWE/CWE-023/PartialPathTraversal.ql +postprocess: + - utils/test/PrettyPrintModels.ql + - utils/test/InlineExpectationsTestQuery.ql diff --git a/java/ql/test/query-tests/security/CWE-023/semmle/tests/PartialPathTraversalTest.java b/java/ql/test/query-tests/security/CWE-023/semmle/tests/PartialPathTraversalTest.java index 4c5f83e433a6..a8d0b7396aed 100644 --- a/java/ql/test/query-tests/security/CWE-023/semmle/tests/PartialPathTraversalTest.java +++ b/java/ql/test/query-tests/security/CWE-023/semmle/tests/PartialPathTraversalTest.java @@ -10,14 +10,14 @@ public class PartialPathTraversalTest { public void esapiExample(File parent) throws IOException { - if (!dir().getCanonicalPath().startsWith(parent.getCanonicalPath())) { // $ Alert[java/partial-path-traversal-from-remote] + if (!dir().getCanonicalPath().startsWith(parent.getCanonicalPath())) { // $ Alert[java/partial-path-traversal-from-remote] Alert[java/partial-path-traversal] throw new IOException("Invalid directory: " + dir().getCanonicalPath()); } } @SuppressWarnings("ResultOfMethodCallIgnored") void foo1(File parent) throws IOException { - (dir().getCanonicalPath()).startsWith((parent.getCanonicalPath())); // $ Alert[java/partial-path-traversal-from-remote] + (dir().getCanonicalPath()).startsWith((parent.getCanonicalPath())); // $ Alert[java/partial-path-traversal-from-remote] Alert[java/partial-path-traversal] } void foo2(File parent) throws IOException { @@ -29,31 +29,31 @@ void foo2(File parent) throws IOException { void foo3(File parent) throws IOException { String parentPath = parent.getCanonicalPath(); - if (!dir().getCanonicalPath().startsWith(parentPath)) { // $ Alert[java/partial-path-traversal-from-remote] + if (!dir().getCanonicalPath().startsWith(parentPath)) { // $ Alert[java/partial-path-traversal-from-remote] Alert[java/partial-path-traversal] throw new IOException("Invalid directory: " + dir().getCanonicalPath()); } } void foo4() throws IOException { - if (!dir().getCanonicalPath().startsWith("/usr" + "/dir")) { // $ Alert[java/partial-path-traversal-from-remote] + if (!dir().getCanonicalPath().startsWith("/usr" + "/dir")) { // $ Alert[java/partial-path-traversal-from-remote] Alert[java/partial-path-traversal] throw new IOException("Invalid directory: " + dir().getCanonicalPath()); } } void foo5(File parent) throws IOException { String canonicalPath = dir().getCanonicalPath(); - if (!canonicalPath.startsWith(parent.getCanonicalPath())) { // $ Alert[java/partial-path-traversal-from-remote] + if (!canonicalPath.startsWith(parent.getCanonicalPath())) { // $ Alert[java/partial-path-traversal-from-remote] Alert[java/partial-path-traversal] throw new IOException("Invalid directory: " + dir().getCanonicalPath()); } } void foo6(File parent) throws IOException { String canonicalPath = dir().getCanonicalPath(); - if (!canonicalPath.startsWith(parent.getCanonicalPath())) { // $ Alert[java/partial-path-traversal-from-remote] + if (!canonicalPath.startsWith(parent.getCanonicalPath())) { // $ Alert[java/partial-path-traversal-from-remote] Alert[java/partial-path-traversal] throw new IOException("Invalid directory: " + dir().getCanonicalPath()); } String canonicalPath2 = dir().getCanonicalPath(); - if (!canonicalPath2.startsWith(parent.getCanonicalPath())) { // $ Alert[java/partial-path-traversal-from-remote] + if (!canonicalPath2.startsWith(parent.getCanonicalPath())) { // $ Alert[java/partial-path-traversal-from-remote] Alert[java/partial-path-traversal] throw new IOException("Invalid directory: " + dir().getCanonicalPath()); } } @@ -61,10 +61,10 @@ void foo6(File parent) throws IOException { void foo7(File dir, File parent) throws IOException { String canonicalPath = dir().getCanonicalPath(); String canonicalPath2 = dir().getCanonicalPath(); - if (!canonicalPath.startsWith(parent.getCanonicalPath())) { // $ Alert[java/partial-path-traversal-from-remote] + if (!canonicalPath.startsWith(parent.getCanonicalPath())) { // $ Alert[java/partial-path-traversal-from-remote] Alert[java/partial-path-traversal] throw new IOException("Invalid directory: " + dir().getCanonicalPath()); } - if (!canonicalPath2.startsWith(parent.getCanonicalPath())) { // $ Alert[java/partial-path-traversal-from-remote] + if (!canonicalPath2.startsWith(parent.getCanonicalPath())) { // $ Alert[java/partial-path-traversal-from-remote] Alert[java/partial-path-traversal] throw new IOException("Invalid directory: " + dir().getCanonicalPath()); } } @@ -75,7 +75,7 @@ File getChild() { void foo8(File parent) throws IOException { String canonicalPath = getChild().getCanonicalPath(); - if (!canonicalPath.startsWith(parent.getCanonicalPath())) { + if (!canonicalPath.startsWith(parent.getCanonicalPath())) { // $ Alert[java/partial-path-traversal] throw new IOException("Invalid directory: " + getChild().getCanonicalPath()); } } @@ -94,7 +94,7 @@ void foo10(File parent) throws IOException { void foo11(File parent) throws IOException { String parentCanonical = parent.getCanonicalPath(); - if (!dir().getCanonicalPath().startsWith(parentCanonical)) { // $ Alert[java/partial-path-traversal-from-remote] + if (!dir().getCanonicalPath().startsWith(parentCanonical)) { // $ Alert[java/partial-path-traversal-from-remote] Alert[java/partial-path-traversal] throw new IOException("Invalid directory: " + dir().getCanonicalPath()); } } @@ -102,10 +102,10 @@ void foo11(File parent) throws IOException { void foo12(File parent) throws IOException { String parentCanonical = parent.getCanonicalPath(); String parentCanonical2 = parent.getCanonicalPath(); - if (!dir().getCanonicalPath().startsWith(parentCanonical)) { // $ Alert[java/partial-path-traversal-from-remote] + if (!dir().getCanonicalPath().startsWith(parentCanonical)) { // $ Alert[java/partial-path-traversal-from-remote] Alert[java/partial-path-traversal] throw new IOException("Invalid directory: " + dir().getCanonicalPath()); } - if (!dir().getCanonicalPath().startsWith(parentCanonical2)) { // $ Alert[java/partial-path-traversal-from-remote] + if (!dir().getCanonicalPath().startsWith(parentCanonical2)) { // $ Alert[java/partial-path-traversal-from-remote] Alert[java/partial-path-traversal] throw new IOException("Invalid directory: " + dir().getCanonicalPath()); } } @@ -173,7 +173,7 @@ void foo18(File dir, File parent, boolean branch) throws IOException { void foo19(File parent) throws IOException { String parentCanonical = parent.getCanonicalPath() + "/potato"; - if (!dir().getCanonicalPath().startsWith(parentCanonical)) { // $ Alert[java/partial-path-traversal-from-remote] + if (!dir().getCanonicalPath().startsWith(parentCanonical)) { // $ Alert[java/partial-path-traversal-from-remote] Alert[java/partial-path-traversal] throw new IOException("Invalid directory: " + dir().getCanonicalPath()); } } @@ -191,7 +191,7 @@ InputStream foo20() { String filePath = sb.toString(); File encodedFile = new File(filePath); try { - if (!encodedFile.getCanonicalPath().startsWith(cacheDir.getCanonicalPath())) { // $ Alert[java/partial-path-traversal-from-remote] + if (!encodedFile.getCanonicalPath().startsWith(cacheDir.getCanonicalPath())) { // $ Alert[java/partial-path-traversal-from-remote] Alert[java/partial-path-traversal] return null; } return Files.newInputStream(encodedFile.toPath()); @@ -209,7 +209,7 @@ void foo21(File parent) throws IOException { void foo22(File dir2, File parent, boolean conditional) throws IOException { String canonicalPath = conditional ? dir().getCanonicalPath() : dir2.getCanonicalPath(); - if (!canonicalPath.startsWith(parent.getCanonicalPath())) { // $ Alert[java/partial-path-traversal-from-remote] + if (!canonicalPath.startsWith(parent.getCanonicalPath())) { // $ Alert[java/partial-path-traversal-from-remote] Alert[java/partial-path-traversal] throw new IOException("Invalid directory: " + dir().getCanonicalPath()); } } From 6099c5d034c28bed9dfe1ff46e5bc63f42aae5dd Mon Sep 17 00:00:00 2001 From: Owen Mansel-Chan Date: Sat, 18 Apr 2026 19:56:19 +0100 Subject: [PATCH 155/157] Add SPURIOUS test for `+= File.separator` --- .../tests/PartialPathTraversal.expected | 1 + ...artialPathTraversalFromRemoteTest.expected | 103 +++++++++--------- .../tests/PartialPathTraversalTest.java | 8 ++ 3 files changed, 63 insertions(+), 49 deletions(-) diff --git a/java/ql/test/query-tests/security/CWE-023/semmle/tests/PartialPathTraversal.expected b/java/ql/test/query-tests/security/CWE-023/semmle/tests/PartialPathTraversal.expected index 5379de2403b4..a30ff929df8a 100644 --- a/java/ql/test/query-tests/security/CWE-023/semmle/tests/PartialPathTraversal.expected +++ b/java/ql/test/query-tests/security/CWE-023/semmle/tests/PartialPathTraversal.expected @@ -14,3 +14,4 @@ | PartialPathTraversalTest.java:176:14:176:65 | startsWith(...) | Partial Path Traversal Vulnerability due to insufficient guard against path traversal. | | PartialPathTraversalTest.java:194:18:194:87 | startsWith(...) | Partial Path Traversal Vulnerability due to insufficient guard against path traversal. | | PartialPathTraversalTest.java:212:14:212:64 | startsWith(...) | Partial Path Traversal Vulnerability due to insufficient guard against path traversal. | +| PartialPathTraversalTest.java:234:14:234:54 | startsWith(...) | Partial Path Traversal Vulnerability due to insufficient guard against path traversal. | diff --git a/java/ql/test/query-tests/security/CWE-023/semmle/tests/PartialPathTraversalFromRemoteTest.expected b/java/ql/test/query-tests/security/CWE-023/semmle/tests/PartialPathTraversalFromRemoteTest.expected index f2af01542ee9..0c88cb8107f7 100644 --- a/java/ql/test/query-tests/security/CWE-023/semmle/tests/PartialPathTraversalFromRemoteTest.expected +++ b/java/ql/test/query-tests/security/CWE-023/semmle/tests/PartialPathTraversalFromRemoteTest.expected @@ -1,19 +1,20 @@ #select -| PartialPathTraversalTest.java:13:14:13:37 | getCanonicalPath(...) | PartialPathTraversalTest.java:252:86:252:106 | getInputStream(...) : InputStream | PartialPathTraversalTest.java:13:14:13:37 | getCanonicalPath(...) | Partial Path Traversal Vulnerability due to insufficient guard against path traversal from $@. | PartialPathTraversalTest.java:252:86:252:106 | getInputStream(...) : InputStream | user-supplied data | -| PartialPathTraversalTest.java:20:10:20:33 | getCanonicalPath(...) | PartialPathTraversalTest.java:252:86:252:106 | getInputStream(...) : InputStream | PartialPathTraversalTest.java:20:10:20:33 | getCanonicalPath(...) | Partial Path Traversal Vulnerability due to insufficient guard against path traversal from $@. | PartialPathTraversalTest.java:252:86:252:106 | getInputStream(...) : InputStream | user-supplied data | -| PartialPathTraversalTest.java:32:14:32:37 | getCanonicalPath(...) | PartialPathTraversalTest.java:252:86:252:106 | getInputStream(...) : InputStream | PartialPathTraversalTest.java:32:14:32:37 | getCanonicalPath(...) | Partial Path Traversal Vulnerability due to insufficient guard against path traversal from $@. | PartialPathTraversalTest.java:252:86:252:106 | getInputStream(...) : InputStream | user-supplied data | -| PartialPathTraversalTest.java:38:14:38:37 | getCanonicalPath(...) | PartialPathTraversalTest.java:252:86:252:106 | getInputStream(...) : InputStream | PartialPathTraversalTest.java:38:14:38:37 | getCanonicalPath(...) | Partial Path Traversal Vulnerability due to insufficient guard against path traversal from $@. | PartialPathTraversalTest.java:252:86:252:106 | getInputStream(...) : InputStream | user-supplied data | -| PartialPathTraversalTest.java:45:14:45:26 | canonicalPath | PartialPathTraversalTest.java:252:86:252:106 | getInputStream(...) : InputStream | PartialPathTraversalTest.java:45:14:45:26 | canonicalPath | Partial Path Traversal Vulnerability due to insufficient guard against path traversal from $@. | PartialPathTraversalTest.java:252:86:252:106 | getInputStream(...) : InputStream | user-supplied data | -| PartialPathTraversalTest.java:52:14:52:26 | canonicalPath | PartialPathTraversalTest.java:252:86:252:106 | getInputStream(...) : InputStream | PartialPathTraversalTest.java:52:14:52:26 | canonicalPath | Partial Path Traversal Vulnerability due to insufficient guard against path traversal from $@. | PartialPathTraversalTest.java:252:86:252:106 | getInputStream(...) : InputStream | user-supplied data | -| PartialPathTraversalTest.java:56:14:56:27 | canonicalPath2 | PartialPathTraversalTest.java:252:86:252:106 | getInputStream(...) : InputStream | PartialPathTraversalTest.java:56:14:56:27 | canonicalPath2 | Partial Path Traversal Vulnerability due to insufficient guard against path traversal from $@. | PartialPathTraversalTest.java:252:86:252:106 | getInputStream(...) : InputStream | user-supplied data | -| PartialPathTraversalTest.java:64:14:64:26 | canonicalPath | PartialPathTraversalTest.java:252:86:252:106 | getInputStream(...) : InputStream | PartialPathTraversalTest.java:64:14:64:26 | canonicalPath | Partial Path Traversal Vulnerability due to insufficient guard against path traversal from $@. | PartialPathTraversalTest.java:252:86:252:106 | getInputStream(...) : InputStream | user-supplied data | -| PartialPathTraversalTest.java:67:14:67:27 | canonicalPath2 | PartialPathTraversalTest.java:252:86:252:106 | getInputStream(...) : InputStream | PartialPathTraversalTest.java:67:14:67:27 | canonicalPath2 | Partial Path Traversal Vulnerability due to insufficient guard against path traversal from $@. | PartialPathTraversalTest.java:252:86:252:106 | getInputStream(...) : InputStream | user-supplied data | -| PartialPathTraversalTest.java:97:14:97:37 | getCanonicalPath(...) | PartialPathTraversalTest.java:252:86:252:106 | getInputStream(...) : InputStream | PartialPathTraversalTest.java:97:14:97:37 | getCanonicalPath(...) | Partial Path Traversal Vulnerability due to insufficient guard against path traversal from $@. | PartialPathTraversalTest.java:252:86:252:106 | getInputStream(...) : InputStream | user-supplied data | -| PartialPathTraversalTest.java:105:14:105:37 | getCanonicalPath(...) | PartialPathTraversalTest.java:252:86:252:106 | getInputStream(...) : InputStream | PartialPathTraversalTest.java:105:14:105:37 | getCanonicalPath(...) | Partial Path Traversal Vulnerability due to insufficient guard against path traversal from $@. | PartialPathTraversalTest.java:252:86:252:106 | getInputStream(...) : InputStream | user-supplied data | -| PartialPathTraversalTest.java:108:14:108:37 | getCanonicalPath(...) | PartialPathTraversalTest.java:252:86:252:106 | getInputStream(...) : InputStream | PartialPathTraversalTest.java:108:14:108:37 | getCanonicalPath(...) | Partial Path Traversal Vulnerability due to insufficient guard against path traversal from $@. | PartialPathTraversalTest.java:252:86:252:106 | getInputStream(...) : InputStream | user-supplied data | -| PartialPathTraversalTest.java:176:14:176:37 | getCanonicalPath(...) | PartialPathTraversalTest.java:252:86:252:106 | getInputStream(...) : InputStream | PartialPathTraversalTest.java:176:14:176:37 | getCanonicalPath(...) | Partial Path Traversal Vulnerability due to insufficient guard against path traversal from $@. | PartialPathTraversalTest.java:252:86:252:106 | getInputStream(...) : InputStream | user-supplied data | -| PartialPathTraversalTest.java:194:18:194:47 | getCanonicalPath(...) | PartialPathTraversalTest.java:252:86:252:106 | getInputStream(...) : InputStream | PartialPathTraversalTest.java:194:18:194:47 | getCanonicalPath(...) | Partial Path Traversal Vulnerability due to insufficient guard against path traversal from $@. | PartialPathTraversalTest.java:252:86:252:106 | getInputStream(...) : InputStream | user-supplied data | -| PartialPathTraversalTest.java:212:14:212:26 | canonicalPath | PartialPathTraversalTest.java:252:86:252:106 | getInputStream(...) : InputStream | PartialPathTraversalTest.java:212:14:212:26 | canonicalPath | Partial Path Traversal Vulnerability due to insufficient guard against path traversal from $@. | PartialPathTraversalTest.java:252:86:252:106 | getInputStream(...) : InputStream | user-supplied data | +| PartialPathTraversalTest.java:13:14:13:37 | getCanonicalPath(...) | PartialPathTraversalTest.java:260:86:260:106 | getInputStream(...) : InputStream | PartialPathTraversalTest.java:13:14:13:37 | getCanonicalPath(...) | Partial Path Traversal Vulnerability due to insufficient guard against path traversal from $@. | PartialPathTraversalTest.java:260:86:260:106 | getInputStream(...) : InputStream | user-supplied data | +| PartialPathTraversalTest.java:20:10:20:33 | getCanonicalPath(...) | PartialPathTraversalTest.java:260:86:260:106 | getInputStream(...) : InputStream | PartialPathTraversalTest.java:20:10:20:33 | getCanonicalPath(...) | Partial Path Traversal Vulnerability due to insufficient guard against path traversal from $@. | PartialPathTraversalTest.java:260:86:260:106 | getInputStream(...) : InputStream | user-supplied data | +| PartialPathTraversalTest.java:32:14:32:37 | getCanonicalPath(...) | PartialPathTraversalTest.java:260:86:260:106 | getInputStream(...) : InputStream | PartialPathTraversalTest.java:32:14:32:37 | getCanonicalPath(...) | Partial Path Traversal Vulnerability due to insufficient guard against path traversal from $@. | PartialPathTraversalTest.java:260:86:260:106 | getInputStream(...) : InputStream | user-supplied data | +| PartialPathTraversalTest.java:38:14:38:37 | getCanonicalPath(...) | PartialPathTraversalTest.java:260:86:260:106 | getInputStream(...) : InputStream | PartialPathTraversalTest.java:38:14:38:37 | getCanonicalPath(...) | Partial Path Traversal Vulnerability due to insufficient guard against path traversal from $@. | PartialPathTraversalTest.java:260:86:260:106 | getInputStream(...) : InputStream | user-supplied data | +| PartialPathTraversalTest.java:45:14:45:26 | canonicalPath | PartialPathTraversalTest.java:260:86:260:106 | getInputStream(...) : InputStream | PartialPathTraversalTest.java:45:14:45:26 | canonicalPath | Partial Path Traversal Vulnerability due to insufficient guard against path traversal from $@. | PartialPathTraversalTest.java:260:86:260:106 | getInputStream(...) : InputStream | user-supplied data | +| PartialPathTraversalTest.java:52:14:52:26 | canonicalPath | PartialPathTraversalTest.java:260:86:260:106 | getInputStream(...) : InputStream | PartialPathTraversalTest.java:52:14:52:26 | canonicalPath | Partial Path Traversal Vulnerability due to insufficient guard against path traversal from $@. | PartialPathTraversalTest.java:260:86:260:106 | getInputStream(...) : InputStream | user-supplied data | +| PartialPathTraversalTest.java:56:14:56:27 | canonicalPath2 | PartialPathTraversalTest.java:260:86:260:106 | getInputStream(...) : InputStream | PartialPathTraversalTest.java:56:14:56:27 | canonicalPath2 | Partial Path Traversal Vulnerability due to insufficient guard against path traversal from $@. | PartialPathTraversalTest.java:260:86:260:106 | getInputStream(...) : InputStream | user-supplied data | +| PartialPathTraversalTest.java:64:14:64:26 | canonicalPath | PartialPathTraversalTest.java:260:86:260:106 | getInputStream(...) : InputStream | PartialPathTraversalTest.java:64:14:64:26 | canonicalPath | Partial Path Traversal Vulnerability due to insufficient guard against path traversal from $@. | PartialPathTraversalTest.java:260:86:260:106 | getInputStream(...) : InputStream | user-supplied data | +| PartialPathTraversalTest.java:67:14:67:27 | canonicalPath2 | PartialPathTraversalTest.java:260:86:260:106 | getInputStream(...) : InputStream | PartialPathTraversalTest.java:67:14:67:27 | canonicalPath2 | Partial Path Traversal Vulnerability due to insufficient guard against path traversal from $@. | PartialPathTraversalTest.java:260:86:260:106 | getInputStream(...) : InputStream | user-supplied data | +| PartialPathTraversalTest.java:97:14:97:37 | getCanonicalPath(...) | PartialPathTraversalTest.java:260:86:260:106 | getInputStream(...) : InputStream | PartialPathTraversalTest.java:97:14:97:37 | getCanonicalPath(...) | Partial Path Traversal Vulnerability due to insufficient guard against path traversal from $@. | PartialPathTraversalTest.java:260:86:260:106 | getInputStream(...) : InputStream | user-supplied data | +| PartialPathTraversalTest.java:105:14:105:37 | getCanonicalPath(...) | PartialPathTraversalTest.java:260:86:260:106 | getInputStream(...) : InputStream | PartialPathTraversalTest.java:105:14:105:37 | getCanonicalPath(...) | Partial Path Traversal Vulnerability due to insufficient guard against path traversal from $@. | PartialPathTraversalTest.java:260:86:260:106 | getInputStream(...) : InputStream | user-supplied data | +| PartialPathTraversalTest.java:108:14:108:37 | getCanonicalPath(...) | PartialPathTraversalTest.java:260:86:260:106 | getInputStream(...) : InputStream | PartialPathTraversalTest.java:108:14:108:37 | getCanonicalPath(...) | Partial Path Traversal Vulnerability due to insufficient guard against path traversal from $@. | PartialPathTraversalTest.java:260:86:260:106 | getInputStream(...) : InputStream | user-supplied data | +| PartialPathTraversalTest.java:176:14:176:37 | getCanonicalPath(...) | PartialPathTraversalTest.java:260:86:260:106 | getInputStream(...) : InputStream | PartialPathTraversalTest.java:176:14:176:37 | getCanonicalPath(...) | Partial Path Traversal Vulnerability due to insufficient guard against path traversal from $@. | PartialPathTraversalTest.java:260:86:260:106 | getInputStream(...) : InputStream | user-supplied data | +| PartialPathTraversalTest.java:194:18:194:47 | getCanonicalPath(...) | PartialPathTraversalTest.java:260:86:260:106 | getInputStream(...) : InputStream | PartialPathTraversalTest.java:194:18:194:47 | getCanonicalPath(...) | Partial Path Traversal Vulnerability due to insufficient guard against path traversal from $@. | PartialPathTraversalTest.java:260:86:260:106 | getInputStream(...) : InputStream | user-supplied data | +| PartialPathTraversalTest.java:212:14:212:26 | canonicalPath | PartialPathTraversalTest.java:260:86:260:106 | getInputStream(...) : InputStream | PartialPathTraversalTest.java:212:14:212:26 | canonicalPath | Partial Path Traversal Vulnerability due to insufficient guard against path traversal from $@. | PartialPathTraversalTest.java:260:86:260:106 | getInputStream(...) : InputStream | user-supplied data | +| PartialPathTraversalTest.java:234:14:234:37 | getCanonicalPath(...) | PartialPathTraversalTest.java:260:86:260:106 | getInputStream(...) : InputStream | PartialPathTraversalTest.java:234:14:234:37 | getCanonicalPath(...) | Partial Path Traversal Vulnerability due to insufficient guard against path traversal from $@. | PartialPathTraversalTest.java:260:86:260:106 | getInputStream(...) : InputStream | user-supplied data | edges | PartialPathTraversalTest.java:13:14:13:18 | dir(...) : File | PartialPathTraversalTest.java:13:14:13:37 | getCanonicalPath(...) | provenance | MaD:6 | | PartialPathTraversalTest.java:20:10:20:14 | dir(...) : File | PartialPathTraversalTest.java:20:10:20:33 | getCanonicalPath(...) | provenance | MaD:6 | @@ -43,30 +44,32 @@ edges | PartialPathTraversalTest.java:194:18:194:28 | encodedFile : File | PartialPathTraversalTest.java:194:18:194:47 | getCanonicalPath(...) | provenance | MaD:6 | | PartialPathTraversalTest.java:211:46:211:50 | dir(...) : File | PartialPathTraversalTest.java:211:46:211:69 | getCanonicalPath(...) : String | provenance | MaD:6 | | PartialPathTraversalTest.java:211:46:211:69 | getCanonicalPath(...) : String | PartialPathTraversalTest.java:212:14:212:26 | canonicalPath | provenance | | -| PartialPathTraversalTest.java:252:45:252:117 | new BufferedReader(...) : BufferedReader | PartialPathTraversalTest.java:253:31:253:44 | filenameReader : BufferedReader | provenance | | -| PartialPathTraversalTest.java:252:64:252:116 | new InputStreamReader(...) : InputStreamReader | PartialPathTraversalTest.java:252:45:252:117 | new BufferedReader(...) : BufferedReader | provenance | MaD:2 | -| PartialPathTraversalTest.java:252:86:252:106 | getInputStream(...) : InputStream | PartialPathTraversalTest.java:252:64:252:116 | new InputStreamReader(...) : InputStreamReader | provenance | Src:MaD:1 MaD:7 | -| PartialPathTraversalTest.java:253:31:253:44 | filenameReader : BufferedReader | PartialPathTraversalTest.java:253:31:253:55 | readLine(...) : String | provenance | MaD:3 | -| PartialPathTraversalTest.java:253:31:253:55 | readLine(...) : String | PartialPathTraversalTest.java:254:29:254:36 | filename : String | provenance | | -| PartialPathTraversalTest.java:254:20:254:37 | new File(...) : File | PartialPathTraversalTest.java:13:14:13:18 | dir(...) : File | provenance | | -| PartialPathTraversalTest.java:254:20:254:37 | new File(...) : File | PartialPathTraversalTest.java:20:10:20:14 | dir(...) : File | provenance | | -| PartialPathTraversalTest.java:254:20:254:37 | new File(...) : File | PartialPathTraversalTest.java:32:14:32:18 | dir(...) : File | provenance | | -| PartialPathTraversalTest.java:254:20:254:37 | new File(...) : File | PartialPathTraversalTest.java:38:14:38:18 | dir(...) : File | provenance | | -| PartialPathTraversalTest.java:254:20:254:37 | new File(...) : File | PartialPathTraversalTest.java:44:32:44:36 | dir(...) : File | provenance | | -| PartialPathTraversalTest.java:254:20:254:37 | new File(...) : File | PartialPathTraversalTest.java:51:32:51:36 | dir(...) : File | provenance | | -| PartialPathTraversalTest.java:254:20:254:37 | new File(...) : File | PartialPathTraversalTest.java:55:33:55:37 | dir(...) : File | provenance | | -| PartialPathTraversalTest.java:254:20:254:37 | new File(...) : File | PartialPathTraversalTest.java:62:32:62:36 | dir(...) : File | provenance | | -| PartialPathTraversalTest.java:254:20:254:37 | new File(...) : File | PartialPathTraversalTest.java:63:33:63:37 | dir(...) : File | provenance | | -| PartialPathTraversalTest.java:254:20:254:37 | new File(...) : File | PartialPathTraversalTest.java:97:14:97:18 | dir(...) : File | provenance | | -| PartialPathTraversalTest.java:254:20:254:37 | new File(...) : File | PartialPathTraversalTest.java:105:14:105:18 | dir(...) : File | provenance | | -| PartialPathTraversalTest.java:254:20:254:37 | new File(...) : File | PartialPathTraversalTest.java:108:14:108:18 | dir(...) : File | provenance | | -| PartialPathTraversalTest.java:254:20:254:37 | new File(...) : File | PartialPathTraversalTest.java:176:14:176:18 | dir(...) : File | provenance | | -| PartialPathTraversalTest.java:254:20:254:37 | new File(...) : File | PartialPathTraversalTest.java:211:46:211:50 | dir(...) : File | provenance | | -| PartialPathTraversalTest.java:254:20:254:37 | new File(...) : File | PartialPathTraversalTest.java:261:16:261:20 | dir(...) : File | provenance | | -| PartialPathTraversalTest.java:254:29:254:36 | filename : String | PartialPathTraversalTest.java:254:20:254:37 | new File(...) : File | provenance | MaD:4 | -| PartialPathTraversalTest.java:261:16:261:20 | dir(...) : File | PartialPathTraversalTest.java:261:16:261:38 | getAbsolutePath(...) : String | provenance | MaD:5 | -| PartialPathTraversalTest.java:261:16:261:38 | getAbsolutePath(...) : String | PartialPathTraversalTest.java:261:16:261:60 | split(...) : String[] | provenance | MaD:10 | -| PartialPathTraversalTest.java:261:16:261:60 | split(...) : String[] | PartialPathTraversalTest.java:186:25:186:30 | path(...) : String[] | provenance | | +| PartialPathTraversalTest.java:234:14:234:18 | dir(...) : File | PartialPathTraversalTest.java:234:14:234:37 | getCanonicalPath(...) | provenance | MaD:6 | +| PartialPathTraversalTest.java:260:45:260:117 | new BufferedReader(...) : BufferedReader | PartialPathTraversalTest.java:261:31:261:44 | filenameReader : BufferedReader | provenance | | +| PartialPathTraversalTest.java:260:64:260:116 | new InputStreamReader(...) : InputStreamReader | PartialPathTraversalTest.java:260:45:260:117 | new BufferedReader(...) : BufferedReader | provenance | MaD:2 | +| PartialPathTraversalTest.java:260:86:260:106 | getInputStream(...) : InputStream | PartialPathTraversalTest.java:260:64:260:116 | new InputStreamReader(...) : InputStreamReader | provenance | Src:MaD:1 MaD:7 | +| PartialPathTraversalTest.java:261:31:261:44 | filenameReader : BufferedReader | PartialPathTraversalTest.java:261:31:261:55 | readLine(...) : String | provenance | MaD:3 | +| PartialPathTraversalTest.java:261:31:261:55 | readLine(...) : String | PartialPathTraversalTest.java:262:29:262:36 | filename : String | provenance | | +| PartialPathTraversalTest.java:262:20:262:37 | new File(...) : File | PartialPathTraversalTest.java:13:14:13:18 | dir(...) : File | provenance | | +| PartialPathTraversalTest.java:262:20:262:37 | new File(...) : File | PartialPathTraversalTest.java:20:10:20:14 | dir(...) : File | provenance | | +| PartialPathTraversalTest.java:262:20:262:37 | new File(...) : File | PartialPathTraversalTest.java:32:14:32:18 | dir(...) : File | provenance | | +| PartialPathTraversalTest.java:262:20:262:37 | new File(...) : File | PartialPathTraversalTest.java:38:14:38:18 | dir(...) : File | provenance | | +| PartialPathTraversalTest.java:262:20:262:37 | new File(...) : File | PartialPathTraversalTest.java:44:32:44:36 | dir(...) : File | provenance | | +| PartialPathTraversalTest.java:262:20:262:37 | new File(...) : File | PartialPathTraversalTest.java:51:32:51:36 | dir(...) : File | provenance | | +| PartialPathTraversalTest.java:262:20:262:37 | new File(...) : File | PartialPathTraversalTest.java:55:33:55:37 | dir(...) : File | provenance | | +| PartialPathTraversalTest.java:262:20:262:37 | new File(...) : File | PartialPathTraversalTest.java:62:32:62:36 | dir(...) : File | provenance | | +| PartialPathTraversalTest.java:262:20:262:37 | new File(...) : File | PartialPathTraversalTest.java:63:33:63:37 | dir(...) : File | provenance | | +| PartialPathTraversalTest.java:262:20:262:37 | new File(...) : File | PartialPathTraversalTest.java:97:14:97:18 | dir(...) : File | provenance | | +| PartialPathTraversalTest.java:262:20:262:37 | new File(...) : File | PartialPathTraversalTest.java:105:14:105:18 | dir(...) : File | provenance | | +| PartialPathTraversalTest.java:262:20:262:37 | new File(...) : File | PartialPathTraversalTest.java:108:14:108:18 | dir(...) : File | provenance | | +| PartialPathTraversalTest.java:262:20:262:37 | new File(...) : File | PartialPathTraversalTest.java:176:14:176:18 | dir(...) : File | provenance | | +| PartialPathTraversalTest.java:262:20:262:37 | new File(...) : File | PartialPathTraversalTest.java:211:46:211:50 | dir(...) : File | provenance | | +| PartialPathTraversalTest.java:262:20:262:37 | new File(...) : File | PartialPathTraversalTest.java:234:14:234:18 | dir(...) : File | provenance | | +| PartialPathTraversalTest.java:262:20:262:37 | new File(...) : File | PartialPathTraversalTest.java:269:16:269:20 | dir(...) : File | provenance | | +| PartialPathTraversalTest.java:262:29:262:36 | filename : String | PartialPathTraversalTest.java:262:20:262:37 | new File(...) : File | provenance | MaD:4 | +| PartialPathTraversalTest.java:269:16:269:20 | dir(...) : File | PartialPathTraversalTest.java:269:16:269:38 | getAbsolutePath(...) : String | provenance | MaD:5 | +| PartialPathTraversalTest.java:269:16:269:38 | getAbsolutePath(...) : String | PartialPathTraversalTest.java:269:16:269:60 | split(...) : String[] | provenance | MaD:10 | +| PartialPathTraversalTest.java:269:16:269:60 | split(...) : String[] | PartialPathTraversalTest.java:186:25:186:30 | path(...) : String[] | provenance | | models | 1 | Source: java.net; Socket; false; getInputStream; (); ; ReturnValue; remote; manual | | 2 | Summary: java.io; BufferedReader; false; BufferedReader; ; ; Argument[0]; Argument[this]; taint; manual | @@ -122,14 +125,16 @@ nodes | PartialPathTraversalTest.java:211:46:211:50 | dir(...) : File | semmle.label | dir(...) : File | | PartialPathTraversalTest.java:211:46:211:69 | getCanonicalPath(...) : String | semmle.label | getCanonicalPath(...) : String | | PartialPathTraversalTest.java:212:14:212:26 | canonicalPath | semmle.label | canonicalPath | -| PartialPathTraversalTest.java:252:45:252:117 | new BufferedReader(...) : BufferedReader | semmle.label | new BufferedReader(...) : BufferedReader | -| PartialPathTraversalTest.java:252:64:252:116 | new InputStreamReader(...) : InputStreamReader | semmle.label | new InputStreamReader(...) : InputStreamReader | -| PartialPathTraversalTest.java:252:86:252:106 | getInputStream(...) : InputStream | semmle.label | getInputStream(...) : InputStream | -| PartialPathTraversalTest.java:253:31:253:44 | filenameReader : BufferedReader | semmle.label | filenameReader : BufferedReader | -| PartialPathTraversalTest.java:253:31:253:55 | readLine(...) : String | semmle.label | readLine(...) : String | -| PartialPathTraversalTest.java:254:20:254:37 | new File(...) : File | semmle.label | new File(...) : File | -| PartialPathTraversalTest.java:254:29:254:36 | filename : String | semmle.label | filename : String | -| PartialPathTraversalTest.java:261:16:261:20 | dir(...) : File | semmle.label | dir(...) : File | -| PartialPathTraversalTest.java:261:16:261:38 | getAbsolutePath(...) : String | semmle.label | getAbsolutePath(...) : String | -| PartialPathTraversalTest.java:261:16:261:60 | split(...) : String[] | semmle.label | split(...) : String[] | +| PartialPathTraversalTest.java:234:14:234:18 | dir(...) : File | semmle.label | dir(...) : File | +| PartialPathTraversalTest.java:234:14:234:37 | getCanonicalPath(...) | semmle.label | getCanonicalPath(...) | +| PartialPathTraversalTest.java:260:45:260:117 | new BufferedReader(...) : BufferedReader | semmle.label | new BufferedReader(...) : BufferedReader | +| PartialPathTraversalTest.java:260:64:260:116 | new InputStreamReader(...) : InputStreamReader | semmle.label | new InputStreamReader(...) : InputStreamReader | +| PartialPathTraversalTest.java:260:86:260:106 | getInputStream(...) : InputStream | semmle.label | getInputStream(...) : InputStream | +| PartialPathTraversalTest.java:261:31:261:44 | filenameReader : BufferedReader | semmle.label | filenameReader : BufferedReader | +| PartialPathTraversalTest.java:261:31:261:55 | readLine(...) : String | semmle.label | readLine(...) : String | +| PartialPathTraversalTest.java:262:20:262:37 | new File(...) : File | semmle.label | new File(...) : File | +| PartialPathTraversalTest.java:262:29:262:36 | filename : String | semmle.label | filename : String | +| PartialPathTraversalTest.java:269:16:269:20 | dir(...) : File | semmle.label | dir(...) : File | +| PartialPathTraversalTest.java:269:16:269:38 | getAbsolutePath(...) : String | semmle.label | getAbsolutePath(...) : String | +| PartialPathTraversalTest.java:269:16:269:60 | split(...) : String[] | semmle.label | split(...) : String[] | subpaths diff --git a/java/ql/test/query-tests/security/CWE-023/semmle/tests/PartialPathTraversalTest.java b/java/ql/test/query-tests/security/CWE-023/semmle/tests/PartialPathTraversalTest.java index a8d0b7396aed..89fb6aaf469a 100644 --- a/java/ql/test/query-tests/security/CWE-023/semmle/tests/PartialPathTraversalTest.java +++ b/java/ql/test/query-tests/security/CWE-023/semmle/tests/PartialPathTraversalTest.java @@ -228,6 +228,14 @@ void foo24(File parent) throws IOException { } } + void foo25(File parent) throws IOException { + String path = parent.getCanonicalPath(); + path += File.separator; + if (!dir().getCanonicalPath().startsWith(path)) { // $ SPURIOUS: Alert[java/partial-path-traversal-from-remote] Alert[java/partial-path-traversal] + throw new IOException("Invalid directory: " + dir().getCanonicalPath()); + } + } + public void doesNotFlagOptimalSafeVersion(File parent) throws IOException { if (!dir().toPath().normalize().startsWith(parent.toPath())) { // Safe throw new IOException("Path traversal attempt: " + dir().getCanonicalPath()); From 6d4a3974ced27ce770b2d0864801adb813079b9e Mon Sep 17 00:00:00 2001 From: Owen Mansel-Chan Date: Sat, 18 Apr 2026 20:02:32 +0100 Subject: [PATCH 156/157] Fix bug so `+= File.separator` is recognized --- .../lib/semmle/code/java/security/PartialPathTraversal.qll | 7 +++++-- .../CWE-023/semmle/tests/PartialPathTraversal.expected | 1 - .../tests/PartialPathTraversalFromRemoteTest.expected | 5 ----- .../CWE-023/semmle/tests/PartialPathTraversalTest.java | 2 +- 4 files changed, 6 insertions(+), 9 deletions(-) diff --git a/java/ql/lib/semmle/code/java/security/PartialPathTraversal.qll b/java/ql/lib/semmle/code/java/security/PartialPathTraversal.qll index 63ffb62ef63b..a7b0c50b0827 100644 --- a/java/ql/lib/semmle/code/java/security/PartialPathTraversal.qll +++ b/java/ql/lib/semmle/code/java/security/PartialPathTraversal.qll @@ -40,8 +40,11 @@ private class CharacterLiteralFileSeparatorExpr extends FileSeparatorExpr, Chara CharacterLiteralFileSeparatorExpr() { this.getValue() = "/" or this.getValue() = "\\" } } -private class FileSeparatorAppend extends AddExpr { - FileSeparatorAppend() { this.getRightOperand() instanceof FileSeparatorExpr } +private class FileSeparatorAppend extends BinaryExpr { + FileSeparatorAppend() { + this.(AddExpr).getRightOperand() instanceof FileSeparatorExpr or + this.(AssignAddExpr).getRightOperand() instanceof FileSeparatorExpr + } } private predicate isSafe(Expr expr) { diff --git a/java/ql/test/query-tests/security/CWE-023/semmle/tests/PartialPathTraversal.expected b/java/ql/test/query-tests/security/CWE-023/semmle/tests/PartialPathTraversal.expected index a30ff929df8a..5379de2403b4 100644 --- a/java/ql/test/query-tests/security/CWE-023/semmle/tests/PartialPathTraversal.expected +++ b/java/ql/test/query-tests/security/CWE-023/semmle/tests/PartialPathTraversal.expected @@ -14,4 +14,3 @@ | PartialPathTraversalTest.java:176:14:176:65 | startsWith(...) | Partial Path Traversal Vulnerability due to insufficient guard against path traversal. | | PartialPathTraversalTest.java:194:18:194:87 | startsWith(...) | Partial Path Traversal Vulnerability due to insufficient guard against path traversal. | | PartialPathTraversalTest.java:212:14:212:64 | startsWith(...) | Partial Path Traversal Vulnerability due to insufficient guard against path traversal. | -| PartialPathTraversalTest.java:234:14:234:54 | startsWith(...) | Partial Path Traversal Vulnerability due to insufficient guard against path traversal. | diff --git a/java/ql/test/query-tests/security/CWE-023/semmle/tests/PartialPathTraversalFromRemoteTest.expected b/java/ql/test/query-tests/security/CWE-023/semmle/tests/PartialPathTraversalFromRemoteTest.expected index 0c88cb8107f7..156adced6b08 100644 --- a/java/ql/test/query-tests/security/CWE-023/semmle/tests/PartialPathTraversalFromRemoteTest.expected +++ b/java/ql/test/query-tests/security/CWE-023/semmle/tests/PartialPathTraversalFromRemoteTest.expected @@ -14,7 +14,6 @@ | PartialPathTraversalTest.java:176:14:176:37 | getCanonicalPath(...) | PartialPathTraversalTest.java:260:86:260:106 | getInputStream(...) : InputStream | PartialPathTraversalTest.java:176:14:176:37 | getCanonicalPath(...) | Partial Path Traversal Vulnerability due to insufficient guard against path traversal from $@. | PartialPathTraversalTest.java:260:86:260:106 | getInputStream(...) : InputStream | user-supplied data | | PartialPathTraversalTest.java:194:18:194:47 | getCanonicalPath(...) | PartialPathTraversalTest.java:260:86:260:106 | getInputStream(...) : InputStream | PartialPathTraversalTest.java:194:18:194:47 | getCanonicalPath(...) | Partial Path Traversal Vulnerability due to insufficient guard against path traversal from $@. | PartialPathTraversalTest.java:260:86:260:106 | getInputStream(...) : InputStream | user-supplied data | | PartialPathTraversalTest.java:212:14:212:26 | canonicalPath | PartialPathTraversalTest.java:260:86:260:106 | getInputStream(...) : InputStream | PartialPathTraversalTest.java:212:14:212:26 | canonicalPath | Partial Path Traversal Vulnerability due to insufficient guard against path traversal from $@. | PartialPathTraversalTest.java:260:86:260:106 | getInputStream(...) : InputStream | user-supplied data | -| PartialPathTraversalTest.java:234:14:234:37 | getCanonicalPath(...) | PartialPathTraversalTest.java:260:86:260:106 | getInputStream(...) : InputStream | PartialPathTraversalTest.java:234:14:234:37 | getCanonicalPath(...) | Partial Path Traversal Vulnerability due to insufficient guard against path traversal from $@. | PartialPathTraversalTest.java:260:86:260:106 | getInputStream(...) : InputStream | user-supplied data | edges | PartialPathTraversalTest.java:13:14:13:18 | dir(...) : File | PartialPathTraversalTest.java:13:14:13:37 | getCanonicalPath(...) | provenance | MaD:6 | | PartialPathTraversalTest.java:20:10:20:14 | dir(...) : File | PartialPathTraversalTest.java:20:10:20:33 | getCanonicalPath(...) | provenance | MaD:6 | @@ -44,7 +43,6 @@ edges | PartialPathTraversalTest.java:194:18:194:28 | encodedFile : File | PartialPathTraversalTest.java:194:18:194:47 | getCanonicalPath(...) | provenance | MaD:6 | | PartialPathTraversalTest.java:211:46:211:50 | dir(...) : File | PartialPathTraversalTest.java:211:46:211:69 | getCanonicalPath(...) : String | provenance | MaD:6 | | PartialPathTraversalTest.java:211:46:211:69 | getCanonicalPath(...) : String | PartialPathTraversalTest.java:212:14:212:26 | canonicalPath | provenance | | -| PartialPathTraversalTest.java:234:14:234:18 | dir(...) : File | PartialPathTraversalTest.java:234:14:234:37 | getCanonicalPath(...) | provenance | MaD:6 | | PartialPathTraversalTest.java:260:45:260:117 | new BufferedReader(...) : BufferedReader | PartialPathTraversalTest.java:261:31:261:44 | filenameReader : BufferedReader | provenance | | | PartialPathTraversalTest.java:260:64:260:116 | new InputStreamReader(...) : InputStreamReader | PartialPathTraversalTest.java:260:45:260:117 | new BufferedReader(...) : BufferedReader | provenance | MaD:2 | | PartialPathTraversalTest.java:260:86:260:106 | getInputStream(...) : InputStream | PartialPathTraversalTest.java:260:64:260:116 | new InputStreamReader(...) : InputStreamReader | provenance | Src:MaD:1 MaD:7 | @@ -64,7 +62,6 @@ edges | PartialPathTraversalTest.java:262:20:262:37 | new File(...) : File | PartialPathTraversalTest.java:108:14:108:18 | dir(...) : File | provenance | | | PartialPathTraversalTest.java:262:20:262:37 | new File(...) : File | PartialPathTraversalTest.java:176:14:176:18 | dir(...) : File | provenance | | | PartialPathTraversalTest.java:262:20:262:37 | new File(...) : File | PartialPathTraversalTest.java:211:46:211:50 | dir(...) : File | provenance | | -| PartialPathTraversalTest.java:262:20:262:37 | new File(...) : File | PartialPathTraversalTest.java:234:14:234:18 | dir(...) : File | provenance | | | PartialPathTraversalTest.java:262:20:262:37 | new File(...) : File | PartialPathTraversalTest.java:269:16:269:20 | dir(...) : File | provenance | | | PartialPathTraversalTest.java:262:29:262:36 | filename : String | PartialPathTraversalTest.java:262:20:262:37 | new File(...) : File | provenance | MaD:4 | | PartialPathTraversalTest.java:269:16:269:20 | dir(...) : File | PartialPathTraversalTest.java:269:16:269:38 | getAbsolutePath(...) : String | provenance | MaD:5 | @@ -125,8 +122,6 @@ nodes | PartialPathTraversalTest.java:211:46:211:50 | dir(...) : File | semmle.label | dir(...) : File | | PartialPathTraversalTest.java:211:46:211:69 | getCanonicalPath(...) : String | semmle.label | getCanonicalPath(...) : String | | PartialPathTraversalTest.java:212:14:212:26 | canonicalPath | semmle.label | canonicalPath | -| PartialPathTraversalTest.java:234:14:234:18 | dir(...) : File | semmle.label | dir(...) : File | -| PartialPathTraversalTest.java:234:14:234:37 | getCanonicalPath(...) | semmle.label | getCanonicalPath(...) | | PartialPathTraversalTest.java:260:45:260:117 | new BufferedReader(...) : BufferedReader | semmle.label | new BufferedReader(...) : BufferedReader | | PartialPathTraversalTest.java:260:64:260:116 | new InputStreamReader(...) : InputStreamReader | semmle.label | new InputStreamReader(...) : InputStreamReader | | PartialPathTraversalTest.java:260:86:260:106 | getInputStream(...) : InputStream | semmle.label | getInputStream(...) : InputStream | diff --git a/java/ql/test/query-tests/security/CWE-023/semmle/tests/PartialPathTraversalTest.java b/java/ql/test/query-tests/security/CWE-023/semmle/tests/PartialPathTraversalTest.java index 89fb6aaf469a..42e70b2c53d3 100644 --- a/java/ql/test/query-tests/security/CWE-023/semmle/tests/PartialPathTraversalTest.java +++ b/java/ql/test/query-tests/security/CWE-023/semmle/tests/PartialPathTraversalTest.java @@ -231,7 +231,7 @@ void foo24(File parent) throws IOException { void foo25(File parent) throws IOException { String path = parent.getCanonicalPath(); path += File.separator; - if (!dir().getCanonicalPath().startsWith(path)) { // $ SPURIOUS: Alert[java/partial-path-traversal-from-remote] Alert[java/partial-path-traversal] + if (!dir().getCanonicalPath().startsWith(path)) { throw new IOException("Invalid directory: " + dir().getCanonicalPath()); } } From c6f641eac4ef37ba8a6edcdc11c62ae57dd4f12a Mon Sep 17 00:00:00 2001 From: Owen Mansel-Chan Date: Sat, 18 Apr 2026 20:16:49 +0100 Subject: [PATCH 157/157] Add change note Co-authored-by: Copilot --- .../lib/change-notes/2026-04-18-partial-path-traversal-fix.md | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 java/ql/lib/change-notes/2026-04-18-partial-path-traversal-fix.md diff --git a/java/ql/lib/change-notes/2026-04-18-partial-path-traversal-fix.md b/java/ql/lib/change-notes/2026-04-18-partial-path-traversal-fix.md new file mode 100644 index 000000000000..8c15a346552e --- /dev/null +++ b/java/ql/lib/change-notes/2026-04-18-partial-path-traversal-fix.md @@ -0,0 +1,4 @@ +--- +category: minorAnalysis +--- +* The `java/partial-path-traversal` and `java/partial-path-traversal-from-remote` queries now correctly recognize file separator appends using `+=`.
  • SEI CERT C Coding Standard: DCL31-C. Declare identifiers before using them