diff --git a/extensions/silverscript.nvim/queries/silverscript/highlights.scm b/extensions/silverscript.nvim/queries/silverscript/highlights.scm index d5d7a56..bf32359 100644 --- a/extensions/silverscript.nvim/queries/silverscript/highlights.scm +++ b/extensions/silverscript.nvim/queries/silverscript/highlights.scm @@ -12,6 +12,12 @@ (type_name) @type +(struct_definition + name: (identifier) @type) + +(struct_field_definition + name: (identifier) @property) + (instantiation (identifier) @type.builtin (#match? @type.builtin @@ -26,6 +32,13 @@ (function_definition name: (identifier) @function) +(builtin_function_declaration + name: (identifier) @function.builtin) + +(function_attribute + (attribute_path + (identifier) @attribute)) + (constant_definition name: (identifier) @constant) @@ -69,10 +82,14 @@ (type_name) (identifier) @variable) +(field_access + "." @operator + name: (identifier) @property) + (function_call (identifier) @function.builtin (#match? @function.builtin - "^(readInputState|readInputStateWithTemplate|validateOutputState|validateOutputStateWithTemplate|verifyOutputState|verifyOutputStates|OpSha256|sha256|OpTxSubnetId|OpTxGas|OpTxPayloadLen|OpTxPayloadSubstr|OpOutpointTxId|OpOutpointIndex|OpTxInputScriptSigLen|OpTxInputScriptSigSubstr|OpTxInputSeq|OpTxInputIsCoinbase|OpTxInputSpkLen|OpTxInputSpkSubstr|OpTxOutputSpkLen|OpTxOutputSpkSubstr|OpAuthOutputCount|OpAuthOutputIdx|OpInputCovenantId|OpOutputCovenantId|OpCovInputCount|OpCovInputIdx|OpCovOutputCount|OpCovOutputIdx|OpNum2Bin|OpBin2Num|OpChainblockSeqCommit|checkDataSig|checkSig|checkMultiSig|blake2b)$")) + "^(readInputState|readInputStateWithTemplate|validateOutputState|validateOutputStateWithTemplate|verifyOutputState|verifyOutputStates|OpSha256|sha256|OpTxSubnetId|OpTxGas|OpTxPayloadLen|OpTxPayloadSubstr|OpOutpointTxId|OpOutpointIndex|OpTxInputScriptSigLen|OpTxInputScriptSigSubstr|OpTxInputSeq|OpTxInputDaaScore|OpTxInputIsCoinbase|OpTxInputSpkLen|OpTxInputSpkSubstr|OpTxOutputSpkLen|OpTxOutputSpkSubstr|OpAuthOutputCount|OpAuthOutputIdx|OpInputCovenantId|OpOutputCovenantId|OpCovInputCount|OpCovInputIdx|OpCovOutputCount|OpCovOutputIdx|OpNum2Bin|OpBin2Num|OpChainblockSeqCommit|bytes|length|checkDataSig|checkSig|checkMultiSig|blake2b)$")) (unary_suffix) @property @@ -82,6 +99,9 @@ (slice_call ".slice" @function.method) +(append_call + ".append" @function.method) + (reverse_call ".reverse" @function.method) @@ -91,6 +111,7 @@ "pragma" "silverscript" "contract" + "struct" "entrypoint" "function" "constant" diff --git a/extensions/vscode/package-lock.json b/extensions/vscode/package-lock.json index 9f15d09..bff5398 100644 --- a/extensions/vscode/package-lock.json +++ b/extensions/vscode/package-lock.json @@ -1,12 +1,13 @@ { "name": "silverscript", - "version": "0.1.0", + "version": "0.1.5", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "silverscript", - "version": "0.1.0", + "version": "0.1.5", + "license": "ISC", "dependencies": { "vscode-languageclient": "9.0.1", "web-tree-sitter": "0.26.3" diff --git a/extensions/vscode/package.json b/extensions/vscode/package.json index 96ea69f..e8c5759 100644 --- a/extensions/vscode/package.json +++ b/extensions/vscode/package.json @@ -3,7 +3,7 @@ "publisher": "IzioDev", "displayName": "SilverScript", "description": "Kaspa SilverScript", - "version": "0.1.3", + "version": "0.1.5", "repository": { "url": "https://github.com/kaspanet/silverscript", "directory": "extensions/vscode" diff --git a/extensions/vscode/queries/highlights.scm b/extensions/vscode/queries/highlights.scm index b135bf3..bf32359 100644 --- a/extensions/vscode/queries/highlights.scm +++ b/extensions/vscode/queries/highlights.scm @@ -12,6 +12,12 @@ (type_name) @type +(struct_definition + name: (identifier) @type) + +(struct_field_definition + name: (identifier) @property) + (instantiation (identifier) @type.builtin (#match? @type.builtin @@ -26,6 +32,13 @@ (function_definition name: (identifier) @function) +(builtin_function_declaration + name: (identifier) @function.builtin) + +(function_attribute + (attribute_path + (identifier) @attribute)) + (constant_definition name: (identifier) @constant) @@ -69,10 +82,14 @@ (type_name) (identifier) @variable) +(field_access + "." @operator + name: (identifier) @property) + (function_call (identifier) @function.builtin (#match? @function.builtin - "^(readInputState|readInputStateWithTemplate|validateOutputState|validateOutputStateWithTemplate|verifyOutputState|verifyOutputStates|OpSha256|sha256|OpTxSubnetId|OpTxGas|OpTxPayloadLen|OpTxPayloadSubstr|OpOutpointTxId|OpOutpointIndex|OpTxInputScriptSigLen|OpTxInputScriptSigSubstr|OpTxInputSeq|OpTxInputIsCoinbase|OpTxInputSpkLen|OpTxInputSpkSubstr|OpTxOutputSpkLen|OpTxOutputSpkSubstr|OpAuthOutputCount|OpAuthOutputIdx|OpInputCovenantId|OpOutputCovenantId|OpCovInputCount|OpCovInputIdx|OpCovOutputCount|OpCovOutputIdx|OpNum2Bin|OpBin2Num|OpChainblockSeqCommit|checkDataSig|checkSig|checkMultiSig|blake2b)$")) + "^(readInputState|readInputStateWithTemplate|validateOutputState|validateOutputStateWithTemplate|verifyOutputState|verifyOutputStates|OpSha256|sha256|OpTxSubnetId|OpTxGas|OpTxPayloadLen|OpTxPayloadSubstr|OpOutpointTxId|OpOutpointIndex|OpTxInputScriptSigLen|OpTxInputScriptSigSubstr|OpTxInputSeq|OpTxInputDaaScore|OpTxInputIsCoinbase|OpTxInputSpkLen|OpTxInputSpkSubstr|OpTxOutputSpkLen|OpTxOutputSpkSubstr|OpAuthOutputCount|OpAuthOutputIdx|OpInputCovenantId|OpOutputCovenantId|OpCovInputCount|OpCovInputIdx|OpCovOutputCount|OpCovOutputIdx|OpNum2Bin|OpBin2Num|OpChainblockSeqCommit|bytes|length|checkDataSig|checkSig|checkMultiSig|blake2b)$")) (unary_suffix) @property @@ -82,6 +99,9 @@ (slice_call ".slice" @function.method) +(append_call + ".append" @function.method) + (reverse_call ".reverse" @function.method) @@ -91,6 +111,7 @@ "pragma" "silverscript" "contract" + "struct" "entrypoint" "function" "constant" @@ -100,7 +121,6 @@ "new" "require" "return" - "yield" "console.log" ] @keyword diff --git a/extensions/zed/languages/silverscript/highlights.scm b/extensions/zed/languages/silverscript/highlights.scm index d5d7a56..bf32359 100644 --- a/extensions/zed/languages/silverscript/highlights.scm +++ b/extensions/zed/languages/silverscript/highlights.scm @@ -12,6 +12,12 @@ (type_name) @type +(struct_definition + name: (identifier) @type) + +(struct_field_definition + name: (identifier) @property) + (instantiation (identifier) @type.builtin (#match? @type.builtin @@ -26,6 +32,13 @@ (function_definition name: (identifier) @function) +(builtin_function_declaration + name: (identifier) @function.builtin) + +(function_attribute + (attribute_path + (identifier) @attribute)) + (constant_definition name: (identifier) @constant) @@ -69,10 +82,14 @@ (type_name) (identifier) @variable) +(field_access + "." @operator + name: (identifier) @property) + (function_call (identifier) @function.builtin (#match? @function.builtin - "^(readInputState|readInputStateWithTemplate|validateOutputState|validateOutputStateWithTemplate|verifyOutputState|verifyOutputStates|OpSha256|sha256|OpTxSubnetId|OpTxGas|OpTxPayloadLen|OpTxPayloadSubstr|OpOutpointTxId|OpOutpointIndex|OpTxInputScriptSigLen|OpTxInputScriptSigSubstr|OpTxInputSeq|OpTxInputIsCoinbase|OpTxInputSpkLen|OpTxInputSpkSubstr|OpTxOutputSpkLen|OpTxOutputSpkSubstr|OpAuthOutputCount|OpAuthOutputIdx|OpInputCovenantId|OpOutputCovenantId|OpCovInputCount|OpCovInputIdx|OpCovOutputCount|OpCovOutputIdx|OpNum2Bin|OpBin2Num|OpChainblockSeqCommit|checkDataSig|checkSig|checkMultiSig|blake2b)$")) + "^(readInputState|readInputStateWithTemplate|validateOutputState|validateOutputStateWithTemplate|verifyOutputState|verifyOutputStates|OpSha256|sha256|OpTxSubnetId|OpTxGas|OpTxPayloadLen|OpTxPayloadSubstr|OpOutpointTxId|OpOutpointIndex|OpTxInputScriptSigLen|OpTxInputScriptSigSubstr|OpTxInputSeq|OpTxInputDaaScore|OpTxInputIsCoinbase|OpTxInputSpkLen|OpTxInputSpkSubstr|OpTxOutputSpkLen|OpTxOutputSpkSubstr|OpAuthOutputCount|OpAuthOutputIdx|OpInputCovenantId|OpOutputCovenantId|OpCovInputCount|OpCovInputIdx|OpCovOutputCount|OpCovOutputIdx|OpNum2Bin|OpBin2Num|OpChainblockSeqCommit|bytes|length|checkDataSig|checkSig|checkMultiSig|blake2b)$")) (unary_suffix) @property @@ -82,6 +99,9 @@ (slice_call ".slice" @function.method) +(append_call + ".append" @function.method) + (reverse_call ".reverse" @function.method) @@ -91,6 +111,7 @@ "pragma" "silverscript" "contract" + "struct" "entrypoint" "function" "constant" diff --git a/tree-sitter/README.md b/tree-sitter/README.md index 77633bf..b7fa67e 100644 --- a/tree-sitter/README.md +++ b/tree-sitter/README.md @@ -1,10 +1,14 @@ Attempt at being 1:1 with Pest. Interesting file: `tree-sitter\grammar.js`. -- Install: `cargo install tree-sitter-cli --locked` +- Install generator CLI: `cargo install tree-sitter-cli --version 0.26.5 --locked` - Generate + sync highlights to editor extensions: `npm run generate` - Build parser wasm (includes generate + sync): `npm run build` - Standalone generate only: `npm run generate:raw` - Standalone build only: `npm run build:raw` - Open playground: `tree-sitter playground` +Notes: + +- `src/tree_sitter/*` is owned by the `tree-sitter-cli` generator/runtime and may change when regenerating with a different CLI version. + - Grammar DSL Documentation: https://tree-sitter.github.io/tree-sitter/creating-parsers/2-the-grammar-dsl.html diff --git a/tree-sitter/grammar.js b/tree-sitter/grammar.js index 2cdc298..0b804b8 100644 --- a/tree-sitter/grammar.js +++ b/tree-sitter/grammar.js @@ -28,17 +28,26 @@ export default grammar({ word: ($) => $.identifier, - conflicts: ($) => [ - [$.function_call, $.base_type], - [$.primary, $.base_type], - ], - rules: { - source_file: ($) => seq(optional($.pragma_directive), $.contract_definition), + source_file: ($) => + choice($.contract_source_file, $.declaration_source_file), + + contract_source_file: ($) => + seq(repeat($.pragma_directive), $.contract_definition), + + declaration_source_file: ($) => repeat1($.builtin_function_declaration), pragma_directive: ($) => seq("pragma", "silverscript", $.pragma_value, ";"), - pragma_value: (_) => token(/[^;]+/), + pragma_value: ($) => + seq($.version_constraint, optional($.version_constraint)), + + version_constraint: ($) => + seq(optional($.version_operator), $.version_literal), + + version_operator: (_) => choice("^", "~", ">=", ">", "<=", "<", "="), + + version_literal: (_) => token(/\d+\.\d+\.\d+/), contract_definition: ($) => seq( @@ -52,9 +61,9 @@ export default grammar({ contract_item: ($) => choice( + $.struct_definition, $.constant_definition, $.contract_field_definition, - $.struct_definition, $.function_definition, ), @@ -72,17 +81,34 @@ export default grammar({ function_definition: ($) => seq( - repeat($.attribute), + repeat($.function_attribute), optional("entrypoint"), "function", field("name", $.identifier), $.parameter_list, optional($.return_type_list), - "{", - repeat($.statement), - "}", + $.braced_block, ), + builtin_function_declaration: ($) => + seq( + "function", + field("name", $.identifier), + $.parameter_list, + optional($.return_type_list), + ";", + ), + + function_attribute: ($) => + seq("#[", $.attribute_path, optional($.attribute_args), "]"), + + attribute_path: ($) => seq($.identifier, repeat(seq(".", $.identifier))), + + attribute_args: ($) => seq("(", optional(commaSep($.attribute_arg)), ")"), + + attribute_arg: ($) => + seq(field("name", $.identifier), "=", field("value", $.expression)), + constant_definition: ($) => seq( $.type_name, @@ -107,15 +133,21 @@ export default grammar({ parameter: ($) => seq($.type_name, $.identifier), return_type_list: ($) => - seq(":", "(", optional(commaSep($.type_name)), ")"), + seq( + ":", + choice($.type_name, seq("(", optional(commaSep($.type_name)), ")")), + ), - block: ($) => choice(seq("{", repeat($.statement), "}"), $.statement), + block: ($) => $.statement, + + braced_block: ($) => seq("{", repeat($.statement), "}"), statement: ($) => choice( $.variable_definition, $.tuple_assignment, $.state_function_call_assignment, + $.struct_destructure_assignment, $.function_call_assignment, $.call_statement, $.return_statement, @@ -124,6 +156,7 @@ export default grammar({ $.require_statement, $.if_statement, $.for_statement, + $.braced_block, $.console_statement, ), @@ -152,7 +185,20 @@ export default grammar({ seq("(", commaSep($.typed_binding), ")", "=", $.function_call, ";"), state_function_call_assignment: ($) => - seq("{", commaSep($.state_typed_binding), "}", "=", $.function_call, ";"), + prec( + 1, + seq( + "{", + commaSep($.state_typed_binding), + "}", + "=", + $.function_call, + ";", + ), + ), + + struct_destructure_assignment: ($) => + seq("{", commaSep($.state_typed_binding), "}", "=", $.expression, ";"), typed_binding: ($) => seq($.type_name, $.identifier), @@ -161,7 +207,19 @@ export default grammar({ call_statement: ($) => seq($.function_call, ";"), - return_statement: ($) => seq("return", $.expression_list, ";"), + return_statement: ($) => + seq("return", choice($.return_expression_list, $.expression), ";"), + + return_expression_list: ($) => + seq( + "(", + $.expression, + ",", + optional( + seq($.expression, repeat(seq(",", $.expression)), optional(",")), + ), + ")", + ), assign_statement: ($) => seq(field("name", $.identifier), "=", field("value", $.expression), ";"), @@ -197,8 +255,8 @@ export default grammar({ "(", $.expression, ")", - $.block, - optional(seq("else", $.block)), + $.statement, + optional(seq("else", $.statement)), ), ), @@ -214,7 +272,7 @@ export default grammar({ ",", $.expression, ")", - $.block, + $.statement, ), console_statement: ($) => seq("console.log", $.console_parameter_list, ";"), @@ -222,7 +280,7 @@ export default grammar({ console_parameter_list: ($) => seq("(", optional(commaSep($.console_parameter)), ")"), - console_parameter: ($) => choice($.identifier, $.literal), + console_parameter: ($) => $.expression, expression: ($) => $.logical_or, @@ -278,18 +336,16 @@ export default grammar({ postfix_op: ($) => choice( $.tuple_index, - $.member_access, $.unary_suffix, $.split_call, $.slice_call, $.append_call, $.reverse_call, + $.field_access, ), tuple_index: ($) => seq("[", $.expression, "]"), - member_access: ($) => seq(".", field("name", $.identifier)), - unary_suffix: (_) => ".length", split_call: ($) => seq(".split", "(", $.expression, ")"), @@ -300,6 +356,8 @@ export default grammar({ reverse_call: (_) => seq(".reverse", "(", ")"), + field_access: ($) => seq(".", field("name", $.identifier)), + primary: ($) => choice( $.parenthesized, @@ -319,7 +377,7 @@ export default grammar({ // type_name("(" expression ("," expression)? ","? ")" cast: ($) => seq( - $.type_name, + $.cast_type_name, "(", $.expression, optional(seq(",", $.expression)), @@ -327,6 +385,8 @@ export default grammar({ ")", ), + cast_type_name: ($) => seq($.builtin_type, repeat($.array_suffix)), + function_call: ($) => seq($.identifier, $.expression_list), expression_list: ($) => seq("(", optional(commaSep($.expression)), ")"), @@ -376,14 +436,14 @@ export default grammar({ type_name: ($) => seq($.base_type, repeat($.array_suffix)), - base_type: ($) => - choice("int", "bool", "string", "pubkey", "sig", "datasig", "byte", $.identifier), + base_type: ($) => choice($.builtin_type, $.identifier), - attribute: (_) => token(seq("#[", /[^\]\n]+/, "]")), + builtin_type: (_) => + choice("int", "bool", "string", "pubkey", "sig", "datasig", "byte"), array_suffix: ($) => seq("[", optional($.array_size), "]"), - array_size: ($) => choice($.identifier, $.array_bound), + array_size: ($) => choice("_", $.identifier, $.array_bound), array_bound: (_) => token(/[1-9][0-9]*/), diff --git a/tree-sitter/queries/highlights.scm b/tree-sitter/queries/highlights.scm index d5d7a56..bf32359 100644 --- a/tree-sitter/queries/highlights.scm +++ b/tree-sitter/queries/highlights.scm @@ -12,6 +12,12 @@ (type_name) @type +(struct_definition + name: (identifier) @type) + +(struct_field_definition + name: (identifier) @property) + (instantiation (identifier) @type.builtin (#match? @type.builtin @@ -26,6 +32,13 @@ (function_definition name: (identifier) @function) +(builtin_function_declaration + name: (identifier) @function.builtin) + +(function_attribute + (attribute_path + (identifier) @attribute)) + (constant_definition name: (identifier) @constant) @@ -69,10 +82,14 @@ (type_name) (identifier) @variable) +(field_access + "." @operator + name: (identifier) @property) + (function_call (identifier) @function.builtin (#match? @function.builtin - "^(readInputState|readInputStateWithTemplate|validateOutputState|validateOutputStateWithTemplate|verifyOutputState|verifyOutputStates|OpSha256|sha256|OpTxSubnetId|OpTxGas|OpTxPayloadLen|OpTxPayloadSubstr|OpOutpointTxId|OpOutpointIndex|OpTxInputScriptSigLen|OpTxInputScriptSigSubstr|OpTxInputSeq|OpTxInputIsCoinbase|OpTxInputSpkLen|OpTxInputSpkSubstr|OpTxOutputSpkLen|OpTxOutputSpkSubstr|OpAuthOutputCount|OpAuthOutputIdx|OpInputCovenantId|OpOutputCovenantId|OpCovInputCount|OpCovInputIdx|OpCovOutputCount|OpCovOutputIdx|OpNum2Bin|OpBin2Num|OpChainblockSeqCommit|checkDataSig|checkSig|checkMultiSig|blake2b)$")) + "^(readInputState|readInputStateWithTemplate|validateOutputState|validateOutputStateWithTemplate|verifyOutputState|verifyOutputStates|OpSha256|sha256|OpTxSubnetId|OpTxGas|OpTxPayloadLen|OpTxPayloadSubstr|OpOutpointTxId|OpOutpointIndex|OpTxInputScriptSigLen|OpTxInputScriptSigSubstr|OpTxInputSeq|OpTxInputDaaScore|OpTxInputIsCoinbase|OpTxInputSpkLen|OpTxInputSpkSubstr|OpTxOutputSpkLen|OpTxOutputSpkSubstr|OpAuthOutputCount|OpAuthOutputIdx|OpInputCovenantId|OpOutputCovenantId|OpCovInputCount|OpCovInputIdx|OpCovOutputCount|OpCovOutputIdx|OpNum2Bin|OpBin2Num|OpChainblockSeqCommit|bytes|length|checkDataSig|checkSig|checkMultiSig|blake2b)$")) (unary_suffix) @property @@ -82,6 +99,9 @@ (slice_call ".slice" @function.method) +(append_call + ".append" @function.method) + (reverse_call ".reverse" @function.method) @@ -91,6 +111,7 @@ "pragma" "silverscript" "contract" + "struct" "entrypoint" "function" "constant" diff --git a/tree-sitter/src/grammar.json b/tree-sitter/src/grammar.json index 2462c33..e529f4a 100644 --- a/tree-sitter/src/grammar.json +++ b/tree-sitter/src/grammar.json @@ -4,19 +4,27 @@ "word": "identifier", "rules": { "source_file": { + "type": "CHOICE", + "members": [ + { + "type": "SYMBOL", + "name": "contract_source_file" + }, + { + "type": "SYMBOL", + "name": "declaration_source_file" + } + ] + }, + "contract_source_file": { "type": "SEQ", "members": [ { - "type": "CHOICE", - "members": [ - { - "type": "SYMBOL", - "name": "pragma_directive" - }, - { - "type": "BLANK" - } - ] + "type": "REPEAT", + "content": { + "type": "SYMBOL", + "name": "pragma_directive" + } }, { "type": "SYMBOL", @@ -24,6 +32,13 @@ } ] }, + "declaration_source_file": { + "type": "REPEAT1", + "content": { + "type": "SYMBOL", + "name": "builtin_function_declaration" + } + }, "pragma_directive": { "type": "SEQ", "members": [ @@ -46,10 +61,85 @@ ] }, "pragma_value": { + "type": "SEQ", + "members": [ + { + "type": "SYMBOL", + "name": "version_constraint" + }, + { + "type": "CHOICE", + "members": [ + { + "type": "SYMBOL", + "name": "version_constraint" + }, + { + "type": "BLANK" + } + ] + } + ] + }, + "version_constraint": { + "type": "SEQ", + "members": [ + { + "type": "CHOICE", + "members": [ + { + "type": "SYMBOL", + "name": "version_operator" + }, + { + "type": "BLANK" + } + ] + }, + { + "type": "SYMBOL", + "name": "version_literal" + } + ] + }, + "version_operator": { + "type": "CHOICE", + "members": [ + { + "type": "STRING", + "value": "^" + }, + { + "type": "STRING", + "value": "~" + }, + { + "type": "STRING", + "value": ">=" + }, + { + "type": "STRING", + "value": ">" + }, + { + "type": "STRING", + "value": "<=" + }, + { + "type": "STRING", + "value": "<" + }, + { + "type": "STRING", + "value": "=" + } + ] + }, + "version_literal": { "type": "TOKEN", "content": { "type": "PATTERN", - "value": "[^;]+" + "value": "\\d+\\.\\d+\\.\\d+" } }, "contract_definition": { @@ -93,15 +183,15 @@ "members": [ { "type": "SYMBOL", - "name": "constant_definition" + "name": "struct_definition" }, { "type": "SYMBOL", - "name": "contract_field_definition" + "name": "constant_definition" }, { "type": "SYMBOL", - "name": "struct_definition" + "name": "contract_field_definition" }, { "type": "SYMBOL", @@ -169,7 +259,7 @@ "type": "REPEAT", "content": { "type": "SYMBOL", - "name": "attribute" + "name": "function_attribute" } }, { @@ -212,20 +302,183 @@ } ] }, + { + "type": "SYMBOL", + "name": "braced_block" + } + ] + }, + "builtin_function_declaration": { + "type": "SEQ", + "members": [ { "type": "STRING", - "value": "{" + "value": "function" + }, + { + "type": "FIELD", + "name": "name", + "content": { + "type": "SYMBOL", + "name": "identifier" + } + }, + { + "type": "SYMBOL", + "name": "parameter_list" + }, + { + "type": "CHOICE", + "members": [ + { + "type": "SYMBOL", + "name": "return_type_list" + }, + { + "type": "BLANK" + } + ] + }, + { + "type": "STRING", + "value": ";" + } + ] + }, + "function_attribute": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "#[" + }, + { + "type": "SYMBOL", + "name": "attribute_path" + }, + { + "type": "CHOICE", + "members": [ + { + "type": "SYMBOL", + "name": "attribute_args" + }, + { + "type": "BLANK" + } + ] + }, + { + "type": "STRING", + "value": "]" + } + ] + }, + "attribute_path": { + "type": "SEQ", + "members": [ + { + "type": "SYMBOL", + "name": "identifier" }, { "type": "REPEAT", + "content": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "." + }, + { + "type": "SYMBOL", + "name": "identifier" + } + ] + } + } + ] + }, + "attribute_args": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "(" + }, + { + "type": "CHOICE", + "members": [ + { + "type": "SEQ", + "members": [ + { + "type": "SYMBOL", + "name": "attribute_arg" + }, + { + "type": "REPEAT", + "content": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "," + }, + { + "type": "SYMBOL", + "name": "attribute_arg" + } + ] + } + }, + { + "type": "CHOICE", + "members": [ + { + "type": "STRING", + "value": "," + }, + { + "type": "BLANK" + } + ] + } + ] + }, + { + "type": "BLANK" + } + ] + }, + { + "type": "STRING", + "value": ")" + } + ] + }, + "attribute_arg": { + "type": "SEQ", + "members": [ + { + "type": "FIELD", + "name": "name", "content": { "type": "SYMBOL", - "name": "statement" + "name": "identifier" } }, { "type": "STRING", - "value": "}" + "value": "=" + }, + { + "type": "FIELD", + "name": "value", + "content": { + "type": "SYMBOL", + "name": "expression" + } } ] }, @@ -377,87 +630,96 @@ "type": "STRING", "value": ":" }, - { - "type": "STRING", - "value": "(" - }, { "type": "CHOICE", "members": [ + { + "type": "SYMBOL", + "name": "type_name" + }, { "type": "SEQ", "members": [ { - "type": "SYMBOL", - "name": "type_name" - }, - { - "type": "REPEAT", - "content": { - "type": "SEQ", - "members": [ - { - "type": "STRING", - "value": "," - }, - { - "type": "SYMBOL", - "name": "type_name" - } - ] - } + "type": "STRING", + "value": "(" }, { "type": "CHOICE", "members": [ { - "type": "STRING", - "value": "," + "type": "SEQ", + "members": [ + { + "type": "SYMBOL", + "name": "type_name" + }, + { + "type": "REPEAT", + "content": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "," + }, + { + "type": "SYMBOL", + "name": "type_name" + } + ] + } + }, + { + "type": "CHOICE", + "members": [ + { + "type": "STRING", + "value": "," + }, + { + "type": "BLANK" + } + ] + } + ] }, { "type": "BLANK" } ] + }, + { + "type": "STRING", + "value": ")" } ] - }, - { - "type": "BLANK" } ] - }, - { - "type": "STRING", - "value": ")" } ] - }, - "block": { - "type": "CHOICE", - "members": [ - { - "type": "SEQ", - "members": [ - { - "type": "STRING", - "value": "{" - }, - { - "type": "REPEAT", - "content": { - "type": "SYMBOL", - "name": "statement" - } - }, - { - "type": "STRING", - "value": "}" - } - ] + }, + "block": { + "type": "SYMBOL", + "name": "statement" + }, + "braced_block": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "{" }, { - "type": "SYMBOL", - "name": "statement" + "type": "REPEAT", + "content": { + "type": "SYMBOL", + "name": "statement" + } + }, + { + "type": "STRING", + "value": "}" } ] }, @@ -476,6 +738,10 @@ "type": "SYMBOL", "name": "state_function_call_assignment" }, + { + "type": "SYMBOL", + "name": "struct_destructure_assignment" + }, { "type": "SYMBOL", "name": "function_call_assignment" @@ -508,6 +774,10 @@ "type": "SYMBOL", "name": "for_statement" }, + { + "type": "SYMBOL", + "name": "braced_block" + }, { "type": "SYMBOL", "name": "console_statement" @@ -667,6 +937,72 @@ ] }, "state_function_call_assignment": { + "type": "PREC", + "value": 1, + "content": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "{" + }, + { + "type": "SEQ", + "members": [ + { + "type": "SYMBOL", + "name": "state_typed_binding" + }, + { + "type": "REPEAT", + "content": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "," + }, + { + "type": "SYMBOL", + "name": "state_typed_binding" + } + ] + } + }, + { + "type": "CHOICE", + "members": [ + { + "type": "STRING", + "value": "," + }, + { + "type": "BLANK" + } + ] + } + ] + }, + { + "type": "STRING", + "value": "}" + }, + { + "type": "STRING", + "value": "=" + }, + { + "type": "SYMBOL", + "name": "function_call" + }, + { + "type": "STRING", + "value": ";" + } + ] + } + }, + "struct_destructure_assignment": { "type": "SEQ", "members": [ { @@ -720,7 +1056,7 @@ }, { "type": "SYMBOL", - "name": "function_call" + "name": "expression" }, { "type": "STRING", @@ -783,8 +1119,17 @@ "value": "return" }, { - "type": "SYMBOL", - "name": "expression_list" + "type": "CHOICE", + "members": [ + { + "type": "SYMBOL", + "name": "return_expression_list" + }, + { + "type": "SYMBOL", + "name": "expression" + } + ] }, { "type": "STRING", @@ -792,6 +1137,72 @@ } ] }, + "return_expression_list": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "(" + }, + { + "type": "SYMBOL", + "name": "expression" + }, + { + "type": "STRING", + "value": "," + }, + { + "type": "CHOICE", + "members": [ + { + "type": "SEQ", + "members": [ + { + "type": "SYMBOL", + "name": "expression" + }, + { + "type": "REPEAT", + "content": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "," + }, + { + "type": "SYMBOL", + "name": "expression" + } + ] + } + }, + { + "type": "CHOICE", + "members": [ + { + "type": "STRING", + "value": "," + }, + { + "type": "BLANK" + } + ] + } + ] + }, + { + "type": "BLANK" + } + ] + }, + { + "type": "STRING", + "value": ")" + } + ] + }, "assign_statement": { "type": "SEQ", "members": [ @@ -949,7 +1360,7 @@ }, { "type": "SYMBOL", - "name": "block" + "name": "statement" }, { "type": "CHOICE", @@ -963,7 +1374,7 @@ }, { "type": "SYMBOL", - "name": "block" + "name": "statement" } ] }, @@ -1020,7 +1431,7 @@ }, { "type": "SYMBOL", - "name": "block" + "name": "statement" } ] }, @@ -1100,17 +1511,8 @@ ] }, "console_parameter": { - "type": "CHOICE", - "members": [ - { - "type": "SYMBOL", - "name": "identifier" - }, - { - "type": "SYMBOL", - "name": "literal" - } - ] + "type": "SYMBOL", + "name": "expression" }, "expression": { "type": "SYMBOL", @@ -1485,10 +1887,6 @@ "type": "SYMBOL", "name": "tuple_index" }, - { - "type": "SYMBOL", - "name": "member_access" - }, { "type": "SYMBOL", "name": "unary_suffix" @@ -1508,6 +1906,10 @@ { "type": "SYMBOL", "name": "reverse_call" + }, + { + "type": "SYMBOL", + "name": "field_access" } ] }, @@ -1528,23 +1930,6 @@ } ] }, - "member_access": { - "type": "SEQ", - "members": [ - { - "type": "STRING", - "value": "." - }, - { - "type": "FIELD", - "name": "name", - "content": { - "type": "SYMBOL", - "name": "identifier" - } - } - ] - }, "unary_suffix": { "type": "STRING", "value": ".length" @@ -1629,6 +2014,23 @@ } ] }, + "field_access": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "." + }, + { + "type": "FIELD", + "name": "name", + "content": { + "type": "SYMBOL", + "name": "identifier" + } + } + ] + }, "primary": { "type": "CHOICE", "members": [ @@ -1696,7 +2098,7 @@ "members": [ { "type": "SYMBOL", - "name": "type_name" + "name": "cast_type_name" }, { "type": "STRING", @@ -1745,6 +2147,22 @@ } ] }, + "cast_type_name": { + "type": "SEQ", + "members": [ + { + "type": "SYMBOL", + "name": "builtin_type" + }, + { + "type": "REPEAT", + "content": { + "type": "SYMBOL", + "name": "array_suffix" + } + } + ] + }, "function_call": { "type": "SEQ", "members": [ @@ -2130,6 +2548,19 @@ ] }, "base_type": { + "type": "CHOICE", + "members": [ + { + "type": "SYMBOL", + "name": "builtin_type" + }, + { + "type": "SYMBOL", + "name": "identifier" + } + ] + }, + "builtin_type": { "type": "CHOICE", "members": [ { @@ -2159,33 +2590,9 @@ { "type": "STRING", "value": "byte" - }, - { - "type": "SYMBOL", - "name": "identifier" } ] }, - "attribute": { - "type": "TOKEN", - "content": { - "type": "SEQ", - "members": [ - { - "type": "STRING", - "value": "#[" - }, - { - "type": "PATTERN", - "value": "[^\\]\\n]+" - }, - { - "type": "STRING", - "value": "]" - } - ] - } - }, "array_suffix": { "type": "SEQ", "members": [ @@ -2214,6 +2621,10 @@ "array_size": { "type": "CHOICE", "members": [ + { + "type": "STRING", + "value": "_" + }, { "type": "SYMBOL", "name": "identifier" @@ -2466,16 +2877,7 @@ "name": "comment" } ], - "conflicts": [ - [ - "function_call", - "base_type" - ], - [ - "primary", - "base_type" - ] - ], + "conflicts": [], "precedences": [], "externals": [], "inline": [], diff --git a/tree-sitter/src/node-types.json b/tree-sitter/src/node-types.json index ab6449c..e673b4b 100644 --- a/tree-sitter/src/node-types.json +++ b/tree-sitter/src/node-types.json @@ -35,7 +35,7 @@ "fields": {}, "children": { "multiple": false, - "required": true, + "required": false, "types": [ { "type": "array_bound", @@ -89,14 +89,74 @@ } } }, + { + "type": "attribute_arg", + "named": true, + "fields": { + "name": { + "multiple": false, + "required": true, + "types": [ + { + "type": "identifier", + "named": true + } + ] + }, + "value": { + "multiple": false, + "required": true, + "types": [ + { + "type": "expression", + "named": true + } + ] + } + } + }, + { + "type": "attribute_args", + "named": true, + "fields": {}, + "children": { + "multiple": true, + "required": false, + "types": [ + { + "type": "attribute_arg", + "named": true + } + ] + } + }, + { + "type": "attribute_path", + "named": true, + "fields": {}, + "children": { + "multiple": true, + "required": true, + "types": [ + { + "type": "identifier", + "named": true + } + ] + } + }, { "type": "base_type", "named": true, "fields": {}, "children": { "multiple": false, - "required": false, + "required": true, "types": [ + { + "type": "builtin_type", + "named": true + }, { "type": "identifier", "named": true @@ -150,7 +210,12 @@ } }, { - "type": "block", + "type": "boolean_literal", + "named": true, + "fields": {} + }, + { + "type": "braced_block", "named": true, "fields": {}, "children": { @@ -165,7 +230,37 @@ } }, { - "type": "boolean_literal", + "type": "builtin_function_declaration", + "named": true, + "fields": { + "name": { + "multiple": false, + "required": true, + "types": [ + { + "type": "identifier", + "named": true + } + ] + } + }, + "children": { + "multiple": true, + "required": true, + "types": [ + { + "type": "parameter_list", + "named": true + }, + { + "type": "return_type_list", + "named": true + } + ] + } + }, + { + "type": "builtin_type", "named": true, "fields": {} }, @@ -192,12 +287,31 @@ "multiple": true, "required": true, "types": [ + { + "type": "cast_type_name", + "named": true + }, { "type": "expression", "named": true + } + ] + } + }, + { + "type": "cast_type_name", + "named": true, + "fields": {}, + "children": { + "multiple": true, + "required": true, + "types": [ + { + "type": "array_suffix", + "named": true }, { - "type": "type_name", + "type": "builtin_type", "named": true } ] @@ -227,11 +341,7 @@ "required": true, "types": [ { - "type": "identifier", - "named": true - }, - { - "type": "literal", + "type": "expression", "named": true } ] @@ -396,6 +506,25 @@ ] } }, + { + "type": "contract_source_file", + "named": true, + "fields": {}, + "children": { + "multiple": true, + "required": true, + "types": [ + { + "type": "contract_definition", + "named": true + }, + { + "type": "pragma_directive", + "named": true + } + ] + } + }, { "type": "date_literal", "named": true, @@ -411,6 +540,21 @@ ] } }, + { + "type": "declaration_source_file", + "named": true, + "fields": {}, + "children": { + "multiple": true, + "required": true, + "types": [ + { + "type": "builtin_function_declaration", + "named": true + } + ] + } + }, { "type": "equality", "named": true, @@ -471,6 +615,22 @@ ] } }, + { + "type": "field_access", + "named": true, + "fields": { + "name": { + "multiple": false, + "required": true, + "types": [ + { + "type": "identifier", + "named": true + } + ] + } + } + }, { "type": "for_statement", "named": true, @@ -480,15 +640,34 @@ "required": true, "types": [ { - "type": "block", + "type": "expression", "named": true }, { - "type": "expression", + "type": "identifier", "named": true }, { - "type": "identifier", + "type": "statement", + "named": true + } + ] + } + }, + { + "type": "function_attribute", + "named": true, + "fields": {}, + "children": { + "multiple": true, + "required": true, + "types": [ + { + "type": "attribute_args", + "named": true + }, + { + "type": "attribute_path", "named": true } ] @@ -552,19 +731,19 @@ "required": true, "types": [ { - "type": "attribute", + "type": "braced_block", "named": true }, { - "type": "parameter_list", + "type": "function_attribute", "named": true }, { - "type": "return_type_list", + "type": "parameter_list", "named": true }, { - "type": "statement", + "type": "return_type_list", "named": true } ] @@ -579,11 +758,11 @@ "required": true, "types": [ { - "type": "block", + "type": "expression", "named": true }, { - "type": "expression", + "type": "statement", "named": true } ] @@ -734,22 +913,6 @@ ] } }, - { - "type": "member_access", - "named": true, - "fields": { - "name": { - "multiple": false, - "required": true, - "types": [ - { - "type": "identifier", - "named": true - } - ] - } - } - }, { "type": "modifier", "named": true, @@ -886,7 +1049,7 @@ "named": true }, { - "type": "member_access", + "type": "field_access", "named": true }, { @@ -927,6 +1090,21 @@ ] } }, + { + "type": "pragma_value", + "named": true, + "fields": {}, + "children": { + "multiple": true, + "required": true, + "types": [ + { + "type": "version_constraint", + "named": true + } + ] + } + }, { "type": "primary", "named": true, @@ -1012,6 +1190,21 @@ ] } }, + { + "type": "return_expression_list", + "named": true, + "fields": {}, + "children": { + "multiple": true, + "required": true, + "types": [ + { + "type": "expression", + "named": true + } + ] + } + }, { "type": "return_statement", "named": true, @@ -1021,7 +1214,11 @@ "required": true, "types": [ { - "type": "expression_list", + "type": "expression", + "named": true + }, + { + "type": "return_expression_list", "named": true } ] @@ -1068,15 +1265,15 @@ "root": true, "fields": {}, "children": { - "multiple": true, + "multiple": false, "required": true, "types": [ { - "type": "contract_definition", + "type": "contract_source_file", "named": true }, { - "type": "pragma_directive", + "type": "declaration_source_file", "named": true } ] @@ -1181,6 +1378,10 @@ "type": "assign_statement", "named": true }, + { + "type": "braced_block", + "named": true + }, { "type": "call_statement", "named": true @@ -1213,6 +1414,10 @@ "type": "state_function_call_assignment", "named": true }, + { + "type": "struct_destructure_assignment", + "named": true + }, { "type": "time_op_statement", "named": true @@ -1254,6 +1459,25 @@ ] } }, + { + "type": "struct_destructure_assignment", + "named": true, + "fields": {}, + "children": { + "multiple": true, + "required": true, + "types": [ + { + "type": "expression", + "named": true + }, + { + "type": "state_typed_binding", + "named": true + } + ] + } + }, { "type": "struct_field_definition", "named": true, @@ -1463,6 +1687,30 @@ ] } }, + { + "type": "version_constraint", + "named": true, + "fields": {}, + "children": { + "multiple": true, + "required": true, + "types": [ + { + "type": "version_literal", + "named": true + }, + { + "type": "version_operator", + "named": true + } + ] + } + }, + { + "type": "version_operator", + "named": true, + "fields": {} + }, { "type": "!", "named": false @@ -1471,6 +1719,10 @@ "type": "!=", "named": false }, + { + "type": "#[", + "named": false + }, { "type": "%", "named": false @@ -1576,11 +1828,11 @@ "named": false }, { - "type": "array_bound", - "named": true + "type": "_", + "named": false }, { - "type": "attribute", + "type": "array_bound", "named": true }, { @@ -1704,10 +1956,6 @@ "type": "pragma", "named": false }, - { - "type": "pragma_value", - "named": true - }, { "type": "pubkey", "named": false @@ -1804,6 +2052,10 @@ "type": "value", "named": false }, + { + "type": "version_literal", + "named": true + }, { "type": "weeks", "named": false @@ -1823,5 +2075,9 @@ { "type": "}", "named": false + }, + { + "type": "~", + "named": false } ] \ No newline at end of file diff --git a/tree-sitter/src/parser.c b/tree-sitter/src/parser.c index decf99e..820fd78 100644 --- a/tree-sitter/src/parser.c +++ b/tree-sitter/src/parser.c @@ -7,11 +7,11 @@ #endif #define LANGUAGE_VERSION 15 -#define STATE_COUNT 404 +#define STATE_COUNT 453 #define LARGE_STATE_COUNT 2 -#define SYMBOL_COUNT 192 +#define SYMBOL_COUNT 212 #define ALIAS_COUNT 0 -#define TOKEN_COUNT 91 +#define TOKEN_COUNT 93 #define EXTERNAL_TOKEN_COUNT 0 #define FIELD_COUNT 5 #define MAX_ALIAS_SEQUENCE_LENGTH 11 @@ -24,193 +24,213 @@ enum ts_symbol_identifiers { anon_sym_pragma = 2, anon_sym_silverscript = 3, anon_sym_SEMI = 4, - sym_pragma_value = 5, - anon_sym_contract = 6, - anon_sym_LBRACE = 7, - anon_sym_RBRACE = 8, - anon_sym_struct = 9, - anon_sym_entrypoint = 10, - anon_sym_function = 11, - anon_sym_constant = 12, - anon_sym_EQ = 13, - anon_sym_LPAREN = 14, - anon_sym_COMMA = 15, - anon_sym_RPAREN = 16, - anon_sym_COLON = 17, - anon_sym_return = 18, - anon_sym_require = 19, - anon_sym_GT_EQ = 20, - anon_sym_if = 21, - anon_sym_else = 22, - anon_sym_for = 23, - anon_sym_console_DOTlog = 24, - anon_sym_PIPE_PIPE = 25, - anon_sym_AMP_AMP = 26, - anon_sym_PIPE = 27, - anon_sym_CARET = 28, - anon_sym_AMP = 29, - anon_sym_EQ_EQ = 30, - anon_sym_BANG_EQ = 31, - anon_sym_LT_EQ = 32, - anon_sym_LT = 33, - anon_sym_GT = 34, - anon_sym_PLUS = 35, - anon_sym_DASH = 36, - anon_sym_STAR = 37, - anon_sym_SLASH = 38, - anon_sym_PERCENT = 39, - anon_sym_BANG = 40, - anon_sym_LBRACK = 41, - anon_sym_RBRACK = 42, - anon_sym_DOT = 43, - sym_unary_suffix = 44, - anon_sym_DOTsplit = 45, - anon_sym_DOTslice = 46, - anon_sym_DOTappend = 47, - anon_sym_DOTreverse = 48, - anon_sym_new = 49, - sym_output_root = 50, - sym_input_root = 51, - anon_sym_value = 52, - anon_sym_scriptPubKey = 53, - anon_sym_outpointTransactionHash = 54, - anon_sym_outpointIndex = 55, - anon_sym_sigScript = 56, - anon_sym_int = 57, - anon_sym_bool = 58, - anon_sym_string = 59, - anon_sym_pubkey = 60, - anon_sym_sig = 61, - anon_sym_datasig = 62, - anon_sym_byte = 63, - sym_attribute = 64, - sym_array_bound = 65, - anon_sym_true = 66, - anon_sym_false = 67, - anon_sym_litras = 68, - anon_sym_grains = 69, - anon_sym_kas = 70, - anon_sym_seconds = 71, - anon_sym_minutes = 72, - anon_sym_hours = 73, - anon_sym_days = 74, - anon_sym_weeks = 75, - sym_number = 76, - sym_string_literal = 77, - anon_sym_date = 78, - sym_hex_literal = 79, - anon_sym_this_DOTage = 80, - anon_sym_tx_DOTtime = 81, - anon_sym_this_DOTactiveInputIndex = 82, - anon_sym_this_DOTactiveScriptPubKey = 83, - anon_sym_this_DOTscriptSizeDataPrefix = 84, - anon_sym_this_DOTscriptSize = 85, - anon_sym_tx_DOTinputs_DOTlength = 86, - anon_sym_tx_DOToutputs_DOTlength = 87, - anon_sym_tx_DOTversion = 88, - anon_sym_tx_DOTlocktime = 89, - sym_comment = 90, - sym_source_file = 91, - sym_pragma_directive = 92, - sym_contract_definition = 93, - sym_contract_item = 94, - sym_struct_definition = 95, - sym_struct_field_definition = 96, - sym_function_definition = 97, - sym_constant_definition = 98, - sym_contract_field_definition = 99, - sym_parameter_list = 100, - sym_parameter = 101, - sym_return_type_list = 102, - sym_block = 103, - sym_statement = 104, - sym_variable_definition = 105, - sym_tuple_assignment = 106, - sym_function_call_assignment = 107, - sym_state_function_call_assignment = 108, - sym_typed_binding = 109, - sym_state_typed_binding = 110, - sym_call_statement = 111, - sym_return_statement = 112, - sym_assign_statement = 113, - sym_time_op_statement = 114, - sym_require_statement = 115, - sym_require_message = 116, - sym_if_statement = 117, - sym_for_statement = 118, - sym_console_statement = 119, - sym_console_parameter_list = 120, - sym_console_parameter = 121, - sym_expression = 122, - sym_logical_or = 123, - sym_logical_and = 124, - sym_bit_or = 125, - sym_bit_xor = 126, - sym_bit_and = 127, - sym_equality = 128, - sym_comparison = 129, - sym_term = 130, - sym_factor = 131, - sym_unary = 132, - sym_unary_op = 133, - sym_postfix = 134, - sym_postfix_op = 135, - sym_tuple_index = 136, - sym_member_access = 137, - sym_split_call = 138, - sym_slice_call = 139, - sym_append_call = 140, - sym_reverse_call = 141, - sym_primary = 142, - sym_parenthesized = 143, - sym_cast = 144, - sym_function_call = 145, - sym_expression_list = 146, - sym_instantiation = 147, - sym_state_object = 148, - sym_state_entry = 149, - sym_introspection = 150, - sym_output_field = 151, - sym_output_field_name = 152, - sym_input_field = 153, - sym_input_field_name = 154, - sym_array = 155, - sym_modifier = 156, - sym_type_name = 157, - sym_base_type = 158, - sym_array_suffix = 159, - sym_array_size = 160, - sym_literal = 161, - sym_boolean_literal = 162, - sym_number_literal = 163, - sym_number_unit = 164, - sym_date_literal = 165, - sym_tx_var = 166, - sym_nullary_op = 167, - aux_sym_contract_definition_repeat1 = 168, - aux_sym_struct_definition_repeat1 = 169, - aux_sym_function_definition_repeat1 = 170, - aux_sym_function_definition_repeat2 = 171, - aux_sym_parameter_list_repeat1 = 172, - aux_sym_return_type_list_repeat1 = 173, - aux_sym_variable_definition_repeat1 = 174, - aux_sym_function_call_assignment_repeat1 = 175, - aux_sym_state_function_call_assignment_repeat1 = 176, - aux_sym_console_parameter_list_repeat1 = 177, - aux_sym_logical_or_repeat1 = 178, - aux_sym_logical_and_repeat1 = 179, - aux_sym_bit_or_repeat1 = 180, - aux_sym_bit_xor_repeat1 = 181, - aux_sym_bit_and_repeat1 = 182, - aux_sym_equality_repeat1 = 183, - aux_sym_comparison_repeat1 = 184, - aux_sym_term_repeat1 = 185, - aux_sym_factor_repeat1 = 186, - aux_sym_unary_repeat1 = 187, - aux_sym_postfix_repeat1 = 188, - aux_sym_expression_list_repeat1 = 189, - aux_sym_state_object_repeat1 = 190, - aux_sym_type_name_repeat1 = 191, + anon_sym_CARET = 5, + anon_sym_TILDE = 6, + anon_sym_GT_EQ = 7, + anon_sym_GT = 8, + anon_sym_LT_EQ = 9, + anon_sym_LT = 10, + anon_sym_EQ = 11, + sym_version_literal = 12, + anon_sym_contract = 13, + anon_sym_LBRACE = 14, + anon_sym_RBRACE = 15, + anon_sym_struct = 16, + anon_sym_entrypoint = 17, + anon_sym_function = 18, + anon_sym_POUND_LBRACK = 19, + anon_sym_RBRACK = 20, + anon_sym_DOT = 21, + anon_sym_LPAREN = 22, + anon_sym_COMMA = 23, + anon_sym_RPAREN = 24, + anon_sym_constant = 25, + anon_sym_COLON = 26, + anon_sym_return = 27, + anon_sym_require = 28, + anon_sym_if = 29, + anon_sym_else = 30, + anon_sym_for = 31, + anon_sym_console_DOTlog = 32, + anon_sym_PIPE_PIPE = 33, + anon_sym_AMP_AMP = 34, + anon_sym_PIPE = 35, + anon_sym_AMP = 36, + anon_sym_EQ_EQ = 37, + anon_sym_BANG_EQ = 38, + anon_sym_PLUS = 39, + anon_sym_DASH = 40, + anon_sym_STAR = 41, + anon_sym_SLASH = 42, + anon_sym_PERCENT = 43, + anon_sym_BANG = 44, + anon_sym_LBRACK = 45, + sym_unary_suffix = 46, + anon_sym_DOTsplit = 47, + anon_sym_DOTslice = 48, + anon_sym_DOTappend = 49, + anon_sym_DOTreverse = 50, + anon_sym_new = 51, + sym_output_root = 52, + sym_input_root = 53, + anon_sym_value = 54, + anon_sym_scriptPubKey = 55, + anon_sym_outpointTransactionHash = 56, + anon_sym_outpointIndex = 57, + anon_sym_sigScript = 58, + anon_sym_int = 59, + anon_sym_bool = 60, + anon_sym_string = 61, + anon_sym_pubkey = 62, + anon_sym_sig = 63, + anon_sym_datasig = 64, + anon_sym_byte = 65, + anon_sym__ = 66, + sym_array_bound = 67, + anon_sym_true = 68, + anon_sym_false = 69, + anon_sym_litras = 70, + anon_sym_grains = 71, + anon_sym_kas = 72, + anon_sym_seconds = 73, + anon_sym_minutes = 74, + anon_sym_hours = 75, + anon_sym_days = 76, + anon_sym_weeks = 77, + sym_number = 78, + sym_string_literal = 79, + anon_sym_date = 80, + sym_hex_literal = 81, + anon_sym_this_DOTage = 82, + anon_sym_tx_DOTtime = 83, + anon_sym_this_DOTactiveInputIndex = 84, + anon_sym_this_DOTactiveScriptPubKey = 85, + anon_sym_this_DOTscriptSizeDataPrefix = 86, + anon_sym_this_DOTscriptSize = 87, + anon_sym_tx_DOTinputs_DOTlength = 88, + anon_sym_tx_DOToutputs_DOTlength = 89, + anon_sym_tx_DOTversion = 90, + anon_sym_tx_DOTlocktime = 91, + sym_comment = 92, + sym_source_file = 93, + sym_contract_source_file = 94, + sym_declaration_source_file = 95, + sym_pragma_directive = 96, + sym_pragma_value = 97, + sym_version_constraint = 98, + sym_version_operator = 99, + sym_contract_definition = 100, + sym_contract_item = 101, + sym_struct_definition = 102, + sym_struct_field_definition = 103, + sym_function_definition = 104, + sym_builtin_function_declaration = 105, + sym_function_attribute = 106, + sym_attribute_path = 107, + sym_attribute_args = 108, + sym_attribute_arg = 109, + sym_constant_definition = 110, + sym_contract_field_definition = 111, + sym_parameter_list = 112, + sym_parameter = 113, + sym_return_type_list = 114, + sym_braced_block = 115, + sym_statement = 116, + sym_variable_definition = 117, + sym_tuple_assignment = 118, + sym_function_call_assignment = 119, + sym_state_function_call_assignment = 120, + sym_struct_destructure_assignment = 121, + sym_typed_binding = 122, + sym_state_typed_binding = 123, + sym_call_statement = 124, + sym_return_statement = 125, + sym_return_expression_list = 126, + sym_assign_statement = 127, + sym_time_op_statement = 128, + sym_require_statement = 129, + sym_require_message = 130, + sym_if_statement = 131, + sym_for_statement = 132, + sym_console_statement = 133, + sym_console_parameter_list = 134, + sym_console_parameter = 135, + sym_expression = 136, + sym_logical_or = 137, + sym_logical_and = 138, + sym_bit_or = 139, + sym_bit_xor = 140, + sym_bit_and = 141, + sym_equality = 142, + sym_comparison = 143, + sym_term = 144, + sym_factor = 145, + sym_unary = 146, + sym_unary_op = 147, + sym_postfix = 148, + sym_postfix_op = 149, + sym_tuple_index = 150, + sym_split_call = 151, + sym_slice_call = 152, + sym_append_call = 153, + sym_reverse_call = 154, + sym_field_access = 155, + sym_primary = 156, + sym_parenthesized = 157, + sym_cast = 158, + sym_cast_type_name = 159, + sym_function_call = 160, + sym_expression_list = 161, + sym_instantiation = 162, + sym_state_object = 163, + sym_state_entry = 164, + sym_introspection = 165, + sym_output_field = 166, + sym_output_field_name = 167, + sym_input_field = 168, + sym_input_field_name = 169, + sym_array = 170, + sym_modifier = 171, + sym_type_name = 172, + sym_base_type = 173, + sym_builtin_type = 174, + sym_array_suffix = 175, + sym_array_size = 176, + sym_literal = 177, + sym_boolean_literal = 178, + sym_number_literal = 179, + sym_number_unit = 180, + sym_date_literal = 181, + sym_tx_var = 182, + sym_nullary_op = 183, + aux_sym_contract_source_file_repeat1 = 184, + aux_sym_declaration_source_file_repeat1 = 185, + aux_sym_contract_definition_repeat1 = 186, + aux_sym_struct_definition_repeat1 = 187, + aux_sym_function_definition_repeat1 = 188, + aux_sym_attribute_path_repeat1 = 189, + aux_sym_attribute_args_repeat1 = 190, + aux_sym_parameter_list_repeat1 = 191, + aux_sym_return_type_list_repeat1 = 192, + aux_sym_braced_block_repeat1 = 193, + aux_sym_variable_definition_repeat1 = 194, + aux_sym_function_call_assignment_repeat1 = 195, + aux_sym_state_function_call_assignment_repeat1 = 196, + aux_sym_return_expression_list_repeat1 = 197, + aux_sym_console_parameter_list_repeat1 = 198, + aux_sym_logical_or_repeat1 = 199, + aux_sym_logical_and_repeat1 = 200, + aux_sym_bit_or_repeat1 = 201, + aux_sym_bit_xor_repeat1 = 202, + aux_sym_bit_and_repeat1 = 203, + aux_sym_equality_repeat1 = 204, + aux_sym_comparison_repeat1 = 205, + aux_sym_term_repeat1 = 206, + aux_sym_factor_repeat1 = 207, + aux_sym_unary_repeat1 = 208, + aux_sym_postfix_repeat1 = 209, + aux_sym_cast_type_name_repeat1 = 210, + aux_sym_state_object_repeat1 = 211, }; static const char * const ts_symbol_names[] = { @@ -219,22 +239,30 @@ static const char * const ts_symbol_names[] = { [anon_sym_pragma] = "pragma", [anon_sym_silverscript] = "silverscript", [anon_sym_SEMI] = ";", - [sym_pragma_value] = "pragma_value", + [anon_sym_CARET] = "^", + [anon_sym_TILDE] = "~", + [anon_sym_GT_EQ] = ">=", + [anon_sym_GT] = ">", + [anon_sym_LT_EQ] = "<=", + [anon_sym_LT] = "<", + [anon_sym_EQ] = "=", + [sym_version_literal] = "version_literal", [anon_sym_contract] = "contract", [anon_sym_LBRACE] = "{", [anon_sym_RBRACE] = "}", [anon_sym_struct] = "struct", [anon_sym_entrypoint] = "entrypoint", [anon_sym_function] = "function", - [anon_sym_constant] = "constant", - [anon_sym_EQ] = "=", + [anon_sym_POUND_LBRACK] = "#[", + [anon_sym_RBRACK] = "]", + [anon_sym_DOT] = ".", [anon_sym_LPAREN] = "(", [anon_sym_COMMA] = ",", [anon_sym_RPAREN] = ")", + [anon_sym_constant] = "constant", [anon_sym_COLON] = ":", [anon_sym_return] = "return", [anon_sym_require] = "require", - [anon_sym_GT_EQ] = ">=", [anon_sym_if] = "if", [anon_sym_else] = "else", [anon_sym_for] = "for", @@ -242,13 +270,9 @@ static const char * const ts_symbol_names[] = { [anon_sym_PIPE_PIPE] = "||", [anon_sym_AMP_AMP] = "&&", [anon_sym_PIPE] = "|", - [anon_sym_CARET] = "^", [anon_sym_AMP] = "&", [anon_sym_EQ_EQ] = "==", [anon_sym_BANG_EQ] = "!=", - [anon_sym_LT_EQ] = "<=", - [anon_sym_LT] = "<", - [anon_sym_GT] = ">", [anon_sym_PLUS] = "+", [anon_sym_DASH] = "-", [anon_sym_STAR] = "*", @@ -256,8 +280,6 @@ static const char * const ts_symbol_names[] = { [anon_sym_PERCENT] = "%", [anon_sym_BANG] = "!", [anon_sym_LBRACK] = "[", - [anon_sym_RBRACK] = "]", - [anon_sym_DOT] = ".", [sym_unary_suffix] = "unary_suffix", [anon_sym_DOTsplit] = ".split", [anon_sym_DOTslice] = ".slice", @@ -278,7 +300,7 @@ static const char * const ts_symbol_names[] = { [anon_sym_sig] = "sig", [anon_sym_datasig] = "datasig", [anon_sym_byte] = "byte", - [sym_attribute] = "attribute", + [anon_sym__] = "_", [sym_array_bound] = "array_bound", [anon_sym_true] = "true", [anon_sym_false] = "false", @@ -306,27 +328,39 @@ static const char * const ts_symbol_names[] = { [anon_sym_tx_DOTlocktime] = "tx.locktime", [sym_comment] = "comment", [sym_source_file] = "source_file", + [sym_contract_source_file] = "contract_source_file", + [sym_declaration_source_file] = "declaration_source_file", [sym_pragma_directive] = "pragma_directive", + [sym_pragma_value] = "pragma_value", + [sym_version_constraint] = "version_constraint", + [sym_version_operator] = "version_operator", [sym_contract_definition] = "contract_definition", [sym_contract_item] = "contract_item", [sym_struct_definition] = "struct_definition", [sym_struct_field_definition] = "struct_field_definition", [sym_function_definition] = "function_definition", + [sym_builtin_function_declaration] = "builtin_function_declaration", + [sym_function_attribute] = "function_attribute", + [sym_attribute_path] = "attribute_path", + [sym_attribute_args] = "attribute_args", + [sym_attribute_arg] = "attribute_arg", [sym_constant_definition] = "constant_definition", [sym_contract_field_definition] = "contract_field_definition", [sym_parameter_list] = "parameter_list", [sym_parameter] = "parameter", [sym_return_type_list] = "return_type_list", - [sym_block] = "block", + [sym_braced_block] = "braced_block", [sym_statement] = "statement", [sym_variable_definition] = "variable_definition", [sym_tuple_assignment] = "tuple_assignment", [sym_function_call_assignment] = "function_call_assignment", [sym_state_function_call_assignment] = "state_function_call_assignment", + [sym_struct_destructure_assignment] = "struct_destructure_assignment", [sym_typed_binding] = "typed_binding", [sym_state_typed_binding] = "state_typed_binding", [sym_call_statement] = "call_statement", [sym_return_statement] = "return_statement", + [sym_return_expression_list] = "return_expression_list", [sym_assign_statement] = "assign_statement", [sym_time_op_statement] = "time_op_statement", [sym_require_statement] = "require_statement", @@ -351,14 +385,15 @@ static const char * const ts_symbol_names[] = { [sym_postfix] = "postfix", [sym_postfix_op] = "postfix_op", [sym_tuple_index] = "tuple_index", - [sym_member_access] = "member_access", [sym_split_call] = "split_call", [sym_slice_call] = "slice_call", [sym_append_call] = "append_call", [sym_reverse_call] = "reverse_call", + [sym_field_access] = "field_access", [sym_primary] = "primary", [sym_parenthesized] = "parenthesized", [sym_cast] = "cast", + [sym_cast_type_name] = "cast_type_name", [sym_function_call] = "function_call", [sym_expression_list] = "expression_list", [sym_instantiation] = "instantiation", @@ -373,6 +408,7 @@ static const char * const ts_symbol_names[] = { [sym_modifier] = "modifier", [sym_type_name] = "type_name", [sym_base_type] = "base_type", + [sym_builtin_type] = "builtin_type", [sym_array_suffix] = "array_suffix", [sym_array_size] = "array_size", [sym_literal] = "literal", @@ -382,15 +418,20 @@ static const char * const ts_symbol_names[] = { [sym_date_literal] = "date_literal", [sym_tx_var] = "tx_var", [sym_nullary_op] = "nullary_op", + [aux_sym_contract_source_file_repeat1] = "contract_source_file_repeat1", + [aux_sym_declaration_source_file_repeat1] = "declaration_source_file_repeat1", [aux_sym_contract_definition_repeat1] = "contract_definition_repeat1", [aux_sym_struct_definition_repeat1] = "struct_definition_repeat1", [aux_sym_function_definition_repeat1] = "function_definition_repeat1", - [aux_sym_function_definition_repeat2] = "function_definition_repeat2", + [aux_sym_attribute_path_repeat1] = "attribute_path_repeat1", + [aux_sym_attribute_args_repeat1] = "attribute_args_repeat1", [aux_sym_parameter_list_repeat1] = "parameter_list_repeat1", [aux_sym_return_type_list_repeat1] = "return_type_list_repeat1", + [aux_sym_braced_block_repeat1] = "braced_block_repeat1", [aux_sym_variable_definition_repeat1] = "variable_definition_repeat1", [aux_sym_function_call_assignment_repeat1] = "function_call_assignment_repeat1", [aux_sym_state_function_call_assignment_repeat1] = "state_function_call_assignment_repeat1", + [aux_sym_return_expression_list_repeat1] = "return_expression_list_repeat1", [aux_sym_console_parameter_list_repeat1] = "console_parameter_list_repeat1", [aux_sym_logical_or_repeat1] = "logical_or_repeat1", [aux_sym_logical_and_repeat1] = "logical_and_repeat1", @@ -403,9 +444,8 @@ static const char * const ts_symbol_names[] = { [aux_sym_factor_repeat1] = "factor_repeat1", [aux_sym_unary_repeat1] = "unary_repeat1", [aux_sym_postfix_repeat1] = "postfix_repeat1", - [aux_sym_expression_list_repeat1] = "expression_list_repeat1", + [aux_sym_cast_type_name_repeat1] = "cast_type_name_repeat1", [aux_sym_state_object_repeat1] = "state_object_repeat1", - [aux_sym_type_name_repeat1] = "type_name_repeat1", }; static const TSSymbol ts_symbol_map[] = { @@ -414,22 +454,30 @@ static const TSSymbol ts_symbol_map[] = { [anon_sym_pragma] = anon_sym_pragma, [anon_sym_silverscript] = anon_sym_silverscript, [anon_sym_SEMI] = anon_sym_SEMI, - [sym_pragma_value] = sym_pragma_value, + [anon_sym_CARET] = anon_sym_CARET, + [anon_sym_TILDE] = anon_sym_TILDE, + [anon_sym_GT_EQ] = anon_sym_GT_EQ, + [anon_sym_GT] = anon_sym_GT, + [anon_sym_LT_EQ] = anon_sym_LT_EQ, + [anon_sym_LT] = anon_sym_LT, + [anon_sym_EQ] = anon_sym_EQ, + [sym_version_literal] = sym_version_literal, [anon_sym_contract] = anon_sym_contract, [anon_sym_LBRACE] = anon_sym_LBRACE, [anon_sym_RBRACE] = anon_sym_RBRACE, [anon_sym_struct] = anon_sym_struct, [anon_sym_entrypoint] = anon_sym_entrypoint, [anon_sym_function] = anon_sym_function, - [anon_sym_constant] = anon_sym_constant, - [anon_sym_EQ] = anon_sym_EQ, + [anon_sym_POUND_LBRACK] = anon_sym_POUND_LBRACK, + [anon_sym_RBRACK] = anon_sym_RBRACK, + [anon_sym_DOT] = anon_sym_DOT, [anon_sym_LPAREN] = anon_sym_LPAREN, [anon_sym_COMMA] = anon_sym_COMMA, [anon_sym_RPAREN] = anon_sym_RPAREN, + [anon_sym_constant] = anon_sym_constant, [anon_sym_COLON] = anon_sym_COLON, [anon_sym_return] = anon_sym_return, [anon_sym_require] = anon_sym_require, - [anon_sym_GT_EQ] = anon_sym_GT_EQ, [anon_sym_if] = anon_sym_if, [anon_sym_else] = anon_sym_else, [anon_sym_for] = anon_sym_for, @@ -437,13 +485,9 @@ static const TSSymbol ts_symbol_map[] = { [anon_sym_PIPE_PIPE] = anon_sym_PIPE_PIPE, [anon_sym_AMP_AMP] = anon_sym_AMP_AMP, [anon_sym_PIPE] = anon_sym_PIPE, - [anon_sym_CARET] = anon_sym_CARET, [anon_sym_AMP] = anon_sym_AMP, [anon_sym_EQ_EQ] = anon_sym_EQ_EQ, [anon_sym_BANG_EQ] = anon_sym_BANG_EQ, - [anon_sym_LT_EQ] = anon_sym_LT_EQ, - [anon_sym_LT] = anon_sym_LT, - [anon_sym_GT] = anon_sym_GT, [anon_sym_PLUS] = anon_sym_PLUS, [anon_sym_DASH] = anon_sym_DASH, [anon_sym_STAR] = anon_sym_STAR, @@ -451,8 +495,6 @@ static const TSSymbol ts_symbol_map[] = { [anon_sym_PERCENT] = anon_sym_PERCENT, [anon_sym_BANG] = anon_sym_BANG, [anon_sym_LBRACK] = anon_sym_LBRACK, - [anon_sym_RBRACK] = anon_sym_RBRACK, - [anon_sym_DOT] = anon_sym_DOT, [sym_unary_suffix] = sym_unary_suffix, [anon_sym_DOTsplit] = anon_sym_DOTsplit, [anon_sym_DOTslice] = anon_sym_DOTslice, @@ -473,7 +515,7 @@ static const TSSymbol ts_symbol_map[] = { [anon_sym_sig] = anon_sym_sig, [anon_sym_datasig] = anon_sym_datasig, [anon_sym_byte] = anon_sym_byte, - [sym_attribute] = sym_attribute, + [anon_sym__] = anon_sym__, [sym_array_bound] = sym_array_bound, [anon_sym_true] = anon_sym_true, [anon_sym_false] = anon_sym_false, @@ -501,27 +543,39 @@ static const TSSymbol ts_symbol_map[] = { [anon_sym_tx_DOTlocktime] = anon_sym_tx_DOTlocktime, [sym_comment] = sym_comment, [sym_source_file] = sym_source_file, + [sym_contract_source_file] = sym_contract_source_file, + [sym_declaration_source_file] = sym_declaration_source_file, [sym_pragma_directive] = sym_pragma_directive, + [sym_pragma_value] = sym_pragma_value, + [sym_version_constraint] = sym_version_constraint, + [sym_version_operator] = sym_version_operator, [sym_contract_definition] = sym_contract_definition, [sym_contract_item] = sym_contract_item, [sym_struct_definition] = sym_struct_definition, [sym_struct_field_definition] = sym_struct_field_definition, [sym_function_definition] = sym_function_definition, + [sym_builtin_function_declaration] = sym_builtin_function_declaration, + [sym_function_attribute] = sym_function_attribute, + [sym_attribute_path] = sym_attribute_path, + [sym_attribute_args] = sym_attribute_args, + [sym_attribute_arg] = sym_attribute_arg, [sym_constant_definition] = sym_constant_definition, [sym_contract_field_definition] = sym_contract_field_definition, [sym_parameter_list] = sym_parameter_list, [sym_parameter] = sym_parameter, [sym_return_type_list] = sym_return_type_list, - [sym_block] = sym_block, + [sym_braced_block] = sym_braced_block, [sym_statement] = sym_statement, [sym_variable_definition] = sym_variable_definition, [sym_tuple_assignment] = sym_tuple_assignment, [sym_function_call_assignment] = sym_function_call_assignment, [sym_state_function_call_assignment] = sym_state_function_call_assignment, + [sym_struct_destructure_assignment] = sym_struct_destructure_assignment, [sym_typed_binding] = sym_typed_binding, [sym_state_typed_binding] = sym_state_typed_binding, [sym_call_statement] = sym_call_statement, [sym_return_statement] = sym_return_statement, + [sym_return_expression_list] = sym_return_expression_list, [sym_assign_statement] = sym_assign_statement, [sym_time_op_statement] = sym_time_op_statement, [sym_require_statement] = sym_require_statement, @@ -546,14 +600,15 @@ static const TSSymbol ts_symbol_map[] = { [sym_postfix] = sym_postfix, [sym_postfix_op] = sym_postfix_op, [sym_tuple_index] = sym_tuple_index, - [sym_member_access] = sym_member_access, [sym_split_call] = sym_split_call, [sym_slice_call] = sym_slice_call, [sym_append_call] = sym_append_call, [sym_reverse_call] = sym_reverse_call, + [sym_field_access] = sym_field_access, [sym_primary] = sym_primary, [sym_parenthesized] = sym_parenthesized, [sym_cast] = sym_cast, + [sym_cast_type_name] = sym_cast_type_name, [sym_function_call] = sym_function_call, [sym_expression_list] = sym_expression_list, [sym_instantiation] = sym_instantiation, @@ -568,6 +623,7 @@ static const TSSymbol ts_symbol_map[] = { [sym_modifier] = sym_modifier, [sym_type_name] = sym_type_name, [sym_base_type] = sym_base_type, + [sym_builtin_type] = sym_builtin_type, [sym_array_suffix] = sym_array_suffix, [sym_array_size] = sym_array_size, [sym_literal] = sym_literal, @@ -577,15 +633,20 @@ static const TSSymbol ts_symbol_map[] = { [sym_date_literal] = sym_date_literal, [sym_tx_var] = sym_tx_var, [sym_nullary_op] = sym_nullary_op, + [aux_sym_contract_source_file_repeat1] = aux_sym_contract_source_file_repeat1, + [aux_sym_declaration_source_file_repeat1] = aux_sym_declaration_source_file_repeat1, [aux_sym_contract_definition_repeat1] = aux_sym_contract_definition_repeat1, [aux_sym_struct_definition_repeat1] = aux_sym_struct_definition_repeat1, [aux_sym_function_definition_repeat1] = aux_sym_function_definition_repeat1, - [aux_sym_function_definition_repeat2] = aux_sym_function_definition_repeat2, + [aux_sym_attribute_path_repeat1] = aux_sym_attribute_path_repeat1, + [aux_sym_attribute_args_repeat1] = aux_sym_attribute_args_repeat1, [aux_sym_parameter_list_repeat1] = aux_sym_parameter_list_repeat1, [aux_sym_return_type_list_repeat1] = aux_sym_return_type_list_repeat1, + [aux_sym_braced_block_repeat1] = aux_sym_braced_block_repeat1, [aux_sym_variable_definition_repeat1] = aux_sym_variable_definition_repeat1, [aux_sym_function_call_assignment_repeat1] = aux_sym_function_call_assignment_repeat1, [aux_sym_state_function_call_assignment_repeat1] = aux_sym_state_function_call_assignment_repeat1, + [aux_sym_return_expression_list_repeat1] = aux_sym_return_expression_list_repeat1, [aux_sym_console_parameter_list_repeat1] = aux_sym_console_parameter_list_repeat1, [aux_sym_logical_or_repeat1] = aux_sym_logical_or_repeat1, [aux_sym_logical_and_repeat1] = aux_sym_logical_and_repeat1, @@ -598,9 +659,8 @@ static const TSSymbol ts_symbol_map[] = { [aux_sym_factor_repeat1] = aux_sym_factor_repeat1, [aux_sym_unary_repeat1] = aux_sym_unary_repeat1, [aux_sym_postfix_repeat1] = aux_sym_postfix_repeat1, - [aux_sym_expression_list_repeat1] = aux_sym_expression_list_repeat1, + [aux_sym_cast_type_name_repeat1] = aux_sym_cast_type_name_repeat1, [aux_sym_state_object_repeat1] = aux_sym_state_object_repeat1, - [aux_sym_type_name_repeat1] = aux_sym_type_name_repeat1, }; static const TSSymbolMetadata ts_symbol_metadata[] = { @@ -624,7 +684,35 @@ static const TSSymbolMetadata ts_symbol_metadata[] = { .visible = true, .named = false, }, - [sym_pragma_value] = { + [anon_sym_CARET] = { + .visible = true, + .named = false, + }, + [anon_sym_TILDE] = { + .visible = true, + .named = false, + }, + [anon_sym_GT_EQ] = { + .visible = true, + .named = false, + }, + [anon_sym_GT] = { + .visible = true, + .named = false, + }, + [anon_sym_LT_EQ] = { + .visible = true, + .named = false, + }, + [anon_sym_LT] = { + .visible = true, + .named = false, + }, + [anon_sym_EQ] = { + .visible = true, + .named = false, + }, + [sym_version_literal] = { .visible = true, .named = true, }, @@ -652,11 +740,15 @@ static const TSSymbolMetadata ts_symbol_metadata[] = { .visible = true, .named = false, }, - [anon_sym_constant] = { + [anon_sym_POUND_LBRACK] = { .visible = true, .named = false, }, - [anon_sym_EQ] = { + [anon_sym_RBRACK] = { + .visible = true, + .named = false, + }, + [anon_sym_DOT] = { .visible = true, .named = false, }, @@ -672,19 +764,19 @@ static const TSSymbolMetadata ts_symbol_metadata[] = { .visible = true, .named = false, }, - [anon_sym_COLON] = { + [anon_sym_constant] = { .visible = true, .named = false, }, - [anon_sym_return] = { + [anon_sym_COLON] = { .visible = true, .named = false, }, - [anon_sym_require] = { + [anon_sym_return] = { .visible = true, .named = false, }, - [anon_sym_GT_EQ] = { + [anon_sym_require] = { .visible = true, .named = false, }, @@ -716,10 +808,6 @@ static const TSSymbolMetadata ts_symbol_metadata[] = { .visible = true, .named = false, }, - [anon_sym_CARET] = { - .visible = true, - .named = false, - }, [anon_sym_AMP] = { .visible = true, .named = false, @@ -732,18 +820,6 @@ static const TSSymbolMetadata ts_symbol_metadata[] = { .visible = true, .named = false, }, - [anon_sym_LT_EQ] = { - .visible = true, - .named = false, - }, - [anon_sym_LT] = { - .visible = true, - .named = false, - }, - [anon_sym_GT] = { - .visible = true, - .named = false, - }, [anon_sym_PLUS] = { .visible = true, .named = false, @@ -772,14 +848,6 @@ static const TSSymbolMetadata ts_symbol_metadata[] = { .visible = true, .named = false, }, - [anon_sym_RBRACK] = { - .visible = true, - .named = false, - }, - [anon_sym_DOT] = { - .visible = true, - .named = false, - }, [sym_unary_suffix] = { .visible = true, .named = true, @@ -860,9 +928,9 @@ static const TSSymbolMetadata ts_symbol_metadata[] = { .visible = true, .named = false, }, - [sym_attribute] = { + [anon_sym__] = { .visible = true, - .named = true, + .named = false, }, [sym_array_bound] = { .visible = true, @@ -972,10 +1040,30 @@ static const TSSymbolMetadata ts_symbol_metadata[] = { .visible = true, .named = true, }, + [sym_contract_source_file] = { + .visible = true, + .named = true, + }, + [sym_declaration_source_file] = { + .visible = true, + .named = true, + }, [sym_pragma_directive] = { .visible = true, .named = true, }, + [sym_pragma_value] = { + .visible = true, + .named = true, + }, + [sym_version_constraint] = { + .visible = true, + .named = true, + }, + [sym_version_operator] = { + .visible = true, + .named = true, + }, [sym_contract_definition] = { .visible = true, .named = true, @@ -996,6 +1084,26 @@ static const TSSymbolMetadata ts_symbol_metadata[] = { .visible = true, .named = true, }, + [sym_builtin_function_declaration] = { + .visible = true, + .named = true, + }, + [sym_function_attribute] = { + .visible = true, + .named = true, + }, + [sym_attribute_path] = { + .visible = true, + .named = true, + }, + [sym_attribute_args] = { + .visible = true, + .named = true, + }, + [sym_attribute_arg] = { + .visible = true, + .named = true, + }, [sym_constant_definition] = { .visible = true, .named = true, @@ -1016,7 +1124,7 @@ static const TSSymbolMetadata ts_symbol_metadata[] = { .visible = true, .named = true, }, - [sym_block] = { + [sym_braced_block] = { .visible = true, .named = true, }, @@ -1040,6 +1148,10 @@ static const TSSymbolMetadata ts_symbol_metadata[] = { .visible = true, .named = true, }, + [sym_struct_destructure_assignment] = { + .visible = true, + .named = true, + }, [sym_typed_binding] = { .visible = true, .named = true, @@ -1056,6 +1168,10 @@ static const TSSymbolMetadata ts_symbol_metadata[] = { .visible = true, .named = true, }, + [sym_return_expression_list] = { + .visible = true, + .named = true, + }, [sym_assign_statement] = { .visible = true, .named = true, @@ -1152,10 +1268,6 @@ static const TSSymbolMetadata ts_symbol_metadata[] = { .visible = true, .named = true, }, - [sym_member_access] = { - .visible = true, - .named = true, - }, [sym_split_call] = { .visible = true, .named = true, @@ -1172,6 +1284,10 @@ static const TSSymbolMetadata ts_symbol_metadata[] = { .visible = true, .named = true, }, + [sym_field_access] = { + .visible = true, + .named = true, + }, [sym_primary] = { .visible = true, .named = true, @@ -1184,6 +1300,10 @@ static const TSSymbolMetadata ts_symbol_metadata[] = { .visible = true, .named = true, }, + [sym_cast_type_name] = { + .visible = true, + .named = true, + }, [sym_function_call] = { .visible = true, .named = true, @@ -1240,6 +1360,10 @@ static const TSSymbolMetadata ts_symbol_metadata[] = { .visible = true, .named = true, }, + [sym_builtin_type] = { + .visible = true, + .named = true, + }, [sym_array_suffix] = { .visible = true, .named = true, @@ -1276,6 +1400,14 @@ static const TSSymbolMetadata ts_symbol_metadata[] = { .visible = true, .named = true, }, + [aux_sym_contract_source_file_repeat1] = { + .visible = false, + .named = false, + }, + [aux_sym_declaration_source_file_repeat1] = { + .visible = false, + .named = false, + }, [aux_sym_contract_definition_repeat1] = { .visible = false, .named = false, @@ -1288,7 +1420,11 @@ static const TSSymbolMetadata ts_symbol_metadata[] = { .visible = false, .named = false, }, - [aux_sym_function_definition_repeat2] = { + [aux_sym_attribute_path_repeat1] = { + .visible = false, + .named = false, + }, + [aux_sym_attribute_args_repeat1] = { .visible = false, .named = false, }, @@ -1300,6 +1436,10 @@ static const TSSymbolMetadata ts_symbol_metadata[] = { .visible = false, .named = false, }, + [aux_sym_braced_block_repeat1] = { + .visible = false, + .named = false, + }, [aux_sym_variable_definition_repeat1] = { .visible = false, .named = false, @@ -1312,6 +1452,10 @@ static const TSSymbolMetadata ts_symbol_metadata[] = { .visible = false, .named = false, }, + [aux_sym_return_expression_list_repeat1] = { + .visible = false, + .named = false, + }, [aux_sym_console_parameter_list_repeat1] = { .visible = false, .named = false, @@ -1360,7 +1504,7 @@ static const TSSymbolMetadata ts_symbol_metadata[] = { .visible = false, .named = false, }, - [aux_sym_expression_list_repeat1] = { + [aux_sym_cast_type_name_repeat1] = { .visible = false, .named = false, }, @@ -1368,10 +1512,6 @@ static const TSSymbolMetadata ts_symbol_metadata[] = { .visible = false, .named = false, }, - [aux_sym_type_name_repeat1] = { - .visible = false, - .named = false, - }, }; enum ts_field_identifiers { @@ -1393,34 +1533,34 @@ static const char * const ts_field_names[] = { static const TSMapSlice ts_field_map_slices[PRODUCTION_ID_COUNT] = { [1] = {.index = 0, .length = 1}, - [2] = {.index = 1, .length = 2}, - [3] = {.index = 3, .length = 1}, + [2] = {.index = 1, .length = 1}, + [3] = {.index = 2, .length = 2}, [4] = {.index = 4, .length = 2}, - [5] = {.index = 6, .length = 3}, - [6] = {.index = 9, .length = 1}, - [7] = {.index = 10, .length = 2}, + [5] = {.index = 6, .length = 2}, + [6] = {.index = 8, .length = 3}, + [7] = {.index = 11, .length = 1}, }; static const TSFieldMapEntry ts_field_map_entries[] = { [0] = {field_name, 1}, [1] = + {field_name, 2}, + [2] = {field_name, 1}, {field_value, 3}, - [3] = - {field_name, 2}, [4] = + {field_name, 0}, + {field_value, 2}, + [6] = {field_name, 2}, {field_value, 4}, - [6] = + [8] = {field_field, 2}, {field_index, 1}, {field_root, 0}, - [9] = + [11] = {field_name, 3}, - [10] = - {field_name, 0}, - {field_value, 2}, }; static const TSSymbol ts_alias_sequences[PRODUCTION_ID_COUNT][MAX_ALIAS_SEQUENCE_LENGTH] = { @@ -1452,7 +1592,7 @@ static const TSStateId ts_primary_state_ids[STATE_COUNT] = { [17] = 17, [18] = 18, [19] = 19, - [20] = 12, + [20] = 20, [21] = 21, [22] = 22, [23] = 23, @@ -1471,7 +1611,7 @@ static const TSStateId ts_primary_state_ids[STATE_COUNT] = { [36] = 36, [37] = 37, [38] = 38, - [39] = 39, + [39] = 35, [40] = 40, [41] = 41, [42] = 42, @@ -1493,7 +1633,7 @@ static const TSStateId ts_primary_state_ids[STATE_COUNT] = { [58] = 58, [59] = 59, [60] = 60, - [61] = 61, + [61] = 58, [62] = 62, [63] = 63, [64] = 64, @@ -1590,7 +1730,7 @@ static const TSStateId ts_primary_state_ids[STATE_COUNT] = { [155] = 155, [156] = 156, [157] = 157, - [158] = 158, + [158] = 135, [159] = 159, [160] = 160, [161] = 161, @@ -1607,7 +1747,7 @@ static const TSStateId ts_primary_state_ids[STATE_COUNT] = { [172] = 172, [173] = 173, [174] = 174, - [175] = 175, + [175] = 122, [176] = 176, [177] = 177, [178] = 178, @@ -1746,7 +1886,7 @@ static const TSStateId ts_primary_state_ids[STATE_COUNT] = { [311] = 311, [312] = 312, [313] = 313, - [314] = 101, + [314] = 314, [315] = 315, [316] = 316, [317] = 317, @@ -1813,7 +1953,7 @@ static const TSStateId ts_primary_state_ids[STATE_COUNT] = { [378] = 378, [379] = 379, [380] = 380, - [381] = 381, + [381] = 103, [382] = 382, [383] = 383, [384] = 384, @@ -1833,9 +1973,58 @@ static const TSStateId ts_primary_state_ids[STATE_COUNT] = { [398] = 398, [399] = 399, [400] = 400, - [401] = 344, + [401] = 401, [402] = 402, [403] = 403, + [404] = 404, + [405] = 405, + [406] = 406, + [407] = 407, + [408] = 408, + [409] = 409, + [410] = 410, + [411] = 411, + [412] = 412, + [413] = 413, + [414] = 414, + [415] = 415, + [416] = 416, + [417] = 417, + [418] = 418, + [419] = 419, + [420] = 420, + [421] = 421, + [422] = 422, + [423] = 423, + [424] = 424, + [425] = 425, + [426] = 426, + [427] = 427, + [428] = 428, + [429] = 429, + [430] = 430, + [431] = 431, + [432] = 432, + [433] = 433, + [434] = 434, + [435] = 435, + [436] = 436, + [437] = 437, + [438] = 438, + [439] = 439, + [440] = 440, + [441] = 441, + [442] = 442, + [443] = 443, + [444] = 444, + [445] = 445, + [446] = 446, + [447] = 447, + [448] = 448, + [449] = 449, + [450] = 416, + [451] = 451, + [452] = 452, }; static bool ts_lex(TSLexer *lexer, TSStateId state) { @@ -1843,441 +2032,414 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { eof = lexer->eof(lexer); switch (state) { case 0: - if (eof) ADVANCE(136); + if (eof) ADVANCE(137); ADVANCE_MAP( - '!', 171, - '"', 5, + '!', 172, + '"', 3, '#', 20, - '%', 169, - '&', 158, - '\'', 6, - '(', 148, - ')', 150, - '*', 167, - '+', 164, - ',', 149, - '-', 166, - '.', 175, - '/', 168, - '0', 186, - ':', 151, - ';', 137, - '<', 162, - '=', 147, - '>', 163, - '[', 172, - ']', 173, - '^', 157, - 'c', 213, - 't', 207, - '{', 144, - '|', 156, - '}', 145, + '%', 170, + '&', 162, + '\'', 4, + '(', 154, + ')', 156, + '*', 168, + '+', 165, + ',', 155, + '-', 167, + '.', 153, + '/', 169, + '0', 184, + ':', 157, + ';', 138, + '<', 144, + '=', 146, + '>', 142, + '[', 173, + ']', 151, + '^', 139, + '_', 181, + 'c', 211, + 't', 205, + '{', 148, + '|', 161, + '}', 149, + '~', 140, ); if (('\t' <= lookahead && lookahead <= '\r') || lookahead == ' ') SKIP(0); - if (('1' <= lookahead && lookahead <= '9')) ADVANCE(184); + if (('1' <= lookahead && lookahead <= '9')) ADVANCE(182); if (('A' <= lookahead && lookahead <= 'Z') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(218); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(216); END_STATE(); case 1: ADVANCE_MAP( - '!', 12, - '#', 20, - '%', 169, - '&', 158, - '(', 148, - ')', 150, - '*', 167, - '+', 164, - ',', 149, - '-', 165, - '.', 175, - '/', 168, - ';', 137, - '<', 162, - '=', 13, - '>', 163, - '[', 172, - ']', 173, - '^', 157, - '|', 156, - '}', 145, + '!', 171, + '"', 3, + '\'', 4, + '(', 154, + ')', 156, + '-', 167, + '/', 7, + '0', 184, + '[', 173, + ']', 151, + 't', 206, + '{', 148, ); if (('\t' <= lookahead && lookahead <= '\r') || lookahead == ' ') SKIP(1); if (('1' <= lookahead && lookahead <= '9')) ADVANCE(185); if (('A' <= lookahead && lookahead <= 'Z') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(218); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(216); END_STATE(); case 2: ADVANCE_MAP( - '!', 170, - '"', 5, - '\'', 6, - '(', 148, - ')', 150, - '-', 166, - '/', 8, - '0', 186, - '[', 172, - ']', 173, - 't', 208, - '{', 144, + '!', 171, + '"', 3, + '\'', 4, + '(', 154, + ',', 155, + '-', 167, + '.', 152, + '/', 7, + '0', 184, + ';', 138, + '=', 145, + '[', 173, + ']', 151, + 't', 205, + '{', 148, ); if (('\t' <= lookahead && lookahead <= '\r') || lookahead == ' ') SKIP(2); - if (('1' <= lookahead && lookahead <= '9')) ADVANCE(187); + if (('1' <= lookahead && lookahead <= '9')) ADVANCE(185); if (('A' <= lookahead && lookahead <= 'Z') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(218); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(216); END_STATE(); case 3: - ADVANCE_MAP( - '!', 170, - '"', 5, - '\'', 6, - '(', 148, - ',', 149, - '-', 166, - '.', 174, - '/', 8, - '0', 186, - ';', 137, - '=', 146, - '[', 172, - 't', 207, - '{', 144, - ); + if (lookahead == '"') ADVANCE(187); + if (lookahead == '\\') ADVANCE(134); + if (lookahead != 0 && + lookahead != '\n') ADVANCE(3); + END_STATE(); + case 4: + if (lookahead == '\'') ADVANCE(187); + if (lookahead == '\\') ADVANCE(135); + if (lookahead != 0 && + lookahead != '\n') ADVANCE(4); + END_STATE(); + case 5: + if (lookahead == '(') ADVANCE(154); + if (lookahead == '/') ADVANCE(7); + if (lookahead == ':') ADVANCE(157); + if (lookahead == '=') ADVANCE(145); + if (lookahead == '[') ADVANCE(173); if (('\t' <= lookahead && lookahead <= '\r') || - lookahead == ' ') SKIP(3); - if (('1' <= lookahead && lookahead <= '9')) ADVANCE(187); + lookahead == ' ') SKIP(5); if (('A' <= lookahead && lookahead <= 'Z') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(218); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(216); END_STATE(); - case 4: + case 6: ADVANCE_MAP( - '"', 5, - '\'', 6, - '(', 148, - ')', 150, - '-', 131, - '/', 8, - '0', 186, - ':', 151, - '=', 146, - '[', 172, + '(', 154, + '/', 7, + ';', 138, + '<', 144, + '=', 145, + '>', 142, + '^', 139, + 'c', 211, + '{', 148, + '}', 149, + '~', 140, ); if (('\t' <= lookahead && lookahead <= '\r') || - lookahead == ' ') SKIP(4); - if (('1' <= lookahead && lookahead <= '9')) ADVANCE(187); + lookahead == ' ') SKIP(6); + if (('0' <= lookahead && lookahead <= '9')) ADVANCE(10); if (('A' <= lookahead && lookahead <= 'Z') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(218); - END_STATE(); - case 5: - if (lookahead == '"') ADVANCE(189); - if (lookahead == '\\') ADVANCE(134); - if (lookahead != 0 && - lookahead != '\n') ADVANCE(5); - END_STATE(); - case 6: - if (lookahead == '\'') ADVANCE(189); - if (lookahead == '\\') ADVANCE(135); - if (lookahead != 0 && - lookahead != '\n') ADVANCE(6); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(216); END_STATE(); case 7: - if (lookahead == '(') ADVANCE(148); - if (lookahead == '/') ADVANCE(8); - if (lookahead == 'c') ADVANCE(213); - if (lookahead == '{') ADVANCE(144); - if (lookahead == '}') ADVANCE(145); - if (('\t' <= lookahead && lookahead <= '\r') || - lookahead == ' ') SKIP(7); - if (('A' <= lookahead && lookahead <= 'Z') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(218); + if (lookahead == '*') ADVANCE(9); + if (lookahead == '/') ADVANCE(218); END_STATE(); case 8: - if (lookahead == '*') ADVANCE(10); - if (lookahead == '/') ADVANCE(220); + if (lookahead == '*') ADVANCE(8); + if (lookahead == '/') ADVANCE(217); + if (lookahead != 0) ADVANCE(9); END_STATE(); case 9: - if (lookahead == '*') ADVANCE(9); - if (lookahead == '/') ADVANCE(219); - if (lookahead != 0) ADVANCE(10); + if (lookahead == '*') ADVANCE(8); + if (lookahead != 0) ADVANCE(9); END_STATE(); case 10: - if (lookahead == '*') ADVANCE(9); - if (lookahead != 0) ADVANCE(10); + if (lookahead == '.') ADVANCE(133); + if (('0' <= lookahead && lookahead <= '9')) ADVANCE(10); END_STATE(); case 11: - if (lookahead == '/') ADVANCE(139); - if (('\t' <= lookahead && lookahead <= '\r') || - lookahead == ' ') ADVANCE(142); - if (lookahead != 0 && - lookahead != ';') ADVANCE(143); + if (lookahead == '.') ADVANCE(132); + if (('0' <= lookahead && lookahead <= '9')) ADVANCE(11); END_STATE(); case 12: - if (lookahead == '=') ADVANCE(160); + if (lookahead == '=') ADVANCE(164); END_STATE(); case 13: - if (lookahead == '=') ADVANCE(159); + if (lookahead == '=') ADVANCE(163); END_STATE(); case 14: - if (lookahead == 'I') ADVANCE(83); + if (lookahead == 'I') ADVANCE(82); END_STATE(); case 15: - if (lookahead == 'I') ADVANCE(87); - if (lookahead == 'S') ADVANCE(32); + if (lookahead == 'I') ADVANCE(86); + if (lookahead == 'S') ADVANCE(31); END_STATE(); case 16: - if (lookahead == 'K') ADVANCE(46); + if (lookahead == 'K') ADVANCE(45); END_STATE(); case 17: - if (lookahead == 'P') ADVANCE(120); + if (lookahead == 'P') ADVANCE(119); END_STATE(); case 18: - if (lookahead == 'P') ADVANCE(101); + if (lookahead == 'P') ADVANCE(100); END_STATE(); case 19: - if (lookahead == 'S') ADVANCE(62); + if (lookahead == 'S') ADVANCE(61); END_STATE(); case 20: - if (lookahead == '[') ADVANCE(133); + if (lookahead == '[') ADVANCE(150); END_STATE(); case 21: - if (lookahead == ']') ADVANCE(183); - if (lookahead != 0 && - lookahead != '\n') ADVANCE(21); + if (lookahead == 'a') ADVANCE(30); + if (lookahead == 's') ADVANCE(27); END_STATE(); case 22: - if (lookahead == 'a') ADVANCE(31); - if (lookahead == 's') ADVANCE(28); + if (lookahead == 'a') ADVANCE(18); END_STATE(); case 23: - if (lookahead == 'a') ADVANCE(18); + if (lookahead == 'a') ADVANCE(29); + if (lookahead == 's') ADVANCE(27); END_STATE(); case 24: - if (lookahead == 'a') ADVANCE(30); - if (lookahead == 's') ADVANCE(28); + if (lookahead == 'a') ADVANCE(112); END_STATE(); case 25: - if (lookahead == 'a') ADVANCE(113); + if (lookahead == 'b') ADVANCE(16); END_STATE(); case 26: - if (lookahead == 'b') ADVANCE(16); + if (lookahead == 'c') ADVANCE(71); END_STATE(); case 27: - if (lookahead == 'c') ADVANCE(72); + if (lookahead == 'c') ADVANCE(99); END_STATE(); case 28: - if (lookahead == 'c') ADVANCE(100); + if (lookahead == 'c') ADVANCE(37); END_STATE(); case 29: - if (lookahead == 'c') ADVANCE(38); + if (lookahead == 'c') ADVANCE(116); END_STATE(); case 30: - if (lookahead == 'c') ADVANCE(117); + if (lookahead == 'c') ADVANCE(116); + if (lookahead == 'g') ADVANCE(40); END_STATE(); case 31: - if (lookahead == 'c') ADVANCE(117); - if (lookahead == 'g') ADVANCE(41); + if (lookahead == 'c') ADVANCE(101); END_STATE(); case 32: - if (lookahead == 'c') ADVANCE(102); + if (lookahead == 'd') ADVANCE(177); END_STATE(); case 33: - if (lookahead == 'd') ADVANCE(179); + if (lookahead == 'd') ADVANCE(44); END_STATE(); case 34: - if (lookahead == 'd') ADVANCE(45); + if (lookahead == 'e') ADVANCE(79); END_STATE(); case 35: - if (lookahead == 'e') ADVANCE(80); + if (lookahead == 'e') ADVANCE(124); END_STATE(); case 36: - if (lookahead == 'e') ADVANCE(125); + if (lookahead == 'e') ADVANCE(97); END_STATE(); case 37: - if (lookahead == 'e') ADVANCE(98); + if (lookahead == 'e') ADVANCE(176); END_STATE(); case 38: - if (lookahead == 'e') ADVANCE(178); + if (lookahead == 'e') ADVANCE(190); END_STATE(); case 39: - if (lookahead == 'e') ADVANCE(192); + if (lookahead == 'e') ADVANCE(178); END_STATE(); case 40: - if (lookahead == 'e') ADVANCE(180); + if (lookahead == 'e') ADVANCE(189); END_STATE(); case 41: - if (lookahead == 'e') ADVANCE(191); + if (lookahead == 'e') ADVANCE(15); END_STATE(); case 42: - if (lookahead == 'e') ADVANCE(15); + if (lookahead == 'e') ADVANCE(198); END_STATE(); case 43: - if (lookahead == 'e') ADVANCE(200); + if (lookahead == 'e') ADVANCE(194); END_STATE(); case 44: - if (lookahead == 'e') ADVANCE(196); + if (lookahead == 'e') ADVANCE(126); END_STATE(); case 45: - if (lookahead == 'e') ADVANCE(127); + if (lookahead == 'e') ADVANCE(128); END_STATE(); case 46: - if (lookahead == 'e') ADVANCE(129); + if (lookahead == 'e') ADVANCE(51); END_STATE(); case 47: - if (lookahead == 'e') ADVANCE(52); + if (lookahead == 'e') ADVANCE(80); END_STATE(); case 48: - if (lookahead == 'e') ADVANCE(81); + if (lookahead == 'e') ADVANCE(98); END_STATE(); case 49: - if (lookahead == 'e') ADVANCE(99); + if (lookahead == 'e') ADVANCE(84); END_STATE(); case 50: if (lookahead == 'e') ADVANCE(85); END_STATE(); case 51: - if (lookahead == 'e') ADVANCE(86); + if (lookahead == 'f') ADVANCE(66); END_STATE(); case 52: - if (lookahead == 'f') ADVANCE(67); + if (lookahead == 'g') ADVANCE(106); END_STATE(); case 53: - if (lookahead == 'g') ADVANCE(107); + if (lookahead == 'g') ADVANCE(158); END_STATE(); case 54: - if (lookahead == 'g') ADVANCE(153); + if (lookahead == 'g') ADVANCE(111); END_STATE(); case 55: - if (lookahead == 'g') ADVANCE(112); + if (lookahead == 'g') ADVANCE(113); END_STATE(); case 56: - if (lookahead == 'g') ADVANCE(114); + if (lookahead == 'h') ADVANCE(174); END_STATE(); case 57: - if (lookahead == 'h') ADVANCE(176); + if (lookahead == 'h') ADVANCE(195); END_STATE(); case 58: - if (lookahead == 'h') ADVANCE(197); + if (lookahead == 'h') ADVANCE(196); END_STATE(); case 59: - if (lookahead == 'h') ADVANCE(198); + if (lookahead == 'i') ADVANCE(28); END_STATE(); case 60: - if (lookahead == 'i') ADVANCE(29); + if (lookahead == 'i') ADVANCE(77); END_STATE(); case 61: - if (lookahead == 'i') ADVANCE(78); + if (lookahead == 'i') ADVANCE(129); END_STATE(); case 62: - if (lookahead == 'i') ADVANCE(130); + if (lookahead == 'i') ADVANCE(83); + if (lookahead == 'l') ADVANCE(88); + if (lookahead == 'o') ADVANCE(120); + if (lookahead == 't') ADVANCE(60); + if (lookahead == 'v') ADVANCE(48); END_STATE(); case 63: - if (lookahead == 'i') ADVANCE(84); - if (lookahead == 'l') ADVANCE(89); - if (lookahead == 'o') ADVANCE(121); - if (lookahead == 't') ADVANCE(61); - if (lookahead == 'v') ADVANCE(49); + if (lookahead == 'i') ADVANCE(83); + if (lookahead == 'l') ADVANCE(88); + if (lookahead == 'o') ADVANCE(120); + if (lookahead == 'v') ADVANCE(48); END_STATE(); case 64: - if (lookahead == 'i') ADVANCE(84); - if (lookahead == 'l') ADVANCE(89); - if (lookahead == 'o') ADVANCE(121); - if (lookahead == 'v') ADVANCE(49); + if (lookahead == 'i') ADVANCE(89); END_STATE(); case 65: - if (lookahead == 'i') ADVANCE(90); + if (lookahead == 'i') ADVANCE(107); END_STATE(); case 66: - if (lookahead == 'i') ADVANCE(108); + if (lookahead == 'i') ADVANCE(127); END_STATE(); case 67: - if (lookahead == 'i') ADVANCE(128); + if (lookahead == 'i') ADVANCE(91); END_STATE(); case 68: - if (lookahead == 'i') ADVANCE(92); + if (lookahead == 'i') ADVANCE(125); END_STATE(); case 69: - if (lookahead == 'i') ADVANCE(126); + if (lookahead == 'i') ADVANCE(78); END_STATE(); case 70: - if (lookahead == 'i') ADVANCE(79); + if (lookahead == 'i') ADVANCE(92); END_STATE(); case 71: - if (lookahead == 'i') ADVANCE(93); + if (lookahead == 'k') ADVANCE(117); END_STATE(); case 72: - if (lookahead == 'k') ADVANCE(118); + if (lookahead == 'l') ADVANCE(59); + if (lookahead == 'p') ADVANCE(73); END_STATE(); case 73: - if (lookahead == 'l') ADVANCE(60); - if (lookahead == 'p') ADVANCE(74); + if (lookahead == 'l') ADVANCE(65); END_STATE(); case 74: - if (lookahead == 'l') ADVANCE(66); + if (lookahead == 'l') ADVANCE(87); END_STATE(); case 75: - if (lookahead == 'l') ADVANCE(88); + if (lookahead == 'l') ADVANCE(49); END_STATE(); case 76: if (lookahead == 'l') ADVANCE(50); END_STATE(); case 77: - if (lookahead == 'l') ADVANCE(51); + if (lookahead == 'm') ADVANCE(38); END_STATE(); case 78: - if (lookahead == 'm') ADVANCE(39); + if (lookahead == 'm') ADVANCE(42); END_STATE(); case 79: - if (lookahead == 'm') ADVANCE(43); + if (lookahead == 'n') ADVANCE(52); END_STATE(); case 80: - if (lookahead == 'n') ADVANCE(53); + if (lookahead == 'n') ADVANCE(32); END_STATE(); case 81: - if (lookahead == 'n') ADVANCE(33); + if (lookahead == 'n') ADVANCE(197); END_STATE(); case 82: - if (lookahead == 'n') ADVANCE(199); + if (lookahead == 'n') ADVANCE(33); END_STATE(); case 83: - if (lookahead == 'n') ADVANCE(34); + if (lookahead == 'n') ADVANCE(94); END_STATE(); case 84: - if (lookahead == 'n') ADVANCE(95); + if (lookahead == 'n') ADVANCE(54); END_STATE(); case 85: if (lookahead == 'n') ADVANCE(55); END_STATE(); case 86: - if (lookahead == 'n') ADVANCE(56); + if (lookahead == 'n') ADVANCE(96); END_STATE(); case 87: - if (lookahead == 'n') ADVANCE(97); + if (lookahead == 'o') ADVANCE(53); END_STATE(); case 88: - if (lookahead == 'o') ADVANCE(54); + if (lookahead == 'o') ADVANCE(26); END_STATE(); case 89: - if (lookahead == 'o') ADVANCE(27); + if (lookahead == 'o') ADVANCE(81); END_STATE(); case 90: - if (lookahead == 'o') ADVANCE(82); + if (lookahead == 'p') ADVANCE(93); END_STATE(); case 91: - if (lookahead == 'p') ADVANCE(94); + if (lookahead == 'p') ADVANCE(108); END_STATE(); case 92: - if (lookahead == 'p') ADVANCE(109); + if (lookahead == 'p') ADVANCE(110); END_STATE(); case 93: - if (lookahead == 'p') ADVANCE(111); + if (lookahead == 'p') ADVANCE(47); END_STATE(); case 94: - if (lookahead == 'p') ADVANCE(48); + if (lookahead == 'p') ADVANCE(121); END_STATE(); case 95: if (lookahead == 'p') ADVANCE(122); @@ -2286,377 +2448,395 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { if (lookahead == 'p') ADVANCE(123); END_STATE(); case 97: - if (lookahead == 'p') ADVANCE(124); + if (lookahead == 'r') ADVANCE(105); END_STATE(); case 98: - if (lookahead == 'r') ADVANCE(106); + if (lookahead == 'r') ADVANCE(104); END_STATE(); case 99: - if (lookahead == 'r') ADVANCE(105); + if (lookahead == 'r') ADVANCE(67); END_STATE(); case 100: - if (lookahead == 'r') ADVANCE(68); + if (lookahead == 'r') ADVANCE(46); END_STATE(); case 101: - if (lookahead == 'r') ADVANCE(47); + if (lookahead == 'r') ADVANCE(70); END_STATE(); case 102: - if (lookahead == 'r') ADVANCE(71); + if (lookahead == 's') ADVANCE(180); END_STATE(); case 103: - if (lookahead == 's') ADVANCE(182); + if (lookahead == 's') ADVANCE(179); END_STATE(); case 104: - if (lookahead == 's') ADVANCE(181); + if (lookahead == 's') ADVANCE(64); END_STATE(); case 105: - if (lookahead == 's') ADVANCE(65); + if (lookahead == 's') ADVANCE(39); END_STATE(); case 106: - if (lookahead == 's') ADVANCE(40); + if (lookahead == 't') ADVANCE(56); END_STATE(); case 107: - if (lookahead == 't') ADVANCE(57); + if (lookahead == 't') ADVANCE(175); END_STATE(); case 108: - if (lookahead == 't') ADVANCE(177); + if (lookahead == 't') ADVANCE(19); END_STATE(); case 109: - if (lookahead == 't') ADVANCE(19); + if (lookahead == 't') ADVANCE(14); END_STATE(); case 110: - if (lookahead == 't') ADVANCE(14); + if (lookahead == 't') ADVANCE(17); END_STATE(); case 111: - if (lookahead == 't') ADVANCE(17); + if (lookahead == 't') ADVANCE(57); END_STATE(); case 112: - if (lookahead == 't') ADVANCE(58); + if (lookahead == 't') ADVANCE(22); END_STATE(); case 113: - if (lookahead == 't') ADVANCE(23); + if (lookahead == 't') ADVANCE(58); END_STATE(); case 114: - if (lookahead == 't') ADVANCE(59); + if (lookahead == 't') ADVANCE(102); END_STATE(); case 115: if (lookahead == 't') ADVANCE(103); END_STATE(); case 116: - if (lookahead == 't') ADVANCE(104); + if (lookahead == 't') ADVANCE(68); END_STATE(); case 117: if (lookahead == 't') ADVANCE(69); END_STATE(); case 118: - if (lookahead == 't') ADVANCE(70); + if (lookahead == 't') ADVANCE(95); END_STATE(); case 119: - if (lookahead == 't') ADVANCE(96); + if (lookahead == 'u') ADVANCE(25); END_STATE(); case 120: - if (lookahead == 'u') ADVANCE(26); + if (lookahead == 'u') ADVANCE(118); END_STATE(); case 121: - if (lookahead == 'u') ADVANCE(119); + if (lookahead == 'u') ADVANCE(114); END_STATE(); case 122: if (lookahead == 'u') ADVANCE(115); END_STATE(); case 123: - if (lookahead == 'u') ADVANCE(116); + if (lookahead == 'u') ADVANCE(109); END_STATE(); case 124: - if (lookahead == 'u') ADVANCE(110); + if (lookahead == 'v') ADVANCE(36); END_STATE(); case 125: - if (lookahead == 'v') ADVANCE(37); + if (lookahead == 'v') ADVANCE(41); END_STATE(); case 126: - if (lookahead == 'v') ADVANCE(42); + if (lookahead == 'x') ADVANCE(191); END_STATE(); case 127: if (lookahead == 'x') ADVANCE(193); END_STATE(); case 128: - if (lookahead == 'x') ADVANCE(195); + if (lookahead == 'y') ADVANCE(192); END_STATE(); case 129: - if (lookahead == 'y') ADVANCE(194); + if (lookahead == 'z') ADVANCE(43); END_STATE(); case 130: - if (lookahead == 'z') ADVANCE(44); + if (('0' <= lookahead && lookahead <= '9')) ADVANCE(185); END_STATE(); case 131: - if (('0' <= lookahead && lookahead <= '9')) ADVANCE(187); + if (('0' <= lookahead && lookahead <= '9')) ADVANCE(186); END_STATE(); case 132: - if (('0' <= lookahead && lookahead <= '9')) ADVANCE(188); + if (('0' <= lookahead && lookahead <= '9')) ADVANCE(147); END_STATE(); case 133: - if (lookahead != 0 && - lookahead != '\n' && - lookahead != ']') ADVANCE(21); + if (('0' <= lookahead && lookahead <= '9')) ADVANCE(11); END_STATE(); case 134: if (lookahead != 0 && - lookahead != '\n') ADVANCE(5); + lookahead != '\n') ADVANCE(3); END_STATE(); case 135: if (lookahead != 0 && - lookahead != '\n') ADVANCE(6); + lookahead != '\n') ADVANCE(4); END_STATE(); case 136: - ACCEPT_TOKEN(ts_builtin_sym_end); + if (eof) ADVANCE(137); + ADVANCE_MAP( + '!', 12, + '#', 20, + '%', 170, + '&', 162, + '(', 154, + ')', 156, + '*', 168, + '+', 165, + ',', 155, + '-', 166, + '.', 153, + '/', 169, + ';', 138, + '<', 144, + '=', 13, + '>', 142, + '[', 173, + ']', 151, + '^', 139, + '_', 181, + '{', 148, + '|', 161, + '}', 149, + ); + if (('\t' <= lookahead && lookahead <= '\r') || + lookahead == ' ') SKIP(136); + if (('1' <= lookahead && lookahead <= '9')) ADVANCE(183); + if (('A' <= lookahead && lookahead <= 'Z') || + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(216); END_STATE(); case 137: - ACCEPT_TOKEN(anon_sym_SEMI); + ACCEPT_TOKEN(ts_builtin_sym_end); END_STATE(); case 138: - ACCEPT_TOKEN(sym_pragma_value); - if (lookahead == '\n') ADVANCE(143); - if (lookahead == ';') ADVANCE(220); - if (lookahead != 0) ADVANCE(138); + ACCEPT_TOKEN(anon_sym_SEMI); END_STATE(); case 139: - ACCEPT_TOKEN(sym_pragma_value); - if (lookahead == '*') ADVANCE(141); - if (lookahead == '/') ADVANCE(138); - if (lookahead != 0 && - lookahead != ';') ADVANCE(143); + ACCEPT_TOKEN(anon_sym_CARET); END_STATE(); case 140: - ACCEPT_TOKEN(sym_pragma_value); - if (lookahead == '*') ADVANCE(140); - if (lookahead == '/') ADVANCE(143); - if (lookahead == ';') ADVANCE(10); - if (lookahead != 0) ADVANCE(141); + ACCEPT_TOKEN(anon_sym_TILDE); END_STATE(); case 141: - ACCEPT_TOKEN(sym_pragma_value); - if (lookahead == '*') ADVANCE(140); - if (lookahead == ';') ADVANCE(10); - if (lookahead != 0) ADVANCE(141); + ACCEPT_TOKEN(anon_sym_GT_EQ); END_STATE(); case 142: - ACCEPT_TOKEN(sym_pragma_value); - if (lookahead == '/') ADVANCE(139); - if (('\t' <= lookahead && lookahead <= '\r') || - lookahead == ' ') ADVANCE(142); - if (lookahead != 0 && - lookahead != ';') ADVANCE(143); + ACCEPT_TOKEN(anon_sym_GT); + if (lookahead == '=') ADVANCE(141); END_STATE(); case 143: - ACCEPT_TOKEN(sym_pragma_value); - if (lookahead != 0 && - lookahead != ';') ADVANCE(143); + ACCEPT_TOKEN(anon_sym_LT_EQ); END_STATE(); case 144: - ACCEPT_TOKEN(anon_sym_LBRACE); + ACCEPT_TOKEN(anon_sym_LT); + if (lookahead == '=') ADVANCE(143); END_STATE(); case 145: - ACCEPT_TOKEN(anon_sym_RBRACE); + ACCEPT_TOKEN(anon_sym_EQ); END_STATE(); case 146: ACCEPT_TOKEN(anon_sym_EQ); + if (lookahead == '=') ADVANCE(163); END_STATE(); case 147: - ACCEPT_TOKEN(anon_sym_EQ); - if (lookahead == '=') ADVANCE(159); + ACCEPT_TOKEN(sym_version_literal); + if (('0' <= lookahead && lookahead <= '9')) ADVANCE(147); END_STATE(); case 148: - ACCEPT_TOKEN(anon_sym_LPAREN); + ACCEPT_TOKEN(anon_sym_LBRACE); END_STATE(); case 149: - ACCEPT_TOKEN(anon_sym_COMMA); + ACCEPT_TOKEN(anon_sym_RBRACE); END_STATE(); case 150: - ACCEPT_TOKEN(anon_sym_RPAREN); + ACCEPT_TOKEN(anon_sym_POUND_LBRACK); END_STATE(); case 151: - ACCEPT_TOKEN(anon_sym_COLON); + ACCEPT_TOKEN(anon_sym_RBRACK); END_STATE(); case 152: - ACCEPT_TOKEN(anon_sym_GT_EQ); + ACCEPT_TOKEN(anon_sym_DOT); END_STATE(); case 153: - ACCEPT_TOKEN(anon_sym_console_DOTlog); + ACCEPT_TOKEN(anon_sym_DOT); + if (lookahead == 'a') ADVANCE(90); + if (lookahead == 'l') ADVANCE(34); + if (lookahead == 'r') ADVANCE(35); + if (lookahead == 's') ADVANCE(72); END_STATE(); case 154: - ACCEPT_TOKEN(anon_sym_PIPE_PIPE); + ACCEPT_TOKEN(anon_sym_LPAREN); END_STATE(); case 155: - ACCEPT_TOKEN(anon_sym_AMP_AMP); + ACCEPT_TOKEN(anon_sym_COMMA); END_STATE(); case 156: - ACCEPT_TOKEN(anon_sym_PIPE); - if (lookahead == '|') ADVANCE(154); + ACCEPT_TOKEN(anon_sym_RPAREN); END_STATE(); case 157: - ACCEPT_TOKEN(anon_sym_CARET); + ACCEPT_TOKEN(anon_sym_COLON); END_STATE(); case 158: - ACCEPT_TOKEN(anon_sym_AMP); - if (lookahead == '&') ADVANCE(155); + ACCEPT_TOKEN(anon_sym_console_DOTlog); END_STATE(); case 159: - ACCEPT_TOKEN(anon_sym_EQ_EQ); + ACCEPT_TOKEN(anon_sym_PIPE_PIPE); END_STATE(); case 160: - ACCEPT_TOKEN(anon_sym_BANG_EQ); + ACCEPT_TOKEN(anon_sym_AMP_AMP); END_STATE(); case 161: - ACCEPT_TOKEN(anon_sym_LT_EQ); + ACCEPT_TOKEN(anon_sym_PIPE); + if (lookahead == '|') ADVANCE(159); END_STATE(); case 162: - ACCEPT_TOKEN(anon_sym_LT); - if (lookahead == '=') ADVANCE(161); + ACCEPT_TOKEN(anon_sym_AMP); + if (lookahead == '&') ADVANCE(160); END_STATE(); case 163: - ACCEPT_TOKEN(anon_sym_GT); - if (lookahead == '=') ADVANCE(152); + ACCEPT_TOKEN(anon_sym_EQ_EQ); END_STATE(); case 164: - ACCEPT_TOKEN(anon_sym_PLUS); + ACCEPT_TOKEN(anon_sym_BANG_EQ); END_STATE(); case 165: - ACCEPT_TOKEN(anon_sym_DASH); + ACCEPT_TOKEN(anon_sym_PLUS); END_STATE(); case 166: ACCEPT_TOKEN(anon_sym_DASH); - if (('0' <= lookahead && lookahead <= '9')) ADVANCE(187); END_STATE(); case 167: - ACCEPT_TOKEN(anon_sym_STAR); + ACCEPT_TOKEN(anon_sym_DASH); + if (('0' <= lookahead && lookahead <= '9')) ADVANCE(185); END_STATE(); case 168: - ACCEPT_TOKEN(anon_sym_SLASH); - if (lookahead == '*') ADVANCE(10); - if (lookahead == '/') ADVANCE(220); + ACCEPT_TOKEN(anon_sym_STAR); END_STATE(); case 169: - ACCEPT_TOKEN(anon_sym_PERCENT); + ACCEPT_TOKEN(anon_sym_SLASH); + if (lookahead == '*') ADVANCE(9); + if (lookahead == '/') ADVANCE(218); END_STATE(); case 170: - ACCEPT_TOKEN(anon_sym_BANG); + ACCEPT_TOKEN(anon_sym_PERCENT); END_STATE(); case 171: ACCEPT_TOKEN(anon_sym_BANG); - if (lookahead == '=') ADVANCE(160); END_STATE(); case 172: - ACCEPT_TOKEN(anon_sym_LBRACK); + ACCEPT_TOKEN(anon_sym_BANG); + if (lookahead == '=') ADVANCE(164); END_STATE(); case 173: - ACCEPT_TOKEN(anon_sym_RBRACK); + ACCEPT_TOKEN(anon_sym_LBRACK); END_STATE(); case 174: - ACCEPT_TOKEN(anon_sym_DOT); + ACCEPT_TOKEN(sym_unary_suffix); END_STATE(); case 175: - ACCEPT_TOKEN(anon_sym_DOT); - if (lookahead == 'a') ADVANCE(91); - if (lookahead == 'l') ADVANCE(35); - if (lookahead == 'r') ADVANCE(36); - if (lookahead == 's') ADVANCE(73); + ACCEPT_TOKEN(anon_sym_DOTsplit); END_STATE(); case 176: - ACCEPT_TOKEN(sym_unary_suffix); + ACCEPT_TOKEN(anon_sym_DOTslice); END_STATE(); case 177: - ACCEPT_TOKEN(anon_sym_DOTsplit); + ACCEPT_TOKEN(anon_sym_DOTappend); END_STATE(); case 178: - ACCEPT_TOKEN(anon_sym_DOTslice); + ACCEPT_TOKEN(anon_sym_DOTreverse); END_STATE(); case 179: - ACCEPT_TOKEN(anon_sym_DOTappend); + ACCEPT_TOKEN(sym_output_root); + if (lookahead == '.') ADVANCE(76); END_STATE(); case 180: - ACCEPT_TOKEN(anon_sym_DOTreverse); + ACCEPT_TOKEN(sym_input_root); + if (lookahead == '.') ADVANCE(75); END_STATE(); case 181: - ACCEPT_TOKEN(sym_output_root); - if (lookahead == '.') ADVANCE(77); + ACCEPT_TOKEN(anon_sym__); END_STATE(); case 182: - ACCEPT_TOKEN(sym_input_root); - if (lookahead == '.') ADVANCE(76); + ACCEPT_TOKEN(sym_array_bound); + if (lookahead == '_') ADVANCE(130); + if (lookahead == 'E' || + lookahead == 'e') ADVANCE(131); + if (('0' <= lookahead && lookahead <= '9')) ADVANCE(182); END_STATE(); case 183: - ACCEPT_TOKEN(sym_attribute); + ACCEPT_TOKEN(sym_array_bound); + if (('0' <= lookahead && lookahead <= '9')) ADVANCE(183); END_STATE(); case 184: - ACCEPT_TOKEN(sym_array_bound); - if (lookahead == '_') ADVANCE(131); + ACCEPT_TOKEN(sym_number); + if (lookahead == '_') ADVANCE(130); if (lookahead == 'E' || - lookahead == 'e') ADVANCE(132); - if (('0' <= lookahead && lookahead <= '9')) ADVANCE(184); + lookahead == 'e') ADVANCE(131); + if (lookahead == 'X' || + lookahead == 'x') ADVANCE(188); + if (('0' <= lookahead && lookahead <= '9')) ADVANCE(185); END_STATE(); case 185: - ACCEPT_TOKEN(sym_array_bound); + ACCEPT_TOKEN(sym_number); + if (lookahead == '_') ADVANCE(130); + if (lookahead == 'E' || + lookahead == 'e') ADVANCE(131); if (('0' <= lookahead && lookahead <= '9')) ADVANCE(185); END_STATE(); case 186: ACCEPT_TOKEN(sym_number); if (lookahead == '_') ADVANCE(131); - if (lookahead == 'E' || - lookahead == 'e') ADVANCE(132); - if (lookahead == 'X' || - lookahead == 'x') ADVANCE(190); - if (('0' <= lookahead && lookahead <= '9')) ADVANCE(187); + if (('0' <= lookahead && lookahead <= '9')) ADVANCE(186); END_STATE(); case 187: - ACCEPT_TOKEN(sym_number); - if (lookahead == '_') ADVANCE(131); - if (lookahead == 'E' || - lookahead == 'e') ADVANCE(132); - if (('0' <= lookahead && lookahead <= '9')) ADVANCE(187); + ACCEPT_TOKEN(sym_string_literal); END_STATE(); case 188: - ACCEPT_TOKEN(sym_number); - if (lookahead == '_') ADVANCE(132); - if (('0' <= lookahead && lookahead <= '9')) ADVANCE(188); + ACCEPT_TOKEN(sym_hex_literal); + if (('0' <= lookahead && lookahead <= '9') || + ('A' <= lookahead && lookahead <= 'F') || + ('a' <= lookahead && lookahead <= 'f')) ADVANCE(188); END_STATE(); case 189: - ACCEPT_TOKEN(sym_string_literal); + ACCEPT_TOKEN(anon_sym_this_DOTage); END_STATE(); case 190: - ACCEPT_TOKEN(sym_hex_literal); - if (('0' <= lookahead && lookahead <= '9') || - ('A' <= lookahead && lookahead <= 'F') || - ('a' <= lookahead && lookahead <= 'f')) ADVANCE(190); + ACCEPT_TOKEN(anon_sym_tx_DOTtime); END_STATE(); case 191: - ACCEPT_TOKEN(anon_sym_this_DOTage); + ACCEPT_TOKEN(anon_sym_this_DOTactiveInputIndex); END_STATE(); case 192: - ACCEPT_TOKEN(anon_sym_tx_DOTtime); + ACCEPT_TOKEN(anon_sym_this_DOTactiveScriptPubKey); END_STATE(); case 193: - ACCEPT_TOKEN(anon_sym_this_DOTactiveInputIndex); + ACCEPT_TOKEN(anon_sym_this_DOTscriptSizeDataPrefix); END_STATE(); case 194: - ACCEPT_TOKEN(anon_sym_this_DOTactiveScriptPubKey); + ACCEPT_TOKEN(anon_sym_this_DOTscriptSize); + if (lookahead == 'D') ADVANCE(24); END_STATE(); case 195: - ACCEPT_TOKEN(anon_sym_this_DOTscriptSizeDataPrefix); + ACCEPT_TOKEN(anon_sym_tx_DOTinputs_DOTlength); END_STATE(); case 196: - ACCEPT_TOKEN(anon_sym_this_DOTscriptSize); - if (lookahead == 'D') ADVANCE(25); + ACCEPT_TOKEN(anon_sym_tx_DOToutputs_DOTlength); END_STATE(); case 197: - ACCEPT_TOKEN(anon_sym_tx_DOTinputs_DOTlength); + ACCEPT_TOKEN(anon_sym_tx_DOTversion); END_STATE(); case 198: - ACCEPT_TOKEN(anon_sym_tx_DOToutputs_DOTlength); + ACCEPT_TOKEN(anon_sym_tx_DOTlocktime); END_STATE(); case 199: - ACCEPT_TOKEN(anon_sym_tx_DOTversion); + ACCEPT_TOKEN(sym_identifier); + if (lookahead == '.') ADVANCE(62); + if (('0' <= lookahead && lookahead <= '9') || + ('A' <= lookahead && lookahead <= 'Z') || + lookahead == '_' || + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(216); END_STATE(); case 200: - ACCEPT_TOKEN(anon_sym_tx_DOTlocktime); + ACCEPT_TOKEN(sym_identifier); + if (lookahead == '.') ADVANCE(21); + if (('0' <= lookahead && lookahead <= '9') || + ('A' <= lookahead && lookahead <= 'Z') || + lookahead == '_' || + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(216); END_STATE(); case 201: ACCEPT_TOKEN(sym_identifier); @@ -2664,152 +2844,136 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(218); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(216); END_STATE(); case 202: ACCEPT_TOKEN(sym_identifier); - if (lookahead == '.') ADVANCE(22); + if (lookahead == '.') ADVANCE(74); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(218); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(216); END_STATE(); case 203: ACCEPT_TOKEN(sym_identifier); - if (lookahead == '.') ADVANCE(64); + if (lookahead == '.') ADVANCE(23); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(218); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(216); END_STATE(); case 204: ACCEPT_TOKEN(sym_identifier); - if (lookahead == '.') ADVANCE(75); + if (lookahead == 'e') ADVANCE(202); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(218); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(216); END_STATE(); case 205: ACCEPT_TOKEN(sym_identifier); - if (lookahead == '.') ADVANCE(24); + if (lookahead == 'h') ADVANCE(207); + if (lookahead == 'x') ADVANCE(199); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(218); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(216); END_STATE(); case 206: ACCEPT_TOKEN(sym_identifier); - if (lookahead == 'e') ADVANCE(204); + if (lookahead == 'h') ADVANCE(208); + if (lookahead == 'x') ADVANCE(201); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(218); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(216); END_STATE(); case 207: ACCEPT_TOKEN(sym_identifier); - if (lookahead == 'h') ADVANCE(209); - if (lookahead == 'x') ADVANCE(201); + if (lookahead == 'i') ADVANCE(214); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(218); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(216); END_STATE(); case 208: ACCEPT_TOKEN(sym_identifier); - if (lookahead == 'h') ADVANCE(210); - if (lookahead == 'x') ADVANCE(203); + if (lookahead == 'i') ADVANCE(215); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(218); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(216); END_STATE(); case 209: ACCEPT_TOKEN(sym_identifier); - if (lookahead == 'i') ADVANCE(216); + if (lookahead == 'l') ADVANCE(204); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(218); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(216); END_STATE(); case 210: ACCEPT_TOKEN(sym_identifier); - if (lookahead == 'i') ADVANCE(217); + if (lookahead == 'n') ADVANCE(213); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(218); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(216); END_STATE(); case 211: ACCEPT_TOKEN(sym_identifier); - if (lookahead == 'l') ADVANCE(206); + if (lookahead == 'o') ADVANCE(210); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(218); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(216); END_STATE(); case 212: ACCEPT_TOKEN(sym_identifier); - if (lookahead == 'n') ADVANCE(215); + if (lookahead == 'o') ADVANCE(209); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(218); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(216); END_STATE(); case 213: ACCEPT_TOKEN(sym_identifier); - if (lookahead == 'o') ADVANCE(212); + if (lookahead == 's') ADVANCE(212); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(218); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(216); END_STATE(); case 214: ACCEPT_TOKEN(sym_identifier); - if (lookahead == 'o') ADVANCE(211); + if (lookahead == 's') ADVANCE(200); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(218); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(216); END_STATE(); case 215: ACCEPT_TOKEN(sym_identifier); - if (lookahead == 's') ADVANCE(214); + if (lookahead == 's') ADVANCE(203); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(218); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(216); END_STATE(); case 216: ACCEPT_TOKEN(sym_identifier); - if (lookahead == 's') ADVANCE(202); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(218); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(216); END_STATE(); case 217: - ACCEPT_TOKEN(sym_identifier); - if (lookahead == 's') ADVANCE(205); - if (('0' <= lookahead && lookahead <= '9') || - ('A' <= lookahead && lookahead <= 'Z') || - lookahead == '_' || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(218); - END_STATE(); - case 218: - ACCEPT_TOKEN(sym_identifier); - if (('0' <= lookahead && lookahead <= '9') || - ('A' <= lookahead && lookahead <= 'Z') || - lookahead == '_' || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(218); - END_STATE(); - case 219: ACCEPT_TOKEN(sym_comment); END_STATE(); - case 220: + case 218: ACCEPT_TOKEN(sym_comment); if (lookahead != 0 && - lookahead != '\n') ADVANCE(220); + lookahead != '\n') ADVANCE(218); END_STATE(); default: return false; @@ -3466,409 +3630,458 @@ static bool ts_lex_keywords(TSLexer *lexer, TSStateId state) { static const TSLexerMode ts_lex_modes[STATE_COUNT] = { [0] = {.lex_state = 0}, - [1] = {.lex_state = 1}, - [2] = {.lex_state = 3}, - [3] = {.lex_state = 2}, - [4] = {.lex_state = 2}, - [5] = {.lex_state = 2}, - [6] = {.lex_state = 2}, - [7] = {.lex_state = 2}, - [8] = {.lex_state = 2}, - [9] = {.lex_state = 2}, - [10] = {.lex_state = 2}, - [11] = {.lex_state = 2}, - [12] = {.lex_state = 2}, - [13] = {.lex_state = 2}, - [14] = {.lex_state = 2}, - [15] = {.lex_state = 2}, - [16] = {.lex_state = 2}, - [17] = {.lex_state = 2}, - [18] = {.lex_state = 2}, - [19] = {.lex_state = 2}, - [20] = {.lex_state = 2}, - [21] = {.lex_state = 2}, - [22] = {.lex_state = 2}, - [23] = {.lex_state = 2}, - [24] = {.lex_state = 2}, - [25] = {.lex_state = 2}, - [26] = {.lex_state = 2}, - [27] = {.lex_state = 2}, - [28] = {.lex_state = 2}, - [29] = {.lex_state = 2}, - [30] = {.lex_state = 2}, - [31] = {.lex_state = 2}, - [32] = {.lex_state = 2}, - [33] = {.lex_state = 2}, - [34] = {.lex_state = 2}, - [35] = {.lex_state = 2}, - [36] = {.lex_state = 2}, - [37] = {.lex_state = 2}, - [38] = {.lex_state = 2}, - [39] = {.lex_state = 2}, + [1] = {.lex_state = 136}, + [2] = {.lex_state = 2}, + [3] = {.lex_state = 1}, + [4] = {.lex_state = 1}, + [5] = {.lex_state = 1}, + [6] = {.lex_state = 1}, + [7] = {.lex_state = 1}, + [8] = {.lex_state = 1}, + [9] = {.lex_state = 1}, + [10] = {.lex_state = 1}, + [11] = {.lex_state = 1}, + [12] = {.lex_state = 1}, + [13] = {.lex_state = 1}, + [14] = {.lex_state = 1}, + [15] = {.lex_state = 1}, + [16] = {.lex_state = 1}, + [17] = {.lex_state = 1}, + [18] = {.lex_state = 1}, + [19] = {.lex_state = 1}, + [20] = {.lex_state = 1}, + [21] = {.lex_state = 1}, + [22] = {.lex_state = 1}, + [23] = {.lex_state = 1}, + [24] = {.lex_state = 1}, + [25] = {.lex_state = 1}, + [26] = {.lex_state = 1}, + [27] = {.lex_state = 1}, + [28] = {.lex_state = 1}, + [29] = {.lex_state = 1}, + [30] = {.lex_state = 1}, + [31] = {.lex_state = 1}, + [32] = {.lex_state = 1}, + [33] = {.lex_state = 1}, + [34] = {.lex_state = 1}, + [35] = {.lex_state = 1}, + [36] = {.lex_state = 1}, + [37] = {.lex_state = 1}, + [38] = {.lex_state = 1}, + [39] = {.lex_state = 1}, [40] = {.lex_state = 1}, [41] = {.lex_state = 1}, [42] = {.lex_state = 1}, [43] = {.lex_state = 1}, - [44] = {.lex_state = 7}, - [45] = {.lex_state = 7}, - [46] = {.lex_state = 7}, - [47] = {.lex_state = 7}, - [48] = {.lex_state = 7}, - [49] = {.lex_state = 7}, - [50] = {.lex_state = 7}, - [51] = {.lex_state = 7}, - [52] = {.lex_state = 7}, - [53] = {.lex_state = 7}, - [54] = {.lex_state = 7}, - [55] = {.lex_state = 7}, - [56] = {.lex_state = 7}, - [57] = {.lex_state = 7}, - [58] = {.lex_state = 7}, - [59] = {.lex_state = 7}, - [60] = {.lex_state = 7}, - [61] = {.lex_state = 7}, - [62] = {.lex_state = 2}, - [63] = {.lex_state = 1}, - [64] = {.lex_state = 2}, + [44] = {.lex_state = 1}, + [45] = {.lex_state = 1}, + [46] = {.lex_state = 1}, + [47] = {.lex_state = 1}, + [48] = {.lex_state = 1}, + [49] = {.lex_state = 1}, + [50] = {.lex_state = 1}, + [51] = {.lex_state = 1}, + [52] = {.lex_state = 1}, + [53] = {.lex_state = 6}, + [54] = {.lex_state = 136}, + [55] = {.lex_state = 136}, + [56] = {.lex_state = 136}, + [57] = {.lex_state = 6}, + [58] = {.lex_state = 6}, + [59] = {.lex_state = 6}, + [60] = {.lex_state = 136}, + [61] = {.lex_state = 6}, + [62] = {.lex_state = 6}, + [63] = {.lex_state = 6}, + [64] = {.lex_state = 6}, [65] = {.lex_state = 1}, [66] = {.lex_state = 1}, - [67] = {.lex_state = 1}, - [68] = {.lex_state = 1}, - [69] = {.lex_state = 1}, - [70] = {.lex_state = 1}, - [71] = {.lex_state = 1}, - [72] = {.lex_state = 1}, - [73] = {.lex_state = 1}, - [74] = {.lex_state = 1}, - [75] = {.lex_state = 1}, - [76] = {.lex_state = 1}, - [77] = {.lex_state = 1}, - [78] = {.lex_state = 1}, - [79] = {.lex_state = 1}, - [80] = {.lex_state = 1}, - [81] = {.lex_state = 1}, - [82] = {.lex_state = 1}, - [83] = {.lex_state = 1}, - [84] = {.lex_state = 1}, - [85] = {.lex_state = 1}, - [86] = {.lex_state = 1}, - [87] = {.lex_state = 1}, - [88] = {.lex_state = 1}, - [89] = {.lex_state = 1}, - [90] = {.lex_state = 1}, - [91] = {.lex_state = 1}, - [92] = {.lex_state = 1}, - [93] = {.lex_state = 1}, - [94] = {.lex_state = 1}, - [95] = {.lex_state = 1}, - [96] = {.lex_state = 1}, - [97] = {.lex_state = 1}, - [98] = {.lex_state = 1}, - [99] = {.lex_state = 1}, - [100] = {.lex_state = 1}, - [101] = {.lex_state = 1}, - [102] = {.lex_state = 1}, - [103] = {.lex_state = 1}, - [104] = {.lex_state = 1}, - [105] = {.lex_state = 1}, - [106] = {.lex_state = 1}, - [107] = {.lex_state = 1}, - [108] = {.lex_state = 1}, - [109] = {.lex_state = 1}, - [110] = {.lex_state = 1}, - [111] = {.lex_state = 1}, - [112] = {.lex_state = 1}, - [113] = {.lex_state = 1}, - [114] = {.lex_state = 1}, - [115] = {.lex_state = 1}, - [116] = {.lex_state = 7}, - [117] = {.lex_state = 7}, - [118] = {.lex_state = 1}, - [119] = {.lex_state = 7}, - [120] = {.lex_state = 7}, - [121] = {.lex_state = 1}, - [122] = {.lex_state = 7}, - [123] = {.lex_state = 7}, - [124] = {.lex_state = 7}, - [125] = {.lex_state = 1}, - [126] = {.lex_state = 7}, - [127] = {.lex_state = 7}, - [128] = {.lex_state = 7}, - [129] = {.lex_state = 7}, - [130] = {.lex_state = 7}, - [131] = {.lex_state = 7}, - [132] = {.lex_state = 7}, - [133] = {.lex_state = 7}, - [134] = {.lex_state = 7}, - [135] = {.lex_state = 7}, - [136] = {.lex_state = 7}, - [137] = {.lex_state = 7}, - [138] = {.lex_state = 7}, - [139] = {.lex_state = 7}, - [140] = {.lex_state = 7}, - [141] = {.lex_state = 7}, - [142] = {.lex_state = 7}, - [143] = {.lex_state = 7}, - [144] = {.lex_state = 7}, - [145] = {.lex_state = 1}, - [146] = {.lex_state = 1}, - [147] = {.lex_state = 1}, - [148] = {.lex_state = 1}, - [149] = {.lex_state = 1}, - [150] = {.lex_state = 1}, - [151] = {.lex_state = 1}, - [152] = {.lex_state = 4}, - [153] = {.lex_state = 4}, - [154] = {.lex_state = 1}, - [155] = {.lex_state = 1}, - [156] = {.lex_state = 1}, - [157] = {.lex_state = 1}, - [158] = {.lex_state = 1}, - [159] = {.lex_state = 1}, - [160] = {.lex_state = 4}, - [161] = {.lex_state = 1}, - [162] = {.lex_state = 1}, - [163] = {.lex_state = 1}, - [164] = {.lex_state = 1}, - [165] = {.lex_state = 1}, - [166] = {.lex_state = 1}, - [167] = {.lex_state = 1}, - [168] = {.lex_state = 1}, - [169] = {.lex_state = 1}, - [170] = {.lex_state = 1}, - [171] = {.lex_state = 1}, - [172] = {.lex_state = 4}, - [173] = {.lex_state = 1}, - [174] = {.lex_state = 1}, - [175] = {.lex_state = 1}, - [176] = {.lex_state = 1}, - [177] = {.lex_state = 1}, - [178] = {.lex_state = 1}, - [179] = {.lex_state = 0}, - [180] = {.lex_state = 0}, - [181] = {.lex_state = 1}, - [182] = {.lex_state = 0}, - [183] = {.lex_state = 1}, - [184] = {.lex_state = 1}, - [185] = {.lex_state = 1}, - [186] = {.lex_state = 1}, + [67] = {.lex_state = 136}, + [68] = {.lex_state = 136}, + [69] = {.lex_state = 136}, + [70] = {.lex_state = 136}, + [71] = {.lex_state = 136}, + [72] = {.lex_state = 136}, + [73] = {.lex_state = 136}, + [74] = {.lex_state = 136}, + [75] = {.lex_state = 136}, + [76] = {.lex_state = 136}, + [77] = {.lex_state = 136}, + [78] = {.lex_state = 136}, + [79] = {.lex_state = 136}, + [80] = {.lex_state = 136}, + [81] = {.lex_state = 136}, + [82] = {.lex_state = 136}, + [83] = {.lex_state = 136}, + [84] = {.lex_state = 136}, + [85] = {.lex_state = 136}, + [86] = {.lex_state = 136}, + [87] = {.lex_state = 136}, + [88] = {.lex_state = 136}, + [89] = {.lex_state = 136}, + [90] = {.lex_state = 136}, + [91] = {.lex_state = 136}, + [92] = {.lex_state = 136}, + [93] = {.lex_state = 136}, + [94] = {.lex_state = 136}, + [95] = {.lex_state = 136}, + [96] = {.lex_state = 136}, + [97] = {.lex_state = 136}, + [98] = {.lex_state = 136}, + [99] = {.lex_state = 136}, + [100] = {.lex_state = 136}, + [101] = {.lex_state = 136}, + [102] = {.lex_state = 136}, + [103] = {.lex_state = 136}, + [104] = {.lex_state = 136}, + [105] = {.lex_state = 136}, + [106] = {.lex_state = 136}, + [107] = {.lex_state = 136}, + [108] = {.lex_state = 136}, + [109] = {.lex_state = 136}, + [110] = {.lex_state = 136}, + [111] = {.lex_state = 136}, + [112] = {.lex_state = 136}, + [113] = {.lex_state = 136}, + [114] = {.lex_state = 136}, + [115] = {.lex_state = 136}, + [116] = {.lex_state = 136}, + [117] = {.lex_state = 136}, + [118] = {.lex_state = 136}, + [119] = {.lex_state = 136}, + [120] = {.lex_state = 136}, + [121] = {.lex_state = 136}, + [122] = {.lex_state = 6}, + [123] = {.lex_state = 6}, + [124] = {.lex_state = 6}, + [125] = {.lex_state = 6}, + [126] = {.lex_state = 136}, + [127] = {.lex_state = 136}, + [128] = {.lex_state = 6}, + [129] = {.lex_state = 6}, + [130] = {.lex_state = 6}, + [131] = {.lex_state = 6}, + [132] = {.lex_state = 6}, + [133] = {.lex_state = 6}, + [134] = {.lex_state = 6}, + [135] = {.lex_state = 6}, + [136] = {.lex_state = 6}, + [137] = {.lex_state = 6}, + [138] = {.lex_state = 6}, + [139] = {.lex_state = 136}, + [140] = {.lex_state = 6}, + [141] = {.lex_state = 6}, + [142] = {.lex_state = 6}, + [143] = {.lex_state = 6}, + [144] = {.lex_state = 6}, + [145] = {.lex_state = 6}, + [146] = {.lex_state = 6}, + [147] = {.lex_state = 6}, + [148] = {.lex_state = 6}, + [149] = {.lex_state = 6}, + [150] = {.lex_state = 6}, + [151] = {.lex_state = 6}, + [152] = {.lex_state = 6}, + [153] = {.lex_state = 136}, + [154] = {.lex_state = 136}, + [155] = {.lex_state = 136}, + [156] = {.lex_state = 136}, + [157] = {.lex_state = 136}, + [158] = {.lex_state = 136}, + [159] = {.lex_state = 136}, + [160] = {.lex_state = 136}, + [161] = {.lex_state = 136}, + [162] = {.lex_state = 136}, + [163] = {.lex_state = 136}, + [164] = {.lex_state = 136}, + [165] = {.lex_state = 136}, + [166] = {.lex_state = 136}, + [167] = {.lex_state = 136}, + [168] = {.lex_state = 136}, + [169] = {.lex_state = 136}, + [170] = {.lex_state = 136}, + [171] = {.lex_state = 136}, + [172] = {.lex_state = 136}, + [173] = {.lex_state = 136}, + [174] = {.lex_state = 136}, + [175] = {.lex_state = 136}, + [176] = {.lex_state = 136}, + [177] = {.lex_state = 136}, + [178] = {.lex_state = 136}, + [179] = {.lex_state = 136}, + [180] = {.lex_state = 136}, + [181] = {.lex_state = 136}, + [182] = {.lex_state = 136}, + [183] = {.lex_state = 136}, + [184] = {.lex_state = 136}, + [185] = {.lex_state = 136}, + [186] = {.lex_state = 0}, [187] = {.lex_state = 0}, - [188] = {.lex_state = 0}, - [189] = {.lex_state = 0}, - [190] = {.lex_state = 1}, - [191] = {.lex_state = 0}, - [192] = {.lex_state = 0}, + [188] = {.lex_state = 6}, + [189] = {.lex_state = 6}, + [190] = {.lex_state = 136}, + [191] = {.lex_state = 136}, + [192] = {.lex_state = 136}, [193] = {.lex_state = 0}, [194] = {.lex_state = 0}, [195] = {.lex_state = 0}, - [196] = {.lex_state = 1}, - [197] = {.lex_state = 0}, - [198] = {.lex_state = 1}, - [199] = {.lex_state = 0}, - [200] = {.lex_state = 0}, - [201] = {.lex_state = 1}, - [202] = {.lex_state = 1}, - [203] = {.lex_state = 0}, - [204] = {.lex_state = 0}, - [205] = {.lex_state = 4}, + [196] = {.lex_state = 0}, + [197] = {.lex_state = 136}, + [198] = {.lex_state = 0}, + [199] = {.lex_state = 6}, + [200] = {.lex_state = 136}, + [201] = {.lex_state = 0}, + [202] = {.lex_state = 136}, + [203] = {.lex_state = 136}, + [204] = {.lex_state = 6}, + [205] = {.lex_state = 0}, [206] = {.lex_state = 0}, [207] = {.lex_state = 0}, - [208] = {.lex_state = 0}, - [209] = {.lex_state = 1}, + [208] = {.lex_state = 136}, + [209] = {.lex_state = 0}, [210] = {.lex_state = 0}, - [211] = {.lex_state = 1}, - [212] = {.lex_state = 4}, - [213] = {.lex_state = 1}, - [214] = {.lex_state = 1}, - [215] = {.lex_state = 0}, - [216] = {.lex_state = 1}, - [217] = {.lex_state = 0}, - [218] = {.lex_state = 1}, - [219] = {.lex_state = 1}, - [220] = {.lex_state = 1}, - [221] = {.lex_state = 1}, - [222] = {.lex_state = 1}, - [223] = {.lex_state = 0}, - [224] = {.lex_state = 1}, + [211] = {.lex_state = 0}, + [212] = {.lex_state = 0}, + [213] = {.lex_state = 136}, + [214] = {.lex_state = 136}, + [215] = {.lex_state = 5}, + [216] = {.lex_state = 0}, + [217] = {.lex_state = 136}, + [218] = {.lex_state = 0}, + [219] = {.lex_state = 0}, + [220] = {.lex_state = 0}, + [221] = {.lex_state = 0}, + [222] = {.lex_state = 136}, + [223] = {.lex_state = 5}, + [224] = {.lex_state = 136}, [225] = {.lex_state = 0}, - [226] = {.lex_state = 1}, - [227] = {.lex_state = 0}, - [228] = {.lex_state = 0}, - [229] = {.lex_state = 0}, + [226] = {.lex_state = 136}, + [227] = {.lex_state = 136}, + [228] = {.lex_state = 136}, + [229] = {.lex_state = 2}, [230] = {.lex_state = 0}, - [231] = {.lex_state = 0}, - [232] = {.lex_state = 0}, - [233] = {.lex_state = 0}, - [234] = {.lex_state = 1}, - [235] = {.lex_state = 0}, - [236] = {.lex_state = 0}, + [231] = {.lex_state = 136}, + [232] = {.lex_state = 2}, + [233] = {.lex_state = 136}, + [234] = {.lex_state = 0}, + [235] = {.lex_state = 136}, + [236] = {.lex_state = 136}, [237] = {.lex_state = 0}, - [238] = {.lex_state = 0}, - [239] = {.lex_state = 3}, - [240] = {.lex_state = 1}, + [238] = {.lex_state = 136}, + [239] = {.lex_state = 136}, + [240] = {.lex_state = 0}, [241] = {.lex_state = 0}, [242] = {.lex_state = 0}, - [243] = {.lex_state = 0}, + [243] = {.lex_state = 2}, [244] = {.lex_state = 0}, [245] = {.lex_state = 0}, [246] = {.lex_state = 0}, - [247] = {.lex_state = 0}, - [248] = {.lex_state = 1}, + [247] = {.lex_state = 136}, + [248] = {.lex_state = 0}, [249] = {.lex_state = 0}, - [250] = {.lex_state = 0}, + [250] = {.lex_state = 136}, [251] = {.lex_state = 0}, - [252] = {.lex_state = 1}, + [252] = {.lex_state = 0}, [253] = {.lex_state = 0}, [254] = {.lex_state = 0}, - [255] = {.lex_state = 0}, - [256] = {.lex_state = 0}, + [255] = {.lex_state = 2}, + [256] = {.lex_state = 136}, [257] = {.lex_state = 0}, [258] = {.lex_state = 0}, - [259] = {.lex_state = 1}, - [260] = {.lex_state = 0}, + [259] = {.lex_state = 0}, + [260] = {.lex_state = 136}, [261] = {.lex_state = 0}, [262] = {.lex_state = 0}, - [263] = {.lex_state = 3}, - [264] = {.lex_state = 3}, - [265] = {.lex_state = 0}, - [266] = {.lex_state = 3}, + [263] = {.lex_state = 0}, + [264] = {.lex_state = 0}, + [265] = {.lex_state = 136}, + [266] = {.lex_state = 136}, [267] = {.lex_state = 0}, [268] = {.lex_state = 0}, [269] = {.lex_state = 0}, - [270] = {.lex_state = 0}, + [270] = {.lex_state = 136}, [271] = {.lex_state = 0}, - [272] = {.lex_state = 1}, + [272] = {.lex_state = 0}, [273] = {.lex_state = 0}, - [274] = {.lex_state = 0}, + [274] = {.lex_state = 136}, [275] = {.lex_state = 0}, [276] = {.lex_state = 0}, [277] = {.lex_state = 0}, - [278] = {.lex_state = 1}, + [278] = {.lex_state = 0}, [279] = {.lex_state = 0}, [280] = {.lex_state = 0}, - [281] = {.lex_state = 1}, - [282] = {.lex_state = 1}, - [283] = {.lex_state = 1}, + [281] = {.lex_state = 136}, + [282] = {.lex_state = 0}, + [283] = {.lex_state = 0}, [284] = {.lex_state = 0}, [285] = {.lex_state = 0}, - [286] = {.lex_state = 1}, + [286] = {.lex_state = 0}, [287] = {.lex_state = 0}, - [288] = {.lex_state = 0}, - [289] = {.lex_state = 0}, - [290] = {.lex_state = 1}, - [291] = {.lex_state = 1}, - [292] = {.lex_state = 1}, + [288] = {.lex_state = 136}, + [289] = {.lex_state = 136}, + [290] = {.lex_state = 2}, + [291] = {.lex_state = 136}, + [292] = {.lex_state = 0}, [293] = {.lex_state = 0}, - [294] = {.lex_state = 1}, - [295] = {.lex_state = 0}, + [294] = {.lex_state = 0}, + [295] = {.lex_state = 136}, [296] = {.lex_state = 0}, [297] = {.lex_state = 0}, - [298] = {.lex_state = 0}, + [298] = {.lex_state = 136}, [299] = {.lex_state = 0}, [300] = {.lex_state = 0}, [301] = {.lex_state = 0}, - [302] = {.lex_state = 1}, + [302] = {.lex_state = 2}, [303] = {.lex_state = 0}, - [304] = {.lex_state = 0}, - [305] = {.lex_state = 0}, + [304] = {.lex_state = 136}, + [305] = {.lex_state = 136}, [306] = {.lex_state = 0}, [307] = {.lex_state = 0}, [308] = {.lex_state = 0}, - [309] = {.lex_state = 1}, - [310] = {.lex_state = 1}, - [311] = {.lex_state = 1}, + [309] = {.lex_state = 0}, + [310] = {.lex_state = 0}, + [311] = {.lex_state = 0}, [312] = {.lex_state = 0}, - [313] = {.lex_state = 0}, - [314] = {.lex_state = 3}, + [313] = {.lex_state = 136}, + [314] = {.lex_state = 0}, [315] = {.lex_state = 0}, [316] = {.lex_state = 0}, [317] = {.lex_state = 0}, [318] = {.lex_state = 0}, [319] = {.lex_state = 0}, - [320] = {.lex_state = 1}, + [320] = {.lex_state = 136}, [321] = {.lex_state = 0}, [322] = {.lex_state = 0}, - [323] = {.lex_state = 3}, - [324] = {.lex_state = 0}, - [325] = {.lex_state = 3}, + [323] = {.lex_state = 2}, + [324] = {.lex_state = 2}, + [325] = {.lex_state = 136}, [326] = {.lex_state = 0}, [327] = {.lex_state = 0}, [328] = {.lex_state = 0}, [329] = {.lex_state = 0}, [330] = {.lex_state = 0}, - [331] = {.lex_state = 0}, - [332] = {.lex_state = 3}, + [331] = {.lex_state = 136}, + [332] = {.lex_state = 0}, [333] = {.lex_state = 0}, - [334] = {.lex_state = 1}, - [335] = {.lex_state = 0}, - [336] = {.lex_state = 3}, - [337] = {.lex_state = 1}, + [334] = {.lex_state = 0}, + [335] = {.lex_state = 136}, + [336] = {.lex_state = 0}, + [337] = {.lex_state = 136}, [338] = {.lex_state = 0}, [339] = {.lex_state = 0}, - [340] = {.lex_state = 1}, + [340] = {.lex_state = 136}, [341] = {.lex_state = 0}, - [342] = {.lex_state = 1}, - [343] = {.lex_state = 1}, + [342] = {.lex_state = 0}, + [343] = {.lex_state = 0}, [344] = {.lex_state = 0}, - [345] = {.lex_state = 0}, + [345] = {.lex_state = 2}, [346] = {.lex_state = 0}, - [347] = {.lex_state = 1}, + [347] = {.lex_state = 0}, [348] = {.lex_state = 0}, - [349] = {.lex_state = 3}, - [350] = {.lex_state = 1}, - [351] = {.lex_state = 3}, + [349] = {.lex_state = 0}, + [350] = {.lex_state = 0}, + [351] = {.lex_state = 0}, [352] = {.lex_state = 0}, [353] = {.lex_state = 0}, - [354] = {.lex_state = 1}, + [354] = {.lex_state = 136}, [355] = {.lex_state = 0}, - [356] = {.lex_state = 0}, - [357] = {.lex_state = 0}, + [356] = {.lex_state = 136}, + [357] = {.lex_state = 136}, [358] = {.lex_state = 0}, - [359] = {.lex_state = 3}, + [359] = {.lex_state = 136}, [360] = {.lex_state = 0}, [361] = {.lex_state = 0}, - [362] = {.lex_state = 0}, + [362] = {.lex_state = 6}, [363] = {.lex_state = 0}, [364] = {.lex_state = 0}, [365] = {.lex_state = 0}, [366] = {.lex_state = 0}, - [367] = {.lex_state = 3}, + [367] = {.lex_state = 0}, [368] = {.lex_state = 0}, [369] = {.lex_state = 0}, [370] = {.lex_state = 0}, - [371] = {.lex_state = 1}, + [371] = {.lex_state = 0}, [372] = {.lex_state = 0}, - [373] = {.lex_state = 0}, - [374] = {.lex_state = 0}, + [373] = {.lex_state = 2}, + [374] = {.lex_state = 136}, [375] = {.lex_state = 0}, - [376] = {.lex_state = 0}, - [377] = {.lex_state = 1}, - [378] = {.lex_state = 0}, - [379] = {.lex_state = 1}, + [376] = {.lex_state = 136}, + [377] = {.lex_state = 0}, + [378] = {.lex_state = 2}, + [379] = {.lex_state = 0}, [380] = {.lex_state = 0}, - [381] = {.lex_state = 0}, + [381] = {.lex_state = 2}, [382] = {.lex_state = 0}, [383] = {.lex_state = 0}, - [384] = {.lex_state = 1}, + [384] = {.lex_state = 0}, [385] = {.lex_state = 0}, [386] = {.lex_state = 0}, [387] = {.lex_state = 0}, - [388] = {.lex_state = 1}, - [389] = {.lex_state = 0}, - [390] = {.lex_state = 0}, - [391] = {.lex_state = 3}, - [392] = {.lex_state = 0}, - [393] = {.lex_state = 0}, + [388] = {.lex_state = 0}, + [389] = {.lex_state = 2}, + [390] = {.lex_state = 2}, + [391] = {.lex_state = 0}, + [392] = {.lex_state = 136}, + [393] = {.lex_state = 2}, [394] = {.lex_state = 0}, [395] = {.lex_state = 0}, [396] = {.lex_state = 0}, [397] = {.lex_state = 0}, [398] = {.lex_state = 0}, - [399] = {.lex_state = 11}, - [400] = {.lex_state = 0}, - [401] = {.lex_state = 0}, - [402] = {.lex_state = 1}, + [399] = {.lex_state = 0}, + [400] = {.lex_state = 136}, + [401] = {.lex_state = 2}, + [402] = {.lex_state = 0}, [403] = {.lex_state = 0}, + [404] = {.lex_state = 0}, + [405] = {.lex_state = 136}, + [406] = {.lex_state = 136}, + [407] = {.lex_state = 0}, + [408] = {.lex_state = 0}, + [409] = {.lex_state = 0}, + [410] = {.lex_state = 0}, + [411] = {.lex_state = 2}, + [412] = {.lex_state = 0}, + [413] = {.lex_state = 136}, + [414] = {.lex_state = 0}, + [415] = {.lex_state = 0}, + [416] = {.lex_state = 0}, + [417] = {.lex_state = 136}, + [418] = {.lex_state = 136}, + [419] = {.lex_state = 2}, + [420] = {.lex_state = 0}, + [421] = {.lex_state = 0}, + [422] = {.lex_state = 136}, + [423] = {.lex_state = 0}, + [424] = {.lex_state = 136}, + [425] = {.lex_state = 2}, + [426] = {.lex_state = 0}, + [427] = {.lex_state = 0}, + [428] = {.lex_state = 0}, + [429] = {.lex_state = 0}, + [430] = {.lex_state = 0}, + [431] = {.lex_state = 136}, + [432] = {.lex_state = 0}, + [433] = {.lex_state = 0}, + [434] = {.lex_state = 0}, + [435] = {.lex_state = 6}, + [436] = {.lex_state = 0}, + [437] = {.lex_state = 0}, + [438] = {.lex_state = 0}, + [439] = {.lex_state = 0}, + [440] = {.lex_state = 136}, + [441] = {.lex_state = 136}, + [442] = {.lex_state = 0}, + [443] = {.lex_state = 0}, + [444] = {.lex_state = 0}, + [445] = {.lex_state = 0}, + [446] = {.lex_state = 0}, + [447] = {.lex_state = 0}, + [448] = {.lex_state = 0}, + [449] = {.lex_state = 136}, + [450] = {.lex_state = 0}, + [451] = {.lex_state = 0}, + [452] = {.lex_state = 0}, }; static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { @@ -3878,21 +4091,29 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_pragma] = ACTIONS(1), [anon_sym_silverscript] = ACTIONS(1), [anon_sym_SEMI] = ACTIONS(1), + [anon_sym_CARET] = ACTIONS(1), + [anon_sym_TILDE] = ACTIONS(1), + [anon_sym_GT_EQ] = ACTIONS(1), + [anon_sym_GT] = ACTIONS(1), + [anon_sym_LT_EQ] = ACTIONS(1), + [anon_sym_LT] = ACTIONS(1), + [anon_sym_EQ] = ACTIONS(1), [anon_sym_contract] = ACTIONS(1), [anon_sym_LBRACE] = ACTIONS(1), [anon_sym_RBRACE] = ACTIONS(1), [anon_sym_struct] = ACTIONS(1), [anon_sym_entrypoint] = ACTIONS(1), [anon_sym_function] = ACTIONS(1), - [anon_sym_constant] = ACTIONS(1), - [anon_sym_EQ] = ACTIONS(1), + [anon_sym_POUND_LBRACK] = ACTIONS(1), + [anon_sym_RBRACK] = ACTIONS(1), + [anon_sym_DOT] = ACTIONS(1), [anon_sym_LPAREN] = ACTIONS(1), [anon_sym_COMMA] = ACTIONS(1), [anon_sym_RPAREN] = ACTIONS(1), + [anon_sym_constant] = ACTIONS(1), [anon_sym_COLON] = ACTIONS(1), [anon_sym_return] = ACTIONS(1), [anon_sym_require] = ACTIONS(1), - [anon_sym_GT_EQ] = ACTIONS(1), [anon_sym_if] = ACTIONS(1), [anon_sym_else] = ACTIONS(1), [anon_sym_for] = ACTIONS(1), @@ -3900,13 +4121,9 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_PIPE_PIPE] = ACTIONS(1), [anon_sym_AMP_AMP] = ACTIONS(1), [anon_sym_PIPE] = ACTIONS(1), - [anon_sym_CARET] = ACTIONS(1), [anon_sym_AMP] = ACTIONS(1), [anon_sym_EQ_EQ] = ACTIONS(1), [anon_sym_BANG_EQ] = ACTIONS(1), - [anon_sym_LT_EQ] = ACTIONS(1), - [anon_sym_LT] = ACTIONS(1), - [anon_sym_GT] = ACTIONS(1), [anon_sym_PLUS] = ACTIONS(1), [anon_sym_DASH] = ACTIONS(1), [anon_sym_STAR] = ACTIONS(1), @@ -3914,8 +4131,6 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_PERCENT] = ACTIONS(1), [anon_sym_BANG] = ACTIONS(1), [anon_sym_LBRACK] = ACTIONS(1), - [anon_sym_RBRACK] = ACTIONS(1), - [anon_sym_DOT] = ACTIONS(1), [sym_unary_suffix] = ACTIONS(1), [anon_sym_DOTsplit] = ACTIONS(1), [anon_sym_DOTslice] = ACTIONS(1), @@ -3936,7 +4151,7 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_sig] = ACTIONS(1), [anon_sym_datasig] = ACTIONS(1), [anon_sym_byte] = ACTIONS(1), - [sym_attribute] = ACTIONS(1), + [anon_sym__] = ACTIONS(1), [sym_array_bound] = ACTIONS(1), [anon_sym_true] = ACTIONS(1), [anon_sym_false] = ACTIONS(1), @@ -3965,11 +4180,17 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_comment] = ACTIONS(3), }, [STATE(1)] = { - [sym_source_file] = STATE(331), - [sym_pragma_directive] = STATE(278), - [sym_contract_definition] = STATE(395), + [sym_source_file] = STATE(346), + [sym_contract_source_file] = STATE(364), + [sym_declaration_source_file] = STATE(364), + [sym_pragma_directive] = STATE(224), + [sym_contract_definition] = STATE(391), + [sym_builtin_function_declaration] = STATE(238), + [aux_sym_contract_source_file_repeat1] = STATE(224), + [aux_sym_declaration_source_file_repeat1] = STATE(238), [anon_sym_pragma] = ACTIONS(5), [anon_sym_contract] = ACTIONS(7), + [anon_sym_function] = ACTIONS(9), [sym_comment] = ACTIONS(3), }, }; @@ -3978,79 +4199,79 @@ static const uint16_t ts_small_parse_table[] = { [0] = 37, ACTIONS(3), 1, sym_comment, - ACTIONS(9), 1, - sym_identifier, ACTIONS(11), 1, - anon_sym_LBRACE, + sym_identifier, ACTIONS(13), 1, - anon_sym_LPAREN, + anon_sym_LBRACE, ACTIONS(15), 1, - anon_sym_DASH, + anon_sym_LPAREN, ACTIONS(17), 1, - anon_sym_BANG, + anon_sym_DASH, ACTIONS(19), 1, - anon_sym_LBRACK, + anon_sym_BANG, ACTIONS(21), 1, - anon_sym_new, + anon_sym_LBRACK, ACTIONS(23), 1, - sym_output_root, + anon_sym_new, ACTIONS(25), 1, + sym_output_root, + ACTIONS(27), 1, sym_input_root, - ACTIONS(31), 1, + ACTIONS(33), 1, sym_number, - ACTIONS(35), 1, + ACTIONS(37), 1, anon_sym_date, - ACTIONS(41), 1, + ACTIONS(43), 1, anon_sym_this_DOTscriptSize, - STATE(43), 1, + STATE(56), 1, sym_primary, - STATE(107), 1, + STATE(113), 1, sym_unary, - STATE(109), 1, + STATE(115), 1, sym_postfix, - STATE(114), 1, + STATE(119), 1, sym_factor, - STATE(125), 1, + STATE(126), 1, sym_term, - STATE(150), 1, + STATE(166), 1, sym_comparison, - STATE(182), 1, + STATE(193), 1, sym_equality, - STATE(187), 1, + STATE(196), 1, sym_bit_and, - STATE(194), 1, + STATE(205), 1, sym_bit_xor, - STATE(200), 1, + STATE(212), 1, sym_bit_or, - STATE(201), 1, - sym_base_type, - STATE(204), 1, + STATE(219), 1, sym_logical_and, - STATE(215), 1, + STATE(225), 1, sym_logical_or, - STATE(271), 1, + STATE(240), 1, + sym_builtin_type, + STATE(292), 1, sym_expression, - STATE(304), 1, + STATE(366), 1, + sym_cast_type_name, + STATE(436), 1, sym_tx_var, - STATE(318), 1, - sym_type_name, - ACTIONS(29), 2, + ACTIONS(31), 2, anon_sym_true, anon_sym_false, - ACTIONS(33), 2, + ACTIONS(35), 2, sym_string_literal, sym_hex_literal, - ACTIONS(37), 2, + ACTIONS(39), 2, anon_sym_this_DOTage, anon_sym_tx_DOTtime, - STATE(39), 2, + STATE(52), 2, sym_unary_op, aux_sym_unary_repeat1, - STATE(80), 3, + STATE(83), 3, sym_boolean_literal, sym_number_literal, sym_date_literal, - ACTIONS(27), 7, + ACTIONS(29), 7, anon_sym_int, anon_sym_bool, anon_sym_string, @@ -4058,7 +4279,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_sig, anon_sym_datasig, anon_sym_byte, - ACTIONS(39), 7, + ACTIONS(41), 7, anon_sym_this_DOTactiveInputIndex, anon_sym_this_DOTactiveScriptPubKey, anon_sym_this_DOTscriptSizeDataPrefix, @@ -4066,7 +4287,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_tx_DOToutputs_DOTlength, anon_sym_tx_DOTversion, anon_sym_tx_DOTlocktime, - STATE(95), 9, + STATE(70), 9, sym_parenthesized, sym_cast, sym_function_call, @@ -4076,79 +4297,81 @@ static const uint16_t ts_small_parse_table[] = { sym_array, sym_literal, sym_nullary_op, - [138] = 36, + [138] = 37, ACTIONS(3), 1, sym_comment, - ACTIONS(9), 1, - sym_identifier, ACTIONS(11), 1, - anon_sym_LBRACE, + sym_identifier, ACTIONS(13), 1, - anon_sym_LPAREN, + anon_sym_LBRACE, ACTIONS(15), 1, - anon_sym_DASH, + anon_sym_LPAREN, ACTIONS(17), 1, - anon_sym_BANG, + anon_sym_DASH, ACTIONS(19), 1, - anon_sym_LBRACK, + anon_sym_BANG, ACTIONS(21), 1, - anon_sym_new, + anon_sym_LBRACK, ACTIONS(23), 1, - sym_output_root, + anon_sym_new, ACTIONS(25), 1, + sym_output_root, + ACTIONS(27), 1, sym_input_root, - ACTIONS(31), 1, + ACTIONS(33), 1, sym_number, - ACTIONS(35), 1, + ACTIONS(37), 1, anon_sym_date, - ACTIONS(41), 1, - anon_sym_this_DOTscriptSize, ACTIONS(43), 1, + anon_sym_this_DOTscriptSize, + ACTIONS(45), 1, anon_sym_RPAREN, - STATE(43), 1, + STATE(56), 1, sym_primary, - STATE(107), 1, + STATE(113), 1, sym_unary, - STATE(109), 1, + STATE(115), 1, sym_postfix, - STATE(114), 1, + STATE(119), 1, sym_factor, - STATE(125), 1, + STATE(126), 1, sym_term, - STATE(150), 1, + STATE(166), 1, sym_comparison, - STATE(182), 1, + STATE(193), 1, sym_equality, - STATE(187), 1, + STATE(196), 1, sym_bit_and, - STATE(194), 1, + STATE(205), 1, sym_bit_xor, - STATE(200), 1, + STATE(212), 1, sym_bit_or, - STATE(201), 1, - sym_base_type, - STATE(204), 1, + STATE(219), 1, sym_logical_and, - STATE(215), 1, + STATE(225), 1, sym_logical_or, + STATE(240), 1, + sym_builtin_type, STATE(254), 1, + sym_console_parameter, + STATE(297), 1, sym_expression, - STATE(318), 1, - sym_type_name, - ACTIONS(29), 2, + STATE(366), 1, + sym_cast_type_name, + ACTIONS(31), 2, anon_sym_true, anon_sym_false, - ACTIONS(33), 2, + ACTIONS(35), 2, sym_string_literal, sym_hex_literal, - STATE(39), 2, + STATE(52), 2, sym_unary_op, aux_sym_unary_repeat1, - STATE(80), 3, + STATE(83), 3, sym_boolean_literal, sym_number_literal, sym_date_literal, - ACTIONS(27), 7, + ACTIONS(29), 7, anon_sym_int, anon_sym_bool, anon_sym_string, @@ -4156,7 +4379,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_sig, anon_sym_datasig, anon_sym_byte, - ACTIONS(39), 7, + ACTIONS(41), 7, anon_sym_this_DOTactiveInputIndex, anon_sym_this_DOTactiveScriptPubKey, anon_sym_this_DOTscriptSizeDataPrefix, @@ -4164,7 +4387,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_tx_DOToutputs_DOTlength, anon_sym_tx_DOTversion, anon_sym_tx_DOTlocktime, - STATE(95), 9, + STATE(70), 9, sym_parenthesized, sym_cast, sym_function_call, @@ -4174,79 +4397,81 @@ static const uint16_t ts_small_parse_table[] = { sym_array, sym_literal, sym_nullary_op, - [272] = 36, + [275] = 37, ACTIONS(3), 1, sym_comment, - ACTIONS(9), 1, - sym_identifier, ACTIONS(11), 1, - anon_sym_LBRACE, + sym_identifier, ACTIONS(13), 1, - anon_sym_LPAREN, + anon_sym_LBRACE, ACTIONS(15), 1, - anon_sym_DASH, + anon_sym_LPAREN, ACTIONS(17), 1, - anon_sym_BANG, + anon_sym_DASH, ACTIONS(19), 1, - anon_sym_LBRACK, + anon_sym_BANG, ACTIONS(21), 1, - anon_sym_new, + anon_sym_LBRACK, ACTIONS(23), 1, - sym_output_root, + anon_sym_new, ACTIONS(25), 1, + sym_output_root, + ACTIONS(27), 1, sym_input_root, - ACTIONS(31), 1, + ACTIONS(33), 1, sym_number, - ACTIONS(35), 1, + ACTIONS(37), 1, anon_sym_date, - ACTIONS(41), 1, + ACTIONS(43), 1, anon_sym_this_DOTscriptSize, - ACTIONS(45), 1, - anon_sym_RBRACK, - STATE(43), 1, + ACTIONS(47), 1, + anon_sym_RPAREN, + STATE(56), 1, sym_primary, - STATE(107), 1, + STATE(113), 1, sym_unary, - STATE(109), 1, + STATE(115), 1, sym_postfix, - STATE(114), 1, + STATE(119), 1, sym_factor, - STATE(125), 1, + STATE(126), 1, sym_term, - STATE(150), 1, + STATE(166), 1, sym_comparison, - STATE(182), 1, + STATE(193), 1, sym_equality, - STATE(187), 1, + STATE(196), 1, sym_bit_and, - STATE(194), 1, + STATE(205), 1, sym_bit_xor, - STATE(200), 1, + STATE(212), 1, sym_bit_or, - STATE(201), 1, - sym_base_type, - STATE(204), 1, + STATE(219), 1, sym_logical_and, - STATE(215), 1, + STATE(225), 1, sym_logical_or, - STATE(238), 1, + STATE(240), 1, + sym_builtin_type, + STATE(297), 1, sym_expression, - STATE(318), 1, - sym_type_name, - ACTIONS(29), 2, + STATE(319), 1, + sym_console_parameter, + STATE(366), 1, + sym_cast_type_name, + ACTIONS(31), 2, anon_sym_true, anon_sym_false, - ACTIONS(33), 2, + ACTIONS(35), 2, sym_string_literal, sym_hex_literal, - STATE(39), 2, + STATE(52), 2, sym_unary_op, aux_sym_unary_repeat1, - STATE(80), 3, + STATE(83), 3, sym_boolean_literal, sym_number_literal, sym_date_literal, - ACTIONS(27), 7, + ACTIONS(29), 7, anon_sym_int, anon_sym_bool, anon_sym_string, @@ -4254,7 +4479,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_sig, anon_sym_datasig, anon_sym_byte, - ACTIONS(39), 7, + ACTIONS(41), 7, anon_sym_this_DOTactiveInputIndex, anon_sym_this_DOTactiveScriptPubKey, anon_sym_this_DOTscriptSizeDataPrefix, @@ -4262,7 +4487,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_tx_DOToutputs_DOTlength, anon_sym_tx_DOTversion, anon_sym_tx_DOTlocktime, - STATE(95), 9, + STATE(70), 9, sym_parenthesized, sym_cast, sym_function_call, @@ -4272,79 +4497,81 @@ static const uint16_t ts_small_parse_table[] = { sym_array, sym_literal, sym_nullary_op, - [406] = 36, + [412] = 37, ACTIONS(3), 1, sym_comment, - ACTIONS(9), 1, - sym_identifier, ACTIONS(11), 1, - anon_sym_LBRACE, + sym_identifier, ACTIONS(13), 1, - anon_sym_LPAREN, + anon_sym_LBRACE, ACTIONS(15), 1, - anon_sym_DASH, + anon_sym_LPAREN, ACTIONS(17), 1, - anon_sym_BANG, + anon_sym_DASH, ACTIONS(19), 1, - anon_sym_LBRACK, + anon_sym_BANG, ACTIONS(21), 1, - anon_sym_new, + anon_sym_LBRACK, ACTIONS(23), 1, - sym_output_root, + anon_sym_new, ACTIONS(25), 1, + sym_output_root, + ACTIONS(27), 1, sym_input_root, - ACTIONS(31), 1, + ACTIONS(33), 1, sym_number, - ACTIONS(35), 1, + ACTIONS(37), 1, anon_sym_date, - ACTIONS(41), 1, + ACTIONS(43), 1, anon_sym_this_DOTscriptSize, - ACTIONS(47), 1, - anon_sym_RBRACK, - STATE(43), 1, + ACTIONS(49), 1, + anon_sym_RPAREN, + STATE(56), 1, sym_primary, - STATE(107), 1, + STATE(113), 1, sym_unary, - STATE(109), 1, + STATE(115), 1, sym_postfix, - STATE(114), 1, + STATE(119), 1, sym_factor, - STATE(125), 1, + STATE(126), 1, sym_term, - STATE(150), 1, + STATE(166), 1, sym_comparison, - STATE(182), 1, + STATE(193), 1, sym_equality, - STATE(187), 1, + STATE(196), 1, sym_bit_and, - STATE(194), 1, + STATE(205), 1, sym_bit_xor, - STATE(200), 1, + STATE(212), 1, sym_bit_or, - STATE(201), 1, - sym_base_type, - STATE(204), 1, + STATE(219), 1, sym_logical_and, - STATE(215), 1, + STATE(225), 1, sym_logical_or, - STATE(236), 1, + STATE(240), 1, + sym_builtin_type, + STATE(297), 1, sym_expression, - STATE(318), 1, - sym_type_name, - ACTIONS(29), 2, + STATE(319), 1, + sym_console_parameter, + STATE(366), 1, + sym_cast_type_name, + ACTIONS(31), 2, anon_sym_true, anon_sym_false, - ACTIONS(33), 2, + ACTIONS(35), 2, sym_string_literal, sym_hex_literal, - STATE(39), 2, + STATE(52), 2, sym_unary_op, aux_sym_unary_repeat1, - STATE(80), 3, + STATE(83), 3, sym_boolean_literal, sym_number_literal, sym_date_literal, - ACTIONS(27), 7, + ACTIONS(29), 7, anon_sym_int, anon_sym_bool, anon_sym_string, @@ -4352,7 +4579,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_sig, anon_sym_datasig, anon_sym_byte, - ACTIONS(39), 7, + ACTIONS(41), 7, anon_sym_this_DOTactiveInputIndex, anon_sym_this_DOTactiveScriptPubKey, anon_sym_this_DOTscriptSizeDataPrefix, @@ -4360,7 +4587,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_tx_DOToutputs_DOTlength, anon_sym_tx_DOTversion, anon_sym_tx_DOTlocktime, - STATE(95), 9, + STATE(70), 9, sym_parenthesized, sym_cast, sym_function_call, @@ -4370,79 +4597,79 @@ static const uint16_t ts_small_parse_table[] = { sym_array, sym_literal, sym_nullary_op, - [540] = 36, + [549] = 36, ACTIONS(3), 1, sym_comment, - ACTIONS(9), 1, - sym_identifier, ACTIONS(11), 1, - anon_sym_LBRACE, + sym_identifier, ACTIONS(13), 1, - anon_sym_LPAREN, + anon_sym_LBRACE, ACTIONS(15), 1, - anon_sym_DASH, + anon_sym_LPAREN, ACTIONS(17), 1, - anon_sym_BANG, + anon_sym_DASH, ACTIONS(19), 1, - anon_sym_LBRACK, + anon_sym_BANG, ACTIONS(21), 1, - anon_sym_new, + anon_sym_LBRACK, ACTIONS(23), 1, - sym_output_root, + anon_sym_new, ACTIONS(25), 1, + sym_output_root, + ACTIONS(27), 1, sym_input_root, - ACTIONS(31), 1, + ACTIONS(33), 1, sym_number, - ACTIONS(35), 1, + ACTIONS(37), 1, anon_sym_date, - ACTIONS(41), 1, + ACTIONS(43), 1, anon_sym_this_DOTscriptSize, - ACTIONS(49), 1, - anon_sym_RBRACK, - STATE(43), 1, + ACTIONS(51), 1, + anon_sym_RPAREN, + STATE(56), 1, sym_primary, - STATE(107), 1, + STATE(113), 1, sym_unary, - STATE(109), 1, + STATE(115), 1, sym_postfix, - STATE(114), 1, + STATE(119), 1, sym_factor, - STATE(125), 1, + STATE(126), 1, sym_term, - STATE(150), 1, + STATE(166), 1, sym_comparison, - STATE(182), 1, + STATE(193), 1, sym_equality, - STATE(187), 1, + STATE(196), 1, sym_bit_and, - STATE(194), 1, + STATE(205), 1, sym_bit_xor, - STATE(200), 1, + STATE(212), 1, sym_bit_or, - STATE(201), 1, - sym_base_type, - STATE(204), 1, + STATE(219), 1, sym_logical_and, - STATE(215), 1, + STATE(225), 1, sym_logical_or, - STATE(236), 1, + STATE(240), 1, + sym_builtin_type, + STATE(283), 1, sym_expression, - STATE(318), 1, - sym_type_name, - ACTIONS(29), 2, + STATE(366), 1, + sym_cast_type_name, + ACTIONS(31), 2, anon_sym_true, anon_sym_false, - ACTIONS(33), 2, + ACTIONS(35), 2, sym_string_literal, sym_hex_literal, - STATE(39), 2, + STATE(52), 2, sym_unary_op, aux_sym_unary_repeat1, - STATE(80), 3, + STATE(83), 3, sym_boolean_literal, sym_number_literal, sym_date_literal, - ACTIONS(27), 7, + ACTIONS(29), 7, anon_sym_int, anon_sym_bool, anon_sym_string, @@ -4450,7 +4677,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_sig, anon_sym_datasig, anon_sym_byte, - ACTIONS(39), 7, + ACTIONS(41), 7, anon_sym_this_DOTactiveInputIndex, anon_sym_this_DOTactiveScriptPubKey, anon_sym_this_DOTscriptSizeDataPrefix, @@ -4458,7 +4685,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_tx_DOToutputs_DOTlength, anon_sym_tx_DOTversion, anon_sym_tx_DOTlocktime, - STATE(95), 9, + STATE(70), 9, sym_parenthesized, sym_cast, sym_function_call, @@ -4468,79 +4695,79 @@ static const uint16_t ts_small_parse_table[] = { sym_array, sym_literal, sym_nullary_op, - [674] = 36, + [683] = 36, ACTIONS(3), 1, sym_comment, - ACTIONS(9), 1, - sym_identifier, ACTIONS(11), 1, - anon_sym_LBRACE, + sym_identifier, ACTIONS(13), 1, - anon_sym_LPAREN, + anon_sym_LBRACE, ACTIONS(15), 1, - anon_sym_DASH, + anon_sym_LPAREN, ACTIONS(17), 1, - anon_sym_BANG, + anon_sym_DASH, ACTIONS(19), 1, - anon_sym_LBRACK, + anon_sym_BANG, ACTIONS(21), 1, - anon_sym_new, + anon_sym_LBRACK, ACTIONS(23), 1, - sym_output_root, + anon_sym_new, ACTIONS(25), 1, + sym_output_root, + ACTIONS(27), 1, sym_input_root, - ACTIONS(31), 1, + ACTIONS(33), 1, sym_number, - ACTIONS(35), 1, + ACTIONS(37), 1, anon_sym_date, - ACTIONS(41), 1, + ACTIONS(43), 1, anon_sym_this_DOTscriptSize, - ACTIONS(51), 1, - anon_sym_RPAREN, - STATE(43), 1, + ACTIONS(53), 1, + anon_sym_RBRACK, + STATE(56), 1, sym_primary, - STATE(107), 1, + STATE(113), 1, sym_unary, - STATE(109), 1, + STATE(115), 1, sym_postfix, - STATE(114), 1, + STATE(119), 1, sym_factor, - STATE(125), 1, + STATE(126), 1, sym_term, - STATE(150), 1, + STATE(166), 1, sym_comparison, - STATE(182), 1, + STATE(193), 1, sym_equality, - STATE(187), 1, + STATE(196), 1, sym_bit_and, - STATE(194), 1, + STATE(205), 1, sym_bit_xor, - STATE(200), 1, + STATE(212), 1, sym_bit_or, - STATE(201), 1, - sym_base_type, - STATE(204), 1, + STATE(219), 1, sym_logical_and, - STATE(215), 1, + STATE(225), 1, sym_logical_or, - STATE(236), 1, + STATE(240), 1, + sym_builtin_type, + STATE(278), 1, sym_expression, - STATE(318), 1, - sym_type_name, - ACTIONS(29), 2, + STATE(366), 1, + sym_cast_type_name, + ACTIONS(31), 2, anon_sym_true, anon_sym_false, - ACTIONS(33), 2, + ACTIONS(35), 2, sym_string_literal, sym_hex_literal, - STATE(39), 2, + STATE(52), 2, sym_unary_op, aux_sym_unary_repeat1, - STATE(80), 3, + STATE(83), 3, sym_boolean_literal, sym_number_literal, sym_date_literal, - ACTIONS(27), 7, + ACTIONS(29), 7, anon_sym_int, anon_sym_bool, anon_sym_string, @@ -4548,7 +4775,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_sig, anon_sym_datasig, anon_sym_byte, - ACTIONS(39), 7, + ACTIONS(41), 7, anon_sym_this_DOTactiveInputIndex, anon_sym_this_DOTactiveScriptPubKey, anon_sym_this_DOTscriptSizeDataPrefix, @@ -4556,7 +4783,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_tx_DOToutputs_DOTlength, anon_sym_tx_DOTversion, anon_sym_tx_DOTlocktime, - STATE(95), 9, + STATE(70), 9, sym_parenthesized, sym_cast, sym_function_call, @@ -4566,79 +4793,78 @@ static const uint16_t ts_small_parse_table[] = { sym_array, sym_literal, sym_nullary_op, - [808] = 36, + [817] = 35, ACTIONS(3), 1, sym_comment, - ACTIONS(9), 1, - sym_identifier, ACTIONS(11), 1, - anon_sym_LBRACE, + sym_identifier, ACTIONS(13), 1, - anon_sym_LPAREN, - ACTIONS(15), 1, - anon_sym_DASH, + anon_sym_LBRACE, ACTIONS(17), 1, - anon_sym_BANG, + anon_sym_DASH, ACTIONS(19), 1, - anon_sym_LBRACK, + anon_sym_BANG, ACTIONS(21), 1, - anon_sym_new, + anon_sym_LBRACK, ACTIONS(23), 1, - sym_output_root, + anon_sym_new, ACTIONS(25), 1, + sym_output_root, + ACTIONS(27), 1, sym_input_root, - ACTIONS(31), 1, + ACTIONS(33), 1, sym_number, - ACTIONS(35), 1, + ACTIONS(37), 1, anon_sym_date, - ACTIONS(41), 1, + ACTIONS(43), 1, anon_sym_this_DOTscriptSize, - ACTIONS(53), 1, - anon_sym_RPAREN, - STATE(43), 1, + ACTIONS(55), 1, + anon_sym_LPAREN, + STATE(56), 1, sym_primary, - STATE(107), 1, + STATE(113), 1, sym_unary, - STATE(109), 1, + STATE(115), 1, sym_postfix, - STATE(114), 1, + STATE(119), 1, sym_factor, - STATE(125), 1, + STATE(126), 1, sym_term, - STATE(150), 1, + STATE(166), 1, sym_comparison, - STATE(182), 1, + STATE(193), 1, sym_equality, - STATE(187), 1, + STATE(196), 1, sym_bit_and, - STATE(194), 1, + STATE(205), 1, sym_bit_xor, - STATE(200), 1, + STATE(212), 1, sym_bit_or, - STATE(201), 1, - sym_base_type, - STATE(204), 1, + STATE(219), 1, sym_logical_and, - STATE(215), 1, + STATE(225), 1, sym_logical_or, - STATE(277), 1, - sym_expression, - STATE(318), 1, - sym_type_name, - ACTIONS(29), 2, + STATE(240), 1, + sym_builtin_type, + STATE(366), 1, + sym_cast_type_name, + ACTIONS(31), 2, anon_sym_true, anon_sym_false, - ACTIONS(33), 2, + ACTIONS(35), 2, sym_string_literal, sym_hex_literal, - STATE(39), 2, + STATE(52), 2, sym_unary_op, aux_sym_unary_repeat1, - STATE(80), 3, + STATE(368), 2, + sym_return_expression_list, + sym_expression, + STATE(83), 3, sym_boolean_literal, sym_number_literal, sym_date_literal, - ACTIONS(27), 7, + ACTIONS(29), 7, anon_sym_int, anon_sym_bool, anon_sym_string, @@ -4646,7 +4872,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_sig, anon_sym_datasig, anon_sym_byte, - ACTIONS(39), 7, + ACTIONS(41), 7, anon_sym_this_DOTactiveInputIndex, anon_sym_this_DOTactiveScriptPubKey, anon_sym_this_DOTscriptSizeDataPrefix, @@ -4654,7 +4880,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_tx_DOToutputs_DOTlength, anon_sym_tx_DOTversion, anon_sym_tx_DOTlocktime, - STATE(95), 9, + STATE(70), 9, sym_parenthesized, sym_cast, sym_function_call, @@ -4664,79 +4890,79 @@ static const uint16_t ts_small_parse_table[] = { sym_array, sym_literal, sym_nullary_op, - [942] = 36, + [949] = 36, ACTIONS(3), 1, sym_comment, - ACTIONS(9), 1, - sym_identifier, ACTIONS(11), 1, - anon_sym_LBRACE, + sym_identifier, ACTIONS(13), 1, - anon_sym_LPAREN, + anon_sym_LBRACE, ACTIONS(15), 1, - anon_sym_DASH, + anon_sym_LPAREN, ACTIONS(17), 1, - anon_sym_BANG, + anon_sym_DASH, ACTIONS(19), 1, - anon_sym_LBRACK, + anon_sym_BANG, ACTIONS(21), 1, - anon_sym_new, + anon_sym_LBRACK, ACTIONS(23), 1, - sym_output_root, + anon_sym_new, ACTIONS(25), 1, + sym_output_root, + ACTIONS(27), 1, sym_input_root, - ACTIONS(31), 1, + ACTIONS(33), 1, sym_number, - ACTIONS(35), 1, + ACTIONS(37), 1, anon_sym_date, - ACTIONS(41), 1, + ACTIONS(43), 1, anon_sym_this_DOTscriptSize, - ACTIONS(55), 1, - anon_sym_RPAREN, - STATE(43), 1, + ACTIONS(57), 1, + anon_sym_RBRACK, + STATE(56), 1, sym_primary, - STATE(107), 1, + STATE(113), 1, sym_unary, - STATE(109), 1, + STATE(115), 1, sym_postfix, - STATE(114), 1, + STATE(119), 1, sym_factor, - STATE(125), 1, + STATE(126), 1, sym_term, - STATE(150), 1, + STATE(166), 1, sym_comparison, - STATE(182), 1, + STATE(193), 1, sym_equality, - STATE(187), 1, + STATE(196), 1, sym_bit_and, - STATE(194), 1, + STATE(205), 1, sym_bit_xor, - STATE(200), 1, + STATE(212), 1, sym_bit_or, - STATE(201), 1, - sym_base_type, - STATE(204), 1, + STATE(219), 1, sym_logical_and, - STATE(215), 1, + STATE(225), 1, sym_logical_or, - STATE(236), 1, + STATE(240), 1, + sym_builtin_type, + STATE(259), 1, sym_expression, - STATE(318), 1, - sym_type_name, - ACTIONS(29), 2, + STATE(366), 1, + sym_cast_type_name, + ACTIONS(31), 2, anon_sym_true, anon_sym_false, - ACTIONS(33), 2, + ACTIONS(35), 2, sym_string_literal, sym_hex_literal, - STATE(39), 2, + STATE(52), 2, sym_unary_op, aux_sym_unary_repeat1, - STATE(80), 3, + STATE(83), 3, sym_boolean_literal, sym_number_literal, sym_date_literal, - ACTIONS(27), 7, + ACTIONS(29), 7, anon_sym_int, anon_sym_bool, anon_sym_string, @@ -4744,7 +4970,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_sig, anon_sym_datasig, anon_sym_byte, - ACTIONS(39), 7, + ACTIONS(41), 7, anon_sym_this_DOTactiveInputIndex, anon_sym_this_DOTactiveScriptPubKey, anon_sym_this_DOTscriptSizeDataPrefix, @@ -4752,7 +4978,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_tx_DOToutputs_DOTlength, anon_sym_tx_DOTversion, anon_sym_tx_DOTlocktime, - STATE(95), 9, + STATE(70), 9, sym_parenthesized, sym_cast, sym_function_call, @@ -4762,77 +4988,79 @@ static const uint16_t ts_small_parse_table[] = { sym_array, sym_literal, sym_nullary_op, - [1076] = 35, + [1083] = 36, ACTIONS(3), 1, sym_comment, - ACTIONS(9), 1, - sym_identifier, ACTIONS(11), 1, - anon_sym_LBRACE, + sym_identifier, ACTIONS(13), 1, - anon_sym_LPAREN, + anon_sym_LBRACE, ACTIONS(15), 1, - anon_sym_DASH, + anon_sym_LPAREN, ACTIONS(17), 1, - anon_sym_BANG, + anon_sym_DASH, ACTIONS(19), 1, - anon_sym_LBRACK, + anon_sym_BANG, ACTIONS(21), 1, - anon_sym_new, + anon_sym_LBRACK, ACTIONS(23), 1, - sym_output_root, + anon_sym_new, ACTIONS(25), 1, + sym_output_root, + ACTIONS(27), 1, sym_input_root, - ACTIONS(31), 1, + ACTIONS(33), 1, sym_number, - ACTIONS(35), 1, + ACTIONS(37), 1, anon_sym_date, - ACTIONS(41), 1, + ACTIONS(43), 1, anon_sym_this_DOTscriptSize, - STATE(43), 1, + ACTIONS(59), 1, + anon_sym_RBRACK, + STATE(56), 1, sym_primary, - STATE(107), 1, + STATE(113), 1, sym_unary, - STATE(109), 1, + STATE(115), 1, sym_postfix, - STATE(114), 1, + STATE(119), 1, sym_factor, - STATE(125), 1, + STATE(126), 1, sym_term, - STATE(150), 1, + STATE(166), 1, sym_comparison, - STATE(182), 1, + STATE(193), 1, sym_equality, - STATE(187), 1, + STATE(196), 1, sym_bit_and, - STATE(194), 1, + STATE(205), 1, sym_bit_xor, - STATE(200), 1, + STATE(212), 1, sym_bit_or, - STATE(201), 1, - sym_base_type, - STATE(204), 1, + STATE(219), 1, sym_logical_and, - STATE(215), 1, + STATE(225), 1, sym_logical_or, - STATE(276), 1, + STATE(240), 1, + sym_builtin_type, + STATE(259), 1, sym_expression, - STATE(318), 1, - sym_type_name, - ACTIONS(29), 2, + STATE(366), 1, + sym_cast_type_name, + ACTIONS(31), 2, anon_sym_true, anon_sym_false, - ACTIONS(33), 2, + ACTIONS(35), 2, sym_string_literal, sym_hex_literal, - STATE(39), 2, + STATE(52), 2, sym_unary_op, aux_sym_unary_repeat1, - STATE(80), 3, + STATE(83), 3, sym_boolean_literal, sym_number_literal, sym_date_literal, - ACTIONS(27), 7, + ACTIONS(29), 7, anon_sym_int, anon_sym_bool, anon_sym_string, @@ -4840,7 +5068,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_sig, anon_sym_datasig, anon_sym_byte, - ACTIONS(39), 7, + ACTIONS(41), 7, anon_sym_this_DOTactiveInputIndex, anon_sym_this_DOTactiveScriptPubKey, anon_sym_this_DOTscriptSizeDataPrefix, @@ -4848,7 +5076,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_tx_DOToutputs_DOTlength, anon_sym_tx_DOTversion, anon_sym_tx_DOTlocktime, - STATE(95), 9, + STATE(70), 9, sym_parenthesized, sym_cast, sym_function_call, @@ -4858,77 +5086,79 @@ static const uint16_t ts_small_parse_table[] = { sym_array, sym_literal, sym_nullary_op, - [1207] = 35, + [1217] = 36, ACTIONS(3), 1, sym_comment, - ACTIONS(9), 1, - sym_identifier, ACTIONS(11), 1, - anon_sym_LBRACE, + sym_identifier, ACTIONS(13), 1, - anon_sym_LPAREN, + anon_sym_LBRACE, ACTIONS(15), 1, - anon_sym_DASH, + anon_sym_LPAREN, ACTIONS(17), 1, - anon_sym_BANG, + anon_sym_DASH, ACTIONS(19), 1, - anon_sym_LBRACK, + anon_sym_BANG, ACTIONS(21), 1, - anon_sym_new, + anon_sym_LBRACK, ACTIONS(23), 1, - sym_output_root, + anon_sym_new, ACTIONS(25), 1, + sym_output_root, + ACTIONS(27), 1, sym_input_root, - ACTIONS(31), 1, + ACTIONS(33), 1, sym_number, - ACTIONS(35), 1, + ACTIONS(37), 1, anon_sym_date, - ACTIONS(41), 1, + ACTIONS(43), 1, anon_sym_this_DOTscriptSize, - STATE(43), 1, + ACTIONS(61), 1, + anon_sym_RPAREN, + STATE(56), 1, sym_primary, - STATE(107), 1, + STATE(113), 1, sym_unary, - STATE(109), 1, + STATE(115), 1, sym_postfix, - STATE(114), 1, + STATE(119), 1, sym_factor, - STATE(125), 1, + STATE(126), 1, sym_term, - STATE(150), 1, + STATE(166), 1, sym_comparison, - STATE(182), 1, + STATE(193), 1, sym_equality, - STATE(187), 1, + STATE(196), 1, sym_bit_and, - STATE(194), 1, + STATE(205), 1, sym_bit_xor, - STATE(200), 1, + STATE(212), 1, sym_bit_or, - STATE(201), 1, - sym_base_type, - STATE(204), 1, + STATE(219), 1, sym_logical_and, - STATE(215), 1, + STATE(225), 1, sym_logical_or, - STATE(318), 1, - sym_type_name, - STATE(397), 1, + STATE(240), 1, + sym_builtin_type, + STATE(259), 1, sym_expression, - ACTIONS(29), 2, + STATE(366), 1, + sym_cast_type_name, + ACTIONS(31), 2, anon_sym_true, anon_sym_false, - ACTIONS(33), 2, + ACTIONS(35), 2, sym_string_literal, sym_hex_literal, - STATE(39), 2, + STATE(52), 2, sym_unary_op, aux_sym_unary_repeat1, - STATE(80), 3, + STATE(83), 3, sym_boolean_literal, sym_number_literal, sym_date_literal, - ACTIONS(27), 7, + ACTIONS(29), 7, anon_sym_int, anon_sym_bool, anon_sym_string, @@ -4936,7 +5166,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_sig, anon_sym_datasig, anon_sym_byte, - ACTIONS(39), 7, + ACTIONS(41), 7, anon_sym_this_DOTactiveInputIndex, anon_sym_this_DOTactiveScriptPubKey, anon_sym_this_DOTscriptSizeDataPrefix, @@ -4944,7 +5174,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_tx_DOToutputs_DOTlength, anon_sym_tx_DOTversion, anon_sym_tx_DOTlocktime, - STATE(95), 9, + STATE(70), 9, sym_parenthesized, sym_cast, sym_function_call, @@ -4954,77 +5184,79 @@ static const uint16_t ts_small_parse_table[] = { sym_array, sym_literal, sym_nullary_op, - [1338] = 35, + [1351] = 36, ACTIONS(3), 1, sym_comment, - ACTIONS(9), 1, - sym_identifier, ACTIONS(11), 1, - anon_sym_LBRACE, + sym_identifier, ACTIONS(13), 1, - anon_sym_LPAREN, + anon_sym_LBRACE, ACTIONS(15), 1, - anon_sym_DASH, + anon_sym_LPAREN, ACTIONS(17), 1, - anon_sym_BANG, + anon_sym_DASH, ACTIONS(19), 1, - anon_sym_LBRACK, + anon_sym_BANG, ACTIONS(21), 1, - anon_sym_new, + anon_sym_LBRACK, ACTIONS(23), 1, - sym_output_root, + anon_sym_new, ACTIONS(25), 1, + sym_output_root, + ACTIONS(27), 1, sym_input_root, - ACTIONS(31), 1, + ACTIONS(33), 1, sym_number, - ACTIONS(35), 1, + ACTIONS(37), 1, anon_sym_date, - ACTIONS(41), 1, + ACTIONS(43), 1, anon_sym_this_DOTscriptSize, - STATE(43), 1, + ACTIONS(63), 1, + anon_sym_RPAREN, + STATE(56), 1, sym_primary, - STATE(107), 1, + STATE(113), 1, sym_unary, - STATE(109), 1, + STATE(115), 1, sym_postfix, - STATE(114), 1, + STATE(119), 1, sym_factor, - STATE(125), 1, + STATE(126), 1, sym_term, - STATE(150), 1, + STATE(166), 1, sym_comparison, - STATE(182), 1, + STATE(193), 1, sym_equality, - STATE(187), 1, + STATE(196), 1, sym_bit_and, - STATE(194), 1, + STATE(205), 1, sym_bit_xor, - STATE(200), 1, + STATE(212), 1, sym_bit_or, - STATE(201), 1, - sym_base_type, - STATE(204), 1, + STATE(219), 1, sym_logical_and, - STATE(215), 1, + STATE(225), 1, sym_logical_or, - STATE(318), 1, - sym_type_name, - STATE(401), 1, + STATE(240), 1, + sym_builtin_type, + STATE(310), 1, sym_expression, - ACTIONS(29), 2, + STATE(366), 1, + sym_cast_type_name, + ACTIONS(31), 2, anon_sym_true, anon_sym_false, - ACTIONS(33), 2, + ACTIONS(35), 2, sym_string_literal, sym_hex_literal, - STATE(39), 2, + STATE(52), 2, sym_unary_op, aux_sym_unary_repeat1, - STATE(80), 3, + STATE(83), 3, sym_boolean_literal, sym_number_literal, sym_date_literal, - ACTIONS(27), 7, + ACTIONS(29), 7, anon_sym_int, anon_sym_bool, anon_sym_string, @@ -5032,7 +5264,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_sig, anon_sym_datasig, anon_sym_byte, - ACTIONS(39), 7, + ACTIONS(41), 7, anon_sym_this_DOTactiveInputIndex, anon_sym_this_DOTactiveScriptPubKey, anon_sym_this_DOTscriptSizeDataPrefix, @@ -5040,7 +5272,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_tx_DOToutputs_DOTlength, anon_sym_tx_DOTversion, anon_sym_tx_DOTlocktime, - STATE(95), 9, + STATE(70), 9, sym_parenthesized, sym_cast, sym_function_call, @@ -5050,77 +5282,79 @@ static const uint16_t ts_small_parse_table[] = { sym_array, sym_literal, sym_nullary_op, - [1469] = 35, + [1485] = 36, ACTIONS(3), 1, sym_comment, - ACTIONS(9), 1, - sym_identifier, ACTIONS(11), 1, - anon_sym_LBRACE, + sym_identifier, ACTIONS(13), 1, - anon_sym_LPAREN, + anon_sym_LBRACE, ACTIONS(15), 1, - anon_sym_DASH, + anon_sym_LPAREN, ACTIONS(17), 1, - anon_sym_BANG, + anon_sym_DASH, ACTIONS(19), 1, - anon_sym_LBRACK, + anon_sym_BANG, ACTIONS(21), 1, - anon_sym_new, + anon_sym_LBRACK, ACTIONS(23), 1, - sym_output_root, + anon_sym_new, ACTIONS(25), 1, + sym_output_root, + ACTIONS(27), 1, sym_input_root, - ACTIONS(31), 1, + ACTIONS(33), 1, sym_number, - ACTIONS(35), 1, + ACTIONS(37), 1, anon_sym_date, - ACTIONS(41), 1, + ACTIONS(43), 1, anon_sym_this_DOTscriptSize, - STATE(43), 1, + ACTIONS(65), 1, + anon_sym_RPAREN, + STATE(56), 1, sym_primary, - STATE(107), 1, + STATE(113), 1, sym_unary, - STATE(109), 1, + STATE(115), 1, sym_postfix, - STATE(114), 1, + STATE(119), 1, sym_factor, - STATE(125), 1, + STATE(126), 1, sym_term, - STATE(150), 1, + STATE(166), 1, sym_comparison, - STATE(182), 1, + STATE(193), 1, sym_equality, - STATE(187), 1, + STATE(196), 1, sym_bit_and, - STATE(194), 1, + STATE(205), 1, sym_bit_xor, - STATE(200), 1, + STATE(212), 1, sym_bit_or, - STATE(201), 1, - sym_base_type, - STATE(204), 1, + STATE(219), 1, sym_logical_and, - STATE(215), 1, + STATE(225), 1, sym_logical_or, - STATE(318), 1, - sym_type_name, - STATE(385), 1, + STATE(240), 1, + sym_builtin_type, + STATE(277), 1, sym_expression, - ACTIONS(29), 2, + STATE(366), 1, + sym_cast_type_name, + ACTIONS(31), 2, anon_sym_true, anon_sym_false, - ACTIONS(33), 2, + ACTIONS(35), 2, sym_string_literal, sym_hex_literal, - STATE(39), 2, + STATE(52), 2, sym_unary_op, aux_sym_unary_repeat1, - STATE(80), 3, + STATE(83), 3, sym_boolean_literal, sym_number_literal, sym_date_literal, - ACTIONS(27), 7, + ACTIONS(29), 7, anon_sym_int, anon_sym_bool, anon_sym_string, @@ -5128,7 +5362,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_sig, anon_sym_datasig, anon_sym_byte, - ACTIONS(39), 7, + ACTIONS(41), 7, anon_sym_this_DOTactiveInputIndex, anon_sym_this_DOTactiveScriptPubKey, anon_sym_this_DOTscriptSizeDataPrefix, @@ -5136,7 +5370,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_tx_DOToutputs_DOTlength, anon_sym_tx_DOTversion, anon_sym_tx_DOTlocktime, - STATE(95), 9, + STATE(70), 9, sym_parenthesized, sym_cast, sym_function_call, @@ -5146,77 +5380,79 @@ static const uint16_t ts_small_parse_table[] = { sym_array, sym_literal, sym_nullary_op, - [1600] = 35, + [1619] = 36, ACTIONS(3), 1, sym_comment, - ACTIONS(9), 1, - sym_identifier, ACTIONS(11), 1, - anon_sym_LBRACE, + sym_identifier, ACTIONS(13), 1, - anon_sym_LPAREN, + anon_sym_LBRACE, ACTIONS(15), 1, - anon_sym_DASH, + anon_sym_LPAREN, ACTIONS(17), 1, - anon_sym_BANG, + anon_sym_DASH, ACTIONS(19), 1, - anon_sym_LBRACK, + anon_sym_BANG, ACTIONS(21), 1, - anon_sym_new, + anon_sym_LBRACK, ACTIONS(23), 1, - sym_output_root, + anon_sym_new, ACTIONS(25), 1, + sym_output_root, + ACTIONS(27), 1, sym_input_root, - ACTIONS(31), 1, + ACTIONS(33), 1, sym_number, - ACTIONS(35), 1, + ACTIONS(37), 1, anon_sym_date, - ACTIONS(41), 1, + ACTIONS(43), 1, anon_sym_this_DOTscriptSize, - STATE(43), 1, + ACTIONS(67), 1, + anon_sym_RPAREN, + STATE(56), 1, sym_primary, - STATE(107), 1, + STATE(113), 1, sym_unary, - STATE(109), 1, + STATE(115), 1, sym_postfix, - STATE(114), 1, + STATE(119), 1, sym_factor, - STATE(125), 1, + STATE(126), 1, sym_term, - STATE(150), 1, + STATE(166), 1, sym_comparison, - STATE(182), 1, + STATE(193), 1, sym_equality, - STATE(187), 1, + STATE(196), 1, sym_bit_and, - STATE(194), 1, + STATE(205), 1, sym_bit_xor, - STATE(200), 1, + STATE(212), 1, sym_bit_or, - STATE(201), 1, - sym_base_type, - STATE(204), 1, + STATE(219), 1, sym_logical_and, - STATE(215), 1, + STATE(225), 1, sym_logical_or, - STATE(307), 1, + STATE(240), 1, + sym_builtin_type, + STATE(259), 1, sym_expression, - STATE(318), 1, - sym_type_name, - ACTIONS(29), 2, + STATE(366), 1, + sym_cast_type_name, + ACTIONS(31), 2, anon_sym_true, anon_sym_false, - ACTIONS(33), 2, + ACTIONS(35), 2, sym_string_literal, sym_hex_literal, - STATE(39), 2, + STATE(52), 2, sym_unary_op, aux_sym_unary_repeat1, - STATE(80), 3, + STATE(83), 3, sym_boolean_literal, sym_number_literal, sym_date_literal, - ACTIONS(27), 7, + ACTIONS(29), 7, anon_sym_int, anon_sym_bool, anon_sym_string, @@ -5224,7 +5460,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_sig, anon_sym_datasig, anon_sym_byte, - ACTIONS(39), 7, + ACTIONS(41), 7, anon_sym_this_DOTactiveInputIndex, anon_sym_this_DOTactiveScriptPubKey, anon_sym_this_DOTscriptSizeDataPrefix, @@ -5232,7 +5468,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_tx_DOToutputs_DOTlength, anon_sym_tx_DOTversion, anon_sym_tx_DOTlocktime, - STATE(95), 9, + STATE(70), 9, sym_parenthesized, sym_cast, sym_function_call, @@ -5242,77 +5478,79 @@ static const uint16_t ts_small_parse_table[] = { sym_array, sym_literal, sym_nullary_op, - [1731] = 35, + [1753] = 36, ACTIONS(3), 1, sym_comment, - ACTIONS(9), 1, - sym_identifier, ACTIONS(11), 1, - anon_sym_LBRACE, + sym_identifier, ACTIONS(13), 1, - anon_sym_LPAREN, + anon_sym_LBRACE, ACTIONS(15), 1, - anon_sym_DASH, + anon_sym_LPAREN, ACTIONS(17), 1, - anon_sym_BANG, + anon_sym_DASH, ACTIONS(19), 1, - anon_sym_LBRACK, + anon_sym_BANG, ACTIONS(21), 1, - anon_sym_new, + anon_sym_LBRACK, ACTIONS(23), 1, - sym_output_root, + anon_sym_new, ACTIONS(25), 1, + sym_output_root, + ACTIONS(27), 1, sym_input_root, - ACTIONS(31), 1, + ACTIONS(33), 1, sym_number, - ACTIONS(35), 1, + ACTIONS(37), 1, anon_sym_date, - ACTIONS(41), 1, + ACTIONS(43), 1, anon_sym_this_DOTscriptSize, - STATE(43), 1, + ACTIONS(69), 1, + anon_sym_RPAREN, + STATE(56), 1, sym_primary, - STATE(107), 1, + STATE(113), 1, sym_unary, - STATE(109), 1, + STATE(115), 1, sym_postfix, - STATE(114), 1, + STATE(119), 1, sym_factor, - STATE(125), 1, + STATE(126), 1, sym_term, - STATE(150), 1, + STATE(166), 1, sym_comparison, - STATE(182), 1, + STATE(193), 1, sym_equality, - STATE(187), 1, + STATE(196), 1, sym_bit_and, - STATE(194), 1, + STATE(205), 1, sym_bit_xor, - STATE(200), 1, + STATE(212), 1, sym_bit_or, - STATE(201), 1, - sym_base_type, - STATE(204), 1, + STATE(219), 1, sym_logical_and, - STATE(215), 1, + STATE(225), 1, sym_logical_or, - STATE(318), 1, - sym_type_name, - STATE(333), 1, + STATE(240), 1, + sym_builtin_type, + STATE(259), 1, sym_expression, - ACTIONS(29), 2, + STATE(366), 1, + sym_cast_type_name, + ACTIONS(31), 2, anon_sym_true, anon_sym_false, - ACTIONS(33), 2, + ACTIONS(35), 2, sym_string_literal, sym_hex_literal, - STATE(39), 2, + STATE(52), 2, sym_unary_op, aux_sym_unary_repeat1, - STATE(80), 3, + STATE(83), 3, sym_boolean_literal, sym_number_literal, sym_date_literal, - ACTIONS(27), 7, + ACTIONS(29), 7, anon_sym_int, anon_sym_bool, anon_sym_string, @@ -5320,7 +5558,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_sig, anon_sym_datasig, anon_sym_byte, - ACTIONS(39), 7, + ACTIONS(41), 7, anon_sym_this_DOTactiveInputIndex, anon_sym_this_DOTactiveScriptPubKey, anon_sym_this_DOTscriptSizeDataPrefix, @@ -5328,7 +5566,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_tx_DOToutputs_DOTlength, anon_sym_tx_DOTversion, anon_sym_tx_DOTlocktime, - STATE(95), 9, + STATE(70), 9, sym_parenthesized, sym_cast, sym_function_call, @@ -5338,77 +5576,79 @@ static const uint16_t ts_small_parse_table[] = { sym_array, sym_literal, sym_nullary_op, - [1862] = 35, + [1887] = 36, ACTIONS(3), 1, sym_comment, - ACTIONS(9), 1, - sym_identifier, ACTIONS(11), 1, - anon_sym_LBRACE, + sym_identifier, ACTIONS(13), 1, - anon_sym_LPAREN, + anon_sym_LBRACE, ACTIONS(15), 1, - anon_sym_DASH, + anon_sym_LPAREN, ACTIONS(17), 1, - anon_sym_BANG, + anon_sym_DASH, ACTIONS(19), 1, - anon_sym_LBRACK, + anon_sym_BANG, ACTIONS(21), 1, - anon_sym_new, + anon_sym_LBRACK, ACTIONS(23), 1, - sym_output_root, + anon_sym_new, ACTIONS(25), 1, + sym_output_root, + ACTIONS(27), 1, sym_input_root, - ACTIONS(31), 1, + ACTIONS(33), 1, sym_number, - ACTIONS(35), 1, + ACTIONS(37), 1, anon_sym_date, - ACTIONS(41), 1, + ACTIONS(43), 1, anon_sym_this_DOTscriptSize, - STATE(43), 1, + STATE(56), 1, sym_primary, - STATE(107), 1, + STATE(113), 1, sym_unary, - STATE(109), 1, + STATE(115), 1, sym_postfix, - STATE(114), 1, + STATE(119), 1, sym_factor, - STATE(125), 1, + STATE(126), 1, sym_term, - STATE(150), 1, + STATE(166), 1, sym_comparison, - STATE(182), 1, + STATE(193), 1, sym_equality, - STATE(187), 1, + STATE(196), 1, sym_bit_and, - STATE(194), 1, + STATE(205), 1, sym_bit_xor, - STATE(200), 1, + STATE(212), 1, sym_bit_or, - STATE(201), 1, - sym_base_type, - STATE(204), 1, + STATE(219), 1, sym_logical_and, - STATE(215), 1, + STATE(225), 1, sym_logical_or, - STATE(301), 1, + STATE(240), 1, + sym_builtin_type, + STATE(297), 1, sym_expression, - STATE(318), 1, - sym_type_name, - ACTIONS(29), 2, + STATE(319), 1, + sym_console_parameter, + STATE(366), 1, + sym_cast_type_name, + ACTIONS(31), 2, anon_sym_true, anon_sym_false, - ACTIONS(33), 2, + ACTIONS(35), 2, sym_string_literal, sym_hex_literal, - STATE(39), 2, + STATE(52), 2, sym_unary_op, aux_sym_unary_repeat1, - STATE(80), 3, + STATE(83), 3, sym_boolean_literal, sym_number_literal, sym_date_literal, - ACTIONS(27), 7, + ACTIONS(29), 7, anon_sym_int, anon_sym_bool, anon_sym_string, @@ -5416,7 +5656,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_sig, anon_sym_datasig, anon_sym_byte, - ACTIONS(39), 7, + ACTIONS(41), 7, anon_sym_this_DOTactiveInputIndex, anon_sym_this_DOTactiveScriptPubKey, anon_sym_this_DOTscriptSizeDataPrefix, @@ -5424,7 +5664,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_tx_DOToutputs_DOTlength, anon_sym_tx_DOTversion, anon_sym_tx_DOTlocktime, - STATE(95), 9, + STATE(70), 9, sym_parenthesized, sym_cast, sym_function_call, @@ -5434,77 +5674,79 @@ static const uint16_t ts_small_parse_table[] = { sym_array, sym_literal, sym_nullary_op, - [1993] = 35, + [2021] = 36, ACTIONS(3), 1, sym_comment, - ACTIONS(9), 1, - sym_identifier, ACTIONS(11), 1, - anon_sym_LBRACE, + sym_identifier, ACTIONS(13), 1, - anon_sym_LPAREN, + anon_sym_LBRACE, ACTIONS(15), 1, - anon_sym_DASH, + anon_sym_LPAREN, ACTIONS(17), 1, - anon_sym_BANG, + anon_sym_DASH, ACTIONS(19), 1, - anon_sym_LBRACK, + anon_sym_BANG, ACTIONS(21), 1, - anon_sym_new, + anon_sym_LBRACK, ACTIONS(23), 1, - sym_output_root, + anon_sym_new, ACTIONS(25), 1, + sym_output_root, + ACTIONS(27), 1, sym_input_root, - ACTIONS(31), 1, + ACTIONS(33), 1, sym_number, - ACTIONS(35), 1, + ACTIONS(37), 1, anon_sym_date, - ACTIONS(41), 1, + ACTIONS(43), 1, anon_sym_this_DOTscriptSize, - STATE(43), 1, + ACTIONS(71), 1, + anon_sym_RPAREN, + STATE(56), 1, sym_primary, - STATE(107), 1, + STATE(113), 1, sym_unary, - STATE(109), 1, + STATE(115), 1, sym_postfix, - STATE(114), 1, + STATE(119), 1, sym_factor, - STATE(125), 1, + STATE(126), 1, sym_term, - STATE(150), 1, + STATE(166), 1, sym_comparison, - STATE(182), 1, + STATE(193), 1, sym_equality, - STATE(187), 1, + STATE(196), 1, sym_bit_and, - STATE(194), 1, + STATE(205), 1, sym_bit_xor, - STATE(200), 1, + STATE(212), 1, sym_bit_or, - STATE(201), 1, - sym_base_type, - STATE(204), 1, + STATE(219), 1, sym_logical_and, - STATE(215), 1, + STATE(225), 1, sym_logical_or, - STATE(318), 1, - sym_type_name, - STATE(326), 1, + STATE(240), 1, + sym_builtin_type, + STATE(259), 1, sym_expression, - ACTIONS(29), 2, + STATE(366), 1, + sym_cast_type_name, + ACTIONS(31), 2, anon_sym_true, anon_sym_false, - ACTIONS(33), 2, + ACTIONS(35), 2, sym_string_literal, sym_hex_literal, - STATE(39), 2, + STATE(52), 2, sym_unary_op, aux_sym_unary_repeat1, - STATE(80), 3, + STATE(83), 3, sym_boolean_literal, sym_number_literal, sym_date_literal, - ACTIONS(27), 7, + ACTIONS(29), 7, anon_sym_int, anon_sym_bool, anon_sym_string, @@ -5512,7 +5754,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_sig, anon_sym_datasig, anon_sym_byte, - ACTIONS(39), 7, + ACTIONS(41), 7, anon_sym_this_DOTactiveInputIndex, anon_sym_this_DOTactiveScriptPubKey, anon_sym_this_DOTscriptSizeDataPrefix, @@ -5520,7 +5762,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_tx_DOToutputs_DOTlength, anon_sym_tx_DOTversion, anon_sym_tx_DOTlocktime, - STATE(95), 9, + STATE(70), 9, sym_parenthesized, sym_cast, sym_function_call, @@ -5530,77 +5772,77 @@ static const uint16_t ts_small_parse_table[] = { sym_array, sym_literal, sym_nullary_op, - [2124] = 35, + [2155] = 35, ACTIONS(3), 1, sym_comment, - ACTIONS(9), 1, - sym_identifier, ACTIONS(11), 1, - anon_sym_LBRACE, + sym_identifier, ACTIONS(13), 1, - anon_sym_LPAREN, + anon_sym_LBRACE, ACTIONS(15), 1, - anon_sym_DASH, + anon_sym_LPAREN, ACTIONS(17), 1, - anon_sym_BANG, + anon_sym_DASH, ACTIONS(19), 1, - anon_sym_LBRACK, + anon_sym_BANG, ACTIONS(21), 1, - anon_sym_new, + anon_sym_LBRACK, ACTIONS(23), 1, - sym_output_root, + anon_sym_new, ACTIONS(25), 1, + sym_output_root, + ACTIONS(27), 1, sym_input_root, - ACTIONS(31), 1, + ACTIONS(33), 1, sym_number, - ACTIONS(35), 1, + ACTIONS(37), 1, anon_sym_date, - ACTIONS(41), 1, + ACTIONS(43), 1, anon_sym_this_DOTscriptSize, - STATE(43), 1, + STATE(56), 1, sym_primary, - STATE(107), 1, + STATE(113), 1, sym_unary, - STATE(109), 1, + STATE(115), 1, sym_postfix, - STATE(114), 1, + STATE(119), 1, sym_factor, - STATE(125), 1, + STATE(126), 1, sym_term, - STATE(150), 1, + STATE(166), 1, sym_comparison, - STATE(182), 1, + STATE(193), 1, sym_equality, - STATE(187), 1, + STATE(196), 1, sym_bit_and, - STATE(194), 1, + STATE(205), 1, sym_bit_xor, - STATE(200), 1, + STATE(212), 1, sym_bit_or, - STATE(201), 1, - sym_base_type, - STATE(204), 1, + STATE(219), 1, sym_logical_and, - STATE(215), 1, + STATE(225), 1, sym_logical_or, - STATE(318), 1, - sym_type_name, - STATE(328), 1, + STATE(240), 1, + sym_builtin_type, + STATE(366), 1, + sym_cast_type_name, + STATE(396), 1, sym_expression, - ACTIONS(29), 2, + ACTIONS(31), 2, anon_sym_true, anon_sym_false, - ACTIONS(33), 2, + ACTIONS(35), 2, sym_string_literal, sym_hex_literal, - STATE(39), 2, + STATE(52), 2, sym_unary_op, aux_sym_unary_repeat1, - STATE(80), 3, + STATE(83), 3, sym_boolean_literal, sym_number_literal, sym_date_literal, - ACTIONS(27), 7, + ACTIONS(29), 7, anon_sym_int, anon_sym_bool, anon_sym_string, @@ -5608,7 +5850,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_sig, anon_sym_datasig, anon_sym_byte, - ACTIONS(39), 7, + ACTIONS(41), 7, anon_sym_this_DOTactiveInputIndex, anon_sym_this_DOTactiveScriptPubKey, anon_sym_this_DOTscriptSizeDataPrefix, @@ -5616,7 +5858,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_tx_DOToutputs_DOTlength, anon_sym_tx_DOTversion, anon_sym_tx_DOTlocktime, - STATE(95), 9, + STATE(70), 9, sym_parenthesized, sym_cast, sym_function_call, @@ -5626,77 +5868,77 @@ static const uint16_t ts_small_parse_table[] = { sym_array, sym_literal, sym_nullary_op, - [2255] = 35, + [2286] = 35, ACTIONS(3), 1, sym_comment, - ACTIONS(9), 1, - sym_identifier, ACTIONS(11), 1, - anon_sym_LBRACE, + sym_identifier, ACTIONS(13), 1, - anon_sym_LPAREN, + anon_sym_LBRACE, ACTIONS(15), 1, - anon_sym_DASH, + anon_sym_LPAREN, ACTIONS(17), 1, - anon_sym_BANG, + anon_sym_DASH, ACTIONS(19), 1, - anon_sym_LBRACK, + anon_sym_BANG, ACTIONS(21), 1, - anon_sym_new, + anon_sym_LBRACK, ACTIONS(23), 1, - sym_output_root, + anon_sym_new, ACTIONS(25), 1, + sym_output_root, + ACTIONS(27), 1, sym_input_root, - ACTIONS(31), 1, + ACTIONS(33), 1, sym_number, - ACTIONS(35), 1, + ACTIONS(37), 1, anon_sym_date, - ACTIONS(41), 1, + ACTIONS(43), 1, anon_sym_this_DOTscriptSize, - STATE(43), 1, + STATE(56), 1, sym_primary, - STATE(107), 1, + STATE(113), 1, sym_unary, - STATE(109), 1, + STATE(115), 1, sym_postfix, - STATE(114), 1, + STATE(119), 1, sym_factor, - STATE(125), 1, + STATE(126), 1, sym_term, - STATE(150), 1, + STATE(166), 1, sym_comparison, - STATE(182), 1, + STATE(193), 1, sym_equality, - STATE(187), 1, + STATE(196), 1, sym_bit_and, - STATE(194), 1, + STATE(205), 1, sym_bit_xor, - STATE(200), 1, + STATE(212), 1, sym_bit_or, - STATE(201), 1, - sym_base_type, - STATE(204), 1, + STATE(219), 1, sym_logical_and, - STATE(215), 1, + STATE(225), 1, sym_logical_or, - STATE(308), 1, + STATE(240), 1, + sym_builtin_type, + STATE(366), 1, + sym_cast_type_name, + STATE(443), 1, sym_expression, - STATE(318), 1, - sym_type_name, - ACTIONS(29), 2, + ACTIONS(31), 2, anon_sym_true, anon_sym_false, - ACTIONS(33), 2, + ACTIONS(35), 2, sym_string_literal, sym_hex_literal, - STATE(39), 2, + STATE(52), 2, sym_unary_op, aux_sym_unary_repeat1, - STATE(80), 3, + STATE(83), 3, sym_boolean_literal, sym_number_literal, sym_date_literal, - ACTIONS(27), 7, + ACTIONS(29), 7, anon_sym_int, anon_sym_bool, anon_sym_string, @@ -5704,7 +5946,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_sig, anon_sym_datasig, anon_sym_byte, - ACTIONS(39), 7, + ACTIONS(41), 7, anon_sym_this_DOTactiveInputIndex, anon_sym_this_DOTactiveScriptPubKey, anon_sym_this_DOTscriptSizeDataPrefix, @@ -5712,7 +5954,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_tx_DOToutputs_DOTlength, anon_sym_tx_DOTversion, anon_sym_tx_DOTlocktime, - STATE(95), 9, + STATE(70), 9, sym_parenthesized, sym_cast, sym_function_call, @@ -5722,77 +5964,77 @@ static const uint16_t ts_small_parse_table[] = { sym_array, sym_literal, sym_nullary_op, - [2386] = 35, + [2417] = 35, ACTIONS(3), 1, sym_comment, - ACTIONS(9), 1, - sym_identifier, ACTIONS(11), 1, - anon_sym_LBRACE, + sym_identifier, ACTIONS(13), 1, - anon_sym_LPAREN, + anon_sym_LBRACE, ACTIONS(15), 1, - anon_sym_DASH, + anon_sym_LPAREN, ACTIONS(17), 1, - anon_sym_BANG, + anon_sym_DASH, ACTIONS(19), 1, - anon_sym_LBRACK, + anon_sym_BANG, ACTIONS(21), 1, - anon_sym_new, + anon_sym_LBRACK, ACTIONS(23), 1, - sym_output_root, + anon_sym_new, ACTIONS(25), 1, + sym_output_root, + ACTIONS(27), 1, sym_input_root, - ACTIONS(31), 1, + ACTIONS(33), 1, sym_number, - ACTIONS(35), 1, + ACTIONS(37), 1, anon_sym_date, - ACTIONS(41), 1, + ACTIONS(43), 1, anon_sym_this_DOTscriptSize, - STATE(43), 1, + STATE(56), 1, sym_primary, - STATE(107), 1, + STATE(113), 1, sym_unary, - STATE(109), 1, + STATE(115), 1, sym_postfix, - STATE(114), 1, + STATE(119), 1, sym_factor, - STATE(125), 1, + STATE(126), 1, sym_term, - STATE(150), 1, + STATE(166), 1, sym_comparison, - STATE(182), 1, + STATE(193), 1, sym_equality, - STATE(187), 1, + STATE(196), 1, sym_bit_and, - STATE(194), 1, + STATE(205), 1, sym_bit_xor, - STATE(200), 1, + STATE(212), 1, sym_bit_or, - STATE(201), 1, - sym_base_type, - STATE(204), 1, + STATE(219), 1, sym_logical_and, - STATE(215), 1, + STATE(225), 1, sym_logical_or, - STATE(318), 1, - sym_type_name, - STATE(344), 1, + STATE(240), 1, + sym_builtin_type, + STATE(303), 1, sym_expression, - ACTIONS(29), 2, + STATE(366), 1, + sym_cast_type_name, + ACTIONS(31), 2, anon_sym_true, anon_sym_false, - ACTIONS(33), 2, + ACTIONS(35), 2, sym_string_literal, sym_hex_literal, - STATE(39), 2, + STATE(52), 2, sym_unary_op, aux_sym_unary_repeat1, - STATE(80), 3, + STATE(83), 3, sym_boolean_literal, sym_number_literal, sym_date_literal, - ACTIONS(27), 7, + ACTIONS(29), 7, anon_sym_int, anon_sym_bool, anon_sym_string, @@ -5800,7 +6042,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_sig, anon_sym_datasig, anon_sym_byte, - ACTIONS(39), 7, + ACTIONS(41), 7, anon_sym_this_DOTactiveInputIndex, anon_sym_this_DOTactiveScriptPubKey, anon_sym_this_DOTscriptSizeDataPrefix, @@ -5808,7 +6050,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_tx_DOToutputs_DOTlength, anon_sym_tx_DOTversion, anon_sym_tx_DOTlocktime, - STATE(95), 9, + STATE(70), 9, sym_parenthesized, sym_cast, sym_function_call, @@ -5818,77 +6060,77 @@ static const uint16_t ts_small_parse_table[] = { sym_array, sym_literal, sym_nullary_op, - [2517] = 35, + [2548] = 35, ACTIONS(3), 1, sym_comment, - ACTIONS(9), 1, - sym_identifier, ACTIONS(11), 1, - anon_sym_LBRACE, + sym_identifier, ACTIONS(13), 1, - anon_sym_LPAREN, + anon_sym_LBRACE, ACTIONS(15), 1, - anon_sym_DASH, + anon_sym_LPAREN, ACTIONS(17), 1, - anon_sym_BANG, + anon_sym_DASH, ACTIONS(19), 1, - anon_sym_LBRACK, + anon_sym_BANG, ACTIONS(21), 1, - anon_sym_new, + anon_sym_LBRACK, ACTIONS(23), 1, - sym_output_root, + anon_sym_new, ACTIONS(25), 1, + sym_output_root, + ACTIONS(27), 1, sym_input_root, - ACTIONS(31), 1, + ACTIONS(33), 1, sym_number, - ACTIONS(35), 1, + ACTIONS(37), 1, anon_sym_date, - ACTIONS(41), 1, + ACTIONS(43), 1, anon_sym_this_DOTscriptSize, - STATE(43), 1, + STATE(56), 1, sym_primary, - STATE(107), 1, + STATE(113), 1, sym_unary, - STATE(109), 1, + STATE(115), 1, sym_postfix, - STATE(114), 1, + STATE(119), 1, sym_factor, - STATE(125), 1, + STATE(126), 1, sym_term, - STATE(150), 1, + STATE(166), 1, sym_comparison, - STATE(182), 1, + STATE(193), 1, sym_equality, - STATE(187), 1, + STATE(196), 1, sym_bit_and, - STATE(194), 1, + STATE(205), 1, sym_bit_xor, - STATE(200), 1, + STATE(212), 1, sym_bit_or, - STATE(201), 1, - sym_base_type, - STATE(204), 1, + STATE(219), 1, sym_logical_and, - STATE(215), 1, + STATE(225), 1, sym_logical_or, - STATE(285), 1, + STATE(240), 1, + sym_builtin_type, + STATE(343), 1, sym_expression, - STATE(318), 1, - sym_type_name, - ACTIONS(29), 2, + STATE(366), 1, + sym_cast_type_name, + ACTIONS(31), 2, anon_sym_true, anon_sym_false, - ACTIONS(33), 2, + ACTIONS(35), 2, sym_string_literal, sym_hex_literal, - STATE(39), 2, + STATE(52), 2, sym_unary_op, aux_sym_unary_repeat1, - STATE(80), 3, + STATE(83), 3, sym_boolean_literal, sym_number_literal, sym_date_literal, - ACTIONS(27), 7, + ACTIONS(29), 7, anon_sym_int, anon_sym_bool, anon_sym_string, @@ -5896,7 +6138,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_sig, anon_sym_datasig, anon_sym_byte, - ACTIONS(39), 7, + ACTIONS(41), 7, anon_sym_this_DOTactiveInputIndex, anon_sym_this_DOTactiveScriptPubKey, anon_sym_this_DOTscriptSizeDataPrefix, @@ -5904,7 +6146,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_tx_DOToutputs_DOTlength, anon_sym_tx_DOTversion, anon_sym_tx_DOTlocktime, - STATE(95), 9, + STATE(70), 9, sym_parenthesized, sym_cast, sym_function_call, @@ -5914,77 +6156,77 @@ static const uint16_t ts_small_parse_table[] = { sym_array, sym_literal, sym_nullary_op, - [2648] = 35, + [2679] = 35, ACTIONS(3), 1, sym_comment, - ACTIONS(9), 1, - sym_identifier, ACTIONS(11), 1, - anon_sym_LBRACE, + sym_identifier, ACTIONS(13), 1, - anon_sym_LPAREN, + anon_sym_LBRACE, ACTIONS(15), 1, - anon_sym_DASH, + anon_sym_LPAREN, ACTIONS(17), 1, - anon_sym_BANG, + anon_sym_DASH, ACTIONS(19), 1, - anon_sym_LBRACK, + anon_sym_BANG, ACTIONS(21), 1, - anon_sym_new, + anon_sym_LBRACK, ACTIONS(23), 1, - sym_output_root, + anon_sym_new, ACTIONS(25), 1, + sym_output_root, + ACTIONS(27), 1, sym_input_root, - ACTIONS(31), 1, + ACTIONS(33), 1, sym_number, - ACTIONS(35), 1, + ACTIONS(37), 1, anon_sym_date, - ACTIONS(41), 1, + ACTIONS(43), 1, anon_sym_this_DOTscriptSize, - STATE(43), 1, + STATE(56), 1, sym_primary, - STATE(107), 1, + STATE(113), 1, sym_unary, - STATE(109), 1, + STATE(115), 1, sym_postfix, - STATE(114), 1, + STATE(119), 1, sym_factor, - STATE(125), 1, + STATE(126), 1, sym_term, - STATE(150), 1, + STATE(166), 1, sym_comparison, - STATE(182), 1, + STATE(193), 1, sym_equality, - STATE(187), 1, + STATE(196), 1, sym_bit_and, - STATE(194), 1, + STATE(205), 1, sym_bit_xor, - STATE(200), 1, + STATE(212), 1, sym_bit_or, - STATE(201), 1, - sym_base_type, - STATE(204), 1, + STATE(219), 1, sym_logical_and, - STATE(215), 1, + STATE(225), 1, sym_logical_or, - STATE(318), 1, - sym_type_name, - STATE(345), 1, + STATE(240), 1, + sym_builtin_type, + STATE(366), 1, + sym_cast_type_name, + STATE(442), 1, sym_expression, - ACTIONS(29), 2, + ACTIONS(31), 2, anon_sym_true, anon_sym_false, - ACTIONS(33), 2, + ACTIONS(35), 2, sym_string_literal, sym_hex_literal, - STATE(39), 2, + STATE(52), 2, sym_unary_op, aux_sym_unary_repeat1, - STATE(80), 3, + STATE(83), 3, sym_boolean_literal, sym_number_literal, sym_date_literal, - ACTIONS(27), 7, + ACTIONS(29), 7, anon_sym_int, anon_sym_bool, anon_sym_string, @@ -5992,7 +6234,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_sig, anon_sym_datasig, anon_sym_byte, - ACTIONS(39), 7, + ACTIONS(41), 7, anon_sym_this_DOTactiveInputIndex, anon_sym_this_DOTactiveScriptPubKey, anon_sym_this_DOTscriptSizeDataPrefix, @@ -6000,7 +6242,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_tx_DOToutputs_DOTlength, anon_sym_tx_DOTversion, anon_sym_tx_DOTlocktime, - STATE(95), 9, + STATE(70), 9, sym_parenthesized, sym_cast, sym_function_call, @@ -6010,77 +6252,77 @@ static const uint16_t ts_small_parse_table[] = { sym_array, sym_literal, sym_nullary_op, - [2779] = 35, + [2810] = 35, ACTIONS(3), 1, sym_comment, - ACTIONS(9), 1, - sym_identifier, ACTIONS(11), 1, - anon_sym_LBRACE, + sym_identifier, ACTIONS(13), 1, - anon_sym_LPAREN, + anon_sym_LBRACE, ACTIONS(15), 1, - anon_sym_DASH, + anon_sym_LPAREN, ACTIONS(17), 1, - anon_sym_BANG, + anon_sym_DASH, ACTIONS(19), 1, - anon_sym_LBRACK, + anon_sym_BANG, ACTIONS(21), 1, - anon_sym_new, + anon_sym_LBRACK, ACTIONS(23), 1, - sym_output_root, + anon_sym_new, ACTIONS(25), 1, + sym_output_root, + ACTIONS(27), 1, sym_input_root, - ACTIONS(31), 1, + ACTIONS(33), 1, sym_number, - ACTIONS(35), 1, + ACTIONS(37), 1, anon_sym_date, - ACTIONS(41), 1, + ACTIONS(43), 1, anon_sym_this_DOTscriptSize, - STATE(43), 1, + STATE(56), 1, sym_primary, - STATE(107), 1, + STATE(113), 1, sym_unary, - STATE(109), 1, + STATE(115), 1, sym_postfix, - STATE(114), 1, + STATE(119), 1, sym_factor, - STATE(125), 1, + STATE(126), 1, sym_term, - STATE(150), 1, + STATE(166), 1, sym_comparison, - STATE(182), 1, + STATE(193), 1, sym_equality, - STATE(187), 1, + STATE(196), 1, sym_bit_and, - STATE(194), 1, + STATE(205), 1, sym_bit_xor, - STATE(200), 1, + STATE(212), 1, sym_bit_or, - STATE(201), 1, - sym_base_type, - STATE(204), 1, + STATE(219), 1, sym_logical_and, - STATE(215), 1, + STATE(225), 1, sym_logical_or, - STATE(318), 1, - sym_type_name, - STATE(352), 1, + STATE(240), 1, + sym_builtin_type, + STATE(351), 1, sym_expression, - ACTIONS(29), 2, + STATE(366), 1, + sym_cast_type_name, + ACTIONS(31), 2, anon_sym_true, anon_sym_false, - ACTIONS(33), 2, + ACTIONS(35), 2, sym_string_literal, sym_hex_literal, - STATE(39), 2, + STATE(52), 2, sym_unary_op, aux_sym_unary_repeat1, - STATE(80), 3, + STATE(83), 3, sym_boolean_literal, sym_number_literal, sym_date_literal, - ACTIONS(27), 7, + ACTIONS(29), 7, anon_sym_int, anon_sym_bool, anon_sym_string, @@ -6088,7 +6330,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_sig, anon_sym_datasig, anon_sym_byte, - ACTIONS(39), 7, + ACTIONS(41), 7, anon_sym_this_DOTactiveInputIndex, anon_sym_this_DOTactiveScriptPubKey, anon_sym_this_DOTscriptSizeDataPrefix, @@ -6096,7 +6338,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_tx_DOToutputs_DOTlength, anon_sym_tx_DOTversion, anon_sym_tx_DOTlocktime, - STATE(95), 9, + STATE(70), 9, sym_parenthesized, sym_cast, sym_function_call, @@ -6106,77 +6348,77 @@ static const uint16_t ts_small_parse_table[] = { sym_array, sym_literal, sym_nullary_op, - [2910] = 35, + [2941] = 35, ACTIONS(3), 1, sym_comment, - ACTIONS(9), 1, - sym_identifier, ACTIONS(11), 1, - anon_sym_LBRACE, + sym_identifier, ACTIONS(13), 1, - anon_sym_LPAREN, + anon_sym_LBRACE, ACTIONS(15), 1, - anon_sym_DASH, + anon_sym_LPAREN, ACTIONS(17), 1, - anon_sym_BANG, + anon_sym_DASH, ACTIONS(19), 1, - anon_sym_LBRACK, + anon_sym_BANG, ACTIONS(21), 1, - anon_sym_new, + anon_sym_LBRACK, ACTIONS(23), 1, - sym_output_root, + anon_sym_new, ACTIONS(25), 1, + sym_output_root, + ACTIONS(27), 1, sym_input_root, - ACTIONS(31), 1, + ACTIONS(33), 1, sym_number, - ACTIONS(35), 1, + ACTIONS(37), 1, anon_sym_date, - ACTIONS(41), 1, + ACTIONS(43), 1, anon_sym_this_DOTscriptSize, - STATE(43), 1, + STATE(56), 1, sym_primary, - STATE(107), 1, + STATE(113), 1, sym_unary, - STATE(109), 1, + STATE(115), 1, sym_postfix, - STATE(114), 1, + STATE(119), 1, sym_factor, - STATE(125), 1, + STATE(126), 1, sym_term, - STATE(150), 1, + STATE(166), 1, sym_comparison, - STATE(182), 1, + STATE(193), 1, sym_equality, - STATE(187), 1, + STATE(196), 1, sym_bit_and, - STATE(194), 1, + STATE(205), 1, sym_bit_xor, - STATE(200), 1, + STATE(212), 1, sym_bit_or, - STATE(201), 1, - sym_base_type, - STATE(204), 1, + STATE(219), 1, sym_logical_and, - STATE(215), 1, + STATE(225), 1, sym_logical_or, - STATE(236), 1, + STATE(240), 1, + sym_builtin_type, + STATE(307), 1, sym_expression, - STATE(318), 1, - sym_type_name, - ACTIONS(29), 2, + STATE(366), 1, + sym_cast_type_name, + ACTIONS(31), 2, anon_sym_true, anon_sym_false, - ACTIONS(33), 2, + ACTIONS(35), 2, sym_string_literal, sym_hex_literal, - STATE(39), 2, + STATE(52), 2, sym_unary_op, aux_sym_unary_repeat1, - STATE(80), 3, + STATE(83), 3, sym_boolean_literal, sym_number_literal, sym_date_literal, - ACTIONS(27), 7, + ACTIONS(29), 7, anon_sym_int, anon_sym_bool, anon_sym_string, @@ -6184,7 +6426,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_sig, anon_sym_datasig, anon_sym_byte, - ACTIONS(39), 7, + ACTIONS(41), 7, anon_sym_this_DOTactiveInputIndex, anon_sym_this_DOTactiveScriptPubKey, anon_sym_this_DOTscriptSizeDataPrefix, @@ -6192,7 +6434,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_tx_DOToutputs_DOTlength, anon_sym_tx_DOTversion, anon_sym_tx_DOTlocktime, - STATE(95), 9, + STATE(70), 9, sym_parenthesized, sym_cast, sym_function_call, @@ -6202,77 +6444,77 @@ static const uint16_t ts_small_parse_table[] = { sym_array, sym_literal, sym_nullary_op, - [3041] = 35, + [3072] = 35, ACTIONS(3), 1, sym_comment, - ACTIONS(9), 1, - sym_identifier, ACTIONS(11), 1, - anon_sym_LBRACE, + sym_identifier, ACTIONS(13), 1, - anon_sym_LPAREN, + anon_sym_LBRACE, ACTIONS(15), 1, - anon_sym_DASH, + anon_sym_LPAREN, ACTIONS(17), 1, - anon_sym_BANG, + anon_sym_DASH, ACTIONS(19), 1, - anon_sym_LBRACK, + anon_sym_BANG, ACTIONS(21), 1, - anon_sym_new, + anon_sym_LBRACK, ACTIONS(23), 1, - sym_output_root, + anon_sym_new, ACTIONS(25), 1, + sym_output_root, + ACTIONS(27), 1, sym_input_root, - ACTIONS(31), 1, + ACTIONS(33), 1, sym_number, - ACTIONS(35), 1, + ACTIONS(37), 1, anon_sym_date, - ACTIONS(41), 1, + ACTIONS(43), 1, anon_sym_this_DOTscriptSize, - STATE(43), 1, + STATE(56), 1, sym_primary, - STATE(107), 1, + STATE(113), 1, sym_unary, - STATE(109), 1, + STATE(115), 1, sym_postfix, - STATE(114), 1, + STATE(119), 1, sym_factor, - STATE(125), 1, + STATE(126), 1, sym_term, - STATE(150), 1, + STATE(166), 1, sym_comparison, - STATE(182), 1, + STATE(193), 1, sym_equality, - STATE(187), 1, + STATE(196), 1, sym_bit_and, - STATE(194), 1, + STATE(205), 1, sym_bit_xor, - STATE(200), 1, + STATE(212), 1, sym_bit_or, - STATE(201), 1, - sym_base_type, - STATE(204), 1, + STATE(219), 1, sym_logical_and, - STATE(215), 1, + STATE(225), 1, sym_logical_or, - STATE(313), 1, + STATE(240), 1, + sym_builtin_type, + STATE(366), 1, + sym_cast_type_name, + STATE(407), 1, sym_expression, - STATE(318), 1, - sym_type_name, - ACTIONS(29), 2, + ACTIONS(31), 2, anon_sym_true, anon_sym_false, - ACTIONS(33), 2, + ACTIONS(35), 2, sym_string_literal, sym_hex_literal, - STATE(39), 2, + STATE(52), 2, sym_unary_op, aux_sym_unary_repeat1, - STATE(80), 3, + STATE(83), 3, sym_boolean_literal, sym_number_literal, sym_date_literal, - ACTIONS(27), 7, + ACTIONS(29), 7, anon_sym_int, anon_sym_bool, anon_sym_string, @@ -6280,7 +6522,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_sig, anon_sym_datasig, anon_sym_byte, - ACTIONS(39), 7, + ACTIONS(41), 7, anon_sym_this_DOTactiveInputIndex, anon_sym_this_DOTactiveScriptPubKey, anon_sym_this_DOTscriptSizeDataPrefix, @@ -6288,7 +6530,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_tx_DOToutputs_DOTlength, anon_sym_tx_DOTversion, anon_sym_tx_DOTlocktime, - STATE(95), 9, + STATE(70), 9, sym_parenthesized, sym_cast, sym_function_call, @@ -6298,77 +6540,77 @@ static const uint16_t ts_small_parse_table[] = { sym_array, sym_literal, sym_nullary_op, - [3172] = 35, + [3203] = 35, ACTIONS(3), 1, sym_comment, - ACTIONS(9), 1, - sym_identifier, ACTIONS(11), 1, - anon_sym_LBRACE, + sym_identifier, ACTIONS(13), 1, - anon_sym_LPAREN, + anon_sym_LBRACE, ACTIONS(15), 1, - anon_sym_DASH, + anon_sym_LPAREN, ACTIONS(17), 1, - anon_sym_BANG, + anon_sym_DASH, ACTIONS(19), 1, - anon_sym_LBRACK, + anon_sym_BANG, ACTIONS(21), 1, - anon_sym_new, + anon_sym_LBRACK, ACTIONS(23), 1, - sym_output_root, + anon_sym_new, ACTIONS(25), 1, + sym_output_root, + ACTIONS(27), 1, sym_input_root, - ACTIONS(31), 1, + ACTIONS(33), 1, sym_number, - ACTIONS(35), 1, + ACTIONS(37), 1, anon_sym_date, - ACTIONS(41), 1, + ACTIONS(43), 1, anon_sym_this_DOTscriptSize, - STATE(43), 1, + STATE(56), 1, sym_primary, - STATE(107), 1, + STATE(113), 1, sym_unary, - STATE(109), 1, + STATE(115), 1, sym_postfix, - STATE(114), 1, + STATE(119), 1, sym_factor, - STATE(125), 1, + STATE(126), 1, sym_term, - STATE(150), 1, + STATE(166), 1, sym_comparison, - STATE(182), 1, + STATE(193), 1, sym_equality, - STATE(187), 1, + STATE(196), 1, sym_bit_and, - STATE(194), 1, + STATE(205), 1, sym_bit_xor, - STATE(200), 1, + STATE(212), 1, sym_bit_or, - STATE(201), 1, - sym_base_type, - STATE(204), 1, + STATE(219), 1, sym_logical_and, - STATE(215), 1, + STATE(225), 1, sym_logical_or, - STATE(318), 1, - sym_type_name, - STATE(356), 1, + STATE(240), 1, + sym_builtin_type, + STATE(366), 1, + sym_cast_type_name, + STATE(409), 1, sym_expression, - ACTIONS(29), 2, + ACTIONS(31), 2, anon_sym_true, anon_sym_false, - ACTIONS(33), 2, + ACTIONS(35), 2, sym_string_literal, sym_hex_literal, - STATE(39), 2, + STATE(52), 2, sym_unary_op, aux_sym_unary_repeat1, - STATE(80), 3, + STATE(83), 3, sym_boolean_literal, sym_number_literal, sym_date_literal, - ACTIONS(27), 7, + ACTIONS(29), 7, anon_sym_int, anon_sym_bool, anon_sym_string, @@ -6376,7 +6618,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_sig, anon_sym_datasig, anon_sym_byte, - ACTIONS(39), 7, + ACTIONS(41), 7, anon_sym_this_DOTactiveInputIndex, anon_sym_this_DOTactiveScriptPubKey, anon_sym_this_DOTscriptSizeDataPrefix, @@ -6384,7 +6626,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_tx_DOToutputs_DOTlength, anon_sym_tx_DOTversion, anon_sym_tx_DOTlocktime, - STATE(95), 9, + STATE(70), 9, sym_parenthesized, sym_cast, sym_function_call, @@ -6394,77 +6636,77 @@ static const uint16_t ts_small_parse_table[] = { sym_array, sym_literal, sym_nullary_op, - [3303] = 35, + [3334] = 35, ACTIONS(3), 1, sym_comment, - ACTIONS(9), 1, - sym_identifier, ACTIONS(11), 1, - anon_sym_LBRACE, + sym_identifier, ACTIONS(13), 1, - anon_sym_LPAREN, + anon_sym_LBRACE, ACTIONS(15), 1, - anon_sym_DASH, + anon_sym_LPAREN, ACTIONS(17), 1, - anon_sym_BANG, + anon_sym_DASH, ACTIONS(19), 1, - anon_sym_LBRACK, + anon_sym_BANG, ACTIONS(21), 1, - anon_sym_new, + anon_sym_LBRACK, ACTIONS(23), 1, - sym_output_root, + anon_sym_new, ACTIONS(25), 1, + sym_output_root, + ACTIONS(27), 1, sym_input_root, - ACTIONS(31), 1, + ACTIONS(33), 1, sym_number, - ACTIONS(35), 1, + ACTIONS(37), 1, anon_sym_date, - ACTIONS(41), 1, + ACTIONS(43), 1, anon_sym_this_DOTscriptSize, - STATE(43), 1, + STATE(56), 1, sym_primary, - STATE(107), 1, + STATE(113), 1, sym_unary, - STATE(109), 1, + STATE(115), 1, sym_postfix, - STATE(114), 1, + STATE(119), 1, sym_factor, - STATE(125), 1, + STATE(126), 1, sym_term, - STATE(150), 1, + STATE(166), 1, sym_comparison, - STATE(182), 1, + STATE(193), 1, sym_equality, - STATE(187), 1, + STATE(196), 1, sym_bit_and, - STATE(194), 1, + STATE(205), 1, sym_bit_xor, - STATE(200), 1, + STATE(212), 1, sym_bit_or, - STATE(201), 1, - sym_base_type, - STATE(204), 1, + STATE(219), 1, sym_logical_and, - STATE(215), 1, + STATE(225), 1, sym_logical_or, - STATE(318), 1, - sym_type_name, - STATE(389), 1, + STATE(240), 1, + sym_builtin_type, + STATE(355), 1, sym_expression, - ACTIONS(29), 2, + STATE(366), 1, + sym_cast_type_name, + ACTIONS(31), 2, anon_sym_true, anon_sym_false, - ACTIONS(33), 2, + ACTIONS(35), 2, sym_string_literal, sym_hex_literal, - STATE(39), 2, + STATE(52), 2, sym_unary_op, aux_sym_unary_repeat1, - STATE(80), 3, + STATE(83), 3, sym_boolean_literal, sym_number_literal, sym_date_literal, - ACTIONS(27), 7, + ACTIONS(29), 7, anon_sym_int, anon_sym_bool, anon_sym_string, @@ -6472,7 +6714,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_sig, anon_sym_datasig, anon_sym_byte, - ACTIONS(39), 7, + ACTIONS(41), 7, anon_sym_this_DOTactiveInputIndex, anon_sym_this_DOTactiveScriptPubKey, anon_sym_this_DOTscriptSizeDataPrefix, @@ -6480,7 +6722,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_tx_DOToutputs_DOTlength, anon_sym_tx_DOTversion, anon_sym_tx_DOTlocktime, - STATE(95), 9, + STATE(70), 9, sym_parenthesized, sym_cast, sym_function_call, @@ -6490,77 +6732,77 @@ static const uint16_t ts_small_parse_table[] = { sym_array, sym_literal, sym_nullary_op, - [3434] = 35, + [3465] = 35, ACTIONS(3), 1, sym_comment, - ACTIONS(9), 1, - sym_identifier, ACTIONS(11), 1, - anon_sym_LBRACE, + sym_identifier, ACTIONS(13), 1, - anon_sym_LPAREN, + anon_sym_LBRACE, ACTIONS(15), 1, - anon_sym_DASH, + anon_sym_LPAREN, ACTIONS(17), 1, - anon_sym_BANG, + anon_sym_DASH, ACTIONS(19), 1, - anon_sym_LBRACK, + anon_sym_BANG, ACTIONS(21), 1, - anon_sym_new, + anon_sym_LBRACK, ACTIONS(23), 1, - sym_output_root, + anon_sym_new, ACTIONS(25), 1, + sym_output_root, + ACTIONS(27), 1, sym_input_root, - ACTIONS(31), 1, + ACTIONS(33), 1, sym_number, - ACTIONS(35), 1, + ACTIONS(37), 1, anon_sym_date, - ACTIONS(41), 1, + ACTIONS(43), 1, anon_sym_this_DOTscriptSize, - STATE(43), 1, + STATE(56), 1, sym_primary, - STATE(107), 1, + STATE(113), 1, sym_unary, - STATE(109), 1, + STATE(115), 1, sym_postfix, - STATE(114), 1, + STATE(119), 1, sym_factor, - STATE(125), 1, + STATE(126), 1, sym_term, - STATE(150), 1, + STATE(166), 1, sym_comparison, - STATE(182), 1, + STATE(193), 1, sym_equality, - STATE(187), 1, + STATE(196), 1, sym_bit_and, - STATE(194), 1, + STATE(205), 1, sym_bit_xor, - STATE(200), 1, + STATE(212), 1, sym_bit_or, - STATE(201), 1, - sym_base_type, - STATE(204), 1, + STATE(219), 1, sym_logical_and, - STATE(215), 1, + STATE(225), 1, sym_logical_or, - STATE(318), 1, - sym_type_name, - STATE(390), 1, + STATE(240), 1, + sym_builtin_type, + STATE(366), 1, + sym_cast_type_name, + STATE(367), 1, sym_expression, - ACTIONS(29), 2, + ACTIONS(31), 2, anon_sym_true, anon_sym_false, - ACTIONS(33), 2, + ACTIONS(35), 2, sym_string_literal, sym_hex_literal, - STATE(39), 2, + STATE(52), 2, sym_unary_op, aux_sym_unary_repeat1, - STATE(80), 3, + STATE(83), 3, sym_boolean_literal, sym_number_literal, sym_date_literal, - ACTIONS(27), 7, + ACTIONS(29), 7, anon_sym_int, anon_sym_bool, anon_sym_string, @@ -6568,7 +6810,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_sig, anon_sym_datasig, anon_sym_byte, - ACTIONS(39), 7, + ACTIONS(41), 7, anon_sym_this_DOTactiveInputIndex, anon_sym_this_DOTactiveScriptPubKey, anon_sym_this_DOTscriptSizeDataPrefix, @@ -6576,7 +6818,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_tx_DOToutputs_DOTlength, anon_sym_tx_DOTversion, anon_sym_tx_DOTlocktime, - STATE(95), 9, + STATE(70), 9, sym_parenthesized, sym_cast, sym_function_call, @@ -6586,77 +6828,79 @@ static const uint16_t ts_small_parse_table[] = { sym_array, sym_literal, sym_nullary_op, - [3565] = 35, + [3596] = 36, ACTIONS(3), 1, sym_comment, - ACTIONS(9), 1, - sym_identifier, ACTIONS(11), 1, - anon_sym_LBRACE, + sym_identifier, ACTIONS(13), 1, - anon_sym_LPAREN, + anon_sym_LBRACE, ACTIONS(15), 1, - anon_sym_DASH, + anon_sym_LPAREN, ACTIONS(17), 1, - anon_sym_BANG, + anon_sym_DASH, ACTIONS(19), 1, - anon_sym_LBRACK, + anon_sym_BANG, ACTIONS(21), 1, - anon_sym_new, + anon_sym_LBRACK, ACTIONS(23), 1, - sym_output_root, + anon_sym_new, ACTIONS(25), 1, + sym_output_root, + ACTIONS(27), 1, sym_input_root, - ACTIONS(31), 1, + ACTIONS(33), 1, sym_number, - ACTIONS(35), 1, + ACTIONS(37), 1, anon_sym_date, - ACTIONS(41), 1, + ACTIONS(43), 1, anon_sym_this_DOTscriptSize, - STATE(43), 1, + STATE(56), 1, sym_primary, STATE(107), 1, + sym_function_call, + STATE(113), 1, sym_unary, - STATE(109), 1, + STATE(115), 1, sym_postfix, - STATE(114), 1, + STATE(119), 1, sym_factor, - STATE(125), 1, + STATE(126), 1, sym_term, - STATE(150), 1, + STATE(166), 1, sym_comparison, - STATE(182), 1, + STATE(193), 1, sym_equality, - STATE(187), 1, + STATE(196), 1, sym_bit_and, - STATE(194), 1, + STATE(205), 1, sym_bit_xor, - STATE(200), 1, + STATE(212), 1, sym_bit_or, - STATE(201), 1, - sym_base_type, - STATE(204), 1, + STATE(219), 1, sym_logical_and, - STATE(215), 1, + STATE(225), 1, sym_logical_or, - STATE(318), 1, - sym_type_name, - STATE(319), 1, + STATE(240), 1, + sym_builtin_type, + STATE(366), 1, + sym_cast_type_name, + STATE(370), 1, sym_expression, - ACTIONS(29), 2, + ACTIONS(31), 2, anon_sym_true, anon_sym_false, - ACTIONS(33), 2, + ACTIONS(35), 2, sym_string_literal, sym_hex_literal, - STATE(39), 2, + STATE(52), 2, sym_unary_op, aux_sym_unary_repeat1, - STATE(80), 3, + STATE(83), 3, sym_boolean_literal, sym_number_literal, sym_date_literal, - ACTIONS(27), 7, + ACTIONS(29), 7, anon_sym_int, anon_sym_bool, anon_sym_string, @@ -6664,7 +6908,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_sig, anon_sym_datasig, anon_sym_byte, - ACTIONS(39), 7, + ACTIONS(41), 7, anon_sym_this_DOTactiveInputIndex, anon_sym_this_DOTactiveScriptPubKey, anon_sym_this_DOTscriptSizeDataPrefix, @@ -6672,83 +6916,86 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_tx_DOToutputs_DOTlength, anon_sym_tx_DOTversion, anon_sym_tx_DOTlocktime, - STATE(95), 9, + STATE(70), 8, sym_parenthesized, sym_cast, - sym_function_call, sym_instantiation, sym_state_object, sym_introspection, sym_array, sym_literal, sym_nullary_op, - [3696] = 33, + [3729] = 35, ACTIONS(3), 1, sym_comment, - ACTIONS(9), 1, - sym_identifier, ACTIONS(11), 1, - anon_sym_LBRACE, + sym_identifier, ACTIONS(13), 1, - anon_sym_LPAREN, + anon_sym_LBRACE, ACTIONS(15), 1, - anon_sym_DASH, + anon_sym_LPAREN, ACTIONS(17), 1, - anon_sym_BANG, + anon_sym_DASH, ACTIONS(19), 1, - anon_sym_LBRACK, + anon_sym_BANG, ACTIONS(21), 1, - anon_sym_new, + anon_sym_LBRACK, ACTIONS(23), 1, - sym_output_root, + anon_sym_new, ACTIONS(25), 1, + sym_output_root, + ACTIONS(27), 1, sym_input_root, - ACTIONS(31), 1, + ACTIONS(33), 1, sym_number, - ACTIONS(35), 1, + ACTIONS(37), 1, anon_sym_date, - ACTIONS(41), 1, + ACTIONS(43), 1, anon_sym_this_DOTscriptSize, - STATE(43), 1, + STATE(56), 1, sym_primary, - STATE(107), 1, + STATE(113), 1, sym_unary, - STATE(109), 1, + STATE(115), 1, sym_postfix, - STATE(114), 1, + STATE(119), 1, sym_factor, - STATE(125), 1, + STATE(126), 1, sym_term, - STATE(150), 1, + STATE(166), 1, sym_comparison, - STATE(182), 1, + STATE(193), 1, sym_equality, - STATE(187), 1, + STATE(196), 1, sym_bit_and, - STATE(194), 1, + STATE(205), 1, sym_bit_xor, - STATE(200), 1, + STATE(212), 1, sym_bit_or, - STATE(201), 1, - sym_base_type, - STATE(210), 1, + STATE(219), 1, sym_logical_and, + STATE(225), 1, + sym_logical_or, + STATE(240), 1, + sym_builtin_type, STATE(318), 1, - sym_type_name, - ACTIONS(29), 2, + sym_expression, + STATE(366), 1, + sym_cast_type_name, + ACTIONS(31), 2, anon_sym_true, anon_sym_false, - ACTIONS(33), 2, + ACTIONS(35), 2, sym_string_literal, sym_hex_literal, - STATE(39), 2, + STATE(52), 2, sym_unary_op, aux_sym_unary_repeat1, - STATE(80), 3, + STATE(83), 3, sym_boolean_literal, sym_number_literal, sym_date_literal, - ACTIONS(27), 7, + ACTIONS(29), 7, anon_sym_int, anon_sym_bool, anon_sym_string, @@ -6756,7 +7003,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_sig, anon_sym_datasig, anon_sym_byte, - ACTIONS(39), 7, + ACTIONS(41), 7, anon_sym_this_DOTactiveInputIndex, anon_sym_this_DOTactiveScriptPubKey, anon_sym_this_DOTscriptSizeDataPrefix, @@ -6764,7 +7011,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_tx_DOToutputs_DOTlength, anon_sym_tx_DOTversion, anon_sym_tx_DOTlocktime, - STATE(95), 9, + STATE(70), 9, sym_parenthesized, sym_cast, sym_function_call, @@ -6774,71 +7021,77 @@ static const uint16_t ts_small_parse_table[] = { sym_array, sym_literal, sym_nullary_op, - [3821] = 32, + [3860] = 35, ACTIONS(3), 1, sym_comment, - ACTIONS(9), 1, - sym_identifier, ACTIONS(11), 1, - anon_sym_LBRACE, + sym_identifier, ACTIONS(13), 1, - anon_sym_LPAREN, + anon_sym_LBRACE, ACTIONS(15), 1, - anon_sym_DASH, + anon_sym_LPAREN, ACTIONS(17), 1, - anon_sym_BANG, + anon_sym_DASH, ACTIONS(19), 1, - anon_sym_LBRACK, + anon_sym_BANG, ACTIONS(21), 1, - anon_sym_new, + anon_sym_LBRACK, ACTIONS(23), 1, - sym_output_root, + anon_sym_new, ACTIONS(25), 1, + sym_output_root, + ACTIONS(27), 1, sym_input_root, - ACTIONS(31), 1, + ACTIONS(33), 1, sym_number, - ACTIONS(35), 1, + ACTIONS(37), 1, anon_sym_date, - ACTIONS(41), 1, + ACTIONS(43), 1, anon_sym_this_DOTscriptSize, - STATE(43), 1, + STATE(56), 1, sym_primary, - STATE(107), 1, + STATE(113), 1, sym_unary, - STATE(109), 1, + STATE(115), 1, sym_postfix, - STATE(114), 1, + STATE(119), 1, sym_factor, - STATE(125), 1, + STATE(126), 1, sym_term, - STATE(150), 1, + STATE(166), 1, sym_comparison, - STATE(182), 1, + STATE(193), 1, sym_equality, - STATE(187), 1, + STATE(196), 1, sym_bit_and, - STATE(194), 1, + STATE(205), 1, sym_bit_xor, - STATE(201), 1, - sym_base_type, - STATE(208), 1, + STATE(212), 1, sym_bit_or, - STATE(318), 1, - sym_type_name, - ACTIONS(29), 2, + STATE(219), 1, + sym_logical_and, + STATE(225), 1, + sym_logical_or, + STATE(240), 1, + sym_builtin_type, + STATE(366), 1, + sym_cast_type_name, + STATE(387), 1, + sym_expression, + ACTIONS(31), 2, anon_sym_true, anon_sym_false, - ACTIONS(33), 2, + ACTIONS(35), 2, sym_string_literal, sym_hex_literal, - STATE(39), 2, + STATE(52), 2, sym_unary_op, aux_sym_unary_repeat1, - STATE(80), 3, + STATE(83), 3, sym_boolean_literal, sym_number_literal, sym_date_literal, - ACTIONS(27), 7, + ACTIONS(29), 7, anon_sym_int, anon_sym_bool, anon_sym_string, @@ -6846,7 +7099,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_sig, anon_sym_datasig, anon_sym_byte, - ACTIONS(39), 7, + ACTIONS(41), 7, anon_sym_this_DOTactiveInputIndex, anon_sym_this_DOTactiveScriptPubKey, anon_sym_this_DOTscriptSizeDataPrefix, @@ -6854,7 +7107,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_tx_DOToutputs_DOTlength, anon_sym_tx_DOTversion, anon_sym_tx_DOTlocktime, - STATE(95), 9, + STATE(70), 9, sym_parenthesized, sym_cast, sym_function_call, @@ -6864,69 +7117,77 @@ static const uint16_t ts_small_parse_table[] = { sym_array, sym_literal, sym_nullary_op, - [3943] = 31, + [3991] = 35, ACTIONS(3), 1, sym_comment, - ACTIONS(9), 1, - sym_identifier, ACTIONS(11), 1, - anon_sym_LBRACE, + sym_identifier, ACTIONS(13), 1, - anon_sym_LPAREN, + anon_sym_LBRACE, ACTIONS(15), 1, - anon_sym_DASH, + anon_sym_LPAREN, ACTIONS(17), 1, - anon_sym_BANG, + anon_sym_DASH, ACTIONS(19), 1, - anon_sym_LBRACK, + anon_sym_BANG, ACTIONS(21), 1, - anon_sym_new, + anon_sym_LBRACK, ACTIONS(23), 1, - sym_output_root, + anon_sym_new, ACTIONS(25), 1, + sym_output_root, + ACTIONS(27), 1, sym_input_root, - ACTIONS(31), 1, + ACTIONS(33), 1, sym_number, - ACTIONS(35), 1, + ACTIONS(37), 1, anon_sym_date, - ACTIONS(41), 1, + ACTIONS(43), 1, anon_sym_this_DOTscriptSize, - STATE(43), 1, + STATE(56), 1, sym_primary, - STATE(107), 1, + STATE(113), 1, sym_unary, - STATE(109), 1, + STATE(115), 1, sym_postfix, - STATE(114), 1, + STATE(119), 1, sym_factor, - STATE(125), 1, + STATE(126), 1, sym_term, - STATE(150), 1, + STATE(166), 1, sym_comparison, - STATE(182), 1, + STATE(193), 1, sym_equality, - STATE(187), 1, + STATE(196), 1, sym_bit_and, - STATE(197), 1, + STATE(205), 1, sym_bit_xor, - STATE(201), 1, - sym_base_type, - STATE(318), 1, - sym_type_name, - ACTIONS(29), 2, + STATE(212), 1, + sym_bit_or, + STATE(219), 1, + sym_logical_and, + STATE(225), 1, + sym_logical_or, + STATE(240), 1, + sym_builtin_type, + STATE(321), 1, + sym_expression, + STATE(366), 1, + sym_cast_type_name, + ACTIONS(31), 2, anon_sym_true, anon_sym_false, - ACTIONS(33), 2, + ACTIONS(35), 2, sym_string_literal, sym_hex_literal, - STATE(39), 2, + STATE(52), 2, sym_unary_op, aux_sym_unary_repeat1, - STATE(80), 3, + STATE(83), 3, sym_boolean_literal, sym_number_literal, sym_date_literal, - ACTIONS(27), 7, + ACTIONS(29), 7, anon_sym_int, anon_sym_bool, anon_sym_string, @@ -6934,7 +7195,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_sig, anon_sym_datasig, anon_sym_byte, - ACTIONS(39), 7, + ACTIONS(41), 7, anon_sym_this_DOTactiveInputIndex, anon_sym_this_DOTactiveScriptPubKey, anon_sym_this_DOTscriptSizeDataPrefix, @@ -6942,7 +7203,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_tx_DOToutputs_DOTlength, anon_sym_tx_DOTversion, anon_sym_tx_DOTlocktime, - STATE(95), 9, + STATE(70), 9, sym_parenthesized, sym_cast, sym_function_call, @@ -6952,67 +7213,77 @@ static const uint16_t ts_small_parse_table[] = { sym_array, sym_literal, sym_nullary_op, - [4062] = 30, + [4122] = 35, ACTIONS(3), 1, sym_comment, - ACTIONS(9), 1, - sym_identifier, ACTIONS(11), 1, - anon_sym_LBRACE, + sym_identifier, ACTIONS(13), 1, - anon_sym_LPAREN, + anon_sym_LBRACE, ACTIONS(15), 1, - anon_sym_DASH, + anon_sym_LPAREN, ACTIONS(17), 1, - anon_sym_BANG, + anon_sym_DASH, ACTIONS(19), 1, - anon_sym_LBRACK, + anon_sym_BANG, ACTIONS(21), 1, - anon_sym_new, + anon_sym_LBRACK, ACTIONS(23), 1, - sym_output_root, + anon_sym_new, ACTIONS(25), 1, + sym_output_root, + ACTIONS(27), 1, sym_input_root, - ACTIONS(31), 1, + ACTIONS(33), 1, sym_number, - ACTIONS(35), 1, + ACTIONS(37), 1, anon_sym_date, - ACTIONS(41), 1, + ACTIONS(43), 1, anon_sym_this_DOTscriptSize, - STATE(43), 1, + STATE(56), 1, sym_primary, - STATE(107), 1, + STATE(113), 1, sym_unary, - STATE(109), 1, + STATE(115), 1, sym_postfix, - STATE(114), 1, + STATE(119), 1, sym_factor, - STATE(125), 1, + STATE(126), 1, sym_term, - STATE(150), 1, + STATE(166), 1, sym_comparison, - STATE(182), 1, + STATE(193), 1, sym_equality, - STATE(195), 1, + STATE(196), 1, sym_bit_and, - STATE(201), 1, - sym_base_type, - STATE(318), 1, - sym_type_name, - ACTIONS(29), 2, + STATE(205), 1, + sym_bit_xor, + STATE(212), 1, + sym_bit_or, + STATE(219), 1, + sym_logical_and, + STATE(225), 1, + sym_logical_or, + STATE(240), 1, + sym_builtin_type, + STATE(366), 1, + sym_cast_type_name, + STATE(394), 1, + sym_expression, + ACTIONS(31), 2, anon_sym_true, anon_sym_false, - ACTIONS(33), 2, + ACTIONS(35), 2, sym_string_literal, sym_hex_literal, - STATE(39), 2, + STATE(52), 2, sym_unary_op, aux_sym_unary_repeat1, - STATE(80), 3, + STATE(83), 3, sym_boolean_literal, sym_number_literal, sym_date_literal, - ACTIONS(27), 7, + ACTIONS(29), 7, anon_sym_int, anon_sym_bool, anon_sym_string, @@ -7020,7 +7291,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_sig, anon_sym_datasig, anon_sym_byte, - ACTIONS(39), 7, + ACTIONS(41), 7, anon_sym_this_DOTactiveInputIndex, anon_sym_this_DOTactiveScriptPubKey, anon_sym_this_DOTscriptSizeDataPrefix, @@ -7028,7 +7299,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_tx_DOToutputs_DOTlength, anon_sym_tx_DOTversion, anon_sym_tx_DOTlocktime, - STATE(95), 9, + STATE(70), 9, sym_parenthesized, sym_cast, sym_function_call, @@ -7038,65 +7309,77 @@ static const uint16_t ts_small_parse_table[] = { sym_array, sym_literal, sym_nullary_op, - [4178] = 29, + [4253] = 35, ACTIONS(3), 1, sym_comment, - ACTIONS(9), 1, - sym_identifier, ACTIONS(11), 1, - anon_sym_LBRACE, + sym_identifier, ACTIONS(13), 1, - anon_sym_LPAREN, + anon_sym_LBRACE, ACTIONS(15), 1, - anon_sym_DASH, + anon_sym_LPAREN, ACTIONS(17), 1, - anon_sym_BANG, + anon_sym_DASH, ACTIONS(19), 1, - anon_sym_LBRACK, + anon_sym_BANG, ACTIONS(21), 1, - anon_sym_new, + anon_sym_LBRACK, ACTIONS(23), 1, - sym_output_root, + anon_sym_new, ACTIONS(25), 1, + sym_output_root, + ACTIONS(27), 1, sym_input_root, - ACTIONS(31), 1, + ACTIONS(33), 1, sym_number, - ACTIONS(35), 1, + ACTIONS(37), 1, anon_sym_date, - ACTIONS(41), 1, + ACTIONS(43), 1, anon_sym_this_DOTscriptSize, - STATE(43), 1, + STATE(56), 1, sym_primary, - STATE(107), 1, + STATE(113), 1, sym_unary, - STATE(109), 1, + STATE(115), 1, sym_postfix, - STATE(114), 1, + STATE(119), 1, sym_factor, - STATE(125), 1, + STATE(126), 1, sym_term, - STATE(150), 1, + STATE(166), 1, sym_comparison, - STATE(189), 1, + STATE(193), 1, sym_equality, - STATE(201), 1, - sym_base_type, - STATE(318), 1, - sym_type_name, - ACTIONS(29), 2, + STATE(196), 1, + sym_bit_and, + STATE(205), 1, + sym_bit_xor, + STATE(212), 1, + sym_bit_or, + STATE(219), 1, + sym_logical_and, + STATE(225), 1, + sym_logical_or, + STATE(240), 1, + sym_builtin_type, + STATE(259), 1, + sym_expression, + STATE(366), 1, + sym_cast_type_name, + ACTIONS(31), 2, anon_sym_true, anon_sym_false, - ACTIONS(33), 2, + ACTIONS(35), 2, sym_string_literal, sym_hex_literal, - STATE(39), 2, + STATE(52), 2, sym_unary_op, aux_sym_unary_repeat1, - STATE(80), 3, + STATE(83), 3, sym_boolean_literal, sym_number_literal, sym_date_literal, - ACTIONS(27), 7, + ACTIONS(29), 7, anon_sym_int, anon_sym_bool, anon_sym_string, @@ -7104,7 +7387,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_sig, anon_sym_datasig, anon_sym_byte, - ACTIONS(39), 7, + ACTIONS(41), 7, anon_sym_this_DOTactiveInputIndex, anon_sym_this_DOTactiveScriptPubKey, anon_sym_this_DOTscriptSizeDataPrefix, @@ -7112,7 +7395,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_tx_DOToutputs_DOTlength, anon_sym_tx_DOTversion, anon_sym_tx_DOTlocktime, - STATE(95), 9, + STATE(70), 9, sym_parenthesized, sym_cast, sym_function_call, @@ -7122,63 +7405,77 @@ static const uint16_t ts_small_parse_table[] = { sym_array, sym_literal, sym_nullary_op, - [4291] = 28, + [4384] = 35, ACTIONS(3), 1, sym_comment, - ACTIONS(9), 1, - sym_identifier, ACTIONS(11), 1, - anon_sym_LBRACE, + sym_identifier, ACTIONS(13), 1, - anon_sym_LPAREN, + anon_sym_LBRACE, ACTIONS(15), 1, - anon_sym_DASH, + anon_sym_LPAREN, ACTIONS(17), 1, - anon_sym_BANG, + anon_sym_DASH, ACTIONS(19), 1, - anon_sym_LBRACK, + anon_sym_BANG, ACTIONS(21), 1, - anon_sym_new, + anon_sym_LBRACK, ACTIONS(23), 1, - sym_output_root, + anon_sym_new, ACTIONS(25), 1, + sym_output_root, + ACTIONS(27), 1, sym_input_root, - ACTIONS(31), 1, + ACTIONS(33), 1, sym_number, - ACTIONS(35), 1, + ACTIONS(37), 1, anon_sym_date, - ACTIONS(41), 1, + ACTIONS(43), 1, anon_sym_this_DOTscriptSize, - STATE(43), 1, + STATE(56), 1, sym_primary, - STATE(107), 1, + STATE(113), 1, sym_unary, - STATE(109), 1, + STATE(115), 1, sym_postfix, - STATE(114), 1, + STATE(119), 1, sym_factor, - STATE(125), 1, + STATE(126), 1, sym_term, - STATE(169), 1, + STATE(166), 1, sym_comparison, - STATE(201), 1, - sym_base_type, - STATE(318), 1, - sym_type_name, - ACTIONS(29), 2, + STATE(193), 1, + sym_equality, + STATE(196), 1, + sym_bit_and, + STATE(205), 1, + sym_bit_xor, + STATE(212), 1, + sym_bit_or, + STATE(219), 1, + sym_logical_and, + STATE(225), 1, + sym_logical_or, + STATE(240), 1, + sym_builtin_type, + STATE(366), 1, + sym_cast_type_name, + STATE(416), 1, + sym_expression, + ACTIONS(31), 2, anon_sym_true, anon_sym_false, - ACTIONS(33), 2, + ACTIONS(35), 2, sym_string_literal, sym_hex_literal, - STATE(39), 2, + STATE(52), 2, sym_unary_op, aux_sym_unary_repeat1, - STATE(80), 3, + STATE(83), 3, sym_boolean_literal, sym_number_literal, sym_date_literal, - ACTIONS(27), 7, + ACTIONS(29), 7, anon_sym_int, anon_sym_bool, anon_sym_string, @@ -7186,7 +7483,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_sig, anon_sym_datasig, anon_sym_byte, - ACTIONS(39), 7, + ACTIONS(41), 7, anon_sym_this_DOTactiveInputIndex, anon_sym_this_DOTactiveScriptPubKey, anon_sym_this_DOTscriptSizeDataPrefix, @@ -7194,7 +7491,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_tx_DOToutputs_DOTlength, anon_sym_tx_DOTversion, anon_sym_tx_DOTlocktime, - STATE(95), 9, + STATE(70), 9, sym_parenthesized, sym_cast, sym_function_call, @@ -7204,61 +7501,77 @@ static const uint16_t ts_small_parse_table[] = { sym_array, sym_literal, sym_nullary_op, - [4401] = 27, + [4515] = 35, ACTIONS(3), 1, sym_comment, - ACTIONS(9), 1, - sym_identifier, ACTIONS(11), 1, - anon_sym_LBRACE, + sym_identifier, ACTIONS(13), 1, - anon_sym_LPAREN, + anon_sym_LBRACE, ACTIONS(15), 1, - anon_sym_DASH, + anon_sym_LPAREN, ACTIONS(17), 1, - anon_sym_BANG, + anon_sym_DASH, ACTIONS(19), 1, - anon_sym_LBRACK, + anon_sym_BANG, ACTIONS(21), 1, - anon_sym_new, + anon_sym_LBRACK, ACTIONS(23), 1, - sym_output_root, + anon_sym_new, ACTIONS(25), 1, + sym_output_root, + ACTIONS(27), 1, sym_input_root, - ACTIONS(31), 1, + ACTIONS(33), 1, sym_number, - ACTIONS(35), 1, + ACTIONS(37), 1, anon_sym_date, - ACTIONS(41), 1, + ACTIONS(43), 1, anon_sym_this_DOTscriptSize, - STATE(43), 1, + STATE(56), 1, sym_primary, - STATE(107), 1, + STATE(113), 1, sym_unary, - STATE(109), 1, + STATE(115), 1, sym_postfix, - STATE(114), 1, + STATE(119), 1, sym_factor, - STATE(145), 1, + STATE(126), 1, sym_term, - STATE(201), 1, - sym_base_type, - STATE(318), 1, - sym_type_name, - ACTIONS(29), 2, + STATE(166), 1, + sym_comparison, + STATE(193), 1, + sym_equality, + STATE(196), 1, + sym_bit_and, + STATE(205), 1, + sym_bit_xor, + STATE(212), 1, + sym_bit_or, + STATE(219), 1, + sym_logical_and, + STATE(225), 1, + sym_logical_or, + STATE(240), 1, + sym_builtin_type, + STATE(366), 1, + sym_cast_type_name, + STATE(384), 1, + sym_expression, + ACTIONS(31), 2, anon_sym_true, anon_sym_false, - ACTIONS(33), 2, + ACTIONS(35), 2, sym_string_literal, sym_hex_literal, - STATE(39), 2, + STATE(52), 2, sym_unary_op, aux_sym_unary_repeat1, - STATE(80), 3, + STATE(83), 3, sym_boolean_literal, sym_number_literal, sym_date_literal, - ACTIONS(27), 7, + ACTIONS(29), 7, anon_sym_int, anon_sym_bool, anon_sym_string, @@ -7266,7 +7579,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_sig, anon_sym_datasig, anon_sym_byte, - ACTIONS(39), 7, + ACTIONS(41), 7, anon_sym_this_DOTactiveInputIndex, anon_sym_this_DOTactiveScriptPubKey, anon_sym_this_DOTscriptSizeDataPrefix, @@ -7274,7 +7587,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_tx_DOToutputs_DOTlength, anon_sym_tx_DOTversion, anon_sym_tx_DOTlocktime, - STATE(95), 9, + STATE(70), 9, sym_parenthesized, sym_cast, sym_function_call, @@ -7284,59 +7597,79 @@ static const uint16_t ts_small_parse_table[] = { sym_array, sym_literal, sym_nullary_op, - [4508] = 26, + [4646] = 36, ACTIONS(3), 1, sym_comment, - ACTIONS(9), 1, - sym_identifier, ACTIONS(11), 1, - anon_sym_LBRACE, + sym_identifier, ACTIONS(13), 1, - anon_sym_LPAREN, + anon_sym_LBRACE, ACTIONS(15), 1, - anon_sym_DASH, + anon_sym_LPAREN, ACTIONS(17), 1, - anon_sym_BANG, + anon_sym_DASH, ACTIONS(19), 1, - anon_sym_LBRACK, + anon_sym_BANG, ACTIONS(21), 1, - anon_sym_new, + anon_sym_LBRACK, ACTIONS(23), 1, - sym_output_root, + anon_sym_new, ACTIONS(25), 1, + sym_output_root, + ACTIONS(27), 1, sym_input_root, - ACTIONS(31), 1, + ACTIONS(33), 1, sym_number, - ACTIONS(35), 1, + ACTIONS(37), 1, anon_sym_date, - ACTIONS(41), 1, + ACTIONS(43), 1, anon_sym_this_DOTscriptSize, - STATE(43), 1, + STATE(56), 1, sym_primary, - STATE(107), 1, + STATE(106), 1, + sym_function_call, + STATE(113), 1, sym_unary, - STATE(109), 1, - sym_postfix, STATE(115), 1, + sym_postfix, + STATE(119), 1, sym_factor, - STATE(201), 1, - sym_base_type, - STATE(318), 1, - sym_type_name, - ACTIONS(29), 2, + STATE(126), 1, + sym_term, + STATE(166), 1, + sym_comparison, + STATE(193), 1, + sym_equality, + STATE(196), 1, + sym_bit_and, + STATE(205), 1, + sym_bit_xor, + STATE(212), 1, + sym_bit_or, + STATE(219), 1, + sym_logical_and, + STATE(225), 1, + sym_logical_or, + STATE(240), 1, + sym_builtin_type, + STATE(366), 1, + sym_cast_type_name, + STATE(452), 1, + sym_expression, + ACTIONS(31), 2, anon_sym_true, anon_sym_false, - ACTIONS(33), 2, + ACTIONS(35), 2, sym_string_literal, sym_hex_literal, - STATE(39), 2, + STATE(52), 2, sym_unary_op, aux_sym_unary_repeat1, - STATE(80), 3, + STATE(83), 3, sym_boolean_literal, sym_number_literal, sym_date_literal, - ACTIONS(27), 7, + ACTIONS(29), 7, anon_sym_int, anon_sym_bool, anon_sym_string, @@ -7344,7 +7677,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_sig, anon_sym_datasig, anon_sym_byte, - ACTIONS(39), 7, + ACTIONS(41), 7, anon_sym_this_DOTactiveInputIndex, anon_sym_this_DOTactiveScriptPubKey, anon_sym_this_DOTscriptSizeDataPrefix, @@ -7352,67 +7685,88 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_tx_DOToutputs_DOTlength, anon_sym_tx_DOTversion, anon_sym_tx_DOTlocktime, - STATE(95), 9, + STATE(70), 8, sym_parenthesized, sym_cast, - sym_function_call, sym_instantiation, sym_state_object, sym_introspection, sym_array, sym_literal, sym_nullary_op, - [4612] = 25, + [4779] = 36, ACTIONS(3), 1, sym_comment, - ACTIONS(9), 1, - sym_identifier, ACTIONS(11), 1, - anon_sym_LBRACE, + sym_identifier, ACTIONS(13), 1, - anon_sym_LPAREN, + anon_sym_LBRACE, ACTIONS(15), 1, - anon_sym_DASH, + anon_sym_LPAREN, ACTIONS(17), 1, - anon_sym_BANG, + anon_sym_DASH, ACTIONS(19), 1, - anon_sym_LBRACK, + anon_sym_BANG, ACTIONS(21), 1, - anon_sym_new, + anon_sym_LBRACK, ACTIONS(23), 1, - sym_output_root, + anon_sym_new, ACTIONS(25), 1, + sym_output_root, + ACTIONS(27), 1, sym_input_root, - ACTIONS(31), 1, + ACTIONS(33), 1, sym_number, - ACTIONS(35), 1, + ACTIONS(37), 1, anon_sym_date, - ACTIONS(41), 1, + ACTIONS(43), 1, anon_sym_this_DOTscriptSize, - STATE(43), 1, + STATE(56), 1, sym_primary, - STATE(109), 1, - sym_postfix, - STATE(110), 1, + STATE(108), 1, + sym_function_call, + STATE(113), 1, sym_unary, - STATE(201), 1, - sym_base_type, - STATE(318), 1, - sym_type_name, - ACTIONS(29), 2, + STATE(115), 1, + sym_postfix, + STATE(119), 1, + sym_factor, + STATE(126), 1, + sym_term, + STATE(166), 1, + sym_comparison, + STATE(193), 1, + sym_equality, + STATE(196), 1, + sym_bit_and, + STATE(205), 1, + sym_bit_xor, + STATE(212), 1, + sym_bit_or, + STATE(219), 1, + sym_logical_and, + STATE(225), 1, + sym_logical_or, + STATE(240), 1, + sym_builtin_type, + STATE(366), 1, + sym_cast_type_name, + STATE(423), 1, + sym_expression, + ACTIONS(31), 2, anon_sym_true, anon_sym_false, - ACTIONS(33), 2, + ACTIONS(35), 2, sym_string_literal, sym_hex_literal, - STATE(39), 2, + STATE(52), 2, sym_unary_op, aux_sym_unary_repeat1, - STATE(80), 3, + STATE(83), 3, sym_boolean_literal, sym_number_literal, sym_date_literal, - ACTIONS(27), 7, + ACTIONS(29), 7, anon_sym_int, anon_sym_bool, anon_sym_string, @@ -7420,7 +7774,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_sig, anon_sym_datasig, anon_sym_byte, - ACTIONS(39), 7, + ACTIONS(41), 7, anon_sym_this_DOTactiveInputIndex, anon_sym_this_DOTactiveScriptPubKey, anon_sym_this_DOTscriptSizeDataPrefix, @@ -7428,65 +7782,86 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_tx_DOToutputs_DOTlength, anon_sym_tx_DOTversion, anon_sym_tx_DOTlocktime, - STATE(95), 9, + STATE(70), 8, sym_parenthesized, sym_cast, - sym_function_call, sym_instantiation, sym_state_object, sym_introspection, sym_array, sym_literal, sym_nullary_op, - [4713] = 24, + [4912] = 35, ACTIONS(3), 1, sym_comment, - ACTIONS(9), 1, - sym_identifier, ACTIONS(11), 1, - anon_sym_LBRACE, + sym_identifier, ACTIONS(13), 1, - anon_sym_LPAREN, + anon_sym_LBRACE, ACTIONS(15), 1, - anon_sym_DASH, + anon_sym_LPAREN, ACTIONS(17), 1, - anon_sym_BANG, + anon_sym_DASH, ACTIONS(19), 1, - anon_sym_LBRACK, + anon_sym_BANG, ACTIONS(21), 1, - anon_sym_new, + anon_sym_LBRACK, ACTIONS(23), 1, - sym_output_root, + anon_sym_new, ACTIONS(25), 1, + sym_output_root, + ACTIONS(27), 1, sym_input_root, - ACTIONS(31), 1, + ACTIONS(33), 1, sym_number, - ACTIONS(35), 1, + ACTIONS(37), 1, anon_sym_date, - ACTIONS(41), 1, + ACTIONS(43), 1, anon_sym_this_DOTscriptSize, - STATE(43), 1, + STATE(56), 1, sym_primary, - STATE(111), 1, + STATE(113), 1, + sym_unary, + STATE(115), 1, sym_postfix, - STATE(201), 1, - sym_base_type, - STATE(318), 1, - sym_type_name, - ACTIONS(29), 2, + STATE(119), 1, + sym_factor, + STATE(126), 1, + sym_term, + STATE(166), 1, + sym_comparison, + STATE(193), 1, + sym_equality, + STATE(196), 1, + sym_bit_and, + STATE(205), 1, + sym_bit_xor, + STATE(212), 1, + sym_bit_or, + STATE(219), 1, + sym_logical_and, + STATE(225), 1, + sym_logical_or, + STATE(240), 1, + sym_builtin_type, + STATE(366), 1, + sym_cast_type_name, + STATE(450), 1, + sym_expression, + ACTIONS(31), 2, anon_sym_true, anon_sym_false, - ACTIONS(33), 2, + ACTIONS(35), 2, sym_string_literal, sym_hex_literal, - STATE(62), 2, + STATE(52), 2, sym_unary_op, aux_sym_unary_repeat1, - STATE(80), 3, + STATE(83), 3, sym_boolean_literal, sym_number_literal, sym_date_literal, - ACTIONS(27), 7, + ACTIONS(29), 7, anon_sym_int, anon_sym_bool, anon_sym_string, @@ -7494,7 +7869,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_sig, anon_sym_datasig, anon_sym_byte, - ACTIONS(39), 7, + ACTIONS(41), 7, anon_sym_this_DOTactiveInputIndex, anon_sym_this_DOTactiveScriptPubKey, anon_sym_this_DOTscriptSizeDataPrefix, @@ -7502,7 +7877,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_tx_DOToutputs_DOTlength, anon_sym_tx_DOTversion, anon_sym_tx_DOTlocktime, - STATE(95), 9, + STATE(70), 9, sym_parenthesized, sym_cast, sym_function_call, @@ -7512,233 +7887,269 @@ static const uint16_t ts_small_parse_table[] = { sym_array, sym_literal, sym_nullary_op, - [4811] = 5, + [5043] = 35, ACTIONS(3), 1, sym_comment, - STATE(67), 1, - sym_number_unit, - ACTIONS(59), 6, - anon_sym_PIPE, - anon_sym_AMP, - anon_sym_LT, - anon_sym_GT, - anon_sym_SLASH, - anon_sym_DOT, - ACTIONS(61), 8, - anon_sym_litras, - anon_sym_grains, - anon_sym_kas, - anon_sym_seconds, - anon_sym_minutes, - anon_sym_hours, - anon_sym_days, - anon_sym_weeks, - ACTIONS(57), 22, - anon_sym_SEMI, - anon_sym_RBRACE, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_GT_EQ, - anon_sym_PIPE_PIPE, - anon_sym_AMP_AMP, - anon_sym_CARET, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_LT_EQ, - anon_sym_PLUS, + ACTIONS(11), 1, + sym_identifier, + ACTIONS(13), 1, + anon_sym_LBRACE, + ACTIONS(15), 1, + anon_sym_LPAREN, + ACTIONS(17), 1, anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_LBRACK, - anon_sym_RBRACK, - sym_unary_suffix, - anon_sym_DOTsplit, - anon_sym_DOTslice, - anon_sym_DOTappend, - anon_sym_DOTreverse, - [4860] = 12, - ACTIONS(3), 1, - sym_comment, - ACTIONS(67), 1, + ACTIONS(19), 1, + anon_sym_BANG, + ACTIONS(21), 1, anon_sym_LBRACK, - ACTIONS(69), 1, - anon_sym_DOT, - ACTIONS(71), 1, - sym_unary_suffix, - ACTIONS(73), 1, - anon_sym_DOTsplit, - ACTIONS(75), 1, - anon_sym_DOTslice, - ACTIONS(77), 1, - anon_sym_DOTappend, - ACTIONS(79), 1, - anon_sym_DOTreverse, - STATE(42), 2, - sym_postfix_op, - aux_sym_postfix_repeat1, - ACTIONS(65), 5, - anon_sym_PIPE, - anon_sym_AMP, - anon_sym_LT, - anon_sym_GT, - anon_sym_SLASH, - STATE(99), 6, - sym_tuple_index, - sym_member_access, - sym_split_call, - sym_slice_call, - sym_append_call, - sym_reverse_call, - ACTIONS(63), 16, - anon_sym_SEMI, - anon_sym_RBRACE, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_GT_EQ, - anon_sym_PIPE_PIPE, - anon_sym_AMP_AMP, - anon_sym_CARET, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_LT_EQ, - anon_sym_PLUS, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_RBRACK, - [4922] = 12, + ACTIONS(23), 1, + anon_sym_new, + ACTIONS(25), 1, + sym_output_root, + ACTIONS(27), 1, + sym_input_root, + ACTIONS(33), 1, + sym_number, + ACTIONS(37), 1, + anon_sym_date, + ACTIONS(43), 1, + anon_sym_this_DOTscriptSize, + STATE(56), 1, + sym_primary, + STATE(113), 1, + sym_unary, + STATE(115), 1, + sym_postfix, + STATE(119), 1, + sym_factor, + STATE(126), 1, + sym_term, + STATE(166), 1, + sym_comparison, + STATE(193), 1, + sym_equality, + STATE(196), 1, + sym_bit_and, + STATE(205), 1, + sym_bit_xor, + STATE(212), 1, + sym_bit_or, + STATE(219), 1, + sym_logical_and, + STATE(225), 1, + sym_logical_or, + STATE(240), 1, + sym_builtin_type, + STATE(366), 1, + sym_cast_type_name, + STATE(433), 1, + sym_expression, + ACTIONS(31), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(35), 2, + sym_string_literal, + sym_hex_literal, + STATE(52), 2, + sym_unary_op, + aux_sym_unary_repeat1, + STATE(83), 3, + sym_boolean_literal, + sym_number_literal, + sym_date_literal, + ACTIONS(29), 7, + anon_sym_int, + anon_sym_bool, + anon_sym_string, + anon_sym_pubkey, + anon_sym_sig, + anon_sym_datasig, + anon_sym_byte, + ACTIONS(41), 7, + anon_sym_this_DOTactiveInputIndex, + anon_sym_this_DOTactiveScriptPubKey, + anon_sym_this_DOTscriptSizeDataPrefix, + anon_sym_tx_DOTinputs_DOTlength, + anon_sym_tx_DOToutputs_DOTlength, + anon_sym_tx_DOTversion, + anon_sym_tx_DOTlocktime, + STATE(70), 9, + sym_parenthesized, + sym_cast, + sym_function_call, + sym_instantiation, + sym_state_object, + sym_introspection, + sym_array, + sym_literal, + sym_nullary_op, + [5174] = 35, ACTIONS(3), 1, sym_comment, - ACTIONS(85), 1, - anon_sym_LBRACK, - ACTIONS(88), 1, - anon_sym_DOT, - ACTIONS(91), 1, - sym_unary_suffix, - ACTIONS(94), 1, - anon_sym_DOTsplit, - ACTIONS(97), 1, - anon_sym_DOTslice, - ACTIONS(100), 1, - anon_sym_DOTappend, - ACTIONS(103), 1, - anon_sym_DOTreverse, - STATE(42), 2, - sym_postfix_op, - aux_sym_postfix_repeat1, - ACTIONS(83), 5, - anon_sym_PIPE, - anon_sym_AMP, - anon_sym_LT, - anon_sym_GT, - anon_sym_SLASH, - STATE(99), 6, - sym_tuple_index, - sym_member_access, - sym_split_call, - sym_slice_call, - sym_append_call, - sym_reverse_call, - ACTIONS(81), 16, - anon_sym_SEMI, - anon_sym_RBRACE, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_GT_EQ, - anon_sym_PIPE_PIPE, - anon_sym_AMP_AMP, - anon_sym_CARET, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_LT_EQ, - anon_sym_PLUS, + ACTIONS(11), 1, + sym_identifier, + ACTIONS(13), 1, + anon_sym_LBRACE, + ACTIONS(15), 1, + anon_sym_LPAREN, + ACTIONS(17), 1, anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_RBRACK, - [4984] = 12, - ACTIONS(3), 1, - sym_comment, - ACTIONS(67), 1, + ACTIONS(19), 1, + anon_sym_BANG, + ACTIONS(21), 1, anon_sym_LBRACK, - ACTIONS(69), 1, - anon_sym_DOT, - ACTIONS(71), 1, - sym_unary_suffix, - ACTIONS(73), 1, - anon_sym_DOTsplit, - ACTIONS(75), 1, - anon_sym_DOTslice, - ACTIONS(77), 1, - anon_sym_DOTappend, - ACTIONS(79), 1, - anon_sym_DOTreverse, - STATE(41), 2, - sym_postfix_op, - aux_sym_postfix_repeat1, - ACTIONS(108), 5, - anon_sym_PIPE, - anon_sym_AMP, - anon_sym_LT, - anon_sym_GT, - anon_sym_SLASH, - STATE(99), 6, - sym_tuple_index, - sym_member_access, - sym_split_call, - sym_slice_call, - sym_append_call, - sym_reverse_call, - ACTIONS(106), 16, - anon_sym_SEMI, - anon_sym_RBRACE, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_GT_EQ, - anon_sym_PIPE_PIPE, - anon_sym_AMP_AMP, - anon_sym_CARET, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_LT_EQ, - anon_sym_PLUS, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_RBRACK, - [5046] = 17, + ACTIONS(23), 1, + anon_sym_new, + ACTIONS(25), 1, + sym_output_root, + ACTIONS(27), 1, + sym_input_root, + ACTIONS(33), 1, + sym_number, + ACTIONS(37), 1, + anon_sym_date, + ACTIONS(43), 1, + anon_sym_this_DOTscriptSize, + STATE(56), 1, + sym_primary, + STATE(113), 1, + sym_unary, + STATE(115), 1, + sym_postfix, + STATE(119), 1, + sym_factor, + STATE(126), 1, + sym_term, + STATE(166), 1, + sym_comparison, + STATE(193), 1, + sym_equality, + STATE(196), 1, + sym_bit_and, + STATE(205), 1, + sym_bit_xor, + STATE(212), 1, + sym_bit_or, + STATE(219), 1, + sym_logical_and, + STATE(225), 1, + sym_logical_or, + STATE(240), 1, + sym_builtin_type, + STATE(366), 1, + sym_cast_type_name, + STATE(434), 1, + sym_expression, + ACTIONS(31), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(35), 2, + sym_string_literal, + sym_hex_literal, + STATE(52), 2, + sym_unary_op, + aux_sym_unary_repeat1, + STATE(83), 3, + sym_boolean_literal, + sym_number_literal, + sym_date_literal, + ACTIONS(29), 7, + anon_sym_int, + anon_sym_bool, + anon_sym_string, + anon_sym_pubkey, + anon_sym_sig, + anon_sym_datasig, + anon_sym_byte, + ACTIONS(41), 7, + anon_sym_this_DOTactiveInputIndex, + anon_sym_this_DOTactiveScriptPubKey, + anon_sym_this_DOTscriptSizeDataPrefix, + anon_sym_tx_DOTinputs_DOTlength, + anon_sym_tx_DOToutputs_DOTlength, + anon_sym_tx_DOTversion, + anon_sym_tx_DOTlocktime, + STATE(70), 9, + sym_parenthesized, + sym_cast, + sym_function_call, + sym_instantiation, + sym_state_object, + sym_introspection, + sym_array, + sym_literal, + sym_nullary_op, + [5305] = 35, ACTIONS(3), 1, sym_comment, - ACTIONS(110), 1, + ACTIONS(11), 1, sym_identifier, - ACTIONS(112), 1, + ACTIONS(13), 1, anon_sym_LBRACE, - ACTIONS(114), 1, - anon_sym_RBRACE, - ACTIONS(116), 1, + ACTIONS(15), 1, anon_sym_LPAREN, - ACTIONS(118), 1, - anon_sym_return, - ACTIONS(120), 1, - anon_sym_require, - ACTIONS(122), 1, - anon_sym_if, - ACTIONS(124), 1, - anon_sym_for, - ACTIONS(126), 1, - anon_sym_console_DOTlog, - STATE(201), 1, - sym_base_type, - STATE(222), 1, - sym_type_name, - STATE(231), 1, - sym_state_typed_binding, - STATE(394), 1, - sym_function_call, - STATE(45), 2, - sym_statement, - aux_sym_function_definition_repeat2, - ACTIONS(27), 7, + ACTIONS(17), 1, + anon_sym_DASH, + ACTIONS(19), 1, + anon_sym_BANG, + ACTIONS(21), 1, + anon_sym_LBRACK, + ACTIONS(23), 1, + anon_sym_new, + ACTIONS(25), 1, + sym_output_root, + ACTIONS(27), 1, + sym_input_root, + ACTIONS(33), 1, + sym_number, + ACTIONS(37), 1, + anon_sym_date, + ACTIONS(43), 1, + anon_sym_this_DOTscriptSize, + STATE(56), 1, + sym_primary, + STATE(113), 1, + sym_unary, + STATE(115), 1, + sym_postfix, + STATE(119), 1, + sym_factor, + STATE(126), 1, + sym_term, + STATE(166), 1, + sym_comparison, + STATE(193), 1, + sym_equality, + STATE(196), 1, + sym_bit_and, + STATE(205), 1, + sym_bit_xor, + STATE(212), 1, + sym_bit_or, + STATE(219), 1, + sym_logical_and, + STATE(225), 1, + sym_logical_or, + STATE(240), 1, + sym_builtin_type, + STATE(360), 1, + sym_expression, + STATE(366), 1, + sym_cast_type_name, + ACTIONS(31), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(35), 2, + sym_string_literal, + sym_hex_literal, + STATE(52), 2, + sym_unary_op, + aux_sym_unary_repeat1, + STATE(83), 3, + sym_boolean_literal, + sym_number_literal, + sym_date_literal, + ACTIONS(29), 7, anon_sym_int, anon_sym_bool, anon_sym_string, @@ -7746,50 +8157,91 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_sig, anon_sym_datasig, anon_sym_byte, - STATE(142), 12, - sym_variable_definition, - sym_tuple_assignment, - sym_function_call_assignment, - sym_state_function_call_assignment, - sym_call_statement, - sym_return_statement, - sym_assign_statement, - sym_time_op_statement, - sym_require_statement, - sym_if_statement, - sym_for_statement, - sym_console_statement, - [5116] = 16, + ACTIONS(41), 7, + anon_sym_this_DOTactiveInputIndex, + anon_sym_this_DOTactiveScriptPubKey, + anon_sym_this_DOTscriptSizeDataPrefix, + anon_sym_tx_DOTinputs_DOTlength, + anon_sym_tx_DOToutputs_DOTlength, + anon_sym_tx_DOTversion, + anon_sym_tx_DOTlocktime, + STATE(70), 9, + sym_parenthesized, + sym_cast, + sym_function_call, + sym_instantiation, + sym_state_object, + sym_introspection, + sym_array, + sym_literal, + sym_nullary_op, + [5436] = 33, ACTIONS(3), 1, sym_comment, - ACTIONS(112), 1, + ACTIONS(11), 1, + sym_identifier, + ACTIONS(13), 1, anon_sym_LBRACE, - ACTIONS(116), 1, + ACTIONS(15), 1, anon_sym_LPAREN, - ACTIONS(118), 1, - anon_sym_return, - ACTIONS(120), 1, - anon_sym_require, - ACTIONS(122), 1, - anon_sym_if, - ACTIONS(124), 1, - anon_sym_for, - ACTIONS(126), 1, - anon_sym_console_DOTlog, - ACTIONS(128), 1, - sym_identifier, - ACTIONS(130), 1, - anon_sym_RBRACE, - STATE(201), 1, - sym_base_type, - STATE(222), 1, - sym_type_name, - STATE(394), 1, - sym_function_call, - STATE(50), 2, - sym_statement, - aux_sym_function_definition_repeat2, - ACTIONS(27), 7, + ACTIONS(17), 1, + anon_sym_DASH, + ACTIONS(19), 1, + anon_sym_BANG, + ACTIONS(21), 1, + anon_sym_LBRACK, + ACTIONS(23), 1, + anon_sym_new, + ACTIONS(25), 1, + sym_output_root, + ACTIONS(27), 1, + sym_input_root, + ACTIONS(33), 1, + sym_number, + ACTIONS(37), 1, + anon_sym_date, + ACTIONS(43), 1, + anon_sym_this_DOTscriptSize, + STATE(56), 1, + sym_primary, + STATE(113), 1, + sym_unary, + STATE(115), 1, + sym_postfix, + STATE(119), 1, + sym_factor, + STATE(126), 1, + sym_term, + STATE(166), 1, + sym_comparison, + STATE(193), 1, + sym_equality, + STATE(196), 1, + sym_bit_and, + STATE(205), 1, + sym_bit_xor, + STATE(212), 1, + sym_bit_or, + STATE(221), 1, + sym_logical_and, + STATE(240), 1, + sym_builtin_type, + STATE(366), 1, + sym_cast_type_name, + ACTIONS(31), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(35), 2, + sym_string_literal, + sym_hex_literal, + STATE(52), 2, + sym_unary_op, + aux_sym_unary_repeat1, + STATE(83), 3, + sym_boolean_literal, + sym_number_literal, + sym_date_literal, + ACTIONS(29), 7, anon_sym_int, anon_sym_bool, anon_sym_string, @@ -7797,50 +8249,177 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_sig, anon_sym_datasig, anon_sym_byte, - STATE(142), 12, - sym_variable_definition, - sym_tuple_assignment, - sym_function_call_assignment, - sym_state_function_call_assignment, - sym_call_statement, - sym_return_statement, - sym_assign_statement, - sym_time_op_statement, - sym_require_statement, - sym_if_statement, - sym_for_statement, - sym_console_statement, - [5183] = 16, + ACTIONS(41), 7, + anon_sym_this_DOTactiveInputIndex, + anon_sym_this_DOTactiveScriptPubKey, + anon_sym_this_DOTscriptSizeDataPrefix, + anon_sym_tx_DOTinputs_DOTlength, + anon_sym_tx_DOToutputs_DOTlength, + anon_sym_tx_DOTversion, + anon_sym_tx_DOTlocktime, + STATE(70), 9, + sym_parenthesized, + sym_cast, + sym_function_call, + sym_instantiation, + sym_state_object, + sym_introspection, + sym_array, + sym_literal, + sym_nullary_op, + [5561] = 32, ACTIONS(3), 1, sym_comment, - ACTIONS(112), 1, + ACTIONS(11), 1, + sym_identifier, + ACTIONS(13), 1, anon_sym_LBRACE, - ACTIONS(116), 1, + ACTIONS(15), 1, anon_sym_LPAREN, - ACTIONS(118), 1, - anon_sym_return, - ACTIONS(120), 1, - anon_sym_require, - ACTIONS(122), 1, - anon_sym_if, - ACTIONS(124), 1, - anon_sym_for, - ACTIONS(126), 1, - anon_sym_console_DOTlog, - ACTIONS(128), 1, - sym_identifier, - ACTIONS(132), 1, - anon_sym_RBRACE, - STATE(201), 1, - sym_base_type, - STATE(222), 1, - sym_type_name, - STATE(394), 1, + ACTIONS(17), 1, + anon_sym_DASH, + ACTIONS(19), 1, + anon_sym_BANG, + ACTIONS(21), 1, + anon_sym_LBRACK, + ACTIONS(23), 1, + anon_sym_new, + ACTIONS(25), 1, + sym_output_root, + ACTIONS(27), 1, + sym_input_root, + ACTIONS(33), 1, + sym_number, + ACTIONS(37), 1, + anon_sym_date, + ACTIONS(43), 1, + anon_sym_this_DOTscriptSize, + STATE(56), 1, + sym_primary, + STATE(113), 1, + sym_unary, + STATE(115), 1, + sym_postfix, + STATE(119), 1, + sym_factor, + STATE(126), 1, + sym_term, + STATE(166), 1, + sym_comparison, + STATE(193), 1, + sym_equality, + STATE(196), 1, + sym_bit_and, + STATE(205), 1, + sym_bit_xor, + STATE(218), 1, + sym_bit_or, + STATE(240), 1, + sym_builtin_type, + STATE(366), 1, + sym_cast_type_name, + ACTIONS(31), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(35), 2, + sym_string_literal, + sym_hex_literal, + STATE(52), 2, + sym_unary_op, + aux_sym_unary_repeat1, + STATE(83), 3, + sym_boolean_literal, + sym_number_literal, + sym_date_literal, + ACTIONS(29), 7, + anon_sym_int, + anon_sym_bool, + anon_sym_string, + anon_sym_pubkey, + anon_sym_sig, + anon_sym_datasig, + anon_sym_byte, + ACTIONS(41), 7, + anon_sym_this_DOTactiveInputIndex, + anon_sym_this_DOTactiveScriptPubKey, + anon_sym_this_DOTscriptSizeDataPrefix, + anon_sym_tx_DOTinputs_DOTlength, + anon_sym_tx_DOToutputs_DOTlength, + anon_sym_tx_DOTversion, + anon_sym_tx_DOTlocktime, + STATE(70), 9, + sym_parenthesized, + sym_cast, sym_function_call, - STATE(50), 2, - sym_statement, - aux_sym_function_definition_repeat2, - ACTIONS(27), 7, + sym_instantiation, + sym_state_object, + sym_introspection, + sym_array, + sym_literal, + sym_nullary_op, + [5683] = 31, + ACTIONS(3), 1, + sym_comment, + ACTIONS(11), 1, + sym_identifier, + ACTIONS(13), 1, + anon_sym_LBRACE, + ACTIONS(15), 1, + anon_sym_LPAREN, + ACTIONS(17), 1, + anon_sym_DASH, + ACTIONS(19), 1, + anon_sym_BANG, + ACTIONS(21), 1, + anon_sym_LBRACK, + ACTIONS(23), 1, + anon_sym_new, + ACTIONS(25), 1, + sym_output_root, + ACTIONS(27), 1, + sym_input_root, + ACTIONS(33), 1, + sym_number, + ACTIONS(37), 1, + anon_sym_date, + ACTIONS(43), 1, + anon_sym_this_DOTscriptSize, + STATE(56), 1, + sym_primary, + STATE(113), 1, + sym_unary, + STATE(115), 1, + sym_postfix, + STATE(119), 1, + sym_factor, + STATE(126), 1, + sym_term, + STATE(166), 1, + sym_comparison, + STATE(193), 1, + sym_equality, + STATE(196), 1, + sym_bit_and, + STATE(210), 1, + sym_bit_xor, + STATE(240), 1, + sym_builtin_type, + STATE(366), 1, + sym_cast_type_name, + ACTIONS(31), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(35), 2, + sym_string_literal, + sym_hex_literal, + STATE(52), 2, + sym_unary_op, + aux_sym_unary_repeat1, + STATE(83), 3, + sym_boolean_literal, + sym_number_literal, + sym_date_literal, + ACTIONS(29), 7, anon_sym_int, anon_sym_bool, anon_sym_string, @@ -7848,50 +8427,85 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_sig, anon_sym_datasig, anon_sym_byte, - STATE(142), 12, - sym_variable_definition, - sym_tuple_assignment, - sym_function_call_assignment, - sym_state_function_call_assignment, - sym_call_statement, - sym_return_statement, - sym_assign_statement, - sym_time_op_statement, - sym_require_statement, - sym_if_statement, - sym_for_statement, - sym_console_statement, - [5250] = 16, + ACTIONS(41), 7, + anon_sym_this_DOTactiveInputIndex, + anon_sym_this_DOTactiveScriptPubKey, + anon_sym_this_DOTscriptSizeDataPrefix, + anon_sym_tx_DOTinputs_DOTlength, + anon_sym_tx_DOToutputs_DOTlength, + anon_sym_tx_DOTversion, + anon_sym_tx_DOTlocktime, + STATE(70), 9, + sym_parenthesized, + sym_cast, + sym_function_call, + sym_instantiation, + sym_state_object, + sym_introspection, + sym_array, + sym_literal, + sym_nullary_op, + [5802] = 30, ACTIONS(3), 1, sym_comment, - ACTIONS(112), 1, + ACTIONS(11), 1, + sym_identifier, + ACTIONS(13), 1, anon_sym_LBRACE, - ACTIONS(116), 1, + ACTIONS(15), 1, anon_sym_LPAREN, - ACTIONS(118), 1, - anon_sym_return, - ACTIONS(120), 1, - anon_sym_require, - ACTIONS(122), 1, - anon_sym_if, - ACTIONS(124), 1, - anon_sym_for, - ACTIONS(126), 1, - anon_sym_console_DOTlog, - ACTIONS(128), 1, - sym_identifier, - ACTIONS(132), 1, - anon_sym_RBRACE, - STATE(201), 1, - sym_base_type, - STATE(222), 1, - sym_type_name, - STATE(394), 1, - sym_function_call, - STATE(54), 2, - sym_statement, - aux_sym_function_definition_repeat2, - ACTIONS(27), 7, + ACTIONS(17), 1, + anon_sym_DASH, + ACTIONS(19), 1, + anon_sym_BANG, + ACTIONS(21), 1, + anon_sym_LBRACK, + ACTIONS(23), 1, + anon_sym_new, + ACTIONS(25), 1, + sym_output_root, + ACTIONS(27), 1, + sym_input_root, + ACTIONS(33), 1, + sym_number, + ACTIONS(37), 1, + anon_sym_date, + ACTIONS(43), 1, + anon_sym_this_DOTscriptSize, + STATE(56), 1, + sym_primary, + STATE(113), 1, + sym_unary, + STATE(115), 1, + sym_postfix, + STATE(119), 1, + sym_factor, + STATE(126), 1, + sym_term, + STATE(166), 1, + sym_comparison, + STATE(193), 1, + sym_equality, + STATE(206), 1, + sym_bit_and, + STATE(240), 1, + sym_builtin_type, + STATE(366), 1, + sym_cast_type_name, + ACTIONS(31), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(35), 2, + sym_string_literal, + sym_hex_literal, + STATE(52), 2, + sym_unary_op, + aux_sym_unary_repeat1, + STATE(83), 3, + sym_boolean_literal, + sym_number_literal, + sym_date_literal, + ACTIONS(29), 7, anon_sym_int, anon_sym_bool, anon_sym_string, @@ -7899,50 +8513,83 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_sig, anon_sym_datasig, anon_sym_byte, - STATE(142), 12, - sym_variable_definition, - sym_tuple_assignment, - sym_function_call_assignment, - sym_state_function_call_assignment, - sym_call_statement, - sym_return_statement, - sym_assign_statement, - sym_time_op_statement, - sym_require_statement, - sym_if_statement, - sym_for_statement, - sym_console_statement, - [5317] = 16, + ACTIONS(41), 7, + anon_sym_this_DOTactiveInputIndex, + anon_sym_this_DOTactiveScriptPubKey, + anon_sym_this_DOTscriptSizeDataPrefix, + anon_sym_tx_DOTinputs_DOTlength, + anon_sym_tx_DOToutputs_DOTlength, + anon_sym_tx_DOTversion, + anon_sym_tx_DOTlocktime, + STATE(70), 9, + sym_parenthesized, + sym_cast, + sym_function_call, + sym_instantiation, + sym_state_object, + sym_introspection, + sym_array, + sym_literal, + sym_nullary_op, + [5918] = 29, ACTIONS(3), 1, sym_comment, - ACTIONS(112), 1, + ACTIONS(11), 1, + sym_identifier, + ACTIONS(13), 1, anon_sym_LBRACE, - ACTIONS(116), 1, + ACTIONS(15), 1, anon_sym_LPAREN, - ACTIONS(118), 1, - anon_sym_return, - ACTIONS(120), 1, - anon_sym_require, - ACTIONS(122), 1, - anon_sym_if, - ACTIONS(124), 1, - anon_sym_for, - ACTIONS(126), 1, - anon_sym_console_DOTlog, - ACTIONS(128), 1, - sym_identifier, - ACTIONS(134), 1, - anon_sym_RBRACE, - STATE(201), 1, - sym_base_type, - STATE(222), 1, - sym_type_name, - STATE(394), 1, - sym_function_call, - STATE(50), 2, - sym_statement, - aux_sym_function_definition_repeat2, - ACTIONS(27), 7, + ACTIONS(17), 1, + anon_sym_DASH, + ACTIONS(19), 1, + anon_sym_BANG, + ACTIONS(21), 1, + anon_sym_LBRACK, + ACTIONS(23), 1, + anon_sym_new, + ACTIONS(25), 1, + sym_output_root, + ACTIONS(27), 1, + sym_input_root, + ACTIONS(33), 1, + sym_number, + ACTIONS(37), 1, + anon_sym_date, + ACTIONS(43), 1, + anon_sym_this_DOTscriptSize, + STATE(56), 1, + sym_primary, + STATE(113), 1, + sym_unary, + STATE(115), 1, + sym_postfix, + STATE(119), 1, + sym_factor, + STATE(126), 1, + sym_term, + STATE(166), 1, + sym_comparison, + STATE(195), 1, + sym_equality, + STATE(240), 1, + sym_builtin_type, + STATE(366), 1, + sym_cast_type_name, + ACTIONS(31), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(35), 2, + sym_string_literal, + sym_hex_literal, + STATE(52), 2, + sym_unary_op, + aux_sym_unary_repeat1, + STATE(83), 3, + sym_boolean_literal, + sym_number_literal, + sym_date_literal, + ACTIONS(29), 7, anon_sym_int, anon_sym_bool, anon_sym_string, @@ -7950,50 +8597,81 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_sig, anon_sym_datasig, anon_sym_byte, - STATE(142), 12, - sym_variable_definition, - sym_tuple_assignment, - sym_function_call_assignment, - sym_state_function_call_assignment, - sym_call_statement, - sym_return_statement, - sym_assign_statement, - sym_time_op_statement, - sym_require_statement, - sym_if_statement, - sym_for_statement, - sym_console_statement, - [5384] = 16, + ACTIONS(41), 7, + anon_sym_this_DOTactiveInputIndex, + anon_sym_this_DOTactiveScriptPubKey, + anon_sym_this_DOTscriptSizeDataPrefix, + anon_sym_tx_DOTinputs_DOTlength, + anon_sym_tx_DOToutputs_DOTlength, + anon_sym_tx_DOTversion, + anon_sym_tx_DOTlocktime, + STATE(70), 9, + sym_parenthesized, + sym_cast, + sym_function_call, + sym_instantiation, + sym_state_object, + sym_introspection, + sym_array, + sym_literal, + sym_nullary_op, + [6031] = 28, ACTIONS(3), 1, sym_comment, - ACTIONS(112), 1, + ACTIONS(11), 1, + sym_identifier, + ACTIONS(13), 1, anon_sym_LBRACE, - ACTIONS(116), 1, + ACTIONS(15), 1, anon_sym_LPAREN, - ACTIONS(118), 1, - anon_sym_return, - ACTIONS(120), 1, - anon_sym_require, - ACTIONS(122), 1, - anon_sym_if, - ACTIONS(124), 1, - anon_sym_for, - ACTIONS(126), 1, - anon_sym_console_DOTlog, - ACTIONS(128), 1, - sym_identifier, - ACTIONS(134), 1, - anon_sym_RBRACE, - STATE(201), 1, - sym_base_type, - STATE(222), 1, - sym_type_name, - STATE(394), 1, - sym_function_call, - STATE(51), 2, - sym_statement, - aux_sym_function_definition_repeat2, - ACTIONS(27), 7, + ACTIONS(17), 1, + anon_sym_DASH, + ACTIONS(19), 1, + anon_sym_BANG, + ACTIONS(21), 1, + anon_sym_LBRACK, + ACTIONS(23), 1, + anon_sym_new, + ACTIONS(25), 1, + sym_output_root, + ACTIONS(27), 1, + sym_input_root, + ACTIONS(33), 1, + sym_number, + ACTIONS(37), 1, + anon_sym_date, + ACTIONS(43), 1, + anon_sym_this_DOTscriptSize, + STATE(56), 1, + sym_primary, + STATE(113), 1, + sym_unary, + STATE(115), 1, + sym_postfix, + STATE(119), 1, + sym_factor, + STATE(126), 1, + sym_term, + STATE(178), 1, + sym_comparison, + STATE(240), 1, + sym_builtin_type, + STATE(366), 1, + sym_cast_type_name, + ACTIONS(31), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(35), 2, + sym_string_literal, + sym_hex_literal, + STATE(52), 2, + sym_unary_op, + aux_sym_unary_repeat1, + STATE(83), 3, + sym_boolean_literal, + sym_number_literal, + sym_date_literal, + ACTIONS(29), 7, anon_sym_int, anon_sym_bool, anon_sym_string, @@ -8001,50 +8679,79 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_sig, anon_sym_datasig, anon_sym_byte, - STATE(142), 12, - sym_variable_definition, - sym_tuple_assignment, - sym_function_call_assignment, - sym_state_function_call_assignment, - sym_call_statement, - sym_return_statement, - sym_assign_statement, - sym_time_op_statement, - sym_require_statement, - sym_if_statement, - sym_for_statement, - sym_console_statement, - [5451] = 16, + ACTIONS(41), 7, + anon_sym_this_DOTactiveInputIndex, + anon_sym_this_DOTactiveScriptPubKey, + anon_sym_this_DOTscriptSizeDataPrefix, + anon_sym_tx_DOTinputs_DOTlength, + anon_sym_tx_DOToutputs_DOTlength, + anon_sym_tx_DOTversion, + anon_sym_tx_DOTlocktime, + STATE(70), 9, + sym_parenthesized, + sym_cast, + sym_function_call, + sym_instantiation, + sym_state_object, + sym_introspection, + sym_array, + sym_literal, + sym_nullary_op, + [6141] = 27, ACTIONS(3), 1, sym_comment, - ACTIONS(136), 1, + ACTIONS(11), 1, sym_identifier, - ACTIONS(139), 1, + ACTIONS(13), 1, anon_sym_LBRACE, - ACTIONS(142), 1, - anon_sym_RBRACE, - ACTIONS(144), 1, + ACTIONS(15), 1, anon_sym_LPAREN, - ACTIONS(147), 1, - anon_sym_return, - ACTIONS(150), 1, - anon_sym_require, - ACTIONS(153), 1, - anon_sym_if, - ACTIONS(156), 1, - anon_sym_for, - ACTIONS(159), 1, - anon_sym_console_DOTlog, - STATE(201), 1, - sym_base_type, - STATE(222), 1, - sym_type_name, - STATE(394), 1, - sym_function_call, - STATE(50), 2, - sym_statement, - aux_sym_function_definition_repeat2, - ACTIONS(162), 7, + ACTIONS(17), 1, + anon_sym_DASH, + ACTIONS(19), 1, + anon_sym_BANG, + ACTIONS(21), 1, + anon_sym_LBRACK, + ACTIONS(23), 1, + anon_sym_new, + ACTIONS(25), 1, + sym_output_root, + ACTIONS(27), 1, + sym_input_root, + ACTIONS(33), 1, + sym_number, + ACTIONS(37), 1, + anon_sym_date, + ACTIONS(43), 1, + anon_sym_this_DOTscriptSize, + STATE(56), 1, + sym_primary, + STATE(113), 1, + sym_unary, + STATE(115), 1, + sym_postfix, + STATE(119), 1, + sym_factor, + STATE(153), 1, + sym_term, + STATE(240), 1, + sym_builtin_type, + STATE(366), 1, + sym_cast_type_name, + ACTIONS(31), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(35), 2, + sym_string_literal, + sym_hex_literal, + STATE(52), 2, + sym_unary_op, + aux_sym_unary_repeat1, + STATE(83), 3, + sym_boolean_literal, + sym_number_literal, + sym_date_literal, + ACTIONS(29), 7, anon_sym_int, anon_sym_bool, anon_sym_string, @@ -8052,50 +8759,77 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_sig, anon_sym_datasig, anon_sym_byte, - STATE(142), 12, - sym_variable_definition, - sym_tuple_assignment, - sym_function_call_assignment, - sym_state_function_call_assignment, - sym_call_statement, - sym_return_statement, - sym_assign_statement, - sym_time_op_statement, - sym_require_statement, - sym_if_statement, - sym_for_statement, - sym_console_statement, - [5518] = 16, + ACTIONS(41), 7, + anon_sym_this_DOTactiveInputIndex, + anon_sym_this_DOTactiveScriptPubKey, + anon_sym_this_DOTscriptSizeDataPrefix, + anon_sym_tx_DOTinputs_DOTlength, + anon_sym_tx_DOToutputs_DOTlength, + anon_sym_tx_DOTversion, + anon_sym_tx_DOTlocktime, + STATE(70), 9, + sym_parenthesized, + sym_cast, + sym_function_call, + sym_instantiation, + sym_state_object, + sym_introspection, + sym_array, + sym_literal, + sym_nullary_op, + [6248] = 26, ACTIONS(3), 1, sym_comment, - ACTIONS(112), 1, + ACTIONS(11), 1, + sym_identifier, + ACTIONS(13), 1, anon_sym_LBRACE, - ACTIONS(116), 1, + ACTIONS(15), 1, anon_sym_LPAREN, - ACTIONS(118), 1, - anon_sym_return, - ACTIONS(120), 1, - anon_sym_require, - ACTIONS(122), 1, - anon_sym_if, - ACTIONS(124), 1, - anon_sym_for, - ACTIONS(126), 1, - anon_sym_console_DOTlog, - ACTIONS(128), 1, - sym_identifier, - ACTIONS(165), 1, - anon_sym_RBRACE, - STATE(201), 1, - sym_base_type, - STATE(222), 1, - sym_type_name, - STATE(394), 1, - sym_function_call, - STATE(50), 2, - sym_statement, - aux_sym_function_definition_repeat2, - ACTIONS(27), 7, + ACTIONS(17), 1, + anon_sym_DASH, + ACTIONS(19), 1, + anon_sym_BANG, + ACTIONS(21), 1, + anon_sym_LBRACK, + ACTIONS(23), 1, + anon_sym_new, + ACTIONS(25), 1, + sym_output_root, + ACTIONS(27), 1, + sym_input_root, + ACTIONS(33), 1, + sym_number, + ACTIONS(37), 1, + anon_sym_date, + ACTIONS(43), 1, + anon_sym_this_DOTscriptSize, + STATE(56), 1, + sym_primary, + STATE(113), 1, + sym_unary, + STATE(115), 1, + sym_postfix, + STATE(121), 1, + sym_factor, + STATE(240), 1, + sym_builtin_type, + STATE(366), 1, + sym_cast_type_name, + ACTIONS(31), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(35), 2, + sym_string_literal, + sym_hex_literal, + STATE(52), 2, + sym_unary_op, + aux_sym_unary_repeat1, + STATE(83), 3, + sym_boolean_literal, + sym_number_literal, + sym_date_literal, + ACTIONS(29), 7, anon_sym_int, anon_sym_bool, anon_sym_string, @@ -8103,50 +8837,75 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_sig, anon_sym_datasig, anon_sym_byte, - STATE(142), 12, - sym_variable_definition, - sym_tuple_assignment, - sym_function_call_assignment, - sym_state_function_call_assignment, - sym_call_statement, - sym_return_statement, - sym_assign_statement, - sym_time_op_statement, - sym_require_statement, - sym_if_statement, - sym_for_statement, - sym_console_statement, - [5585] = 16, + ACTIONS(41), 7, + anon_sym_this_DOTactiveInputIndex, + anon_sym_this_DOTactiveScriptPubKey, + anon_sym_this_DOTscriptSizeDataPrefix, + anon_sym_tx_DOTinputs_DOTlength, + anon_sym_tx_DOToutputs_DOTlength, + anon_sym_tx_DOTversion, + anon_sym_tx_DOTlocktime, + STATE(70), 9, + sym_parenthesized, + sym_cast, + sym_function_call, + sym_instantiation, + sym_state_object, + sym_introspection, + sym_array, + sym_literal, + sym_nullary_op, + [6352] = 25, ACTIONS(3), 1, sym_comment, - ACTIONS(112), 1, + ACTIONS(11), 1, + sym_identifier, + ACTIONS(13), 1, anon_sym_LBRACE, - ACTIONS(116), 1, + ACTIONS(15), 1, anon_sym_LPAREN, - ACTIONS(118), 1, - anon_sym_return, - ACTIONS(120), 1, - anon_sym_require, - ACTIONS(122), 1, - anon_sym_if, - ACTIONS(124), 1, - anon_sym_for, - ACTIONS(126), 1, - anon_sym_console_DOTlog, - ACTIONS(128), 1, - sym_identifier, - ACTIONS(167), 1, - anon_sym_RBRACE, - STATE(201), 1, - sym_base_type, - STATE(222), 1, - sym_type_name, - STATE(394), 1, - sym_function_call, - STATE(48), 2, - sym_statement, - aux_sym_function_definition_repeat2, - ACTIONS(27), 7, + ACTIONS(17), 1, + anon_sym_DASH, + ACTIONS(19), 1, + anon_sym_BANG, + ACTIONS(21), 1, + anon_sym_LBRACK, + ACTIONS(23), 1, + anon_sym_new, + ACTIONS(25), 1, + sym_output_root, + ACTIONS(27), 1, + sym_input_root, + ACTIONS(33), 1, + sym_number, + ACTIONS(37), 1, + anon_sym_date, + ACTIONS(43), 1, + anon_sym_this_DOTscriptSize, + STATE(56), 1, + sym_primary, + STATE(115), 1, + sym_postfix, + STATE(117), 1, + sym_unary, + STATE(240), 1, + sym_builtin_type, + STATE(366), 1, + sym_cast_type_name, + ACTIONS(31), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(35), 2, + sym_string_literal, + sym_hex_literal, + STATE(52), 2, + sym_unary_op, + aux_sym_unary_repeat1, + STATE(83), 3, + sym_boolean_literal, + sym_number_literal, + sym_date_literal, + ACTIONS(29), 7, anon_sym_int, anon_sym_bool, anon_sym_string, @@ -8154,50 +8913,73 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_sig, anon_sym_datasig, anon_sym_byte, - STATE(142), 12, - sym_variable_definition, - sym_tuple_assignment, - sym_function_call_assignment, - sym_state_function_call_assignment, - sym_call_statement, - sym_return_statement, - sym_assign_statement, - sym_time_op_statement, - sym_require_statement, - sym_if_statement, - sym_for_statement, - sym_console_statement, - [5652] = 16, + ACTIONS(41), 7, + anon_sym_this_DOTactiveInputIndex, + anon_sym_this_DOTactiveScriptPubKey, + anon_sym_this_DOTscriptSizeDataPrefix, + anon_sym_tx_DOTinputs_DOTlength, + anon_sym_tx_DOToutputs_DOTlength, + anon_sym_tx_DOTversion, + anon_sym_tx_DOTlocktime, + STATE(70), 9, + sym_parenthesized, + sym_cast, + sym_function_call, + sym_instantiation, + sym_state_object, + sym_introspection, + sym_array, + sym_literal, + sym_nullary_op, + [6453] = 24, ACTIONS(3), 1, sym_comment, - ACTIONS(112), 1, + ACTIONS(11), 1, + sym_identifier, + ACTIONS(13), 1, anon_sym_LBRACE, - ACTIONS(116), 1, + ACTIONS(15), 1, anon_sym_LPAREN, - ACTIONS(118), 1, - anon_sym_return, - ACTIONS(120), 1, - anon_sym_require, - ACTIONS(122), 1, - anon_sym_if, - ACTIONS(124), 1, - anon_sym_for, - ACTIONS(126), 1, - anon_sym_console_DOTlog, - ACTIONS(128), 1, - sym_identifier, - ACTIONS(169), 1, - anon_sym_RBRACE, - STATE(201), 1, - sym_base_type, - STATE(222), 1, - sym_type_name, - STATE(394), 1, - sym_function_call, - STATE(55), 2, - sym_statement, - aux_sym_function_definition_repeat2, - ACTIONS(27), 7, + ACTIONS(17), 1, + anon_sym_DASH, + ACTIONS(19), 1, + anon_sym_BANG, + ACTIONS(21), 1, + anon_sym_LBRACK, + ACTIONS(23), 1, + anon_sym_new, + ACTIONS(25), 1, + sym_output_root, + ACTIONS(27), 1, + sym_input_root, + ACTIONS(33), 1, + sym_number, + ACTIONS(37), 1, + anon_sym_date, + ACTIONS(43), 1, + anon_sym_this_DOTscriptSize, + STATE(56), 1, + sym_primary, + STATE(116), 1, + sym_postfix, + STATE(240), 1, + sym_builtin_type, + STATE(366), 1, + sym_cast_type_name, + ACTIONS(31), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(35), 2, + sym_string_literal, + sym_hex_literal, + STATE(65), 2, + sym_unary_op, + aux_sym_unary_repeat1, + STATE(83), 3, + sym_boolean_literal, + sym_number_literal, + sym_date_literal, + ACTIONS(29), 7, anon_sym_int, anon_sym_bool, anon_sym_string, @@ -8205,50 +8987,59 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_sig, anon_sym_datasig, anon_sym_byte, - STATE(142), 12, - sym_variable_definition, - sym_tuple_assignment, - sym_function_call_assignment, - sym_state_function_call_assignment, - sym_call_statement, - sym_return_statement, - sym_assign_statement, - sym_time_op_statement, - sym_require_statement, - sym_if_statement, - sym_for_statement, - sym_console_statement, - [5719] = 16, + ACTIONS(41), 7, + anon_sym_this_DOTactiveInputIndex, + anon_sym_this_DOTactiveScriptPubKey, + anon_sym_this_DOTscriptSizeDataPrefix, + anon_sym_tx_DOTinputs_DOTlength, + anon_sym_tx_DOToutputs_DOTlength, + anon_sym_tx_DOTversion, + anon_sym_tx_DOTlocktime, + STATE(70), 9, + sym_parenthesized, + sym_cast, + sym_function_call, + sym_instantiation, + sym_state_object, + sym_introspection, + sym_array, + sym_literal, + sym_nullary_op, + [6551] = 18, ACTIONS(3), 1, sym_comment, - ACTIONS(112), 1, + ACTIONS(73), 1, + sym_identifier, + ACTIONS(75), 1, anon_sym_LBRACE, - ACTIONS(116), 1, + ACTIONS(77), 1, + anon_sym_RBRACE, + ACTIONS(79), 1, anon_sym_LPAREN, - ACTIONS(118), 1, + ACTIONS(81), 1, anon_sym_return, - ACTIONS(120), 1, + ACTIONS(83), 1, anon_sym_require, - ACTIONS(122), 1, + ACTIONS(85), 1, anon_sym_if, - ACTIONS(124), 1, + ACTIONS(87), 1, anon_sym_for, - ACTIONS(126), 1, + ACTIONS(89), 1, anon_sym_console_DOTlog, - ACTIONS(128), 1, - sym_identifier, - ACTIONS(171), 1, - anon_sym_RBRACE, - STATE(201), 1, + STATE(203), 1, sym_base_type, - STATE(222), 1, + STATE(217), 1, + sym_builtin_type, + STATE(235), 1, sym_type_name, - STATE(394), 1, + STATE(246), 1, + sym_state_typed_binding, + STATE(358), 1, sym_function_call, - STATE(50), 2, + STATE(61), 2, sym_statement, - aux_sym_function_definition_repeat2, - ACTIONS(27), 7, + aux_sym_braced_block_repeat1, + ACTIONS(29), 7, anon_sym_int, anon_sym_bool, anon_sym_string, @@ -8256,11 +9047,13 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_sig, anon_sym_datasig, anon_sym_byte, - STATE(142), 12, + STATE(130), 14, + sym_braced_block, sym_variable_definition, sym_tuple_assignment, sym_function_call_assignment, sym_state_function_call_assignment, + sym_struct_destructure_assignment, sym_call_statement, sym_return_statement, sym_assign_statement, @@ -8269,37 +9062,183 @@ static const uint16_t ts_small_parse_table[] = { sym_if_statement, sym_for_statement, sym_console_statement, - [5786] = 16, + [6626] = 5, + ACTIONS(3), 1, + sym_comment, + STATE(92), 1, + sym_number_unit, + ACTIONS(93), 6, + anon_sym_GT, + anon_sym_LT, + anon_sym_DOT, + anon_sym_PIPE, + anon_sym_AMP, + anon_sym_SLASH, + ACTIONS(95), 8, + anon_sym_litras, + anon_sym_grains, + anon_sym_kas, + anon_sym_seconds, + anon_sym_minutes, + anon_sym_hours, + anon_sym_days, + anon_sym_weeks, + ACTIONS(91), 22, + anon_sym_SEMI, + anon_sym_CARET, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + anon_sym_RBRACE, + anon_sym_RBRACK, + anon_sym_COMMA, + anon_sym_RPAREN, + anon_sym_PIPE_PIPE, + anon_sym_AMP_AMP, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_LBRACK, + sym_unary_suffix, + anon_sym_DOTsplit, + anon_sym_DOTslice, + anon_sym_DOTappend, + anon_sym_DOTreverse, + [6675] = 12, + ACTIONS(3), 1, + sym_comment, + ACTIONS(101), 1, + anon_sym_DOT, + ACTIONS(104), 1, + anon_sym_LBRACK, + ACTIONS(107), 1, + sym_unary_suffix, + ACTIONS(110), 1, + anon_sym_DOTsplit, + ACTIONS(113), 1, + anon_sym_DOTslice, + ACTIONS(116), 1, + anon_sym_DOTappend, + ACTIONS(119), 1, + anon_sym_DOTreverse, + STATE(55), 2, + sym_postfix_op, + aux_sym_postfix_repeat1, + ACTIONS(99), 5, + anon_sym_GT, + anon_sym_LT, + anon_sym_PIPE, + anon_sym_AMP, + anon_sym_SLASH, + STATE(82), 6, + sym_tuple_index, + sym_split_call, + sym_slice_call, + sym_append_call, + sym_reverse_call, + sym_field_access, + ACTIONS(97), 16, + anon_sym_SEMI, + anon_sym_CARET, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + anon_sym_RBRACE, + anon_sym_RBRACK, + anon_sym_COMMA, + anon_sym_RPAREN, + anon_sym_PIPE_PIPE, + anon_sym_AMP_AMP, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + [6737] = 12, + ACTIONS(3), 1, + sym_comment, + ACTIONS(126), 1, + anon_sym_DOT, + ACTIONS(128), 1, + anon_sym_LBRACK, + ACTIONS(130), 1, + sym_unary_suffix, + ACTIONS(132), 1, + anon_sym_DOTsplit, + ACTIONS(134), 1, + anon_sym_DOTslice, + ACTIONS(136), 1, + anon_sym_DOTappend, + ACTIONS(138), 1, + anon_sym_DOTreverse, + STATE(60), 2, + sym_postfix_op, + aux_sym_postfix_repeat1, + ACTIONS(124), 5, + anon_sym_GT, + anon_sym_LT, + anon_sym_PIPE, + anon_sym_AMP, + anon_sym_SLASH, + STATE(82), 6, + sym_tuple_index, + sym_split_call, + sym_slice_call, + sym_append_call, + sym_reverse_call, + sym_field_access, + ACTIONS(122), 16, + anon_sym_SEMI, + anon_sym_CARET, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + anon_sym_RBRACE, + anon_sym_RBRACK, + anon_sym_COMMA, + anon_sym_RPAREN, + anon_sym_PIPE_PIPE, + anon_sym_AMP_AMP, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + [6799] = 17, ACTIONS(3), 1, sym_comment, - ACTIONS(112), 1, + ACTIONS(75), 1, anon_sym_LBRACE, - ACTIONS(116), 1, + ACTIONS(79), 1, anon_sym_LPAREN, - ACTIONS(118), 1, + ACTIONS(81), 1, anon_sym_return, - ACTIONS(120), 1, + ACTIONS(83), 1, anon_sym_require, - ACTIONS(122), 1, + ACTIONS(85), 1, anon_sym_if, - ACTIONS(124), 1, + ACTIONS(87), 1, anon_sym_for, - ACTIONS(126), 1, + ACTIONS(89), 1, anon_sym_console_DOTlog, - ACTIONS(128), 1, + ACTIONS(140), 1, sym_identifier, - ACTIONS(173), 1, + ACTIONS(142), 1, anon_sym_RBRACE, - STATE(201), 1, + STATE(203), 1, sym_base_type, - STATE(222), 1, + STATE(217), 1, + sym_builtin_type, + STATE(235), 1, sym_type_name, - STATE(394), 1, + STATE(358), 1, sym_function_call, - STATE(50), 2, + STATE(58), 2, sym_statement, - aux_sym_function_definition_repeat2, - ACTIONS(27), 7, + aux_sym_braced_block_repeat1, + ACTIONS(29), 7, anon_sym_int, anon_sym_bool, anon_sym_string, @@ -8307,11 +9246,13 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_sig, anon_sym_datasig, anon_sym_byte, - STATE(142), 12, + STATE(130), 14, + sym_braced_block, sym_variable_definition, sym_tuple_assignment, sym_function_call_assignment, sym_state_function_call_assignment, + sym_struct_destructure_assignment, sym_call_statement, sym_return_statement, sym_assign_statement, @@ -8320,37 +9261,39 @@ static const uint16_t ts_small_parse_table[] = { sym_if_statement, sym_for_statement, sym_console_statement, - [5853] = 16, + [6871] = 17, ACTIONS(3), 1, sym_comment, - ACTIONS(112), 1, + ACTIONS(75), 1, anon_sym_LBRACE, - ACTIONS(116), 1, + ACTIONS(79), 1, anon_sym_LPAREN, - ACTIONS(118), 1, + ACTIONS(81), 1, anon_sym_return, - ACTIONS(120), 1, + ACTIONS(83), 1, anon_sym_require, - ACTIONS(122), 1, + ACTIONS(85), 1, anon_sym_if, - ACTIONS(124), 1, + ACTIONS(87), 1, anon_sym_for, - ACTIONS(126), 1, + ACTIONS(89), 1, anon_sym_console_DOTlog, - ACTIONS(128), 1, + ACTIONS(140), 1, sym_identifier, - ACTIONS(173), 1, + ACTIONS(144), 1, anon_sym_RBRACE, - STATE(201), 1, + STATE(203), 1, sym_base_type, - STATE(222), 1, + STATE(217), 1, + sym_builtin_type, + STATE(235), 1, sym_type_name, - STATE(394), 1, + STATE(358), 1, sym_function_call, - STATE(57), 2, + STATE(59), 2, sym_statement, - aux_sym_function_definition_repeat2, - ACTIONS(27), 7, + aux_sym_braced_block_repeat1, + ACTIONS(29), 7, anon_sym_int, anon_sym_bool, anon_sym_string, @@ -8358,11 +9301,13 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_sig, anon_sym_datasig, anon_sym_byte, - STATE(142), 12, + STATE(130), 14, + sym_braced_block, sym_variable_definition, sym_tuple_assignment, sym_function_call_assignment, sym_state_function_call_assignment, + sym_struct_destructure_assignment, sym_call_statement, sym_return_statement, sym_assign_statement, @@ -8371,37 +9316,39 @@ static const uint16_t ts_small_parse_table[] = { sym_if_statement, sym_for_statement, sym_console_statement, - [5920] = 16, + [6943] = 17, ACTIONS(3), 1, sym_comment, - ACTIONS(112), 1, + ACTIONS(146), 1, + sym_identifier, + ACTIONS(149), 1, anon_sym_LBRACE, - ACTIONS(116), 1, + ACTIONS(152), 1, + anon_sym_RBRACE, + ACTIONS(154), 1, anon_sym_LPAREN, - ACTIONS(118), 1, + ACTIONS(157), 1, anon_sym_return, - ACTIONS(120), 1, + ACTIONS(160), 1, anon_sym_require, - ACTIONS(122), 1, + ACTIONS(163), 1, anon_sym_if, - ACTIONS(124), 1, + ACTIONS(166), 1, anon_sym_for, - ACTIONS(126), 1, + ACTIONS(169), 1, anon_sym_console_DOTlog, - ACTIONS(128), 1, - sym_identifier, - ACTIONS(175), 1, - anon_sym_RBRACE, - STATE(201), 1, + STATE(203), 1, sym_base_type, - STATE(222), 1, + STATE(217), 1, + sym_builtin_type, + STATE(235), 1, sym_type_name, - STATE(394), 1, + STATE(358), 1, sym_function_call, - STATE(50), 2, + STATE(59), 2, sym_statement, - aux_sym_function_definition_repeat2, - ACTIONS(27), 7, + aux_sym_braced_block_repeat1, + ACTIONS(172), 7, anon_sym_int, anon_sym_bool, anon_sym_string, @@ -8409,11 +9356,13 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_sig, anon_sym_datasig, anon_sym_byte, - STATE(142), 12, + STATE(130), 14, + sym_braced_block, sym_variable_definition, sym_tuple_assignment, sym_function_call_assignment, sym_state_function_call_assignment, + sym_struct_destructure_assignment, sym_call_statement, sym_return_statement, sym_assign_statement, @@ -8422,37 +9371,89 @@ static const uint16_t ts_small_parse_table[] = { sym_if_statement, sym_for_statement, sym_console_statement, - [5987] = 16, + [7015] = 12, + ACTIONS(3), 1, + sym_comment, + ACTIONS(126), 1, + anon_sym_DOT, + ACTIONS(128), 1, + anon_sym_LBRACK, + ACTIONS(130), 1, + sym_unary_suffix, + ACTIONS(132), 1, + anon_sym_DOTsplit, + ACTIONS(134), 1, + anon_sym_DOTslice, + ACTIONS(136), 1, + anon_sym_DOTappend, + ACTIONS(138), 1, + anon_sym_DOTreverse, + STATE(55), 2, + sym_postfix_op, + aux_sym_postfix_repeat1, + ACTIONS(177), 5, + anon_sym_GT, + anon_sym_LT, + anon_sym_PIPE, + anon_sym_AMP, + anon_sym_SLASH, + STATE(82), 6, + sym_tuple_index, + sym_split_call, + sym_slice_call, + sym_append_call, + sym_reverse_call, + sym_field_access, + ACTIONS(175), 16, + anon_sym_SEMI, + anon_sym_CARET, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + anon_sym_RBRACE, + anon_sym_RBRACK, + anon_sym_COMMA, + anon_sym_RPAREN, + anon_sym_PIPE_PIPE, + anon_sym_AMP_AMP, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + [7077] = 17, ACTIONS(3), 1, sym_comment, - ACTIONS(112), 1, + ACTIONS(75), 1, anon_sym_LBRACE, - ACTIONS(116), 1, + ACTIONS(79), 1, anon_sym_LPAREN, - ACTIONS(118), 1, + ACTIONS(81), 1, anon_sym_return, - ACTIONS(120), 1, + ACTIONS(83), 1, anon_sym_require, - ACTIONS(122), 1, + ACTIONS(85), 1, anon_sym_if, - ACTIONS(124), 1, + ACTIONS(87), 1, anon_sym_for, - ACTIONS(126), 1, + ACTIONS(89), 1, anon_sym_console_DOTlog, - ACTIONS(128), 1, + ACTIONS(140), 1, sym_identifier, - ACTIONS(177), 1, + ACTIONS(179), 1, anon_sym_RBRACE, - STATE(201), 1, + STATE(203), 1, sym_base_type, - STATE(222), 1, + STATE(217), 1, + sym_builtin_type, + STATE(235), 1, sym_type_name, - STATE(394), 1, + STATE(358), 1, sym_function_call, - STATE(46), 2, + STATE(59), 2, sym_statement, - aux_sym_function_definition_repeat2, - ACTIONS(27), 7, + aux_sym_braced_block_repeat1, + ACTIONS(29), 7, anon_sym_int, anon_sym_bool, anon_sym_string, @@ -8460,11 +9461,13 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_sig, anon_sym_datasig, anon_sym_byte, - STATE(142), 12, + STATE(130), 14, + sym_braced_block, sym_variable_definition, sym_tuple_assignment, sym_function_call_assignment, sym_state_function_call_assignment, + sym_struct_destructure_assignment, sym_call_statement, sym_return_statement, sym_assign_statement, @@ -8473,36 +9476,36 @@ static const uint16_t ts_small_parse_table[] = { sym_if_statement, sym_for_statement, sym_console_statement, - [6054] = 16, + [7149] = 16, ACTIONS(3), 1, sym_comment, - ACTIONS(116), 1, + ACTIONS(75), 1, + anon_sym_LBRACE, + ACTIONS(79), 1, anon_sym_LPAREN, - ACTIONS(118), 1, + ACTIONS(81), 1, anon_sym_return, - ACTIONS(120), 1, + ACTIONS(83), 1, anon_sym_require, - ACTIONS(122), 1, + ACTIONS(85), 1, anon_sym_if, - ACTIONS(124), 1, + ACTIONS(87), 1, anon_sym_for, - ACTIONS(126), 1, + ACTIONS(89), 1, anon_sym_console_DOTlog, - ACTIONS(128), 1, + ACTIONS(140), 1, sym_identifier, - ACTIONS(179), 1, - anon_sym_LBRACE, - STATE(130), 1, + STATE(145), 1, sym_statement, - STATE(141), 1, - sym_block, - STATE(201), 1, + STATE(203), 1, sym_base_type, - STATE(222), 1, + STATE(217), 1, + sym_builtin_type, + STATE(235), 1, sym_type_name, - STATE(394), 1, + STATE(358), 1, sym_function_call, - ACTIONS(27), 7, + ACTIONS(29), 7, anon_sym_int, anon_sym_bool, anon_sym_string, @@ -8510,11 +9513,13 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_sig, anon_sym_datasig, anon_sym_byte, - STATE(142), 12, + STATE(130), 14, + sym_braced_block, sym_variable_definition, sym_tuple_assignment, sym_function_call_assignment, sym_state_function_call_assignment, + sym_struct_destructure_assignment, sym_call_statement, sym_return_statement, sym_assign_statement, @@ -8523,36 +9528,36 @@ static const uint16_t ts_small_parse_table[] = { sym_if_statement, sym_for_statement, sym_console_statement, - [6120] = 16, + [7217] = 16, ACTIONS(3), 1, sym_comment, - ACTIONS(116), 1, + ACTIONS(75), 1, + anon_sym_LBRACE, + ACTIONS(79), 1, anon_sym_LPAREN, - ACTIONS(118), 1, + ACTIONS(81), 1, anon_sym_return, - ACTIONS(120), 1, + ACTIONS(83), 1, anon_sym_require, - ACTIONS(122), 1, + ACTIONS(85), 1, anon_sym_if, - ACTIONS(124), 1, + ACTIONS(87), 1, anon_sym_for, - ACTIONS(126), 1, + ACTIONS(89), 1, anon_sym_console_DOTlog, - ACTIONS(128), 1, + ACTIONS(140), 1, sym_identifier, - ACTIONS(179), 1, - anon_sym_LBRACE, - STATE(129), 1, - sym_block, - STATE(130), 1, + STATE(151), 1, sym_statement, - STATE(201), 1, + STATE(203), 1, sym_base_type, - STATE(222), 1, + STATE(217), 1, + sym_builtin_type, + STATE(235), 1, sym_type_name, - STATE(394), 1, + STATE(358), 1, sym_function_call, - ACTIONS(27), 7, + ACTIONS(29), 7, anon_sym_int, anon_sym_bool, anon_sym_string, @@ -8560,11 +9565,13 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_sig, anon_sym_datasig, anon_sym_byte, - STATE(142), 12, + STATE(130), 14, + sym_braced_block, sym_variable_definition, sym_tuple_assignment, sym_function_call_assignment, sym_state_function_call_assignment, + sym_struct_destructure_assignment, sym_call_statement, sym_return_statement, sym_assign_statement, @@ -8573,36 +9580,36 @@ static const uint16_t ts_small_parse_table[] = { sym_if_statement, sym_for_statement, sym_console_statement, - [6186] = 16, + [7285] = 16, ACTIONS(3), 1, sym_comment, - ACTIONS(116), 1, + ACTIONS(75), 1, + anon_sym_LBRACE, + ACTIONS(79), 1, anon_sym_LPAREN, - ACTIONS(118), 1, + ACTIONS(81), 1, anon_sym_return, - ACTIONS(120), 1, + ACTIONS(83), 1, anon_sym_require, - ACTIONS(122), 1, + ACTIONS(85), 1, anon_sym_if, - ACTIONS(124), 1, + ACTIONS(87), 1, anon_sym_for, - ACTIONS(126), 1, + ACTIONS(89), 1, anon_sym_console_DOTlog, - ACTIONS(128), 1, + ACTIONS(140), 1, sym_identifier, - ACTIONS(179), 1, - anon_sym_LBRACE, - STATE(124), 1, - sym_block, - STATE(130), 1, + STATE(133), 1, sym_statement, - STATE(201), 1, + STATE(203), 1, sym_base_type, - STATE(222), 1, + STATE(217), 1, + sym_builtin_type, + STATE(235), 1, sym_type_name, - STATE(394), 1, + STATE(358), 1, sym_function_call, - ACTIONS(27), 7, + ACTIONS(29), 7, anon_sym_int, anon_sym_bool, anon_sym_string, @@ -8610,11 +9617,13 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_sig, anon_sym_datasig, anon_sym_byte, - STATE(142), 12, + STATE(130), 14, + sym_braced_block, sym_variable_definition, sym_tuple_assignment, sym_function_call_assignment, sym_state_function_call_assignment, + sym_struct_destructure_assignment, sym_call_statement, sym_return_statement, sym_assign_statement, @@ -8623,14 +9632,14 @@ static const uint16_t ts_small_parse_table[] = { sym_if_statement, sym_for_statement, sym_console_statement, - [6252] = 6, + [7353] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(185), 1, anon_sym_DASH, ACTIONS(188), 1, anon_sym_BANG, - STATE(62), 2, + STATE(65), 2, sym_unary_op, aux_sym_unary_repeat1, ACTIONS(181), 5, @@ -8663,1363 +9672,1455 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_tx_DOToutputs_DOTlength, anon_sym_tx_DOTversion, anon_sym_tx_DOTlocktime, - [6298] = 6, + [7399] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(193), 1, + ACTIONS(191), 6, + anon_sym_DASH, + sym_output_root, + sym_input_root, + sym_number, + anon_sym_this_DOTscriptSize, + sym_identifier, + ACTIONS(193), 24, + anon_sym_LBRACE, anon_sym_LPAREN, - ACTIONS(198), 1, + anon_sym_BANG, anon_sym_LBRACK, - STATE(72), 1, + anon_sym_new, + anon_sym_int, + anon_sym_bool, + anon_sym_string, + anon_sym_pubkey, + anon_sym_sig, + anon_sym_datasig, + anon_sym_byte, + anon_sym_true, + anon_sym_false, + sym_string_literal, + anon_sym_date, + sym_hex_literal, + anon_sym_this_DOTactiveInputIndex, + anon_sym_this_DOTactiveScriptPubKey, + anon_sym_this_DOTscriptSizeDataPrefix, + anon_sym_tx_DOTinputs_DOTlength, + anon_sym_tx_DOToutputs_DOTlength, + anon_sym_tx_DOTversion, + anon_sym_tx_DOTlocktime, + [7437] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(199), 1, + anon_sym_LPAREN, + STATE(95), 1, sym_expression_list, - ACTIONS(196), 6, + ACTIONS(197), 6, + anon_sym_GT, + anon_sym_LT, + anon_sym_DOT, anon_sym_PIPE, anon_sym_AMP, - anon_sym_LT, - anon_sym_GT, anon_sym_SLASH, - anon_sym_DOT, - ACTIONS(191), 21, + ACTIONS(195), 22, anon_sym_SEMI, + anon_sym_CARET, + anon_sym_GT_EQ, + anon_sym_LT_EQ, anon_sym_RBRACE, + anon_sym_RBRACK, anon_sym_COMMA, anon_sym_RPAREN, - anon_sym_GT_EQ, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, - anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, - anon_sym_LT_EQ, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_PERCENT, + anon_sym_LBRACK, + sym_unary_suffix, + anon_sym_DOTsplit, + anon_sym_DOTslice, + anon_sym_DOTappend, + anon_sym_DOTreverse, + [7479] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(203), 6, + anon_sym_GT, + anon_sym_LT, + anon_sym_DOT, + anon_sym_PIPE, + anon_sym_AMP, + anon_sym_SLASH, + ACTIONS(201), 22, + anon_sym_SEMI, + anon_sym_CARET, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + anon_sym_RBRACE, anon_sym_RBRACK, + anon_sym_COMMA, + anon_sym_RPAREN, + anon_sym_PIPE_PIPE, + anon_sym_AMP_AMP, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_LBRACK, sym_unary_suffix, anon_sym_DOTsplit, anon_sym_DOTslice, anon_sym_DOTappend, anon_sym_DOTreverse, - [6342] = 3, + [7515] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(201), 6, + ACTIONS(207), 6, + anon_sym_GT, + anon_sym_LT, + anon_sym_DOT, + anon_sym_PIPE, + anon_sym_AMP, + anon_sym_SLASH, + ACTIONS(205), 22, + anon_sym_SEMI, + anon_sym_CARET, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + anon_sym_RBRACE, + anon_sym_RBRACK, + anon_sym_COMMA, + anon_sym_RPAREN, + anon_sym_PIPE_PIPE, + anon_sym_AMP_AMP, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_PLUS, anon_sym_DASH, - sym_output_root, - sym_input_root, - sym_number, - anon_sym_this_DOTscriptSize, - sym_identifier, - ACTIONS(203), 24, - anon_sym_LBRACE, - anon_sym_LPAREN, - anon_sym_BANG, + anon_sym_STAR, + anon_sym_PERCENT, anon_sym_LBRACK, - anon_sym_new, - anon_sym_int, - anon_sym_bool, - anon_sym_string, - anon_sym_pubkey, - anon_sym_sig, - anon_sym_datasig, - anon_sym_byte, - anon_sym_true, - anon_sym_false, - sym_string_literal, - anon_sym_date, - sym_hex_literal, - anon_sym_this_DOTactiveInputIndex, - anon_sym_this_DOTactiveScriptPubKey, - anon_sym_this_DOTscriptSizeDataPrefix, - anon_sym_tx_DOTinputs_DOTlength, - anon_sym_tx_DOToutputs_DOTlength, - anon_sym_tx_DOTversion, - anon_sym_tx_DOTlocktime, - [6380] = 3, + sym_unary_suffix, + anon_sym_DOTsplit, + anon_sym_DOTslice, + anon_sym_DOTappend, + anon_sym_DOTreverse, + [7551] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(207), 6, + ACTIONS(197), 6, + anon_sym_GT, + anon_sym_LT, + anon_sym_DOT, anon_sym_PIPE, anon_sym_AMP, - anon_sym_LT, - anon_sym_GT, anon_sym_SLASH, - anon_sym_DOT, - ACTIONS(205), 22, + ACTIONS(195), 22, anon_sym_SEMI, + anon_sym_CARET, + anon_sym_GT_EQ, + anon_sym_LT_EQ, anon_sym_RBRACE, + anon_sym_RBRACK, anon_sym_COMMA, anon_sym_RPAREN, - anon_sym_GT_EQ, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, - anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, - anon_sym_LT_EQ, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_PERCENT, anon_sym_LBRACK, - anon_sym_RBRACK, sym_unary_suffix, anon_sym_DOTsplit, anon_sym_DOTslice, anon_sym_DOTappend, anon_sym_DOTreverse, - [6416] = 3, + [7587] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(211), 6, + anon_sym_GT, + anon_sym_LT, + anon_sym_DOT, anon_sym_PIPE, anon_sym_AMP, - anon_sym_LT, - anon_sym_GT, anon_sym_SLASH, - anon_sym_DOT, ACTIONS(209), 22, anon_sym_SEMI, + anon_sym_CARET, + anon_sym_GT_EQ, + anon_sym_LT_EQ, anon_sym_RBRACE, + anon_sym_RBRACK, anon_sym_COMMA, anon_sym_RPAREN, - anon_sym_GT_EQ, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, - anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, - anon_sym_LT_EQ, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_PERCENT, anon_sym_LBRACK, - anon_sym_RBRACK, sym_unary_suffix, anon_sym_DOTsplit, anon_sym_DOTslice, anon_sym_DOTappend, anon_sym_DOTreverse, - [6452] = 3, + [7623] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(215), 6, + anon_sym_GT, + anon_sym_LT, + anon_sym_DOT, anon_sym_PIPE, anon_sym_AMP, - anon_sym_LT, - anon_sym_GT, anon_sym_SLASH, - anon_sym_DOT, ACTIONS(213), 22, anon_sym_SEMI, + anon_sym_CARET, + anon_sym_GT_EQ, + anon_sym_LT_EQ, anon_sym_RBRACE, + anon_sym_RBRACK, anon_sym_COMMA, anon_sym_RPAREN, - anon_sym_GT_EQ, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, - anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, - anon_sym_LT_EQ, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_PERCENT, anon_sym_LBRACK, - anon_sym_RBRACK, sym_unary_suffix, anon_sym_DOTsplit, anon_sym_DOTslice, anon_sym_DOTappend, anon_sym_DOTreverse, - [6488] = 3, + [7659] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(219), 6, + anon_sym_GT, + anon_sym_LT, + anon_sym_DOT, anon_sym_PIPE, anon_sym_AMP, - anon_sym_LT, - anon_sym_GT, anon_sym_SLASH, - anon_sym_DOT, ACTIONS(217), 22, anon_sym_SEMI, + anon_sym_CARET, + anon_sym_GT_EQ, + anon_sym_LT_EQ, anon_sym_RBRACE, + anon_sym_RBRACK, anon_sym_COMMA, anon_sym_RPAREN, - anon_sym_GT_EQ, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, - anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, - anon_sym_LT_EQ, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_PERCENT, anon_sym_LBRACK, - anon_sym_RBRACK, sym_unary_suffix, anon_sym_DOTsplit, anon_sym_DOTslice, anon_sym_DOTappend, anon_sym_DOTreverse, - [6524] = 3, + [7695] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(223), 6, + anon_sym_GT, + anon_sym_LT, + anon_sym_DOT, anon_sym_PIPE, anon_sym_AMP, - anon_sym_LT, - anon_sym_GT, anon_sym_SLASH, - anon_sym_DOT, ACTIONS(221), 22, anon_sym_SEMI, + anon_sym_CARET, + anon_sym_GT_EQ, + anon_sym_LT_EQ, anon_sym_RBRACE, + anon_sym_RBRACK, anon_sym_COMMA, anon_sym_RPAREN, - anon_sym_GT_EQ, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, - anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, - anon_sym_LT_EQ, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_PERCENT, anon_sym_LBRACK, - anon_sym_RBRACK, sym_unary_suffix, anon_sym_DOTsplit, anon_sym_DOTslice, anon_sym_DOTappend, anon_sym_DOTreverse, - [6560] = 3, + [7731] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(227), 6, + anon_sym_GT, + anon_sym_LT, + anon_sym_DOT, anon_sym_PIPE, anon_sym_AMP, - anon_sym_LT, - anon_sym_GT, anon_sym_SLASH, - anon_sym_DOT, ACTIONS(225), 22, anon_sym_SEMI, + anon_sym_CARET, + anon_sym_GT_EQ, + anon_sym_LT_EQ, anon_sym_RBRACE, + anon_sym_RBRACK, anon_sym_COMMA, anon_sym_RPAREN, - anon_sym_GT_EQ, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, - anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, - anon_sym_LT_EQ, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_PERCENT, anon_sym_LBRACK, - anon_sym_RBRACK, sym_unary_suffix, anon_sym_DOTsplit, anon_sym_DOTslice, anon_sym_DOTappend, anon_sym_DOTreverse, - [6596] = 3, + [7767] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(231), 6, + anon_sym_GT, + anon_sym_LT, + anon_sym_DOT, anon_sym_PIPE, anon_sym_AMP, - anon_sym_LT, - anon_sym_GT, anon_sym_SLASH, - anon_sym_DOT, ACTIONS(229), 22, anon_sym_SEMI, + anon_sym_CARET, + anon_sym_GT_EQ, + anon_sym_LT_EQ, anon_sym_RBRACE, + anon_sym_RBRACK, anon_sym_COMMA, anon_sym_RPAREN, - anon_sym_GT_EQ, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, - anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, - anon_sym_LT_EQ, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_PERCENT, anon_sym_LBRACK, - anon_sym_RBRACK, sym_unary_suffix, anon_sym_DOTsplit, anon_sym_DOTslice, anon_sym_DOTappend, anon_sym_DOTreverse, - [6632] = 3, + [7803] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(235), 6, + anon_sym_GT, + anon_sym_LT, + anon_sym_DOT, anon_sym_PIPE, anon_sym_AMP, - anon_sym_LT, - anon_sym_GT, anon_sym_SLASH, - anon_sym_DOT, ACTIONS(233), 22, anon_sym_SEMI, + anon_sym_CARET, + anon_sym_GT_EQ, + anon_sym_LT_EQ, anon_sym_RBRACE, + anon_sym_RBRACK, anon_sym_COMMA, anon_sym_RPAREN, - anon_sym_GT_EQ, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, - anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, - anon_sym_LT_EQ, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_PERCENT, anon_sym_LBRACK, - anon_sym_RBRACK, sym_unary_suffix, anon_sym_DOTsplit, anon_sym_DOTslice, anon_sym_DOTappend, anon_sym_DOTreverse, - [6668] = 3, + [7839] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(239), 6, + anon_sym_GT, + anon_sym_LT, + anon_sym_DOT, anon_sym_PIPE, anon_sym_AMP, - anon_sym_LT, - anon_sym_GT, anon_sym_SLASH, - anon_sym_DOT, ACTIONS(237), 22, anon_sym_SEMI, + anon_sym_CARET, + anon_sym_GT_EQ, + anon_sym_LT_EQ, anon_sym_RBRACE, + anon_sym_RBRACK, anon_sym_COMMA, anon_sym_RPAREN, - anon_sym_GT_EQ, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, - anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, - anon_sym_LT_EQ, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_PERCENT, anon_sym_LBRACK, - anon_sym_RBRACK, sym_unary_suffix, anon_sym_DOTsplit, anon_sym_DOTslice, anon_sym_DOTappend, anon_sym_DOTreverse, - [6704] = 3, + [7875] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(243), 6, + anon_sym_GT, + anon_sym_LT, + anon_sym_DOT, anon_sym_PIPE, anon_sym_AMP, - anon_sym_LT, - anon_sym_GT, anon_sym_SLASH, - anon_sym_DOT, ACTIONS(241), 22, anon_sym_SEMI, + anon_sym_CARET, + anon_sym_GT_EQ, + anon_sym_LT_EQ, anon_sym_RBRACE, + anon_sym_RBRACK, anon_sym_COMMA, anon_sym_RPAREN, - anon_sym_GT_EQ, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, - anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, - anon_sym_LT_EQ, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_PERCENT, anon_sym_LBRACK, - anon_sym_RBRACK, sym_unary_suffix, anon_sym_DOTsplit, anon_sym_DOTslice, anon_sym_DOTappend, anon_sym_DOTreverse, - [6740] = 3, + [7911] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(247), 6, + anon_sym_GT, + anon_sym_LT, + anon_sym_DOT, anon_sym_PIPE, anon_sym_AMP, - anon_sym_LT, - anon_sym_GT, anon_sym_SLASH, - anon_sym_DOT, ACTIONS(245), 22, anon_sym_SEMI, + anon_sym_CARET, + anon_sym_GT_EQ, + anon_sym_LT_EQ, anon_sym_RBRACE, + anon_sym_RBRACK, anon_sym_COMMA, anon_sym_RPAREN, - anon_sym_GT_EQ, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, - anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, - anon_sym_LT_EQ, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_PERCENT, anon_sym_LBRACK, - anon_sym_RBRACK, sym_unary_suffix, anon_sym_DOTsplit, anon_sym_DOTslice, anon_sym_DOTappend, anon_sym_DOTreverse, - [6776] = 3, + [7947] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(251), 6, + anon_sym_GT, + anon_sym_LT, + anon_sym_DOT, anon_sym_PIPE, anon_sym_AMP, - anon_sym_LT, - anon_sym_GT, anon_sym_SLASH, - anon_sym_DOT, ACTIONS(249), 22, anon_sym_SEMI, + anon_sym_CARET, + anon_sym_GT_EQ, + anon_sym_LT_EQ, anon_sym_RBRACE, + anon_sym_RBRACK, anon_sym_COMMA, anon_sym_RPAREN, - anon_sym_GT_EQ, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, - anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, - anon_sym_LT_EQ, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_PERCENT, anon_sym_LBRACK, - anon_sym_RBRACK, sym_unary_suffix, anon_sym_DOTsplit, anon_sym_DOTslice, anon_sym_DOTappend, anon_sym_DOTreverse, - [6812] = 3, + [7983] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(255), 6, + anon_sym_GT, + anon_sym_LT, + anon_sym_DOT, anon_sym_PIPE, anon_sym_AMP, - anon_sym_LT, - anon_sym_GT, anon_sym_SLASH, - anon_sym_DOT, ACTIONS(253), 22, anon_sym_SEMI, + anon_sym_CARET, + anon_sym_GT_EQ, + anon_sym_LT_EQ, anon_sym_RBRACE, + anon_sym_RBRACK, anon_sym_COMMA, anon_sym_RPAREN, - anon_sym_GT_EQ, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, - anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, - anon_sym_LT_EQ, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_PERCENT, anon_sym_LBRACK, - anon_sym_RBRACK, sym_unary_suffix, anon_sym_DOTsplit, anon_sym_DOTslice, anon_sym_DOTappend, anon_sym_DOTreverse, - [6848] = 3, + [8019] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(259), 6, + anon_sym_GT, + anon_sym_LT, + anon_sym_DOT, anon_sym_PIPE, anon_sym_AMP, - anon_sym_LT, - anon_sym_GT, anon_sym_SLASH, - anon_sym_DOT, ACTIONS(257), 22, anon_sym_SEMI, + anon_sym_CARET, + anon_sym_GT_EQ, + anon_sym_LT_EQ, anon_sym_RBRACE, + anon_sym_RBRACK, anon_sym_COMMA, anon_sym_RPAREN, - anon_sym_GT_EQ, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, - anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, - anon_sym_LT_EQ, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_PERCENT, anon_sym_LBRACK, - anon_sym_RBRACK, sym_unary_suffix, anon_sym_DOTsplit, anon_sym_DOTslice, anon_sym_DOTappend, anon_sym_DOTreverse, - [6884] = 3, + [8055] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(263), 6, + anon_sym_GT, + anon_sym_LT, + anon_sym_DOT, anon_sym_PIPE, anon_sym_AMP, - anon_sym_LT, - anon_sym_GT, anon_sym_SLASH, - anon_sym_DOT, ACTIONS(261), 22, anon_sym_SEMI, + anon_sym_CARET, + anon_sym_GT_EQ, + anon_sym_LT_EQ, anon_sym_RBRACE, + anon_sym_RBRACK, anon_sym_COMMA, anon_sym_RPAREN, - anon_sym_GT_EQ, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, - anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, - anon_sym_LT_EQ, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_PERCENT, anon_sym_LBRACK, - anon_sym_RBRACK, sym_unary_suffix, anon_sym_DOTsplit, anon_sym_DOTslice, anon_sym_DOTappend, anon_sym_DOTreverse, - [6920] = 3, + [8091] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(267), 6, + anon_sym_GT, + anon_sym_LT, + anon_sym_DOT, anon_sym_PIPE, anon_sym_AMP, - anon_sym_LT, - anon_sym_GT, anon_sym_SLASH, - anon_sym_DOT, ACTIONS(265), 22, anon_sym_SEMI, + anon_sym_CARET, + anon_sym_GT_EQ, + anon_sym_LT_EQ, anon_sym_RBRACE, + anon_sym_RBRACK, anon_sym_COMMA, anon_sym_RPAREN, - anon_sym_GT_EQ, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, - anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, - anon_sym_LT_EQ, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_PERCENT, anon_sym_LBRACK, - anon_sym_RBRACK, sym_unary_suffix, anon_sym_DOTsplit, anon_sym_DOTslice, anon_sym_DOTappend, anon_sym_DOTreverse, - [6956] = 3, + [8127] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(271), 6, + anon_sym_GT, + anon_sym_LT, + anon_sym_DOT, anon_sym_PIPE, anon_sym_AMP, - anon_sym_LT, - anon_sym_GT, anon_sym_SLASH, - anon_sym_DOT, ACTIONS(269), 22, anon_sym_SEMI, + anon_sym_CARET, + anon_sym_GT_EQ, + anon_sym_LT_EQ, anon_sym_RBRACE, + anon_sym_RBRACK, anon_sym_COMMA, anon_sym_RPAREN, - anon_sym_GT_EQ, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, - anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, - anon_sym_LT_EQ, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_PERCENT, anon_sym_LBRACK, - anon_sym_RBRACK, sym_unary_suffix, anon_sym_DOTsplit, anon_sym_DOTslice, anon_sym_DOTappend, anon_sym_DOTreverse, - [6992] = 3, + [8163] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(275), 6, + anon_sym_GT, + anon_sym_LT, + anon_sym_DOT, anon_sym_PIPE, anon_sym_AMP, - anon_sym_LT, - anon_sym_GT, anon_sym_SLASH, - anon_sym_DOT, ACTIONS(273), 22, anon_sym_SEMI, + anon_sym_CARET, + anon_sym_GT_EQ, + anon_sym_LT_EQ, anon_sym_RBRACE, + anon_sym_RBRACK, anon_sym_COMMA, anon_sym_RPAREN, - anon_sym_GT_EQ, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, - anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, - anon_sym_LT_EQ, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_PERCENT, anon_sym_LBRACK, - anon_sym_RBRACK, sym_unary_suffix, anon_sym_DOTsplit, anon_sym_DOTslice, anon_sym_DOTappend, anon_sym_DOTreverse, - [7028] = 3, + [8199] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(279), 6, + anon_sym_GT, + anon_sym_LT, + anon_sym_DOT, anon_sym_PIPE, anon_sym_AMP, - anon_sym_LT, - anon_sym_GT, anon_sym_SLASH, - anon_sym_DOT, ACTIONS(277), 22, anon_sym_SEMI, + anon_sym_CARET, + anon_sym_GT_EQ, + anon_sym_LT_EQ, anon_sym_RBRACE, + anon_sym_RBRACK, anon_sym_COMMA, anon_sym_RPAREN, - anon_sym_GT_EQ, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, - anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, - anon_sym_LT_EQ, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_PERCENT, anon_sym_LBRACK, - anon_sym_RBRACK, sym_unary_suffix, anon_sym_DOTsplit, anon_sym_DOTslice, anon_sym_DOTappend, anon_sym_DOTreverse, - [7064] = 3, + [8235] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(283), 6, + anon_sym_GT, + anon_sym_LT, + anon_sym_DOT, anon_sym_PIPE, anon_sym_AMP, - anon_sym_LT, - anon_sym_GT, anon_sym_SLASH, - anon_sym_DOT, ACTIONS(281), 22, anon_sym_SEMI, + anon_sym_CARET, + anon_sym_GT_EQ, + anon_sym_LT_EQ, anon_sym_RBRACE, + anon_sym_RBRACK, anon_sym_COMMA, anon_sym_RPAREN, - anon_sym_GT_EQ, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, - anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, - anon_sym_LT_EQ, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_PERCENT, anon_sym_LBRACK, - anon_sym_RBRACK, sym_unary_suffix, anon_sym_DOTsplit, anon_sym_DOTslice, anon_sym_DOTappend, anon_sym_DOTreverse, - [7100] = 3, + [8271] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(287), 6, + anon_sym_GT, + anon_sym_LT, + anon_sym_DOT, anon_sym_PIPE, anon_sym_AMP, - anon_sym_LT, - anon_sym_GT, anon_sym_SLASH, - anon_sym_DOT, ACTIONS(285), 22, anon_sym_SEMI, + anon_sym_CARET, + anon_sym_GT_EQ, + anon_sym_LT_EQ, anon_sym_RBRACE, + anon_sym_RBRACK, anon_sym_COMMA, anon_sym_RPAREN, - anon_sym_GT_EQ, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, - anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, - anon_sym_LT_EQ, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_PERCENT, anon_sym_LBRACK, - anon_sym_RBRACK, sym_unary_suffix, anon_sym_DOTsplit, anon_sym_DOTslice, anon_sym_DOTappend, anon_sym_DOTreverse, - [7136] = 3, + [8307] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(291), 6, + anon_sym_GT, + anon_sym_LT, + anon_sym_DOT, anon_sym_PIPE, anon_sym_AMP, - anon_sym_LT, - anon_sym_GT, anon_sym_SLASH, - anon_sym_DOT, ACTIONS(289), 22, anon_sym_SEMI, + anon_sym_CARET, + anon_sym_GT_EQ, + anon_sym_LT_EQ, anon_sym_RBRACE, + anon_sym_RBRACK, anon_sym_COMMA, anon_sym_RPAREN, - anon_sym_GT_EQ, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, - anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, - anon_sym_LT_EQ, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_PERCENT, anon_sym_LBRACK, - anon_sym_RBRACK, sym_unary_suffix, anon_sym_DOTsplit, anon_sym_DOTslice, anon_sym_DOTappend, anon_sym_DOTreverse, - [7172] = 3, + [8343] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(295), 6, + anon_sym_GT, + anon_sym_LT, + anon_sym_DOT, anon_sym_PIPE, anon_sym_AMP, - anon_sym_LT, - anon_sym_GT, anon_sym_SLASH, - anon_sym_DOT, ACTIONS(293), 22, anon_sym_SEMI, + anon_sym_CARET, + anon_sym_GT_EQ, + anon_sym_LT_EQ, anon_sym_RBRACE, + anon_sym_RBRACK, anon_sym_COMMA, anon_sym_RPAREN, - anon_sym_GT_EQ, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, - anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, - anon_sym_LT_EQ, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_PERCENT, anon_sym_LBRACK, - anon_sym_RBRACK, sym_unary_suffix, anon_sym_DOTsplit, anon_sym_DOTslice, anon_sym_DOTappend, anon_sym_DOTreverse, - [7208] = 3, + [8379] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(299), 6, + anon_sym_GT, + anon_sym_LT, + anon_sym_DOT, anon_sym_PIPE, anon_sym_AMP, - anon_sym_LT, - anon_sym_GT, anon_sym_SLASH, - anon_sym_DOT, ACTIONS(297), 22, anon_sym_SEMI, + anon_sym_CARET, + anon_sym_GT_EQ, + anon_sym_LT_EQ, anon_sym_RBRACE, + anon_sym_RBRACK, anon_sym_COMMA, anon_sym_RPAREN, - anon_sym_GT_EQ, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, - anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, - anon_sym_LT_EQ, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_PERCENT, anon_sym_LBRACK, - anon_sym_RBRACK, sym_unary_suffix, anon_sym_DOTsplit, anon_sym_DOTslice, anon_sym_DOTappend, anon_sym_DOTreverse, - [7244] = 3, + [8415] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(303), 6, + anon_sym_GT, + anon_sym_LT, + anon_sym_DOT, anon_sym_PIPE, anon_sym_AMP, - anon_sym_LT, - anon_sym_GT, anon_sym_SLASH, - anon_sym_DOT, ACTIONS(301), 22, anon_sym_SEMI, + anon_sym_CARET, + anon_sym_GT_EQ, + anon_sym_LT_EQ, anon_sym_RBRACE, + anon_sym_RBRACK, anon_sym_COMMA, anon_sym_RPAREN, - anon_sym_GT_EQ, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, - anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, - anon_sym_LT_EQ, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_PERCENT, anon_sym_LBRACK, - anon_sym_RBRACK, sym_unary_suffix, anon_sym_DOTsplit, anon_sym_DOTslice, anon_sym_DOTappend, anon_sym_DOTreverse, - [7280] = 3, + [8451] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(307), 6, + anon_sym_GT, + anon_sym_LT, + anon_sym_DOT, anon_sym_PIPE, anon_sym_AMP, - anon_sym_LT, - anon_sym_GT, anon_sym_SLASH, - anon_sym_DOT, ACTIONS(305), 22, anon_sym_SEMI, + anon_sym_CARET, + anon_sym_GT_EQ, + anon_sym_LT_EQ, anon_sym_RBRACE, + anon_sym_RBRACK, anon_sym_COMMA, anon_sym_RPAREN, - anon_sym_GT_EQ, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, - anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, - anon_sym_LT_EQ, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_PERCENT, anon_sym_LBRACK, - anon_sym_RBRACK, sym_unary_suffix, anon_sym_DOTsplit, anon_sym_DOTslice, anon_sym_DOTappend, anon_sym_DOTreverse, - [7316] = 3, + [8487] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(311), 6, + anon_sym_GT, + anon_sym_LT, + anon_sym_DOT, anon_sym_PIPE, anon_sym_AMP, - anon_sym_LT, - anon_sym_GT, anon_sym_SLASH, - anon_sym_DOT, ACTIONS(309), 22, anon_sym_SEMI, + anon_sym_CARET, + anon_sym_GT_EQ, + anon_sym_LT_EQ, anon_sym_RBRACE, + anon_sym_RBRACK, anon_sym_COMMA, anon_sym_RPAREN, - anon_sym_GT_EQ, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, - anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, - anon_sym_LT_EQ, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_PERCENT, anon_sym_LBRACK, - anon_sym_RBRACK, sym_unary_suffix, anon_sym_DOTsplit, anon_sym_DOTslice, anon_sym_DOTappend, anon_sym_DOTreverse, - [7352] = 3, + [8523] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(315), 6, + anon_sym_GT, + anon_sym_LT, + anon_sym_DOT, anon_sym_PIPE, anon_sym_AMP, - anon_sym_LT, - anon_sym_GT, anon_sym_SLASH, - anon_sym_DOT, ACTIONS(313), 22, anon_sym_SEMI, + anon_sym_CARET, + anon_sym_GT_EQ, + anon_sym_LT_EQ, anon_sym_RBRACE, + anon_sym_RBRACK, anon_sym_COMMA, anon_sym_RPAREN, - anon_sym_GT_EQ, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, - anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, - anon_sym_LT_EQ, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_PERCENT, anon_sym_LBRACK, - anon_sym_RBRACK, sym_unary_suffix, anon_sym_DOTsplit, anon_sym_DOTslice, anon_sym_DOTappend, anon_sym_DOTreverse, - [7388] = 3, + [8559] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(319), 6, + anon_sym_GT, + anon_sym_LT, + anon_sym_DOT, anon_sym_PIPE, anon_sym_AMP, - anon_sym_LT, - anon_sym_GT, anon_sym_SLASH, - anon_sym_DOT, ACTIONS(317), 22, anon_sym_SEMI, + anon_sym_CARET, + anon_sym_GT_EQ, + anon_sym_LT_EQ, anon_sym_RBRACE, + anon_sym_RBRACK, anon_sym_COMMA, anon_sym_RPAREN, - anon_sym_GT_EQ, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, - anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, - anon_sym_LT_EQ, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_PERCENT, anon_sym_LBRACK, - anon_sym_RBRACK, sym_unary_suffix, anon_sym_DOTsplit, anon_sym_DOTslice, anon_sym_DOTappend, anon_sym_DOTreverse, - [7424] = 3, + [8595] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(323), 6, + anon_sym_GT, + anon_sym_LT, + anon_sym_DOT, anon_sym_PIPE, anon_sym_AMP, - anon_sym_LT, - anon_sym_GT, anon_sym_SLASH, - anon_sym_DOT, ACTIONS(321), 22, anon_sym_SEMI, + anon_sym_CARET, + anon_sym_GT_EQ, + anon_sym_LT_EQ, anon_sym_RBRACE, + anon_sym_RBRACK, anon_sym_COMMA, anon_sym_RPAREN, - anon_sym_GT_EQ, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, - anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, - anon_sym_LT_EQ, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_PERCENT, anon_sym_LBRACK, - anon_sym_RBRACK, sym_unary_suffix, anon_sym_DOTsplit, anon_sym_DOTslice, anon_sym_DOTappend, anon_sym_DOTreverse, - [7460] = 3, + [8631] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(196), 6, + ACTIONS(327), 6, + anon_sym_GT, + anon_sym_LT, + anon_sym_DOT, anon_sym_PIPE, anon_sym_AMP, - anon_sym_LT, - anon_sym_GT, anon_sym_SLASH, - anon_sym_DOT, - ACTIONS(191), 22, + ACTIONS(325), 22, anon_sym_SEMI, + anon_sym_CARET, + anon_sym_GT_EQ, + anon_sym_LT_EQ, anon_sym_RBRACE, + anon_sym_RBRACK, anon_sym_COMMA, anon_sym_RPAREN, - anon_sym_GT_EQ, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, - anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, - anon_sym_LT_EQ, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_PERCENT, anon_sym_LBRACK, - anon_sym_RBRACK, sym_unary_suffix, anon_sym_DOTsplit, anon_sym_DOTslice, anon_sym_DOTappend, anon_sym_DOTreverse, - [7496] = 3, + [8667] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(327), 6, + ACTIONS(331), 6, + anon_sym_GT, + anon_sym_LT, + anon_sym_DOT, anon_sym_PIPE, anon_sym_AMP, - anon_sym_LT, - anon_sym_GT, anon_sym_SLASH, - anon_sym_DOT, - ACTIONS(325), 22, + ACTIONS(329), 22, anon_sym_SEMI, + anon_sym_CARET, + anon_sym_GT_EQ, + anon_sym_LT_EQ, anon_sym_RBRACE, + anon_sym_RBRACK, anon_sym_COMMA, anon_sym_RPAREN, - anon_sym_GT_EQ, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, - anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, - anon_sym_LT_EQ, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_PERCENT, anon_sym_LBRACK, + sym_unary_suffix, + anon_sym_DOTsplit, + anon_sym_DOTslice, + anon_sym_DOTappend, + anon_sym_DOTreverse, + [8703] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(335), 6, + anon_sym_GT, + anon_sym_LT, + anon_sym_DOT, + anon_sym_PIPE, + anon_sym_AMP, + anon_sym_SLASH, + ACTIONS(333), 22, + anon_sym_SEMI, + anon_sym_CARET, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + anon_sym_RBRACE, anon_sym_RBRACK, + anon_sym_COMMA, + anon_sym_RPAREN, + anon_sym_PIPE_PIPE, + anon_sym_AMP_AMP, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_LBRACK, sym_unary_suffix, anon_sym_DOTsplit, anon_sym_DOTslice, anon_sym_DOTappend, anon_sym_DOTreverse, - [7532] = 3, + [8739] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(331), 6, + ACTIONS(339), 6, + anon_sym_GT, + anon_sym_LT, + anon_sym_DOT, anon_sym_PIPE, anon_sym_AMP, - anon_sym_LT, - anon_sym_GT, anon_sym_SLASH, - anon_sym_DOT, - ACTIONS(329), 22, + ACTIONS(337), 22, anon_sym_SEMI, + anon_sym_CARET, + anon_sym_GT_EQ, + anon_sym_LT_EQ, anon_sym_RBRACE, + anon_sym_RBRACK, anon_sym_COMMA, anon_sym_RPAREN, - anon_sym_GT_EQ, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, - anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, - anon_sym_LT_EQ, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_PERCENT, anon_sym_LBRACK, - anon_sym_RBRACK, sym_unary_suffix, anon_sym_DOTsplit, anon_sym_DOTslice, anon_sym_DOTappend, anon_sym_DOTreverse, - [7568] = 3, + [8775] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(335), 6, + ACTIONS(343), 6, + anon_sym_GT, + anon_sym_LT, + anon_sym_DOT, anon_sym_PIPE, anon_sym_AMP, - anon_sym_LT, - anon_sym_GT, anon_sym_SLASH, - anon_sym_DOT, - ACTIONS(333), 22, + ACTIONS(341), 22, anon_sym_SEMI, + anon_sym_CARET, + anon_sym_GT_EQ, + anon_sym_LT_EQ, anon_sym_RBRACE, + anon_sym_RBRACK, anon_sym_COMMA, anon_sym_RPAREN, - anon_sym_GT_EQ, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, - anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, - anon_sym_LT_EQ, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_PERCENT, anon_sym_LBRACK, - anon_sym_RBRACK, sym_unary_suffix, anon_sym_DOTsplit, anon_sym_DOTslice, anon_sym_DOTappend, anon_sym_DOTreverse, - [7604] = 3, + [8811] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(339), 6, + ACTIONS(347), 6, + anon_sym_GT, + anon_sym_LT, + anon_sym_DOT, anon_sym_PIPE, anon_sym_AMP, - anon_sym_LT, - anon_sym_GT, anon_sym_SLASH, - anon_sym_DOT, - ACTIONS(337), 22, + ACTIONS(345), 22, anon_sym_SEMI, + anon_sym_CARET, + anon_sym_GT_EQ, + anon_sym_LT_EQ, anon_sym_RBRACE, + anon_sym_RBRACK, anon_sym_COMMA, anon_sym_RPAREN, - anon_sym_GT_EQ, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, - anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, - anon_sym_LT_EQ, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_PERCENT, anon_sym_LBRACK, - anon_sym_RBRACK, sym_unary_suffix, anon_sym_DOTsplit, anon_sym_DOTslice, anon_sym_DOTappend, anon_sym_DOTreverse, - [7640] = 3, + [8847] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(343), 6, + ACTIONS(349), 1, + anon_sym_SEMI, + ACTIONS(197), 6, + anon_sym_GT, + anon_sym_LT, + anon_sym_DOT, anon_sym_PIPE, anon_sym_AMP, - anon_sym_LT, - anon_sym_GT, anon_sym_SLASH, - anon_sym_DOT, - ACTIONS(341), 22, - anon_sym_SEMI, - anon_sym_RBRACE, - anon_sym_COMMA, - anon_sym_RPAREN, + ACTIONS(195), 17, + anon_sym_CARET, anon_sym_GT_EQ, + anon_sym_LT_EQ, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, - anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, - anon_sym_LT_EQ, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_PERCENT, anon_sym_LBRACK, - anon_sym_RBRACK, sym_unary_suffix, anon_sym_DOTsplit, anon_sym_DOTslice, anon_sym_DOTappend, anon_sym_DOTreverse, - [7676] = 3, + [8881] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(347), 6, + ACTIONS(351), 1, + anon_sym_SEMI, + ACTIONS(197), 6, + anon_sym_GT, + anon_sym_LT, + anon_sym_DOT, anon_sym_PIPE, anon_sym_AMP, - anon_sym_LT, - anon_sym_GT, anon_sym_SLASH, - anon_sym_DOT, - ACTIONS(345), 22, - anon_sym_SEMI, - anon_sym_RBRACE, - anon_sym_COMMA, - anon_sym_RPAREN, + ACTIONS(195), 17, + anon_sym_CARET, anon_sym_GT_EQ, + anon_sym_LT_EQ, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, - anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, - anon_sym_LT_EQ, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_PERCENT, anon_sym_LBRACK, - anon_sym_RBRACK, sym_unary_suffix, anon_sym_DOTsplit, anon_sym_DOTslice, anon_sym_DOTappend, anon_sym_DOTreverse, - [7712] = 3, + [8915] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(351), 6, + ACTIONS(353), 1, + anon_sym_SEMI, + ACTIONS(197), 6, + anon_sym_GT, + anon_sym_LT, + anon_sym_DOT, anon_sym_PIPE, anon_sym_AMP, - anon_sym_LT, - anon_sym_GT, anon_sym_SLASH, - anon_sym_DOT, - ACTIONS(349), 22, - anon_sym_SEMI, - anon_sym_RBRACE, - anon_sym_COMMA, - anon_sym_RPAREN, + ACTIONS(195), 17, + anon_sym_CARET, anon_sym_GT_EQ, + anon_sym_LT_EQ, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, - anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, - anon_sym_LT_EQ, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_PERCENT, anon_sym_LBRACK, - anon_sym_RBRACK, sym_unary_suffix, anon_sym_DOTsplit, anon_sym_DOTslice, anon_sym_DOTappend, anon_sym_DOTreverse, - [7748] = 13, + [8949] = 14, ACTIONS(3), 1, sym_comment, - ACTIONS(353), 1, - sym_identifier, ACTIONS(355), 1, - anon_sym_RBRACE, + sym_identifier, ACTIONS(357), 1, - anon_sym_struct, + anon_sym_RBRACE, ACTIONS(359), 1, - anon_sym_entrypoint, + anon_sym_struct, ACTIONS(361), 1, - anon_sym_function, + anon_sym_entrypoint, ACTIONS(363), 1, - sym_attribute, - STATE(201), 1, + anon_sym_function, + ACTIONS(365), 1, + anon_sym_POUND_LBRACK, + STATE(203), 1, sym_base_type, - STATE(219), 1, - aux_sym_function_definition_repeat1, - STATE(294), 1, + STATE(217), 1, + sym_builtin_type, + STATE(335), 1, sym_type_name, - STATE(104), 2, + STATE(110), 2, sym_contract_item, aux_sym_contract_definition_repeat1, - STATE(165), 4, + STATE(226), 2, + sym_function_attribute, + aux_sym_function_definition_repeat1, + STATE(163), 4, sym_struct_definition, sym_function_definition, sym_constant_definition, sym_contract_field_definition, - ACTIONS(27), 7, + ACTIONS(29), 7, anon_sym_int, anon_sym_bool, anon_sym_string, @@ -10027,36 +11128,39 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_sig, anon_sym_datasig, anon_sym_byte, - [7798] = 13, + [9003] = 14, ACTIONS(3), 1, sym_comment, - ACTIONS(365), 1, + ACTIONS(355), 1, sym_identifier, - ACTIONS(368), 1, - anon_sym_RBRACE, - ACTIONS(370), 1, + ACTIONS(359), 1, anon_sym_struct, - ACTIONS(373), 1, + ACTIONS(361), 1, anon_sym_entrypoint, - ACTIONS(376), 1, + ACTIONS(363), 1, anon_sym_function, - ACTIONS(382), 1, - sym_attribute, - STATE(201), 1, + ACTIONS(365), 1, + anon_sym_POUND_LBRACK, + ACTIONS(367), 1, + anon_sym_RBRACE, + STATE(203), 1, sym_base_type, - STATE(219), 1, - aux_sym_function_definition_repeat1, - STATE(294), 1, + STATE(217), 1, + sym_builtin_type, + STATE(335), 1, sym_type_name, - STATE(104), 2, + STATE(111), 2, sym_contract_item, aux_sym_contract_definition_repeat1, - STATE(165), 4, + STATE(226), 2, + sym_function_attribute, + aux_sym_function_definition_repeat1, + STATE(163), 4, sym_struct_definition, sym_function_definition, sym_constant_definition, sym_contract_field_definition, - ACTIONS(379), 7, + ACTIONS(29), 7, anon_sym_int, anon_sym_bool, anon_sym_string, @@ -10064,66 +11168,39 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_sig, anon_sym_datasig, anon_sym_byte, - [7848] = 6, - ACTIONS(3), 1, - sym_comment, - ACTIONS(391), 1, - anon_sym_SLASH, - STATE(108), 1, - aux_sym_factor_repeat1, - ACTIONS(389), 2, - anon_sym_STAR, - anon_sym_PERCENT, - ACTIONS(387), 4, - anon_sym_PIPE, - anon_sym_AMP, - anon_sym_LT, - anon_sym_GT, - ACTIONS(385), 14, - anon_sym_SEMI, - anon_sym_RBRACE, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_GT_EQ, - anon_sym_PIPE_PIPE, - anon_sym_AMP_AMP, - anon_sym_CARET, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_LT_EQ, - anon_sym_PLUS, - anon_sym_DASH, - anon_sym_RBRACK, - [7884] = 13, + [9057] = 14, ACTIONS(3), 1, sym_comment, - ACTIONS(353), 1, + ACTIONS(369), 1, sym_identifier, - ACTIONS(357), 1, + ACTIONS(372), 1, + anon_sym_RBRACE, + ACTIONS(374), 1, anon_sym_struct, - ACTIONS(359), 1, + ACTIONS(377), 1, anon_sym_entrypoint, - ACTIONS(361), 1, + ACTIONS(380), 1, anon_sym_function, - ACTIONS(363), 1, - sym_attribute, - ACTIONS(393), 1, - anon_sym_RBRACE, - STATE(201), 1, + ACTIONS(383), 1, + anon_sym_POUND_LBRACK, + STATE(203), 1, sym_base_type, - STATE(219), 1, - aux_sym_function_definition_repeat1, - STATE(294), 1, + STATE(217), 1, + sym_builtin_type, + STATE(335), 1, sym_type_name, - STATE(103), 2, + STATE(111), 2, sym_contract_item, aux_sym_contract_definition_repeat1, - STATE(165), 4, + STATE(226), 2, + sym_function_attribute, + aux_sym_function_definition_repeat1, + STATE(163), 4, sym_struct_definition, sym_function_definition, sym_constant_definition, sym_contract_field_definition, - ACTIONS(27), 7, + ACTIONS(386), 7, anon_sym_int, anon_sym_bool, anon_sym_string, @@ -10131,251 +11208,281 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_sig, anon_sym_datasig, anon_sym_byte, - [7934] = 6, + [9111] = 6, ACTIONS(3), 1, sym_comment, - ACTIONS(391), 1, + ACTIONS(396), 1, anon_sym_SLASH, - STATE(105), 1, + STATE(112), 1, aux_sym_factor_repeat1, - ACTIONS(389), 2, + ACTIONS(393), 2, anon_sym_STAR, anon_sym_PERCENT, - ACTIONS(397), 4, + ACTIONS(391), 4, + anon_sym_GT, + anon_sym_LT, anon_sym_PIPE, anon_sym_AMP, - anon_sym_LT, - anon_sym_GT, - ACTIONS(395), 14, + ACTIONS(389), 14, anon_sym_SEMI, + anon_sym_CARET, + anon_sym_GT_EQ, + anon_sym_LT_EQ, anon_sym_RBRACE, + anon_sym_RBRACK, anon_sym_COMMA, anon_sym_RPAREN, - anon_sym_GT_EQ, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, - anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, - anon_sym_LT_EQ, anon_sym_PLUS, anon_sym_DASH, - anon_sym_RBRACK, - [7970] = 6, + [9147] = 6, ACTIONS(3), 1, sym_comment, - ACTIONS(406), 1, + ACTIONS(405), 1, anon_sym_SLASH, - STATE(108), 1, + STATE(114), 1, aux_sym_factor_repeat1, ACTIONS(403), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(401), 4, + anon_sym_GT, + anon_sym_LT, anon_sym_PIPE, anon_sym_AMP, - anon_sym_LT, - anon_sym_GT, ACTIONS(399), 14, anon_sym_SEMI, + anon_sym_CARET, + anon_sym_GT_EQ, + anon_sym_LT_EQ, anon_sym_RBRACE, + anon_sym_RBRACK, anon_sym_COMMA, anon_sym_RPAREN, - anon_sym_GT_EQ, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, - anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, - anon_sym_LT_EQ, anon_sym_PLUS, anon_sym_DASH, - anon_sym_RBRACK, - [8006] = 3, + [9183] = 6, ACTIONS(3), 1, sym_comment, - ACTIONS(411), 5, + ACTIONS(405), 1, + anon_sym_SLASH, + STATE(112), 1, + aux_sym_factor_repeat1, + ACTIONS(403), 2, + anon_sym_STAR, + anon_sym_PERCENT, + ACTIONS(409), 4, + anon_sym_GT, + anon_sym_LT, anon_sym_PIPE, anon_sym_AMP, - anon_sym_LT, + ACTIONS(407), 14, + anon_sym_SEMI, + anon_sym_CARET, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + anon_sym_RBRACE, + anon_sym_RBRACK, + anon_sym_COMMA, + anon_sym_RPAREN, + anon_sym_PIPE_PIPE, + anon_sym_AMP_AMP, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_PLUS, + anon_sym_DASH, + [9219] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(413), 5, anon_sym_GT, + anon_sym_LT, + anon_sym_PIPE, + anon_sym_AMP, anon_sym_SLASH, - ACTIONS(409), 16, + ACTIONS(411), 16, anon_sym_SEMI, + anon_sym_CARET, + anon_sym_GT_EQ, + anon_sym_LT_EQ, anon_sym_RBRACE, + anon_sym_RBRACK, anon_sym_COMMA, anon_sym_RPAREN, - anon_sym_GT_EQ, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, - anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, - anon_sym_LT_EQ, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_PERCENT, - anon_sym_RBRACK, - [8035] = 3, + [9248] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(401), 5, + ACTIONS(417), 5, + anon_sym_GT, + anon_sym_LT, anon_sym_PIPE, anon_sym_AMP, - anon_sym_LT, - anon_sym_GT, anon_sym_SLASH, - ACTIONS(399), 16, + ACTIONS(415), 16, anon_sym_SEMI, + anon_sym_CARET, + anon_sym_GT_EQ, + anon_sym_LT_EQ, anon_sym_RBRACE, + anon_sym_RBRACK, anon_sym_COMMA, anon_sym_RPAREN, - anon_sym_GT_EQ, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, - anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, - anon_sym_LT_EQ, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_PERCENT, - anon_sym_RBRACK, - [8064] = 3, + [9277] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(415), 5, + ACTIONS(391), 5, + anon_sym_GT, + anon_sym_LT, anon_sym_PIPE, anon_sym_AMP, - anon_sym_LT, - anon_sym_GT, anon_sym_SLASH, - ACTIONS(413), 16, + ACTIONS(389), 16, anon_sym_SEMI, + anon_sym_CARET, + anon_sym_GT_EQ, + anon_sym_LT_EQ, anon_sym_RBRACE, + anon_sym_RBRACK, anon_sym_COMMA, anon_sym_RPAREN, - anon_sym_GT_EQ, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, - anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, - anon_sym_LT_EQ, anon_sym_PLUS, anon_sym_DASH, anon_sym_STAR, anon_sym_PERCENT, - anon_sym_RBRACK, - [8093] = 5, + [9306] = 5, ACTIONS(3), 1, sym_comment, - STATE(113), 1, + STATE(120), 1, aux_sym_term_repeat1, - ACTIONS(421), 2, + ACTIONS(423), 2, anon_sym_PLUS, anon_sym_DASH, - ACTIONS(419), 4, + ACTIONS(421), 4, + anon_sym_GT, + anon_sym_LT, anon_sym_PIPE, anon_sym_AMP, - anon_sym_LT, - anon_sym_GT, - ACTIONS(417), 12, + ACTIONS(419), 12, anon_sym_SEMI, + anon_sym_CARET, + anon_sym_GT_EQ, + anon_sym_LT_EQ, anon_sym_RBRACE, + anon_sym_RBRACK, anon_sym_COMMA, anon_sym_RPAREN, - anon_sym_GT_EQ, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, - anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, - anon_sym_LT_EQ, - anon_sym_RBRACK, - [8124] = 5, + [9337] = 5, ACTIONS(3), 1, sym_comment, - STATE(113), 1, + STATE(118), 1, aux_sym_term_repeat1, - ACTIONS(427), 2, + ACTIONS(423), 2, anon_sym_PLUS, anon_sym_DASH, - ACTIONS(425), 4, + ACTIONS(427), 4, + anon_sym_GT, + anon_sym_LT, anon_sym_PIPE, anon_sym_AMP, - anon_sym_LT, - anon_sym_GT, - ACTIONS(423), 12, + ACTIONS(425), 12, anon_sym_SEMI, + anon_sym_CARET, + anon_sym_GT_EQ, + anon_sym_LT_EQ, anon_sym_RBRACE, + anon_sym_RBRACK, anon_sym_COMMA, anon_sym_RPAREN, - anon_sym_GT_EQ, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, - anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, - anon_sym_LT_EQ, - anon_sym_RBRACK, - [8155] = 5, + [9368] = 5, ACTIONS(3), 1, sym_comment, - STATE(112), 1, + STATE(120), 1, aux_sym_term_repeat1, - ACTIONS(421), 2, + ACTIONS(433), 2, anon_sym_PLUS, anon_sym_DASH, - ACTIONS(432), 4, + ACTIONS(431), 4, + anon_sym_GT, + anon_sym_LT, anon_sym_PIPE, anon_sym_AMP, - anon_sym_LT, - anon_sym_GT, - ACTIONS(430), 12, + ACTIONS(429), 12, anon_sym_SEMI, + anon_sym_CARET, + anon_sym_GT_EQ, + anon_sym_LT_EQ, anon_sym_RBRACE, + anon_sym_RBRACK, anon_sym_COMMA, anon_sym_RPAREN, - anon_sym_GT_EQ, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, - anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, - anon_sym_LT_EQ, - anon_sym_RBRACK, - [8186] = 3, + [9399] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(425), 4, + ACTIONS(431), 4, + anon_sym_GT, + anon_sym_LT, anon_sym_PIPE, anon_sym_AMP, - anon_sym_LT, - anon_sym_GT, - ACTIONS(423), 14, + ACTIONS(429), 14, anon_sym_SEMI, + anon_sym_CARET, + anon_sym_GT_EQ, + anon_sym_LT_EQ, anon_sym_RBRACE, + anon_sym_RBRACK, anon_sym_COMMA, anon_sym_RPAREN, - anon_sym_GT_EQ, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, - anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, - anon_sym_LT_EQ, anon_sym_PLUS, anon_sym_DASH, - anon_sym_RBRACK, - [8212] = 3, + [9425] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(434), 1, + ACTIONS(436), 1, sym_identifier, - ACTIONS(436), 16, + ACTIONS(438), 16, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LPAREN, @@ -10392,12 +11499,12 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_sig, anon_sym_datasig, anon_sym_byte, - [8237] = 3, + [9450] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(438), 1, + ACTIONS(440), 1, sym_identifier, - ACTIONS(440), 16, + ACTIONS(442), 16, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LPAREN, @@ -10414,37 +11521,12 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_sig, anon_sym_datasig, anon_sym_byte, - [8262] = 6, - ACTIONS(3), 1, - sym_comment, - STATE(121), 1, - aux_sym_comparison_repeat1, - ACTIONS(444), 2, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - ACTIONS(446), 2, - anon_sym_PIPE, - anon_sym_AMP, - ACTIONS(448), 2, - anon_sym_LT, - anon_sym_GT, - ACTIONS(442), 10, - anon_sym_SEMI, - anon_sym_RBRACE, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_PIPE_PIPE, - anon_sym_AMP_AMP, - anon_sym_CARET, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_RBRACK, - [8293] = 3, + [9475] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(450), 1, + ACTIONS(444), 1, sym_identifier, - ACTIONS(452), 16, + ACTIONS(446), 16, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LPAREN, @@ -10461,12 +11543,12 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_sig, anon_sym_datasig, anon_sym_byte, - [8318] = 3, + [9500] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(454), 1, + ACTIONS(448), 1, sym_identifier, - ACTIONS(456), 16, + ACTIONS(450), 16, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LPAREN, @@ -10483,32 +11565,79 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_sig, anon_sym_datasig, anon_sym_byte, - [8343] = 6, + [9525] = 6, ACTIONS(3), 1, sym_comment, - STATE(121), 1, + STATE(127), 1, aux_sym_comparison_repeat1, - ACTIONS(460), 2, + ACTIONS(454), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, - ACTIONS(463), 2, + ACTIONS(456), 2, + anon_sym_GT, + anon_sym_LT, + ACTIONS(458), 2, anon_sym_PIPE, anon_sym_AMP, - ACTIONS(465), 2, - anon_sym_LT, - anon_sym_GT, - ACTIONS(458), 10, + ACTIONS(452), 10, anon_sym_SEMI, + anon_sym_CARET, anon_sym_RBRACE, + anon_sym_RBRACK, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, - anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, + [9556] = 6, + ACTIONS(3), 1, + sym_comment, + STATE(139), 1, + aux_sym_comparison_repeat1, + ACTIONS(454), 2, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + ACTIONS(456), 2, + anon_sym_GT, + anon_sym_LT, + ACTIONS(462), 2, + anon_sym_PIPE, + anon_sym_AMP, + ACTIONS(460), 10, + anon_sym_SEMI, + anon_sym_CARET, + anon_sym_RBRACE, anon_sym_RBRACK, - [8374] = 3, + anon_sym_COMMA, + anon_sym_RPAREN, + anon_sym_PIPE_PIPE, + anon_sym_AMP_AMP, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + [9587] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(464), 1, + sym_identifier, + ACTIONS(466), 16, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_LPAREN, + anon_sym_return, + anon_sym_require, + anon_sym_if, + anon_sym_else, + anon_sym_for, + anon_sym_console_DOTlog, + anon_sym_int, + anon_sym_bool, + anon_sym_string, + anon_sym_pubkey, + anon_sym_sig, + anon_sym_datasig, + anon_sym_byte, + [9612] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(468), 1, @@ -10530,7 +11659,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_sig, anon_sym_datasig, anon_sym_byte, - [8399] = 3, + [9637] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(472), 1, @@ -10552,7 +11681,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_sig, anon_sym_datasig, anon_sym_byte, - [8424] = 3, + [9662] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(476), 1, @@ -10574,44 +11703,42 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_sig, anon_sym_datasig, anon_sym_byte, - [8449] = 6, + [9687] = 3, ACTIONS(3), 1, sym_comment, - STATE(118), 1, - aux_sym_comparison_repeat1, - ACTIONS(444), 2, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - ACTIONS(448), 2, - anon_sym_LT, - anon_sym_GT, - ACTIONS(482), 2, - anon_sym_PIPE, - anon_sym_AMP, - ACTIONS(480), 10, - anon_sym_SEMI, + ACTIONS(480), 1, + sym_identifier, + ACTIONS(482), 16, + anon_sym_LBRACE, anon_sym_RBRACE, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_PIPE_PIPE, - anon_sym_AMP_AMP, - anon_sym_CARET, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_RBRACK, - [8480] = 3, + anon_sym_LPAREN, + anon_sym_return, + anon_sym_require, + anon_sym_if, + anon_sym_else, + anon_sym_for, + anon_sym_console_DOTlog, + anon_sym_int, + anon_sym_bool, + anon_sym_string, + anon_sym_pubkey, + anon_sym_sig, + anon_sym_datasig, + anon_sym_byte, + [9712] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(484), 1, sym_identifier, - ACTIONS(486), 16, + ACTIONS(488), 1, + anon_sym_else, + ACTIONS(486), 15, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LPAREN, anon_sym_return, anon_sym_require, anon_sym_if, - anon_sym_else, anon_sym_for, anon_sym_console_DOTlog, anon_sym_int, @@ -10621,12 +11748,12 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_sig, anon_sym_datasig, anon_sym_byte, - [8505] = 3, + [9739] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(488), 1, + ACTIONS(490), 1, sym_identifier, - ACTIONS(490), 16, + ACTIONS(492), 16, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LPAREN, @@ -10643,12 +11770,12 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_sig, anon_sym_datasig, anon_sym_byte, - [8530] = 3, + [9764] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(492), 1, + ACTIONS(494), 1, sym_identifier, - ACTIONS(494), 16, + ACTIONS(496), 16, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LPAREN, @@ -10665,20 +11792,19 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_sig, anon_sym_datasig, anon_sym_byte, - [8555] = 4, + [9789] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(496), 1, + ACTIONS(498), 1, sym_identifier, - ACTIONS(500), 1, - anon_sym_else, - ACTIONS(498), 15, + ACTIONS(500), 16, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LPAREN, anon_sym_return, anon_sym_require, anon_sym_if, + anon_sym_else, anon_sym_for, anon_sym_console_DOTlog, anon_sym_int, @@ -10688,7 +11814,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_sig, anon_sym_datasig, anon_sym_byte, - [8582] = 3, + [9814] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(502), 1, @@ -10710,7 +11836,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_sig, anon_sym_datasig, anon_sym_byte, - [8607] = 3, + [9839] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(506), 1, @@ -10732,12 +11858,37 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_sig, anon_sym_datasig, anon_sym_byte, - [8632] = 3, + [9864] = 6, + ACTIONS(3), 1, + sym_comment, + STATE(139), 1, + aux_sym_comparison_repeat1, + ACTIONS(512), 2, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + ACTIONS(515), 2, + anon_sym_GT, + anon_sym_LT, + ACTIONS(518), 2, + anon_sym_PIPE, + anon_sym_AMP, + ACTIONS(510), 10, + anon_sym_SEMI, + anon_sym_CARET, + anon_sym_RBRACE, + anon_sym_RBRACK, + anon_sym_COMMA, + anon_sym_RPAREN, + anon_sym_PIPE_PIPE, + anon_sym_AMP_AMP, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + [9895] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(510), 1, + ACTIONS(520), 1, sym_identifier, - ACTIONS(512), 16, + ACTIONS(522), 16, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LPAREN, @@ -10754,12 +11905,12 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_sig, anon_sym_datasig, anon_sym_byte, - [8657] = 3, + [9920] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(514), 1, + ACTIONS(524), 1, sym_identifier, - ACTIONS(516), 16, + ACTIONS(526), 16, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LPAREN, @@ -10776,12 +11927,12 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_sig, anon_sym_datasig, anon_sym_byte, - [8682] = 3, + [9945] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(518), 1, + ACTIONS(528), 1, sym_identifier, - ACTIONS(520), 16, + ACTIONS(530), 16, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LPAREN, @@ -10798,12 +11949,12 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_sig, anon_sym_datasig, anon_sym_byte, - [8707] = 3, + [9970] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(522), 1, + ACTIONS(532), 1, sym_identifier, - ACTIONS(524), 16, + ACTIONS(534), 16, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LPAREN, @@ -10820,12 +11971,12 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_sig, anon_sym_datasig, anon_sym_byte, - [8732] = 3, + [9995] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(526), 1, + ACTIONS(536), 1, sym_identifier, - ACTIONS(528), 16, + ACTIONS(538), 16, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LPAREN, @@ -10842,12 +11993,12 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_sig, anon_sym_datasig, anon_sym_byte, - [8757] = 3, + [10020] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(530), 1, + ACTIONS(540), 1, sym_identifier, - ACTIONS(532), 16, + ACTIONS(542), 16, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LPAREN, @@ -10864,12 +12015,12 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_sig, anon_sym_datasig, anon_sym_byte, - [8782] = 3, + [10045] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(534), 1, + ACTIONS(544), 1, sym_identifier, - ACTIONS(536), 16, + ACTIONS(546), 16, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LPAREN, @@ -10886,12 +12037,12 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_sig, anon_sym_datasig, anon_sym_byte, - [8807] = 3, + [10070] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(538), 1, + ACTIONS(548), 1, sym_identifier, - ACTIONS(540), 16, + ACTIONS(550), 16, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LPAREN, @@ -10908,12 +12059,12 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_sig, anon_sym_datasig, anon_sym_byte, - [8832] = 3, + [10095] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(542), 1, + ACTIONS(552), 1, sym_identifier, - ACTIONS(544), 16, + ACTIONS(554), 16, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LPAREN, @@ -10930,12 +12081,12 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_sig, anon_sym_datasig, anon_sym_byte, - [8857] = 3, + [10120] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(546), 1, + ACTIONS(556), 1, sym_identifier, - ACTIONS(548), 16, + ACTIONS(558), 16, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LPAREN, @@ -10952,12 +12103,12 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_sig, anon_sym_datasig, anon_sym_byte, - [8882] = 3, + [10145] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(550), 1, + ACTIONS(560), 1, sym_identifier, - ACTIONS(552), 16, + ACTIONS(562), 16, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LPAREN, @@ -10974,12 +12125,12 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_sig, anon_sym_datasig, anon_sym_byte, - [8907] = 3, + [10170] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(554), 1, + ACTIONS(564), 1, sym_identifier, - ACTIONS(556), 16, + ACTIONS(566), 16, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LPAREN, @@ -10996,12 +12147,12 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_sig, anon_sym_datasig, anon_sym_byte, - [8932] = 3, + [10195] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(558), 1, + ACTIONS(568), 1, sym_identifier, - ACTIONS(560), 16, + ACTIONS(570), 16, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LPAREN, @@ -11018,37 +12169,115 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_sig, anon_sym_datasig, anon_sym_byte, - [8957] = 3, + [10220] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(463), 4, + ACTIONS(518), 4, + anon_sym_GT, + anon_sym_LT, anon_sym_PIPE, anon_sym_AMP, - anon_sym_LT, - anon_sym_GT, - ACTIONS(458), 12, + ACTIONS(510), 12, anon_sym_SEMI, + anon_sym_CARET, + anon_sym_GT_EQ, + anon_sym_LT_EQ, anon_sym_RBRACE, + anon_sym_RBRACK, anon_sym_COMMA, anon_sym_RPAREN, - anon_sym_GT_EQ, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, - anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, - anon_sym_LT_EQ, - anon_sym_RBRACK, - [8981] = 3, + [10244] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(355), 1, + sym_identifier, + ACTIONS(572), 1, + anon_sym_RBRACE, + STATE(203), 1, + sym_base_type, + STATE(217), 1, + sym_builtin_type, + STATE(406), 1, + sym_type_name, + STATE(156), 2, + sym_struct_field_definition, + aux_sym_struct_definition_repeat1, + ACTIONS(29), 7, + anon_sym_int, + anon_sym_bool, + anon_sym_string, + anon_sym_pubkey, + anon_sym_sig, + anon_sym_datasig, + anon_sym_byte, + [10276] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(574), 1, + sym_identifier, + ACTIONS(577), 1, + anon_sym_RBRACE, + STATE(203), 1, + sym_base_type, + STATE(217), 1, + sym_builtin_type, + STATE(406), 1, + sym_type_name, + STATE(155), 2, + sym_struct_field_definition, + aux_sym_struct_definition_repeat1, + ACTIONS(579), 7, + anon_sym_int, + anon_sym_bool, + anon_sym_string, + anon_sym_pubkey, + anon_sym_sig, + anon_sym_datasig, + anon_sym_byte, + [10308] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(355), 1, + sym_identifier, + ACTIONS(582), 1, + anon_sym_RBRACE, + STATE(203), 1, + sym_base_type, + STATE(217), 1, + sym_builtin_type, + STATE(406), 1, + sym_type_name, + STATE(155), 2, + sym_struct_field_definition, + aux_sym_struct_definition_repeat1, + ACTIONS(29), 7, + anon_sym_int, + anon_sym_bool, + anon_sym_string, + anon_sym_pubkey, + anon_sym_sig, + anon_sym_datasig, + anon_sym_byte, + [10340] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(562), 1, + ACTIONS(355), 1, sym_identifier, - ACTIONS(564), 12, - anon_sym_RBRACE, - anon_sym_struct, - anon_sym_entrypoint, - anon_sym_function, + ACTIONS(584), 1, + anon_sym_RPAREN, + STATE(203), 1, + sym_base_type, + STATE(217), 1, + sym_builtin_type, + STATE(294), 1, + sym_typed_binding, + STATE(449), 1, + sym_type_name, + ACTIONS(29), 7, anon_sym_int, anon_sym_bool, anon_sym_string, @@ -11056,17 +12285,17 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_sig, anon_sym_datasig, anon_sym_byte, - sym_attribute, - [9002] = 3, + [10371] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(566), 1, + ACTIONS(494), 1, sym_identifier, - ACTIONS(568), 12, + ACTIONS(496), 12, anon_sym_RBRACE, anon_sym_struct, anon_sym_entrypoint, anon_sym_function, + anon_sym_POUND_LBRACK, anon_sym_int, anon_sym_bool, anon_sym_string, @@ -11074,17 +12303,17 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_sig, anon_sym_datasig, anon_sym_byte, - sym_attribute, - [9023] = 3, + [10392] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(570), 1, + ACTIONS(586), 1, sym_identifier, - ACTIONS(572), 12, + ACTIONS(588), 12, anon_sym_RBRACE, anon_sym_struct, anon_sym_entrypoint, anon_sym_function, + anon_sym_POUND_LBRACK, anon_sym_int, anon_sym_bool, anon_sym_string, @@ -11092,17 +12321,17 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_sig, anon_sym_datasig, anon_sym_byte, - sym_attribute, - [9044] = 3, + [10413] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(574), 1, + ACTIONS(590), 1, sym_identifier, - ACTIONS(576), 12, + ACTIONS(592), 12, anon_sym_RBRACE, anon_sym_struct, anon_sym_entrypoint, anon_sym_function, + anon_sym_POUND_LBRACK, anon_sym_int, anon_sym_bool, anon_sym_string, @@ -11110,37 +12339,17 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_sig, anon_sym_datasig, anon_sym_byte, - sym_attribute, - [9065] = 5, + [10434] = 3, ACTIONS(3), 1, sym_comment, - STATE(168), 1, - aux_sym_equality_repeat1, - ACTIONS(580), 2, - anon_sym_PIPE, - anon_sym_AMP, - ACTIONS(582), 2, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - ACTIONS(578), 8, - anon_sym_SEMI, - anon_sym_RBRACE, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_PIPE_PIPE, - anon_sym_AMP_AMP, - anon_sym_CARET, - anon_sym_RBRACK, - [9090] = 3, - ACTIONS(3), 1, - sym_comment, - ACTIONS(584), 1, + ACTIONS(594), 1, sym_identifier, - ACTIONS(586), 12, + ACTIONS(596), 12, anon_sym_RBRACE, anon_sym_struct, anon_sym_entrypoint, anon_sym_function, + anon_sym_POUND_LBRACK, anon_sym_int, anon_sym_bool, anon_sym_string, @@ -11148,67 +12357,40 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_sig, anon_sym_datasig, anon_sym_byte, - sym_attribute, - [9111] = 10, - ACTIONS(3), 1, - sym_comment, - ACTIONS(31), 1, - sym_number, - ACTIONS(35), 1, - anon_sym_date, - ACTIONS(588), 1, - sym_identifier, - ACTIONS(590), 1, - anon_sym_RPAREN, - STATE(230), 1, - sym_console_parameter, - STATE(284), 1, - sym_literal, - ACTIONS(29), 2, - anon_sym_true, - anon_sym_false, - ACTIONS(33), 2, - sym_string_literal, - sym_hex_literal, - STATE(80), 3, - sym_boolean_literal, - sym_number_literal, - sym_date_literal, - [9146] = 10, + [10455] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(31), 1, - sym_number, - ACTIONS(35), 1, - anon_sym_date, - ACTIONS(588), 1, + ACTIONS(355), 1, sym_identifier, - ACTIONS(592), 1, + ACTIONS(598), 1, anon_sym_RPAREN, - STATE(284), 1, - sym_literal, - STATE(287), 1, - sym_console_parameter, - ACTIONS(29), 2, - anon_sym_true, - anon_sym_false, - ACTIONS(33), 2, - sym_string_literal, - sym_hex_literal, - STATE(80), 3, - sym_boolean_literal, - sym_number_literal, - sym_date_literal, - [9181] = 3, + STATE(203), 1, + sym_base_type, + STATE(217), 1, + sym_builtin_type, + STATE(306), 1, + sym_parameter, + STATE(424), 1, + sym_type_name, + ACTIONS(29), 7, + anon_sym_int, + anon_sym_bool, + anon_sym_string, + anon_sym_pubkey, + anon_sym_sig, + anon_sym_datasig, + anon_sym_byte, + [10486] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(594), 1, + ACTIONS(600), 1, sym_identifier, - ACTIONS(596), 12, + ACTIONS(602), 12, anon_sym_RBRACE, anon_sym_struct, anon_sym_entrypoint, anon_sym_function, + anon_sym_POUND_LBRACK, anon_sym_int, anon_sym_bool, anon_sym_string, @@ -11216,22 +12398,22 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_sig, anon_sym_datasig, anon_sym_byte, - sym_attribute, - [9202] = 7, + [10507] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(598), 1, + ACTIONS(355), 1, sym_identifier, - ACTIONS(601), 1, - anon_sym_RBRACE, - STATE(201), 1, + ACTIONS(604), 1, + anon_sym_RPAREN, + STATE(203), 1, sym_base_type, - STATE(350), 1, + STATE(217), 1, + sym_builtin_type, + STATE(245), 1, + sym_parameter, + STATE(424), 1, sym_type_name, - STATE(155), 2, - sym_struct_field_definition, - aux_sym_struct_definition_repeat1, - ACTIONS(603), 7, + ACTIONS(29), 7, anon_sym_int, anon_sym_bool, anon_sym_string, @@ -11239,7 +12421,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_sig, anon_sym_datasig, anon_sym_byte, - [9231] = 3, + [10538] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(606), 1, @@ -11249,6 +12431,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_struct, anon_sym_entrypoint, anon_sym_function, + anon_sym_POUND_LBRACK, anon_sym_int, anon_sym_bool, anon_sym_string, @@ -11256,17 +12439,57 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_sig, anon_sym_datasig, anon_sym_byte, - sym_attribute, - [9252] = 3, + [10559] = 5, + ACTIONS(3), 1, + sym_comment, + STATE(177), 1, + aux_sym_equality_repeat1, + ACTIONS(612), 2, + anon_sym_PIPE, + anon_sym_AMP, + ACTIONS(614), 2, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + ACTIONS(610), 8, + anon_sym_SEMI, + anon_sym_CARET, + anon_sym_RBRACE, + anon_sym_RBRACK, + anon_sym_COMMA, + anon_sym_RPAREN, + anon_sym_PIPE_PIPE, + anon_sym_AMP_AMP, + [10584] = 5, + ACTIONS(3), 1, + sym_comment, + STATE(167), 1, + aux_sym_equality_repeat1, + ACTIONS(618), 2, + anon_sym_PIPE, + anon_sym_AMP, + ACTIONS(620), 2, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + ACTIONS(616), 8, + anon_sym_SEMI, + anon_sym_CARET, + anon_sym_RBRACE, + anon_sym_RBRACK, + anon_sym_COMMA, + anon_sym_RPAREN, + anon_sym_PIPE_PIPE, + anon_sym_AMP_AMP, + [10609] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(610), 1, + ACTIONS(623), 1, sym_identifier, - ACTIONS(612), 12, + ACTIONS(625), 12, anon_sym_RBRACE, anon_sym_struct, anon_sym_entrypoint, anon_sym_function, + anon_sym_POUND_LBRACK, anon_sym_int, anon_sym_bool, anon_sym_string, @@ -11274,22 +12497,17 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_sig, anon_sym_datasig, anon_sym_byte, - sym_attribute, - [9273] = 7, + [10630] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(353), 1, + ACTIONS(627), 1, sym_identifier, - ACTIONS(614), 1, + ACTIONS(629), 12, anon_sym_RBRACE, - STATE(201), 1, - sym_base_type, - STATE(350), 1, - sym_type_name, - STATE(164), 2, - sym_struct_field_definition, - aux_sym_struct_definition_repeat1, - ACTIONS(27), 7, + anon_sym_struct, + anon_sym_entrypoint, + anon_sym_function, + anon_sym_POUND_LBRACK, anon_sym_int, anon_sym_bool, anon_sym_string, @@ -11297,16 +12515,17 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_sig, anon_sym_datasig, anon_sym_byte, - [9302] = 3, + [10651] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(616), 1, + ACTIONS(631), 1, sym_identifier, - ACTIONS(618), 12, + ACTIONS(633), 12, anon_sym_RBRACE, anon_sym_struct, anon_sym_entrypoint, anon_sym_function, + anon_sym_POUND_LBRACK, anon_sym_int, anon_sym_bool, anon_sym_string, @@ -11314,42 +12533,22 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_sig, anon_sym_datasig, anon_sym_byte, - sym_attribute, - [9323] = 10, + [10672] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(31), 1, - sym_number, - ACTIONS(35), 1, - anon_sym_date, - ACTIONS(588), 1, + ACTIONS(355), 1, sym_identifier, - ACTIONS(620), 1, + ACTIONS(635), 1, anon_sym_RPAREN, - STATE(284), 1, - sym_literal, - STATE(287), 1, - sym_console_parameter, - ACTIONS(29), 2, - anon_sym_true, - anon_sym_false, - ACTIONS(33), 2, - sym_string_literal, - sym_hex_literal, - STATE(80), 3, - sym_boolean_literal, - sym_number_literal, - sym_date_literal, - [9358] = 3, - ACTIONS(3), 1, - sym_comment, - ACTIONS(622), 1, - sym_identifier, - ACTIONS(624), 12, - anon_sym_RBRACE, - anon_sym_struct, - anon_sym_entrypoint, - anon_sym_function, + STATE(203), 1, + sym_base_type, + STATE(217), 1, + sym_builtin_type, + STATE(306), 1, + sym_parameter, + STATE(424), 1, + sym_type_name, + ACTIONS(29), 7, anon_sym_int, anon_sym_bool, anon_sym_string, @@ -11357,17 +12556,22 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_sig, anon_sym_datasig, anon_sym_byte, - sym_attribute, - [9379] = 3, + [10703] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(626), 1, + ACTIONS(355), 1, sym_identifier, - ACTIONS(628), 12, - anon_sym_RBRACE, - anon_sym_struct, - anon_sym_entrypoint, - anon_sym_function, + ACTIONS(637), 1, + anon_sym_RPAREN, + STATE(203), 1, + sym_base_type, + STATE(217), 1, + sym_builtin_type, + STATE(294), 1, + sym_typed_binding, + STATE(449), 1, + sym_type_name, + ACTIONS(29), 7, anon_sym_int, anon_sym_bool, anon_sym_string, @@ -11375,17 +12579,17 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_sig, anon_sym_datasig, anon_sym_byte, - sym_attribute, - [9400] = 3, + [10734] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(630), 1, + ACTIONS(639), 1, sym_identifier, - ACTIONS(632), 12, + ACTIONS(641), 12, anon_sym_RBRACE, anon_sym_struct, anon_sym_entrypoint, anon_sym_function, + anon_sym_POUND_LBRACK, anon_sym_int, anon_sym_bool, anon_sym_string, @@ -11393,22 +12597,17 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_sig, anon_sym_datasig, anon_sym_byte, - sym_attribute, - [9421] = 7, + [10755] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(353), 1, + ACTIONS(643), 1, sym_identifier, - ACTIONS(634), 1, + ACTIONS(645), 12, anon_sym_RBRACE, - STATE(201), 1, - sym_base_type, - STATE(350), 1, - sym_type_name, - STATE(155), 2, - sym_struct_field_definition, - aux_sym_struct_definition_repeat1, - ACTIONS(27), 7, + anon_sym_struct, + anon_sym_entrypoint, + anon_sym_function, + anon_sym_POUND_LBRACK, anon_sym_int, anon_sym_bool, anon_sym_string, @@ -11416,16 +12615,17 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_sig, anon_sym_datasig, anon_sym_byte, - [9450] = 3, + [10776] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(636), 1, + ACTIONS(436), 1, sym_identifier, - ACTIONS(638), 12, + ACTIONS(438), 12, anon_sym_RBRACE, anon_sym_struct, anon_sym_entrypoint, anon_sym_function, + anon_sym_POUND_LBRACK, anon_sym_int, anon_sym_bool, anon_sym_string, @@ -11433,28 +12633,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_sig, anon_sym_datasig, anon_sym_byte, - sym_attribute, - [9471] = 5, - ACTIONS(3), 1, - sym_comment, - STATE(166), 1, - aux_sym_equality_repeat1, - ACTIONS(642), 2, - anon_sym_PIPE, - anon_sym_AMP, - ACTIONS(644), 2, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - ACTIONS(640), 8, - anon_sym_SEMI, - anon_sym_RBRACE, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_PIPE_PIPE, - anon_sym_AMP_AMP, - anon_sym_CARET, - anon_sym_RBRACK, - [9496] = 3, + [10797] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(647), 1, @@ -11464,6 +12643,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_struct, anon_sym_entrypoint, anon_sym_function, + anon_sym_POUND_LBRACK, anon_sym_int, anon_sym_bool, anon_sym_string, @@ -11471,13 +12651,12 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_sig, anon_sym_datasig, anon_sym_byte, - sym_attribute, - [9517] = 5, + [10818] = 5, ACTIONS(3), 1, sym_comment, - STATE(166), 1, + STATE(167), 1, aux_sym_equality_repeat1, - ACTIONS(582), 2, + ACTIONS(614), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(653), 2, @@ -11485,65 +12664,44 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_AMP, ACTIONS(651), 8, anon_sym_SEMI, + anon_sym_CARET, anon_sym_RBRACE, + anon_sym_RBRACK, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, - anon_sym_CARET, - anon_sym_RBRACK, - [9542] = 3, + [10843] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(642), 2, + ACTIONS(618), 2, anon_sym_PIPE, anon_sym_AMP, - ACTIONS(640), 10, + ACTIONS(616), 10, anon_sym_SEMI, + anon_sym_CARET, anon_sym_RBRACE, + anon_sym_RBRACK, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, - anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, - anon_sym_RBRACK, - [9562] = 7, + [10863] = 7, ACTIONS(3), 1, sym_comment, - ACTIONS(353), 1, + ACTIONS(355), 1, sym_identifier, ACTIONS(655), 1, anon_sym_RPAREN, - STATE(201), 1, - sym_base_type, - STATE(289), 1, - sym_parameter, - STATE(402), 1, - sym_type_name, - ACTIONS(27), 7, - anon_sym_int, - anon_sym_bool, - anon_sym_string, - anon_sym_pubkey, - anon_sym_sig, - anon_sym_datasig, - anon_sym_byte, - [9590] = 7, - ACTIONS(3), 1, - sym_comment, - ACTIONS(353), 1, - sym_identifier, - ACTIONS(657), 1, - anon_sym_RPAREN, - STATE(201), 1, + STATE(203), 1, sym_base_type, - STATE(243), 1, - sym_parameter, - STATE(402), 1, + STATE(217), 1, + sym_builtin_type, + STATE(330), 1, sym_type_name, - ACTIONS(27), 7, + ACTIONS(29), 7, anon_sym_int, anon_sym_bool, anon_sym_string, @@ -11551,43 +12709,20 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_sig, anon_sym_datasig, anon_sym_byte, - [9618] = 9, - ACTIONS(3), 1, - sym_comment, - ACTIONS(31), 1, - sym_number, - ACTIONS(35), 1, - anon_sym_date, - ACTIONS(588), 1, - sym_identifier, - STATE(284), 1, - sym_literal, - STATE(287), 1, - sym_console_parameter, - ACTIONS(29), 2, - anon_sym_true, - anon_sym_false, - ACTIONS(33), 2, - sym_string_literal, - sym_hex_literal, - STATE(80), 3, - sym_boolean_literal, - sym_number_literal, - sym_date_literal, - [9650] = 7, + [10891] = 7, ACTIONS(3), 1, sym_comment, - ACTIONS(353), 1, + ACTIONS(355), 1, sym_identifier, - ACTIONS(659), 1, - anon_sym_RPAREN, - STATE(201), 1, + STATE(203), 1, sym_base_type, - STATE(258), 1, + STATE(217), 1, + sym_builtin_type, + STATE(294), 1, sym_typed_binding, - STATE(371), 1, + STATE(449), 1, sym_type_name, - ACTIONS(27), 7, + ACTIONS(29), 7, anon_sym_int, anon_sym_bool, anon_sym_string, @@ -11595,20 +12730,20 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_sig, anon_sym_datasig, anon_sym_byte, - [9678] = 7, + [10919] = 7, ACTIONS(3), 1, sym_comment, - ACTIONS(353), 1, + ACTIONS(355), 1, sym_identifier, - ACTIONS(661), 1, + ACTIONS(657), 1, anon_sym_RPAREN, - STATE(201), 1, + STATE(203), 1, sym_base_type, - STATE(258), 1, - sym_typed_binding, - STATE(371), 1, + STATE(217), 1, + sym_builtin_type, + STATE(286), 1, sym_type_name, - ACTIONS(27), 7, + ACTIONS(29), 7, anon_sym_int, anon_sym_bool, anon_sym_string, @@ -11616,20 +12751,20 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_sig, anon_sym_datasig, anon_sym_byte, - [9706] = 7, + [10947] = 7, ACTIONS(3), 1, sym_comment, - ACTIONS(353), 1, + ACTIONS(355), 1, sym_identifier, - ACTIONS(663), 1, - anon_sym_RPAREN, - STATE(201), 1, + STATE(203), 1, sym_base_type, - STATE(289), 1, + STATE(217), 1, + sym_builtin_type, + STATE(306), 1, sym_parameter, - STATE(402), 1, + STATE(424), 1, sym_type_name, - ACTIONS(27), 7, + ACTIONS(29), 7, anon_sym_int, anon_sym_bool, anon_sym_string, @@ -11637,18 +12772,20 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_sig, anon_sym_datasig, anon_sym_byte, - [9734] = 6, + [10975] = 7, ACTIONS(3), 1, sym_comment, - ACTIONS(353), 1, + ACTIONS(355), 1, sym_identifier, - ACTIONS(665), 1, - anon_sym_RPAREN, - STATE(201), 1, + ACTIONS(659), 1, + anon_sym_LPAREN, + STATE(203), 1, sym_base_type, - STATE(244), 1, + STATE(217), 1, + sym_builtin_type, + STATE(296), 1, sym_type_name, - ACTIONS(27), 7, + ACTIONS(29), 7, anon_sym_int, anon_sym_bool, anon_sym_string, @@ -11656,18 +12793,20 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_sig, anon_sym_datasig, anon_sym_byte, - [9759] = 6, + [11003] = 7, ACTIONS(3), 1, sym_comment, - ACTIONS(353), 1, + ACTIONS(355), 1, sym_identifier, - STATE(201), 1, + ACTIONS(661), 1, + anon_sym_RPAREN, + STATE(203), 1, sym_base_type, - STATE(232), 1, - sym_typed_binding, - STATE(371), 1, + STATE(217), 1, + sym_builtin_type, + STATE(330), 1, sym_type_name, - ACTIONS(27), 7, + ACTIONS(29), 7, anon_sym_int, anon_sym_bool, anon_sym_string, @@ -11675,18 +12814,20 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_sig, anon_sym_datasig, anon_sym_byte, - [9784] = 6, + [11031] = 7, ACTIONS(3), 1, sym_comment, - ACTIONS(353), 1, + ACTIONS(355), 1, sym_identifier, - ACTIONS(667), 1, - anon_sym_RPAREN, - STATE(201), 1, + STATE(203), 1, sym_base_type, - STATE(268), 1, + STATE(217), 1, + sym_builtin_type, + STATE(258), 1, + sym_typed_binding, + STATE(449), 1, sym_type_name, - ACTIONS(27), 7, + ACTIONS(29), 7, anon_sym_int, anon_sym_bool, anon_sym_string, @@ -11694,91 +12835,94 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_sig, anon_sym_datasig, anon_sym_byte, - [9809] = 5, + [11059] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(671), 1, + ACTIONS(665), 1, anon_sym_PIPE, - ACTIONS(673), 1, + ACTIONS(667), 1, anon_sym_AMP, - STATE(180), 1, + STATE(186), 1, aux_sym_bit_and_repeat1, - ACTIONS(669), 8, + ACTIONS(663), 8, anon_sym_SEMI, + anon_sym_CARET, anon_sym_RBRACE, + anon_sym_RBRACK, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, - anon_sym_CARET, - anon_sym_RBRACK, - [9832] = 5, + [11082] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(677), 1, + ACTIONS(672), 1, anon_sym_PIPE, - ACTIONS(679), 1, + ACTIONS(674), 1, anon_sym_AMP, - STATE(180), 1, + STATE(186), 1, aux_sym_bit_and_repeat1, - ACTIONS(675), 8, + ACTIONS(670), 8, anon_sym_SEMI, + anon_sym_CARET, anon_sym_RBRACE, + anon_sym_RBRACK, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, - anon_sym_CARET, - anon_sym_RBRACK, - [9855] = 6, + [11105] = 7, ACTIONS(3), 1, sym_comment, - ACTIONS(353), 1, - sym_identifier, - STATE(201), 1, - sym_base_type, - STATE(258), 1, - sym_typed_binding, - STATE(371), 1, - sym_type_name, - ACTIONS(27), 7, - anon_sym_int, - anon_sym_bool, - anon_sym_string, - anon_sym_pubkey, - anon_sym_sig, - anon_sym_datasig, - anon_sym_byte, - [9880] = 5, + ACTIONS(676), 1, + anon_sym_SEMI, + ACTIONS(682), 1, + sym_version_literal, + STATE(379), 1, + sym_version_constraint, + STATE(435), 1, + sym_version_operator, + ACTIONS(680), 2, + anon_sym_GT, + anon_sym_LT, + ACTIONS(678), 5, + anon_sym_CARET, + anon_sym_TILDE, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + anon_sym_EQ, + [11132] = 7, ACTIONS(3), 1, sym_comment, - ACTIONS(673), 1, - anon_sym_AMP, - ACTIONS(684), 1, - anon_sym_PIPE, - STATE(179), 1, - aux_sym_bit_and_repeat1, - ACTIONS(682), 8, - anon_sym_SEMI, - anon_sym_RBRACE, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_PIPE_PIPE, - anon_sym_AMP_AMP, + ACTIONS(682), 1, + sym_version_literal, + STATE(188), 1, + sym_version_constraint, + STATE(421), 1, + sym_pragma_value, + STATE(435), 1, + sym_version_operator, + ACTIONS(680), 2, + anon_sym_GT, + anon_sym_LT, + ACTIONS(678), 5, anon_sym_CARET, - anon_sym_RBRACK, - [9903] = 6, + anon_sym_TILDE, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + anon_sym_EQ, + [11159] = 6, ACTIONS(3), 1, sym_comment, - ACTIONS(353), 1, + ACTIONS(355), 1, sym_identifier, - ACTIONS(686), 1, - anon_sym_RPAREN, - STATE(201), 1, + STATE(203), 1, sym_base_type, - STATE(268), 1, + STATE(217), 1, + sym_builtin_type, + STATE(330), 1, sym_type_name, - ACTIONS(27), 7, + ACTIONS(29), 7, anon_sym_int, anon_sym_bool, anon_sym_string, @@ -11786,18 +12930,18 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_sig, anon_sym_datasig, anon_sym_byte, - [9928] = 6, + [11184] = 6, ACTIONS(3), 1, sym_comment, - ACTIONS(353), 1, + ACTIONS(355), 1, sym_identifier, - STATE(201), 1, + STATE(203), 1, sym_base_type, - STATE(289), 1, - sym_parameter, - STATE(402), 1, + STATE(217), 1, + sym_builtin_type, + STATE(418), 1, sym_type_name, - ACTIONS(27), 7, + ACTIONS(29), 7, anon_sym_int, anon_sym_bool, anon_sym_string, @@ -11805,16 +12949,18 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_sig, anon_sym_datasig, anon_sym_byte, - [9953] = 5, + [11209] = 6, ACTIONS(3), 1, sym_comment, - ACTIONS(353), 1, + ACTIONS(355), 1, sym_identifier, - STATE(201), 1, + STATE(203), 1, sym_base_type, - STATE(309), 1, + STATE(217), 1, + sym_builtin_type, + STATE(356), 1, sym_type_name, - ACTIONS(27), 7, + ACTIONS(29), 7, anon_sym_int, anon_sym_bool, anon_sym_string, @@ -11822,82 +12968,128 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_sig, anon_sym_datasig, anon_sym_byte, - [9975] = 5, + [11234] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(353), 1, - sym_identifier, - STATE(201), 1, - sym_base_type, - STATE(268), 1, - sym_type_name, - ACTIONS(27), 7, - anon_sym_int, - anon_sym_bool, - anon_sym_string, - anon_sym_pubkey, - anon_sym_sig, - anon_sym_datasig, - anon_sym_byte, - [9997] = 5, + ACTIONS(674), 1, + anon_sym_AMP, + ACTIONS(686), 1, + anon_sym_PIPE, + STATE(187), 1, + aux_sym_bit_and_repeat1, + ACTIONS(684), 8, + anon_sym_SEMI, + anon_sym_CARET, + anon_sym_RBRACE, + anon_sym_RBRACK, + anon_sym_COMMA, + anon_sym_RPAREN, + anon_sym_PIPE_PIPE, + anon_sym_AMP_AMP, + [11257] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(690), 1, - anon_sym_PIPE, - ACTIONS(692), 1, anon_sym_CARET, - STATE(191), 1, + ACTIONS(693), 1, + anon_sym_PIPE, + STATE(194), 1, aux_sym_bit_xor_repeat1, ACTIONS(688), 7, anon_sym_SEMI, anon_sym_RBRACE, + anon_sym_RBRACK, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, - anon_sym_RBRACK, - [10019] = 5, + [11279] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(696), 1, + ACTIONS(665), 2, anon_sym_PIPE, - ACTIONS(698), 1, + anon_sym_AMP, + ACTIONS(663), 8, + anon_sym_SEMI, anon_sym_CARET, - STATE(188), 1, + anon_sym_RBRACE, + anon_sym_RBRACK, + anon_sym_COMMA, + anon_sym_RPAREN, + anon_sym_PIPE_PIPE, + anon_sym_AMP_AMP, + [11297] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(697), 1, + anon_sym_CARET, + ACTIONS(699), 1, + anon_sym_PIPE, + STATE(198), 1, aux_sym_bit_xor_repeat1, - ACTIONS(694), 7, + ACTIONS(695), 7, anon_sym_SEMI, anon_sym_RBRACE, + anon_sym_RBRACK, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, - anon_sym_RBRACK, - [10041] = 3, + [11319] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(677), 2, + ACTIONS(701), 1, + sym_identifier, + ACTIONS(705), 1, + anon_sym_LBRACK, + STATE(197), 2, + sym_array_suffix, + aux_sym_cast_type_name_repeat1, + ACTIONS(703), 6, + anon_sym_SEMI, + anon_sym_LBRACE, + anon_sym_LPAREN, + anon_sym_COMMA, + anon_sym_RPAREN, + anon_sym_constant, + [11341] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(697), 1, + anon_sym_CARET, + ACTIONS(710), 1, anon_sym_PIPE, - anon_sym_AMP, - ACTIONS(675), 8, + STATE(194), 1, + aux_sym_bit_xor_repeat1, + ACTIONS(708), 7, anon_sym_SEMI, anon_sym_RBRACE, + anon_sym_RBRACK, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, + [11363] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(714), 2, + anon_sym_GT, + anon_sym_LT, + ACTIONS(712), 7, + anon_sym_SEMI, anon_sym_CARET, - anon_sym_RBRACK, - [10059] = 5, + anon_sym_TILDE, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + anon_sym_EQ, + sym_version_literal, + [11380] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(353), 1, + ACTIONS(716), 1, sym_identifier, - STATE(201), 1, - sym_base_type, - STATE(347), 1, - sym_type_name, - ACTIONS(27), 7, + ACTIONS(718), 8, + anon_sym_RBRACE, anon_sym_int, anon_sym_bool, anon_sym_string, @@ -11905,2497 +13097,2901 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_sig, anon_sym_datasig, anon_sym_byte, - [10081] = 5, + [11397] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(692), 1, - anon_sym_CARET, - ACTIONS(703), 1, + ACTIONS(722), 1, anon_sym_PIPE, - STATE(188), 1, - aux_sym_bit_xor_repeat1, - ACTIONS(701), 7, + STATE(201), 1, + aux_sym_bit_or_repeat1, + ACTIONS(720), 7, anon_sym_SEMI, anon_sym_RBRACE, + anon_sym_RBRACK, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, - anon_sym_RBRACK, - [10103] = 4, + [11416] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(707), 1, - anon_sym_PIPE, - STATE(193), 1, - aux_sym_bit_or_repeat1, - ACTIONS(705), 7, + ACTIONS(725), 1, + sym_identifier, + ACTIONS(729), 1, + anon_sym_LBRACK, + STATE(197), 2, + sym_array_suffix, + aux_sym_cast_type_name_repeat1, + ACTIONS(727), 5, anon_sym_SEMI, - anon_sym_RBRACE, + anon_sym_LBRACE, anon_sym_COMMA, anon_sym_RPAREN, - anon_sym_PIPE_PIPE, - anon_sym_AMP_AMP, - anon_sym_RBRACK, - [10122] = 4, + anon_sym_constant, + [11437] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(711), 1, - anon_sym_PIPE, - STATE(193), 1, - aux_sym_bit_or_repeat1, - ACTIONS(709), 7, + ACTIONS(729), 1, + anon_sym_LBRACK, + ACTIONS(731), 1, + sym_identifier, + STATE(202), 2, + sym_array_suffix, + aux_sym_cast_type_name_repeat1, + ACTIONS(733), 5, anon_sym_SEMI, - anon_sym_RBRACE, + anon_sym_LBRACE, anon_sym_COMMA, anon_sym_RPAREN, - anon_sym_PIPE_PIPE, - anon_sym_AMP_AMP, - anon_sym_RBRACK, - [10141] = 4, + anon_sym_constant, + [11458] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(737), 2, + anon_sym_GT, + anon_sym_LT, + ACTIONS(735), 7, + anon_sym_SEMI, + anon_sym_CARET, + anon_sym_TILDE, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + anon_sym_EQ, + sym_version_literal, + [11475] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(707), 1, + ACTIONS(741), 1, anon_sym_PIPE, - STATE(192), 1, + STATE(207), 1, aux_sym_bit_or_repeat1, - ACTIONS(714), 7, + ACTIONS(739), 7, anon_sym_SEMI, anon_sym_RBRACE, + anon_sym_RBRACK, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, - anon_sym_RBRACK, - [10160] = 3, + [11494] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(696), 1, + ACTIONS(693), 1, anon_sym_PIPE, - ACTIONS(694), 8, + ACTIONS(688), 8, anon_sym_SEMI, - anon_sym_RBRACE, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_PIPE_PIPE, - anon_sym_AMP_AMP, anon_sym_CARET, - anon_sym_RBRACK, - [10177] = 3, - ACTIONS(3), 1, - sym_comment, - ACTIONS(716), 1, - sym_identifier, - ACTIONS(718), 8, anon_sym_RBRACE, - anon_sym_int, - anon_sym_bool, - anon_sym_string, - anon_sym_pubkey, - anon_sym_sig, - anon_sym_datasig, - anon_sym_byte, - [10194] = 3, + anon_sym_RBRACK, + anon_sym_COMMA, + anon_sym_RPAREN, + anon_sym_PIPE_PIPE, + anon_sym_AMP_AMP, + [11511] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(720), 1, + ACTIONS(741), 1, anon_sym_PIPE, - ACTIONS(709), 7, + STATE(201), 1, + aux_sym_bit_or_repeat1, + ACTIONS(743), 7, anon_sym_SEMI, anon_sym_RBRACE, + anon_sym_RBRACK, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, - anon_sym_RBRACK, - [10210] = 5, + [11530] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(722), 1, + ACTIONS(745), 1, sym_identifier, - ACTIONS(726), 1, - anon_sym_LBRACK, - STATE(202), 2, - sym_array_suffix, - aux_sym_type_name_repeat1, - ACTIONS(724), 4, - anon_sym_constant, + ACTIONS(747), 7, + anon_sym_SEMI, + anon_sym_LBRACE, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_RPAREN, - [10230] = 4, + anon_sym_constant, + anon_sym_LBRACK, + [11546] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(730), 1, + ACTIONS(751), 1, anon_sym_AMP_AMP, - STATE(199), 1, + STATE(209), 1, aux_sym_logical_and_repeat1, - ACTIONS(728), 6, + ACTIONS(749), 6, anon_sym_SEMI, anon_sym_RBRACE, + anon_sym_RBRACK, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_PIPE_PIPE, - anon_sym_RBRACK, - [10248] = 4, + [11564] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(735), 1, - anon_sym_AMP_AMP, - STATE(203), 1, - aux_sym_logical_and_repeat1, - ACTIONS(733), 6, + ACTIONS(754), 1, + anon_sym_PIPE, + ACTIONS(720), 7, anon_sym_SEMI, anon_sym_RBRACE, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_PIPE_PIPE, anon_sym_RBRACK, - [10266] = 5, - ACTIONS(3), 1, - sym_comment, - ACTIONS(726), 1, - anon_sym_LBRACK, - ACTIONS(737), 1, - sym_identifier, - STATE(198), 2, - sym_array_suffix, - aux_sym_type_name_repeat1, - ACTIONS(739), 4, - anon_sym_constant, - anon_sym_LPAREN, anon_sym_COMMA, anon_sym_RPAREN, - [10286] = 5, + anon_sym_PIPE_PIPE, + anon_sym_AMP_AMP, + [11580] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(741), 1, - sym_identifier, - ACTIONS(745), 1, - anon_sym_LBRACK, - STATE(202), 2, - sym_array_suffix, - aux_sym_type_name_repeat1, - ACTIONS(743), 4, - anon_sym_constant, - anon_sym_LPAREN, + ACTIONS(758), 1, + anon_sym_AMP_AMP, + STATE(209), 1, + aux_sym_logical_and_repeat1, + ACTIONS(756), 6, + anon_sym_SEMI, + anon_sym_RBRACE, + anon_sym_RBRACK, anon_sym_COMMA, anon_sym_RPAREN, - [10306] = 4, + anon_sym_PIPE_PIPE, + [11598] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(735), 1, + ACTIONS(758), 1, anon_sym_AMP_AMP, - STATE(199), 1, + STATE(211), 1, aux_sym_logical_and_repeat1, - ACTIONS(748), 6, + ACTIONS(760), 6, anon_sym_SEMI, anon_sym_RBRACE, + anon_sym_RBRACK, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_PIPE_PIPE, - anon_sym_RBRACK, - [10324] = 4, + [11616] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(752), 1, - anon_sym_PIPE_PIPE, - STATE(206), 1, - aux_sym_logical_or_repeat1, - ACTIONS(750), 5, + ACTIONS(762), 1, + sym_identifier, + ACTIONS(764), 7, anon_sym_SEMI, - anon_sym_RBRACE, + anon_sym_LBRACE, + anon_sym_LPAREN, anon_sym_COMMA, anon_sym_RPAREN, - anon_sym_RBRACK, - [10341] = 7, + anon_sym_constant, + anon_sym_LBRACK, + [11632] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(754), 1, + ACTIONS(766), 1, sym_identifier, - ACTIONS(758), 1, - anon_sym_EQ, - ACTIONS(760), 1, + ACTIONS(768), 7, + anon_sym_SEMI, + anon_sym_LBRACE, anon_sym_LPAREN, - ACTIONS(762), 1, + anon_sym_COMMA, + anon_sym_RPAREN, + anon_sym_constant, + anon_sym_LBRACK, + [11648] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(199), 1, + anon_sym_LPAREN, + ACTIONS(770), 1, + sym_identifier, + ACTIONS(772), 1, + anon_sym_EQ, + ACTIONS(776), 1, anon_sym_COLON, - STATE(72), 1, + STATE(95), 1, sym_expression_list, - ACTIONS(756), 2, + ACTIONS(774), 2, anon_sym_constant, anon_sym_LBRACK, - [10364] = 4, + [11671] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(752), 1, + ACTIONS(780), 1, anon_sym_PIPE_PIPE, - STATE(207), 1, + STATE(216), 1, aux_sym_logical_or_repeat1, - ACTIONS(764), 5, + ACTIONS(778), 5, anon_sym_SEMI, anon_sym_RBRACE, + anon_sym_RBRACK, anon_sym_COMMA, anon_sym_RPAREN, - anon_sym_RBRACK, - [10381] = 4, + [11688] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(768), 1, - anon_sym_PIPE_PIPE, - STATE(207), 1, - aux_sym_logical_or_repeat1, - ACTIONS(766), 5, + ACTIONS(770), 1, + sym_identifier, + ACTIONS(774), 6, anon_sym_SEMI, - anon_sym_RBRACE, + anon_sym_LBRACE, anon_sym_COMMA, anon_sym_RPAREN, - anon_sym_RBRACK, - [10398] = 2, + anon_sym_constant, + anon_sym_LBRACK, + [11703] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(728), 7, + ACTIONS(749), 7, anon_sym_SEMI, anon_sym_RBRACE, + anon_sym_RBRACK, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, - anon_sym_RBRACK, - [10411] = 3, + [11716] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(754), 1, - sym_identifier, - ACTIONS(756), 5, - anon_sym_constant, - anon_sym_LPAREN, + ACTIONS(785), 1, + anon_sym_PIPE_PIPE, + STATE(220), 1, + aux_sym_logical_or_repeat1, + ACTIONS(783), 5, + anon_sym_SEMI, + anon_sym_RBRACE, + anon_sym_RBRACK, anon_sym_COMMA, anon_sym_RPAREN, - anon_sym_LBRACK, - [10425] = 2, + [11733] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(766), 6, + ACTIONS(785), 1, + anon_sym_PIPE_PIPE, + STATE(216), 1, + aux_sym_logical_or_repeat1, + ACTIONS(787), 5, anon_sym_SEMI, anon_sym_RBRACE, + anon_sym_RBRACK, anon_sym_COMMA, anon_sym_RPAREN, - anon_sym_PIPE_PIPE, - anon_sym_RBRACK, - [10437] = 3, + [11750] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(771), 1, - sym_identifier, - ACTIONS(773), 5, - anon_sym_constant, - anon_sym_LPAREN, + ACTIONS(778), 6, + anon_sym_SEMI, + anon_sym_RBRACE, + anon_sym_RBRACK, anon_sym_COMMA, anon_sym_RPAREN, - anon_sym_LBRACK, - [10451] = 6, - ACTIONS(3), 1, - sym_comment, - ACTIONS(754), 1, - sym_identifier, - ACTIONS(758), 1, - anon_sym_EQ, - ACTIONS(760), 1, - anon_sym_LPAREN, - STATE(72), 1, - sym_expression_list, - ACTIONS(756), 2, - anon_sym_constant, - anon_sym_LBRACK, - [10471] = 3, + anon_sym_PIPE_PIPE, + [11762] = 3, ACTIONS(3), 1, sym_comment, - STATE(78), 1, + STATE(76), 1, sym_input_field_name, - ACTIONS(775), 5, + ACTIONS(789), 5, anon_sym_value, anon_sym_scriptPubKey, anon_sym_outpointTransactionHash, anon_sym_outpointIndex, anon_sym_sigScript, - [10485] = 3, + [11776] = 6, ACTIONS(3), 1, sym_comment, - ACTIONS(777), 1, + ACTIONS(199), 1, + anon_sym_LPAREN, + ACTIONS(770), 1, sym_identifier, - ACTIONS(779), 5, + ACTIONS(772), 1, + anon_sym_EQ, + STATE(95), 1, + sym_expression_list, + ACTIONS(774), 2, anon_sym_constant, - anon_sym_LPAREN, - anon_sym_COMMA, - anon_sym_RPAREN, anon_sym_LBRACK, - [10499] = 2, + [11796] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(5), 1, + anon_sym_pragma, + ACTIONS(7), 1, + anon_sym_contract, + STATE(399), 1, + sym_contract_definition, + STATE(231), 2, + sym_pragma_directive, + aux_sym_contract_source_file_repeat1, + [11813] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(781), 5, + ACTIONS(791), 5, anon_sym_SEMI, anon_sym_RBRACE, - anon_sym_COMMA, - anon_sym_RPAREN, anon_sym_RBRACK, - [10510] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(783), 1, - sym_identifier, - ACTIONS(785), 1, - anon_sym_constant, - STATE(216), 2, - sym_modifier, - aux_sym_variable_definition_repeat1, - [10524] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(788), 1, anon_sym_COMMA, - STATE(217), 1, - aux_sym_expression_list_repeat1, - ACTIONS(791), 2, anon_sym_RPAREN, - anon_sym_RBRACK, - [10538] = 4, + [11824] = 5, ACTIONS(3), 1, sym_comment, + ACTIONS(365), 1, + anon_sym_POUND_LBRACK, + ACTIONS(793), 1, + anon_sym_entrypoint, ACTIONS(795), 1, + anon_sym_function, + STATE(228), 2, + sym_function_attribute, + aux_sym_function_definition_repeat1, + [11841] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(799), 1, anon_sym_RBRACK, - STATE(369), 1, + STATE(395), 1, sym_array_size, - ACTIONS(793), 2, + ACTIONS(797), 3, + anon_sym__, sym_array_bound, sym_identifier, - [10552] = 5, + [11856] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(797), 1, + ACTIONS(803), 1, + anon_sym_POUND_LBRACK, + ACTIONS(801), 2, anon_sym_entrypoint, - ACTIONS(799), 1, anon_sym_function, - ACTIONS(801), 1, - sym_attribute, - STATE(221), 1, + STATE(228), 2, + sym_function_attribute, aux_sym_function_definition_repeat1, - [10568] = 4, + [11871] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(803), 1, + ACTIONS(808), 1, + anon_sym_DOT, + STATE(243), 1, + aux_sym_attribute_path_repeat1, + ACTIONS(806), 2, + anon_sym_RBRACK, + anon_sym_LPAREN, + [11885] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(729), 1, + anon_sym_LBRACK, + ACTIONS(810), 1, + anon_sym_LPAREN, + STATE(197), 2, + sym_array_suffix, + aux_sym_cast_type_name_repeat1, + [11899] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(812), 1, + anon_sym_pragma, + ACTIONS(815), 1, + anon_sym_contract, + STATE(231), 2, + sym_pragma_directive, + aux_sym_contract_source_file_repeat1, + [11913] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(819), 1, + anon_sym_DOT, + STATE(232), 1, + aux_sym_attribute_path_repeat1, + ACTIONS(817), 2, + anon_sym_RBRACK, + anon_sym_LPAREN, + [11927] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(822), 1, + ts_builtin_sym_end, + ACTIONS(824), 1, + anon_sym_function, + STATE(233), 2, + sym_builtin_function_declaration, + aux_sym_declaration_source_file_repeat1, + [11941] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(827), 1, + anon_sym_LBRACE, + ACTIONS(829), 1, + anon_sym_COLON, + STATE(169), 1, + sym_braced_block, + STATE(336), 1, + sym_return_type_list, + [11957] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(831), 1, sym_identifier, - ACTIONS(805), 1, + ACTIONS(833), 1, anon_sym_constant, - STATE(216), 2, + STATE(236), 2, sym_modifier, aux_sym_variable_definition_repeat1, - [10582] = 4, + [11971] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(809), 1, - sym_attribute, - STATE(221), 1, - aux_sym_function_definition_repeat1, - ACTIONS(807), 2, - anon_sym_entrypoint, + ACTIONS(833), 1, + anon_sym_constant, + ACTIONS(835), 1, + sym_identifier, + STATE(239), 2, + sym_modifier, + aux_sym_variable_definition_repeat1, + [11985] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(827), 1, + anon_sym_LBRACE, + ACTIONS(829), 1, + anon_sym_COLON, + STATE(176), 1, + sym_braced_block, + STATE(309), 1, + sym_return_type_list, + [12001] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(9), 1, anon_sym_function, - [10596] = 4, + ACTIONS(837), 1, + ts_builtin_sym_end, + STATE(233), 2, + sym_builtin_function_declaration, + aux_sym_declaration_source_file_repeat1, + [12015] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(839), 1, + sym_identifier, + ACTIONS(841), 1, + anon_sym_constant, + STATE(239), 2, + sym_modifier, + aux_sym_variable_definition_repeat1, + [12029] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(729), 1, + anon_sym_LBRACK, + ACTIONS(844), 1, + anon_sym_LPAREN, + STATE(230), 2, + sym_array_suffix, + aux_sym_cast_type_name_repeat1, + [12043] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(848), 1, + anon_sym_COMMA, + STATE(241), 1, + aux_sym_return_expression_list_repeat1, + ACTIONS(846), 2, + anon_sym_RBRACK, + anon_sym_RPAREN, + [12057] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(827), 1, + anon_sym_LBRACE, + ACTIONS(829), 1, + anon_sym_COLON, + STATE(159), 1, + sym_braced_block, + STATE(317), 1, + sym_return_type_list, + [12073] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(808), 1, + anon_sym_DOT, + STATE(232), 1, + aux_sym_attribute_path_repeat1, + ACTIONS(851), 2, + anon_sym_RBRACK, + anon_sym_LPAREN, + [12087] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(805), 1, - anon_sym_constant, - ACTIONS(812), 1, - sym_identifier, - STATE(220), 2, - sym_modifier, - aux_sym_variable_definition_repeat1, - [10610] = 4, + ACTIONS(853), 1, + anon_sym_COMMA, + ACTIONS(856), 1, + anon_sym_RPAREN, + STATE(244), 1, + aux_sym_return_type_list_repeat1, + [12100] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(814), 1, + ACTIONS(858), 1, anon_sym_COMMA, - ACTIONS(817), 1, + ACTIONS(860), 1, anon_sym_RPAREN, - STATE(223), 1, + STATE(249), 1, aux_sym_parameter_list_repeat1, - [10623] = 4, + [12113] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(819), 1, - sym_identifier, - ACTIONS(821), 1, + ACTIONS(862), 1, anon_sym_RBRACE, - STATE(228), 1, - sym_state_entry, - [10636] = 4, + ACTIONS(864), 1, + anon_sym_COMMA, + STATE(251), 1, + aux_sym_state_function_call_assignment_repeat1, + [12126] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(823), 1, + ACTIONS(866), 1, + sym_identifier, + ACTIONS(868), 1, + anon_sym_RPAREN, + STATE(333), 1, + sym_attribute_arg, + [12139] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(870), 3, + anon_sym_SEMI, anon_sym_LBRACE, - ACTIONS(825), 1, anon_sym_COLON, - STATE(348), 1, - sym_return_type_list, - [10649] = 4, + [12148] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(827), 1, + ACTIONS(598), 1, + anon_sym_RPAREN, + ACTIONS(872), 1, + anon_sym_COMMA, + STATE(273), 1, + aux_sym_parameter_list_repeat1, + [12161] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(874), 1, sym_identifier, - ACTIONS(829), 1, + ACTIONS(876), 1, anon_sym_RBRACE, - STATE(299), 1, + STATE(315), 1, sym_state_typed_binding, - [10662] = 4, + [12174] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(829), 1, + ACTIONS(876), 1, anon_sym_RBRACE, - ACTIONS(831), 1, + ACTIONS(878), 1, anon_sym_COMMA, - STATE(241), 1, + STATE(267), 1, aux_sym_state_function_call_assignment_repeat1, - [10675] = 4, + [12187] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(833), 1, - anon_sym_RBRACE, - ACTIONS(835), 1, + ACTIONS(584), 1, + anon_sym_RPAREN, + ACTIONS(880), 1, anon_sym_COMMA, - STATE(249), 1, - aux_sym_state_object_repeat1, - [10688] = 4, + STATE(268), 1, + aux_sym_function_call_assignment_repeat1, + [12200] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(661), 1, - anon_sym_RPAREN, - ACTIONS(837), 1, + ACTIONS(882), 1, anon_sym_COMMA, - STATE(242), 1, - aux_sym_function_call_assignment_repeat1, - [10701] = 4, + ACTIONS(885), 1, + anon_sym_RPAREN, + STATE(253), 1, + aux_sym_attribute_args_repeat1, + [12213] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(839), 1, + ACTIONS(887), 1, anon_sym_COMMA, - ACTIONS(841), 1, + ACTIONS(889), 1, anon_sym_RPAREN, - STATE(245), 1, + STATE(269), 1, aux_sym_console_parameter_list_repeat1, - [10714] = 4, + [12226] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(817), 3, + anon_sym_RBRACK, + anon_sym_DOT, + anon_sym_LPAREN, + [12235] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(891), 1, + sym_identifier, + ACTIONS(893), 1, + anon_sym_RBRACE, + STATE(308), 1, + sym_state_entry, + [12248] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(843), 1, + ACTIONS(895), 1, anon_sym_RBRACE, - ACTIONS(845), 1, + ACTIONS(897), 1, anon_sym_COMMA, - STATE(227), 1, - aux_sym_state_function_call_assignment_repeat1, - [10727] = 4, + STATE(257), 1, + aux_sym_state_object_repeat1, + [12261] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(847), 1, + ACTIONS(900), 1, anon_sym_COMMA, - ACTIONS(849), 1, + ACTIONS(902), 1, anon_sym_RPAREN, - STATE(229), 1, + STATE(252), 1, aux_sym_function_call_assignment_repeat1, - [10740] = 4, + [12274] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(686), 1, - anon_sym_RPAREN, - ACTIONS(851), 1, + ACTIONS(846), 3, + anon_sym_RBRACK, anon_sym_COMMA, - STATE(247), 1, - aux_sym_return_type_list_repeat1, - [10753] = 4, + anon_sym_RPAREN, + [12283] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(819), 1, + ACTIONS(891), 1, sym_identifier, - ACTIONS(853), 1, + ACTIONS(904), 1, anon_sym_RBRACE, - STATE(257), 1, + STATE(308), 1, sym_state_entry, - [10766] = 4, + [12296] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(855), 1, + ACTIONS(904), 1, anon_sym_RBRACE, - ACTIONS(857), 1, + ACTIONS(906), 1, anon_sym_COMMA, - STATE(235), 1, + STATE(257), 1, aux_sym_state_object_repeat1, - [10779] = 2, + [12309] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(791), 3, - anon_sym_COMMA, + ACTIONS(61), 1, anon_sym_RPAREN, - anon_sym_RBRACK, - [10788] = 4, + ACTIONS(908), 1, + anon_sym_COMMA, + STATE(241), 1, + aux_sym_return_expression_list_repeat1, + [12322] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(51), 1, - anon_sym_RPAREN, - ACTIONS(860), 1, + ACTIONS(910), 1, anon_sym_COMMA, - STATE(217), 1, - aux_sym_expression_list_repeat1, - [10801] = 4, + ACTIONS(912), 1, + anon_sym_RPAREN, + STATE(275), 1, + aux_sym_attribute_args_repeat1, + [12335] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(862), 1, - anon_sym_COMMA, - ACTIONS(864), 1, + ACTIONS(57), 1, anon_sym_RBRACK, - STATE(251), 1, - aux_sym_expression_list_repeat1, - [10814] = 4, + ACTIONS(914), 1, + anon_sym_COMMA, + STATE(241), 1, + aux_sym_return_expression_list_repeat1, + [12348] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(866), 1, - anon_sym_SEMI, - ACTIONS(868), 1, - anon_sym_EQ, - ACTIONS(870), 1, - anon_sym_COMMA, - [10827] = 4, + ACTIONS(916), 3, + anon_sym_entrypoint, + anon_sym_function, + anon_sym_POUND_LBRACK, + [12357] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(827), 1, + ACTIONS(874), 1, sym_identifier, - ACTIONS(872), 1, + ACTIONS(918), 1, anon_sym_RBRACE, - STATE(299), 1, + STATE(315), 1, sym_state_typed_binding, - [10840] = 4, + [12370] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(874), 1, + ACTIONS(920), 1, anon_sym_RBRACE, - ACTIONS(876), 1, + ACTIONS(922), 1, anon_sym_COMMA, - STATE(241), 1, + STATE(267), 1, aux_sym_state_function_call_assignment_repeat1, - [10853] = 4, + [12383] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(879), 1, + ACTIONS(925), 1, anon_sym_COMMA, - ACTIONS(882), 1, + ACTIONS(928), 1, anon_sym_RPAREN, - STATE(242), 1, + STATE(268), 1, aux_sym_function_call_assignment_repeat1, - [10866] = 4, + [12396] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(47), 1, + anon_sym_RPAREN, + ACTIONS(930), 1, + anon_sym_COMMA, + STATE(279), 1, + aux_sym_console_parameter_list_repeat1, + [12409] = 3, + ACTIONS(3), 1, + sym_comment, + STATE(74), 1, + sym_output_field_name, + ACTIONS(932), 2, + anon_sym_value, + anon_sym_scriptPubKey, + [12420] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(934), 3, + anon_sym_SEMI, + anon_sym_LBRACE, + anon_sym_COLON, + [12429] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(936), 3, + anon_sym_SEMI, + anon_sym_LBRACE, + anon_sym_COLON, + [12438] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(884), 1, + ACTIONS(938), 1, anon_sym_COMMA, - ACTIONS(886), 1, + ACTIONS(941), 1, anon_sym_RPAREN, - STATE(250), 1, + STATE(273), 1, aux_sym_parameter_list_repeat1, - [10879] = 4, + [12451] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(888), 1, - anon_sym_COMMA, - ACTIONS(890), 1, + ACTIONS(866), 1, + sym_identifier, + ACTIONS(943), 1, anon_sym_RPAREN, - STATE(233), 1, - aux_sym_return_type_list_repeat1, - [10892] = 4, + STATE(333), 1, + sym_attribute_arg, + [12464] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(592), 1, + ACTIONS(943), 1, anon_sym_RPAREN, - ACTIONS(892), 1, + ACTIONS(945), 1, anon_sym_COMMA, STATE(253), 1, - aux_sym_console_parameter_list_repeat1, - [10905] = 4, + aux_sym_attribute_args_repeat1, + [12477] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(825), 1, - anon_sym_COLON, - ACTIONS(894), 1, - anon_sym_LBRACE, - STATE(398), 1, - sym_return_type_list, - [10918] = 4, + ACTIONS(947), 1, + anon_sym_RBRACE, + ACTIONS(949), 1, + anon_sym_COMMA, + STATE(261), 1, + aux_sym_state_object_repeat1, + [12490] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(896), 1, + ACTIONS(951), 1, anon_sym_COMMA, - ACTIONS(899), 1, + ACTIONS(953), 1, anon_sym_RPAREN, - STATE(247), 1, - aux_sym_return_type_list_repeat1, - [10931] = 4, + STATE(280), 1, + aux_sym_return_expression_list_repeat1, + [12503] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(819), 1, + ACTIONS(955), 1, + anon_sym_RBRACK, + ACTIONS(957), 1, + anon_sym_COMMA, + STATE(264), 1, + aux_sym_return_expression_list_repeat1, + [12516] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(959), 1, + anon_sym_COMMA, + ACTIONS(962), 1, + anon_sym_RPAREN, + STATE(279), 1, + aux_sym_console_parameter_list_repeat1, + [12529] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(69), 1, + anon_sym_RPAREN, + ACTIONS(964), 1, + anon_sym_COMMA, + STATE(241), 1, + aux_sym_return_expression_list_repeat1, + [12542] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(891), 1, sym_identifier, - ACTIONS(901), 1, + ACTIONS(966), 1, anon_sym_RBRACE, - STATE(257), 1, + STATE(276), 1, sym_state_entry, - [10944] = 4, + [12555] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(901), 1, - anon_sym_RBRACE, - ACTIONS(903), 1, + ACTIONS(968), 1, + anon_sym_RBRACK, + ACTIONS(970), 1, + anon_sym_LPAREN, + STATE(437), 1, + sym_attribute_args, + [12568] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(972), 1, anon_sym_COMMA, - STATE(235), 1, - aux_sym_state_object_repeat1, - [10957] = 4, + ACTIONS(974), 1, + anon_sym_RPAREN, + STATE(262), 1, + aux_sym_return_expression_list_repeat1, + [12581] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(655), 1, anon_sym_RPAREN, - ACTIONS(905), 1, + ACTIONS(976), 1, anon_sym_COMMA, - STATE(223), 1, - aux_sym_parameter_list_repeat1, - [10970] = 4, + STATE(244), 1, + aux_sym_return_type_list_repeat1, + [12594] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(47), 1, - anon_sym_RBRACK, - ACTIONS(907), 1, + ACTIONS(829), 1, + anon_sym_COLON, + ACTIONS(978), 1, + anon_sym_SEMI, + STATE(369), 1, + sym_return_type_list, + [12607] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(980), 1, anon_sym_COMMA, - STATE(217), 1, - aux_sym_expression_list_repeat1, - [10983] = 3, + ACTIONS(982), 1, + anon_sym_RPAREN, + STATE(284), 1, + aux_sym_return_type_list_repeat1, + [12620] = 2, ACTIONS(3), 1, sym_comment, - STATE(76), 1, - sym_output_field_name, - ACTIONS(909), 2, - anon_sym_value, - anon_sym_scriptPubKey, - [10994] = 4, + ACTIONS(984), 3, + anon_sym_SEMI, + anon_sym_LBRACE, + anon_sym_COLON, + [12629] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(911), 1, - anon_sym_COMMA, - ACTIONS(914), 1, + ACTIONS(986), 3, + anon_sym_entrypoint, + anon_sym_function, + anon_sym_POUND_LBRACK, + [12638] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(866), 1, + sym_identifier, + ACTIONS(988), 1, anon_sym_RPAREN, - STATE(253), 1, - aux_sym_console_parameter_list_repeat1, - [11007] = 4, + STATE(263), 1, + sym_attribute_arg, + [12651] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(916), 1, + ACTIONS(990), 1, + anon_sym_SEMI, + ACTIONS(992), 1, + anon_sym_EQ, + ACTIONS(994), 1, anon_sym_COMMA, - ACTIONS(918), 1, - anon_sym_RPAREN, - STATE(237), 1, - aux_sym_expression_list_repeat1, - [11020] = 4, + [12664] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(825), 1, - anon_sym_COLON, - ACTIONS(920), 1, - anon_sym_LBRACE, - STATE(327), 1, - sym_return_type_list, - [11033] = 3, + ACTIONS(996), 1, + sym_identifier, + STATE(404), 1, + sym_function_call, + [12674] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(922), 1, - sym_string_literal, - STATE(303), 1, - sym_require_message, - [11043] = 2, + ACTIONS(998), 1, + anon_sym_COMMA, + ACTIONS(1000), 1, + anon_sym_RPAREN, + [12684] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(855), 2, - anon_sym_RBRACE, - anon_sym_COMMA, - [11051] = 2, + ACTIONS(1002), 1, + anon_sym_LPAREN, + STATE(375), 1, + sym_parameter_list, + [12694] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(882), 2, + ACTIONS(928), 2, anon_sym_COMMA, anon_sym_RPAREN, - [11059] = 3, + [12702] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(924), 1, + ACTIONS(996), 1, sym_identifier, - STATE(335), 1, + STATE(377), 1, sym_function_call, - [11069] = 3, + [12712] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(926), 1, - anon_sym_LBRACK, - STATE(264), 1, - sym_tuple_index, - [11079] = 3, + ACTIONS(1004), 2, + anon_sym_SEMI, + anon_sym_LBRACE, + [12720] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(922), 1, + ACTIONS(1006), 2, + anon_sym_COMMA, + anon_sym_RPAREN, + [12728] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1008), 2, + ts_builtin_sym_end, + anon_sym_function, + [12736] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1010), 1, sym_string_literal, - STATE(339), 1, + STATE(383), 1, sym_require_message, - [11089] = 3, + [12746] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(926), 1, - anon_sym_LBRACK, - STATE(266), 1, - sym_tuple_index, - [11099] = 3, + ACTIONS(1012), 1, + anon_sym_LPAREN, + STATE(432), 1, + sym_console_parameter_list, + [12756] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(928), 1, + ACTIONS(1002), 1, + anon_sym_LPAREN, + STATE(285), 1, + sym_parameter_list, + [12766] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1014), 1, anon_sym_SEMI, - ACTIONS(930), 1, + ACTIONS(1016), 1, anon_sym_EQ, - [11109] = 3, + [12776] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(932), 1, - anon_sym_DOT, - STATE(94), 1, - sym_output_field, - [11119] = 2, + ACTIONS(1018), 1, + anon_sym_COMMA, + ACTIONS(1020), 1, + anon_sym_RPAREN, + [12786] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(934), 2, - anon_sym_LBRACE, - anon_sym_COLON, - [11127] = 3, + ACTIONS(866), 1, + sym_identifier, + STATE(333), 1, + sym_attribute_arg, + [12796] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(936), 1, - anon_sym_DOT, - STATE(94), 1, - sym_input_field, - [11137] = 3, + ACTIONS(891), 1, + sym_identifier, + STATE(308), 1, + sym_state_entry, + [12806] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(938), 1, - anon_sym_LPAREN, - STATE(255), 1, - sym_parameter_list, - [11147] = 2, + ACTIONS(941), 2, + anon_sym_COMMA, + anon_sym_RPAREN, + [12814] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(899), 2, + ACTIONS(1022), 2, + anon_sym_RBRACE, anon_sym_COMMA, - anon_sym_RPAREN, - [11155] = 2, + [12822] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(895), 2, + anon_sym_RBRACE, + anon_sym_COMMA, + [12830] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(940), 2, + ACTIONS(827), 1, anon_sym_LBRACE, - anon_sym_COLON, - [11163] = 2, + STATE(170), 1, + sym_braced_block, + [12840] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(942), 2, + ACTIONS(1024), 1, anon_sym_COMMA, + ACTIONS(1026), 1, anon_sym_RPAREN, - [11171] = 3, + [12850] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(944), 1, + ACTIONS(1028), 2, + anon_sym_RBRACE, anon_sym_COMMA, - ACTIONS(946), 1, - anon_sym_RPAREN, - [11181] = 3, + [12858] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(819), 1, + ACTIONS(1030), 2, + anon_sym_SEMI, + anon_sym_LBRACE, + [12866] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(874), 1, sym_identifier, - STATE(257), 1, - sym_state_entry, - [11191] = 2, + STATE(315), 1, + sym_state_typed_binding, + [12876] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(948), 2, - anon_sym_LBRACE, - anon_sym_COLON, - [11199] = 3, + ACTIONS(1032), 1, + anon_sym_LBRACK, + STATE(324), 1, + sym_tuple_index, + [12886] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(938), 1, - anon_sym_LPAREN, - STATE(225), 1, - sym_parameter_list, - [11209] = 2, + ACTIONS(920), 2, + anon_sym_RBRACE, + anon_sym_COMMA, + [12894] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1032), 1, + anon_sym_LBRACK, + STATE(323), 1, + sym_tuple_index, + [12904] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(950), 2, + ACTIONS(827), 1, anon_sym_LBRACE, - anon_sym_COLON, - [11217] = 3, + STATE(161), 1, + sym_braced_block, + [12914] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(952), 1, + ACTIONS(1034), 1, anon_sym_COMMA, - ACTIONS(954), 1, + ACTIONS(1036), 1, anon_sym_RPAREN, - [11227] = 3, + [12924] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(956), 1, + ACTIONS(962), 2, anon_sym_COMMA, - ACTIONS(958), 1, anon_sym_RPAREN, - [11237] = 3, + [12932] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(7), 1, - anon_sym_contract, - STATE(329), 1, - sym_contract_definition, - [11247] = 2, + ACTIONS(1038), 2, + ts_builtin_sym_end, + anon_sym_function, + [12940] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(960), 2, - anon_sym_RBRACE, + ACTIONS(1040), 2, anon_sym_COMMA, - [11255] = 3, + anon_sym_RPAREN, + [12948] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(760), 1, + ACTIONS(199), 1, anon_sym_LPAREN, - STATE(72), 1, + STATE(101), 1, sym_expression_list, - [11265] = 3, + [12958] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(924), 1, - sym_identifier, - STATE(361), 1, - sym_function_call, - [11275] = 3, + ACTIONS(1042), 1, + anon_sym_DOT, + STATE(102), 1, + sym_output_field, + [12968] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(827), 1, - sym_identifier, - STATE(299), 1, - sym_state_typed_binding, - [11285] = 3, + ACTIONS(1044), 1, + anon_sym_DOT, + STATE(102), 1, + sym_input_field, + [12978] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(924), 1, + ACTIONS(996), 1, sym_identifier, - STATE(363), 1, + STATE(426), 1, sym_function_call, - [11295] = 2, + [12988] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(962), 2, - anon_sym_COMMA, - anon_sym_RPAREN, - [11303] = 3, + ACTIONS(1002), 1, + anon_sym_LPAREN, + STATE(242), 1, + sym_parameter_list, + [12998] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(964), 1, + ACTIONS(1002), 1, + anon_sym_LPAREN, + STATE(237), 1, + sym_parameter_list, + [13008] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1010), 1, + sym_string_literal, + STATE(430), 1, + sym_require_message, + [13018] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1046), 2, + anon_sym_SEMI, + anon_sym_LBRACE, + [13026] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(856), 2, anon_sym_COMMA, - ACTIONS(966), 1, anon_sym_RPAREN, - [11313] = 3, + [13034] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(827), 1, + ACTIONS(1048), 1, sym_identifier, - STATE(231), 1, - sym_state_typed_binding, - [11323] = 2, + STATE(282), 1, + sym_attribute_path, + [13044] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(914), 2, + ACTIONS(1050), 2, anon_sym_COMMA, anon_sym_RPAREN, - [11331] = 3, - ACTIONS(3), 1, - sym_comment, - ACTIONS(760), 1, - anon_sym_LPAREN, - STATE(88), 1, - sym_expression_list, - [11341] = 2, + [13052] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(817), 2, + ACTIONS(885), 2, anon_sym_COMMA, anon_sym_RPAREN, - [11349] = 3, + [13060] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(924), 1, - sym_identifier, - STATE(330), 1, - sym_function_call, - [11359] = 3, + ACTIONS(1052), 2, + anon_sym_SEMI, + anon_sym_LBRACE, + [13068] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(924), 1, + ACTIONS(1054), 1, sym_identifier, - STATE(381), 1, - sym_function_call, - [11369] = 3, + ACTIONS(1056), 1, + anon_sym_constant, + [13078] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(924), 1, - sym_identifier, - STATE(383), 1, - sym_function_call, - [11379] = 3, + ACTIONS(827), 1, + anon_sym_LBRACE, + STATE(174), 1, + sym_braced_block, + [13088] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(938), 1, + ACTIONS(1058), 2, + anon_sym_pragma, + anon_sym_contract, + [13096] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1002), 1, anon_sym_LPAREN, - STATE(306), 1, + STATE(234), 1, sym_parameter_list, - [11389] = 3, + [13106] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(968), 1, + ACTIONS(1060), 2, + anon_sym_SEMI, + anon_sym_LBRACE, + [13114] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1062), 1, sym_identifier, - ACTIONS(970), 1, + ACTIONS(1064), 1, anon_sym_constant, - [11399] = 3, + [13124] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(760), 1, + ACTIONS(199), 1, anon_sym_LPAREN, - STATE(387), 1, + STATE(69), 1, sym_expression_list, - [11409] = 3, + [13134] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(972), 1, - anon_sym_LPAREN, - STATE(324), 1, - sym_console_parameter_list, - [11419] = 3, + ACTIONS(1066), 2, + anon_sym_COMMA, + anon_sym_RPAREN, + [13142] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1068), 1, + anon_sym_COMMA, + ACTIONS(1070), 1, + anon_sym_RPAREN, + [13152] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(760), 1, + ACTIONS(199), 1, anon_sym_LPAREN, - STATE(68), 1, + STATE(95), 1, sym_expression_list, - [11429] = 3, + [13162] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(938), 1, - anon_sym_LPAREN, - STATE(246), 1, - sym_parameter_list, - [11439] = 2, + ACTIONS(1072), 1, + anon_sym_EQ, + [13169] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(874), 2, - anon_sym_RBRACE, - anon_sym_COMMA, - [11447] = 2, + ACTIONS(1074), 1, + ts_builtin_sym_end, + [13176] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(974), 2, - anon_sym_COMMA, - anon_sym_RPAREN, - [11455] = 2, + ACTIONS(1076), 1, + anon_sym_SEMI, + [13183] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(976), 2, - anon_sym_RBRACE, - anon_sym_COMMA, - [11463] = 3, + ACTIONS(1078), 1, + anon_sym_LPAREN, + [13190] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(978), 1, - sym_identifier, - ACTIONS(980), 1, - anon_sym_constant, - [11473] = 2, + ACTIONS(1080), 1, + anon_sym_LPAREN, + [13197] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(982), 1, - anon_sym_RPAREN, - [11480] = 2, + ACTIONS(1082), 1, + anon_sym_LPAREN, + [13204] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(984), 1, - anon_sym_GT_EQ, - [11487] = 2, + ACTIONS(1084), 1, + anon_sym_SEMI, + [13211] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(986), 1, + ACTIONS(1086), 1, anon_sym_SEMI, - [11494] = 2, + [13218] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(988), 1, - anon_sym_LBRACE, - [11501] = 2, + ACTIONS(1088), 1, + ts_builtin_sym_end, + [13225] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(990), 1, - anon_sym_RPAREN, - [11508] = 2, + ACTIONS(1090), 1, + sym_identifier, + [13232] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(992), 1, + ACTIONS(1092), 1, anon_sym_SEMI, - [11515] = 2, + [13239] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(994), 1, + ACTIONS(1094), 1, sym_identifier, - [11522] = 2, + [13246] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(996), 1, - anon_sym_contract, - [11529] = 2, + ACTIONS(795), 1, + anon_sym_function, + [13253] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(998), 1, + ACTIONS(1096), 1, + anon_sym_SEMI, + [13260] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1098), 1, anon_sym_silverscript, - [11536] = 2, + [13267] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1000), 1, - anon_sym_LBRACE, - [11543] = 2, + ACTIONS(1100), 1, + anon_sym_SEMI, + [13274] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1002), 1, - anon_sym_RPAREN, - [11550] = 2, + ACTIONS(1102), 1, + anon_sym_RBRACK, + [13281] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(345), 1, - anon_sym_DOT, - [11557] = 2, + ACTIONS(1104), 1, + sym_version_literal, + [13288] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1004), 1, - anon_sym_LPAREN, - [11564] = 2, + ACTIONS(1106), 1, + anon_sym_RPAREN, + [13295] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1006), 1, - anon_sym_COMMA, - [11571] = 2, + ACTIONS(1108), 1, + ts_builtin_sym_end, + [13302] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1008), 1, - anon_sym_SEMI, - [11578] = 2, + ACTIONS(1110), 1, + anon_sym_RBRACK, + [13309] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1010), 1, + ACTIONS(1112), 1, anon_sym_LPAREN, - [11585] = 2, + [13316] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1012), 1, + ACTIONS(1114), 1, anon_sym_SEMI, - [11592] = 2, + [13323] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1014), 1, - sym_identifier, - [11599] = 2, + ACTIONS(1116), 1, + anon_sym_SEMI, + [13330] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1016), 1, + ACTIONS(1118), 1, anon_sym_SEMI, - [11606] = 2, + [13337] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1018), 1, - ts_builtin_sym_end, - [11613] = 2, + ACTIONS(1120), 1, + anon_sym_SEMI, + [13344] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1020), 1, - anon_sym_EQ, - [11620] = 2, + ACTIONS(1122), 1, + anon_sym_RPAREN, + [13351] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1022), 1, - anon_sym_SEMI, - [11627] = 2, + ACTIONS(1124), 1, + anon_sym_COLON, + [13358] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1024), 1, + ACTIONS(1126), 1, anon_sym_EQ, - [11634] = 2, + [13365] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1026), 1, - anon_sym_RPAREN, - [11641] = 2, + ACTIONS(1128), 1, + sym_identifier, + [13372] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1028), 1, + ACTIONS(1130), 1, anon_sym_LBRACE, - [11648] = 2, + [13379] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1030), 1, - anon_sym_COMMA, - [11655] = 2, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1032), 1, - ts_builtin_sym_end, - [11662] = 2, + ACTIONS(1132), 1, + sym_identifier, + [13386] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1034), 1, + ACTIONS(1134), 1, anon_sym_SEMI, - [11669] = 2, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1036), 1, - ts_builtin_sym_end, - [11676] = 2, + [13393] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1038), 1, + ACTIONS(1136), 1, anon_sym_EQ, - [11683] = 2, + [13400] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1040), 1, + ACTIONS(1138), 1, anon_sym_SEMI, - [11690] = 2, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1042), 1, - anon_sym_function, - [11697] = 2, + [13407] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1044), 1, + ACTIONS(1140), 1, anon_sym_SEMI, - [11704] = 2, + [13414] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1046), 1, - anon_sym_EQ, - [11711] = 2, + ACTIONS(337), 1, + anon_sym_DOT, + [13421] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1048), 1, - sym_identifier, - [11718] = 2, + ACTIONS(1142), 1, + anon_sym_RPAREN, + [13428] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1050), 1, + ACTIONS(1144), 1, anon_sym_RPAREN, - [11725] = 2, + [13435] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1052), 1, + ACTIONS(1070), 1, anon_sym_RPAREN, - [11732] = 2, + [13442] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1054), 1, - sym_identifier, - [11739] = 2, + ACTIONS(1146), 1, + anon_sym_RBRACK, + [13449] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(762), 1, - anon_sym_COLON, - [11746] = 2, + ACTIONS(1148), 1, + anon_sym_RBRACK, + [13456] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1056), 1, - sym_identifier, - [11753] = 2, + ACTIONS(1150), 1, + anon_sym_COMMA, + [13463] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(799), 1, - anon_sym_function, - [11760] = 2, + ACTIONS(1152), 1, + anon_sym_SEMI, + [13470] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1058), 1, - anon_sym_RBRACK, - [11767] = 2, + ACTIONS(1154), 1, + anon_sym_EQ, + [13477] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1060), 1, - anon_sym_COMMA, - [11774] = 2, + ACTIONS(1156), 1, + anon_sym_EQ, + [13484] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1062), 1, - anon_sym_SEMI, - [11781] = 2, + ACTIONS(1158), 1, + ts_builtin_sym_end, + [13491] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1064), 1, + ACTIONS(1160), 1, sym_identifier, - [11788] = 2, + [13498] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1066), 1, - anon_sym_LBRACE, - [11795] = 2, + ACTIONS(1162), 1, + anon_sym_EQ, + [13505] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1068), 1, - anon_sym_EQ, - [11802] = 2, + ACTIONS(1164), 1, + anon_sym_SEMI, + [13512] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1070), 1, - sym_identifier, - [11809] = 2, + ACTIONS(1166), 1, + anon_sym_RBRACK, + [13519] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1072), 1, - anon_sym_EQ, - [11816] = 2, + ACTIONS(1168), 1, + anon_sym_RPAREN, + [13526] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1074), 1, + ACTIONS(1170), 1, + anon_sym_RPAREN, + [13533] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1172), 1, anon_sym_SEMI, - [11823] = 2, + [13540] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1076), 1, - anon_sym_LBRACE, - [11830] = 2, + ACTIONS(1174), 1, + ts_builtin_sym_end, + [13547] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1078), 1, + ACTIONS(1176), 1, sym_identifier, - [11837] = 2, + [13554] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1080), 1, - anon_sym_SEMI, - [11844] = 2, + ACTIONS(1178), 1, + anon_sym_EQ, + [13561] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1082), 1, - anon_sym_RPAREN, - [11851] = 2, + ACTIONS(1180), 1, + anon_sym_LBRACE, + [13568] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1084), 1, - anon_sym_RPAREN, - [11858] = 2, + ACTIONS(1182), 1, + sym_string_literal, + [13575] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1086), 1, - sym_string_literal, - [11865] = 2, + ACTIONS(1184), 1, + anon_sym_SEMI, + [13582] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1088), 1, - anon_sym_EQ, - [11872] = 2, + ACTIONS(1186), 1, + sym_identifier, + [13589] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1090), 1, - anon_sym_COLON, - [11879] = 2, + ACTIONS(1188), 1, + sym_identifier, + [13596] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1092), 1, + ACTIONS(1190), 1, + anon_sym_RPAREN, + [13603] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1192), 1, anon_sym_SEMI, - [11886] = 2, + [13610] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1094), 1, - ts_builtin_sym_end, - [11893] = 2, + ACTIONS(1194), 1, + anon_sym_COMMA, + [13617] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1096), 1, + ACTIONS(1196), 1, anon_sym_SEMI, - [11900] = 2, + [13624] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1098), 1, - anon_sym_RBRACK, - [11907] = 2, + ACTIONS(1198), 1, + anon_sym_EQ, + [13631] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1100), 1, - anon_sym_LBRACE, - [11914] = 2, + ACTIONS(1200), 1, + anon_sym_SEMI, + [13638] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1102), 1, - anon_sym_SEMI, - [11921] = 2, + ACTIONS(1202), 1, + sym_identifier, + [13645] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1104), 1, - anon_sym_EQ, - [11928] = 2, + ACTIONS(1204), 1, + anon_sym_RBRACK, + [13652] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1106), 1, + ACTIONS(1206), 1, anon_sym_SEMI, - [11935] = 2, + [13659] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1108), 1, + ACTIONS(1208), 1, anon_sym_RBRACK, - [11942] = 2, + [13666] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1110), 1, - anon_sym_RPAREN, - [11949] = 2, + ACTIONS(1210), 1, + sym_identifier, + [13673] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1112), 1, + ACTIONS(1212), 1, sym_identifier, - [11956] = 2, + [13680] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1114), 1, - anon_sym_LPAREN, - [11963] = 2, + ACTIONS(1214), 1, + anon_sym_EQ, + [13687] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1116), 1, - anon_sym_LPAREN, - [11970] = 2, + ACTIONS(1216), 1, + ts_builtin_sym_end, + [13694] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1118), 1, + ACTIONS(1218), 1, anon_sym_SEMI, - [11977] = 2, + [13701] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1120), 1, - anon_sym_LBRACE, - [11984] = 2, + ACTIONS(1220), 1, + anon_sym_function, + [13708] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1122), 1, - anon_sym_LPAREN, - [11991] = 2, + ACTIONS(1222), 1, + anon_sym_SEMI, + [13715] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1124), 1, + ACTIONS(1224), 1, sym_identifier, - [11998] = 2, + [13722] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1126), 1, - anon_sym_LBRACE, - [12005] = 2, + ACTIONS(1226), 1, + anon_sym_EQ, + [13729] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1128), 1, - sym_identifier, - [12012] = 2, + ACTIONS(1228), 1, + anon_sym_SEMI, + [13736] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1130), 1, - anon_sym_LPAREN, - [12019] = 2, + ACTIONS(1230), 1, + anon_sym_SEMI, + [13743] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1132), 1, - anon_sym_SEMI, - [12026] = 2, + ACTIONS(776), 1, + anon_sym_COLON, + [13750] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1134), 1, - anon_sym_LPAREN, - [12033] = 2, + ACTIONS(1232), 1, + anon_sym_GT_EQ, + [13757] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1136), 1, - anon_sym_SEMI, - [12040] = 2, + ACTIONS(1234), 1, + anon_sym_RPAREN, + [13764] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1138), 1, + ACTIONS(1236), 1, sym_identifier, - [12047] = 2, + [13771] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1140), 1, + ACTIONS(1238), 1, anon_sym_SEMI, - [12054] = 2, + [13778] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1142), 1, - anon_sym_LPAREN, - [12061] = 2, + ACTIONS(1240), 1, + anon_sym_COMMA, + [13785] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1144), 1, + ACTIONS(1242), 1, anon_sym_SEMI, - [12068] = 2, + [13792] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1146), 1, - sym_identifier, - [12075] = 2, + ACTIONS(1244), 1, + sym_version_literal, + [13799] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1148), 1, - anon_sym_COMMA, - [12082] = 2, + ACTIONS(1246), 1, + anon_sym_GT_EQ, + [13806] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1150), 1, - anon_sym_SEMI, - [12089] = 2, + ACTIONS(1248), 1, + anon_sym_RBRACK, + [13813] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1152), 1, - anon_sym_EQ, - [12096] = 2, + ACTIONS(1250), 1, + anon_sym_SEMI, + [13820] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1154), 1, + ACTIONS(1252), 1, anon_sym_SEMI, - [12103] = 2, + [13827] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1156), 1, - anon_sym_SEMI, - [12110] = 2, + ACTIONS(1254), 1, + sym_identifier, + [13834] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1158), 1, - anon_sym_SEMI, - [12117] = 2, + ACTIONS(1256), 1, + sym_identifier, + [13841] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1160), 1, - ts_builtin_sym_end, - [12124] = 2, + ACTIONS(1258), 1, + anon_sym_RPAREN, + [13848] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1162), 1, + ACTIONS(1260), 1, + anon_sym_RPAREN, + [13855] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1262), 1, anon_sym_LPAREN, - [12131] = 2, + [13862] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1164), 1, - anon_sym_RPAREN, - [12138] = 2, + ACTIONS(1264), 1, + anon_sym_LPAREN, + [13869] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1166), 1, - anon_sym_LBRACE, - [12145] = 2, - ACTIONS(1168), 1, - sym_pragma_value, - ACTIONS(1170), 1, + ACTIONS(1266), 1, + anon_sym_COMMA, + [13876] = 2, + ACTIONS(3), 1, sym_comment, - [12152] = 2, + ACTIONS(1268), 1, + anon_sym_LPAREN, + [13883] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1172), 1, - anon_sym_GT_EQ, - [12159] = 2, + ACTIONS(1270), 1, + anon_sym_SEMI, + [13890] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1174), 1, + ACTIONS(1272), 1, + sym_identifier, + [13897] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1274), 1, anon_sym_RBRACK, - [12166] = 2, + [13904] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1176), 1, - sym_identifier, - [12173] = 2, + ACTIONS(1276), 1, + anon_sym_LPAREN, + [13911] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1178), 1, - anon_sym_RPAREN, + ACTIONS(1278), 1, + anon_sym_SEMI, }; static const uint32_t ts_small_parse_table_map[] = { [SMALL_STATE(2)] = 0, [SMALL_STATE(3)] = 138, - [SMALL_STATE(4)] = 272, - [SMALL_STATE(5)] = 406, - [SMALL_STATE(6)] = 540, - [SMALL_STATE(7)] = 674, - [SMALL_STATE(8)] = 808, - [SMALL_STATE(9)] = 942, - [SMALL_STATE(10)] = 1076, - [SMALL_STATE(11)] = 1207, - [SMALL_STATE(12)] = 1338, - [SMALL_STATE(13)] = 1469, - [SMALL_STATE(14)] = 1600, - [SMALL_STATE(15)] = 1731, - [SMALL_STATE(16)] = 1862, - [SMALL_STATE(17)] = 1993, - [SMALL_STATE(18)] = 2124, - [SMALL_STATE(19)] = 2255, - [SMALL_STATE(20)] = 2386, - [SMALL_STATE(21)] = 2517, - [SMALL_STATE(22)] = 2648, - [SMALL_STATE(23)] = 2779, - [SMALL_STATE(24)] = 2910, - [SMALL_STATE(25)] = 3041, - [SMALL_STATE(26)] = 3172, - [SMALL_STATE(27)] = 3303, - [SMALL_STATE(28)] = 3434, - [SMALL_STATE(29)] = 3565, - [SMALL_STATE(30)] = 3696, - [SMALL_STATE(31)] = 3821, - [SMALL_STATE(32)] = 3943, - [SMALL_STATE(33)] = 4062, - [SMALL_STATE(34)] = 4178, - [SMALL_STATE(35)] = 4291, - [SMALL_STATE(36)] = 4401, - [SMALL_STATE(37)] = 4508, - [SMALL_STATE(38)] = 4612, - [SMALL_STATE(39)] = 4713, - [SMALL_STATE(40)] = 4811, - [SMALL_STATE(41)] = 4860, - [SMALL_STATE(42)] = 4922, - [SMALL_STATE(43)] = 4984, - [SMALL_STATE(44)] = 5046, - [SMALL_STATE(45)] = 5116, - [SMALL_STATE(46)] = 5183, - [SMALL_STATE(47)] = 5250, - [SMALL_STATE(48)] = 5317, - [SMALL_STATE(49)] = 5384, - [SMALL_STATE(50)] = 5451, - [SMALL_STATE(51)] = 5518, - [SMALL_STATE(52)] = 5585, - [SMALL_STATE(53)] = 5652, - [SMALL_STATE(54)] = 5719, - [SMALL_STATE(55)] = 5786, - [SMALL_STATE(56)] = 5853, - [SMALL_STATE(57)] = 5920, - [SMALL_STATE(58)] = 5987, - [SMALL_STATE(59)] = 6054, - [SMALL_STATE(60)] = 6120, - [SMALL_STATE(61)] = 6186, - [SMALL_STATE(62)] = 6252, - [SMALL_STATE(63)] = 6298, - [SMALL_STATE(64)] = 6342, - [SMALL_STATE(65)] = 6380, - [SMALL_STATE(66)] = 6416, - [SMALL_STATE(67)] = 6452, - [SMALL_STATE(68)] = 6488, - [SMALL_STATE(69)] = 6524, - [SMALL_STATE(70)] = 6560, - [SMALL_STATE(71)] = 6596, - [SMALL_STATE(72)] = 6632, - [SMALL_STATE(73)] = 6668, - [SMALL_STATE(74)] = 6704, - [SMALL_STATE(75)] = 6740, - [SMALL_STATE(76)] = 6776, - [SMALL_STATE(77)] = 6812, - [SMALL_STATE(78)] = 6848, - [SMALL_STATE(79)] = 6884, - [SMALL_STATE(80)] = 6920, - [SMALL_STATE(81)] = 6956, - [SMALL_STATE(82)] = 6992, - [SMALL_STATE(83)] = 7028, - [SMALL_STATE(84)] = 7064, - [SMALL_STATE(85)] = 7100, - [SMALL_STATE(86)] = 7136, - [SMALL_STATE(87)] = 7172, - [SMALL_STATE(88)] = 7208, - [SMALL_STATE(89)] = 7244, - [SMALL_STATE(90)] = 7280, - [SMALL_STATE(91)] = 7316, - [SMALL_STATE(92)] = 7352, - [SMALL_STATE(93)] = 7388, - [SMALL_STATE(94)] = 7424, - [SMALL_STATE(95)] = 7460, - [SMALL_STATE(96)] = 7496, - [SMALL_STATE(97)] = 7532, - [SMALL_STATE(98)] = 7568, - [SMALL_STATE(99)] = 7604, - [SMALL_STATE(100)] = 7640, - [SMALL_STATE(101)] = 7676, - [SMALL_STATE(102)] = 7712, - [SMALL_STATE(103)] = 7748, - [SMALL_STATE(104)] = 7798, - [SMALL_STATE(105)] = 7848, - [SMALL_STATE(106)] = 7884, - [SMALL_STATE(107)] = 7934, - [SMALL_STATE(108)] = 7970, - [SMALL_STATE(109)] = 8006, - [SMALL_STATE(110)] = 8035, - [SMALL_STATE(111)] = 8064, - [SMALL_STATE(112)] = 8093, - [SMALL_STATE(113)] = 8124, - [SMALL_STATE(114)] = 8155, - [SMALL_STATE(115)] = 8186, - [SMALL_STATE(116)] = 8212, - [SMALL_STATE(117)] = 8237, - [SMALL_STATE(118)] = 8262, - [SMALL_STATE(119)] = 8293, - [SMALL_STATE(120)] = 8318, - [SMALL_STATE(121)] = 8343, - [SMALL_STATE(122)] = 8374, - [SMALL_STATE(123)] = 8399, - [SMALL_STATE(124)] = 8424, - [SMALL_STATE(125)] = 8449, - [SMALL_STATE(126)] = 8480, - [SMALL_STATE(127)] = 8505, - [SMALL_STATE(128)] = 8530, - [SMALL_STATE(129)] = 8555, - [SMALL_STATE(130)] = 8582, - [SMALL_STATE(131)] = 8607, - [SMALL_STATE(132)] = 8632, - [SMALL_STATE(133)] = 8657, - [SMALL_STATE(134)] = 8682, - [SMALL_STATE(135)] = 8707, - [SMALL_STATE(136)] = 8732, - [SMALL_STATE(137)] = 8757, - [SMALL_STATE(138)] = 8782, - [SMALL_STATE(139)] = 8807, - [SMALL_STATE(140)] = 8832, - [SMALL_STATE(141)] = 8857, - [SMALL_STATE(142)] = 8882, - [SMALL_STATE(143)] = 8907, - [SMALL_STATE(144)] = 8932, - [SMALL_STATE(145)] = 8957, - [SMALL_STATE(146)] = 8981, - [SMALL_STATE(147)] = 9002, - [SMALL_STATE(148)] = 9023, - [SMALL_STATE(149)] = 9044, - [SMALL_STATE(150)] = 9065, - [SMALL_STATE(151)] = 9090, - [SMALL_STATE(152)] = 9111, - [SMALL_STATE(153)] = 9146, - [SMALL_STATE(154)] = 9181, - [SMALL_STATE(155)] = 9202, - [SMALL_STATE(156)] = 9231, - [SMALL_STATE(157)] = 9252, - [SMALL_STATE(158)] = 9273, - [SMALL_STATE(159)] = 9302, - [SMALL_STATE(160)] = 9323, - [SMALL_STATE(161)] = 9358, - [SMALL_STATE(162)] = 9379, - [SMALL_STATE(163)] = 9400, - [SMALL_STATE(164)] = 9421, - [SMALL_STATE(165)] = 9450, - [SMALL_STATE(166)] = 9471, - [SMALL_STATE(167)] = 9496, - [SMALL_STATE(168)] = 9517, - [SMALL_STATE(169)] = 9542, - [SMALL_STATE(170)] = 9562, - [SMALL_STATE(171)] = 9590, - [SMALL_STATE(172)] = 9618, - [SMALL_STATE(173)] = 9650, - [SMALL_STATE(174)] = 9678, - [SMALL_STATE(175)] = 9706, - [SMALL_STATE(176)] = 9734, - [SMALL_STATE(177)] = 9759, - [SMALL_STATE(178)] = 9784, - [SMALL_STATE(179)] = 9809, - [SMALL_STATE(180)] = 9832, - [SMALL_STATE(181)] = 9855, - [SMALL_STATE(182)] = 9880, - [SMALL_STATE(183)] = 9903, - [SMALL_STATE(184)] = 9928, - [SMALL_STATE(185)] = 9953, - [SMALL_STATE(186)] = 9975, - [SMALL_STATE(187)] = 9997, - [SMALL_STATE(188)] = 10019, - [SMALL_STATE(189)] = 10041, - [SMALL_STATE(190)] = 10059, - [SMALL_STATE(191)] = 10081, - [SMALL_STATE(192)] = 10103, - [SMALL_STATE(193)] = 10122, - [SMALL_STATE(194)] = 10141, - [SMALL_STATE(195)] = 10160, - [SMALL_STATE(196)] = 10177, - [SMALL_STATE(197)] = 10194, - [SMALL_STATE(198)] = 10210, - [SMALL_STATE(199)] = 10230, - [SMALL_STATE(200)] = 10248, - [SMALL_STATE(201)] = 10266, - [SMALL_STATE(202)] = 10286, - [SMALL_STATE(203)] = 10306, - [SMALL_STATE(204)] = 10324, - [SMALL_STATE(205)] = 10341, - [SMALL_STATE(206)] = 10364, - [SMALL_STATE(207)] = 10381, - [SMALL_STATE(208)] = 10398, - [SMALL_STATE(209)] = 10411, - [SMALL_STATE(210)] = 10425, - [SMALL_STATE(211)] = 10437, - [SMALL_STATE(212)] = 10451, - [SMALL_STATE(213)] = 10471, - [SMALL_STATE(214)] = 10485, - [SMALL_STATE(215)] = 10499, - [SMALL_STATE(216)] = 10510, - [SMALL_STATE(217)] = 10524, - [SMALL_STATE(218)] = 10538, - [SMALL_STATE(219)] = 10552, - [SMALL_STATE(220)] = 10568, - [SMALL_STATE(221)] = 10582, - [SMALL_STATE(222)] = 10596, - [SMALL_STATE(223)] = 10610, - [SMALL_STATE(224)] = 10623, - [SMALL_STATE(225)] = 10636, - [SMALL_STATE(226)] = 10649, - [SMALL_STATE(227)] = 10662, - [SMALL_STATE(228)] = 10675, - [SMALL_STATE(229)] = 10688, - [SMALL_STATE(230)] = 10701, - [SMALL_STATE(231)] = 10714, - [SMALL_STATE(232)] = 10727, - [SMALL_STATE(233)] = 10740, - [SMALL_STATE(234)] = 10753, - [SMALL_STATE(235)] = 10766, - [SMALL_STATE(236)] = 10779, - [SMALL_STATE(237)] = 10788, - [SMALL_STATE(238)] = 10801, - [SMALL_STATE(239)] = 10814, - [SMALL_STATE(240)] = 10827, - [SMALL_STATE(241)] = 10840, - [SMALL_STATE(242)] = 10853, - [SMALL_STATE(243)] = 10866, - [SMALL_STATE(244)] = 10879, - [SMALL_STATE(245)] = 10892, - [SMALL_STATE(246)] = 10905, - [SMALL_STATE(247)] = 10918, - [SMALL_STATE(248)] = 10931, - [SMALL_STATE(249)] = 10944, - [SMALL_STATE(250)] = 10957, - [SMALL_STATE(251)] = 10970, - [SMALL_STATE(252)] = 10983, - [SMALL_STATE(253)] = 10994, - [SMALL_STATE(254)] = 11007, - [SMALL_STATE(255)] = 11020, - [SMALL_STATE(256)] = 11033, - [SMALL_STATE(257)] = 11043, - [SMALL_STATE(258)] = 11051, - [SMALL_STATE(259)] = 11059, - [SMALL_STATE(260)] = 11069, - [SMALL_STATE(261)] = 11079, - [SMALL_STATE(262)] = 11089, - [SMALL_STATE(263)] = 11099, - [SMALL_STATE(264)] = 11109, - [SMALL_STATE(265)] = 11119, - [SMALL_STATE(266)] = 11127, - [SMALL_STATE(267)] = 11137, - [SMALL_STATE(268)] = 11147, - [SMALL_STATE(269)] = 11155, - [SMALL_STATE(270)] = 11163, - [SMALL_STATE(271)] = 11171, - [SMALL_STATE(272)] = 11181, - [SMALL_STATE(273)] = 11191, - [SMALL_STATE(274)] = 11199, - [SMALL_STATE(275)] = 11209, - [SMALL_STATE(276)] = 11217, - [SMALL_STATE(277)] = 11227, - [SMALL_STATE(278)] = 11237, - [SMALL_STATE(279)] = 11247, - [SMALL_STATE(280)] = 11255, - [SMALL_STATE(281)] = 11265, - [SMALL_STATE(282)] = 11275, - [SMALL_STATE(283)] = 11285, - [SMALL_STATE(284)] = 11295, - [SMALL_STATE(285)] = 11303, - [SMALL_STATE(286)] = 11313, - [SMALL_STATE(287)] = 11323, - [SMALL_STATE(288)] = 11331, - [SMALL_STATE(289)] = 11341, - [SMALL_STATE(290)] = 11349, - [SMALL_STATE(291)] = 11359, - [SMALL_STATE(292)] = 11369, - [SMALL_STATE(293)] = 11379, - [SMALL_STATE(294)] = 11389, - [SMALL_STATE(295)] = 11399, - [SMALL_STATE(296)] = 11409, - [SMALL_STATE(297)] = 11419, - [SMALL_STATE(298)] = 11429, - [SMALL_STATE(299)] = 11439, - [SMALL_STATE(300)] = 11447, - [SMALL_STATE(301)] = 11455, - [SMALL_STATE(302)] = 11463, - [SMALL_STATE(303)] = 11473, - [SMALL_STATE(304)] = 11480, - [SMALL_STATE(305)] = 11487, - [SMALL_STATE(306)] = 11494, - [SMALL_STATE(307)] = 11501, - [SMALL_STATE(308)] = 11508, - [SMALL_STATE(309)] = 11515, - [SMALL_STATE(310)] = 11522, - [SMALL_STATE(311)] = 11529, - [SMALL_STATE(312)] = 11536, - [SMALL_STATE(313)] = 11543, - [SMALL_STATE(314)] = 11550, - [SMALL_STATE(315)] = 11557, - [SMALL_STATE(316)] = 11564, - [SMALL_STATE(317)] = 11571, - [SMALL_STATE(318)] = 11578, - [SMALL_STATE(319)] = 11585, - [SMALL_STATE(320)] = 11592, - [SMALL_STATE(321)] = 11599, - [SMALL_STATE(322)] = 11606, - [SMALL_STATE(323)] = 11613, - [SMALL_STATE(324)] = 11620, - [SMALL_STATE(325)] = 11627, - [SMALL_STATE(326)] = 11634, - [SMALL_STATE(327)] = 11641, - [SMALL_STATE(328)] = 11648, - [SMALL_STATE(329)] = 11655, - [SMALL_STATE(330)] = 11662, - [SMALL_STATE(331)] = 11669, - [SMALL_STATE(332)] = 11676, - [SMALL_STATE(333)] = 11683, - [SMALL_STATE(334)] = 11690, - [SMALL_STATE(335)] = 11697, - [SMALL_STATE(336)] = 11704, - [SMALL_STATE(337)] = 11711, - [SMALL_STATE(338)] = 11718, - [SMALL_STATE(339)] = 11725, - [SMALL_STATE(340)] = 11732, - [SMALL_STATE(341)] = 11739, - [SMALL_STATE(342)] = 11746, - [SMALL_STATE(343)] = 11753, - [SMALL_STATE(344)] = 11760, - [SMALL_STATE(345)] = 11767, - [SMALL_STATE(346)] = 11774, - [SMALL_STATE(347)] = 11781, - [SMALL_STATE(348)] = 11788, - [SMALL_STATE(349)] = 11795, - [SMALL_STATE(350)] = 11802, - [SMALL_STATE(351)] = 11809, - [SMALL_STATE(352)] = 11816, - [SMALL_STATE(353)] = 11823, - [SMALL_STATE(354)] = 11830, - [SMALL_STATE(355)] = 11837, - [SMALL_STATE(356)] = 11844, - [SMALL_STATE(357)] = 11851, - [SMALL_STATE(358)] = 11858, - [SMALL_STATE(359)] = 11865, - [SMALL_STATE(360)] = 11872, - [SMALL_STATE(361)] = 11879, - [SMALL_STATE(362)] = 11886, - [SMALL_STATE(363)] = 11893, - [SMALL_STATE(364)] = 11900, - [SMALL_STATE(365)] = 11907, - [SMALL_STATE(366)] = 11914, - [SMALL_STATE(367)] = 11921, - [SMALL_STATE(368)] = 11928, - [SMALL_STATE(369)] = 11935, - [SMALL_STATE(370)] = 11942, - [SMALL_STATE(371)] = 11949, - [SMALL_STATE(372)] = 11956, - [SMALL_STATE(373)] = 11963, - [SMALL_STATE(374)] = 11970, - [SMALL_STATE(375)] = 11977, - [SMALL_STATE(376)] = 11984, - [SMALL_STATE(377)] = 11991, - [SMALL_STATE(378)] = 11998, - [SMALL_STATE(379)] = 12005, - [SMALL_STATE(380)] = 12012, - [SMALL_STATE(381)] = 12019, - [SMALL_STATE(382)] = 12026, - [SMALL_STATE(383)] = 12033, - [SMALL_STATE(384)] = 12040, - [SMALL_STATE(385)] = 12047, - [SMALL_STATE(386)] = 12054, - [SMALL_STATE(387)] = 12061, - [SMALL_STATE(388)] = 12068, - [SMALL_STATE(389)] = 12075, - [SMALL_STATE(390)] = 12082, - [SMALL_STATE(391)] = 12089, - [SMALL_STATE(392)] = 12096, - [SMALL_STATE(393)] = 12103, - [SMALL_STATE(394)] = 12110, - [SMALL_STATE(395)] = 12117, - [SMALL_STATE(396)] = 12124, - [SMALL_STATE(397)] = 12131, - [SMALL_STATE(398)] = 12138, - [SMALL_STATE(399)] = 12145, - [SMALL_STATE(400)] = 12152, - [SMALL_STATE(401)] = 12159, - [SMALL_STATE(402)] = 12166, - [SMALL_STATE(403)] = 12173, + [SMALL_STATE(4)] = 275, + [SMALL_STATE(5)] = 412, + [SMALL_STATE(6)] = 549, + [SMALL_STATE(7)] = 683, + [SMALL_STATE(8)] = 817, + [SMALL_STATE(9)] = 949, + [SMALL_STATE(10)] = 1083, + [SMALL_STATE(11)] = 1217, + [SMALL_STATE(12)] = 1351, + [SMALL_STATE(13)] = 1485, + [SMALL_STATE(14)] = 1619, + [SMALL_STATE(15)] = 1753, + [SMALL_STATE(16)] = 1887, + [SMALL_STATE(17)] = 2021, + [SMALL_STATE(18)] = 2155, + [SMALL_STATE(19)] = 2286, + [SMALL_STATE(20)] = 2417, + [SMALL_STATE(21)] = 2548, + [SMALL_STATE(22)] = 2679, + [SMALL_STATE(23)] = 2810, + [SMALL_STATE(24)] = 2941, + [SMALL_STATE(25)] = 3072, + [SMALL_STATE(26)] = 3203, + [SMALL_STATE(27)] = 3334, + [SMALL_STATE(28)] = 3465, + [SMALL_STATE(29)] = 3596, + [SMALL_STATE(30)] = 3729, + [SMALL_STATE(31)] = 3860, + [SMALL_STATE(32)] = 3991, + [SMALL_STATE(33)] = 4122, + [SMALL_STATE(34)] = 4253, + [SMALL_STATE(35)] = 4384, + [SMALL_STATE(36)] = 4515, + [SMALL_STATE(37)] = 4646, + [SMALL_STATE(38)] = 4779, + [SMALL_STATE(39)] = 4912, + [SMALL_STATE(40)] = 5043, + [SMALL_STATE(41)] = 5174, + [SMALL_STATE(42)] = 5305, + [SMALL_STATE(43)] = 5436, + [SMALL_STATE(44)] = 5561, + [SMALL_STATE(45)] = 5683, + [SMALL_STATE(46)] = 5802, + [SMALL_STATE(47)] = 5918, + [SMALL_STATE(48)] = 6031, + [SMALL_STATE(49)] = 6141, + [SMALL_STATE(50)] = 6248, + [SMALL_STATE(51)] = 6352, + [SMALL_STATE(52)] = 6453, + [SMALL_STATE(53)] = 6551, + [SMALL_STATE(54)] = 6626, + [SMALL_STATE(55)] = 6675, + [SMALL_STATE(56)] = 6737, + [SMALL_STATE(57)] = 6799, + [SMALL_STATE(58)] = 6871, + [SMALL_STATE(59)] = 6943, + [SMALL_STATE(60)] = 7015, + [SMALL_STATE(61)] = 7077, + [SMALL_STATE(62)] = 7149, + [SMALL_STATE(63)] = 7217, + [SMALL_STATE(64)] = 7285, + [SMALL_STATE(65)] = 7353, + [SMALL_STATE(66)] = 7399, + [SMALL_STATE(67)] = 7437, + [SMALL_STATE(68)] = 7479, + [SMALL_STATE(69)] = 7515, + [SMALL_STATE(70)] = 7551, + [SMALL_STATE(71)] = 7587, + [SMALL_STATE(72)] = 7623, + [SMALL_STATE(73)] = 7659, + [SMALL_STATE(74)] = 7695, + [SMALL_STATE(75)] = 7731, + [SMALL_STATE(76)] = 7767, + [SMALL_STATE(77)] = 7803, + [SMALL_STATE(78)] = 7839, + [SMALL_STATE(79)] = 7875, + [SMALL_STATE(80)] = 7911, + [SMALL_STATE(81)] = 7947, + [SMALL_STATE(82)] = 7983, + [SMALL_STATE(83)] = 8019, + [SMALL_STATE(84)] = 8055, + [SMALL_STATE(85)] = 8091, + [SMALL_STATE(86)] = 8127, + [SMALL_STATE(87)] = 8163, + [SMALL_STATE(88)] = 8199, + [SMALL_STATE(89)] = 8235, + [SMALL_STATE(90)] = 8271, + [SMALL_STATE(91)] = 8307, + [SMALL_STATE(92)] = 8343, + [SMALL_STATE(93)] = 8379, + [SMALL_STATE(94)] = 8415, + [SMALL_STATE(95)] = 8451, + [SMALL_STATE(96)] = 8487, + [SMALL_STATE(97)] = 8523, + [SMALL_STATE(98)] = 8559, + [SMALL_STATE(99)] = 8595, + [SMALL_STATE(100)] = 8631, + [SMALL_STATE(101)] = 8667, + [SMALL_STATE(102)] = 8703, + [SMALL_STATE(103)] = 8739, + [SMALL_STATE(104)] = 8775, + [SMALL_STATE(105)] = 8811, + [SMALL_STATE(106)] = 8847, + [SMALL_STATE(107)] = 8881, + [SMALL_STATE(108)] = 8915, + [SMALL_STATE(109)] = 8949, + [SMALL_STATE(110)] = 9003, + [SMALL_STATE(111)] = 9057, + [SMALL_STATE(112)] = 9111, + [SMALL_STATE(113)] = 9147, + [SMALL_STATE(114)] = 9183, + [SMALL_STATE(115)] = 9219, + [SMALL_STATE(116)] = 9248, + [SMALL_STATE(117)] = 9277, + [SMALL_STATE(118)] = 9306, + [SMALL_STATE(119)] = 9337, + [SMALL_STATE(120)] = 9368, + [SMALL_STATE(121)] = 9399, + [SMALL_STATE(122)] = 9425, + [SMALL_STATE(123)] = 9450, + [SMALL_STATE(124)] = 9475, + [SMALL_STATE(125)] = 9500, + [SMALL_STATE(126)] = 9525, + [SMALL_STATE(127)] = 9556, + [SMALL_STATE(128)] = 9587, + [SMALL_STATE(129)] = 9612, + [SMALL_STATE(130)] = 9637, + [SMALL_STATE(131)] = 9662, + [SMALL_STATE(132)] = 9687, + [SMALL_STATE(133)] = 9712, + [SMALL_STATE(134)] = 9739, + [SMALL_STATE(135)] = 9764, + [SMALL_STATE(136)] = 9789, + [SMALL_STATE(137)] = 9814, + [SMALL_STATE(138)] = 9839, + [SMALL_STATE(139)] = 9864, + [SMALL_STATE(140)] = 9895, + [SMALL_STATE(141)] = 9920, + [SMALL_STATE(142)] = 9945, + [SMALL_STATE(143)] = 9970, + [SMALL_STATE(144)] = 9995, + [SMALL_STATE(145)] = 10020, + [SMALL_STATE(146)] = 10045, + [SMALL_STATE(147)] = 10070, + [SMALL_STATE(148)] = 10095, + [SMALL_STATE(149)] = 10120, + [SMALL_STATE(150)] = 10145, + [SMALL_STATE(151)] = 10170, + [SMALL_STATE(152)] = 10195, + [SMALL_STATE(153)] = 10220, + [SMALL_STATE(154)] = 10244, + [SMALL_STATE(155)] = 10276, + [SMALL_STATE(156)] = 10308, + [SMALL_STATE(157)] = 10340, + [SMALL_STATE(158)] = 10371, + [SMALL_STATE(159)] = 10392, + [SMALL_STATE(160)] = 10413, + [SMALL_STATE(161)] = 10434, + [SMALL_STATE(162)] = 10455, + [SMALL_STATE(163)] = 10486, + [SMALL_STATE(164)] = 10507, + [SMALL_STATE(165)] = 10538, + [SMALL_STATE(166)] = 10559, + [SMALL_STATE(167)] = 10584, + [SMALL_STATE(168)] = 10609, + [SMALL_STATE(169)] = 10630, + [SMALL_STATE(170)] = 10651, + [SMALL_STATE(171)] = 10672, + [SMALL_STATE(172)] = 10703, + [SMALL_STATE(173)] = 10734, + [SMALL_STATE(174)] = 10755, + [SMALL_STATE(175)] = 10776, + [SMALL_STATE(176)] = 10797, + [SMALL_STATE(177)] = 10818, + [SMALL_STATE(178)] = 10843, + [SMALL_STATE(179)] = 10863, + [SMALL_STATE(180)] = 10891, + [SMALL_STATE(181)] = 10919, + [SMALL_STATE(182)] = 10947, + [SMALL_STATE(183)] = 10975, + [SMALL_STATE(184)] = 11003, + [SMALL_STATE(185)] = 11031, + [SMALL_STATE(186)] = 11059, + [SMALL_STATE(187)] = 11082, + [SMALL_STATE(188)] = 11105, + [SMALL_STATE(189)] = 11132, + [SMALL_STATE(190)] = 11159, + [SMALL_STATE(191)] = 11184, + [SMALL_STATE(192)] = 11209, + [SMALL_STATE(193)] = 11234, + [SMALL_STATE(194)] = 11257, + [SMALL_STATE(195)] = 11279, + [SMALL_STATE(196)] = 11297, + [SMALL_STATE(197)] = 11319, + [SMALL_STATE(198)] = 11341, + [SMALL_STATE(199)] = 11363, + [SMALL_STATE(200)] = 11380, + [SMALL_STATE(201)] = 11397, + [SMALL_STATE(202)] = 11416, + [SMALL_STATE(203)] = 11437, + [SMALL_STATE(204)] = 11458, + [SMALL_STATE(205)] = 11475, + [SMALL_STATE(206)] = 11494, + [SMALL_STATE(207)] = 11511, + [SMALL_STATE(208)] = 11530, + [SMALL_STATE(209)] = 11546, + [SMALL_STATE(210)] = 11564, + [SMALL_STATE(211)] = 11580, + [SMALL_STATE(212)] = 11598, + [SMALL_STATE(213)] = 11616, + [SMALL_STATE(214)] = 11632, + [SMALL_STATE(215)] = 11648, + [SMALL_STATE(216)] = 11671, + [SMALL_STATE(217)] = 11688, + [SMALL_STATE(218)] = 11703, + [SMALL_STATE(219)] = 11716, + [SMALL_STATE(220)] = 11733, + [SMALL_STATE(221)] = 11750, + [SMALL_STATE(222)] = 11762, + [SMALL_STATE(223)] = 11776, + [SMALL_STATE(224)] = 11796, + [SMALL_STATE(225)] = 11813, + [SMALL_STATE(226)] = 11824, + [SMALL_STATE(227)] = 11841, + [SMALL_STATE(228)] = 11856, + [SMALL_STATE(229)] = 11871, + [SMALL_STATE(230)] = 11885, + [SMALL_STATE(231)] = 11899, + [SMALL_STATE(232)] = 11913, + [SMALL_STATE(233)] = 11927, + [SMALL_STATE(234)] = 11941, + [SMALL_STATE(235)] = 11957, + [SMALL_STATE(236)] = 11971, + [SMALL_STATE(237)] = 11985, + [SMALL_STATE(238)] = 12001, + [SMALL_STATE(239)] = 12015, + [SMALL_STATE(240)] = 12029, + [SMALL_STATE(241)] = 12043, + [SMALL_STATE(242)] = 12057, + [SMALL_STATE(243)] = 12073, + [SMALL_STATE(244)] = 12087, + [SMALL_STATE(245)] = 12100, + [SMALL_STATE(246)] = 12113, + [SMALL_STATE(247)] = 12126, + [SMALL_STATE(248)] = 12139, + [SMALL_STATE(249)] = 12148, + [SMALL_STATE(250)] = 12161, + [SMALL_STATE(251)] = 12174, + [SMALL_STATE(252)] = 12187, + [SMALL_STATE(253)] = 12200, + [SMALL_STATE(254)] = 12213, + [SMALL_STATE(255)] = 12226, + [SMALL_STATE(256)] = 12235, + [SMALL_STATE(257)] = 12248, + [SMALL_STATE(258)] = 12261, + [SMALL_STATE(259)] = 12274, + [SMALL_STATE(260)] = 12283, + [SMALL_STATE(261)] = 12296, + [SMALL_STATE(262)] = 12309, + [SMALL_STATE(263)] = 12322, + [SMALL_STATE(264)] = 12335, + [SMALL_STATE(265)] = 12348, + [SMALL_STATE(266)] = 12357, + [SMALL_STATE(267)] = 12370, + [SMALL_STATE(268)] = 12383, + [SMALL_STATE(269)] = 12396, + [SMALL_STATE(270)] = 12409, + [SMALL_STATE(271)] = 12420, + [SMALL_STATE(272)] = 12429, + [SMALL_STATE(273)] = 12438, + [SMALL_STATE(274)] = 12451, + [SMALL_STATE(275)] = 12464, + [SMALL_STATE(276)] = 12477, + [SMALL_STATE(277)] = 12490, + [SMALL_STATE(278)] = 12503, + [SMALL_STATE(279)] = 12516, + [SMALL_STATE(280)] = 12529, + [SMALL_STATE(281)] = 12542, + [SMALL_STATE(282)] = 12555, + [SMALL_STATE(283)] = 12568, + [SMALL_STATE(284)] = 12581, + [SMALL_STATE(285)] = 12594, + [SMALL_STATE(286)] = 12607, + [SMALL_STATE(287)] = 12620, + [SMALL_STATE(288)] = 12629, + [SMALL_STATE(289)] = 12638, + [SMALL_STATE(290)] = 12651, + [SMALL_STATE(291)] = 12664, + [SMALL_STATE(292)] = 12674, + [SMALL_STATE(293)] = 12684, + [SMALL_STATE(294)] = 12694, + [SMALL_STATE(295)] = 12702, + [SMALL_STATE(296)] = 12712, + [SMALL_STATE(297)] = 12720, + [SMALL_STATE(298)] = 12728, + [SMALL_STATE(299)] = 12736, + [SMALL_STATE(300)] = 12746, + [SMALL_STATE(301)] = 12756, + [SMALL_STATE(302)] = 12766, + [SMALL_STATE(303)] = 12776, + [SMALL_STATE(304)] = 12786, + [SMALL_STATE(305)] = 12796, + [SMALL_STATE(306)] = 12806, + [SMALL_STATE(307)] = 12814, + [SMALL_STATE(308)] = 12822, + [SMALL_STATE(309)] = 12830, + [SMALL_STATE(310)] = 12840, + [SMALL_STATE(311)] = 12850, + [SMALL_STATE(312)] = 12858, + [SMALL_STATE(313)] = 12866, + [SMALL_STATE(314)] = 12876, + [SMALL_STATE(315)] = 12886, + [SMALL_STATE(316)] = 12894, + [SMALL_STATE(317)] = 12904, + [SMALL_STATE(318)] = 12914, + [SMALL_STATE(319)] = 12924, + [SMALL_STATE(320)] = 12932, + [SMALL_STATE(321)] = 12940, + [SMALL_STATE(322)] = 12948, + [SMALL_STATE(323)] = 12958, + [SMALL_STATE(324)] = 12968, + [SMALL_STATE(325)] = 12978, + [SMALL_STATE(326)] = 12988, + [SMALL_STATE(327)] = 12998, + [SMALL_STATE(328)] = 13008, + [SMALL_STATE(329)] = 13018, + [SMALL_STATE(330)] = 13026, + [SMALL_STATE(331)] = 13034, + [SMALL_STATE(332)] = 13044, + [SMALL_STATE(333)] = 13052, + [SMALL_STATE(334)] = 13060, + [SMALL_STATE(335)] = 13068, + [SMALL_STATE(336)] = 13078, + [SMALL_STATE(337)] = 13088, + [SMALL_STATE(338)] = 13096, + [SMALL_STATE(339)] = 13106, + [SMALL_STATE(340)] = 13114, + [SMALL_STATE(341)] = 13124, + [SMALL_STATE(342)] = 13134, + [SMALL_STATE(343)] = 13142, + [SMALL_STATE(344)] = 13152, + [SMALL_STATE(345)] = 13162, + [SMALL_STATE(346)] = 13169, + [SMALL_STATE(347)] = 13176, + [SMALL_STATE(348)] = 13183, + [SMALL_STATE(349)] = 13190, + [SMALL_STATE(350)] = 13197, + [SMALL_STATE(351)] = 13204, + [SMALL_STATE(352)] = 13211, + [SMALL_STATE(353)] = 13218, + [SMALL_STATE(354)] = 13225, + [SMALL_STATE(355)] = 13232, + [SMALL_STATE(356)] = 13239, + [SMALL_STATE(357)] = 13246, + [SMALL_STATE(358)] = 13253, + [SMALL_STATE(359)] = 13260, + [SMALL_STATE(360)] = 13267, + [SMALL_STATE(361)] = 13274, + [SMALL_STATE(362)] = 13281, + [SMALL_STATE(363)] = 13288, + [SMALL_STATE(364)] = 13295, + [SMALL_STATE(365)] = 13302, + [SMALL_STATE(366)] = 13309, + [SMALL_STATE(367)] = 13316, + [SMALL_STATE(368)] = 13323, + [SMALL_STATE(369)] = 13330, + [SMALL_STATE(370)] = 13337, + [SMALL_STATE(371)] = 13344, + [SMALL_STATE(372)] = 13351, + [SMALL_STATE(373)] = 13358, + [SMALL_STATE(374)] = 13365, + [SMALL_STATE(375)] = 13372, + [SMALL_STATE(376)] = 13379, + [SMALL_STATE(377)] = 13386, + [SMALL_STATE(378)] = 13393, + [SMALL_STATE(379)] = 13400, + [SMALL_STATE(380)] = 13407, + [SMALL_STATE(381)] = 13414, + [SMALL_STATE(382)] = 13421, + [SMALL_STATE(383)] = 13428, + [SMALL_STATE(384)] = 13435, + [SMALL_STATE(385)] = 13442, + [SMALL_STATE(386)] = 13449, + [SMALL_STATE(387)] = 13456, + [SMALL_STATE(388)] = 13463, + [SMALL_STATE(389)] = 13470, + [SMALL_STATE(390)] = 13477, + [SMALL_STATE(391)] = 13484, + [SMALL_STATE(392)] = 13491, + [SMALL_STATE(393)] = 13498, + [SMALL_STATE(394)] = 13505, + [SMALL_STATE(395)] = 13512, + [SMALL_STATE(396)] = 13519, + [SMALL_STATE(397)] = 13526, + [SMALL_STATE(398)] = 13533, + [SMALL_STATE(399)] = 13540, + [SMALL_STATE(400)] = 13547, + [SMALL_STATE(401)] = 13554, + [SMALL_STATE(402)] = 13561, + [SMALL_STATE(403)] = 13568, + [SMALL_STATE(404)] = 13575, + [SMALL_STATE(405)] = 13582, + [SMALL_STATE(406)] = 13589, + [SMALL_STATE(407)] = 13596, + [SMALL_STATE(408)] = 13603, + [SMALL_STATE(409)] = 13610, + [SMALL_STATE(410)] = 13617, + [SMALL_STATE(411)] = 13624, + [SMALL_STATE(412)] = 13631, + [SMALL_STATE(413)] = 13638, + [SMALL_STATE(414)] = 13645, + [SMALL_STATE(415)] = 13652, + [SMALL_STATE(416)] = 13659, + [SMALL_STATE(417)] = 13666, + [SMALL_STATE(418)] = 13673, + [SMALL_STATE(419)] = 13680, + [SMALL_STATE(420)] = 13687, + [SMALL_STATE(421)] = 13694, + [SMALL_STATE(422)] = 13701, + [SMALL_STATE(423)] = 13708, + [SMALL_STATE(424)] = 13715, + [SMALL_STATE(425)] = 13722, + [SMALL_STATE(426)] = 13729, + [SMALL_STATE(427)] = 13736, + [SMALL_STATE(428)] = 13743, + [SMALL_STATE(429)] = 13750, + [SMALL_STATE(430)] = 13757, + [SMALL_STATE(431)] = 13764, + [SMALL_STATE(432)] = 13771, + [SMALL_STATE(433)] = 13778, + [SMALL_STATE(434)] = 13785, + [SMALL_STATE(435)] = 13792, + [SMALL_STATE(436)] = 13799, + [SMALL_STATE(437)] = 13806, + [SMALL_STATE(438)] = 13813, + [SMALL_STATE(439)] = 13820, + [SMALL_STATE(440)] = 13827, + [SMALL_STATE(441)] = 13834, + [SMALL_STATE(442)] = 13841, + [SMALL_STATE(443)] = 13848, + [SMALL_STATE(444)] = 13855, + [SMALL_STATE(445)] = 13862, + [SMALL_STATE(446)] = 13869, + [SMALL_STATE(447)] = 13876, + [SMALL_STATE(448)] = 13883, + [SMALL_STATE(449)] = 13890, + [SMALL_STATE(450)] = 13897, + [SMALL_STATE(451)] = 13904, + [SMALL_STATE(452)] = 13911, }; static const TSParseActionEntry ts_parse_actions[] = { [0] = {.entry = {.count = 0, .reusable = false}}, [1] = {.entry = {.count = 1, .reusable = false}}, RECOVER(), [3] = {.entry = {.count = 1, .reusable = true}}, SHIFT_EXTRA(), - [5] = {.entry = {.count = 1, .reusable = true}}, SHIFT(311), - [7] = {.entry = {.count = 1, .reusable = true}}, SHIFT(384), - [9] = {.entry = {.count = 1, .reusable = false}}, SHIFT(63), - [11] = {.entry = {.count = 1, .reusable = true}}, SHIFT(224), - [13] = {.entry = {.count = 1, .reusable = true}}, SHIFT(25), - [15] = {.entry = {.count = 1, .reusable = false}}, SHIFT(64), - [17] = {.entry = {.count = 1, .reusable = true}}, SHIFT(64), - [19] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4), - [21] = {.entry = {.count = 1, .reusable = true}}, SHIFT(340), - [23] = {.entry = {.count = 1, .reusable = false}}, SHIFT(260), - [25] = {.entry = {.count = 1, .reusable = false}}, SHIFT(262), - [27] = {.entry = {.count = 1, .reusable = true}}, SHIFT(209), - [29] = {.entry = {.count = 1, .reusable = true}}, SHIFT(69), - [31] = {.entry = {.count = 1, .reusable = false}}, SHIFT(40), - [33] = {.entry = {.count = 1, .reusable = true}}, SHIFT(80), - [35] = {.entry = {.count = 1, .reusable = true}}, SHIFT(315), - [37] = {.entry = {.count = 1, .reusable = true}}, SHIFT(400), - [39] = {.entry = {.count = 1, .reusable = true}}, SHIFT(83), - [41] = {.entry = {.count = 1, .reusable = false}}, SHIFT(83), - [43] = {.entry = {.count = 1, .reusable = true}}, SHIFT(98), - [45] = {.entry = {.count = 1, .reusable = true}}, SHIFT(70), - [47] = {.entry = {.count = 1, .reusable = true}}, SHIFT(74), - [49] = {.entry = {.count = 1, .reusable = true}}, SHIFT(90), - [51] = {.entry = {.count = 1, .reusable = true}}, SHIFT(91), - [53] = {.entry = {.count = 1, .reusable = true}}, SHIFT(93), - [55] = {.entry = {.count = 1, .reusable = true}}, SHIFT(96), - [57] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_number_literal, 1, 0, 0), - [59] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_number_literal, 1, 0, 0), - [61] = {.entry = {.count = 1, .reusable = true}}, SHIFT(66), - [63] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_postfix, 2, 0, 0), - [65] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_postfix, 2, 0, 0), - [67] = {.entry = {.count = 1, .reusable = true}}, SHIFT(12), - [69] = {.entry = {.count = 1, .reusable = false}}, SHIFT(377), - [71] = {.entry = {.count = 1, .reusable = true}}, SHIFT(99), - [73] = {.entry = {.count = 1, .reusable = true}}, SHIFT(380), - [75] = {.entry = {.count = 1, .reusable = true}}, SHIFT(382), - [77] = {.entry = {.count = 1, .reusable = true}}, SHIFT(297), - [79] = {.entry = {.count = 1, .reusable = true}}, SHIFT(386), - [81] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_postfix_repeat1, 2, 0, 0), - [83] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_postfix_repeat1, 2, 0, 0), - [85] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_postfix_repeat1, 2, 0, 0), SHIFT_REPEAT(12), - [88] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_postfix_repeat1, 2, 0, 0), SHIFT_REPEAT(377), - [91] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_postfix_repeat1, 2, 0, 0), SHIFT_REPEAT(99), - [94] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_postfix_repeat1, 2, 0, 0), SHIFT_REPEAT(380), - [97] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_postfix_repeat1, 2, 0, 0), SHIFT_REPEAT(382), - [100] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_postfix_repeat1, 2, 0, 0), SHIFT_REPEAT(297), - [103] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_postfix_repeat1, 2, 0, 0), SHIFT_REPEAT(386), - [106] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_postfix, 1, 0, 0), - [108] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_postfix, 1, 0, 0), - [110] = {.entry = {.count = 1, .reusable = false}}, SHIFT(205), - [112] = {.entry = {.count = 1, .reusable = true}}, SHIFT(286), - [114] = {.entry = {.count = 1, .reusable = true}}, SHIFT(134), - [116] = {.entry = {.count = 1, .reusable = true}}, SHIFT(177), - [118] = {.entry = {.count = 1, .reusable = true}}, SHIFT(295), - [120] = {.entry = {.count = 1, .reusable = true}}, SHIFT(372), - [122] = {.entry = {.count = 1, .reusable = true}}, SHIFT(373), - [124] = {.entry = {.count = 1, .reusable = true}}, SHIFT(376), - [126] = {.entry = {.count = 1, .reusable = true}}, SHIFT(296), - [128] = {.entry = {.count = 1, .reusable = false}}, SHIFT(212), - [130] = {.entry = {.count = 1, .reusable = true}}, SHIFT(140), - [132] = {.entry = {.count = 1, .reusable = true}}, SHIFT(167), - [134] = {.entry = {.count = 1, .reusable = true}}, SHIFT(157), - [136] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_function_definition_repeat2, 2, 0, 0), SHIFT_REPEAT(212), - [139] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_function_definition_repeat2, 2, 0, 0), SHIFT_REPEAT(286), - [142] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_function_definition_repeat2, 2, 0, 0), - [144] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_function_definition_repeat2, 2, 0, 0), SHIFT_REPEAT(177), - [147] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_function_definition_repeat2, 2, 0, 0), SHIFT_REPEAT(295), - [150] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_function_definition_repeat2, 2, 0, 0), SHIFT_REPEAT(372), - [153] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_function_definition_repeat2, 2, 0, 0), SHIFT_REPEAT(373), - [156] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_function_definition_repeat2, 2, 0, 0), SHIFT_REPEAT(376), - [159] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_function_definition_repeat2, 2, 0, 0), SHIFT_REPEAT(296), - [162] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_function_definition_repeat2, 2, 0, 0), SHIFT_REPEAT(209), - [165] = {.entry = {.count = 1, .reusable = true}}, SHIFT(148), - [167] = {.entry = {.count = 1, .reusable = true}}, SHIFT(162), - [169] = {.entry = {.count = 1, .reusable = true}}, SHIFT(149), - [171] = {.entry = {.count = 1, .reusable = true}}, SHIFT(146), - [173] = {.entry = {.count = 1, .reusable = true}}, SHIFT(156), - [175] = {.entry = {.count = 1, .reusable = true}}, SHIFT(163), - [177] = {.entry = {.count = 1, .reusable = true}}, SHIFT(151), - [179] = {.entry = {.count = 1, .reusable = true}}, SHIFT(44), + [5] = {.entry = {.count = 1, .reusable = true}}, SHIFT(359), + [7] = {.entry = {.count = 1, .reusable = true}}, SHIFT(400), + [9] = {.entry = {.count = 1, .reusable = true}}, SHIFT(431), + [11] = {.entry = {.count = 1, .reusable = false}}, SHIFT(67), + [13] = {.entry = {.count = 1, .reusable = true}}, SHIFT(281), + [15] = {.entry = {.count = 1, .reusable = true}}, SHIFT(36), + [17] = {.entry = {.count = 1, .reusable = false}}, SHIFT(66), + [19] = {.entry = {.count = 1, .reusable = true}}, SHIFT(66), + [21] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7), + [23] = {.entry = {.count = 1, .reusable = true}}, SHIFT(413), + [25] = {.entry = {.count = 1, .reusable = false}}, SHIFT(316), + [27] = {.entry = {.count = 1, .reusable = false}}, SHIFT(314), + [29] = {.entry = {.count = 1, .reusable = true}}, SHIFT(208), + [31] = {.entry = {.count = 1, .reusable = true}}, SHIFT(78), + [33] = {.entry = {.count = 1, .reusable = false}}, SHIFT(54), + [35] = {.entry = {.count = 1, .reusable = true}}, SHIFT(83), + [37] = {.entry = {.count = 1, .reusable = true}}, SHIFT(451), + [39] = {.entry = {.count = 1, .reusable = true}}, SHIFT(429), + [41] = {.entry = {.count = 1, .reusable = true}}, SHIFT(89), + [43] = {.entry = {.count = 1, .reusable = false}}, SHIFT(89), + [45] = {.entry = {.count = 1, .reusable = true}}, SHIFT(448), + [47] = {.entry = {.count = 1, .reusable = true}}, SHIFT(388), + [49] = {.entry = {.count = 1, .reusable = true}}, SHIFT(415), + [51] = {.entry = {.count = 1, .reusable = true}}, SHIFT(104), + [53] = {.entry = {.count = 1, .reusable = true}}, SHIFT(87), + [55] = {.entry = {.count = 1, .reusable = true}}, SHIFT(21), + [57] = {.entry = {.count = 1, .reusable = true}}, SHIFT(72), + [59] = {.entry = {.count = 1, .reusable = true}}, SHIFT(84), + [61] = {.entry = {.count = 1, .reusable = true}}, SHIFT(86), + [63] = {.entry = {.count = 1, .reusable = true}}, SHIFT(90), + [65] = {.entry = {.count = 1, .reusable = true}}, SHIFT(380), + [67] = {.entry = {.count = 1, .reusable = true}}, SHIFT(93), + [69] = {.entry = {.count = 1, .reusable = true}}, SHIFT(427), + [71] = {.entry = {.count = 1, .reusable = true}}, SHIFT(438), + [73] = {.entry = {.count = 1, .reusable = false}}, SHIFT(215), + [75] = {.entry = {.count = 1, .reusable = true}}, SHIFT(53), + [77] = {.entry = {.count = 1, .reusable = true}}, SHIFT(122), + [79] = {.entry = {.count = 1, .reusable = true}}, SHIFT(185), + [81] = {.entry = {.count = 1, .reusable = true}}, SHIFT(8), + [83] = {.entry = {.count = 1, .reusable = true}}, SHIFT(348), + [85] = {.entry = {.count = 1, .reusable = true}}, SHIFT(349), + [87] = {.entry = {.count = 1, .reusable = true}}, SHIFT(350), + [89] = {.entry = {.count = 1, .reusable = true}}, SHIFT(300), + [91] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_number_literal, 1, 0, 0), + [93] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_number_literal, 1, 0, 0), + [95] = {.entry = {.count = 1, .reusable = true}}, SHIFT(91), + [97] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_postfix_repeat1, 2, 0, 0), + [99] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_postfix_repeat1, 2, 0, 0), + [101] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_postfix_repeat1, 2, 0, 0), SHIFT_REPEAT(441), + [104] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_postfix_repeat1, 2, 0, 0), SHIFT_REPEAT(39), + [107] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_postfix_repeat1, 2, 0, 0), SHIFT_REPEAT(82), + [110] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_postfix_repeat1, 2, 0, 0), SHIFT_REPEAT(444), + [113] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_postfix_repeat1, 2, 0, 0), SHIFT_REPEAT(445), + [116] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_postfix_repeat1, 2, 0, 0), SHIFT_REPEAT(341), + [119] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_postfix_repeat1, 2, 0, 0), SHIFT_REPEAT(447), + [122] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_postfix, 1, 0, 0), + [124] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_postfix, 1, 0, 0), + [126] = {.entry = {.count = 1, .reusable = false}}, SHIFT(441), + [128] = {.entry = {.count = 1, .reusable = true}}, SHIFT(39), + [130] = {.entry = {.count = 1, .reusable = true}}, SHIFT(82), + [132] = {.entry = {.count = 1, .reusable = true}}, SHIFT(444), + [134] = {.entry = {.count = 1, .reusable = true}}, SHIFT(445), + [136] = {.entry = {.count = 1, .reusable = true}}, SHIFT(341), + [138] = {.entry = {.count = 1, .reusable = true}}, SHIFT(447), + [140] = {.entry = {.count = 1, .reusable = false}}, SHIFT(223), + [142] = {.entry = {.count = 1, .reusable = true}}, SHIFT(175), + [144] = {.entry = {.count = 1, .reusable = true}}, SHIFT(158), + [146] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_braced_block_repeat1, 2, 0, 0), SHIFT_REPEAT(223), + [149] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_braced_block_repeat1, 2, 0, 0), SHIFT_REPEAT(53), + [152] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_braced_block_repeat1, 2, 0, 0), + [154] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_braced_block_repeat1, 2, 0, 0), SHIFT_REPEAT(185), + [157] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_braced_block_repeat1, 2, 0, 0), SHIFT_REPEAT(8), + [160] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_braced_block_repeat1, 2, 0, 0), SHIFT_REPEAT(348), + [163] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_braced_block_repeat1, 2, 0, 0), SHIFT_REPEAT(349), + [166] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_braced_block_repeat1, 2, 0, 0), SHIFT_REPEAT(350), + [169] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_braced_block_repeat1, 2, 0, 0), SHIFT_REPEAT(300), + [172] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_braced_block_repeat1, 2, 0, 0), SHIFT_REPEAT(208), + [175] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_postfix, 2, 0, 0), + [177] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_postfix, 2, 0, 0), + [179] = {.entry = {.count = 1, .reusable = true}}, SHIFT(135), [181] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_unary_repeat1, 2, 0, 0), [183] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_unary_repeat1, 2, 0, 0), - [185] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_unary_repeat1, 2, 0, 0), SHIFT_REPEAT(64), - [188] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_unary_repeat1, 2, 0, 0), SHIFT_REPEAT(64), - [191] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_primary, 1, 0, 0), - [193] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_base_type, 1, 0, 0), SHIFT(3), - [196] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_primary, 1, 0, 0), - [198] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_primary, 1, 0, 0), REDUCE(sym_base_type, 1, 0, 0), - [201] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_unary_op, 1, 0, 0), - [203] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_unary_op, 1, 0, 0), - [205] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_slice_call, 6, 0, 0), - [207] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_slice_call, 6, 0, 0), - [209] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_number_unit, 1, 0, 0), - [211] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_number_unit, 1, 0, 0), - [213] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_number_literal, 2, 0, 0), - [215] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_number_literal, 2, 0, 0), - [217] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_append_call, 2, 0, 0), - [219] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_append_call, 2, 0, 0), - [221] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_boolean_literal, 1, 0, 0), - [223] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_boolean_literal, 1, 0, 0), - [225] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_array, 2, 0, 0), - [227] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_array, 2, 0, 0), - [229] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_state_object, 3, 0, 0), - [231] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_state_object, 3, 0, 0), - [233] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_call, 2, 0, 0), - [235] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_call, 2, 0, 0), - [237] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_state_object, 4, 0, 0), - [239] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_state_object, 4, 0, 0), - [241] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_array, 4, 0, 0), - [243] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_array, 4, 0, 0), - [245] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_output_field_name, 1, 0, 0), - [247] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_output_field_name, 1, 0, 0), - [249] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_output_field, 2, 0, 1), - [251] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_output_field, 2, 0, 1), - [253] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_input_field_name, 1, 0, 0), - [255] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_input_field_name, 1, 0, 0), - [257] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_input_field, 2, 0, 1), - [259] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_input_field, 2, 0, 1), - [261] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_date_literal, 4, 0, 0), - [263] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_date_literal, 4, 0, 0), - [265] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_literal, 1, 0, 0), - [267] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_literal, 1, 0, 0), - [269] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_list, 3, 0, 0), - [271] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_expression_list, 3, 0, 0), - [273] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_reverse_call, 3, 0, 0), - [275] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_reverse_call, 3, 0, 0), - [277] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_nullary_op, 1, 0, 0), - [279] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_nullary_op, 1, 0, 0), - [281] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_cast, 4, 0, 0), - [283] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_cast, 4, 0, 0), - [285] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parenthesized, 3, 0, 0), - [287] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_parenthesized, 3, 0, 0), - [289] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_state_object, 2, 0, 0), - [291] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_state_object, 2, 0, 0), - [293] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_array, 3, 0, 0), - [295] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_array, 3, 0, 0), - [297] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_instantiation, 3, 0, 0), - [299] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_instantiation, 3, 0, 0), - [301] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_state_object, 5, 0, 0), - [303] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_state_object, 5, 0, 0), - [305] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_array, 5, 0, 0), - [307] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_array, 5, 0, 0), - [309] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_list, 4, 0, 0), - [311] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_expression_list, 4, 0, 0), - [313] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_split_call, 4, 0, 0), - [315] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_split_call, 4, 0, 0), - [317] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_cast, 5, 0, 0), - [319] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_cast, 5, 0, 0), - [321] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_introspection, 3, 0, 5), - [323] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_introspection, 3, 0, 5), - [325] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_list, 5, 0, 0), - [327] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_expression_list, 5, 0, 0), - [329] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_cast, 6, 0, 0), - [331] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_cast, 6, 0, 0), - [333] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_list, 2, 0, 0), - [335] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_expression_list, 2, 0, 0), - [337] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_postfix_op, 1, 0, 0), - [339] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_postfix_op, 1, 0, 0), - [341] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_cast, 7, 0, 0), - [343] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_cast, 7, 0, 0), - [345] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tuple_index, 3, 0, 0), - [347] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_tuple_index, 3, 0, 0), - [349] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_member_access, 2, 0, 1), - [351] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_member_access, 2, 0, 1), - [353] = {.entry = {.count = 1, .reusable = false}}, SHIFT(209), - [355] = {.entry = {.count = 1, .reusable = true}}, SHIFT(362), - [357] = {.entry = {.count = 1, .reusable = true}}, SHIFT(342), - [359] = {.entry = {.count = 1, .reusable = true}}, SHIFT(343), - [361] = {.entry = {.count = 1, .reusable = true}}, SHIFT(354), - [363] = {.entry = {.count = 1, .reusable = true}}, SHIFT(219), - [365] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_contract_definition_repeat1, 2, 0, 0), SHIFT_REPEAT(209), - [368] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_contract_definition_repeat1, 2, 0, 0), - [370] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_contract_definition_repeat1, 2, 0, 0), SHIFT_REPEAT(342), - [373] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_contract_definition_repeat1, 2, 0, 0), SHIFT_REPEAT(343), - [376] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_contract_definition_repeat1, 2, 0, 0), SHIFT_REPEAT(354), - [379] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_contract_definition_repeat1, 2, 0, 0), SHIFT_REPEAT(209), - [382] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_contract_definition_repeat1, 2, 0, 0), SHIFT_REPEAT(219), - [385] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_factor, 2, 0, 0), - [387] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_factor, 2, 0, 0), - [389] = {.entry = {.count = 1, .reusable = true}}, SHIFT(38), - [391] = {.entry = {.count = 1, .reusable = false}}, SHIFT(38), - [393] = {.entry = {.count = 1, .reusable = true}}, SHIFT(322), - [395] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_factor, 1, 0, 0), - [397] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_factor, 1, 0, 0), - [399] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_factor_repeat1, 2, 0, 0), - [401] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_factor_repeat1, 2, 0, 0), - [403] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_factor_repeat1, 2, 0, 0), SHIFT_REPEAT(38), - [406] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_factor_repeat1, 2, 0, 0), SHIFT_REPEAT(38), - [409] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_unary, 1, 0, 0), - [411] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_unary, 1, 0, 0), - [413] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_unary, 2, 0, 0), - [415] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_unary, 2, 0, 0), - [417] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_term, 2, 0, 0), - [419] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_term, 2, 0, 0), - [421] = {.entry = {.count = 1, .reusable = true}}, SHIFT(37), - [423] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_term_repeat1, 2, 0, 0), - [425] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_term_repeat1, 2, 0, 0), - [427] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_term_repeat1, 2, 0, 0), SHIFT_REPEAT(37), - [430] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_term, 1, 0, 0), - [432] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_term, 1, 0, 0), - [434] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_state_function_call_assignment, 8, 0, 0), - [436] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_state_function_call_assignment, 8, 0, 0), - [438] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_time_op_statement, 9, 0, 0), - [440] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_time_op_statement, 9, 0, 0), - [442] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_comparison, 2, 0, 0), - [444] = {.entry = {.count = 1, .reusable = true}}, SHIFT(36), - [446] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_comparison, 2, 0, 0), - [448] = {.entry = {.count = 1, .reusable = false}}, SHIFT(36), - [450] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_call_statement, 2, 0, 0), - [452] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_call_statement, 2, 0, 0), - [454] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_variable_definition, 3, 0, 1), - [456] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_variable_definition, 3, 0, 1), - [458] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_comparison_repeat1, 2, 0, 0), - [460] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_repeat1, 2, 0, 0), SHIFT_REPEAT(36), - [463] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_comparison_repeat1, 2, 0, 0), - [465] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_comparison_repeat1, 2, 0, 0), SHIFT_REPEAT(36), - [468] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_return_statement, 3, 0, 0), - [470] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_return_statement, 3, 0, 0), - [472] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_console_statement, 3, 0, 0), - [474] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_console_statement, 3, 0, 0), - [476] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_statement, 11, 0, 0), - [478] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_statement, 11, 0, 0), - [480] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_comparison, 1, 0, 0), - [482] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_comparison, 1, 0, 0), - [484] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_assign_statement, 4, 0, 7), - [486] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_assign_statement, 4, 0, 7), - [488] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_require_statement, 5, 0, 0), - [490] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_require_statement, 5, 0, 0), - [492] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_variable_definition, 4, 0, 3), - [494] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_variable_definition, 4, 0, 3), - [496] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_statement, 5, 0, 0), - [498] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_statement, 5, 0, 0), - [500] = {.entry = {.count = 1, .reusable = true}}, SHIFT(59), - [502] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_block, 1, 0, 0), - [504] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_block, 1, 0, 0), - [506] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_variable_definition, 5, 0, 2), - [508] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_variable_definition, 5, 0, 2), - [510] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_state_function_call_assignment, 6, 0, 0), - [512] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_state_function_call_assignment, 6, 0, 0), - [514] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_call_assignment, 6, 0, 0), - [516] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_call_assignment, 6, 0, 0), - [518] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_block, 2, 0, 0), - [520] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_block, 2, 0, 0), - [522] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_variable_definition, 6, 0, 4), - [524] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_variable_definition, 6, 0, 4), - [526] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_state_function_call_assignment, 7, 0, 0), - [528] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_state_function_call_assignment, 7, 0, 0), - [530] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_call_assignment, 7, 0, 0), - [532] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_call_assignment, 7, 0, 0), - [534] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_require_statement, 7, 0, 0), - [536] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_require_statement, 7, 0, 0), - [538] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_time_op_statement, 7, 0, 0), - [540] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_time_op_statement, 7, 0, 0), - [542] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_block, 3, 0, 0), - [544] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_block, 3, 0, 0), - [546] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_statement, 7, 0, 0), - [548] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_statement, 7, 0, 0), - [550] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_statement, 1, 0, 0), - [552] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_statement, 1, 0, 0), - [554] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_call_assignment, 8, 0, 0), - [556] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_call_assignment, 8, 0, 0), - [558] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_tuple_assignment, 8, 0, 0), - [560] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tuple_assignment, 8, 0, 0), - [562] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 8, 0, 3), - [564] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 8, 0, 3), - [566] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_contract_field_definition, 5, 0, 2), - [568] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_contract_field_definition, 5, 0, 2), - [570] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 7, 0, 1), - [572] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 7, 0, 1), - [574] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 7, 0, 6), - [576] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 7, 0, 6), - [578] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_equality, 1, 0, 0), - [580] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_equality, 1, 0, 0), - [582] = {.entry = {.count = 1, .reusable = true}}, SHIFT(35), - [584] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 6, 0, 3), - [586] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 6, 0, 3), - [588] = {.entry = {.count = 1, .reusable = false}}, SHIFT(284), - [590] = {.entry = {.count = 1, .reusable = true}}, SHIFT(317), - [592] = {.entry = {.count = 1, .reusable = true}}, SHIFT(346), - [594] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_struct_definition, 5, 0, 1), - [596] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_struct_definition, 5, 0, 1), - [598] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_struct_definition_repeat1, 2, 0, 0), SHIFT_REPEAT(209), - [601] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_struct_definition_repeat1, 2, 0, 0), - [603] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_struct_definition_repeat1, 2, 0, 0), SHIFT_REPEAT(209), - [606] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 8, 0, 6), - [608] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 8, 0, 6), - [610] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 6, 0, 1), - [612] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 6, 0, 1), - [614] = {.entry = {.count = 1, .reusable = true}}, SHIFT(161), - [616] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_constant_definition, 6, 0, 4), - [618] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_constant_definition, 6, 0, 4), - [620] = {.entry = {.count = 1, .reusable = true}}, SHIFT(374), - [622] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_struct_definition, 4, 0, 1), - [624] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_struct_definition, 4, 0, 1), - [626] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 5, 0, 1), - [628] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 5, 0, 1), - [630] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 9, 0, 6), - [632] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 9, 0, 6), - [634] = {.entry = {.count = 1, .reusable = true}}, SHIFT(154), - [636] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_contract_item, 1, 0, 0), - [638] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_contract_item, 1, 0, 0), - [640] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_equality_repeat1, 2, 0, 0), - [642] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_equality_repeat1, 2, 0, 0), - [644] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_equality_repeat1, 2, 0, 0), SHIFT_REPEAT(35), - [647] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 7, 0, 3), - [649] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 7, 0, 3), + [185] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_unary_repeat1, 2, 0, 0), SHIFT_REPEAT(66), + [188] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_unary_repeat1, 2, 0, 0), SHIFT_REPEAT(66), + [191] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_unary_op, 1, 0, 0), + [193] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_unary_op, 1, 0, 0), + [195] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_primary, 1, 0, 0), + [197] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_primary, 1, 0, 0), + [199] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6), + [201] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_state_object, 2, 0, 0), + [203] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_state_object, 2, 0, 0), + [205] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_append_call, 2, 0, 0), + [207] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_append_call, 2, 0, 0), + [209] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_state_object, 4, 0, 0), + [211] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_state_object, 4, 0, 0), + [213] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_array, 4, 0, 0), + [215] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_array, 4, 0, 0), + [217] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_output_field_name, 1, 0, 0), + [219] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_output_field_name, 1, 0, 0), + [221] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_output_field, 2, 0, 1), + [223] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_output_field, 2, 0, 1), + [225] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_input_field_name, 1, 0, 0), + [227] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_input_field_name, 1, 0, 0), + [229] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_input_field, 2, 0, 1), + [231] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_input_field, 2, 0, 1), + [233] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_date_literal, 4, 0, 0), + [235] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_date_literal, 4, 0, 0), + [237] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_boolean_literal, 1, 0, 0), + [239] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_boolean_literal, 1, 0, 0), + [241] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_list, 3, 0, 0), + [243] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_expression_list, 3, 0, 0), + [245] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_reverse_call, 3, 0, 0), + [247] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_reverse_call, 3, 0, 0), + [249] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_cast, 4, 0, 0), + [251] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_cast, 4, 0, 0), + [253] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_postfix_op, 1, 0, 0), + [255] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_postfix_op, 1, 0, 0), + [257] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_literal, 1, 0, 0), + [259] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_literal, 1, 0, 0), + [261] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_array, 5, 0, 0), + [263] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_array, 5, 0, 0), + [265] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_field_access, 2, 0, 1), + [267] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_field_access, 2, 0, 1), + [269] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_list, 4, 0, 0), + [271] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_expression_list, 4, 0, 0), + [273] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_array, 2, 0, 0), + [275] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_array, 2, 0, 0), + [277] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_split_call, 4, 0, 0), + [279] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_split_call, 4, 0, 0), + [281] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_nullary_op, 1, 0, 0), + [283] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_nullary_op, 1, 0, 0), + [285] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_cast, 5, 0, 0), + [287] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_cast, 5, 0, 0), + [289] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_number_unit, 1, 0, 0), + [291] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_number_unit, 1, 0, 0), + [293] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_number_literal, 2, 0, 0), + [295] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_number_literal, 2, 0, 0), + [297] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_list, 5, 0, 0), + [299] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_expression_list, 5, 0, 0), + [301] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_cast, 6, 0, 0), + [303] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_cast, 6, 0, 0), + [305] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_call, 2, 0, 0), + [307] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_call, 2, 0, 0), + [309] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_state_object, 3, 0, 0), + [311] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_state_object, 3, 0, 0), + [313] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parenthesized, 3, 0, 0), + [315] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_parenthesized, 3, 0, 0), + [317] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_array, 3, 0, 0), + [319] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_array, 3, 0, 0), + [321] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_slice_call, 6, 0, 0), + [323] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_slice_call, 6, 0, 0), + [325] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_cast, 7, 0, 0), + [327] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_cast, 7, 0, 0), + [329] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_instantiation, 3, 0, 0), + [331] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_instantiation, 3, 0, 0), + [333] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_introspection, 3, 0, 6), + [335] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_introspection, 3, 0, 6), + [337] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tuple_index, 3, 0, 0), + [339] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_tuple_index, 3, 0, 0), + [341] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_list, 2, 0, 0), + [343] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_expression_list, 2, 0, 0), + [345] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_state_object, 5, 0, 0), + [347] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_state_object, 5, 0, 0), + [349] = {.entry = {.count = 1, .reusable = true}}, SHIFT(141), + [351] = {.entry = {.count = 1, .reusable = true}}, SHIFT(136), + [353] = {.entry = {.count = 1, .reusable = true}}, SHIFT(147), + [355] = {.entry = {.count = 1, .reusable = false}}, SHIFT(217), + [357] = {.entry = {.count = 1, .reusable = true}}, SHIFT(353), + [359] = {.entry = {.count = 1, .reusable = true}}, SHIFT(354), + [361] = {.entry = {.count = 1, .reusable = true}}, SHIFT(357), + [363] = {.entry = {.count = 1, .reusable = true}}, SHIFT(376), + [365] = {.entry = {.count = 1, .reusable = true}}, SHIFT(331), + [367] = {.entry = {.count = 1, .reusable = true}}, SHIFT(420), + [369] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_contract_definition_repeat1, 2, 0, 0), SHIFT_REPEAT(217), + [372] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_contract_definition_repeat1, 2, 0, 0), + [374] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_contract_definition_repeat1, 2, 0, 0), SHIFT_REPEAT(354), + [377] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_contract_definition_repeat1, 2, 0, 0), SHIFT_REPEAT(357), + [380] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_contract_definition_repeat1, 2, 0, 0), SHIFT_REPEAT(376), + [383] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_contract_definition_repeat1, 2, 0, 0), SHIFT_REPEAT(331), + [386] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_contract_definition_repeat1, 2, 0, 0), SHIFT_REPEAT(208), + [389] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_factor_repeat1, 2, 0, 0), + [391] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_factor_repeat1, 2, 0, 0), + [393] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_factor_repeat1, 2, 0, 0), SHIFT_REPEAT(51), + [396] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_factor_repeat1, 2, 0, 0), SHIFT_REPEAT(51), + [399] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_factor, 1, 0, 0), + [401] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_factor, 1, 0, 0), + [403] = {.entry = {.count = 1, .reusable = true}}, SHIFT(51), + [405] = {.entry = {.count = 1, .reusable = false}}, SHIFT(51), + [407] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_factor, 2, 0, 0), + [409] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_factor, 2, 0, 0), + [411] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_unary, 1, 0, 0), + [413] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_unary, 1, 0, 0), + [415] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_unary, 2, 0, 0), + [417] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_unary, 2, 0, 0), + [419] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_term, 2, 0, 0), + [421] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_term, 2, 0, 0), + [423] = {.entry = {.count = 1, .reusable = true}}, SHIFT(50), + [425] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_term, 1, 0, 0), + [427] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_term, 1, 0, 0), + [429] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_term_repeat1, 2, 0, 0), + [431] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_term_repeat1, 2, 0, 0), + [433] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_term_repeat1, 2, 0, 0), SHIFT_REPEAT(50), + [436] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_braced_block, 2, 0, 0), + [438] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_braced_block, 2, 0, 0), + [440] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_return_statement, 3, 0, 0), + [442] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_return_statement, 3, 0, 0), + [444] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_console_statement, 3, 0, 0), + [446] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_console_statement, 3, 0, 0), + [448] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_variable_definition, 3, 0, 1), + [450] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_variable_definition, 3, 0, 1), + [452] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_comparison, 1, 0, 0), + [454] = {.entry = {.count = 1, .reusable = true}}, SHIFT(49), + [456] = {.entry = {.count = 1, .reusable = false}}, SHIFT(49), + [458] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_comparison, 1, 0, 0), + [460] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_comparison, 2, 0, 0), + [462] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_comparison, 2, 0, 0), + [464] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_assign_statement, 4, 0, 4), + [466] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_assign_statement, 4, 0, 4), + [468] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_variable_definition, 4, 0, 2), + [470] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_variable_definition, 4, 0, 2), + [472] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_statement, 1, 0, 0), + [474] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_statement, 1, 0, 0), + [476] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_call_statement, 2, 0, 0), + [478] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_call_statement, 2, 0, 0), + [480] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_require_statement, 5, 0, 0), + [482] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_require_statement, 5, 0, 0), + [484] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_statement, 5, 0, 0), + [486] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_statement, 5, 0, 0), + [488] = {.entry = {.count = 1, .reusable = true}}, SHIFT(62), + [490] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_variable_definition, 5, 0, 3), + [492] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_variable_definition, 5, 0, 3), + [494] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_braced_block, 3, 0, 0), + [496] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_braced_block, 3, 0, 0), + [498] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_state_function_call_assignment, 6, 0, 0), + [500] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_state_function_call_assignment, 6, 0, 0), + [502] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_call_assignment, 6, 0, 0), + [504] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_call_assignment, 6, 0, 0), + [506] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_variable_definition, 6, 0, 5), + [508] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_variable_definition, 6, 0, 5), + [510] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_comparison_repeat1, 2, 0, 0), + [512] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_repeat1, 2, 0, 0), SHIFT_REPEAT(49), + [515] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_comparison_repeat1, 2, 0, 0), SHIFT_REPEAT(49), + [518] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_comparison_repeat1, 2, 0, 0), + [520] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_struct_destructure_assignment, 7, 0, 0), + [522] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_struct_destructure_assignment, 7, 0, 0), + [524] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_state_function_call_assignment, 7, 0, 0), + [526] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_state_function_call_assignment, 7, 0, 0), + [528] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_call_assignment, 7, 0, 0), + [530] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_call_assignment, 7, 0, 0), + [532] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_require_statement, 7, 0, 0), + [534] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_require_statement, 7, 0, 0), + [536] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_time_op_statement, 7, 0, 0), + [538] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_time_op_statement, 7, 0, 0), + [540] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_statement, 7, 0, 0), + [542] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_statement, 7, 0, 0), + [544] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_struct_destructure_assignment, 8, 0, 0), + [546] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_struct_destructure_assignment, 8, 0, 0), + [548] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_state_function_call_assignment, 8, 0, 0), + [550] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_state_function_call_assignment, 8, 0, 0), + [552] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_call_assignment, 8, 0, 0), + [554] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_call_assignment, 8, 0, 0), + [556] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_tuple_assignment, 8, 0, 0), + [558] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tuple_assignment, 8, 0, 0), + [560] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_time_op_statement, 9, 0, 0), + [562] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_time_op_statement, 9, 0, 0), + [564] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_statement, 11, 0, 0), + [566] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_statement, 11, 0, 0), + [568] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_struct_destructure_assignment, 6, 0, 0), + [570] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_struct_destructure_assignment, 6, 0, 0), + [572] = {.entry = {.count = 1, .reusable = true}}, SHIFT(165), + [574] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_struct_definition_repeat1, 2, 0, 0), SHIFT_REPEAT(217), + [577] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_struct_definition_repeat1, 2, 0, 0), + [579] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_struct_definition_repeat1, 2, 0, 0), SHIFT_REPEAT(208), + [582] = {.entry = {.count = 1, .reusable = true}}, SHIFT(168), + [584] = {.entry = {.count = 1, .reusable = true}}, SHIFT(345), + [586] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 4, 0, 1), + [588] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 4, 0, 1), + [590] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_constant_definition, 6, 0, 5), + [592] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_constant_definition, 6, 0, 5), + [594] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 5, 0, 1), + [596] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 5, 0, 1), + [598] = {.entry = {.count = 1, .reusable = true}}, SHIFT(271), + [600] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_contract_item, 1, 0, 0), + [602] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_contract_item, 1, 0, 0), + [604] = {.entry = {.count = 1, .reusable = true}}, SHIFT(272), + [606] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_struct_definition, 4, 0, 1), + [608] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_struct_definition, 4, 0, 1), + [610] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_equality, 1, 0, 0), + [612] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_equality, 1, 0, 0), + [614] = {.entry = {.count = 1, .reusable = true}}, SHIFT(48), + [616] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_equality_repeat1, 2, 0, 0), + [618] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_equality_repeat1, 2, 0, 0), + [620] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_equality_repeat1, 2, 0, 0), SHIFT_REPEAT(48), + [623] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_struct_definition, 5, 0, 1), + [625] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_struct_definition, 5, 0, 1), + [627] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 5, 0, 2), + [629] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 5, 0, 2), + [631] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 7, 0, 7), + [633] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 7, 0, 7), + [635] = {.entry = {.count = 1, .reusable = true}}, SHIFT(287), + [637] = {.entry = {.count = 1, .reusable = true}}, SHIFT(378), + [639] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_contract_field_definition, 5, 0, 3), + [641] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_contract_field_definition, 5, 0, 3), + [643] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 6, 0, 2), + [645] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 6, 0, 2), + [647] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 6, 0, 7), + [649] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 6, 0, 7), [651] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_equality, 2, 0, 0), [653] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_equality, 2, 0, 0), - [655] = {.entry = {.count = 1, .reusable = true}}, SHIFT(275), - [657] = {.entry = {.count = 1, .reusable = true}}, SHIFT(265), - [659] = {.entry = {.count = 1, .reusable = true}}, SHIFT(336), - [661] = {.entry = {.count = 1, .reusable = true}}, SHIFT(367), - [663] = {.entry = {.count = 1, .reusable = true}}, SHIFT(269), - [665] = {.entry = {.count = 1, .reusable = true}}, SHIFT(378), - [667] = {.entry = {.count = 1, .reusable = true}}, SHIFT(353), - [669] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_bit_and, 2, 0, 0), - [671] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_bit_and, 2, 0, 0), - [673] = {.entry = {.count = 1, .reusable = false}}, SHIFT(34), - [675] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_bit_and_repeat1, 2, 0, 0), - [677] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_bit_and_repeat1, 2, 0, 0), - [679] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_bit_and_repeat1, 2, 0, 0), SHIFT_REPEAT(34), - [682] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_bit_and, 1, 0, 0), - [684] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_bit_and, 1, 0, 0), - [686] = {.entry = {.count = 1, .reusable = true}}, SHIFT(312), - [688] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_bit_xor, 1, 0, 0), - [690] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_bit_xor, 1, 0, 0), - [692] = {.entry = {.count = 1, .reusable = true}}, SHIFT(33), - [694] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_bit_xor_repeat1, 2, 0, 0), - [696] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_bit_xor_repeat1, 2, 0, 0), - [698] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_bit_xor_repeat1, 2, 0, 0), SHIFT_REPEAT(33), - [701] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_bit_xor, 2, 0, 0), - [703] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_bit_xor, 2, 0, 0), - [705] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_bit_or, 2, 0, 0), - [707] = {.entry = {.count = 1, .reusable = false}}, SHIFT(32), - [709] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_bit_or_repeat1, 2, 0, 0), - [711] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_bit_or_repeat1, 2, 0, 0), SHIFT_REPEAT(32), - [714] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_bit_or, 1, 0, 0), + [655] = {.entry = {.count = 1, .reusable = true}}, SHIFT(329), + [657] = {.entry = {.count = 1, .reusable = true}}, SHIFT(334), + [659] = {.entry = {.count = 1, .reusable = true}}, SHIFT(181), + [661] = {.entry = {.count = 1, .reusable = true}}, SHIFT(339), + [663] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_bit_and_repeat1, 2, 0, 0), + [665] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_bit_and_repeat1, 2, 0, 0), + [667] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_bit_and_repeat1, 2, 0, 0), SHIFT_REPEAT(47), + [670] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_bit_and, 2, 0, 0), + [672] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_bit_and, 2, 0, 0), + [674] = {.entry = {.count = 1, .reusable = false}}, SHIFT(47), + [676] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_pragma_value, 1, 0, 0), + [678] = {.entry = {.count = 1, .reusable = true}}, SHIFT(362), + [680] = {.entry = {.count = 1, .reusable = false}}, SHIFT(362), + [682] = {.entry = {.count = 1, .reusable = true}}, SHIFT(199), + [684] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_bit_and, 1, 0, 0), + [686] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_bit_and, 1, 0, 0), + [688] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_bit_xor_repeat1, 2, 0, 0), + [690] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_bit_xor_repeat1, 2, 0, 0), SHIFT_REPEAT(46), + [693] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_bit_xor_repeat1, 2, 0, 0), + [695] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_bit_xor, 1, 0, 0), + [697] = {.entry = {.count = 1, .reusable = true}}, SHIFT(46), + [699] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_bit_xor, 1, 0, 0), + [701] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_cast_type_name_repeat1, 2, 0, 0), + [703] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_cast_type_name_repeat1, 2, 0, 0), + [705] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_cast_type_name_repeat1, 2, 0, 0), SHIFT_REPEAT(227), + [708] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_bit_xor, 2, 0, 0), + [710] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_bit_xor, 2, 0, 0), + [712] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_version_constraint, 1, 0, 0), + [714] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_version_constraint, 1, 0, 0), [716] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_struct_field_definition, 3, 0, 1), [718] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_struct_field_definition, 3, 0, 1), - [720] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_bit_or_repeat1, 2, 0, 0), - [722] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_type_name, 2, 0, 0), - [724] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_name, 2, 0, 0), - [726] = {.entry = {.count = 1, .reusable = true}}, SHIFT(218), - [728] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_logical_and_repeat1, 2, 0, 0), - [730] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_logical_and_repeat1, 2, 0, 0), SHIFT_REPEAT(31), - [733] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_logical_and, 1, 0, 0), - [735] = {.entry = {.count = 1, .reusable = true}}, SHIFT(31), - [737] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_type_name, 1, 0, 0), - [739] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_name, 1, 0, 0), - [741] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_type_name_repeat1, 2, 0, 0), - [743] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_type_name_repeat1, 2, 0, 0), - [745] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_type_name_repeat1, 2, 0, 0), SHIFT_REPEAT(218), - [748] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_logical_and, 2, 0, 0), - [750] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_logical_or, 1, 0, 0), - [752] = {.entry = {.count = 1, .reusable = true}}, SHIFT(30), - [754] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_base_type, 1, 0, 0), - [756] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_base_type, 1, 0, 0), - [758] = {.entry = {.count = 1, .reusable = true}}, SHIFT(15), - [760] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3), - [762] = {.entry = {.count = 1, .reusable = true}}, SHIFT(190), - [764] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_logical_or, 2, 0, 0), - [766] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_logical_or_repeat1, 2, 0, 0), - [768] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_logical_or_repeat1, 2, 0, 0), SHIFT_REPEAT(30), - [771] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_array_suffix, 3, 0, 0), - [773] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_array_suffix, 3, 0, 0), - [775] = {.entry = {.count = 1, .reusable = true}}, SHIFT(77), - [777] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_array_suffix, 2, 0, 0), - [779] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_array_suffix, 2, 0, 0), - [781] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression, 1, 0, 0), - [783] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_variable_definition_repeat1, 2, 0, 0), - [785] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_variable_definition_repeat1, 2, 0, 0), SHIFT_REPEAT(302), - [788] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_expression_list_repeat1, 2, 0, 0), SHIFT_REPEAT(24), - [791] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_expression_list_repeat1, 2, 0, 0), - [793] = {.entry = {.count = 1, .reusable = true}}, SHIFT(364), - [795] = {.entry = {.count = 1, .reusable = true}}, SHIFT(214), - [797] = {.entry = {.count = 1, .reusable = true}}, SHIFT(334), - [799] = {.entry = {.count = 1, .reusable = true}}, SHIFT(379), - [801] = {.entry = {.count = 1, .reusable = true}}, SHIFT(221), - [803] = {.entry = {.count = 1, .reusable = false}}, SHIFT(263), - [805] = {.entry = {.count = 1, .reusable = true}}, SHIFT(302), - [807] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_function_definition_repeat1, 2, 0, 0), - [809] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_function_definition_repeat1, 2, 0, 0), SHIFT_REPEAT(221), - [812] = {.entry = {.count = 1, .reusable = false}}, SHIFT(239), - [814] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_parameter_list_repeat1, 2, 0, 0), SHIFT_REPEAT(184), - [817] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_parameter_list_repeat1, 2, 0, 0), - [819] = {.entry = {.count = 1, .reusable = true}}, SHIFT(360), - [821] = {.entry = {.count = 1, .reusable = true}}, SHIFT(86), - [823] = {.entry = {.count = 1, .reusable = true}}, SHIFT(53), - [825] = {.entry = {.count = 1, .reusable = true}}, SHIFT(396), - [827] = {.entry = {.count = 1, .reusable = true}}, SHIFT(341), - [829] = {.entry = {.count = 1, .reusable = true}}, SHIFT(349), - [831] = {.entry = {.count = 1, .reusable = true}}, SHIFT(240), - [833] = {.entry = {.count = 1, .reusable = true}}, SHIFT(71), - [835] = {.entry = {.count = 1, .reusable = true}}, SHIFT(248), - [837] = {.entry = {.count = 1, .reusable = true}}, SHIFT(173), - [839] = {.entry = {.count = 1, .reusable = true}}, SHIFT(153), - [841] = {.entry = {.count = 1, .reusable = true}}, SHIFT(305), - [843] = {.entry = {.count = 1, .reusable = true}}, SHIFT(325), - [845] = {.entry = {.count = 1, .reusable = true}}, SHIFT(226), - [847] = {.entry = {.count = 1, .reusable = true}}, SHIFT(174), - [849] = {.entry = {.count = 1, .reusable = true}}, SHIFT(359), - [851] = {.entry = {.count = 1, .reusable = true}}, SHIFT(178), - [853] = {.entry = {.count = 1, .reusable = true}}, SHIFT(89), - [855] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_state_object_repeat1, 2, 0, 0), - [857] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_state_object_repeat1, 2, 0, 0), SHIFT_REPEAT(272), - [860] = {.entry = {.count = 1, .reusable = true}}, SHIFT(9), - [862] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5), - [864] = {.entry = {.count = 1, .reusable = true}}, SHIFT(87), - [866] = {.entry = {.count = 1, .reusable = true}}, SHIFT(120), - [868] = {.entry = {.count = 1, .reusable = true}}, SHIFT(19), - [870] = {.entry = {.count = 1, .reusable = true}}, SHIFT(185), - [872] = {.entry = {.count = 1, .reusable = true}}, SHIFT(332), - [874] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_state_function_call_assignment_repeat1, 2, 0, 0), - [876] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_state_function_call_assignment_repeat1, 2, 0, 0), SHIFT_REPEAT(282), - [879] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_function_call_assignment_repeat1, 2, 0, 0), SHIFT_REPEAT(181), - [882] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_function_call_assignment_repeat1, 2, 0, 0), - [884] = {.entry = {.count = 1, .reusable = true}}, SHIFT(170), - [886] = {.entry = {.count = 1, .reusable = true}}, SHIFT(273), - [888] = {.entry = {.count = 1, .reusable = true}}, SHIFT(183), - [890] = {.entry = {.count = 1, .reusable = true}}, SHIFT(365), - [892] = {.entry = {.count = 1, .reusable = true}}, SHIFT(160), - [894] = {.entry = {.count = 1, .reusable = true}}, SHIFT(52), - [896] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_return_type_list_repeat1, 2, 0, 0), SHIFT_REPEAT(186), - [899] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_return_type_list_repeat1, 2, 0, 0), - [901] = {.entry = {.count = 1, .reusable = true}}, SHIFT(73), - [903] = {.entry = {.count = 1, .reusable = true}}, SHIFT(234), - [905] = {.entry = {.count = 1, .reusable = true}}, SHIFT(175), - [907] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6), - [909] = {.entry = {.count = 1, .reusable = true}}, SHIFT(75), - [911] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_console_parameter_list_repeat1, 2, 0, 0), SHIFT_REPEAT(172), - [914] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_console_parameter_list_repeat1, 2, 0, 0), - [916] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7), - [918] = {.entry = {.count = 1, .reusable = true}}, SHIFT(81), - [920] = {.entry = {.count = 1, .reusable = true}}, SHIFT(58), - [922] = {.entry = {.count = 1, .reusable = true}}, SHIFT(338), - [924] = {.entry = {.count = 1, .reusable = true}}, SHIFT(280), - [926] = {.entry = {.count = 1, .reusable = true}}, SHIFT(20), - [928] = {.entry = {.count = 1, .reusable = true}}, SHIFT(128), - [930] = {.entry = {.count = 1, .reusable = true}}, SHIFT(23), - [932] = {.entry = {.count = 1, .reusable = true}}, SHIFT(252), - [934] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parameter_list, 2, 0, 0), - [936] = {.entry = {.count = 1, .reusable = true}}, SHIFT(213), - [938] = {.entry = {.count = 1, .reusable = true}}, SHIFT(171), - [940] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parameter_list, 5, 0, 0), - [942] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_typed_binding, 2, 0, 0), - [944] = {.entry = {.count = 1, .reusable = true}}, SHIFT(261), - [946] = {.entry = {.count = 1, .reusable = true}}, SHIFT(392), - [948] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parameter_list, 3, 0, 0), - [950] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parameter_list, 4, 0, 0), - [952] = {.entry = {.count = 1, .reusable = true}}, SHIFT(8), - [954] = {.entry = {.count = 1, .reusable = true}}, SHIFT(84), - [956] = {.entry = {.count = 1, .reusable = true}}, SHIFT(357), - [958] = {.entry = {.count = 1, .reusable = true}}, SHIFT(97), - [960] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_state_typed_binding, 4, 0, 0), - [962] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_console_parameter, 1, 0, 0), - [964] = {.entry = {.count = 1, .reusable = true}}, SHIFT(256), - [966] = {.entry = {.count = 1, .reusable = true}}, SHIFT(368), - [968] = {.entry = {.count = 1, .reusable = false}}, SHIFT(391), - [970] = {.entry = {.count = 1, .reusable = true}}, SHIFT(388), - [972] = {.entry = {.count = 1, .reusable = true}}, SHIFT(152), - [974] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parameter, 2, 0, 0), - [976] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_state_entry, 3, 0, 0), - [978] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_modifier, 1, 0, 0), - [980] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_modifier, 1, 0, 0), - [982] = {.entry = {.count = 1, .reusable = true}}, SHIFT(393), - [984] = {.entry = {.count = 1, .reusable = true}}, SHIFT(21), - [986] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_console_parameter_list, 3, 0, 0), - [988] = {.entry = {.count = 1, .reusable = true}}, SHIFT(106), - [990] = {.entry = {.count = 1, .reusable = true}}, SHIFT(60), - [992] = {.entry = {.count = 1, .reusable = true}}, SHIFT(131), - [994] = {.entry = {.count = 1, .reusable = true}}, SHIFT(351), - [996] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_pragma_directive, 4, 0, 0), - [998] = {.entry = {.count = 1, .reusable = true}}, SHIFT(399), - [1000] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_return_type_list, 5, 0, 0), - [1002] = {.entry = {.count = 1, .reusable = true}}, SHIFT(85), - [1004] = {.entry = {.count = 1, .reusable = true}}, SHIFT(358), - [1006] = {.entry = {.count = 1, .reusable = true}}, SHIFT(22), - [1008] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_console_parameter_list, 2, 0, 0), - [1010] = {.entry = {.count = 1, .reusable = true}}, SHIFT(10), - [1012] = {.entry = {.count = 1, .reusable = true}}, SHIFT(147), - [1014] = {.entry = {.count = 1, .reusable = true}}, SHIFT(316), - [1016] = {.entry = {.count = 1, .reusable = true}}, SHIFT(196), - [1018] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_contract_definition, 5, 0, 1), - [1020] = {.entry = {.count = 1, .reusable = true}}, SHIFT(13), - [1022] = {.entry = {.count = 1, .reusable = true}}, SHIFT(123), - [1024] = {.entry = {.count = 1, .reusable = true}}, SHIFT(290), - [1026] = {.entry = {.count = 1, .reusable = true}}, SHIFT(92), - [1028] = {.entry = {.count = 1, .reusable = true}}, SHIFT(47), - [1030] = {.entry = {.count = 1, .reusable = true}}, SHIFT(26), - [1032] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_source_file, 2, 0, 0), - [1034] = {.entry = {.count = 1, .reusable = true}}, SHIFT(132), - [1036] = {.entry = {.count = 1, .reusable = true}}, ACCEPT_INPUT(), - [1038] = {.entry = {.count = 1, .reusable = true}}, SHIFT(291), - [1040] = {.entry = {.count = 1, .reusable = true}}, SHIFT(126), - [1042] = {.entry = {.count = 1, .reusable = true}}, SHIFT(337), - [1044] = {.entry = {.count = 1, .reusable = true}}, SHIFT(133), - [1046] = {.entry = {.count = 1, .reusable = true}}, SHIFT(292), - [1048] = {.entry = {.count = 1, .reusable = true}}, SHIFT(274), - [1050] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_require_message, 1, 0, 0), - [1052] = {.entry = {.count = 1, .reusable = true}}, SHIFT(366), - [1054] = {.entry = {.count = 1, .reusable = true}}, SHIFT(288), - [1056] = {.entry = {.count = 1, .reusable = true}}, SHIFT(375), - [1058] = {.entry = {.count = 1, .reusable = true}}, SHIFT(314), - [1060] = {.entry = {.count = 1, .reusable = true}}, SHIFT(27), - [1062] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_console_parameter_list, 4, 0, 0), - [1064] = {.entry = {.count = 1, .reusable = true}}, SHIFT(279), - [1066] = {.entry = {.count = 1, .reusable = true}}, SHIFT(56), - [1068] = {.entry = {.count = 1, .reusable = true}}, SHIFT(281), - [1070] = {.entry = {.count = 1, .reusable = true}}, SHIFT(321), - [1072] = {.entry = {.count = 1, .reusable = true}}, SHIFT(28), - [1074] = {.entry = {.count = 1, .reusable = true}}, SHIFT(135), - [1076] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_return_type_list, 6, 0, 0), - [1078] = {.entry = {.count = 1, .reusable = true}}, SHIFT(298), - [1080] = {.entry = {.count = 1, .reusable = true}}, SHIFT(310), - [1082] = {.entry = {.count = 1, .reusable = true}}, SHIFT(65), - [1084] = {.entry = {.count = 1, .reusable = true}}, SHIFT(100), - [1086] = {.entry = {.count = 1, .reusable = true}}, SHIFT(403), - [1088] = {.entry = {.count = 1, .reusable = true}}, SHIFT(259), - [1090] = {.entry = {.count = 1, .reusable = true}}, SHIFT(16), - [1092] = {.entry = {.count = 1, .reusable = true}}, SHIFT(136), - [1094] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_contract_definition, 6, 0, 1), - [1096] = {.entry = {.count = 1, .reusable = true}}, SHIFT(137), - [1098] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_array_size, 1, 0, 0), - [1100] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_return_type_list, 4, 0, 0), - [1102] = {.entry = {.count = 1, .reusable = true}}, SHIFT(138), - [1104] = {.entry = {.count = 1, .reusable = true}}, SHIFT(283), - [1106] = {.entry = {.count = 1, .reusable = true}}, SHIFT(139), - [1108] = {.entry = {.count = 1, .reusable = true}}, SHIFT(211), - [1110] = {.entry = {.count = 1, .reusable = true}}, SHIFT(82), - [1112] = {.entry = {.count = 1, .reusable = true}}, SHIFT(270), - [1114] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2), - [1116] = {.entry = {.count = 1, .reusable = true}}, SHIFT(14), - [1118] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_console_parameter_list, 5, 0, 0), - [1120] = {.entry = {.count = 1, .reusable = true}}, SHIFT(158), - [1122] = {.entry = {.count = 1, .reusable = true}}, SHIFT(320), - [1124] = {.entry = {.count = 1, .reusable = true}}, SHIFT(102), - [1126] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_return_type_list, 3, 0, 0), - [1128] = {.entry = {.count = 1, .reusable = true}}, SHIFT(267), - [1130] = {.entry = {.count = 1, .reusable = true}}, SHIFT(17), - [1132] = {.entry = {.count = 1, .reusable = true}}, SHIFT(116), - [1134] = {.entry = {.count = 1, .reusable = true}}, SHIFT(18), - [1136] = {.entry = {.count = 1, .reusable = true}}, SHIFT(143), - [1138] = {.entry = {.count = 1, .reusable = true}}, SHIFT(293), - [1140] = {.entry = {.count = 1, .reusable = true}}, SHIFT(159), - [1142] = {.entry = {.count = 1, .reusable = true}}, SHIFT(370), - [1144] = {.entry = {.count = 1, .reusable = true}}, SHIFT(122), - [1146] = {.entry = {.count = 1, .reusable = true}}, SHIFT(323), - [1148] = {.entry = {.count = 1, .reusable = true}}, SHIFT(11), - [1150] = {.entry = {.count = 1, .reusable = true}}, SHIFT(144), - [1152] = {.entry = {.count = 1, .reusable = true}}, SHIFT(29), - [1154] = {.entry = {.count = 1, .reusable = true}}, SHIFT(127), - [1156] = {.entry = {.count = 1, .reusable = true}}, SHIFT(117), - [1158] = {.entry = {.count = 1, .reusable = true}}, SHIFT(119), - [1160] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_source_file, 1, 0, 0), - [1162] = {.entry = {.count = 1, .reusable = true}}, SHIFT(176), - [1164] = {.entry = {.count = 1, .reusable = true}}, SHIFT(61), - [1166] = {.entry = {.count = 1, .reusable = true}}, SHIFT(49), - [1168] = {.entry = {.count = 1, .reusable = false}}, SHIFT(355), - [1170] = {.entry = {.count = 1, .reusable = false}}, SHIFT_EXTRA(), - [1172] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tx_var, 1, 0, 0), - [1174] = {.entry = {.count = 1, .reusable = true}}, SHIFT(101), - [1176] = {.entry = {.count = 1, .reusable = true}}, SHIFT(300), - [1178] = {.entry = {.count = 1, .reusable = true}}, SHIFT(79), + [720] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_bit_or_repeat1, 2, 0, 0), + [722] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_bit_or_repeat1, 2, 0, 0), SHIFT_REPEAT(45), + [725] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_type_name, 2, 0, 0), + [727] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_name, 2, 0, 0), + [729] = {.entry = {.count = 1, .reusable = true}}, SHIFT(227), + [731] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_type_name, 1, 0, 0), + [733] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_name, 1, 0, 0), + [735] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_version_constraint, 2, 0, 0), + [737] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_version_constraint, 2, 0, 0), + [739] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_bit_or, 1, 0, 0), + [741] = {.entry = {.count = 1, .reusable = false}}, SHIFT(45), + [743] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_bit_or, 2, 0, 0), + [745] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_builtin_type, 1, 0, 0), + [747] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_builtin_type, 1, 0, 0), + [749] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_logical_and_repeat1, 2, 0, 0), + [751] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_logical_and_repeat1, 2, 0, 0), SHIFT_REPEAT(44), + [754] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_bit_or_repeat1, 2, 0, 0), + [756] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_logical_and, 2, 0, 0), + [758] = {.entry = {.count = 1, .reusable = true}}, SHIFT(44), + [760] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_logical_and, 1, 0, 0), + [762] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_array_suffix, 2, 0, 0), + [764] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_array_suffix, 2, 0, 0), + [766] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_array_suffix, 3, 0, 0), + [768] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_array_suffix, 3, 0, 0), + [770] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_base_type, 1, 0, 0), + [772] = {.entry = {.count = 1, .reusable = true}}, SHIFT(23), + [774] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_base_type, 1, 0, 0), + [776] = {.entry = {.count = 1, .reusable = true}}, SHIFT(191), + [778] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_logical_or_repeat1, 2, 0, 0), + [780] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_logical_or_repeat1, 2, 0, 0), SHIFT_REPEAT(43), + [783] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_logical_or, 1, 0, 0), + [785] = {.entry = {.count = 1, .reusable = true}}, SHIFT(43), + [787] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_logical_or, 2, 0, 0), + [789] = {.entry = {.count = 1, .reusable = true}}, SHIFT(75), + [791] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression, 1, 0, 0), + [793] = {.entry = {.count = 1, .reusable = true}}, SHIFT(422), + [795] = {.entry = {.count = 1, .reusable = true}}, SHIFT(405), + [797] = {.entry = {.count = 1, .reusable = true}}, SHIFT(386), + [799] = {.entry = {.count = 1, .reusable = true}}, SHIFT(213), + [801] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_function_definition_repeat1, 2, 0, 0), + [803] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_function_definition_repeat1, 2, 0, 0), SHIFT_REPEAT(331), + [806] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attribute_path, 1, 0, 0), + [808] = {.entry = {.count = 1, .reusable = true}}, SHIFT(440), + [810] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_cast_type_name, 2, 0, 0), + [812] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_contract_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(359), + [815] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_contract_source_file_repeat1, 2, 0, 0), + [817] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_attribute_path_repeat1, 2, 0, 0), + [819] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_attribute_path_repeat1, 2, 0, 0), SHIFT_REPEAT(440), + [822] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_declaration_source_file_repeat1, 2, 0, 0), + [824] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_declaration_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(431), + [827] = {.entry = {.count = 1, .reusable = true}}, SHIFT(57), + [829] = {.entry = {.count = 1, .reusable = true}}, SHIFT(183), + [831] = {.entry = {.count = 1, .reusable = false}}, SHIFT(290), + [833] = {.entry = {.count = 1, .reusable = true}}, SHIFT(340), + [835] = {.entry = {.count = 1, .reusable = false}}, SHIFT(302), + [837] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_declaration_source_file, 1, 0, 0), + [839] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_variable_definition_repeat1, 2, 0, 0), + [841] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_variable_definition_repeat1, 2, 0, 0), SHIFT_REPEAT(340), + [844] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_cast_type_name, 1, 0, 0), + [846] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_return_expression_list_repeat1, 2, 0, 0), + [848] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_return_expression_list_repeat1, 2, 0, 0), SHIFT_REPEAT(34), + [851] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attribute_path, 2, 0, 0), + [853] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_return_type_list_repeat1, 2, 0, 0), SHIFT_REPEAT(190), + [856] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_return_type_list_repeat1, 2, 0, 0), + [858] = {.entry = {.count = 1, .reusable = true}}, SHIFT(162), + [860] = {.entry = {.count = 1, .reusable = true}}, SHIFT(248), + [862] = {.entry = {.count = 1, .reusable = true}}, SHIFT(390), + [864] = {.entry = {.count = 1, .reusable = true}}, SHIFT(250), + [866] = {.entry = {.count = 1, .reusable = true}}, SHIFT(389), + [868] = {.entry = {.count = 1, .reusable = true}}, SHIFT(361), + [870] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parameter_list, 3, 0, 0), + [872] = {.entry = {.count = 1, .reusable = true}}, SHIFT(171), + [874] = {.entry = {.count = 1, .reusable = true}}, SHIFT(428), + [876] = {.entry = {.count = 1, .reusable = true}}, SHIFT(425), + [878] = {.entry = {.count = 1, .reusable = true}}, SHIFT(266), + [880] = {.entry = {.count = 1, .reusable = true}}, SHIFT(172), + [882] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_attribute_args_repeat1, 2, 0, 0), SHIFT_REPEAT(304), + [885] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_attribute_args_repeat1, 2, 0, 0), + [887] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4), + [889] = {.entry = {.count = 1, .reusable = true}}, SHIFT(352), + [891] = {.entry = {.count = 1, .reusable = true}}, SHIFT(372), + [893] = {.entry = {.count = 1, .reusable = true}}, SHIFT(105), + [895] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_state_object_repeat1, 2, 0, 0), + [897] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_state_object_repeat1, 2, 0, 0), SHIFT_REPEAT(305), + [900] = {.entry = {.count = 1, .reusable = true}}, SHIFT(157), + [902] = {.entry = {.count = 1, .reusable = true}}, SHIFT(411), + [904] = {.entry = {.count = 1, .reusable = true}}, SHIFT(71), + [906] = {.entry = {.count = 1, .reusable = true}}, SHIFT(256), + [908] = {.entry = {.count = 1, .reusable = true}}, SHIFT(14), + [910] = {.entry = {.count = 1, .reusable = true}}, SHIFT(274), + [912] = {.entry = {.count = 1, .reusable = true}}, SHIFT(365), + [914] = {.entry = {.count = 1, .reusable = true}}, SHIFT(10), + [916] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_attribute, 4, 0, 0), + [918] = {.entry = {.count = 1, .reusable = true}}, SHIFT(373), + [920] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_state_function_call_assignment_repeat1, 2, 0, 0), + [922] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_state_function_call_assignment_repeat1, 2, 0, 0), SHIFT_REPEAT(313), + [925] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_function_call_assignment_repeat1, 2, 0, 0), SHIFT_REPEAT(180), + [928] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_function_call_assignment_repeat1, 2, 0, 0), + [930] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5), + [932] = {.entry = {.count = 1, .reusable = true}}, SHIFT(73), + [934] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parameter_list, 4, 0, 0), + [936] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parameter_list, 2, 0, 0), + [938] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_parameter_list_repeat1, 2, 0, 0), SHIFT_REPEAT(182), + [941] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_parameter_list_repeat1, 2, 0, 0), + [943] = {.entry = {.count = 1, .reusable = true}}, SHIFT(414), + [945] = {.entry = {.count = 1, .reusable = true}}, SHIFT(247), + [947] = {.entry = {.count = 1, .reusable = true}}, SHIFT(96), + [949] = {.entry = {.count = 1, .reusable = true}}, SHIFT(260), + [951] = {.entry = {.count = 1, .reusable = true}}, SHIFT(15), + [953] = {.entry = {.count = 1, .reusable = true}}, SHIFT(408), + [955] = {.entry = {.count = 1, .reusable = true}}, SHIFT(98), + [957] = {.entry = {.count = 1, .reusable = true}}, SHIFT(9), + [959] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_console_parameter_list_repeat1, 2, 0, 0), SHIFT_REPEAT(16), + [962] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_console_parameter_list_repeat1, 2, 0, 0), + [964] = {.entry = {.count = 1, .reusable = true}}, SHIFT(17), + [966] = {.entry = {.count = 1, .reusable = true}}, SHIFT(68), + [968] = {.entry = {.count = 1, .reusable = true}}, SHIFT(288), + [970] = {.entry = {.count = 1, .reusable = true}}, SHIFT(289), + [972] = {.entry = {.count = 1, .reusable = true}}, SHIFT(11), + [974] = {.entry = {.count = 1, .reusable = true}}, SHIFT(79), + [976] = {.entry = {.count = 1, .reusable = true}}, SHIFT(184), + [978] = {.entry = {.count = 1, .reusable = true}}, SHIFT(320), + [980] = {.entry = {.count = 1, .reusable = true}}, SHIFT(179), + [982] = {.entry = {.count = 1, .reusable = true}}, SHIFT(312), + [984] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parameter_list, 5, 0, 0), + [986] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_attribute, 3, 0, 0), + [988] = {.entry = {.count = 1, .reusable = true}}, SHIFT(385), + [990] = {.entry = {.count = 1, .reusable = true}}, SHIFT(125), + [992] = {.entry = {.count = 1, .reusable = true}}, SHIFT(27), + [994] = {.entry = {.count = 1, .reusable = true}}, SHIFT(192), + [996] = {.entry = {.count = 1, .reusable = true}}, SHIFT(344), + [998] = {.entry = {.count = 1, .reusable = true}}, SHIFT(299), + [1000] = {.entry = {.count = 1, .reusable = true}}, SHIFT(347), + [1002] = {.entry = {.count = 1, .reusable = true}}, SHIFT(164), + [1004] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_return_type_list, 2, 0, 0), + [1006] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_console_parameter, 1, 0, 0), + [1008] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_builtin_function_declaration, 5, 0, 1), + [1010] = {.entry = {.count = 1, .reusable = true}}, SHIFT(382), + [1012] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3), + [1014] = {.entry = {.count = 1, .reusable = true}}, SHIFT(129), + [1016] = {.entry = {.count = 1, .reusable = true}}, SHIFT(33), + [1018] = {.entry = {.count = 1, .reusable = true}}, SHIFT(12), + [1020] = {.entry = {.count = 1, .reusable = true}}, SHIFT(81), + [1022] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_state_entry, 3, 0, 0), + [1024] = {.entry = {.count = 1, .reusable = true}}, SHIFT(397), + [1026] = {.entry = {.count = 1, .reusable = true}}, SHIFT(94), + [1028] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_state_typed_binding, 4, 0, 0), + [1030] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_return_type_list, 4, 0, 0), + [1032] = {.entry = {.count = 1, .reusable = true}}, SHIFT(35), + [1034] = {.entry = {.count = 1, .reusable = true}}, SHIFT(328), + [1036] = {.entry = {.count = 1, .reusable = true}}, SHIFT(412), + [1038] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_builtin_function_declaration, 4, 0, 1), + [1040] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attribute_arg, 3, 0, 4), + [1042] = {.entry = {.count = 1, .reusable = true}}, SHIFT(270), + [1044] = {.entry = {.count = 1, .reusable = true}}, SHIFT(222), + [1046] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_return_type_list, 5, 0, 0), + [1048] = {.entry = {.count = 1, .reusable = true}}, SHIFT(229), + [1050] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parameter, 2, 0, 0), + [1052] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_return_type_list, 3, 0, 0), + [1054] = {.entry = {.count = 1, .reusable = false}}, SHIFT(419), + [1056] = {.entry = {.count = 1, .reusable = true}}, SHIFT(417), + [1058] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_pragma_directive, 4, 0, 0), + [1060] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_return_type_list, 6, 0, 0), + [1062] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_modifier, 1, 0, 0), + [1064] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_modifier, 1, 0, 0), + [1066] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_typed_binding, 2, 0, 0), + [1068] = {.entry = {.count = 1, .reusable = true}}, SHIFT(13), + [1070] = {.entry = {.count = 1, .reusable = true}}, SHIFT(97), + [1072] = {.entry = {.count = 1, .reusable = true}}, SHIFT(291), + [1074] = {.entry = {.count = 1, .reusable = true}}, ACCEPT_INPUT(), + [1076] = {.entry = {.count = 1, .reusable = true}}, SHIFT(132), + [1078] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2), + [1080] = {.entry = {.count = 1, .reusable = true}}, SHIFT(22), + [1082] = {.entry = {.count = 1, .reusable = true}}, SHIFT(392), + [1084] = {.entry = {.count = 1, .reusable = true}}, SHIFT(128), + [1086] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_console_parameter_list, 3, 0, 0), + [1088] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_contract_definition, 5, 0, 1), + [1090] = {.entry = {.count = 1, .reusable = true}}, SHIFT(402), + [1092] = {.entry = {.count = 1, .reusable = true}}, SHIFT(134), + [1094] = {.entry = {.count = 1, .reusable = true}}, SHIFT(393), + [1096] = {.entry = {.count = 1, .reusable = true}}, SHIFT(131), + [1098] = {.entry = {.count = 1, .reusable = true}}, SHIFT(189), + [1100] = {.entry = {.count = 1, .reusable = true}}, SHIFT(173), + [1102] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attribute_args, 5, 0, 0), + [1104] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_version_operator, 1, 0, 0), + [1106] = {.entry = {.count = 1, .reusable = true}}, SHIFT(77), + [1108] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_source_file, 1, 0, 0), + [1110] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attribute_args, 3, 0, 0), + [1112] = {.entry = {.count = 1, .reusable = true}}, SHIFT(20), + [1114] = {.entry = {.count = 1, .reusable = true}}, SHIFT(160), + [1116] = {.entry = {.count = 1, .reusable = true}}, SHIFT(123), + [1118] = {.entry = {.count = 1, .reusable = true}}, SHIFT(298), + [1120] = {.entry = {.count = 1, .reusable = true}}, SHIFT(152), + [1122] = {.entry = {.count = 1, .reusable = true}}, SHIFT(80), + [1124] = {.entry = {.count = 1, .reusable = true}}, SHIFT(24), + [1126] = {.entry = {.count = 1, .reusable = true}}, SHIFT(38), + [1128] = {.entry = {.count = 1, .reusable = true}}, SHIFT(327), + [1130] = {.entry = {.count = 1, .reusable = true}}, SHIFT(109), + [1132] = {.entry = {.count = 1, .reusable = true}}, SHIFT(326), + [1134] = {.entry = {.count = 1, .reusable = true}}, SHIFT(137), + [1136] = {.entry = {.count = 1, .reusable = true}}, SHIFT(325), + [1138] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_pragma_value, 2, 0, 0), + [1140] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_return_expression_list, 4, 0, 0), + [1142] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_require_message, 1, 0, 0), + [1144] = {.entry = {.count = 1, .reusable = true}}, SHIFT(410), + [1146] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attribute_args, 2, 0, 0), + [1148] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_array_size, 1, 0, 0), + [1150] = {.entry = {.count = 1, .reusable = true}}, SHIFT(40), + [1152] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_console_parameter_list, 4, 0, 0), + [1154] = {.entry = {.count = 1, .reusable = true}}, SHIFT(32), + [1156] = {.entry = {.count = 1, .reusable = true}}, SHIFT(29), + [1158] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_contract_source_file, 1, 0, 0), + [1160] = {.entry = {.count = 1, .reusable = true}}, SHIFT(446), + [1162] = {.entry = {.count = 1, .reusable = true}}, SHIFT(41), + [1164] = {.entry = {.count = 1, .reusable = true}}, SHIFT(138), + [1166] = {.entry = {.count = 1, .reusable = true}}, SHIFT(214), + [1168] = {.entry = {.count = 1, .reusable = true}}, SHIFT(99), + [1170] = {.entry = {.count = 1, .reusable = true}}, SHIFT(100), + [1172] = {.entry = {.count = 1, .reusable = true}}, SHIFT(200), + [1174] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_contract_source_file, 2, 0, 0), + [1176] = {.entry = {.count = 1, .reusable = true}}, SHIFT(293), + [1178] = {.entry = {.count = 1, .reusable = true}}, SHIFT(28), + [1180] = {.entry = {.count = 1, .reusable = true}}, SHIFT(154), + [1182] = {.entry = {.count = 1, .reusable = true}}, SHIFT(363), + [1184] = {.entry = {.count = 1, .reusable = true}}, SHIFT(142), + [1186] = {.entry = {.count = 1, .reusable = true}}, SHIFT(338), + [1188] = {.entry = {.count = 1, .reusable = true}}, SHIFT(398), + [1190] = {.entry = {.count = 1, .reusable = true}}, SHIFT(88), + [1192] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_return_expression_list, 5, 0, 0), + [1194] = {.entry = {.count = 1, .reusable = true}}, SHIFT(18), + [1196] = {.entry = {.count = 1, .reusable = true}}, SHIFT(143), + [1198] = {.entry = {.count = 1, .reusable = true}}, SHIFT(295), + [1200] = {.entry = {.count = 1, .reusable = true}}, SHIFT(144), + [1202] = {.entry = {.count = 1, .reusable = true}}, SHIFT(322), + [1204] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attribute_args, 4, 0, 0), + [1206] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_console_parameter_list, 5, 0, 0), + [1208] = {.entry = {.count = 1, .reusable = true}}, SHIFT(381), + [1210] = {.entry = {.count = 1, .reusable = true}}, SHIFT(401), + [1212] = {.entry = {.count = 1, .reusable = true}}, SHIFT(311), + [1214] = {.entry = {.count = 1, .reusable = true}}, SHIFT(42), + [1216] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_contract_definition, 6, 0, 1), + [1218] = {.entry = {.count = 1, .reusable = true}}, SHIFT(337), + [1220] = {.entry = {.count = 1, .reusable = true}}, SHIFT(374), + [1222] = {.entry = {.count = 1, .reusable = true}}, SHIFT(146), + [1224] = {.entry = {.count = 1, .reusable = true}}, SHIFT(332), + [1226] = {.entry = {.count = 1, .reusable = true}}, SHIFT(37), + [1228] = {.entry = {.count = 1, .reusable = true}}, SHIFT(148), + [1230] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_return_expression_list, 6, 0, 0), + [1232] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tx_var, 1, 0, 0), + [1234] = {.entry = {.count = 1, .reusable = true}}, SHIFT(439), + [1236] = {.entry = {.count = 1, .reusable = true}}, SHIFT(301), + [1238] = {.entry = {.count = 1, .reusable = true}}, SHIFT(124), + [1240] = {.entry = {.count = 1, .reusable = true}}, SHIFT(19), + [1242] = {.entry = {.count = 1, .reusable = true}}, SHIFT(149), + [1244] = {.entry = {.count = 1, .reusable = true}}, SHIFT(204), + [1246] = {.entry = {.count = 1, .reusable = true}}, SHIFT(30), + [1248] = {.entry = {.count = 1, .reusable = true}}, SHIFT(265), + [1250] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_return_expression_list, 7, 0, 0), + [1252] = {.entry = {.count = 1, .reusable = true}}, SHIFT(150), + [1254] = {.entry = {.count = 1, .reusable = true}}, SHIFT(255), + [1256] = {.entry = {.count = 1, .reusable = true}}, SHIFT(85), + [1258] = {.entry = {.count = 1, .reusable = true}}, SHIFT(64), + [1260] = {.entry = {.count = 1, .reusable = true}}, SHIFT(63), + [1262] = {.entry = {.count = 1, .reusable = true}}, SHIFT(25), + [1264] = {.entry = {.count = 1, .reusable = true}}, SHIFT(26), + [1266] = {.entry = {.count = 1, .reusable = true}}, SHIFT(31), + [1268] = {.entry = {.count = 1, .reusable = true}}, SHIFT(371), + [1270] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_console_parameter_list, 2, 0, 0), + [1272] = {.entry = {.count = 1, .reusable = true}}, SHIFT(342), + [1274] = {.entry = {.count = 1, .reusable = true}}, SHIFT(103), + [1276] = {.entry = {.count = 1, .reusable = true}}, SHIFT(403), + [1278] = {.entry = {.count = 1, .reusable = true}}, SHIFT(140), }; #ifdef __cplusplus