From f01f12e58eda3214dfc16b192637cffcfcfd57ea Mon Sep 17 00:00:00 2001 From: Michael-F-Bryan Date: Thu, 9 May 2024 10:10:48 +0800 Subject: [PATCH 1/3] Add more tests to the repo --- test/corpus/all-functions.txt | 132 +++++++ test/corpus/all-resources.txt | 54 +++ test/corpus/all-types.txt | 70 ++++ test/corpus/comments.txt | 38 ++ test/corpus/doc-comment-kitchen-sink.txt | 119 +++++++ test/corpus/empty.txt | 7 + test/corpus/flags.txt | 28 ++ test/corpus/imports-with-version-number.txt | 53 +++ test/corpus/interface-with-use.txt | 30 ++ test/corpus/packages.txt | 16 + test/corpus/top-level-use.txt | 59 +++ test/corpus/wasi.txt | 374 ++++++++++++++++++++ test/corpus/world.txt | 131 ++++++- 13 files changed, 1110 insertions(+), 1 deletion(-) create mode 100644 test/corpus/all-functions.txt create mode 100644 test/corpus/all-resources.txt create mode 100644 test/corpus/all-types.txt create mode 100644 test/corpus/comments.txt create mode 100644 test/corpus/doc-comment-kitchen-sink.txt create mode 100644 test/corpus/empty.txt create mode 100644 test/corpus/imports-with-version-number.txt create mode 100644 test/corpus/interface-with-use.txt create mode 100644 test/corpus/top-level-use.txt create mode 100644 test/corpus/wasi.txt diff --git a/test/corpus/all-functions.txt b/test/corpus/all-functions.txt new file mode 100644 index 0000000..f7f94a0 --- /dev/null +++ b/test/corpus/all-functions.txt @@ -0,0 +1,132 @@ +============= +All Functions +============= + +package foo:functions; + +interface functions { + f1: func(); + f2: func(a: u32); + f3: func(a: u32,); + f4: func() -> u32; + f6: func() -> tuple; + f7: func(a: f32, b: f32) -> tuple; + f8: func(a: option) -> result; + f9: func() -> (u: u32, f: f32); + f10: func() -> (u: u32); + f11: func() -> (); +} + +--- + +(source_file + (package_decl + (id) + (id)) + (interface_item + (id) + (interface_body + (interface_items + (func_item + (id) + (func_type + (param_list)))) + (interface_items + (func_item + (id) + (func_type + (param_list + (named_type_list + (named_type + (id) + (ty))))))) + (interface_items + (func_item + (id) + (func_type + (param_list + (named_type_list + (named_type + (id) + (ty))))))) + (interface_items + (func_item + (id) + (func_type + (param_list) + (result_list + (ty))))) + (interface_items + (func_item + (id) + (func_type + (param_list) + (result_list + (ty + (tuple + (tuple_list + (ty) + (ty)))))))) + (interface_items + (func_item + (id) + (func_type + (param_list + (named_type_list + (named_type + (id) + (ty)) + (named_type + (id) + (ty)))) + (result_list + (ty + (tuple + (tuple_list + (ty) + (ty)))))))) + (interface_items + (func_item + (id) + (func_type + (param_list + (named_type_list + (named_type + (id) + (ty + (option + (ty)))))) + (result_list + (ty + (result + (ty) + (ty))))))) + (interface_items + (func_item + (id) + (func_type + (param_list) + (result_list + (named_type_list + (named_type + (id) + (ty)) + (named_type + (id) + (ty))))))) + (interface_items + (func_item + (id) + (func_type + (param_list) + (result_list + (named_type_list + (named_type + (id) + (ty))))))) + (interface_items + (func_item + (id) + (func_type + (param_list) + (result_list))))))) diff --git a/test/corpus/all-resources.txt b/test/corpus/all-resources.txt new file mode 100644 index 0000000..0c3ff2d --- /dev/null +++ b/test/corpus/all-resources.txt @@ -0,0 +1,54 @@ +============= +All Resources +============= + +package foo:bar; + +interface foo { + resource a { } + + resource b { + constructor(); + } + + resource c { + constructor(x: u32); + } + + resource d { + constructor(x: u32); + + a: func(); + + b: static func(); + } + + resource e { + constructor(other: own, other2: borrow); + + method: func(thing: own, thing2: borrow); + } +} + +world w { + resource a; + + resource b { + } + + resource c { + constructor(); + } +} + +interface i { + resource a; + + type t1 = a; + type t2 = borrow; + type t3 = borrow; +} + +--- + + diff --git a/test/corpus/all-types.txt b/test/corpus/all-types.txt new file mode 100644 index 0000000..9c96c6f --- /dev/null +++ b/test/corpus/all-types.txt @@ -0,0 +1,70 @@ +========= +All Types +========= + +package foo:types; + +interface types { + type t1 = u8; + type t2 = u16; + type t3 = u32; + type t4 = u64; + type t5 = s8; + type t6 = s16; + type t7 = s32; + type t8 = s64; + type t9a = f32; + type t9b = f32; + type t10a = f64; + type t10b = f64; + type t11 = char; + type t12 = list; + type t13 = string; + type t14 = option; + type t15 = result; + type t16 = result<_, u32>; + type t17 = result; + type t18 = result; + record t20 {} + record t21 { a: u32 } + record t22 { a: u32, } + record t23 { a: u32, b: u64 } + record t24 { a: u32, b: u64, } + record t25 { x: u32 } + record %record {} + type t26 = tuple<>; + type t27 = tuple; + type t28 = tuple; + type t29 = tuple; + flags t30 {} + flags t31 { a, b, c } + flags t32 { a, b, c, } + variant t33 { a } + variant t34 { a, b } + variant t35 { a, b, } + variant t36 { a, b(u32), } + variant t37 { a, b(option), } + enum t41 { a, b, c } + enum t42 { a, b, c, } + type t43 = bool; + type t44 = string; + type t45 = list>>; + type t46 = t44; + type t47 = %t44; + /* + type t48 = stream; + type t49 = stream<_, u32>; + type t50 = stream; + type t51 = stream; + type t52 = future; + type t53 = future; + */ + + /// type order doesn't matter + type foo = bar; + type bar = u32; +} + +--- + + diff --git a/test/corpus/comments.txt b/test/corpus/comments.txt new file mode 100644 index 0000000..477b8c7 --- /dev/null +++ b/test/corpus/comments.txt @@ -0,0 +1,38 @@ +===================== +Top level doc comment +===================== + +/// Some package. +package local:demo; + +--- + +(source_file + (comment) + (package_decl + (id) + (id))) + +============= +Slash Comment +============= + +// This is a comment + +--- + +(source_file + (comment)) + +======================= +Multiline Block Comment +======================= +/* this + is + a + comment + */ +--- + +(source_file + (comment)) diff --git a/test/corpus/doc-comment-kitchen-sink.txt b/test/corpus/doc-comment-kitchen-sink.txt new file mode 100644 index 0000000..bb45691 --- /dev/null +++ b/test/corpus/doc-comment-kitchen-sink.txt @@ -0,0 +1,119 @@ +======================== +Doc Comment Kitchen Sink +======================== + +/// This is a package +package some:package; + +/// An interface. +interface i { + /// A record. + record r { + /// A field + field: u32, + } + + /// A type alias. + type x = u32; + + /// A variant. + variant v { + /// An empty field + empty, + } + + /// Some flags. + flags f { + /// First flag. + first, + } + + /// An enum. + enum e { + /// An enum variant. + variant, + } + + /// A resource. + resource res { + /// The constructor. + constructor(); + /// Some static method. + s: static func(); + /// A normal method. + method: func(); + } +} + +--- + +(source_file + (comment) + (package_decl + (id) + (id)) + (comment) + (interface_item + (id) + (interface_body + (comment) + (interface_items + (typedef_item + (record_item + (id) + (record_body + (comment) + (record_field + (id) + (ty)))))) + (comment) + (interface_items + (typedef_item + (type_item + (id) + (ty)))) + (comment) + (interface_items + (typedef_item + (variant_items + (id) + (variant_body + (comment) + (variant_case + (id)))))) + (comment) + (interface_items + (typedef_item + (flags_items + (id) + (flags_body + (comment) + (id))))) + (comment) + (interface_items + (typedef_item + (enum_items + (id) + (enum_body + (comment) + (id))))) + (comment) + (interface_items + (typedef_item + (resource_item + (id) + (resource_body + (comment) + (resource_method + (param_list)) + (comment) + (resource_method + (id) + (func_type + (param_list))) + (comment) + (resource_method + (func_item + (id) + (func_type + (param_list))))))))))) diff --git a/test/corpus/empty.txt b/test/corpus/empty.txt new file mode 100644 index 0000000..793dc93 --- /dev/null +++ b/test/corpus/empty.txt @@ -0,0 +1,7 @@ +===== +Empty +===== + +--- + +(source_file) diff --git a/test/corpus/flags.txt b/test/corpus/flags.txt index 88de696..bee7202 100644 --- a/test/corpus/flags.txt +++ b/test/corpus/flags.txt @@ -1,11 +1,35 @@ +================== +Empty Flags +================== + +interface foo { + flags permissions { } +} + +--- + +(source_file + (interface_item + (id) + (interface_body + (interface_items + (typedef_item + (flags_items + (id) + (flags_body))))))) + ================== Flags ================== interface foo { + /// This is a doc-comment. flags permissions { + /// Reading read, + /// Writing write, + /// Execute exec, } } @@ -16,11 +40,15 @@ interface foo { (interface_item (id) (interface_body + (comment) (interface_items (typedef_item (flags_items (id) (flags_body + (comment) (id) + (comment) (id) + (comment) (id)))))))) diff --git a/test/corpus/imports-with-version-number.txt b/test/corpus/imports-with-version-number.txt new file mode 100644 index 0000000..07a495b --- /dev/null +++ b/test/corpus/imports-with-version-number.txt @@ -0,0 +1,53 @@ +=========================== +Imports with version number +=========================== + +package local:demo; + +interface my-interface { + use wasi:http/types@1.0.0.{request, response}; +} + +world my-world { + import wasi:http/handler@1.0.0; + export wasi:http/handler@1.0.0; +} + +--- + +(source_file + (package_decl + (id) + (id)) + (interface_item + (id) + (interface_body + (interface_items + (use_item + (use_path + (id) + (id) + (id) + (valid_semver)) + (use_names_list + (use_names_item + (id)) + (use_names_item + (id))))))) + (world_item + (id) + (world_body + (world_items + (import_item + (use_path + (id) + (id) + (id) + (valid_semver)))) + (world_items + (export_item + (use_path + (id) + (id) + (id) + (valid_semver))))))) diff --git a/test/corpus/interface-with-use.txt b/test/corpus/interface-with-use.txt new file mode 100644 index 0000000..10d1090 --- /dev/null +++ b/test/corpus/interface-with-use.txt @@ -0,0 +1,30 @@ +================== +Interface with use +================== + +package local:demo; + +interface my-interface { + use wasi:http/types.{request, response}; +} + +--- + +(source_file + (package_decl + (id) + (id)) + (interface_item + (id) + (interface_body + (interface_items + (use_item + (use_path + (id) + (id) + (id)) + (use_names_list + (use_names_item + (id)) + (use_names_item + (id)))))))) diff --git a/test/corpus/packages.txt b/test/corpus/packages.txt index 56cd4d9..2b4a2b4 100644 --- a/test/corpus/packages.txt +++ b/test/corpus/packages.txt @@ -40,3 +40,19 @@ package wasmi:io:hello/epic@1.0.0; (id) (id) (valid_semver))) + +======================================= +Packages 4 +======================================= + +package wasi:io:some/nested/package; + +--- + +(source_file + (package_decl + (id) + (id) + (id) + (id) + (id))) diff --git a/test/corpus/top-level-use.txt b/test/corpus/top-level-use.txt new file mode 100644 index 0000000..6f1d7a0 --- /dev/null +++ b/test/corpus/top-level-use.txt @@ -0,0 +1,59 @@ +========= +Basic Use +========= + +use error; + +--- + +(source_file + (toplevel_use_item + (use_path + (id)))) + +============================= +Fully qualified +============================= + +use wasi:http/types@1.0.0; +use wasi:http/handler; + +--- + +(source_file + (toplevel_use_item + (use_path + (id) + (id) + (id) + (valid_semver))) + (toplevel_use_item + (use_path + (id) + (id) + (id)))) + + +======================== +Alias +======================== + +use wasi:http/types as http-types; +use wasi:http/handler@1.2.3 as http-handler; + +--- + +(source_file + (toplevel_use_item + (use_path + (id) + (id) + (id)) + (id)) + (toplevel_use_item + (use_path + (id) + (id) + (id) + (valid_semver)) + (id))) diff --git a/test/corpus/wasi.txt b/test/corpus/wasi.txt new file mode 100644 index 0000000..a05d4d4 --- /dev/null +++ b/test/corpus/wasi.txt @@ -0,0 +1,374 @@ +==== +WASI +==== + +package wasi:filesystem; + +interface wasi { + enum clockid { + /// The clock measuring real time. Time value zero corresponds with + /// 1970-01-01T00:00:00Z. + realtime, + /// The store-wide monotonic clock, which is defined as a clock measuring + /// real time, whose value cannot be adjusted and which cannot have negative + /// clock jumps. The epoch of this clock is undefined. The absolute time + /// value of this clock therefore has no meaning. + monotonic, + } + + /// Timestamp in nanoseconds. + type timestamp = u64; + + /// Error codes returned by functions. + /// Not all of these error codes are returned by the functions provided by this + /// API/ some are used in higher-level library layers, and others are provided + /// merely for alignment with POSIX. + enum errno { + /// No error occurred. System call completed successfully. + success, + /// Argument list too long. + toobig, + /// Permission denied. + access, + /// Address in use. + addrinuse, + /// Address not available. + addrnotavail, + /// Address family not supported. + afnosupport, + /// Resource unavailable, or operation would block. + again, + /// Connection already in progress. + already, + /// Bad file descriptor. + badf, + /// Bad message. + badmsg, + /// Device or resource busy. + busy, + /// Operation canceled. + canceled, + /// No child processes. + child, + /// Connection aborted. + connaborted, + /// Connection refused. + connrefused, + /// Connection reset. + connreset, + /// Resource deadlock would occur. + deadlk, + /// Destination address required. + destaddrreq, + /// Mathematics argument out of domain of function. + dom, + /// Reserved. + dquot, + /// File exists. + exist, + /// Bad address. + fault, + /// File too large. + fbig, + /// Host is unreachable. + hostunreach, + /// Identifier removed. + idrm, + /// Illegal byte sequence. + ilseq, + /// Operation in progress. + inprogress, + /// Interrupted function. + intr, + /// Invalid argument. + inval, + /// I/O error. + io, + /// Socket is connected. + isconn, + /// Is a directory. + isdir, + /// Too many levels of symbolic links. + loop, + /// File descriptor value too large. + mfile, + /// Too many links. + mlink, + /// Message too large. + msgsize, + /// Reserved. + multihop, + /// Filename too long. + nametoolong, + /// Network is down. + netdown, + /// Connection aborted by network. + netreset, + /// Network unreachable. + netunreach, + /// Too many files open in system. + nfile, + /// No buffer space available. + nobufs, + /// No such device. + nodev, + /// No such file or directory. + noent, + /// Executable file format error. + noexec, + /// No locks available. + nolck, + /// Reserved. + nolink, + /// Not enough space. + nomem, + /// No message of the desired type. + nomsg, + /// Protocol not available. + noprotoopt, + /// No space left on device. + nospc, + /// Function not supported. + nosys, + /// The socket is not connected. + notconn, + /// Not a directory or a symbolic link to a directory. + notdir, + /// Directory not empty. + notempty, + /// State not recoverable. + notrecoverable, + /// Not a socket. + notsock, + /// Not supported, or operation not supported on socket. + notsup, + /// Inappropriate I/O control operation. + notty, + /// No such device or address. + nxio, + /// Value too large to be stored in data type. + overflow, + /// Previous owner died. + ownerdead, + /// Operation not permitted. + perm, + /// Broken pipe. + pipe, + /// Protocol error. + proto, + /// Protocol not supported. + protonosupport, + /// Protocol wrong type for socket. + prototype, + /// Result too large. + range, + /// Read-only file system. + rofs, + /// Invalid seek. + spipe, + /// No such process. + srch, + /// Reserved. + stale, + /// Connection timed out. + timedout, + /// Text file busy. + txtbsy, + /// Cross-device link. + xdev, + /// Extension: Capabilities insufficient. + notcapable, + } +} + +--- + +(source_file + (package_decl + (id) + (id)) + (interface_item + (id) + (interface_body + (interface_items + (typedef_item + (enum_items + (id) + (enum_body + (comment) + (comment) + (id) + (comment) + (comment) + (comment) + (comment) + (id))))) + (comment) + (interface_items + (typedef_item + (type_item + (id) + (ty)))) + (comment) + (comment) + (comment) + (comment) + (interface_items + (typedef_item + (enum_items + (id) + (enum_body + (comment) + (id) + (comment) + (id) + (comment) + (id) + (comment) + (id) + (comment) + (id) + (comment) + (id) + (comment) + (id) + (comment) + (id) + (comment) + (id) + (comment) + (id) + (comment) + (id) + (comment) + (id) + (comment) + (id) + (comment) + (id) + (comment) + (id) + (comment) + (id) + (comment) + (id) + (comment) + (id) + (comment) + (id) + (comment) + (id) + (comment) + (id) + (comment) + (id) + (comment) + (id) + (comment) + (id) + (comment) + (id) + (comment) + (id) + (comment) + (id) + (comment) + (id) + (comment) + (id) + (comment) + (id) + (comment) + (id) + (comment) + (id) + (comment) + (id) + (comment) + (id) + (comment) + (id) + (comment) + (id) + (comment) + (id) + (comment) + (id) + (comment) + (id) + (comment) + (id) + (comment) + (id) + (comment) + (id) + (comment) + (id) + (comment) + (id) + (comment) + (id) + (comment) + (id) + (comment) + (id) + (comment) + (id) + (comment) + (id) + (comment) + (id) + (comment) + (id) + (comment) + (id) + (comment) + (id) + (comment) + (id) + (comment) + (id) + (comment) + (id) + (comment) + (id) + (comment) + (id) + (comment) + (id) + (comment) + (id) + (comment) + (id) + (comment) + (id) + (comment) + (id) + (comment) + (id) + (comment) + (id) + (comment) + (id) + (comment) + (id) + (comment) + (id) + (comment) + (id) + (comment) + (id) + (comment) + (id) + (comment) + (id) + (comment) + (id) + (comment) + (id) + (comment) + (id) + (comment) + (id) + (comment) + (id)))))))) diff --git a/test/corpus/world.txt b/test/corpus/world.txt index 0d2754d..a6b398a 100644 --- a/test/corpus/world.txt +++ b/test/corpus/world.txt @@ -1,7 +1,136 @@ +=========== +Basic world +=========== + +world foo { } + +--- + +(source_file + (world_item + (id) + (world_body))) + +=========================== +World with interface export +=========================== + +world console { + export run: interface {} +} + +--- + +(source_file + (world_item + (id) + (world_body + (world_items + (export_item + (id) + (extern_type + (interface_body))))))) + +========================== +World with function export +========================== + +world foo { + export run: func(); +} + +--- + +(source_file + (world_item + (id) + (world_body + (world_items + (export_item + (id) + (extern_type + (func_type + (param_list)))))))) + +================= +World with import +================= + +world command { + import wasi:filesystem/filesystem; +} + +--- + +(source_file + (world_item + (id) + (world_body + (world_items + (import_item + (use_path + (id) + (id) + (id))))))) + ================== -Worlds +World with include ================== +world foo { + include bar; +} + +--- + +(source_file + (world_item + (id) + (world_body + (world_items + (include_item + (use_path + (id))))))) + +========================== +World with include aliased +========================== + +world foo { + include wasi:io/my-world-1 with { a as a1, b as b1 }; +} + +--- + + +============== +World with use +============== + +world command { + use wasi:filesystem/filesystem.{errno}; +} + +--- + +(source_file + (world_item + (id) + (world_body + (world_items + (use_item + (use_path + (id) + (id) + (id)) + (use_names_list + (use_names_item + (id)))))))) + +=================== +Worlds Kitchen Sink +=================== + world imports { import streams; export streams; From 6ed76ec8a92782800dbc1103cb497c07098eb9bf Mon Sep 17 00:00:00 2001 From: Michael-F-Bryan Date: Thu, 9 May 2024 10:46:28 +0800 Subject: [PATCH 2/3] updated the grammar so the remaining tests now pass --- grammar.js | 7 +- src/grammar.json | 83 +- src/node-types.json | 6 +- src/parser.c | 6207 +++++++++++++++++---------------- src/tree_sitter/parser.h | 51 +- test/corpus/all-resources.txt | 131 +- test/corpus/all-types.txt | 338 +- test/corpus/world.txt | 174 +- 8 files changed, 3871 insertions(+), 3126 deletions(-) diff --git a/grammar.js b/grammar.js index 25fb56c..aada995 100644 --- a/grammar.js +++ b/grammar.js @@ -103,6 +103,7 @@ module.exports = grammar({ field('use_path', $.use_path), 'with', field('include_names_body', $.include_names_body), + ';', ), ), @@ -253,7 +254,7 @@ module.exports = grammar({ $.handle, )), - tuple: $ => seq('tuple', '<', $.tuple_list, '>'), + tuple: $ => seq('tuple', '<', optional($.tuple_list), '>'), tuple_list: $ => commaSeparatedList($.ty), @@ -272,7 +273,9 @@ module.exports = grammar({ ), ), - handle: $ => prec(0, choice($.id, seq('borrow', '<', $.id, '>'))), + handle: $ => prec(0, choice($.id, $._borrow_handle, $._owned_handle)), + _borrow_handle: $ => seq('borrow', '<', $.id, '>'), + _owned_handle: $ => seq('own', '<', $.id, '>'), comment: _ => token(choice( seq('//', /(\\+(.|\r?\n)|[^\\\n])*/), diff --git a/src/grammar.json b/src/grammar.json index e23e681..93d1e64 100644 --- a/src/grammar.json +++ b/src/grammar.json @@ -502,6 +502,10 @@ "type": "SYMBOL", "name": "include_names_body" } + }, + { + "type": "STRING", + "value": ";" } ] } @@ -1655,8 +1659,16 @@ "value": "<" }, { - "type": "SYMBOL", - "name": "tuple_list" + "type": "CHOICE", + "members": [ + { + "type": "SYMBOL", + "name": "tuple_list" + }, + { + "type": "BLANK" + } + ] }, { "type": "STRING", @@ -1843,29 +1855,58 @@ "name": "id" }, { - "type": "SEQ", - "members": [ - { - "type": "STRING", - "value": "borrow" - }, - { - "type": "STRING", - "value": "<" - }, - { - "type": "SYMBOL", - "name": "id" - }, - { - "type": "STRING", - "value": ">" - } - ] + "type": "SYMBOL", + "name": "_borrow_handle" + }, + { + "type": "SYMBOL", + "name": "_owned_handle" } ] } }, + "_borrow_handle": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "borrow" + }, + { + "type": "STRING", + "value": "<" + }, + { + "type": "SYMBOL", + "name": "id" + }, + { + "type": "STRING", + "value": ">" + } + ] + }, + "_owned_handle": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "own" + }, + { + "type": "STRING", + "value": "<" + }, + { + "type": "SYMBOL", + "name": "id" + }, + { + "type": "STRING", + "value": ">" + } + ] + }, "comment": { "type": "TOKEN", "content": { diff --git a/src/node-types.json b/src/node-types.json index e7aec88..2b2ca48 100644 --- a/src/node-types.json +++ b/src/node-types.json @@ -730,7 +730,7 @@ "fields": {}, "children": { "multiple": false, - "required": true, + "required": false, "types": [ { "type": "tuple_list", @@ -1221,6 +1221,10 @@ "type": "option", "named": false }, + { + "type": "own", + "named": false + }, { "type": "package", "named": false diff --git a/src/parser.c b/src/parser.c index c465771..f926151 100644 --- a/src/parser.c +++ b/src/parser.c @@ -13,11 +13,11 @@ #endif #define LANGUAGE_VERSION 14 -#define STATE_COUNT 332 +#define STATE_COUNT 339 #define LARGE_STATE_COUNT 2 -#define SYMBOL_COUNT 118 +#define SYMBOL_COUNT 121 #define ALIAS_COUNT 0 -#define TOKEN_COUNT 57 +#define TOKEN_COUNT 58 #define EXTERNAL_TOKEN_COUNT 0 #define FIELD_COUNT 27 #define MAX_ALIAS_SEQUENCE_LENGTH 7 @@ -79,68 +79,71 @@ enum ts_symbol_identifiers { anon_sym_result = 53, anon_sym__ = 54, anon_sym_borrow = 55, - sym_comment = 56, - sym_source_file = 57, - sym_package_decl = 58, - sym_toplevel_use_item = 59, - sym_use_path = 60, - sym_world_item = 61, - sym_world_body = 62, - sym_world_items = 63, - sym_export_item = 64, - sym_import_item = 65, - sym_extern_type = 66, - sym_include_item = 67, - sym_include_names_body = 68, - sym_include_names_list = 69, - sym_include_names_item = 70, - sym_interface_item = 71, - sym_interface_body = 72, - sym_interface_items = 73, - sym_typedef_item = 74, - sym_func_item = 75, - sym_func_type = 76, - sym_param_list = 77, - sym_result_list = 78, - sym_named_type_list = 79, - sym_named_type = 80, - sym_use_item = 81, - sym_use_names_list = 82, - sym_use_names_item = 83, - sym_type_item = 84, - sym_record_item = 85, - sym_record_body = 86, - sym_record_field = 87, - sym_flags_items = 88, - sym_flags_body = 89, - sym_variant_items = 90, - sym_variant_body = 91, - sym_variant_case = 92, - sym_enum_items = 93, - sym_enum_body = 94, - sym_resource_item = 95, - sym_resource_body = 96, - sym_resource_method = 97, - sym_ty = 98, - sym_tuple = 99, - sym_tuple_list = 100, - sym_list = 101, - sym_option = 102, - sym_result = 103, - sym_handle = 104, - aux_sym_source_file_repeat1 = 105, - aux_sym_package_decl_repeat1 = 106, - aux_sym_package_decl_repeat2 = 107, - aux_sym_world_body_repeat1 = 108, - aux_sym_include_names_list_repeat1 = 109, - aux_sym_interface_body_repeat1 = 110, - aux_sym_named_type_list_repeat1 = 111, - aux_sym_use_names_list_repeat1 = 112, - aux_sym_record_body_repeat1 = 113, - aux_sym_flags_body_repeat1 = 114, - aux_sym_variant_body_repeat1 = 115, - aux_sym_resource_body_repeat1 = 116, - aux_sym_tuple_list_repeat1 = 117, + anon_sym_own = 56, + sym_comment = 57, + sym_source_file = 58, + sym_package_decl = 59, + sym_toplevel_use_item = 60, + sym_use_path = 61, + sym_world_item = 62, + sym_world_body = 63, + sym_world_items = 64, + sym_export_item = 65, + sym_import_item = 66, + sym_extern_type = 67, + sym_include_item = 68, + sym_include_names_body = 69, + sym_include_names_list = 70, + sym_include_names_item = 71, + sym_interface_item = 72, + sym_interface_body = 73, + sym_interface_items = 74, + sym_typedef_item = 75, + sym_func_item = 76, + sym_func_type = 77, + sym_param_list = 78, + sym_result_list = 79, + sym_named_type_list = 80, + sym_named_type = 81, + sym_use_item = 82, + sym_use_names_list = 83, + sym_use_names_item = 84, + sym_type_item = 85, + sym_record_item = 86, + sym_record_body = 87, + sym_record_field = 88, + sym_flags_items = 89, + sym_flags_body = 90, + sym_variant_items = 91, + sym_variant_body = 92, + sym_variant_case = 93, + sym_enum_items = 94, + sym_enum_body = 95, + sym_resource_item = 96, + sym_resource_body = 97, + sym_resource_method = 98, + sym_ty = 99, + sym_tuple = 100, + sym_tuple_list = 101, + sym_list = 102, + sym_option = 103, + sym_result = 104, + sym_handle = 105, + sym__borrow_handle = 106, + sym__owned_handle = 107, + aux_sym_source_file_repeat1 = 108, + aux_sym_package_decl_repeat1 = 109, + aux_sym_package_decl_repeat2 = 110, + aux_sym_world_body_repeat1 = 111, + aux_sym_include_names_list_repeat1 = 112, + aux_sym_interface_body_repeat1 = 113, + aux_sym_named_type_list_repeat1 = 114, + aux_sym_use_names_list_repeat1 = 115, + aux_sym_record_body_repeat1 = 116, + aux_sym_flags_body_repeat1 = 117, + aux_sym_variant_body_repeat1 = 118, + aux_sym_resource_body_repeat1 = 119, + aux_sym_tuple_list_repeat1 = 120, }; static const char * const ts_symbol_names[] = { @@ -200,6 +203,7 @@ static const char * const ts_symbol_names[] = { [anon_sym_result] = "result", [anon_sym__] = "_", [anon_sym_borrow] = "borrow", + [anon_sym_own] = "own", [sym_comment] = "comment", [sym_source_file] = "source_file", [sym_package_decl] = "package_decl", @@ -249,6 +253,8 @@ static const char * const ts_symbol_names[] = { [sym_option] = "option", [sym_result] = "result", [sym_handle] = "handle", + [sym__borrow_handle] = "_borrow_handle", + [sym__owned_handle] = "_owned_handle", [aux_sym_source_file_repeat1] = "source_file_repeat1", [aux_sym_package_decl_repeat1] = "package_decl_repeat1", [aux_sym_package_decl_repeat2] = "package_decl_repeat2", @@ -321,6 +327,7 @@ static const TSSymbol ts_symbol_map[] = { [anon_sym_result] = anon_sym_result, [anon_sym__] = anon_sym__, [anon_sym_borrow] = anon_sym_borrow, + [anon_sym_own] = anon_sym_own, [sym_comment] = sym_comment, [sym_source_file] = sym_source_file, [sym_package_decl] = sym_package_decl, @@ -370,6 +377,8 @@ static const TSSymbol ts_symbol_map[] = { [sym_option] = sym_option, [sym_result] = sym_result, [sym_handle] = sym_handle, + [sym__borrow_handle] = sym__borrow_handle, + [sym__owned_handle] = sym__owned_handle, [aux_sym_source_file_repeat1] = aux_sym_source_file_repeat1, [aux_sym_package_decl_repeat1] = aux_sym_package_decl_repeat1, [aux_sym_package_decl_repeat2] = aux_sym_package_decl_repeat2, @@ -610,6 +619,10 @@ static const TSSymbolMetadata ts_symbol_metadata[] = { .visible = true, .named = false, }, + [anon_sym_own] = { + .visible = true, + .named = false, + }, [sym_comment] = { .visible = true, .named = true, @@ -806,6 +819,14 @@ static const TSSymbolMetadata ts_symbol_metadata[] = { .visible = true, .named = true, }, + [sym__borrow_handle] = { + .visible = false, + .named = true, + }, + [sym__owned_handle] = { + .visible = false, + .named = true, + }, [aux_sym_source_file_repeat1] = { .visible = false, .named = false, @@ -938,11 +959,11 @@ static const TSFieldMapSlice ts_field_map_slices[PRODUCTION_ID_COUNT] = { [14] = {.index = 16, .length = 1}, [15] = {.index = 17, .length = 1}, [16] = {.index = 18, .length = 2}, - [17] = {.index = 20, .length = 2}, - [18] = {.index = 22, .length = 1}, - [19] = {.index = 23, .length = 1}, - [20] = {.index = 24, .length = 1}, - [21] = {.index = 25, .length = 1}, + [17] = {.index = 20, .length = 1}, + [18] = {.index = 21, .length = 1}, + [19] = {.index = 22, .length = 1}, + [20] = {.index = 23, .length = 1}, + [21] = {.index = 24, .length = 2}, [22] = {.index = 26, .length = 2}, [23] = {.index = 28, .length = 1}, [24] = {.index = 29, .length = 1}, @@ -1005,16 +1026,16 @@ static const TSFieldMapEntry ts_field_map_entries[] = { {field_name, 1}, {field_resource_body, 2}, [20] = - {field_include_names_body, 3}, - {field_use_path, 1}, - [22] = {field_name, 0}, - [23] = + [21] = {field_param_list, 1}, - [24] = + [22] = {field_use_names_item, 0}, - [25] = + [23] = {field_include_names_item, 0}, + [24] = + {field_include_names_body, 3}, + {field_use_path, 1}, [26] = {field_alias, 1}, {field_type, 3}, @@ -1154,37 +1175,37 @@ static const TSStateId ts_primary_state_ids[STATE_COUNT] = { [62] = 62, [63] = 63, [64] = 64, - [65] = 65, - [66] = 64, - [67] = 46, - [68] = 68, - [69] = 39, - [70] = 65, + [65] = 64, + [66] = 51, + [67] = 57, + [68] = 39, + [69] = 69, + [70] = 38, [71] = 27, - [72] = 37, - [73] = 36, - [74] = 35, - [75] = 63, - [76] = 33, - [77] = 29, - [78] = 44, - [79] = 30, - [80] = 31, - [81] = 32, + [72] = 62, + [73] = 37, + [74] = 36, + [75] = 35, + [76] = 63, + [77] = 30, + [78] = 43, + [79] = 31, + [80] = 32, + [81] = 33, [82] = 34, - [83] = 47, - [84] = 45, - [85] = 49, - [86] = 57, - [87] = 41, - [88] = 26, - [89] = 48, - [90] = 50, + [83] = 26, + [84] = 58, + [85] = 50, + [86] = 48, + [87] = 47, + [88] = 46, + [89] = 40, + [90] = 45, [91] = 91, [92] = 92, - [93] = 58, - [94] = 51, - [95] = 62, + [93] = 93, + [94] = 49, + [95] = 44, [96] = 96, [97] = 97, [98] = 98, @@ -1195,10 +1216,10 @@ static const TSStateId ts_primary_state_ids[STATE_COUNT] = { [103] = 103, [104] = 104, [105] = 105, - [106] = 106, - [107] = 104, - [108] = 108, - [109] = 106, + [106] = 103, + [107] = 107, + [108] = 104, + [109] = 109, [110] = 110, [111] = 111, [112] = 112, @@ -1245,26 +1266,26 @@ static const TSStateId ts_primary_state_ids[STATE_COUNT] = { [153] = 153, [154] = 154, [155] = 155, - [156] = 138, - [157] = 157, + [156] = 156, + [157] = 140, [158] = 158, [159] = 159, [160] = 160, - [161] = 160, - [162] = 158, - [163] = 157, - [164] = 159, - [165] = 141, - [166] = 150, - [167] = 154, - [168] = 153, - [169] = 169, - [170] = 155, + [161] = 161, + [162] = 160, + [163] = 161, + [164] = 153, + [165] = 159, + [166] = 147, + [167] = 155, + [168] = 158, + [169] = 156, + [170] = 170, [171] = 171, - [172] = 172, - [173] = 139, + [172] = 154, + [173] = 173, [174] = 143, - [175] = 68, + [175] = 69, [176] = 176, [177] = 177, [178] = 178, @@ -1273,26 +1294,26 @@ static const TSStateId ts_primary_state_ids[STATE_COUNT] = { [181] = 181, [182] = 182, [183] = 183, - [184] = 145, + [184] = 184, [185] = 185, [186] = 186, [187] = 187, [188] = 188, [189] = 189, [190] = 190, - [191] = 147, + [191] = 191, [192] = 192, - [193] = 172, + [193] = 193, [194] = 194, - [195] = 195, + [195] = 149, [196] = 196, - [197] = 151, + [197] = 171, [198] = 198, [199] = 199, [200] = 200, - [201] = 201, - [202] = 202, - [203] = 203, + [201] = 145, + [202] = 170, + [203] = 151, [204] = 204, [205] = 205, [206] = 206, @@ -1304,40 +1325,40 @@ static const TSStateId ts_primary_state_ids[STATE_COUNT] = { [212] = 212, [213] = 213, [214] = 214, - [215] = 214, + [215] = 213, [216] = 216, [217] = 217, - [218] = 208, + [218] = 218, [219] = 219, [220] = 220, - [221] = 221, - [222] = 222, + [221] = 211, + [222] = 212, [223] = 223, [224] = 224, - [225] = 225, - [226] = 226, + [225] = 216, + [226] = 208, [227] = 227, [228] = 228, - [229] = 228, - [230] = 230, + [229] = 229, + [230] = 229, [231] = 231, [232] = 232, [233] = 233, [234] = 234, - [235] = 222, - [236] = 216, - [237] = 237, - [238] = 220, - [239] = 239, + [235] = 235, + [236] = 236, + [237] = 206, + [238] = 238, + [239] = 236, [240] = 240, [241] = 241, - [242] = 242, - [243] = 231, + [242] = 240, + [243] = 243, [244] = 244, - [245] = 245, - [246] = 232, - [247] = 233, - [248] = 234, + [245] = 241, + [246] = 246, + [247] = 247, + [248] = 248, [249] = 249, [250] = 250, [251] = 251, @@ -1379,14 +1400,14 @@ static const TSStateId ts_primary_state_ids[STATE_COUNT] = { [287] = 287, [288] = 288, [289] = 289, - [290] = 265, + [290] = 290, [291] = 291, [292] = 292, [293] = 293, [294] = 294, [295] = 295, [296] = 296, - [297] = 297, + [297] = 272, [298] = 298, [299] = 299, [300] = 300, @@ -1401,26 +1422,33 @@ static const TSStateId ts_primary_state_ids[STATE_COUNT] = { [309] = 309, [310] = 310, [311] = 311, - [312] = 301, + [312] = 312, [313] = 313, [314] = 314, - [315] = 271, + [315] = 315, [316] = 316, - [317] = 317, + [317] = 308, [318] = 318, - [319] = 300, - [320] = 269, - [321] = 268, - [322] = 260, - [323] = 266, + [319] = 319, + [320] = 320, + [321] = 321, + [322] = 292, + [323] = 307, [324] = 324, - [325] = 294, - [326] = 309, - [327] = 327, - [328] = 270, - [329] = 313, - [330] = 281, + [325] = 325, + [326] = 326, + [327] = 276, + [328] = 275, + [329] = 274, + [330] = 262, [331] = 331, + [332] = 332, + [333] = 300, + [334] = 334, + [335] = 277, + [336] = 303, + [337] = 267, + [338] = 332, }; static bool ts_lex(TSLexer *lexer, TSStateId state) { @@ -1428,1664 +1456,1682 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { eof = lexer->eof(lexer); switch (state) { case 0: - if (eof) ADVANCE(145); - if (lookahead == '(') ADVANCE(267); - if (lookahead == ')') ADVANCE(268); - if (lookahead == ',') ADVANCE(264); - if (lookahead == '-') ADVANCE(35); - if (lookahead == '.') ADVANCE(270); - if (lookahead == '/') ADVANCE(148); - if (lookahead == ':') ADVANCE(147); - if (lookahead == ';') ADVANCE(150); - if (lookahead == '<') ADVANCE(319); - if (lookahead == '=') ADVANCE(273); - if (lookahead == '>') ADVANCE(320); - if (lookahead == '@') ADVANCE(149); - if (lookahead == '\\') SKIP(144) - if (lookahead == '_') ADVANCE(327); - if (lookahead == 'a') ADVANCE(116); - if (lookahead == 'b') ADVANCE(91); - if (lookahead == 'c') ADVANCE(70); - if (lookahead == 'e') ADVANCE(85); - if (lookahead == 'f') ADVANCE(27); - if (lookahead == 'i') ADVANCE(84); - if (lookahead == 'l') ADVANCE(71); - if (lookahead == 'o') ADVANCE(100); - if (lookahead == 'p') ADVANCE(36); - if (lookahead == 'r') ADVANCE(56); - if (lookahead == 's') ADVANCE(21); - if (lookahead == 't') ADVANCE(133); - if (lookahead == 'u') ADVANCE(22); - if (lookahead == 'v') ADVANCE(37); - if (lookahead == 'w') ADVANCE(72); - if (lookahead == '{') ADVANCE(256); - if (lookahead == '}') ADVANCE(257); + if (eof) ADVANCE(146); + ADVANCE_MAP( + '(', 269, + ')', 270, + ',', 266, + '-', 36, + '.', 272, + '/', 149, + ':', 148, + ';', 151, + '<', 321, + '=', 275, + '>', 322, + '@', 150, + ); + if (lookahead == '\\') SKIP(145); + if (lookahead == '_') ADVANCE(329); + if (lookahead == 'a') ADVANCE(118); + if (lookahead == 'b') ADVANCE(93); + if (lookahead == 'c') ADVANCE(71); + if (lookahead == 'e') ADVANCE(86); + if (lookahead == 'f') ADVANCE(28); + if (lookahead == 'i') ADVANCE(85); + if (lookahead == 'l') ADVANCE(72); + if (lookahead == 'o') ADVANCE(102); + if (lookahead == 'p') ADVANCE(37); + if (lookahead == 'r') ADVANCE(57); + if (lookahead == 's') ADVANCE(22); + if (lookahead == 't') ADVANCE(134); + if (lookahead == 'u') ADVANCE(23); + if (lookahead == 'v') ADVANCE(38); + if (lookahead == 'w') ADVANCE(73); + if (lookahead == '{') ADVANCE(258); + if (lookahead == '}') ADVANCE(259); if (('\t' <= lookahead && lookahead <= '\r') || - lookahead == ' ') SKIP(0) - if (('0' <= lookahead && lookahead <= '9')) ADVANCE(19); + lookahead == ' ') SKIP(0); + if (('0' <= lookahead && lookahead <= '9')) ADVANCE(20); END_STATE(); case 1: - if (lookahead == '\n') SKIP(11) + if (lookahead == '\n') SKIP(12); END_STATE(); case 2: - if (lookahead == '\n') SKIP(11) - if (lookahead == '\r') SKIP(1) + if (lookahead == '\n') SKIP(12); + if (lookahead == '\r') SKIP(1); END_STATE(); case 3: - if (lookahead == '\n') SKIP(13) + if (lookahead == '\n') SKIP(14); END_STATE(); case 4: - if (lookahead == '\n') SKIP(13) - if (lookahead == '\r') SKIP(3) + if (lookahead == '\n') SKIP(14); + if (lookahead == '\r') SKIP(3); END_STATE(); case 5: - if (lookahead == '\n') SKIP(14) + if (lookahead == '\n') SKIP(15); END_STATE(); case 6: - if (lookahead == '\n') SKIP(14) - if (lookahead == '\r') SKIP(5) + if (lookahead == '\n') SKIP(15); + if (lookahead == '\r') SKIP(5); END_STATE(); case 7: - if (lookahead == '\n') SKIP(15) + if (lookahead == '\n') SKIP(16); END_STATE(); case 8: - if (lookahead == '\n') SKIP(15) - if (lookahead == '\r') SKIP(7) + if (lookahead == '\n') SKIP(16); + if (lookahead == '\r') SKIP(7); END_STATE(); case 9: - if (lookahead == '\n') SKIP(12) + if (lookahead == '\n') SKIP(13); END_STATE(); case 10: - if (lookahead == '\n') SKIP(12) - if (lookahead == '\r') SKIP(9) + if (lookahead == '\n') SKIP(13); + if (lookahead == '\r') SKIP(9); END_STATE(); case 11: - if (lookahead == '%') ADVANCE(139); - if (lookahead == '(') ADVANCE(267); - if (lookahead == '/') ADVANCE(16); - if (lookahead == '>') ADVANCE(320); - if (lookahead == '\\') SKIP(2) - if (lookahead == '_') ADVANCE(327); - if (lookahead == 'b') ADVANCE(208); - if (lookahead == 'c') ADVANCE(191); - if (lookahead == 'f') ADVANCE(160); - if (lookahead == 'l') ADVANCE(192); - if (lookahead == 'o') ADVANCE(217); - if (lookahead == 'r') ADVANCE(186); - if (lookahead == 's') ADVANCE(154); - if (lookahead == 't') ADVANCE(243); - if (lookahead == 'u') ADVANCE(155); - if (('\t' <= lookahead && lookahead <= '\r') || - lookahead == ' ') SKIP(11) - if (('a' <= lookahead && lookahead <= 'z')) ADVANCE(251); - if (('A' <= lookahead && lookahead <= 'Z')) ADVANCE(250); + if (lookahead == '\r') ADVANCE(337); + if (lookahead == '\\') ADVANCE(335); + if (lookahead != 0) ADVANCE(336); END_STATE(); case 12: - if (lookahead == '%') ADVANCE(139); - if (lookahead == ')') ADVANCE(268); - if (lookahead == '/') ADVANCE(16); - if (lookahead == '\\') SKIP(10) - if (lookahead == '}') ADVANCE(257); + if (lookahead == '%') ADVANCE(141); + if (lookahead == '(') ADVANCE(269); + if (lookahead == '/') ADVANCE(17); + if (lookahead == '>') ADVANCE(322); + if (lookahead == '\\') SKIP(2); + if (lookahead == '_') ADVANCE(329); + if (lookahead == 'b') ADVANCE(210); + if (lookahead == 'c') ADVANCE(192); + if (lookahead == 'f') ADVANCE(161); + if (lookahead == 'l') ADVANCE(193); + if (lookahead == 'o') ADVANCE(219); + if (lookahead == 'r') ADVANCE(187); + if (lookahead == 's') ADVANCE(155); + if (lookahead == 't') ADVANCE(244); + if (lookahead == 'u') ADVANCE(156); if (('\t' <= lookahead && lookahead <= '\r') || - lookahead == ' ') SKIP(12) - if (('A' <= lookahead && lookahead <= 'Z')) ADVANCE(250); - if (('a' <= lookahead && lookahead <= 'z')) ADVANCE(251); + lookahead == ' ') SKIP(12); + if (('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); + if (('A' <= lookahead && lookahead <= 'Z')) ADVANCE(252); END_STATE(); case 13: - if (lookahead == '%') ADVANCE(139); - if (lookahead == '/') ADVANCE(16); - if (lookahead == ';') ADVANCE(150); - if (lookahead == '\\') SKIP(4) - if (lookahead == 'e') ADVANCE(203); - if (lookahead == 'f') ADVANCE(198); - if (lookahead == 'r') ADVANCE(181); - if (lookahead == 't') ADVANCE(249); - if (lookahead == 'u') ADVANCE(232); - if (lookahead == 'v') ADVANCE(172); - if (lookahead == '{') ADVANCE(256); - if (lookahead == '}') ADVANCE(257); + if (lookahead == '%') ADVANCE(141); + if (lookahead == ')') ADVANCE(270); + if (lookahead == '/') ADVANCE(17); + if (lookahead == '\\') SKIP(10); + if (lookahead == '}') ADVANCE(259); if (('\t' <= lookahead && lookahead <= '\r') || - lookahead == ' ') SKIP(13) - if (('a' <= lookahead && lookahead <= 'z')) ADVANCE(251); - if (('A' <= lookahead && lookahead <= 'Z')) ADVANCE(250); + lookahead == ' ') SKIP(13); + if (('A' <= lookahead && lookahead <= 'Z')) ADVANCE(252); + if (('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); END_STATE(); case 14: - if (lookahead == '%') ADVANCE(139); - if (lookahead == '/') ADVANCE(16); - if (lookahead == '\\') SKIP(6) - if (lookahead == 'c') ADVANCE(215); - if (lookahead == '}') ADVANCE(257); + if (lookahead == '%') ADVANCE(141); + if (lookahead == '/') ADVANCE(17); + if (lookahead == ';') ADVANCE(151); + if (lookahead == '\\') SKIP(4); + if (lookahead == 'e') ADVANCE(205); + if (lookahead == 'f') ADVANCE(199); + if (lookahead == 'r') ADVANCE(182); + if (lookahead == 't') ADVANCE(251); + if (lookahead == 'u') ADVANCE(234); + if (lookahead == 'v') ADVANCE(173); + if (lookahead == '{') ADVANCE(258); + if (lookahead == '}') ADVANCE(259); if (('\t' <= lookahead && lookahead <= '\r') || - lookahead == ' ') SKIP(14) - if (('a' <= lookahead && lookahead <= 'z')) ADVANCE(251); - if (('A' <= lookahead && lookahead <= 'Z')) ADVANCE(250); + lookahead == ' ') SKIP(14); + if (('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); + if (('A' <= lookahead && lookahead <= 'Z')) ADVANCE(252); END_STATE(); case 15: - if (lookahead == '%') ADVANCE(139); - if (lookahead == '/') ADVANCE(16); - if (lookahead == '\\') SKIP(8) - if (lookahead == 'f') ADVANCE(247); - if (lookahead == 'i') ADVANCE(206); + if (lookahead == '%') ADVANCE(141); + if (lookahead == '/') ADVANCE(17); + if (lookahead == '\\') SKIP(6); + if (lookahead == 'c') ADVANCE(217); + if (lookahead == '}') ADVANCE(259); if (('\t' <= lookahead && lookahead <= '\r') || - lookahead == ' ') SKIP(15) - if (('a' <= lookahead && lookahead <= 'z')) ADVANCE(251); - if (('A' <= lookahead && lookahead <= 'Z')) ADVANCE(250); + lookahead == ' ') SKIP(15); + if (('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); + if (('A' <= lookahead && lookahead <= 'Z')) ADVANCE(252); END_STATE(); case 16: - if (lookahead == '*') ADVANCE(18); - if (lookahead == '/') ADVANCE(331); + if (lookahead == '%') ADVANCE(141); + if (lookahead == '/') ADVANCE(17); + if (lookahead == '\\') SKIP(8); + if (lookahead == 'f') ADVANCE(249); + if (lookahead == 'i') ADVANCE(208); + if (('\t' <= lookahead && lookahead <= '\r') || + lookahead == ' ') SKIP(16); + if (('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); + if (('A' <= lookahead && lookahead <= 'Z')) ADVANCE(252); END_STATE(); case 17: - if (lookahead == '*') ADVANCE(17); - if (lookahead == '/') ADVANCE(330); - if (lookahead != 0) ADVANCE(18); + if (lookahead == '*') ADVANCE(19); + if (lookahead == '/') ADVANCE(336); END_STATE(); case 18: - if (lookahead == '*') ADVANCE(17); - if (lookahead != 0) ADVANCE(18); + if (lookahead == '*') ADVANCE(18); + if (lookahead == '/') ADVANCE(334); + if (lookahead != 0) ADVANCE(19); END_STATE(); case 19: - if (lookahead == '.') ADVANCE(138); - if (('0' <= lookahead && lookahead <= '9')) ADVANCE(19); + if (lookahead == '*') ADVANCE(18); + if (lookahead != 0) ADVANCE(19); END_STATE(); case 20: - if (lookahead == '.') ADVANCE(137); + if (lookahead == '.') ADVANCE(140); if (('0' <= lookahead && lookahead <= '9')) ADVANCE(20); END_STATE(); case 21: - if (lookahead == '1') ADVANCE(33); - if (lookahead == '3') ADVANCE(24); - if (lookahead == '6') ADVANCE(30); - if (lookahead == '8') ADVANCE(295); - if (lookahead == 't') ADVANCE(43); + if (lookahead == '.') ADVANCE(139); + if (('0' <= lookahead && lookahead <= '9')) ADVANCE(21); END_STATE(); case 22: if (lookahead == '1') ADVANCE(34); if (lookahead == '3') ADVANCE(25); if (lookahead == '6') ADVANCE(31); - if (lookahead == '8') ADVANCE(287); - if (lookahead == 's') ADVANCE(57); + if (lookahead == '8') ADVANCE(297); + if (lookahead == 't') ADVANCE(44); END_STATE(); case 23: - if (lookahead == '2') ADVANCE(303); + if (lookahead == '1') ADVANCE(35); + if (lookahead == '3') ADVANCE(26); + if (lookahead == '6') ADVANCE(32); + if (lookahead == '8') ADVANCE(289); + if (lookahead == 's') ADVANCE(58); END_STATE(); case 24: - if (lookahead == '2') ADVANCE(299); + if (lookahead == '2') ADVANCE(305); END_STATE(); case 25: - if (lookahead == '2') ADVANCE(291); + if (lookahead == '2') ADVANCE(301); END_STATE(); case 26: - if (lookahead == '2') ADVANCE(307); + if (lookahead == '2') ADVANCE(293); END_STATE(); case 27: - if (lookahead == '3') ADVANCE(23); - if (lookahead == '6') ADVANCE(29); - if (lookahead == 'l') ADVANCE(38); - if (lookahead == 'u') ADVANCE(87); + if (lookahead == '2') ADVANCE(309); END_STATE(); case 28: - if (lookahead == '3') ADVANCE(26); - if (lookahead == '6') ADVANCE(32); + if (lookahead == '3') ADVANCE(24); + if (lookahead == '6') ADVANCE(30); + if (lookahead == 'l') ADVANCE(39); + if (lookahead == 'u') ADVANCE(89); END_STATE(); case 29: - if (lookahead == '4') ADVANCE(305); + if (lookahead == '3') ADVANCE(27); + if (lookahead == '6') ADVANCE(33); END_STATE(); case 30: - if (lookahead == '4') ADVANCE(301); + if (lookahead == '4') ADVANCE(307); END_STATE(); case 31: - if (lookahead == '4') ADVANCE(293); + if (lookahead == '4') ADVANCE(303); END_STATE(); case 32: - if (lookahead == '4') ADVANCE(309); + if (lookahead == '4') ADVANCE(295); END_STATE(); case 33: - if (lookahead == '6') ADVANCE(297); + if (lookahead == '4') ADVANCE(311); END_STATE(); case 34: - if (lookahead == '6') ADVANCE(289); + if (lookahead == '6') ADVANCE(299); END_STATE(); case 35: - if (lookahead == '>') ADVANCE(269); + if (lookahead == '6') ADVANCE(291); END_STATE(); case 36: - if (lookahead == 'a') ADVANCE(45); + if (lookahead == '>') ADVANCE(271); END_STATE(); case 37: - if (lookahead == 'a') ADVANCE(110); + if (lookahead == 'a') ADVANCE(46); END_STATE(); case 38: - if (lookahead == 'a') ADVANCE(67); - if (lookahead == 'o') ADVANCE(42); + if (lookahead == 'a') ADVANCE(112); END_STATE(); case 39: if (lookahead == 'a') ADVANCE(68); + if (lookahead == 'o') ADVANCE(42); END_STATE(); case 40: - if (lookahead == 'a') ADVANCE(105); + if (lookahead == 'a') ADVANCE(69); END_STATE(); case 41: - if (lookahead == 'a') ADVANCE(89); + if (lookahead == 'a') ADVANCE(107); END_STATE(); case 42: - if (lookahead == 'a') ADVANCE(122); + if (lookahead == 'a') ADVANCE(124); END_STATE(); case 43: - if (lookahead == 'a') ADVANCE(128); - if (lookahead == 'r') ADVANCE(73); + if (lookahead == 'a') ADVANCE(91); END_STATE(); case 44: - if (lookahead == 'a') ADVANCE(50); + if (lookahead == 'a') ADVANCE(130); + if (lookahead == 'r') ADVANCE(76); END_STATE(); case 45: - if (lookahead == 'c') ADVANCE(77); + if (lookahead == 'a') ADVANCE(51); END_STATE(); case 46: - if (lookahead == 'c') ADVANCE(265); + if (lookahead == 'c') ADVANCE(78); END_STATE(); case 47: - if (lookahead == 'c') ADVANCE(284); + if (lookahead == 'c') ADVANCE(267); END_STATE(); case 48: - if (lookahead == 'c') ADVANCE(80); - if (lookahead == 't') ADVANCE(64); + if (lookahead == 'c') ADVANCE(286); END_STATE(); case 49: - if (lookahead == 'c') ADVANCE(62); + if (lookahead == 'c') ADVANCE(81); + if (lookahead == 't') ADVANCE(65); END_STATE(); case 50: if (lookahead == 'c') ADVANCE(63); END_STATE(); case 51: - if (lookahead == 'c') ADVANCE(130); + if (lookahead == 'c') ADVANCE(64); END_STATE(); case 52: - if (lookahead == 'c') ADVANCE(97); - if (lookahead == 's') ADVANCE(94); + if (lookahead == 'c') ADVANCE(132); END_STATE(); case 53: - if (lookahead == 'd') ADVANCE(255); + if (lookahead == 'c') ADVANCE(99); + if (lookahead == 's') ADVANCE(96); END_STATE(); case 54: - if (lookahead == 'd') ADVANCE(274); + if (lookahead == 'd') ADVANCE(257); END_STATE(); case 55: - if (lookahead == 'd') ADVANCE(60); + if (lookahead == 'd') ADVANCE(276); END_STATE(); case 56: - if (lookahead == 'e') ADVANCE(52); + if (lookahead == 'd') ADVANCE(61); END_STATE(); case 57: - if (lookahead == 'e') ADVANCE(151); + if (lookahead == 'e') ADVANCE(53); END_STATE(); case 58: - if (lookahead == 'e') ADVANCE(271); + if (lookahead == 'e') ADVANCE(152); END_STATE(); case 59: - if (lookahead == 'e') ADVANCE(317); + if (lookahead == 'e') ADVANCE(273); END_STATE(); case 60: - if (lookahead == 'e') ADVANCE(262); + if (lookahead == 'e') ADVANCE(319); END_STATE(); case 61: - if (lookahead == 'e') ADVANCE(146); + if (lookahead == 'e') ADVANCE(264); END_STATE(); case 62: - if (lookahead == 'e') ADVANCE(282); + if (lookahead == 'e') ADVANCE(147); END_STATE(); case 63: - if (lookahead == 'e') ADVANCE(260); + if (lookahead == 'e') ADVANCE(284); END_STATE(); case 64: - if (lookahead == 'e') ADVANCE(106); + if (lookahead == 'e') ADVANCE(262); END_STATE(); case 65: - if (lookahead == 'f') ADVANCE(44); + if (lookahead == 'e') ADVANCE(108); END_STATE(); case 66: - if (lookahead == 'g') ADVANCE(315); + if (lookahead == 'f') ADVANCE(45); END_STATE(); case 67: - if (lookahead == 'g') ADVANCE(117); + if (lookahead == 'g') ADVANCE(317); END_STATE(); case 68: - if (lookahead == 'g') ADVANCE(61); + if (lookahead == 'g') ADVANCE(119); END_STATE(); case 69: - if (lookahead == 'h') ADVANCE(263); + if (lookahead == 'g') ADVANCE(62); END_STATE(); case 70: - if (lookahead == 'h') ADVANCE(40); - if (lookahead == 'o') ADVANCE(90); + if (lookahead == 'h') ADVANCE(265); END_STATE(); case 71: - if (lookahead == 'i') ADVANCE(118); + if (lookahead == 'h') ADVANCE(41); + if (lookahead == 'o') ADVANCE(92); END_STATE(); case 72: if (lookahead == 'i') ADVANCE(120); - if (lookahead == 'o') ADVANCE(113); END_STATE(); case 73: - if (lookahead == 'i') ADVANCE(88); + if (lookahead == 'i') ADVANCE(122); + if (lookahead == 'o') ADVANCE(115); END_STATE(); case 74: - if (lookahead == 'i') ADVANCE(47); + if (lookahead == 'i') ADVANCE(48); END_STATE(); case 75: - if (lookahead == 'i') ADVANCE(95); + if (lookahead == 'i') ADVANCE(97); END_STATE(); case 76: - if (lookahead == 'i') ADVANCE(41); + if (lookahead == 'i') ADVANCE(90); END_STATE(); case 77: - if (lookahead == 'k') ADVANCE(39); + if (lookahead == 'i') ADVANCE(43); END_STATE(); case 78: - if (lookahead == 'l') ADVANCE(313); + if (lookahead == 'k') ADVANCE(40); END_STATE(); case 79: - if (lookahead == 'l') ADVANCE(53); + if (lookahead == 'l') ADVANCE(315); END_STATE(); case 80: - if (lookahead == 'l') ADVANCE(132); + if (lookahead == 'l') ADVANCE(54); END_STATE(); case 81: - if (lookahead == 'l') ADVANCE(59); + if (lookahead == 'l') ADVANCE(135); END_STATE(); case 82: - if (lookahead == 'l') ADVANCE(125); + if (lookahead == 'l') ADVANCE(60); END_STATE(); case 83: - if (lookahead == 'm') ADVANCE(280); + if (lookahead == 'l') ADVANCE(127); END_STATE(); case 84: - if (lookahead == 'm') ADVANCE(104); - if (lookahead == 'n') ADVANCE(48); + if (lookahead == 'm') ADVANCE(282); END_STATE(); case 85: - if (lookahead == 'n') ADVANCE(131); - if (lookahead == 'x') ADVANCE(101); + if (lookahead == 'm') ADVANCE(106); + if (lookahead == 'n') ADVANCE(49); END_STATE(); case 86: - if (lookahead == 'n') ADVANCE(323); + if (lookahead == 'n') ADVANCE(133); + if (lookahead == 'x') ADVANCE(103); END_STATE(); case 87: - if (lookahead == 'n') ADVANCE(46); + if (lookahead == 'n') ADVANCE(332); END_STATE(); case 88: - if (lookahead == 'n') ADVANCE(66); + if (lookahead == 'n') ADVANCE(325); END_STATE(); case 89: - if (lookahead == 'n') ADVANCE(126); + if (lookahead == 'n') ADVANCE(47); END_STATE(); case 90: - if (lookahead == 'n') ADVANCE(119); + if (lookahead == 'n') ADVANCE(67); END_STATE(); case 91: - if (lookahead == 'o') ADVANCE(92); + if (lookahead == 'n') ADVANCE(128); END_STATE(); case 92: - if (lookahead == 'o') ADVANCE(78); - if (lookahead == 'r') ADVANCE(108); + if (lookahead == 'n') ADVANCE(121); END_STATE(); case 93: - if (lookahead == 'o') ADVANCE(136); + if (lookahead == 'o') ADVANCE(94); END_STATE(); case 94: - if (lookahead == 'o') ADVANCE(135); - if (lookahead == 'u') ADVANCE(82); + if (lookahead == 'o') ADVANCE(79); + if (lookahead == 'r') ADVANCE(110); END_STATE(); case 95: - if (lookahead == 'o') ADVANCE(86); + if (lookahead == 'o') ADVANCE(138); END_STATE(); case 96: - if (lookahead == 'o') ADVANCE(114); + if (lookahead == 'o') ADVANCE(137); + if (lookahead == 'u') ADVANCE(83); END_STATE(); case 97: - if (lookahead == 'o') ADVANCE(109); + if (lookahead == 'o') ADVANCE(88); END_STATE(); case 98: - if (lookahead == 'o') ADVANCE(107); + if (lookahead == 'o') ADVANCE(116); END_STATE(); case 99: - if (lookahead == 'o') ADVANCE(115); + if (lookahead == 'o') ADVANCE(111); END_STATE(); case 100: - if (lookahead == 'p') ADVANCE(127); + if (lookahead == 'o') ADVANCE(109); END_STATE(); case 101: - if (lookahead == 'p') ADVANCE(96); + if (lookahead == 'o') ADVANCE(117); END_STATE(); case 102: - if (lookahead == 'p') ADVANCE(81); + if (lookahead == 'p') ADVANCE(129); + if (lookahead == 'w') ADVANCE(87); END_STATE(); case 103: - if (lookahead == 'p') ADVANCE(58); + if (lookahead == 'p') ADVANCE(98); END_STATE(); case 104: - if (lookahead == 'p') ADVANCE(99); + if (lookahead == 'p') ADVANCE(82); END_STATE(); case 105: - if (lookahead == 'r') ADVANCE(311); + if (lookahead == 'p') ADVANCE(59); END_STATE(); case 106: - if (lookahead == 'r') ADVANCE(65); + if (lookahead == 'p') ADVANCE(101); END_STATE(); case 107: - if (lookahead == 'r') ADVANCE(285); + if (lookahead == 'r') ADVANCE(313); END_STATE(); case 108: - if (lookahead == 'r') ADVANCE(93); + if (lookahead == 'r') ADVANCE(66); END_STATE(); case 109: - if (lookahead == 'r') ADVANCE(54); + if (lookahead == 'r') ADVANCE(287); END_STATE(); case 110: - if (lookahead == 'r') ADVANCE(76); + if (lookahead == 'r') ADVANCE(95); END_STATE(); case 111: - if (lookahead == 'r') ADVANCE(134); + if (lookahead == 'r') ADVANCE(55); END_STATE(); case 112: - if (lookahead == 'r') ADVANCE(49); + if (lookahead == 'r') ADVANCE(77); END_STATE(); case 113: - if (lookahead == 'r') ADVANCE(79); + if (lookahead == 'r') ADVANCE(136); END_STATE(); case 114: - if (lookahead == 'r') ADVANCE(123); + if (lookahead == 'r') ADVANCE(50); END_STATE(); case 115: - if (lookahead == 'r') ADVANCE(124); + if (lookahead == 'r') ADVANCE(80); END_STATE(); case 116: - if (lookahead == 's') ADVANCE(153); + if (lookahead == 'r') ADVANCE(125); END_STATE(); case 117: - if (lookahead == 's') ADVANCE(276); + if (lookahead == 'r') ADVANCE(126); END_STATE(); case 118: - if (lookahead == 's') ADVANCE(121); + if (lookahead == 's') ADVANCE(154); END_STATE(); case 119: - if (lookahead == 's') ADVANCE(129); + if (lookahead == 's') ADVANCE(278); END_STATE(); case 120: - if (lookahead == 't') ADVANCE(69); + if (lookahead == 's') ADVANCE(123); END_STATE(); case 121: - if (lookahead == 't') ADVANCE(321); + if (lookahead == 's') ADVANCE(131); END_STATE(); case 122: - if (lookahead == 't') ADVANCE(28); + if (lookahead == 't') ADVANCE(70); END_STATE(); case 123: - if (lookahead == 't') ADVANCE(258); + if (lookahead == 't') ADVANCE(323); END_STATE(); case 124: - if (lookahead == 't') ADVANCE(259); + if (lookahead == 't') ADVANCE(29); END_STATE(); case 125: - if (lookahead == 't') ADVANCE(325); + if (lookahead == 't') ADVANCE(260); END_STATE(); case 126: - if (lookahead == 't') ADVANCE(278); + if (lookahead == 't') ADVANCE(261); END_STATE(); case 127: - if (lookahead == 't') ADVANCE(75); + if (lookahead == 't') ADVANCE(327); END_STATE(); case 128: - if (lookahead == 't') ADVANCE(74); + if (lookahead == 't') ADVANCE(280); END_STATE(); case 129: - if (lookahead == 't') ADVANCE(111); + if (lookahead == 't') ADVANCE(75); END_STATE(); case 130: - if (lookahead == 't') ADVANCE(98); + if (lookahead == 't') ADVANCE(74); END_STATE(); case 131: - if (lookahead == 'u') ADVANCE(83); + if (lookahead == 't') ADVANCE(113); END_STATE(); case 132: - if (lookahead == 'u') ADVANCE(55); + if (lookahead == 't') ADVANCE(100); END_STATE(); case 133: - if (lookahead == 'u') ADVANCE(102); - if (lookahead == 'y') ADVANCE(103); + if (lookahead == 'u') ADVANCE(84); END_STATE(); case 134: - if (lookahead == 'u') ADVANCE(51); + if (lookahead == 'u') ADVANCE(104); + if (lookahead == 'y') ADVANCE(105); END_STATE(); case 135: - if (lookahead == 'u') ADVANCE(112); + if (lookahead == 'u') ADVANCE(56); END_STATE(); case 136: - if (lookahead == 'w') ADVANCE(328); + if (lookahead == 'u') ADVANCE(52); END_STATE(); case 137: - if (('0' <= lookahead && lookahead <= '9')) ADVANCE(252); + if (lookahead == 'u') ADVANCE(114); END_STATE(); case 138: - if (('0' <= lookahead && lookahead <= '9')) ADVANCE(20); + if (lookahead == 'w') ADVANCE(330); END_STATE(); case 139: - if (('A' <= lookahead && lookahead <= 'Z')) ADVANCE(250); - if (('a' <= lookahead && lookahead <= 'z')) ADVANCE(251); + if (('0' <= lookahead && lookahead <= '9')) ADVANCE(254); END_STATE(); case 140: - if (lookahead == '-' || - ('0' <= lookahead && lookahead <= '9') || - ('A' <= lookahead && lookahead <= 'Z') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(254); + if (('0' <= lookahead && lookahead <= '9')) ADVANCE(21); END_STATE(); case 141: + if (('A' <= lookahead && lookahead <= 'Z')) ADVANCE(252); + if (('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); + END_STATE(); + case 142: if (lookahead == '-' || ('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); - END_STATE(); - case 142: - if (lookahead != 0 && - lookahead != '\r' && - lookahead != '\\') ADVANCE(331); - if (lookahead == '\r') ADVANCE(333); - if (lookahead == '\\') ADVANCE(332); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(256); END_STATE(); case 143: - if (eof) ADVANCE(145); - if (lookahead == '\n') SKIP(0) + if (lookahead == '-' || + ('0' <= lookahead && lookahead <= '9') || + ('A' <= lookahead && lookahead <= 'Z') || + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(255); END_STATE(); case 144: - if (eof) ADVANCE(145); - if (lookahead == '\n') SKIP(0) - if (lookahead == '\r') SKIP(143) + if (eof) ADVANCE(146); + if (lookahead == '\n') SKIP(0); END_STATE(); case 145: - ACCEPT_TOKEN(ts_builtin_sym_end); + if (eof) ADVANCE(146); + if (lookahead == '\n') SKIP(0); + if (lookahead == '\r') SKIP(144); END_STATE(); case 146: - ACCEPT_TOKEN(anon_sym_package); + ACCEPT_TOKEN(ts_builtin_sym_end); END_STATE(); case 147: - ACCEPT_TOKEN(anon_sym_COLON); + ACCEPT_TOKEN(anon_sym_package); END_STATE(); case 148: - ACCEPT_TOKEN(anon_sym_SLASH); - if (lookahead == '*') ADVANCE(18); - if (lookahead == '/') ADVANCE(331); + ACCEPT_TOKEN(anon_sym_COLON); END_STATE(); case 149: - ACCEPT_TOKEN(anon_sym_AT); + ACCEPT_TOKEN(anon_sym_SLASH); + if (lookahead == '*') ADVANCE(19); + if (lookahead == '/') ADVANCE(336); END_STATE(); case 150: - ACCEPT_TOKEN(anon_sym_SEMI); + ACCEPT_TOKEN(anon_sym_AT); END_STATE(); case 151: - ACCEPT_TOKEN(anon_sym_use); + ACCEPT_TOKEN(anon_sym_SEMI); END_STATE(); case 152: ACCEPT_TOKEN(anon_sym_use); - if (lookahead == '-') ADVANCE(139); - if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(251); END_STATE(); case 153: - ACCEPT_TOKEN(anon_sym_as); + ACCEPT_TOKEN(anon_sym_use); + if (lookahead == '-') ADVANCE(141); + if (('0' <= lookahead && lookahead <= '9') || + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); END_STATE(); case 154: - ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(139); - if (lookahead == '1') ADVANCE(166); - if (lookahead == '3') ADVANCE(157); - if (lookahead == '6') ADVANCE(163); - if (lookahead == '8') ADVANCE(296); - if (lookahead == 't') ADVANCE(226); - if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(251); + ACCEPT_TOKEN(anon_sym_as); END_STATE(); case 155: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(139); + if (lookahead == '-') ADVANCE(141); if (lookahead == '1') ADVANCE(167); if (lookahead == '3') ADVANCE(158); if (lookahead == '6') ADVANCE(164); - if (lookahead == '8') ADVANCE(288); + if (lookahead == '8') ADVANCE(298); + if (lookahead == 't') ADVANCE(228); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(251); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); END_STATE(); case 156: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(139); - if (lookahead == '2') ADVANCE(304); + if (lookahead == '-') ADVANCE(141); + if (lookahead == '1') ADVANCE(168); + if (lookahead == '3') ADVANCE(159); + if (lookahead == '6') ADVANCE(165); + if (lookahead == '8') ADVANCE(290); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(251); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); END_STATE(); case 157: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(139); - if (lookahead == '2') ADVANCE(300); + if (lookahead == '-') ADVANCE(141); + if (lookahead == '2') ADVANCE(306); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(251); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); END_STATE(); case 158: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(139); - if (lookahead == '2') ADVANCE(292); + if (lookahead == '-') ADVANCE(141); + if (lookahead == '2') ADVANCE(302); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(251); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); END_STATE(); case 159: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(139); - if (lookahead == '2') ADVANCE(308); + if (lookahead == '-') ADVANCE(141); + if (lookahead == '2') ADVANCE(294); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(251); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); END_STATE(); case 160: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(139); - if (lookahead == '3') ADVANCE(156); - if (lookahead == '6') ADVANCE(162); - if (lookahead == 'l') ADVANCE(211); + if (lookahead == '-') ADVANCE(141); + if (lookahead == '2') ADVANCE(310); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(251); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); END_STATE(); case 161: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(139); - if (lookahead == '3') ADVANCE(159); - if (lookahead == '6') ADVANCE(165); + if (lookahead == '-') ADVANCE(141); + if (lookahead == '3') ADVANCE(157); + if (lookahead == '6') ADVANCE(163); + if (lookahead == 'l') ADVANCE(213); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(251); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); END_STATE(); case 162: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(139); - if (lookahead == '4') ADVANCE(306); + if (lookahead == '-') ADVANCE(141); + if (lookahead == '3') ADVANCE(160); + if (lookahead == '6') ADVANCE(166); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(251); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); END_STATE(); case 163: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(139); - if (lookahead == '4') ADVANCE(302); + if (lookahead == '-') ADVANCE(141); + if (lookahead == '4') ADVANCE(308); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(251); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); END_STATE(); case 164: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(139); - if (lookahead == '4') ADVANCE(294); + if (lookahead == '-') ADVANCE(141); + if (lookahead == '4') ADVANCE(304); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(251); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); END_STATE(); case 165: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(139); - if (lookahead == '4') ADVANCE(310); + if (lookahead == '-') ADVANCE(141); + if (lookahead == '4') ADVANCE(296); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(251); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); END_STATE(); case 166: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(139); - if (lookahead == '6') ADVANCE(298); + if (lookahead == '-') ADVANCE(141); + if (lookahead == '4') ADVANCE(312); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(251); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); END_STATE(); case 167: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(139); - if (lookahead == '6') ADVANCE(290); + if (lookahead == '-') ADVANCE(141); + if (lookahead == '6') ADVANCE(300); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(251); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); END_STATE(); case 168: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(139); - if (lookahead == 'a') ADVANCE(190); + if (lookahead == '-') ADVANCE(141); + if (lookahead == '6') ADVANCE(292); if (('0' <= lookahead && lookahead <= '9') || - ('b' <= lookahead && lookahead <= 'z')) ADVANCE(251); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); END_STATE(); case 169: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(139); - if (lookahead == 'a') ADVANCE(235); + if (lookahead == '-') ADVANCE(141); + if (lookahead == 'a') ADVANCE(191); if (('0' <= lookahead && lookahead <= '9') || - ('b' <= lookahead && lookahead <= 'z')) ADVANCE(251); + ('b' <= lookahead && lookahead <= 'z')) ADVANCE(253); END_STATE(); case 170: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(139); - if (lookahead == 'a') ADVANCE(220); + if (lookahead == '-') ADVANCE(141); + if (lookahead == 'a') ADVANCE(237); if (('0' <= lookahead && lookahead <= '9') || - ('b' <= lookahead && lookahead <= 'z')) ADVANCE(251); + ('b' <= lookahead && lookahead <= 'z')) ADVANCE(253); END_STATE(); case 171: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(139); - if (lookahead == 'a') ADVANCE(205); + if (lookahead == '-') ADVANCE(141); + if (lookahead == 'a') ADVANCE(222); if (('0' <= lookahead && lookahead <= '9') || - ('b' <= lookahead && lookahead <= 'z')) ADVANCE(251); + ('b' <= lookahead && lookahead <= 'z')) ADVANCE(253); END_STATE(); case 172: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(139); - if (lookahead == 'a') ADVANCE(227); + if (lookahead == '-') ADVANCE(141); + if (lookahead == 'a') ADVANCE(207); if (('0' <= lookahead && lookahead <= '9') || - ('b' <= lookahead && lookahead <= 'z')) ADVANCE(251); + ('b' <= lookahead && lookahead <= 'z')) ADVANCE(253); END_STATE(); case 173: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(139); - if (lookahead == 'a') ADVANCE(178); + if (lookahead == '-') ADVANCE(141); + if (lookahead == 'a') ADVANCE(229); if (('0' <= lookahead && lookahead <= '9') || - ('b' <= lookahead && lookahead <= 'z')) ADVANCE(251); + ('b' <= lookahead && lookahead <= 'z')) ADVANCE(253); END_STATE(); case 174: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(139); - if (lookahead == 'c') ADVANCE(266); + if (lookahead == '-') ADVANCE(141); + if (lookahead == 'a') ADVANCE(179); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(251); + ('b' <= lookahead && lookahead <= 'z')) ADVANCE(253); END_STATE(); case 175: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(139); - if (lookahead == 'c') ADVANCE(214); - if (lookahead == 's') ADVANCE(213); + if (lookahead == '-') ADVANCE(141); + if (lookahead == 'c') ADVANCE(268); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(251); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); END_STATE(); case 176: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(139); - if (lookahead == 'c') ADVANCE(184); + if (lookahead == '-') ADVANCE(141); + if (lookahead == 'c') ADVANCE(216); + if (lookahead == 's') ADVANCE(215); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(251); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); END_STATE(); case 177: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(139); - if (lookahead == 'c') ADVANCE(241); + if (lookahead == '-') ADVANCE(141); + if (lookahead == 'c') ADVANCE(185); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(251); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); END_STATE(); case 178: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(139); - if (lookahead == 'c') ADVANCE(185); + if (lookahead == '-') ADVANCE(141); + if (lookahead == 'c') ADVANCE(243); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(251); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); END_STATE(); case 179: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(139); - if (lookahead == 'd') ADVANCE(275); + if (lookahead == '-') ADVANCE(141); + if (lookahead == 'c') ADVANCE(186); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(251); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); END_STATE(); case 180: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(139); - if (lookahead == 'e') ADVANCE(318); + if (lookahead == '-') ADVANCE(141); + if (lookahead == 'd') ADVANCE(277); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(251); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); END_STATE(); case 181: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(139); - if (lookahead == 'e') ADVANCE(175); + if (lookahead == '-') ADVANCE(141); + if (lookahead == 'e') ADVANCE(320); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(251); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); END_STATE(); case 182: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(139); - if (lookahead == 'e') ADVANCE(152); + if (lookahead == '-') ADVANCE(141); + if (lookahead == 'e') ADVANCE(176); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(251); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); END_STATE(); case 183: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(139); - if (lookahead == 'e') ADVANCE(272); + if (lookahead == '-') ADVANCE(141); + if (lookahead == 'e') ADVANCE(153); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(251); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); END_STATE(); case 184: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(139); - if (lookahead == 'e') ADVANCE(283); + if (lookahead == '-') ADVANCE(141); + if (lookahead == 'e') ADVANCE(274); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(251); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); END_STATE(); case 185: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(139); - if (lookahead == 'e') ADVANCE(261); + if (lookahead == '-') ADVANCE(141); + if (lookahead == 'e') ADVANCE(285); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(251); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); END_STATE(); case 186: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(139); - if (lookahead == 'e') ADVANCE(230); + if (lookahead == '-') ADVANCE(141); + if (lookahead == 'e') ADVANCE(263); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(251); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); END_STATE(); case 187: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(139); - if (lookahead == 'e') ADVANCE(224); + if (lookahead == '-') ADVANCE(141); + if (lookahead == 'e') ADVANCE(232); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(251); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); END_STATE(); case 188: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(139); - if (lookahead == 'f') ADVANCE(173); + if (lookahead == '-') ADVANCE(141); + if (lookahead == 'e') ADVANCE(226); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(251); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); END_STATE(); case 189: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(139); - if (lookahead == 'g') ADVANCE(316); + if (lookahead == '-') ADVANCE(141); + if (lookahead == 'f') ADVANCE(174); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(251); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); END_STATE(); case 190: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(139); - if (lookahead == 'g') ADVANCE(229); + if (lookahead == '-') ADVANCE(141); + if (lookahead == 'g') ADVANCE(318); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(251); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); END_STATE(); case 191: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(139); - if (lookahead == 'h') ADVANCE(170); + if (lookahead == '-') ADVANCE(141); + if (lookahead == 'g') ADVANCE(231); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(251); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); END_STATE(); case 192: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(139); - if (lookahead == 'i') ADVANCE(231); + if (lookahead == '-') ADVANCE(141); + if (lookahead == 'h') ADVANCE(171); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(251); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); END_STATE(); case 193: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(139); - if (lookahead == 'i') ADVANCE(201); + if (lookahead == '-') ADVANCE(141); + if (lookahead == 'i') ADVANCE(233); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(251); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); END_STATE(); case 194: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(139); - if (lookahead == 'i') ADVANCE(212); + if (lookahead == '-') ADVANCE(141); + if (lookahead == 'i') ADVANCE(203); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(251); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); END_STATE(); case 195: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(139); - if (lookahead == 'i') ADVANCE(171); + if (lookahead == '-') ADVANCE(141); + if (lookahead == 'i') ADVANCE(214); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(251); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); END_STATE(); case 196: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(139); - if (lookahead == 'l') ADVANCE(314); + if (lookahead == '-') ADVANCE(141); + if (lookahead == 'i') ADVANCE(172); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(251); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); END_STATE(); case 197: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(139); - if (lookahead == 'l') ADVANCE(180); + if (lookahead == '-') ADVANCE(141); + if (lookahead == 'l') ADVANCE(316); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(251); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); END_STATE(); case 198: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(139); - if (lookahead == 'l') ADVANCE(168); + if (lookahead == '-') ADVANCE(141); + if (lookahead == 'l') ADVANCE(181); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(251); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); END_STATE(); case 199: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(139); - if (lookahead == 'l') ADVANCE(236); + if (lookahead == '-') ADVANCE(141); + if (lookahead == 'l') ADVANCE(169); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(251); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); END_STATE(); case 200: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(139); - if (lookahead == 'm') ADVANCE(281); + if (lookahead == '-') ADVANCE(141); + if (lookahead == 'l') ADVANCE(238); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(251); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); END_STATE(); case 201: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(139); - if (lookahead == 'n') ADVANCE(189); + if (lookahead == '-') ADVANCE(141); + if (lookahead == 'm') ADVANCE(283); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(251); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); END_STATE(); case 202: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(139); - if (lookahead == 'n') ADVANCE(324); + if (lookahead == '-') ADVANCE(141); + if (lookahead == 'n') ADVANCE(333); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(251); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); END_STATE(); case 203: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(139); - if (lookahead == 'n') ADVANCE(242); + if (lookahead == '-') ADVANCE(141); + if (lookahead == 'n') ADVANCE(190); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(251); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); END_STATE(); case 204: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(139); - if (lookahead == 'n') ADVANCE(174); + if (lookahead == '-') ADVANCE(141); + if (lookahead == 'n') ADVANCE(326); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(251); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); END_STATE(); case 205: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(139); - if (lookahead == 'n') ADVANCE(237); + if (lookahead == '-') ADVANCE(141); + if (lookahead == 'n') ADVANCE(245); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(251); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); END_STATE(); case 206: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(139); - if (lookahead == 'n') ADVANCE(240); + if (lookahead == '-') ADVANCE(141); + if (lookahead == 'n') ADVANCE(175); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(251); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); END_STATE(); case 207: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(139); - if (lookahead == 'n') ADVANCE(233); + if (lookahead == '-') ADVANCE(141); + if (lookahead == 'n') ADVANCE(239); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(251); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); END_STATE(); case 208: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(139); - if (lookahead == 'o') ADVANCE(209); + if (lookahead == '-') ADVANCE(141); + if (lookahead == 'n') ADVANCE(242); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(251); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); END_STATE(); case 209: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(139); - if (lookahead == 'o') ADVANCE(196); - if (lookahead == 'r') ADVANCE(225); + if (lookahead == '-') ADVANCE(141); + if (lookahead == 'n') ADVANCE(235); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(251); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); END_STATE(); case 210: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(139); - if (lookahead == 'o') ADVANCE(248); + if (lookahead == '-') ADVANCE(141); + if (lookahead == 'o') ADVANCE(211); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(251); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); END_STATE(); case 211: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(139); - if (lookahead == 'o') ADVANCE(169); + if (lookahead == '-') ADVANCE(141); + if (lookahead == 'o') ADVANCE(197); + if (lookahead == 'r') ADVANCE(227); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(251); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); END_STATE(); case 212: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(139); - if (lookahead == 'o') ADVANCE(202); + if (lookahead == '-') ADVANCE(141); + if (lookahead == 'o') ADVANCE(250); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(251); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); END_STATE(); case 213: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(139); - if (lookahead == 'o') ADVANCE(246); + if (lookahead == '-') ADVANCE(141); + if (lookahead == 'o') ADVANCE(170); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(251); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); END_STATE(); case 214: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(139); - if (lookahead == 'o') ADVANCE(221); + if (lookahead == '-') ADVANCE(141); + if (lookahead == 'o') ADVANCE(204); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(251); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); END_STATE(); case 215: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(139); - if (lookahead == 'o') ADVANCE(207); + if (lookahead == '-') ADVANCE(141); + if (lookahead == 'o') ADVANCE(248); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(251); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); END_STATE(); case 216: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(139); + if (lookahead == '-') ADVANCE(141); if (lookahead == 'o') ADVANCE(223); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(251); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); END_STATE(); case 217: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(139); - if (lookahead == 'p') ADVANCE(238); + if (lookahead == '-') ADVANCE(141); + if (lookahead == 'o') ADVANCE(209); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(251); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); END_STATE(); case 218: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(139); - if (lookahead == 'p') ADVANCE(197); + if (lookahead == '-') ADVANCE(141); + if (lookahead == 'o') ADVANCE(225); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(251); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); END_STATE(); case 219: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(139); - if (lookahead == 'p') ADVANCE(183); + if (lookahead == '-') ADVANCE(141); + if (lookahead == 'p') ADVANCE(240); + if (lookahead == 'w') ADVANCE(202); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(251); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); END_STATE(); case 220: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(139); - if (lookahead == 'r') ADVANCE(312); + if (lookahead == '-') ADVANCE(141); + if (lookahead == 'p') ADVANCE(198); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(251); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); END_STATE(); case 221: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(139); - if (lookahead == 'r') ADVANCE(179); + if (lookahead == '-') ADVANCE(141); + if (lookahead == 'p') ADVANCE(184); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(251); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); END_STATE(); case 222: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(139); - if (lookahead == 'r') ADVANCE(176); + if (lookahead == '-') ADVANCE(141); + if (lookahead == 'r') ADVANCE(314); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(251); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); END_STATE(); case 223: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(139); - if (lookahead == 'r') ADVANCE(286); + if (lookahead == '-') ADVANCE(141); + if (lookahead == 'r') ADVANCE(180); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(251); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); END_STATE(); case 224: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(139); - if (lookahead == 'r') ADVANCE(188); + if (lookahead == '-') ADVANCE(141); + if (lookahead == 'r') ADVANCE(177); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(251); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); END_STATE(); case 225: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(139); - if (lookahead == 'r') ADVANCE(210); + if (lookahead == '-') ADVANCE(141); + if (lookahead == 'r') ADVANCE(288); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(251); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); END_STATE(); case 226: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(139); - if (lookahead == 'r') ADVANCE(193); + if (lookahead == '-') ADVANCE(141); + if (lookahead == 'r') ADVANCE(189); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(251); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); END_STATE(); case 227: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(139); - if (lookahead == 'r') ADVANCE(195); + if (lookahead == '-') ADVANCE(141); + if (lookahead == 'r') ADVANCE(212); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(251); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); END_STATE(); case 228: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(139); - if (lookahead == 'r') ADVANCE(244); + if (lookahead == '-') ADVANCE(141); + if (lookahead == 'r') ADVANCE(194); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(251); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); END_STATE(); case 229: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(139); - if (lookahead == 's') ADVANCE(277); + if (lookahead == '-') ADVANCE(141); + if (lookahead == 'r') ADVANCE(196); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(251); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); END_STATE(); case 230: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(139); - if (lookahead == 's') ADVANCE(245); + if (lookahead == '-') ADVANCE(141); + if (lookahead == 'r') ADVANCE(246); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(251); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); END_STATE(); case 231: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(139); - if (lookahead == 's') ADVANCE(234); + if (lookahead == '-') ADVANCE(141); + if (lookahead == 's') ADVANCE(279); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(251); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); END_STATE(); case 232: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(139); - if (lookahead == 's') ADVANCE(182); + if (lookahead == '-') ADVANCE(141); + if (lookahead == 's') ADVANCE(247); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(251); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); END_STATE(); case 233: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(139); - if (lookahead == 's') ADVANCE(239); + if (lookahead == '-') ADVANCE(141); + if (lookahead == 's') ADVANCE(236); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(251); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); END_STATE(); case 234: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(139); - if (lookahead == 't') ADVANCE(322); + if (lookahead == '-') ADVANCE(141); + if (lookahead == 's') ADVANCE(183); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(251); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); END_STATE(); case 235: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(139); - if (lookahead == 't') ADVANCE(161); + if (lookahead == '-') ADVANCE(141); + if (lookahead == 's') ADVANCE(241); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(251); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); END_STATE(); case 236: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(139); - if (lookahead == 't') ADVANCE(326); + if (lookahead == '-') ADVANCE(141); + if (lookahead == 't') ADVANCE(324); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(251); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); END_STATE(); case 237: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(139); - if (lookahead == 't') ADVANCE(279); + if (lookahead == '-') ADVANCE(141); + if (lookahead == 't') ADVANCE(162); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(251); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); END_STATE(); case 238: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(139); - if (lookahead == 't') ADVANCE(194); + if (lookahead == '-') ADVANCE(141); + if (lookahead == 't') ADVANCE(328); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(251); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); END_STATE(); case 239: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(139); - if (lookahead == 't') ADVANCE(228); + if (lookahead == '-') ADVANCE(141); + if (lookahead == 't') ADVANCE(281); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(251); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); END_STATE(); case 240: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(139); - if (lookahead == 't') ADVANCE(187); + if (lookahead == '-') ADVANCE(141); + if (lookahead == 't') ADVANCE(195); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(251); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); END_STATE(); case 241: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(139); - if (lookahead == 't') ADVANCE(216); + if (lookahead == '-') ADVANCE(141); + if (lookahead == 't') ADVANCE(230); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(251); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); END_STATE(); case 242: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(139); - if (lookahead == 'u') ADVANCE(200); + if (lookahead == '-') ADVANCE(141); + if (lookahead == 't') ADVANCE(188); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(251); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); END_STATE(); case 243: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(139); - if (lookahead == 'u') ADVANCE(218); + if (lookahead == '-') ADVANCE(141); + if (lookahead == 't') ADVANCE(218); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(251); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); END_STATE(); case 244: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(139); - if (lookahead == 'u') ADVANCE(177); + if (lookahead == '-') ADVANCE(141); + if (lookahead == 'u') ADVANCE(220); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(251); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); END_STATE(); case 245: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(139); - if (lookahead == 'u') ADVANCE(199); + if (lookahead == '-') ADVANCE(141); + if (lookahead == 'u') ADVANCE(201); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(251); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); END_STATE(); case 246: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(139); - if (lookahead == 'u') ADVANCE(222); + if (lookahead == '-') ADVANCE(141); + if (lookahead == 'u') ADVANCE(178); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(251); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); END_STATE(); case 247: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(139); - if (lookahead == 'u') ADVANCE(204); + if (lookahead == '-') ADVANCE(141); + if (lookahead == 'u') ADVANCE(200); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(251); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); END_STATE(); case 248: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(139); - if (lookahead == 'w') ADVANCE(329); + if (lookahead == '-') ADVANCE(141); + if (lookahead == 'u') ADVANCE(224); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(251); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); END_STATE(); case 249: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(139); - if (lookahead == 'y') ADVANCE(219); + if (lookahead == '-') ADVANCE(141); + if (lookahead == 'u') ADVANCE(206); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(251); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); END_STATE(); case 250: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(139); + if (lookahead == '-') ADVANCE(141); + if (lookahead == 'w') ADVANCE(331); if (('0' <= lookahead && lookahead <= '9') || - ('A' <= lookahead && lookahead <= 'Z')) ADVANCE(250); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); END_STATE(); case 251: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(139); + if (lookahead == '-') ADVANCE(141); + if (lookahead == 'y') ADVANCE(221); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(251); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); END_STATE(); case 252: - ACCEPT_TOKEN(sym_valid_semver); - if (lookahead == '+') ADVANCE(140); + ACCEPT_TOKEN(sym_id); if (lookahead == '-') ADVANCE(141); - if (('0' <= lookahead && lookahead <= '9')) ADVANCE(252); + if (('0' <= lookahead && lookahead <= '9') || + ('A' <= lookahead && lookahead <= 'Z')) ADVANCE(252); END_STATE(); case 253: + ACCEPT_TOKEN(sym_id); + if (lookahead == '-') ADVANCE(141); + if (('0' <= lookahead && lookahead <= '9') || + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); + END_STATE(); + case 254: + ACCEPT_TOKEN(sym_valid_semver); + if (lookahead == '+') ADVANCE(142); + if (lookahead == '-') ADVANCE(143); + if (('0' <= lookahead && lookahead <= '9')) ADVANCE(254); + END_STATE(); + case 255: ACCEPT_TOKEN(sym_valid_semver); - if (lookahead == '+') ADVANCE(140); - if (lookahead == '.') ADVANCE(141); + if (lookahead == '+') ADVANCE(142); + if (lookahead == '.') ADVANCE(143); if (lookahead == '-' || ('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(255); END_STATE(); - case 254: + case 256: ACCEPT_TOKEN(sym_valid_semver); - if (lookahead == '.') ADVANCE(140); + if (lookahead == '.') ADVANCE(142); if (lookahead == '-' || ('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(254); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(256); END_STATE(); - case 255: + case 257: ACCEPT_TOKEN(anon_sym_world); END_STATE(); - case 256: + case 258: ACCEPT_TOKEN(anon_sym_LBRACE); END_STATE(); - case 257: + case 259: ACCEPT_TOKEN(anon_sym_RBRACE); END_STATE(); - case 258: + case 260: ACCEPT_TOKEN(anon_sym_export); END_STATE(); - case 259: + case 261: ACCEPT_TOKEN(anon_sym_import); END_STATE(); - case 260: + case 262: ACCEPT_TOKEN(anon_sym_interface); END_STATE(); - case 261: + case 263: ACCEPT_TOKEN(anon_sym_interface); - if (lookahead == '-') ADVANCE(139); + if (lookahead == '-') ADVANCE(141); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(251); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); END_STATE(); - case 262: + case 264: ACCEPT_TOKEN(anon_sym_include); END_STATE(); - case 263: + case 265: ACCEPT_TOKEN(anon_sym_with); END_STATE(); - case 264: + case 266: ACCEPT_TOKEN(anon_sym_COMMA); END_STATE(); - case 265: + case 267: ACCEPT_TOKEN(anon_sym_func); END_STATE(); - case 266: + case 268: ACCEPT_TOKEN(anon_sym_func); - if (lookahead == '-') ADVANCE(139); + if (lookahead == '-') ADVANCE(141); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(251); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); END_STATE(); - case 267: + case 269: ACCEPT_TOKEN(anon_sym_LPAREN); END_STATE(); - case 268: + case 270: ACCEPT_TOKEN(anon_sym_RPAREN); END_STATE(); - case 269: + case 271: ACCEPT_TOKEN(anon_sym_DASH_GT); END_STATE(); - case 270: + case 272: ACCEPT_TOKEN(anon_sym_DOT); END_STATE(); - case 271: + case 273: ACCEPT_TOKEN(anon_sym_type); END_STATE(); - case 272: + case 274: ACCEPT_TOKEN(anon_sym_type); - if (lookahead == '-') ADVANCE(139); + if (lookahead == '-') ADVANCE(141); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(251); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); END_STATE(); - case 273: + case 275: ACCEPT_TOKEN(anon_sym_EQ); END_STATE(); - case 274: + case 276: ACCEPT_TOKEN(anon_sym_record); END_STATE(); - case 275: + case 277: ACCEPT_TOKEN(anon_sym_record); - if (lookahead == '-') ADVANCE(139); + if (lookahead == '-') ADVANCE(141); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(251); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); END_STATE(); - case 276: + case 278: ACCEPT_TOKEN(anon_sym_flags); END_STATE(); - case 277: + case 279: ACCEPT_TOKEN(anon_sym_flags); - if (lookahead == '-') ADVANCE(139); + if (lookahead == '-') ADVANCE(141); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(251); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); END_STATE(); - case 278: + case 280: ACCEPT_TOKEN(anon_sym_variant); END_STATE(); - case 279: + case 281: ACCEPT_TOKEN(anon_sym_variant); - if (lookahead == '-') ADVANCE(139); + if (lookahead == '-') ADVANCE(141); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(251); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); END_STATE(); - case 280: + case 282: ACCEPT_TOKEN(anon_sym_enum); END_STATE(); - case 281: + case 283: ACCEPT_TOKEN(anon_sym_enum); - if (lookahead == '-') ADVANCE(139); + if (lookahead == '-') ADVANCE(141); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(251); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); END_STATE(); - case 282: + case 284: ACCEPT_TOKEN(anon_sym_resource); END_STATE(); - case 283: + case 285: ACCEPT_TOKEN(anon_sym_resource); - if (lookahead == '-') ADVANCE(139); + if (lookahead == '-') ADVANCE(141); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(251); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); END_STATE(); - case 284: + case 286: ACCEPT_TOKEN(anon_sym_static); END_STATE(); - case 285: + case 287: ACCEPT_TOKEN(anon_sym_constructor); END_STATE(); - case 286: + case 288: ACCEPT_TOKEN(anon_sym_constructor); - if (lookahead == '-') ADVANCE(139); + if (lookahead == '-') ADVANCE(141); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(251); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); END_STATE(); - case 287: + case 289: ACCEPT_TOKEN(anon_sym_u8); END_STATE(); - case 288: + case 290: ACCEPT_TOKEN(anon_sym_u8); - if (lookahead == '-') ADVANCE(139); + if (lookahead == '-') ADVANCE(141); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(251); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); END_STATE(); - case 289: + case 291: ACCEPT_TOKEN(anon_sym_u16); END_STATE(); - case 290: + case 292: ACCEPT_TOKEN(anon_sym_u16); - if (lookahead == '-') ADVANCE(139); + if (lookahead == '-') ADVANCE(141); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(251); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); END_STATE(); - case 291: + case 293: ACCEPT_TOKEN(anon_sym_u32); END_STATE(); - case 292: + case 294: ACCEPT_TOKEN(anon_sym_u32); - if (lookahead == '-') ADVANCE(139); + if (lookahead == '-') ADVANCE(141); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(251); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); END_STATE(); - case 293: + case 295: ACCEPT_TOKEN(anon_sym_u64); END_STATE(); - case 294: + case 296: ACCEPT_TOKEN(anon_sym_u64); - if (lookahead == '-') ADVANCE(139); + if (lookahead == '-') ADVANCE(141); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(251); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); END_STATE(); - case 295: + case 297: ACCEPT_TOKEN(anon_sym_s8); END_STATE(); - case 296: + case 298: ACCEPT_TOKEN(anon_sym_s8); - if (lookahead == '-') ADVANCE(139); + if (lookahead == '-') ADVANCE(141); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(251); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); END_STATE(); - case 297: + case 299: ACCEPT_TOKEN(anon_sym_s16); END_STATE(); - case 298: + case 300: ACCEPT_TOKEN(anon_sym_s16); - if (lookahead == '-') ADVANCE(139); + if (lookahead == '-') ADVANCE(141); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(251); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); END_STATE(); - case 299: + case 301: ACCEPT_TOKEN(anon_sym_s32); END_STATE(); - case 300: + case 302: ACCEPT_TOKEN(anon_sym_s32); - if (lookahead == '-') ADVANCE(139); + if (lookahead == '-') ADVANCE(141); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(251); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); END_STATE(); - case 301: + case 303: ACCEPT_TOKEN(anon_sym_s64); END_STATE(); - case 302: + case 304: ACCEPT_TOKEN(anon_sym_s64); - if (lookahead == '-') ADVANCE(139); + if (lookahead == '-') ADVANCE(141); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(251); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); END_STATE(); - case 303: + case 305: ACCEPT_TOKEN(anon_sym_f32); END_STATE(); - case 304: + case 306: ACCEPT_TOKEN(anon_sym_f32); - if (lookahead == '-') ADVANCE(139); + if (lookahead == '-') ADVANCE(141); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(251); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); END_STATE(); - case 305: + case 307: ACCEPT_TOKEN(anon_sym_f64); END_STATE(); - case 306: + case 308: ACCEPT_TOKEN(anon_sym_f64); - if (lookahead == '-') ADVANCE(139); + if (lookahead == '-') ADVANCE(141); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(251); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); END_STATE(); - case 307: + case 309: ACCEPT_TOKEN(anon_sym_float32); END_STATE(); - case 308: + case 310: ACCEPT_TOKEN(anon_sym_float32); - if (lookahead == '-') ADVANCE(139); + if (lookahead == '-') ADVANCE(141); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(251); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); END_STATE(); - case 309: + case 311: ACCEPT_TOKEN(anon_sym_float64); END_STATE(); - case 310: + case 312: ACCEPT_TOKEN(anon_sym_float64); - if (lookahead == '-') ADVANCE(139); + if (lookahead == '-') ADVANCE(141); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(251); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); END_STATE(); - case 311: + case 313: ACCEPT_TOKEN(anon_sym_char); END_STATE(); - case 312: + case 314: ACCEPT_TOKEN(anon_sym_char); - if (lookahead == '-') ADVANCE(139); + if (lookahead == '-') ADVANCE(141); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(251); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); END_STATE(); - case 313: + case 315: ACCEPT_TOKEN(anon_sym_bool); END_STATE(); - case 314: + case 316: ACCEPT_TOKEN(anon_sym_bool); - if (lookahead == '-') ADVANCE(139); + if (lookahead == '-') ADVANCE(141); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(251); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); END_STATE(); - case 315: + case 317: ACCEPT_TOKEN(anon_sym_string); END_STATE(); - case 316: + case 318: ACCEPT_TOKEN(anon_sym_string); - if (lookahead == '-') ADVANCE(139); + if (lookahead == '-') ADVANCE(141); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(251); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); END_STATE(); - case 317: + case 319: ACCEPT_TOKEN(anon_sym_tuple); END_STATE(); - case 318: + case 320: ACCEPT_TOKEN(anon_sym_tuple); - if (lookahead == '-') ADVANCE(139); + if (lookahead == '-') ADVANCE(141); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(251); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); END_STATE(); - case 319: + case 321: ACCEPT_TOKEN(anon_sym_LT); END_STATE(); - case 320: + case 322: ACCEPT_TOKEN(anon_sym_GT); END_STATE(); - case 321: + case 323: ACCEPT_TOKEN(anon_sym_list); END_STATE(); - case 322: + case 324: ACCEPT_TOKEN(anon_sym_list); - if (lookahead == '-') ADVANCE(139); + if (lookahead == '-') ADVANCE(141); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(251); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); END_STATE(); - case 323: + case 325: ACCEPT_TOKEN(anon_sym_option); END_STATE(); - case 324: + case 326: ACCEPT_TOKEN(anon_sym_option); - if (lookahead == '-') ADVANCE(139); + if (lookahead == '-') ADVANCE(141); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(251); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); END_STATE(); - case 325: + case 327: ACCEPT_TOKEN(anon_sym_result); END_STATE(); - case 326: + case 328: ACCEPT_TOKEN(anon_sym_result); - if (lookahead == '-') ADVANCE(139); + if (lookahead == '-') ADVANCE(141); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(251); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); END_STATE(); - case 327: + case 329: ACCEPT_TOKEN(anon_sym__); END_STATE(); - case 328: + case 330: ACCEPT_TOKEN(anon_sym_borrow); END_STATE(); - case 329: + case 331: ACCEPT_TOKEN(anon_sym_borrow); - if (lookahead == '-') ADVANCE(139); + if (lookahead == '-') ADVANCE(141); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(251); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); END_STATE(); - case 330: + case 332: + ACCEPT_TOKEN(anon_sym_own); + END_STATE(); + case 333: + ACCEPT_TOKEN(anon_sym_own); + if (lookahead == '-') ADVANCE(141); + if (('0' <= lookahead && lookahead <= '9') || + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); + END_STATE(); + case 334: ACCEPT_TOKEN(sym_comment); END_STATE(); - case 331: + case 335: ACCEPT_TOKEN(sym_comment); - if (lookahead == '\\') ADVANCE(142); - if (lookahead != 0 && - lookahead != '\n') ADVANCE(331); + if (lookahead == '\r') ADVANCE(337); + if (lookahead == '\\') ADVANCE(335); + if (lookahead != 0) ADVANCE(336); END_STATE(); - case 332: + case 336: ACCEPT_TOKEN(sym_comment); + if (lookahead == '\\') ADVANCE(11); if (lookahead != 0 && - lookahead != '\r' && - lookahead != '\\') ADVANCE(331); - if (lookahead == '\r') ADVANCE(333); - if (lookahead == '\\') ADVANCE(332); + lookahead != '\n') ADVANCE(336); END_STATE(); - case 333: + case 337: ACCEPT_TOKEN(sym_comment); - if (lookahead != 0 && - lookahead != '\\') ADVANCE(331); - if (lookahead == '\\') ADVANCE(142); + if (lookahead == '\\') ADVANCE(11); + if (lookahead != 0) ADVANCE(336); END_STATE(); default: return false; @@ -3095,30 +3141,30 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { static const TSLexMode ts_lex_modes[STATE_COUNT] = { [0] = {.lex_state = 0}, [1] = {.lex_state = 0}, - [2] = {.lex_state = 11}, - [3] = {.lex_state = 11}, - [4] = {.lex_state = 11}, - [5] = {.lex_state = 11}, - [6] = {.lex_state = 11}, - [7] = {.lex_state = 11}, - [8] = {.lex_state = 11}, - [9] = {.lex_state = 11}, - [10] = {.lex_state = 11}, - [11] = {.lex_state = 11}, - [12] = {.lex_state = 11}, - [13] = {.lex_state = 11}, - [14] = {.lex_state = 11}, - [15] = {.lex_state = 11}, + [2] = {.lex_state = 12}, + [3] = {.lex_state = 12}, + [4] = {.lex_state = 12}, + [5] = {.lex_state = 12}, + [6] = {.lex_state = 12}, + [7] = {.lex_state = 12}, + [8] = {.lex_state = 12}, + [9] = {.lex_state = 12}, + [10] = {.lex_state = 12}, + [11] = {.lex_state = 12}, + [12] = {.lex_state = 12}, + [13] = {.lex_state = 12}, + [14] = {.lex_state = 12}, + [15] = {.lex_state = 12}, [16] = {.lex_state = 0}, [17] = {.lex_state = 0}, [18] = {.lex_state = 0}, - [19] = {.lex_state = 13}, - [20] = {.lex_state = 13}, - [21] = {.lex_state = 13}, + [19] = {.lex_state = 14}, + [20] = {.lex_state = 14}, + [21] = {.lex_state = 14}, [22] = {.lex_state = 0}, [23] = {.lex_state = 0}, [24] = {.lex_state = 0}, - [25] = {.lex_state = 13}, + [25] = {.lex_state = 14}, [26] = {.lex_state = 0}, [27] = {.lex_state = 0}, [28] = {.lex_state = 0}, @@ -3158,60 +3204,60 @@ static const TSLexMode ts_lex_modes[STATE_COUNT] = { [62] = {.lex_state = 0}, [63] = {.lex_state = 0}, [64] = {.lex_state = 0}, - [65] = {.lex_state = 0}, - [66] = {.lex_state = 13}, - [67] = {.lex_state = 13}, - [68] = {.lex_state = 13}, - [69] = {.lex_state = 13}, - [70] = {.lex_state = 13}, - [71] = {.lex_state = 13}, - [72] = {.lex_state = 13}, - [73] = {.lex_state = 13}, - [74] = {.lex_state = 13}, - [75] = {.lex_state = 13}, - [76] = {.lex_state = 13}, - [77] = {.lex_state = 13}, - [78] = {.lex_state = 13}, - [79] = {.lex_state = 13}, - [80] = {.lex_state = 13}, - [81] = {.lex_state = 13}, - [82] = {.lex_state = 13}, - [83] = {.lex_state = 13}, - [84] = {.lex_state = 13}, - [85] = {.lex_state = 13}, - [86] = {.lex_state = 13}, - [87] = {.lex_state = 13}, - [88] = {.lex_state = 13}, - [89] = {.lex_state = 13}, - [90] = {.lex_state = 13}, - [91] = {.lex_state = 13}, - [92] = {.lex_state = 13}, - [93] = {.lex_state = 13}, - [94] = {.lex_state = 13}, - [95] = {.lex_state = 13}, - [96] = {.lex_state = 13}, + [65] = {.lex_state = 14}, + [66] = {.lex_state = 14}, + [67] = {.lex_state = 14}, + [68] = {.lex_state = 14}, + [69] = {.lex_state = 14}, + [70] = {.lex_state = 14}, + [71] = {.lex_state = 14}, + [72] = {.lex_state = 14}, + [73] = {.lex_state = 14}, + [74] = {.lex_state = 14}, + [75] = {.lex_state = 14}, + [76] = {.lex_state = 14}, + [77] = {.lex_state = 14}, + [78] = {.lex_state = 14}, + [79] = {.lex_state = 14}, + [80] = {.lex_state = 14}, + [81] = {.lex_state = 14}, + [82] = {.lex_state = 14}, + [83] = {.lex_state = 14}, + [84] = {.lex_state = 14}, + [85] = {.lex_state = 14}, + [86] = {.lex_state = 14}, + [87] = {.lex_state = 14}, + [88] = {.lex_state = 14}, + [89] = {.lex_state = 14}, + [90] = {.lex_state = 14}, + [91] = {.lex_state = 14}, + [92] = {.lex_state = 14}, + [93] = {.lex_state = 14}, + [94] = {.lex_state = 14}, + [95] = {.lex_state = 14}, + [96] = {.lex_state = 0}, [97] = {.lex_state = 0}, [98] = {.lex_state = 0}, [99] = {.lex_state = 0}, [100] = {.lex_state = 0}, [101] = {.lex_state = 0}, [102] = {.lex_state = 0}, - [103] = {.lex_state = 0}, - [104] = {.lex_state = 14}, + [103] = {.lex_state = 15}, + [104] = {.lex_state = 15}, [105] = {.lex_state = 0}, - [106] = {.lex_state = 14}, - [107] = {.lex_state = 14}, - [108] = {.lex_state = 0}, - [109] = {.lex_state = 14}, - [110] = {.lex_state = 14}, + [106] = {.lex_state = 15}, + [107] = {.lex_state = 0}, + [108] = {.lex_state = 15}, + [109] = {.lex_state = 15}, + [110] = {.lex_state = 0}, [111] = {.lex_state = 0}, [112] = {.lex_state = 0}, - [113] = {.lex_state = 15}, - [114] = {.lex_state = 0}, - [115] = {.lex_state = 0}, + [113] = {.lex_state = 0}, + [114] = {.lex_state = 16}, + [115] = {.lex_state = 16}, [116] = {.lex_state = 0}, [117] = {.lex_state = 0}, - [118] = {.lex_state = 15}, + [118] = {.lex_state = 0}, [119] = {.lex_state = 0}, [120] = {.lex_state = 0}, [121] = {.lex_state = 0}, @@ -3225,206 +3271,213 @@ static const TSLexMode ts_lex_modes[STATE_COUNT] = { [129] = {.lex_state = 0}, [130] = {.lex_state = 0}, [131] = {.lex_state = 0}, - [132] = {.lex_state = 12}, - [133] = {.lex_state = 0}, - [134] = {.lex_state = 12}, - [135] = {.lex_state = 0}, + [132] = {.lex_state = 0}, + [133] = {.lex_state = 13}, + [134] = {.lex_state = 0}, + [135] = {.lex_state = 13}, [136] = {.lex_state = 0}, [137] = {.lex_state = 0}, [138] = {.lex_state = 0}, - [139] = {.lex_state = 12}, - [140] = {.lex_state = 0}, - [141] = {.lex_state = 0}, + [139] = {.lex_state = 0}, + [140] = {.lex_state = 13}, + [141] = {.lex_state = 13}, [142] = {.lex_state = 0}, - [143] = {.lex_state = 12}, + [143] = {.lex_state = 13}, [144] = {.lex_state = 0}, - [145] = {.lex_state = 12}, - [146] = {.lex_state = 12}, - [147] = {.lex_state = 12}, - [148] = {.lex_state = 0}, - [149] = {.lex_state = 14}, + [145] = {.lex_state = 13}, + [146] = {.lex_state = 0}, + [147] = {.lex_state = 0}, + [148] = {.lex_state = 13}, + [149] = {.lex_state = 13}, [150] = {.lex_state = 0}, - [151] = {.lex_state = 12}, - [152] = {.lex_state = 0}, + [151] = {.lex_state = 13}, + [152] = {.lex_state = 15}, [153] = {.lex_state = 0}, [154] = {.lex_state = 0}, [155] = {.lex_state = 0}, [156] = {.lex_state = 0}, - [157] = {.lex_state = 12}, + [157] = {.lex_state = 13}, [158] = {.lex_state = 0}, - [159] = {.lex_state = 12}, + [159] = {.lex_state = 0}, [160] = {.lex_state = 0}, - [161] = {.lex_state = 0}, + [161] = {.lex_state = 13}, [162] = {.lex_state = 0}, - [163] = {.lex_state = 12}, - [164] = {.lex_state = 12}, + [163] = {.lex_state = 13}, + [164] = {.lex_state = 0}, [165] = {.lex_state = 0}, [166] = {.lex_state = 0}, [167] = {.lex_state = 0}, [168] = {.lex_state = 0}, [169] = {.lex_state = 0}, - [170] = {.lex_state = 0}, - [171] = {.lex_state = 12}, - [172] = {.lex_state = 12}, - [173] = {.lex_state = 12}, - [174] = {.lex_state = 12}, - [175] = {.lex_state = 14}, - [176] = {.lex_state = 0}, - [177] = {.lex_state = 12}, - [178] = {.lex_state = 12}, - [179] = {.lex_state = 12}, - [180] = {.lex_state = 14}, - [181] = {.lex_state = 12}, + [170] = {.lex_state = 13}, + [171] = {.lex_state = 13}, + [172] = {.lex_state = 0}, + [173] = {.lex_state = 0}, + [174] = {.lex_state = 13}, + [175] = {.lex_state = 15}, + [176] = {.lex_state = 13}, + [177] = {.lex_state = 13}, + [178] = {.lex_state = 13}, + [179] = {.lex_state = 13}, + [180] = {.lex_state = 0}, + [181] = {.lex_state = 15}, [182] = {.lex_state = 0}, [183] = {.lex_state = 0}, - [184] = {.lex_state = 12}, - [185] = {.lex_state = 12}, + [184] = {.lex_state = 13}, + [185] = {.lex_state = 13}, [186] = {.lex_state = 0}, [187] = {.lex_state = 0}, [188] = {.lex_state = 0}, - [189] = {.lex_state = 12}, + [189] = {.lex_state = 13}, [190] = {.lex_state = 0}, - [191] = {.lex_state = 12}, + [191] = {.lex_state = 0}, [192] = {.lex_state = 0}, - [193] = {.lex_state = 12}, - [194] = {.lex_state = 0}, - [195] = {.lex_state = 0}, - [196] = {.lex_state = 14}, - [197] = {.lex_state = 12}, + [193] = {.lex_state = 0}, + [194] = {.lex_state = 13}, + [195] = {.lex_state = 13}, + [196] = {.lex_state = 0}, + [197] = {.lex_state = 13}, [198] = {.lex_state = 0}, - [199] = {.lex_state = 12}, - [200] = {.lex_state = 12}, - [201] = {.lex_state = 12}, - [202] = {.lex_state = 0}, - [203] = {.lex_state = 0}, - [204] = {.lex_state = 12}, + [199] = {.lex_state = 13}, + [200] = {.lex_state = 15}, + [201] = {.lex_state = 13}, + [202] = {.lex_state = 13}, + [203] = {.lex_state = 13}, + [204] = {.lex_state = 0}, [205] = {.lex_state = 0}, [206] = {.lex_state = 0}, - [207] = {.lex_state = 0}, - [208] = {.lex_state = 12}, + [207] = {.lex_state = 13}, + [208] = {.lex_state = 13}, [209] = {.lex_state = 0}, [210] = {.lex_state = 0}, - [211] = {.lex_state = 0}, - [212] = {.lex_state = 0}, - [213] = {.lex_state = 12}, - [214] = {.lex_state = 12}, - [215] = {.lex_state = 12}, - [216] = {.lex_state = 12}, + [211] = {.lex_state = 13}, + [212] = {.lex_state = 13}, + [213] = {.lex_state = 13}, + [214] = {.lex_state = 0}, + [215] = {.lex_state = 13}, + [216] = {.lex_state = 13}, [217] = {.lex_state = 0}, - [218] = {.lex_state = 12}, + [218] = {.lex_state = 0}, [219] = {.lex_state = 0}, - [220] = {.lex_state = 12}, - [221] = {.lex_state = 0}, - [222] = {.lex_state = 12}, + [220] = {.lex_state = 13}, + [221] = {.lex_state = 13}, + [222] = {.lex_state = 13}, [223] = {.lex_state = 0}, [224] = {.lex_state = 0}, - [225] = {.lex_state = 0}, - [226] = {.lex_state = 0}, + [225] = {.lex_state = 13}, + [226] = {.lex_state = 13}, [227] = {.lex_state = 0}, - [228] = {.lex_state = 12}, - [229] = {.lex_state = 12}, - [230] = {.lex_state = 0}, + [228] = {.lex_state = 0}, + [229] = {.lex_state = 13}, + [230] = {.lex_state = 13}, [231] = {.lex_state = 0}, [232] = {.lex_state = 0}, [233] = {.lex_state = 0}, [234] = {.lex_state = 0}, - [235] = {.lex_state = 12}, - [236] = {.lex_state = 12}, + [235] = {.lex_state = 0}, + [236] = {.lex_state = 0}, [237] = {.lex_state = 0}, - [238] = {.lex_state = 12}, + [238] = {.lex_state = 0}, [239] = {.lex_state = 0}, [240] = {.lex_state = 0}, - [241] = {.lex_state = 12}, + [241] = {.lex_state = 0}, [242] = {.lex_state = 0}, - [243] = {.lex_state = 0}, + [243] = {.lex_state = 13}, [244] = {.lex_state = 0}, [245] = {.lex_state = 0}, [246] = {.lex_state = 0}, - [247] = {.lex_state = 0}, - [248] = {.lex_state = 0}, - [249] = {.lex_state = 12}, - [250] = {.lex_state = 12}, - [251] = {.lex_state = 12}, + [247] = {.lex_state = 13}, + [248] = {.lex_state = 13}, + [249] = {.lex_state = 0}, + [250] = {.lex_state = 0}, + [251] = {.lex_state = 0}, [252] = {.lex_state = 0}, - [253] = {.lex_state = 0}, - [254] = {.lex_state = 12}, + [253] = {.lex_state = 13}, + [254] = {.lex_state = 0}, [255] = {.lex_state = 0}, - [256] = {.lex_state = 0}, - [257] = {.lex_state = 12}, - [258] = {.lex_state = 12}, + [256] = {.lex_state = 13}, + [257] = {.lex_state = 13}, + [258] = {.lex_state = 13}, [259] = {.lex_state = 0}, - [260] = {.lex_state = 12}, + [260] = {.lex_state = 0}, [261] = {.lex_state = 0}, - [262] = {.lex_state = 0}, + [262] = {.lex_state = 13}, [263] = {.lex_state = 0}, [264] = {.lex_state = 0}, - [265] = {.lex_state = 12}, - [266] = {.lex_state = 12}, + [265] = {.lex_state = 0}, + [266] = {.lex_state = 0}, [267] = {.lex_state = 0}, - [268] = {.lex_state = 12}, - [269] = {.lex_state = 12}, - [270] = {.lex_state = 12}, + [268] = {.lex_state = 0}, + [269] = {.lex_state = 0}, + [270] = {.lex_state = 0}, [271] = {.lex_state = 0}, - [272] = {.lex_state = 12}, - [273] = {.lex_state = 0}, - [274] = {.lex_state = 0}, - [275] = {.lex_state = 0}, - [276] = {.lex_state = 0}, - [277] = {.lex_state = 0}, + [272] = {.lex_state = 13}, + [273] = {.lex_state = 13}, + [274] = {.lex_state = 13}, + [275] = {.lex_state = 13}, + [276] = {.lex_state = 13}, + [277] = {.lex_state = 13}, [278] = {.lex_state = 0}, - [279] = {.lex_state = 12}, - [280] = {.lex_state = 12}, + [279] = {.lex_state = 0}, + [280] = {.lex_state = 0}, [281] = {.lex_state = 0}, - [282] = {.lex_state = 12}, + [282] = {.lex_state = 0}, [283] = {.lex_state = 0}, - [284] = {.lex_state = 12}, + [284] = {.lex_state = 0}, [285] = {.lex_state = 0}, - [286] = {.lex_state = 0}, - [287] = {.lex_state = 0}, + [286] = {.lex_state = 13}, + [287] = {.lex_state = 13}, [288] = {.lex_state = 0}, - [289] = {.lex_state = 0}, - [290] = {.lex_state = 12}, + [289] = {.lex_state = 13}, + [290] = {.lex_state = 0}, [291] = {.lex_state = 0}, [292] = {.lex_state = 0}, [293] = {.lex_state = 0}, [294] = {.lex_state = 0}, [295] = {.lex_state = 0}, [296] = {.lex_state = 0}, - [297] = {.lex_state = 0}, - [298] = {.lex_state = 12}, - [299] = {.lex_state = 12}, + [297] = {.lex_state = 13}, + [298] = {.lex_state = 0}, + [299] = {.lex_state = 13}, [300] = {.lex_state = 0}, - [301] = {.lex_state = 0}, + [301] = {.lex_state = 13}, [302] = {.lex_state = 0}, [303] = {.lex_state = 0}, [304] = {.lex_state = 0}, [305] = {.lex_state = 0}, - [306] = {.lex_state = 12}, + [306] = {.lex_state = 13}, [307] = {.lex_state = 0}, [308] = {.lex_state = 0}, [309] = {.lex_state = 0}, [310] = {.lex_state = 0}, [311] = {.lex_state = 0}, [312] = {.lex_state = 0}, - [313] = {.lex_state = 0}, + [313] = {.lex_state = 13}, [314] = {.lex_state = 0}, [315] = {.lex_state = 0}, - [316] = {.lex_state = 12}, + [316] = {.lex_state = 0}, [317] = {.lex_state = 0}, [318] = {.lex_state = 0}, - [319] = {.lex_state = 0}, - [320] = {.lex_state = 12}, - [321] = {.lex_state = 12}, - [322] = {.lex_state = 12}, - [323] = {.lex_state = 12}, + [319] = {.lex_state = 13}, + [320] = {.lex_state = 0}, + [321] = {.lex_state = 13}, + [322] = {.lex_state = 0}, + [323] = {.lex_state = 0}, [324] = {.lex_state = 0}, [325] = {.lex_state = 0}, [326] = {.lex_state = 0}, - [327] = {.lex_state = 0}, - [328] = {.lex_state = 12}, - [329] = {.lex_state = 0}, - [330] = {.lex_state = 0}, + [327] = {.lex_state = 13}, + [328] = {.lex_state = 13}, + [329] = {.lex_state = 13}, + [330] = {.lex_state = 13}, [331] = {.lex_state = 0}, + [332] = {.lex_state = 0}, + [333] = {.lex_state = 0}, + [334] = {.lex_state = 0}, + [335] = {.lex_state = 13}, + [336] = {.lex_state = 0}, + [337] = {.lex_state = 0}, + [338] = {.lex_state = 0}, }; static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { @@ -3484,15 +3537,16 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_result] = ACTIONS(1), [anon_sym__] = ACTIONS(1), [anon_sym_borrow] = ACTIONS(1), + [anon_sym_own] = ACTIONS(1), [sym_comment] = ACTIONS(3), }, [1] = { - [sym_source_file] = STATE(289), + [sym_source_file] = STATE(296), [sym_package_decl] = STATE(98), - [sym_toplevel_use_item] = STATE(101), - [sym_world_item] = STATE(101), - [sym_interface_item] = STATE(101), - [aux_sym_source_file_repeat1] = STATE(101), + [sym_toplevel_use_item] = STATE(96), + [sym_world_item] = STATE(96), + [sym_interface_item] = STATE(96), + [aux_sym_source_file_repeat1] = STATE(96), [ts_builtin_sym_end] = ACTIONS(5), [anon_sym_package] = ACTIONS(7), [anon_sym_use] = ACTIONS(9), @@ -3503,15 +3557,15 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { }; static const uint16_t ts_small_parse_table[] = { - [0] = 11, + [0] = 14, ACTIONS(3), 1, sym_comment, ACTIONS(15), 1, sym_id, - ACTIONS(17), 1, - anon_sym_LPAREN, - ACTIONS(21), 1, + ACTIONS(19), 1, anon_sym_tuple, + ACTIONS(21), 1, + anon_sym_GT, ACTIONS(23), 1, anon_sym_list, ACTIONS(25), 1, @@ -3520,15 +3574,22 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_result, ACTIONS(29), 1, anon_sym_borrow, - STATE(317), 1, + ACTIONS(31), 1, + anon_sym_own, + STATE(192), 1, sym_ty, - STATE(111), 5, + STATE(326), 1, + sym_tuple_list, + STATE(111), 2, + sym__borrow_handle, + sym__owned_handle, + STATE(110), 5, sym_tuple, sym_list, sym_option, sym_result, sym_handle, - ACTIONS(19), 15, + ACTIONS(17), 15, anon_sym_u8, anon_sym_u16, anon_sym_u32, @@ -3544,12 +3605,12 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_char, anon_sym_bool, anon_sym_string, - [52] = 11, + [62] = 13, ACTIONS(3), 1, sym_comment, ACTIONS(15), 1, sym_id, - ACTIONS(21), 1, + ACTIONS(19), 1, anon_sym_tuple, ACTIONS(23), 1, anon_sym_list, @@ -3560,16 +3621,21 @@ static const uint16_t ts_small_parse_table[] = { ACTIONS(29), 1, anon_sym_borrow, ACTIONS(31), 1, - anon_sym_GT, - STATE(252), 1, + anon_sym_own, + ACTIONS(33), 1, + anon_sym_LPAREN, + STATE(304), 1, sym_ty, - STATE(111), 5, + STATE(111), 2, + sym__borrow_handle, + sym__owned_handle, + STATE(110), 5, sym_tuple, sym_list, sym_option, sym_result, sym_handle, - ACTIONS(19), 15, + ACTIONS(17), 15, anon_sym_u8, anon_sym_u16, anon_sym_u32, @@ -3585,12 +3651,12 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_char, anon_sym_bool, anon_sym_string, - [104] = 11, + [121] = 13, ACTIONS(3), 1, sym_comment, ACTIONS(15), 1, sym_id, - ACTIONS(21), 1, + ACTIONS(19), 1, anon_sym_tuple, ACTIONS(23), 1, anon_sym_list, @@ -3600,17 +3666,22 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_result, ACTIONS(29), 1, anon_sym_borrow, - STATE(187), 1, + ACTIONS(31), 1, + anon_sym_own, + ACTIONS(35), 1, + anon_sym_GT, + STATE(259), 1, sym_ty, - STATE(286), 1, - sym_tuple_list, - STATE(111), 5, + STATE(111), 2, + sym__borrow_handle, + sym__owned_handle, + STATE(110), 5, sym_tuple, sym_list, sym_option, sym_result, sym_handle, - ACTIONS(19), 15, + ACTIONS(17), 15, anon_sym_u8, anon_sym_u16, anon_sym_u32, @@ -3626,12 +3697,12 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_char, anon_sym_bool, anon_sym_string, - [156] = 11, + [180] = 13, ACTIONS(3), 1, sym_comment, ACTIONS(15), 1, sym_id, - ACTIONS(21), 1, + ACTIONS(19), 1, anon_sym_tuple, ACTIONS(23), 1, anon_sym_list, @@ -3641,17 +3712,22 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_result, ACTIONS(29), 1, anon_sym_borrow, - ACTIONS(33), 1, + ACTIONS(31), 1, + anon_sym_own, + ACTIONS(37), 1, anon_sym_GT, - STATE(252), 1, + STATE(259), 1, sym_ty, - STATE(111), 5, + STATE(111), 2, + sym__borrow_handle, + sym__owned_handle, + STATE(110), 5, sym_tuple, sym_list, sym_option, sym_result, sym_handle, - ACTIONS(19), 15, + ACTIONS(17), 15, anon_sym_u8, anon_sym_u16, anon_sym_u32, @@ -3667,12 +3743,12 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_char, anon_sym_bool, anon_sym_string, - [208] = 11, + [239] = 13, ACTIONS(3), 1, sym_comment, ACTIONS(15), 1, sym_id, - ACTIONS(21), 1, + ACTIONS(19), 1, anon_sym_tuple, ACTIONS(23), 1, anon_sym_list, @@ -3682,17 +3758,22 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_result, ACTIONS(29), 1, anon_sym_borrow, - ACTIONS(35), 1, + ACTIONS(31), 1, + anon_sym_own, + ACTIONS(39), 1, anon_sym__, - STATE(207), 1, + STATE(214), 1, sym_ty, - STATE(111), 5, + STATE(111), 2, + sym__borrow_handle, + sym__owned_handle, + STATE(110), 5, sym_tuple, sym_list, sym_option, sym_result, sym_handle, - ACTIONS(19), 15, + ACTIONS(17), 15, anon_sym_u8, anon_sym_u16, anon_sym_u32, @@ -3708,12 +3789,12 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_char, anon_sym_bool, anon_sym_string, - [260] = 10, + [298] = 12, ACTIONS(3), 1, sym_comment, ACTIONS(15), 1, sym_id, - ACTIONS(21), 1, + ACTIONS(19), 1, anon_sym_tuple, ACTIONS(23), 1, anon_sym_list, @@ -3723,15 +3804,20 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_result, ACTIONS(29), 1, anon_sym_borrow, - STATE(312), 1, + ACTIONS(31), 1, + anon_sym_own, + STATE(317), 1, sym_ty, - STATE(111), 5, + STATE(111), 2, + sym__borrow_handle, + sym__owned_handle, + STATE(110), 5, sym_tuple, sym_list, sym_option, sym_result, sym_handle, - ACTIONS(19), 15, + ACTIONS(17), 15, anon_sym_u8, anon_sym_u16, anon_sym_u32, @@ -3747,12 +3833,12 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_char, anon_sym_bool, anon_sym_string, - [309] = 10, + [354] = 12, ACTIONS(3), 1, sym_comment, ACTIONS(15), 1, sym_id, - ACTIONS(21), 1, + ACTIONS(19), 1, anon_sym_tuple, ACTIONS(23), 1, anon_sym_list, @@ -3762,15 +3848,20 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_result, ACTIONS(29), 1, anon_sym_borrow, - STATE(209), 1, + ACTIONS(31), 1, + anon_sym_own, + STATE(217), 1, sym_ty, - STATE(111), 5, + STATE(111), 2, + sym__borrow_handle, + sym__owned_handle, + STATE(110), 5, sym_tuple, sym_list, sym_option, sym_result, sym_handle, - ACTIONS(19), 15, + ACTIONS(17), 15, anon_sym_u8, anon_sym_u16, anon_sym_u32, @@ -3786,12 +3877,12 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_char, anon_sym_bool, anon_sym_string, - [358] = 10, + [410] = 12, ACTIONS(3), 1, sym_comment, ACTIONS(15), 1, sym_id, - ACTIONS(21), 1, + ACTIONS(19), 1, anon_sym_tuple, ACTIONS(23), 1, anon_sym_list, @@ -3801,15 +3892,20 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_result, ACTIONS(29), 1, anon_sym_borrow, - STATE(318), 1, + ACTIONS(31), 1, + anon_sym_own, + STATE(305), 1, sym_ty, - STATE(111), 5, + STATE(111), 2, + sym__borrow_handle, + sym__owned_handle, + STATE(110), 5, sym_tuple, sym_list, sym_option, sym_result, sym_handle, - ACTIONS(19), 15, + ACTIONS(17), 15, anon_sym_u8, anon_sym_u16, anon_sym_u32, @@ -3825,12 +3921,12 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_char, anon_sym_bool, anon_sym_string, - [407] = 10, + [466] = 12, ACTIONS(3), 1, sym_comment, ACTIONS(15), 1, sym_id, - ACTIONS(21), 1, + ACTIONS(19), 1, anon_sym_tuple, ACTIONS(23), 1, anon_sym_list, @@ -3840,15 +3936,20 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_result, ACTIONS(29), 1, anon_sym_borrow, - STATE(293), 1, + ACTIONS(31), 1, + anon_sym_own, + STATE(325), 1, sym_ty, - STATE(111), 5, + STATE(111), 2, + sym__borrow_handle, + sym__owned_handle, + STATE(110), 5, sym_tuple, sym_list, sym_option, sym_result, sym_handle, - ACTIONS(19), 15, + ACTIONS(17), 15, anon_sym_u8, anon_sym_u16, anon_sym_u32, @@ -3864,12 +3965,12 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_char, anon_sym_bool, anon_sym_string, - [456] = 10, + [522] = 12, ACTIONS(3), 1, sym_comment, ACTIONS(15), 1, sym_id, - ACTIONS(21), 1, + ACTIONS(19), 1, anon_sym_tuple, ACTIONS(23), 1, anon_sym_list, @@ -3879,15 +3980,20 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_result, ACTIONS(29), 1, anon_sym_borrow, - STATE(244), 1, + ACTIONS(31), 1, + anon_sym_own, + STATE(251), 1, sym_ty, - STATE(111), 5, + STATE(111), 2, + sym__borrow_handle, + sym__owned_handle, + STATE(110), 5, sym_tuple, sym_list, sym_option, sym_result, sym_handle, - ACTIONS(19), 15, + ACTIONS(17), 15, anon_sym_u8, anon_sym_u16, anon_sym_u32, @@ -3903,12 +4009,12 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_char, anon_sym_bool, anon_sym_string, - [505] = 10, + [578] = 12, ACTIONS(3), 1, sym_comment, ACTIONS(15), 1, sym_id, - ACTIONS(21), 1, + ACTIONS(19), 1, anon_sym_tuple, ACTIONS(23), 1, anon_sym_list, @@ -3918,15 +4024,20 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_result, ACTIONS(29), 1, anon_sym_borrow, - STATE(301), 1, + ACTIONS(31), 1, + anon_sym_own, + STATE(308), 1, sym_ty, - STATE(111), 5, + STATE(111), 2, + sym__borrow_handle, + sym__owned_handle, + STATE(110), 5, sym_tuple, sym_list, sym_option, sym_result, sym_handle, - ACTIONS(19), 15, + ACTIONS(17), 15, anon_sym_u8, anon_sym_u16, anon_sym_u32, @@ -3942,12 +4053,12 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_char, anon_sym_bool, anon_sym_string, - [554] = 10, + [634] = 12, ACTIONS(3), 1, sym_comment, ACTIONS(15), 1, sym_id, - ACTIONS(21), 1, + ACTIONS(19), 1, anon_sym_tuple, ACTIONS(23), 1, anon_sym_list, @@ -3957,15 +4068,20 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_result, ACTIONS(29), 1, anon_sym_borrow, - STATE(285), 1, + ACTIONS(31), 1, + anon_sym_own, + STATE(264), 1, sym_ty, - STATE(111), 5, + STATE(111), 2, + sym__borrow_handle, + sym__owned_handle, + STATE(110), 5, sym_tuple, sym_list, sym_option, sym_result, sym_handle, - ACTIONS(19), 15, + ACTIONS(17), 15, anon_sym_u8, anon_sym_u16, anon_sym_u32, @@ -3981,12 +4097,12 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_char, anon_sym_bool, anon_sym_string, - [603] = 10, + [690] = 12, ACTIONS(3), 1, sym_comment, ACTIONS(15), 1, sym_id, - ACTIONS(21), 1, + ACTIONS(19), 1, anon_sym_tuple, ACTIONS(23), 1, anon_sym_list, @@ -3996,15 +4112,20 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_result, ACTIONS(29), 1, anon_sym_borrow, - STATE(252), 1, + ACTIONS(31), 1, + anon_sym_own, + STATE(259), 1, sym_ty, - STATE(111), 5, + STATE(111), 2, + sym__borrow_handle, + sym__owned_handle, + STATE(110), 5, sym_tuple, sym_list, sym_option, sym_result, sym_handle, - ACTIONS(19), 15, + ACTIONS(17), 15, anon_sym_u8, anon_sym_u16, anon_sym_u32, @@ -4020,12 +4141,12 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_char, anon_sym_bool, anon_sym_string, - [652] = 10, + [746] = 12, ACTIONS(3), 1, sym_comment, ACTIONS(15), 1, sym_id, - ACTIONS(21), 1, + ACTIONS(19), 1, anon_sym_tuple, ACTIONS(23), 1, anon_sym_list, @@ -4035,15 +4156,20 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_result, ACTIONS(29), 1, anon_sym_borrow, - STATE(267), 1, + ACTIONS(31), 1, + anon_sym_own, + STATE(324), 1, sym_ty, - STATE(111), 5, + STATE(111), 2, + sym__borrow_handle, + sym__owned_handle, + STATE(110), 5, sym_tuple, sym_list, sym_option, sym_result, sym_handle, - ACTIONS(19), 15, + ACTIONS(17), 15, anon_sym_u8, anon_sym_u16, anon_sym_u32, @@ -4059,30 +4185,30 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_char, anon_sym_bool, anon_sym_string, - [701] = 19, + [802] = 19, ACTIONS(3), 1, sym_comment, - ACTIONS(37), 1, + ACTIONS(41), 1, anon_sym_use, - ACTIONS(40), 1, + ACTIONS(44), 1, anon_sym_RBRACE, - ACTIONS(42), 1, + ACTIONS(46), 1, anon_sym_export, - ACTIONS(45), 1, + ACTIONS(49), 1, anon_sym_import, - ACTIONS(48), 1, + ACTIONS(52), 1, anon_sym_include, - ACTIONS(51), 1, + ACTIONS(55), 1, anon_sym_type, - ACTIONS(54), 1, + ACTIONS(58), 1, anon_sym_record, - ACTIONS(57), 1, + ACTIONS(61), 1, anon_sym_flags, - ACTIONS(60), 1, + ACTIONS(64), 1, anon_sym_variant, - ACTIONS(63), 1, + ACTIONS(67), 1, anon_sym_enum, - ACTIONS(66), 1, + ACTIONS(70), 1, anon_sym_resource, STATE(52), 1, sym_export_item, @@ -4104,30 +4230,30 @@ static const uint16_t ts_small_parse_table[] = { sym_variant_items, sym_enum_items, sym_resource_item, - [765] = 19, + [866] = 19, ACTIONS(3), 1, sym_comment, - ACTIONS(69), 1, + ACTIONS(73), 1, anon_sym_use, - ACTIONS(71), 1, + ACTIONS(75), 1, anon_sym_RBRACE, - ACTIONS(73), 1, + ACTIONS(77), 1, anon_sym_export, - ACTIONS(75), 1, + ACTIONS(79), 1, anon_sym_import, - ACTIONS(77), 1, + ACTIONS(81), 1, anon_sym_include, - ACTIONS(79), 1, + ACTIONS(83), 1, anon_sym_type, - ACTIONS(81), 1, + ACTIONS(85), 1, anon_sym_record, - ACTIONS(83), 1, + ACTIONS(87), 1, anon_sym_flags, - ACTIONS(85), 1, + ACTIONS(89), 1, anon_sym_variant, - ACTIONS(87), 1, + ACTIONS(91), 1, anon_sym_enum, - ACTIONS(89), 1, + ACTIONS(93), 1, anon_sym_resource, STATE(52), 1, sym_export_item, @@ -4149,30 +4275,30 @@ static const uint16_t ts_small_parse_table[] = { sym_variant_items, sym_enum_items, sym_resource_item, - [829] = 19, + [930] = 19, ACTIONS(3), 1, sym_comment, - ACTIONS(69), 1, - anon_sym_use, ACTIONS(73), 1, + anon_sym_use, + ACTIONS(77), 1, anon_sym_export, - ACTIONS(75), 1, + ACTIONS(79), 1, anon_sym_import, - ACTIONS(77), 1, + ACTIONS(81), 1, anon_sym_include, - ACTIONS(79), 1, + ACTIONS(83), 1, anon_sym_type, - ACTIONS(81), 1, + ACTIONS(85), 1, anon_sym_record, - ACTIONS(83), 1, + ACTIONS(87), 1, anon_sym_flags, - ACTIONS(85), 1, + ACTIONS(89), 1, anon_sym_variant, - ACTIONS(87), 1, + ACTIONS(91), 1, anon_sym_enum, - ACTIONS(89), 1, + ACTIONS(93), 1, anon_sym_resource, - ACTIONS(91), 1, + ACTIONS(95), 1, anon_sym_RBRACE, STATE(52), 1, sym_export_item, @@ -4194,121 +4320,121 @@ static const uint16_t ts_small_parse_table[] = { sym_variant_items, sym_enum_items, sym_resource_item, - [893] = 15, + [994] = 15, ACTIONS(3), 1, sym_comment, - ACTIONS(93), 1, + ACTIONS(97), 1, anon_sym_use, - ACTIONS(95), 1, + ACTIONS(99), 1, sym_id, - ACTIONS(97), 1, + ACTIONS(101), 1, anon_sym_RBRACE, - ACTIONS(99), 1, + ACTIONS(103), 1, anon_sym_type, - ACTIONS(101), 1, + ACTIONS(105), 1, anon_sym_record, - ACTIONS(103), 1, + ACTIONS(107), 1, anon_sym_flags, - ACTIONS(105), 1, + ACTIONS(109), 1, anon_sym_variant, - ACTIONS(107), 1, + ACTIONS(111), 1, anon_sym_enum, - ACTIONS(109), 1, + ACTIONS(113), 1, anon_sym_resource, STATE(91), 1, sym_use_item, STATE(92), 1, sym_func_item, - STATE(96), 1, + STATE(93), 1, sym_typedef_item, STATE(21), 2, sym_interface_items, aux_sym_interface_body_repeat1, - STATE(86), 6, + STATE(67), 6, sym_type_item, sym_record_item, sym_flags_items, sym_variant_items, sym_enum_items, sym_resource_item, - [945] = 15, + [1046] = 15, ACTIONS(3), 1, sym_comment, - ACTIONS(111), 1, + ACTIONS(115), 1, anon_sym_use, - ACTIONS(114), 1, + ACTIONS(118), 1, sym_id, - ACTIONS(117), 1, + ACTIONS(121), 1, anon_sym_RBRACE, - ACTIONS(119), 1, + ACTIONS(123), 1, anon_sym_type, - ACTIONS(122), 1, + ACTIONS(126), 1, anon_sym_record, - ACTIONS(125), 1, + ACTIONS(129), 1, anon_sym_flags, - ACTIONS(128), 1, + ACTIONS(132), 1, anon_sym_variant, - ACTIONS(131), 1, + ACTIONS(135), 1, anon_sym_enum, - ACTIONS(134), 1, + ACTIONS(138), 1, anon_sym_resource, STATE(91), 1, sym_use_item, STATE(92), 1, sym_func_item, - STATE(96), 1, + STATE(93), 1, sym_typedef_item, STATE(20), 2, sym_interface_items, aux_sym_interface_body_repeat1, - STATE(86), 6, + STATE(67), 6, sym_type_item, sym_record_item, sym_flags_items, sym_variant_items, sym_enum_items, sym_resource_item, - [997] = 15, + [1098] = 15, ACTIONS(3), 1, sym_comment, - ACTIONS(93), 1, + ACTIONS(97), 1, anon_sym_use, - ACTIONS(95), 1, - sym_id, ACTIONS(99), 1, + sym_id, + ACTIONS(103), 1, anon_sym_type, - ACTIONS(101), 1, + ACTIONS(105), 1, anon_sym_record, - ACTIONS(103), 1, + ACTIONS(107), 1, anon_sym_flags, - ACTIONS(105), 1, + ACTIONS(109), 1, anon_sym_variant, - ACTIONS(107), 1, + ACTIONS(111), 1, anon_sym_enum, - ACTIONS(109), 1, + ACTIONS(113), 1, anon_sym_resource, - ACTIONS(137), 1, + ACTIONS(141), 1, anon_sym_RBRACE, STATE(91), 1, sym_use_item, STATE(92), 1, sym_func_item, - STATE(96), 1, + STATE(93), 1, sym_typedef_item, STATE(20), 2, sym_interface_items, aux_sym_interface_body_repeat1, - STATE(86), 6, + STATE(67), 6, sym_type_item, sym_record_item, sym_flags_items, sym_variant_items, sym_enum_items, sym_resource_item, - [1049] = 2, + [1150] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(139), 14, + ACTIONS(143), 14, ts_builtin_sym_end, anon_sym_use, anon_sym_world, @@ -4323,16 +4449,16 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_variant, anon_sym_enum, anon_sym_resource, - [1069] = 5, + [1170] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(141), 1, - anon_sym_SEMI, ACTIONS(145), 1, + anon_sym_SEMI, + ACTIONS(149), 1, anon_sym_LBRACE, - STATE(45), 1, + STATE(44), 1, sym_resource_body, - ACTIONS(143), 11, + ACTIONS(147), 11, anon_sym_use, anon_sym_RBRACE, anon_sym_export, @@ -4344,10 +4470,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_variant, anon_sym_enum, anon_sym_resource, - [1095] = 2, + [1196] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(147), 14, + ACTIONS(151), 14, ts_builtin_sym_end, anon_sym_use, anon_sym_world, @@ -4362,18 +4488,18 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_variant, anon_sym_enum, anon_sym_resource, - [1115] = 6, + [1216] = 6, ACTIONS(3), 1, sym_comment, - ACTIONS(143), 1, + ACTIONS(147), 1, anon_sym_RBRACE, - ACTIONS(149), 1, - anon_sym_SEMI, ACTIONS(153), 1, + anon_sym_SEMI, + ACTIONS(157), 1, anon_sym_LBRACE, - STATE(84), 1, + STATE(95), 1, sym_resource_body, - ACTIONS(151), 8, + ACTIONS(155), 8, anon_sym_use, sym_id, anon_sym_type, @@ -4382,37 +4508,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_variant, anon_sym_enum, anon_sym_resource, - [1141] = 2, - ACTIONS(3), 1, - sym_comment, - ACTIONS(155), 11, - anon_sym_use, - anon_sym_RBRACE, - anon_sym_export, - anon_sym_import, - anon_sym_include, - anon_sym_type, - anon_sym_record, - anon_sym_flags, - anon_sym_variant, - anon_sym_enum, - anon_sym_resource, - [1158] = 2, - ACTIONS(3), 1, - sym_comment, - ACTIONS(157), 11, - anon_sym_use, - anon_sym_RBRACE, - anon_sym_export, - anon_sym_import, - anon_sym_include, - anon_sym_type, - anon_sym_record, - anon_sym_flags, - anon_sym_variant, - anon_sym_enum, - anon_sym_resource, - [1175] = 2, + [1242] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(159), 11, @@ -4427,7 +4523,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_variant, anon_sym_enum, anon_sym_resource, - [1192] = 2, + [1259] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(161), 11, @@ -4442,7 +4538,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_variant, anon_sym_enum, anon_sym_resource, - [1209] = 2, + [1276] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(163), 11, @@ -4457,7 +4553,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_variant, anon_sym_enum, anon_sym_resource, - [1226] = 2, + [1293] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(165), 11, @@ -4472,7 +4568,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_variant, anon_sym_enum, anon_sym_resource, - [1243] = 2, + [1310] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(167), 11, @@ -4487,7 +4583,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_variant, anon_sym_enum, anon_sym_resource, - [1260] = 2, + [1327] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(169), 11, @@ -4502,7 +4598,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_variant, anon_sym_enum, anon_sym_resource, - [1277] = 2, + [1344] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(171), 11, @@ -4517,7 +4613,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_variant, anon_sym_enum, anon_sym_resource, - [1294] = 2, + [1361] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(173), 11, @@ -4532,7 +4628,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_variant, anon_sym_enum, anon_sym_resource, - [1311] = 2, + [1378] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(175), 11, @@ -4547,7 +4643,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_variant, anon_sym_enum, anon_sym_resource, - [1328] = 2, + [1395] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(177), 11, @@ -4562,7 +4658,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_variant, anon_sym_enum, anon_sym_resource, - [1345] = 2, + [1412] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(179), 11, @@ -4577,7 +4673,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_variant, anon_sym_enum, anon_sym_resource, - [1362] = 2, + [1429] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(181), 11, @@ -4592,7 +4688,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_variant, anon_sym_enum, anon_sym_resource, - [1379] = 2, + [1446] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(183), 11, @@ -4607,7 +4703,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_variant, anon_sym_enum, anon_sym_resource, - [1396] = 2, + [1463] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(185), 11, @@ -4622,7 +4718,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_variant, anon_sym_enum, anon_sym_resource, - [1413] = 2, + [1480] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(187), 11, @@ -4637,7 +4733,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_variant, anon_sym_enum, anon_sym_resource, - [1430] = 2, + [1497] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(189), 11, @@ -4652,7 +4748,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_variant, anon_sym_enum, anon_sym_resource, - [1447] = 2, + [1514] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(191), 11, @@ -4667,7 +4763,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_variant, anon_sym_enum, anon_sym_resource, - [1464] = 2, + [1531] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(193), 11, @@ -4682,7 +4778,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_variant, anon_sym_enum, anon_sym_resource, - [1481] = 2, + [1548] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(195), 11, @@ -4697,7 +4793,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_variant, anon_sym_enum, anon_sym_resource, - [1498] = 2, + [1565] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(197), 11, @@ -4712,7 +4808,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_variant, anon_sym_enum, anon_sym_resource, - [1515] = 2, + [1582] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(199), 11, @@ -4727,7 +4823,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_variant, anon_sym_enum, anon_sym_resource, - [1532] = 2, + [1599] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(201), 11, @@ -4742,7 +4838,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_variant, anon_sym_enum, anon_sym_resource, - [1549] = 2, + [1616] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(203), 11, @@ -4757,7 +4853,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_variant, anon_sym_enum, anon_sym_resource, - [1566] = 2, + [1633] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(205), 11, @@ -4772,7 +4868,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_variant, anon_sym_enum, anon_sym_resource, - [1583] = 2, + [1650] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(207), 11, @@ -4787,7 +4883,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_variant, anon_sym_enum, anon_sym_resource, - [1600] = 2, + [1667] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(209), 11, @@ -4802,7 +4898,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_variant, anon_sym_enum, anon_sym_resource, - [1617] = 2, + [1684] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(211), 11, @@ -4817,7 +4913,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_variant, anon_sym_enum, anon_sym_resource, - [1634] = 2, + [1701] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(213), 11, @@ -4832,7 +4928,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_variant, anon_sym_enum, anon_sym_resource, - [1651] = 2, + [1718] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(215), 11, @@ -4847,7 +4943,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_variant, anon_sym_enum, anon_sym_resource, - [1668] = 2, + [1735] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(217), 11, @@ -4862,7 +4958,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_variant, anon_sym_enum, anon_sym_resource, - [1685] = 2, + [1752] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(219), 11, @@ -4877,7 +4973,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_variant, anon_sym_enum, anon_sym_resource, - [1702] = 2, + [1769] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(221), 11, @@ -4892,7 +4988,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_variant, anon_sym_enum, anon_sym_resource, - [1719] = 2, + [1786] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(223), 11, @@ -4907,7 +5003,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_variant, anon_sym_enum, anon_sym_resource, - [1736] = 2, + [1803] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(225), 11, @@ -4922,7 +5018,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_variant, anon_sym_enum, anon_sym_resource, - [1753] = 2, + [1820] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(227), 11, @@ -4937,7 +5033,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_variant, anon_sym_enum, anon_sym_resource, - [1770] = 2, + [1837] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(229), 11, @@ -4952,7 +5048,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_variant, anon_sym_enum, anon_sym_resource, - [1787] = 2, + [1854] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(231), 11, @@ -4967,7 +5063,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_variant, anon_sym_enum, anon_sym_resource, - [1804] = 2, + [1871] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(233), 11, @@ -4982,24 +5078,25 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_variant, anon_sym_enum, anon_sym_resource, - [1821] = 3, + [1888] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(231), 1, - anon_sym_RBRACE, - ACTIONS(235), 8, + ACTIONS(235), 11, anon_sym_use, - sym_id, + anon_sym_RBRACE, + anon_sym_export, + anon_sym_import, + anon_sym_include, anon_sym_type, anon_sym_record, anon_sym_flags, anon_sym_variant, anon_sym_enum, anon_sym_resource, - [1838] = 3, + [1905] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(195), 1, + ACTIONS(235), 1, anon_sym_RBRACE, ACTIONS(237), 8, anon_sym_use, @@ -5010,10 +5107,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_variant, anon_sym_enum, anon_sym_resource, - [1855] = 3, + [1922] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(241), 1, + ACTIONS(209), 1, anon_sym_RBRACE, ACTIONS(239), 8, anon_sym_use, @@ -5024,12 +5121,12 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_variant, anon_sym_enum, anon_sym_resource, - [1872] = 3, + [1939] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(181), 1, + ACTIONS(221), 1, anon_sym_RBRACE, - ACTIONS(243), 8, + ACTIONS(241), 8, anon_sym_use, sym_id, anon_sym_type, @@ -5038,12 +5135,12 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_variant, anon_sym_enum, anon_sym_resource, - [1889] = 3, + [1956] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(233), 1, + ACTIONS(185), 1, anon_sym_RBRACE, - ACTIONS(245), 8, + ACTIONS(243), 8, anon_sym_use, sym_id, anon_sym_type, @@ -5052,12 +5149,12 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_variant, anon_sym_enum, anon_sym_resource, - [1906] = 3, + [1973] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(157), 1, + ACTIONS(247), 1, anon_sym_RBRACE, - ACTIONS(247), 8, + ACTIONS(245), 8, anon_sym_use, sym_id, anon_sym_type, @@ -5066,10 +5163,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_variant, anon_sym_enum, anon_sym_resource, - [1923] = 3, + [1990] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(177), 1, + ACTIONS(183), 1, anon_sym_RBRACE, ACTIONS(249), 8, anon_sym_use, @@ -5080,10 +5177,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_variant, anon_sym_enum, anon_sym_resource, - [1940] = 3, + [2007] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(175), 1, + ACTIONS(161), 1, anon_sym_RBRACE, ACTIONS(251), 8, anon_sym_use, @@ -5094,10 +5191,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_variant, anon_sym_enum, anon_sym_resource, - [1957] = 3, + [2024] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(173), 1, + ACTIONS(231), 1, anon_sym_RBRACE, ACTIONS(253), 8, anon_sym_use, @@ -5108,10 +5205,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_variant, anon_sym_enum, anon_sym_resource, - [1974] = 3, + [2041] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(229), 1, + ACTIONS(181), 1, anon_sym_RBRACE, ACTIONS(255), 8, anon_sym_use, @@ -5122,10 +5219,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_variant, anon_sym_enum, anon_sym_resource, - [1991] = 3, + [2058] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(169), 1, + ACTIONS(179), 1, anon_sym_RBRACE, ACTIONS(257), 8, anon_sym_use, @@ -5136,10 +5233,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_variant, anon_sym_enum, anon_sym_resource, - [2008] = 3, + [2075] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(161), 1, + ACTIONS(177), 1, anon_sym_RBRACE, ACTIONS(259), 8, anon_sym_use, @@ -5150,10 +5247,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_variant, anon_sym_enum, anon_sym_resource, - [2025] = 3, + [2092] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(191), 1, + ACTIONS(233), 1, anon_sym_RBRACE, ACTIONS(261), 8, anon_sym_use, @@ -5164,10 +5261,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_variant, anon_sym_enum, anon_sym_resource, - [2042] = 3, + [2109] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(163), 1, + ACTIONS(167), 1, anon_sym_RBRACE, ACTIONS(263), 8, anon_sym_use, @@ -5178,10 +5275,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_variant, anon_sym_enum, anon_sym_resource, - [2059] = 3, + [2126] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(165), 1, + ACTIONS(193), 1, anon_sym_RBRACE, ACTIONS(265), 8, anon_sym_use, @@ -5192,10 +5289,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_variant, anon_sym_enum, anon_sym_resource, - [2076] = 3, + [2143] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(167), 1, + ACTIONS(169), 1, anon_sym_RBRACE, ACTIONS(267), 8, anon_sym_use, @@ -5206,7 +5303,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_variant, anon_sym_enum, anon_sym_resource, - [2093] = 3, + [2160] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(171), 1, @@ -5220,10 +5317,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_variant, anon_sym_enum, anon_sym_resource, - [2110] = 3, + [2177] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(197), 1, + ACTIONS(173), 1, anon_sym_RBRACE, ACTIONS(271), 8, anon_sym_use, @@ -5234,10 +5331,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_variant, anon_sym_enum, anon_sym_resource, - [2127] = 3, + [2194] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(193), 1, + ACTIONS(175), 1, anon_sym_RBRACE, ACTIONS(273), 8, anon_sym_use, @@ -5248,10 +5345,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_variant, anon_sym_enum, anon_sym_resource, - [2144] = 3, + [2211] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(201), 1, + ACTIONS(159), 1, anon_sym_RBRACE, ACTIONS(275), 8, anon_sym_use, @@ -5262,10 +5359,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_variant, anon_sym_enum, anon_sym_resource, - [2161] = 3, + [2228] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(217), 1, + ACTIONS(223), 1, anon_sym_RBRACE, ACTIONS(277), 8, anon_sym_use, @@ -5276,10 +5373,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_variant, anon_sym_enum, anon_sym_resource, - [2178] = 3, + [2245] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(185), 1, + ACTIONS(207), 1, anon_sym_RBRACE, ACTIONS(279), 8, anon_sym_use, @@ -5290,10 +5387,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_variant, anon_sym_enum, anon_sym_resource, - [2195] = 3, + [2262] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(155), 1, + ACTIONS(203), 1, anon_sym_RBRACE, ACTIONS(281), 8, anon_sym_use, @@ -5304,10 +5401,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_variant, anon_sym_enum, anon_sym_resource, - [2212] = 3, + [2279] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(199), 1, + ACTIONS(201), 1, anon_sym_RBRACE, ACTIONS(283), 8, anon_sym_use, @@ -5318,10 +5415,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_variant, anon_sym_enum, anon_sym_resource, - [2229] = 3, + [2296] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(203), 1, + ACTIONS(199), 1, anon_sym_RBRACE, ACTIONS(285), 8, anon_sym_use, @@ -5332,10 +5429,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_variant, anon_sym_enum, anon_sym_resource, - [2246] = 3, + [2313] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(289), 1, + ACTIONS(187), 1, anon_sym_RBRACE, ACTIONS(287), 8, anon_sym_use, @@ -5346,7 +5443,21 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_variant, anon_sym_enum, anon_sym_resource, - [2263] = 3, + [2330] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(197), 1, + anon_sym_RBRACE, + ACTIONS(289), 8, + anon_sym_use, + sym_id, + anon_sym_type, + anon_sym_record, + anon_sym_flags, + anon_sym_variant, + anon_sym_enum, + anon_sym_resource, + [2347] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(293), 1, @@ -5360,10 +5471,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_variant, anon_sym_enum, anon_sym_resource, - [2280] = 3, + [2364] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(219), 1, + ACTIONS(297), 1, anon_sym_RBRACE, ACTIONS(295), 8, anon_sym_use, @@ -5374,12 +5485,12 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_variant, anon_sym_enum, anon_sym_resource, - [2297] = 3, + [2381] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(205), 1, + ACTIONS(301), 1, anon_sym_RBRACE, - ACTIONS(297), 8, + ACTIONS(299), 8, anon_sym_use, sym_id, anon_sym_type, @@ -5388,12 +5499,12 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_variant, anon_sym_enum, anon_sym_resource, - [2314] = 3, + [2398] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(227), 1, + ACTIONS(205), 1, anon_sym_RBRACE, - ACTIONS(299), 8, + ACTIONS(303), 8, anon_sym_use, sym_id, anon_sym_type, @@ -5402,12 +5513,12 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_variant, anon_sym_enum, anon_sym_resource, - [2331] = 3, + [2415] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(303), 1, + ACTIONS(195), 1, anon_sym_RBRACE, - ACTIONS(301), 8, + ACTIONS(305), 8, anon_sym_use, sym_id, anon_sym_type, @@ -5416,23 +5527,39 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_variant, anon_sym_enum, anon_sym_resource, - [2348] = 6, + [2432] = 6, ACTIONS(3), 1, sym_comment, - ACTIONS(305), 1, - anon_sym_COLON, + ACTIONS(9), 1, + anon_sym_use, + ACTIONS(11), 1, + anon_sym_world, + ACTIONS(13), 1, + anon_sym_interface, ACTIONS(307), 1, - anon_sym_SLASH, + ts_builtin_sym_end, + STATE(100), 4, + sym_toplevel_use_item, + sym_world_item, + sym_interface_item, + aux_sym_source_file_repeat1, + [2454] = 6, + ACTIONS(3), 1, + sym_comment, ACTIONS(309), 1, + anon_sym_COLON, + ACTIONS(311), 1, + anon_sym_SLASH, + ACTIONS(313), 1, anon_sym_AT, - STATE(102), 1, + STATE(101), 1, aux_sym_package_decl_repeat2, - ACTIONS(311), 4, + ACTIONS(315), 4, anon_sym_SEMI, anon_sym_as, anon_sym_with, anon_sym_DOT, - [2370] = 6, + [2476] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(9), 1, @@ -5441,14 +5568,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_world, ACTIONS(13), 1, anon_sym_interface, - ACTIONS(313), 1, + ACTIONS(307), 1, ts_builtin_sym_end, STATE(99), 4, sym_toplevel_use_item, sym_world_item, sym_interface_item, aux_sym_source_file_repeat1, - [2392] = 6, + [2498] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(9), 1, @@ -5457,2486 +5584,2538 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_world, ACTIONS(13), 1, anon_sym_interface, - ACTIONS(315), 1, - ts_builtin_sym_end, - STATE(100), 4, - sym_toplevel_use_item, - sym_world_item, - sym_interface_item, - aux_sym_source_file_repeat1, - [2414] = 6, - ACTIONS(3), 1, - sym_comment, ACTIONS(317), 1, ts_builtin_sym_end, - ACTIONS(319), 1, - anon_sym_use, - ACTIONS(322), 1, - anon_sym_world, - ACTIONS(325), 1, - anon_sym_interface, STATE(100), 4, sym_toplevel_use_item, sym_world_item, sym_interface_item, aux_sym_source_file_repeat1, - [2436] = 6, + [2520] = 6, ACTIONS(3), 1, sym_comment, - ACTIONS(9), 1, + ACTIONS(319), 1, + ts_builtin_sym_end, + ACTIONS(321), 1, anon_sym_use, - ACTIONS(11), 1, + ACTIONS(324), 1, anon_sym_world, - ACTIONS(13), 1, + ACTIONS(327), 1, anon_sym_interface, - ACTIONS(313), 1, - ts_builtin_sym_end, STATE(100), 4, sym_toplevel_use_item, sym_world_item, sym_interface_item, aux_sym_source_file_repeat1, - [2458] = 5, + [2542] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(307), 1, + ACTIONS(311), 1, anon_sym_SLASH, - ACTIONS(328), 1, + ACTIONS(330), 1, anon_sym_AT, - STATE(103), 1, + STATE(102), 1, aux_sym_package_decl_repeat2, - ACTIONS(330), 4, + ACTIONS(332), 4, anon_sym_SEMI, anon_sym_as, anon_sym_with, anon_sym_DOT, - [2477] = 4, + [2561] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(332), 1, + ACTIONS(334), 1, anon_sym_SLASH, - STATE(103), 1, + STATE(102), 1, aux_sym_package_decl_repeat2, - ACTIONS(335), 5, + ACTIONS(337), 5, anon_sym_AT, anon_sym_SEMI, anon_sym_as, anon_sym_with, anon_sym_DOT, - [2494] = 6, + [2578] = 6, ACTIONS(3), 1, sym_comment, - ACTIONS(337), 1, - sym_id, ACTIONS(339), 1, - anon_sym_RBRACE, + sym_id, ACTIONS(341), 1, + anon_sym_RBRACE, + ACTIONS(343), 1, anon_sym_constructor, - STATE(149), 1, + STATE(152), 1, sym_func_item, - STATE(109), 2, + STATE(108), 2, sym_resource_method, aux_sym_resource_body_repeat1, - [2514] = 3, - ACTIONS(3), 1, - sym_comment, - ACTIONS(343), 1, - anon_sym_SLASH, - ACTIONS(335), 5, - anon_sym_AT, - anon_sym_SEMI, - anon_sym_as, - anon_sym_with, - anon_sym_DOT, - [2528] = 6, + [2598] = 6, ACTIONS(3), 1, sym_comment, - ACTIONS(337), 1, + ACTIONS(339), 1, sym_id, - ACTIONS(341), 1, + ACTIONS(343), 1, anon_sym_constructor, ACTIONS(345), 1, anon_sym_RBRACE, - STATE(149), 1, + STATE(152), 1, sym_func_item, - STATE(110), 2, + STATE(109), 2, sym_resource_method, aux_sym_resource_body_repeat1, - [2548] = 6, + [2618] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(349), 1, + anon_sym_LT, + ACTIONS(347), 5, + anon_sym_SEMI, + anon_sym_RBRACE, + anon_sym_COMMA, + anon_sym_RPAREN, + anon_sym_GT, + [2632] = 6, ACTIONS(3), 1, sym_comment, - ACTIONS(337), 1, + ACTIONS(339), 1, sym_id, - ACTIONS(341), 1, + ACTIONS(343), 1, anon_sym_constructor, - ACTIONS(347), 1, + ACTIONS(351), 1, anon_sym_RBRACE, - STATE(149), 1, + STATE(152), 1, sym_func_item, - STATE(106), 2, + STATE(104), 2, sym_resource_method, aux_sym_resource_body_repeat1, - [2568] = 3, + [2652] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(351), 1, - anon_sym_LT, - ACTIONS(349), 5, + ACTIONS(353), 1, + anon_sym_SLASH, + ACTIONS(337), 5, + anon_sym_AT, anon_sym_SEMI, - anon_sym_RBRACE, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_GT, - [2582] = 6, + anon_sym_as, + anon_sym_with, + anon_sym_DOT, + [2666] = 6, ACTIONS(3), 1, sym_comment, - ACTIONS(337), 1, + ACTIONS(339), 1, sym_id, - ACTIONS(341), 1, + ACTIONS(343), 1, anon_sym_constructor, - ACTIONS(353), 1, + ACTIONS(355), 1, anon_sym_RBRACE, - STATE(149), 1, + STATE(152), 1, sym_func_item, - STATE(110), 2, + STATE(109), 2, sym_resource_method, aux_sym_resource_body_repeat1, - [2602] = 6, + [2686] = 6, ACTIONS(3), 1, sym_comment, - ACTIONS(355), 1, + ACTIONS(357), 1, sym_id, - ACTIONS(358), 1, - anon_sym_RBRACE, ACTIONS(360), 1, + anon_sym_RBRACE, + ACTIONS(362), 1, anon_sym_constructor, - STATE(149), 1, + STATE(152), 1, sym_func_item, - STATE(110), 2, + STATE(109), 2, sym_resource_method, aux_sym_resource_body_repeat1, - [2622] = 2, + [2706] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(363), 5, + ACTIONS(365), 5, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_GT, - [2633] = 2, + [2717] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(365), 5, + ACTIONS(367), 5, + anon_sym_SEMI, + anon_sym_RBRACE, + anon_sym_COMMA, + anon_sym_RPAREN, + anon_sym_GT, + [2728] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(369), 5, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_GT, - [2644] = 6, + [2739] = 6, + ACTIONS(3), 1, + sym_comment, + ACTIONS(309), 1, + anon_sym_COLON, + ACTIONS(311), 1, + anon_sym_SLASH, + ACTIONS(371), 1, + anon_sym_AT, + ACTIONS(373), 1, + anon_sym_SEMI, + STATE(128), 1, + aux_sym_package_decl_repeat2, + [2758] = 6, ACTIONS(3), 1, sym_comment, - ACTIONS(367), 1, + ACTIONS(375), 1, sym_id, - ACTIONS(369), 1, + ACTIONS(377), 1, anon_sym_interface, - ACTIONS(371), 1, + ACTIONS(379), 1, anon_sym_func, STATE(42), 1, sym_extern_type, - STATE(302), 1, + STATE(278), 1, + sym_func_type, + [2777] = 6, + ACTIONS(3), 1, + sym_comment, + ACTIONS(375), 1, + sym_id, + ACTIONS(377), 1, + anon_sym_interface, + ACTIONS(379), 1, + anon_sym_func, + STATE(41), 1, + sym_extern_type, + STATE(278), 1, sym_func_type, - [2663] = 2, + [2796] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(373), 5, + ACTIONS(365), 5, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_GT, - [2674] = 2, + [2807] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(375), 5, + ACTIONS(381), 5, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_GT, - [2685] = 2, + [2818] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(363), 5, + ACTIONS(383), 5, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_GT, - [2696] = 3, + [2829] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(305), 1, - anon_sym_COLON, - ACTIONS(377), 4, + ACTIONS(385), 5, anon_sym_SEMI, - anon_sym_as, - anon_sym_with, - anon_sym_DOT, - [2709] = 6, - ACTIONS(3), 1, - sym_comment, - ACTIONS(367), 1, - sym_id, - ACTIONS(369), 1, - anon_sym_interface, - ACTIONS(371), 1, - anon_sym_func, - STATE(40), 1, - sym_extern_type, - STATE(302), 1, - sym_func_type, - [2728] = 2, + anon_sym_RBRACE, + anon_sym_COMMA, + anon_sym_RPAREN, + anon_sym_GT, + [2840] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(379), 5, + ACTIONS(387), 5, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_GT, - [2739] = 6, + [2851] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(305), 1, + ACTIONS(309), 1, anon_sym_COLON, - ACTIONS(307), 1, - anon_sym_SLASH, - ACTIONS(381), 1, - anon_sym_AT, - ACTIONS(383), 1, + ACTIONS(389), 4, anon_sym_SEMI, - STATE(125), 1, - aux_sym_package_decl_repeat2, - [2758] = 2, + anon_sym_as, + anon_sym_with, + anon_sym_DOT, + [2864] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(385), 5, + ACTIONS(391), 5, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_GT, - [2769] = 2, + [2875] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(387), 5, + ACTIONS(393), 5, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_GT, - [2780] = 2, + [2886] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(389), 4, + ACTIONS(395), 5, + anon_sym_SEMI, + anon_sym_RBRACE, + anon_sym_COMMA, + anon_sym_RPAREN, + anon_sym_GT, + [2897] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(397), 4, ts_builtin_sym_end, anon_sym_use, anon_sym_world, anon_sym_interface, - [2790] = 2, + [2907] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(391), 4, + ACTIONS(399), 4, ts_builtin_sym_end, anon_sym_use, anon_sym_world, anon_sym_interface, - [2800] = 5, + [2917] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(307), 1, + ACTIONS(401), 4, + ts_builtin_sym_end, + anon_sym_use, + anon_sym_world, + anon_sym_interface, + [2927] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(311), 1, anon_sym_SLASH, - ACTIONS(393), 1, + ACTIONS(403), 1, anon_sym_AT, - ACTIONS(395), 1, + ACTIONS(405), 1, anon_sym_SEMI, - STATE(103), 1, + STATE(102), 1, aux_sym_package_decl_repeat2, - [2816] = 2, + [2943] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(397), 4, + ACTIONS(407), 4, ts_builtin_sym_end, anon_sym_use, anon_sym_world, anon_sym_interface, - [2826] = 2, + [2953] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(399), 4, + ACTIONS(409), 4, anon_sym_SEMI, anon_sym_as, anon_sym_with, anon_sym_DOT, - [2836] = 2, + [2963] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(401), 4, - ts_builtin_sym_end, - anon_sym_use, - anon_sym_world, - anon_sym_interface, - [2846] = 2, - ACTIONS(3), 1, - sym_comment, - ACTIONS(403), 4, - ts_builtin_sym_end, - anon_sym_use, - anon_sym_world, - anon_sym_interface, - [2856] = 2, - ACTIONS(3), 1, - sym_comment, - ACTIONS(405), 4, + ACTIONS(411), 4, ts_builtin_sym_end, anon_sym_use, anon_sym_world, anon_sym_interface, - [2866] = 2, + [2973] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(407), 4, + ACTIONS(413), 4, ts_builtin_sym_end, anon_sym_use, anon_sym_world, anon_sym_interface, - [2876] = 5, + [2983] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(409), 1, + ACTIONS(415), 1, sym_id, - ACTIONS(411), 1, + ACTIONS(417), 1, anon_sym_RPAREN, - STATE(176), 1, + STATE(180), 1, sym_named_type, - STATE(291), 1, + STATE(290), 1, sym_named_type_list, - [2892] = 2, + [2999] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(413), 4, - anon_sym_SEMI, - anon_sym_as, - anon_sym_with, - anon_sym_DOT, - [2902] = 5, + ACTIONS(419), 4, + ts_builtin_sym_end, + anon_sym_use, + anon_sym_world, + anon_sym_interface, + [3009] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(409), 1, - sym_id, ACTIONS(415), 1, + sym_id, + ACTIONS(421), 1, anon_sym_RPAREN, - STATE(176), 1, + STATE(180), 1, sym_named_type, - STATE(275), 1, + STATE(279), 1, sym_named_type_list, - [2918] = 2, + [3025] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(417), 4, + ACTIONS(423), 4, ts_builtin_sym_end, anon_sym_use, anon_sym_world, anon_sym_interface, - [2928] = 2, + [3035] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(419), 4, + ACTIONS(425), 4, ts_builtin_sym_end, anon_sym_use, anon_sym_world, anon_sym_interface, - [2938] = 2, + [3045] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(421), 4, + ACTIONS(427), 4, ts_builtin_sym_end, anon_sym_use, anon_sym_world, anon_sym_interface, - [2948] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(423), 1, - anon_sym_RBRACE, - ACTIONS(425), 1, - anon_sym_COMMA, - STATE(192), 1, - aux_sym_variant_body_repeat1, - [2961] = 4, + [3055] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(427), 1, - sym_id, - ACTIONS(429), 1, - anon_sym_RBRACE, - STATE(155), 1, - sym_record_field, - [2974] = 4, + ACTIONS(429), 4, + anon_sym_SEMI, + anon_sym_as, + anon_sym_with, + anon_sym_DOT, + [3065] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(431), 1, - anon_sym_SEMI, + sym_id, ACTIONS(433), 1, - anon_sym_DASH_GT, - STATE(273), 1, - sym_result_list, - [2987] = 4, + anon_sym_RBRACE, + STATE(224), 1, + sym_variant_case, + [3078] = 4, ACTIONS(3), 1, sym_comment, + ACTIONS(415), 1, + sym_id, ACTIONS(435), 1, - anon_sym_RBRACE, - ACTIONS(437), 1, - anon_sym_COMMA, - STATE(168), 1, - aux_sym_flags_body_repeat1, - [3000] = 3, + anon_sym_RPAREN, + STATE(252), 1, + sym_named_type, + [3091] = 4, ACTIONS(3), 1, sym_comment, + ACTIONS(437), 1, + anon_sym_SEMI, ACTIONS(439), 1, - anon_sym_as, - ACTIONS(441), 2, - anon_sym_RBRACE, - anon_sym_COMMA, - [3011] = 4, + anon_sym_DASH_GT, + STATE(265), 1, + sym_result_list, + [3104] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(443), 1, + ACTIONS(441), 1, sym_id, - STATE(254), 1, + STATE(253), 1, aux_sym_package_decl_repeat1, - STATE(330), 1, + STATE(337), 1, sym_use_path, - [3024] = 4, + [3117] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(445), 1, + ACTIONS(443), 1, + anon_sym_as, + ACTIONS(445), 2, anon_sym_RBRACE, - ACTIONS(447), 1, anon_sym_COMMA, - STATE(182), 1, - aux_sym_use_names_list_repeat1, - [3037] = 4, + [3128] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(449), 1, + ACTIONS(447), 1, sym_id, - STATE(144), 1, + STATE(146), 1, sym_use_names_item, - STATE(325), 1, + STATE(332), 1, sym_use_names_list, - [3050] = 4, + [3141] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(443), 1, - sym_id, - STATE(253), 1, - sym_use_path, - STATE(254), 1, - aux_sym_package_decl_repeat1, - [3063] = 4, + ACTIONS(449), 1, + anon_sym_RBRACE, + ACTIONS(451), 1, + anon_sym_COMMA, + STATE(186), 1, + aux_sym_use_names_list_repeat1, + [3154] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(451), 1, - sym_id, ACTIONS(453), 1, anon_sym_RBRACE, - STATE(217), 1, - sym_variant_case, - [3076] = 4, - ACTIONS(3), 1, - sym_comment, ACTIONS(455), 1, - anon_sym_RBRACE, - ACTIONS(457), 1, anon_sym_COMMA, - STATE(186), 1, - aux_sym_include_names_list_repeat1, - [3089] = 3, + STATE(169), 1, + aux_sym_variant_body_repeat1, + [3167] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(461), 1, - anon_sym_RBRACE, - ACTIONS(459), 2, + ACTIONS(441), 1, sym_id, - anon_sym_constructor, - [3100] = 4, + STATE(250), 1, + sym_use_path, + STATE(253), 1, + aux_sym_package_decl_repeat1, + [3180] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(463), 1, + ACTIONS(431), 1, + sym_id, + ACTIONS(457), 1, anon_sym_RBRACE, - ACTIONS(465), 1, + STATE(224), 1, + sym_variant_case, + [3193] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(459), 1, + anon_sym_RBRACE, + ACTIONS(461), 1, anon_sym_COMMA, - STATE(138), 1, - aux_sym_variant_body_repeat1, - [3113] = 4, + STATE(190), 1, + aux_sym_include_names_list_repeat1, + [3206] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(427), 1, + ACTIONS(463), 1, sym_id, - ACTIONS(467), 1, + ACTIONS(465), 1, anon_sym_RBRACE, - STATE(211), 1, + STATE(218), 1, sym_record_field, - [3126] = 3, + [3219] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(471), 1, - anon_sym_LPAREN, - ACTIONS(469), 2, + ACTIONS(469), 1, anon_sym_RBRACE, - anon_sym_COMMA, - [3137] = 4, + ACTIONS(467), 2, + sym_id, + anon_sym_constructor, + [3230] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(473), 1, + ACTIONS(471), 1, anon_sym_RBRACE, - ACTIONS(475), 1, + ACTIONS(473), 1, anon_sym_COMMA, - STATE(202), 1, + STATE(172), 1, aux_sym_flags_body_repeat1, - [3150] = 4, + [3243] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(477), 1, + ACTIONS(475), 1, anon_sym_RBRACE, - ACTIONS(479), 1, + ACTIONS(477), 1, anon_sym_COMMA, - STATE(161), 1, + STATE(188), 1, aux_sym_flags_body_repeat1, - [3163] = 4, + [3256] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(481), 1, + ACTIONS(479), 1, anon_sym_RBRACE, - ACTIONS(483), 1, + ACTIONS(481), 1, anon_sym_COMMA, - STATE(158), 1, - aux_sym_record_body_repeat1, - [3176] = 4, + STATE(165), 1, + aux_sym_flags_body_repeat1, + [3269] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(485), 1, + ACTIONS(483), 1, anon_sym_RBRACE, - ACTIONS(487), 1, + ACTIONS(485), 1, anon_sym_COMMA, - STATE(192), 1, + STATE(196), 1, aux_sym_variant_body_repeat1, - [3189] = 4, + [3282] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(427), 1, + ACTIONS(431), 1, sym_id, - ACTIONS(489), 1, + ACTIONS(483), 1, anon_sym_RBRACE, - STATE(211), 1, - sym_record_field, - [3202] = 4, + STATE(224), 1, + sym_variant_case, + [3295] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(489), 1, + ACTIONS(487), 1, anon_sym_RBRACE, - ACTIONS(491), 1, + ACTIONS(489), 1, anon_sym_COMMA, - STATE(198), 1, + STATE(162), 1, aux_sym_record_body_repeat1, - [3215] = 4, + [3308] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(451), 1, - sym_id, - ACTIONS(485), 1, + ACTIONS(491), 1, anon_sym_RBRACE, - STATE(217), 1, - sym_variant_case, - [3228] = 4, - ACTIONS(3), 1, - sym_comment, ACTIONS(493), 1, - anon_sym_RBRACE, - ACTIONS(495), 1, anon_sym_COMMA, - STATE(202), 1, + STATE(188), 1, aux_sym_flags_body_repeat1, - [3241] = 4, + [3321] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(497), 1, + ACTIONS(495), 1, anon_sym_RBRACE, - ACTIONS(499), 1, + ACTIONS(497), 1, anon_sym_COMMA, - STATE(202), 1, - aux_sym_flags_body_repeat1, - [3254] = 4, + STATE(204), 1, + aux_sym_record_body_repeat1, + [3334] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(501), 1, + ACTIONS(463), 1, + sym_id, + ACTIONS(499), 1, anon_sym_RBRACE, - ACTIONS(503), 1, + STATE(218), 1, + sym_record_field, + [3347] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(499), 1, + anon_sym_RBRACE, + ACTIONS(501), 1, anon_sym_COMMA, - STATE(198), 1, + STATE(204), 1, aux_sym_record_body_repeat1, - [3267] = 4, + [3360] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(427), 1, + ACTIONS(463), 1, sym_id, - ACTIONS(501), 1, + ACTIONS(495), 1, anon_sym_RBRACE, - STATE(211), 1, + STATE(218), 1, sym_record_field, - [3280] = 4, + [3373] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(423), 1, + ACTIONS(503), 1, anon_sym_RBRACE, - ACTIONS(451), 1, - sym_id, - STATE(217), 1, - sym_variant_case, - [3293] = 4, + ACTIONS(505), 1, + anon_sym_COMMA, + STATE(154), 1, + aux_sym_flags_body_repeat1, + [3386] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(505), 1, - anon_sym_RBRACE, ACTIONS(507), 1, + anon_sym_RBRACE, + ACTIONS(509), 1, anon_sym_COMMA, - STATE(153), 1, + STATE(188), 1, aux_sym_flags_body_repeat1, - [3306] = 4, + [3399] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(509), 1, - anon_sym_RBRACE, ACTIONS(511), 1, + anon_sym_RBRACE, + ACTIONS(513), 1, anon_sym_COMMA, STATE(156), 1, aux_sym_variant_body_repeat1, - [3319] = 4, + [3412] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(513), 1, - anon_sym_RBRACE, ACTIONS(515), 1, + anon_sym_RBRACE, + ACTIONS(517), 1, anon_sym_COMMA, - STATE(160), 1, + STATE(159), 1, aux_sym_flags_body_repeat1, - [3332] = 4, + [3425] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(517), 1, - anon_sym_RBRACE, ACTIONS(519), 1, + anon_sym_RBRACE, + ACTIONS(521), 1, anon_sym_COMMA, - STATE(202), 1, - aux_sym_flags_body_repeat1, - [3345] = 4, + STATE(160), 1, + aux_sym_record_body_repeat1, + [3438] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(521), 1, - anon_sym_func, + ACTIONS(433), 1, + anon_sym_RBRACE, ACTIONS(523), 1, - anon_sym_static, - STATE(300), 1, - sym_func_type, - [3358] = 4, + anon_sym_COMMA, + STATE(196), 1, + aux_sym_variant_body_repeat1, + [3451] = 4, ACTIONS(3), 1, sym_comment, + ACTIONS(431), 1, + sym_id, ACTIONS(525), 1, anon_sym_RBRACE, - ACTIONS(527), 1, - anon_sym_COMMA, - STATE(162), 1, - aux_sym_record_body_repeat1, - [3371] = 4, + STATE(166), 1, + sym_variant_case, + [3464] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(529), 1, + ACTIONS(463), 1, sym_id, - STATE(148), 1, - sym_include_names_item, - STATE(324), 1, - sym_include_names_list, - [3384] = 4, + ACTIONS(527), 1, + anon_sym_RBRACE, + STATE(168), 1, + sym_record_field, + [3477] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(451), 1, - sym_id, - ACTIONS(531), 1, + ACTIONS(529), 1, anon_sym_RBRACE, - STATE(166), 1, - sym_variant_case, - [3397] = 4, + ACTIONS(531), 1, + anon_sym_COMMA, + STATE(188), 1, + aux_sym_flags_body_repeat1, + [3490] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(427), 1, - sym_id, ACTIONS(533), 1, - anon_sym_RBRACE, - STATE(170), 1, - sym_record_field, - [3410] = 4, + anon_sym_func, + ACTIONS(535), 1, + anon_sym_static, + STATE(307), 1, + sym_func_type, + [3503] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(443), 1, + ACTIONS(441), 1, sym_id, - STATE(254), 1, + STATE(253), 1, aux_sym_package_decl_repeat1, - STATE(281), 1, + STATE(267), 1, sym_use_path, - [3423] = 3, + [3516] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(241), 1, + ACTIONS(247), 1, anon_sym_RBRACE, - ACTIONS(239), 2, + ACTIONS(245), 2, sym_id, anon_sym_constructor, - [3434] = 4, + [3527] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(535), 1, - anon_sym_COMMA, ACTIONS(537), 1, - anon_sym_RPAREN, - STATE(203), 1, - aux_sym_named_type_list_repeat1, - [3447] = 4, + sym_id, + STATE(150), 1, + sym_include_names_item, + STATE(331), 1, + sym_include_names_list, + [3540] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(539), 1, sym_id, - STATE(254), 1, + STATE(253), 1, aux_sym_package_decl_repeat1, - STATE(287), 1, + STATE(288), 1, sym_use_path, - [3460] = 4, + [3553] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(541), 1, sym_id, - STATE(254), 1, + STATE(253), 1, aux_sym_package_decl_repeat1, - STATE(296), 1, + STATE(298), 1, sym_use_path, - [3473] = 4, + [3566] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(443), 1, + ACTIONS(441), 1, sym_id, - STATE(237), 1, + STATE(244), 1, sym_use_path, - STATE(254), 1, + STATE(253), 1, aux_sym_package_decl_repeat1, - [3486] = 3, + [3579] = 4, ACTIONS(3), 1, sym_comment, + ACTIONS(543), 1, + anon_sym_COMMA, ACTIONS(545), 1, + anon_sym_RPAREN, + STATE(187), 1, + aux_sym_named_type_list_repeat1, + [3592] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(549), 1, anon_sym_RBRACE, - ACTIONS(543), 2, + ACTIONS(547), 2, sym_id, anon_sym_constructor, - [3497] = 4, + [3603] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(449), 1, + ACTIONS(551), 1, + anon_sym_COMMA, + ACTIONS(554), 1, + anon_sym_GT, + STATE(182), 1, + aux_sym_tuple_list_repeat1, + [3616] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(556), 1, + anon_sym_COMMA, + ACTIONS(559), 1, + anon_sym_RPAREN, + STATE(183), 1, + aux_sym_named_type_list_repeat1, + [3629] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(415), 1, sym_id, - ACTIONS(547), 1, + ACTIONS(561), 1, + anon_sym_RPAREN, + STATE(252), 1, + sym_named_type, + [3642] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(447), 1, + sym_id, + ACTIONS(563), 1, anon_sym_RBRACE, - STATE(225), 1, + STATE(232), 1, sym_use_names_item, - [3510] = 4, + [3655] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(549), 1, + ACTIONS(565), 1, anon_sym_RBRACE, - ACTIONS(551), 1, + ACTIONS(567), 1, anon_sym_COMMA, - STATE(190), 1, + STATE(205), 1, aux_sym_use_names_list_repeat1, - [3523] = 4, + [3668] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(553), 1, + ACTIONS(435), 1, + anon_sym_RPAREN, + ACTIONS(569), 1, anon_sym_COMMA, - ACTIONS(556), 1, - anon_sym_GT, STATE(183), 1, - aux_sym_tuple_list_repeat1, - [3536] = 4, + aux_sym_named_type_list_repeat1, + [3681] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(449), 1, - sym_id, - STATE(144), 1, - sym_use_names_item, - STATE(294), 1, - sym_use_names_list, - [3549] = 4, + ACTIONS(571), 1, + anon_sym_RBRACE, + ACTIONS(573), 1, + anon_sym_COMMA, + STATE(188), 1, + aux_sym_flags_body_repeat1, + [3694] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(529), 1, + ACTIONS(537), 1, sym_id, - ACTIONS(558), 1, + ACTIONS(576), 1, anon_sym_RBRACE, - STATE(227), 1, + STATE(234), 1, sym_include_names_item, - [3562] = 4, + [3707] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(560), 1, + ACTIONS(578), 1, anon_sym_RBRACE, - ACTIONS(562), 1, + ACTIONS(580), 1, anon_sym_COMMA, - STATE(194), 1, + STATE(198), 1, aux_sym_include_names_list_repeat1, - [3575] = 4, + [3720] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(564), 1, + ACTIONS(584), 1, + anon_sym_LPAREN, + ACTIONS(582), 2, + anon_sym_RBRACE, + anon_sym_COMMA, + [3731] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(586), 1, anon_sym_COMMA, - ACTIONS(566), 1, + ACTIONS(588), 1, anon_sym_GT, - STATE(195), 1, + STATE(193), 1, aux_sym_tuple_list_repeat1, - [3588] = 4, + [3744] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(568), 1, + ACTIONS(37), 1, + anon_sym_GT, + ACTIONS(590), 1, anon_sym_COMMA, - ACTIONS(571), 1, - anon_sym_RPAREN, - STATE(188), 1, - aux_sym_named_type_list_repeat1, - [3601] = 4, + STATE(182), 1, + aux_sym_tuple_list_repeat1, + [3757] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(409), 1, + ACTIONS(537), 1, sym_id, - ACTIONS(573), 1, - anon_sym_RPAREN, - STATE(245), 1, - sym_named_type, - [3614] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(575), 1, + ACTIONS(592), 1, anon_sym_RBRACE, - ACTIONS(577), 1, - anon_sym_COMMA, - STATE(190), 1, - aux_sym_use_names_list_repeat1, - [3627] = 4, + STATE(234), 1, + sym_include_names_item, + [3770] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(451), 1, + ACTIONS(431), 1, sym_id, - ACTIONS(580), 1, + ACTIONS(594), 1, anon_sym_RBRACE, - STATE(217), 1, + STATE(224), 1, sym_variant_case, - [3640] = 4, + [3783] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(582), 1, + ACTIONS(596), 1, anon_sym_RBRACE, - ACTIONS(584), 1, + ACTIONS(598), 1, anon_sym_COMMA, - STATE(192), 1, + STATE(196), 1, aux_sym_variant_body_repeat1, - [3653] = 4, + [3796] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(451), 1, + ACTIONS(463), 1, sym_id, - ACTIONS(587), 1, + ACTIONS(601), 1, anon_sym_RBRACE, - STATE(150), 1, - sym_variant_case, - [3666] = 4, + STATE(158), 1, + sym_record_field, + [3809] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(589), 1, + ACTIONS(603), 1, anon_sym_RBRACE, - ACTIONS(591), 1, + ACTIONS(605), 1, anon_sym_COMMA, - STATE(194), 1, + STATE(198), 1, aux_sym_include_names_list_repeat1, - [3679] = 4, + [3822] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(33), 1, - anon_sym_GT, - ACTIONS(594), 1, - anon_sym_COMMA, - STATE(183), 1, - aux_sym_tuple_list_repeat1, - [3692] = 3, + ACTIONS(447), 1, + sym_id, + ACTIONS(608), 1, + anon_sym_RBRACE, + STATE(232), 1, + sym_use_names_item, + [3835] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(598), 1, + ACTIONS(612), 1, anon_sym_RBRACE, - ACTIONS(596), 2, + ACTIONS(610), 2, sym_id, anon_sym_constructor, - [3703] = 4, + [3846] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(427), 1, + ACTIONS(447), 1, sym_id, - ACTIONS(600), 1, + STATE(146), 1, + sym_use_names_item, + STATE(338), 1, + sym_use_names_list, + [3859] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(431), 1, + sym_id, + ACTIONS(614), 1, + anon_sym_RBRACE, + STATE(147), 1, + sym_variant_case, + [3872] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(463), 1, + sym_id, + ACTIONS(616), 1, anon_sym_RBRACE, - STATE(211), 1, + STATE(218), 1, sym_record_field, - [3716] = 4, + [3885] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(602), 1, + ACTIONS(618), 1, anon_sym_RBRACE, - ACTIONS(604), 1, + ACTIONS(620), 1, anon_sym_COMMA, - STATE(198), 1, + STATE(204), 1, aux_sym_record_body_repeat1, - [3729] = 4, + [3898] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(529), 1, - sym_id, - ACTIONS(607), 1, + ACTIONS(623), 1, anon_sym_RBRACE, - STATE(227), 1, - sym_include_names_item, - [3742] = 4, + ACTIONS(625), 1, + anon_sym_COMMA, + STATE(205), 1, + aux_sym_use_names_list_repeat1, + [3911] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(449), 1, - sym_id, - ACTIONS(609), 1, - anon_sym_RBRACE, - STATE(225), 1, - sym_use_names_item, - [3755] = 4, + ACTIONS(628), 1, + anon_sym_LBRACE, + STATE(48), 1, + sym_variant_body, + [3921] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(409), 1, + ACTIONS(415), 1, sym_id, - ACTIONS(611), 1, - anon_sym_RPAREN, - STATE(245), 1, + STATE(252), 1, sym_named_type, - [3768] = 4, + [3931] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(613), 1, + ACTIONS(630), 1, + sym_id, + ACTIONS(632), 1, anon_sym_RBRACE, - ACTIONS(615), 1, - anon_sym_COMMA, - STATE(202), 1, - aux_sym_flags_body_repeat1, - [3781] = 4, + [3941] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(611), 1, - anon_sym_RPAREN, - ACTIONS(618), 1, - anon_sym_COMMA, - STATE(188), 1, - aux_sym_named_type_list_repeat1, - [3794] = 3, + ACTIONS(634), 1, + anon_sym_LBRACE, + STATE(29), 1, + sym_interface_body, + [3951] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(636), 1, + anon_sym_LPAREN, + STATE(302), 1, + sym_param_list, + [3961] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(427), 1, + ACTIONS(630), 1, sym_id, - STATE(211), 1, - sym_record_field, - [3804] = 3, + ACTIONS(638), 1, + anon_sym_RBRACE, + [3971] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(620), 1, - anon_sym_LBRACE, - STATE(28), 1, - sym_interface_body, - [3814] = 3, + ACTIONS(475), 1, + anon_sym_RBRACE, + ACTIONS(630), 1, + sym_id, + [3981] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(622), 1, - anon_sym_LPAREN, - STATE(303), 1, - sym_param_list, - [3824] = 3, + ACTIONS(491), 1, + anon_sym_RBRACE, + ACTIONS(630), 1, + sym_id, + [3991] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(624), 1, + ACTIONS(640), 1, anon_sym_COMMA, - ACTIONS(626), 1, + ACTIONS(642), 1, anon_sym_GT, - [3834] = 3, + [4001] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(628), 1, - sym_id, - ACTIONS(630), 1, + ACTIONS(507), 1, anon_sym_RBRACE, - [3844] = 2, + ACTIONS(630), 1, + sym_id, + [4011] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(632), 2, + ACTIONS(644), 1, + sym_id, + ACTIONS(646), 1, anon_sym_RBRACE, - anon_sym_COMMA, - [3852] = 3, + [4021] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(622), 1, - anon_sym_LPAREN, - STATE(140), 1, - sym_param_list, - [3862] = 2, + ACTIONS(648), 2, + anon_sym_RBRACE, + anon_sym_COMMA, + [4029] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(602), 2, + ACTIONS(618), 2, anon_sym_RBRACE, anon_sym_COMMA, - [3870] = 2, + [4037] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(613), 2, + ACTIONS(571), 2, anon_sym_RBRACE, anon_sym_COMMA, - [3878] = 3, + [4045] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(634), 1, + ACTIONS(650), 1, sym_id, - STATE(249), 1, + STATE(247), 1, aux_sym_package_decl_repeat1, - [3888] = 3, + [4055] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(628), 1, + ACTIONS(630), 1, sym_id, - ACTIONS(636), 1, + ACTIONS(652), 1, anon_sym_RBRACE, - [3898] = 3, + [4065] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(628), 1, - sym_id, - ACTIONS(638), 1, + ACTIONS(529), 1, anon_sym_RBRACE, - [3908] = 3, + ACTIONS(630), 1, + sym_id, + [4075] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(640), 1, - sym_id, - ACTIONS(642), 1, - anon_sym_RBRACE, - [3918] = 2, + ACTIONS(636), 1, + anon_sym_LPAREN, + STATE(142), 1, + sym_param_list, + [4085] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(582), 2, + ACTIONS(596), 2, anon_sym_RBRACE, anon_sym_COMMA, - [3926] = 3, + [4093] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(628), 1, + ACTIONS(654), 1, sym_id, - ACTIONS(644), 1, + ACTIONS(656), 1, anon_sym_RBRACE, - [3936] = 3, - ACTIONS(3), 1, - sym_comment, - ACTIONS(521), 1, - anon_sym_func, - STATE(261), 1, - sym_func_type, - [3946] = 3, + [4103] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(646), 1, + ACTIONS(630), 1, sym_id, - ACTIONS(648), 1, + ACTIONS(658), 1, anon_sym_RBRACE, - [3956] = 2, + [4113] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(650), 2, + ACTIONS(533), 1, + anon_sym_func, + STATE(294), 1, + sym_func_type, + [4123] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(660), 2, anon_sym_SEMI, anon_sym_DASH_GT, - [3964] = 3, + [4131] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(473), 1, - anon_sym_RBRACE, - ACTIONS(628), 1, + ACTIONS(662), 1, sym_id, - [3974] = 2, - ACTIONS(3), 1, - sym_comment, - ACTIONS(652), 2, + ACTIONS(664), 1, anon_sym_RBRACE, - anon_sym_COMMA, - [3982] = 3, - ACTIONS(3), 1, - sym_comment, - ACTIONS(654), 1, - anon_sym_LBRACE, - STATE(38), 1, - sym_include_names_body, - [3992] = 2, + [4141] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(656), 2, + ACTIONS(666), 1, + sym_id, + ACTIONS(668), 1, anon_sym_RBRACE, - anon_sym_COMMA, - [4000] = 2, + [4151] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(658), 2, + ACTIONS(670), 2, anon_sym_RBRACE, anon_sym_COMMA, - [4008] = 2, + [4159] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(660), 2, + ACTIONS(672), 2, anon_sym_RBRACE, anon_sym_COMMA, - [4016] = 3, + [4167] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(497), 1, + ACTIONS(674), 2, anon_sym_RBRACE, - ACTIONS(628), 1, - sym_id, - [4026] = 3, + anon_sym_COMMA, + [4175] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(493), 1, + ACTIONS(676), 2, anon_sym_RBRACE, - ACTIONS(628), 1, - sym_id, - [4036] = 3, + anon_sym_COMMA, + [4183] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(521), 1, - anon_sym_func, - STATE(319), 1, - sym_func_type, - [4046] = 3, + ACTIONS(678), 1, + anon_sym_LBRACE, + STATE(282), 1, + sym_include_names_body, + [4193] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(662), 1, + ACTIONS(680), 1, anon_sym_LBRACE, - STATE(26), 1, + STATE(88), 1, sym_enum_body, - [4056] = 3, + [4203] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(664), 1, + ACTIONS(682), 1, anon_sym_LBRACE, - STATE(48), 1, + STATE(86), 1, sym_variant_body, - [4066] = 3, + [4213] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(533), 1, + anon_sym_func, + STATE(323), 1, + sym_func_type, + [4223] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(684), 1, + anon_sym_LBRACE, + STATE(46), 1, + sym_enum_body, + [4233] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(666), 1, + ACTIONS(686), 1, anon_sym_LBRACE, STATE(50), 1, sym_flags_body, - [4076] = 3, + [4243] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(668), 1, + ACTIONS(688), 1, anon_sym_LBRACE, - STATE(58), 1, + STATE(51), 1, sym_record_body, - [4086] = 3, + [4253] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(517), 1, - anon_sym_RBRACE, - ACTIONS(628), 1, - sym_id, - [4096] = 3, + ACTIONS(690), 1, + anon_sym_LBRACE, + STATE(85), 1, + sym_flags_body, + [4263] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(670), 1, + ACTIONS(463), 1, sym_id, - ACTIONS(672), 1, - anon_sym_RBRACE, - [4106] = 3, + STATE(218), 1, + sym_record_field, + [4273] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(674), 1, + ACTIONS(692), 1, anon_sym_SEMI, - ACTIONS(676), 1, + ACTIONS(694), 1, anon_sym_with, - [4116] = 3, + [4283] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(678), 1, - sym_id, - ACTIONS(680), 1, - anon_sym_RBRACE, - [4126] = 2, + ACTIONS(696), 1, + anon_sym_LBRACE, + STATE(66), 1, + sym_record_body, + [4293] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(682), 2, + ACTIONS(698), 2, anon_sym_RBRACE, anon_sym_COMMA, - [4134] = 2, + [4301] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(684), 2, - anon_sym_SEMI, - anon_sym_DASH_GT, - [4142] = 3, + ACTIONS(700), 1, + sym_id, + STATE(256), 1, + aux_sym_package_decl_repeat1, + [4311] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(451), 1, + ACTIONS(431), 1, sym_id, - STATE(217), 1, + STATE(224), 1, sym_variant_case, - [4152] = 3, + [4321] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(377), 1, + ACTIONS(389), 1, anon_sym_SEMI, - ACTIONS(686), 1, + ACTIONS(702), 1, anon_sym_COLON, - [4162] = 3, + [4331] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(688), 1, - anon_sym_LBRACE, - STATE(88), 1, - sym_enum_body, - [4172] = 2, + ACTIONS(704), 1, + anon_sym_SEMI, + ACTIONS(706), 1, + anon_sym_as, + [4341] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(690), 2, + ACTIONS(708), 2, anon_sym_COMMA, anon_sym_RPAREN, - [4180] = 2, + [4349] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(571), 2, + ACTIONS(559), 2, anon_sym_COMMA, anon_sym_RPAREN, - [4188] = 3, + [4357] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(692), 1, - anon_sym_LBRACE, - STATE(89), 1, - sym_variant_body, - [4198] = 3, + ACTIONS(710), 1, + sym_id, + STATE(256), 1, + aux_sym_package_decl_repeat1, + [4367] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(694), 1, + ACTIONS(712), 1, anon_sym_LBRACE, - STATE(90), 1, - sym_flags_body, - [4208] = 3, + STATE(132), 1, + sym_world_body, + [4377] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(696), 1, + ACTIONS(634), 1, anon_sym_LBRACE, - STATE(93), 1, - sym_record_body, - [4218] = 3, + STATE(131), 1, + sym_interface_body, + [4387] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(698), 1, + ACTIONS(714), 1, sym_id, - STATE(258), 1, + STATE(256), 1, aux_sym_package_decl_repeat1, - [4228] = 3, + [4397] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(449), 1, + ACTIONS(447), 1, sym_id, - STATE(225), 1, + STATE(232), 1, sym_use_names_item, - [4238] = 3, + [4407] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(529), 1, + ACTIONS(537), 1, sym_id, - STATE(227), 1, + STATE(234), 1, sym_include_names_item, - [4248] = 2, + [4417] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(556), 2, + ACTIONS(554), 2, anon_sym_COMMA, anon_sym_GT, - [4256] = 3, - ACTIONS(3), 1, - sym_comment, - ACTIONS(700), 1, - anon_sym_SEMI, - ACTIONS(702), 1, - anon_sym_as, - [4266] = 3, - ACTIONS(3), 1, - sym_comment, - ACTIONS(704), 1, - sym_id, - STATE(258), 1, - aux_sym_package_decl_repeat1, - [4276] = 3, - ACTIONS(3), 1, - sym_comment, - ACTIONS(706), 1, - anon_sym_LBRACE, - STATE(130), 1, - sym_world_body, - [4286] = 3, - ACTIONS(3), 1, - sym_comment, - ACTIONS(620), 1, - anon_sym_LBRACE, - STATE(128), 1, - sym_interface_body, - [4296] = 3, - ACTIONS(3), 1, - sym_comment, - ACTIONS(409), 1, - sym_id, - STATE(245), 1, - sym_named_type, - [4306] = 3, - ACTIONS(3), 1, - sym_comment, - ACTIONS(708), 1, - sym_id, - STATE(258), 1, - aux_sym_package_decl_repeat1, - [4316] = 3, + [4425] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(377), 1, + ACTIONS(717), 2, anon_sym_SEMI, - ACTIONS(711), 1, - anon_sym_COLON, - [4326] = 2, - ACTIONS(3), 1, - sym_comment, - ACTIONS(713), 1, - sym_id, - [4333] = 2, + anon_sym_DASH_GT, + [4433] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(715), 1, + ACTIONS(389), 1, anon_sym_SEMI, - [4340] = 2, - ACTIONS(3), 1, - sym_comment, - ACTIONS(717), 1, - sym_valid_semver, - [4347] = 2, - ACTIONS(3), 1, - sym_comment, ACTIONS(719), 1, - anon_sym_SEMI, - [4354] = 2, + anon_sym_COLON, + [4443] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(721), 1, - anon_sym_COLON, - [4361] = 2, + sym_id, + [4450] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(723), 1, - sym_id, - [4368] = 2, + anon_sym_SEMI, + [4457] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(725), 1, - sym_id, - [4375] = 2, + anon_sym_GT, + [4464] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(727), 1, - anon_sym_GT, - [4382] = 2, + anon_sym_SEMI, + [4471] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(729), 1, - sym_id, - [4389] = 2, + anon_sym_SEMI, + [4478] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(731), 1, - sym_id, - [4396] = 2, + anon_sym_DOT, + [4485] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(733), 1, - sym_id, - [4403] = 2, + sym_valid_semver, + [4492] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(735), 1, - anon_sym_SEMI, - [4410] = 2, + sym_valid_semver, + [4499] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(737), 1, - sym_id, - [4417] = 2, - ACTIONS(3), 1, - sym_comment, - ACTIONS(739), 1, anon_sym_SEMI, - [4424] = 2, + [4506] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(624), 1, - anon_sym_COMMA, - [4431] = 2, + ACTIONS(739), 1, + anon_sym_COLON, + [4513] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(741), 1, - anon_sym_RPAREN, - [4438] = 2, + sym_id, + [4520] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(743), 1, - sym_valid_semver, - [4445] = 2, + sym_id, + [4527] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(745), 1, - anon_sym_SEMI, - [4452] = 2, + sym_id, + [4534] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(747), 1, - sym_valid_semver, - [4459] = 2, + sym_id, + [4541] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(749), 1, sym_id, - [4466] = 2, + [4548] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(751), 1, sym_id, - [4473] = 2, + [4555] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(753), 1, - anon_sym_DOT, - [4480] = 2, + anon_sym_SEMI, + [4562] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(755), 1, - sym_id, - [4487] = 2, + anon_sym_RPAREN, + [4569] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(757), 1, anon_sym_SEMI, - [4494] = 2, + [4576] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(759), 1, - sym_id, - [4501] = 2, + anon_sym_COLON, + [4583] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(761), 1, - anon_sym_GT, - [4508] = 2, + anon_sym_SEMI, + [4590] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(763), 1, - anon_sym_GT, - [4515] = 2, + sym_valid_semver, + [4597] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(765), 1, anon_sym_SEMI, - [4522] = 2, - ACTIONS(3), 1, - sym_comment, - ACTIONS(305), 1, - anon_sym_COLON, - [4529] = 2, + [4604] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(767), 1, - ts_builtin_sym_end, - [4536] = 2, + sym_valid_semver, + [4611] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(769), 1, sym_id, - [4543] = 2, + [4618] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(771), 1, - anon_sym_RPAREN, - [4550] = 2, + sym_id, + [4625] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(773), 1, anon_sym_SEMI, - [4557] = 2, + [4632] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(775), 1, - anon_sym_GT, - [4564] = 2, + sym_id, + [4639] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(777), 1, - anon_sym_RBRACE, - [4571] = 2, + anon_sym_RPAREN, + [4646] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(779), 1, - sym_valid_semver, - [4578] = 2, + anon_sym_SEMI, + [4653] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(781), 1, anon_sym_SEMI, - [4585] = 2, + [4660] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(783), 1, anon_sym_COLON, - [4592] = 2, + [4667] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(628), 1, - sym_id, - [4599] = 2, + ACTIONS(785), 1, + anon_sym_SEMI, + [4674] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(785), 1, - sym_id, - [4606] = 2, + ACTIONS(309), 1, + anon_sym_COLON, + [4681] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(787), 1, - anon_sym_SEMI, - [4613] = 2, + ts_builtin_sym_end, + [4688] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(789), 1, - anon_sym_SEMI, - [4620] = 2, + sym_id, + [4695] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(791), 1, anon_sym_SEMI, - [4627] = 2, + [4702] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(630), 1, + sym_id, + [4709] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(793), 1, - anon_sym_SEMI, - [4634] = 2, + anon_sym_EQ, + [4716] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(795), 1, - anon_sym_COLON, - [4641] = 2, + sym_id, + [4723] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(797), 1, - anon_sym_LT, - [4648] = 2, + anon_sym_SEMI, + [4730] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(799), 1, - sym_id, - [4655] = 2, + anon_sym_LBRACE, + [4737] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(801), 1, - anon_sym_LT, - [4662] = 2, + anon_sym_SEMI, + [4744] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(803), 1, - anon_sym_LT, - [4669] = 2, + anon_sym_RPAREN, + [4751] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(805), 1, - anon_sym_EQ, - [4676] = 2, + sym_id, + [4758] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(807), 1, - anon_sym_LT, - [4683] = 2, + anon_sym_SEMI, + [4765] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(809), 1, anon_sym_SEMI, - [4690] = 2, + [4772] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(811), 1, - anon_sym_SEMI, - [4697] = 2, + anon_sym_LT, + [4779] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(813), 1, - anon_sym_LBRACE, - [4704] = 2, + anon_sym_LT, + [4786] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(815), 1, - anon_sym_COLON, - [4711] = 2, + anon_sym_LT, + [4793] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(817), 1, - anon_sym_SEMI, - [4718] = 2, + anon_sym_LT, + [4800] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(819), 1, sym_id, - [4725] = 2, + [4807] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(821), 1, - anon_sym_SEMI, - [4732] = 2, + anon_sym_GT, + [4814] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(823), 1, - anon_sym_RPAREN, - [4739] = 2, + anon_sym_LT, + [4821] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(825), 1, - anon_sym_SEMI, - [4746] = 2, + anon_sym_GT, + [4828] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(827), 1, - sym_id, - [4753] = 2, + anon_sym_SEMI, + [4835] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(829), 1, - sym_id, - [4760] = 2, + anon_sym_COLON, + [4842] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(831), 1, sym_id, - [4767] = 2, + [4849] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(640), 1, + anon_sym_COMMA, + [4856] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(833), 1, sym_id, - [4774] = 2, + [4863] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(835), 1, - anon_sym_RBRACE, - [4781] = 2, + anon_sym_SEMI, + [4870] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(837), 1, - anon_sym_RBRACE, - [4788] = 2, + anon_sym_SEMI, + [4877] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(839), 1, - anon_sym_EQ, - [4795] = 2, + anon_sym_GT, + [4884] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(841), 1, - anon_sym_as, - [4802] = 2, + anon_sym_GT, + [4891] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(843), 1, - sym_id, - [4809] = 2, + anon_sym_GT, + [4898] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(845), 1, - anon_sym_LBRACE, - [4816] = 2, + sym_id, + [4905] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(847), 1, - anon_sym_DOT, - [4823] = 2, + sym_id, + [4912] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(849), 1, - anon_sym_GT, + sym_id, + [4919] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(851), 1, + sym_id, + [4926] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(853), 1, + anon_sym_RBRACE, + [4933] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(855), 1, + anon_sym_RBRACE, + [4940] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(857), 1, + anon_sym_EQ, + [4947] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(859), 1, + anon_sym_as, + [4954] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(861), 1, + sym_id, + [4961] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(863), 1, + anon_sym_LBRACE, + [4968] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(865), 1, + anon_sym_DOT, + [4975] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(867), 1, + anon_sym_RBRACE, }; static const uint32_t ts_small_parse_table_map[] = { [SMALL_STATE(2)] = 0, - [SMALL_STATE(3)] = 52, - [SMALL_STATE(4)] = 104, - [SMALL_STATE(5)] = 156, - [SMALL_STATE(6)] = 208, - [SMALL_STATE(7)] = 260, - [SMALL_STATE(8)] = 309, - [SMALL_STATE(9)] = 358, - [SMALL_STATE(10)] = 407, - [SMALL_STATE(11)] = 456, - [SMALL_STATE(12)] = 505, - [SMALL_STATE(13)] = 554, - [SMALL_STATE(14)] = 603, - [SMALL_STATE(15)] = 652, - [SMALL_STATE(16)] = 701, - [SMALL_STATE(17)] = 765, - [SMALL_STATE(18)] = 829, - [SMALL_STATE(19)] = 893, - [SMALL_STATE(20)] = 945, - [SMALL_STATE(21)] = 997, - [SMALL_STATE(22)] = 1049, - [SMALL_STATE(23)] = 1069, - [SMALL_STATE(24)] = 1095, - [SMALL_STATE(25)] = 1115, - [SMALL_STATE(26)] = 1141, - [SMALL_STATE(27)] = 1158, - [SMALL_STATE(28)] = 1175, - [SMALL_STATE(29)] = 1192, - [SMALL_STATE(30)] = 1209, - [SMALL_STATE(31)] = 1226, - [SMALL_STATE(32)] = 1243, - [SMALL_STATE(33)] = 1260, - [SMALL_STATE(34)] = 1277, - [SMALL_STATE(35)] = 1294, - [SMALL_STATE(36)] = 1311, - [SMALL_STATE(37)] = 1328, - [SMALL_STATE(38)] = 1345, - [SMALL_STATE(39)] = 1362, - [SMALL_STATE(40)] = 1379, - [SMALL_STATE(41)] = 1396, - [SMALL_STATE(42)] = 1413, - [SMALL_STATE(43)] = 1430, - [SMALL_STATE(44)] = 1447, - [SMALL_STATE(45)] = 1464, - [SMALL_STATE(46)] = 1481, - [SMALL_STATE(47)] = 1498, - [SMALL_STATE(48)] = 1515, - [SMALL_STATE(49)] = 1532, - [SMALL_STATE(50)] = 1549, - [SMALL_STATE(51)] = 1566, - [SMALL_STATE(52)] = 1583, - [SMALL_STATE(53)] = 1600, - [SMALL_STATE(54)] = 1617, - [SMALL_STATE(55)] = 1634, - [SMALL_STATE(56)] = 1651, - [SMALL_STATE(57)] = 1668, - [SMALL_STATE(58)] = 1685, - [SMALL_STATE(59)] = 1702, - [SMALL_STATE(60)] = 1719, - [SMALL_STATE(61)] = 1736, - [SMALL_STATE(62)] = 1753, - [SMALL_STATE(63)] = 1770, - [SMALL_STATE(64)] = 1787, - [SMALL_STATE(65)] = 1804, - [SMALL_STATE(66)] = 1821, - [SMALL_STATE(67)] = 1838, - [SMALL_STATE(68)] = 1855, - [SMALL_STATE(69)] = 1872, - [SMALL_STATE(70)] = 1889, - [SMALL_STATE(71)] = 1906, - [SMALL_STATE(72)] = 1923, - [SMALL_STATE(73)] = 1940, - [SMALL_STATE(74)] = 1957, - [SMALL_STATE(75)] = 1974, - [SMALL_STATE(76)] = 1991, - [SMALL_STATE(77)] = 2008, - [SMALL_STATE(78)] = 2025, - [SMALL_STATE(79)] = 2042, - [SMALL_STATE(80)] = 2059, - [SMALL_STATE(81)] = 2076, - [SMALL_STATE(82)] = 2093, - [SMALL_STATE(83)] = 2110, - [SMALL_STATE(84)] = 2127, - [SMALL_STATE(85)] = 2144, - [SMALL_STATE(86)] = 2161, - [SMALL_STATE(87)] = 2178, - [SMALL_STATE(88)] = 2195, - [SMALL_STATE(89)] = 2212, - [SMALL_STATE(90)] = 2229, - [SMALL_STATE(91)] = 2246, - [SMALL_STATE(92)] = 2263, - [SMALL_STATE(93)] = 2280, - [SMALL_STATE(94)] = 2297, - [SMALL_STATE(95)] = 2314, - [SMALL_STATE(96)] = 2331, - [SMALL_STATE(97)] = 2348, - [SMALL_STATE(98)] = 2370, - [SMALL_STATE(99)] = 2392, - [SMALL_STATE(100)] = 2414, - [SMALL_STATE(101)] = 2436, - [SMALL_STATE(102)] = 2458, - [SMALL_STATE(103)] = 2477, - [SMALL_STATE(104)] = 2494, - [SMALL_STATE(105)] = 2514, - [SMALL_STATE(106)] = 2528, - [SMALL_STATE(107)] = 2548, - [SMALL_STATE(108)] = 2568, - [SMALL_STATE(109)] = 2582, - [SMALL_STATE(110)] = 2602, - [SMALL_STATE(111)] = 2622, - [SMALL_STATE(112)] = 2633, - [SMALL_STATE(113)] = 2644, - [SMALL_STATE(114)] = 2663, - [SMALL_STATE(115)] = 2674, - [SMALL_STATE(116)] = 2685, - [SMALL_STATE(117)] = 2696, - [SMALL_STATE(118)] = 2709, - [SMALL_STATE(119)] = 2728, - [SMALL_STATE(120)] = 2739, - [SMALL_STATE(121)] = 2758, - [SMALL_STATE(122)] = 2769, - [SMALL_STATE(123)] = 2780, - [SMALL_STATE(124)] = 2790, - [SMALL_STATE(125)] = 2800, - [SMALL_STATE(126)] = 2816, - [SMALL_STATE(127)] = 2826, - [SMALL_STATE(128)] = 2836, - [SMALL_STATE(129)] = 2846, - [SMALL_STATE(130)] = 2856, - [SMALL_STATE(131)] = 2866, - [SMALL_STATE(132)] = 2876, - [SMALL_STATE(133)] = 2892, - [SMALL_STATE(134)] = 2902, - [SMALL_STATE(135)] = 2918, - [SMALL_STATE(136)] = 2928, - [SMALL_STATE(137)] = 2938, - [SMALL_STATE(138)] = 2948, - [SMALL_STATE(139)] = 2961, - [SMALL_STATE(140)] = 2974, - [SMALL_STATE(141)] = 2987, - [SMALL_STATE(142)] = 3000, - [SMALL_STATE(143)] = 3011, - [SMALL_STATE(144)] = 3024, - [SMALL_STATE(145)] = 3037, - [SMALL_STATE(146)] = 3050, - [SMALL_STATE(147)] = 3063, - [SMALL_STATE(148)] = 3076, - [SMALL_STATE(149)] = 3089, - [SMALL_STATE(150)] = 3100, - [SMALL_STATE(151)] = 3113, - [SMALL_STATE(152)] = 3126, - [SMALL_STATE(153)] = 3137, - [SMALL_STATE(154)] = 3150, - [SMALL_STATE(155)] = 3163, - [SMALL_STATE(156)] = 3176, - [SMALL_STATE(157)] = 3189, - [SMALL_STATE(158)] = 3202, - [SMALL_STATE(159)] = 3215, - [SMALL_STATE(160)] = 3228, - [SMALL_STATE(161)] = 3241, - [SMALL_STATE(162)] = 3254, - [SMALL_STATE(163)] = 3267, - [SMALL_STATE(164)] = 3280, - [SMALL_STATE(165)] = 3293, - [SMALL_STATE(166)] = 3306, - [SMALL_STATE(167)] = 3319, - [SMALL_STATE(168)] = 3332, - [SMALL_STATE(169)] = 3345, - [SMALL_STATE(170)] = 3358, - [SMALL_STATE(171)] = 3371, - [SMALL_STATE(172)] = 3384, - [SMALL_STATE(173)] = 3397, - [SMALL_STATE(174)] = 3410, - [SMALL_STATE(175)] = 3423, - [SMALL_STATE(176)] = 3434, - [SMALL_STATE(177)] = 3447, - [SMALL_STATE(178)] = 3460, - [SMALL_STATE(179)] = 3473, - [SMALL_STATE(180)] = 3486, - [SMALL_STATE(181)] = 3497, - [SMALL_STATE(182)] = 3510, - [SMALL_STATE(183)] = 3523, - [SMALL_STATE(184)] = 3536, - [SMALL_STATE(185)] = 3549, - [SMALL_STATE(186)] = 3562, - [SMALL_STATE(187)] = 3575, - [SMALL_STATE(188)] = 3588, - [SMALL_STATE(189)] = 3601, - [SMALL_STATE(190)] = 3614, - [SMALL_STATE(191)] = 3627, - [SMALL_STATE(192)] = 3640, - [SMALL_STATE(193)] = 3653, - [SMALL_STATE(194)] = 3666, - [SMALL_STATE(195)] = 3679, - [SMALL_STATE(196)] = 3692, - [SMALL_STATE(197)] = 3703, - [SMALL_STATE(198)] = 3716, - [SMALL_STATE(199)] = 3729, - [SMALL_STATE(200)] = 3742, - [SMALL_STATE(201)] = 3755, - [SMALL_STATE(202)] = 3768, - [SMALL_STATE(203)] = 3781, - [SMALL_STATE(204)] = 3794, - [SMALL_STATE(205)] = 3804, - [SMALL_STATE(206)] = 3814, - [SMALL_STATE(207)] = 3824, - [SMALL_STATE(208)] = 3834, - [SMALL_STATE(209)] = 3844, - [SMALL_STATE(210)] = 3852, - [SMALL_STATE(211)] = 3862, - [SMALL_STATE(212)] = 3870, - [SMALL_STATE(213)] = 3878, - [SMALL_STATE(214)] = 3888, - [SMALL_STATE(215)] = 3898, - [SMALL_STATE(216)] = 3908, - [SMALL_STATE(217)] = 3918, - [SMALL_STATE(218)] = 3926, - [SMALL_STATE(219)] = 3936, - [SMALL_STATE(220)] = 3946, - [SMALL_STATE(221)] = 3956, - [SMALL_STATE(222)] = 3964, - [SMALL_STATE(223)] = 3974, - [SMALL_STATE(224)] = 3982, - [SMALL_STATE(225)] = 3992, - [SMALL_STATE(226)] = 4000, - [SMALL_STATE(227)] = 4008, - [SMALL_STATE(228)] = 4016, - [SMALL_STATE(229)] = 4026, - [SMALL_STATE(230)] = 4036, - [SMALL_STATE(231)] = 4046, - [SMALL_STATE(232)] = 4056, - [SMALL_STATE(233)] = 4066, - [SMALL_STATE(234)] = 4076, - [SMALL_STATE(235)] = 4086, - [SMALL_STATE(236)] = 4096, - [SMALL_STATE(237)] = 4106, - [SMALL_STATE(238)] = 4116, - [SMALL_STATE(239)] = 4126, - [SMALL_STATE(240)] = 4134, - [SMALL_STATE(241)] = 4142, - [SMALL_STATE(242)] = 4152, - [SMALL_STATE(243)] = 4162, - [SMALL_STATE(244)] = 4172, - [SMALL_STATE(245)] = 4180, - [SMALL_STATE(246)] = 4188, - [SMALL_STATE(247)] = 4198, - [SMALL_STATE(248)] = 4208, - [SMALL_STATE(249)] = 4218, - [SMALL_STATE(250)] = 4228, - [SMALL_STATE(251)] = 4238, - [SMALL_STATE(252)] = 4248, - [SMALL_STATE(253)] = 4256, - [SMALL_STATE(254)] = 4266, - [SMALL_STATE(255)] = 4276, - [SMALL_STATE(256)] = 4286, - [SMALL_STATE(257)] = 4296, - [SMALL_STATE(258)] = 4306, - [SMALL_STATE(259)] = 4316, - [SMALL_STATE(260)] = 4326, - [SMALL_STATE(261)] = 4333, - [SMALL_STATE(262)] = 4340, - [SMALL_STATE(263)] = 4347, - [SMALL_STATE(264)] = 4354, - [SMALL_STATE(265)] = 4361, - [SMALL_STATE(266)] = 4368, - [SMALL_STATE(267)] = 4375, - [SMALL_STATE(268)] = 4382, - [SMALL_STATE(269)] = 4389, - [SMALL_STATE(270)] = 4396, - [SMALL_STATE(271)] = 4403, - [SMALL_STATE(272)] = 4410, - [SMALL_STATE(273)] = 4417, - [SMALL_STATE(274)] = 4424, - [SMALL_STATE(275)] = 4431, - [SMALL_STATE(276)] = 4438, - [SMALL_STATE(277)] = 4445, - [SMALL_STATE(278)] = 4452, - [SMALL_STATE(279)] = 4459, - [SMALL_STATE(280)] = 4466, - [SMALL_STATE(281)] = 4473, - [SMALL_STATE(282)] = 4480, - [SMALL_STATE(283)] = 4487, - [SMALL_STATE(284)] = 4494, - [SMALL_STATE(285)] = 4501, - [SMALL_STATE(286)] = 4508, - [SMALL_STATE(287)] = 4515, - [SMALL_STATE(288)] = 4522, - [SMALL_STATE(289)] = 4529, - [SMALL_STATE(290)] = 4536, - [SMALL_STATE(291)] = 4543, - [SMALL_STATE(292)] = 4550, - [SMALL_STATE(293)] = 4557, - [SMALL_STATE(294)] = 4564, - [SMALL_STATE(295)] = 4571, - [SMALL_STATE(296)] = 4578, - [SMALL_STATE(297)] = 4585, - [SMALL_STATE(298)] = 4592, - [SMALL_STATE(299)] = 4599, - [SMALL_STATE(300)] = 4606, - [SMALL_STATE(301)] = 4613, - [SMALL_STATE(302)] = 4620, - [SMALL_STATE(303)] = 4627, - [SMALL_STATE(304)] = 4634, - [SMALL_STATE(305)] = 4641, - [SMALL_STATE(306)] = 4648, - [SMALL_STATE(307)] = 4655, - [SMALL_STATE(308)] = 4662, - [SMALL_STATE(309)] = 4669, - [SMALL_STATE(310)] = 4676, - [SMALL_STATE(311)] = 4683, - [SMALL_STATE(312)] = 4690, - [SMALL_STATE(313)] = 4697, - [SMALL_STATE(314)] = 4704, - [SMALL_STATE(315)] = 4711, - [SMALL_STATE(316)] = 4718, - [SMALL_STATE(317)] = 4725, - [SMALL_STATE(318)] = 4732, - [SMALL_STATE(319)] = 4739, - [SMALL_STATE(320)] = 4746, - [SMALL_STATE(321)] = 4753, - [SMALL_STATE(322)] = 4760, - [SMALL_STATE(323)] = 4767, - [SMALL_STATE(324)] = 4774, - [SMALL_STATE(325)] = 4781, - [SMALL_STATE(326)] = 4788, - [SMALL_STATE(327)] = 4795, - [SMALL_STATE(328)] = 4802, - [SMALL_STATE(329)] = 4809, - [SMALL_STATE(330)] = 4816, - [SMALL_STATE(331)] = 4823, + [SMALL_STATE(3)] = 62, + [SMALL_STATE(4)] = 121, + [SMALL_STATE(5)] = 180, + [SMALL_STATE(6)] = 239, + [SMALL_STATE(7)] = 298, + [SMALL_STATE(8)] = 354, + [SMALL_STATE(9)] = 410, + [SMALL_STATE(10)] = 466, + [SMALL_STATE(11)] = 522, + [SMALL_STATE(12)] = 578, + [SMALL_STATE(13)] = 634, + [SMALL_STATE(14)] = 690, + [SMALL_STATE(15)] = 746, + [SMALL_STATE(16)] = 802, + [SMALL_STATE(17)] = 866, + [SMALL_STATE(18)] = 930, + [SMALL_STATE(19)] = 994, + [SMALL_STATE(20)] = 1046, + [SMALL_STATE(21)] = 1098, + [SMALL_STATE(22)] = 1150, + [SMALL_STATE(23)] = 1170, + [SMALL_STATE(24)] = 1196, + [SMALL_STATE(25)] = 1216, + [SMALL_STATE(26)] = 1242, + [SMALL_STATE(27)] = 1259, + [SMALL_STATE(28)] = 1276, + [SMALL_STATE(29)] = 1293, + [SMALL_STATE(30)] = 1310, + [SMALL_STATE(31)] = 1327, + [SMALL_STATE(32)] = 1344, + [SMALL_STATE(33)] = 1361, + [SMALL_STATE(34)] = 1378, + [SMALL_STATE(35)] = 1395, + [SMALL_STATE(36)] = 1412, + [SMALL_STATE(37)] = 1429, + [SMALL_STATE(38)] = 1446, + [SMALL_STATE(39)] = 1463, + [SMALL_STATE(40)] = 1480, + [SMALL_STATE(41)] = 1497, + [SMALL_STATE(42)] = 1514, + [SMALL_STATE(43)] = 1531, + [SMALL_STATE(44)] = 1548, + [SMALL_STATE(45)] = 1565, + [SMALL_STATE(46)] = 1582, + [SMALL_STATE(47)] = 1599, + [SMALL_STATE(48)] = 1616, + [SMALL_STATE(49)] = 1633, + [SMALL_STATE(50)] = 1650, + [SMALL_STATE(51)] = 1667, + [SMALL_STATE(52)] = 1684, + [SMALL_STATE(53)] = 1701, + [SMALL_STATE(54)] = 1718, + [SMALL_STATE(55)] = 1735, + [SMALL_STATE(56)] = 1752, + [SMALL_STATE(57)] = 1769, + [SMALL_STATE(58)] = 1786, + [SMALL_STATE(59)] = 1803, + [SMALL_STATE(60)] = 1820, + [SMALL_STATE(61)] = 1837, + [SMALL_STATE(62)] = 1854, + [SMALL_STATE(63)] = 1871, + [SMALL_STATE(64)] = 1888, + [SMALL_STATE(65)] = 1905, + [SMALL_STATE(66)] = 1922, + [SMALL_STATE(67)] = 1939, + [SMALL_STATE(68)] = 1956, + [SMALL_STATE(69)] = 1973, + [SMALL_STATE(70)] = 1990, + [SMALL_STATE(71)] = 2007, + [SMALL_STATE(72)] = 2024, + [SMALL_STATE(73)] = 2041, + [SMALL_STATE(74)] = 2058, + [SMALL_STATE(75)] = 2075, + [SMALL_STATE(76)] = 2092, + [SMALL_STATE(77)] = 2109, + [SMALL_STATE(78)] = 2126, + [SMALL_STATE(79)] = 2143, + [SMALL_STATE(80)] = 2160, + [SMALL_STATE(81)] = 2177, + [SMALL_STATE(82)] = 2194, + [SMALL_STATE(83)] = 2211, + [SMALL_STATE(84)] = 2228, + [SMALL_STATE(85)] = 2245, + [SMALL_STATE(86)] = 2262, + [SMALL_STATE(87)] = 2279, + [SMALL_STATE(88)] = 2296, + [SMALL_STATE(89)] = 2313, + [SMALL_STATE(90)] = 2330, + [SMALL_STATE(91)] = 2347, + [SMALL_STATE(92)] = 2364, + [SMALL_STATE(93)] = 2381, + [SMALL_STATE(94)] = 2398, + [SMALL_STATE(95)] = 2415, + [SMALL_STATE(96)] = 2432, + [SMALL_STATE(97)] = 2454, + [SMALL_STATE(98)] = 2476, + [SMALL_STATE(99)] = 2498, + [SMALL_STATE(100)] = 2520, + [SMALL_STATE(101)] = 2542, + [SMALL_STATE(102)] = 2561, + [SMALL_STATE(103)] = 2578, + [SMALL_STATE(104)] = 2598, + [SMALL_STATE(105)] = 2618, + [SMALL_STATE(106)] = 2632, + [SMALL_STATE(107)] = 2652, + [SMALL_STATE(108)] = 2666, + [SMALL_STATE(109)] = 2686, + [SMALL_STATE(110)] = 2706, + [SMALL_STATE(111)] = 2717, + [SMALL_STATE(112)] = 2728, + [SMALL_STATE(113)] = 2739, + [SMALL_STATE(114)] = 2758, + [SMALL_STATE(115)] = 2777, + [SMALL_STATE(116)] = 2796, + [SMALL_STATE(117)] = 2807, + [SMALL_STATE(118)] = 2818, + [SMALL_STATE(119)] = 2829, + [SMALL_STATE(120)] = 2840, + [SMALL_STATE(121)] = 2851, + [SMALL_STATE(122)] = 2864, + [SMALL_STATE(123)] = 2875, + [SMALL_STATE(124)] = 2886, + [SMALL_STATE(125)] = 2897, + [SMALL_STATE(126)] = 2907, + [SMALL_STATE(127)] = 2917, + [SMALL_STATE(128)] = 2927, + [SMALL_STATE(129)] = 2943, + [SMALL_STATE(130)] = 2953, + [SMALL_STATE(131)] = 2963, + [SMALL_STATE(132)] = 2973, + [SMALL_STATE(133)] = 2983, + [SMALL_STATE(134)] = 2999, + [SMALL_STATE(135)] = 3009, + [SMALL_STATE(136)] = 3025, + [SMALL_STATE(137)] = 3035, + [SMALL_STATE(138)] = 3045, + [SMALL_STATE(139)] = 3055, + [SMALL_STATE(140)] = 3065, + [SMALL_STATE(141)] = 3078, + [SMALL_STATE(142)] = 3091, + [SMALL_STATE(143)] = 3104, + [SMALL_STATE(144)] = 3117, + [SMALL_STATE(145)] = 3128, + [SMALL_STATE(146)] = 3141, + [SMALL_STATE(147)] = 3154, + [SMALL_STATE(148)] = 3167, + [SMALL_STATE(149)] = 3180, + [SMALL_STATE(150)] = 3193, + [SMALL_STATE(151)] = 3206, + [SMALL_STATE(152)] = 3219, + [SMALL_STATE(153)] = 3230, + [SMALL_STATE(154)] = 3243, + [SMALL_STATE(155)] = 3256, + [SMALL_STATE(156)] = 3269, + [SMALL_STATE(157)] = 3282, + [SMALL_STATE(158)] = 3295, + [SMALL_STATE(159)] = 3308, + [SMALL_STATE(160)] = 3321, + [SMALL_STATE(161)] = 3334, + [SMALL_STATE(162)] = 3347, + [SMALL_STATE(163)] = 3360, + [SMALL_STATE(164)] = 3373, + [SMALL_STATE(165)] = 3386, + [SMALL_STATE(166)] = 3399, + [SMALL_STATE(167)] = 3412, + [SMALL_STATE(168)] = 3425, + [SMALL_STATE(169)] = 3438, + [SMALL_STATE(170)] = 3451, + [SMALL_STATE(171)] = 3464, + [SMALL_STATE(172)] = 3477, + [SMALL_STATE(173)] = 3490, + [SMALL_STATE(174)] = 3503, + [SMALL_STATE(175)] = 3516, + [SMALL_STATE(176)] = 3527, + [SMALL_STATE(177)] = 3540, + [SMALL_STATE(178)] = 3553, + [SMALL_STATE(179)] = 3566, + [SMALL_STATE(180)] = 3579, + [SMALL_STATE(181)] = 3592, + [SMALL_STATE(182)] = 3603, + [SMALL_STATE(183)] = 3616, + [SMALL_STATE(184)] = 3629, + [SMALL_STATE(185)] = 3642, + [SMALL_STATE(186)] = 3655, + [SMALL_STATE(187)] = 3668, + [SMALL_STATE(188)] = 3681, + [SMALL_STATE(189)] = 3694, + [SMALL_STATE(190)] = 3707, + [SMALL_STATE(191)] = 3720, + [SMALL_STATE(192)] = 3731, + [SMALL_STATE(193)] = 3744, + [SMALL_STATE(194)] = 3757, + [SMALL_STATE(195)] = 3770, + [SMALL_STATE(196)] = 3783, + [SMALL_STATE(197)] = 3796, + [SMALL_STATE(198)] = 3809, + [SMALL_STATE(199)] = 3822, + [SMALL_STATE(200)] = 3835, + [SMALL_STATE(201)] = 3846, + [SMALL_STATE(202)] = 3859, + [SMALL_STATE(203)] = 3872, + [SMALL_STATE(204)] = 3885, + [SMALL_STATE(205)] = 3898, + [SMALL_STATE(206)] = 3911, + [SMALL_STATE(207)] = 3921, + [SMALL_STATE(208)] = 3931, + [SMALL_STATE(209)] = 3941, + [SMALL_STATE(210)] = 3951, + [SMALL_STATE(211)] = 3961, + [SMALL_STATE(212)] = 3971, + [SMALL_STATE(213)] = 3981, + [SMALL_STATE(214)] = 3991, + [SMALL_STATE(215)] = 4001, + [SMALL_STATE(216)] = 4011, + [SMALL_STATE(217)] = 4021, + [SMALL_STATE(218)] = 4029, + [SMALL_STATE(219)] = 4037, + [SMALL_STATE(220)] = 4045, + [SMALL_STATE(221)] = 4055, + [SMALL_STATE(222)] = 4065, + [SMALL_STATE(223)] = 4075, + [SMALL_STATE(224)] = 4085, + [SMALL_STATE(225)] = 4093, + [SMALL_STATE(226)] = 4103, + [SMALL_STATE(227)] = 4113, + [SMALL_STATE(228)] = 4123, + [SMALL_STATE(229)] = 4131, + [SMALL_STATE(230)] = 4141, + [SMALL_STATE(231)] = 4151, + [SMALL_STATE(232)] = 4159, + [SMALL_STATE(233)] = 4167, + [SMALL_STATE(234)] = 4175, + [SMALL_STATE(235)] = 4183, + [SMALL_STATE(236)] = 4193, + [SMALL_STATE(237)] = 4203, + [SMALL_STATE(238)] = 4213, + [SMALL_STATE(239)] = 4223, + [SMALL_STATE(240)] = 4233, + [SMALL_STATE(241)] = 4243, + [SMALL_STATE(242)] = 4253, + [SMALL_STATE(243)] = 4263, + [SMALL_STATE(244)] = 4273, + [SMALL_STATE(245)] = 4283, + [SMALL_STATE(246)] = 4293, + [SMALL_STATE(247)] = 4301, + [SMALL_STATE(248)] = 4311, + [SMALL_STATE(249)] = 4321, + [SMALL_STATE(250)] = 4331, + [SMALL_STATE(251)] = 4341, + [SMALL_STATE(252)] = 4349, + [SMALL_STATE(253)] = 4357, + [SMALL_STATE(254)] = 4367, + [SMALL_STATE(255)] = 4377, + [SMALL_STATE(256)] = 4387, + [SMALL_STATE(257)] = 4397, + [SMALL_STATE(258)] = 4407, + [SMALL_STATE(259)] = 4417, + [SMALL_STATE(260)] = 4425, + [SMALL_STATE(261)] = 4433, + [SMALL_STATE(262)] = 4443, + [SMALL_STATE(263)] = 4450, + [SMALL_STATE(264)] = 4457, + [SMALL_STATE(265)] = 4464, + [SMALL_STATE(266)] = 4471, + [SMALL_STATE(267)] = 4478, + [SMALL_STATE(268)] = 4485, + [SMALL_STATE(269)] = 4492, + [SMALL_STATE(270)] = 4499, + [SMALL_STATE(271)] = 4506, + [SMALL_STATE(272)] = 4513, + [SMALL_STATE(273)] = 4520, + [SMALL_STATE(274)] = 4527, + [SMALL_STATE(275)] = 4534, + [SMALL_STATE(276)] = 4541, + [SMALL_STATE(277)] = 4548, + [SMALL_STATE(278)] = 4555, + [SMALL_STATE(279)] = 4562, + [SMALL_STATE(280)] = 4569, + [SMALL_STATE(281)] = 4576, + [SMALL_STATE(282)] = 4583, + [SMALL_STATE(283)] = 4590, + [SMALL_STATE(284)] = 4597, + [SMALL_STATE(285)] = 4604, + [SMALL_STATE(286)] = 4611, + [SMALL_STATE(287)] = 4618, + [SMALL_STATE(288)] = 4625, + [SMALL_STATE(289)] = 4632, + [SMALL_STATE(290)] = 4639, + [SMALL_STATE(291)] = 4646, + [SMALL_STATE(292)] = 4653, + [SMALL_STATE(293)] = 4660, + [SMALL_STATE(294)] = 4667, + [SMALL_STATE(295)] = 4674, + [SMALL_STATE(296)] = 4681, + [SMALL_STATE(297)] = 4688, + [SMALL_STATE(298)] = 4695, + [SMALL_STATE(299)] = 4702, + [SMALL_STATE(300)] = 4709, + [SMALL_STATE(301)] = 4716, + [SMALL_STATE(302)] = 4723, + [SMALL_STATE(303)] = 4730, + [SMALL_STATE(304)] = 4737, + [SMALL_STATE(305)] = 4744, + [SMALL_STATE(306)] = 4751, + [SMALL_STATE(307)] = 4758, + [SMALL_STATE(308)] = 4765, + [SMALL_STATE(309)] = 4772, + [SMALL_STATE(310)] = 4779, + [SMALL_STATE(311)] = 4786, + [SMALL_STATE(312)] = 4793, + [SMALL_STATE(313)] = 4800, + [SMALL_STATE(314)] = 4807, + [SMALL_STATE(315)] = 4814, + [SMALL_STATE(316)] = 4821, + [SMALL_STATE(317)] = 4828, + [SMALL_STATE(318)] = 4835, + [SMALL_STATE(319)] = 4842, + [SMALL_STATE(320)] = 4849, + [SMALL_STATE(321)] = 4856, + [SMALL_STATE(322)] = 4863, + [SMALL_STATE(323)] = 4870, + [SMALL_STATE(324)] = 4877, + [SMALL_STATE(325)] = 4884, + [SMALL_STATE(326)] = 4891, + [SMALL_STATE(327)] = 4898, + [SMALL_STATE(328)] = 4905, + [SMALL_STATE(329)] = 4912, + [SMALL_STATE(330)] = 4919, + [SMALL_STATE(331)] = 4926, + [SMALL_STATE(332)] = 4933, + [SMALL_STATE(333)] = 4940, + [SMALL_STATE(334)] = 4947, + [SMALL_STATE(335)] = 4954, + [SMALL_STATE(336)] = 4961, + [SMALL_STATE(337)] = 4968, + [SMALL_STATE(338)] = 4975, }; static const TSParseActionEntry ts_parse_actions[] = { [0] = {.entry = {.count = 0, .reusable = false}}, [1] = {.entry = {.count = 1, .reusable = false}}, RECOVER(), [3] = {.entry = {.count = 1, .reusable = true}}, SHIFT_EXTRA(), - [5] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_source_file, 0), - [7] = {.entry = {.count = 1, .reusable = true}}, SHIFT(213), - [9] = {.entry = {.count = 1, .reusable = true}}, SHIFT(146), - [11] = {.entry = {.count = 1, .reusable = true}}, SHIFT(306), - [13] = {.entry = {.count = 1, .reusable = true}}, SHIFT(299), + [5] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_source_file, 0, 0, 0), + [7] = {.entry = {.count = 1, .reusable = true}}, SHIFT(220), + [9] = {.entry = {.count = 1, .reusable = true}}, SHIFT(148), + [11] = {.entry = {.count = 1, .reusable = true}}, SHIFT(313), + [13] = {.entry = {.count = 1, .reusable = true}}, SHIFT(306), [15] = {.entry = {.count = 1, .reusable = false}}, SHIFT(116), - [17] = {.entry = {.count = 1, .reusable = true}}, SHIFT(132), - [19] = {.entry = {.count = 1, .reusable = false}}, SHIFT(111), - [21] = {.entry = {.count = 1, .reusable = false}}, SHIFT(305), - [23] = {.entry = {.count = 1, .reusable = false}}, SHIFT(307), - [25] = {.entry = {.count = 1, .reusable = false}}, SHIFT(308), - [27] = {.entry = {.count = 1, .reusable = false}}, SHIFT(108), - [29] = {.entry = {.count = 1, .reusable = false}}, SHIFT(310), - [31] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tuple_list, 3), - [33] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tuple_list, 2), - [35] = {.entry = {.count = 1, .reusable = true}}, SHIFT(274), - [37] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_world_body_repeat1, 2), SHIFT_REPEAT(174), - [40] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_world_body_repeat1, 2), - [42] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_world_body_repeat1, 2), SHIFT_REPEAT(177), - [45] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_world_body_repeat1, 2), SHIFT_REPEAT(178), - [48] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_world_body_repeat1, 2), SHIFT_REPEAT(179), - [51] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_world_body_repeat1, 2), SHIFT_REPEAT(270), - [54] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_world_body_repeat1, 2), SHIFT_REPEAT(269), - [57] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_world_body_repeat1, 2), SHIFT_REPEAT(268), - [60] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_world_body_repeat1, 2), SHIFT_REPEAT(260), - [63] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_world_body_repeat1, 2), SHIFT_REPEAT(266), - [66] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_world_body_repeat1, 2), SHIFT_REPEAT(265), - [69] = {.entry = {.count = 1, .reusable = true}}, SHIFT(174), - [71] = {.entry = {.count = 1, .reusable = true}}, SHIFT(124), - [73] = {.entry = {.count = 1, .reusable = true}}, SHIFT(177), - [75] = {.entry = {.count = 1, .reusable = true}}, SHIFT(178), - [77] = {.entry = {.count = 1, .reusable = true}}, SHIFT(179), - [79] = {.entry = {.count = 1, .reusable = true}}, SHIFT(270), - [81] = {.entry = {.count = 1, .reusable = true}}, SHIFT(269), - [83] = {.entry = {.count = 1, .reusable = true}}, SHIFT(268), - [85] = {.entry = {.count = 1, .reusable = true}}, SHIFT(260), - [87] = {.entry = {.count = 1, .reusable = true}}, SHIFT(266), - [89] = {.entry = {.count = 1, .reusable = true}}, SHIFT(265), - [91] = {.entry = {.count = 1, .reusable = true}}, SHIFT(137), - [93] = {.entry = {.count = 1, .reusable = false}}, SHIFT(143), - [95] = {.entry = {.count = 1, .reusable = false}}, SHIFT(264), - [97] = {.entry = {.count = 1, .reusable = true}}, SHIFT(24), - [99] = {.entry = {.count = 1, .reusable = false}}, SHIFT(328), - [101] = {.entry = {.count = 1, .reusable = false}}, SHIFT(320), - [103] = {.entry = {.count = 1, .reusable = false}}, SHIFT(321), - [105] = {.entry = {.count = 1, .reusable = false}}, SHIFT(322), - [107] = {.entry = {.count = 1, .reusable = false}}, SHIFT(323), - [109] = {.entry = {.count = 1, .reusable = false}}, SHIFT(290), - [111] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_interface_body_repeat1, 2), SHIFT_REPEAT(143), - [114] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_interface_body_repeat1, 2), SHIFT_REPEAT(264), - [117] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_interface_body_repeat1, 2), - [119] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_interface_body_repeat1, 2), SHIFT_REPEAT(328), - [122] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_interface_body_repeat1, 2), SHIFT_REPEAT(320), - [125] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_interface_body_repeat1, 2), SHIFT_REPEAT(321), - [128] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_interface_body_repeat1, 2), SHIFT_REPEAT(322), - [131] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_interface_body_repeat1, 2), SHIFT_REPEAT(323), - [134] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_interface_body_repeat1, 2), SHIFT_REPEAT(290), - [137] = {.entry = {.count = 1, .reusable = true}}, SHIFT(22), - [139] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_interface_body, 3, .production_id = 14), - [141] = {.entry = {.count = 1, .reusable = true}}, SHIFT(46), - [143] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_resource_item, 2, .production_id = 12), - [145] = {.entry = {.count = 1, .reusable = true}}, SHIFT(107), - [147] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_interface_body, 2), - [149] = {.entry = {.count = 1, .reusable = true}}, SHIFT(67), - [151] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_resource_item, 2, .production_id = 12), - [153] = {.entry = {.count = 1, .reusable = true}}, SHIFT(104), - [155] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_enum_items, 3, .production_id = 12), - [157] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_variant_body, 5, .production_id = 42), - [159] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_extern_type, 2), - [161] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_resource_body, 2), - [163] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_enum_body, 2), - [165] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_variant_body, 2), - [167] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_flags_body, 2), - [169] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_item, 5, .production_id = 22), - [171] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_record_body, 2), - [173] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_record_body, 3, .production_id = 23), - [175] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_flags_body, 3, .production_id = 24), - [177] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_variant_body, 3, .production_id = 25), - [179] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_include_item, 4, .production_id = 17), - [181] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_enum_body, 3, .production_id = 26), - [183] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_import_item, 4, .production_id = 12), - [185] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_resource_body, 3), - [187] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_export_item, 4, .production_id = 12), - [189] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_include_names_body, 3, .production_id = 29), - [191] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_record_body, 4, .production_id = 32), - [193] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_resource_item, 3, .production_id = 16), - [195] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_resource_item, 3, .production_id = 12), - [197] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_flags_body, 4, .production_id = 33), - [199] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_variant_items, 3, .production_id = 2), - [201] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_variant_body, 4, .production_id = 34), - [203] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_flags_items, 3, .production_id = 2), - [205] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_enum_body, 4, .production_id = 35), - [207] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_world_items, 1, .production_id = 3), - [209] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_world_items, 1, .production_id = 4), - [211] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_world_items, 1, .production_id = 5), - [213] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_world_items, 1, .production_id = 6), - [215] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_world_items, 1, .production_id = 7), - [217] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_typedef_item, 1), - [219] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_record_item, 3, .production_id = 2), - [221] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_include_item, 3, .production_id = 15), - [223] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_import_item, 3), - [225] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_export_item, 3), - [227] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_use_item, 7), - [229] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_flags_body, 5, .production_id = 41), - [231] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_record_body, 5, .production_id = 40), - [233] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_enum_body, 5, .production_id = 43), - [235] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_record_body, 5, .production_id = 40), - [237] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_resource_item, 3, .production_id = 12), - [239] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_func_item, 4, .production_id = 18), - [241] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_func_item, 4, .production_id = 18), - [243] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_enum_body, 3, .production_id = 26), - [245] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_enum_body, 5, .production_id = 43), - [247] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_variant_body, 5, .production_id = 42), - [249] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_variant_body, 3, .production_id = 25), - [251] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_flags_body, 3, .production_id = 24), - [253] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_record_body, 3, .production_id = 23), - [255] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_flags_body, 5, .production_id = 41), - [257] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_type_item, 5, .production_id = 22), - [259] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_resource_body, 2), - [261] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_record_body, 4, .production_id = 32), - [263] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_enum_body, 2), - [265] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_variant_body, 2), - [267] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_flags_body, 2), - [269] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_record_body, 2), - [271] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_flags_body, 4, .production_id = 33), - [273] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_resource_item, 3, .production_id = 16), - [275] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_variant_body, 4, .production_id = 34), - [277] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_typedef_item, 1), - [279] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_resource_body, 3), - [281] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_enum_items, 3, .production_id = 12), - [283] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_variant_items, 3, .production_id = 2), - [285] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_flags_items, 3, .production_id = 2), - [287] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_interface_items, 1, .production_id = 10), - [289] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_interface_items, 1, .production_id = 10), - [291] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_interface_items, 1, .production_id = 9), - [293] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_interface_items, 1, .production_id = 9), - [295] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_record_item, 3, .production_id = 2), - [297] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_enum_body, 4, .production_id = 35), - [299] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_use_item, 7), - [301] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_interface_items, 1, .production_id = 8), - [303] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_interface_items, 1, .production_id = 8), - [305] = {.entry = {.count = 1, .reusable = true}}, SHIFT(282), - [307] = {.entry = {.count = 1, .reusable = false}}, SHIFT(279), - [309] = {.entry = {.count = 1, .reusable = true}}, SHIFT(276), - [311] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_use_path, 2), - [313] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_source_file, 1), - [315] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_source_file, 2), - [317] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_source_file_repeat1, 2), - [319] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_source_file_repeat1, 2), SHIFT_REPEAT(146), - [322] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_source_file_repeat1, 2), SHIFT_REPEAT(306), - [325] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_source_file_repeat1, 2), SHIFT_REPEAT(299), - [328] = {.entry = {.count = 1, .reusable = true}}, SHIFT(295), - [330] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_use_path, 3), - [332] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_package_decl_repeat2, 2), SHIFT_REPEAT(279), - [335] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_package_decl_repeat2, 2), - [337] = {.entry = {.count = 1, .reusable = false}}, SHIFT(304), - [339] = {.entry = {.count = 1, .reusable = true}}, SHIFT(77), - [341] = {.entry = {.count = 1, .reusable = false}}, SHIFT(206), - [343] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_package_decl_repeat2, 2), - [345] = {.entry = {.count = 1, .reusable = true}}, SHIFT(41), - [347] = {.entry = {.count = 1, .reusable = true}}, SHIFT(29), - [349] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_result, 1), - [351] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6), - [353] = {.entry = {.count = 1, .reusable = true}}, SHIFT(87), - [355] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_resource_body_repeat1, 2), SHIFT_REPEAT(304), - [358] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_resource_body_repeat1, 2), - [360] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_resource_body_repeat1, 2), SHIFT_REPEAT(206), - [363] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_ty, 1), - [365] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tuple, 4), - [367] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_package_decl_repeat1, 2), - [369] = {.entry = {.count = 1, .reusable = false}}, SHIFT(205), - [371] = {.entry = {.count = 1, .reusable = false}}, SHIFT(210), - [373] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_list, 4), - [375] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_option, 4), - [377] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_use_path, 1), - [379] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_result, 4), - [381] = {.entry = {.count = 1, .reusable = true}}, SHIFT(278), - [383] = {.entry = {.count = 1, .reusable = true}}, SHIFT(123), - [385] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_result, 6), - [387] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_handle, 4), - [389] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_package_decl, 4), - [391] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_world_body, 3, .production_id = 13), - [393] = {.entry = {.count = 1, .reusable = true}}, SHIFT(262), - [395] = {.entry = {.count = 1, .reusable = true}}, SHIFT(135), - [397] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_package_decl, 7), - [399] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_use_path, 4), - [401] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_interface_item, 3, .production_id = 2), - [403] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_toplevel_use_item, 5, .production_id = 11), - [405] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_world_item, 3, .production_id = 2), - [407] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_package_decl, 6), - [409] = {.entry = {.count = 1, .reusable = true}}, SHIFT(297), - [411] = {.entry = {.count = 1, .reusable = true}}, SHIFT(292), - [413] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_use_path, 5), - [415] = {.entry = {.count = 1, .reusable = true}}, SHIFT(240), - [417] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_package_decl, 5), - [419] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_toplevel_use_item, 3, .production_id = 1), - [421] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_world_body, 2), - [423] = {.entry = {.count = 1, .reusable = true}}, SHIFT(49), - [425] = {.entry = {.count = 1, .reusable = true}}, SHIFT(191), - [427] = {.entry = {.count = 1, .reusable = true}}, SHIFT(314), - [429] = {.entry = {.count = 1, .reusable = true}}, SHIFT(34), - [431] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_func_type, 2, .production_id = 19), - [433] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2), - [435] = {.entry = {.count = 1, .reusable = true}}, SHIFT(39), - [437] = {.entry = {.count = 1, .reusable = true}}, SHIFT(235), - [439] = {.entry = {.count = 1, .reusable = true}}, SHIFT(272), - [441] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_use_names_item, 1), - [443] = {.entry = {.count = 1, .reusable = true}}, SHIFT(117), - [445] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_use_names_list, 1, .production_id = 20), - [447] = {.entry = {.count = 1, .reusable = true}}, SHIFT(181), - [449] = {.entry = {.count = 1, .reusable = true}}, SHIFT(142), - [451] = {.entry = {.count = 1, .reusable = true}}, SHIFT(152), - [453] = {.entry = {.count = 1, .reusable = true}}, SHIFT(71), - [455] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_include_names_list, 1, .production_id = 21), - [457] = {.entry = {.count = 1, .reusable = true}}, SHIFT(185), - [459] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_resource_method, 1), - [461] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_resource_method, 1), - [463] = {.entry = {.count = 1, .reusable = true}}, SHIFT(37), - [465] = {.entry = {.count = 1, .reusable = true}}, SHIFT(164), - [467] = {.entry = {.count = 1, .reusable = true}}, SHIFT(66), - [469] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_variant_case, 1, .production_id = 18), - [471] = {.entry = {.count = 1, .reusable = true}}, SHIFT(9), - [473] = {.entry = {.count = 1, .reusable = true}}, SHIFT(94), - [475] = {.entry = {.count = 1, .reusable = true}}, SHIFT(208), - [477] = {.entry = {.count = 1, .reusable = true}}, SHIFT(36), - [479] = {.entry = {.count = 1, .reusable = true}}, SHIFT(228), - [481] = {.entry = {.count = 1, .reusable = true}}, SHIFT(35), - [483] = {.entry = {.count = 1, .reusable = true}}, SHIFT(157), - [485] = {.entry = {.count = 1, .reusable = true}}, SHIFT(85), - [487] = {.entry = {.count = 1, .reusable = true}}, SHIFT(147), - [489] = {.entry = {.count = 1, .reusable = true}}, SHIFT(44), - [491] = {.entry = {.count = 1, .reusable = true}}, SHIFT(197), - [493] = {.entry = {.count = 1, .reusable = true}}, SHIFT(83), - [495] = {.entry = {.count = 1, .reusable = true}}, SHIFT(215), - [497] = {.entry = {.count = 1, .reusable = true}}, SHIFT(47), - [499] = {.entry = {.count = 1, .reusable = true}}, SHIFT(214), - [501] = {.entry = {.count = 1, .reusable = true}}, SHIFT(78), - [503] = {.entry = {.count = 1, .reusable = true}}, SHIFT(151), - [505] = {.entry = {.count = 1, .reusable = true}}, SHIFT(69), - [507] = {.entry = {.count = 1, .reusable = true}}, SHIFT(222), - [509] = {.entry = {.count = 1, .reusable = true}}, SHIFT(72), - [511] = {.entry = {.count = 1, .reusable = true}}, SHIFT(159), - [513] = {.entry = {.count = 1, .reusable = true}}, SHIFT(73), - [515] = {.entry = {.count = 1, .reusable = true}}, SHIFT(229), - [517] = {.entry = {.count = 1, .reusable = true}}, SHIFT(51), - [519] = {.entry = {.count = 1, .reusable = true}}, SHIFT(218), - [521] = {.entry = {.count = 1, .reusable = true}}, SHIFT(210), - [523] = {.entry = {.count = 1, .reusable = true}}, SHIFT(219), - [525] = {.entry = {.count = 1, .reusable = true}}, SHIFT(74), - [527] = {.entry = {.count = 1, .reusable = true}}, SHIFT(163), - [529] = {.entry = {.count = 1, .reusable = true}}, SHIFT(327), - [531] = {.entry = {.count = 1, .reusable = true}}, SHIFT(80), - [533] = {.entry = {.count = 1, .reusable = true}}, SHIFT(82), - [535] = {.entry = {.count = 1, .reusable = true}}, SHIFT(201), - [537] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_named_type_list, 1), - [539] = {.entry = {.count = 1, .reusable = true}}, SHIFT(259), - [541] = {.entry = {.count = 1, .reusable = true}}, SHIFT(242), - [543] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_resource_method, 5), - [545] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_resource_method, 5), - [547] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_use_names_list, 2, .production_id = 20), - [549] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_use_names_list, 2, .production_id = 28), - [551] = {.entry = {.count = 1, .reusable = true}}, SHIFT(200), - [553] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_tuple_list_repeat1, 2), SHIFT_REPEAT(14), - [556] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_tuple_list_repeat1, 2), - [558] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_include_names_list, 2, .production_id = 21), - [560] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_include_names_list, 2, .production_id = 30), - [562] = {.entry = {.count = 1, .reusable = true}}, SHIFT(199), - [564] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5), - [566] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tuple_list, 1), - [568] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_named_type_list_repeat1, 2), SHIFT_REPEAT(257), - [571] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_named_type_list_repeat1, 2), - [573] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_named_type_list, 3), - [575] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_use_names_list_repeat1, 2, .production_id = 37), - [577] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_use_names_list_repeat1, 2, .production_id = 37), SHIFT_REPEAT(250), - [580] = {.entry = {.count = 1, .reusable = true}}, SHIFT(27), - [582] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_variant_body_repeat1, 2), - [584] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_variant_body_repeat1, 2), SHIFT_REPEAT(241), - [587] = {.entry = {.count = 1, .reusable = true}}, SHIFT(31), - [589] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_include_names_list_repeat1, 2, .production_id = 39), - [591] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_include_names_list_repeat1, 2, .production_id = 39), SHIFT_REPEAT(251), - [594] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3), - [596] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_resource_method, 3), - [598] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_resource_method, 3), - [600] = {.entry = {.count = 1, .reusable = true}}, SHIFT(64), - [602] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_record_body_repeat1, 2), - [604] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_record_body_repeat1, 2), SHIFT_REPEAT(204), - [607] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_include_names_list, 3, .production_id = 30), - [609] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_use_names_list, 3, .production_id = 28), - [611] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_named_type_list, 2), - [613] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_flags_body_repeat1, 2), - [615] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_flags_body_repeat1, 2), SHIFT_REPEAT(298), - [618] = {.entry = {.count = 1, .reusable = true}}, SHIFT(189), - [620] = {.entry = {.count = 1, .reusable = true}}, SHIFT(19), - [622] = {.entry = {.count = 1, .reusable = true}}, SHIFT(134), - [624] = {.entry = {.count = 1, .reusable = true}}, SHIFT(13), - [626] = {.entry = {.count = 1, .reusable = true}}, SHIFT(119), - [628] = {.entry = {.count = 1, .reusable = true}}, SHIFT(212), - [630] = {.entry = {.count = 1, .reusable = true}}, SHIFT(70), - [632] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_record_field, 3, .production_id = 31), - [634] = {.entry = {.count = 1, .reusable = true}}, SHIFT(288), - [636] = {.entry = {.count = 1, .reusable = true}}, SHIFT(63), - [638] = {.entry = {.count = 1, .reusable = true}}, SHIFT(75), - [640] = {.entry = {.count = 1, .reusable = true}}, SHIFT(141), - [642] = {.entry = {.count = 1, .reusable = true}}, SHIFT(30), - [644] = {.entry = {.count = 1, .reusable = true}}, SHIFT(65), - [646] = {.entry = {.count = 1, .reusable = true}}, SHIFT(154), - [648] = {.entry = {.count = 1, .reusable = true}}, SHIFT(32), - [650] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_param_list, 3), - [652] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_use_names_item, 3), - [654] = {.entry = {.count = 1, .reusable = true}}, SHIFT(171), - [656] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_use_names_list_repeat1, 2, .production_id = 36), - [658] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_include_names_item, 3), - [660] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_include_names_list_repeat1, 2, .production_id = 38), - [662] = {.entry = {.count = 1, .reusable = true}}, SHIFT(216), - [664] = {.entry = {.count = 1, .reusable = true}}, SHIFT(193), - [666] = {.entry = {.count = 1, .reusable = true}}, SHIFT(220), - [668] = {.entry = {.count = 1, .reusable = true}}, SHIFT(139), - [670] = {.entry = {.count = 1, .reusable = true}}, SHIFT(165), - [672] = {.entry = {.count = 1, .reusable = true}}, SHIFT(79), - [674] = {.entry = {.count = 1, .reusable = true}}, SHIFT(59), - [676] = {.entry = {.count = 1, .reusable = true}}, SHIFT(224), - [678] = {.entry = {.count = 1, .reusable = true}}, SHIFT(167), - [680] = {.entry = {.count = 1, .reusable = true}}, SHIFT(81), - [682] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_variant_case, 4, .production_id = 31), - [684] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_param_list, 2), - [686] = {.entry = {.count = 1, .reusable = true}}, SHIFT(118), - [688] = {.entry = {.count = 1, .reusable = true}}, SHIFT(236), - [690] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_named_type, 3, .production_id = 31), - [692] = {.entry = {.count = 1, .reusable = true}}, SHIFT(172), - [694] = {.entry = {.count = 1, .reusable = true}}, SHIFT(238), - [696] = {.entry = {.count = 1, .reusable = true}}, SHIFT(173), - [698] = {.entry = {.count = 1, .reusable = true}}, SHIFT(120), - [700] = {.entry = {.count = 1, .reusable = true}}, SHIFT(136), - [702] = {.entry = {.count = 1, .reusable = true}}, SHIFT(280), - [704] = {.entry = {.count = 1, .reusable = true}}, SHIFT(97), - [706] = {.entry = {.count = 1, .reusable = true}}, SHIFT(18), - [708] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_package_decl_repeat1, 2), SHIFT_REPEAT(288), - [711] = {.entry = {.count = 1, .reusable = true}}, SHIFT(113), - [713] = {.entry = {.count = 1, .reusable = true}}, SHIFT(232), - [715] = {.entry = {.count = 1, .reusable = true}}, SHIFT(180), - [717] = {.entry = {.count = 1, .reusable = true}}, SHIFT(311), - [719] = {.entry = {.count = 1, .reusable = true}}, SHIFT(131), - [721] = {.entry = {.count = 1, .reusable = true}}, SHIFT(230), - [723] = {.entry = {.count = 1, .reusable = true}}, SHIFT(23), - [725] = {.entry = {.count = 1, .reusable = true}}, SHIFT(231), - [727] = {.entry = {.count = 1, .reusable = true}}, SHIFT(115), - [729] = {.entry = {.count = 1, .reusable = true}}, SHIFT(233), - [731] = {.entry = {.count = 1, .reusable = true}}, SHIFT(234), - [733] = {.entry = {.count = 1, .reusable = true}}, SHIFT(309), - [735] = {.entry = {.count = 1, .reusable = true}}, SHIFT(62), - [737] = {.entry = {.count = 1, .reusable = true}}, SHIFT(223), - [739] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_func_type, 3, .production_id = 27), - [741] = {.entry = {.count = 1, .reusable = true}}, SHIFT(221), - [743] = {.entry = {.count = 1, .reusable = true}}, SHIFT(127), - [745] = {.entry = {.count = 1, .reusable = true}}, SHIFT(129), - [747] = {.entry = {.count = 1, .reusable = true}}, SHIFT(263), - [749] = {.entry = {.count = 1, .reusable = true}}, SHIFT(105), - [751] = {.entry = {.count = 1, .reusable = true}}, SHIFT(277), - [753] = {.entry = {.count = 1, .reusable = true}}, SHIFT(313), - [755] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_package_decl_repeat1, 2), - [757] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_result_list, 4), - [759] = {.entry = {.count = 1, .reusable = true}}, SHIFT(226), - [761] = {.entry = {.count = 1, .reusable = true}}, SHIFT(121), - [763] = {.entry = {.count = 1, .reusable = true}}, SHIFT(112), - [765] = {.entry = {.count = 1, .reusable = true}}, SHIFT(61), - [767] = {.entry = {.count = 1, .reusable = true}}, ACCEPT_INPUT(), - [769] = {.entry = {.count = 1, .reusable = true}}, SHIFT(25), - [771] = {.entry = {.count = 1, .reusable = true}}, SHIFT(283), - [773] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_result_list, 3), - [775] = {.entry = {.count = 1, .reusable = true}}, SHIFT(114), - [777] = {.entry = {.count = 1, .reusable = true}}, SHIFT(271), - [779] = {.entry = {.count = 1, .reusable = true}}, SHIFT(133), - [781] = {.entry = {.count = 1, .reusable = true}}, SHIFT(60), - [783] = {.entry = {.count = 1, .reusable = true}}, SHIFT(11), - [785] = {.entry = {.count = 1, .reusable = true}}, SHIFT(256), - [787] = {.entry = {.count = 1, .reusable = true}}, SHIFT(175), - [789] = {.entry = {.count = 1, .reusable = true}}, SHIFT(76), - [791] = {.entry = {.count = 1, .reusable = true}}, SHIFT(28), - [793] = {.entry = {.count = 1, .reusable = true}}, SHIFT(196), - [795] = {.entry = {.count = 1, .reusable = true}}, SHIFT(169), - [797] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4), - [799] = {.entry = {.count = 1, .reusable = true}}, SHIFT(255), - [801] = {.entry = {.count = 1, .reusable = true}}, SHIFT(10), - [803] = {.entry = {.count = 1, .reusable = true}}, SHIFT(15), - [805] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7), - [807] = {.entry = {.count = 1, .reusable = true}}, SHIFT(316), - [809] = {.entry = {.count = 1, .reusable = true}}, SHIFT(126), - [811] = {.entry = {.count = 1, .reusable = true}}, SHIFT(33), - [813] = {.entry = {.count = 1, .reusable = true}}, SHIFT(184), - [815] = {.entry = {.count = 1, .reusable = true}}, SHIFT(8), - [817] = {.entry = {.count = 1, .reusable = true}}, SHIFT(95), - [819] = {.entry = {.count = 1, .reusable = true}}, SHIFT(331), - [821] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_result_list, 2), - [823] = {.entry = {.count = 1, .reusable = true}}, SHIFT(239), - [825] = {.entry = {.count = 1, .reusable = true}}, SHIFT(68), - [827] = {.entry = {.count = 1, .reusable = true}}, SHIFT(248), - [829] = {.entry = {.count = 1, .reusable = true}}, SHIFT(247), - [831] = {.entry = {.count = 1, .reusable = true}}, SHIFT(246), - [833] = {.entry = {.count = 1, .reusable = true}}, SHIFT(243), - [835] = {.entry = {.count = 1, .reusable = true}}, SHIFT(43), - [837] = {.entry = {.count = 1, .reusable = true}}, SHIFT(315), - [839] = {.entry = {.count = 1, .reusable = true}}, SHIFT(12), - [841] = {.entry = {.count = 1, .reusable = true}}, SHIFT(284), - [843] = {.entry = {.count = 1, .reusable = true}}, SHIFT(326), - [845] = {.entry = {.count = 1, .reusable = true}}, SHIFT(145), - [847] = {.entry = {.count = 1, .reusable = true}}, SHIFT(329), - [849] = {.entry = {.count = 1, .reusable = true}}, SHIFT(122), + [17] = {.entry = {.count = 1, .reusable = false}}, SHIFT(110), + [19] = {.entry = {.count = 1, .reusable = false}}, SHIFT(309), + [21] = {.entry = {.count = 1, .reusable = true}}, SHIFT(112), + [23] = {.entry = {.count = 1, .reusable = false}}, SHIFT(310), + [25] = {.entry = {.count = 1, .reusable = false}}, SHIFT(311), + [27] = {.entry = {.count = 1, .reusable = false}}, SHIFT(105), + [29] = {.entry = {.count = 1, .reusable = false}}, SHIFT(312), + [31] = {.entry = {.count = 1, .reusable = false}}, SHIFT(315), + [33] = {.entry = {.count = 1, .reusable = true}}, SHIFT(133), + [35] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tuple_list, 3, 0, 0), + [37] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tuple_list, 2, 0, 0), + [39] = {.entry = {.count = 1, .reusable = true}}, SHIFT(320), + [41] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_world_body_repeat1, 2, 0, 0), SHIFT_REPEAT(174), + [44] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_world_body_repeat1, 2, 0, 0), + [46] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_world_body_repeat1, 2, 0, 0), SHIFT_REPEAT(177), + [49] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_world_body_repeat1, 2, 0, 0), SHIFT_REPEAT(178), + [52] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_world_body_repeat1, 2, 0, 0), SHIFT_REPEAT(179), + [55] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_world_body_repeat1, 2, 0, 0), SHIFT_REPEAT(277), + [58] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_world_body_repeat1, 2, 0, 0), SHIFT_REPEAT(276), + [61] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_world_body_repeat1, 2, 0, 0), SHIFT_REPEAT(275), + [64] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_world_body_repeat1, 2, 0, 0), SHIFT_REPEAT(274), + [67] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_world_body_repeat1, 2, 0, 0), SHIFT_REPEAT(262), + [70] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_world_body_repeat1, 2, 0, 0), SHIFT_REPEAT(272), + [73] = {.entry = {.count = 1, .reusable = true}}, SHIFT(174), + [75] = {.entry = {.count = 1, .reusable = true}}, SHIFT(134), + [77] = {.entry = {.count = 1, .reusable = true}}, SHIFT(177), + [79] = {.entry = {.count = 1, .reusable = true}}, SHIFT(178), + [81] = {.entry = {.count = 1, .reusable = true}}, SHIFT(179), + [83] = {.entry = {.count = 1, .reusable = true}}, SHIFT(277), + [85] = {.entry = {.count = 1, .reusable = true}}, SHIFT(276), + [87] = {.entry = {.count = 1, .reusable = true}}, SHIFT(275), + [89] = {.entry = {.count = 1, .reusable = true}}, SHIFT(274), + [91] = {.entry = {.count = 1, .reusable = true}}, SHIFT(262), + [93] = {.entry = {.count = 1, .reusable = true}}, SHIFT(272), + [95] = {.entry = {.count = 1, .reusable = true}}, SHIFT(137), + [97] = {.entry = {.count = 1, .reusable = false}}, SHIFT(143), + [99] = {.entry = {.count = 1, .reusable = false}}, SHIFT(271), + [101] = {.entry = {.count = 1, .reusable = true}}, SHIFT(24), + [103] = {.entry = {.count = 1, .reusable = false}}, SHIFT(335), + [105] = {.entry = {.count = 1, .reusable = false}}, SHIFT(327), + [107] = {.entry = {.count = 1, .reusable = false}}, SHIFT(328), + [109] = {.entry = {.count = 1, .reusable = false}}, SHIFT(329), + [111] = {.entry = {.count = 1, .reusable = false}}, SHIFT(330), + [113] = {.entry = {.count = 1, .reusable = false}}, SHIFT(297), + [115] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_interface_body_repeat1, 2, 0, 0), SHIFT_REPEAT(143), + [118] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_interface_body_repeat1, 2, 0, 0), SHIFT_REPEAT(271), + [121] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_interface_body_repeat1, 2, 0, 0), + [123] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_interface_body_repeat1, 2, 0, 0), SHIFT_REPEAT(335), + [126] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_interface_body_repeat1, 2, 0, 0), SHIFT_REPEAT(327), + [129] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_interface_body_repeat1, 2, 0, 0), SHIFT_REPEAT(328), + [132] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_interface_body_repeat1, 2, 0, 0), SHIFT_REPEAT(329), + [135] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_interface_body_repeat1, 2, 0, 0), SHIFT_REPEAT(330), + [138] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_interface_body_repeat1, 2, 0, 0), SHIFT_REPEAT(297), + [141] = {.entry = {.count = 1, .reusable = true}}, SHIFT(22), + [143] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_interface_body, 3, 0, 14), + [145] = {.entry = {.count = 1, .reusable = true}}, SHIFT(45), + [147] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_resource_item, 2, 0, 12), + [149] = {.entry = {.count = 1, .reusable = true}}, SHIFT(106), + [151] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_interface_body, 2, 0, 0), + [153] = {.entry = {.count = 1, .reusable = true}}, SHIFT(90), + [155] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_resource_item, 2, 0, 12), + [157] = {.entry = {.count = 1, .reusable = true}}, SHIFT(103), + [159] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_flags_body, 4, 0, 33), + [161] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_enum_body, 5, 0, 43), + [163] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_include_item, 5, 0, 21), + [165] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_extern_type, 2, 0, 0), + [167] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_resource_body, 2, 0, 0), + [169] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_enum_body, 2, 0, 0), + [171] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_variant_body, 2, 0, 0), + [173] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_flags_body, 2, 0, 0), + [175] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_record_body, 2, 0, 0), + [177] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_item, 5, 0, 22), + [179] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_record_body, 3, 0, 23), + [181] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_flags_body, 3, 0, 24), + [183] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_variant_body, 3, 0, 25), + [185] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_enum_body, 3, 0, 26), + [187] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_resource_body, 3, 0, 0), + [189] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_import_item, 4, 0, 12), + [191] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_export_item, 4, 0, 12), + [193] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_record_body, 4, 0, 32), + [195] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_resource_item, 3, 0, 16), + [197] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_resource_item, 3, 0, 12), + [199] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_enum_items, 3, 0, 12), + [201] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_variant_body, 4, 0, 34), + [203] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_variant_items, 3, 0, 2), + [205] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_enum_body, 4, 0, 35), + [207] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_flags_items, 3, 0, 2), + [209] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_record_item, 3, 0, 2), + [211] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_world_items, 1, 0, 3), + [213] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_world_items, 1, 0, 4), + [215] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_world_items, 1, 0, 5), + [217] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_world_items, 1, 0, 6), + [219] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_world_items, 1, 0, 7), + [221] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_typedef_item, 1, 0, 0), + [223] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_use_item, 7, 0, 0), + [225] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_include_item, 3, 0, 15), + [227] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_import_item, 3, 0, 0), + [229] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_export_item, 3, 0, 0), + [231] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_variant_body, 5, 0, 42), + [233] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_flags_body, 5, 0, 41), + [235] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_record_body, 5, 0, 40), + [237] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_record_body, 5, 0, 40), + [239] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_record_item, 3, 0, 2), + [241] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_typedef_item, 1, 0, 0), + [243] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_enum_body, 3, 0, 26), + [245] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_func_item, 4, 0, 17), + [247] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_func_item, 4, 0, 17), + [249] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_variant_body, 3, 0, 25), + [251] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_enum_body, 5, 0, 43), + [253] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_variant_body, 5, 0, 42), + [255] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_flags_body, 3, 0, 24), + [257] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_record_body, 3, 0, 23), + [259] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_type_item, 5, 0, 22), + [261] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_flags_body, 5, 0, 41), + [263] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_resource_body, 2, 0, 0), + [265] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_record_body, 4, 0, 32), + [267] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_enum_body, 2, 0, 0), + [269] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_variant_body, 2, 0, 0), + [271] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_flags_body, 2, 0, 0), + [273] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_record_body, 2, 0, 0), + [275] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_flags_body, 4, 0, 33), + [277] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_use_item, 7, 0, 0), + [279] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_flags_items, 3, 0, 2), + [281] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_variant_items, 3, 0, 2), + [283] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_variant_body, 4, 0, 34), + [285] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_enum_items, 3, 0, 12), + [287] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_resource_body, 3, 0, 0), + [289] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_resource_item, 3, 0, 12), + [291] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_interface_items, 1, 0, 10), + [293] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_interface_items, 1, 0, 10), + [295] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_interface_items, 1, 0, 9), + [297] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_interface_items, 1, 0, 9), + [299] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_interface_items, 1, 0, 8), + [301] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_interface_items, 1, 0, 8), + [303] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_enum_body, 4, 0, 35), + [305] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_resource_item, 3, 0, 16), + [307] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_source_file, 1, 0, 0), + [309] = {.entry = {.count = 1, .reusable = true}}, SHIFT(289), + [311] = {.entry = {.count = 1, .reusable = false}}, SHIFT(286), + [313] = {.entry = {.count = 1, .reusable = true}}, SHIFT(283), + [315] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_use_path, 2, 0, 0), + [317] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_source_file, 2, 0, 0), + [319] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), + [321] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(148), + [324] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(313), + [327] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(306), + [330] = {.entry = {.count = 1, .reusable = true}}, SHIFT(268), + [332] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_use_path, 3, 0, 0), + [334] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_package_decl_repeat2, 2, 0, 0), SHIFT_REPEAT(286), + [337] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_package_decl_repeat2, 2, 0, 0), + [339] = {.entry = {.count = 1, .reusable = false}}, SHIFT(293), + [341] = {.entry = {.count = 1, .reusable = true}}, SHIFT(77), + [343] = {.entry = {.count = 1, .reusable = false}}, SHIFT(210), + [345] = {.entry = {.count = 1, .reusable = true}}, SHIFT(40), + [347] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_result, 1, 0, 0), + [349] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6), + [351] = {.entry = {.count = 1, .reusable = true}}, SHIFT(30), + [353] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_package_decl_repeat2, 2, 0, 0), + [355] = {.entry = {.count = 1, .reusable = true}}, SHIFT(89), + [357] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_resource_body_repeat1, 2, 0, 0), SHIFT_REPEAT(293), + [360] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_resource_body_repeat1, 2, 0, 0), + [362] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_resource_body_repeat1, 2, 0, 0), SHIFT_REPEAT(210), + [365] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_ty, 1, 0, 0), + [367] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_handle, 1, 0, 0), + [369] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tuple, 3, 0, 0), + [371] = {.entry = {.count = 1, .reusable = true}}, SHIFT(285), + [373] = {.entry = {.count = 1, .reusable = true}}, SHIFT(126), + [375] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_package_decl_repeat1, 2, 0, 0), + [377] = {.entry = {.count = 1, .reusable = false}}, SHIFT(209), + [379] = {.entry = {.count = 1, .reusable = false}}, SHIFT(223), + [381] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_result, 6, 0, 0), + [383] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_option, 4, 0, 0), + [385] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tuple, 4, 0, 0), + [387] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_list, 4, 0, 0), + [389] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_use_path, 1, 0, 0), + [391] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_result, 4, 0, 0), + [393] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__owned_handle, 4, 0, 0), + [395] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__borrow_handle, 4, 0, 0), + [397] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_package_decl, 7, 0, 0), + [399] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_package_decl, 4, 0, 0), + [401] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_package_decl, 5, 0, 0), + [403] = {.entry = {.count = 1, .reusable = true}}, SHIFT(269), + [405] = {.entry = {.count = 1, .reusable = true}}, SHIFT(127), + [407] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_package_decl, 6, 0, 0), + [409] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_use_path, 4, 0, 0), + [411] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_interface_item, 3, 0, 2), + [413] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_world_item, 3, 0, 2), + [415] = {.entry = {.count = 1, .reusable = true}}, SHIFT(281), + [417] = {.entry = {.count = 1, .reusable = true}}, SHIFT(291), + [419] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_world_body, 3, 0, 13), + [421] = {.entry = {.count = 1, .reusable = true}}, SHIFT(260), + [423] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_toplevel_use_item, 5, 0, 11), + [425] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_world_body, 2, 0, 0), + [427] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_toplevel_use_item, 3, 0, 1), + [429] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_use_path, 5, 0, 0), + [431] = {.entry = {.count = 1, .reusable = true}}, SHIFT(191), + [433] = {.entry = {.count = 1, .reusable = true}}, SHIFT(47), + [435] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_named_type_list, 2, 0, 0), + [437] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_func_type, 2, 0, 18), + [439] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3), + [441] = {.entry = {.count = 1, .reusable = true}}, SHIFT(121), + [443] = {.entry = {.count = 1, .reusable = true}}, SHIFT(301), + [445] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_use_names_item, 1, 0, 0), + [447] = {.entry = {.count = 1, .reusable = true}}, SHIFT(144), + [449] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_use_names_list, 1, 0, 19), + [451] = {.entry = {.count = 1, .reusable = true}}, SHIFT(185), + [453] = {.entry = {.count = 1, .reusable = true}}, SHIFT(38), + [455] = {.entry = {.count = 1, .reusable = true}}, SHIFT(140), + [457] = {.entry = {.count = 1, .reusable = true}}, SHIFT(72), + [459] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_include_names_list, 1, 0, 20), + [461] = {.entry = {.count = 1, .reusable = true}}, SHIFT(189), + [463] = {.entry = {.count = 1, .reusable = true}}, SHIFT(318), + [465] = {.entry = {.count = 1, .reusable = true}}, SHIFT(65), + [467] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_resource_method, 1, 0, 0), + [469] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_resource_method, 1, 0, 0), + [471] = {.entry = {.count = 1, .reusable = true}}, SHIFT(39), + [473] = {.entry = {.count = 1, .reusable = true}}, SHIFT(222), + [475] = {.entry = {.count = 1, .reusable = true}}, SHIFT(94), + [477] = {.entry = {.count = 1, .reusable = true}}, SHIFT(208), + [479] = {.entry = {.count = 1, .reusable = true}}, SHIFT(37), + [481] = {.entry = {.count = 1, .reusable = true}}, SHIFT(215), + [483] = {.entry = {.count = 1, .reusable = true}}, SHIFT(87), + [485] = {.entry = {.count = 1, .reusable = true}}, SHIFT(149), + [487] = {.entry = {.count = 1, .reusable = true}}, SHIFT(36), + [489] = {.entry = {.count = 1, .reusable = true}}, SHIFT(161), + [491] = {.entry = {.count = 1, .reusable = true}}, SHIFT(83), + [493] = {.entry = {.count = 1, .reusable = true}}, SHIFT(211), + [495] = {.entry = {.count = 1, .reusable = true}}, SHIFT(78), + [497] = {.entry = {.count = 1, .reusable = true}}, SHIFT(151), + [499] = {.entry = {.count = 1, .reusable = true}}, SHIFT(43), + [501] = {.entry = {.count = 1, .reusable = true}}, SHIFT(203), + [503] = {.entry = {.count = 1, .reusable = true}}, SHIFT(68), + [505] = {.entry = {.count = 1, .reusable = true}}, SHIFT(212), + [507] = {.entry = {.count = 1, .reusable = true}}, SHIFT(26), + [509] = {.entry = {.count = 1, .reusable = true}}, SHIFT(221), + [511] = {.entry = {.count = 1, .reusable = true}}, SHIFT(70), + [513] = {.entry = {.count = 1, .reusable = true}}, SHIFT(157), + [515] = {.entry = {.count = 1, .reusable = true}}, SHIFT(73), + [517] = {.entry = {.count = 1, .reusable = true}}, SHIFT(213), + [519] = {.entry = {.count = 1, .reusable = true}}, SHIFT(74), + [521] = {.entry = {.count = 1, .reusable = true}}, SHIFT(163), + [523] = {.entry = {.count = 1, .reusable = true}}, SHIFT(195), + [525] = {.entry = {.count = 1, .reusable = true}}, SHIFT(80), + [527] = {.entry = {.count = 1, .reusable = true}}, SHIFT(82), + [529] = {.entry = {.count = 1, .reusable = true}}, SHIFT(49), + [531] = {.entry = {.count = 1, .reusable = true}}, SHIFT(226), + [533] = {.entry = {.count = 1, .reusable = true}}, SHIFT(223), + [535] = {.entry = {.count = 1, .reusable = true}}, SHIFT(227), + [537] = {.entry = {.count = 1, .reusable = true}}, SHIFT(334), + [539] = {.entry = {.count = 1, .reusable = true}}, SHIFT(261), + [541] = {.entry = {.count = 1, .reusable = true}}, SHIFT(249), + [543] = {.entry = {.count = 1, .reusable = true}}, SHIFT(141), + [545] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_named_type_list, 1, 0, 0), + [547] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_resource_method, 5, 0, 0), + [549] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_resource_method, 5, 0, 0), + [551] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_tuple_list_repeat1, 2, 0, 0), SHIFT_REPEAT(14), + [554] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_tuple_list_repeat1, 2, 0, 0), + [556] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_named_type_list_repeat1, 2, 0, 0), SHIFT_REPEAT(207), + [559] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_named_type_list_repeat1, 2, 0, 0), + [561] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_named_type_list, 3, 0, 0), + [563] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_use_names_list, 2, 0, 19), + [565] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_use_names_list, 2, 0, 28), + [567] = {.entry = {.count = 1, .reusable = true}}, SHIFT(199), + [569] = {.entry = {.count = 1, .reusable = true}}, SHIFT(184), + [571] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_flags_body_repeat1, 2, 0, 0), + [573] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_flags_body_repeat1, 2, 0, 0), SHIFT_REPEAT(299), + [576] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_include_names_list, 2, 0, 20), + [578] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_include_names_list, 2, 0, 30), + [580] = {.entry = {.count = 1, .reusable = true}}, SHIFT(194), + [582] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_variant_case, 1, 0, 17), + [584] = {.entry = {.count = 1, .reusable = true}}, SHIFT(9), + [586] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5), + [588] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tuple_list, 1, 0, 0), + [590] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4), + [592] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_include_names_list, 3, 0, 30), + [594] = {.entry = {.count = 1, .reusable = true}}, SHIFT(62), + [596] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_variant_body_repeat1, 2, 0, 0), + [598] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_variant_body_repeat1, 2, 0, 0), SHIFT_REPEAT(248), + [601] = {.entry = {.count = 1, .reusable = true}}, SHIFT(34), + [603] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_include_names_list_repeat1, 2, 0, 39), + [605] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_include_names_list_repeat1, 2, 0, 39), SHIFT_REPEAT(258), + [608] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_use_names_list, 3, 0, 28), + [610] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_resource_method, 3, 0, 0), + [612] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_resource_method, 3, 0, 0), + [614] = {.entry = {.count = 1, .reusable = true}}, SHIFT(32), + [616] = {.entry = {.count = 1, .reusable = true}}, SHIFT(64), + [618] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_record_body_repeat1, 2, 0, 0), + [620] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_record_body_repeat1, 2, 0, 0), SHIFT_REPEAT(243), + [623] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_use_names_list_repeat1, 2, 0, 37), + [625] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_use_names_list_repeat1, 2, 0, 37), SHIFT_REPEAT(257), + [628] = {.entry = {.count = 1, .reusable = true}}, SHIFT(202), + [630] = {.entry = {.count = 1, .reusable = true}}, SHIFT(219), + [632] = {.entry = {.count = 1, .reusable = true}}, SHIFT(71), + [634] = {.entry = {.count = 1, .reusable = true}}, SHIFT(19), + [636] = {.entry = {.count = 1, .reusable = true}}, SHIFT(135), + [638] = {.entry = {.count = 1, .reusable = true}}, SHIFT(76), + [640] = {.entry = {.count = 1, .reusable = true}}, SHIFT(13), + [642] = {.entry = {.count = 1, .reusable = true}}, SHIFT(122), + [644] = {.entry = {.count = 1, .reusable = true}}, SHIFT(164), + [646] = {.entry = {.count = 1, .reusable = true}}, SHIFT(79), + [648] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_record_field, 3, 0, 31), + [650] = {.entry = {.count = 1, .reusable = true}}, SHIFT(295), + [652] = {.entry = {.count = 1, .reusable = true}}, SHIFT(63), + [654] = {.entry = {.count = 1, .reusable = true}}, SHIFT(153), + [656] = {.entry = {.count = 1, .reusable = true}}, SHIFT(31), + [658] = {.entry = {.count = 1, .reusable = true}}, SHIFT(27), + [660] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_param_list, 3, 0, 0), + [662] = {.entry = {.count = 1, .reusable = true}}, SHIFT(155), + [664] = {.entry = {.count = 1, .reusable = true}}, SHIFT(33), + [666] = {.entry = {.count = 1, .reusable = true}}, SHIFT(167), + [668] = {.entry = {.count = 1, .reusable = true}}, SHIFT(81), + [670] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_use_names_item, 3, 0, 0), + [672] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_use_names_list_repeat1, 2, 0, 36), + [674] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_include_names_item, 3, 0, 0), + [676] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_include_names_list_repeat1, 2, 0, 38), + [678] = {.entry = {.count = 1, .reusable = true}}, SHIFT(176), + [680] = {.entry = {.count = 1, .reusable = true}}, SHIFT(216), + [682] = {.entry = {.count = 1, .reusable = true}}, SHIFT(170), + [684] = {.entry = {.count = 1, .reusable = true}}, SHIFT(225), + [686] = {.entry = {.count = 1, .reusable = true}}, SHIFT(229), + [688] = {.entry = {.count = 1, .reusable = true}}, SHIFT(197), + [690] = {.entry = {.count = 1, .reusable = true}}, SHIFT(230), + [692] = {.entry = {.count = 1, .reusable = true}}, SHIFT(59), + [694] = {.entry = {.count = 1, .reusable = true}}, SHIFT(235), + [696] = {.entry = {.count = 1, .reusable = true}}, SHIFT(171), + [698] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_variant_case, 4, 0, 31), + [700] = {.entry = {.count = 1, .reusable = true}}, SHIFT(113), + [702] = {.entry = {.count = 1, .reusable = true}}, SHIFT(115), + [704] = {.entry = {.count = 1, .reusable = true}}, SHIFT(138), + [706] = {.entry = {.count = 1, .reusable = true}}, SHIFT(287), + [708] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_named_type, 3, 0, 31), + [710] = {.entry = {.count = 1, .reusable = true}}, SHIFT(97), + [712] = {.entry = {.count = 1, .reusable = true}}, SHIFT(18), + [714] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_package_decl_repeat1, 2, 0, 0), SHIFT_REPEAT(295), + [717] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_param_list, 2, 0, 0), + [719] = {.entry = {.count = 1, .reusable = true}}, SHIFT(114), + [721] = {.entry = {.count = 1, .reusable = true}}, SHIFT(239), + [723] = {.entry = {.count = 1, .reusable = true}}, SHIFT(125), + [725] = {.entry = {.count = 1, .reusable = true}}, SHIFT(117), + [727] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_func_type, 3, 0, 27), + [729] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_result_list, 4, 0, 0), + [731] = {.entry = {.count = 1, .reusable = true}}, SHIFT(303), + [733] = {.entry = {.count = 1, .reusable = true}}, SHIFT(139), + [735] = {.entry = {.count = 1, .reusable = true}}, SHIFT(263), + [737] = {.entry = {.count = 1, .reusable = true}}, SHIFT(129), + [739] = {.entry = {.count = 1, .reusable = true}}, SHIFT(238), + [741] = {.entry = {.count = 1, .reusable = true}}, SHIFT(23), + [743] = {.entry = {.count = 1, .reusable = true}}, SHIFT(233), + [745] = {.entry = {.count = 1, .reusable = true}}, SHIFT(206), + [747] = {.entry = {.count = 1, .reusable = true}}, SHIFT(240), + [749] = {.entry = {.count = 1, .reusable = true}}, SHIFT(241), + [751] = {.entry = {.count = 1, .reusable = true}}, SHIFT(300), + [753] = {.entry = {.count = 1, .reusable = true}}, SHIFT(29), + [755] = {.entry = {.count = 1, .reusable = true}}, SHIFT(228), + [757] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_include_names_body, 3, 0, 29), + [759] = {.entry = {.count = 1, .reusable = true}}, SHIFT(11), + [761] = {.entry = {.count = 1, .reusable = true}}, SHIFT(28), + [763] = {.entry = {.count = 1, .reusable = true}}, SHIFT(130), + [765] = {.entry = {.count = 1, .reusable = true}}, SHIFT(136), + [767] = {.entry = {.count = 1, .reusable = true}}, SHIFT(270), + [769] = {.entry = {.count = 1, .reusable = true}}, SHIFT(107), + [771] = {.entry = {.count = 1, .reusable = true}}, SHIFT(284), + [773] = {.entry = {.count = 1, .reusable = true}}, SHIFT(61), + [775] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_package_decl_repeat1, 2, 0, 0), + [777] = {.entry = {.count = 1, .reusable = true}}, SHIFT(266), + [779] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_result_list, 3, 0, 0), + [781] = {.entry = {.count = 1, .reusable = true}}, SHIFT(58), + [783] = {.entry = {.count = 1, .reusable = true}}, SHIFT(173), + [785] = {.entry = {.count = 1, .reusable = true}}, SHIFT(181), + [787] = {.entry = {.count = 1, .reusable = true}}, ACCEPT_INPUT(), + [789] = {.entry = {.count = 1, .reusable = true}}, SHIFT(25), + [791] = {.entry = {.count = 1, .reusable = true}}, SHIFT(60), + [793] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7), + [795] = {.entry = {.count = 1, .reusable = true}}, SHIFT(231), + [797] = {.entry = {.count = 1, .reusable = true}}, SHIFT(200), + [799] = {.entry = {.count = 1, .reusable = true}}, SHIFT(201), + [801] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_result_list, 2, 0, 0), + [803] = {.entry = {.count = 1, .reusable = true}}, SHIFT(246), + [805] = {.entry = {.count = 1, .reusable = true}}, SHIFT(255), + [807] = {.entry = {.count = 1, .reusable = true}}, SHIFT(175), + [809] = {.entry = {.count = 1, .reusable = true}}, SHIFT(75), + [811] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2), + [813] = {.entry = {.count = 1, .reusable = true}}, SHIFT(10), + [815] = {.entry = {.count = 1, .reusable = true}}, SHIFT(15), + [817] = {.entry = {.count = 1, .reusable = true}}, SHIFT(321), + [819] = {.entry = {.count = 1, .reusable = true}}, SHIFT(254), + [821] = {.entry = {.count = 1, .reusable = true}}, SHIFT(123), + [823] = {.entry = {.count = 1, .reusable = true}}, SHIFT(319), + [825] = {.entry = {.count = 1, .reusable = true}}, SHIFT(124), + [827] = {.entry = {.count = 1, .reusable = true}}, SHIFT(35), + [829] = {.entry = {.count = 1, .reusable = true}}, SHIFT(8), + [831] = {.entry = {.count = 1, .reusable = true}}, SHIFT(314), + [833] = {.entry = {.count = 1, .reusable = true}}, SHIFT(316), + [835] = {.entry = {.count = 1, .reusable = true}}, SHIFT(84), + [837] = {.entry = {.count = 1, .reusable = true}}, SHIFT(69), + [839] = {.entry = {.count = 1, .reusable = true}}, SHIFT(118), + [841] = {.entry = {.count = 1, .reusable = true}}, SHIFT(120), + [843] = {.entry = {.count = 1, .reusable = true}}, SHIFT(119), + [845] = {.entry = {.count = 1, .reusable = true}}, SHIFT(245), + [847] = {.entry = {.count = 1, .reusable = true}}, SHIFT(242), + [849] = {.entry = {.count = 1, .reusable = true}}, SHIFT(237), + [851] = {.entry = {.count = 1, .reusable = true}}, SHIFT(236), + [853] = {.entry = {.count = 1, .reusable = true}}, SHIFT(280), + [855] = {.entry = {.count = 1, .reusable = true}}, SHIFT(322), + [857] = {.entry = {.count = 1, .reusable = true}}, SHIFT(12), + [859] = {.entry = {.count = 1, .reusable = true}}, SHIFT(273), + [861] = {.entry = {.count = 1, .reusable = true}}, SHIFT(333), + [863] = {.entry = {.count = 1, .reusable = true}}, SHIFT(145), + [865] = {.entry = {.count = 1, .reusable = true}}, SHIFT(336), + [867] = {.entry = {.count = 1, .reusable = true}}, SHIFT(292), }; #ifdef __cplusplus @@ -7950,7 +8129,7 @@ extern "C" { #define TS_PUBLIC __attribute__((visibility("default"))) #endif -TS_PUBLIC const TSLanguage *tree_sitter_wit() { +TS_PUBLIC const TSLanguage *tree_sitter_wit(void) { static const TSLanguage language = { .version = LANGUAGE_VERSION, .symbol_count = SYMBOL_COUNT, diff --git a/src/tree_sitter/parser.h b/src/tree_sitter/parser.h index 17b4fde..17f0e94 100644 --- a/src/tree_sitter/parser.h +++ b/src/tree_sitter/parser.h @@ -86,6 +86,11 @@ typedef union { } entry; } TSParseActionEntry; +typedef struct { + int32_t start; + int32_t end; +} TSCharacterRange; + struct TSLanguage { uint32_t version; uint32_t symbol_count; @@ -125,6 +130,24 @@ struct TSLanguage { const TSStateId *primary_state_ids; }; +static inline bool set_contains(TSCharacterRange *ranges, uint32_t len, int32_t lookahead) { + uint32_t index = 0; + uint32_t size = len - index; + while (size > 1) { + uint32_t half_size = size / 2; + uint32_t mid_index = index + half_size; + TSCharacterRange *range = &ranges[mid_index]; + if (lookahead >= range->start && lookahead <= range->end) { + return true; + } else if (lookahead > range->end) { + index = mid_index; + } + size -= half_size; + } + TSCharacterRange *range = &ranges[index]; + return (lookahead >= range->start && lookahead <= range->end); +} + /* * Lexer Macros */ @@ -154,6 +177,17 @@ struct TSLanguage { goto next_state; \ } +#define ADVANCE_MAP(...) \ + { \ + static const uint16_t map[] = { __VA_ARGS__ }; \ + for (uint32_t i = 0; i < sizeof(map) / sizeof(map[0]); i += 2) { \ + if (map[i] == lookahead) { \ + state = map[i + 1]; \ + goto next_state; \ + } \ + } \ + } + #define SKIP(state_value) \ { \ skip = true; \ @@ -203,14 +237,15 @@ struct TSLanguage { } \ }} -#define REDUCE(symbol_val, child_count_val, ...) \ - {{ \ - .reduce = { \ - .type = TSParseActionTypeReduce, \ - .symbol = symbol_val, \ - .child_count = child_count_val, \ - __VA_ARGS__ \ - }, \ +#define REDUCE(symbol_name, children, precedence, prod_id) \ + {{ \ + .reduce = { \ + .type = TSParseActionTypeReduce, \ + .symbol = symbol_name, \ + .child_count = children, \ + .dynamic_precedence = precedence, \ + .production_id = prod_id \ + }, \ }} #define RECOVER() \ diff --git a/test/corpus/all-resources.txt b/test/corpus/all-resources.txt index 0c3ff2d..b0551ff 100644 --- a/test/corpus/all-resources.txt +++ b/test/corpus/all-resources.txt @@ -51,4 +51,133 @@ interface i { --- - +(source_file + (package_decl + (id) + (id)) + (interface_item + (id) + (interface_body + (interface_items + (typedef_item + (resource_item + (id) + (resource_body)))) + (interface_items + (typedef_item + (resource_item + (id) + (resource_body + (resource_method + (param_list)))))) + (interface_items + (typedef_item + (resource_item + (id) + (resource_body + (resource_method + (param_list + (named_type_list + (named_type + (id) + (ty))))))))) + (interface_items + (typedef_item + (resource_item + (id) + (resource_body + (resource_method + (param_list + (named_type_list + (named_type + (id) + (ty))))) + (resource_method + (func_item + (id) + (func_type + (param_list)))) + (resource_method + (id) + (func_type + (param_list))))))) + (interface_items + (typedef_item + (resource_item + (id) + (resource_body + (resource_method + (param_list + (named_type_list + (named_type + (id) + (ty + (handle + (id)))) + (named_type + (id) + (ty + (handle + (id))))))) + (resource_method + (func_item + (id) + (func_type + (param_list + (named_type_list + (named_type + (id) + (ty + (handle + (id)))) + (named_type + (id) + (ty + (handle + (id))))))))))))))) + (world_item + (id) + (world_body + (world_items + (typedef_item + (resource_item + (id)))) + (world_items + (typedef_item + (resource_item + (id) + (resource_body)))) + (world_items + (typedef_item + (resource_item + (id) + (resource_body + (resource_method + (param_list)))))))) + (interface_item + (id) + (interface_body + (interface_items + (typedef_item + (resource_item + (id)))) + (interface_items + (typedef_item + (type_item + (id) + (ty + (id))))) + (interface_items + (typedef_item + (type_item + (id) + (ty + (handle + (id)))))) + (interface_items + (typedef_item + (type_item + (id) + (ty + (handle + (id))))))))) diff --git a/test/corpus/all-types.txt b/test/corpus/all-types.txt index 9c96c6f..a481f91 100644 --- a/test/corpus/all-types.txt +++ b/test/corpus/all-types.txt @@ -67,4 +67,340 @@ interface types { --- - +(source_file + (package_decl + (id) + (id)) + (interface_item + (id) + (interface_body + (interface_items + (typedef_item + (type_item + (id) + (ty)))) + (interface_items + (typedef_item + (type_item + (id) + (ty)))) + (interface_items + (typedef_item + (type_item + (id) + (ty)))) + (interface_items + (typedef_item + (type_item + (id) + (ty)))) + (interface_items + (typedef_item + (type_item + (id) + (ty)))) + (interface_items + (typedef_item + (type_item + (id) + (ty)))) + (interface_items + (typedef_item + (type_item + (id) + (ty)))) + (interface_items + (typedef_item + (type_item + (id) + (ty)))) + (interface_items + (typedef_item + (type_item + (id) + (ty)))) + (interface_items + (typedef_item + (type_item + (id) + (ty)))) + (interface_items + (typedef_item + (type_item + (id) + (ty)))) + (interface_items + (typedef_item + (type_item + (id) + (ty)))) + (interface_items + (typedef_item + (type_item + (id) + (ty)))) + (interface_items + (typedef_item + (type_item + (id) + (ty + (list + (ty)))))) + (interface_items + (typedef_item + (type_item + (id) + (ty)))) + (interface_items + (typedef_item + (type_item + (id) + (ty + (option + (ty)))))) + (interface_items + (typedef_item + (type_item + (id) + (ty + (result + (ty) + (ty)))))) + (interface_items + (typedef_item + (type_item + (id) + (ty + (result + (ty)))))) + (interface_items + (typedef_item + (type_item + (id) + (ty + (result + (ty)))))) + (interface_items + (typedef_item + (type_item + (id) + (ty + (result))))) + (interface_items + (typedef_item + (record_item + (id) + (record_body)))) + (interface_items + (typedef_item + (record_item + (id) + (record_body + (record_field + (id) + (ty)))))) + (interface_items + (typedef_item + (record_item + (id) + (record_body + (record_field + (id) + (ty)))))) + (interface_items + (typedef_item + (record_item + (id) + (record_body + (record_field + (id) + (ty)) + (record_field + (id) + (ty)))))) + (interface_items + (typedef_item + (record_item + (id) + (record_body + (record_field + (id) + (ty)) + (record_field + (id) + (ty)))))) + (interface_items + (typedef_item + (record_item + (id) + (record_body + (record_field + (id) + (ty)))))) + (interface_items + (typedef_item + (record_item + (id) + (record_body)))) + (interface_items + (typedef_item + (type_item + (id) + (ty + (tuple))))) + (interface_items + (typedef_item + (type_item + (id) + (ty + (tuple + (tuple_list + (ty))))))) + (interface_items + (typedef_item + (type_item + (id) + (ty + (tuple + (tuple_list + (ty))))))) + (interface_items + (typedef_item + (type_item + (id) + (ty + (tuple + (tuple_list + (ty) + (ty))))))) + (interface_items + (typedef_item + (flags_items + (id) + (flags_body)))) + (interface_items + (typedef_item + (flags_items + (id) + (flags_body + (id) + (id) + (id))))) + (interface_items + (typedef_item + (flags_items + (id) + (flags_body + (id) + (id) + (id))))) + (interface_items + (typedef_item + (variant_items + (id) + (variant_body + (variant_case + (id)))))) + (interface_items + (typedef_item + (variant_items + (id) + (variant_body + (variant_case + (id)) + (variant_case + (id)))))) + (interface_items + (typedef_item + (variant_items + (id) + (variant_body + (variant_case + (id)) + (variant_case + (id)))))) + (interface_items + (typedef_item + (variant_items + (id) + (variant_body + (variant_case + (id)) + (variant_case + (id) + (ty)))))) + (interface_items + (typedef_item + (variant_items + (id) + (variant_body + (variant_case + (id)) + (variant_case + (id) + (ty + (option + (ty)))))))) + (interface_items + (typedef_item + (enum_items + (id) + (enum_body + (id) + (id) + (id))))) + (interface_items + (typedef_item + (enum_items + (id) + (enum_body + (id) + (id) + (id))))) + (interface_items + (typedef_item + (type_item + (id) + (ty)))) + (interface_items + (typedef_item + (type_item + (id) + (ty)))) + (interface_items + (typedef_item + (type_item + (id) + (ty + (list + (ty + (list + (ty + (list + (ty + (id))))))))))) + (interface_items + (typedef_item + (type_item + (id) + (ty + (id))))) + (interface_items + (typedef_item + (type_item + (id) + (ty + (id))))) + (comment) + (comment) + (interface_items + (typedef_item + (type_item + (id) + (ty + (id))))) + (interface_items + (typedef_item + (type_item + (id) + (ty))))))) diff --git a/test/corpus/world.txt b/test/corpus/world.txt index a6b398a..dd3eefe 100644 --- a/test/corpus/world.txt +++ b/test/corpus/world.txt @@ -97,11 +97,29 @@ World with include aliased ========================== world foo { - include wasi:io/my-world-1 with { a as a1, b as b1 }; + include wasi:io/my-world-v1 with { a as a1, b as b1 }; } --- +(source_file + (world_item + (id) + (world_body + (world_items + (include_item + (use_path + (id) + (id) + (id)) + (include_names_body + (include_names_list + (include_names_item + (id) + (id)) + (include_names_item + (id) + (id))))))))) ============== World with use @@ -150,80 +168,80 @@ world imports { --- (source_file - (world_item - name: (id) - body: (world_body - world_items: (world_items - import_item: (import_item - (use_path - (id)))) - world_items: (world_items - export_item: (export_item - (use_path - (id)))) - world_items: (world_items - import_item: (import_item - name: (id) - (extern_type - (interface_body - interface_items: (interface_items - typedef: (typedef_item - (type_item - alias: (id) - type: (ty)))) - interface_items: (interface_items - func: (func_item - name: (id) - (func_type - param_list: (param_list - (named_type_list - (named_type - name: (id) - type: (ty)))) - result_list: (result_list - (ty - (result - (ty) - (ty - (id)))))))))))) - world_items: (world_items - export_item: (export_item - name: (id) - (extern_type - (interface_body - interface_items: (interface_items - typedef: (typedef_item - (type_item - alias: (id) - type: (ty)))) - interface_items: (interface_items - func: (func_item - name: (id) - (func_type - param_list: (param_list - (named_type_list - (named_type - name: (id) - type: (ty)))) - result_list: (result_list - (ty - (result - (ty) - (ty - (id)))))))))))) - world_items: (world_items - import_item: (import_item - name: (id) - (extern_type - (func_type - param_list: (param_list - (named_type_list - (named_type - name: (id) - type: (ty)))) - result_list: (result_list - (ty - (result - (ty) - (ty - (id)))))))))))) + (world_item + name: (id) + body: (world_body + world_items: (world_items + import_item: (import_item + (use_path + (id)))) + world_items: (world_items + export_item: (export_item + (use_path + (id)))) + world_items: (world_items + import_item: (import_item + name: (id) + (extern_type + (interface_body + interface_items: (interface_items + typedef: (typedef_item + (type_item + alias: (id) + type: (ty)))) + interface_items: (interface_items + func: (func_item + name: (id) + (func_type + param_list: (param_list + (named_type_list + (named_type + name: (id) + type: (ty)))) + result_list: (result_list + (ty + (result + (ty) + (ty + (id)))))))))))) + world_items: (world_items + export_item: (export_item + name: (id) + (extern_type + (interface_body + interface_items: (interface_items + typedef: (typedef_item + (type_item + alias: (id) + type: (ty)))) + interface_items: (interface_items + func: (func_item + name: (id) + (func_type + param_list: (param_list + (named_type_list + (named_type + name: (id) + type: (ty)))) + result_list: (result_list + (ty + (result + (ty) + (ty + (id)))))))))))) + world_items: (world_items + import_item: (import_item + name: (id) + (extern_type + (func_type + param_list: (param_list + (named_type_list + (named_type + name: (id) + type: (ty)))) + result_list: (result_list + (ty + (result + (ty) + (ty + (id)))))))))))) From f11a31864c3b494b1e1475456656edeedf613488 Mon Sep 17 00:00:00 2001 From: Michael-F-Bryan Date: Thu, 9 May 2024 11:40:02 +0800 Subject: [PATCH 3/3] Introduce the concept of "doc-comments" --- grammar.js | 85 +- queries/highlights.scm | 9 +- src/grammar.json | 407 +- src/node-types.json | 328 +- src/parser.c | 10233 +++++++++++++-------- test/corpus/all-resources.txt | 60 +- test/corpus/all-types.txt | 40 +- test/corpus/comments.txt | 4 +- test/corpus/design-doc-interface.txt | 21 +- test/corpus/doc-comment-kitchen-sink.txt | 152 +- test/corpus/flags.txt | 25 +- test/corpus/interfaces.txt | 27 +- test/corpus/wasi.txt | 589 +- test/corpus/world.txt | 12 +- 14 files changed, 7822 insertions(+), 4170 deletions(-) diff --git a/grammar.js b/grammar.js index aada995..b4e2896 100644 --- a/grammar.js +++ b/grammar.js @@ -24,6 +24,10 @@ module.exports = grammar({ $.comment, ], + conflicts: $ => [ + [$.comment, $.doc_comment], + ], + rules: { source_file: $ => seq( optional($.package_decl), @@ -37,6 +41,7 @@ module.exports = grammar({ ), package_decl: $ => seq( + field('attributes', repeat($.attribute)), 'package', repeat1(seq($.id, ':')), $.id, @@ -62,6 +67,7 @@ module.exports = grammar({ valid_semver: $ => /(\d+)\.(\d+)\.(\d+)(?:-([0-9A-Za-z-]+(?:\.[0-9A-Za-z-]+)*))?(?:\+([0-9A-Za-z-]+(?:\.[0-9A-Za-z-]+)*))?/, world_item: $ => seq( + field("attributes", repeat($.attribute)), 'world', field('name', $.id), field('body', $.world_body), @@ -114,6 +120,7 @@ module.exports = grammar({ include_names_item: $ => seq($.id, 'as', $.id), interface_item: $ => seq( + field('attributes', repeat($.attribute)), 'interface', field('name', $.id), field('body', $.interface_body), @@ -140,7 +147,13 @@ module.exports = grammar({ $.type_item, ), - func_item: $ => seq(field('name', $.id), ':', $.func_type, ';'), + func_item: $ => seq( + field('attributes', repeat($.attribute)), + field('name', $.id), + ':', + $.func_type, + ';', + ), func_type: $ => seq( 'func', @@ -158,6 +171,7 @@ module.exports = grammar({ named_type_list: $ => commaSeparatedList($.named_type), named_type: $ => seq( + field('attributes', repeat($.attribute)), field('name', $.id), ':', field('type', $.ty), @@ -172,9 +186,17 @@ module.exports = grammar({ seq($.id, 'as', $.id), ), - type_item: $ => seq('type', field('alias', $.id), '=', field('type', $.ty), ';'), + type_item: $ => seq( + field('attributes', repeat($.attribute)), + 'type', + field('alias', $.id), + '=', + field('type', $.ty), + ';', + ), record_item: $ => seq( + field('attributes', repeat($.attribute)), 'record', field('name', $.id), field('body', $.record_body), @@ -183,20 +205,27 @@ module.exports = grammar({ record_body: $ => seq('{', field('record_fields', optionalCommaSeparatedList($.record_field)), '}'), record_field: $ => seq( + field('attributes', repeat($.attribute)), field('name', $.id), ':', field('type', $.ty), ), flags_items: $ => seq( + field('attributes', repeat($.attribute)), 'flags', field('name', $.id), field('body', $.flags_body), ), - flags_body: $ => seq('{', field('flags_fields', optionalCommaSeparatedList($.id)), '}'), + flags_body: $ => seq('{', field('flags_fields', optionalCommaSeparatedList($.flags_case)), '}'), + flags_case: $ => seq( + field('attributes', repeat($.attribute)), + $.id, + ), variant_items: $ => seq( + field('attributes', repeat($.attribute)), 'variant', field('name', $.id), field('body', $.variant_body), @@ -204,16 +233,27 @@ module.exports = grammar({ variant_body: $ => seq('{', field('variant_cases', optionalCommaSeparatedList($.variant_case)), '}'), - variant_case: $ => choice( + variant_case: $ => seq( + field('attributes', repeat($.attribute)), field('name', $.id), - seq(field('name', $.id), '(', field('type', $.ty), ')') + optional(seq('(', field('type', $.ty), ')')), ), - enum_items: $ => seq('enum', field('name', $.id), $.enum_body), + enum_items: $ => seq( + field('attributes', repeat($.attribute)), + 'enum', + field('name', $.id), + $.enum_body, + ), - enum_body: $ => seq('{', field('enum_cases', optionalCommaSeparatedList($.id)), '}'), + enum_body: $ => seq('{', field('enum_cases', optionalCommaSeparatedList($.enum_case)), '}'), + enum_case: $ => seq( + field('attributes', repeat($.attribute)), + $.id, + ), resource_item: $ => seq( + field('attributes', repeat($.attribute)), 'resource', field('name', $.id), choice( @@ -226,8 +266,23 @@ module.exports = grammar({ resource_method: $ => choice( $.func_item, - seq($.id, ':', 'static', $.func_type, ';'), - seq('constructor', $.param_list, ';'), + $.static_resource_method, + $.resource_constructor, + ), + static_resource_method: $ => seq( + field('attributes', repeat($.attribute)), + $.id, + ':', + 'static', + $.func_type, + ';', + + ), + resource_constructor: $ => seq( + field('attributes', repeat($.attribute)), + 'constructor', + $.param_list, + ';', ), ty: $ => prec(1, choice( @@ -266,9 +321,9 @@ module.exports = grammar({ 'result', optional( choice( - seq('<', $.ty, ',', $.ty, '>'), - seq('<', '_', ',', $.ty, '>'), - seq('<', $.ty, '>'), + seq('<', field('ok', $.ty), ',', field('err', $.ty), '>'), + seq('<', '_', ',', field('err', $.ty), '>'), + seq('<', field('ok', $.ty), '>'), ), ), ), @@ -277,8 +332,12 @@ module.exports = grammar({ _borrow_handle: $ => seq('borrow', '<', $.id, '>'), _owned_handle: $ => seq('own', '<', $.id, '>'), + attribute: $ => $.doc_comment, + + doc_comment: $ => seq("///", optional(' '), $.docs), + docs: _ => /[^\n]*/, comment: _ => token(choice( - seq('//', /(\\+(.|\r?\n)|[^\\\n])*/), + seq("//", /[^/\n][^\n]*/), seq( '/*', /[^*]*\*+([^/*][^*]*\*+)*/, diff --git a/queries/highlights.scm b/queries/highlights.scm index d726a68..a23317c 100644 --- a/queries/highlights.scm +++ b/queries/highlights.scm @@ -56,7 +56,8 @@ name: (id) @type) (flags_body - (id) @variable.member) + (flags_case + (id) @variable.member)) (variant_items name: (id) @type) @@ -68,13 +69,13 @@ name: (id) @type) (enum_body - enum_cases: (id) @constant) + (enum_case + (id) @constant)) (resource_item name: (id) @type) -(resource_method - "constructor" @constructor) +(resource_constructor) @constructor (toplevel_use_item "use" @keyword.import) diff --git a/src/grammar.json b/src/grammar.json index 93d1e64..baa4e9c 100644 --- a/src/grammar.json +++ b/src/grammar.json @@ -41,6 +41,17 @@ "package_decl": { "type": "SEQ", "members": [ + { + "type": "FIELD", + "name": "attributes", + "content": { + "type": "REPEAT", + "content": { + "type": "SYMBOL", + "name": "attribute" + } + } + }, { "type": "STRING", "value": "package" @@ -236,6 +247,17 @@ "world_item": { "type": "SEQ", "members": [ + { + "type": "FIELD", + "name": "attributes", + "content": { + "type": "REPEAT", + "content": { + "type": "SYMBOL", + "name": "attribute" + } + } + }, { "type": "STRING", "value": "world" @@ -597,6 +619,17 @@ "interface_item": { "type": "SEQ", "members": [ + { + "type": "FIELD", + "name": "attributes", + "content": { + "type": "REPEAT", + "content": { + "type": "SYMBOL", + "name": "attribute" + } + } + }, { "type": "STRING", "value": "interface" @@ -704,6 +737,17 @@ "func_item": { "type": "SEQ", "members": [ + { + "type": "FIELD", + "name": "attributes", + "content": { + "type": "REPEAT", + "content": { + "type": "SYMBOL", + "name": "attribute" + } + } + }, { "type": "FIELD", "name": "name", @@ -871,6 +915,17 @@ "named_type": { "type": "SEQ", "members": [ + { + "type": "FIELD", + "name": "attributes", + "content": { + "type": "REPEAT", + "content": { + "type": "SYMBOL", + "name": "attribute" + } + } + }, { "type": "FIELD", "name": "name", @@ -1000,6 +1055,17 @@ "type_item": { "type": "SEQ", "members": [ + { + "type": "FIELD", + "name": "attributes", + "content": { + "type": "REPEAT", + "content": { + "type": "SYMBOL", + "name": "attribute" + } + } + }, { "type": "STRING", "value": "type" @@ -1033,6 +1099,17 @@ "record_item": { "type": "SEQ", "members": [ + { + "type": "FIELD", + "name": "attributes", + "content": { + "type": "REPEAT", + "content": { + "type": "SYMBOL", + "name": "attribute" + } + } + }, { "type": "STRING", "value": "record" @@ -1120,6 +1197,17 @@ "record_field": { "type": "SEQ", "members": [ + { + "type": "FIELD", + "name": "attributes", + "content": { + "type": "REPEAT", + "content": { + "type": "SYMBOL", + "name": "attribute" + } + } + }, { "type": "FIELD", "name": "name", @@ -1145,6 +1233,17 @@ "flags_items": { "type": "SEQ", "members": [ + { + "type": "FIELD", + "name": "attributes", + "content": { + "type": "REPEAT", + "content": { + "type": "SYMBOL", + "name": "attribute" + } + } + }, { "type": "STRING", "value": "flags" @@ -1185,7 +1284,7 @@ "members": [ { "type": "SYMBOL", - "name": "id" + "name": "flags_case" }, { "type": "REPEAT", @@ -1198,7 +1297,7 @@ }, { "type": "SYMBOL", - "name": "id" + "name": "flags_case" } ] } @@ -1229,9 +1328,40 @@ } ] }, + "flags_case": { + "type": "SEQ", + "members": [ + { + "type": "FIELD", + "name": "attributes", + "content": { + "type": "REPEAT", + "content": { + "type": "SYMBOL", + "name": "attribute" + } + } + }, + { + "type": "SYMBOL", + "name": "id" + } + ] + }, "variant_items": { "type": "SEQ", "members": [ + { + "type": "FIELD", + "name": "attributes", + "content": { + "type": "REPEAT", + "content": { + "type": "SYMBOL", + "name": "attribute" + } + } + }, { "type": "STRING", "value": "variant" @@ -1317,8 +1447,19 @@ ] }, "variant_case": { - "type": "CHOICE", + "type": "SEQ", "members": [ + { + "type": "FIELD", + "name": "attributes", + "content": { + "type": "REPEAT", + "content": { + "type": "SYMBOL", + "name": "attribute" + } + } + }, { "type": "FIELD", "name": "name", @@ -1328,31 +1469,31 @@ } }, { - "type": "SEQ", + "type": "CHOICE", "members": [ { - "type": "FIELD", - "name": "name", - "content": { - "type": "SYMBOL", - "name": "id" - } - }, - { - "type": "STRING", - "value": "(" - }, - { - "type": "FIELD", - "name": "type", - "content": { - "type": "SYMBOL", - "name": "ty" - } + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "(" + }, + { + "type": "FIELD", + "name": "type", + "content": { + "type": "SYMBOL", + "name": "ty" + } + }, + { + "type": "STRING", + "value": ")" + } + ] }, { - "type": "STRING", - "value": ")" + "type": "BLANK" } ] } @@ -1361,6 +1502,17 @@ "enum_items": { "type": "SEQ", "members": [ + { + "type": "FIELD", + "name": "attributes", + "content": { + "type": "REPEAT", + "content": { + "type": "SYMBOL", + "name": "attribute" + } + } + }, { "type": "STRING", "value": "enum" @@ -1397,7 +1549,7 @@ "members": [ { "type": "SYMBOL", - "name": "id" + "name": "enum_case" }, { "type": "REPEAT", @@ -1410,7 +1562,7 @@ }, { "type": "SYMBOL", - "name": "id" + "name": "enum_case" } ] } @@ -1441,9 +1593,40 @@ } ] }, + "enum_case": { + "type": "SEQ", + "members": [ + { + "type": "FIELD", + "name": "attributes", + "content": { + "type": "REPEAT", + "content": { + "type": "SYMBOL", + "name": "attribute" + } + } + }, + { + "type": "SYMBOL", + "name": "id" + } + ] + }, "resource_item": { "type": "SEQ", "members": [ + { + "type": "FIELD", + "name": "attributes", + "content": { + "type": "REPEAT", + "content": { + "type": "SYMBOL", + "name": "attribute" + } + } + }, { "type": "STRING", "value": "resource" @@ -1511,46 +1694,76 @@ "name": "func_item" }, { - "type": "SEQ", - "members": [ - { - "type": "SYMBOL", - "name": "id" - }, - { - "type": "STRING", - "value": ":" - }, - { - "type": "STRING", - "value": "static" - }, - { + "type": "SYMBOL", + "name": "static_resource_method" + }, + { + "type": "SYMBOL", + "name": "resource_constructor" + } + ] + }, + "static_resource_method": { + "type": "SEQ", + "members": [ + { + "type": "FIELD", + "name": "attributes", + "content": { + "type": "REPEAT", + "content": { "type": "SYMBOL", - "name": "func_type" - }, - { - "type": "STRING", - "value": ";" + "name": "attribute" } - ] + } }, { - "type": "SEQ", - "members": [ - { - "type": "STRING", - "value": "constructor" - }, - { + "type": "SYMBOL", + "name": "id" + }, + { + "type": "STRING", + "value": ":" + }, + { + "type": "STRING", + "value": "static" + }, + { + "type": "SYMBOL", + "name": "func_type" + }, + { + "type": "STRING", + "value": ";" + } + ] + }, + "resource_constructor": { + "type": "SEQ", + "members": [ + { + "type": "FIELD", + "name": "attributes", + "content": { + "type": "REPEAT", + "content": { "type": "SYMBOL", - "name": "param_list" - }, - { - "type": "STRING", - "value": ";" + "name": "attribute" } - ] + } + }, + { + "type": "STRING", + "value": "constructor" + }, + { + "type": "SYMBOL", + "name": "param_list" + }, + { + "type": "STRING", + "value": ";" } ] }, @@ -1776,16 +1989,24 @@ "value": "<" }, { - "type": "SYMBOL", - "name": "ty" + "type": "FIELD", + "name": "ok", + "content": { + "type": "SYMBOL", + "name": "ty" + } }, { "type": "STRING", "value": "," }, { - "type": "SYMBOL", - "name": "ty" + "type": "FIELD", + "name": "err", + "content": { + "type": "SYMBOL", + "name": "ty" + } }, { "type": "STRING", @@ -1809,8 +2030,12 @@ "value": "," }, { - "type": "SYMBOL", - "name": "ty" + "type": "FIELD", + "name": "err", + "content": { + "type": "SYMBOL", + "name": "ty" + } }, { "type": "STRING", @@ -1826,8 +2051,12 @@ "value": "<" }, { - "type": "SYMBOL", - "name": "ty" + "type": "FIELD", + "name": "ok", + "content": { + "type": "SYMBOL", + "name": "ty" + } }, { "type": "STRING", @@ -1907,6 +2136,39 @@ } ] }, + "attribute": { + "type": "SYMBOL", + "name": "doc_comment" + }, + "doc_comment": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "///" + }, + { + "type": "CHOICE", + "members": [ + { + "type": "STRING", + "value": " " + }, + { + "type": "BLANK" + } + ] + }, + { + "type": "SYMBOL", + "name": "docs" + } + ] + }, + "docs": { + "type": "PATTERN", + "value": "[^\\n]*" + }, "comment": { "type": "TOKEN", "content": { @@ -1921,7 +2183,7 @@ }, { "type": "PATTERN", - "value": "(\\\\+(.|\\r?\\n)|[^\\\\\\n])*" + "value": "[^/\\n][^\\n]*" } ] }, @@ -1956,7 +2218,12 @@ "name": "comment" } ], - "conflicts": [], + "conflicts": [ + [ + "comment", + "doc_comment" + ] + ], "precedences": [], "externals": [], "inline": [], diff --git a/src/node-types.json b/src/node-types.json index 2b2ca48..ef96335 100644 --- a/src/node-types.json +++ b/src/node-types.json @@ -1,4 +1,34 @@ [ + { + "type": "attribute", + "named": true, + "fields": {}, + "children": { + "multiple": false, + "required": true, + "types": [ + { + "type": "doc_comment", + "named": true + } + ] + } + }, + { + "type": "doc_comment", + "named": true, + "fields": {}, + "children": { + "multiple": false, + "required": true, + "types": [ + { + "type": "docs", + "named": true + } + ] + } + }, { "type": "enum_body", "named": true, @@ -12,17 +42,53 @@ "named": false }, { - "type": "id", + "type": "enum_case", + "named": true + } + ] + } + } + }, + { + "type": "enum_case", + "named": true, + "fields": { + "attributes": { + "multiple": true, + "required": false, + "types": [ + { + "type": "attribute", "named": true } ] } + }, + "children": { + "multiple": false, + "required": true, + "types": [ + { + "type": "id", + "named": true + } + ] } }, { "type": "enum_items", "named": true, "fields": { + "attributes": { + "multiple": true, + "required": false, + "types": [ + { + "type": "attribute", + "named": true + } + ] + }, "name": { "multiple": false, "required": true, @@ -107,17 +173,53 @@ "named": false }, { - "type": "id", + "type": "flags_case", "named": true } ] } } }, + { + "type": "flags_case", + "named": true, + "fields": { + "attributes": { + "multiple": true, + "required": false, + "types": [ + { + "type": "attribute", + "named": true + } + ] + } + }, + "children": { + "multiple": false, + "required": true, + "types": [ + { + "type": "id", + "named": true + } + ] + } + }, { "type": "flags_items", "named": true, "fields": { + "attributes": { + "multiple": true, + "required": false, + "types": [ + { + "type": "attribute", + "named": true + } + ] + }, "body": { "multiple": false, "required": true, @@ -144,6 +246,16 @@ "type": "func_item", "named": true, "fields": { + "attributes": { + "multiple": true, + "required": false, + "types": [ + { + "type": "attribute", + "named": true + } + ] + }, "name": { "multiple": false, "required": true, @@ -330,6 +442,16 @@ "type": "interface_item", "named": true, "fields": { + "attributes": { + "multiple": true, + "required": false, + "types": [ + { + "type": "attribute", + "named": true + } + ] + }, "body": { "multiple": false, "required": true, @@ -407,6 +529,16 @@ "type": "named_type", "named": true, "fields": { + "attributes": { + "multiple": true, + "required": false, + "types": [ + { + "type": "attribute", + "named": true + } + ] + }, "name": { "multiple": false, "required": true, @@ -462,7 +594,18 @@ { "type": "package_decl", "named": true, - "fields": {}, + "fields": { + "attributes": { + "multiple": true, + "required": false, + "types": [ + { + "type": "attribute", + "named": true + } + ] + } + }, "children": { "multiple": true, "required": true, @@ -517,6 +660,16 @@ "type": "record_field", "named": true, "fields": { + "attributes": { + "multiple": true, + "required": false, + "types": [ + { + "type": "attribute", + "named": true + } + ] + }, "name": { "multiple": false, "required": true, @@ -543,6 +696,16 @@ "type": "record_item", "named": true, "fields": { + "attributes": { + "multiple": true, + "required": false, + "types": [ + { + "type": "attribute", + "named": true + } + ] + }, "body": { "multiple": false, "required": true, @@ -580,10 +743,46 @@ ] } }, + { + "type": "resource_constructor", + "named": true, + "fields": { + "attributes": { + "multiple": true, + "required": false, + "types": [ + { + "type": "attribute", + "named": true + } + ] + } + }, + "children": { + "multiple": false, + "required": true, + "types": [ + { + "type": "param_list", + "named": true + } + ] + } + }, { "type": "resource_item", "named": true, "fields": { + "attributes": { + "multiple": true, + "required": false, + "types": [ + { + "type": "attribute", + "named": true + } + ] + }, "name": { "multiple": false, "required": true, @@ -611,7 +810,7 @@ "named": true, "fields": {}, "children": { - "multiple": true, + "multiple": false, "required": true, "types": [ { @@ -619,15 +818,11 @@ "named": true }, { - "type": "func_type", + "type": "resource_constructor", "named": true }, { - "type": "id", - "named": true - }, - { - "type": "param_list", + "type": "static_resource_method", "named": true } ] @@ -636,16 +831,27 @@ { "type": "result", "named": true, - "fields": {}, - "children": { - "multiple": true, - "required": false, - "types": [ - { - "type": "ty", - "named": true - } - ] + "fields": { + "err": { + "multiple": false, + "required": false, + "types": [ + { + "type": "ty", + "named": true + } + ] + }, + "ok": { + "multiple": false, + "required": false, + "types": [ + { + "type": "ty", + "named": true + } + ] + } } }, { @@ -694,6 +900,36 @@ ] } }, + { + "type": "static_resource_method", + "named": true, + "fields": { + "attributes": { + "multiple": true, + "required": false, + "types": [ + { + "type": "attribute", + "named": true + } + ] + } + }, + "children": { + "multiple": true, + "required": true, + "types": [ + { + "type": "func_type", + "named": true + }, + { + "type": "id", + "named": true + } + ] + } + }, { "type": "toplevel_use_item", "named": true, @@ -803,6 +1039,16 @@ } ] }, + "attributes": { + "multiple": true, + "required": false, + "types": [ + { + "type": "attribute", + "named": true + } + ] + }, "type": { "multiple": false, "required": true, @@ -943,6 +1189,16 @@ "type": "variant_case", "named": true, "fields": { + "attributes": { + "multiple": true, + "required": false, + "types": [ + { + "type": "attribute", + "named": true + } + ] + }, "name": { "multiple": false, "required": true, @@ -969,6 +1225,16 @@ "type": "variant_items", "named": true, "fields": { + "attributes": { + "multiple": true, + "required": false, + "types": [ + { + "type": "attribute", + "named": true + } + ] + }, "body": { "multiple": false, "required": true, @@ -1011,6 +1277,16 @@ "type": "world_item", "named": true, "fields": { + "attributes": { + "multiple": true, + "required": false, + "types": [ + { + "type": "attribute", + "named": true + } + ] + }, "body": { "multiple": false, "required": true, @@ -1089,6 +1365,10 @@ } } }, + { + "type": " ", + "named": false + }, { "type": "(", "named": false @@ -1113,6 +1393,10 @@ "type": "/", "named": false }, + { + "type": "///", + "named": false + }, { "type": ":", "named": false @@ -1165,6 +1449,10 @@ "type": "constructor", "named": false }, + { + "type": "docs", + "named": true + }, { "type": "enum", "named": false diff --git a/src/parser.c b/src/parser.c index f926151..154bb18 100644 --- a/src/parser.c +++ b/src/parser.c @@ -13,15 +13,15 @@ #endif #define LANGUAGE_VERSION 14 -#define STATE_COUNT 339 +#define STATE_COUNT 467 #define LARGE_STATE_COUNT 2 -#define SYMBOL_COUNT 121 +#define SYMBOL_COUNT 132 #define ALIAS_COUNT 0 -#define TOKEN_COUNT 58 +#define TOKEN_COUNT 61 #define EXTERNAL_TOKEN_COUNT 0 -#define FIELD_COUNT 27 -#define MAX_ALIAS_SEQUENCE_LENGTH 7 -#define PRODUCTION_ID_COUNT 44 +#define FIELD_COUNT 30 +#define MAX_ALIAS_SEQUENCE_LENGTH 8 +#define PRODUCTION_ID_COUNT 54 enum ts_symbol_identifiers { anon_sym_package = 1, @@ -80,70 +80,81 @@ enum ts_symbol_identifiers { anon_sym__ = 54, anon_sym_borrow = 55, anon_sym_own = 56, - sym_comment = 57, - sym_source_file = 58, - sym_package_decl = 59, - sym_toplevel_use_item = 60, - sym_use_path = 61, - sym_world_item = 62, - sym_world_body = 63, - sym_world_items = 64, - sym_export_item = 65, - sym_import_item = 66, - sym_extern_type = 67, - sym_include_item = 68, - sym_include_names_body = 69, - sym_include_names_list = 70, - sym_include_names_item = 71, - sym_interface_item = 72, - sym_interface_body = 73, - sym_interface_items = 74, - sym_typedef_item = 75, - sym_func_item = 76, - sym_func_type = 77, - sym_param_list = 78, - sym_result_list = 79, - sym_named_type_list = 80, - sym_named_type = 81, - sym_use_item = 82, - sym_use_names_list = 83, - sym_use_names_item = 84, - sym_type_item = 85, - sym_record_item = 86, - sym_record_body = 87, - sym_record_field = 88, - sym_flags_items = 89, - sym_flags_body = 90, - sym_variant_items = 91, - sym_variant_body = 92, - sym_variant_case = 93, - sym_enum_items = 94, - sym_enum_body = 95, - sym_resource_item = 96, - sym_resource_body = 97, - sym_resource_method = 98, - sym_ty = 99, - sym_tuple = 100, - sym_tuple_list = 101, - sym_list = 102, - sym_option = 103, - sym_result = 104, - sym_handle = 105, - sym__borrow_handle = 106, - sym__owned_handle = 107, - aux_sym_source_file_repeat1 = 108, - aux_sym_package_decl_repeat1 = 109, - aux_sym_package_decl_repeat2 = 110, - aux_sym_world_body_repeat1 = 111, - aux_sym_include_names_list_repeat1 = 112, - aux_sym_interface_body_repeat1 = 113, - aux_sym_named_type_list_repeat1 = 114, - aux_sym_use_names_list_repeat1 = 115, - aux_sym_record_body_repeat1 = 116, - aux_sym_flags_body_repeat1 = 117, - aux_sym_variant_body_repeat1 = 118, - aux_sym_resource_body_repeat1 = 119, - aux_sym_tuple_list_repeat1 = 120, + anon_sym_SLASH_SLASH_SLASH = 57, + anon_sym_SPACE = 58, + sym_docs = 59, + sym_comment = 60, + sym_source_file = 61, + sym_package_decl = 62, + sym_toplevel_use_item = 63, + sym_use_path = 64, + sym_world_item = 65, + sym_world_body = 66, + sym_world_items = 67, + sym_export_item = 68, + sym_import_item = 69, + sym_extern_type = 70, + sym_include_item = 71, + sym_include_names_body = 72, + sym_include_names_list = 73, + sym_include_names_item = 74, + sym_interface_item = 75, + sym_interface_body = 76, + sym_interface_items = 77, + sym_typedef_item = 78, + sym_func_item = 79, + sym_func_type = 80, + sym_param_list = 81, + sym_result_list = 82, + sym_named_type_list = 83, + sym_named_type = 84, + sym_use_item = 85, + sym_use_names_list = 86, + sym_use_names_item = 87, + sym_type_item = 88, + sym_record_item = 89, + sym_record_body = 90, + sym_record_field = 91, + sym_flags_items = 92, + sym_flags_body = 93, + sym_flags_case = 94, + sym_variant_items = 95, + sym_variant_body = 96, + sym_variant_case = 97, + sym_enum_items = 98, + sym_enum_body = 99, + sym_enum_case = 100, + sym_resource_item = 101, + sym_resource_body = 102, + sym_resource_method = 103, + sym_static_resource_method = 104, + sym_resource_constructor = 105, + sym_ty = 106, + sym_tuple = 107, + sym_tuple_list = 108, + sym_list = 109, + sym_option = 110, + sym_result = 111, + sym_handle = 112, + sym__borrow_handle = 113, + sym__owned_handle = 114, + sym_attribute = 115, + sym_doc_comment = 116, + aux_sym_source_file_repeat1 = 117, + aux_sym_package_decl_repeat1 = 118, + aux_sym_package_decl_repeat2 = 119, + aux_sym_package_decl_repeat3 = 120, + aux_sym_world_body_repeat1 = 121, + aux_sym_include_names_list_repeat1 = 122, + aux_sym_interface_body_repeat1 = 123, + aux_sym_named_type_list_repeat1 = 124, + aux_sym_use_names_list_repeat1 = 125, + aux_sym_record_body_repeat1 = 126, + aux_sym_flags_body_repeat1 = 127, + aux_sym_variant_body_repeat1 = 128, + aux_sym_enum_body_repeat1 = 129, + aux_sym_resource_body_repeat1 = 130, + aux_sym_tuple_list_repeat1 = 131, }; static const char * const ts_symbol_names[] = { @@ -204,6 +215,9 @@ static const char * const ts_symbol_names[] = { [anon_sym__] = "_", [anon_sym_borrow] = "borrow", [anon_sym_own] = "own", + [anon_sym_SLASH_SLASH_SLASH] = "///", + [anon_sym_SPACE] = " ", + [sym_docs] = "docs", [sym_comment] = "comment", [sym_source_file] = "source_file", [sym_package_decl] = "package_decl", @@ -238,14 +252,18 @@ static const char * const ts_symbol_names[] = { [sym_record_field] = "record_field", [sym_flags_items] = "flags_items", [sym_flags_body] = "flags_body", + [sym_flags_case] = "flags_case", [sym_variant_items] = "variant_items", [sym_variant_body] = "variant_body", [sym_variant_case] = "variant_case", [sym_enum_items] = "enum_items", [sym_enum_body] = "enum_body", + [sym_enum_case] = "enum_case", [sym_resource_item] = "resource_item", [sym_resource_body] = "resource_body", [sym_resource_method] = "resource_method", + [sym_static_resource_method] = "static_resource_method", + [sym_resource_constructor] = "resource_constructor", [sym_ty] = "ty", [sym_tuple] = "tuple", [sym_tuple_list] = "tuple_list", @@ -255,9 +273,12 @@ static const char * const ts_symbol_names[] = { [sym_handle] = "handle", [sym__borrow_handle] = "_borrow_handle", [sym__owned_handle] = "_owned_handle", + [sym_attribute] = "attribute", + [sym_doc_comment] = "doc_comment", [aux_sym_source_file_repeat1] = "source_file_repeat1", [aux_sym_package_decl_repeat1] = "package_decl_repeat1", [aux_sym_package_decl_repeat2] = "package_decl_repeat2", + [aux_sym_package_decl_repeat3] = "package_decl_repeat3", [aux_sym_world_body_repeat1] = "world_body_repeat1", [aux_sym_include_names_list_repeat1] = "include_names_list_repeat1", [aux_sym_interface_body_repeat1] = "interface_body_repeat1", @@ -266,6 +287,7 @@ static const char * const ts_symbol_names[] = { [aux_sym_record_body_repeat1] = "record_body_repeat1", [aux_sym_flags_body_repeat1] = "flags_body_repeat1", [aux_sym_variant_body_repeat1] = "variant_body_repeat1", + [aux_sym_enum_body_repeat1] = "enum_body_repeat1", [aux_sym_resource_body_repeat1] = "resource_body_repeat1", [aux_sym_tuple_list_repeat1] = "tuple_list_repeat1", }; @@ -328,6 +350,9 @@ static const TSSymbol ts_symbol_map[] = { [anon_sym__] = anon_sym__, [anon_sym_borrow] = anon_sym_borrow, [anon_sym_own] = anon_sym_own, + [anon_sym_SLASH_SLASH_SLASH] = anon_sym_SLASH_SLASH_SLASH, + [anon_sym_SPACE] = anon_sym_SPACE, + [sym_docs] = sym_docs, [sym_comment] = sym_comment, [sym_source_file] = sym_source_file, [sym_package_decl] = sym_package_decl, @@ -362,14 +387,18 @@ static const TSSymbol ts_symbol_map[] = { [sym_record_field] = sym_record_field, [sym_flags_items] = sym_flags_items, [sym_flags_body] = sym_flags_body, + [sym_flags_case] = sym_flags_case, [sym_variant_items] = sym_variant_items, [sym_variant_body] = sym_variant_body, [sym_variant_case] = sym_variant_case, [sym_enum_items] = sym_enum_items, [sym_enum_body] = sym_enum_body, + [sym_enum_case] = sym_enum_case, [sym_resource_item] = sym_resource_item, [sym_resource_body] = sym_resource_body, [sym_resource_method] = sym_resource_method, + [sym_static_resource_method] = sym_static_resource_method, + [sym_resource_constructor] = sym_resource_constructor, [sym_ty] = sym_ty, [sym_tuple] = sym_tuple, [sym_tuple_list] = sym_tuple_list, @@ -379,9 +408,12 @@ static const TSSymbol ts_symbol_map[] = { [sym_handle] = sym_handle, [sym__borrow_handle] = sym__borrow_handle, [sym__owned_handle] = sym__owned_handle, + [sym_attribute] = sym_attribute, + [sym_doc_comment] = sym_doc_comment, [aux_sym_source_file_repeat1] = aux_sym_source_file_repeat1, [aux_sym_package_decl_repeat1] = aux_sym_package_decl_repeat1, [aux_sym_package_decl_repeat2] = aux_sym_package_decl_repeat2, + [aux_sym_package_decl_repeat3] = aux_sym_package_decl_repeat3, [aux_sym_world_body_repeat1] = aux_sym_world_body_repeat1, [aux_sym_include_names_list_repeat1] = aux_sym_include_names_list_repeat1, [aux_sym_interface_body_repeat1] = aux_sym_interface_body_repeat1, @@ -390,6 +422,7 @@ static const TSSymbol ts_symbol_map[] = { [aux_sym_record_body_repeat1] = aux_sym_record_body_repeat1, [aux_sym_flags_body_repeat1] = aux_sym_flags_body_repeat1, [aux_sym_variant_body_repeat1] = aux_sym_variant_body_repeat1, + [aux_sym_enum_body_repeat1] = aux_sym_enum_body_repeat1, [aux_sym_resource_body_repeat1] = aux_sym_resource_body_repeat1, [aux_sym_tuple_list_repeat1] = aux_sym_tuple_list_repeat1, }; @@ -623,6 +656,18 @@ static const TSSymbolMetadata ts_symbol_metadata[] = { .visible = true, .named = false, }, + [anon_sym_SLASH_SLASH_SLASH] = { + .visible = true, + .named = false, + }, + [anon_sym_SPACE] = { + .visible = true, + .named = false, + }, + [sym_docs] = { + .visible = true, + .named = true, + }, [sym_comment] = { .visible = true, .named = true, @@ -759,6 +804,10 @@ static const TSSymbolMetadata ts_symbol_metadata[] = { .visible = true, .named = true, }, + [sym_flags_case] = { + .visible = true, + .named = true, + }, [sym_variant_items] = { .visible = true, .named = true, @@ -779,6 +828,10 @@ static const TSSymbolMetadata ts_symbol_metadata[] = { .visible = true, .named = true, }, + [sym_enum_case] = { + .visible = true, + .named = true, + }, [sym_resource_item] = { .visible = true, .named = true, @@ -791,6 +844,14 @@ static const TSSymbolMetadata ts_symbol_metadata[] = { .visible = true, .named = true, }, + [sym_static_resource_method] = { + .visible = true, + .named = true, + }, + [sym_resource_constructor] = { + .visible = true, + .named = true, + }, [sym_ty] = { .visible = true, .named = true, @@ -827,6 +888,14 @@ static const TSSymbolMetadata ts_symbol_metadata[] = { .visible = false, .named = true, }, + [sym_attribute] = { + .visible = true, + .named = true, + }, + [sym_doc_comment] = { + .visible = true, + .named = true, + }, [aux_sym_source_file_repeat1] = { .visible = false, .named = false, @@ -839,6 +908,10 @@ static const TSSymbolMetadata ts_symbol_metadata[] = { .visible = false, .named = false, }, + [aux_sym_package_decl_repeat3] = { + .visible = false, + .named = false, + }, [aux_sym_world_body_repeat1] = { .visible = false, .named = false, @@ -871,6 +944,10 @@ static const TSSymbolMetadata ts_symbol_metadata[] = { .visible = false, .named = false, }, + [aux_sym_enum_body_repeat1] = { + .visible = false, + .named = false, + }, [aux_sym_resource_body_repeat1] = { .visible = false, .named = false, @@ -883,39 +960,44 @@ static const TSSymbolMetadata ts_symbol_metadata[] = { enum ts_field_identifiers { field_alias = 1, - field_body = 2, - field_enum_cases = 3, - field_export_item = 4, - field_flags_fields = 5, - field_func = 6, - field_import_item = 7, - field_include_item = 8, - field_include_names_body = 9, - field_include_names_item = 10, - field_include_names_list = 11, - field_interface_items = 12, - field_name = 13, - field_param_list = 14, - field_path = 15, - field_record_fields = 16, - field_resource_body = 17, - field_result_list = 18, - field_type = 19, - field_typedef = 20, - field_typedef_item = 21, - field_use = 22, - field_use_item = 23, - field_use_names_item = 24, - field_use_path = 25, - field_variant_cases = 26, - field_world_items = 27, + field_attributes = 2, + field_body = 3, + field_enum_cases = 4, + field_err = 5, + field_export_item = 6, + field_flags_fields = 7, + field_func = 8, + field_import_item = 9, + field_include_item = 10, + field_include_names_body = 11, + field_include_names_item = 12, + field_include_names_list = 13, + field_interface_items = 14, + field_name = 15, + field_ok = 16, + field_param_list = 17, + field_path = 18, + field_record_fields = 19, + field_resource_body = 20, + field_result_list = 21, + field_type = 22, + field_typedef = 23, + field_typedef_item = 24, + field_use = 25, + field_use_item = 26, + field_use_names_item = 27, + field_use_path = 28, + field_variant_cases = 29, + field_world_items = 30, }; static const char * const ts_field_names[] = { [0] = NULL, [field_alias] = "alias", + [field_attributes] = "attributes", [field_body] = "body", [field_enum_cases] = "enum_cases", + [field_err] = "err", [field_export_item] = "export_item", [field_flags_fields] = "flags_fields", [field_func] = "func", @@ -926,6 +1008,7 @@ static const char * const ts_field_names[] = { [field_include_names_list] = "include_names_list", [field_interface_items] = "interface_items", [field_name] = "name", + [field_ok] = "ok", [field_param_list] = "param_list", [field_path] = "path", [field_record_fields] = "record_fields", @@ -954,38 +1037,48 @@ static const TSFieldMapSlice ts_field_map_slices[PRODUCTION_ID_COUNT] = { [9] = {.index = 9, .length = 1}, [10] = {.index = 10, .length = 1}, [11] = {.index = 11, .length = 3}, - [12] = {.index = 14, .length = 1}, - [13] = {.index = 15, .length = 1}, - [14] = {.index = 16, .length = 1}, - [15] = {.index = 17, .length = 1}, - [16] = {.index = 18, .length = 2}, - [17] = {.index = 20, .length = 1}, - [18] = {.index = 21, .length = 1}, - [19] = {.index = 22, .length = 1}, - [20] = {.index = 23, .length = 1}, - [21] = {.index = 24, .length = 2}, - [22] = {.index = 26, .length = 2}, - [23] = {.index = 28, .length = 1}, - [24] = {.index = 29, .length = 1}, - [25] = {.index = 30, .length = 1}, - [26] = {.index = 31, .length = 1}, - [27] = {.index = 32, .length = 2}, - [28] = {.index = 34, .length = 2}, - [29] = {.index = 36, .length = 1}, - [30] = {.index = 37, .length = 2}, - [31] = {.index = 39, .length = 2}, - [32] = {.index = 41, .length = 2}, - [33] = {.index = 43, .length = 2}, - [34] = {.index = 45, .length = 2}, - [35] = {.index = 47, .length = 2}, - [36] = {.index = 49, .length = 1}, - [37] = {.index = 50, .length = 2}, - [38] = {.index = 52, .length = 1}, - [39] = {.index = 53, .length = 2}, - [40] = {.index = 55, .length = 3}, - [41] = {.index = 58, .length = 3}, - [42] = {.index = 61, .length = 3}, - [43] = {.index = 64, .length = 3}, + [12] = {.index = 14, .length = 3}, + [13] = {.index = 17, .length = 1}, + [14] = {.index = 18, .length = 1}, + [15] = {.index = 19, .length = 1}, + [16] = {.index = 20, .length = 1}, + [17] = {.index = 21, .length = 1}, + [18] = {.index = 22, .length = 2}, + [19] = {.index = 24, .length = 2}, + [20] = {.index = 26, .length = 1}, + [21] = {.index = 27, .length = 3}, + [22] = {.index = 30, .length = 1}, + [23] = {.index = 31, .length = 1}, + [24] = {.index = 32, .length = 1}, + [25] = {.index = 33, .length = 2}, + [26] = {.index = 35, .length = 2}, + [27] = {.index = 37, .length = 1}, + [28] = {.index = 38, .length = 1}, + [29] = {.index = 39, .length = 1}, + [30] = {.index = 40, .length = 2}, + [31] = {.index = 42, .length = 1}, + [32] = {.index = 43, .length = 2}, + [33] = {.index = 45, .length = 2}, + [34] = {.index = 47, .length = 1}, + [35] = {.index = 48, .length = 2}, + [36] = {.index = 50, .length = 2}, + [37] = {.index = 52, .length = 2}, + [38] = {.index = 54, .length = 2}, + [39] = {.index = 56, .length = 2}, + [40] = {.index = 58, .length = 2}, + [41] = {.index = 60, .length = 3}, + [42] = {.index = 63, .length = 1}, + [43] = {.index = 64, .length = 2}, + [44] = {.index = 66, .length = 1}, + [45] = {.index = 67, .length = 2}, + [46] = {.index = 69, .length = 1}, + [47] = {.index = 70, .length = 3}, + [48] = {.index = 73, .length = 3}, + [49] = {.index = 76, .length = 3}, + [50] = {.index = 79, .length = 3}, + [51] = {.index = 82, .length = 3}, + [52] = {.index = 85, .length = 1}, + [53] = {.index = 86, .length = 2}, }; static const TSFieldMapEntry ts_field_map_entries[] = { @@ -1011,94 +1104,125 @@ static const TSFieldMapEntry ts_field_map_entries[] = { [10] = {field_use, 0}, [11] = + {field_attributes, 0}, + {field_body, 3}, + {field_name, 2}, + [14] = {field_alias, 2}, {field_alias, 3}, {field_path, 1}, - [14] = + [17] = {field_name, 1}, - [15] = + [18] = {field_world_items, 1}, - [16] = + [19] = {field_interface_items, 1}, - [17] = + [20] = + {field_attributes, 0}, + [21] = {field_use_path, 1}, - [18] = + [22] = {field_name, 1}, {field_resource_body, 2}, - [20] = + [24] = + {field_attributes, 0}, + {field_name, 2}, + [26] = {field_name, 0}, - [21] = + [27] = + {field_attributes, 0}, + {field_name, 2}, + {field_resource_body, 3}, + [30] = {field_param_list, 1}, - [22] = + [31] = {field_use_names_item, 0}, - [23] = + [32] = {field_include_names_item, 0}, - [24] = + [33] = {field_include_names_body, 3}, {field_use_path, 1}, - [26] = + [35] = {field_alias, 1}, {field_type, 3}, - [28] = + [37] = {field_record_fields, 1}, - [29] = + [38] = {field_flags_fields, 1}, - [30] = + [39] = {field_variant_cases, 1}, - [31] = + [40] = + {field_attributes, 0}, + {field_name, 1}, + [42] = {field_enum_cases, 1}, - [32] = + [43] = {field_param_list, 1}, {field_result_list, 2}, - [34] = + [45] = {field_use_names_item, 0}, {field_use_names_item, 1, .inherited = true}, - [36] = + [47] = {field_include_names_list, 1}, - [37] = + [48] = {field_include_names_item, 0}, {field_include_names_item, 1, .inherited = true}, - [39] = + [50] = {field_name, 0}, {field_type, 2}, - [41] = + [52] = {field_record_fields, 1}, {field_record_fields, 2}, - [43] = + [54] = {field_flags_fields, 1}, {field_flags_fields, 2}, - [45] = + [56] = {field_variant_cases, 1}, {field_variant_cases, 2}, - [47] = + [58] = {field_enum_cases, 1}, {field_enum_cases, 2}, - [49] = + [60] = + {field_alias, 2}, + {field_attributes, 0}, + {field_type, 4}, + [63] = {field_use_names_item, 1}, - [50] = + [64] = {field_use_names_item, 0, .inherited = true}, {field_use_names_item, 1, .inherited = true}, - [52] = + [66] = {field_include_names_item, 1}, - [53] = + [67] = {field_include_names_item, 0, .inherited = true}, {field_include_names_item, 1, .inherited = true}, - [55] = + [69] = + {field_ok, 2}, + [70] = {field_record_fields, 1}, {field_record_fields, 2}, {field_record_fields, 3}, - [58] = + [73] = + {field_attributes, 0}, + {field_name, 1}, + {field_type, 3}, + [76] = {field_flags_fields, 1}, {field_flags_fields, 2}, {field_flags_fields, 3}, - [61] = + [79] = {field_variant_cases, 1}, {field_variant_cases, 2}, {field_variant_cases, 3}, - [64] = + [82] = {field_enum_cases, 1}, {field_enum_cases, 2}, {field_enum_cases, 3}, + [85] = + {field_err, 4}, + [86] = + {field_err, 4}, + {field_ok, 2}, }; static const TSSymbol ts_alias_sequences[PRODUCTION_ID_COUNT][MAX_ALIAS_SEQUENCE_LENGTH] = { @@ -1122,28 +1246,28 @@ static const TSStateId ts_primary_state_ids[STATE_COUNT] = { [9] = 9, [10] = 10, [11] = 11, - [12] = 7, - [13] = 13, + [12] = 12, + [13] = 12, [14] = 14, [15] = 15, [16] = 16, [17] = 17, [18] = 18, - [19] = 19, + [19] = 8, [20] = 20, [21] = 21, [22] = 22, [23] = 23, [24] = 24, - [25] = 23, + [25] = 25, [26] = 26, [27] = 27, [28] = 28, [29] = 29, [30] = 30, [31] = 31, - [32] = 32, - [33] = 33, + [32] = 30, + [33] = 28, [34] = 34, [35] = 35, [36] = 36, @@ -1164,7 +1288,7 @@ static const TSStateId ts_primary_state_ids[STATE_COUNT] = { [51] = 51, [52] = 52, [53] = 53, - [54] = 54, + [54] = 44, [55] = 55, [56] = 56, [57] = 57, @@ -1175,82 +1299,82 @@ static const TSStateId ts_primary_state_ids[STATE_COUNT] = { [62] = 62, [63] = 63, [64] = 64, - [65] = 64, - [66] = 51, - [67] = 57, - [68] = 39, + [65] = 65, + [66] = 66, + [67] = 67, + [68] = 68, [69] = 69, - [70] = 38, - [71] = 27, - [72] = 62, - [73] = 37, - [74] = 36, - [75] = 35, - [76] = 63, - [77] = 30, - [78] = 43, - [79] = 31, - [80] = 32, - [81] = 33, - [82] = 34, - [83] = 26, - [84] = 58, - [85] = 50, - [86] = 48, - [87] = 47, - [88] = 46, - [89] = 40, - [90] = 45, + [70] = 70, + [71] = 71, + [72] = 72, + [73] = 73, + [74] = 74, + [75] = 75, + [76] = 53, + [77] = 77, + [78] = 78, + [79] = 79, + [80] = 80, + [81] = 81, + [82] = 82, + [83] = 83, + [84] = 84, + [85] = 85, + [86] = 86, + [87] = 87, + [88] = 88, + [89] = 89, + [90] = 34, [91] = 91, - [92] = 92, - [93] = 93, - [94] = 49, - [95] = 44, - [96] = 96, - [97] = 97, - [98] = 98, - [99] = 99, - [100] = 100, - [101] = 101, - [102] = 102, - [103] = 103, - [104] = 104, - [105] = 105, - [106] = 103, + [92] = 70, + [93] = 38, + [94] = 43, + [95] = 45, + [96] = 47, + [97] = 48, + [98] = 50, + [99] = 52, + [100] = 75, + [101] = 77, + [102] = 78, + [103] = 79, + [104] = 80, + [105] = 81, + [106] = 64, [107] = 107, - [108] = 104, + [108] = 108, [109] = 109, - [110] = 110, + [110] = 66, [111] = 111, - [112] = 112, + [112] = 42, [113] = 113, - [114] = 114, - [115] = 115, - [116] = 116, - [117] = 117, - [118] = 118, - [119] = 119, - [120] = 120, - [121] = 121, - [122] = 122, - [123] = 123, - [124] = 124, - [125] = 125, - [126] = 126, + [114] = 35, + [115] = 57, + [116] = 55, + [117] = 49, + [118] = 46, + [119] = 37, + [120] = 41, + [121] = 63, + [122] = 69, + [123] = 88, + [124] = 87, + [125] = 71, + [126] = 67, [127] = 127, [128] = 128, - [129] = 129, + [129] = 40, [130] = 130, - [131] = 131, - [132] = 132, + [131] = 39, + [132] = 82, [133] = 133, - [134] = 134, + [134] = 51, [135] = 135, - [136] = 136, + [136] = 109, [137] = 137, [138] = 138, - [139] = 139, - [140] = 140, + [139] = 113, + [140] = 107, [141] = 141, [142] = 142, [143] = 143, @@ -1261,31 +1385,31 @@ static const TSStateId ts_primary_state_ids[STATE_COUNT] = { [148] = 148, [149] = 149, [150] = 150, - [151] = 151, + [151] = 141, [152] = 152, [153] = 153, - [154] = 154, - [155] = 155, - [156] = 156, - [157] = 140, - [158] = 158, + [154] = 145, + [155] = 152, + [156] = 150, + [157] = 142, + [158] = 146, [159] = 159, [160] = 160, [161] = 161, - [162] = 160, - [163] = 161, - [164] = 153, - [165] = 159, - [166] = 147, - [167] = 155, - [168] = 158, - [169] = 156, - [170] = 170, + [162] = 143, + [163] = 163, + [164] = 144, + [165] = 160, + [166] = 161, + [167] = 163, + [168] = 168, + [169] = 168, + [170] = 34, [171] = 171, - [172] = 154, + [172] = 172, [173] = 173, - [174] = 143, - [175] = 69, + [174] = 174, + [175] = 175, [176] = 176, [177] = 177, [178] = 178, @@ -1305,15 +1429,15 @@ static const TSStateId ts_primary_state_ids[STATE_COUNT] = { [192] = 192, [193] = 193, [194] = 194, - [195] = 149, + [195] = 195, [196] = 196, - [197] = 171, + [197] = 197, [198] = 198, [199] = 199, [200] = 200, - [201] = 145, - [202] = 170, - [203] = 151, + [201] = 201, + [202] = 202, + [203] = 34, [204] = 204, [205] = 205, [206] = 206, @@ -1325,46 +1449,46 @@ static const TSStateId ts_primary_state_ids[STATE_COUNT] = { [212] = 212, [213] = 213, [214] = 214, - [215] = 213, + [215] = 215, [216] = 216, [217] = 217, [218] = 218, - [219] = 219, - [220] = 220, - [221] = 211, - [222] = 212, + [219] = 108, + [220] = 111, + [221] = 221, + [222] = 222, [223] = 223, [224] = 224, - [225] = 216, - [226] = 208, + [225] = 225, + [226] = 226, [227] = 227, [228] = 228, [229] = 229, - [230] = 229, + [230] = 230, [231] = 231, [232] = 232, [233] = 233, [234] = 234, [235] = 235, [236] = 236, - [237] = 206, + [237] = 237, [238] = 238, - [239] = 236, - [240] = 240, - [241] = 241, - [242] = 240, - [243] = 243, + [239] = 239, + [240] = 239, + [241] = 237, + [242] = 235, + [243] = 233, [244] = 244, - [245] = 241, + [245] = 245, [246] = 246, [247] = 247, [248] = 248, - [249] = 249, - [250] = 250, - [251] = 251, + [249] = 113, + [250] = 109, + [251] = 107, [252] = 252, [253] = 253, - [254] = 254, + [254] = 232, [255] = 255, [256] = 256, [257] = 257, @@ -1375,20 +1499,20 @@ static const TSStateId ts_primary_state_ids[STATE_COUNT] = { [262] = 262, [263] = 263, [264] = 264, - [265] = 265, + [265] = 234, [266] = 266, - [267] = 267, + [267] = 244, [268] = 268, [269] = 269, [270] = 270, - [271] = 271, + [271] = 246, [272] = 272, [273] = 273, [274] = 274, [275] = 275, - [276] = 276, + [276] = 245, [277] = 277, - [278] = 278, + [278] = 247, [279] = 279, [280] = 280, [281] = 281, @@ -1403,11 +1527,11 @@ static const TSStateId ts_primary_state_ids[STATE_COUNT] = { [290] = 290, [291] = 291, [292] = 292, - [293] = 293, - [294] = 294, + [293] = 289, + [294] = 289, [295] = 295, [296] = 296, - [297] = 272, + [297] = 297, [298] = 298, [299] = 299, [300] = 300, @@ -1427,28 +1551,156 @@ static const TSStateId ts_primary_state_ids[STATE_COUNT] = { [314] = 314, [315] = 315, [316] = 316, - [317] = 308, + [317] = 317, [318] = 318, [319] = 319, [320] = 320, - [321] = 321, - [322] = 292, - [323] = 307, + [321] = 285, + [322] = 289, + [323] = 323, [324] = 324, [325] = 325, [326] = 326, - [327] = 276, - [328] = 275, - [329] = 274, - [330] = 262, + [327] = 113, + [328] = 109, + [329] = 107, + [330] = 330, [331] = 331, [332] = 332, - [333] = 300, + [333] = 333, [334] = 334, - [335] = 277, - [336] = 303, - [337] = 267, - [338] = 332, + [335] = 335, + [336] = 336, + [337] = 337, + [338] = 338, + [339] = 339, + [340] = 340, + [341] = 341, + [342] = 309, + [343] = 343, + [344] = 344, + [345] = 345, + [346] = 315, + [347] = 319, + [348] = 316, + [349] = 349, + [350] = 320, + [351] = 317, + [352] = 352, + [353] = 353, + [354] = 284, + [355] = 355, + [356] = 356, + [357] = 357, + [358] = 358, + [359] = 359, + [360] = 360, + [361] = 361, + [362] = 362, + [363] = 363, + [364] = 364, + [365] = 365, + [366] = 366, + [367] = 367, + [368] = 368, + [369] = 369, + [370] = 370, + [371] = 371, + [372] = 372, + [373] = 373, + [374] = 374, + [375] = 375, + [376] = 376, + [377] = 377, + [378] = 378, + [379] = 379, + [380] = 380, + [381] = 381, + [382] = 382, + [383] = 383, + [384] = 384, + [385] = 385, + [386] = 386, + [387] = 387, + [388] = 388, + [389] = 389, + [390] = 390, + [391] = 391, + [392] = 392, + [393] = 393, + [394] = 394, + [395] = 395, + [396] = 396, + [397] = 397, + [398] = 398, + [399] = 399, + [400] = 400, + [401] = 401, + [402] = 402, + [403] = 403, + [404] = 404, + [405] = 405, + [406] = 406, + [407] = 380, + [408] = 408, + [409] = 409, + [410] = 410, + [411] = 411, + [412] = 365, + [413] = 413, + [414] = 414, + [415] = 415, + [416] = 416, + [417] = 406, + [418] = 418, + [419] = 419, + [420] = 420, + [421] = 421, + [422] = 395, + [423] = 420, + [424] = 424, + [425] = 425, + [426] = 426, + [427] = 427, + [428] = 428, + [429] = 429, + [430] = 430, + [431] = 431, + [432] = 432, + [433] = 429, + [434] = 434, + [435] = 435, + [436] = 436, + [437] = 437, + [438] = 431, + [439] = 402, + [440] = 440, + [441] = 441, + [442] = 442, + [443] = 443, + [444] = 444, + [445] = 406, + [446] = 446, + [447] = 406, + [448] = 384, + [449] = 383, + [450] = 382, + [451] = 381, + [452] = 369, + [453] = 368, + [454] = 367, + [455] = 366, + [456] = 456, + [457] = 457, + [458] = 436, + [459] = 371, + [460] = 396, + [461] = 461, + [462] = 385, + [463] = 370, + [464] = 361, + [465] = 375, + [466] = 466, }; static bool ts_lex(TSLexer *lexer, TSStateId state) { @@ -1456,1682 +1708,1820 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { eof = lexer->eof(lexer); switch (state) { case 0: - if (eof) ADVANCE(146); + if (eof) ADVANCE(162); ADVANCE_MAP( - '(', 269, - ')', 270, - ',', 266, - '-', 36, - '.', 272, - '/', 149, - ':', 148, - ';', 151, - '<', 321, - '=', 275, - '>', 322, - '@', 150, + '(', 285, + ')', 286, + ',', 282, + '-', 40, + '.', 288, + '/', 165, + ':', 164, + ';', 167, + '<', 337, + '=', 291, + '>', 338, + '@', 166, ); - if (lookahead == '\\') SKIP(145); - if (lookahead == '_') ADVANCE(329); - if (lookahead == 'a') ADVANCE(118); - if (lookahead == 'b') ADVANCE(93); - if (lookahead == 'c') ADVANCE(71); - if (lookahead == 'e') ADVANCE(86); - if (lookahead == 'f') ADVANCE(28); - if (lookahead == 'i') ADVANCE(85); - if (lookahead == 'l') ADVANCE(72); - if (lookahead == 'o') ADVANCE(102); - if (lookahead == 'p') ADVANCE(37); - if (lookahead == 'r') ADVANCE(57); - if (lookahead == 's') ADVANCE(22); - if (lookahead == 't') ADVANCE(134); - if (lookahead == 'u') ADVANCE(23); - if (lookahead == 'v') ADVANCE(38); - if (lookahead == 'w') ADVANCE(73); - if (lookahead == '{') ADVANCE(258); - if (lookahead == '}') ADVANCE(259); + if (lookahead == '\\') SKIP(158); + if (lookahead == '_') ADVANCE(345); + if (lookahead == 'a') ADVANCE(128); + if (lookahead == 'b') ADVANCE(101); + if (lookahead == 'c') ADVANCE(78); + if (lookahead == 'e') ADVANCE(94); + if (lookahead == 'f') ADVANCE(32); + if (lookahead == 'i') ADVANCE(93); + if (lookahead == 'l') ADVANCE(79); + if (lookahead == 'o') ADVANCE(112); + if (lookahead == 'p') ADVANCE(41); + if (lookahead == 'r') ADVANCE(63); + if (lookahead == 's') ADVANCE(26); + if (lookahead == 't') ADVANCE(145); + if (lookahead == 'u') ADVANCE(27); + if (lookahead == 'v') ADVANCE(42); + if (lookahead == 'w') ADVANCE(80); + if (lookahead == '{') ADVANCE(274); + if (lookahead == '}') ADVANCE(275); if (('\t' <= lookahead && lookahead <= '\r') || lookahead == ' ') SKIP(0); - if (('0' <= lookahead && lookahead <= '9')) ADVANCE(20); + if (('0' <= lookahead && lookahead <= '9')) ADVANCE(23); END_STATE(); case 1: - if (lookahead == '\n') SKIP(12); + if (lookahead == '\n') SKIP(13); END_STATE(); case 2: - if (lookahead == '\n') SKIP(12); + if (lookahead == '\n') SKIP(13); if (lookahead == '\r') SKIP(1); END_STATE(); case 3: - if (lookahead == '\n') SKIP(14); + if (lookahead == '\n') SKIP(15); END_STATE(); case 4: - if (lookahead == '\n') SKIP(14); + if (lookahead == '\n') SKIP(15); if (lookahead == '\r') SKIP(3); END_STATE(); case 5: - if (lookahead == '\n') SKIP(15); + if (lookahead == '\n') SKIP(16); END_STATE(); case 6: - if (lookahead == '\n') SKIP(15); + if (lookahead == '\n') SKIP(16); if (lookahead == '\r') SKIP(5); END_STATE(); case 7: - if (lookahead == '\n') SKIP(16); + if (lookahead == '\n') SKIP(17); END_STATE(); case 8: - if (lookahead == '\n') SKIP(16); + if (lookahead == '\n') SKIP(17); if (lookahead == '\r') SKIP(7); END_STATE(); case 9: - if (lookahead == '\n') SKIP(13); + if (lookahead == '\n') SKIP(14); END_STATE(); case 10: - if (lookahead == '\n') SKIP(13); + if (lookahead == '\n') SKIP(14); if (lookahead == '\r') SKIP(9); END_STATE(); case 11: - if (lookahead == '\r') ADVANCE(337); - if (lookahead == '\\') ADVANCE(335); - if (lookahead != 0) ADVANCE(336); + if (lookahead == '\n') SKIP(18); END_STATE(); case 12: - if (lookahead == '%') ADVANCE(141); - if (lookahead == '(') ADVANCE(269); - if (lookahead == '/') ADVANCE(17); - if (lookahead == '>') ADVANCE(322); - if (lookahead == '\\') SKIP(2); - if (lookahead == '_') ADVANCE(329); - if (lookahead == 'b') ADVANCE(210); - if (lookahead == 'c') ADVANCE(192); - if (lookahead == 'f') ADVANCE(161); - if (lookahead == 'l') ADVANCE(193); - if (lookahead == 'o') ADVANCE(219); - if (lookahead == 'r') ADVANCE(187); - if (lookahead == 's') ADVANCE(155); - if (lookahead == 't') ADVANCE(244); - if (lookahead == 'u') ADVANCE(156); - if (('\t' <= lookahead && lookahead <= '\r') || - lookahead == ' ') SKIP(12); - if (('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); - if (('A' <= lookahead && lookahead <= 'Z')) ADVANCE(252); + if (lookahead == '\n') SKIP(18); + if (lookahead == '\r') SKIP(11); END_STATE(); case 13: - if (lookahead == '%') ADVANCE(141); - if (lookahead == ')') ADVANCE(270); - if (lookahead == '/') ADVANCE(17); - if (lookahead == '\\') SKIP(10); - if (lookahead == '}') ADVANCE(259); + if (lookahead == '%') ADVANCE(153); + if (lookahead == '(') ADVANCE(285); + if (lookahead == '/') ADVANCE(19); + if (lookahead == '>') ADVANCE(338); + if (lookahead == '\\') SKIP(2); + if (lookahead == '_') ADVANCE(345); + if (lookahead == 'b') ADVANCE(226); + if (lookahead == 'c') ADVANCE(208); + if (lookahead == 'f') ADVANCE(177); + if (lookahead == 'l') ADVANCE(209); + if (lookahead == 'o') ADVANCE(235); + if (lookahead == 'r') ADVANCE(203); + if (lookahead == 's') ADVANCE(171); + if (lookahead == 't') ADVANCE(260); + if (lookahead == 'u') ADVANCE(172); if (('\t' <= lookahead && lookahead <= '\r') || lookahead == ' ') SKIP(13); - if (('A' <= lookahead && lookahead <= 'Z')) ADVANCE(252); - if (('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); + if (('a' <= lookahead && lookahead <= 'z')) ADVANCE(269); + if (('A' <= lookahead && lookahead <= 'Z')) ADVANCE(268); END_STATE(); case 14: - if (lookahead == '%') ADVANCE(141); - if (lookahead == '/') ADVANCE(17); - if (lookahead == ';') ADVANCE(151); - if (lookahead == '\\') SKIP(4); - if (lookahead == 'e') ADVANCE(205); - if (lookahead == 'f') ADVANCE(199); - if (lookahead == 'r') ADVANCE(182); - if (lookahead == 't') ADVANCE(251); - if (lookahead == 'u') ADVANCE(234); - if (lookahead == 'v') ADVANCE(173); - if (lookahead == '{') ADVANCE(258); - if (lookahead == '}') ADVANCE(259); + if (lookahead == '%') ADVANCE(153); + if (lookahead == ')') ADVANCE(286); + if (lookahead == '/') ADVANCE(20); + if (lookahead == '\\') SKIP(10); + if (lookahead == '}') ADVANCE(275); if (('\t' <= lookahead && lookahead <= '\r') || lookahead == ' ') SKIP(14); - if (('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); - if (('A' <= lookahead && lookahead <= 'Z')) ADVANCE(252); + if (('A' <= lookahead && lookahead <= 'Z')) ADVANCE(268); + if (('a' <= lookahead && lookahead <= 'z')) ADVANCE(269); END_STATE(); case 15: - if (lookahead == '%') ADVANCE(141); - if (lookahead == '/') ADVANCE(17); - if (lookahead == '\\') SKIP(6); - if (lookahead == 'c') ADVANCE(217); - if (lookahead == '}') ADVANCE(259); + if (lookahead == '%') ADVANCE(153); + if (lookahead == '/') ADVANCE(20); + if (lookahead == ';') ADVANCE(167); + if (lookahead == '\\') SKIP(4); + if (lookahead == 'e') ADVANCE(221); + if (lookahead == 'f') ADVANCE(215); + if (lookahead == 'r') ADVANCE(198); + if (lookahead == 't') ADVANCE(267); + if (lookahead == 'u') ADVANCE(250); + if (lookahead == 'v') ADVANCE(189); + if (lookahead == '{') ADVANCE(274); + if (lookahead == '}') ADVANCE(275); if (('\t' <= lookahead && lookahead <= '\r') || lookahead == ' ') SKIP(15); - if (('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); - if (('A' <= lookahead && lookahead <= 'Z')) ADVANCE(252); + if (('a' <= lookahead && lookahead <= 'z')) ADVANCE(269); + if (('A' <= lookahead && lookahead <= 'Z')) ADVANCE(268); END_STATE(); case 16: - if (lookahead == '%') ADVANCE(141); - if (lookahead == '/') ADVANCE(17); - if (lookahead == '\\') SKIP(8); - if (lookahead == 'f') ADVANCE(249); - if (lookahead == 'i') ADVANCE(208); + if (lookahead == '%') ADVANCE(153); + if (lookahead == '/') ADVANCE(20); + if (lookahead == '\\') SKIP(6); + if (lookahead == 'c') ADVANCE(233); + if (lookahead == '}') ADVANCE(275); if (('\t' <= lookahead && lookahead <= '\r') || lookahead == ' ') SKIP(16); - if (('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); - if (('A' <= lookahead && lookahead <= 'Z')) ADVANCE(252); + if (('a' <= lookahead && lookahead <= 'z')) ADVANCE(269); + if (('A' <= lookahead && lookahead <= 'Z')) ADVANCE(268); END_STATE(); case 17: - if (lookahead == '*') ADVANCE(19); - if (lookahead == '/') ADVANCE(336); + if (lookahead == '%') ADVANCE(153); + if (lookahead == '/') ADVANCE(20); + if (lookahead == '\\') SKIP(8); + if (lookahead == 'e') ADVANCE(221); + if (lookahead == 'f') ADVANCE(215); + if (lookahead == 'r') ADVANCE(198); + if (lookahead == 't') ADVANCE(267); + if (lookahead == 'v') ADVANCE(189); + if (('\t' <= lookahead && lookahead <= '\r') || + lookahead == ' ') SKIP(17); + if (('a' <= lookahead && lookahead <= 'z')) ADVANCE(269); + if (('A' <= lookahead && lookahead <= 'Z')) ADVANCE(268); END_STATE(); case 18: - if (lookahead == '*') ADVANCE(18); - if (lookahead == '/') ADVANCE(334); - if (lookahead != 0) ADVANCE(19); + if (lookahead == '%') ADVANCE(153); + if (lookahead == '/') ADVANCE(19); + if (lookahead == '\\') SKIP(12); + if (lookahead == 'f') ADVANCE(265); + if (lookahead == 'i') ADVANCE(224); + if (('\t' <= lookahead && lookahead <= '\r') || + lookahead == ' ') SKIP(18); + if (('a' <= lookahead && lookahead <= 'z')) ADVANCE(269); + if (('A' <= lookahead && lookahead <= 'Z')) ADVANCE(268); END_STATE(); case 19: - if (lookahead == '*') ADVANCE(18); - if (lookahead != 0) ADVANCE(19); + if (lookahead == '*') ADVANCE(22); + if (lookahead == '/') ADVANCE(156); END_STATE(); case 20: - if (lookahead == '.') ADVANCE(140); - if (('0' <= lookahead && lookahead <= '9')) ADVANCE(20); + if (lookahead == '*') ADVANCE(22); + if (lookahead == '/') ADVANCE(25); END_STATE(); case 21: - if (lookahead == '.') ADVANCE(139); - if (('0' <= lookahead && lookahead <= '9')) ADVANCE(21); + if (lookahead == '*') ADVANCE(21); + if (lookahead == '/') ADVANCE(360); + if (lookahead != 0) ADVANCE(22); END_STATE(); case 22: - if (lookahead == '1') ADVANCE(34); - if (lookahead == '3') ADVANCE(25); - if (lookahead == '6') ADVANCE(31); - if (lookahead == '8') ADVANCE(297); - if (lookahead == 't') ADVANCE(44); + if (lookahead == '*') ADVANCE(21); + if (lookahead != 0) ADVANCE(22); END_STATE(); case 23: - if (lookahead == '1') ADVANCE(35); - if (lookahead == '3') ADVANCE(26); - if (lookahead == '6') ADVANCE(32); - if (lookahead == '8') ADVANCE(289); - if (lookahead == 's') ADVANCE(58); + if (lookahead == '.') ADVANCE(152); + if (('0' <= lookahead && lookahead <= '9')) ADVANCE(23); END_STATE(); case 24: - if (lookahead == '2') ADVANCE(305); + if (lookahead == '.') ADVANCE(151); + if (('0' <= lookahead && lookahead <= '9')) ADVANCE(24); END_STATE(); case 25: - if (lookahead == '2') ADVANCE(301); + if (lookahead == '/') ADVANCE(350); + if (lookahead != 0 && + lookahead != '\n') ADVANCE(361); END_STATE(); case 26: - if (lookahead == '2') ADVANCE(293); + if (lookahead == '1') ADVANCE(38); + if (lookahead == '3') ADVANCE(29); + if (lookahead == '6') ADVANCE(35); + if (lookahead == '8') ADVANCE(313); + if (lookahead == 't') ADVANCE(49); END_STATE(); case 27: - if (lookahead == '2') ADVANCE(309); + if (lookahead == '1') ADVANCE(39); + if (lookahead == '3') ADVANCE(30); + if (lookahead == '6') ADVANCE(36); + if (lookahead == '8') ADVANCE(305); + if (lookahead == 's') ADVANCE(64); END_STATE(); case 28: - if (lookahead == '3') ADVANCE(24); - if (lookahead == '6') ADVANCE(30); - if (lookahead == 'l') ADVANCE(39); - if (lookahead == 'u') ADVANCE(89); + if (lookahead == '2') ADVANCE(321); END_STATE(); case 29: - if (lookahead == '3') ADVANCE(27); - if (lookahead == '6') ADVANCE(33); + if (lookahead == '2') ADVANCE(317); END_STATE(); case 30: - if (lookahead == '4') ADVANCE(307); + if (lookahead == '2') ADVANCE(309); END_STATE(); case 31: - if (lookahead == '4') ADVANCE(303); + if (lookahead == '2') ADVANCE(325); END_STATE(); case 32: - if (lookahead == '4') ADVANCE(295); + if (lookahead == '3') ADVANCE(28); + if (lookahead == '6') ADVANCE(34); + if (lookahead == 'l') ADVANCE(44); + if (lookahead == 'u') ADVANCE(97); END_STATE(); case 33: - if (lookahead == '4') ADVANCE(311); + if (lookahead == '3') ADVANCE(31); + if (lookahead == '6') ADVANCE(37); END_STATE(); case 34: - if (lookahead == '6') ADVANCE(299); + if (lookahead == '4') ADVANCE(323); END_STATE(); case 35: - if (lookahead == '6') ADVANCE(291); + if (lookahead == '4') ADVANCE(319); END_STATE(); case 36: - if (lookahead == '>') ADVANCE(271); + if (lookahead == '4') ADVANCE(311); END_STATE(); case 37: - if (lookahead == 'a') ADVANCE(46); + if (lookahead == '4') ADVANCE(327); END_STATE(); case 38: - if (lookahead == 'a') ADVANCE(112); + if (lookahead == '6') ADVANCE(315); END_STATE(); case 39: - if (lookahead == 'a') ADVANCE(68); - if (lookahead == 'o') ADVANCE(42); + if (lookahead == '6') ADVANCE(307); END_STATE(); case 40: - if (lookahead == 'a') ADVANCE(69); + if (lookahead == '>') ADVANCE(287); END_STATE(); case 41: - if (lookahead == 'a') ADVANCE(107); + if (lookahead == 'a') ADVANCE(51); END_STATE(); case 42: - if (lookahead == 'a') ADVANCE(124); + if (lookahead == 'a') ADVANCE(122); END_STATE(); case 43: - if (lookahead == 'a') ADVANCE(91); + if (lookahead == 'a') ADVANCE(75); END_STATE(); case 44: - if (lookahead == 'a') ADVANCE(130); - if (lookahead == 'r') ADVANCE(76); + if (lookahead == 'a') ADVANCE(75); + if (lookahead == 'o') ADVANCE(47); END_STATE(); case 45: - if (lookahead == 'a') ADVANCE(51); + if (lookahead == 'a') ADVANCE(76); END_STATE(); case 46: - if (lookahead == 'c') ADVANCE(78); + if (lookahead == 'a') ADVANCE(117); END_STATE(); case 47: - if (lookahead == 'c') ADVANCE(267); + if (lookahead == 'a') ADVANCE(135); END_STATE(); case 48: - if (lookahead == 'c') ADVANCE(286); + if (lookahead == 'a') ADVANCE(99); END_STATE(); case 49: - if (lookahead == 'c') ADVANCE(81); - if (lookahead == 't') ADVANCE(65); + if (lookahead == 'a') ADVANCE(141); + if (lookahead == 'r') ADVANCE(83); END_STATE(); case 50: - if (lookahead == 'c') ADVANCE(63); + if (lookahead == 'a') ADVANCE(56); END_STATE(); case 51: - if (lookahead == 'c') ADVANCE(64); + if (lookahead == 'c') ADVANCE(85); END_STATE(); case 52: - if (lookahead == 'c') ADVANCE(132); + if (lookahead == 'c') ADVANCE(283); END_STATE(); case 53: - if (lookahead == 'c') ADVANCE(99); - if (lookahead == 's') ADVANCE(96); + if (lookahead == 'c') ADVANCE(302); END_STATE(); case 54: - if (lookahead == 'd') ADVANCE(257); + if (lookahead == 'c') ADVANCE(88); + if (lookahead == 't') ADVANCE(72); END_STATE(); case 55: - if (lookahead == 'd') ADVANCE(276); + if (lookahead == 'c') ADVANCE(69); END_STATE(); case 56: - if (lookahead == 'd') ADVANCE(61); + if (lookahead == 'c') ADVANCE(70); END_STATE(); case 57: - if (lookahead == 'e') ADVANCE(53); + if (lookahead == 'c') ADVANCE(143); END_STATE(); case 58: - if (lookahead == 'e') ADVANCE(152); + if (lookahead == 'c') ADVANCE(109); + if (lookahead == 's') ADVANCE(106); END_STATE(); case 59: - if (lookahead == 'e') ADVANCE(273); + if (lookahead == 'c') ADVANCE(109); + if (lookahead == 's') ADVANCE(105); END_STATE(); case 60: - if (lookahead == 'e') ADVANCE(319); + if (lookahead == 'd') ADVANCE(273); END_STATE(); case 61: - if (lookahead == 'e') ADVANCE(264); + if (lookahead == 'd') ADVANCE(292); END_STATE(); case 62: - if (lookahead == 'e') ADVANCE(147); + if (lookahead == 'd') ADVANCE(67); END_STATE(); case 63: - if (lookahead == 'e') ADVANCE(284); + if (lookahead == 'e') ADVANCE(58); END_STATE(); case 64: - if (lookahead == 'e') ADVANCE(262); + if (lookahead == 'e') ADVANCE(168); END_STATE(); case 65: - if (lookahead == 'e') ADVANCE(108); + if (lookahead == 'e') ADVANCE(289); END_STATE(); case 66: - if (lookahead == 'f') ADVANCE(45); + if (lookahead == 'e') ADVANCE(335); END_STATE(); case 67: - if (lookahead == 'g') ADVANCE(317); + if (lookahead == 'e') ADVANCE(280); END_STATE(); case 68: - if (lookahead == 'g') ADVANCE(119); + if (lookahead == 'e') ADVANCE(163); END_STATE(); case 69: - if (lookahead == 'g') ADVANCE(62); + if (lookahead == 'e') ADVANCE(300); END_STATE(); case 70: - if (lookahead == 'h') ADVANCE(265); + if (lookahead == 'e') ADVANCE(278); END_STATE(); case 71: - if (lookahead == 'h') ADVANCE(41); - if (lookahead == 'o') ADVANCE(92); + if (lookahead == 'e') ADVANCE(59); END_STATE(); case 72: - if (lookahead == 'i') ADVANCE(120); + if (lookahead == 'e') ADVANCE(118); END_STATE(); case 73: - if (lookahead == 'i') ADVANCE(122); - if (lookahead == 'o') ADVANCE(115); + if (lookahead == 'f') ADVANCE(50); END_STATE(); case 74: - if (lookahead == 'i') ADVANCE(48); + if (lookahead == 'g') ADVANCE(333); END_STATE(); case 75: - if (lookahead == 'i') ADVANCE(97); + if (lookahead == 'g') ADVANCE(129); END_STATE(); case 76: - if (lookahead == 'i') ADVANCE(90); + if (lookahead == 'g') ADVANCE(68); END_STATE(); case 77: - if (lookahead == 'i') ADVANCE(43); + if (lookahead == 'h') ADVANCE(281); END_STATE(); case 78: - if (lookahead == 'k') ADVANCE(40); + if (lookahead == 'h') ADVANCE(46); + if (lookahead == 'o') ADVANCE(100); END_STATE(); case 79: - if (lookahead == 'l') ADVANCE(315); + if (lookahead == 'i') ADVANCE(131); END_STATE(); case 80: - if (lookahead == 'l') ADVANCE(54); + if (lookahead == 'i') ADVANCE(133); + if (lookahead == 'o') ADVANCE(125); END_STATE(); case 81: - if (lookahead == 'l') ADVANCE(135); + if (lookahead == 'i') ADVANCE(53); END_STATE(); case 82: - if (lookahead == 'l') ADVANCE(60); + if (lookahead == 'i') ADVANCE(107); END_STATE(); case 83: - if (lookahead == 'l') ADVANCE(127); + if (lookahead == 'i') ADVANCE(98); END_STATE(); case 84: - if (lookahead == 'm') ADVANCE(282); + if (lookahead == 'i') ADVANCE(48); END_STATE(); case 85: - if (lookahead == 'm') ADVANCE(106); - if (lookahead == 'n') ADVANCE(49); + if (lookahead == 'k') ADVANCE(45); END_STATE(); case 86: - if (lookahead == 'n') ADVANCE(133); - if (lookahead == 'x') ADVANCE(103); + if (lookahead == 'l') ADVANCE(331); END_STATE(); case 87: - if (lookahead == 'n') ADVANCE(332); + if (lookahead == 'l') ADVANCE(60); END_STATE(); case 88: - if (lookahead == 'n') ADVANCE(325); + if (lookahead == 'l') ADVANCE(146); END_STATE(); case 89: - if (lookahead == 'n') ADVANCE(47); + if (lookahead == 'l') ADVANCE(66); END_STATE(); case 90: - if (lookahead == 'n') ADVANCE(67); + if (lookahead == 'l') ADVANCE(43); END_STATE(); case 91: - if (lookahead == 'n') ADVANCE(128); + if (lookahead == 'l') ADVANCE(138); END_STATE(); case 92: - if (lookahead == 'n') ADVANCE(121); + if (lookahead == 'm') ADVANCE(298); END_STATE(); case 93: - if (lookahead == 'o') ADVANCE(94); + if (lookahead == 'm') ADVANCE(116); + if (lookahead == 'n') ADVANCE(54); END_STATE(); case 94: - if (lookahead == 'o') ADVANCE(79); - if (lookahead == 'r') ADVANCE(110); + if (lookahead == 'n') ADVANCE(144); + if (lookahead == 'x') ADVANCE(113); END_STATE(); case 95: - if (lookahead == 'o') ADVANCE(138); + if (lookahead == 'n') ADVANCE(348); END_STATE(); case 96: - if (lookahead == 'o') ADVANCE(137); - if (lookahead == 'u') ADVANCE(83); + if (lookahead == 'n') ADVANCE(341); END_STATE(); case 97: - if (lookahead == 'o') ADVANCE(88); + if (lookahead == 'n') ADVANCE(52); END_STATE(); case 98: - if (lookahead == 'o') ADVANCE(116); + if (lookahead == 'n') ADVANCE(74); END_STATE(); case 99: - if (lookahead == 'o') ADVANCE(111); + if (lookahead == 'n') ADVANCE(139); END_STATE(); case 100: - if (lookahead == 'o') ADVANCE(109); + if (lookahead == 'n') ADVANCE(132); END_STATE(); case 101: - if (lookahead == 'o') ADVANCE(117); + if (lookahead == 'o') ADVANCE(102); END_STATE(); case 102: - if (lookahead == 'p') ADVANCE(129); - if (lookahead == 'w') ADVANCE(87); + if (lookahead == 'o') ADVANCE(86); + if (lookahead == 'r') ADVANCE(120); END_STATE(); case 103: - if (lookahead == 'p') ADVANCE(98); + if (lookahead == 'o') ADVANCE(149); END_STATE(); case 104: - if (lookahead == 'p') ADVANCE(82); + if (lookahead == 'o') ADVANCE(125); END_STATE(); case 105: - if (lookahead == 'p') ADVANCE(59); + if (lookahead == 'o') ADVANCE(148); END_STATE(); case 106: - if (lookahead == 'p') ADVANCE(101); + if (lookahead == 'o') ADVANCE(148); + if (lookahead == 'u') ADVANCE(91); END_STATE(); case 107: - if (lookahead == 'r') ADVANCE(313); + if (lookahead == 'o') ADVANCE(96); END_STATE(); case 108: - if (lookahead == 'r') ADVANCE(66); + if (lookahead == 'o') ADVANCE(126); END_STATE(); case 109: - if (lookahead == 'r') ADVANCE(287); + if (lookahead == 'o') ADVANCE(121); END_STATE(); case 110: - if (lookahead == 'r') ADVANCE(95); + if (lookahead == 'o') ADVANCE(119); END_STATE(); case 111: - if (lookahead == 'r') ADVANCE(55); + if (lookahead == 'o') ADVANCE(127); END_STATE(); case 112: - if (lookahead == 'r') ADVANCE(77); + if (lookahead == 'p') ADVANCE(140); + if (lookahead == 'w') ADVANCE(95); END_STATE(); case 113: - if (lookahead == 'r') ADVANCE(136); + if (lookahead == 'p') ADVANCE(108); END_STATE(); case 114: - if (lookahead == 'r') ADVANCE(50); + if (lookahead == 'p') ADVANCE(89); END_STATE(); case 115: - if (lookahead == 'r') ADVANCE(80); + if (lookahead == 'p') ADVANCE(65); END_STATE(); case 116: - if (lookahead == 'r') ADVANCE(125); + if (lookahead == 'p') ADVANCE(111); END_STATE(); case 117: - if (lookahead == 'r') ADVANCE(126); + if (lookahead == 'r') ADVANCE(329); END_STATE(); case 118: - if (lookahead == 's') ADVANCE(154); + if (lookahead == 'r') ADVANCE(73); END_STATE(); case 119: - if (lookahead == 's') ADVANCE(278); + if (lookahead == 'r') ADVANCE(303); END_STATE(); case 120: - if (lookahead == 's') ADVANCE(123); + if (lookahead == 'r') ADVANCE(103); END_STATE(); case 121: - if (lookahead == 's') ADVANCE(131); + if (lookahead == 'r') ADVANCE(61); END_STATE(); case 122: - if (lookahead == 't') ADVANCE(70); + if (lookahead == 'r') ADVANCE(84); END_STATE(); case 123: - if (lookahead == 't') ADVANCE(323); + if (lookahead == 'r') ADVANCE(147); END_STATE(); case 124: - if (lookahead == 't') ADVANCE(29); + if (lookahead == 'r') ADVANCE(55); END_STATE(); case 125: - if (lookahead == 't') ADVANCE(260); + if (lookahead == 'r') ADVANCE(87); END_STATE(); case 126: - if (lookahead == 't') ADVANCE(261); + if (lookahead == 'r') ADVANCE(136); END_STATE(); case 127: - if (lookahead == 't') ADVANCE(327); + if (lookahead == 'r') ADVANCE(137); END_STATE(); case 128: - if (lookahead == 't') ADVANCE(280); + if (lookahead == 's') ADVANCE(170); END_STATE(); case 129: - if (lookahead == 't') ADVANCE(75); + if (lookahead == 's') ADVANCE(294); END_STATE(); case 130: - if (lookahead == 't') ADVANCE(74); + if (lookahead == 's') ADVANCE(64); END_STATE(); case 131: - if (lookahead == 't') ADVANCE(113); + if (lookahead == 's') ADVANCE(134); END_STATE(); case 132: - if (lookahead == 't') ADVANCE(100); + if (lookahead == 's') ADVANCE(142); END_STATE(); case 133: - if (lookahead == 'u') ADVANCE(84); + if (lookahead == 't') ADVANCE(77); END_STATE(); case 134: - if (lookahead == 'u') ADVANCE(104); - if (lookahead == 'y') ADVANCE(105); + if (lookahead == 't') ADVANCE(339); END_STATE(); case 135: - if (lookahead == 'u') ADVANCE(56); + if (lookahead == 't') ADVANCE(33); END_STATE(); case 136: - if (lookahead == 'u') ADVANCE(52); + if (lookahead == 't') ADVANCE(276); END_STATE(); case 137: - if (lookahead == 'u') ADVANCE(114); + if (lookahead == 't') ADVANCE(277); END_STATE(); case 138: - if (lookahead == 'w') ADVANCE(330); + if (lookahead == 't') ADVANCE(343); END_STATE(); case 139: - if (('0' <= lookahead && lookahead <= '9')) ADVANCE(254); + if (lookahead == 't') ADVANCE(296); END_STATE(); case 140: - if (('0' <= lookahead && lookahead <= '9')) ADVANCE(21); + if (lookahead == 't') ADVANCE(82); END_STATE(); case 141: - if (('A' <= lookahead && lookahead <= 'Z')) ADVANCE(252); - if (('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); + if (lookahead == 't') ADVANCE(81); END_STATE(); case 142: - if (lookahead == '-' || - ('0' <= lookahead && lookahead <= '9') || - ('A' <= lookahead && lookahead <= 'Z') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(256); + if (lookahead == 't') ADVANCE(123); END_STATE(); case 143: - if (lookahead == '-' || - ('0' <= lookahead && lookahead <= '9') || - ('A' <= lookahead && lookahead <= 'Z') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(255); + if (lookahead == 't') ADVANCE(110); END_STATE(); case 144: - if (eof) ADVANCE(146); - if (lookahead == '\n') SKIP(0); + if (lookahead == 'u') ADVANCE(92); END_STATE(); case 145: - if (eof) ADVANCE(146); - if (lookahead == '\n') SKIP(0); - if (lookahead == '\r') SKIP(144); + if (lookahead == 'u') ADVANCE(114); + if (lookahead == 'y') ADVANCE(115); END_STATE(); case 146: - ACCEPT_TOKEN(ts_builtin_sym_end); + if (lookahead == 'u') ADVANCE(62); END_STATE(); case 147: - ACCEPT_TOKEN(anon_sym_package); + if (lookahead == 'u') ADVANCE(57); END_STATE(); case 148: - ACCEPT_TOKEN(anon_sym_COLON); + if (lookahead == 'u') ADVANCE(124); END_STATE(); case 149: - ACCEPT_TOKEN(anon_sym_SLASH); - if (lookahead == '*') ADVANCE(19); - if (lookahead == '/') ADVANCE(336); + if (lookahead == 'w') ADVANCE(346); END_STATE(); case 150: - ACCEPT_TOKEN(anon_sym_AT); + if (lookahead == 'y') ADVANCE(115); END_STATE(); case 151: - ACCEPT_TOKEN(anon_sym_SEMI); + if (('0' <= lookahead && lookahead <= '9')) ADVANCE(270); END_STATE(); case 152: - ACCEPT_TOKEN(anon_sym_use); + if (('0' <= lookahead && lookahead <= '9')) ADVANCE(24); END_STATE(); case 153: - ACCEPT_TOKEN(anon_sym_use); - if (lookahead == '-') ADVANCE(141); - if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); + if (('A' <= lookahead && lookahead <= 'Z')) ADVANCE(268); + if (('a' <= lookahead && lookahead <= 'z')) ADVANCE(269); END_STATE(); case 154: - ACCEPT_TOKEN(anon_sym_as); + if (lookahead == '-' || + ('0' <= lookahead && lookahead <= '9') || + ('A' <= lookahead && lookahead <= 'Z') || + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(272); END_STATE(); case 155: - ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(141); - if (lookahead == '1') ADVANCE(167); - if (lookahead == '3') ADVANCE(158); - if (lookahead == '6') ADVANCE(164); - if (lookahead == '8') ADVANCE(298); - if (lookahead == 't') ADVANCE(228); - if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); + if (lookahead == '-' || + ('0' <= lookahead && lookahead <= '9') || + ('A' <= lookahead && lookahead <= 'Z') || + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(271); END_STATE(); case 156: - ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(141); - if (lookahead == '1') ADVANCE(168); - if (lookahead == '3') ADVANCE(159); - if (lookahead == '6') ADVANCE(165); - if (lookahead == '8') ADVANCE(290); - if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); + if (lookahead != 0 && + lookahead != '\n' && + lookahead != '/') ADVANCE(361); END_STATE(); case 157: - ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(141); - if (lookahead == '2') ADVANCE(306); - if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); + if (eof) ADVANCE(162); + if (lookahead == '\n') SKIP(0); END_STATE(); case 158: - ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(141); - if (lookahead == '2') ADVANCE(302); - if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); + if (eof) ADVANCE(162); + if (lookahead == '\n') SKIP(0); + if (lookahead == '\r') SKIP(157); END_STATE(); case 159: - ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(141); - if (lookahead == '2') ADVANCE(294); - if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); + if (eof) ADVANCE(162); + if (lookahead == '\n') SKIP(161); END_STATE(); case 160: - ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(141); - if (lookahead == '2') ADVANCE(310); - if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); + if (eof) ADVANCE(162); + if (lookahead == '\n') SKIP(161); + if (lookahead == '\r') SKIP(159); END_STATE(); case 161: - ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(141); - if (lookahead == '3') ADVANCE(157); - if (lookahead == '6') ADVANCE(163); - if (lookahead == 'l') ADVANCE(213); - if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); + if (eof) ADVANCE(162); + if (lookahead == '/') ADVANCE(20); + if (lookahead == ';') ADVANCE(167); + if (lookahead == '\\') SKIP(160); + if (lookahead == 'e') ADVANCE(94); + if (lookahead == 'f') ADVANCE(90); + if (lookahead == 'i') ADVANCE(93); + if (lookahead == 'p') ADVANCE(41); + if (lookahead == 'r') ADVANCE(71); + if (lookahead == 't') ADVANCE(150); + if (lookahead == 'u') ADVANCE(130); + if (lookahead == 'v') ADVANCE(42); + if (lookahead == 'w') ADVANCE(104); + if (lookahead == '{') ADVANCE(274); + if (lookahead == '}') ADVANCE(275); + if (('\t' <= lookahead && lookahead <= '\r') || + lookahead == ' ') SKIP(161); END_STATE(); case 162: - ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(141); - if (lookahead == '3') ADVANCE(160); - if (lookahead == '6') ADVANCE(166); - if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); + ACCEPT_TOKEN(ts_builtin_sym_end); END_STATE(); case 163: - ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(141); - if (lookahead == '4') ADVANCE(308); - if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); + ACCEPT_TOKEN(anon_sym_package); END_STATE(); case 164: - ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(141); - if (lookahead == '4') ADVANCE(304); - if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); + ACCEPT_TOKEN(anon_sym_COLON); END_STATE(); case 165: - ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(141); - if (lookahead == '4') ADVANCE(296); - if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); + ACCEPT_TOKEN(anon_sym_SLASH); + if (lookahead == '*') ADVANCE(22); + if (lookahead == '/') ADVANCE(156); END_STATE(); case 166: - ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(141); - if (lookahead == '4') ADVANCE(312); - if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); + ACCEPT_TOKEN(anon_sym_AT); END_STATE(); case 167: - ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(141); - if (lookahead == '6') ADVANCE(300); - if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); + ACCEPT_TOKEN(anon_sym_SEMI); END_STATE(); case 168: - ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(141); - if (lookahead == '6') ADVANCE(292); - if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); + ACCEPT_TOKEN(anon_sym_use); END_STATE(); case 169: - ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(141); - if (lookahead == 'a') ADVANCE(191); + ACCEPT_TOKEN(anon_sym_use); + if (lookahead == '-') ADVANCE(153); if (('0' <= lookahead && lookahead <= '9') || - ('b' <= lookahead && lookahead <= 'z')) ADVANCE(253); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(269); END_STATE(); case 170: - ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(141); - if (lookahead == 'a') ADVANCE(237); - if (('0' <= lookahead && lookahead <= '9') || - ('b' <= lookahead && lookahead <= 'z')) ADVANCE(253); + ACCEPT_TOKEN(anon_sym_as); END_STATE(); case 171: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(141); - if (lookahead == 'a') ADVANCE(222); + if (lookahead == '-') ADVANCE(153); + if (lookahead == '1') ADVANCE(183); + if (lookahead == '3') ADVANCE(174); + if (lookahead == '6') ADVANCE(180); + if (lookahead == '8') ADVANCE(314); + if (lookahead == 't') ADVANCE(244); if (('0' <= lookahead && lookahead <= '9') || - ('b' <= lookahead && lookahead <= 'z')) ADVANCE(253); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(269); END_STATE(); case 172: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(141); - if (lookahead == 'a') ADVANCE(207); + if (lookahead == '-') ADVANCE(153); + if (lookahead == '1') ADVANCE(184); + if (lookahead == '3') ADVANCE(175); + if (lookahead == '6') ADVANCE(181); + if (lookahead == '8') ADVANCE(306); if (('0' <= lookahead && lookahead <= '9') || - ('b' <= lookahead && lookahead <= 'z')) ADVANCE(253); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(269); END_STATE(); case 173: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(141); - if (lookahead == 'a') ADVANCE(229); + if (lookahead == '-') ADVANCE(153); + if (lookahead == '2') ADVANCE(322); if (('0' <= lookahead && lookahead <= '9') || - ('b' <= lookahead && lookahead <= 'z')) ADVANCE(253); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(269); END_STATE(); case 174: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(141); - if (lookahead == 'a') ADVANCE(179); + if (lookahead == '-') ADVANCE(153); + if (lookahead == '2') ADVANCE(318); if (('0' <= lookahead && lookahead <= '9') || - ('b' <= lookahead && lookahead <= 'z')) ADVANCE(253); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(269); END_STATE(); case 175: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(141); - if (lookahead == 'c') ADVANCE(268); + if (lookahead == '-') ADVANCE(153); + if (lookahead == '2') ADVANCE(310); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(269); END_STATE(); case 176: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(141); - if (lookahead == 'c') ADVANCE(216); - if (lookahead == 's') ADVANCE(215); + if (lookahead == '-') ADVANCE(153); + if (lookahead == '2') ADVANCE(326); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(269); END_STATE(); case 177: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(141); - if (lookahead == 'c') ADVANCE(185); + if (lookahead == '-') ADVANCE(153); + if (lookahead == '3') ADVANCE(173); + if (lookahead == '6') ADVANCE(179); + if (lookahead == 'l') ADVANCE(229); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(269); END_STATE(); case 178: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(141); - if (lookahead == 'c') ADVANCE(243); + if (lookahead == '-') ADVANCE(153); + if (lookahead == '3') ADVANCE(176); + if (lookahead == '6') ADVANCE(182); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(269); END_STATE(); case 179: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(141); - if (lookahead == 'c') ADVANCE(186); + if (lookahead == '-') ADVANCE(153); + if (lookahead == '4') ADVANCE(324); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(269); END_STATE(); case 180: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(141); - if (lookahead == 'd') ADVANCE(277); + if (lookahead == '-') ADVANCE(153); + if (lookahead == '4') ADVANCE(320); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(269); END_STATE(); case 181: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(141); - if (lookahead == 'e') ADVANCE(320); + if (lookahead == '-') ADVANCE(153); + if (lookahead == '4') ADVANCE(312); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(269); END_STATE(); case 182: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(141); - if (lookahead == 'e') ADVANCE(176); + if (lookahead == '-') ADVANCE(153); + if (lookahead == '4') ADVANCE(328); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(269); END_STATE(); case 183: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(141); - if (lookahead == 'e') ADVANCE(153); + if (lookahead == '-') ADVANCE(153); + if (lookahead == '6') ADVANCE(316); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(269); END_STATE(); case 184: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(141); - if (lookahead == 'e') ADVANCE(274); + if (lookahead == '-') ADVANCE(153); + if (lookahead == '6') ADVANCE(308); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(269); END_STATE(); case 185: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(141); - if (lookahead == 'e') ADVANCE(285); + if (lookahead == '-') ADVANCE(153); + if (lookahead == 'a') ADVANCE(207); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); + ('b' <= lookahead && lookahead <= 'z')) ADVANCE(269); END_STATE(); case 186: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(141); - if (lookahead == 'e') ADVANCE(263); + if (lookahead == '-') ADVANCE(153); + if (lookahead == 'a') ADVANCE(253); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); + ('b' <= lookahead && lookahead <= 'z')) ADVANCE(269); END_STATE(); case 187: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(141); - if (lookahead == 'e') ADVANCE(232); + if (lookahead == '-') ADVANCE(153); + if (lookahead == 'a') ADVANCE(238); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); + ('b' <= lookahead && lookahead <= 'z')) ADVANCE(269); END_STATE(); case 188: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(141); - if (lookahead == 'e') ADVANCE(226); + if (lookahead == '-') ADVANCE(153); + if (lookahead == 'a') ADVANCE(223); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); + ('b' <= lookahead && lookahead <= 'z')) ADVANCE(269); END_STATE(); case 189: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(141); - if (lookahead == 'f') ADVANCE(174); + if (lookahead == '-') ADVANCE(153); + if (lookahead == 'a') ADVANCE(245); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); + ('b' <= lookahead && lookahead <= 'z')) ADVANCE(269); END_STATE(); case 190: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(141); - if (lookahead == 'g') ADVANCE(318); + if (lookahead == '-') ADVANCE(153); + if (lookahead == 'a') ADVANCE(195); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); + ('b' <= lookahead && lookahead <= 'z')) ADVANCE(269); END_STATE(); case 191: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(141); - if (lookahead == 'g') ADVANCE(231); + if (lookahead == '-') ADVANCE(153); + if (lookahead == 'c') ADVANCE(284); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(269); END_STATE(); case 192: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(141); - if (lookahead == 'h') ADVANCE(171); + if (lookahead == '-') ADVANCE(153); + if (lookahead == 'c') ADVANCE(232); + if (lookahead == 's') ADVANCE(231); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(269); END_STATE(); case 193: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(141); - if (lookahead == 'i') ADVANCE(233); + if (lookahead == '-') ADVANCE(153); + if (lookahead == 'c') ADVANCE(201); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(269); END_STATE(); case 194: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(141); - if (lookahead == 'i') ADVANCE(203); + if (lookahead == '-') ADVANCE(153); + if (lookahead == 'c') ADVANCE(259); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(269); END_STATE(); case 195: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(141); - if (lookahead == 'i') ADVANCE(214); + if (lookahead == '-') ADVANCE(153); + if (lookahead == 'c') ADVANCE(202); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(269); END_STATE(); case 196: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(141); - if (lookahead == 'i') ADVANCE(172); + if (lookahead == '-') ADVANCE(153); + if (lookahead == 'd') ADVANCE(293); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(269); END_STATE(); case 197: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(141); - if (lookahead == 'l') ADVANCE(316); + if (lookahead == '-') ADVANCE(153); + if (lookahead == 'e') ADVANCE(336); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(269); END_STATE(); case 198: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(141); - if (lookahead == 'l') ADVANCE(181); + if (lookahead == '-') ADVANCE(153); + if (lookahead == 'e') ADVANCE(192); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(269); END_STATE(); case 199: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(141); - if (lookahead == 'l') ADVANCE(169); + if (lookahead == '-') ADVANCE(153); + if (lookahead == 'e') ADVANCE(169); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(269); END_STATE(); case 200: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(141); - if (lookahead == 'l') ADVANCE(238); + if (lookahead == '-') ADVANCE(153); + if (lookahead == 'e') ADVANCE(290); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(269); END_STATE(); case 201: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(141); - if (lookahead == 'm') ADVANCE(283); + if (lookahead == '-') ADVANCE(153); + if (lookahead == 'e') ADVANCE(301); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(269); END_STATE(); case 202: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(141); - if (lookahead == 'n') ADVANCE(333); + if (lookahead == '-') ADVANCE(153); + if (lookahead == 'e') ADVANCE(279); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(269); END_STATE(); case 203: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(141); - if (lookahead == 'n') ADVANCE(190); + if (lookahead == '-') ADVANCE(153); + if (lookahead == 'e') ADVANCE(248); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(269); END_STATE(); case 204: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(141); - if (lookahead == 'n') ADVANCE(326); + if (lookahead == '-') ADVANCE(153); + if (lookahead == 'e') ADVANCE(242); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(269); END_STATE(); case 205: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(141); - if (lookahead == 'n') ADVANCE(245); + if (lookahead == '-') ADVANCE(153); + if (lookahead == 'f') ADVANCE(190); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(269); END_STATE(); case 206: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(141); - if (lookahead == 'n') ADVANCE(175); + if (lookahead == '-') ADVANCE(153); + if (lookahead == 'g') ADVANCE(334); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(269); END_STATE(); case 207: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(141); - if (lookahead == 'n') ADVANCE(239); + if (lookahead == '-') ADVANCE(153); + if (lookahead == 'g') ADVANCE(247); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(269); END_STATE(); case 208: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(141); - if (lookahead == 'n') ADVANCE(242); + if (lookahead == '-') ADVANCE(153); + if (lookahead == 'h') ADVANCE(187); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(269); END_STATE(); case 209: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(141); - if (lookahead == 'n') ADVANCE(235); + if (lookahead == '-') ADVANCE(153); + if (lookahead == 'i') ADVANCE(249); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(269); END_STATE(); case 210: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(141); - if (lookahead == 'o') ADVANCE(211); + if (lookahead == '-') ADVANCE(153); + if (lookahead == 'i') ADVANCE(219); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(269); END_STATE(); case 211: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(141); - if (lookahead == 'o') ADVANCE(197); - if (lookahead == 'r') ADVANCE(227); + if (lookahead == '-') ADVANCE(153); + if (lookahead == 'i') ADVANCE(230); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(269); END_STATE(); case 212: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(141); - if (lookahead == 'o') ADVANCE(250); + if (lookahead == '-') ADVANCE(153); + if (lookahead == 'i') ADVANCE(188); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(269); END_STATE(); case 213: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(141); - if (lookahead == 'o') ADVANCE(170); + if (lookahead == '-') ADVANCE(153); + if (lookahead == 'l') ADVANCE(332); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(269); END_STATE(); case 214: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(141); - if (lookahead == 'o') ADVANCE(204); + if (lookahead == '-') ADVANCE(153); + if (lookahead == 'l') ADVANCE(197); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(269); END_STATE(); case 215: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(141); - if (lookahead == 'o') ADVANCE(248); + if (lookahead == '-') ADVANCE(153); + if (lookahead == 'l') ADVANCE(185); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(269); END_STATE(); case 216: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(141); - if (lookahead == 'o') ADVANCE(223); + if (lookahead == '-') ADVANCE(153); + if (lookahead == 'l') ADVANCE(254); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(269); END_STATE(); case 217: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(141); - if (lookahead == 'o') ADVANCE(209); + if (lookahead == '-') ADVANCE(153); + if (lookahead == 'm') ADVANCE(299); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(269); END_STATE(); case 218: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(141); - if (lookahead == 'o') ADVANCE(225); + if (lookahead == '-') ADVANCE(153); + if (lookahead == 'n') ADVANCE(349); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(269); END_STATE(); case 219: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(141); - if (lookahead == 'p') ADVANCE(240); - if (lookahead == 'w') ADVANCE(202); + if (lookahead == '-') ADVANCE(153); + if (lookahead == 'n') ADVANCE(206); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(269); END_STATE(); case 220: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(141); - if (lookahead == 'p') ADVANCE(198); + if (lookahead == '-') ADVANCE(153); + if (lookahead == 'n') ADVANCE(342); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(269); END_STATE(); case 221: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(141); - if (lookahead == 'p') ADVANCE(184); + if (lookahead == '-') ADVANCE(153); + if (lookahead == 'n') ADVANCE(261); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(269); END_STATE(); case 222: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(141); - if (lookahead == 'r') ADVANCE(314); + if (lookahead == '-') ADVANCE(153); + if (lookahead == 'n') ADVANCE(191); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(269); END_STATE(); case 223: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(141); - if (lookahead == 'r') ADVANCE(180); + if (lookahead == '-') ADVANCE(153); + if (lookahead == 'n') ADVANCE(255); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(269); END_STATE(); case 224: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(141); - if (lookahead == 'r') ADVANCE(177); + if (lookahead == '-') ADVANCE(153); + if (lookahead == 'n') ADVANCE(258); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(269); END_STATE(); case 225: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(141); - if (lookahead == 'r') ADVANCE(288); + if (lookahead == '-') ADVANCE(153); + if (lookahead == 'n') ADVANCE(251); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(269); END_STATE(); case 226: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(141); - if (lookahead == 'r') ADVANCE(189); + if (lookahead == '-') ADVANCE(153); + if (lookahead == 'o') ADVANCE(227); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(269); END_STATE(); case 227: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(141); - if (lookahead == 'r') ADVANCE(212); + if (lookahead == '-') ADVANCE(153); + if (lookahead == 'o') ADVANCE(213); + if (lookahead == 'r') ADVANCE(243); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(269); END_STATE(); case 228: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(141); - if (lookahead == 'r') ADVANCE(194); + if (lookahead == '-') ADVANCE(153); + if (lookahead == 'o') ADVANCE(266); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(269); END_STATE(); case 229: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(141); - if (lookahead == 'r') ADVANCE(196); + if (lookahead == '-') ADVANCE(153); + if (lookahead == 'o') ADVANCE(186); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(269); END_STATE(); case 230: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(141); - if (lookahead == 'r') ADVANCE(246); + if (lookahead == '-') ADVANCE(153); + if (lookahead == 'o') ADVANCE(220); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(269); END_STATE(); case 231: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(141); - if (lookahead == 's') ADVANCE(279); + if (lookahead == '-') ADVANCE(153); + if (lookahead == 'o') ADVANCE(264); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(269); END_STATE(); case 232: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(141); - if (lookahead == 's') ADVANCE(247); + if (lookahead == '-') ADVANCE(153); + if (lookahead == 'o') ADVANCE(239); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(269); END_STATE(); case 233: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(141); - if (lookahead == 's') ADVANCE(236); + if (lookahead == '-') ADVANCE(153); + if (lookahead == 'o') ADVANCE(225); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(269); END_STATE(); case 234: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(141); - if (lookahead == 's') ADVANCE(183); + if (lookahead == '-') ADVANCE(153); + if (lookahead == 'o') ADVANCE(241); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(269); END_STATE(); case 235: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(141); - if (lookahead == 's') ADVANCE(241); + if (lookahead == '-') ADVANCE(153); + if (lookahead == 'p') ADVANCE(256); + if (lookahead == 'w') ADVANCE(218); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(269); END_STATE(); case 236: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(141); - if (lookahead == 't') ADVANCE(324); + if (lookahead == '-') ADVANCE(153); + if (lookahead == 'p') ADVANCE(214); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(269); END_STATE(); case 237: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(141); - if (lookahead == 't') ADVANCE(162); + if (lookahead == '-') ADVANCE(153); + if (lookahead == 'p') ADVANCE(200); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(269); END_STATE(); case 238: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(141); - if (lookahead == 't') ADVANCE(328); + if (lookahead == '-') ADVANCE(153); + if (lookahead == 'r') ADVANCE(330); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(269); END_STATE(); case 239: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(141); - if (lookahead == 't') ADVANCE(281); + if (lookahead == '-') ADVANCE(153); + if (lookahead == 'r') ADVANCE(196); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(269); END_STATE(); case 240: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(141); - if (lookahead == 't') ADVANCE(195); + if (lookahead == '-') ADVANCE(153); + if (lookahead == 'r') ADVANCE(193); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(269); END_STATE(); case 241: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(141); - if (lookahead == 't') ADVANCE(230); + if (lookahead == '-') ADVANCE(153); + if (lookahead == 'r') ADVANCE(304); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(269); END_STATE(); case 242: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(141); - if (lookahead == 't') ADVANCE(188); + if (lookahead == '-') ADVANCE(153); + if (lookahead == 'r') ADVANCE(205); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(269); END_STATE(); case 243: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(141); - if (lookahead == 't') ADVANCE(218); + if (lookahead == '-') ADVANCE(153); + if (lookahead == 'r') ADVANCE(228); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(269); END_STATE(); case 244: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(141); - if (lookahead == 'u') ADVANCE(220); + if (lookahead == '-') ADVANCE(153); + if (lookahead == 'r') ADVANCE(210); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(269); END_STATE(); case 245: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(141); - if (lookahead == 'u') ADVANCE(201); + if (lookahead == '-') ADVANCE(153); + if (lookahead == 'r') ADVANCE(212); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(269); END_STATE(); case 246: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(141); - if (lookahead == 'u') ADVANCE(178); + if (lookahead == '-') ADVANCE(153); + if (lookahead == 'r') ADVANCE(262); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(269); END_STATE(); case 247: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(141); - if (lookahead == 'u') ADVANCE(200); + if (lookahead == '-') ADVANCE(153); + if (lookahead == 's') ADVANCE(295); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(269); END_STATE(); case 248: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(141); - if (lookahead == 'u') ADVANCE(224); + if (lookahead == '-') ADVANCE(153); + if (lookahead == 's') ADVANCE(263); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(269); END_STATE(); case 249: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(141); - if (lookahead == 'u') ADVANCE(206); + if (lookahead == '-') ADVANCE(153); + if (lookahead == 's') ADVANCE(252); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(269); END_STATE(); case 250: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(141); - if (lookahead == 'w') ADVANCE(331); + if (lookahead == '-') ADVANCE(153); + if (lookahead == 's') ADVANCE(199); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(269); END_STATE(); case 251: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(141); - if (lookahead == 'y') ADVANCE(221); + if (lookahead == '-') ADVANCE(153); + if (lookahead == 's') ADVANCE(257); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(269); END_STATE(); case 252: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(141); + if (lookahead == '-') ADVANCE(153); + if (lookahead == 't') ADVANCE(340); if (('0' <= lookahead && lookahead <= '9') || - ('A' <= lookahead && lookahead <= 'Z')) ADVANCE(252); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(269); END_STATE(); case 253: ACCEPT_TOKEN(sym_id); - if (lookahead == '-') ADVANCE(141); + if (lookahead == '-') ADVANCE(153); + if (lookahead == 't') ADVANCE(178); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(269); END_STATE(); case 254: - ACCEPT_TOKEN(sym_valid_semver); - if (lookahead == '+') ADVANCE(142); - if (lookahead == '-') ADVANCE(143); - if (('0' <= lookahead && lookahead <= '9')) ADVANCE(254); + ACCEPT_TOKEN(sym_id); + if (lookahead == '-') ADVANCE(153); + if (lookahead == 't') ADVANCE(344); + if (('0' <= lookahead && lookahead <= '9') || + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(269); END_STATE(); case 255: - ACCEPT_TOKEN(sym_valid_semver); - if (lookahead == '+') ADVANCE(142); - if (lookahead == '.') ADVANCE(143); - if (lookahead == '-' || - ('0' <= lookahead && lookahead <= '9') || - ('A' <= lookahead && lookahead <= 'Z') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(255); + ACCEPT_TOKEN(sym_id); + if (lookahead == '-') ADVANCE(153); + if (lookahead == 't') ADVANCE(297); + if (('0' <= lookahead && lookahead <= '9') || + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(269); END_STATE(); case 256: - ACCEPT_TOKEN(sym_valid_semver); - if (lookahead == '.') ADVANCE(142); - if (lookahead == '-' || - ('0' <= lookahead && lookahead <= '9') || - ('A' <= lookahead && lookahead <= 'Z') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(256); + ACCEPT_TOKEN(sym_id); + if (lookahead == '-') ADVANCE(153); + if (lookahead == 't') ADVANCE(211); + if (('0' <= lookahead && lookahead <= '9') || + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(269); END_STATE(); case 257: - ACCEPT_TOKEN(anon_sym_world); + ACCEPT_TOKEN(sym_id); + if (lookahead == '-') ADVANCE(153); + if (lookahead == 't') ADVANCE(246); + if (('0' <= lookahead && lookahead <= '9') || + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(269); END_STATE(); case 258: - ACCEPT_TOKEN(anon_sym_LBRACE); + ACCEPT_TOKEN(sym_id); + if (lookahead == '-') ADVANCE(153); + if (lookahead == 't') ADVANCE(204); + if (('0' <= lookahead && lookahead <= '9') || + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(269); END_STATE(); case 259: - ACCEPT_TOKEN(anon_sym_RBRACE); + ACCEPT_TOKEN(sym_id); + if (lookahead == '-') ADVANCE(153); + if (lookahead == 't') ADVANCE(234); + if (('0' <= lookahead && lookahead <= '9') || + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(269); END_STATE(); case 260: - ACCEPT_TOKEN(anon_sym_export); + ACCEPT_TOKEN(sym_id); + if (lookahead == '-') ADVANCE(153); + if (lookahead == 'u') ADVANCE(236); + if (('0' <= lookahead && lookahead <= '9') || + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(269); END_STATE(); case 261: - ACCEPT_TOKEN(anon_sym_import); + ACCEPT_TOKEN(sym_id); + if (lookahead == '-') ADVANCE(153); + if (lookahead == 'u') ADVANCE(217); + if (('0' <= lookahead && lookahead <= '9') || + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(269); END_STATE(); case 262: - ACCEPT_TOKEN(anon_sym_interface); + ACCEPT_TOKEN(sym_id); + if (lookahead == '-') ADVANCE(153); + if (lookahead == 'u') ADVANCE(194); + if (('0' <= lookahead && lookahead <= '9') || + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(269); END_STATE(); case 263: - ACCEPT_TOKEN(anon_sym_interface); - if (lookahead == '-') ADVANCE(141); + ACCEPT_TOKEN(sym_id); + if (lookahead == '-') ADVANCE(153); + if (lookahead == 'u') ADVANCE(216); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(269); END_STATE(); case 264: - ACCEPT_TOKEN(anon_sym_include); + ACCEPT_TOKEN(sym_id); + if (lookahead == '-') ADVANCE(153); + if (lookahead == 'u') ADVANCE(240); + if (('0' <= lookahead && lookahead <= '9') || + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(269); END_STATE(); case 265: - ACCEPT_TOKEN(anon_sym_with); + ACCEPT_TOKEN(sym_id); + if (lookahead == '-') ADVANCE(153); + if (lookahead == 'u') ADVANCE(222); + if (('0' <= lookahead && lookahead <= '9') || + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(269); END_STATE(); case 266: - ACCEPT_TOKEN(anon_sym_COMMA); + ACCEPT_TOKEN(sym_id); + if (lookahead == '-') ADVANCE(153); + if (lookahead == 'w') ADVANCE(347); + if (('0' <= lookahead && lookahead <= '9') || + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(269); END_STATE(); case 267: - ACCEPT_TOKEN(anon_sym_func); + ACCEPT_TOKEN(sym_id); + if (lookahead == '-') ADVANCE(153); + if (lookahead == 'y') ADVANCE(237); + if (('0' <= lookahead && lookahead <= '9') || + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(269); END_STATE(); case 268: - ACCEPT_TOKEN(anon_sym_func); - if (lookahead == '-') ADVANCE(141); + ACCEPT_TOKEN(sym_id); + if (lookahead == '-') ADVANCE(153); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); + ('A' <= lookahead && lookahead <= 'Z')) ADVANCE(268); END_STATE(); case 269: - ACCEPT_TOKEN(anon_sym_LPAREN); + ACCEPT_TOKEN(sym_id); + if (lookahead == '-') ADVANCE(153); + if (('0' <= lookahead && lookahead <= '9') || + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(269); END_STATE(); case 270: - ACCEPT_TOKEN(anon_sym_RPAREN); + ACCEPT_TOKEN(sym_valid_semver); + if (lookahead == '+') ADVANCE(154); + if (lookahead == '-') ADVANCE(155); + if (('0' <= lookahead && lookahead <= '9')) ADVANCE(270); END_STATE(); case 271: - ACCEPT_TOKEN(anon_sym_DASH_GT); + ACCEPT_TOKEN(sym_valid_semver); + if (lookahead == '+') ADVANCE(154); + if (lookahead == '.') ADVANCE(155); + if (lookahead == '-' || + ('0' <= lookahead && lookahead <= '9') || + ('A' <= lookahead && lookahead <= 'Z') || + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(271); END_STATE(); case 272: - ACCEPT_TOKEN(anon_sym_DOT); + ACCEPT_TOKEN(sym_valid_semver); + if (lookahead == '.') ADVANCE(154); + if (lookahead == '-' || + ('0' <= lookahead && lookahead <= '9') || + ('A' <= lookahead && lookahead <= 'Z') || + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(272); END_STATE(); case 273: - ACCEPT_TOKEN(anon_sym_type); + ACCEPT_TOKEN(anon_sym_world); END_STATE(); case 274: + ACCEPT_TOKEN(anon_sym_LBRACE); + END_STATE(); + case 275: + ACCEPT_TOKEN(anon_sym_RBRACE); + END_STATE(); + case 276: + ACCEPT_TOKEN(anon_sym_export); + END_STATE(); + case 277: + ACCEPT_TOKEN(anon_sym_import); + END_STATE(); + case 278: + ACCEPT_TOKEN(anon_sym_interface); + END_STATE(); + case 279: + ACCEPT_TOKEN(anon_sym_interface); + if (lookahead == '-') ADVANCE(153); + if (('0' <= lookahead && lookahead <= '9') || + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(269); + END_STATE(); + case 280: + ACCEPT_TOKEN(anon_sym_include); + END_STATE(); + case 281: + ACCEPT_TOKEN(anon_sym_with); + END_STATE(); + case 282: + ACCEPT_TOKEN(anon_sym_COMMA); + END_STATE(); + case 283: + ACCEPT_TOKEN(anon_sym_func); + END_STATE(); + case 284: + ACCEPT_TOKEN(anon_sym_func); + if (lookahead == '-') ADVANCE(153); + if (('0' <= lookahead && lookahead <= '9') || + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(269); + END_STATE(); + case 285: + ACCEPT_TOKEN(anon_sym_LPAREN); + END_STATE(); + case 286: + ACCEPT_TOKEN(anon_sym_RPAREN); + END_STATE(); + case 287: + ACCEPT_TOKEN(anon_sym_DASH_GT); + END_STATE(); + case 288: + ACCEPT_TOKEN(anon_sym_DOT); + END_STATE(); + case 289: ACCEPT_TOKEN(anon_sym_type); - if (lookahead == '-') ADVANCE(141); + END_STATE(); + case 290: + ACCEPT_TOKEN(anon_sym_type); + if (lookahead == '-') ADVANCE(153); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(269); END_STATE(); - case 275: + case 291: ACCEPT_TOKEN(anon_sym_EQ); END_STATE(); - case 276: + case 292: ACCEPT_TOKEN(anon_sym_record); END_STATE(); - case 277: + case 293: ACCEPT_TOKEN(anon_sym_record); - if (lookahead == '-') ADVANCE(141); + if (lookahead == '-') ADVANCE(153); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(269); END_STATE(); - case 278: + case 294: ACCEPT_TOKEN(anon_sym_flags); END_STATE(); - case 279: + case 295: ACCEPT_TOKEN(anon_sym_flags); - if (lookahead == '-') ADVANCE(141); + if (lookahead == '-') ADVANCE(153); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(269); END_STATE(); - case 280: + case 296: ACCEPT_TOKEN(anon_sym_variant); END_STATE(); - case 281: + case 297: ACCEPT_TOKEN(anon_sym_variant); - if (lookahead == '-') ADVANCE(141); + if (lookahead == '-') ADVANCE(153); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(269); END_STATE(); - case 282: + case 298: ACCEPT_TOKEN(anon_sym_enum); END_STATE(); - case 283: + case 299: ACCEPT_TOKEN(anon_sym_enum); - if (lookahead == '-') ADVANCE(141); + if (lookahead == '-') ADVANCE(153); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(269); END_STATE(); - case 284: + case 300: ACCEPT_TOKEN(anon_sym_resource); END_STATE(); - case 285: + case 301: ACCEPT_TOKEN(anon_sym_resource); - if (lookahead == '-') ADVANCE(141); + if (lookahead == '-') ADVANCE(153); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(269); END_STATE(); - case 286: + case 302: ACCEPT_TOKEN(anon_sym_static); END_STATE(); - case 287: + case 303: ACCEPT_TOKEN(anon_sym_constructor); END_STATE(); - case 288: + case 304: ACCEPT_TOKEN(anon_sym_constructor); - if (lookahead == '-') ADVANCE(141); + if (lookahead == '-') ADVANCE(153); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(269); END_STATE(); - case 289: + case 305: ACCEPT_TOKEN(anon_sym_u8); END_STATE(); - case 290: + case 306: ACCEPT_TOKEN(anon_sym_u8); - if (lookahead == '-') ADVANCE(141); + if (lookahead == '-') ADVANCE(153); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(269); END_STATE(); - case 291: + case 307: ACCEPT_TOKEN(anon_sym_u16); END_STATE(); - case 292: + case 308: ACCEPT_TOKEN(anon_sym_u16); - if (lookahead == '-') ADVANCE(141); + if (lookahead == '-') ADVANCE(153); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(269); END_STATE(); - case 293: + case 309: ACCEPT_TOKEN(anon_sym_u32); END_STATE(); - case 294: + case 310: ACCEPT_TOKEN(anon_sym_u32); - if (lookahead == '-') ADVANCE(141); + if (lookahead == '-') ADVANCE(153); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(269); END_STATE(); - case 295: + case 311: ACCEPT_TOKEN(anon_sym_u64); END_STATE(); - case 296: + case 312: ACCEPT_TOKEN(anon_sym_u64); - if (lookahead == '-') ADVANCE(141); + if (lookahead == '-') ADVANCE(153); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(269); END_STATE(); - case 297: + case 313: ACCEPT_TOKEN(anon_sym_s8); END_STATE(); - case 298: + case 314: ACCEPT_TOKEN(anon_sym_s8); - if (lookahead == '-') ADVANCE(141); + if (lookahead == '-') ADVANCE(153); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(269); END_STATE(); - case 299: + case 315: ACCEPT_TOKEN(anon_sym_s16); END_STATE(); - case 300: + case 316: ACCEPT_TOKEN(anon_sym_s16); - if (lookahead == '-') ADVANCE(141); + if (lookahead == '-') ADVANCE(153); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(269); END_STATE(); - case 301: + case 317: ACCEPT_TOKEN(anon_sym_s32); END_STATE(); - case 302: + case 318: ACCEPT_TOKEN(anon_sym_s32); - if (lookahead == '-') ADVANCE(141); + if (lookahead == '-') ADVANCE(153); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(269); END_STATE(); - case 303: + case 319: ACCEPT_TOKEN(anon_sym_s64); END_STATE(); - case 304: + case 320: ACCEPT_TOKEN(anon_sym_s64); - if (lookahead == '-') ADVANCE(141); + if (lookahead == '-') ADVANCE(153); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(269); END_STATE(); - case 305: + case 321: ACCEPT_TOKEN(anon_sym_f32); END_STATE(); - case 306: + case 322: ACCEPT_TOKEN(anon_sym_f32); - if (lookahead == '-') ADVANCE(141); + if (lookahead == '-') ADVANCE(153); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(269); END_STATE(); - case 307: + case 323: ACCEPT_TOKEN(anon_sym_f64); END_STATE(); - case 308: + case 324: ACCEPT_TOKEN(anon_sym_f64); - if (lookahead == '-') ADVANCE(141); + if (lookahead == '-') ADVANCE(153); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(269); END_STATE(); - case 309: + case 325: ACCEPT_TOKEN(anon_sym_float32); END_STATE(); - case 310: + case 326: ACCEPT_TOKEN(anon_sym_float32); - if (lookahead == '-') ADVANCE(141); + if (lookahead == '-') ADVANCE(153); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(269); END_STATE(); - case 311: + case 327: ACCEPT_TOKEN(anon_sym_float64); END_STATE(); - case 312: + case 328: ACCEPT_TOKEN(anon_sym_float64); - if (lookahead == '-') ADVANCE(141); + if (lookahead == '-') ADVANCE(153); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(269); END_STATE(); - case 313: + case 329: ACCEPT_TOKEN(anon_sym_char); END_STATE(); - case 314: + case 330: ACCEPT_TOKEN(anon_sym_char); - if (lookahead == '-') ADVANCE(141); + if (lookahead == '-') ADVANCE(153); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(269); END_STATE(); - case 315: + case 331: ACCEPT_TOKEN(anon_sym_bool); END_STATE(); - case 316: + case 332: ACCEPT_TOKEN(anon_sym_bool); - if (lookahead == '-') ADVANCE(141); + if (lookahead == '-') ADVANCE(153); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(269); END_STATE(); - case 317: + case 333: ACCEPT_TOKEN(anon_sym_string); END_STATE(); - case 318: + case 334: ACCEPT_TOKEN(anon_sym_string); - if (lookahead == '-') ADVANCE(141); + if (lookahead == '-') ADVANCE(153); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(269); END_STATE(); - case 319: + case 335: ACCEPT_TOKEN(anon_sym_tuple); END_STATE(); - case 320: + case 336: ACCEPT_TOKEN(anon_sym_tuple); - if (lookahead == '-') ADVANCE(141); + if (lookahead == '-') ADVANCE(153); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(269); END_STATE(); - case 321: + case 337: ACCEPT_TOKEN(anon_sym_LT); END_STATE(); - case 322: + case 338: ACCEPT_TOKEN(anon_sym_GT); END_STATE(); - case 323: + case 339: ACCEPT_TOKEN(anon_sym_list); END_STATE(); - case 324: + case 340: ACCEPT_TOKEN(anon_sym_list); - if (lookahead == '-') ADVANCE(141); + if (lookahead == '-') ADVANCE(153); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(269); END_STATE(); - case 325: + case 341: ACCEPT_TOKEN(anon_sym_option); END_STATE(); - case 326: + case 342: ACCEPT_TOKEN(anon_sym_option); - if (lookahead == '-') ADVANCE(141); + if (lookahead == '-') ADVANCE(153); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(269); END_STATE(); - case 327: + case 343: ACCEPT_TOKEN(anon_sym_result); END_STATE(); - case 328: + case 344: ACCEPT_TOKEN(anon_sym_result); - if (lookahead == '-') ADVANCE(141); + if (lookahead == '-') ADVANCE(153); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(269); END_STATE(); - case 329: + case 345: ACCEPT_TOKEN(anon_sym__); END_STATE(); - case 330: + case 346: ACCEPT_TOKEN(anon_sym_borrow); END_STATE(); - case 331: + case 347: ACCEPT_TOKEN(anon_sym_borrow); - if (lookahead == '-') ADVANCE(141); + if (lookahead == '-') ADVANCE(153); if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(269); END_STATE(); - case 332: + case 348: ACCEPT_TOKEN(anon_sym_own); END_STATE(); - case 333: + case 349: ACCEPT_TOKEN(anon_sym_own); - if (lookahead == '-') ADVANCE(141); - if (('0' <= lookahead && lookahead <= '9') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(253); + if (lookahead == '-') ADVANCE(153); + if (('0' <= lookahead && lookahead <= '9') || + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(269); + END_STATE(); + case 350: + ACCEPT_TOKEN(anon_sym_SLASH_SLASH_SLASH); + END_STATE(); + case 351: + ACCEPT_TOKEN(anon_sym_SPACE); + if (lookahead == ' ') ADVANCE(351); + if (lookahead == '\\') ADVANCE(354); + if (lookahead == '\t' || + (0x0b <= lookahead && lookahead <= '\r')) ADVANCE(355); + END_STATE(); + case 352: + ACCEPT_TOKEN(sym_docs); + if (lookahead == '\n') ADVANCE(22); + if (lookahead == '*') ADVANCE(352); + if (lookahead == '/') ADVANCE(359); + if (lookahead != 0) ADVANCE(353); + END_STATE(); + case 353: + ACCEPT_TOKEN(sym_docs); + if (lookahead == '\n') ADVANCE(22); + if (lookahead == '*') ADVANCE(352); + if (lookahead != 0) ADVANCE(353); + END_STATE(); + case 354: + ACCEPT_TOKEN(sym_docs); + if (lookahead == '\r') ADVANCE(359); + if (lookahead != 0 && + lookahead != '\n') ADVANCE(359); + END_STATE(); + case 355: + ACCEPT_TOKEN(sym_docs); + if (lookahead == ' ') ADVANCE(351); + if (lookahead == '/') ADVANCE(356); + if (lookahead == '\\') ADVANCE(354); + if (lookahead == '\t' || + (0x0b <= lookahead && lookahead <= '\r')) ADVANCE(355); + if (lookahead != 0 && + (lookahead < '\t' || '\r' < lookahead)) ADVANCE(359); END_STATE(); - case 334: - ACCEPT_TOKEN(sym_comment); + case 356: + ACCEPT_TOKEN(sym_docs); + if (lookahead == '*') ADVANCE(353); + if (lookahead == '/') ADVANCE(358); + if (lookahead != 0 && + lookahead != '\n') ADVANCE(359); + END_STATE(); + case 357: + ACCEPT_TOKEN(sym_docs); + if (lookahead == '/') ADVANCE(356); + if (lookahead == '\\') ADVANCE(354); + if (lookahead == '\t' || + (0x0b <= lookahead && lookahead <= '\r') || + lookahead == ' ') ADVANCE(357); + if (lookahead != 0 && + (lookahead < '\t' || '\r' < lookahead)) ADVANCE(359); END_STATE(); - case 335: - ACCEPT_TOKEN(sym_comment); - if (lookahead == '\r') ADVANCE(337); - if (lookahead == '\\') ADVANCE(335); - if (lookahead != 0) ADVANCE(336); + case 358: + ACCEPT_TOKEN(sym_docs); + if (lookahead == '/') ADVANCE(359); + if (lookahead != 0 && + lookahead != '\n') ADVANCE(359); END_STATE(); - case 336: - ACCEPT_TOKEN(sym_comment); - if (lookahead == '\\') ADVANCE(11); + case 359: + ACCEPT_TOKEN(sym_docs); if (lookahead != 0 && - lookahead != '\n') ADVANCE(336); + lookahead != '\n') ADVANCE(359); END_STATE(); - case 337: + case 360: + ACCEPT_TOKEN(sym_comment); + END_STATE(); + case 361: ACCEPT_TOKEN(sym_comment); - if (lookahead == '\\') ADVANCE(11); - if (lookahead != 0) ADVANCE(336); + if (lookahead != 0 && + lookahead != '\n') ADVANCE(361); END_STATE(); default: return false; @@ -3140,344 +3530,472 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { static const TSLexMode ts_lex_modes[STATE_COUNT] = { [0] = {.lex_state = 0}, - [1] = {.lex_state = 0}, - [2] = {.lex_state = 12}, - [3] = {.lex_state = 12}, - [4] = {.lex_state = 12}, - [5] = {.lex_state = 12}, - [6] = {.lex_state = 12}, - [7] = {.lex_state = 12}, - [8] = {.lex_state = 12}, - [9] = {.lex_state = 12}, - [10] = {.lex_state = 12}, - [11] = {.lex_state = 12}, - [12] = {.lex_state = 12}, - [13] = {.lex_state = 12}, - [14] = {.lex_state = 12}, - [15] = {.lex_state = 12}, - [16] = {.lex_state = 0}, - [17] = {.lex_state = 0}, - [18] = {.lex_state = 0}, - [19] = {.lex_state = 14}, - [20] = {.lex_state = 14}, - [21] = {.lex_state = 14}, - [22] = {.lex_state = 0}, - [23] = {.lex_state = 0}, - [24] = {.lex_state = 0}, - [25] = {.lex_state = 14}, - [26] = {.lex_state = 0}, - [27] = {.lex_state = 0}, - [28] = {.lex_state = 0}, - [29] = {.lex_state = 0}, - [30] = {.lex_state = 0}, - [31] = {.lex_state = 0}, - [32] = {.lex_state = 0}, - [33] = {.lex_state = 0}, - [34] = {.lex_state = 0}, - [35] = {.lex_state = 0}, - [36] = {.lex_state = 0}, - [37] = {.lex_state = 0}, - [38] = {.lex_state = 0}, - [39] = {.lex_state = 0}, - [40] = {.lex_state = 0}, - [41] = {.lex_state = 0}, - [42] = {.lex_state = 0}, - [43] = {.lex_state = 0}, - [44] = {.lex_state = 0}, - [45] = {.lex_state = 0}, - [46] = {.lex_state = 0}, - [47] = {.lex_state = 0}, - [48] = {.lex_state = 0}, - [49] = {.lex_state = 0}, - [50] = {.lex_state = 0}, - [51] = {.lex_state = 0}, - [52] = {.lex_state = 0}, - [53] = {.lex_state = 0}, - [54] = {.lex_state = 0}, - [55] = {.lex_state = 0}, - [56] = {.lex_state = 0}, - [57] = {.lex_state = 0}, - [58] = {.lex_state = 0}, - [59] = {.lex_state = 0}, - [60] = {.lex_state = 0}, - [61] = {.lex_state = 0}, - [62] = {.lex_state = 0}, - [63] = {.lex_state = 0}, - [64] = {.lex_state = 0}, - [65] = {.lex_state = 14}, - [66] = {.lex_state = 14}, - [67] = {.lex_state = 14}, - [68] = {.lex_state = 14}, - [69] = {.lex_state = 14}, - [70] = {.lex_state = 14}, - [71] = {.lex_state = 14}, - [72] = {.lex_state = 14}, - [73] = {.lex_state = 14}, - [74] = {.lex_state = 14}, - [75] = {.lex_state = 14}, - [76] = {.lex_state = 14}, - [77] = {.lex_state = 14}, - [78] = {.lex_state = 14}, - [79] = {.lex_state = 14}, - [80] = {.lex_state = 14}, - [81] = {.lex_state = 14}, - [82] = {.lex_state = 14}, - [83] = {.lex_state = 14}, - [84] = {.lex_state = 14}, - [85] = {.lex_state = 14}, - [86] = {.lex_state = 14}, - [87] = {.lex_state = 14}, - [88] = {.lex_state = 14}, - [89] = {.lex_state = 14}, - [90] = {.lex_state = 14}, - [91] = {.lex_state = 14}, - [92] = {.lex_state = 14}, - [93] = {.lex_state = 14}, - [94] = {.lex_state = 14}, - [95] = {.lex_state = 14}, - [96] = {.lex_state = 0}, - [97] = {.lex_state = 0}, - [98] = {.lex_state = 0}, - [99] = {.lex_state = 0}, - [100] = {.lex_state = 0}, - [101] = {.lex_state = 0}, - [102] = {.lex_state = 0}, + [1] = {.lex_state = 161}, + [2] = {.lex_state = 13}, + [3] = {.lex_state = 13}, + [4] = {.lex_state = 13}, + [5] = {.lex_state = 13}, + [6] = {.lex_state = 13}, + [7] = {.lex_state = 13}, + [8] = {.lex_state = 13}, + [9] = {.lex_state = 13}, + [10] = {.lex_state = 13}, + [11] = {.lex_state = 13}, + [12] = {.lex_state = 13}, + [13] = {.lex_state = 13}, + [14] = {.lex_state = 13}, + [15] = {.lex_state = 13}, + [16] = {.lex_state = 13}, + [17] = {.lex_state = 13}, + [18] = {.lex_state = 13}, + [19] = {.lex_state = 13}, + [20] = {.lex_state = 13}, + [21] = {.lex_state = 13}, + [22] = {.lex_state = 161}, + [23] = {.lex_state = 161}, + [24] = {.lex_state = 161}, + [25] = {.lex_state = 15}, + [26] = {.lex_state = 15}, + [27] = {.lex_state = 15}, + [28] = {.lex_state = 161}, + [29] = {.lex_state = 161}, + [30] = {.lex_state = 161}, + [31] = {.lex_state = 161}, + [32] = {.lex_state = 15}, + [33] = {.lex_state = 15}, + [34] = {.lex_state = 161}, + [35] = {.lex_state = 161}, + [36] = {.lex_state = 161}, + [37] = {.lex_state = 161}, + [38] = {.lex_state = 161}, + [39] = {.lex_state = 161}, + [40] = {.lex_state = 161}, + [41] = {.lex_state = 161}, + [42] = {.lex_state = 161}, + [43] = {.lex_state = 161}, + [44] = {.lex_state = 16}, + [45] = {.lex_state = 161}, + [46] = {.lex_state = 161}, + [47] = {.lex_state = 161}, + [48] = {.lex_state = 161}, + [49] = {.lex_state = 161}, + [50] = {.lex_state = 161}, + [51] = {.lex_state = 161}, + [52] = {.lex_state = 161}, + [53] = {.lex_state = 16}, + [54] = {.lex_state = 16}, + [55] = {.lex_state = 161}, + [56] = {.lex_state = 161}, + [57] = {.lex_state = 161}, + [58] = {.lex_state = 161}, + [59] = {.lex_state = 161}, + [60] = {.lex_state = 161}, + [61] = {.lex_state = 161}, + [62] = {.lex_state = 161}, + [63] = {.lex_state = 161}, + [64] = {.lex_state = 161}, + [65] = {.lex_state = 161}, + [66] = {.lex_state = 161}, + [67] = {.lex_state = 161}, + [68] = {.lex_state = 161}, + [69] = {.lex_state = 161}, + [70] = {.lex_state = 161}, + [71] = {.lex_state = 161}, + [72] = {.lex_state = 161}, + [73] = {.lex_state = 16}, + [74] = {.lex_state = 161}, + [75] = {.lex_state = 161}, + [76] = {.lex_state = 16}, + [77] = {.lex_state = 161}, + [78] = {.lex_state = 161}, + [79] = {.lex_state = 161}, + [80] = {.lex_state = 161}, + [81] = {.lex_state = 161}, + [82] = {.lex_state = 161}, + [83] = {.lex_state = 161}, + [84] = {.lex_state = 161}, + [85] = {.lex_state = 161}, + [86] = {.lex_state = 161}, + [87] = {.lex_state = 161}, + [88] = {.lex_state = 161}, + [89] = {.lex_state = 161}, + [90] = {.lex_state = 17}, + [91] = {.lex_state = 17}, + [92] = {.lex_state = 15}, + [93] = {.lex_state = 15}, + [94] = {.lex_state = 15}, + [95] = {.lex_state = 15}, + [96] = {.lex_state = 15}, + [97] = {.lex_state = 15}, + [98] = {.lex_state = 15}, + [99] = {.lex_state = 15}, + [100] = {.lex_state = 15}, + [101] = {.lex_state = 15}, + [102] = {.lex_state = 15}, [103] = {.lex_state = 15}, [104] = {.lex_state = 15}, - [105] = {.lex_state = 0}, + [105] = {.lex_state = 15}, [106] = {.lex_state = 15}, - [107] = {.lex_state = 0}, + [107] = {.lex_state = 161}, [108] = {.lex_state = 15}, - [109] = {.lex_state = 15}, - [110] = {.lex_state = 0}, - [111] = {.lex_state = 0}, - [112] = {.lex_state = 0}, - [113] = {.lex_state = 0}, - [114] = {.lex_state = 16}, - [115] = {.lex_state = 16}, - [116] = {.lex_state = 0}, - [117] = {.lex_state = 0}, - [118] = {.lex_state = 0}, - [119] = {.lex_state = 0}, - [120] = {.lex_state = 0}, - [121] = {.lex_state = 0}, - [122] = {.lex_state = 0}, - [123] = {.lex_state = 0}, - [124] = {.lex_state = 0}, - [125] = {.lex_state = 0}, - [126] = {.lex_state = 0}, - [127] = {.lex_state = 0}, - [128] = {.lex_state = 0}, - [129] = {.lex_state = 0}, - [130] = {.lex_state = 0}, - [131] = {.lex_state = 0}, - [132] = {.lex_state = 0}, - [133] = {.lex_state = 13}, - [134] = {.lex_state = 0}, - [135] = {.lex_state = 13}, - [136] = {.lex_state = 0}, + [109] = {.lex_state = 161}, + [110] = {.lex_state = 15}, + [111] = {.lex_state = 15}, + [112] = {.lex_state = 15}, + [113] = {.lex_state = 161}, + [114] = {.lex_state = 15}, + [115] = {.lex_state = 15}, + [116] = {.lex_state = 15}, + [117] = {.lex_state = 15}, + [118] = {.lex_state = 15}, + [119] = {.lex_state = 15}, + [120] = {.lex_state = 15}, + [121] = {.lex_state = 15}, + [122] = {.lex_state = 15}, + [123] = {.lex_state = 15}, + [124] = {.lex_state = 15}, + [125] = {.lex_state = 15}, + [126] = {.lex_state = 15}, + [127] = {.lex_state = 15}, + [128] = {.lex_state = 15}, + [129] = {.lex_state = 15}, + [130] = {.lex_state = 15}, + [131] = {.lex_state = 15}, + [132] = {.lex_state = 15}, + [133] = {.lex_state = 161}, + [134] = {.lex_state = 15}, + [135] = {.lex_state = 14}, + [136] = {.lex_state = 17}, [137] = {.lex_state = 0}, - [138] = {.lex_state = 0}, - [139] = {.lex_state = 0}, - [140] = {.lex_state = 13}, - [141] = {.lex_state = 13}, - [142] = {.lex_state = 0}, - [143] = {.lex_state = 13}, - [144] = {.lex_state = 0}, - [145] = {.lex_state = 13}, - [146] = {.lex_state = 0}, - [147] = {.lex_state = 0}, - [148] = {.lex_state = 13}, - [149] = {.lex_state = 13}, - [150] = {.lex_state = 0}, - [151] = {.lex_state = 13}, - [152] = {.lex_state = 15}, - [153] = {.lex_state = 0}, - [154] = {.lex_state = 0}, - [155] = {.lex_state = 0}, - [156] = {.lex_state = 0}, - [157] = {.lex_state = 13}, - [158] = {.lex_state = 0}, + [138] = {.lex_state = 14}, + [139] = {.lex_state = 17}, + [140] = {.lex_state = 17}, + [141] = {.lex_state = 14}, + [142] = {.lex_state = 14}, + [143] = {.lex_state = 14}, + [144] = {.lex_state = 14}, + [145] = {.lex_state = 14}, + [146] = {.lex_state = 14}, + [147] = {.lex_state = 161}, + [148] = {.lex_state = 14}, + [149] = {.lex_state = 0}, + [150] = {.lex_state = 14}, + [151] = {.lex_state = 14}, + [152] = {.lex_state = 14}, + [153] = {.lex_state = 14}, + [154] = {.lex_state = 14}, + [155] = {.lex_state = 14}, + [156] = {.lex_state = 14}, + [157] = {.lex_state = 14}, + [158] = {.lex_state = 14}, [159] = {.lex_state = 0}, - [160] = {.lex_state = 0}, - [161] = {.lex_state = 13}, - [162] = {.lex_state = 0}, - [163] = {.lex_state = 13}, - [164] = {.lex_state = 0}, - [165] = {.lex_state = 0}, - [166] = {.lex_state = 0}, - [167] = {.lex_state = 0}, - [168] = {.lex_state = 0}, - [169] = {.lex_state = 0}, - [170] = {.lex_state = 13}, - [171] = {.lex_state = 13}, + [160] = {.lex_state = 14}, + [161] = {.lex_state = 14}, + [162] = {.lex_state = 14}, + [163] = {.lex_state = 14}, + [164] = {.lex_state = 14}, + [165] = {.lex_state = 14}, + [166] = {.lex_state = 14}, + [167] = {.lex_state = 14}, + [168] = {.lex_state = 14}, + [169] = {.lex_state = 14}, + [170] = {.lex_state = 16}, + [171] = {.lex_state = 161}, [172] = {.lex_state = 0}, [173] = {.lex_state = 0}, - [174] = {.lex_state = 13}, - [175] = {.lex_state = 15}, - [176] = {.lex_state = 13}, - [177] = {.lex_state = 13}, - [178] = {.lex_state = 13}, - [179] = {.lex_state = 13}, + [174] = {.lex_state = 14}, + [175] = {.lex_state = 14}, + [176] = {.lex_state = 14}, + [177] = {.lex_state = 14}, + [178] = {.lex_state = 14}, + [179] = {.lex_state = 16}, [180] = {.lex_state = 0}, - [181] = {.lex_state = 15}, - [182] = {.lex_state = 0}, - [183] = {.lex_state = 0}, - [184] = {.lex_state = 13}, - [185] = {.lex_state = 13}, - [186] = {.lex_state = 0}, - [187] = {.lex_state = 0}, - [188] = {.lex_state = 0}, - [189] = {.lex_state = 13}, + [181] = {.lex_state = 14}, + [182] = {.lex_state = 161}, + [183] = {.lex_state = 161}, + [184] = {.lex_state = 0}, + [185] = {.lex_state = 161}, + [186] = {.lex_state = 161}, + [187] = {.lex_state = 18}, + [188] = {.lex_state = 161}, + [189] = {.lex_state = 18}, [190] = {.lex_state = 0}, - [191] = {.lex_state = 0}, - [192] = {.lex_state = 0}, - [193] = {.lex_state = 0}, - [194] = {.lex_state = 13}, - [195] = {.lex_state = 13}, - [196] = {.lex_state = 0}, - [197] = {.lex_state = 13}, - [198] = {.lex_state = 0}, - [199] = {.lex_state = 13}, - [200] = {.lex_state = 15}, - [201] = {.lex_state = 13}, - [202] = {.lex_state = 13}, - [203] = {.lex_state = 13}, + [191] = {.lex_state = 161}, + [192] = {.lex_state = 161}, + [193] = {.lex_state = 161}, + [194] = {.lex_state = 161}, + [195] = {.lex_state = 161}, + [196] = {.lex_state = 161}, + [197] = {.lex_state = 0}, + [198] = {.lex_state = 161}, + [199] = {.lex_state = 14}, + [200] = {.lex_state = 161}, + [201] = {.lex_state = 161}, + [202] = {.lex_state = 161}, + [203] = {.lex_state = 14}, [204] = {.lex_state = 0}, - [205] = {.lex_state = 0}, - [206] = {.lex_state = 0}, - [207] = {.lex_state = 13}, - [208] = {.lex_state = 13}, + [205] = {.lex_state = 14}, + [206] = {.lex_state = 161}, + [207] = {.lex_state = 0}, + [208] = {.lex_state = 14}, [209] = {.lex_state = 0}, [210] = {.lex_state = 0}, - [211] = {.lex_state = 13}, - [212] = {.lex_state = 13}, - [213] = {.lex_state = 13}, + [211] = {.lex_state = 0}, + [212] = {.lex_state = 14}, + [213] = {.lex_state = 0}, [214] = {.lex_state = 0}, - [215] = {.lex_state = 13}, - [216] = {.lex_state = 13}, + [215] = {.lex_state = 0}, + [216] = {.lex_state = 0}, [217] = {.lex_state = 0}, [218] = {.lex_state = 0}, - [219] = {.lex_state = 0}, - [220] = {.lex_state = 13}, - [221] = {.lex_state = 13}, - [222] = {.lex_state = 13}, + [219] = {.lex_state = 16}, + [220] = {.lex_state = 16}, + [221] = {.lex_state = 0}, + [222] = {.lex_state = 16}, [223] = {.lex_state = 0}, - [224] = {.lex_state = 0}, - [225] = {.lex_state = 13}, - [226] = {.lex_state = 13}, - [227] = {.lex_state = 0}, + [224] = {.lex_state = 16}, + [225] = {.lex_state = 0}, + [226] = {.lex_state = 16}, + [227] = {.lex_state = 16}, [228] = {.lex_state = 0}, - [229] = {.lex_state = 13}, - [230] = {.lex_state = 13}, + [229] = {.lex_state = 16}, + [230] = {.lex_state = 0}, [231] = {.lex_state = 0}, - [232] = {.lex_state = 0}, + [232] = {.lex_state = 14}, [233] = {.lex_state = 0}, - [234] = {.lex_state = 0}, + [234] = {.lex_state = 14}, [235] = {.lex_state = 0}, - [236] = {.lex_state = 0}, + [236] = {.lex_state = 14}, [237] = {.lex_state = 0}, [238] = {.lex_state = 0}, [239] = {.lex_state = 0}, [240] = {.lex_state = 0}, [241] = {.lex_state = 0}, [242] = {.lex_state = 0}, - [243] = {.lex_state = 13}, + [243] = {.lex_state = 0}, [244] = {.lex_state = 0}, [245] = {.lex_state = 0}, [246] = {.lex_state = 0}, - [247] = {.lex_state = 13}, - [248] = {.lex_state = 13}, - [249] = {.lex_state = 0}, - [250] = {.lex_state = 0}, - [251] = {.lex_state = 0}, - [252] = {.lex_state = 0}, - [253] = {.lex_state = 13}, - [254] = {.lex_state = 0}, - [255] = {.lex_state = 0}, - [256] = {.lex_state = 13}, - [257] = {.lex_state = 13}, - [258] = {.lex_state = 13}, - [259] = {.lex_state = 0}, - [260] = {.lex_state = 0}, + [247] = {.lex_state = 0}, + [248] = {.lex_state = 0}, + [249] = {.lex_state = 16}, + [250] = {.lex_state = 16}, + [251] = {.lex_state = 16}, + [252] = {.lex_state = 14}, + [253] = {.lex_state = 0}, + [254] = {.lex_state = 14}, + [255] = {.lex_state = 14}, + [256] = {.lex_state = 14}, + [257] = {.lex_state = 0}, + [258] = {.lex_state = 0}, + [259] = {.lex_state = 14}, + [260] = {.lex_state = 14}, [261] = {.lex_state = 0}, - [262] = {.lex_state = 13}, - [263] = {.lex_state = 0}, + [262] = {.lex_state = 0}, + [263] = {.lex_state = 14}, [264] = {.lex_state = 0}, - [265] = {.lex_state = 0}, - [266] = {.lex_state = 0}, + [265] = {.lex_state = 14}, + [266] = {.lex_state = 14}, [267] = {.lex_state = 0}, [268] = {.lex_state = 0}, [269] = {.lex_state = 0}, [270] = {.lex_state = 0}, [271] = {.lex_state = 0}, - [272] = {.lex_state = 13}, - [273] = {.lex_state = 13}, - [274] = {.lex_state = 13}, - [275] = {.lex_state = 13}, - [276] = {.lex_state = 13}, - [277] = {.lex_state = 13}, + [272] = {.lex_state = 0}, + [273] = {.lex_state = 0}, + [274] = {.lex_state = 0}, + [275] = {.lex_state = 0}, + [276] = {.lex_state = 0}, + [277] = {.lex_state = 0}, [278] = {.lex_state = 0}, [279] = {.lex_state = 0}, [280] = {.lex_state = 0}, [281] = {.lex_state = 0}, [282] = {.lex_state = 0}, - [283] = {.lex_state = 0}, + [283] = {.lex_state = 14}, [284] = {.lex_state = 0}, [285] = {.lex_state = 0}, - [286] = {.lex_state = 13}, - [287] = {.lex_state = 13}, + [286] = {.lex_state = 0}, + [287] = {.lex_state = 0}, [288] = {.lex_state = 0}, - [289] = {.lex_state = 13}, + [289] = {.lex_state = 355}, [290] = {.lex_state = 0}, [291] = {.lex_state = 0}, [292] = {.lex_state = 0}, - [293] = {.lex_state = 0}, - [294] = {.lex_state = 0}, + [293] = {.lex_state = 355}, + [294] = {.lex_state = 355}, [295] = {.lex_state = 0}, - [296] = {.lex_state = 0}, - [297] = {.lex_state = 13}, + [296] = {.lex_state = 14}, + [297] = {.lex_state = 0}, [298] = {.lex_state = 0}, - [299] = {.lex_state = 13}, - [300] = {.lex_state = 0}, - [301] = {.lex_state = 13}, + [299] = {.lex_state = 0}, + [300] = {.lex_state = 14}, + [301] = {.lex_state = 0}, [302] = {.lex_state = 0}, [303] = {.lex_state = 0}, [304] = {.lex_state = 0}, [305] = {.lex_state = 0}, - [306] = {.lex_state = 13}, + [306] = {.lex_state = 0}, [307] = {.lex_state = 0}, [308] = {.lex_state = 0}, [309] = {.lex_state = 0}, [310] = {.lex_state = 0}, [311] = {.lex_state = 0}, [312] = {.lex_state = 0}, - [313] = {.lex_state = 13}, + [313] = {.lex_state = 0}, [314] = {.lex_state = 0}, [315] = {.lex_state = 0}, [316] = {.lex_state = 0}, [317] = {.lex_state = 0}, - [318] = {.lex_state = 0}, - [319] = {.lex_state = 13}, + [318] = {.lex_state = 14}, + [319] = {.lex_state = 0}, [320] = {.lex_state = 0}, - [321] = {.lex_state = 13}, - [322] = {.lex_state = 0}, + [321] = {.lex_state = 0}, + [322] = {.lex_state = 355}, [323] = {.lex_state = 0}, - [324] = {.lex_state = 0}, + [324] = {.lex_state = 14}, [325] = {.lex_state = 0}, [326] = {.lex_state = 0}, - [327] = {.lex_state = 13}, - [328] = {.lex_state = 13}, - [329] = {.lex_state = 13}, - [330] = {.lex_state = 13}, + [327] = {.lex_state = 14}, + [328] = {.lex_state = 14}, + [329] = {.lex_state = 14}, + [330] = {.lex_state = 14}, [331] = {.lex_state = 0}, [332] = {.lex_state = 0}, [333] = {.lex_state = 0}, [334] = {.lex_state = 0}, - [335] = {.lex_state = 13}, + [335] = {.lex_state = 0}, [336] = {.lex_state = 0}, [337] = {.lex_state = 0}, [338] = {.lex_state = 0}, + [339] = {.lex_state = 14}, + [340] = {.lex_state = 14}, + [341] = {.lex_state = 0}, + [342] = {.lex_state = 0}, + [343] = {.lex_state = 0}, + [344] = {.lex_state = 0}, + [345] = {.lex_state = 0}, + [346] = {.lex_state = 0}, + [347] = {.lex_state = 0}, + [348] = {.lex_state = 0}, + [349] = {.lex_state = 0}, + [350] = {.lex_state = 0}, + [351] = {.lex_state = 0}, + [352] = {.lex_state = 14}, + [353] = {.lex_state = 0}, + [354] = {.lex_state = 0}, + [355] = {.lex_state = 0}, + [356] = {.lex_state = 0}, + [357] = {.lex_state = 0}, + [358] = {.lex_state = 0}, + [359] = {.lex_state = 0}, + [360] = {.lex_state = 0}, + [361] = {.lex_state = 0}, + [362] = {.lex_state = 0}, + [363] = {.lex_state = 0}, + [364] = {.lex_state = 0}, + [365] = {.lex_state = 14}, + [366] = {.lex_state = 14}, + [367] = {.lex_state = 14}, + [368] = {.lex_state = 14}, + [369] = {.lex_state = 14}, + [370] = {.lex_state = 14}, + [371] = {.lex_state = 0}, + [372] = {.lex_state = 0}, + [373] = {.lex_state = 0}, + [374] = {.lex_state = 0}, + [375] = {.lex_state = 0}, + [376] = {.lex_state = 0}, + [377] = {.lex_state = 0}, + [378] = {.lex_state = 0}, + [379] = {.lex_state = 0}, + [380] = {.lex_state = 14}, + [381] = {.lex_state = 14}, + [382] = {.lex_state = 14}, + [383] = {.lex_state = 14}, + [384] = {.lex_state = 14}, + [385] = {.lex_state = 14}, + [386] = {.lex_state = 14}, + [387] = {.lex_state = 0}, + [388] = {.lex_state = 0}, + [389] = {.lex_state = 0}, + [390] = {.lex_state = 0}, + [391] = {.lex_state = 0}, + [392] = {.lex_state = 0}, + [393] = {.lex_state = 14}, + [394] = {.lex_state = 0}, + [395] = {.lex_state = 0}, + [396] = {.lex_state = 0}, + [397] = {.lex_state = 0}, + [398] = {.lex_state = 0}, + [399] = {.lex_state = 14}, + [400] = {.lex_state = 0}, + [401] = {.lex_state = 14}, + [402] = {.lex_state = 0}, + [403] = {.lex_state = 0}, + [404] = {.lex_state = 14}, + [405] = {.lex_state = 0}, + [406] = {.lex_state = 357}, + [407] = {.lex_state = 14}, + [408] = {.lex_state = 0}, + [409] = {.lex_state = 14}, + [410] = {.lex_state = 0}, + [411] = {.lex_state = 0}, + [412] = {.lex_state = 14}, + [413] = {.lex_state = 14}, + [414] = {.lex_state = 14}, + [415] = {.lex_state = 14}, + [416] = {.lex_state = 0}, + [417] = {.lex_state = 357}, + [418] = {.lex_state = 0}, + [419] = {.lex_state = 0}, + [420] = {.lex_state = 0}, + [421] = {.lex_state = 0}, + [422] = {.lex_state = 0}, + [423] = {.lex_state = 0}, + [424] = {.lex_state = 0}, + [425] = {.lex_state = 0}, + [426] = {.lex_state = 0}, + [427] = {.lex_state = 0}, + [428] = {.lex_state = 0}, + [429] = {.lex_state = 0}, + [430] = {.lex_state = 0}, + [431] = {.lex_state = 0}, + [432] = {.lex_state = 0}, + [433] = {.lex_state = 0}, + [434] = {.lex_state = 0}, + [435] = {.lex_state = 0}, + [436] = {.lex_state = 0}, + [437] = {.lex_state = 0}, + [438] = {.lex_state = 0}, + [439] = {.lex_state = 0}, + [440] = {.lex_state = 0}, + [441] = {.lex_state = 0}, + [442] = {.lex_state = 0}, + [443] = {.lex_state = 14}, + [444] = {.lex_state = 0}, + [445] = {.lex_state = 357}, + [446] = {.lex_state = 0}, + [447] = {.lex_state = 357}, + [448] = {.lex_state = 14}, + [449] = {.lex_state = 14}, + [450] = {.lex_state = 14}, + [451] = {.lex_state = 14}, + [452] = {.lex_state = 14}, + [453] = {.lex_state = 14}, + [454] = {.lex_state = 14}, + [455] = {.lex_state = 14}, + [456] = {.lex_state = 14}, + [457] = {.lex_state = 0}, + [458] = {.lex_state = 0}, + [459] = {.lex_state = 0}, + [460] = {.lex_state = 0}, + [461] = {.lex_state = 0}, + [462] = {.lex_state = 14}, + [463] = {.lex_state = 14}, + [464] = {.lex_state = 0}, + [465] = {.lex_state = 0}, + [466] = {.lex_state = 0}, }; static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { @@ -3541,17 +4059,21 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_comment] = ACTIONS(3), }, [1] = { - [sym_source_file] = STATE(296), - [sym_package_decl] = STATE(98), - [sym_toplevel_use_item] = STATE(96), - [sym_world_item] = STATE(96), - [sym_interface_item] = STATE(96), - [aux_sym_source_file_repeat1] = STATE(96), + [sym_source_file] = STATE(441), + [sym_package_decl] = STATE(74), + [sym_toplevel_use_item] = STATE(36), + [sym_world_item] = STATE(36), + [sym_interface_item] = STATE(36), + [sym_attribute] = STATE(147), + [sym_doc_comment] = STATE(107), + [aux_sym_source_file_repeat1] = STATE(36), + [aux_sym_package_decl_repeat1] = STATE(147), [ts_builtin_sym_end] = ACTIONS(5), [anon_sym_package] = ACTIONS(7), [anon_sym_use] = ACTIONS(9), [anon_sym_world] = ACTIONS(11), [anon_sym_interface] = ACTIONS(13), + [anon_sym_SLASH_SLASH_SLASH] = ACTIONS(15), [sym_comment] = ACTIONS(3), }, }; @@ -3560,36 +4082,36 @@ static const uint16_t ts_small_parse_table[] = { [0] = 14, ACTIONS(3), 1, sym_comment, - ACTIONS(15), 1, + ACTIONS(17), 1, sym_id, - ACTIONS(19), 1, - anon_sym_tuple, ACTIONS(21), 1, - anon_sym_GT, + anon_sym_tuple, ACTIONS(23), 1, - anon_sym_list, + anon_sym_GT, ACTIONS(25), 1, - anon_sym_option, + anon_sym_list, ACTIONS(27), 1, - anon_sym_result, + anon_sym_option, ACTIONS(29), 1, - anon_sym_borrow, + anon_sym_result, ACTIONS(31), 1, + anon_sym_borrow, + ACTIONS(33), 1, anon_sym_own, - STATE(192), 1, + STATE(258), 1, sym_ty, - STATE(326), 1, + STATE(388), 1, sym_tuple_list, - STATE(111), 2, + STATE(211), 2, sym__borrow_handle, sym__owned_handle, - STATE(110), 5, + STATE(217), 5, sym_tuple, sym_list, sym_option, sym_result, sym_handle, - ACTIONS(17), 15, + ACTIONS(19), 15, anon_sym_u8, anon_sym_u16, anon_sym_u32, @@ -3608,34 +4130,34 @@ static const uint16_t ts_small_parse_table[] = { [62] = 13, ACTIONS(3), 1, sym_comment, - ACTIONS(15), 1, + ACTIONS(17), 1, sym_id, - ACTIONS(19), 1, + ACTIONS(21), 1, anon_sym_tuple, - ACTIONS(23), 1, - anon_sym_list, ACTIONS(25), 1, - anon_sym_option, + anon_sym_list, ACTIONS(27), 1, - anon_sym_result, + anon_sym_option, ACTIONS(29), 1, - anon_sym_borrow, + anon_sym_result, ACTIONS(31), 1, - anon_sym_own, + anon_sym_borrow, ACTIONS(33), 1, - anon_sym_LPAREN, - STATE(304), 1, + anon_sym_own, + ACTIONS(35), 1, + anon_sym__, + STATE(287), 1, sym_ty, - STATE(111), 2, + STATE(211), 2, sym__borrow_handle, sym__owned_handle, - STATE(110), 5, + STATE(217), 5, sym_tuple, sym_list, sym_option, sym_result, sym_handle, - ACTIONS(17), 15, + ACTIONS(19), 15, anon_sym_u8, anon_sym_u16, anon_sym_u32, @@ -3654,34 +4176,34 @@ static const uint16_t ts_small_parse_table[] = { [121] = 13, ACTIONS(3), 1, sym_comment, - ACTIONS(15), 1, + ACTIONS(17), 1, sym_id, - ACTIONS(19), 1, + ACTIONS(21), 1, anon_sym_tuple, - ACTIONS(23), 1, - anon_sym_list, ACTIONS(25), 1, - anon_sym_option, + anon_sym_list, ACTIONS(27), 1, - anon_sym_result, + anon_sym_option, ACTIONS(29), 1, - anon_sym_borrow, + anon_sym_result, ACTIONS(31), 1, + anon_sym_borrow, + ACTIONS(33), 1, anon_sym_own, - ACTIONS(35), 1, + ACTIONS(37), 1, anon_sym_GT, - STATE(259), 1, + STATE(341), 1, sym_ty, - STATE(111), 2, + STATE(211), 2, sym__borrow_handle, sym__owned_handle, - STATE(110), 5, + STATE(217), 5, sym_tuple, sym_list, sym_option, sym_result, sym_handle, - ACTIONS(17), 15, + ACTIONS(19), 15, anon_sym_u8, anon_sym_u16, anon_sym_u32, @@ -3700,34 +4222,34 @@ static const uint16_t ts_small_parse_table[] = { [180] = 13, ACTIONS(3), 1, sym_comment, - ACTIONS(15), 1, + ACTIONS(17), 1, sym_id, - ACTIONS(19), 1, + ACTIONS(21), 1, anon_sym_tuple, - ACTIONS(23), 1, - anon_sym_list, ACTIONS(25), 1, - anon_sym_option, + anon_sym_list, ACTIONS(27), 1, - anon_sym_result, + anon_sym_option, ACTIONS(29), 1, - anon_sym_borrow, + anon_sym_result, ACTIONS(31), 1, + anon_sym_borrow, + ACTIONS(33), 1, anon_sym_own, - ACTIONS(37), 1, - anon_sym_GT, - STATE(259), 1, + ACTIONS(39), 1, + anon_sym_LPAREN, + STATE(426), 1, sym_ty, - STATE(111), 2, + STATE(211), 2, sym__borrow_handle, sym__owned_handle, - STATE(110), 5, + STATE(217), 5, sym_tuple, sym_list, sym_option, sym_result, sym_handle, - ACTIONS(17), 15, + ACTIONS(19), 15, anon_sym_u8, anon_sym_u16, anon_sym_u32, @@ -3746,34 +4268,34 @@ static const uint16_t ts_small_parse_table[] = { [239] = 13, ACTIONS(3), 1, sym_comment, - ACTIONS(15), 1, + ACTIONS(17), 1, sym_id, - ACTIONS(19), 1, + ACTIONS(21), 1, anon_sym_tuple, - ACTIONS(23), 1, - anon_sym_list, ACTIONS(25), 1, - anon_sym_option, + anon_sym_list, ACTIONS(27), 1, - anon_sym_result, + anon_sym_option, ACTIONS(29), 1, - anon_sym_borrow, + anon_sym_result, ACTIONS(31), 1, + anon_sym_borrow, + ACTIONS(33), 1, anon_sym_own, - ACTIONS(39), 1, - anon_sym__, - STATE(214), 1, + ACTIONS(41), 1, + anon_sym_GT, + STATE(341), 1, sym_ty, - STATE(111), 2, + STATE(211), 2, sym__borrow_handle, sym__owned_handle, - STATE(110), 5, + STATE(217), 5, sym_tuple, sym_list, sym_option, sym_result, sym_handle, - ACTIONS(17), 15, + ACTIONS(19), 15, anon_sym_u8, anon_sym_u16, anon_sym_u32, @@ -3792,32 +4314,32 @@ static const uint16_t ts_small_parse_table[] = { [298] = 12, ACTIONS(3), 1, sym_comment, - ACTIONS(15), 1, + ACTIONS(17), 1, sym_id, - ACTIONS(19), 1, + ACTIONS(21), 1, anon_sym_tuple, - ACTIONS(23), 1, - anon_sym_list, ACTIONS(25), 1, - anon_sym_option, + anon_sym_list, ACTIONS(27), 1, - anon_sym_result, + anon_sym_option, ACTIONS(29), 1, - anon_sym_borrow, + anon_sym_result, ACTIONS(31), 1, + anon_sym_borrow, + ACTIONS(33), 1, anon_sym_own, - STATE(317), 1, + STATE(403), 1, sym_ty, - STATE(111), 2, + STATE(211), 2, sym__borrow_handle, sym__owned_handle, - STATE(110), 5, + STATE(217), 5, sym_tuple, sym_list, sym_option, sym_result, sym_handle, - ACTIONS(17), 15, + ACTIONS(19), 15, anon_sym_u8, anon_sym_u16, anon_sym_u32, @@ -3836,32 +4358,32 @@ static const uint16_t ts_small_parse_table[] = { [354] = 12, ACTIONS(3), 1, sym_comment, - ACTIONS(15), 1, + ACTIONS(17), 1, sym_id, - ACTIONS(19), 1, + ACTIONS(21), 1, anon_sym_tuple, - ACTIONS(23), 1, - anon_sym_list, ACTIONS(25), 1, - anon_sym_option, + anon_sym_list, ACTIONS(27), 1, - anon_sym_result, + anon_sym_option, ACTIONS(29), 1, - anon_sym_borrow, + anon_sym_result, ACTIONS(31), 1, + anon_sym_borrow, + ACTIONS(33), 1, anon_sym_own, - STATE(217), 1, + STATE(420), 1, sym_ty, - STATE(111), 2, + STATE(211), 2, sym__borrow_handle, sym__owned_handle, - STATE(110), 5, + STATE(217), 5, sym_tuple, sym_list, sym_option, sym_result, sym_handle, - ACTIONS(17), 15, + ACTIONS(19), 15, anon_sym_u8, anon_sym_u16, anon_sym_u32, @@ -3880,32 +4402,32 @@ static const uint16_t ts_small_parse_table[] = { [410] = 12, ACTIONS(3), 1, sym_comment, - ACTIONS(15), 1, + ACTIONS(17), 1, sym_id, - ACTIONS(19), 1, + ACTIONS(21), 1, anon_sym_tuple, - ACTIONS(23), 1, - anon_sym_list, ACTIONS(25), 1, - anon_sym_option, + anon_sym_list, ACTIONS(27), 1, - anon_sym_result, + anon_sym_option, ACTIONS(29), 1, - anon_sym_borrow, + anon_sym_result, ACTIONS(31), 1, + anon_sym_borrow, + ACTIONS(33), 1, anon_sym_own, - STATE(305), 1, + STATE(341), 1, sym_ty, - STATE(111), 2, + STATE(211), 2, sym__borrow_handle, sym__owned_handle, - STATE(110), 5, + STATE(217), 5, sym_tuple, sym_list, sym_option, sym_result, sym_handle, - ACTIONS(17), 15, + ACTIONS(19), 15, anon_sym_u8, anon_sym_u16, anon_sym_u32, @@ -3924,32 +4446,32 @@ static const uint16_t ts_small_parse_table[] = { [466] = 12, ACTIONS(3), 1, sym_comment, - ACTIONS(15), 1, + ACTIONS(17), 1, sym_id, - ACTIONS(19), 1, + ACTIONS(21), 1, anon_sym_tuple, - ACTIONS(23), 1, - anon_sym_list, ACTIONS(25), 1, - anon_sym_option, + anon_sym_list, ACTIONS(27), 1, - anon_sym_result, + anon_sym_option, ACTIONS(29), 1, - anon_sym_borrow, + anon_sym_result, ACTIONS(31), 1, + anon_sym_borrow, + ACTIONS(33), 1, anon_sym_own, - STATE(325), 1, + STATE(442), 1, sym_ty, - STATE(111), 2, + STATE(211), 2, sym__borrow_handle, sym__owned_handle, - STATE(110), 5, + STATE(217), 5, sym_tuple, sym_list, sym_option, sym_result, sym_handle, - ACTIONS(17), 15, + ACTIONS(19), 15, anon_sym_u8, anon_sym_u16, anon_sym_u32, @@ -3968,32 +4490,32 @@ static const uint16_t ts_small_parse_table[] = { [522] = 12, ACTIONS(3), 1, sym_comment, - ACTIONS(15), 1, + ACTIONS(17), 1, sym_id, - ACTIONS(19), 1, + ACTIONS(21), 1, anon_sym_tuple, - ACTIONS(23), 1, - anon_sym_list, ACTIONS(25), 1, - anon_sym_option, + anon_sym_list, ACTIONS(27), 1, - anon_sym_result, + anon_sym_option, ACTIONS(29), 1, - anon_sym_borrow, + anon_sym_result, ACTIONS(31), 1, + anon_sym_borrow, + ACTIONS(33), 1, anon_sym_own, - STATE(251), 1, + STATE(349), 1, sym_ty, - STATE(111), 2, + STATE(211), 2, sym__borrow_handle, sym__owned_handle, - STATE(110), 5, + STATE(217), 5, sym_tuple, sym_list, sym_option, sym_result, sym_handle, - ACTIONS(17), 15, + ACTIONS(19), 15, anon_sym_u8, anon_sym_u16, anon_sym_u32, @@ -4012,32 +4534,32 @@ static const uint16_t ts_small_parse_table[] = { [578] = 12, ACTIONS(3), 1, sym_comment, - ACTIONS(15), 1, + ACTIONS(17), 1, sym_id, - ACTIONS(19), 1, + ACTIONS(21), 1, anon_sym_tuple, - ACTIONS(23), 1, - anon_sym_list, ACTIONS(25), 1, - anon_sym_option, + anon_sym_list, ACTIONS(27), 1, - anon_sym_result, + anon_sym_option, ACTIONS(29), 1, - anon_sym_borrow, + anon_sym_result, ACTIONS(31), 1, + anon_sym_borrow, + ACTIONS(33), 1, anon_sym_own, - STATE(308), 1, + STATE(438), 1, sym_ty, - STATE(111), 2, + STATE(211), 2, sym__borrow_handle, sym__owned_handle, - STATE(110), 5, + STATE(217), 5, sym_tuple, sym_list, sym_option, sym_result, sym_handle, - ACTIONS(17), 15, + ACTIONS(19), 15, anon_sym_u8, anon_sym_u16, anon_sym_u32, @@ -4056,32 +4578,32 @@ static const uint16_t ts_small_parse_table[] = { [634] = 12, ACTIONS(3), 1, sym_comment, - ACTIONS(15), 1, + ACTIONS(17), 1, sym_id, - ACTIONS(19), 1, + ACTIONS(21), 1, anon_sym_tuple, - ACTIONS(23), 1, - anon_sym_list, ACTIONS(25), 1, - anon_sym_option, + anon_sym_list, ACTIONS(27), 1, - anon_sym_result, + anon_sym_option, ACTIONS(29), 1, - anon_sym_borrow, + anon_sym_result, ACTIONS(31), 1, + anon_sym_borrow, + ACTIONS(33), 1, anon_sym_own, - STATE(264), 1, + STATE(431), 1, sym_ty, - STATE(111), 2, + STATE(211), 2, sym__borrow_handle, sym__owned_handle, - STATE(110), 5, + STATE(217), 5, sym_tuple, sym_list, sym_option, sym_result, sym_handle, - ACTIONS(17), 15, + ACTIONS(19), 15, anon_sym_u8, anon_sym_u16, anon_sym_u32, @@ -4100,32 +4622,32 @@ static const uint16_t ts_small_parse_table[] = { [690] = 12, ACTIONS(3), 1, sym_comment, - ACTIONS(15), 1, + ACTIONS(17), 1, sym_id, - ACTIONS(19), 1, + ACTIONS(21), 1, anon_sym_tuple, - ACTIONS(23), 1, - anon_sym_list, ACTIONS(25), 1, - anon_sym_option, + anon_sym_list, ACTIONS(27), 1, - anon_sym_result, + anon_sym_option, ACTIONS(29), 1, - anon_sym_borrow, + anon_sym_result, ACTIONS(31), 1, + anon_sym_borrow, + ACTIONS(33), 1, anon_sym_own, - STATE(259), 1, + STATE(290), 1, sym_ty, - STATE(111), 2, + STATE(211), 2, sym__borrow_handle, sym__owned_handle, - STATE(110), 5, + STATE(217), 5, sym_tuple, sym_list, sym_option, sym_result, sym_handle, - ACTIONS(17), 15, + ACTIONS(19), 15, anon_sym_u8, anon_sym_u16, anon_sym_u32, @@ -4144,32 +4666,32 @@ static const uint16_t ts_small_parse_table[] = { [746] = 12, ACTIONS(3), 1, sym_comment, - ACTIONS(15), 1, + ACTIONS(17), 1, sym_id, - ACTIONS(19), 1, + ACTIONS(21), 1, anon_sym_tuple, - ACTIONS(23), 1, - anon_sym_list, ACTIONS(25), 1, - anon_sym_option, + anon_sym_list, ACTIONS(27), 1, - anon_sym_result, + anon_sym_option, ACTIONS(29), 1, - anon_sym_borrow, + anon_sym_result, ACTIONS(31), 1, + anon_sym_borrow, + ACTIONS(33), 1, anon_sym_own, - STATE(324), 1, + STATE(358), 1, sym_ty, - STATE(111), 2, + STATE(211), 2, sym__borrow_handle, sym__owned_handle, - STATE(110), 5, + STATE(217), 5, sym_tuple, sym_list, sym_option, sym_result, sym_handle, - ACTIONS(17), 15, + ACTIONS(19), 15, anon_sym_u8, anon_sym_u16, anon_sym_u32, @@ -4185,280 +4707,568 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_char, anon_sym_bool, anon_sym_string, - [802] = 19, + [802] = 12, ACTIONS(3), 1, sym_comment, - ACTIONS(41), 1, - anon_sym_use, - ACTIONS(44), 1, - anon_sym_RBRACE, - ACTIONS(46), 1, - anon_sym_export, - ACTIONS(49), 1, - anon_sym_import, - ACTIONS(52), 1, - anon_sym_include, - ACTIONS(55), 1, - anon_sym_type, - ACTIONS(58), 1, - anon_sym_record, - ACTIONS(61), 1, - anon_sym_flags, - ACTIONS(64), 1, - anon_sym_variant, - ACTIONS(67), 1, - anon_sym_enum, - ACTIONS(70), 1, - anon_sym_resource, - STATE(52), 1, - sym_export_item, - STATE(53), 1, - sym_import_item, - STATE(54), 1, - sym_include_item, - STATE(55), 1, - sym_typedef_item, - STATE(56), 1, - sym_use_item, - STATE(16), 2, - sym_world_items, - aux_sym_world_body_repeat1, - STATE(57), 6, - sym_type_item, - sym_record_item, - sym_flags_items, - sym_variant_items, - sym_enum_items, - sym_resource_item, - [866] = 19, + ACTIONS(17), 1, + sym_id, + ACTIONS(21), 1, + anon_sym_tuple, + ACTIONS(25), 1, + anon_sym_list, + ACTIONS(27), 1, + anon_sym_option, + ACTIONS(29), 1, + anon_sym_result, + ACTIONS(31), 1, + anon_sym_borrow, + ACTIONS(33), 1, + anon_sym_own, + STATE(387), 1, + sym_ty, + STATE(211), 2, + sym__borrow_handle, + sym__owned_handle, + STATE(217), 5, + sym_tuple, + sym_list, + sym_option, + sym_result, + sym_handle, + ACTIONS(19), 15, + anon_sym_u8, + anon_sym_u16, + anon_sym_u32, + anon_sym_u64, + anon_sym_s8, + anon_sym_s16, + anon_sym_s32, + anon_sym_s64, + anon_sym_f32, + anon_sym_f64, + anon_sym_float32, + anon_sym_float64, + anon_sym_char, + anon_sym_bool, + anon_sym_string, + [858] = 12, ACTIONS(3), 1, sym_comment, - ACTIONS(73), 1, - anon_sym_use, - ACTIONS(75), 1, - anon_sym_RBRACE, - ACTIONS(77), 1, - anon_sym_export, - ACTIONS(79), 1, - anon_sym_import, - ACTIONS(81), 1, - anon_sym_include, - ACTIONS(83), 1, - anon_sym_type, - ACTIONS(85), 1, - anon_sym_record, - ACTIONS(87), 1, - anon_sym_flags, - ACTIONS(89), 1, - anon_sym_variant, - ACTIONS(91), 1, - anon_sym_enum, - ACTIONS(93), 1, - anon_sym_resource, - STATE(52), 1, - sym_export_item, - STATE(53), 1, - sym_import_item, - STATE(54), 1, - sym_include_item, - STATE(55), 1, - sym_typedef_item, - STATE(56), 1, - sym_use_item, - STATE(16), 2, - sym_world_items, - aux_sym_world_body_repeat1, - STATE(57), 6, - sym_type_item, - sym_record_item, - sym_flags_items, - sym_variant_items, - sym_enum_items, - sym_resource_item, - [930] = 19, + ACTIONS(17), 1, + sym_id, + ACTIONS(21), 1, + anon_sym_tuple, + ACTIONS(25), 1, + anon_sym_list, + ACTIONS(27), 1, + anon_sym_option, + ACTIONS(29), 1, + anon_sym_result, + ACTIONS(31), 1, + anon_sym_borrow, + ACTIONS(33), 1, + anon_sym_own, + STATE(357), 1, + sym_ty, + STATE(211), 2, + sym__borrow_handle, + sym__owned_handle, + STATE(217), 5, + sym_tuple, + sym_list, + sym_option, + sym_result, + sym_handle, + ACTIONS(19), 15, + anon_sym_u8, + anon_sym_u16, + anon_sym_u32, + anon_sym_u64, + anon_sym_s8, + anon_sym_s16, + anon_sym_s32, + anon_sym_s64, + anon_sym_f32, + anon_sym_f64, + anon_sym_float32, + anon_sym_float64, + anon_sym_char, + anon_sym_bool, + anon_sym_string, + [914] = 12, ACTIONS(3), 1, sym_comment, - ACTIONS(73), 1, + ACTIONS(17), 1, + sym_id, + ACTIONS(21), 1, + anon_sym_tuple, + ACTIONS(25), 1, + anon_sym_list, + ACTIONS(27), 1, + anon_sym_option, + ACTIONS(29), 1, + anon_sym_result, + ACTIONS(31), 1, + anon_sym_borrow, + ACTIONS(33), 1, + anon_sym_own, + STATE(333), 1, + sym_ty, + STATE(211), 2, + sym__borrow_handle, + sym__owned_handle, + STATE(217), 5, + sym_tuple, + sym_list, + sym_option, + sym_result, + sym_handle, + ACTIONS(19), 15, + anon_sym_u8, + anon_sym_u16, + anon_sym_u32, + anon_sym_u64, + anon_sym_s8, + anon_sym_s16, + anon_sym_s32, + anon_sym_s64, + anon_sym_f32, + anon_sym_f64, + anon_sym_float32, + anon_sym_float64, + anon_sym_char, + anon_sym_bool, + anon_sym_string, + [970] = 12, + ACTIONS(3), 1, + sym_comment, + ACTIONS(17), 1, + sym_id, + ACTIONS(21), 1, + anon_sym_tuple, + ACTIONS(25), 1, + anon_sym_list, + ACTIONS(27), 1, + anon_sym_option, + ACTIONS(29), 1, + anon_sym_result, + ACTIONS(31), 1, + anon_sym_borrow, + ACTIONS(33), 1, + anon_sym_own, + STATE(423), 1, + sym_ty, + STATE(211), 2, + sym__borrow_handle, + sym__owned_handle, + STATE(217), 5, + sym_tuple, + sym_list, + sym_option, + sym_result, + sym_handle, + ACTIONS(19), 15, + anon_sym_u8, + anon_sym_u16, + anon_sym_u32, + anon_sym_u64, + anon_sym_s8, + anon_sym_s16, + anon_sym_s32, + anon_sym_s64, + anon_sym_f32, + anon_sym_f64, + anon_sym_float32, + anon_sym_float64, + anon_sym_char, + anon_sym_bool, + anon_sym_string, + [1026] = 12, + ACTIONS(3), 1, + sym_comment, + ACTIONS(17), 1, + sym_id, + ACTIONS(21), 1, + anon_sym_tuple, + ACTIONS(25), 1, + anon_sym_list, + ACTIONS(27), 1, + anon_sym_option, + ACTIONS(29), 1, + anon_sym_result, + ACTIONS(31), 1, + anon_sym_borrow, + ACTIONS(33), 1, + anon_sym_own, + STATE(398), 1, + sym_ty, + STATE(211), 2, + sym__borrow_handle, + sym__owned_handle, + STATE(217), 5, + sym_tuple, + sym_list, + sym_option, + sym_result, + sym_handle, + ACTIONS(19), 15, + anon_sym_u8, + anon_sym_u16, + anon_sym_u32, + anon_sym_u64, + anon_sym_s8, + anon_sym_s16, + anon_sym_s32, + anon_sym_s64, + anon_sym_f32, + anon_sym_f64, + anon_sym_float32, + anon_sym_float64, + anon_sym_char, + anon_sym_bool, + anon_sym_string, + [1082] = 12, + ACTIONS(3), 1, + sym_comment, + ACTIONS(17), 1, + sym_id, + ACTIONS(21), 1, + anon_sym_tuple, + ACTIONS(25), 1, + anon_sym_list, + ACTIONS(27), 1, + anon_sym_option, + ACTIONS(29), 1, + anon_sym_result, + ACTIONS(31), 1, + anon_sym_borrow, + ACTIONS(33), 1, + anon_sym_own, + STATE(323), 1, + sym_ty, + STATE(211), 2, + sym__borrow_handle, + sym__owned_handle, + STATE(217), 5, + sym_tuple, + sym_list, + sym_option, + sym_result, + sym_handle, + ACTIONS(19), 15, + anon_sym_u8, + anon_sym_u16, + anon_sym_u32, + anon_sym_u64, + anon_sym_s8, + anon_sym_s16, + anon_sym_s32, + anon_sym_s64, + anon_sym_f32, + anon_sym_f64, + anon_sym_float32, + anon_sym_float64, + anon_sym_char, + anon_sym_bool, + anon_sym_string, + [1138] = 22, + ACTIONS(3), 1, + sym_comment, + ACTIONS(15), 1, + anon_sym_SLASH_SLASH_SLASH, + ACTIONS(43), 1, anon_sym_use, - ACTIONS(77), 1, + ACTIONS(45), 1, + anon_sym_RBRACE, + ACTIONS(47), 1, anon_sym_export, - ACTIONS(79), 1, + ACTIONS(49), 1, anon_sym_import, - ACTIONS(81), 1, + ACTIONS(51), 1, anon_sym_include, - ACTIONS(83), 1, + ACTIONS(53), 1, anon_sym_type, - ACTIONS(85), 1, + ACTIONS(55), 1, anon_sym_record, - ACTIONS(87), 1, + ACTIONS(57), 1, + anon_sym_flags, + ACTIONS(59), 1, + anon_sym_variant, + ACTIONS(61), 1, + anon_sym_enum, + ACTIONS(63), 1, + anon_sym_resource, + STATE(60), 1, + sym_export_item, + STATE(61), 1, + sym_import_item, + STATE(62), 1, + sym_include_item, + STATE(65), 1, + sym_typedef_item, + STATE(72), 1, + sym_use_item, + STATE(107), 1, + sym_doc_comment, + STATE(23), 2, + sym_world_items, + aux_sym_world_body_repeat1, + STATE(133), 2, + sym_attribute, + aux_sym_package_decl_repeat1, + STATE(64), 6, + sym_type_item, + sym_record_item, + sym_flags_items, + sym_variant_items, + sym_enum_items, + sym_resource_item, + [1212] = 22, + ACTIONS(3), 1, + sym_comment, + ACTIONS(15), 1, + anon_sym_SLASH_SLASH_SLASH, + ACTIONS(43), 1, + anon_sym_use, + ACTIONS(47), 1, + anon_sym_export, + ACTIONS(49), 1, + anon_sym_import, + ACTIONS(51), 1, + anon_sym_include, + ACTIONS(53), 1, + anon_sym_type, + ACTIONS(55), 1, + anon_sym_record, + ACTIONS(57), 1, anon_sym_flags, - ACTIONS(89), 1, + ACTIONS(59), 1, anon_sym_variant, - ACTIONS(91), 1, + ACTIONS(61), 1, anon_sym_enum, - ACTIONS(93), 1, + ACTIONS(63), 1, anon_sym_resource, - ACTIONS(95), 1, + ACTIONS(65), 1, anon_sym_RBRACE, - STATE(52), 1, + STATE(60), 1, sym_export_item, - STATE(53), 1, + STATE(61), 1, sym_import_item, - STATE(54), 1, + STATE(62), 1, sym_include_item, - STATE(55), 1, + STATE(65), 1, sym_typedef_item, - STATE(56), 1, + STATE(72), 1, sym_use_item, - STATE(17), 2, + STATE(107), 1, + sym_doc_comment, + STATE(24), 2, sym_world_items, aux_sym_world_body_repeat1, - STATE(57), 6, + STATE(133), 2, + sym_attribute, + aux_sym_package_decl_repeat1, + STATE(64), 6, sym_type_item, sym_record_item, sym_flags_items, sym_variant_items, sym_enum_items, sym_resource_item, - [994] = 15, + [1286] = 22, ACTIONS(3), 1, sym_comment, - ACTIONS(97), 1, + ACTIONS(67), 1, anon_sym_use, - ACTIONS(99), 1, - sym_id, - ACTIONS(101), 1, + ACTIONS(70), 1, anon_sym_RBRACE, - ACTIONS(103), 1, + ACTIONS(72), 1, + anon_sym_export, + ACTIONS(75), 1, + anon_sym_import, + ACTIONS(78), 1, + anon_sym_include, + ACTIONS(81), 1, anon_sym_type, - ACTIONS(105), 1, + ACTIONS(84), 1, anon_sym_record, - ACTIONS(107), 1, + ACTIONS(87), 1, anon_sym_flags, - ACTIONS(109), 1, + ACTIONS(90), 1, anon_sym_variant, - ACTIONS(111), 1, + ACTIONS(93), 1, anon_sym_enum, - ACTIONS(113), 1, + ACTIONS(96), 1, anon_sym_resource, - STATE(91), 1, - sym_use_item, - STATE(92), 1, - sym_func_item, - STATE(93), 1, + ACTIONS(99), 1, + anon_sym_SLASH_SLASH_SLASH, + STATE(60), 1, + sym_export_item, + STATE(61), 1, + sym_import_item, + STATE(62), 1, + sym_include_item, + STATE(65), 1, sym_typedef_item, - STATE(21), 2, - sym_interface_items, - aux_sym_interface_body_repeat1, - STATE(67), 6, + STATE(72), 1, + sym_use_item, + STATE(107), 1, + sym_doc_comment, + STATE(24), 2, + sym_world_items, + aux_sym_world_body_repeat1, + STATE(133), 2, + sym_attribute, + aux_sym_package_decl_repeat1, + STATE(64), 6, sym_type_item, sym_record_item, sym_flags_items, sym_variant_items, sym_enum_items, sym_resource_item, - [1046] = 15, + [1360] = 18, ACTIONS(3), 1, sym_comment, - ACTIONS(115), 1, + ACTIONS(102), 1, anon_sym_use, - ACTIONS(118), 1, + ACTIONS(105), 1, sym_id, - ACTIONS(121), 1, + ACTIONS(108), 1, anon_sym_RBRACE, - ACTIONS(123), 1, + ACTIONS(110), 1, anon_sym_type, - ACTIONS(126), 1, + ACTIONS(113), 1, anon_sym_record, - ACTIONS(129), 1, + ACTIONS(116), 1, anon_sym_flags, - ACTIONS(132), 1, + ACTIONS(119), 1, anon_sym_variant, - ACTIONS(135), 1, + ACTIONS(122), 1, anon_sym_enum, - ACTIONS(138), 1, + ACTIONS(125), 1, anon_sym_resource, - STATE(91), 1, + ACTIONS(128), 1, + anon_sym_SLASH_SLASH_SLASH, + STATE(127), 1, sym_use_item, - STATE(92), 1, + STATE(128), 1, sym_func_item, - STATE(93), 1, + STATE(130), 1, sym_typedef_item, - STATE(20), 2, + STATE(140), 1, + sym_doc_comment, + STATE(25), 2, sym_interface_items, aux_sym_interface_body_repeat1, - STATE(67), 6, + STATE(91), 2, + sym_attribute, + aux_sym_package_decl_repeat1, + STATE(106), 6, sym_type_item, sym_record_item, sym_flags_items, sym_variant_items, sym_enum_items, sym_resource_item, - [1098] = 15, + [1422] = 18, ACTIONS(3), 1, sym_comment, - ACTIONS(97), 1, + ACTIONS(131), 1, anon_sym_use, - ACTIONS(99), 1, + ACTIONS(133), 1, sym_id, - ACTIONS(103), 1, + ACTIONS(135), 1, + anon_sym_RBRACE, + ACTIONS(137), 1, anon_sym_type, - ACTIONS(105), 1, + ACTIONS(139), 1, anon_sym_record, - ACTIONS(107), 1, + ACTIONS(141), 1, anon_sym_flags, - ACTIONS(109), 1, + ACTIONS(143), 1, anon_sym_variant, - ACTIONS(111), 1, + ACTIONS(145), 1, anon_sym_enum, - ACTIONS(113), 1, + ACTIONS(147), 1, anon_sym_resource, - ACTIONS(141), 1, - anon_sym_RBRACE, - STATE(91), 1, + ACTIONS(149), 1, + anon_sym_SLASH_SLASH_SLASH, + STATE(127), 1, sym_use_item, - STATE(92), 1, + STATE(128), 1, sym_func_item, - STATE(93), 1, + STATE(130), 1, sym_typedef_item, - STATE(20), 2, + STATE(140), 1, + sym_doc_comment, + STATE(27), 2, sym_interface_items, aux_sym_interface_body_repeat1, - STATE(67), 6, + STATE(91), 2, + sym_attribute, + aux_sym_package_decl_repeat1, + STATE(106), 6, sym_type_item, sym_record_item, sym_flags_items, sym_variant_items, sym_enum_items, sym_resource_item, - [1150] = 2, + [1484] = 18, ACTIONS(3), 1, sym_comment, - ACTIONS(143), 14, - ts_builtin_sym_end, + ACTIONS(131), 1, anon_sym_use, - anon_sym_world, - anon_sym_RBRACE, - anon_sym_export, - anon_sym_import, - anon_sym_interface, - anon_sym_include, + ACTIONS(133), 1, + sym_id, + ACTIONS(137), 1, anon_sym_type, + ACTIONS(139), 1, anon_sym_record, + ACTIONS(141), 1, anon_sym_flags, + ACTIONS(143), 1, anon_sym_variant, + ACTIONS(145), 1, anon_sym_enum, + ACTIONS(147), 1, anon_sym_resource, - [1170] = 5, - ACTIONS(3), 1, - sym_comment, - ACTIONS(145), 1, - anon_sym_SEMI, ACTIONS(149), 1, - anon_sym_LBRACE, - STATE(44), 1, - sym_resource_body, - ACTIONS(147), 11, + anon_sym_SLASH_SLASH_SLASH, + ACTIONS(151), 1, + anon_sym_RBRACE, + STATE(127), 1, + sym_use_item, + STATE(128), 1, + sym_func_item, + STATE(130), 1, + sym_typedef_item, + STATE(140), 1, + sym_doc_comment, + STATE(25), 2, + sym_interface_items, + aux_sym_interface_body_repeat1, + STATE(91), 2, + sym_attribute, + aux_sym_package_decl_repeat1, + STATE(106), 6, + sym_type_item, + sym_record_item, + sym_flags_items, + sym_variant_items, + sym_enum_items, + sym_resource_item, + [1546] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(153), 1, + anon_sym_SEMI, + ACTIONS(157), 1, + anon_sym_LBRACE, + STATE(38), 1, + sym_resource_body, + ACTIONS(155), 12, anon_sym_use, anon_sym_RBRACE, anon_sym_export, @@ -4470,10 +5280,11 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_variant, anon_sym_enum, anon_sym_resource, - [1196] = 2, + anon_sym_SLASH_SLASH_SLASH, + [1573] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(151), 14, + ACTIONS(159), 15, ts_builtin_sym_end, anon_sym_use, anon_sym_world, @@ -4488,34 +5299,40 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_variant, anon_sym_enum, anon_sym_resource, - [1216] = 6, + anon_sym_SLASH_SLASH_SLASH, + [1594] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(147), 1, - anon_sym_RBRACE, - ACTIONS(153), 1, - anon_sym_SEMI, ACTIONS(157), 1, anon_sym_LBRACE, - STATE(95), 1, + ACTIONS(161), 1, + anon_sym_SEMI, + STATE(75), 1, sym_resource_body, - ACTIONS(155), 8, + ACTIONS(163), 12, anon_sym_use, - sym_id, + anon_sym_RBRACE, + anon_sym_export, + anon_sym_import, + anon_sym_include, anon_sym_type, anon_sym_record, anon_sym_flags, anon_sym_variant, anon_sym_enum, anon_sym_resource, - [1242] = 2, + anon_sym_SLASH_SLASH_SLASH, + [1621] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(159), 11, + ACTIONS(165), 15, + ts_builtin_sym_end, anon_sym_use, + anon_sym_world, anon_sym_RBRACE, anon_sym_export, anon_sym_import, + anon_sym_interface, anon_sym_include, anon_sym_type, anon_sym_record, @@ -4523,25 +5340,73 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_variant, anon_sym_enum, anon_sym_resource, - [1259] = 2, + anon_sym_SLASH_SLASH_SLASH, + [1642] = 6, ACTIONS(3), 1, sym_comment, - ACTIONS(161), 11, + ACTIONS(167), 1, + anon_sym_SEMI, + ACTIONS(171), 1, + anon_sym_LBRACE, + STATE(100), 1, + sym_resource_body, + ACTIONS(163), 2, + anon_sym_RBRACE, + anon_sym_SLASH_SLASH_SLASH, + ACTIONS(169), 8, anon_sym_use, + sym_id, + anon_sym_type, + anon_sym_record, + anon_sym_flags, + anon_sym_variant, + anon_sym_enum, + anon_sym_resource, + [1669] = 6, + ACTIONS(3), 1, + sym_comment, + ACTIONS(171), 1, + anon_sym_LBRACE, + ACTIONS(173), 1, + anon_sym_SEMI, + STATE(93), 1, + sym_resource_body, + ACTIONS(155), 2, anon_sym_RBRACE, - anon_sym_export, - anon_sym_import, - anon_sym_include, + anon_sym_SLASH_SLASH_SLASH, + ACTIONS(175), 8, + anon_sym_use, + sym_id, + anon_sym_type, + anon_sym_record, + anon_sym_flags, + anon_sym_variant, + anon_sym_enum, + anon_sym_resource, + [1696] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(179), 1, + anon_sym_SLASH_SLASH_SLASH, + STATE(107), 1, + sym_doc_comment, + STATE(34), 2, + sym_attribute, + aux_sym_package_decl_repeat1, + ACTIONS(177), 9, + anon_sym_package, + anon_sym_world, + anon_sym_interface, anon_sym_type, anon_sym_record, anon_sym_flags, anon_sym_variant, anon_sym_enum, anon_sym_resource, - [1276] = 2, + [1721] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(163), 11, + ACTIONS(182), 12, anon_sym_use, anon_sym_RBRACE, anon_sym_export, @@ -4553,10 +5418,34 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_variant, anon_sym_enum, anon_sym_resource, - [1293] = 2, + anon_sym_SLASH_SLASH_SLASH, + [1739] = 9, + ACTIONS(3), 1, + sym_comment, + ACTIONS(9), 1, + anon_sym_use, + ACTIONS(11), 1, + anon_sym_world, + ACTIONS(13), 1, + anon_sym_interface, + ACTIONS(15), 1, + anon_sym_SLASH_SLASH_SLASH, + ACTIONS(184), 1, + ts_builtin_sym_end, + STATE(107), 1, + sym_doc_comment, + STATE(171), 2, + sym_attribute, + aux_sym_package_decl_repeat1, + STATE(68), 4, + sym_toplevel_use_item, + sym_world_item, + sym_interface_item, + aux_sym_source_file_repeat1, + [1771] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(165), 11, + ACTIONS(186), 12, anon_sym_use, anon_sym_RBRACE, anon_sym_export, @@ -4568,10 +5457,11 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_variant, anon_sym_enum, anon_sym_resource, - [1310] = 2, + anon_sym_SLASH_SLASH_SLASH, + [1789] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(167), 11, + ACTIONS(188), 12, anon_sym_use, anon_sym_RBRACE, anon_sym_export, @@ -4583,10 +5473,11 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_variant, anon_sym_enum, anon_sym_resource, - [1327] = 2, + anon_sym_SLASH_SLASH_SLASH, + [1807] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(169), 11, + ACTIONS(190), 12, anon_sym_use, anon_sym_RBRACE, anon_sym_export, @@ -4598,10 +5489,11 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_variant, anon_sym_enum, anon_sym_resource, - [1344] = 2, + anon_sym_SLASH_SLASH_SLASH, + [1825] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(171), 11, + ACTIONS(192), 12, anon_sym_use, anon_sym_RBRACE, anon_sym_export, @@ -4613,10 +5505,11 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_variant, anon_sym_enum, anon_sym_resource, - [1361] = 2, + anon_sym_SLASH_SLASH_SLASH, + [1843] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(173), 11, + ACTIONS(194), 12, anon_sym_use, anon_sym_RBRACE, anon_sym_export, @@ -4628,10 +5521,11 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_variant, anon_sym_enum, anon_sym_resource, - [1378] = 2, + anon_sym_SLASH_SLASH_SLASH, + [1861] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(175), 11, + ACTIONS(196), 12, anon_sym_use, anon_sym_RBRACE, anon_sym_export, @@ -4643,10 +5537,11 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_variant, anon_sym_enum, anon_sym_resource, - [1395] = 2, + anon_sym_SLASH_SLASH_SLASH, + [1879] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(177), 11, + ACTIONS(198), 12, anon_sym_use, anon_sym_RBRACE, anon_sym_export, @@ -4658,10 +5553,34 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_variant, anon_sym_enum, anon_sym_resource, - [1412] = 2, + anon_sym_SLASH_SLASH_SLASH, + [1897] = 9, + ACTIONS(3), 1, + sym_comment, + ACTIONS(200), 1, + sym_id, + ACTIONS(202), 1, + anon_sym_RBRACE, + ACTIONS(204), 1, + anon_sym_constructor, + ACTIONS(206), 1, + anon_sym_SLASH_SLASH_SLASH, + STATE(251), 1, + sym_doc_comment, + STATE(73), 2, + sym_resource_method, + aux_sym_resource_body_repeat1, + STATE(179), 2, + sym_attribute, + aux_sym_package_decl_repeat1, + STATE(227), 3, + sym_func_item, + sym_static_resource_method, + sym_resource_constructor, + [1929] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(179), 11, + ACTIONS(208), 12, anon_sym_use, anon_sym_RBRACE, anon_sym_export, @@ -4673,10 +5592,11 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_variant, anon_sym_enum, anon_sym_resource, - [1429] = 2, + anon_sym_SLASH_SLASH_SLASH, + [1947] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(181), 11, + ACTIONS(210), 12, anon_sym_use, anon_sym_RBRACE, anon_sym_export, @@ -4688,10 +5608,11 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_variant, anon_sym_enum, anon_sym_resource, - [1446] = 2, + anon_sym_SLASH_SLASH_SLASH, + [1965] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(183), 11, + ACTIONS(212), 12, anon_sym_use, anon_sym_RBRACE, anon_sym_export, @@ -4703,10 +5624,11 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_variant, anon_sym_enum, anon_sym_resource, - [1463] = 2, + anon_sym_SLASH_SLASH_SLASH, + [1983] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(185), 11, + ACTIONS(214), 12, anon_sym_use, anon_sym_RBRACE, anon_sym_export, @@ -4718,10 +5640,11 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_variant, anon_sym_enum, anon_sym_resource, - [1480] = 2, + anon_sym_SLASH_SLASH_SLASH, + [2001] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(187), 11, + ACTIONS(216), 12, anon_sym_use, anon_sym_RBRACE, anon_sym_export, @@ -4733,10 +5656,11 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_variant, anon_sym_enum, anon_sym_resource, - [1497] = 2, + anon_sym_SLASH_SLASH_SLASH, + [2019] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(189), 11, + ACTIONS(218), 12, anon_sym_use, anon_sym_RBRACE, anon_sym_export, @@ -4748,10 +5672,11 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_variant, anon_sym_enum, anon_sym_resource, - [1514] = 2, + anon_sym_SLASH_SLASH_SLASH, + [2037] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(191), 11, + ACTIONS(220), 12, anon_sym_use, anon_sym_RBRACE, anon_sym_export, @@ -4763,10 +5688,11 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_variant, anon_sym_enum, anon_sym_resource, - [1531] = 2, + anon_sym_SLASH_SLASH_SLASH, + [2055] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(193), 11, + ACTIONS(222), 12, anon_sym_use, anon_sym_RBRACE, anon_sym_export, @@ -4778,10 +5704,57 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_variant, anon_sym_enum, anon_sym_resource, - [1548] = 2, + anon_sym_SLASH_SLASH_SLASH, + [2073] = 9, + ACTIONS(3), 1, + sym_comment, + ACTIONS(200), 1, + sym_id, + ACTIONS(204), 1, + anon_sym_constructor, + ACTIONS(206), 1, + anon_sym_SLASH_SLASH_SLASH, + ACTIONS(224), 1, + anon_sym_RBRACE, + STATE(251), 1, + sym_doc_comment, + STATE(54), 2, + sym_resource_method, + aux_sym_resource_body_repeat1, + STATE(179), 2, + sym_attribute, + aux_sym_package_decl_repeat1, + STATE(227), 3, + sym_func_item, + sym_static_resource_method, + sym_resource_constructor, + [2105] = 9, + ACTIONS(3), 1, + sym_comment, + ACTIONS(200), 1, + sym_id, + ACTIONS(204), 1, + anon_sym_constructor, + ACTIONS(206), 1, + anon_sym_SLASH_SLASH_SLASH, + ACTIONS(226), 1, + anon_sym_RBRACE, + STATE(251), 1, + sym_doc_comment, + STATE(73), 2, + sym_resource_method, + aux_sym_resource_body_repeat1, + STATE(179), 2, + sym_attribute, + aux_sym_package_decl_repeat1, + STATE(227), 3, + sym_func_item, + sym_static_resource_method, + sym_resource_constructor, + [2137] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(195), 11, + ACTIONS(228), 12, anon_sym_use, anon_sym_RBRACE, anon_sym_export, @@ -4793,10 +5766,11 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_variant, anon_sym_enum, anon_sym_resource, - [1565] = 2, + anon_sym_SLASH_SLASH_SLASH, + [2155] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(197), 11, + ACTIONS(230), 12, anon_sym_use, anon_sym_RBRACE, anon_sym_export, @@ -4808,10 +5782,11 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_variant, anon_sym_enum, anon_sym_resource, - [1582] = 2, + anon_sym_SLASH_SLASH_SLASH, + [2173] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(199), 11, + ACTIONS(232), 12, anon_sym_use, anon_sym_RBRACE, anon_sym_export, @@ -4823,10 +5798,11 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_variant, anon_sym_enum, anon_sym_resource, - [1599] = 2, + anon_sym_SLASH_SLASH_SLASH, + [2191] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(201), 11, + ACTIONS(234), 12, anon_sym_use, anon_sym_RBRACE, anon_sym_export, @@ -4838,10 +5814,34 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_variant, anon_sym_enum, anon_sym_resource, - [1616] = 2, + anon_sym_SLASH_SLASH_SLASH, + [2209] = 9, + ACTIONS(3), 1, + sym_comment, + ACTIONS(9), 1, + anon_sym_use, + ACTIONS(11), 1, + anon_sym_world, + ACTIONS(13), 1, + anon_sym_interface, + ACTIONS(15), 1, + anon_sym_SLASH_SLASH_SLASH, + ACTIONS(236), 1, + ts_builtin_sym_end, + STATE(107), 1, + sym_doc_comment, + STATE(171), 2, + sym_attribute, + aux_sym_package_decl_repeat1, + STATE(68), 4, + sym_toplevel_use_item, + sym_world_item, + sym_interface_item, + aux_sym_source_file_repeat1, + [2241] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(203), 11, + ACTIONS(238), 12, anon_sym_use, anon_sym_RBRACE, anon_sym_export, @@ -4853,10 +5853,11 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_variant, anon_sym_enum, anon_sym_resource, - [1633] = 2, + anon_sym_SLASH_SLASH_SLASH, + [2259] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(205), 11, + ACTIONS(240), 12, anon_sym_use, anon_sym_RBRACE, anon_sym_export, @@ -4868,10 +5869,11 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_variant, anon_sym_enum, anon_sym_resource, - [1650] = 2, + anon_sym_SLASH_SLASH_SLASH, + [2277] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(207), 11, + ACTIONS(242), 12, anon_sym_use, anon_sym_RBRACE, anon_sym_export, @@ -4883,10 +5885,11 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_variant, anon_sym_enum, anon_sym_resource, - [1667] = 2, + anon_sym_SLASH_SLASH_SLASH, + [2295] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(209), 11, + ACTIONS(244), 12, anon_sym_use, anon_sym_RBRACE, anon_sym_export, @@ -4898,10 +5901,11 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_variant, anon_sym_enum, anon_sym_resource, - [1684] = 2, + anon_sym_SLASH_SLASH_SLASH, + [2313] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(211), 11, + ACTIONS(246), 12, anon_sym_use, anon_sym_RBRACE, anon_sym_export, @@ -4913,10 +5917,11 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_variant, anon_sym_enum, anon_sym_resource, - [1701] = 2, + anon_sym_SLASH_SLASH_SLASH, + [2331] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(213), 11, + ACTIONS(248), 12, anon_sym_use, anon_sym_RBRACE, anon_sym_export, @@ -4928,10 +5933,11 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_variant, anon_sym_enum, anon_sym_resource, - [1718] = 2, + anon_sym_SLASH_SLASH_SLASH, + [2349] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(215), 11, + ACTIONS(250), 12, anon_sym_use, anon_sym_RBRACE, anon_sym_export, @@ -4943,10 +5949,11 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_variant, anon_sym_enum, anon_sym_resource, - [1735] = 2, + anon_sym_SLASH_SLASH_SLASH, + [2367] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(217), 11, + ACTIONS(252), 12, anon_sym_use, anon_sym_RBRACE, anon_sym_export, @@ -4958,10 +5965,34 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_variant, anon_sym_enum, anon_sym_resource, - [1752] = 2, + anon_sym_SLASH_SLASH_SLASH, + [2385] = 9, + ACTIONS(3), 1, + sym_comment, + ACTIONS(254), 1, + ts_builtin_sym_end, + ACTIONS(256), 1, + anon_sym_use, + ACTIONS(259), 1, + anon_sym_world, + ACTIONS(262), 1, + anon_sym_interface, + ACTIONS(265), 1, + anon_sym_SLASH_SLASH_SLASH, + STATE(107), 1, + sym_doc_comment, + STATE(171), 2, + sym_attribute, + aux_sym_package_decl_repeat1, + STATE(68), 4, + sym_toplevel_use_item, + sym_world_item, + sym_interface_item, + aux_sym_source_file_repeat1, + [2417] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(219), 11, + ACTIONS(268), 12, anon_sym_use, anon_sym_RBRACE, anon_sym_export, @@ -4973,10 +6004,11 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_variant, anon_sym_enum, anon_sym_resource, - [1769] = 2, + anon_sym_SLASH_SLASH_SLASH, + [2435] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(221), 11, + ACTIONS(270), 12, anon_sym_use, anon_sym_RBRACE, anon_sym_export, @@ -4988,10 +6020,11 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_variant, anon_sym_enum, anon_sym_resource, - [1786] = 2, + anon_sym_SLASH_SLASH_SLASH, + [2453] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(223), 11, + ACTIONS(272), 12, anon_sym_use, anon_sym_RBRACE, anon_sym_export, @@ -5003,10 +6036,11 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_variant, anon_sym_enum, anon_sym_resource, - [1803] = 2, + anon_sym_SLASH_SLASH_SLASH, + [2471] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(225), 11, + ACTIONS(274), 12, anon_sym_use, anon_sym_RBRACE, anon_sym_export, @@ -5018,10 +6052,57 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_variant, anon_sym_enum, anon_sym_resource, - [1820] = 2, + anon_sym_SLASH_SLASH_SLASH, + [2489] = 9, + ACTIONS(3), 1, + sym_comment, + ACTIONS(276), 1, + sym_id, + ACTIONS(279), 1, + anon_sym_RBRACE, + ACTIONS(281), 1, + anon_sym_constructor, + ACTIONS(284), 1, + anon_sym_SLASH_SLASH_SLASH, + STATE(251), 1, + sym_doc_comment, + STATE(73), 2, + sym_resource_method, + aux_sym_resource_body_repeat1, + STATE(179), 2, + sym_attribute, + aux_sym_package_decl_repeat1, + STATE(227), 3, + sym_func_item, + sym_static_resource_method, + sym_resource_constructor, + [2521] = 9, + ACTIONS(3), 1, + sym_comment, + ACTIONS(9), 1, + anon_sym_use, + ACTIONS(11), 1, + anon_sym_world, + ACTIONS(13), 1, + anon_sym_interface, + ACTIONS(15), 1, + anon_sym_SLASH_SLASH_SLASH, + ACTIONS(184), 1, + ts_builtin_sym_end, + STATE(107), 1, + sym_doc_comment, + STATE(171), 2, + sym_attribute, + aux_sym_package_decl_repeat1, + STATE(59), 4, + sym_toplevel_use_item, + sym_world_item, + sym_interface_item, + aux_sym_source_file_repeat1, + [2553] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(227), 11, + ACTIONS(287), 12, anon_sym_use, anon_sym_RBRACE, anon_sym_export, @@ -5033,10 +6114,34 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_variant, anon_sym_enum, anon_sym_resource, - [1837] = 2, + anon_sym_SLASH_SLASH_SLASH, + [2571] = 9, + ACTIONS(3), 1, + sym_comment, + ACTIONS(200), 1, + sym_id, + ACTIONS(204), 1, + anon_sym_constructor, + ACTIONS(206), 1, + anon_sym_SLASH_SLASH_SLASH, + ACTIONS(289), 1, + anon_sym_RBRACE, + STATE(251), 1, + sym_doc_comment, + STATE(44), 2, + sym_resource_method, + aux_sym_resource_body_repeat1, + STATE(179), 2, + sym_attribute, + aux_sym_package_decl_repeat1, + STATE(227), 3, + sym_func_item, + sym_static_resource_method, + sym_resource_constructor, + [2603] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(229), 11, + ACTIONS(291), 12, anon_sym_use, anon_sym_RBRACE, anon_sym_export, @@ -5048,10 +6153,11 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_variant, anon_sym_enum, anon_sym_resource, - [1854] = 2, + anon_sym_SLASH_SLASH_SLASH, + [2621] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(231), 11, + ACTIONS(293), 12, anon_sym_use, anon_sym_RBRACE, anon_sym_export, @@ -5063,10 +6169,11 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_variant, anon_sym_enum, anon_sym_resource, - [1871] = 2, + anon_sym_SLASH_SLASH_SLASH, + [2639] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(233), 11, + ACTIONS(295), 12, anon_sym_use, anon_sym_RBRACE, anon_sym_export, @@ -5078,10 +6185,11 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_variant, anon_sym_enum, anon_sym_resource, - [1888] = 2, + anon_sym_SLASH_SLASH_SLASH, + [2657] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(235), 11, + ACTIONS(297), 12, anon_sym_use, anon_sym_RBRACE, anon_sym_export, @@ -5093,139 +6201,162 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_variant, anon_sym_enum, anon_sym_resource, - [1905] = 3, + anon_sym_SLASH_SLASH_SLASH, + [2675] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(235), 1, - anon_sym_RBRACE, - ACTIONS(237), 8, + ACTIONS(299), 12, anon_sym_use, - sym_id, + anon_sym_RBRACE, + anon_sym_export, + anon_sym_import, + anon_sym_include, anon_sym_type, anon_sym_record, anon_sym_flags, anon_sym_variant, anon_sym_enum, anon_sym_resource, - [1922] = 3, + anon_sym_SLASH_SLASH_SLASH, + [2693] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(209), 1, - anon_sym_RBRACE, - ACTIONS(239), 8, + ACTIONS(301), 12, anon_sym_use, - sym_id, + anon_sym_RBRACE, + anon_sym_export, + anon_sym_import, + anon_sym_include, anon_sym_type, anon_sym_record, anon_sym_flags, anon_sym_variant, anon_sym_enum, anon_sym_resource, - [1939] = 3, + anon_sym_SLASH_SLASH_SLASH, + [2711] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(221), 1, - anon_sym_RBRACE, - ACTIONS(241), 8, + ACTIONS(303), 12, anon_sym_use, - sym_id, + anon_sym_RBRACE, + anon_sym_export, + anon_sym_import, + anon_sym_include, anon_sym_type, anon_sym_record, anon_sym_flags, anon_sym_variant, anon_sym_enum, anon_sym_resource, - [1956] = 3, + anon_sym_SLASH_SLASH_SLASH, + [2729] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(185), 1, - anon_sym_RBRACE, - ACTIONS(243), 8, + ACTIONS(305), 12, anon_sym_use, - sym_id, + anon_sym_RBRACE, + anon_sym_export, + anon_sym_import, + anon_sym_include, anon_sym_type, anon_sym_record, anon_sym_flags, anon_sym_variant, anon_sym_enum, anon_sym_resource, - [1973] = 3, + anon_sym_SLASH_SLASH_SLASH, + [2747] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(247), 1, - anon_sym_RBRACE, - ACTIONS(245), 8, + ACTIONS(307), 12, anon_sym_use, - sym_id, + anon_sym_RBRACE, + anon_sym_export, + anon_sym_import, + anon_sym_include, anon_sym_type, anon_sym_record, anon_sym_flags, anon_sym_variant, anon_sym_enum, anon_sym_resource, - [1990] = 3, + anon_sym_SLASH_SLASH_SLASH, + [2765] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(183), 1, - anon_sym_RBRACE, - ACTIONS(249), 8, + ACTIONS(309), 12, anon_sym_use, - sym_id, + anon_sym_RBRACE, + anon_sym_export, + anon_sym_import, + anon_sym_include, anon_sym_type, anon_sym_record, anon_sym_flags, anon_sym_variant, anon_sym_enum, anon_sym_resource, - [2007] = 3, + anon_sym_SLASH_SLASH_SLASH, + [2783] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(161), 1, - anon_sym_RBRACE, - ACTIONS(251), 8, + ACTIONS(311), 12, anon_sym_use, - sym_id, + anon_sym_RBRACE, + anon_sym_export, + anon_sym_import, + anon_sym_include, anon_sym_type, anon_sym_record, anon_sym_flags, anon_sym_variant, anon_sym_enum, anon_sym_resource, - [2024] = 3, + anon_sym_SLASH_SLASH_SLASH, + [2801] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(231), 1, - anon_sym_RBRACE, - ACTIONS(253), 8, + ACTIONS(313), 12, anon_sym_use, - sym_id, + anon_sym_RBRACE, + anon_sym_export, + anon_sym_import, + anon_sym_include, anon_sym_type, anon_sym_record, anon_sym_flags, anon_sym_variant, anon_sym_enum, anon_sym_resource, - [2041] = 3, + anon_sym_SLASH_SLASH_SLASH, + [2819] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(181), 1, - anon_sym_RBRACE, - ACTIONS(255), 8, + ACTIONS(315), 12, anon_sym_use, - sym_id, + anon_sym_RBRACE, + anon_sym_export, + anon_sym_import, + anon_sym_include, anon_sym_type, anon_sym_record, anon_sym_flags, anon_sym_variant, anon_sym_enum, anon_sym_resource, - [2058] = 3, + anon_sym_SLASH_SLASH_SLASH, + [2837] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(179), 1, - anon_sym_RBRACE, - ACTIONS(257), 8, - anon_sym_use, + ACTIONS(319), 1, + anon_sym_SLASH_SLASH_SLASH, + STATE(140), 1, + sym_doc_comment, + STATE(90), 2, + sym_attribute, + aux_sym_package_decl_repeat1, + ACTIONS(317), 7, sym_id, anon_sym_type, anon_sym_record, @@ -5233,26 +6364,37 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_variant, anon_sym_enum, anon_sym_resource, - [2075] = 3, + [2860] = 11, ACTIONS(3), 1, sym_comment, - ACTIONS(177), 1, - anon_sym_RBRACE, - ACTIONS(259), 8, - anon_sym_use, + ACTIONS(149), 1, + anon_sym_SLASH_SLASH_SLASH, + ACTIONS(322), 1, sym_id, + ACTIONS(324), 1, anon_sym_type, + ACTIONS(326), 1, anon_sym_record, + ACTIONS(328), 1, anon_sym_flags, + ACTIONS(330), 1, anon_sym_variant, + ACTIONS(332), 1, anon_sym_enum, + ACTIONS(334), 1, anon_sym_resource, - [2092] = 3, + STATE(140), 1, + sym_doc_comment, + STATE(90), 2, + sym_attribute, + aux_sym_package_decl_repeat1, + [2895] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(233), 1, + ACTIONS(270), 2, anon_sym_RBRACE, - ACTIONS(261), 8, + anon_sym_SLASH_SLASH_SLASH, + ACTIONS(336), 8, anon_sym_use, sym_id, anon_sym_type, @@ -5261,12 +6403,13 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_variant, anon_sym_enum, anon_sym_resource, - [2109] = 3, + [2913] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(167), 1, + ACTIONS(188), 2, anon_sym_RBRACE, - ACTIONS(263), 8, + anon_sym_SLASH_SLASH_SLASH, + ACTIONS(338), 8, anon_sym_use, sym_id, anon_sym_type, @@ -5275,12 +6418,13 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_variant, anon_sym_enum, anon_sym_resource, - [2126] = 3, + [2931] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(193), 1, + ACTIONS(198), 2, anon_sym_RBRACE, - ACTIONS(265), 8, + anon_sym_SLASH_SLASH_SLASH, + ACTIONS(340), 8, anon_sym_use, sym_id, anon_sym_type, @@ -5289,12 +6433,13 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_variant, anon_sym_enum, anon_sym_resource, - [2143] = 3, + [2949] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(169), 1, + ACTIONS(208), 2, anon_sym_RBRACE, - ACTIONS(267), 8, + anon_sym_SLASH_SLASH_SLASH, + ACTIONS(342), 8, anon_sym_use, sym_id, anon_sym_type, @@ -5303,12 +6448,13 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_variant, anon_sym_enum, anon_sym_resource, - [2160] = 3, + [2967] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(171), 1, + ACTIONS(212), 2, anon_sym_RBRACE, - ACTIONS(269), 8, + anon_sym_SLASH_SLASH_SLASH, + ACTIONS(344), 8, anon_sym_use, sym_id, anon_sym_type, @@ -5317,12 +6463,13 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_variant, anon_sym_enum, anon_sym_resource, - [2177] = 3, + [2985] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(173), 1, + ACTIONS(214), 2, anon_sym_RBRACE, - ACTIONS(271), 8, + anon_sym_SLASH_SLASH_SLASH, + ACTIONS(346), 8, anon_sym_use, sym_id, anon_sym_type, @@ -5331,12 +6478,13 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_variant, anon_sym_enum, anon_sym_resource, - [2194] = 3, + [3003] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(175), 1, + ACTIONS(218), 2, anon_sym_RBRACE, - ACTIONS(273), 8, + anon_sym_SLASH_SLASH_SLASH, + ACTIONS(348), 8, anon_sym_use, sym_id, anon_sym_type, @@ -5345,12 +6493,13 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_variant, anon_sym_enum, anon_sym_resource, - [2211] = 3, + [3021] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(159), 1, + ACTIONS(222), 2, anon_sym_RBRACE, - ACTIONS(275), 8, + anon_sym_SLASH_SLASH_SLASH, + ACTIONS(350), 8, anon_sym_use, sym_id, anon_sym_type, @@ -5359,12 +6508,13 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_variant, anon_sym_enum, anon_sym_resource, - [2228] = 3, + [3039] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(223), 1, + ACTIONS(287), 2, anon_sym_RBRACE, - ACTIONS(277), 8, + anon_sym_SLASH_SLASH_SLASH, + ACTIONS(352), 8, anon_sym_use, sym_id, anon_sym_type, @@ -5373,12 +6523,13 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_variant, anon_sym_enum, anon_sym_resource, - [2245] = 3, + [3057] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(207), 1, + ACTIONS(291), 2, anon_sym_RBRACE, - ACTIONS(279), 8, + anon_sym_SLASH_SLASH_SLASH, + ACTIONS(354), 8, anon_sym_use, sym_id, anon_sym_type, @@ -5387,12 +6538,13 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_variant, anon_sym_enum, anon_sym_resource, - [2262] = 3, + [3075] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(203), 1, + ACTIONS(293), 2, anon_sym_RBRACE, - ACTIONS(281), 8, + anon_sym_SLASH_SLASH_SLASH, + ACTIONS(356), 8, anon_sym_use, sym_id, anon_sym_type, @@ -5401,12 +6553,13 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_variant, anon_sym_enum, anon_sym_resource, - [2279] = 3, + [3093] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(201), 1, + ACTIONS(295), 2, anon_sym_RBRACE, - ACTIONS(283), 8, + anon_sym_SLASH_SLASH_SLASH, + ACTIONS(358), 8, anon_sym_use, sym_id, anon_sym_type, @@ -5415,12 +6568,13 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_variant, anon_sym_enum, anon_sym_resource, - [2296] = 3, + [3111] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(199), 1, + ACTIONS(297), 2, anon_sym_RBRACE, - ACTIONS(285), 8, + anon_sym_SLASH_SLASH_SLASH, + ACTIONS(360), 8, anon_sym_use, sym_id, anon_sym_type, @@ -5429,12 +6583,13 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_variant, anon_sym_enum, anon_sym_resource, - [2313] = 3, + [3129] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(187), 1, + ACTIONS(299), 2, anon_sym_RBRACE, - ACTIONS(287), 8, + anon_sym_SLASH_SLASH_SLASH, + ACTIONS(362), 8, anon_sym_use, sym_id, anon_sym_type, @@ -5443,12 +6598,13 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_variant, anon_sym_enum, anon_sym_resource, - [2330] = 3, + [3147] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(197), 1, + ACTIONS(246), 2, anon_sym_RBRACE, - ACTIONS(289), 8, + anon_sym_SLASH_SLASH_SLASH, + ACTIONS(364), 8, anon_sym_use, sym_id, anon_sym_type, @@ -5457,26 +6613,27 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_variant, anon_sym_enum, anon_sym_resource, - [2347] = 3, + [3165] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(293), 1, - anon_sym_RBRACE, - ACTIONS(291), 8, - anon_sym_use, - sym_id, + ACTIONS(366), 10, + anon_sym_package, + anon_sym_world, + anon_sym_interface, anon_sym_type, anon_sym_record, anon_sym_flags, anon_sym_variant, anon_sym_enum, anon_sym_resource, - [2364] = 3, + anon_sym_SLASH_SLASH_SLASH, + [3181] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(297), 1, + ACTIONS(370), 2, anon_sym_RBRACE, - ACTIONS(295), 8, + anon_sym_SLASH_SLASH_SLASH, + ACTIONS(368), 8, anon_sym_use, sym_id, anon_sym_type, @@ -5485,12 +6642,27 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_variant, anon_sym_enum, anon_sym_resource, - [2381] = 3, + [3199] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(301), 1, - anon_sym_RBRACE, - ACTIONS(299), 8, + ACTIONS(372), 10, + anon_sym_package, + anon_sym_world, + anon_sym_interface, + anon_sym_type, + anon_sym_record, + anon_sym_flags, + anon_sym_variant, + anon_sym_enum, + anon_sym_resource, + anon_sym_SLASH_SLASH_SLASH, + [3215] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(250), 2, + anon_sym_RBRACE, + anon_sym_SLASH_SLASH_SLASH, + ACTIONS(374), 8, anon_sym_use, sym_id, anon_sym_type, @@ -5499,12 +6671,13 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_variant, anon_sym_enum, anon_sym_resource, - [2398] = 3, + [3233] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(205), 1, + ACTIONS(378), 2, anon_sym_RBRACE, - ACTIONS(303), 8, + anon_sym_SLASH_SLASH_SLASH, + ACTIONS(376), 8, anon_sym_use, sym_id, anon_sym_type, @@ -5513,12 +6686,13 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_variant, anon_sym_enum, anon_sym_resource, - [2415] = 3, + [3251] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(195), 1, + ACTIONS(196), 2, anon_sym_RBRACE, - ACTIONS(305), 8, + anon_sym_SLASH_SLASH_SLASH, + ACTIONS(380), 8, anon_sym_use, sym_id, anon_sym_type, @@ -5527,1833 +6701,3024 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_variant, anon_sym_enum, anon_sym_resource, - [2432] = 6, + [3269] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(9), 1, - anon_sym_use, - ACTIONS(11), 1, + ACTIONS(382), 10, + anon_sym_package, anon_sym_world, - ACTIONS(13), 1, anon_sym_interface, - ACTIONS(307), 1, - ts_builtin_sym_end, - STATE(100), 4, - sym_toplevel_use_item, - sym_world_item, - sym_interface_item, - aux_sym_source_file_repeat1, - [2454] = 6, + anon_sym_type, + anon_sym_record, + anon_sym_flags, + anon_sym_variant, + anon_sym_enum, + anon_sym_resource, + anon_sym_SLASH_SLASH_SLASH, + [3285] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(309), 1, - anon_sym_COLON, - ACTIONS(311), 1, - anon_sym_SLASH, - ACTIONS(313), 1, - anon_sym_AT, - STATE(101), 1, - aux_sym_package_decl_repeat2, - ACTIONS(315), 4, - anon_sym_SEMI, - anon_sym_as, - anon_sym_with, - anon_sym_DOT, - [2476] = 6, + ACTIONS(182), 2, + anon_sym_RBRACE, + anon_sym_SLASH_SLASH_SLASH, + ACTIONS(384), 8, + anon_sym_use, + sym_id, + anon_sym_type, + anon_sym_record, + anon_sym_flags, + anon_sym_variant, + anon_sym_enum, + anon_sym_resource, + [3303] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(232), 2, + anon_sym_RBRACE, + anon_sym_SLASH_SLASH_SLASH, + ACTIONS(386), 8, + anon_sym_use, + sym_id, + anon_sym_type, + anon_sym_record, + anon_sym_flags, + anon_sym_variant, + anon_sym_enum, + anon_sym_resource, + [3321] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(228), 2, + anon_sym_RBRACE, + anon_sym_SLASH_SLASH_SLASH, + ACTIONS(388), 8, + anon_sym_use, + sym_id, + anon_sym_type, + anon_sym_record, + anon_sym_flags, + anon_sym_variant, + anon_sym_enum, + anon_sym_resource, + [3339] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(216), 2, + anon_sym_RBRACE, + anon_sym_SLASH_SLASH_SLASH, + ACTIONS(390), 8, + anon_sym_use, + sym_id, + anon_sym_type, + anon_sym_record, + anon_sym_flags, + anon_sym_variant, + anon_sym_enum, + anon_sym_resource, + [3357] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(210), 2, + anon_sym_RBRACE, + anon_sym_SLASH_SLASH_SLASH, + ACTIONS(392), 8, + anon_sym_use, + sym_id, + anon_sym_type, + anon_sym_record, + anon_sym_flags, + anon_sym_variant, + anon_sym_enum, + anon_sym_resource, + [3375] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(186), 2, + anon_sym_RBRACE, + anon_sym_SLASH_SLASH_SLASH, + ACTIONS(394), 8, + anon_sym_use, + sym_id, + anon_sym_type, + anon_sym_record, + anon_sym_flags, + anon_sym_variant, + anon_sym_enum, + anon_sym_resource, + [3393] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(194), 2, + anon_sym_RBRACE, + anon_sym_SLASH_SLASH_SLASH, + ACTIONS(396), 8, + anon_sym_use, + sym_id, + anon_sym_type, + anon_sym_record, + anon_sym_flags, + anon_sym_variant, + anon_sym_enum, + anon_sym_resource, + [3411] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(244), 2, + anon_sym_RBRACE, + anon_sym_SLASH_SLASH_SLASH, + ACTIONS(398), 8, + anon_sym_use, + sym_id, + anon_sym_type, + anon_sym_record, + anon_sym_flags, + anon_sym_variant, + anon_sym_enum, + anon_sym_resource, + [3429] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(268), 2, + anon_sym_RBRACE, + anon_sym_SLASH_SLASH_SLASH, + ACTIONS(400), 8, + anon_sym_use, + sym_id, + anon_sym_type, + anon_sym_record, + anon_sym_flags, + anon_sym_variant, + anon_sym_enum, + anon_sym_resource, + [3447] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(313), 2, + anon_sym_RBRACE, + anon_sym_SLASH_SLASH_SLASH, + ACTIONS(402), 8, + anon_sym_use, + sym_id, + anon_sym_type, + anon_sym_record, + anon_sym_flags, + anon_sym_variant, + anon_sym_enum, + anon_sym_resource, + [3465] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(311), 2, + anon_sym_RBRACE, + anon_sym_SLASH_SLASH_SLASH, + ACTIONS(404), 8, + anon_sym_use, + sym_id, + anon_sym_type, + anon_sym_record, + anon_sym_flags, + anon_sym_variant, + anon_sym_enum, + anon_sym_resource, + [3483] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(272), 2, + anon_sym_RBRACE, + anon_sym_SLASH_SLASH_SLASH, + ACTIONS(406), 8, + anon_sym_use, + sym_id, + anon_sym_type, + anon_sym_record, + anon_sym_flags, + anon_sym_variant, + anon_sym_enum, + anon_sym_resource, + [3501] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(252), 2, + anon_sym_RBRACE, + anon_sym_SLASH_SLASH_SLASH, + ACTIONS(408), 8, + anon_sym_use, + sym_id, + anon_sym_type, + anon_sym_record, + anon_sym_flags, + anon_sym_variant, + anon_sym_enum, + anon_sym_resource, + [3519] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(412), 2, + anon_sym_RBRACE, + anon_sym_SLASH_SLASH_SLASH, + ACTIONS(410), 8, + anon_sym_use, + sym_id, + anon_sym_type, + anon_sym_record, + anon_sym_flags, + anon_sym_variant, + anon_sym_enum, + anon_sym_resource, + [3537] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(416), 2, + anon_sym_RBRACE, + anon_sym_SLASH_SLASH_SLASH, + ACTIONS(414), 8, + anon_sym_use, + sym_id, + anon_sym_type, + anon_sym_record, + anon_sym_flags, + anon_sym_variant, + anon_sym_enum, + anon_sym_resource, + [3555] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(192), 2, + anon_sym_RBRACE, + anon_sym_SLASH_SLASH_SLASH, + ACTIONS(418), 8, + anon_sym_use, + sym_id, + anon_sym_type, + anon_sym_record, + anon_sym_flags, + anon_sym_variant, + anon_sym_enum, + anon_sym_resource, + [3573] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(422), 2, + anon_sym_RBRACE, + anon_sym_SLASH_SLASH_SLASH, + ACTIONS(420), 8, + anon_sym_use, + sym_id, + anon_sym_type, + anon_sym_record, + anon_sym_flags, + anon_sym_variant, + anon_sym_enum, + anon_sym_resource, + [3591] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(190), 2, + anon_sym_RBRACE, + anon_sym_SLASH_SLASH_SLASH, + ACTIONS(424), 8, + anon_sym_use, + sym_id, + anon_sym_type, + anon_sym_record, + anon_sym_flags, + anon_sym_variant, + anon_sym_enum, + anon_sym_resource, + [3609] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(301), 2, + anon_sym_RBRACE, + anon_sym_SLASH_SLASH_SLASH, + ACTIONS(426), 8, + anon_sym_use, + sym_id, + anon_sym_type, + anon_sym_record, + anon_sym_flags, + anon_sym_variant, + anon_sym_enum, + anon_sym_resource, + [3627] = 10, + ACTIONS(3), 1, + sym_comment, + ACTIONS(15), 1, + anon_sym_SLASH_SLASH_SLASH, + ACTIONS(428), 1, + anon_sym_type, + ACTIONS(430), 1, + anon_sym_record, + ACTIONS(432), 1, + anon_sym_flags, + ACTIONS(434), 1, + anon_sym_variant, + ACTIONS(436), 1, + anon_sym_enum, + ACTIONS(438), 1, + anon_sym_resource, + STATE(107), 1, + sym_doc_comment, + STATE(34), 2, + sym_attribute, + aux_sym_package_decl_repeat1, + [3659] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(220), 2, + anon_sym_RBRACE, + anon_sym_SLASH_SLASH_SLASH, + ACTIONS(440), 8, + anon_sym_use, + sym_id, + anon_sym_type, + anon_sym_record, + anon_sym_flags, + anon_sym_variant, + anon_sym_enum, + anon_sym_resource, + [3677] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(442), 1, + sym_id, + ACTIONS(444), 1, + anon_sym_RPAREN, + ACTIONS(446), 1, + anon_sym_SLASH_SLASH_SLASH, + STATE(248), 1, + sym_named_type, + STATE(329), 1, + sym_doc_comment, + STATE(425), 1, + sym_named_type_list, + STATE(212), 2, + sym_attribute, + aux_sym_package_decl_repeat1, + [3703] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(372), 1, + anon_sym_SLASH_SLASH_SLASH, + ACTIONS(448), 7, + sym_id, + anon_sym_type, + anon_sym_record, + anon_sym_flags, + anon_sym_variant, + anon_sym_enum, + anon_sym_resource, + [3719] = 6, + ACTIONS(3), 1, + sym_comment, + ACTIONS(450), 1, + anon_sym_COLON, + ACTIONS(452), 1, + anon_sym_SLASH, + ACTIONS(454), 1, + anon_sym_AT, + STATE(149), 1, + aux_sym_package_decl_repeat3, + ACTIONS(456), 4, + anon_sym_SEMI, + anon_sym_as, + anon_sym_with, + anon_sym_DOT, + [3741] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(442), 1, + sym_id, + ACTIONS(446), 1, + anon_sym_SLASH_SLASH_SLASH, + ACTIONS(458), 1, + anon_sym_RPAREN, + STATE(248), 1, + sym_named_type, + STATE(329), 1, + sym_doc_comment, + STATE(410), 1, + sym_named_type_list, + STATE(212), 2, + sym_attribute, + aux_sym_package_decl_repeat1, + [3767] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(382), 1, + anon_sym_SLASH_SLASH_SLASH, + ACTIONS(460), 7, + sym_id, + anon_sym_type, + anon_sym_record, + anon_sym_flags, + anon_sym_variant, + anon_sym_enum, + anon_sym_resource, + [3783] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(366), 1, + anon_sym_SLASH_SLASH_SLASH, + ACTIONS(462), 7, + sym_id, + anon_sym_type, + anon_sym_record, + anon_sym_flags, + anon_sym_variant, + anon_sym_enum, + anon_sym_resource, + [3799] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(446), 1, + anon_sym_SLASH_SLASH_SLASH, + ACTIONS(464), 1, + sym_id, + ACTIONS(466), 1, + anon_sym_RBRACE, + STATE(295), 1, + sym_flags_case, + STATE(329), 1, + sym_doc_comment, + STATE(181), 2, + sym_attribute, + aux_sym_package_decl_repeat1, + [3822] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(446), 1, + anon_sym_SLASH_SLASH_SLASH, + ACTIONS(468), 1, + sym_id, + ACTIONS(470), 1, + anon_sym_RBRACE, + STATE(292), 1, + sym_record_field, + STATE(329), 1, + sym_doc_comment, + STATE(208), 2, + sym_attribute, + aux_sym_package_decl_repeat1, + [3845] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(446), 1, + anon_sym_SLASH_SLASH_SLASH, + ACTIONS(464), 1, + sym_id, + ACTIONS(472), 1, + anon_sym_RBRACE, + STATE(295), 1, + sym_flags_case, + STATE(329), 1, + sym_doc_comment, + STATE(181), 2, + sym_attribute, + aux_sym_package_decl_repeat1, + [3868] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(446), 1, + anon_sym_SLASH_SLASH_SLASH, + ACTIONS(468), 1, + sym_id, + ACTIONS(474), 1, + anon_sym_RBRACE, + STATE(292), 1, + sym_record_field, + STATE(329), 1, + sym_doc_comment, + STATE(208), 2, + sym_attribute, + aux_sym_package_decl_repeat1, + [3891] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(446), 1, + anon_sym_SLASH_SLASH_SLASH, + ACTIONS(476), 1, + sym_id, + ACTIONS(478), 1, + anon_sym_RBRACE, + STATE(298), 1, + sym_variant_case, + STATE(329), 1, + sym_doc_comment, + STATE(199), 2, + sym_attribute, + aux_sym_package_decl_repeat1, + [3914] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(446), 1, + anon_sym_SLASH_SLASH_SLASH, + ACTIONS(480), 1, + sym_id, + ACTIONS(482), 1, + anon_sym_RBRACE, + STATE(301), 1, + sym_enum_case, + STATE(329), 1, + sym_doc_comment, + STATE(205), 2, + sym_attribute, + aux_sym_package_decl_repeat1, + [3937] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(15), 1, + anon_sym_SLASH_SLASH_SLASH, + ACTIONS(484), 1, + anon_sym_package, + ACTIONS(486), 1, + anon_sym_world, + ACTIONS(488), 1, + anon_sym_interface, + STATE(107), 1, + sym_doc_comment, + STATE(34), 2, + sym_attribute, + aux_sym_package_decl_repeat1, + [3960] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(442), 1, + sym_id, + ACTIONS(446), 1, + anon_sym_SLASH_SLASH_SLASH, + ACTIONS(490), 1, + anon_sym_RPAREN, + STATE(329), 1, + sym_doc_comment, + STATE(334), 1, + sym_named_type, + STATE(212), 2, + sym_attribute, + aux_sym_package_decl_repeat1, + [3983] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(452), 1, + anon_sym_SLASH, + ACTIONS(492), 1, + anon_sym_AT, + STATE(159), 1, + aux_sym_package_decl_repeat3, + ACTIONS(494), 4, + anon_sym_SEMI, + anon_sym_as, + anon_sym_with, + anon_sym_DOT, + [4002] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(446), 1, + anon_sym_SLASH_SLASH_SLASH, + ACTIONS(476), 1, + sym_id, + ACTIONS(496), 1, + anon_sym_RBRACE, + STATE(298), 1, + sym_variant_case, + STATE(329), 1, + sym_doc_comment, + STATE(199), 2, + sym_attribute, + aux_sym_package_decl_repeat1, + [4025] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(446), 1, + anon_sym_SLASH_SLASH_SLASH, + ACTIONS(464), 1, + sym_id, + ACTIONS(498), 1, + anon_sym_RBRACE, + STATE(295), 1, + sym_flags_case, + STATE(329), 1, + sym_doc_comment, + STATE(181), 2, + sym_attribute, + aux_sym_package_decl_repeat1, + [4048] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(446), 1, + anon_sym_SLASH_SLASH_SLASH, + ACTIONS(480), 1, + sym_id, + ACTIONS(500), 1, + anon_sym_RBRACE, + STATE(301), 1, + sym_enum_case, + STATE(329), 1, + sym_doc_comment, + STATE(205), 2, + sym_attribute, + aux_sym_package_decl_repeat1, + [4071] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(442), 1, + sym_id, + ACTIONS(446), 1, + anon_sym_SLASH_SLASH_SLASH, + ACTIONS(502), 1, + anon_sym_RPAREN, + STATE(329), 1, + sym_doc_comment, + STATE(334), 1, + sym_named_type, + STATE(212), 2, + sym_attribute, + aux_sym_package_decl_repeat1, + [4094] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(446), 1, + anon_sym_SLASH_SLASH_SLASH, + ACTIONS(476), 1, + sym_id, + ACTIONS(504), 1, + anon_sym_RBRACE, + STATE(298), 1, + sym_variant_case, + STATE(329), 1, + sym_doc_comment, + STATE(199), 2, + sym_attribute, + aux_sym_package_decl_repeat1, + [4117] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(446), 1, + anon_sym_SLASH_SLASH_SLASH, + ACTIONS(480), 1, + sym_id, + ACTIONS(506), 1, + anon_sym_RBRACE, + STATE(301), 1, + sym_enum_case, + STATE(329), 1, + sym_doc_comment, + STATE(205), 2, + sym_attribute, + aux_sym_package_decl_repeat1, + [4140] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(446), 1, + anon_sym_SLASH_SLASH_SLASH, + ACTIONS(476), 1, + sym_id, + ACTIONS(508), 1, + anon_sym_RBRACE, + STATE(298), 1, + sym_variant_case, + STATE(329), 1, + sym_doc_comment, + STATE(199), 2, + sym_attribute, + aux_sym_package_decl_repeat1, + [4163] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(446), 1, + anon_sym_SLASH_SLASH_SLASH, + ACTIONS(468), 1, + sym_id, + ACTIONS(510), 1, + anon_sym_RBRACE, + STATE(292), 1, + sym_record_field, + STATE(329), 1, + sym_doc_comment, + STATE(208), 2, + sym_attribute, + aux_sym_package_decl_repeat1, + [4186] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(446), 1, + anon_sym_SLASH_SLASH_SLASH, + ACTIONS(480), 1, + sym_id, + ACTIONS(512), 1, + anon_sym_RBRACE, + STATE(301), 1, + sym_enum_case, + STATE(329), 1, + sym_doc_comment, + STATE(205), 2, + sym_attribute, + aux_sym_package_decl_repeat1, + [4209] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(514), 1, + anon_sym_SLASH, + STATE(159), 1, + aux_sym_package_decl_repeat3, + ACTIONS(517), 5, + anon_sym_AT, + anon_sym_SEMI, + anon_sym_as, + anon_sym_with, + anon_sym_DOT, + [4226] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(446), 1, + anon_sym_SLASH_SLASH_SLASH, + ACTIONS(476), 1, + sym_id, + ACTIONS(519), 1, + anon_sym_RBRACE, + STATE(276), 1, + sym_variant_case, + STATE(329), 1, + sym_doc_comment, + STATE(199), 2, + sym_attribute, + aux_sym_package_decl_repeat1, + [4249] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(446), 1, + anon_sym_SLASH_SLASH_SLASH, + ACTIONS(480), 1, + sym_id, + ACTIONS(521), 1, + anon_sym_RBRACE, + STATE(244), 1, + sym_enum_case, + STATE(329), 1, + sym_doc_comment, + STATE(205), 2, + sym_attribute, + aux_sym_package_decl_repeat1, + [4272] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(446), 1, + anon_sym_SLASH_SLASH_SLASH, + ACTIONS(464), 1, + sym_id, + ACTIONS(523), 1, + anon_sym_RBRACE, + STATE(295), 1, + sym_flags_case, + STATE(329), 1, + sym_doc_comment, + STATE(181), 2, + sym_attribute, + aux_sym_package_decl_repeat1, + [4295] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(446), 1, + anon_sym_SLASH_SLASH_SLASH, + ACTIONS(464), 1, + sym_id, + ACTIONS(525), 1, + anon_sym_RBRACE, + STATE(271), 1, + sym_flags_case, + STATE(329), 1, + sym_doc_comment, + STATE(181), 2, + sym_attribute, + aux_sym_package_decl_repeat1, + [4318] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(446), 1, + anon_sym_SLASH_SLASH_SLASH, + ACTIONS(468), 1, + sym_id, + ACTIONS(527), 1, + anon_sym_RBRACE, + STATE(292), 1, + sym_record_field, + STATE(329), 1, + sym_doc_comment, + STATE(208), 2, + sym_attribute, + aux_sym_package_decl_repeat1, + [4341] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(446), 1, + anon_sym_SLASH_SLASH_SLASH, + ACTIONS(476), 1, + sym_id, + ACTIONS(529), 1, + anon_sym_RBRACE, + STATE(245), 1, + sym_variant_case, + STATE(329), 1, + sym_doc_comment, + STATE(199), 2, + sym_attribute, + aux_sym_package_decl_repeat1, + [4364] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(446), 1, + anon_sym_SLASH_SLASH_SLASH, + ACTIONS(480), 1, + sym_id, + ACTIONS(531), 1, + anon_sym_RBRACE, + STATE(267), 1, + sym_enum_case, + STATE(329), 1, + sym_doc_comment, + STATE(205), 2, + sym_attribute, + aux_sym_package_decl_repeat1, + [4387] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(446), 1, + anon_sym_SLASH_SLASH_SLASH, + ACTIONS(464), 1, + sym_id, + ACTIONS(533), 1, + anon_sym_RBRACE, + STATE(246), 1, + sym_flags_case, + STATE(329), 1, + sym_doc_comment, + STATE(181), 2, + sym_attribute, + aux_sym_package_decl_repeat1, + [4410] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(446), 1, + anon_sym_SLASH_SLASH_SLASH, + ACTIONS(468), 1, + sym_id, + ACTIONS(535), 1, + anon_sym_RBRACE, + STATE(247), 1, + sym_record_field, + STATE(329), 1, + sym_doc_comment, + STATE(208), 2, + sym_attribute, + aux_sym_package_decl_repeat1, + [4433] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(446), 1, + anon_sym_SLASH_SLASH_SLASH, + ACTIONS(468), 1, + sym_id, + ACTIONS(537), 1, + anon_sym_RBRACE, + STATE(278), 1, + sym_record_field, + STATE(329), 1, + sym_doc_comment, + STATE(208), 2, + sym_attribute, + aux_sym_package_decl_repeat1, + [4456] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(539), 1, + anon_sym_SLASH_SLASH_SLASH, + STATE(251), 1, + sym_doc_comment, + ACTIONS(317), 2, + sym_id, + anon_sym_constructor, + STATE(170), 2, + sym_attribute, + aux_sym_package_decl_repeat1, + [4474] = 6, + ACTIONS(3), 1, + sym_comment, + ACTIONS(15), 1, + anon_sym_SLASH_SLASH_SLASH, + ACTIONS(486), 1, + anon_sym_world, + ACTIONS(488), 1, + anon_sym_interface, + STATE(107), 1, + sym_doc_comment, + STATE(34), 2, + sym_attribute, + aux_sym_package_decl_repeat1, + [4494] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(544), 1, + anon_sym_LT, + ACTIONS(542), 5, + anon_sym_SEMI, + anon_sym_RBRACE, + anon_sym_COMMA, + anon_sym_RPAREN, + anon_sym_GT, + [4508] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(546), 1, + anon_sym_SLASH, + ACTIONS(517), 5, + anon_sym_AT, + anon_sym_SEMI, + anon_sym_as, + anon_sym_with, + anon_sym_DOT, + [4522] = 6, + ACTIONS(3), 1, + sym_comment, + ACTIONS(446), 1, + anon_sym_SLASH_SLASH_SLASH, + ACTIONS(468), 1, + sym_id, + STATE(292), 1, + sym_record_field, + STATE(329), 1, + sym_doc_comment, + STATE(208), 2, + sym_attribute, + aux_sym_package_decl_repeat1, + [4542] = 6, + ACTIONS(3), 1, + sym_comment, + ACTIONS(446), 1, + anon_sym_SLASH_SLASH_SLASH, + ACTIONS(464), 1, + sym_id, + STATE(295), 1, + sym_flags_case, + STATE(329), 1, + sym_doc_comment, + STATE(181), 2, + sym_attribute, + aux_sym_package_decl_repeat1, + [4562] = 6, + ACTIONS(3), 1, + sym_comment, + ACTIONS(446), 1, + anon_sym_SLASH_SLASH_SLASH, + ACTIONS(476), 1, + sym_id, + STATE(298), 1, + sym_variant_case, + STATE(329), 1, + sym_doc_comment, + STATE(199), 2, + sym_attribute, + aux_sym_package_decl_repeat1, + [4582] = 6, + ACTIONS(3), 1, + sym_comment, + ACTIONS(446), 1, + anon_sym_SLASH_SLASH_SLASH, + ACTIONS(480), 1, + sym_id, + STATE(301), 1, + sym_enum_case, + STATE(329), 1, + sym_doc_comment, + STATE(205), 2, + sym_attribute, + aux_sym_package_decl_repeat1, + [4602] = 6, + ACTIONS(3), 1, + sym_comment, + ACTIONS(442), 1, + sym_id, + ACTIONS(446), 1, + anon_sym_SLASH_SLASH_SLASH, + STATE(329), 1, + sym_doc_comment, + STATE(334), 1, + sym_named_type, + STATE(212), 2, + sym_attribute, + aux_sym_package_decl_repeat1, + [4622] = 6, + ACTIONS(3), 1, + sym_comment, + ACTIONS(206), 1, + anon_sym_SLASH_SLASH_SLASH, + ACTIONS(548), 1, + sym_id, + ACTIONS(550), 1, + anon_sym_constructor, + STATE(251), 1, + sym_doc_comment, + STATE(170), 2, + sym_attribute, + aux_sym_package_decl_repeat1, + [4642] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(552), 5, + anon_sym_SEMI, + anon_sym_RBRACE, + anon_sym_COMMA, + anon_sym_RPAREN, + anon_sym_GT, + [4653] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(446), 1, + anon_sym_SLASH_SLASH_SLASH, + ACTIONS(554), 1, + sym_id, + STATE(329), 1, + sym_doc_comment, + STATE(203), 2, + sym_attribute, + aux_sym_package_decl_repeat1, + [4670] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(556), 5, + ts_builtin_sym_end, + anon_sym_use, + anon_sym_world, + anon_sym_interface, + anon_sym_SLASH_SLASH_SLASH, + [4681] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(558), 5, + ts_builtin_sym_end, + anon_sym_use, + anon_sym_world, + anon_sym_interface, + anon_sym_SLASH_SLASH_SLASH, + [4692] = 6, + ACTIONS(3), 1, + sym_comment, + ACTIONS(450), 1, + anon_sym_COLON, + ACTIONS(452), 1, + anon_sym_SLASH, + ACTIONS(560), 1, + anon_sym_AT, + ACTIONS(562), 1, + anon_sym_SEMI, + STATE(221), 1, + aux_sym_package_decl_repeat3, + [4711] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(564), 5, + ts_builtin_sym_end, + anon_sym_use, + anon_sym_world, + anon_sym_interface, + anon_sym_SLASH_SLASH_SLASH, + [4722] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(566), 5, + ts_builtin_sym_end, + anon_sym_use, + anon_sym_world, + anon_sym_interface, + anon_sym_SLASH_SLASH_SLASH, + [4733] = 6, + ACTIONS(3), 1, + sym_comment, + ACTIONS(568), 1, + sym_id, + ACTIONS(570), 1, + anon_sym_interface, + ACTIONS(572), 1, + anon_sym_func, + STATE(56), 1, + sym_extern_type, + STATE(405), 1, + sym_func_type, + [4752] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(574), 5, + ts_builtin_sym_end, + anon_sym_use, + anon_sym_world, + anon_sym_interface, + anon_sym_SLASH_SLASH_SLASH, + [4763] = 6, + ACTIONS(3), 1, + sym_comment, + ACTIONS(568), 1, + sym_id, + ACTIONS(570), 1, + anon_sym_interface, + ACTIONS(572), 1, + anon_sym_func, + STATE(58), 1, + sym_extern_type, + STATE(405), 1, + sym_func_type, + [4782] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(576), 5, + anon_sym_SEMI, + anon_sym_RBRACE, + anon_sym_COMMA, + anon_sym_RPAREN, + anon_sym_GT, + [4793] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(578), 5, + ts_builtin_sym_end, + anon_sym_use, + anon_sym_world, + anon_sym_interface, + anon_sym_SLASH_SLASH_SLASH, + [4804] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(580), 5, + ts_builtin_sym_end, + anon_sym_use, + anon_sym_world, + anon_sym_interface, + anon_sym_SLASH_SLASH_SLASH, + [4815] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(582), 5, + ts_builtin_sym_end, + anon_sym_use, + anon_sym_world, + anon_sym_interface, + anon_sym_SLASH_SLASH_SLASH, + [4826] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(584), 5, + ts_builtin_sym_end, + anon_sym_use, + anon_sym_world, + anon_sym_interface, + anon_sym_SLASH_SLASH_SLASH, + [4837] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(586), 5, + ts_builtin_sym_end, + anon_sym_use, + anon_sym_world, + anon_sym_interface, + anon_sym_SLASH_SLASH_SLASH, + [4848] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(588), 5, + ts_builtin_sym_end, + anon_sym_use, + anon_sym_world, + anon_sym_interface, + anon_sym_SLASH_SLASH_SLASH, + [4859] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(590), 5, + anon_sym_SEMI, + anon_sym_RBRACE, + anon_sym_COMMA, + anon_sym_RPAREN, + anon_sym_GT, + [4870] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(592), 5, + ts_builtin_sym_end, + anon_sym_use, + anon_sym_world, + anon_sym_interface, + anon_sym_SLASH_SLASH_SLASH, + [4881] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(9), 1, + ACTIONS(446), 1, + anon_sym_SLASH_SLASH_SLASH, + ACTIONS(594), 1, + sym_id, + STATE(329), 1, + sym_doc_comment, + STATE(203), 2, + sym_attribute, + aux_sym_package_decl_repeat1, + [4898] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(596), 5, + ts_builtin_sym_end, anon_sym_use, - ACTIONS(11), 1, anon_sym_world, - ACTIONS(13), 1, anon_sym_interface, - ACTIONS(307), 1, - ts_builtin_sym_end, - STATE(99), 4, - sym_toplevel_use_item, - sym_world_item, - sym_interface_item, - aux_sym_source_file_repeat1, - [2498] = 6, + anon_sym_SLASH_SLASH_SLASH, + [4909] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(9), 1, + ACTIONS(598), 5, + ts_builtin_sym_end, anon_sym_use, - ACTIONS(11), 1, anon_sym_world, - ACTIONS(13), 1, anon_sym_interface, - ACTIONS(317), 1, - ts_builtin_sym_end, - STATE(100), 4, - sym_toplevel_use_item, - sym_world_item, - sym_interface_item, - aux_sym_source_file_repeat1, - [2520] = 6, + anon_sym_SLASH_SLASH_SLASH, + [4920] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(319), 1, + ACTIONS(600), 5, ts_builtin_sym_end, - ACTIONS(321), 1, anon_sym_use, - ACTIONS(324), 1, anon_sym_world, - ACTIONS(327), 1, anon_sym_interface, - STATE(100), 4, - sym_toplevel_use_item, - sym_world_item, - sym_interface_item, - aux_sym_source_file_repeat1, - [2542] = 5, + anon_sym_SLASH_SLASH_SLASH, + [4931] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(311), 1, - anon_sym_SLASH, - ACTIONS(330), 1, - anon_sym_AT, - STATE(102), 1, - aux_sym_package_decl_repeat2, - ACTIONS(332), 4, - anon_sym_SEMI, - anon_sym_as, - anon_sym_with, - anon_sym_DOT, - [2561] = 4, + ACTIONS(177), 1, + sym_id, + ACTIONS(602), 1, + anon_sym_SLASH_SLASH_SLASH, + STATE(329), 1, + sym_doc_comment, + STATE(203), 2, + sym_attribute, + aux_sym_package_decl_repeat1, + [4948] = 6, ACTIONS(3), 1, sym_comment, - ACTIONS(334), 1, + ACTIONS(450), 1, + anon_sym_COLON, + ACTIONS(452), 1, anon_sym_SLASH, - STATE(102), 1, - aux_sym_package_decl_repeat2, - ACTIONS(337), 5, + ACTIONS(605), 1, anon_sym_AT, + ACTIONS(607), 1, anon_sym_SEMI, - anon_sym_as, - anon_sym_with, - anon_sym_DOT, - [2578] = 6, + STATE(228), 1, + aux_sym_package_decl_repeat3, + [4967] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(339), 1, + ACTIONS(446), 1, + anon_sym_SLASH_SLASH_SLASH, + ACTIONS(609), 1, sym_id, - ACTIONS(341), 1, - anon_sym_RBRACE, - ACTIONS(343), 1, - anon_sym_constructor, - STATE(152), 1, - sym_func_item, - STATE(108), 2, - sym_resource_method, - aux_sym_resource_body_repeat1, - [2598] = 6, + STATE(329), 1, + sym_doc_comment, + STATE(203), 2, + sym_attribute, + aux_sym_package_decl_repeat1, + [4984] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(339), 1, - sym_id, - ACTIONS(343), 1, - anon_sym_constructor, - ACTIONS(345), 1, - anon_sym_RBRACE, - STATE(152), 1, - sym_func_item, - STATE(109), 2, - sym_resource_method, - aux_sym_resource_body_repeat1, - [2618] = 3, + ACTIONS(611), 5, + ts_builtin_sym_end, + anon_sym_use, + anon_sym_world, + anon_sym_interface, + anon_sym_SLASH_SLASH_SLASH, + [4995] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(349), 1, - anon_sym_LT, - ACTIONS(347), 5, + ACTIONS(613), 5, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_GT, - [2632] = 6, + [5006] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(339), 1, + ACTIONS(446), 1, + anon_sym_SLASH_SLASH_SLASH, + ACTIONS(615), 1, sym_id, - ACTIONS(343), 1, - anon_sym_constructor, - ACTIONS(351), 1, + STATE(329), 1, + sym_doc_comment, + STATE(203), 2, + sym_attribute, + aux_sym_package_decl_repeat1, + [5023] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(617), 5, + anon_sym_SEMI, anon_sym_RBRACE, - STATE(152), 1, - sym_func_item, - STATE(104), 2, - sym_resource_method, - aux_sym_resource_body_repeat1, - [2652] = 3, + anon_sym_COMMA, + anon_sym_RPAREN, + anon_sym_GT, + [5034] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(353), 1, - anon_sym_SLASH, - ACTIONS(337), 5, - anon_sym_AT, + ACTIONS(619), 5, anon_sym_SEMI, - anon_sym_as, - anon_sym_with, - anon_sym_DOT, - [2666] = 6, + anon_sym_RBRACE, + anon_sym_COMMA, + anon_sym_RPAREN, + anon_sym_GT, + [5045] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(339), 1, - sym_id, - ACTIONS(343), 1, - anon_sym_constructor, - ACTIONS(355), 1, + ACTIONS(621), 5, + anon_sym_SEMI, anon_sym_RBRACE, - STATE(152), 1, - sym_func_item, - STATE(109), 2, - sym_resource_method, - aux_sym_resource_body_repeat1, - [2686] = 6, + anon_sym_COMMA, + anon_sym_RPAREN, + anon_sym_GT, + [5056] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(357), 1, + ACTIONS(446), 1, + anon_sym_SLASH_SLASH_SLASH, + ACTIONS(623), 1, sym_id, - ACTIONS(360), 1, - anon_sym_RBRACE, - ACTIONS(362), 1, - anon_sym_constructor, - STATE(152), 1, - sym_func_item, - STATE(109), 2, - sym_resource_method, - aux_sym_resource_body_repeat1, - [2706] = 2, + STATE(329), 1, + sym_doc_comment, + STATE(203), 2, + sym_attribute, + aux_sym_package_decl_repeat1, + [5073] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(365), 5, + ACTIONS(625), 5, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_GT, - [2717] = 2, + [5084] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(367), 5, + ACTIONS(627), 5, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_GT, - [2728] = 2, + [5095] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(369), 5, + ACTIONS(629), 5, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_GT, - [2739] = 6, + [5106] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(309), 1, + ACTIONS(450), 1, anon_sym_COLON, - ACTIONS(311), 1, - anon_sym_SLASH, - ACTIONS(371), 1, - anon_sym_AT, - ACTIONS(373), 1, + ACTIONS(631), 4, anon_sym_SEMI, - STATE(128), 1, - aux_sym_package_decl_repeat2, - [2758] = 6, - ACTIONS(3), 1, - sym_comment, - ACTIONS(375), 1, - sym_id, - ACTIONS(377), 1, - anon_sym_interface, - ACTIONS(379), 1, - anon_sym_func, - STATE(42), 1, - sym_extern_type, - STATE(278), 1, - sym_func_type, - [2777] = 6, - ACTIONS(3), 1, - sym_comment, - ACTIONS(375), 1, - sym_id, - ACTIONS(377), 1, - anon_sym_interface, - ACTIONS(379), 1, - anon_sym_func, - STATE(41), 1, - sym_extern_type, - STATE(278), 1, - sym_func_type, - [2796] = 2, + anon_sym_as, + anon_sym_with, + anon_sym_DOT, + [5119] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(365), 5, + ACTIONS(633), 5, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_GT, - [2807] = 2, + [5130] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(381), 5, + ACTIONS(633), 5, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_GT, - [2818] = 2, + [5141] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(383), 5, - anon_sym_SEMI, + ACTIONS(368), 2, + sym_id, + anon_sym_constructor, + ACTIONS(370), 2, anon_sym_RBRACE, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_GT, - [2829] = 2, + anon_sym_SLASH_SLASH_SLASH, + [5153] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(376), 2, + sym_id, + anon_sym_constructor, + ACTIONS(378), 2, + anon_sym_RBRACE, + anon_sym_SLASH_SLASH_SLASH, + [5165] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(385), 5, + ACTIONS(452), 1, + anon_sym_SLASH, + ACTIONS(635), 1, + anon_sym_AT, + ACTIONS(637), 1, anon_sym_SEMI, + STATE(159), 1, + aux_sym_package_decl_repeat3, + [5181] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(639), 2, + sym_id, + anon_sym_constructor, + ACTIONS(641), 2, anon_sym_RBRACE, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_GT, - [2840] = 2, + anon_sym_SLASH_SLASH_SLASH, + [5193] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(387), 5, + ACTIONS(643), 4, anon_sym_SEMI, + anon_sym_as, + anon_sym_with, + anon_sym_DOT, + [5203] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(645), 2, + sym_id, + anon_sym_constructor, + ACTIONS(647), 2, anon_sym_RBRACE, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_GT, - [2851] = 3, + anon_sym_SLASH_SLASH_SLASH, + [5215] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(309), 1, - anon_sym_COLON, - ACTIONS(389), 4, + ACTIONS(649), 4, anon_sym_SEMI, anon_sym_as, anon_sym_with, anon_sym_DOT, - [2864] = 2, + [5225] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(651), 2, + sym_id, + anon_sym_constructor, + ACTIONS(653), 2, + anon_sym_RBRACE, + anon_sym_SLASH_SLASH_SLASH, + [5237] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(655), 2, + sym_id, + anon_sym_constructor, + ACTIONS(657), 2, + anon_sym_RBRACE, + anon_sym_SLASH_SLASH_SLASH, + [5249] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(391), 5, + ACTIONS(452), 1, + anon_sym_SLASH, + ACTIONS(659), 1, + anon_sym_AT, + ACTIONS(661), 1, anon_sym_SEMI, + STATE(159), 1, + aux_sym_package_decl_repeat3, + [5265] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(663), 2, + sym_id, + anon_sym_constructor, + ACTIONS(665), 2, anon_sym_RBRACE, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_GT, - [2875] = 2, + anon_sym_SLASH_SLASH_SLASH, + [5277] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(667), 1, + anon_sym_func, + ACTIONS(669), 1, + anon_sym_static, + STATE(422), 1, + sym_func_type, + [5290] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(393), 5, + ACTIONS(671), 1, anon_sym_SEMI, + ACTIONS(673), 1, + anon_sym_DASH_GT, + STATE(424), 1, + sym_result_list, + [5303] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(675), 1, + sym_id, + STATE(300), 1, + aux_sym_package_decl_repeat2, + STATE(465), 1, + sym_use_path, + [5316] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(510), 1, anon_sym_RBRACE, + ACTIONS(677), 1, anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_GT, - [2886] = 2, + STATE(270), 1, + aux_sym_record_body_repeat1, + [5329] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(395), 5, - anon_sym_SEMI, + ACTIONS(679), 1, + sym_id, + STATE(274), 1, + sym_use_names_item, + STATE(458), 1, + sym_use_names_list, + [5342] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(498), 1, anon_sym_RBRACE, + ACTIONS(681), 1, anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_GT, - [2897] = 2, + STATE(275), 1, + aux_sym_flags_body_repeat1, + [5355] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(397), 4, - ts_builtin_sym_end, - anon_sym_use, - anon_sym_world, - anon_sym_interface, - [2907] = 2, + ACTIONS(675), 1, + sym_id, + STATE(297), 1, + sym_use_path, + STATE(300), 1, + aux_sym_package_decl_repeat2, + [5368] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(399), 4, - ts_builtin_sym_end, - anon_sym_use, - anon_sym_world, - anon_sym_interface, - [2917] = 2, + ACTIONS(478), 1, + anon_sym_RBRACE, + ACTIONS(683), 1, + anon_sym_COMMA, + STATE(280), 1, + aux_sym_variant_body_repeat1, + [5381] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(401), 4, - ts_builtin_sym_end, - anon_sym_use, - anon_sym_world, - anon_sym_interface, - [2927] = 5, + ACTIONS(687), 1, + anon_sym_LPAREN, + ACTIONS(685), 2, + anon_sym_RBRACE, + anon_sym_COMMA, + [5392] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(311), 1, - anon_sym_SLASH, - ACTIONS(403), 1, - anon_sym_AT, - ACTIONS(405), 1, - anon_sym_SEMI, - STATE(102), 1, - aux_sym_package_decl_repeat2, - [2943] = 2, + ACTIONS(506), 1, + anon_sym_RBRACE, + ACTIONS(689), 1, + anon_sym_COMMA, + STATE(261), 1, + aux_sym_enum_body_repeat1, + [5405] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(500), 1, + anon_sym_RBRACE, + ACTIONS(691), 1, + anon_sym_COMMA, + STATE(261), 1, + aux_sym_enum_body_repeat1, + [5418] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(504), 1, + anon_sym_RBRACE, + ACTIONS(693), 1, + anon_sym_COMMA, + STATE(280), 1, + aux_sym_variant_body_repeat1, + [5431] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(466), 1, + anon_sym_RBRACE, + ACTIONS(695), 1, + anon_sym_COMMA, + STATE(275), 1, + aux_sym_flags_body_repeat1, + [5444] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(470), 1, + anon_sym_RBRACE, + ACTIONS(697), 1, + anon_sym_COMMA, + STATE(270), 1, + aux_sym_record_body_repeat1, + [5457] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(699), 1, + anon_sym_RBRACE, + ACTIONS(701), 1, + anon_sym_COMMA, + STATE(240), 1, + aux_sym_enum_body_repeat1, + [5470] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(407), 4, - ts_builtin_sym_end, - anon_sym_use, - anon_sym_world, - anon_sym_interface, - [2953] = 2, + ACTIONS(703), 1, + anon_sym_RBRACE, + ACTIONS(705), 1, + anon_sym_COMMA, + STATE(241), 1, + aux_sym_variant_body_repeat1, + [5483] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(409), 4, - anon_sym_SEMI, - anon_sym_as, - anon_sym_with, - anon_sym_DOT, - [2963] = 2, + ACTIONS(707), 1, + anon_sym_RBRACE, + ACTIONS(709), 1, + anon_sym_COMMA, + STATE(242), 1, + aux_sym_flags_body_repeat1, + [5496] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(411), 4, - ts_builtin_sym_end, - anon_sym_use, - anon_sym_world, - anon_sym_interface, - [2973] = 2, + ACTIONS(711), 1, + anon_sym_RBRACE, + ACTIONS(713), 1, + anon_sym_COMMA, + STATE(243), 1, + aux_sym_record_body_repeat1, + [5509] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(413), 4, - ts_builtin_sym_end, - anon_sym_use, - anon_sym_world, - anon_sym_interface, - [2983] = 5, + ACTIONS(715), 1, + anon_sym_COMMA, + ACTIONS(717), 1, + anon_sym_RPAREN, + STATE(272), 1, + aux_sym_named_type_list_repeat1, + [5522] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(415), 1, + ACTIONS(382), 1, + anon_sym_SLASH_SLASH_SLASH, + ACTIONS(460), 2, sym_id, - ACTIONS(417), 1, - anon_sym_RPAREN, - STATE(180), 1, - sym_named_type, - STATE(290), 1, - sym_named_type_list, - [2999] = 2, + anon_sym_constructor, + [5533] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(419), 4, - ts_builtin_sym_end, - anon_sym_use, - anon_sym_world, - anon_sym_interface, - [3009] = 5, + ACTIONS(372), 1, + anon_sym_SLASH_SLASH_SLASH, + ACTIONS(448), 2, + sym_id, + anon_sym_constructor, + [5544] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(415), 1, + ACTIONS(366), 1, + anon_sym_SLASH_SLASH_SLASH, + ACTIONS(462), 2, sym_id, - ACTIONS(421), 1, - anon_sym_RPAREN, - STATE(180), 1, - sym_named_type, - STATE(279), 1, - sym_named_type_list, - [3025] = 2, + anon_sym_constructor, + [5555] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(423), 4, - ts_builtin_sym_end, - anon_sym_use, - anon_sym_world, - anon_sym_interface, - [3035] = 2, + ACTIONS(679), 1, + sym_id, + ACTIONS(719), 1, + anon_sym_RBRACE, + STATE(311), 1, + sym_use_names_item, + [5568] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(425), 4, - ts_builtin_sym_end, - anon_sym_use, - anon_sym_world, - anon_sym_interface, - [3045] = 2, + ACTIONS(721), 1, + anon_sym_RBRACE, + ACTIONS(723), 1, + anon_sym_COMMA, + STATE(262), 1, + aux_sym_use_names_list_repeat1, + [5581] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(427), 4, - ts_builtin_sym_end, - anon_sym_use, - anon_sym_world, - anon_sym_interface, - [3055] = 2, + ACTIONS(675), 1, + sym_id, + STATE(300), 1, + aux_sym_package_decl_repeat2, + STATE(375), 1, + sym_use_path, + [5594] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(429), 4, - anon_sym_SEMI, - anon_sym_as, - anon_sym_with, - anon_sym_DOT, - [3065] = 4, + ACTIONS(725), 1, + sym_id, + STATE(300), 1, + aux_sym_package_decl_repeat2, + STATE(373), 1, + sym_use_path, + [5607] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(431), 1, + ACTIONS(727), 1, sym_id, - ACTIONS(433), 1, + ACTIONS(729), 1, anon_sym_RBRACE, - STATE(224), 1, - sym_variant_case, - [3078] = 4, + STATE(313), 1, + sym_include_names_item, + [5620] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(415), 1, - sym_id, - ACTIONS(435), 1, - anon_sym_RPAREN, - STATE(252), 1, - sym_named_type, - [3091] = 4, + ACTIONS(731), 1, + anon_sym_RBRACE, + ACTIONS(733), 1, + anon_sym_COMMA, + STATE(268), 1, + aux_sym_include_names_list_repeat1, + [5633] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(437), 1, - anon_sym_SEMI, - ACTIONS(439), 1, - anon_sym_DASH_GT, - STATE(265), 1, - sym_result_list, - [3104] = 4, + ACTIONS(735), 1, + anon_sym_COMMA, + ACTIONS(737), 1, + anon_sym_GT, + STATE(273), 1, + aux_sym_tuple_list_repeat1, + [5646] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(441), 1, + ACTIONS(739), 1, sym_id, - STATE(253), 1, - aux_sym_package_decl_repeat1, - STATE(337), 1, + STATE(300), 1, + aux_sym_package_decl_repeat2, + STATE(372), 1, sym_use_path, - [3117] = 3, - ACTIONS(3), 1, - sym_comment, - ACTIONS(443), 1, - anon_sym_as, - ACTIONS(445), 2, - anon_sym_RBRACE, - anon_sym_COMMA, - [3128] = 4, + [5659] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(447), 1, + ACTIONS(675), 1, sym_id, - STATE(146), 1, - sym_use_names_item, - STATE(332), 1, - sym_use_names_list, - [3141] = 4, + STATE(300), 1, + aux_sym_package_decl_repeat2, + STATE(343), 1, + sym_use_path, + [5672] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(449), 1, + ACTIONS(741), 1, anon_sym_RBRACE, - ACTIONS(451), 1, + ACTIONS(743), 1, anon_sym_COMMA, - STATE(186), 1, - aux_sym_use_names_list_repeat1, - [3154] = 4, + STATE(261), 1, + aux_sym_enum_body_repeat1, + [5685] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(453), 1, + ACTIONS(746), 1, anon_sym_RBRACE, - ACTIONS(455), 1, + ACTIONS(748), 1, anon_sym_COMMA, - STATE(169), 1, - aux_sym_variant_body_repeat1, - [3167] = 4, + STATE(262), 1, + aux_sym_use_names_list_repeat1, + [5698] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(441), 1, + ACTIONS(727), 1, sym_id, - STATE(250), 1, - sym_use_path, - STATE(253), 1, - aux_sym_package_decl_repeat1, - [3180] = 4, + STATE(269), 1, + sym_include_names_item, + STATE(446), 1, + sym_include_names_list, + [5711] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(667), 1, + anon_sym_func, + ACTIONS(751), 1, + anon_sym_static, + STATE(429), 1, + sym_func_type, + [5724] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(679), 1, + sym_id, + STATE(274), 1, + sym_use_names_item, + STATE(436), 1, + sym_use_names_list, + [5737] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(431), 1, + ACTIONS(727), 1, sym_id, - ACTIONS(457), 1, + ACTIONS(753), 1, anon_sym_RBRACE, - STATE(224), 1, - sym_variant_case, - [3193] = 4, + STATE(313), 1, + sym_include_names_item, + [5750] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(459), 1, + ACTIONS(755), 1, + anon_sym_RBRACE, + ACTIONS(757), 1, + anon_sym_COMMA, + STATE(239), 1, + aux_sym_enum_body_repeat1, + [5763] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(759), 1, anon_sym_RBRACE, - ACTIONS(461), 1, + ACTIONS(761), 1, anon_sym_COMMA, - STATE(190), 1, + STATE(268), 1, aux_sym_include_names_list_repeat1, - [3206] = 4, + [5776] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(463), 1, - sym_id, - ACTIONS(465), 1, + ACTIONS(764), 1, anon_sym_RBRACE, - STATE(218), 1, - sym_record_field, - [3219] = 3, + ACTIONS(766), 1, + anon_sym_COMMA, + STATE(257), 1, + aux_sym_include_names_list_repeat1, + [5789] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(469), 1, + ACTIONS(768), 1, anon_sym_RBRACE, - ACTIONS(467), 2, - sym_id, - anon_sym_constructor, - [3230] = 4, + ACTIONS(770), 1, + anon_sym_COMMA, + STATE(270), 1, + aux_sym_record_body_repeat1, + [5802] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(471), 1, + ACTIONS(773), 1, anon_sym_RBRACE, - ACTIONS(473), 1, + ACTIONS(775), 1, anon_sym_COMMA, - STATE(172), 1, + STATE(235), 1, aux_sym_flags_body_repeat1, - [3243] = 4, + [5815] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(502), 1, + anon_sym_RPAREN, + ACTIONS(777), 1, + anon_sym_COMMA, + STATE(282), 1, + aux_sym_named_type_list_repeat1, + [5828] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(37), 1, + anon_sym_GT, + ACTIONS(779), 1, + anon_sym_COMMA, + STATE(277), 1, + aux_sym_tuple_list_repeat1, + [5841] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(475), 1, + ACTIONS(781), 1, anon_sym_RBRACE, - ACTIONS(477), 1, + ACTIONS(783), 1, anon_sym_COMMA, - STATE(188), 1, - aux_sym_flags_body_repeat1, - [3256] = 4, + STATE(253), 1, + aux_sym_use_names_list_repeat1, + [5854] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(479), 1, + ACTIONS(785), 1, anon_sym_RBRACE, - ACTIONS(481), 1, + ACTIONS(787), 1, anon_sym_COMMA, - STATE(165), 1, + STATE(275), 1, aux_sym_flags_body_repeat1, - [3269] = 4, + [5867] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(483), 1, + ACTIONS(790), 1, anon_sym_RBRACE, - ACTIONS(485), 1, + ACTIONS(792), 1, anon_sym_COMMA, - STATE(196), 1, + STATE(237), 1, aux_sym_variant_body_repeat1, - [3282] = 4, + [5880] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(431), 1, - sym_id, - ACTIONS(483), 1, - anon_sym_RBRACE, - STATE(224), 1, - sym_variant_case, - [3295] = 4, + ACTIONS(794), 1, + anon_sym_COMMA, + ACTIONS(797), 1, + anon_sym_GT, + STATE(277), 1, + aux_sym_tuple_list_repeat1, + [5893] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(487), 1, + ACTIONS(799), 1, anon_sym_RBRACE, - ACTIONS(489), 1, + ACTIONS(801), 1, anon_sym_COMMA, - STATE(162), 1, + STATE(233), 1, aux_sym_record_body_repeat1, - [3308] = 4, + [5906] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(491), 1, + ACTIONS(803), 1, + anon_sym_as, + ACTIONS(805), 2, anon_sym_RBRACE, - ACTIONS(493), 1, anon_sym_COMMA, - STATE(188), 1, - aux_sym_flags_body_repeat1, - [3321] = 4, + [5917] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(495), 1, + ACTIONS(807), 1, anon_sym_RBRACE, - ACTIONS(497), 1, + ACTIONS(809), 1, anon_sym_COMMA, - STATE(204), 1, - aux_sym_record_body_repeat1, - [3334] = 4, + STATE(280), 1, + aux_sym_variant_body_repeat1, + [5930] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(463), 1, - sym_id, - ACTIONS(499), 1, + ACTIONS(814), 1, + anon_sym_LPAREN, + ACTIONS(812), 2, anon_sym_RBRACE, - STATE(218), 1, - sym_record_field, - [3347] = 4, + anon_sym_COMMA, + [5941] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(499), 1, - anon_sym_RBRACE, - ACTIONS(501), 1, + ACTIONS(816), 1, anon_sym_COMMA, - STATE(204), 1, - aux_sym_record_body_repeat1, - [3360] = 4, + ACTIONS(819), 1, + anon_sym_RPAREN, + STATE(282), 1, + aux_sym_named_type_list_repeat1, + [5954] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(463), 1, + ACTIONS(679), 1, sym_id, - ACTIONS(495), 1, + ACTIONS(821), 1, anon_sym_RBRACE, - STATE(218), 1, - sym_record_field, - [3373] = 4, + STATE(311), 1, + sym_use_names_item, + [5967] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(823), 1, + anon_sym_LBRACE, + STATE(104), 1, + sym_flags_body, + [5977] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(825), 1, + anon_sym_LBRACE, + STATE(81), 1, + sym_record_body, + [5987] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(503), 1, + ACTIONS(827), 2, anon_sym_RBRACE, - ACTIONS(505), 1, anon_sym_COMMA, - STATE(154), 1, - aux_sym_flags_body_repeat1, - [3386] = 4, + [5995] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(507), 1, - anon_sym_RBRACE, - ACTIONS(509), 1, + ACTIONS(829), 1, anon_sym_COMMA, - STATE(188), 1, - aux_sym_flags_body_repeat1, - [3399] = 4, + ACTIONS(831), 1, + anon_sym_GT, + [6005] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(511), 1, + ACTIONS(833), 2, anon_sym_RBRACE, - ACTIONS(513), 1, anon_sym_COMMA, - STATE(156), 1, - aux_sym_variant_body_repeat1, - [3412] = 4, + [6013] = 3, + ACTIONS(835), 1, + anon_sym_SPACE, + ACTIONS(837), 1, + sym_docs, + ACTIONS(839), 1, + sym_comment, + [6023] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(515), 1, + ACTIONS(841), 2, anon_sym_RBRACE, - ACTIONS(517), 1, anon_sym_COMMA, - STATE(159), 1, - aux_sym_flags_body_repeat1, - [3425] = 4, + [6031] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(519), 1, + ACTIONS(667), 1, + anon_sym_func, + STATE(433), 1, + sym_func_type, + [6041] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(768), 2, anon_sym_RBRACE, - ACTIONS(521), 1, anon_sym_COMMA, - STATE(160), 1, - aux_sym_record_body_repeat1, - [3438] = 4, + [6049] = 3, + ACTIONS(839), 1, + sym_comment, + ACTIONS(843), 1, + anon_sym_SPACE, + ACTIONS(845), 1, + sym_docs, + [6059] = 3, + ACTIONS(839), 1, + sym_comment, + ACTIONS(847), 1, + anon_sym_SPACE, + ACTIONS(849), 1, + sym_docs, + [6069] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(433), 1, + ACTIONS(785), 2, anon_sym_RBRACE, - ACTIONS(523), 1, anon_sym_COMMA, - STATE(196), 1, - aux_sym_variant_body_repeat1, - [3451] = 4, + [6077] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(431), 1, + ACTIONS(851), 1, sym_id, - ACTIONS(525), 1, - anon_sym_RBRACE, - STATE(166), 1, - sym_variant_case, - [3464] = 4, + STATE(324), 1, + aux_sym_package_decl_repeat2, + [6087] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(463), 1, - sym_id, - ACTIONS(527), 1, - anon_sym_RBRACE, - STATE(168), 1, - sym_record_field, - [3477] = 4, + ACTIONS(853), 1, + anon_sym_SEMI, + ACTIONS(855), 1, + anon_sym_as, + [6097] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(529), 1, + ACTIONS(807), 2, anon_sym_RBRACE, - ACTIONS(531), 1, anon_sym_COMMA, - STATE(188), 1, - aux_sym_flags_body_repeat1, - [3490] = 4, + [6105] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(533), 1, - anon_sym_func, - ACTIONS(535), 1, - anon_sym_static, - STATE(307), 1, - sym_func_type, - [3503] = 4, + ACTIONS(857), 1, + anon_sym_LPAREN, + STATE(432), 1, + sym_param_list, + [6115] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(441), 1, + ACTIONS(859), 1, sym_id, - STATE(253), 1, - aux_sym_package_decl_repeat1, - STATE(267), 1, - sym_use_path, - [3516] = 3, + STATE(324), 1, + aux_sym_package_decl_repeat2, + [6125] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(247), 1, + ACTIONS(741), 2, anon_sym_RBRACE, - ACTIONS(245), 2, - sym_id, - anon_sym_constructor, - [3527] = 4, + anon_sym_COMMA, + [6133] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(537), 1, - sym_id, - STATE(150), 1, - sym_include_names_item, - STATE(331), 1, - sym_include_names_list, - [3540] = 4, + ACTIONS(667), 1, + anon_sym_func, + STATE(397), 1, + sym_func_type, + [6143] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(539), 1, - sym_id, - STATE(253), 1, - aux_sym_package_decl_repeat1, - STATE(288), 1, - sym_use_path, - [3553] = 4, + ACTIONS(857), 1, + anon_sym_LPAREN, + STATE(437), 1, + sym_param_list, + [6153] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(541), 1, - sym_id, - STATE(253), 1, - aux_sym_package_decl_repeat1, - STATE(298), 1, - sym_use_path, - [3566] = 4, + ACTIONS(861), 1, + anon_sym_LBRACE, + STATE(195), 1, + sym_world_body, + [6163] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(441), 1, - sym_id, - STATE(244), 1, - sym_use_path, - STATE(253), 1, - aux_sym_package_decl_repeat1, - [3579] = 4, + ACTIONS(863), 1, + anon_sym_LBRACE, + STATE(193), 1, + sym_interface_body, + [6173] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(543), 1, - anon_sym_COMMA, - ACTIONS(545), 1, - anon_sym_RPAREN, - STATE(187), 1, - aux_sym_named_type_list_repeat1, - [3592] = 3, + ACTIONS(865), 2, + anon_sym_SEMI, + anon_sym_DASH_GT, + [6181] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(549), 1, + ACTIONS(867), 2, anon_sym_RBRACE, - ACTIONS(547), 2, - sym_id, - anon_sym_constructor, - [3603] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(551), 1, - anon_sym_COMMA, - ACTIONS(554), 1, - anon_sym_GT, - STATE(182), 1, - aux_sym_tuple_list_repeat1, - [3616] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(556), 1, anon_sym_COMMA, - ACTIONS(559), 1, - anon_sym_RPAREN, - STATE(183), 1, - aux_sym_named_type_list_repeat1, - [3629] = 4, + [6189] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(415), 1, - sym_id, - ACTIONS(561), 1, - anon_sym_RPAREN, - STATE(252), 1, - sym_named_type, - [3642] = 4, + ACTIONS(869), 2, + anon_sym_SEMI, + anon_sym_DASH_GT, + [6197] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(447), 1, - sym_id, - ACTIONS(563), 1, - anon_sym_RBRACE, - STATE(232), 1, - sym_use_names_item, - [3655] = 4, + ACTIONS(871), 1, + anon_sym_LBRACE, + STATE(129), 1, + sym_enum_body, + [6207] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(565), 1, + ACTIONS(873), 2, anon_sym_RBRACE, - ACTIONS(567), 1, anon_sym_COMMA, - STATE(205), 1, - aux_sym_use_names_list_repeat1, - [3668] = 4, + [6215] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(435), 1, - anon_sym_RPAREN, - ACTIONS(569), 1, + ACTIONS(875), 2, + anon_sym_RBRACE, anon_sym_COMMA, - STATE(183), 1, - aux_sym_named_type_list_repeat1, - [3681] = 4, + [6223] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(571), 1, + ACTIONS(877), 2, anon_sym_RBRACE, - ACTIONS(573), 1, anon_sym_COMMA, - STATE(188), 1, - aux_sym_flags_body_repeat1, - [3694] = 4, + [6231] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(537), 1, - sym_id, - ACTIONS(576), 1, + ACTIONS(879), 2, anon_sym_RBRACE, - STATE(234), 1, - sym_include_names_item, - [3707] = 4, + anon_sym_COMMA, + [6239] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(578), 1, + ACTIONS(881), 2, anon_sym_RBRACE, - ACTIONS(580), 1, anon_sym_COMMA, - STATE(198), 1, - aux_sym_include_names_list_repeat1, - [3720] = 3, + [6247] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(584), 1, - anon_sym_LPAREN, - ACTIONS(582), 2, - anon_sym_RBRACE, - anon_sym_COMMA, - [3731] = 4, + ACTIONS(883), 1, + anon_sym_LBRACE, + STATE(120), 1, + sym_variant_body, + [6257] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(586), 1, - anon_sym_COMMA, - ACTIONS(588), 1, - anon_sym_GT, - STATE(193), 1, - aux_sym_tuple_list_repeat1, - [3744] = 4, + ACTIONS(823), 1, + anon_sym_LBRACE, + STATE(112), 1, + sym_flags_body, + [6267] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(37), 1, - anon_sym_GT, - ACTIONS(590), 1, - anon_sym_COMMA, - STATE(182), 1, - aux_sym_tuple_list_repeat1, - [3757] = 4, + ACTIONS(885), 1, + anon_sym_LBRACE, + STATE(94), 1, + sym_record_body, + [6277] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(537), 1, + ACTIONS(887), 1, sym_id, - ACTIONS(592), 1, - anon_sym_RBRACE, - STATE(234), 1, - sym_include_names_item, - [3770] = 4, + STATE(330), 1, + aux_sym_package_decl_repeat2, + [6287] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(431), 1, - sym_id, - ACTIONS(594), 1, - anon_sym_RBRACE, - STATE(224), 1, - sym_variant_case, - [3783] = 4, + ACTIONS(871), 1, + anon_sym_LBRACE, + STATE(102), 1, + sym_enum_body, + [6297] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(596), 1, - anon_sym_RBRACE, - ACTIONS(598), 1, - anon_sym_COMMA, - STATE(196), 1, - aux_sym_variant_body_repeat1, - [3796] = 4, + ACTIONS(883), 1, + anon_sym_LBRACE, + STATE(103), 1, + sym_variant_body, + [6307] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(463), 1, - sym_id, - ACTIONS(601), 1, - anon_sym_RBRACE, - STATE(158), 1, - sym_record_field, - [3809] = 4, + ACTIONS(885), 1, + anon_sym_LBRACE, + STATE(105), 1, + sym_record_body, + [6317] = 3, + ACTIONS(839), 1, + sym_comment, + ACTIONS(889), 1, + anon_sym_SPACE, + ACTIONS(891), 1, + sym_docs, + [6327] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(603), 1, + ACTIONS(893), 2, anon_sym_RBRACE, - ACTIONS(605), 1, anon_sym_COMMA, - STATE(198), 1, - aux_sym_include_names_list_repeat1, - [3822] = 4, + [6335] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(447), 1, + ACTIONS(895), 1, sym_id, - ACTIONS(608), 1, - anon_sym_RBRACE, - STATE(232), 1, - sym_use_names_item, - [3835] = 3, + STATE(324), 1, + aux_sym_package_decl_repeat2, + [6345] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(612), 1, + ACTIONS(898), 2, anon_sym_RBRACE, - ACTIONS(610), 2, - sym_id, - anon_sym_constructor, - [3846] = 4, + anon_sym_COMMA, + [6353] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(863), 1, + anon_sym_LBRACE, + STATE(86), 1, + sym_interface_body, + [6363] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(447), 1, + ACTIONS(382), 2, sym_id, - STATE(146), 1, - sym_use_names_item, - STATE(338), 1, - sym_use_names_list, - [3859] = 4, + anon_sym_SLASH_SLASH_SLASH, + [6371] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(431), 1, + ACTIONS(372), 2, sym_id, - ACTIONS(614), 1, - anon_sym_RBRACE, - STATE(147), 1, - sym_variant_case, - [3872] = 4, + anon_sym_SLASH_SLASH_SLASH, + [6379] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(463), 1, + ACTIONS(366), 2, sym_id, - ACTIONS(616), 1, - anon_sym_RBRACE, - STATE(218), 1, - sym_record_field, - [3885] = 4, + anon_sym_SLASH_SLASH_SLASH, + [6387] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(618), 1, - anon_sym_RBRACE, - ACTIONS(620), 1, - anon_sym_COMMA, - STATE(204), 1, - aux_sym_record_body_repeat1, - [3898] = 4, + ACTIONS(900), 1, + sym_id, + STATE(324), 1, + aux_sym_package_decl_repeat2, + [6397] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(623), 1, - anon_sym_RBRACE, - ACTIONS(625), 1, - anon_sym_COMMA, - STATE(205), 1, - aux_sym_use_names_list_repeat1, - [3911] = 3, + ACTIONS(667), 1, + anon_sym_func, + STATE(359), 1, + sym_func_type, + [6407] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(628), 1, + ACTIONS(861), 1, anon_sym_LBRACE, - STATE(48), 1, - sym_variant_body, - [3921] = 3, + STATE(183), 1, + sym_world_body, + [6417] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(415), 1, - sym_id, - STATE(252), 1, - sym_named_type, - [3931] = 3, + ACTIONS(902), 2, + anon_sym_COMMA, + anon_sym_RPAREN, + [6425] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(630), 1, - sym_id, - ACTIONS(632), 1, - anon_sym_RBRACE, - [3941] = 3, + ACTIONS(819), 2, + anon_sym_COMMA, + anon_sym_RPAREN, + [6433] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(634), 1, + ACTIONS(863), 1, anon_sym_LBRACE, - STATE(29), 1, + STATE(182), 1, sym_interface_body, - [3951] = 3, + [6443] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(636), 1, + ACTIONS(857), 1, anon_sym_LPAREN, - STATE(302), 1, + STATE(231), 1, sym_param_list, - [3961] = 3, + [6453] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(630), 1, - sym_id, - ACTIONS(638), 1, - anon_sym_RBRACE, - [3971] = 3, + ACTIONS(631), 1, + anon_sym_SEMI, + ACTIONS(904), 1, + anon_sym_COLON, + [6463] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(475), 1, - anon_sym_RBRACE, - ACTIONS(630), 1, + ACTIONS(631), 1, + anon_sym_SEMI, + ACTIONS(906), 1, + anon_sym_COLON, + [6473] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(679), 1, sym_id, - [3981] = 3, + STATE(311), 1, + sym_use_names_item, + [6483] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(491), 1, - anon_sym_RBRACE, - ACTIONS(630), 1, + ACTIONS(727), 1, sym_id, - [3991] = 3, + STATE(313), 1, + sym_include_names_item, + [6493] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(640), 1, + ACTIONS(797), 2, anon_sym_COMMA, - ACTIONS(642), 1, anon_sym_GT, - [4001] = 3, - ACTIONS(3), 1, - sym_comment, - ACTIONS(507), 1, - anon_sym_RBRACE, - ACTIONS(630), 1, - sym_id, - [4011] = 3, + [6501] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(644), 1, - sym_id, - ACTIONS(646), 1, - anon_sym_RBRACE, - [4021] = 2, + ACTIONS(908), 1, + anon_sym_LBRACE, + STATE(40), 1, + sym_enum_body, + [6511] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(648), 2, - anon_sym_RBRACE, - anon_sym_COMMA, - [4029] = 2, + ACTIONS(910), 1, + anon_sym_SEMI, + ACTIONS(912), 1, + anon_sym_with, + [6521] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(618), 2, - anon_sym_RBRACE, - anon_sym_COMMA, - [4037] = 2, + ACTIONS(667), 1, + anon_sym_func, + STATE(395), 1, + sym_func_type, + [6531] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(571), 2, + ACTIONS(914), 2, anon_sym_RBRACE, anon_sym_COMMA, - [4045] = 3, - ACTIONS(3), 1, - sym_comment, - ACTIONS(650), 1, - sym_id, - STATE(247), 1, - aux_sym_package_decl_repeat1, - [4055] = 3, + [6539] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(630), 1, - sym_id, - ACTIONS(652), 1, - anon_sym_RBRACE, - [4065] = 3, + ACTIONS(916), 1, + anon_sym_LBRACE, + STATE(41), 1, + sym_variant_body, + [6549] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(529), 1, - anon_sym_RBRACE, - ACTIONS(630), 1, - sym_id, - [4075] = 3, + ACTIONS(908), 1, + anon_sym_LBRACE, + STATE(78), 1, + sym_enum_body, + [6559] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(636), 1, - anon_sym_LPAREN, - STATE(142), 1, - sym_param_list, - [4085] = 2, + ACTIONS(918), 1, + anon_sym_LBRACE, + STATE(42), 1, + sym_flags_body, + [6569] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(596), 2, - anon_sym_RBRACE, + ACTIONS(920), 2, anon_sym_COMMA, - [4093] = 3, - ACTIONS(3), 1, - sym_comment, - ACTIONS(654), 1, - sym_id, - ACTIONS(656), 1, - anon_sym_RBRACE, - [4103] = 3, - ACTIONS(3), 1, - sym_comment, - ACTIONS(630), 1, - sym_id, - ACTIONS(658), 1, - anon_sym_RBRACE, - [4113] = 3, - ACTIONS(3), 1, - sym_comment, - ACTIONS(533), 1, - anon_sym_func, - STATE(294), 1, - sym_func_type, - [4123] = 2, + anon_sym_RPAREN, + [6577] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(660), 2, - anon_sym_SEMI, - anon_sym_DASH_GT, - [4131] = 3, + ACTIONS(916), 1, + anon_sym_LBRACE, + STATE(79), 1, + sym_variant_body, + [6587] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(662), 1, - sym_id, - ACTIONS(664), 1, - anon_sym_RBRACE, - [4141] = 3, + ACTIONS(825), 1, + anon_sym_LBRACE, + STATE(43), 1, + sym_record_body, + [6597] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(666), 1, + ACTIONS(887), 1, sym_id, - ACTIONS(668), 1, - anon_sym_RBRACE, - [4151] = 2, + STATE(296), 1, + aux_sym_package_decl_repeat2, + [6607] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(670), 2, - anon_sym_RBRACE, - anon_sym_COMMA, - [4159] = 2, + ACTIONS(922), 1, + anon_sym_LBRACE, + STATE(408), 1, + sym_include_names_body, + [6617] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(672), 2, - anon_sym_RBRACE, - anon_sym_COMMA, - [4167] = 2, + ACTIONS(918), 1, + anon_sym_LBRACE, + STATE(80), 1, + sym_flags_body, + [6627] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(674), 2, - anon_sym_RBRACE, - anon_sym_COMMA, - [4175] = 2, + ACTIONS(924), 1, + anon_sym_SEMI, + [6634] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(676), 2, - anon_sym_RBRACE, - anon_sym_COMMA, - [4183] = 3, + ACTIONS(926), 1, + anon_sym_LT, + [6641] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(678), 1, - anon_sym_LBRACE, - STATE(282), 1, - sym_include_names_body, - [4193] = 3, + ACTIONS(928), 1, + anon_sym_GT, + [6648] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(680), 1, - anon_sym_LBRACE, - STATE(88), 1, - sym_enum_body, - [4203] = 3, + ACTIONS(930), 1, + anon_sym_GT, + [6655] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(682), 1, - anon_sym_LBRACE, - STATE(86), 1, - sym_variant_body, - [4213] = 3, + ACTIONS(932), 1, + anon_sym_SEMI, + [6662] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(533), 1, - anon_sym_func, - STATE(323), 1, - sym_func_type, - [4223] = 3, + ACTIONS(934), 1, + anon_sym_SEMI, + [6669] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(684), 1, + ACTIONS(936), 1, anon_sym_LBRACE, - STATE(46), 1, - sym_enum_body, - [4233] = 3, + [6676] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(686), 1, - anon_sym_LBRACE, - STATE(50), 1, - sym_flags_body, - [4243] = 3, + ACTIONS(938), 1, + anon_sym_SEMI, + [6683] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(688), 1, - anon_sym_LBRACE, - STATE(51), 1, - sym_record_body, - [4253] = 3, + ACTIONS(940), 1, + sym_valid_semver, + [6690] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(690), 1, - anon_sym_LBRACE, - STATE(85), 1, - sym_flags_body, - [4263] = 3, + ACTIONS(942), 1, + anon_sym_COLON, + [6697] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(463), 1, + ACTIONS(944), 1, sym_id, - STATE(218), 1, - sym_record_field, - [4273] = 3, + [6704] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(692), 1, - anon_sym_SEMI, - ACTIONS(694), 1, - anon_sym_with, - [4283] = 3, + ACTIONS(946), 1, + sym_id, + [6711] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(696), 1, - anon_sym_LBRACE, - STATE(66), 1, - sym_record_body, - [4293] = 2, + ACTIONS(948), 1, + sym_id, + [6718] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(698), 2, - anon_sym_RBRACE, - anon_sym_COMMA, - [4301] = 3, + ACTIONS(950), 1, + sym_id, + [6725] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(700), 1, + ACTIONS(952), 1, sym_id, - STATE(256), 1, - aux_sym_package_decl_repeat1, - [4311] = 3, + [6732] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(431), 1, + ACTIONS(954), 1, sym_id, - STATE(224), 1, - sym_variant_case, - [4321] = 3, + [6739] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(956), 1, + anon_sym_EQ, + [6746] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(389), 1, + ACTIONS(958), 1, anon_sym_SEMI, - ACTIONS(702), 1, - anon_sym_COLON, - [4331] = 3, + [6753] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(704), 1, + ACTIONS(960), 1, anon_sym_SEMI, - ACTIONS(706), 1, - anon_sym_as, - [4341] = 2, + [6760] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(708), 2, + ACTIONS(962), 1, anon_sym_COMMA, - anon_sym_RPAREN, - [4349] = 2, + [6767] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(559), 2, - anon_sym_COMMA, - anon_sym_RPAREN, - [4357] = 3, + ACTIONS(964), 1, + anon_sym_DOT, + [6774] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(710), 1, - sym_id, - STATE(256), 1, - aux_sym_package_decl_repeat1, - [4367] = 3, + ACTIONS(966), 1, + sym_valid_semver, + [6781] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(712), 1, - anon_sym_LBRACE, - STATE(132), 1, - sym_world_body, - [4377] = 3, + ACTIONS(968), 1, + sym_valid_semver, + [6788] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(634), 1, - anon_sym_LBRACE, - STATE(131), 1, - sym_interface_body, - [4387] = 3, + ACTIONS(970), 1, + anon_sym_SEMI, + [6795] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(972), 1, + anon_sym_COLON, + [6802] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(714), 1, + ACTIONS(974), 1, sym_id, - STATE(256), 1, - aux_sym_package_decl_repeat1, - [4397] = 3, + [6809] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(447), 1, + ACTIONS(976), 1, sym_id, - STATE(232), 1, - sym_use_names_item, - [4407] = 3, + [6816] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(537), 1, + ACTIONS(978), 1, sym_id, - STATE(234), 1, - sym_include_names_item, - [4417] = 2, + [6823] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(554), 2, - anon_sym_COMMA, - anon_sym_GT, - [4425] = 2, + ACTIONS(980), 1, + sym_id, + [6830] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(717), 2, - anon_sym_SEMI, - anon_sym_DASH_GT, - [4433] = 3, + ACTIONS(982), 1, + sym_id, + [6837] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(389), 1, - anon_sym_SEMI, - ACTIONS(719), 1, - anon_sym_COLON, - [4443] = 2, + ACTIONS(984), 1, + sym_id, + [6844] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(721), 1, + ACTIONS(986), 1, sym_id, - [4450] = 2, + [6851] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(723), 1, - anon_sym_SEMI, - [4457] = 2, + ACTIONS(988), 1, + anon_sym_GT, + [6858] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(725), 1, + ACTIONS(990), 1, anon_sym_GT, - [4464] = 2, + [6865] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(727), 1, + ACTIONS(992), 1, anon_sym_SEMI, - [4471] = 2, + [6872] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(729), 1, - anon_sym_SEMI, - [4478] = 2, + ACTIONS(994), 1, + sym_valid_semver, + [6879] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(731), 1, - anon_sym_DOT, - [4485] = 2, + ACTIONS(996), 1, + anon_sym_SEMI, + [6886] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(733), 1, + ACTIONS(998), 1, sym_valid_semver, - [4492] = 2, + [6893] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(735), 1, - sym_valid_semver, - [4499] = 2, + ACTIONS(1000), 1, + sym_id, + [6900] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(737), 1, + ACTIONS(1002), 1, anon_sym_SEMI, - [4506] = 2, + [6907] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(739), 1, - anon_sym_COLON, - [4513] = 2, + ACTIONS(1004), 1, + anon_sym_SEMI, + [6914] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(741), 1, - sym_id, - [4520] = 2, + ACTIONS(1006), 1, + anon_sym_EQ, + [6921] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(743), 1, - sym_id, - [4527] = 2, + ACTIONS(1008), 1, + anon_sym_SEMI, + [6928] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(745), 1, - sym_id, - [4534] = 2, + ACTIONS(1010), 1, + anon_sym_GT, + [6935] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(747), 1, + ACTIONS(1012), 1, sym_id, - [4541] = 2, + [6942] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(749), 1, - sym_id, - [4548] = 2, + ACTIONS(1014), 1, + sym_valid_semver, + [6949] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(751), 1, + ACTIONS(1016), 1, sym_id, - [4555] = 2, + [6956] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(753), 1, + ACTIONS(1018), 1, anon_sym_SEMI, - [4562] = 2, + [6963] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(755), 1, + ACTIONS(1020), 1, anon_sym_RPAREN, - [4569] = 2, + [6970] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(757), 1, + ACTIONS(1022), 1, + sym_id, + [6977] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1024), 1, anon_sym_SEMI, - [4576] = 2, + [6984] = 2, + ACTIONS(839), 1, + sym_comment, + ACTIONS(1026), 1, + sym_docs, + [6991] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(759), 1, - anon_sym_COLON, - [4583] = 2, + ACTIONS(1028), 1, + sym_id, + [6998] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(761), 1, + ACTIONS(1030), 1, anon_sym_SEMI, - [4590] = 2, + [7005] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(763), 1, - sym_valid_semver, - [4597] = 2, + ACTIONS(1032), 1, + sym_id, + [7012] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(765), 1, - anon_sym_SEMI, - [4604] = 2, + ACTIONS(1034), 1, + anon_sym_RPAREN, + [7019] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(767), 1, - sym_valid_semver, - [4611] = 2, + ACTIONS(1036), 1, + anon_sym_LT, + [7026] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(769), 1, + ACTIONS(1038), 1, sym_id, - [4618] = 2, + [7033] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(771), 1, + ACTIONS(1040), 1, sym_id, - [4625] = 2, + [7040] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(773), 1, - anon_sym_SEMI, - [4632] = 2, + ACTIONS(1042), 1, + sym_id, + [7047] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(775), 1, + ACTIONS(1044), 1, sym_id, - [4639] = 2, + [7054] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(777), 1, - anon_sym_RPAREN, - [4646] = 2, - ACTIONS(3), 1, + ACTIONS(1046), 1, + anon_sym_LT, + [7061] = 2, + ACTIONS(839), 1, sym_comment, - ACTIONS(779), 1, - anon_sym_SEMI, - [4653] = 2, + ACTIONS(1048), 1, + sym_docs, + [7068] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(781), 1, - anon_sym_SEMI, - [4660] = 2, + ACTIONS(1050), 1, + anon_sym_LT, + [7075] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(783), 1, - anon_sym_COLON, - [4667] = 2, + ACTIONS(1052), 1, + anon_sym_LT, + [7082] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(785), 1, + ACTIONS(1054), 1, anon_sym_SEMI, - [4674] = 2, + [7089] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(309), 1, + ACTIONS(1056), 1, anon_sym_COLON, - [4681] = 2, - ACTIONS(3), 1, - sym_comment, - ACTIONS(787), 1, - ts_builtin_sym_end, - [4688] = 2, + [7096] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(789), 1, - sym_id, - [4695] = 2, + ACTIONS(1058), 1, + anon_sym_SEMI, + [7103] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(791), 1, + ACTIONS(1060), 1, anon_sym_SEMI, - [4702] = 2, + [7110] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(630), 1, - sym_id, - [4709] = 2, + ACTIONS(1062), 1, + anon_sym_SEMI, + [7117] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(793), 1, - anon_sym_EQ, - [4716] = 2, + ACTIONS(1064), 1, + anon_sym_RPAREN, + [7124] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(795), 1, - sym_id, - [4723] = 2, + ACTIONS(1066), 1, + anon_sym_SEMI, + [7131] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(797), 1, - anon_sym_SEMI, - [4730] = 2, + ACTIONS(1068), 1, + anon_sym_COLON, + [7138] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(799), 1, - anon_sym_LBRACE, - [4737] = 2, + ACTIONS(1070), 1, + anon_sym_COLON, + [7145] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(801), 1, + ACTIONS(1072), 1, anon_sym_SEMI, - [4744] = 2, + [7152] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(803), 1, - anon_sym_RPAREN, - [4751] = 2, + ACTIONS(1074), 1, + anon_sym_COLON, + [7159] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(805), 1, - sym_id, - [4758] = 2, + ACTIONS(1076), 1, + anon_sym_SEMI, + [7166] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(807), 1, + ACTIONS(1078), 1, anon_sym_SEMI, - [4765] = 2, + [7173] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(809), 1, + ACTIONS(1080), 1, anon_sym_SEMI, - [4772] = 2, + [7180] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(811), 1, - anon_sym_LT, - [4779] = 2, + ACTIONS(1082), 1, + anon_sym_SEMI, + [7187] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(813), 1, - anon_sym_LT, - [4786] = 2, + ACTIONS(1084), 1, + anon_sym_COLON, + [7194] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(815), 1, - anon_sym_LT, - [4793] = 2, + ACTIONS(1086), 1, + anon_sym_RBRACE, + [7201] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(817), 1, - anon_sym_LT, - [4800] = 2, + ACTIONS(1088), 1, + anon_sym_SEMI, + [7208] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(819), 1, - sym_id, - [4807] = 2, + ACTIONS(1090), 1, + anon_sym_SEMI, + [7215] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(821), 1, - anon_sym_GT, - [4814] = 2, + ACTIONS(1092), 1, + anon_sym_SEMI, + [7222] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(823), 1, - anon_sym_LT, - [4821] = 2, + ACTIONS(450), 1, + anon_sym_COLON, + [7229] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(825), 1, - anon_sym_GT, - [4828] = 2, + ACTIONS(1094), 1, + ts_builtin_sym_end, + [7236] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(827), 1, - anon_sym_SEMI, - [4835] = 2, + ACTIONS(1096), 1, + anon_sym_RPAREN, + [7243] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(829), 1, - anon_sym_COLON, - [4842] = 2, + ACTIONS(1098), 1, + sym_id, + [7250] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(831), 1, - sym_id, - [4849] = 2, + ACTIONS(1100), 1, + anon_sym_as, + [7257] = 2, + ACTIONS(839), 1, + sym_comment, + ACTIONS(1102), 1, + sym_docs, + [7264] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(640), 1, - anon_sym_COMMA, - [4856] = 2, + ACTIONS(1104), 1, + anon_sym_RBRACE, + [7271] = 2, + ACTIONS(839), 1, + sym_comment, + ACTIONS(1106), 1, + sym_docs, + [7278] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(833), 1, + ACTIONS(1108), 1, sym_id, - [4863] = 2, + [7285] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(835), 1, - anon_sym_SEMI, - [4870] = 2, + ACTIONS(1110), 1, + sym_id, + [7292] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(837), 1, - anon_sym_SEMI, - [4877] = 2, + ACTIONS(1112), 1, + sym_id, + [7299] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(839), 1, - anon_sym_GT, - [4884] = 2, + ACTIONS(1114), 1, + sym_id, + [7306] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(841), 1, - anon_sym_GT, - [4891] = 2, + ACTIONS(1116), 1, + sym_id, + [7313] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(843), 1, - anon_sym_GT, - [4898] = 2, + ACTIONS(1118), 1, + sym_id, + [7320] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(845), 1, + ACTIONS(1120), 1, sym_id, - [4905] = 2, + [7327] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(847), 1, + ACTIONS(1122), 1, sym_id, - [4912] = 2, + [7334] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(849), 1, + ACTIONS(1124), 1, sym_id, - [4919] = 2, + [7341] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(851), 1, - sym_id, - [4926] = 2, + ACTIONS(1126), 1, + anon_sym_GT, + [7348] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(853), 1, + ACTIONS(1128), 1, anon_sym_RBRACE, - [4933] = 2, + [7355] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(855), 1, - anon_sym_RBRACE, - [4940] = 2, + ACTIONS(1130), 1, + anon_sym_EQ, + [7362] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(857), 1, + ACTIONS(1132), 1, anon_sym_EQ, - [4947] = 2, + [7369] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(859), 1, - anon_sym_as, - [4954] = 2, + ACTIONS(1134), 1, + anon_sym_GT, + [7376] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(861), 1, + ACTIONS(1136), 1, sym_id, - [4961] = 2, + [7383] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(863), 1, + ACTIONS(1138), 1, + sym_id, + [7390] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1140), 1, anon_sym_LBRACE, - [4968] = 2, + [7397] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(865), 1, + ACTIONS(1142), 1, anon_sym_DOT, - [4975] = 2, + [7404] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(867), 1, - anon_sym_RBRACE, + ACTIONS(1144), 1, + anon_sym_COLON, }; static const uint32_t ts_small_parse_table_map[] = { @@ -7372,328 +9737,456 @@ static const uint32_t ts_small_parse_table_map[] = { [SMALL_STATE(14)] = 690, [SMALL_STATE(15)] = 746, [SMALL_STATE(16)] = 802, - [SMALL_STATE(17)] = 866, - [SMALL_STATE(18)] = 930, - [SMALL_STATE(19)] = 994, - [SMALL_STATE(20)] = 1046, - [SMALL_STATE(21)] = 1098, - [SMALL_STATE(22)] = 1150, - [SMALL_STATE(23)] = 1170, - [SMALL_STATE(24)] = 1196, - [SMALL_STATE(25)] = 1216, - [SMALL_STATE(26)] = 1242, - [SMALL_STATE(27)] = 1259, - [SMALL_STATE(28)] = 1276, - [SMALL_STATE(29)] = 1293, - [SMALL_STATE(30)] = 1310, - [SMALL_STATE(31)] = 1327, - [SMALL_STATE(32)] = 1344, - [SMALL_STATE(33)] = 1361, - [SMALL_STATE(34)] = 1378, - [SMALL_STATE(35)] = 1395, - [SMALL_STATE(36)] = 1412, - [SMALL_STATE(37)] = 1429, - [SMALL_STATE(38)] = 1446, - [SMALL_STATE(39)] = 1463, - [SMALL_STATE(40)] = 1480, - [SMALL_STATE(41)] = 1497, - [SMALL_STATE(42)] = 1514, - [SMALL_STATE(43)] = 1531, - [SMALL_STATE(44)] = 1548, - [SMALL_STATE(45)] = 1565, - [SMALL_STATE(46)] = 1582, - [SMALL_STATE(47)] = 1599, - [SMALL_STATE(48)] = 1616, - [SMALL_STATE(49)] = 1633, - [SMALL_STATE(50)] = 1650, - [SMALL_STATE(51)] = 1667, - [SMALL_STATE(52)] = 1684, - [SMALL_STATE(53)] = 1701, - [SMALL_STATE(54)] = 1718, - [SMALL_STATE(55)] = 1735, - [SMALL_STATE(56)] = 1752, - [SMALL_STATE(57)] = 1769, - [SMALL_STATE(58)] = 1786, - [SMALL_STATE(59)] = 1803, - [SMALL_STATE(60)] = 1820, - [SMALL_STATE(61)] = 1837, - [SMALL_STATE(62)] = 1854, - [SMALL_STATE(63)] = 1871, - [SMALL_STATE(64)] = 1888, - [SMALL_STATE(65)] = 1905, - [SMALL_STATE(66)] = 1922, - [SMALL_STATE(67)] = 1939, - [SMALL_STATE(68)] = 1956, - [SMALL_STATE(69)] = 1973, - [SMALL_STATE(70)] = 1990, - [SMALL_STATE(71)] = 2007, - [SMALL_STATE(72)] = 2024, - [SMALL_STATE(73)] = 2041, - [SMALL_STATE(74)] = 2058, - [SMALL_STATE(75)] = 2075, - [SMALL_STATE(76)] = 2092, - [SMALL_STATE(77)] = 2109, - [SMALL_STATE(78)] = 2126, - [SMALL_STATE(79)] = 2143, - [SMALL_STATE(80)] = 2160, - [SMALL_STATE(81)] = 2177, - [SMALL_STATE(82)] = 2194, - [SMALL_STATE(83)] = 2211, - [SMALL_STATE(84)] = 2228, - [SMALL_STATE(85)] = 2245, - [SMALL_STATE(86)] = 2262, - [SMALL_STATE(87)] = 2279, - [SMALL_STATE(88)] = 2296, - [SMALL_STATE(89)] = 2313, - [SMALL_STATE(90)] = 2330, - [SMALL_STATE(91)] = 2347, - [SMALL_STATE(92)] = 2364, - [SMALL_STATE(93)] = 2381, - [SMALL_STATE(94)] = 2398, - [SMALL_STATE(95)] = 2415, - [SMALL_STATE(96)] = 2432, - [SMALL_STATE(97)] = 2454, - [SMALL_STATE(98)] = 2476, - [SMALL_STATE(99)] = 2498, - [SMALL_STATE(100)] = 2520, - [SMALL_STATE(101)] = 2542, - [SMALL_STATE(102)] = 2561, - [SMALL_STATE(103)] = 2578, - [SMALL_STATE(104)] = 2598, - [SMALL_STATE(105)] = 2618, - [SMALL_STATE(106)] = 2632, - [SMALL_STATE(107)] = 2652, - [SMALL_STATE(108)] = 2666, - [SMALL_STATE(109)] = 2686, - [SMALL_STATE(110)] = 2706, - [SMALL_STATE(111)] = 2717, - [SMALL_STATE(112)] = 2728, - [SMALL_STATE(113)] = 2739, - [SMALL_STATE(114)] = 2758, - [SMALL_STATE(115)] = 2777, - [SMALL_STATE(116)] = 2796, - [SMALL_STATE(117)] = 2807, - [SMALL_STATE(118)] = 2818, - [SMALL_STATE(119)] = 2829, - [SMALL_STATE(120)] = 2840, - [SMALL_STATE(121)] = 2851, - [SMALL_STATE(122)] = 2864, - [SMALL_STATE(123)] = 2875, - [SMALL_STATE(124)] = 2886, - [SMALL_STATE(125)] = 2897, - [SMALL_STATE(126)] = 2907, - [SMALL_STATE(127)] = 2917, - [SMALL_STATE(128)] = 2927, - [SMALL_STATE(129)] = 2943, - [SMALL_STATE(130)] = 2953, - [SMALL_STATE(131)] = 2963, - [SMALL_STATE(132)] = 2973, - [SMALL_STATE(133)] = 2983, - [SMALL_STATE(134)] = 2999, - [SMALL_STATE(135)] = 3009, - [SMALL_STATE(136)] = 3025, - [SMALL_STATE(137)] = 3035, - [SMALL_STATE(138)] = 3045, - [SMALL_STATE(139)] = 3055, - [SMALL_STATE(140)] = 3065, - [SMALL_STATE(141)] = 3078, - [SMALL_STATE(142)] = 3091, - [SMALL_STATE(143)] = 3104, - [SMALL_STATE(144)] = 3117, - [SMALL_STATE(145)] = 3128, - [SMALL_STATE(146)] = 3141, - [SMALL_STATE(147)] = 3154, - [SMALL_STATE(148)] = 3167, - [SMALL_STATE(149)] = 3180, - [SMALL_STATE(150)] = 3193, - [SMALL_STATE(151)] = 3206, - [SMALL_STATE(152)] = 3219, - [SMALL_STATE(153)] = 3230, - [SMALL_STATE(154)] = 3243, - [SMALL_STATE(155)] = 3256, - [SMALL_STATE(156)] = 3269, - [SMALL_STATE(157)] = 3282, - [SMALL_STATE(158)] = 3295, - [SMALL_STATE(159)] = 3308, - [SMALL_STATE(160)] = 3321, - [SMALL_STATE(161)] = 3334, - [SMALL_STATE(162)] = 3347, - [SMALL_STATE(163)] = 3360, - [SMALL_STATE(164)] = 3373, - [SMALL_STATE(165)] = 3386, - [SMALL_STATE(166)] = 3399, - [SMALL_STATE(167)] = 3412, - [SMALL_STATE(168)] = 3425, - [SMALL_STATE(169)] = 3438, - [SMALL_STATE(170)] = 3451, - [SMALL_STATE(171)] = 3464, - [SMALL_STATE(172)] = 3477, - [SMALL_STATE(173)] = 3490, - [SMALL_STATE(174)] = 3503, - [SMALL_STATE(175)] = 3516, - [SMALL_STATE(176)] = 3527, - [SMALL_STATE(177)] = 3540, - [SMALL_STATE(178)] = 3553, - [SMALL_STATE(179)] = 3566, - [SMALL_STATE(180)] = 3579, - [SMALL_STATE(181)] = 3592, - [SMALL_STATE(182)] = 3603, - [SMALL_STATE(183)] = 3616, - [SMALL_STATE(184)] = 3629, - [SMALL_STATE(185)] = 3642, - [SMALL_STATE(186)] = 3655, - [SMALL_STATE(187)] = 3668, - [SMALL_STATE(188)] = 3681, - [SMALL_STATE(189)] = 3694, - [SMALL_STATE(190)] = 3707, - [SMALL_STATE(191)] = 3720, - [SMALL_STATE(192)] = 3731, - [SMALL_STATE(193)] = 3744, - [SMALL_STATE(194)] = 3757, - [SMALL_STATE(195)] = 3770, - [SMALL_STATE(196)] = 3783, - [SMALL_STATE(197)] = 3796, - [SMALL_STATE(198)] = 3809, - [SMALL_STATE(199)] = 3822, - [SMALL_STATE(200)] = 3835, - [SMALL_STATE(201)] = 3846, - [SMALL_STATE(202)] = 3859, - [SMALL_STATE(203)] = 3872, - [SMALL_STATE(204)] = 3885, - [SMALL_STATE(205)] = 3898, - [SMALL_STATE(206)] = 3911, - [SMALL_STATE(207)] = 3921, - [SMALL_STATE(208)] = 3931, - [SMALL_STATE(209)] = 3941, - [SMALL_STATE(210)] = 3951, - [SMALL_STATE(211)] = 3961, - [SMALL_STATE(212)] = 3971, - [SMALL_STATE(213)] = 3981, - [SMALL_STATE(214)] = 3991, - [SMALL_STATE(215)] = 4001, - [SMALL_STATE(216)] = 4011, - [SMALL_STATE(217)] = 4021, - [SMALL_STATE(218)] = 4029, - [SMALL_STATE(219)] = 4037, - [SMALL_STATE(220)] = 4045, - [SMALL_STATE(221)] = 4055, - [SMALL_STATE(222)] = 4065, - [SMALL_STATE(223)] = 4075, - [SMALL_STATE(224)] = 4085, - [SMALL_STATE(225)] = 4093, - [SMALL_STATE(226)] = 4103, - [SMALL_STATE(227)] = 4113, - [SMALL_STATE(228)] = 4123, - [SMALL_STATE(229)] = 4131, - [SMALL_STATE(230)] = 4141, - [SMALL_STATE(231)] = 4151, - [SMALL_STATE(232)] = 4159, - [SMALL_STATE(233)] = 4167, - [SMALL_STATE(234)] = 4175, - [SMALL_STATE(235)] = 4183, - [SMALL_STATE(236)] = 4193, - [SMALL_STATE(237)] = 4203, - [SMALL_STATE(238)] = 4213, - [SMALL_STATE(239)] = 4223, - [SMALL_STATE(240)] = 4233, - [SMALL_STATE(241)] = 4243, - [SMALL_STATE(242)] = 4253, - [SMALL_STATE(243)] = 4263, - [SMALL_STATE(244)] = 4273, - [SMALL_STATE(245)] = 4283, - [SMALL_STATE(246)] = 4293, - [SMALL_STATE(247)] = 4301, - [SMALL_STATE(248)] = 4311, - [SMALL_STATE(249)] = 4321, - [SMALL_STATE(250)] = 4331, - [SMALL_STATE(251)] = 4341, - [SMALL_STATE(252)] = 4349, - [SMALL_STATE(253)] = 4357, - [SMALL_STATE(254)] = 4367, - [SMALL_STATE(255)] = 4377, - [SMALL_STATE(256)] = 4387, - [SMALL_STATE(257)] = 4397, - [SMALL_STATE(258)] = 4407, - [SMALL_STATE(259)] = 4417, - [SMALL_STATE(260)] = 4425, - [SMALL_STATE(261)] = 4433, - [SMALL_STATE(262)] = 4443, - [SMALL_STATE(263)] = 4450, - [SMALL_STATE(264)] = 4457, - [SMALL_STATE(265)] = 4464, - [SMALL_STATE(266)] = 4471, - [SMALL_STATE(267)] = 4478, - [SMALL_STATE(268)] = 4485, - [SMALL_STATE(269)] = 4492, - [SMALL_STATE(270)] = 4499, - [SMALL_STATE(271)] = 4506, - [SMALL_STATE(272)] = 4513, - [SMALL_STATE(273)] = 4520, - [SMALL_STATE(274)] = 4527, - [SMALL_STATE(275)] = 4534, - [SMALL_STATE(276)] = 4541, - [SMALL_STATE(277)] = 4548, - [SMALL_STATE(278)] = 4555, - [SMALL_STATE(279)] = 4562, - [SMALL_STATE(280)] = 4569, - [SMALL_STATE(281)] = 4576, - [SMALL_STATE(282)] = 4583, - [SMALL_STATE(283)] = 4590, - [SMALL_STATE(284)] = 4597, - [SMALL_STATE(285)] = 4604, - [SMALL_STATE(286)] = 4611, - [SMALL_STATE(287)] = 4618, - [SMALL_STATE(288)] = 4625, - [SMALL_STATE(289)] = 4632, - [SMALL_STATE(290)] = 4639, - [SMALL_STATE(291)] = 4646, - [SMALL_STATE(292)] = 4653, - [SMALL_STATE(293)] = 4660, - [SMALL_STATE(294)] = 4667, - [SMALL_STATE(295)] = 4674, - [SMALL_STATE(296)] = 4681, - [SMALL_STATE(297)] = 4688, - [SMALL_STATE(298)] = 4695, - [SMALL_STATE(299)] = 4702, - [SMALL_STATE(300)] = 4709, - [SMALL_STATE(301)] = 4716, - [SMALL_STATE(302)] = 4723, - [SMALL_STATE(303)] = 4730, - [SMALL_STATE(304)] = 4737, - [SMALL_STATE(305)] = 4744, - [SMALL_STATE(306)] = 4751, - [SMALL_STATE(307)] = 4758, - [SMALL_STATE(308)] = 4765, - [SMALL_STATE(309)] = 4772, - [SMALL_STATE(310)] = 4779, - [SMALL_STATE(311)] = 4786, - [SMALL_STATE(312)] = 4793, - [SMALL_STATE(313)] = 4800, - [SMALL_STATE(314)] = 4807, - [SMALL_STATE(315)] = 4814, - [SMALL_STATE(316)] = 4821, - [SMALL_STATE(317)] = 4828, - [SMALL_STATE(318)] = 4835, - [SMALL_STATE(319)] = 4842, - [SMALL_STATE(320)] = 4849, - [SMALL_STATE(321)] = 4856, - [SMALL_STATE(322)] = 4863, - [SMALL_STATE(323)] = 4870, - [SMALL_STATE(324)] = 4877, - [SMALL_STATE(325)] = 4884, - [SMALL_STATE(326)] = 4891, - [SMALL_STATE(327)] = 4898, - [SMALL_STATE(328)] = 4905, - [SMALL_STATE(329)] = 4912, - [SMALL_STATE(330)] = 4919, - [SMALL_STATE(331)] = 4926, - [SMALL_STATE(332)] = 4933, - [SMALL_STATE(333)] = 4940, - [SMALL_STATE(334)] = 4947, - [SMALL_STATE(335)] = 4954, - [SMALL_STATE(336)] = 4961, - [SMALL_STATE(337)] = 4968, - [SMALL_STATE(338)] = 4975, + [SMALL_STATE(17)] = 858, + [SMALL_STATE(18)] = 914, + [SMALL_STATE(19)] = 970, + [SMALL_STATE(20)] = 1026, + [SMALL_STATE(21)] = 1082, + [SMALL_STATE(22)] = 1138, + [SMALL_STATE(23)] = 1212, + [SMALL_STATE(24)] = 1286, + [SMALL_STATE(25)] = 1360, + [SMALL_STATE(26)] = 1422, + [SMALL_STATE(27)] = 1484, + [SMALL_STATE(28)] = 1546, + [SMALL_STATE(29)] = 1573, + [SMALL_STATE(30)] = 1594, + [SMALL_STATE(31)] = 1621, + [SMALL_STATE(32)] = 1642, + [SMALL_STATE(33)] = 1669, + [SMALL_STATE(34)] = 1696, + [SMALL_STATE(35)] = 1721, + [SMALL_STATE(36)] = 1739, + [SMALL_STATE(37)] = 1771, + [SMALL_STATE(38)] = 1789, + [SMALL_STATE(39)] = 1807, + [SMALL_STATE(40)] = 1825, + [SMALL_STATE(41)] = 1843, + [SMALL_STATE(42)] = 1861, + [SMALL_STATE(43)] = 1879, + [SMALL_STATE(44)] = 1897, + [SMALL_STATE(45)] = 1929, + [SMALL_STATE(46)] = 1947, + [SMALL_STATE(47)] = 1965, + [SMALL_STATE(48)] = 1983, + [SMALL_STATE(49)] = 2001, + [SMALL_STATE(50)] = 2019, + [SMALL_STATE(51)] = 2037, + [SMALL_STATE(52)] = 2055, + [SMALL_STATE(53)] = 2073, + [SMALL_STATE(54)] = 2105, + [SMALL_STATE(55)] = 2137, + [SMALL_STATE(56)] = 2155, + [SMALL_STATE(57)] = 2173, + [SMALL_STATE(58)] = 2191, + [SMALL_STATE(59)] = 2209, + [SMALL_STATE(60)] = 2241, + [SMALL_STATE(61)] = 2259, + [SMALL_STATE(62)] = 2277, + [SMALL_STATE(63)] = 2295, + [SMALL_STATE(64)] = 2313, + [SMALL_STATE(65)] = 2331, + [SMALL_STATE(66)] = 2349, + [SMALL_STATE(67)] = 2367, + [SMALL_STATE(68)] = 2385, + [SMALL_STATE(69)] = 2417, + [SMALL_STATE(70)] = 2435, + [SMALL_STATE(71)] = 2453, + [SMALL_STATE(72)] = 2471, + [SMALL_STATE(73)] = 2489, + [SMALL_STATE(74)] = 2521, + [SMALL_STATE(75)] = 2553, + [SMALL_STATE(76)] = 2571, + [SMALL_STATE(77)] = 2603, + [SMALL_STATE(78)] = 2621, + [SMALL_STATE(79)] = 2639, + [SMALL_STATE(80)] = 2657, + [SMALL_STATE(81)] = 2675, + [SMALL_STATE(82)] = 2693, + [SMALL_STATE(83)] = 2711, + [SMALL_STATE(84)] = 2729, + [SMALL_STATE(85)] = 2747, + [SMALL_STATE(86)] = 2765, + [SMALL_STATE(87)] = 2783, + [SMALL_STATE(88)] = 2801, + [SMALL_STATE(89)] = 2819, + [SMALL_STATE(90)] = 2837, + [SMALL_STATE(91)] = 2860, + [SMALL_STATE(92)] = 2895, + [SMALL_STATE(93)] = 2913, + [SMALL_STATE(94)] = 2931, + [SMALL_STATE(95)] = 2949, + [SMALL_STATE(96)] = 2967, + [SMALL_STATE(97)] = 2985, + [SMALL_STATE(98)] = 3003, + [SMALL_STATE(99)] = 3021, + [SMALL_STATE(100)] = 3039, + [SMALL_STATE(101)] = 3057, + [SMALL_STATE(102)] = 3075, + [SMALL_STATE(103)] = 3093, + [SMALL_STATE(104)] = 3111, + [SMALL_STATE(105)] = 3129, + [SMALL_STATE(106)] = 3147, + [SMALL_STATE(107)] = 3165, + [SMALL_STATE(108)] = 3181, + [SMALL_STATE(109)] = 3199, + [SMALL_STATE(110)] = 3215, + [SMALL_STATE(111)] = 3233, + [SMALL_STATE(112)] = 3251, + [SMALL_STATE(113)] = 3269, + [SMALL_STATE(114)] = 3285, + [SMALL_STATE(115)] = 3303, + [SMALL_STATE(116)] = 3321, + [SMALL_STATE(117)] = 3339, + [SMALL_STATE(118)] = 3357, + [SMALL_STATE(119)] = 3375, + [SMALL_STATE(120)] = 3393, + [SMALL_STATE(121)] = 3411, + [SMALL_STATE(122)] = 3429, + [SMALL_STATE(123)] = 3447, + [SMALL_STATE(124)] = 3465, + [SMALL_STATE(125)] = 3483, + [SMALL_STATE(126)] = 3501, + [SMALL_STATE(127)] = 3519, + [SMALL_STATE(128)] = 3537, + [SMALL_STATE(129)] = 3555, + [SMALL_STATE(130)] = 3573, + [SMALL_STATE(131)] = 3591, + [SMALL_STATE(132)] = 3609, + [SMALL_STATE(133)] = 3627, + [SMALL_STATE(134)] = 3659, + [SMALL_STATE(135)] = 3677, + [SMALL_STATE(136)] = 3703, + [SMALL_STATE(137)] = 3719, + [SMALL_STATE(138)] = 3741, + [SMALL_STATE(139)] = 3767, + [SMALL_STATE(140)] = 3783, + [SMALL_STATE(141)] = 3799, + [SMALL_STATE(142)] = 3822, + [SMALL_STATE(143)] = 3845, + [SMALL_STATE(144)] = 3868, + [SMALL_STATE(145)] = 3891, + [SMALL_STATE(146)] = 3914, + [SMALL_STATE(147)] = 3937, + [SMALL_STATE(148)] = 3960, + [SMALL_STATE(149)] = 3983, + [SMALL_STATE(150)] = 4002, + [SMALL_STATE(151)] = 4025, + [SMALL_STATE(152)] = 4048, + [SMALL_STATE(153)] = 4071, + [SMALL_STATE(154)] = 4094, + [SMALL_STATE(155)] = 4117, + [SMALL_STATE(156)] = 4140, + [SMALL_STATE(157)] = 4163, + [SMALL_STATE(158)] = 4186, + [SMALL_STATE(159)] = 4209, + [SMALL_STATE(160)] = 4226, + [SMALL_STATE(161)] = 4249, + [SMALL_STATE(162)] = 4272, + [SMALL_STATE(163)] = 4295, + [SMALL_STATE(164)] = 4318, + [SMALL_STATE(165)] = 4341, + [SMALL_STATE(166)] = 4364, + [SMALL_STATE(167)] = 4387, + [SMALL_STATE(168)] = 4410, + [SMALL_STATE(169)] = 4433, + [SMALL_STATE(170)] = 4456, + [SMALL_STATE(171)] = 4474, + [SMALL_STATE(172)] = 4494, + [SMALL_STATE(173)] = 4508, + [SMALL_STATE(174)] = 4522, + [SMALL_STATE(175)] = 4542, + [SMALL_STATE(176)] = 4562, + [SMALL_STATE(177)] = 4582, + [SMALL_STATE(178)] = 4602, + [SMALL_STATE(179)] = 4622, + [SMALL_STATE(180)] = 4642, + [SMALL_STATE(181)] = 4653, + [SMALL_STATE(182)] = 4670, + [SMALL_STATE(183)] = 4681, + [SMALL_STATE(184)] = 4692, + [SMALL_STATE(185)] = 4711, + [SMALL_STATE(186)] = 4722, + [SMALL_STATE(187)] = 4733, + [SMALL_STATE(188)] = 4752, + [SMALL_STATE(189)] = 4763, + [SMALL_STATE(190)] = 4782, + [SMALL_STATE(191)] = 4793, + [SMALL_STATE(192)] = 4804, + [SMALL_STATE(193)] = 4815, + [SMALL_STATE(194)] = 4826, + [SMALL_STATE(195)] = 4837, + [SMALL_STATE(196)] = 4848, + [SMALL_STATE(197)] = 4859, + [SMALL_STATE(198)] = 4870, + [SMALL_STATE(199)] = 4881, + [SMALL_STATE(200)] = 4898, + [SMALL_STATE(201)] = 4909, + [SMALL_STATE(202)] = 4920, + [SMALL_STATE(203)] = 4931, + [SMALL_STATE(204)] = 4948, + [SMALL_STATE(205)] = 4967, + [SMALL_STATE(206)] = 4984, + [SMALL_STATE(207)] = 4995, + [SMALL_STATE(208)] = 5006, + [SMALL_STATE(209)] = 5023, + [SMALL_STATE(210)] = 5034, + [SMALL_STATE(211)] = 5045, + [SMALL_STATE(212)] = 5056, + [SMALL_STATE(213)] = 5073, + [SMALL_STATE(214)] = 5084, + [SMALL_STATE(215)] = 5095, + [SMALL_STATE(216)] = 5106, + [SMALL_STATE(217)] = 5119, + [SMALL_STATE(218)] = 5130, + [SMALL_STATE(219)] = 5141, + [SMALL_STATE(220)] = 5153, + [SMALL_STATE(221)] = 5165, + [SMALL_STATE(222)] = 5181, + [SMALL_STATE(223)] = 5193, + [SMALL_STATE(224)] = 5203, + [SMALL_STATE(225)] = 5215, + [SMALL_STATE(226)] = 5225, + [SMALL_STATE(227)] = 5237, + [SMALL_STATE(228)] = 5249, + [SMALL_STATE(229)] = 5265, + [SMALL_STATE(230)] = 5277, + [SMALL_STATE(231)] = 5290, + [SMALL_STATE(232)] = 5303, + [SMALL_STATE(233)] = 5316, + [SMALL_STATE(234)] = 5329, + [SMALL_STATE(235)] = 5342, + [SMALL_STATE(236)] = 5355, + [SMALL_STATE(237)] = 5368, + [SMALL_STATE(238)] = 5381, + [SMALL_STATE(239)] = 5392, + [SMALL_STATE(240)] = 5405, + [SMALL_STATE(241)] = 5418, + [SMALL_STATE(242)] = 5431, + [SMALL_STATE(243)] = 5444, + [SMALL_STATE(244)] = 5457, + [SMALL_STATE(245)] = 5470, + [SMALL_STATE(246)] = 5483, + [SMALL_STATE(247)] = 5496, + [SMALL_STATE(248)] = 5509, + [SMALL_STATE(249)] = 5522, + [SMALL_STATE(250)] = 5533, + [SMALL_STATE(251)] = 5544, + [SMALL_STATE(252)] = 5555, + [SMALL_STATE(253)] = 5568, + [SMALL_STATE(254)] = 5581, + [SMALL_STATE(255)] = 5594, + [SMALL_STATE(256)] = 5607, + [SMALL_STATE(257)] = 5620, + [SMALL_STATE(258)] = 5633, + [SMALL_STATE(259)] = 5646, + [SMALL_STATE(260)] = 5659, + [SMALL_STATE(261)] = 5672, + [SMALL_STATE(262)] = 5685, + [SMALL_STATE(263)] = 5698, + [SMALL_STATE(264)] = 5711, + [SMALL_STATE(265)] = 5724, + [SMALL_STATE(266)] = 5737, + [SMALL_STATE(267)] = 5750, + [SMALL_STATE(268)] = 5763, + [SMALL_STATE(269)] = 5776, + [SMALL_STATE(270)] = 5789, + [SMALL_STATE(271)] = 5802, + [SMALL_STATE(272)] = 5815, + [SMALL_STATE(273)] = 5828, + [SMALL_STATE(274)] = 5841, + [SMALL_STATE(275)] = 5854, + [SMALL_STATE(276)] = 5867, + [SMALL_STATE(277)] = 5880, + [SMALL_STATE(278)] = 5893, + [SMALL_STATE(279)] = 5906, + [SMALL_STATE(280)] = 5917, + [SMALL_STATE(281)] = 5930, + [SMALL_STATE(282)] = 5941, + [SMALL_STATE(283)] = 5954, + [SMALL_STATE(284)] = 5967, + [SMALL_STATE(285)] = 5977, + [SMALL_STATE(286)] = 5987, + [SMALL_STATE(287)] = 5995, + [SMALL_STATE(288)] = 6005, + [SMALL_STATE(289)] = 6013, + [SMALL_STATE(290)] = 6023, + [SMALL_STATE(291)] = 6031, + [SMALL_STATE(292)] = 6041, + [SMALL_STATE(293)] = 6049, + [SMALL_STATE(294)] = 6059, + [SMALL_STATE(295)] = 6069, + [SMALL_STATE(296)] = 6077, + [SMALL_STATE(297)] = 6087, + [SMALL_STATE(298)] = 6097, + [SMALL_STATE(299)] = 6105, + [SMALL_STATE(300)] = 6115, + [SMALL_STATE(301)] = 6125, + [SMALL_STATE(302)] = 6133, + [SMALL_STATE(303)] = 6143, + [SMALL_STATE(304)] = 6153, + [SMALL_STATE(305)] = 6163, + [SMALL_STATE(306)] = 6173, + [SMALL_STATE(307)] = 6181, + [SMALL_STATE(308)] = 6189, + [SMALL_STATE(309)] = 6197, + [SMALL_STATE(310)] = 6207, + [SMALL_STATE(311)] = 6215, + [SMALL_STATE(312)] = 6223, + [SMALL_STATE(313)] = 6231, + [SMALL_STATE(314)] = 6239, + [SMALL_STATE(315)] = 6247, + [SMALL_STATE(316)] = 6257, + [SMALL_STATE(317)] = 6267, + [SMALL_STATE(318)] = 6277, + [SMALL_STATE(319)] = 6287, + [SMALL_STATE(320)] = 6297, + [SMALL_STATE(321)] = 6307, + [SMALL_STATE(322)] = 6317, + [SMALL_STATE(323)] = 6327, + [SMALL_STATE(324)] = 6335, + [SMALL_STATE(325)] = 6345, + [SMALL_STATE(326)] = 6353, + [SMALL_STATE(327)] = 6363, + [SMALL_STATE(328)] = 6371, + [SMALL_STATE(329)] = 6379, + [SMALL_STATE(330)] = 6387, + [SMALL_STATE(331)] = 6397, + [SMALL_STATE(332)] = 6407, + [SMALL_STATE(333)] = 6417, + [SMALL_STATE(334)] = 6425, + [SMALL_STATE(335)] = 6433, + [SMALL_STATE(336)] = 6443, + [SMALL_STATE(337)] = 6453, + [SMALL_STATE(338)] = 6463, + [SMALL_STATE(339)] = 6473, + [SMALL_STATE(340)] = 6483, + [SMALL_STATE(341)] = 6493, + [SMALL_STATE(342)] = 6501, + [SMALL_STATE(343)] = 6511, + [SMALL_STATE(344)] = 6521, + [SMALL_STATE(345)] = 6531, + [SMALL_STATE(346)] = 6539, + [SMALL_STATE(347)] = 6549, + [SMALL_STATE(348)] = 6559, + [SMALL_STATE(349)] = 6569, + [SMALL_STATE(350)] = 6577, + [SMALL_STATE(351)] = 6587, + [SMALL_STATE(352)] = 6597, + [SMALL_STATE(353)] = 6607, + [SMALL_STATE(354)] = 6617, + [SMALL_STATE(355)] = 6627, + [SMALL_STATE(356)] = 6634, + [SMALL_STATE(357)] = 6641, + [SMALL_STATE(358)] = 6648, + [SMALL_STATE(359)] = 6655, + [SMALL_STATE(360)] = 6662, + [SMALL_STATE(361)] = 6669, + [SMALL_STATE(362)] = 6676, + [SMALL_STATE(363)] = 6683, + [SMALL_STATE(364)] = 6690, + [SMALL_STATE(365)] = 6697, + [SMALL_STATE(366)] = 6704, + [SMALL_STATE(367)] = 6711, + [SMALL_STATE(368)] = 6718, + [SMALL_STATE(369)] = 6725, + [SMALL_STATE(370)] = 6732, + [SMALL_STATE(371)] = 6739, + [SMALL_STATE(372)] = 6746, + [SMALL_STATE(373)] = 6753, + [SMALL_STATE(374)] = 6760, + [SMALL_STATE(375)] = 6767, + [SMALL_STATE(376)] = 6774, + [SMALL_STATE(377)] = 6781, + [SMALL_STATE(378)] = 6788, + [SMALL_STATE(379)] = 6795, + [SMALL_STATE(380)] = 6802, + [SMALL_STATE(381)] = 6809, + [SMALL_STATE(382)] = 6816, + [SMALL_STATE(383)] = 6823, + [SMALL_STATE(384)] = 6830, + [SMALL_STATE(385)] = 6837, + [SMALL_STATE(386)] = 6844, + [SMALL_STATE(387)] = 6851, + [SMALL_STATE(388)] = 6858, + [SMALL_STATE(389)] = 6865, + [SMALL_STATE(390)] = 6872, + [SMALL_STATE(391)] = 6879, + [SMALL_STATE(392)] = 6886, + [SMALL_STATE(393)] = 6893, + [SMALL_STATE(394)] = 6900, + [SMALL_STATE(395)] = 6907, + [SMALL_STATE(396)] = 6914, + [SMALL_STATE(397)] = 6921, + [SMALL_STATE(398)] = 6928, + [SMALL_STATE(399)] = 6935, + [SMALL_STATE(400)] = 6942, + [SMALL_STATE(401)] = 6949, + [SMALL_STATE(402)] = 6956, + [SMALL_STATE(403)] = 6963, + [SMALL_STATE(404)] = 6970, + [SMALL_STATE(405)] = 6977, + [SMALL_STATE(406)] = 6984, + [SMALL_STATE(407)] = 6991, + [SMALL_STATE(408)] = 6998, + [SMALL_STATE(409)] = 7005, + [SMALL_STATE(410)] = 7012, + [SMALL_STATE(411)] = 7019, + [SMALL_STATE(412)] = 7026, + [SMALL_STATE(413)] = 7033, + [SMALL_STATE(414)] = 7040, + [SMALL_STATE(415)] = 7047, + [SMALL_STATE(416)] = 7054, + [SMALL_STATE(417)] = 7061, + [SMALL_STATE(418)] = 7068, + [SMALL_STATE(419)] = 7075, + [SMALL_STATE(420)] = 7082, + [SMALL_STATE(421)] = 7089, + [SMALL_STATE(422)] = 7096, + [SMALL_STATE(423)] = 7103, + [SMALL_STATE(424)] = 7110, + [SMALL_STATE(425)] = 7117, + [SMALL_STATE(426)] = 7124, + [SMALL_STATE(427)] = 7131, + [SMALL_STATE(428)] = 7138, + [SMALL_STATE(429)] = 7145, + [SMALL_STATE(430)] = 7152, + [SMALL_STATE(431)] = 7159, + [SMALL_STATE(432)] = 7166, + [SMALL_STATE(433)] = 7173, + [SMALL_STATE(434)] = 7180, + [SMALL_STATE(435)] = 7187, + [SMALL_STATE(436)] = 7194, + [SMALL_STATE(437)] = 7201, + [SMALL_STATE(438)] = 7208, + [SMALL_STATE(439)] = 7215, + [SMALL_STATE(440)] = 7222, + [SMALL_STATE(441)] = 7229, + [SMALL_STATE(442)] = 7236, + [SMALL_STATE(443)] = 7243, + [SMALL_STATE(444)] = 7250, + [SMALL_STATE(445)] = 7257, + [SMALL_STATE(446)] = 7264, + [SMALL_STATE(447)] = 7271, + [SMALL_STATE(448)] = 7278, + [SMALL_STATE(449)] = 7285, + [SMALL_STATE(450)] = 7292, + [SMALL_STATE(451)] = 7299, + [SMALL_STATE(452)] = 7306, + [SMALL_STATE(453)] = 7313, + [SMALL_STATE(454)] = 7320, + [SMALL_STATE(455)] = 7327, + [SMALL_STATE(456)] = 7334, + [SMALL_STATE(457)] = 7341, + [SMALL_STATE(458)] = 7348, + [SMALL_STATE(459)] = 7355, + [SMALL_STATE(460)] = 7362, + [SMALL_STATE(461)] = 7369, + [SMALL_STATE(462)] = 7376, + [SMALL_STATE(463)] = 7383, + [SMALL_STATE(464)] = 7390, + [SMALL_STATE(465)] = 7397, + [SMALL_STATE(466)] = 7404, }; static const TSParseActionEntry ts_parse_actions[] = { @@ -7701,421 +10194,555 @@ static const TSParseActionEntry ts_parse_actions[] = { [1] = {.entry = {.count = 1, .reusable = false}}, RECOVER(), [3] = {.entry = {.count = 1, .reusable = true}}, SHIFT_EXTRA(), [5] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_source_file, 0, 0, 0), - [7] = {.entry = {.count = 1, .reusable = true}}, SHIFT(220), - [9] = {.entry = {.count = 1, .reusable = true}}, SHIFT(148), - [11] = {.entry = {.count = 1, .reusable = true}}, SHIFT(313), - [13] = {.entry = {.count = 1, .reusable = true}}, SHIFT(306), - [15] = {.entry = {.count = 1, .reusable = false}}, SHIFT(116), - [17] = {.entry = {.count = 1, .reusable = false}}, SHIFT(110), - [19] = {.entry = {.count = 1, .reusable = false}}, SHIFT(309), - [21] = {.entry = {.count = 1, .reusable = true}}, SHIFT(112), - [23] = {.entry = {.count = 1, .reusable = false}}, SHIFT(310), - [25] = {.entry = {.count = 1, .reusable = false}}, SHIFT(311), - [27] = {.entry = {.count = 1, .reusable = false}}, SHIFT(105), - [29] = {.entry = {.count = 1, .reusable = false}}, SHIFT(312), - [31] = {.entry = {.count = 1, .reusable = false}}, SHIFT(315), - [33] = {.entry = {.count = 1, .reusable = true}}, SHIFT(133), - [35] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tuple_list, 3, 0, 0), + [7] = {.entry = {.count = 1, .reusable = true}}, SHIFT(352), + [9] = {.entry = {.count = 1, .reusable = true}}, SHIFT(236), + [11] = {.entry = {.count = 1, .reusable = true}}, SHIFT(456), + [13] = {.entry = {.count = 1, .reusable = true}}, SHIFT(443), + [15] = {.entry = {.count = 1, .reusable = true}}, SHIFT(294), + [17] = {.entry = {.count = 1, .reusable = false}}, SHIFT(218), + [19] = {.entry = {.count = 1, .reusable = false}}, SHIFT(217), + [21] = {.entry = {.count = 1, .reusable = false}}, SHIFT(356), + [23] = {.entry = {.count = 1, .reusable = true}}, SHIFT(207), + [25] = {.entry = {.count = 1, .reusable = false}}, SHIFT(411), + [27] = {.entry = {.count = 1, .reusable = false}}, SHIFT(416), + [29] = {.entry = {.count = 1, .reusable = false}}, SHIFT(172), + [31] = {.entry = {.count = 1, .reusable = false}}, SHIFT(418), + [33] = {.entry = {.count = 1, .reusable = false}}, SHIFT(419), + [35] = {.entry = {.count = 1, .reusable = true}}, SHIFT(374), [37] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tuple_list, 2, 0, 0), - [39] = {.entry = {.count = 1, .reusable = true}}, SHIFT(320), - [41] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_world_body_repeat1, 2, 0, 0), SHIFT_REPEAT(174), - [44] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_world_body_repeat1, 2, 0, 0), - [46] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_world_body_repeat1, 2, 0, 0), SHIFT_REPEAT(177), - [49] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_world_body_repeat1, 2, 0, 0), SHIFT_REPEAT(178), - [52] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_world_body_repeat1, 2, 0, 0), SHIFT_REPEAT(179), - [55] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_world_body_repeat1, 2, 0, 0), SHIFT_REPEAT(277), - [58] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_world_body_repeat1, 2, 0, 0), SHIFT_REPEAT(276), - [61] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_world_body_repeat1, 2, 0, 0), SHIFT_REPEAT(275), - [64] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_world_body_repeat1, 2, 0, 0), SHIFT_REPEAT(274), - [67] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_world_body_repeat1, 2, 0, 0), SHIFT_REPEAT(262), - [70] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_world_body_repeat1, 2, 0, 0), SHIFT_REPEAT(272), - [73] = {.entry = {.count = 1, .reusable = true}}, SHIFT(174), - [75] = {.entry = {.count = 1, .reusable = true}}, SHIFT(134), - [77] = {.entry = {.count = 1, .reusable = true}}, SHIFT(177), - [79] = {.entry = {.count = 1, .reusable = true}}, SHIFT(178), - [81] = {.entry = {.count = 1, .reusable = true}}, SHIFT(179), - [83] = {.entry = {.count = 1, .reusable = true}}, SHIFT(277), - [85] = {.entry = {.count = 1, .reusable = true}}, SHIFT(276), - [87] = {.entry = {.count = 1, .reusable = true}}, SHIFT(275), - [89] = {.entry = {.count = 1, .reusable = true}}, SHIFT(274), - [91] = {.entry = {.count = 1, .reusable = true}}, SHIFT(262), - [93] = {.entry = {.count = 1, .reusable = true}}, SHIFT(272), - [95] = {.entry = {.count = 1, .reusable = true}}, SHIFT(137), - [97] = {.entry = {.count = 1, .reusable = false}}, SHIFT(143), - [99] = {.entry = {.count = 1, .reusable = false}}, SHIFT(271), - [101] = {.entry = {.count = 1, .reusable = true}}, SHIFT(24), - [103] = {.entry = {.count = 1, .reusable = false}}, SHIFT(335), - [105] = {.entry = {.count = 1, .reusable = false}}, SHIFT(327), - [107] = {.entry = {.count = 1, .reusable = false}}, SHIFT(328), - [109] = {.entry = {.count = 1, .reusable = false}}, SHIFT(329), - [111] = {.entry = {.count = 1, .reusable = false}}, SHIFT(330), - [113] = {.entry = {.count = 1, .reusable = false}}, SHIFT(297), - [115] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_interface_body_repeat1, 2, 0, 0), SHIFT_REPEAT(143), - [118] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_interface_body_repeat1, 2, 0, 0), SHIFT_REPEAT(271), - [121] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_interface_body_repeat1, 2, 0, 0), - [123] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_interface_body_repeat1, 2, 0, 0), SHIFT_REPEAT(335), - [126] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_interface_body_repeat1, 2, 0, 0), SHIFT_REPEAT(327), - [129] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_interface_body_repeat1, 2, 0, 0), SHIFT_REPEAT(328), - [132] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_interface_body_repeat1, 2, 0, 0), SHIFT_REPEAT(329), - [135] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_interface_body_repeat1, 2, 0, 0), SHIFT_REPEAT(330), - [138] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_interface_body_repeat1, 2, 0, 0), SHIFT_REPEAT(297), - [141] = {.entry = {.count = 1, .reusable = true}}, SHIFT(22), - [143] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_interface_body, 3, 0, 14), - [145] = {.entry = {.count = 1, .reusable = true}}, SHIFT(45), - [147] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_resource_item, 2, 0, 12), - [149] = {.entry = {.count = 1, .reusable = true}}, SHIFT(106), - [151] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_interface_body, 2, 0, 0), - [153] = {.entry = {.count = 1, .reusable = true}}, SHIFT(90), - [155] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_resource_item, 2, 0, 12), - [157] = {.entry = {.count = 1, .reusable = true}}, SHIFT(103), - [159] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_flags_body, 4, 0, 33), - [161] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_enum_body, 5, 0, 43), - [163] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_include_item, 5, 0, 21), - [165] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_extern_type, 2, 0, 0), - [167] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_resource_body, 2, 0, 0), - [169] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_enum_body, 2, 0, 0), - [171] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_variant_body, 2, 0, 0), - [173] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_flags_body, 2, 0, 0), - [175] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_record_body, 2, 0, 0), - [177] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_item, 5, 0, 22), - [179] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_record_body, 3, 0, 23), - [181] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_flags_body, 3, 0, 24), - [183] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_variant_body, 3, 0, 25), - [185] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_enum_body, 3, 0, 26), - [187] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_resource_body, 3, 0, 0), - [189] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_import_item, 4, 0, 12), - [191] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_export_item, 4, 0, 12), - [193] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_record_body, 4, 0, 32), - [195] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_resource_item, 3, 0, 16), - [197] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_resource_item, 3, 0, 12), - [199] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_enum_items, 3, 0, 12), - [201] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_variant_body, 4, 0, 34), - [203] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_variant_items, 3, 0, 2), - [205] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_enum_body, 4, 0, 35), - [207] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_flags_items, 3, 0, 2), - [209] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_record_item, 3, 0, 2), - [211] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_world_items, 1, 0, 3), - [213] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_world_items, 1, 0, 4), - [215] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_world_items, 1, 0, 5), - [217] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_world_items, 1, 0, 6), - [219] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_world_items, 1, 0, 7), - [221] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_typedef_item, 1, 0, 0), - [223] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_use_item, 7, 0, 0), - [225] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_include_item, 3, 0, 15), - [227] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_import_item, 3, 0, 0), - [229] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_export_item, 3, 0, 0), - [231] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_variant_body, 5, 0, 42), - [233] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_flags_body, 5, 0, 41), - [235] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_record_body, 5, 0, 40), - [237] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_record_body, 5, 0, 40), - [239] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_record_item, 3, 0, 2), - [241] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_typedef_item, 1, 0, 0), - [243] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_enum_body, 3, 0, 26), - [245] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_func_item, 4, 0, 17), - [247] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_func_item, 4, 0, 17), - [249] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_variant_body, 3, 0, 25), - [251] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_enum_body, 5, 0, 43), - [253] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_variant_body, 5, 0, 42), - [255] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_flags_body, 3, 0, 24), - [257] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_record_body, 3, 0, 23), - [259] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_type_item, 5, 0, 22), - [261] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_flags_body, 5, 0, 41), - [263] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_resource_body, 2, 0, 0), - [265] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_record_body, 4, 0, 32), - [267] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_enum_body, 2, 0, 0), - [269] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_variant_body, 2, 0, 0), - [271] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_flags_body, 2, 0, 0), - [273] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_record_body, 2, 0, 0), - [275] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_flags_body, 4, 0, 33), - [277] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_use_item, 7, 0, 0), - [279] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_flags_items, 3, 0, 2), - [281] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_variant_items, 3, 0, 2), - [283] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_variant_body, 4, 0, 34), - [285] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_enum_items, 3, 0, 12), - [287] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_resource_body, 3, 0, 0), - [289] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_resource_item, 3, 0, 12), - [291] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_interface_items, 1, 0, 10), - [293] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_interface_items, 1, 0, 10), - [295] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_interface_items, 1, 0, 9), - [297] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_interface_items, 1, 0, 9), - [299] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_interface_items, 1, 0, 8), - [301] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_interface_items, 1, 0, 8), - [303] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_enum_body, 4, 0, 35), - [305] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_resource_item, 3, 0, 16), - [307] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_source_file, 1, 0, 0), - [309] = {.entry = {.count = 1, .reusable = true}}, SHIFT(289), - [311] = {.entry = {.count = 1, .reusable = false}}, SHIFT(286), - [313] = {.entry = {.count = 1, .reusable = true}}, SHIFT(283), - [315] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_use_path, 2, 0, 0), - [317] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_source_file, 2, 0, 0), - [319] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), - [321] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(148), - [324] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(313), - [327] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(306), - [330] = {.entry = {.count = 1, .reusable = true}}, SHIFT(268), - [332] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_use_path, 3, 0, 0), - [334] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_package_decl_repeat2, 2, 0, 0), SHIFT_REPEAT(286), - [337] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_package_decl_repeat2, 2, 0, 0), - [339] = {.entry = {.count = 1, .reusable = false}}, SHIFT(293), - [341] = {.entry = {.count = 1, .reusable = true}}, SHIFT(77), - [343] = {.entry = {.count = 1, .reusable = false}}, SHIFT(210), - [345] = {.entry = {.count = 1, .reusable = true}}, SHIFT(40), - [347] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_result, 1, 0, 0), - [349] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6), - [351] = {.entry = {.count = 1, .reusable = true}}, SHIFT(30), - [353] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_package_decl_repeat2, 2, 0, 0), - [355] = {.entry = {.count = 1, .reusable = true}}, SHIFT(89), - [357] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_resource_body_repeat1, 2, 0, 0), SHIFT_REPEAT(293), - [360] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_resource_body_repeat1, 2, 0, 0), - [362] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_resource_body_repeat1, 2, 0, 0), SHIFT_REPEAT(210), - [365] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_ty, 1, 0, 0), - [367] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_handle, 1, 0, 0), - [369] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tuple, 3, 0, 0), - [371] = {.entry = {.count = 1, .reusable = true}}, SHIFT(285), - [373] = {.entry = {.count = 1, .reusable = true}}, SHIFT(126), - [375] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_package_decl_repeat1, 2, 0, 0), - [377] = {.entry = {.count = 1, .reusable = false}}, SHIFT(209), - [379] = {.entry = {.count = 1, .reusable = false}}, SHIFT(223), - [381] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_result, 6, 0, 0), - [383] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_option, 4, 0, 0), - [385] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tuple, 4, 0, 0), - [387] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_list, 4, 0, 0), - [389] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_use_path, 1, 0, 0), - [391] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_result, 4, 0, 0), - [393] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__owned_handle, 4, 0, 0), - [395] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__borrow_handle, 4, 0, 0), - [397] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_package_decl, 7, 0, 0), - [399] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_package_decl, 4, 0, 0), - [401] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_package_decl, 5, 0, 0), - [403] = {.entry = {.count = 1, .reusable = true}}, SHIFT(269), - [405] = {.entry = {.count = 1, .reusable = true}}, SHIFT(127), - [407] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_package_decl, 6, 0, 0), - [409] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_use_path, 4, 0, 0), - [411] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_interface_item, 3, 0, 2), - [413] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_world_item, 3, 0, 2), - [415] = {.entry = {.count = 1, .reusable = true}}, SHIFT(281), - [417] = {.entry = {.count = 1, .reusable = true}}, SHIFT(291), - [419] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_world_body, 3, 0, 13), - [421] = {.entry = {.count = 1, .reusable = true}}, SHIFT(260), - [423] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_toplevel_use_item, 5, 0, 11), - [425] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_world_body, 2, 0, 0), - [427] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_toplevel_use_item, 3, 0, 1), - [429] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_use_path, 5, 0, 0), - [431] = {.entry = {.count = 1, .reusable = true}}, SHIFT(191), - [433] = {.entry = {.count = 1, .reusable = true}}, SHIFT(47), - [435] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_named_type_list, 2, 0, 0), - [437] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_func_type, 2, 0, 18), - [439] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3), - [441] = {.entry = {.count = 1, .reusable = true}}, SHIFT(121), - [443] = {.entry = {.count = 1, .reusable = true}}, SHIFT(301), - [445] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_use_names_item, 1, 0, 0), - [447] = {.entry = {.count = 1, .reusable = true}}, SHIFT(144), - [449] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_use_names_list, 1, 0, 19), - [451] = {.entry = {.count = 1, .reusable = true}}, SHIFT(185), - [453] = {.entry = {.count = 1, .reusable = true}}, SHIFT(38), - [455] = {.entry = {.count = 1, .reusable = true}}, SHIFT(140), - [457] = {.entry = {.count = 1, .reusable = true}}, SHIFT(72), - [459] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_include_names_list, 1, 0, 20), - [461] = {.entry = {.count = 1, .reusable = true}}, SHIFT(189), - [463] = {.entry = {.count = 1, .reusable = true}}, SHIFT(318), - [465] = {.entry = {.count = 1, .reusable = true}}, SHIFT(65), - [467] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_resource_method, 1, 0, 0), - [469] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_resource_method, 1, 0, 0), - [471] = {.entry = {.count = 1, .reusable = true}}, SHIFT(39), - [473] = {.entry = {.count = 1, .reusable = true}}, SHIFT(222), - [475] = {.entry = {.count = 1, .reusable = true}}, SHIFT(94), - [477] = {.entry = {.count = 1, .reusable = true}}, SHIFT(208), - [479] = {.entry = {.count = 1, .reusable = true}}, SHIFT(37), - [481] = {.entry = {.count = 1, .reusable = true}}, SHIFT(215), - [483] = {.entry = {.count = 1, .reusable = true}}, SHIFT(87), - [485] = {.entry = {.count = 1, .reusable = true}}, SHIFT(149), - [487] = {.entry = {.count = 1, .reusable = true}}, SHIFT(36), - [489] = {.entry = {.count = 1, .reusable = true}}, SHIFT(161), - [491] = {.entry = {.count = 1, .reusable = true}}, SHIFT(83), - [493] = {.entry = {.count = 1, .reusable = true}}, SHIFT(211), - [495] = {.entry = {.count = 1, .reusable = true}}, SHIFT(78), - [497] = {.entry = {.count = 1, .reusable = true}}, SHIFT(151), - [499] = {.entry = {.count = 1, .reusable = true}}, SHIFT(43), - [501] = {.entry = {.count = 1, .reusable = true}}, SHIFT(203), - [503] = {.entry = {.count = 1, .reusable = true}}, SHIFT(68), - [505] = {.entry = {.count = 1, .reusable = true}}, SHIFT(212), - [507] = {.entry = {.count = 1, .reusable = true}}, SHIFT(26), - [509] = {.entry = {.count = 1, .reusable = true}}, SHIFT(221), - [511] = {.entry = {.count = 1, .reusable = true}}, SHIFT(70), - [513] = {.entry = {.count = 1, .reusable = true}}, SHIFT(157), - [515] = {.entry = {.count = 1, .reusable = true}}, SHIFT(73), - [517] = {.entry = {.count = 1, .reusable = true}}, SHIFT(213), - [519] = {.entry = {.count = 1, .reusable = true}}, SHIFT(74), - [521] = {.entry = {.count = 1, .reusable = true}}, SHIFT(163), - [523] = {.entry = {.count = 1, .reusable = true}}, SHIFT(195), - [525] = {.entry = {.count = 1, .reusable = true}}, SHIFT(80), - [527] = {.entry = {.count = 1, .reusable = true}}, SHIFT(82), - [529] = {.entry = {.count = 1, .reusable = true}}, SHIFT(49), - [531] = {.entry = {.count = 1, .reusable = true}}, SHIFT(226), - [533] = {.entry = {.count = 1, .reusable = true}}, SHIFT(223), - [535] = {.entry = {.count = 1, .reusable = true}}, SHIFT(227), - [537] = {.entry = {.count = 1, .reusable = true}}, SHIFT(334), - [539] = {.entry = {.count = 1, .reusable = true}}, SHIFT(261), - [541] = {.entry = {.count = 1, .reusable = true}}, SHIFT(249), - [543] = {.entry = {.count = 1, .reusable = true}}, SHIFT(141), - [545] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_named_type_list, 1, 0, 0), - [547] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_resource_method, 5, 0, 0), - [549] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_resource_method, 5, 0, 0), - [551] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_tuple_list_repeat1, 2, 0, 0), SHIFT_REPEAT(14), - [554] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_tuple_list_repeat1, 2, 0, 0), - [556] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_named_type_list_repeat1, 2, 0, 0), SHIFT_REPEAT(207), - [559] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_named_type_list_repeat1, 2, 0, 0), - [561] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_named_type_list, 3, 0, 0), - [563] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_use_names_list, 2, 0, 19), - [565] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_use_names_list, 2, 0, 28), - [567] = {.entry = {.count = 1, .reusable = true}}, SHIFT(199), - [569] = {.entry = {.count = 1, .reusable = true}}, SHIFT(184), - [571] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_flags_body_repeat1, 2, 0, 0), - [573] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_flags_body_repeat1, 2, 0, 0), SHIFT_REPEAT(299), - [576] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_include_names_list, 2, 0, 20), - [578] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_include_names_list, 2, 0, 30), - [580] = {.entry = {.count = 1, .reusable = true}}, SHIFT(194), - [582] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_variant_case, 1, 0, 17), - [584] = {.entry = {.count = 1, .reusable = true}}, SHIFT(9), - [586] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5), - [588] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tuple_list, 1, 0, 0), - [590] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4), - [592] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_include_names_list, 3, 0, 30), - [594] = {.entry = {.count = 1, .reusable = true}}, SHIFT(62), - [596] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_variant_body_repeat1, 2, 0, 0), - [598] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_variant_body_repeat1, 2, 0, 0), SHIFT_REPEAT(248), - [601] = {.entry = {.count = 1, .reusable = true}}, SHIFT(34), - [603] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_include_names_list_repeat1, 2, 0, 39), - [605] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_include_names_list_repeat1, 2, 0, 39), SHIFT_REPEAT(258), - [608] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_use_names_list, 3, 0, 28), - [610] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_resource_method, 3, 0, 0), - [612] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_resource_method, 3, 0, 0), - [614] = {.entry = {.count = 1, .reusable = true}}, SHIFT(32), - [616] = {.entry = {.count = 1, .reusable = true}}, SHIFT(64), - [618] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_record_body_repeat1, 2, 0, 0), - [620] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_record_body_repeat1, 2, 0, 0), SHIFT_REPEAT(243), - [623] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_use_names_list_repeat1, 2, 0, 37), - [625] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_use_names_list_repeat1, 2, 0, 37), SHIFT_REPEAT(257), - [628] = {.entry = {.count = 1, .reusable = true}}, SHIFT(202), - [630] = {.entry = {.count = 1, .reusable = true}}, SHIFT(219), - [632] = {.entry = {.count = 1, .reusable = true}}, SHIFT(71), - [634] = {.entry = {.count = 1, .reusable = true}}, SHIFT(19), - [636] = {.entry = {.count = 1, .reusable = true}}, SHIFT(135), - [638] = {.entry = {.count = 1, .reusable = true}}, SHIFT(76), - [640] = {.entry = {.count = 1, .reusable = true}}, SHIFT(13), - [642] = {.entry = {.count = 1, .reusable = true}}, SHIFT(122), - [644] = {.entry = {.count = 1, .reusable = true}}, SHIFT(164), - [646] = {.entry = {.count = 1, .reusable = true}}, SHIFT(79), - [648] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_record_field, 3, 0, 31), - [650] = {.entry = {.count = 1, .reusable = true}}, SHIFT(295), - [652] = {.entry = {.count = 1, .reusable = true}}, SHIFT(63), - [654] = {.entry = {.count = 1, .reusable = true}}, SHIFT(153), - [656] = {.entry = {.count = 1, .reusable = true}}, SHIFT(31), - [658] = {.entry = {.count = 1, .reusable = true}}, SHIFT(27), - [660] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_param_list, 3, 0, 0), - [662] = {.entry = {.count = 1, .reusable = true}}, SHIFT(155), - [664] = {.entry = {.count = 1, .reusable = true}}, SHIFT(33), - [666] = {.entry = {.count = 1, .reusable = true}}, SHIFT(167), - [668] = {.entry = {.count = 1, .reusable = true}}, SHIFT(81), - [670] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_use_names_item, 3, 0, 0), - [672] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_use_names_list_repeat1, 2, 0, 36), - [674] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_include_names_item, 3, 0, 0), - [676] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_include_names_list_repeat1, 2, 0, 38), - [678] = {.entry = {.count = 1, .reusable = true}}, SHIFT(176), - [680] = {.entry = {.count = 1, .reusable = true}}, SHIFT(216), - [682] = {.entry = {.count = 1, .reusable = true}}, SHIFT(170), - [684] = {.entry = {.count = 1, .reusable = true}}, SHIFT(225), - [686] = {.entry = {.count = 1, .reusable = true}}, SHIFT(229), - [688] = {.entry = {.count = 1, .reusable = true}}, SHIFT(197), - [690] = {.entry = {.count = 1, .reusable = true}}, SHIFT(230), - [692] = {.entry = {.count = 1, .reusable = true}}, SHIFT(59), - [694] = {.entry = {.count = 1, .reusable = true}}, SHIFT(235), - [696] = {.entry = {.count = 1, .reusable = true}}, SHIFT(171), - [698] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_variant_case, 4, 0, 31), - [700] = {.entry = {.count = 1, .reusable = true}}, SHIFT(113), - [702] = {.entry = {.count = 1, .reusable = true}}, SHIFT(115), - [704] = {.entry = {.count = 1, .reusable = true}}, SHIFT(138), - [706] = {.entry = {.count = 1, .reusable = true}}, SHIFT(287), - [708] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_named_type, 3, 0, 31), - [710] = {.entry = {.count = 1, .reusable = true}}, SHIFT(97), - [712] = {.entry = {.count = 1, .reusable = true}}, SHIFT(18), - [714] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_package_decl_repeat1, 2, 0, 0), SHIFT_REPEAT(295), - [717] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_param_list, 2, 0, 0), - [719] = {.entry = {.count = 1, .reusable = true}}, SHIFT(114), - [721] = {.entry = {.count = 1, .reusable = true}}, SHIFT(239), - [723] = {.entry = {.count = 1, .reusable = true}}, SHIFT(125), - [725] = {.entry = {.count = 1, .reusable = true}}, SHIFT(117), - [727] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_func_type, 3, 0, 27), - [729] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_result_list, 4, 0, 0), - [731] = {.entry = {.count = 1, .reusable = true}}, SHIFT(303), - [733] = {.entry = {.count = 1, .reusable = true}}, SHIFT(139), - [735] = {.entry = {.count = 1, .reusable = true}}, SHIFT(263), - [737] = {.entry = {.count = 1, .reusable = true}}, SHIFT(129), - [739] = {.entry = {.count = 1, .reusable = true}}, SHIFT(238), - [741] = {.entry = {.count = 1, .reusable = true}}, SHIFT(23), - [743] = {.entry = {.count = 1, .reusable = true}}, SHIFT(233), - [745] = {.entry = {.count = 1, .reusable = true}}, SHIFT(206), - [747] = {.entry = {.count = 1, .reusable = true}}, SHIFT(240), - [749] = {.entry = {.count = 1, .reusable = true}}, SHIFT(241), - [751] = {.entry = {.count = 1, .reusable = true}}, SHIFT(300), - [753] = {.entry = {.count = 1, .reusable = true}}, SHIFT(29), - [755] = {.entry = {.count = 1, .reusable = true}}, SHIFT(228), - [757] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_include_names_body, 3, 0, 29), - [759] = {.entry = {.count = 1, .reusable = true}}, SHIFT(11), - [761] = {.entry = {.count = 1, .reusable = true}}, SHIFT(28), - [763] = {.entry = {.count = 1, .reusable = true}}, SHIFT(130), - [765] = {.entry = {.count = 1, .reusable = true}}, SHIFT(136), - [767] = {.entry = {.count = 1, .reusable = true}}, SHIFT(270), - [769] = {.entry = {.count = 1, .reusable = true}}, SHIFT(107), - [771] = {.entry = {.count = 1, .reusable = true}}, SHIFT(284), - [773] = {.entry = {.count = 1, .reusable = true}}, SHIFT(61), - [775] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_package_decl_repeat1, 2, 0, 0), - [777] = {.entry = {.count = 1, .reusable = true}}, SHIFT(266), - [779] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_result_list, 3, 0, 0), - [781] = {.entry = {.count = 1, .reusable = true}}, SHIFT(58), - [783] = {.entry = {.count = 1, .reusable = true}}, SHIFT(173), - [785] = {.entry = {.count = 1, .reusable = true}}, SHIFT(181), - [787] = {.entry = {.count = 1, .reusable = true}}, ACCEPT_INPUT(), - [789] = {.entry = {.count = 1, .reusable = true}}, SHIFT(25), - [791] = {.entry = {.count = 1, .reusable = true}}, SHIFT(60), - [793] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7), - [795] = {.entry = {.count = 1, .reusable = true}}, SHIFT(231), - [797] = {.entry = {.count = 1, .reusable = true}}, SHIFT(200), - [799] = {.entry = {.count = 1, .reusable = true}}, SHIFT(201), - [801] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_result_list, 2, 0, 0), - [803] = {.entry = {.count = 1, .reusable = true}}, SHIFT(246), - [805] = {.entry = {.count = 1, .reusable = true}}, SHIFT(255), - [807] = {.entry = {.count = 1, .reusable = true}}, SHIFT(175), - [809] = {.entry = {.count = 1, .reusable = true}}, SHIFT(75), - [811] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2), - [813] = {.entry = {.count = 1, .reusable = true}}, SHIFT(10), - [815] = {.entry = {.count = 1, .reusable = true}}, SHIFT(15), - [817] = {.entry = {.count = 1, .reusable = true}}, SHIFT(321), - [819] = {.entry = {.count = 1, .reusable = true}}, SHIFT(254), - [821] = {.entry = {.count = 1, .reusable = true}}, SHIFT(123), - [823] = {.entry = {.count = 1, .reusable = true}}, SHIFT(319), - [825] = {.entry = {.count = 1, .reusable = true}}, SHIFT(124), - [827] = {.entry = {.count = 1, .reusable = true}}, SHIFT(35), - [829] = {.entry = {.count = 1, .reusable = true}}, SHIFT(8), - [831] = {.entry = {.count = 1, .reusable = true}}, SHIFT(314), - [833] = {.entry = {.count = 1, .reusable = true}}, SHIFT(316), - [835] = {.entry = {.count = 1, .reusable = true}}, SHIFT(84), - [837] = {.entry = {.count = 1, .reusable = true}}, SHIFT(69), - [839] = {.entry = {.count = 1, .reusable = true}}, SHIFT(118), - [841] = {.entry = {.count = 1, .reusable = true}}, SHIFT(120), - [843] = {.entry = {.count = 1, .reusable = true}}, SHIFT(119), - [845] = {.entry = {.count = 1, .reusable = true}}, SHIFT(245), - [847] = {.entry = {.count = 1, .reusable = true}}, SHIFT(242), - [849] = {.entry = {.count = 1, .reusable = true}}, SHIFT(237), - [851] = {.entry = {.count = 1, .reusable = true}}, SHIFT(236), - [853] = {.entry = {.count = 1, .reusable = true}}, SHIFT(280), - [855] = {.entry = {.count = 1, .reusable = true}}, SHIFT(322), - [857] = {.entry = {.count = 1, .reusable = true}}, SHIFT(12), - [859] = {.entry = {.count = 1, .reusable = true}}, SHIFT(273), - [861] = {.entry = {.count = 1, .reusable = true}}, SHIFT(333), - [863] = {.entry = {.count = 1, .reusable = true}}, SHIFT(145), - [865] = {.entry = {.count = 1, .reusable = true}}, SHIFT(336), - [867] = {.entry = {.count = 1, .reusable = true}}, SHIFT(292), + [39] = {.entry = {.count = 1, .reusable = true}}, SHIFT(138), + [41] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tuple_list, 3, 0, 0), + [43] = {.entry = {.count = 1, .reusable = true}}, SHIFT(254), + [45] = {.entry = {.count = 1, .reusable = true}}, SHIFT(206), + [47] = {.entry = {.count = 1, .reusable = true}}, SHIFT(255), + [49] = {.entry = {.count = 1, .reusable = true}}, SHIFT(259), + [51] = {.entry = {.count = 1, .reusable = true}}, SHIFT(260), + [53] = {.entry = {.count = 1, .reusable = true}}, SHIFT(385), + [55] = {.entry = {.count = 1, .reusable = true}}, SHIFT(384), + [57] = {.entry = {.count = 1, .reusable = true}}, SHIFT(383), + [59] = {.entry = {.count = 1, .reusable = true}}, SHIFT(382), + [61] = {.entry = {.count = 1, .reusable = true}}, SHIFT(381), + [63] = {.entry = {.count = 1, .reusable = true}}, SHIFT(380), + [65] = {.entry = {.count = 1, .reusable = true}}, SHIFT(188), + [67] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_world_body_repeat1, 2, 0, 0), SHIFT_REPEAT(254), + [70] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_world_body_repeat1, 2, 0, 0), + [72] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_world_body_repeat1, 2, 0, 0), SHIFT_REPEAT(255), + [75] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_world_body_repeat1, 2, 0, 0), SHIFT_REPEAT(259), + [78] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_world_body_repeat1, 2, 0, 0), SHIFT_REPEAT(260), + [81] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_world_body_repeat1, 2, 0, 0), SHIFT_REPEAT(385), + [84] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_world_body_repeat1, 2, 0, 0), SHIFT_REPEAT(384), + [87] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_world_body_repeat1, 2, 0, 0), SHIFT_REPEAT(383), + [90] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_world_body_repeat1, 2, 0, 0), SHIFT_REPEAT(382), + [93] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_world_body_repeat1, 2, 0, 0), SHIFT_REPEAT(381), + [96] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_world_body_repeat1, 2, 0, 0), SHIFT_REPEAT(380), + [99] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_world_body_repeat1, 2, 0, 0), SHIFT_REPEAT(294), + [102] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_interface_body_repeat1, 2, 0, 0), SHIFT_REPEAT(232), + [105] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_interface_body_repeat1, 2, 0, 0), SHIFT_REPEAT(379), + [108] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_interface_body_repeat1, 2, 0, 0), + [110] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_interface_body_repeat1, 2, 0, 0), SHIFT_REPEAT(462), + [113] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_interface_body_repeat1, 2, 0, 0), SHIFT_REPEAT(448), + [116] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_interface_body_repeat1, 2, 0, 0), SHIFT_REPEAT(449), + [119] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_interface_body_repeat1, 2, 0, 0), SHIFT_REPEAT(450), + [122] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_interface_body_repeat1, 2, 0, 0), SHIFT_REPEAT(451), + [125] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_interface_body_repeat1, 2, 0, 0), SHIFT_REPEAT(407), + [128] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_interface_body_repeat1, 2, 0, 0), SHIFT_REPEAT(322), + [131] = {.entry = {.count = 1, .reusable = false}}, SHIFT(232), + [133] = {.entry = {.count = 1, .reusable = false}}, SHIFT(379), + [135] = {.entry = {.count = 1, .reusable = true}}, SHIFT(31), + [137] = {.entry = {.count = 1, .reusable = false}}, SHIFT(462), + [139] = {.entry = {.count = 1, .reusable = false}}, SHIFT(448), + [141] = {.entry = {.count = 1, .reusable = false}}, SHIFT(449), + [143] = {.entry = {.count = 1, .reusable = false}}, SHIFT(450), + [145] = {.entry = {.count = 1, .reusable = false}}, SHIFT(451), + [147] = {.entry = {.count = 1, .reusable = false}}, SHIFT(407), + [149] = {.entry = {.count = 1, .reusable = true}}, SHIFT(322), + [151] = {.entry = {.count = 1, .reusable = true}}, SHIFT(29), + [153] = {.entry = {.count = 1, .reusable = true}}, SHIFT(39), + [155] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_resource_item, 3, 0, 19), + [157] = {.entry = {.count = 1, .reusable = true}}, SHIFT(76), + [159] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_interface_body, 3, 0, 15), + [161] = {.entry = {.count = 1, .reusable = true}}, SHIFT(77), + [163] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_resource_item, 2, 0, 13), + [165] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_interface_body, 2, 0, 0), + [167] = {.entry = {.count = 1, .reusable = true}}, SHIFT(101), + [169] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_resource_item, 2, 0, 13), + [171] = {.entry = {.count = 1, .reusable = true}}, SHIFT(53), + [173] = {.entry = {.count = 1, .reusable = true}}, SHIFT(131), + [175] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_resource_item, 3, 0, 19), + [177] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_package_decl_repeat1, 2, 0, 0), + [179] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_package_decl_repeat1, 2, 0, 0), SHIFT_REPEAT(294), + [182] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_variant_body, 5, 0, 50), + [184] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_source_file, 1, 0, 0), + [186] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_enum_body, 4, 0, 40), + [188] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_resource_item, 4, 0, 21), + [190] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_resource_item, 4, 0, 19), + [192] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_enum_items, 4, 0, 19), + [194] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_variant_items, 4, 0, 11), + [196] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_flags_items, 4, 0, 11), + [198] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_record_item, 4, 0, 11), + [200] = {.entry = {.count = 1, .reusable = false}}, SHIFT(430), + [202] = {.entry = {.count = 1, .reusable = true}}, SHIFT(87), + [204] = {.entry = {.count = 1, .reusable = false}}, SHIFT(303), + [206] = {.entry = {.count = 1, .reusable = true}}, SHIFT(289), + [208] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_resource_body, 2, 0, 0), + [210] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_item, 6, 0, 41), + [212] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_enum_body, 2, 0, 0), + [214] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_variant_body, 2, 0, 0), + [216] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_use_item, 7, 0, 0), + [218] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_flags_body, 2, 0, 0), + [220] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_enum_body, 3, 0, 31), + [222] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_record_body, 2, 0, 0), + [224] = {.entry = {.count = 1, .reusable = true}}, SHIFT(95), + [226] = {.entry = {.count = 1, .reusable = true}}, SHIFT(124), + [228] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_record_body, 5, 0, 47), + [230] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_import_item, 4, 0, 13), + [232] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_flags_body, 5, 0, 49), + [234] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_export_item, 4, 0, 13), + [236] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_source_file, 2, 0, 0), + [238] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_world_items, 1, 0, 3), + [240] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_world_items, 1, 0, 4), + [242] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_world_items, 1, 0, 5), + [244] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_variant_body, 4, 0, 39), + [246] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_typedef_item, 1, 0, 0), + [248] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_world_items, 1, 0, 6), + [250] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_enum_body, 5, 0, 51), + [252] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_item, 5, 0, 26), + [254] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), + [256] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(236), + [259] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(456), + [262] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(443), + [265] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(294), + [268] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_flags_body, 4, 0, 38), + [270] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_record_body, 3, 0, 27), + [272] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_flags_body, 3, 0, 28), + [274] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_world_items, 1, 0, 7), + [276] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_resource_body_repeat1, 2, 0, 0), SHIFT_REPEAT(430), + [279] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_resource_body_repeat1, 2, 0, 0), + [281] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_resource_body_repeat1, 2, 0, 0), SHIFT_REPEAT(303), + [284] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_resource_body_repeat1, 2, 0, 0), SHIFT_REPEAT(289), + [287] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_resource_item, 3, 0, 18), + [289] = {.entry = {.count = 1, .reusable = true}}, SHIFT(45), + [291] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_resource_item, 3, 0, 13), + [293] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_enum_items, 3, 0, 13), + [295] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_variant_items, 3, 0, 2), + [297] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_flags_items, 3, 0, 2), + [299] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_record_item, 3, 0, 2), + [301] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_variant_body, 3, 0, 29), + [303] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_include_item, 3, 0, 17), + [305] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_import_item, 3, 0, 0), + [307] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_export_item, 3, 0, 0), + [309] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_extern_type, 2, 0, 0), + [311] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_resource_body, 3, 0, 0), + [313] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_record_body, 4, 0, 37), + [315] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_include_item, 5, 0, 25), + [317] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_package_decl_repeat1, 2, 0, 0), + [319] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_package_decl_repeat1, 2, 0, 0), SHIFT_REPEAT(322), + [322] = {.entry = {.count = 1, .reusable = false}}, SHIFT(364), + [324] = {.entry = {.count = 1, .reusable = false}}, SHIFT(463), + [326] = {.entry = {.count = 1, .reusable = false}}, SHIFT(452), + [328] = {.entry = {.count = 1, .reusable = false}}, SHIFT(453), + [330] = {.entry = {.count = 1, .reusable = false}}, SHIFT(454), + [332] = {.entry = {.count = 1, .reusable = false}}, SHIFT(455), + [334] = {.entry = {.count = 1, .reusable = false}}, SHIFT(412), + [336] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_record_body, 3, 0, 27), + [338] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_resource_item, 4, 0, 21), + [340] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_record_item, 4, 0, 11), + [342] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_resource_body, 2, 0, 0), + [344] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_enum_body, 2, 0, 0), + [346] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_variant_body, 2, 0, 0), + [348] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_flags_body, 2, 0, 0), + [350] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_record_body, 2, 0, 0), + [352] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_resource_item, 3, 0, 18), + [354] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_resource_item, 3, 0, 13), + [356] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_enum_items, 3, 0, 13), + [358] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_variant_items, 3, 0, 2), + [360] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_flags_items, 3, 0, 2), + [362] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_record_item, 3, 0, 2), + [364] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_typedef_item, 1, 0, 0), + [366] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attribute, 1, 0, 0), + [368] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_func_item, 5, 0, 30), + [370] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_func_item, 5, 0, 30), + [372] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_doc_comment, 2, 0, 0), + [374] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_enum_body, 5, 0, 51), + [376] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_func_item, 4, 0, 20), + [378] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_func_item, 4, 0, 20), + [380] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_flags_items, 4, 0, 11), + [382] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_doc_comment, 3, 0, 0), + [384] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_variant_body, 5, 0, 50), + [386] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_flags_body, 5, 0, 49), + [388] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_record_body, 5, 0, 47), + [390] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_use_item, 7, 0, 0), + [392] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_type_item, 6, 0, 41), + [394] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_enum_body, 4, 0, 40), + [396] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_variant_items, 4, 0, 11), + [398] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_variant_body, 4, 0, 39), + [400] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_flags_body, 4, 0, 38), + [402] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_record_body, 4, 0, 37), + [404] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_resource_body, 3, 0, 0), + [406] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_flags_body, 3, 0, 28), + [408] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_type_item, 5, 0, 26), + [410] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_interface_items, 1, 0, 10), + [412] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_interface_items, 1, 0, 10), + [414] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_interface_items, 1, 0, 9), + [416] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_interface_items, 1, 0, 9), + [418] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_enum_items, 4, 0, 19), + [420] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_interface_items, 1, 0, 8), + [422] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_interface_items, 1, 0, 8), + [424] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_resource_item, 4, 0, 19), + [426] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_variant_body, 3, 0, 29), + [428] = {.entry = {.count = 1, .reusable = true}}, SHIFT(370), + [430] = {.entry = {.count = 1, .reusable = true}}, SHIFT(369), + [432] = {.entry = {.count = 1, .reusable = true}}, SHIFT(368), + [434] = {.entry = {.count = 1, .reusable = true}}, SHIFT(367), + [436] = {.entry = {.count = 1, .reusable = true}}, SHIFT(366), + [438] = {.entry = {.count = 1, .reusable = true}}, SHIFT(365), + [440] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_enum_body, 3, 0, 31), + [442] = {.entry = {.count = 1, .reusable = true}}, SHIFT(427), + [444] = {.entry = {.count = 1, .reusable = true}}, SHIFT(308), + [446] = {.entry = {.count = 1, .reusable = true}}, SHIFT(293), + [448] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_doc_comment, 2, 0, 0), + [450] = {.entry = {.count = 1, .reusable = true}}, SHIFT(413), + [452] = {.entry = {.count = 1, .reusable = false}}, SHIFT(393), + [454] = {.entry = {.count = 1, .reusable = true}}, SHIFT(390), + [456] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_use_path, 2, 0, 0), + [458] = {.entry = {.count = 1, .reusable = true}}, SHIFT(394), + [460] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_doc_comment, 3, 0, 0), + [462] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_attribute, 1, 0, 0), + [464] = {.entry = {.count = 1, .reusable = true}}, SHIFT(314), + [466] = {.entry = {.count = 1, .reusable = true}}, SHIFT(122), + [468] = {.entry = {.count = 1, .reusable = true}}, SHIFT(421), + [470] = {.entry = {.count = 1, .reusable = true}}, SHIFT(123), + [472] = {.entry = {.count = 1, .reusable = true}}, SHIFT(115), + [474] = {.entry = {.count = 1, .reusable = true}}, SHIFT(116), + [476] = {.entry = {.count = 1, .reusable = true}}, SHIFT(281), + [478] = {.entry = {.count = 1, .reusable = true}}, SHIFT(63), + [480] = {.entry = {.count = 1, .reusable = true}}, SHIFT(307), + [482] = {.entry = {.count = 1, .reusable = true}}, SHIFT(110), + [484] = {.entry = {.count = 1, .reusable = true}}, SHIFT(318), + [486] = {.entry = {.count = 1, .reusable = true}}, SHIFT(415), + [488] = {.entry = {.count = 1, .reusable = true}}, SHIFT(414), + [490] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_named_type_list, 3, 0, 0), + [492] = {.entry = {.count = 1, .reusable = true}}, SHIFT(376), + [494] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_use_path, 3, 0, 0), + [496] = {.entry = {.count = 1, .reusable = true}}, SHIFT(114), + [498] = {.entry = {.count = 1, .reusable = true}}, SHIFT(69), + [500] = {.entry = {.count = 1, .reusable = true}}, SHIFT(119), + [502] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_named_type_list, 2, 0, 0), + [504] = {.entry = {.count = 1, .reusable = true}}, SHIFT(121), + [506] = {.entry = {.count = 1, .reusable = true}}, SHIFT(37), + [508] = {.entry = {.count = 1, .reusable = true}}, SHIFT(35), + [510] = {.entry = {.count = 1, .reusable = true}}, SHIFT(88), + [512] = {.entry = {.count = 1, .reusable = true}}, SHIFT(66), + [514] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_package_decl_repeat3, 2, 0, 0), SHIFT_REPEAT(393), + [517] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_package_decl_repeat3, 2, 0, 0), + [519] = {.entry = {.count = 1, .reusable = true}}, SHIFT(48), + [521] = {.entry = {.count = 1, .reusable = true}}, SHIFT(96), + [523] = {.entry = {.count = 1, .reusable = true}}, SHIFT(57), + [525] = {.entry = {.count = 1, .reusable = true}}, SHIFT(50), + [527] = {.entry = {.count = 1, .reusable = true}}, SHIFT(55), + [529] = {.entry = {.count = 1, .reusable = true}}, SHIFT(97), + [531] = {.entry = {.count = 1, .reusable = true}}, SHIFT(47), + [533] = {.entry = {.count = 1, .reusable = true}}, SHIFT(98), + [535] = {.entry = {.count = 1, .reusable = true}}, SHIFT(99), + [537] = {.entry = {.count = 1, .reusable = true}}, SHIFT(52), + [539] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_package_decl_repeat1, 2, 0, 0), SHIFT_REPEAT(289), + [542] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_result, 1, 0, 0), + [544] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3), + [546] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_package_decl_repeat3, 2, 0, 0), + [548] = {.entry = {.count = 1, .reusable = false}}, SHIFT(435), + [550] = {.entry = {.count = 1, .reusable = false}}, SHIFT(299), + [552] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__owned_handle, 4, 0, 0), + [554] = {.entry = {.count = 1, .reusable = true}}, SHIFT(286), + [556] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_interface_item, 4, 0, 11), + [558] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_world_item, 4, 0, 11), + [560] = {.entry = {.count = 1, .reusable = true}}, SHIFT(363), + [562] = {.entry = {.count = 1, .reusable = true}}, SHIFT(200), + [564] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_package_decl, 5, 0, 0), + [566] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_package_decl, 4, 0, 0), + [568] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_package_decl_repeat2, 2, 0, 0), + [570] = {.entry = {.count = 1, .reusable = false}}, SHIFT(326), + [572] = {.entry = {.count = 1, .reusable = false}}, SHIFT(336), + [574] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_world_body, 3, 0, 14), + [576] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_result, 6, 0, 53), + [578] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_package_decl, 8, 0, 16), + [580] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_package_decl, 6, 0, 16), + [582] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_interface_item, 3, 0, 2), + [584] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_package_decl, 6, 0, 0), + [586] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_world_item, 3, 0, 2), + [588] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_package_decl, 7, 0, 0), + [590] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_result, 6, 0, 52), + [592] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_package_decl, 7, 0, 16), + [594] = {.entry = {.count = 1, .reusable = true}}, SHIFT(238), + [596] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_package_decl, 5, 0, 16), + [598] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_toplevel_use_item, 5, 0, 12), + [600] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_toplevel_use_item, 3, 0, 1), + [602] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_package_decl_repeat1, 2, 0, 0), SHIFT_REPEAT(293), + [605] = {.entry = {.count = 1, .reusable = true}}, SHIFT(392), + [607] = {.entry = {.count = 1, .reusable = true}}, SHIFT(186), + [609] = {.entry = {.count = 1, .reusable = true}}, SHIFT(288), + [611] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_world_body, 2, 0, 0), + [613] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tuple, 3, 0, 0), + [615] = {.entry = {.count = 1, .reusable = true}}, SHIFT(466), + [617] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tuple, 4, 0, 0), + [619] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_list, 4, 0, 0), + [621] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_handle, 1, 0, 0), + [623] = {.entry = {.count = 1, .reusable = true}}, SHIFT(428), + [625] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_option, 4, 0, 0), + [627] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_result, 4, 0, 46), + [629] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__borrow_handle, 4, 0, 0), + [631] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_use_path, 1, 0, 0), + [633] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_ty, 1, 0, 0), + [635] = {.entry = {.count = 1, .reusable = true}}, SHIFT(400), + [637] = {.entry = {.count = 1, .reusable = true}}, SHIFT(192), + [639] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_static_resource_method, 6, 0, 16), + [641] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_static_resource_method, 6, 0, 16), + [643] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_use_path, 5, 0, 0), + [645] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_resource_constructor, 4, 0, 16), + [647] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_resource_constructor, 4, 0, 16), + [649] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_use_path, 4, 0, 0), + [651] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_static_resource_method, 5, 0, 0), + [653] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_static_resource_method, 5, 0, 0), + [655] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_resource_method, 1, 0, 0), + [657] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_resource_method, 1, 0, 0), + [659] = {.entry = {.count = 1, .reusable = true}}, SHIFT(377), + [661] = {.entry = {.count = 1, .reusable = true}}, SHIFT(185), + [663] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_resource_constructor, 3, 0, 0), + [665] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_resource_constructor, 3, 0, 0), + [667] = {.entry = {.count = 1, .reusable = true}}, SHIFT(336), + [669] = {.entry = {.count = 1, .reusable = true}}, SHIFT(302), + [671] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_func_type, 2, 0, 22), + [673] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5), + [675] = {.entry = {.count = 1, .reusable = true}}, SHIFT(216), + [677] = {.entry = {.count = 1, .reusable = true}}, SHIFT(164), + [679] = {.entry = {.count = 1, .reusable = true}}, SHIFT(279), + [681] = {.entry = {.count = 1, .reusable = true}}, SHIFT(162), + [683] = {.entry = {.count = 1, .reusable = true}}, SHIFT(156), + [685] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_variant_case, 2, 0, 30), + [687] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7), + [689] = {.entry = {.count = 1, .reusable = true}}, SHIFT(158), + [691] = {.entry = {.count = 1, .reusable = true}}, SHIFT(146), + [693] = {.entry = {.count = 1, .reusable = true}}, SHIFT(150), + [695] = {.entry = {.count = 1, .reusable = true}}, SHIFT(143), + [697] = {.entry = {.count = 1, .reusable = true}}, SHIFT(144), + [699] = {.entry = {.count = 1, .reusable = true}}, SHIFT(134), + [701] = {.entry = {.count = 1, .reusable = true}}, SHIFT(152), + [703] = {.entry = {.count = 1, .reusable = true}}, SHIFT(132), + [705] = {.entry = {.count = 1, .reusable = true}}, SHIFT(154), + [707] = {.entry = {.count = 1, .reusable = true}}, SHIFT(125), + [709] = {.entry = {.count = 1, .reusable = true}}, SHIFT(141), + [711] = {.entry = {.count = 1, .reusable = true}}, SHIFT(92), + [713] = {.entry = {.count = 1, .reusable = true}}, SHIFT(142), + [715] = {.entry = {.count = 1, .reusable = true}}, SHIFT(153), + [717] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_named_type_list, 1, 0, 0), + [719] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_use_names_list, 2, 0, 23), + [721] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_use_names_list, 2, 0, 33), + [723] = {.entry = {.count = 1, .reusable = true}}, SHIFT(283), + [725] = {.entry = {.count = 1, .reusable = true}}, SHIFT(337), + [727] = {.entry = {.count = 1, .reusable = true}}, SHIFT(444), + [729] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_include_names_list, 2, 0, 24), + [731] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_include_names_list, 2, 0, 35), + [733] = {.entry = {.count = 1, .reusable = true}}, SHIFT(266), + [735] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4), + [737] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tuple_list, 1, 0, 0), + [739] = {.entry = {.count = 1, .reusable = true}}, SHIFT(338), + [741] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_enum_body_repeat1, 2, 0, 0), + [743] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_enum_body_repeat1, 2, 0, 0), SHIFT_REPEAT(177), + [746] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_use_names_list_repeat1, 2, 0, 43), + [748] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_use_names_list_repeat1, 2, 0, 43), SHIFT_REPEAT(339), + [751] = {.entry = {.count = 1, .reusable = true}}, SHIFT(331), + [753] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_include_names_list, 3, 0, 35), + [755] = {.entry = {.count = 1, .reusable = true}}, SHIFT(51), + [757] = {.entry = {.count = 1, .reusable = true}}, SHIFT(155), + [759] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_include_names_list_repeat1, 2, 0, 45), + [761] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_include_names_list_repeat1, 2, 0, 45), SHIFT_REPEAT(340), + [764] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_include_names_list, 1, 0, 24), + [766] = {.entry = {.count = 1, .reusable = true}}, SHIFT(256), + [768] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_record_body_repeat1, 2, 0, 0), + [770] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_record_body_repeat1, 2, 0, 0), SHIFT_REPEAT(174), + [773] = {.entry = {.count = 1, .reusable = true}}, SHIFT(71), + [775] = {.entry = {.count = 1, .reusable = true}}, SHIFT(151), + [777] = {.entry = {.count = 1, .reusable = true}}, SHIFT(148), + [779] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6), + [781] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_use_names_list, 1, 0, 23), + [783] = {.entry = {.count = 1, .reusable = true}}, SHIFT(252), + [785] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_flags_body_repeat1, 2, 0, 0), + [787] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_flags_body_repeat1, 2, 0, 0), SHIFT_REPEAT(175), + [790] = {.entry = {.count = 1, .reusable = true}}, SHIFT(82), + [792] = {.entry = {.count = 1, .reusable = true}}, SHIFT(145), + [794] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_tuple_list_repeat1, 2, 0, 0), SHIFT_REPEAT(9), + [797] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_tuple_list_repeat1, 2, 0, 0), + [799] = {.entry = {.count = 1, .reusable = true}}, SHIFT(70), + [801] = {.entry = {.count = 1, .reusable = true}}, SHIFT(157), + [803] = {.entry = {.count = 1, .reusable = true}}, SHIFT(404), + [805] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_use_names_item, 1, 0, 0), + [807] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_variant_body_repeat1, 2, 0, 0), + [809] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_variant_body_repeat1, 2, 0, 0), SHIFT_REPEAT(176), + [812] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_variant_case, 1, 0, 20), + [814] = {.entry = {.count = 1, .reusable = true}}, SHIFT(10), + [816] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_named_type_list_repeat1, 2, 0, 0), SHIFT_REPEAT(178), + [819] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_named_type_list_repeat1, 2, 0, 0), + [821] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_use_names_list, 3, 0, 33), + [823] = {.entry = {.count = 1, .reusable = true}}, SHIFT(167), + [825] = {.entry = {.count = 1, .reusable = true}}, SHIFT(169), + [827] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_flags_case, 2, 0, 16), + [829] = {.entry = {.count = 1, .reusable = true}}, SHIFT(15), + [831] = {.entry = {.count = 1, .reusable = true}}, SHIFT(214), + [833] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_enum_case, 2, 0, 16), + [835] = {.entry = {.count = 1, .reusable = false}}, SHIFT(447), + [837] = {.entry = {.count = 1, .reusable = false}}, SHIFT(250), + [839] = {.entry = {.count = 1, .reusable = false}}, SHIFT_EXTRA(), + [841] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_record_field, 3, 0, 36), + [843] = {.entry = {.count = 1, .reusable = false}}, SHIFT(445), + [845] = {.entry = {.count = 1, .reusable = false}}, SHIFT(328), + [847] = {.entry = {.count = 1, .reusable = false}}, SHIFT(417), + [849] = {.entry = {.count = 1, .reusable = false}}, SHIFT(109), + [851] = {.entry = {.count = 1, .reusable = true}}, SHIFT(204), + [853] = {.entry = {.count = 1, .reusable = true}}, SHIFT(202), + [855] = {.entry = {.count = 1, .reusable = true}}, SHIFT(399), + [857] = {.entry = {.count = 1, .reusable = true}}, SHIFT(135), + [859] = {.entry = {.count = 1, .reusable = true}}, SHIFT(137), + [861] = {.entry = {.count = 1, .reusable = true}}, SHIFT(22), + [863] = {.entry = {.count = 1, .reusable = true}}, SHIFT(26), + [865] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_param_list, 3, 0, 0), + [867] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_enum_case, 1, 0, 0), + [869] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_param_list, 2, 0, 0), + [871] = {.entry = {.count = 1, .reusable = true}}, SHIFT(161), + [873] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_use_names_item, 3, 0, 0), + [875] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_use_names_list_repeat1, 2, 0, 42), + [877] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_include_names_item, 3, 0, 0), + [879] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_include_names_list_repeat1, 2, 0, 44), + [881] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_flags_case, 1, 0, 0), + [883] = {.entry = {.count = 1, .reusable = true}}, SHIFT(165), + [885] = {.entry = {.count = 1, .reusable = true}}, SHIFT(168), + [887] = {.entry = {.count = 1, .reusable = true}}, SHIFT(440), + [889] = {.entry = {.count = 1, .reusable = false}}, SHIFT(406), + [891] = {.entry = {.count = 1, .reusable = false}}, SHIFT(136), + [893] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_record_field, 4, 0, 48), + [895] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_package_decl_repeat2, 2, 0, 0), SHIFT_REPEAT(440), + [898] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_variant_case, 4, 0, 36), + [900] = {.entry = {.count = 1, .reusable = true}}, SHIFT(184), + [902] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_named_type, 3, 0, 36), + [904] = {.entry = {.count = 1, .reusable = true}}, SHIFT(189), + [906] = {.entry = {.count = 1, .reusable = true}}, SHIFT(187), + [908] = {.entry = {.count = 1, .reusable = true}}, SHIFT(166), + [910] = {.entry = {.count = 1, .reusable = true}}, SHIFT(83), + [912] = {.entry = {.count = 1, .reusable = true}}, SHIFT(353), + [914] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_variant_case, 5, 0, 48), + [916] = {.entry = {.count = 1, .reusable = true}}, SHIFT(160), + [918] = {.entry = {.count = 1, .reusable = true}}, SHIFT(163), + [920] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_named_type, 4, 0, 48), + [922] = {.entry = {.count = 1, .reusable = true}}, SHIFT(263), + [924] = {.entry = {.count = 1, .reusable = true}}, SHIFT(198), + [926] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2), + [928] = {.entry = {.count = 1, .reusable = true}}, SHIFT(197), + [930] = {.entry = {.count = 1, .reusable = true}}, SHIFT(190), + [932] = {.entry = {.count = 1, .reusable = true}}, SHIFT(222), + [934] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_result_list, 4, 0, 0), + [936] = {.entry = {.count = 1, .reusable = true}}, SHIFT(265), + [938] = {.entry = {.count = 1, .reusable = true}}, SHIFT(196), + [940] = {.entry = {.count = 1, .reusable = true}}, SHIFT(355), + [942] = {.entry = {.count = 1, .reusable = true}}, SHIFT(291), + [944] = {.entry = {.count = 1, .reusable = true}}, SHIFT(28), + [946] = {.entry = {.count = 1, .reusable = true}}, SHIFT(342), + [948] = {.entry = {.count = 1, .reusable = true}}, SHIFT(346), + [950] = {.entry = {.count = 1, .reusable = true}}, SHIFT(348), + [952] = {.entry = {.count = 1, .reusable = true}}, SHIFT(351), + [954] = {.entry = {.count = 1, .reusable = true}}, SHIFT(396), + [956] = {.entry = {.count = 1, .reusable = true}}, SHIFT(8), + [958] = {.entry = {.count = 1, .reusable = true}}, SHIFT(84), + [960] = {.entry = {.count = 1, .reusable = true}}, SHIFT(85), + [962] = {.entry = {.count = 1, .reusable = true}}, SHIFT(17), + [964] = {.entry = {.count = 1, .reusable = true}}, SHIFT(361), + [966] = {.entry = {.count = 1, .reusable = true}}, SHIFT(223), + [968] = {.entry = {.count = 1, .reusable = true}}, SHIFT(362), + [970] = {.entry = {.count = 1, .reusable = true}}, SHIFT(194), + [972] = {.entry = {.count = 1, .reusable = true}}, SHIFT(344), + [974] = {.entry = {.count = 1, .reusable = true}}, SHIFT(30), + [976] = {.entry = {.count = 1, .reusable = true}}, SHIFT(347), + [978] = {.entry = {.count = 1, .reusable = true}}, SHIFT(350), + [980] = {.entry = {.count = 1, .reusable = true}}, SHIFT(354), + [982] = {.entry = {.count = 1, .reusable = true}}, SHIFT(285), + [984] = {.entry = {.count = 1, .reusable = true}}, SHIFT(371), + [986] = {.entry = {.count = 1, .reusable = true}}, SHIFT(457), + [988] = {.entry = {.count = 1, .reusable = true}}, SHIFT(210), + [990] = {.entry = {.count = 1, .reusable = true}}, SHIFT(209), + [992] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_include_names_body, 3, 0, 34), + [994] = {.entry = {.count = 1, .reusable = true}}, SHIFT(225), + [996] = {.entry = {.count = 1, .reusable = true}}, SHIFT(201), + [998] = {.entry = {.count = 1, .reusable = true}}, SHIFT(378), + [1000] = {.entry = {.count = 1, .reusable = true}}, SHIFT(173), + [1002] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_result_list, 3, 0, 0), + [1004] = {.entry = {.count = 1, .reusable = true}}, SHIFT(111), + [1006] = {.entry = {.count = 1, .reusable = true}}, SHIFT(13), + [1008] = {.entry = {.count = 1, .reusable = true}}, SHIFT(226), + [1010] = {.entry = {.count = 1, .reusable = true}}, SHIFT(213), + [1012] = {.entry = {.count = 1, .reusable = true}}, SHIFT(391), + [1014] = {.entry = {.count = 1, .reusable = true}}, SHIFT(434), + [1016] = {.entry = {.count = 1, .reusable = true}}, SHIFT(312), + [1018] = {.entry = {.count = 1, .reusable = true}}, SHIFT(49), + [1020] = {.entry = {.count = 1, .reusable = true}}, SHIFT(345), + [1022] = {.entry = {.count = 1, .reusable = true}}, SHIFT(310), + [1024] = {.entry = {.count = 1, .reusable = true}}, SHIFT(86), + [1026] = {.entry = {.count = 1, .reusable = false}}, SHIFT(139), + [1028] = {.entry = {.count = 1, .reusable = true}}, SHIFT(32), + [1030] = {.entry = {.count = 1, .reusable = true}}, SHIFT(89), + [1032] = {.entry = {.count = 1, .reusable = true}}, SHIFT(461), + [1034] = {.entry = {.count = 1, .reusable = true}}, SHIFT(360), + [1036] = {.entry = {.count = 1, .reusable = true}}, SHIFT(16), + [1038] = {.entry = {.count = 1, .reusable = true}}, SHIFT(33), + [1040] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_package_decl_repeat2, 2, 0, 0), + [1042] = {.entry = {.count = 1, .reusable = true}}, SHIFT(335), + [1044] = {.entry = {.count = 1, .reusable = true}}, SHIFT(332), + [1046] = {.entry = {.count = 1, .reusable = true}}, SHIFT(20), + [1048] = {.entry = {.count = 1, .reusable = false}}, SHIFT(113), + [1050] = {.entry = {.count = 1, .reusable = true}}, SHIFT(409), + [1052] = {.entry = {.count = 1, .reusable = true}}, SHIFT(386), + [1054] = {.entry = {.count = 1, .reusable = true}}, SHIFT(67), + [1056] = {.entry = {.count = 1, .reusable = true}}, SHIFT(14), + [1058] = {.entry = {.count = 1, .reusable = true}}, SHIFT(220), + [1060] = {.entry = {.count = 1, .reusable = true}}, SHIFT(126), + [1062] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_func_type, 3, 0, 32), + [1064] = {.entry = {.count = 1, .reusable = true}}, SHIFT(306), + [1066] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_result_list, 2, 0, 0), + [1068] = {.entry = {.count = 1, .reusable = true}}, SHIFT(18), + [1070] = {.entry = {.count = 1, .reusable = true}}, SHIFT(11), + [1072] = {.entry = {.count = 1, .reusable = true}}, SHIFT(219), + [1074] = {.entry = {.count = 1, .reusable = true}}, SHIFT(230), + [1076] = {.entry = {.count = 1, .reusable = true}}, SHIFT(46), + [1078] = {.entry = {.count = 1, .reusable = true}}, SHIFT(224), + [1080] = {.entry = {.count = 1, .reusable = true}}, SHIFT(108), + [1082] = {.entry = {.count = 1, .reusable = true}}, SHIFT(191), + [1084] = {.entry = {.count = 1, .reusable = true}}, SHIFT(264), + [1086] = {.entry = {.count = 1, .reusable = true}}, SHIFT(402), + [1088] = {.entry = {.count = 1, .reusable = true}}, SHIFT(229), + [1090] = {.entry = {.count = 1, .reusable = true}}, SHIFT(118), + [1092] = {.entry = {.count = 1, .reusable = true}}, SHIFT(117), + [1094] = {.entry = {.count = 1, .reusable = true}}, ACCEPT_INPUT(), + [1096] = {.entry = {.count = 1, .reusable = true}}, SHIFT(325), + [1098] = {.entry = {.count = 1, .reusable = true}}, SHIFT(305), + [1100] = {.entry = {.count = 1, .reusable = true}}, SHIFT(401), + [1102] = {.entry = {.count = 1, .reusable = false}}, SHIFT(327), + [1104] = {.entry = {.count = 1, .reusable = true}}, SHIFT(389), + [1106] = {.entry = {.count = 1, .reusable = false}}, SHIFT(249), + [1108] = {.entry = {.count = 1, .reusable = true}}, SHIFT(321), + [1110] = {.entry = {.count = 1, .reusable = true}}, SHIFT(284), + [1112] = {.entry = {.count = 1, .reusable = true}}, SHIFT(320), + [1114] = {.entry = {.count = 1, .reusable = true}}, SHIFT(319), + [1116] = {.entry = {.count = 1, .reusable = true}}, SHIFT(317), + [1118] = {.entry = {.count = 1, .reusable = true}}, SHIFT(316), + [1120] = {.entry = {.count = 1, .reusable = true}}, SHIFT(315), + [1122] = {.entry = {.count = 1, .reusable = true}}, SHIFT(309), + [1124] = {.entry = {.count = 1, .reusable = true}}, SHIFT(304), + [1126] = {.entry = {.count = 1, .reusable = true}}, SHIFT(180), + [1128] = {.entry = {.count = 1, .reusable = true}}, SHIFT(439), + [1130] = {.entry = {.count = 1, .reusable = true}}, SHIFT(19), + [1132] = {.entry = {.count = 1, .reusable = true}}, SHIFT(12), + [1134] = {.entry = {.count = 1, .reusable = true}}, SHIFT(215), + [1136] = {.entry = {.count = 1, .reusable = true}}, SHIFT(459), + [1138] = {.entry = {.count = 1, .reusable = true}}, SHIFT(460), + [1140] = {.entry = {.count = 1, .reusable = true}}, SHIFT(234), + [1142] = {.entry = {.count = 1, .reusable = true}}, SHIFT(464), + [1144] = {.entry = {.count = 1, .reusable = true}}, SHIFT(21), }; #ifdef __cplusplus diff --git a/test/corpus/all-resources.txt b/test/corpus/all-resources.txt index b0551ff..75255aa 100644 --- a/test/corpus/all-resources.txt +++ b/test/corpus/all-resources.txt @@ -69,56 +69,61 @@ interface i { (id) (resource_body (resource_method - (param_list)))))) + (resource_constructor + (param_list))))))) (interface_items (typedef_item (resource_item (id) (resource_body (resource_method - (param_list - (named_type_list - (named_type - (id) - (ty))))))))) + (resource_constructor + (param_list + (named_type_list + (named_type + (id) + (ty)))))))))) (interface_items (typedef_item (resource_item (id) (resource_body (resource_method - (param_list - (named_type_list - (named_type - (id) - (ty))))) + (resource_constructor + (param_list + (named_type_list + (named_type + (id) + (ty)))))) (resource_method (func_item (id) (func_type (param_list)))) (resource_method - (id) - (func_type - (param_list))))))) + (static_resource_method + (id) + (func_type + (param_list)))))))) (interface_items (typedef_item (resource_item (id) (resource_body (resource_method - (param_list - (named_type_list - (named_type - (id) - (ty - (handle - (id)))) - (named_type - (id) - (ty - (handle - (id))))))) + (resource_constructor + (param_list + (named_type_list + (named_type + (id) + (ty + (handle + (id)))) + (named_type + (id) + (ty + (handle + (id)))))))) (resource_method (func_item (id) @@ -153,7 +158,8 @@ interface i { (id) (resource_body (resource_method - (param_list)))))))) + (resource_constructor + (param_list))))))))) (interface_item (id) (interface_body diff --git a/test/corpus/all-types.txt b/test/corpus/all-types.txt index a481f91..b1d3b77 100644 --- a/test/corpus/all-types.txt +++ b/test/corpus/all-types.txt @@ -283,17 +283,23 @@ interface types { (flags_items (id) (flags_body - (id) - (id) - (id))))) + (flags_case + (id)) + (flags_case + (id)) + (flags_case + (id)))))) (interface_items (typedef_item (flags_items (id) (flags_body - (id) - (id) - (id))))) + (flags_case + (id)) + (flags_case + (id)) + (flags_case + (id)))))) (interface_items (typedef_item (variant_items @@ -346,17 +352,23 @@ interface types { (enum_items (id) (enum_body - (id) - (id) - (id))))) + (enum_case + (id)) + (enum_case + (id)) + (enum_case + (id)))))) (interface_items (typedef_item (enum_items (id) (enum_body - (id) - (id) - (id))))) + (enum_case + (id)) + (enum_case + (id)) + (enum_case + (id)))))) (interface_items (typedef_item (type_item @@ -392,10 +404,12 @@ interface types { (ty (id))))) (comment) - (comment) (interface_items (typedef_item (type_item + (attribute + (doc_comment + (docs))) (id) (ty (id))))) diff --git a/test/corpus/comments.txt b/test/corpus/comments.txt index 477b8c7..34b2ed4 100644 --- a/test/corpus/comments.txt +++ b/test/corpus/comments.txt @@ -8,8 +8,10 @@ package local:demo; --- (source_file - (comment) (package_decl + (attribute + (doc_comment + (docs))) (id) (id))) diff --git a/test/corpus/design-doc-interface.txt b/test/corpus/design-doc-interface.txt index 7975d43..199077c 100644 --- a/test/corpus/design-doc-interface.txt +++ b/test/corpus/design-doc-interface.txt @@ -88,19 +88,26 @@ interface foo { (enum_items (id) (enum_body - (id) - (id) - (id) - (id))))) + (enum_case + (id)) + (enum_case + (id)) + (enum_case + (id)) + (enum_case + (id)))))) (comment) (interface_items (typedef_item (flags_items (id) (flags_body - (id) - (id) - (id))))) + (flags_case + (id)) + (flags_case + (id)) + (flags_case + (id)))))) (comment) (comment) (interface_items diff --git a/test/corpus/doc-comment-kitchen-sink.txt b/test/corpus/doc-comment-kitchen-sink.txt index bb45691..3317dc7 100644 --- a/test/corpus/doc-comment-kitchen-sink.txt +++ b/test/corpus/doc-comment-kitchen-sink.txt @@ -7,6 +7,19 @@ package some:package; /// An interface. interface i { + /// A function. + f: func( + /// First argument. + first: string, + /// Second argument. + second: u32, + ) -> ( + /// First return value. + third: f32, + /// Second return value. + fourth: bool, + ); + /// A record. record r { /// A field @@ -45,75 +58,172 @@ interface i { } } +/// A world. +world w { + export i: interface { + /// top-level function + f: func(); + } + +} + --- (source_file - (comment) (package_decl + (attribute + (doc_comment + (docs))) (id) (id)) - (comment) (interface_item + (attribute + (doc_comment + (docs))) (id) (interface_body - (comment) + (interface_items + (func_item + (attribute + (doc_comment + (docs))) + (id) + (func_type + (param_list + (named_type_list + (named_type + (attribute + (doc_comment + (docs))) + (id) + (ty)) + (named_type + (attribute + (doc_comment + (docs))) + (id) + (ty)))) + (result_list + (named_type_list + (named_type + (attribute + (doc_comment + (docs))) + (id) + (ty)) + (named_type + (attribute + (doc_comment + (docs))) + (id) + (ty))))))) (interface_items (typedef_item (record_item + (attribute + (doc_comment + (docs))) (id) (record_body - (comment) (record_field + (attribute + (doc_comment + (docs))) (id) (ty)))))) - (comment) (interface_items (typedef_item (type_item + (attribute + (doc_comment + (docs))) (id) (ty)))) - (comment) (interface_items (typedef_item (variant_items + (attribute + (doc_comment + (docs))) (id) (variant_body - (comment) (variant_case + (attribute + (doc_comment + (docs))) (id)))))) - (comment) (interface_items (typedef_item (flags_items + (attribute + (doc_comment + (docs))) (id) (flags_body - (comment) - (id))))) - (comment) + (flags_case + (attribute + (doc_comment + (docs))) + (id)))))) (interface_items (typedef_item (enum_items + (attribute + (doc_comment + (docs))) (id) (enum_body - (comment) - (id))))) - (comment) + (enum_case + (attribute + (doc_comment + (docs))) + (id)))))) (interface_items (typedef_item (resource_item + (attribute + (doc_comment + (docs))) (id) (resource_body - (comment) (resource_method - (param_list)) - (comment) - (resource_method - (id) - (func_type + (resource_constructor + (attribute + (doc_comment + (docs))) (param_list))) - (comment) (resource_method + (static_resource_method + (attribute + (doc_comment + (docs))) + (id) + (func_type + (param_list)))) + (resource_method + (func_item + (attribute + (doc_comment + (docs))) + (id) + (func_type + (param_list)))))))))) + (world_item + (attribute + (doc_comment + (docs))) + (id) + (world_body + (world_items + (export_item + (id) + (extern_type + (interface_body + (interface_items (func_item + (attribute + (doc_comment + (docs))) (id) (func_type (param_list))))))))))) diff --git a/test/corpus/flags.txt b/test/corpus/flags.txt index bee7202..d334cc9 100644 --- a/test/corpus/flags.txt +++ b/test/corpus/flags.txt @@ -40,15 +40,26 @@ interface foo { (interface_item (id) (interface_body - (comment) (interface_items (typedef_item (flags_items + (attribute + (doc_comment + (docs))) (id) (flags_body - (comment) - (id) - (comment) - (id) - (comment) - (id)))))))) + (flags_case + (attribute + (doc_comment + (docs))) + (id)) + (flags_case + (attribute + (doc_comment + (docs))) + (id)) + (flags_case + (attribute + (doc_comment + (docs))) + (id))))))))) diff --git a/test/corpus/interfaces.txt b/test/corpus/interfaces.txt index 9287af0..ce918e2 100644 --- a/test/corpus/interfaces.txt +++ b/test/corpus/interfaces.txt @@ -71,8 +71,8 @@ interface foo { result_list: (result_list (ty (result - (ty) - (ty))))))) + ok: (ty) + err: (ty))))))) interface_items: (interface_items func: (func_item name: (id) @@ -88,7 +88,8 @@ interface foo { name: (id) resource_body: (resource_body (resource_method - (param_list)) + (resource_constructor + (param_list))) (resource_method (func_item name: (id) @@ -101,8 +102,8 @@ interface foo { result_list: (result_list (ty (result - (ty) - (ty + ok: (ty) + err: (ty (id)))))))) (resource_method (func_item @@ -118,8 +119,8 @@ interface foo { result_list: (result_list (ty (result - (ty) - (ty + ok: (ty) + err: (ty (id)))))))))))) interface_items: (interface_items typedef: (typedef_item @@ -139,15 +140,19 @@ interface foo { (flags_items name: (id) body: (flags_body - flags_fields: (id) - flags_fields: (id))))) + flags_fields: (flags_case + (id)) + flags_fields: (flags_case + (id)))))) interface_items: (interface_items typedef: (typedef_item (enum_items name: (id) (enum_body - enum_cases: (id) - enum_cases: (id))))) + enum_cases: (enum_case + (id)) + enum_cases: (enum_case + (id)))))) interface_items: (interface_items typedef: (typedef_item (variant_items diff --git a/test/corpus/wasi.txt b/test/corpus/wasi.txt index a05d4d4..cde2b8f 100644 --- a/test/corpus/wasi.txt +++ b/test/corpus/wasi.txt @@ -195,180 +195,435 @@ interface wasi { (enum_items (id) (enum_body - (comment) - (comment) - (id) - (comment) - (comment) - (comment) - (comment) - (id))))) - (comment) + (enum_case + (attribute + (doc_comment + (docs))) + (attribute + (doc_comment + (docs))) + (id)) + (enum_case + (attribute + (doc_comment + (docs))) + (attribute + (doc_comment + (docs))) + (attribute + (doc_comment + (docs))) + (attribute + (doc_comment + (docs))) + (id)))))) (interface_items (typedef_item (type_item + (attribute + (doc_comment + (docs))) (id) (ty)))) - (comment) - (comment) - (comment) - (comment) (interface_items (typedef_item (enum_items + (attribute + (doc_comment + (docs))) + (attribute + (doc_comment + (docs))) + (attribute + (doc_comment + (docs))) + (attribute + (doc_comment + (docs))) (id) (enum_body - (comment) - (id) - (comment) - (id) - (comment) - (id) - (comment) - (id) - (comment) - (id) - (comment) - (id) - (comment) - (id) - (comment) - (id) - (comment) - (id) - (comment) - (id) - (comment) - (id) - (comment) - (id) - (comment) - (id) - (comment) - (id) - (comment) - (id) - (comment) - (id) - (comment) - (id) - (comment) - (id) - (comment) - (id) - (comment) - (id) - (comment) - (id) - (comment) - (id) - (comment) - (id) - (comment) - (id) - (comment) - (id) - (comment) - (id) - (comment) - (id) - (comment) - (id) - (comment) - (id) - (comment) - (id) - (comment) - (id) - (comment) - (id) - (comment) - (id) - (comment) - (id) - (comment) - (id) - (comment) - (id) - (comment) - (id) - (comment) - (id) - (comment) - (id) - (comment) - (id) - (comment) - (id) - (comment) - (id) - (comment) - (id) - (comment) - (id) - (comment) - (id) - (comment) - (id) - (comment) - (id) - (comment) - (id) - (comment) - (id) - (comment) - (id) - (comment) - (id) - (comment) - (id) - (comment) - (id) - (comment) - (id) - (comment) - (id) - (comment) - (id) - (comment) - (id) - (comment) - (id) - (comment) - (id) - (comment) - (id) - (comment) - (id) - (comment) - (id) - (comment) - (id) - (comment) - (id) - (comment) - (id) - (comment) - (id) - (comment) - (id) - (comment) - (id) - (comment) - (id) - (comment) - (id) - (comment) - (id) - (comment) - (id) - (comment) - (id) - (comment) - (id) - (comment) - (id) - (comment) - (id) - (comment) - (id)))))))) + (enum_case + (attribute + (doc_comment + (docs))) + (id)) + (enum_case + (attribute + (doc_comment + (docs))) + (id)) + (enum_case + (attribute + (doc_comment + (docs))) + (id)) + (enum_case + (attribute + (doc_comment + (docs))) + (id)) + (enum_case + (attribute + (doc_comment + (docs))) + (id)) + (enum_case + (attribute + (doc_comment + (docs))) + (id)) + (enum_case + (attribute + (doc_comment + (docs))) + (id)) + (enum_case + (attribute + (doc_comment + (docs))) + (id)) + (enum_case + (attribute + (doc_comment + (docs))) + (id)) + (enum_case + (attribute + (doc_comment + (docs))) + (id)) + (enum_case + (attribute + (doc_comment + (docs))) + (id)) + (enum_case + (attribute + (doc_comment + (docs))) + (id)) + (enum_case + (attribute + (doc_comment + (docs))) + (id)) + (enum_case + (attribute + (doc_comment + (docs))) + (id)) + (enum_case + (attribute + (doc_comment + (docs))) + (id)) + (enum_case + (attribute + (doc_comment + (docs))) + (id)) + (enum_case + (attribute + (doc_comment + (docs))) + (id)) + (enum_case + (attribute + (doc_comment + (docs))) + (id)) + (enum_case + (attribute + (doc_comment + (docs))) + (id)) + (enum_case + (attribute + (doc_comment + (docs))) + (id)) + (enum_case + (attribute + (doc_comment + (docs))) + (id)) + (enum_case + (attribute + (doc_comment + (docs))) + (id)) + (enum_case + (attribute + (doc_comment + (docs))) + (id)) + (enum_case + (attribute + (doc_comment + (docs))) + (id)) + (enum_case + (attribute + (doc_comment + (docs))) + (id)) + (enum_case + (attribute + (doc_comment + (docs))) + (id)) + (enum_case + (attribute + (doc_comment + (docs))) + (id)) + (enum_case + (attribute + (doc_comment + (docs))) + (id)) + (enum_case + (attribute + (doc_comment + (docs))) + (id)) + (enum_case + (attribute + (doc_comment + (docs))) + (id)) + (enum_case + (attribute + (doc_comment + (docs))) + (id)) + (enum_case + (attribute + (doc_comment + (docs))) + (id)) + (enum_case + (attribute + (doc_comment + (docs))) + (id)) + (enum_case + (attribute + (doc_comment + (docs))) + (id)) + (enum_case + (attribute + (doc_comment + (docs))) + (id)) + (enum_case + (attribute + (doc_comment + (docs))) + (id)) + (enum_case + (attribute + (doc_comment + (docs))) + (id)) + (enum_case + (attribute + (doc_comment + (docs))) + (id)) + (enum_case + (attribute + (doc_comment + (docs))) + (id)) + (enum_case + (attribute + (doc_comment + (docs))) + (id)) + (enum_case + (attribute + (doc_comment + (docs))) + (id)) + (enum_case + (attribute + (doc_comment + (docs))) + (id)) + (enum_case + (attribute + (doc_comment + (docs))) + (id)) + (enum_case + (attribute + (doc_comment + (docs))) + (id)) + (enum_case + (attribute + (doc_comment + (docs))) + (id)) + (enum_case + (attribute + (doc_comment + (docs))) + (id)) + (enum_case + (attribute + (doc_comment + (docs))) + (id)) + (enum_case + (attribute + (doc_comment + (docs))) + (id)) + (enum_case + (attribute + (doc_comment + (docs))) + (id)) + (enum_case + (attribute + (doc_comment + (docs))) + (id)) + (enum_case + (attribute + (doc_comment + (docs))) + (id)) + (enum_case + (attribute + (doc_comment + (docs))) + (id)) + (enum_case + (attribute + (doc_comment + (docs))) + (id)) + (enum_case + (attribute + (doc_comment + (docs))) + (id)) + (enum_case + (attribute + (doc_comment + (docs))) + (id)) + (enum_case + (attribute + (doc_comment + (docs))) + (id)) + (enum_case + (attribute + (doc_comment + (docs))) + (id)) + (enum_case + (attribute + (doc_comment + (docs))) + (id)) + (enum_case + (attribute + (doc_comment + (docs))) + (id)) + (enum_case + (attribute + (doc_comment + (docs))) + (id)) + (enum_case + (attribute + (doc_comment + (docs))) + (id)) + (enum_case + (attribute + (doc_comment + (docs))) + (id)) + (enum_case + (attribute + (doc_comment + (docs))) + (id)) + (enum_case + (attribute + (doc_comment + (docs))) + (id)) + (enum_case + (attribute + (doc_comment + (docs))) + (id)) + (enum_case + (attribute + (doc_comment + (docs))) + (id)) + (enum_case + (attribute + (doc_comment + (docs))) + (id)) + (enum_case + (attribute + (doc_comment + (docs))) + (id)) + (enum_case + (attribute + (doc_comment + (docs))) + (id)) + (enum_case + (attribute + (doc_comment + (docs))) + (id)) + (enum_case + (attribute + (doc_comment + (docs))) + (id)) + (enum_case + (attribute + (doc_comment + (docs))) + (id)) + (enum_case + (attribute + (doc_comment + (docs))) + (id)) + (enum_case + (attribute + (doc_comment + (docs))) + (id)) + (enum_case + (attribute + (doc_comment + (docs))) + (id)) + (enum_case + (attribute + (doc_comment + (docs))) + (id)) + (enum_case + (attribute + (doc_comment + (docs))) + (id))))))))) diff --git a/test/corpus/world.txt b/test/corpus/world.txt index dd3eefe..96c6d50 100644 --- a/test/corpus/world.txt +++ b/test/corpus/world.txt @@ -201,8 +201,8 @@ world imports { result_list: (result_list (ty (result - (ty) - (ty + ok: (ty) + err: (ty (id)))))))))))) world_items: (world_items export_item: (export_item @@ -226,8 +226,8 @@ world imports { result_list: (result_list (ty (result - (ty) - (ty + ok: (ty) + err: (ty (id)))))))))))) world_items: (world_items import_item: (import_item @@ -242,6 +242,6 @@ world imports { result_list: (result_list (ty (result - (ty) - (ty + ok: (ty) + err: (ty (id))))))))))))